/* Shared lookup layout, loaded after the active module. Medical data is unchanged. */
.ams-app [data-ams-lookup] { min-width: 0; overflow-wrap: anywhere; }
.ams-app [data-ams-lookup] [hidden] { display: none !important; }
.ams-app [data-ams-lookup] :is(button, input, select, textarea, summary, a):focus-visible {
  outline: 3px solid #087f98; outline-offset: 3px;
}

/* 1.18.5: concise chrome; keep clinical content, source labels and alerts readable. */
@media screen {
  .ams-app [data-ams-lookup] :is(#ams-kb-query, #sp-query, #ams-special-query)::-webkit-search-cancel-button { display: none; }
  .ams-app [data-ams-lookup] :is(.ams-ab-heading, .ams-special-intro, .sp-header) {
    padding: 10px 14px; margin-bottom: 10px; border-radius: 10px;
  }
  .ams-app [data-ams-lookup] :is(.ams-ab-heading, .ams-special-intro, .sp-header) h1 {
    font-size: 22px; line-height: 1.35; margin: 0;
  }
  .ams-app [data-ams-lookup] :is(.ams-ab-heading > p, .ams-special-intro > p,
    .ams-special-source, .sp-header p, .sp-edition, .ams-kb-example-row) { display: none; }
  .ams-app [data-ams-lookup] .ams-kb-welcome { min-height: 100px; padding: 20px 16px; }
  .ams-app [data-ams-lookup] .ams-ab-result { margin-bottom: 12px; }
  .ams-app [data-ams-lookup] .ams-special-source-reader { min-width: 0; max-width: 100%; }
}
@media screen and (max-width: 768px) {
  .ams-app [data-ams-lookup] .ams-kb-right { min-height: 100px; }
  .ams-app [data-ams-lookup] .ams-kb-source-content { font-size: 16px; line-height: 1.7; }
  .ams-app [data-ams-lookup] .ams-kb-source-content .ams-kb-table { font-size: 14px; }
  .ams-app [data-ams-lookup] :is(.ams-kb-clear-text, .ams-kb-clear-icon) { pointer-events: none; }
  .ams-app [data-ams-lookup] :is(#ams-kb-clear, .ams-kb-detail-tools summary) { min-width: 44px; min-height: 44px; }
  .ams-app [data-ams-lookup] .ams-kb-mobile-toggle { font-size: 14px; }
  .ams-app [data-ams-lookup] .ams-kb-detail-tools { margin: 0; }
  .ams-app [data-ams-lookup] .ams-lookup-return { display: inline-flex; font-size: 13px; }
  .ams-app [data-ams-lookup] .ams-special-source-reader { order: 3; }
  .ams-app [data-ams-lookup] .sp-search-line { flex-wrap: nowrap; }
  .ams-app [data-ams-lookup] .sp-search-line input { flex: 1 1 0; width: 0; }
  .ams-app [data-ams-lookup] .sp-search-line button { flex: 0 0 auto; }
  .ams-app [data-ams-lookup] .sp-detail { width: 100%; min-height: 100px; }
  .ams-app [data-ams-lookup] .sp-results-panel { width: 100%; }
  .ams-app [data-ams-lookup] :is(.sp-regimens p, .sp-dose-card dd, .sp-verbatim) { font-size: 16px; line-height: 1.65; }
  .ams-app [data-ams-lookup] .sp-detail-top .sp-muted { display: block; font-size: 13px; }
  .ams-app [data-ams-lookup] #sp-alerts { order: 2; }
}
.ams-app [data-ams-lookup] .ams-reader-table-scroll,
.ams-app [data-ams-lookup] .ams-ab-table-scroller {
  min-width: 0; max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain;
}
.ams-app [data-ams-lookup] .ams-table-hint { margin: 6px 0; color: #496779; font-size: 13px; }
.ams-app [data-ams-lookup] .ams-content-body img { max-width: 100%; height: auto; }
.ams-app [data-ams-lookup] .ams-content-body :is(figure, iframe, video) { max-width: 100%; }
.ams-app [data-ams-lookup] .ams-content-body figure { margin-inline: 0; }
.ams-app [data-ams-lookup] .ams-content-body pre { white-space: pre-wrap; overflow-wrap: anywhere; }

@media screen and (max-width: 768px) {
  .ams-app [data-ams-lookup] { font-size: 16px; line-height: 1.65; }
  .ams-app [data-ams-lookup] h1 { font-size: 24px; line-height: 1.35; }
  .ams-app [data-ams-lookup] :is(.ams-antibiotic-page, .ams-special-page, .ams-iv-page) { padding: 0; }
  .ams-app [data-ams-lookup] :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea),
  .ams-app [data-ams-lookup] #ams-ab-search,
  .ams-app [data-ams-lookup] #ams-special-query {
    font-size: 16px; min-height: 48px; min-width: 0;
  }
  .ams-app [data-ams-lookup] button,
  .ams-app [data-ams-lookup] button.ams-special-chip,
  .ams-app [data-ams-lookup] .ams-ab-suggestions .ams-ab-choice,
  .ams-app [data-ams-lookup] .ams-iv-actions button[type="submit"] {
    min-height: 44px; max-width: 100%; font-size: 14px; line-height: 1.45; padding: 10px 12px;
  }
  .ams-app [data-ams-lookup] summary { min-height: 44px; padding-block: 10px; font-size: 15px; }
  .ams-app [data-ams-lookup] :is(.ams-back-link, .ams-special-links a.ams-special-link) {
    display: inline-flex; align-items: center; min-height: 44px; font-size: 14px;
  }
  .ams-app [data-ams-lookup] :is(.ams-ab-heading, .ams-ab-search-panel, .ams-ab-cg, .ams-ab-drug-detail,
    .ams-special-intro, .ams-special-search-panel, .ams-special-filter-set, .ams-special-card,
    .ams-iv-form, .ams-iv-summary, .ams-iv-reference) { padding: 14px; border-radius: 12px; }
  .ams-app [data-ams-lookup] :is(.ams-ab-heading p, .ams-special-intro p, .ams-iv-lead) { font-size: 15px; }
  .ams-app [data-ams-lookup] :is(.ams-ab-search-panel > label, .ams-ab-cg-fields label,
    .ams-special-search-panel > label) { font-size: 14px; }
  .ams-app [data-ams-lookup] .ams-ab-suggestions { grid-template-columns: minmax(0, 1fr); max-height: 40vh; max-height: min(40dvh, 320px); }
  .ams-app [data-ams-lookup] .ams-ab-choice { min-width: 0; flex-wrap: wrap; }
  .ams-app [data-ams-lookup] .ams-ab-choice small { font-size: 13px; text-align: left; }
  .ams-app [data-ams-lookup] .ams-ab-cg-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .ams-app [data-ams-lookup] .ams-ab-cg-toggle { flex-wrap: wrap; padding: 0; gap: 8px; }
  .ams-app [data-ams-lookup] .ams-ab-cg-toggle strong { white-space: normal; }
  .ams-app [data-ams-lookup] .ams-ab-cg-state { font-size: 13px; }
  .ams-app [data-ams-lookup] :is(.ams-ab-cg-actions, .ams-iv-actions) { display: grid; grid-template-columns: 1fr; gap: 8px; }
  .ams-app [data-ams-lookup] :is(.ams-ab-cg-output, .ams-ab-renal-note, .ams-ab-empty) { font-size: 14px; line-height: 1.65; }
  .ams-app [data-ams-lookup] .ams-ab-drug-heading { flex-wrap: wrap; gap: 8px; }
  .ams-app [data-ams-lookup] .ams-ab-drug-heading h2 { font-size: 21px; }
  .ams-app [data-ams-lookup] :is(.ams-ab-drug-heading p, .ams-ab-pill) { font-size: 13px; white-space: normal; }
  .ams-app [data-ams-lookup] .ams-ab-field-grid { grid-template-columns: 1fr; gap: 12px; }
  .ams-app [data-ams-lookup] .ams-ab-field { padding: 12px; }
  .ams-app [data-ams-lookup] .ams-ab-field h3 { font-size: 16px; }
  .ams-app [data-ams-lookup] :is(.ams-ab-field p, .ams-ab-notes p, .ams-special-card > p) { font-size: 16px; line-height: 1.7; }
  .ams-app [data-ams-lookup] :is(.ams-ab-disclaimer, .ams-ab-reference, .ams-special-caution,
    .ams-special-ref, .ams-special-clinical-notice, .ams-iv-note, .ams-iv-source, .ams-iv-muted) { font-size: 14px; line-height: 1.65; }
  .ams-app [data-ams-lookup] .ams-ab-help > summary { display: list-item; font-size: 15px; }
  .ams-app [data-ams-lookup] .ams-special-results { grid-template-columns: minmax(0, 1fr); }
  .ams-app [data-ams-lookup] .ams-special-card h2 { font-size: 18px; }
  .ams-app [data-ams-lookup] :is(.ams-special-summary, .ams-special-drug-label, .ams-special-kind) { font-size: 14px; }
  .ams-app [data-ams-lookup] .ams-special-search-line { align-items: center; }
  .ams-app [data-ams-lookup] #ams-special-query { margin: 0; }
  .ams-app [data-ams-lookup] .ams-search-line { flex-direction: column; gap: 8px; }
  .ams-app [data-ams-lookup] .ams-search-line button { width: 100%; }
  .ams-app [data-ams-lookup] .ams-title-row { padding: 12px; }
  .ams-app [data-ams-lookup] .ams-title-row a { display: flex; align-items: center; min-height: 44px; }
  .ams-app [data-ams-lookup] .ams-title-row small { display: block; }
  .ams-app [data-ams-lookup] .ams-reader-gate { padding: 12px; }
  .ams-app [data-ams-lookup] .ams-content-body.ams-reader-scroll-ready { overflow-x: visible; }
  .ams-app [data-ams-lookup] .ams-content-body :is(div, section) { min-width: 0; max-width: 100%; }
  .ams-app [data-ams-lookup] .ams-content-body table { font-size: 15px; }
  .ams-app [data-ams-lookup] .ams-content-body :is(ul, ol) { padding-inline-start: 24px; }
  .ams-app [data-ams-lookup] .ams-iv-counters { display: grid; grid-template-columns: 1fr; }
  .ams-app [data-ams-lookup] :is(.ams-iv-count, .ams-iv-status) { font-size: 14px; }
}

@media screen and (max-width: 600px) {
  /* Preserve row/header relationships; complex nested tables keep their own scroller. */
  .ams-app [data-ams-lookup] :is(.ams-ab-dose-table, .ams-iv-table) { display: block; min-width: 0; width: 100%; }
  .ams-app [data-ams-lookup] :is(.ams-ab-dose-table, .ams-iv-table) > thead {
    position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%);
  }
  .ams-app [data-ams-lookup] :is(.ams-ab-dose-table, .ams-iv-table) > tbody { display: block; }
  .ams-app [data-ams-lookup] :is(.ams-ab-dose-table, .ams-iv-table) > tbody > tr {
    display: block; margin-bottom: 12px; border: 1px solid #cddfe7; border-radius: 10px; overflow: hidden;
  }
  .ams-app [data-ams-lookup] :is(.ams-ab-dose-table, .ams-iv-table) > tbody > tr > :is(td, th) {
    display: block; width: 100%; padding: 12px; border: 0; font-size: 16px; line-height: 1.65;
  }
  .ams-app [data-ams-lookup] .ams-ab-dose-table > tbody > tr > th { background: #edf7fb; }
  .ams-app [data-ams-lookup] .ams-ab-dose-table > tbody > tr.ams-ab-highlight > :is(td, th) { background: #e8f6ed; }
  .ams-app [data-ams-lookup] .ams-ab-nested { font-size: 14px; }
  .ams-app [data-ams-lookup] .ams-ab-matched { font-size: 12px; margin-inline-start: 0; }
  .ams-app [data-ams-lookup] .ams-iv-table-wrap { background: transparent; border: 0; border-radius: 0; }
  .ams-app [data-ams-lookup] .ams-iv-table > tbody > tr { background: #fff; }
  .ams-app [data-ams-lookup] .ams-iv-table td::before { content: attr(data-label); display: block; font-size: 13px; font-weight: 600; color: #496779; }
}

@media screen and (max-width: 380px) {
  .ams-app [data-ams-lookup] .ams-ab-cg-fields { grid-template-columns: 1fr; }
  .ams-app [data-ams-lookup] :is(.ams-ab-heading, .ams-ab-search-panel, .ams-ab-cg, .ams-ab-drug-detail) { padding: 12px; }
}
@media print { .ams-app [data-ams-lookup] .ams-table-hint { display: none; } }

/* 1.18: consistent context navigation and readable source material. */
.ams-app [data-ams-lookup] *, .ams-app [data-ams-lookup] *::before { box-sizing: border-box; }
.ams-app .ams-lookup-nav { padding: 12px 16px; margin-bottom: 12px; border: 1px solid #cddfe7; border-radius: 12px; background: #f3f9fb; }
.ams-app .ams-lookup-nav-toggle { display:none; }
.ams-app .ams-lookup-nav strong { display: block; font-size: 14px; margin-bottom: 6px; }
.ams-app .ams-lookup-nav-links { display: flex; flex-wrap: wrap; gap: 6px; }
.ams-app .ams-lookup-nav a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 12px; border: 1px solid #cddfe7; border-radius: 8px; background: white; color: #135c73; font-size: 14px; text-decoration: none; }
.ams-app .ams-lookup-nav a[aria-current] { background: #126b80; color: white; }
.ams-app .ams-lookup-return { margin-top: 8px; font-weight: 700; }
.ams-app .ams-source-verbatim { font-size: 16px; line-height: 1.65; overflow-wrap: anywhere; }
.ams-app .ams-source-verbatim p { white-space: pre-wrap; }
.ams-app .ams-source-verbatim table { border-collapse: collapse; min-width: 520px; width: 100%; }
.ams-app .ams-source-verbatim td { border: 1px solid #b8ced7; padding: 8px; vertical-align: top; }
.ams-app .ams-source-verbatim img { max-width: 100%; height: auto; }
.ams-app .ams-special-links { align-items: center; flex-wrap: wrap; gap: 8px; }
.ams-app .ams-special-links :is(a,button) { display: inline-flex; align-items: center; min-height: 44px; padding: 8px; font: inherit; font-size: 14px; }
.ams-app #ams-special-section { max-width: 100%; width: 100%; }
.ams-app .ams-special-topics label { width: 100%; min-width: 0; }
.ams-app .ams-kb-table-scroll { overscroll-behavior-x: contain; }
@media (max-width: 768px) {
  .ams-app .ams-lookup-nav { padding:5px 7px;margin-bottom:7px;border-radius:9px; }
  .ams-app .ams-lookup-nav-toggle { display:flex;align-items:center;justify-content:space-between;width:100%;min-height:38px;padding:7px 10px;border:0;background:transparent;color:#176c85;font-size:12.5px;font-weight:750;text-align:left; }
  .ams-app .ams-lookup-nav-toggle::after { content:'⌄';font-size:18px;line-height:1; }
  .ams-app .ams-lookup-nav.is-expanded .ams-lookup-nav-toggle::after { transform:rotate(180deg); }
  .ams-app .ams-lookup-nav strong { display:none; }
  .ams-app .ams-lookup-nav-links { display:none; }
  .ams-app .ams-lookup-nav.is-expanded .ams-lookup-nav-links { display:flex; }
  .ams-app .ams-lookup-return { display:none; }
  .ams-app .ams-lookup-nav.is-expanded .ams-lookup-return { display:inline-flex; }
  .ams-app .ams-kb-layout { grid-template-columns: minmax(0,1fr); }
  .ams-app .ams-kb-right { max-height: none; min-height: 0; overflow: visible; }
  /* Module protocols owns its compact phone layout in lookups/protocols/style.css. */
  .ams-app .ams-lookup-nav-links { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 5px; }
  .ams-app .ams-lookup-nav-links a { flex: 0 0 auto; max-width: 240px; }
  .ams-app .ams-special-results { grid-template-columns: minmax(0,1fr); }
}
@media (prefers-reduced-motion: reduce) {
  .ams-app [data-ams-lookup] * { scroll-behavior: auto !important; }
}
@media print { .ams-app .ams-lookup-nav { display: none; } }

/* Mobile lookup-first layout: put the search and clinical result ahead of ancillary panels. */
@media screen and (max-width:768px) {
  .ams-app [data-ams-lookup="antibiotic-doses"] .ams-antibiotic-page,
  .ams-app [data-ams-lookup="antibiotic-preparation"] .ams-antibiotic-page,
  .ams-app [data-ams-lookup="special-antibiotics"] .ams-special-page {
    display:flex;flex-direction:column;gap:8px;padding-top:0;
  }
  .ams-app [data-ams-lookup="antibiotic-doses"] .ams-ab-heading,
  .ams-app [data-ams-lookup="antibiotic-preparation"] .ams-ab-heading,
  .ams-app [data-ams-lookup="special-antibiotics"] .ams-special-intro { display:none; }
  .ams-app [data-ams-lookup="antibiotic-doses"] .ams-ab-search-panel,
  .ams-app [data-ams-lookup="antibiotic-preparation"] .ams-ab-search-panel { order:1;margin:0;padding:11px 12px; }
  .ams-app [data-ams-lookup="antibiotic-doses"] .ams-ab-result,
  .ams-app [data-ams-lookup="antibiotic-preparation"] .ams-ab-result { order:2;margin:0; }
  .ams-app [data-ams-lookup="antibiotic-doses"] .ams-ab-cg { order:3;margin:0;padding:11px 12px; }
  .ams-app [data-ams-lookup="antibiotic-doses"] .ams-ab-help,
  .ams-app [data-ams-lookup="antibiotic-preparation"] .ams-ab-help { order:4; }
  .ams-app [data-ams-lookup="antibiotic-doses"] .ams-ab-empty,
  .ams-app [data-ams-lookup="antibiotic-preparation"] .ams-ab-empty { margin:0;padding:14px; }
  .ams-app [data-ams-lookup="special-antibiotics"] .ams-special-search-panel { order:1;margin:0;padding:11px 12px; }
  .ams-app [data-ams-lookup="special-antibiotics"] .ams-special-prompt-set { display:none; }
  .ams-app [data-ams-lookup="special-antibiotics"] .ams-special-summary { order:2; }
  .ams-app [data-ams-lookup="special-antibiotics"] .ams-special-results { order:3; }
  .ams-app [data-ams-lookup="special-antibiotics"] .ams-special-filter-set { order:4;margin:0; }
  .ams-app [data-ams-lookup="special-antibiotics"] .ams-special-filter-toggle { display:block;width:100%;text-align:left;border:0;background:#eef8fa;color:#176a82;font-size:12.5px;font-weight:750;padding:9px 11px;border-radius:8px; }
  .ams-app [data-ams-lookup="special-antibiotics"] .ams-special-filter-content { display:none; }
  .ams-app [data-ams-lookup="special-antibiotics"] .ams-special-filter-set.is-expanded .ams-special-filter-content { display:block;padding-top:10px; }
  .ams-app [data-ams-lookup="special-antibiotics"] .ams-special-clinical-notice { order:5; }
  .ams-app [data-ams-lookup="compatibility"] .ams-iv-page> :is(h1,.ams-back-link,.ams-iv-lead) { display:none; }
  .ams-app [data-ams-lookup="compatibility"] .ams-iv-form { margin-top:0; }
  .ams-app [data-ams-lookup="compatibility"] #ams-iv-drugs { height:104px;min-height:104px;resize:vertical; }
  .ams-app [data-ams-lookup="documents"] .ams-collection:not(.ams-single-article)> :is(h1,.ams-back-link),
  .ams-app [data-ams-lookup="documents"] .ams-collection:not(.ams-single-article)>h1+p { display:none; }
  .ams-app [data-ams-lookup="documents"] .ams-one-search { margin-top:0; }
}
