:root{--lav:#C9B3EA;--peach:#F9C9B0;--mint:#B8DFCB;--pri:#7C5CC4;--pri-d:#5B3FA0;--ink:#2A2140;--mut:#5F5679;--bg:#F7F3FF;--card:#fff;--line:#E4DAF5;--bad:#B3243F;--warn:#9A5A00;--ok:#17744C;--page:linear-gradient(180deg,#EFE6FF 0,#F7F3FF 260px);--soft:#EFE6FF;--soft2:#F6F4FA;--soft3:#FFF1E8;--nvbg:#FFF4F0;--discbg:#FFF8E1;--okbg:#DDF3E8;--warnbg:#FFF0D6;--badbg:#FDE3E8;--infobg:#E8F0FF;--mode:#7C5CC4;--mode-soft:#EFE6FF;--shadow:rgba(60,30,120,.12);--tabh:64px}
:root[data-mode=NICU]{--mode:#C9622B;--mode-soft:#FDE7DA}
:root[data-mode=Peds]{--mode:#1F8A5B;--mode-soft:#DDF3E8}
:root[data-theme=dark]{color-scheme:dark;--ink:#EFE9FA;--mut:#B8AED3;--bg:#17121F;--card:#221B31;--line:#3A2F52;--pri:#A58BEA;--pri-d:#C9B3EA;--page:#17121F;--soft:#2D2442;--soft2:#261F38;--soft3:#2D2230;--nvbg:#35211D;--discbg:#33301A;--okbg:#17352A;--warnbg:#3D2E12;--badbg:#401B26;--infobg:#1B2C4A;--bad:#FF8CA3;--warn:#FFC169;--ok:#6FDDA8;--lav:#4A3A74;--peach:#6B4330;--mint:#27513F;--shadow:rgba(0,0,0,.4)}
:root[data-theme=dark][data-mode=NICU]{--mode:#FFA877;--mode-soft:#4A2E20}
:root[data-theme=dark][data-mode=Peds]{--mode:#6FDDA8;--mode-soft:#1D4333}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--ink:#EFE9FA;--mut:#B8AED3;--bg:#17121F;--card:#221B31;--line:#3A2F52;--pri:#A58BEA;--pri-d:#C9B3EA;--page:#17121F;--soft:#2D2442;--soft2:#261F38;--soft3:#2D2230;--nvbg:#35211D;--discbg:#33301A;--okbg:#17352A;--warnbg:#3D2E12;--badbg:#401B26;--infobg:#1B2C4A;--bad:#FF8CA3;--warn:#FFC169;--ok:#6FDDA8;--lav:#4A3A74;--peach:#6B4330;--mint:#27513F;--shadow:rgba(0,0,0,.4)}
:root:not([data-theme=light])[data-mode=NICU]{--mode:#FFA877;--mode-soft:#4A2E20}
:root:not([data-theme=light])[data-mode=Peds]{--mode:#6FDDA8;--mode-soft:#1D4333}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:16px/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:linear-gradient(180deg,var(--soft) 0,var(--bg) 220px);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);padding-bottom:calc(24px + env(safe-area-inset-bottom));min-height:100vh}
.seg{display:flex;background:var(--card);border:2px solid var(--lav);border-radius:14px;overflow:hidden}
.seg button{flex:1;border:0;background:transparent;padding:11px 8px;font-weight:700;font-size:.95rem;color:var(--mut);min-height:44px}
.seg button.on{background:var(--pri);color:#fff}
.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:14px;margin:0 0 12px;box-shadow:0 2px 8px rgba(124,92,196,.08)}
.card h2,.card h3,.card h4{margin:.2em 0 .5em}
.card h3{font-size:1.05rem}.card h4{font-size:.95rem;color:var(--pri-d)}
.hero{background:linear-gradient(135deg,var(--soft),var(--soft3))}
.hero-h{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.hero h2{margin:0}
.home-hero{display:flex;gap:12px;align-items:center}.mascot{border-radius:18px}
.tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:12px}
.tile{display:flex;flex-direction:column;gap:3px;padding:14px;border-radius:20px;text-decoration:none;color:var(--ink);min-height:132px;box-shadow:0 3px 10px rgba(60,30,120,.12);border:2px solid rgba(255,255,255,.7)}
.tile.lav{background:var(--lav)}.tile.peach{background:var(--peach)}.tile.mint{background:var(--mint)}
.tile .ic{font-size:2rem}.tile .tt{font-weight:800;font-size:1.02rem}.tile .ts{font-size:.85rem;color:#4a3f66}.tile .tu{font-size:.75rem;font-weight:700;margin-top:auto;background:rgba(255,255,255,.65);align-self:flex-start;border-radius:999px;padding:2px 8px}
.badge{display:inline-block;border-radius:999px;padding:3px 10px;font-size:.78rem;font-weight:800;background:#EEE;color:#333;white-space:nowrap}
.badge.mode-nicu{background:var(--peach);color:#6b2d00}.badge.mode-peds{background:var(--mint);color:#0b4a2b}
.badge.tier1{background:var(--okbg);color:#0b4a2b}.badge.tier2{background:var(--warnbg);color:#7a4a00}
.chips-row{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0}.chips{display:inline-flex;gap:6px;flex-wrap:wrap}
.chip{font-size:.75rem;font-weight:700;border-radius:999px;padding:2px 9px;border:1px solid var(--line);white-space:nowrap}.chip.on{background:var(--soft);color:var(--pri-d);border-color:var(--lav)}.chip.off{color:#9a92b0;background:var(--soft2)}
.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:8px}
.fld{display:flex;flex-direction:column;gap:3px}.lbl{font-size:.82rem;font-weight:700;color:var(--mut)}.hint{font-size:.75rem;color:var(--mut)}
.inp{display:flex;align-items:center;border:2px solid var(--line);border-radius:12px;background:var(--card);overflow:hidden}.inp:focus-within{border-color:var(--pri)}
input[type=text],select{font:inherit;font-size:16px;color:var(--ink);width:100%;border:0;padding:11px 10px;background:transparent;min-height:46px}
select{border:2px solid var(--line);border-radius:12px;background:#fff}
.suf{padding:0 10px;color:var(--mut);font-weight:700;font-size:.85rem;white-space:nowrap}
.derived{background:var(--soft);border-radius:12px;padding:8px 10px;font-size:.9rem;margin-top:4px;min-height:1.2em}
.muted{color:var(--mut)}.small{font-size:.85rem}.center{text-align:center}
.checks{display:flex;flex-direction:column;gap:8px}.chk,.opt{display:flex;gap:10px;align-items:flex-start;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:var(--card);min-height:44px}
.chk input,.opt input{width:22px;height:22px;margin-top:1px;accent-color:var(--pri);flex:none}
.opts{border:1px solid var(--line);border-radius:14px;margin:0 0 10px;padding:8px;display:flex;flex-direction:column;gap:6px}.opts legend{font-weight:800;color:var(--pri-d);padding:0 6px}
.opt .pts{font-weight:800;background:var(--lav);border-radius:8px;min-width:24px;text-align:center;padding:0 6px;flex:none}
.btn{background:var(--pri);color:var(--card);border:0;border-radius:12px;padding:12px 16px;font-weight:800;font-size:1rem;min-height:46px;margin-top:6px}.ghostbtn{background:var(--soft);color:var(--pri-d)}
.nv{background:var(--nvbg);border:2px solid #F0A58C}.nv-h{font-weight:900;color:#9b2c0c;display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:6px}
.pending{background:var(--card);border:1px dashed #E3A27F;border-radius:12px;padding:8px 10px;margin:8px 0;font-size:.85rem}.pending ul{margin:4px 0 0;padding-left:18px}
.ghost{background:var(--soft2);border-style:dashed}
.result{border:2px solid var(--lav)}.res-h{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-bottom:6px}
.res-drug{font-weight:900;font-size:1.15rem}.res-rule{font-size:.88rem;color:var(--mut);margin-bottom:6px}
.bignum{display:flex;align-items:baseline;gap:8px;margin:6px 0}.bignum .n{font-size:2.3rem;font-weight:900;color:var(--pri-d);line-height:1}.bignum .u{font-weight:700;color:var(--mut)}
.subnum{font-weight:700;margin-bottom:6px}.subnum.small{font-weight:500}
.flag{display:flex;gap:8px;border-radius:12px;padding:8px 10px;margin:6px 0;font-size:.9rem;align-items:flex-start}
.flag.stop{background:var(--badbg);color:#7a1228}.flag.warn{background:var(--warnbg);color:#6b3f00}.flag.info{background:var(--infobg);color:#1d3a73}
.steps{padding-left:20px;font-size:.9rem}.steps li{margin-bottom:4px}
.source{background:var(--bg);border-radius:12px;padding:8px 10px;margin:8px 0;font-size:.85rem}.src-h{display:flex;gap:6px;align-items:center}.src-t{font-weight:700}.src-v{color:var(--mut);overflow-wrap:anywhere}.source{overflow-wrap:anywhere}.src-l{margin-top:4px}.lv{font-weight:700;color:var(--ok)}.src-url{word-break:break-all;font-size:.8rem}
a{color:var(--pri-d)}
.disclaimer{background:var(--discbg);border:1px solid #F2D98A;border-radius:12px;padding:8px 10px;font-size:.82rem;font-weight:600}
.tscroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:6px 0;border:1px solid var(--line);border-radius:12px}
table{border-collapse:collapse;min-width:100%;font-size:.88rem}
th,td{padding:7px 10px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;word-break:keep-all;overflow-wrap:normal}
thead th{background:var(--soft);position:sticky;top:0}tbody th{font-weight:700}
.thr{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:8px 0}.thr div{background:var(--bg);border-radius:14px;padding:8px;text-align:center;display:flex;flex-direction:column}.thr .k{font-size:.72rem;color:var(--mut);font-weight:700}.thr .v{font-size:1.7rem;font-weight:900;color:var(--pri-d)}
.thr div:nth-child(2) .v{color:var(--warn)}.thr div:nth-child(3) .v{color:var(--bad)}
.verdict{border-radius:12px;padding:10px;font-weight:800;margin:6px 0}.verdict.good{background:var(--okbg);color:#0b4a2b}.verdict.warnbox{background:var(--warnbg);color:#6b3f00}.verdict.bad{background:var(--badbg);color:#7a1228}
details{margin:8px 0}summary{font-weight:700;cursor:pointer;min-height:32px}
.band{font-weight:700}
@media (min-width:640px){.tiles{grid-template-columns:repeat(3,1fr)}}
@media (max-width:380px){.tiles{gap:8px}.bignum .n{font-size:2rem}}
@media (prefers-reduced-motion:no-preference){.tile{transition:transform .12s}.tile:active{transform:scale(.97)}}
input:focus,select:focus{outline:none}select:focus{border-color:var(--pri)}
.btn:focus-visible,a:focus-visible,.seg button:focus-visible{outline:3px solid #FFB89A;outline-offset:2px}

/* ===== app shell ===== */
html{scroll-behavior:smooth}
#shell{display:flex;min-height:100vh}
#side{display:none}
#content{flex:1;min-width:0;display:flex;flex-direction:column}
.top{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:8px;background:var(--card);border-bottom:3px solid var(--mode);padding:calc(8px + env(safe-area-inset-top)) 12px 8px;box-shadow:0 2px 10px var(--shadow)}
.brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink);font-weight:900;font-size:1.05rem;min-width:0}
.brand img{border-radius:12px;flex:none}
.top h1{margin:0;font-size:1.05rem;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.iconbtn{background:var(--soft);color:var(--ink);border:0;border-radius:12px;min-width:44px;min-height:44px;font-size:1.15rem;cursor:pointer;flex:none}
.iconbtn[aria-pressed=true]{background:var(--mode);color:#fff}
.backbtn{background:var(--soft);color:var(--ink);border:0;border-radius:12px;padding:8px 12px;font-weight:800;min-height:44px;flex:none;cursor:pointer}
.backbtn[hidden]{display:none}
#ctxbar{position:sticky;top:calc(58px + env(safe-area-inset-top));z-index:15;padding:6px 12px 0;background:transparent}
.ctx{display:flex;align-items:center;gap:8px;width:100%;background:var(--card);border:2px solid var(--mode);border-radius:16px;padding:8px 12px;min-height:48px;text-align:left;color:var(--ink);font:inherit;cursor:pointer;box-shadow:0 2px 8px var(--shadow)}
.ctx .pill{background:var(--mode-soft);color:var(--ink);border-radius:999px;padding:3px 10px;font-weight:900;font-size:.82rem;white-space:nowrap}
.ctx .sum{flex:1;min-width:0;font-size:.88rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ctx .edit{font-size:.8rem;font-weight:800;color:var(--pri-d)}
main{width:100%;max-width:860px;margin:0 auto;padding:12px 12px calc(var(--tabh) + 28px + env(safe-area-inset-bottom));animation:fadein .18s ease-out}
@keyframes fadein{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
#tabs{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;background:var(--card);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -2px 12px var(--shadow)}
#tabs a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-height:var(--tabh);text-decoration:none;color:var(--mut);font-size:.72rem;font-weight:800;border-top:3px solid transparent}
#tabs a .ti{font-size:1.4rem;line-height:1}
#tabs a[aria-current=page]{color:var(--pri-d);border-top-color:var(--mode);background:var(--mode-soft)}
.sheetbg{position:fixed;inset:0;background:rgba(20,10,40,.5);z-index:40;display:flex;align-items:flex-end;justify-content:center}
.sheetbg[hidden]{display:none}
.sheet{background:var(--bg);width:100%;max-width:640px;max-height:92vh;overflow:auto;border-radius:24px 24px 0 0;padding:12px 12px calc(16px + env(safe-area-inset-bottom));animation:slideup .2s ease-out}
@keyframes slideup{from{transform:translateY(40px);opacity:.5}to{transform:none;opacity:1}}
.sheet-h{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.sheet-h h2{margin:0;font-size:1.15rem}
.seg{display:flex;background:var(--card);border:2px solid var(--line);border-radius:16px;overflow:hidden;margin-bottom:10px}
.seg button{flex:1;border:0;background:transparent;padding:11px 8px;font-weight:800;font-size:.95rem;color:var(--mut);min-height:48px;cursor:pointer;color:var(--ink)}
.seg button.on{background:var(--mode);color:#fff}
:root[data-theme=dark] .seg button.on,:root[data-theme=dark] .ctx .pill{color:#1b1426}
.hero-home{display:flex;gap:14px;align-items:center;background:linear-gradient(135deg,var(--soft),var(--soft3));border-radius:24px;padding:14px;margin-bottom:12px;border:1px solid var(--line)}
.hero-home img{border-radius:24px;flex:none;box-shadow:0 4px 14px var(--shadow)}
.hero-home h2{margin:0 0 4px;font-size:1.3rem}
.srch{display:flex;gap:8px;margin:0 0 12px}
.srch input{flex:1;font:inherit;font-size:16px;border:2px solid var(--line);border-radius:14px;padding:12px 14px;min-height:50px;background:var(--card);color:var(--ink)}
.srch input:focus{border-color:var(--mode);outline:none}
.sec-h{display:flex;align-items:baseline;justify-content:space-between;margin:14px 2px 6px}.sec-h h2{margin:0;font-size:1.05rem}
.list{display:flex;flex-direction:column;gap:8px;margin:0 0 12px}
.li{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:10px 12px;text-decoration:none;color:var(--ink);min-height:56px}
.li:hover{border-color:var(--mode)}
.li .ic{font-size:1.5rem;flex:none}.li .tx{flex:1;min-width:0}.li .t{font-weight:800}.li .s{font-size:.82rem;color:var(--mut)}
.tag{font-size:.7rem;font-weight:800;border-radius:999px;padding:2px 8px;background:var(--soft);color:var(--ink);white-space:nowrap}
.pillrow{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0 10px}
.pillbtn{background:var(--card);border:2px solid var(--line);border-radius:999px;padding:6px 14px;font-weight:800;font-size:.85rem;min-height:40px;color:var(--ink);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center}
.pillbtn.on{background:var(--mode);border-color:var(--mode);color:#fff}
:root[data-theme=dark] .pillbtn.on{color:#1b1426}
.copybtn{background:var(--soft);color:var(--ink);border:0;border-radius:12px;padding:8px 14px;font-weight:800;min-height:44px;cursor:pointer;margin-top:6px}
.toast{position:fixed;left:50%;bottom:calc(var(--tabh) + 20px);transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:999px;font-weight:800;z-index:60;font-size:.9rem}
.sr{position:absolute;left:-9999px}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #FF9E6E;outline-offset:2px}
:root[data-mode=NICU] .btn{background:var(--mode)}
@media(min-width:900px){
  #tabs{display:none}
  #side{display:flex;flex-direction:column;gap:4px;width:230px;flex:none;position:sticky;top:0;height:100vh;padding:16px 12px;background:var(--card);border-right:1px solid var(--line)}
  #side .brand{margin-bottom:12px;font-size:1.15rem}
  #side a.nav{display:flex;align-items:center;gap:10px;padding:12px;border-radius:14px;text-decoration:none;color:var(--ink);font-weight:800;min-height:48px}
  #side a.nav[aria-current=page]{background:var(--mode-soft);color:var(--ink);box-shadow:inset 4px 0 0 var(--mode)}
  main{padding-bottom:40px}
  .top .brand{display:none}
  #ctxbar{top:calc(58px + env(safe-area-inset-top))}
  .sheetbg{align-items:center}.sheet{border-radius:24px}
}
@media(prefers-reduced-motion:reduce){main,.sheet{animation:none}html{scroll-behavior:auto}}
@media(max-width:360px){.top{padding-left:8px;padding-right:8px}.top h1{font-size:.95rem}.iconbtn{min-width:40px}.ctx .edit{display:none}}

:root[data-theme=dark]{}
:root[data-theme=dark] :is(.badge,.badge.mode-nicu,.badge.mode-peds,.badge.tier1,.badge.tier2,.flag.stop,.flag.warn,.flag.info,.verdict.good,.verdict.warnbox,.verdict.bad,.nv-h,.tile .ts,.tile .tt,.disclaimer,.tile){color:var(--ink)}
:root[data-theme=dark] .badge{background:var(--soft)}:root[data-theme=dark] .badge.mode-nicu{background:var(--peach)}:root[data-theme=dark] .badge.mode-peds{background:var(--mint)}:root[data-theme=dark] .tile .tu{background:rgba(0,0,0,.25)}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) :is(.badge,.badge.mode-nicu,.badge.mode-peds,.badge.tier1,.badge.tier2,.flag.stop,.flag.warn,.flag.info,.verdict.good,.verdict.warnbox,.verdict.bad,.nv-h,.tile .ts,.tile .tt,.disclaimer,.tile){color:var(--ink)}:root:not([data-theme=light]) .badge{background:var(--soft)}:root:not([data-theme=light]) .badge.mode-nicu{background:var(--peach)}:root:not([data-theme=light]) .badge.mode-peds{background:var(--mint)}:root:not([data-theme=light]) .tile .tu{background:rgba(0,0,0,.25)}}
select,input[type=text]{color:var(--ink)}.derived,.inp,.chk,.opt{color:var(--ink)}.inp{background:var(--card)}select{background:var(--card)}
.ctxnote .ghostbtn{width:auto;flex:none;margin:0}
#ctxbar{max-width:860px;width:100%;margin:0 auto}
@media(min-width:900px){#content>#ctxbar{padding-left:12px;padding-right:12px}}
.res-ind{margin:2px 0 6px;font-size:.95rem}.lbl{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted,#6b6280);margin-right:6px}
blockquote.quote{margin:10px 0;padding:8px 12px;border-left:4px solid var(--mode,#7C5CC4);background:var(--mode-soft,#f3eefc);border-radius:0 10px 10px 0;font-size:.88rem}
blockquote.quote .lbl{display:block;margin-bottom:2px}


.label-text{font-size:.92rem;line-height:1.5;max-height:60vh;overflow:auto;overscroll-behavior:contain;padding-top:6px}
.label-text p{margin:.3em 0;overflow-wrap:anywhere}
details.card>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:6px}
.ghostbtn{background:transparent;border:2px solid var(--line);border-radius:12px;padding:8px 12px;min-height:44px;font-weight:800;color:var(--pri);cursor:pointer}
.ghostbtn:focus-visible{outline:3px solid #FFB89A;outline-offset:2px}

/* ---- labs ---- */
.sec-t{margin:14px 2px 6px;font-size:1rem}
.stchip{display:inline-block;border-radius:10px;padding:3px 9px;font-weight:800;font-size:.85rem}
.st-low,.st-high{background:var(--badbg);color:#7a1228}.st-ok{background:var(--okbg);color:#0b4a2b}.st-ref{background:var(--infobg);color:#1d3a73}
:root[data-theme=dark] .st-low,:root[data-theme=dark] .st-high{color:#ffd3dc}:root[data-theme=dark] .st-ok{color:#c9f2dc}:root[data-theme=dark] .st-ref{color:#d3e2ff}
.labin{width:100%;min-width:84px;border:2px solid var(--line);border-radius:12px;padding:9px 10px;font-size:1rem;background:var(--card);color:var(--ink);min-height:44px}
.labtbl td,.labtbl th{vertical-align:top}
.labrows{display:flex;flex-direction:column;gap:8px;margin:8px 0}
.labrow{border:1px solid var(--line);border-radius:14px;padding:10px 12px;background:var(--soft2,var(--card))}
.lr-h{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.lr-n{font-weight:800}.lr-u{font-size:.8rem;color:var(--mut);white-space:nowrap}
.lr-ref{font-size:.88rem;margin:4px 0 8px;line-height:1.45;overflow-wrap:anywhere}.lr-k{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--mut);margin-right:4px}
.lr-in .st{margin-top:6px;min-height:1px}
@media(min-width:720px){.labrows{display:grid;grid-template-columns:1fr 1fr}}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .st-low,:root:not([data-theme=light]) .st-high{color:#ffd3dc}:root:not([data-theme=light]) .st-ok{color:#c9f2dc}:root:not([data-theme=light]) .st-ref{color:#d3e2ff}}
.st-none{background:var(--soft);color:var(--ink)}

/* Defensive: never let a host-injected overlay (e.g. Netlify HUD/badge) cover the tab bar */
[id*="netlify" i],[class*="netlify" i],[data-nf-variant],iframe[src*="/.netlify/"]{display:none!important}

/* Labs by age table */
.labctl{display:flex;flex-direction:column;gap:8px;margin:10px 0}.labctl .srch{margin:0}
.labscroll{max-height:70vh;overflow:auto;position:relative}
.labtbl2{border-collapse:separate;border-spacing:0;width:100%;min-width:620px}
.labtbl2 thead th{position:sticky;top:0;z-index:3;background:var(--card);border-bottom:2px solid var(--lav);font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}
.labtbl2 tbody th{position:sticky;left:0;z-index:2;background:var(--card);font-weight:800}
.labtbl2 td,.labtbl2 th{white-space:nowrap;word-break:keep-all;overflow-wrap:normal;vertical-align:top}
.labtbl2 td .labin{min-width:96px;width:96px}
.labtbl2 tr[hidden]{display:none}
.labtbl2 tbody th{white-space:normal;min-width:128px;max-width:168px;word-break:keep-all;overflow-wrap:normal;hyphens:none}
.labtbl2 td:nth-child(2){min-width:150px}
.labtbl2 tbody tr:target th{background:var(--soft)}
.li.alias{background:transparent;border-style:dashed}.li.alias .t{font-weight:700}
/* v1.2.8 algorithms & references */
blockquote.q{margin:.5em 0;padding:.5em .7em;border-left:4px solid var(--pri,#7C5CC4);background:rgba(201,179,234,.18);border-radius:0 10px 10px 0;font-size:.92rem;overflow-wrap:anywhere}
blockquote.q cite{display:block;margin-top:.3em;font-style:normal;font-size:.78rem;opacity:.8}
.trail{display:flex;flex-wrap:wrap;gap:6px;margin:.4em 0;padding:0;list-style:none}
.trail li a,.trail li span{display:inline-block;padding:3px 9px;border-radius:999px;background:rgba(184,223,203,.5);font-size:.78rem;text-decoration:none;color:inherit}
.trail li span.now{background:rgba(249,201,176,.7);font-weight:600}
.opts-col{display:flex;flex-direction:column;gap:8px;margin:.6em 0}
.opts-col .btn{width:100%;min-height:48px;text-align:left;white-space:normal;justify-content:flex-start}
.opts-col .btn.sugg{outline:3px solid #7C5CC4;outline-offset:1px}
.step-n{font-size:.78rem;opacity:.75}
.ref-v{font-weight:700}
blockquote.q,.card p,.card .small{overflow-wrap:anywhere}
.row-item{background:var(--card,#fff);border:1px dashed var(--bd,#c9b3ea);border-radius:14px;padding:10px 12px}.mathl{padding-left:1.1em;margin:4px 0 8px}.mathl li{margin:2px 0;overflow-wrap:anywhere}
:root[data-mode=NICU] .btn.ghostbtn{background:transparent;color:var(--pri)}

/* v1.2.24 calculator hub: category chips + collapsible sections */
.catchips{gap:6px}.catchip{font:inherit;font-size:.78rem;font-weight:700;background:var(--card);color:var(--ink);cursor:pointer;min-height:36px;padding:4px 10px;white-space:normal;text-align:left}
.catchip.on{background:var(--pri-d);color:#fff;border-color:var(--pri-d)}.catchip b{margin-left:2px}.catchip .pc{margin-left:3px;color:var(--mut);font-weight:700}.catchip.on .pc{color:#fff}
details.cat{background:var(--card);border:1px solid var(--line);border-radius:16px;margin:8px 0;padding:0 10px}
details.cat>summary{display:flex;align-items:center;gap:8px;min-height:48px;padding:6px 0;list-style:none;flex-wrap:wrap}
details.cat>summary::-webkit-details-marker{display:none}
details.cat>summary::after{content:'▸';margin-left:auto;color:var(--mut)}details.cat[open]>summary::after{content:'▾'}
.cat .ctt{font-weight:800;flex:1 1 150px;min-width:0;overflow-wrap:anywhere}.cat .cct{font-size:.78rem;font-weight:700;color:var(--mut)}
.cat .tiles{margin-top:6px}.cat .pend{margin:4px 0 10px}.cat .pend h3{margin:8px 0 6px}
