:root{--teal-soft:#E0F7FA}

/* ── Header ── */
.header-inner{max-width:880px;margin:0 auto;padding:22px 16px 18px;display:flex;align-items:flex-start;justify-content:space-between}
.offline-badge{font-size:9px;font-weight:700;letter-spacing:.1em;padding:4px 10px;border-radius:50px;background:rgba(0,0,0,.25);color:#fff;border:1px solid rgba(255,255,255,.3);white-space:nowrap;margin-top:4px}

/* ── Content area ── */
.section-pane{padding:24px 16px 60px;max-width:880px;margin:0 auto}
@media(max-width:560px){.section-pane{padding:16px 16px 50px}}

.page-body{max-width:880px;margin:0 auto}
@media(min-width:800px){
  .page-body{display:flex;padding:24px 16px 60px;gap:20px;align-items:flex-start}
  .cat-nav{width:160px;flex-shrink:0;position:sticky;top:20px}
  .cat-nav .tab-btn{display:block;width:100%;text-align:left;background:transparent;border:none;border-radius:var(--r-sm);color:var(--ink-soft);font-size:11px;font-weight:600;padding:8px 12px;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background .12s,color .12s;margin-bottom:2px}
  .cat-nav .tab-btn:hover{background:var(--purple-soft);color:var(--purple)}
  .cat-nav .tab-btn.active{background:var(--purple-soft);color:var(--purple);font-weight:700}
  .page-body>.section-pane{flex:1;min-width:0;max-width:none;margin:0;padding:0}
}
@media(max-width:799px){
  .cat-nav{display:flex;overflow-x:auto;scrollbar-width:none;padding:10px 16px;gap:6px;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
  .cat-nav::-webkit-scrollbar{display:none}
  .cat-nav .tab-btn{flex-shrink:0;background:transparent;border:1.5px solid var(--line);border-radius:50px;color:var(--ink-muted);font-size:10px;font-weight:600;padding:5px 12px;cursor:pointer;white-space:nowrap;transition:background .12s,color .12s,border-color .12s}
  .cat-nav .tab-btn:hover{border-color:var(--purple);color:var(--purple)}
  .cat-nav .tab-btn.active{background:var(--purple);color:#fff;border-color:var(--purple)}
}

.sec-title{font-size:clamp(15px,3vw,19px);font-weight:800;margin:0 0 18px;display:flex;align-items:center;gap:10px}
.sec-letter{font-size:12px;font-weight:700;background:var(--risk);color:#fff;padding:3px 8px;border-radius:6px}
.sec-letter.ok{background:var(--ok)}
.sec-letter.teal{background:var(--teal)}
.sec-letter.warn{background:var(--warn)}

/* Content blocks */
.phase{margin-bottom:20px}
.phase-label{font-size:10px;letter-spacing:.13em;text-transform:uppercase;font-weight:700;color:var(--purple);background:#d4e5ff;border-left:3px solid var(--purple);border-radius:0 var(--r-sm) var(--r-sm) 0;padding:6px 12px;margin-bottom:10px;display:block}

.steps{list-style:none;display:flex;flex-direction:column;gap:7px}
.steps li{display:flex;gap:10px;align-items:flex-start;background:var(--surface);border-radius:var(--r-sm);padding:10px 14px;font-size:13px;box-shadow:var(--sh)}
.step-num{font-size:11px;font-weight:700;color:var(--teal);flex-shrink:0;min-width:18px}
.steps li strong{font-weight:700}

.callout{border-radius:var(--r-sm);padding:12px 16px;margin:14px 0;font-size:13px}
.callout.danger{background:var(--risk-soft);border-left:4px solid var(--risk);color:#7f1d1d}
.callout.warn{background:var(--warn-soft);border-left:4px solid var(--warn);color:#78350f}
.callout.info{background:var(--teal-soft);border-left:4px solid var(--teal);color:#0c4a6e}
.callout.ok{background:var(--ok-soft);border-left:4px solid var(--ok);color:#14532d}
.callout-label{font-size:9.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px;opacity:.75}
.callout p{margin:4px 0;line-height:1.55}
.callout ul{margin:6px 0 0 16px;line-height:1.7}

/* Drug cards */
.drug-grid{display:flex;flex-direction:column;gap:12px}
.drug-card{background:var(--surface);border-radius:var(--r);padding:16px 18px;box-shadow:var(--sh)}
.drug-card.priority{box-shadow:0 0 0 2px var(--risk),var(--sh)}
.drug-header{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.drug-name{font-weight:800;font-size:15px}
.drug-tag{font-size:9px;font-weight:700;padding:3px 8px;border-radius:50px;background:var(--risk-soft);color:var(--risk);letter-spacing:.04em}
.drug-tag.ok{background:var(--ok-soft);color:var(--ok)}
.drug-tag.teal{background:var(--teal-soft);color:#0369A1}
.drug-tag.warn{background:var(--warn-soft);color:#92400E}
.drug-row{display:grid;grid-template-columns:108px 1fr;gap:5px 12px;font-size:12.5px;margin-top:4px;align-items:baseline}
.drug-row-label{font-size:9.5px;font-weight:600;color:var(--ink-muted);text-transform:uppercase}
.drug-row-val{font-weight:600;font-size:12.5px;color:var(--ink)}
.drug-note{font-size:12px;color:var(--ink-soft);margin-top:8px;font-style:italic;border-top:1px solid var(--line);padding-top:8px}

/* TQ timeline */
.timeline{display:flex;flex-direction:column;gap:0;margin:10px 0}
.tl-row{display:flex;gap:14px;align-items:flex-start;padding:9px 0;border-bottom:1px solid var(--line)}
.tl-row:last-child{border:none}
.tl-time{font-size:11px;font-weight:700;color:var(--risk);flex-shrink:0;width:72px;padding-top:1px}
.tl-text{font-size:13px;line-height:1.55}

.sec-note{font-size:10.5px;color:var(--ink-soft);line-height:1.55;padding:11px 14px;background:var(--purple-soft);border-radius:var(--r-sm);border:1px solid var(--purple-mid);margin-top:16px}
.phase-label-mt{margin-top:10px}
.steps-ol{margin-left:16px;line-height:1.8}
.mt-sm{margin-top:8px}
.meds-ol{margin-left:16px;line-height:1.9;font-size:11.5px}
