/* ============================================
   Cardio-Oncology Pocket Guide — extensions
   Builds on styles.css (ECMO template)
   ============================================ */

/* Cardio-oncology tonal palette with a slightly deeper red
   so the guide reads as cardiology + oncology, not branded ECMO. */
:root{
  --guide-red:#B5142A;
  --guide-red-deep:#8A0F20;
  --guide-red-dark:#5d0a16;
  --co-purple:#5a2f8a;          /* oncology accent */
  --co-purple-tint:#f1ecf7;
  --co-teal:#1f7a8a;             /* surveillance accent */
  --co-teal-tint:#e6f1f3;
}

/* Generic mark (replaces institutional logo) */
.mark{
  display:flex;align-items:center;justify-content:center;
  height:62px;width:62px;flex:none;
  border:1.5px solid var(--ink);
  background:var(--paper);
  position:relative;
}
.mark .glyph{
  font-family:"Newsreader",ui-serif,Georgia,serif;
  font-style:italic;font-weight:600;
  font-size:34pt;line-height:1;color:var(--ink);
  letter-spacing:-.04em;
}
.mark .glyph .accent{color:var(--guide-red)}
.mark::after{
  content:"CARDIO·ONC";
  position:absolute;bottom:-2px;left:50%;transform:translate(-50%,100%);
  font-family:"JetBrains Mono",monospace;font-size:5pt;letter-spacing:.18em;
  color:var(--ink-3);font-weight:700;
  white-space:nowrap;
  display:none; /* hidden — title carries it */
}
.head--mini .mark{height:42px;width:42px}
.head--mini .mark .glyph{font-size:22pt}

/* Risk-tier pill — replaces "modality" pill */
.tier{
  display:inline-block;padding:3px 7px;border-radius:2px;
  font-weight:800;letter-spacing:.12em;font-size:7.2pt;
  text-transform:uppercase;
}
.tier-vh{background:var(--stop);color:#fff}
.tier-h{background:var(--guide-red);color:#fff}
.tier-m{background:#8a6700;color:#fff}
.tier-l{background:var(--ink-3);color:#fff}
.tier-rt{background:var(--co-purple);color:#fff}

/* Drug card */
.drug-grid{
  display:grid;gap:6px;margin-top:5px;
}
.drug-grid.cols-2{grid-template-columns:1fr 1fr}
.drug-grid.cols-3{grid-template-columns:1fr 1fr 1fr}

.drug{
  border:1px solid var(--rule-hair);background:#fff;
  display:flex;flex-direction:column;overflow:hidden;
  font-size:6.9pt;line-height:1.24;
}
.drug .drug-hd{
  background:var(--ink);color:#fff;padding:4px 8px 5px;
  display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:6px;
  border-bottom:2px solid var(--guide-red);
}
.drug .drug-hd .name{
  font-weight:800;font-size:9pt;letter-spacing:-.005em;line-height:1.05;
}
.drug .drug-hd .name .sub{
  display:block;font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:500;font-size:5.8pt;letter-spacing:.08em;text-transform:uppercase;
  color:#ffb9b3;margin-top:1px;
}
.drug .drug-hd .tier{font-size:6pt;padding:2px 5px;letter-spacing:.08em}

.drug .drug-body{padding:5px 8px 6px;display:flex;flex-direction:column;gap:2px;flex:1}

.drug .agents{
  font-size:6.6pt;line-height:1.25;color:var(--ink-2);
  border-bottom:1px dotted var(--rule-soft);padding-bottom:3px;
}
.drug .agents .al{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:700;font-size:5.6pt;letter-spacing:.06em;text-transform:uppercase;
  color:var(--guide-red);margin-right:4px;
}
.drug .agents b{color:var(--ink);font-weight:700}

.drug .indi{
  display:grid;grid-template-columns:auto 1fr;column-gap:6px;row-gap:1px;
  font-size:6.5pt;line-height:1.22;
}
.drug .indi .k{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:700;font-size:5.6pt;letter-spacing:.06em;text-transform:uppercase;
  color:var(--guide-red);padding-top:1px;white-space:nowrap;
}
.drug .indi .v{color:var(--ink-2)}
.drug .indi .v b{color:var(--ink);font-weight:700}

.drug .ddiv{
  height:1px;background:var(--rule-soft);margin:2px 0 1px;
}

.drug .blk{margin-top:1px}
.drug .blk .blk-h{
  font-size:5.8pt;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  display:flex;align-items:center;gap:5px;margin-bottom:2px;color:var(--ink);
}
.drug .blk .blk-h::before{
  content:"";display:inline-block;width:4px;height:4px;flex:none;
}
.drug .blk.tox .blk-h{color:var(--stop)}
.drug .blk.tox .blk-h::before{background:var(--stop)}
.drug .blk.mon .blk-h{color:var(--co-teal)}
.drug .blk.mon .blk-h::before{background:var(--co-teal)}
.drug .blk.mgmt .blk-h{color:var(--guide-red-deep)}
.drug .blk.mgmt .blk-h::before{background:var(--guide-red-deep)}
.drug .blk.other .blk-h{color:var(--ink-2)}
.drug .blk.other .blk-h::before{background:#8a6700}

/* compact non-cardiac toxicity strip — sits flush at card bottom */
.drug .oth{
  margin-top:auto;
  padding-top:2px;border-top:1px dotted var(--rule-soft);
  font-size:6.2pt;line-height:1.18;color:var(--ink-2);
}
.drug .oth .oth-l{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:700;font-size:5.4pt;letter-spacing:.06em;text-transform:uppercase;
  color:#8a6d00;margin-right:4px;white-space:nowrap;
}
.drug .oth b{color:var(--ink);font-weight:700}

.drug ul.bl{margin:0;padding:0;list-style:none}
.drug ul.bl li{
  padding:0.25px 0 0.25px 8px;position:relative;
  font-size:6.6pt;line-height:1.2;color:var(--ink-2);
}
.drug ul.bl li::before{
  content:"";position:absolute;left:0;top:.62em;
  width:4px;height:1px;background:var(--ink);
}
.drug ul.bl li b{color:var(--ink);font-weight:700}
.drug ul.bl li .dose{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:500;font-size:6.6pt;color:var(--ink);
}
.drug ul.bl li .pct{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:700;font-size:6.4pt;color:var(--stop);
}

/* Featured (double-wide) drug card */
.drug.feature{grid-column:span 2}
.drug.feature .drug-hd{padding:5px 10px 6px}
.drug.feature .drug-hd .name{font-size:11pt}
.drug.feature .drug-body{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:6px 10px 7px}
.drug.feature .drug-body > .left,
.drug.feature .drug-body > .right{display:flex;flex-direction:column;gap:3px}

/* Hold/Stop/Resume table */
.hsr-tbl{
  width:100%;border-collapse:collapse;font-size:6.6pt;line-height:1.22;
  margin-top:4px;
  table-layout:fixed;
}
.hsr-tbl col.c-class{width:14%}
.hsr-tbl col.c-stop{width:20%}
.hsr-tbl col.c-mg{width:18%}
.hsr-tbl col.c-resume{width:16%}
.hsr-tbl col.c-test{width:16%}
.hsr-tbl col.c-surv{width:16%}

.hsr-tbl th,.hsr-tbl td{
  padding:3px 6px;border-bottom:1px solid var(--rule-hair);vertical-align:top;text-align:left;
}
.hsr-tbl thead th{
  background:var(--ink);color:#fff;font-size:5.8pt;letter-spacing:.1em;text-transform:uppercase;
  padding:4px 6px;font-weight:700;border-bottom:0;
}
.hsr-tbl thead th.stop{background:var(--stop)}
.hsr-tbl thead th.mg{background:var(--guide-red-deep)}
.hsr-tbl thead th.res{background:var(--co-teal)}
.hsr-tbl thead th.test{background:var(--ink-2)}
.hsr-tbl thead th.surv{background:var(--co-purple)}
.hsr-tbl tbody tr:nth-child(odd) td{background:var(--paper-warm)}
.hsr-tbl tbody td.cls{
  font-weight:800;letter-spacing:-.005em;font-size:7pt;color:var(--ink);
}
.hsr-tbl tbody td.cls .agt{
  display:block;font-family:"JetBrains Mono",ui-monospace,monospace;
  font-size:5.4pt;letter-spacing:.06em;text-transform:uppercase;
  color:var(--ink-3);font-weight:600;margin-top:1px;line-height:1.2;
}
.hsr-tbl ul{margin:0;padding:0;list-style:none}
.hsr-tbl ul li{
  padding:0 0 0 7px;position:relative;
  font-size:6.4pt;line-height:1.22;color:var(--ink-2);
  margin-bottom:1px;
}
.hsr-tbl ul li::before{
  content:"";position:absolute;left:0;top:.62em;width:4px;height:1px;background:var(--ink);
}
.hsr-tbl ul li b{color:var(--ink);font-weight:700}
.hsr-tbl ul li .dose,.hsr-tbl .dose{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:500;font-size:6.4pt;color:var(--ink);
}

/* Surveillance schedule strip */
.surv-strip{
  display:grid;grid-template-columns:repeat(6,1fr);gap:0;
  border:1px solid var(--rule-hair);margin-top:4px;
  font-size:6.5pt;line-height:1.22;
}
.surv-strip .sc{
  padding:4px 7px 5px;border-right:1px solid var(--rule-hair);
}
.surv-strip .sc:last-child{border-right:0}
.surv-strip .sc .sc-h{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:800;font-size:5.6pt;letter-spacing:.08em;text-transform:uppercase;
  color:var(--guide-red);margin-bottom:2px;
}
.surv-strip .sc .sc-b{color:var(--ink-2)}
.surv-strip .sc .sc-b b{color:var(--ink);font-weight:700}

/* HFA-ICOS risk pill */
.risk-pill{
  display:inline-flex;align-items:center;gap:4px;
  padding:2px 6px;border-radius:2px;
  font-family:"JetBrains Mono",monospace;font-weight:700;
  font-size:6pt;letter-spacing:.06em;text-transform:uppercase;
  line-height:1;
}
.risk-pill.low{background:#e6efe9;color:#1f6b3a;border:1px solid #1f6b3a}
.risk-pill.med{background:#fff7d6;color:#7a5a00;border:1px solid #8a6700}
.risk-pill.hi{background:#fdeae8;color:var(--stop);border:1px solid var(--stop)}
.risk-pill.vhi{background:var(--stop);color:#fff}

/* GDMT cheat strip */
.gdmt{
  display:grid;grid-template-columns:repeat(4,1fr);gap:0;
  border:1.25px solid var(--ink);margin-top:4px;
}
.gdmt .g{padding:5px 8px 6px;border-right:1px solid var(--rule-hair)}
.gdmt .g:last-child{border-right:0}
.gdmt .g .gh{
  font-size:6.8pt;font-weight:800;letter-spacing:-.005em;line-height:1.05;
  display:flex;align-items:baseline;gap:6px;margin-bottom:2px;
}
.gdmt .g .gh .gn{
  font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:800;
  color:var(--guide-red);font-size:8pt;letter-spacing:-.02em;
}
.gdmt .g .gb{font-size:6.5pt;line-height:1.24;color:var(--ink-2)}
.gdmt .g .gb b{color:var(--ink);font-weight:700}
.gdmt .g .gb .dose{font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:6.6pt;color:var(--ink)}

/* Emergency banner — adapt for 5 cells */
.emerg .cells.c5{grid-template-columns:repeat(5,1fr)}

/* Biomarker grid */
.bio-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:5px;
}
.bio{
  border:1px solid var(--rule-hair);background:var(--paper-warm);
  padding:4px 8px 5px;
}
.bio .bh{
  display:flex;align-items:baseline;justify-content:space-between;gap:6px;
  margin-bottom:2px;
}
.bio .bh .bn{font-weight:800;font-size:8pt;letter-spacing:-.005em;line-height:1}
.bio .bh .bu{
  font-family:"JetBrains Mono",monospace;font-size:5.6pt;
  letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-weight:700;
}
.bio .bb{font-size:6.5pt;line-height:1.24;color:var(--ink-2)}
.bio .bb b{color:var(--ink);font-weight:700}
.bio .bb .dose{font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:6.6pt;color:var(--ink)}

/* Tier band header — wraps each risk section */
.tier-band{
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;
  margin:4px 0 0;padding:2px 0 3px;
  border-top:2px solid var(--ink);border-bottom:1px solid var(--ink);
}
.tier-band .tb-tier{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:800;font-size:6.4pt;letter-spacing:.14em;
  padding:2px 7px;color:#fff;
}
.tier-band .tb-tier.vh{background:var(--stop)}
.tier-band .tb-tier.h{background:var(--guide-red)}
.tier-band .tb-tier.m{background:#8a6700}
.tier-band .tb-tier.l{background:var(--ink-3)}
.tier-band h2{
  margin:0;font-size:10.5pt;font-weight:800;letter-spacing:-.005em;line-height:1;
}
.tier-band .tb-tag{
  font-size:6.6pt;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-weight:700;
}

/* ===== Directory grid (Page 6) ===== */
.dir-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:4px;
  margin-top:4px;
}
.dir{
  border:1px solid var(--rule-hair);background:#fff;
  display:flex;flex-direction:column;overflow:hidden;
  font-size:7pt;line-height:1.25;
}
.dir.dir-tall{grid-row:span 2}
.dir .dir-hd{
  background:var(--ink);color:#fff;padding:3px 8px;
  display:flex;justify-content:space-between;align-items:baseline;gap:6px;
  border-bottom:2px solid var(--guide-red);
}
.dir .dir-hd .dh-cat{
  font-weight:800;letter-spacing:-.005em;font-size:8pt;line-height:1.05;
}
.dir .dir-hd .dh-n{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:700;font-size:6pt;color:#ffb9b3;letter-spacing:.08em;
}
.dir ul{margin:0;padding:5px 9px 6px;list-style:none}
.dir ul li{
  padding:1.5px 0;font-size:6.8pt;line-height:1.22;color:var(--ink-2);
  border-bottom:1px dotted var(--rule-soft);
}
.dir ul li:last-child{border-bottom:0}
.dir ul li b{color:var(--ink);font-weight:700}
.dir ul li .muted{color:var(--ink-3);font-size:5.8pt;letter-spacing:.04em}

/* ===== Algorithm flow (pages 5-6) ===== */
.algo{
  border:1px solid var(--rule-hair);background:#fff;
  margin-top:4px;display:flex;flex-direction:column;overflow:hidden;
  font-size:6.8pt;line-height:1.24;
}
.algo .algo-hd{
  background:var(--ink);color:#fff;padding:4px 8px;
  display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:baseline;
  border-bottom:2px solid var(--guide-red);
}
.algo .algo-hd .ah-n{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:800;font-size:8pt;color:var(--guide-red);letter-spacing:.04em;
}
.algo .algo-hd .ah-t{font-weight:800;font-size:8.5pt;letter-spacing:-.005em;line-height:1.05}
.algo .algo-hd .ah-src{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-size:5.4pt;color:#ffb9b3;letter-spacing:.08em;text-transform:uppercase;
}
.algo .algo-body{padding:5px 9px 6px;display:flex;flex-direction:column;gap:3px}

.algo-step{
  display:grid;grid-template-columns:auto 1fr;column-gap:7px;align-items:start;
  padding:2px 0;border-bottom:1px dotted var(--rule-soft);
}
.algo-step:last-child{border-bottom:0}
.algo-step .gate{
  display:inline-block;flex:none;
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:800;color:#fff;background:var(--ink);
  padding:1.5px 5px;font-size:5.6pt;letter-spacing:.08em;text-transform:uppercase;
  border-radius:1px;line-height:1.15;
  align-self:flex-start;
  min-width:38px;text-align:center;
}
.algo-step .gate.q{background:var(--guide-red)}
.algo-step .gate.y{background:#1f6b3a}
.algo-step .gate.n{background:var(--ink-3)}
.algo-step .gate.stop{background:var(--stop)}
.algo-step .gate.do{background:var(--guide-red)}
.algo-step .gate.if{background:#8a6700}
.algo-step .body{font-size:6.7pt;line-height:1.23;color:var(--ink-2)}
.algo-step .body b{color:var(--ink);font-weight:700}
.algo-step .body .dose{font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:6.7pt;color:var(--ink)}

/* EF gating ladder */
.ef-ladder{
  display:grid;grid-template-columns:auto 1fr;border:1px solid var(--rule-hair);
  margin-top:4px;font-size:6.8pt;line-height:1.24;
}
.ef-ladder .er,
.ef-ladder .ev{
  padding:4px 8px;border-bottom:1px solid var(--rule-hair);
}
.ef-ladder > div:nth-last-child(-n+2){border-bottom:0}
.ef-ladder .er{
  background:var(--paper-warm);
  font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:800;font-size:7pt;
  letter-spacing:.02em;color:var(--ink);
  display:flex;flex-direction:column;justify-content:center;align-items:flex-start;
  border-right:1px solid var(--rule-hair);min-width:115px;
}
.ef-ladder .er .lbl{
  font-size:5.4pt;color:var(--guide-red);font-weight:700;
  text-transform:uppercase;letter-spacing:.08em;margin-bottom:1px;
}
.ef-ladder .ev{color:var(--ink-2)}
.ef-ladder .ev b{color:var(--ink);font-weight:700}
.ef-ladder .ev .dose{font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:6.8pt;color:var(--ink)}

/* GDMT titration table */
.gdmt-tbl{
  width:100%;border-collapse:collapse;font-size:6.7pt;line-height:1.22;
  margin-top:4px;
}
.gdmt-tbl th,.gdmt-tbl td{
  padding:2.5px 7px;border-bottom:1px solid var(--rule-hair);vertical-align:top;text-align:left;
}
.gdmt-tbl thead th{
  background:var(--ink);color:#fff;font-size:5.8pt;letter-spacing:.1em;text-transform:uppercase;
  padding:4px 7px;font-weight:700;border-bottom:0;
}
.gdmt-tbl tbody tr:nth-child(odd) td{background:var(--paper-warm)}
.gdmt-tbl tbody td.cls{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-size:5.8pt;letter-spacing:.06em;text-transform:uppercase;
  color:var(--guide-red);font-weight:700;
}
.gdmt-tbl tbody td.agt{font-weight:700;color:var(--ink);font-size:7pt}
.gdmt-tbl tbody td .dose{font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:6.7pt;color:var(--ink)}
.gdmt-tbl tbody td .arrow{color:var(--ink-3);font-weight:800;font-family:"JetBrains Mono",monospace}

/* Group A/B/C prophylaxis */
.grp-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-top:5px}
.grp{
  border:1px solid var(--rule-hair);background:#fff;
  display:flex;flex-direction:column;overflow:hidden;
  font-size:6.7pt;line-height:1.24;
}
.grp .grp-hd{
  background:var(--ink);color:#fff;padding:4px 9px 5px;
  display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:baseline;
  border-bottom:2px solid var(--guide-red);
}
.grp .grp-hd .gn{
  font-family:"Newsreader",ui-serif,Georgia,serif;font-style:italic;font-weight:600;
  font-size:14pt;line-height:.9;color:var(--guide-red);
}
.grp .grp-hd .gt{font-weight:800;font-size:8pt;letter-spacing:-.005em;line-height:1.05}
.grp .grp-hd .gt .sub{display:block;font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:5.4pt;letter-spacing:.08em;text-transform:uppercase;color:#ffb9b3;margin-top:1px}
.grp .grp-body{padding:5px 9px 6px;display:flex;flex-direction:column;gap:3px;flex:1}
.grp .grp-body ul{margin:0;padding:0;list-style:none}
.grp .grp-body ul li{padding:1px 0 1px 8px;position:relative;font-size:6.6pt;line-height:1.22;color:var(--ink-2)}
.grp .grp-body ul li::before{content:"";position:absolute;left:0;top:.62em;width:4px;height:1px;background:var(--ink)}
.grp .grp-body ul li b{color:var(--ink);font-weight:700}
.grp .grp-body .dose{font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:6.7pt;color:var(--ink)}
.grp .grp-body .hl{
  font-size:5.6pt;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--guide-red);
  margin:2px 0 1px;
}

/* Contact card */
.contact-card{
  border:1.25px solid var(--ink);background:var(--paper-warm);
  display:grid;grid-template-columns:1.2fr 1fr;gap:10px;
  margin-top:4px;padding:5px 10px 5px;
  font-size:7.2pt;line-height:1.24;
}
.contact-card .cc-h{
  grid-column:1 / span 2;
  font-size:8pt;font-weight:800;letter-spacing:-.005em;line-height:1;margin-bottom:2px;
  display:flex;align-items:baseline;justify-content:space-between;gap:8px;
  border-bottom:1px solid var(--rule-hair);padding-bottom:3px;
}
.contact-card .cc-h .cc-src{
  font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:700;
  font-size:5.8pt;color:var(--ink-3);letter-spacing:.1em;text-transform:uppercase;
}
.contact-card .cc-ways div{display:grid;grid-template-columns:auto 1fr;column-gap:7px;padding:1px 0}
.contact-card .cc-ways .k{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:700;color:var(--guide-red);font-size:5.8pt;letter-spacing:.08em;text-transform:uppercase;
  padding-top:1px;
}
.contact-card .cc-ways .v{color:var(--ink-2)}
.contact-card .cc-ways .v b{color:var(--ink);font-weight:700}
.contact-card .cc-team{font-size:6.7pt;line-height:1.32;color:var(--ink-2)}
.contact-card .cc-team .team-h{
  font-size:5.6pt;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--guide-red);margin-bottom:2px;
}
.contact-card .cc-team b{color:var(--ink);font-weight:700}

/* ===== HFA-ICOS scoring (Page 7) ===== */
.score-legend{
  display:grid;grid-template-columns:repeat(4,1fr);gap:0;
  border:1.25px solid var(--ink);margin-top:4px;
  font-size:6.8pt;line-height:1.22;
}
.score-legend .sl{
  padding:5px 9px 6px;border-right:1px solid var(--rule-hair);
  display:grid;grid-template-columns:auto 1fr;column-gap:7px;align-items:start;
}
.score-legend .sl:last-child{border-right:0}
.score-legend .sl .sl-tag{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:800;font-size:6.4pt;letter-spacing:.1em;padding:2px 6px;color:#fff;
  border-radius:1px;align-self:flex-start;line-height:1.15;
  text-align:center;min-width:48px;
}
.score-legend .sl.lo .sl-tag{background:#1f6b3a}
.score-legend .sl.md .sl-tag{background:#8a6700}
.score-legend .sl.hi .sl-tag{background:var(--guide-red)}
.score-legend .sl.vh .sl-tag{background:var(--stop)}
.score-legend .sl .sl-body{font-size:6.6pt;line-height:1.24;color:var(--ink-2)}
.score-legend .sl .sl-body b{color:var(--ink);font-weight:700}
.score-legend .sl .sl-body .rule{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:700;color:var(--ink);font-size:6.6pt;display:block;margin-top:1px;
}

.score-pair{
  display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-top:5px;
}

.score-tbl{
  border:1px solid var(--rule-hair);background:#fff;
  display:flex;flex-direction:column;overflow:hidden;
  font-size:6.5pt;line-height:1.2;
}
.score-tbl .st-hd{
  background:var(--ink);color:#fff;padding:4px 9px 5px;
  display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:6px;
  border-bottom:2px solid var(--guide-red);
}
.score-tbl .st-hd .st-name{
  font-weight:800;font-size:9pt;letter-spacing:-.005em;line-height:1.05;
}
.score-tbl .st-hd .st-name .sub{
  display:block;font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:500;font-size:5.6pt;letter-spacing:.08em;text-transform:uppercase;
  color:#ffb9b3;margin-top:1px;
}
.score-tbl .st-hd .st-meta{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:700;font-size:5.6pt;letter-spacing:.08em;text-transform:uppercase;color:#ffb9b3;
}

.score-tbl table{width:100%;border-collapse:collapse}
.score-tbl table th,.score-tbl table td{
  padding:1.5px 7px;border-bottom:1px solid var(--rule-soft);text-align:left;vertical-align:top;
  font-size:6.2pt;line-height:1.18;
}
.score-tbl table .grp-row td{
  background:var(--paper-warm);
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:800;font-size:5.4pt;letter-spacing:.08em;text-transform:uppercase;
  color:var(--guide-red);padding:2px 7px 1.5px;
}
.score-tbl table .vrow td.var{color:var(--ink-2);width:65%}
.score-tbl table .vrow td.var b{color:var(--ink);font-weight:700}
.score-tbl table .vrow td.pt{
  white-space:nowrap;
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:700;font-size:6.2pt;
  display:flex;align-items:center;justify-content:flex-end;gap:5px;
}
.score-tbl table .vrow td.pt .pill{
  display:inline-block;padding:1px 0;color:#fff;border-radius:1px;
  font-size:5.6pt;letter-spacing:.06em;text-transform:uppercase;line-height:1.2;
  min-width:34px;text-align:center;flex:none;
}
.score-tbl table .vrow td.pt .pill.lo{background:#1f6b3a}
.score-tbl table .vrow td.pt .pill.md{background:#8a6700}
.score-tbl table .vrow td.pt .pill.hi{background:var(--guide-red)}
.score-tbl table .vrow td.pt .pill.vh{background:var(--stop)}
.score-tbl table .vrow td.pt .pts{
  order:-1;
  color:var(--ink-3);font-size:5.4pt;letter-spacing:.04em;
  margin-left:0;font-weight:600;
}
.score-tbl table tr:last-child td{border-bottom:0}
.score-tbl .st-foot{
  padding:3px 9px 4px;border-top:1px solid var(--rule-hair);
  font-size:5.6pt;line-height:1.22;color:var(--ink-3);
}
.score-tbl .st-foot b{color:var(--ink-2);font-weight:700}
.score-tbl .st-foot sup{font-size:4.6pt;color:var(--guide-red);font-weight:700}

/* Action ladder for risk → management */
.risk-actions{
  display:grid;grid-template-columns:repeat(4,1fr);gap:0;
  border:1px solid var(--rule-hair);margin-top:5px;
}
.risk-actions .ra{padding:5px 9px 6px;border-right:1px solid var(--rule-hair);font-size:6.6pt;line-height:1.24}
.risk-actions .ra:last-child{border-right:0}
.risk-actions .ra .rh{
  font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:800;
  font-size:6pt;letter-spacing:.1em;padding:2px 6px;color:#fff;border-radius:1px;
  display:inline-block;margin-bottom:3px;line-height:1.15;
}
.risk-actions .ra.lo .rh{background:#1f6b3a}
.risk-actions .ra.md .rh{background:#8a6700}
.risk-actions .ra.hi .rh{background:var(--guide-red)}
.risk-actions .ra.vh .rh{background:var(--stop)}
.risk-actions .ra .rb{color:var(--ink-2)}
.risk-actions .ra .rb b{color:var(--ink);font-weight:700}

/* Other-tools strip */
.tools-strip{
  display:grid;grid-template-columns:repeat(5,1fr);gap:0;
  border:1px solid var(--rule-hair);margin-top:5px;
  font-size:6.5pt;line-height:1.22;
}
.tools-strip .ts{padding:4px 8px 5px;border-right:1px solid var(--rule-hair)}
.tools-strip .ts:last-child{border-right:0}
.tools-strip .ts .th{
  font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:800;
  font-size:5.6pt;letter-spacing:.08em;text-transform:uppercase;color:var(--guide-red);
  margin-bottom:2px;
}
.tools-strip .ts .tb{color:var(--ink-2)}
.tools-strip .ts .tb b{color:var(--ink);font-weight:700}

/* ===== Evidence tags ===== */
.ev{
  display:inline-block;
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:700;font-size:5pt;letter-spacing:.06em;
  padding:1px 4px;color:#fff;border-radius:1px;
  vertical-align:2px;line-height:1.2;margin-left:3px;
  text-transform:uppercase;
}
.ev.i{background:#1f6b3a}        /* Class I */
.ev.iia{background:#5c6e12}      /* Class IIa */
.ev.iib{background:#8a6700}      /* Class IIb */
.ev.iii{background:var(--stop)}  /* Class III — "do not" */
.ev.src{background:var(--co-teal)}
.ev sub{font-size:4.4pt;letter-spacing:0;font-weight:600;opacity:.85}

/* ESC source tag */
.src-tag{
  display:inline-block;font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:600;font-size:5.4pt;letter-spacing:.06em;color:var(--ink-3);
  text-transform:uppercase;margin-left:3px;
  vertical-align:1px;
}
.src-tag b{color:var(--guide-red);font-weight:800}

/* "What to do / Not to do" strip */
.wtd{
  display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:5px;
}
.wtd .wtd-col{
  border:1px solid var(--rule-hair);background:#fff;overflow:hidden;
  display:flex;flex-direction:column;
}
.wtd .wtd-col .wtd-h{
  padding:4px 9px 5px;color:#fff;
  display:flex;justify-content:space-between;align-items:baseline;gap:6px;
}
.wtd .wtd-col.do .wtd-h{background:#1f6b3a}
.wtd .wtd-col.dont .wtd-h{background:var(--stop)}
.wtd .wtd-col.iia .wtd-h{background:#5c6e12}
.wtd .wtd-col.iib .wtd-h{background:#8a6700}
.wtd .wtd-h .lbl{font-weight:800;font-size:8.5pt;letter-spacing:-.005em;line-height:1}
.wtd .wtd-h .src{font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:700;font-size:5.4pt;letter-spacing:.08em;opacity:.8}
.wtd ul{margin:0;padding:5px 9px 6px;list-style:none}
.wtd ul li{
  padding:2px 0 2px 11px;position:relative;
  font-size:6.6pt;line-height:1.24;color:var(--ink-2);
  border-bottom:1px dotted var(--rule-soft);
}
.wtd ul li:last-child{border-bottom:0}
.wtd ul li::before{
  content:"";position:absolute;left:0;top:.5em;
  width:6px;height:6px;border-radius:50%;
}
.wtd .do ul li::before{background:#1f6b3a}
.wtd .dont ul li::before{background:var(--stop);
  border-radius:0;
  width:5px;height:5px;top:.6em;transform:rotate(45deg);
}
.wtd .iia ul li::before{background:#5c6e12}
.wtd .iib ul li::before{
  background:transparent;border:1.5px solid #8a6700;
  width:6px;height:6px;border-radius:50%;top:.5em;
}
.wtd ul li b{color:var(--ink);font-weight:700}
.wtd ul li .ref{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-size:5.2pt;letter-spacing:.06em;color:var(--ink-3);font-weight:700;
  white-space:nowrap;margin-left:3px;text-transform:uppercase;
}

/* Source library card */
.src-lib{
  display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:5px;
  font-size:6.4pt;line-height:1.3;
}
.src-lib .src-card{
  border:1px solid var(--rule-hair);background:var(--paper-warm);
  padding:5px 9px 6px;display:flex;flex-direction:column;gap:2px;
}
.src-lib .src-card .src-h{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:800;font-size:5.6pt;letter-spacing:.1em;text-transform:uppercase;
  color:var(--guide-red);margin-bottom:1px;
}
.src-lib .src-card .src-cite{color:var(--ink);font-weight:700;font-size:6.8pt;line-height:1.22}
.src-lib .src-card .src-doi{color:var(--ink-3);font-size:5.8pt;font-family:"JetBrains Mono",ui-monospace,monospace;letter-spacing:.04em}
.src-lib .src-card .src-note{color:var(--ink-2);font-size:6.2pt;line-height:1.3}

/* =====================================================================
   COMBINED RISK + DRUG CARD  (HFA-ICOS score folded into the drug card)
   ===================================================================== */
.drug.combo{grid-column:span 2;margin-top:2px;flex-shrink:0}
.drug.combo .drug-hd{padding:4px 10px 5px;grid-template-columns:1fr auto;column-gap:8px}
.drug.combo .drug-hd .name{font-size:10.5pt}
.drug.combo .drug-hd .hm-tier{
  font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:700;
  font-size:5.4pt;letter-spacing:.08em;text-transform:uppercase;color:#ffb9b3;
  align-self:center;white-space:nowrap;text-align:right;
}
.drug.combo .combo-body{
  display:grid;grid-template-columns:1.04fr 0.92fr 1.04fr;gap:0;
  padding:0;flex:1;
}
.drug.combo .combo-body > div{
  padding:2px 8px 3px;border-right:1px solid var(--rule-hair);
  display:flex;flex-direction:column;gap:1px;min-width:0;
}
.drug.combo .combo-body > div:last-child{border-right:0}
.drug.combo .agents{padding-bottom:3px}
.drug.combo .indi{margin-top:1px}

/* HFA-ICOS mini scorecard */
.hfa-mini{
  border:1px solid var(--rule-hair);background:var(--paper-warm);
  font-size:6.2pt;line-height:1.2;overflow:hidden;margin-bottom:3px;
}
.hfa-mini .hm-h{
  background:var(--ink);color:#fff;padding:2.5px 7px;
  display:flex;justify-content:space-between;align-items:baseline;gap:6px;
  font-weight:800;font-size:6.6pt;letter-spacing:-.005em;
}
.hfa-mini .hm-h span{
  font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:700;
  font-size:5pt;letter-spacing:.08em;text-transform:uppercase;color:#ffb9b3;
}
.hfa-mini .hm-row{
  display:grid;grid-template-columns:34px 1fr;column-gap:5px;align-items:start;
  padding:1px 7px;border-bottom:1px solid var(--rule-soft);
}
.hfa-mini .hm-row .hm-k{
  font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:800;
  font-size:5pt;letter-spacing:.04em;color:#fff;text-align:center;
  padding:1.5px 0;border-radius:1px;line-height:1.1;align-self:start;
}
.hfa-mini .hm-row.vh .hm-k{background:var(--stop)}
.hfa-mini .hm-row.hi .hm-k{background:var(--guide-red)}
.hfa-mini .hm-row.md .hm-k{background:#8a6700}
.hfa-mini .hm-row .hm-v{color:var(--ink-2);font-size:6.1pt;line-height:1.2}
.hfa-mini .hm-row .hm-v b{color:var(--ink);font-weight:700}
.hfa-mini .hm-row .hm-v sup{font-size:4.6pt;color:var(--guide-red);font-weight:700;vertical-align:.45em}
.hfa-mini .hm-rule{
  padding:2.5px 7px;font-size:5.5pt;line-height:1.25;color:var(--ink-3);
  background:#fff;border-bottom:1px solid var(--rule-soft);
}
.hfa-mini .hm-rule b{color:var(--ink);font-weight:700}
.hfa-mini .hm-note{
  padding:2.5px 7px;font-size:5.5pt;line-height:1.22;color:var(--ink-2);
  font-style:italic;
}
.hfa-mini .hm-note b{color:var(--ink);font-weight:700;font-style:normal}

/* "no proforma" note for unscored classes */
.noscore-note{
  border:1px dashed var(--ink-4);background:#fff;
  padding:3px 7px;margin-bottom:3px;font-size:5.9pt;line-height:1.24;color:var(--ink-3);
}
.noscore-note b{color:var(--ink-2);font-weight:700}
.noscore-note .ns-l{
  font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:800;
  font-size:5pt;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);
  display:block;margin-bottom:1px;
}

/* Granular tiered management */
.mgmt-steps{display:flex;flex-direction:column;gap:0;margin-top:1px}
.mgmt-steps .mstep{
  display:grid;grid-template-columns:46px 1fr;column-gap:6px;align-items:start;
  padding:1px 0;border-bottom:1px dotted var(--rule-soft);
}
.mgmt-steps .mstep:last-child{border-bottom:0}
.mgmt-steps .mstep .mk{
  font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:800;
  font-size:5pt;letter-spacing:.04em;text-transform:uppercase;
  color:#fff;background:var(--ink);
  display:flex;align-items:center;justify-content:center;text-align:center;
  line-height:1.12;padding:2px 2px;border-radius:1px;align-self:start;min-height:9px;
}
.mgmt-steps .mstep .mk.stop{background:var(--stop)}
.mgmt-steps .mstep .mk.hold{background:var(--guide-red)}
.mgmt-steps .mstep .mk.resume{background:#1f6b3a}
.mgmt-steps .mstep .mk.monitor{background:var(--co-teal)}
.mgmt-steps .mstep .mk.grade{background:#8a6700}
.mgmt-steps .mstep .mk.start{background:var(--guide-red-deep)}
.mgmt-steps .mstep .mv{font-size:6.3pt;line-height:1.22;color:var(--ink-2)}
.mgmt-steps .mstep .mv b{color:var(--ink);font-weight:700}
.mgmt-steps .mstep .mv .dose{font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:6.3pt;color:var(--ink)}
.mgmt-steps .mstep .mv .crit{color:var(--ink-3);font-style:italic}

/* block sub-label inside combo columns */
.combo-body .blk-h.zone{
  font-size:5.6pt;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  display:flex;align-items:center;gap:5px;margin:1px 0 2px;color:var(--ink);
}
.combo-body .blk-h.zone::before{content:"";display:inline-block;width:4px;height:4px;flex:none;background:var(--ink)}
.combo-body .blk-h.zone.tox{color:var(--stop)}
.combo-body .blk-h.zone.tox::before{background:var(--stop)}
.combo-body .blk-h.zone.other{color:#8a6d00}
.combo-body .blk-h.zone.other::before{background:#8a6700}
.combo-body .blk-h.zone.mon{color:var(--co-teal)}
.combo-body .blk-h.zone.mon::before{background:var(--co-teal)}
.combo-body .blk-h.zone.mgmt{color:var(--guide-red-deep)}
.combo-body .blk-h.zone.mgmt::before{background:var(--guide-red-deep)}

/* ── High-yield FACTOID — clinical pearl that tucks into a column's slack ──
   Placed as the last child of the shorter column; margin-top:auto pins it to
   the column bottom so it fills existing whitespace without growing the card. */
.drug.combo .factoid{
  margin-top:auto;
  padding:2px 6px;
  background:var(--co-purple-tint);
  border-left:2px solid var(--co-purple);
  font-size:6.1pt;line-height:1.16;color:var(--ink-2);
}
.drug.combo .factoid .fl{
  font-size:0;            /* text hidden (kept in DOM for screen readers); lightbulb glyph below */
  margin-right:3px;white-space:nowrap;
}
.drug.combo .factoid .fl::before{
  content:"";display:inline-block;
  width:6.5px;height:6.5px;vertical-align:-1px;
  background:url(assets/factoid-bulb.svg) center/contain no-repeat;
}
.drug.combo .factoid b{color:var(--ink);font-weight:700}
.drug.combo .factoid .dose{font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:6pt;color:var(--ink)}

/* =====================================================================
   CTCAE / ASTCT GRADING REFERENCE
   ===================================================================== */
.ctcae-tbl{
  width:100%;border-collapse:collapse;font-size:6pt;line-height:1.18;margin-top:4px;
  table-layout:fixed;
}
.ctcae-tbl col.c-tox{width:13%}
.ctcae-tbl th,.ctcae-tbl td{
  padding:2.5px 6px;border:1px solid var(--rule-hair);vertical-align:top;text-align:left;
}
.ctcae-tbl thead th{
  background:var(--ink);color:#fff;font-size:5.6pt;letter-spacing:.08em;text-transform:uppercase;
  font-weight:700;padding:3px 6px;
}
.ctcae-tbl thead th.g1{background:#1f6b3a}
.ctcae-tbl thead th.g2{background:#8a6700}
.ctcae-tbl thead th.g3{background:var(--guide-red)}
.ctcae-tbl thead th.g4{background:var(--stop)}
.ctcae-tbl tbody td.tox{
  font-weight:800;font-size:6.4pt;color:var(--ink);background:var(--paper-warm);
}
.ctcae-tbl tbody td.tox .src{
  display:block;font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:700;
  font-size:4.8pt;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);margin-top:1px;
}
.ctcae-tbl tbody td{color:var(--ink-2)}
.ctcae-tbl tbody td b{color:var(--ink);font-weight:700}
.ctcae-tbl tbody td .dose{font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:6pt;color:var(--ink)}

/* =====================================================================
   PRIMARY PREVENTION — 2026 lipid card pieces
   ===================================================================== */
.ldl-goals{
  display:grid;grid-template-columns:repeat(4,1fr);gap:0;
  border:1.25px solid var(--ink);margin-top:4px;
}
.ldl-goals .lg{
  padding:5px 9px 6px;border-right:1px solid var(--rule-hair);
}
.ldl-goals .lg:last-child{border-right:0}
.ldl-goals .lg .lg-tier{
  font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:800;
  font-size:5.8pt;letter-spacing:.08em;text-transform:uppercase;
  padding:2px 6px;color:#fff;border-radius:1px;display:inline-block;margin-bottom:3px;line-height:1.15;
}
.ldl-goals .lg.t-low .lg-tier{background:#1f6b3a}
.ldl-goals .lg.t-bord .lg-tier{background:#5c6e12}
.ldl-goals .lg.t-int .lg-tier{background:#8a6700}
.ldl-goals .lg.t-high .lg-tier{background:var(--guide-red)}
.ldl-goals .lg.t-vh .lg-tier{background:var(--stop)}
.ldl-goals .lg .lg-risk{
  font-size:6pt;color:var(--ink-3);letter-spacing:.04em;text-transform:uppercase;font-weight:700;margin-bottom:3px;
}
.ldl-goals .lg .lg-ldl{
  font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:800;
  font-size:11pt;color:var(--ink);line-height:1;letter-spacing:-.02em;
}
.ldl-goals .lg .lg-ldl small{font-size:6pt;color:var(--ink-3);font-weight:600;letter-spacing:.04em}
.ldl-goals .lg .lg-sub{font-size:6.2pt;line-height:1.24;color:var(--ink-2);margin-top:2px}
.ldl-goals .lg .lg-sub b{color:var(--ink);font-weight:700}

/* statin intensity / regimen rows */
.statin-tbl{
  width:100%;border-collapse:collapse;font-size:6.6pt;line-height:1.22;margin-top:4px;
}
.statin-tbl th,.statin-tbl td{
  padding:3px 8px;border-bottom:1px solid var(--rule-hair);vertical-align:top;text-align:left;
}
.statin-tbl thead th{
  background:var(--ink);color:#fff;font-size:5.8pt;letter-spacing:.1em;text-transform:uppercase;
  padding:4px 8px;font-weight:700;border-bottom:0;
}
.statin-tbl tbody tr:nth-child(odd) td{background:var(--paper-warm)}
.statin-tbl tbody td.int{
  font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:800;font-size:6.2pt;
  letter-spacing:.04em;text-transform:uppercase;color:var(--guide-red);white-space:nowrap;
}
.statin-tbl tbody td .dose{font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:6.6pt;color:var(--ink)}
.statin-tbl tbody td b{color:var(--ink);font-weight:700}
.statin-tbl tbody td .pctdrop{font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:700;color:#1f6b3a;font-size:6.4pt}

/* =====================================================================
   PREVENTION PAGES — magnitude-of-benefit callout + lightbulb pearl
   ===================================================================== */
.bnft{
  display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;
  border:1px solid var(--co-teal);border-left:3px solid var(--co-teal);
  background:var(--co-teal-tint);padding:3px 10px 4px;margin-top:6px;
  font-size:6.6pt;line-height:1.22;
}
.bnft .mag{
  font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:800;
  color:var(--co-teal);font-size:12pt;line-height:.95;text-align:center;
  padding-right:10px;border-right:1px solid rgba(31,122,138,.3);
}
.bnft .mag small{display:block;font-size:5pt;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);margin-top:2px;line-height:1.1;max-width:86px}
.bnft .bd{color:var(--ink-2)}
.bnft .bd .bl{font-size:5.6pt;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--co-teal);display:inline-block;margin-right:5px}
.bnft .bd b{color:var(--ink);font-weight:700}

.pearl{
  display:grid;grid-template-columns:auto 1fr;column-gap:6px;align-items:start;
  border-left:2px solid var(--co-purple);background:var(--co-purple-tint);
  padding:2px 8px;margin-top:5px;font-size:6.5pt;line-height:1.22;color:var(--ink-2);
}
.pearl::before{
  content:"";flex:none;display:inline-block;width:8px;height:8px;margin-top:1px;
  background:url(assets/factoid-bulb.svg) center/contain no-repeat;
}
.pearl b{color:var(--ink);font-weight:700}

/* ============================================================
   DESIGN-CRITIQUE ADDITIONS — nav tabs · nursing protocol · worked example
   ============================================================ */

/* Edge thumb-index tabs (expert navigation aid) — absolute, no flow impact */
.ptab{
  position:absolute; right:0; width:.26in; height:.82in;
  display:flex; align-items:center; justify-content:center;
  writing-mode:vertical-rl; text-orientation:mixed;
  font-family:"Hanken Grotesk",sans-serif; font-weight:800;
  font-size:5.4pt; letter-spacing:.14em; text-transform:uppercase;
  color:#fff; background:var(--ink);
  border-radius:5px 0 0 5px; box-shadow:-1px 1px 2px rgba(0,0,0,.14);
  z-index:6; -webkit-print-color-adjust:exact; print-color-adjust:exact;
}
@media print{ .ptab{box-shadow:none} }

/* Nursing monitoring protocol callout (who · check · when · call-if) */
.nproto{
  margin-top:6px; border:1.3px solid #2f5a8f; border-left:6px solid #2f5a8f;
  border-radius:5px; background:#eef4fb; padding:5px 9px 6px;
  -webkit-print-color-adjust:exact; print-color-adjust:exact;
}
.nproto .np-tag{
  display:inline-block; background:#2f5a8f; color:#fff; font-weight:800;
  font-size:6.2pt; letter-spacing:.1em; text-transform:uppercase;
  padding:1px 8px; border-radius:3px; margin-bottom:3px;
}
.nproto .np-tag::before{ content:"+ "; }
.nproto .np-grid{
  display:grid; grid-template-columns:repeat(4,1fr); gap:3px 12px;
  font-size:6.6pt; line-height:1.24; color:var(--ink);
}
.nproto .np-grid > div{ break-inside:avoid }
.nproto .np-k{
  display:block; font-weight:800; font-size:6pt; letter-spacing:.06em;
  text-transform:uppercase; color:#26496f; margin-bottom:1px;
}
/* Red CALL-IF chip — makes the safety-critical threshold the most legible token */
.callif{
  display:inline-block; background:var(--guide-red); color:#fff; font-weight:800;
  font-size:6.7pt; letter-spacing:.01em; padding:0 5px; border-radius:3px; white-space:nowrap;
  -webkit-print-color-adjust:exact; print-color-adjust:exact;
}

/* Worked-example flow (novice on-ramp): patient -> points -> tier -> action */
.wex{ display:flex; align-items:stretch; gap:0; margin-top:5px; }
.wex-step{
  flex:1; border:1.3px solid var(--ink-4); border-radius:5px;
  padding:4px 8px 5px; background:var(--paper);
}
.wex-step .wex-k{
  font-size:6pt; font-weight:800; letter-spacing:.09em; text-transform:uppercase;
  color:var(--guide-red); margin-bottom:2px;
}
.wex-step .wex-b{ font-size:6.6pt; line-height:1.25; color:var(--ink) }
.wex-step.tier-hi{
  flex:0 0 .82in; border-color:var(--guide-red); background:#fdecea;
  display:flex; flex-direction:column; justify-content:center; text-align:center;
}
.wex-step.tier-hi .wex-k{ color:var(--guide-red) }
.wex-step.tier-hi .wex-b{ font-size:13pt; font-weight:800; color:var(--guide-red); line-height:1.02 }
.wex-arrow{
  flex:0 0 .24in; display:flex; align-items:center; justify-content:center;
  color:var(--guide-red); font-weight:800; font-size:11pt;
}

/* ── chrome.js parity ─────────────────────────────────────────────────────
   This guide keeps its own styles.css + styles-co.css, but chrome.js now
   injects the masthead/footer. The local sheet already styles .head/.meta/
   .pfoot/.stamp; these add the pieces it doesn't: the .brand logo wrapper
   (legacy chrome may emit a brand image, not a bare
   <img class="logo">) and the per-page .vcode tracking code. .reflist-inline
   + cite styling come from ../../css/citations.css. */
.head .brand{display:flex;align-items:center}
.head .brand .guide-logo{height:62px;width:auto;display:block}
.head--mini .brand .guide-logo{height:42px}
.head .meta .vcode,.pfoot .stamp .vcode{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-size:5.4pt;letter-spacing:.01em;color:var(--ink-4);
  margin-top:2px;white-space:nowrap;text-transform:none;
}
.head--mini .meta .vcode{font-size:5.1pt}

/* =====================================================================
   DISEASE-GROUP WORKUP MATRIX (Page 25) + CANCER THERAPY REF (Page 26)
   ===================================================================== */

/* Dense disease-group table — tighter than hsr-tbl */
.dg-tbl{
  width:100%;border-collapse:collapse;font-size:6.2pt;line-height:1.18;
  margin-top:4px;table-layout:fixed;
}
.dg-tbl col.c-dg{width:9%}
.dg-tbl col.c-reg{width:20%}
.dg-tbl col.c-sig{width:16%}
.dg-tbl col.c-wu{width:22%}
.dg-tbl col.c-pearl{width:18%}
.dg-tbl col.c-esc{width:15%}

.dg-tbl th,.dg-tbl td{
  padding:2.5px 5px;border-bottom:1px solid var(--rule-hair);vertical-align:top;text-align:left;
}
.dg-tbl thead th{
  background:var(--ink);color:#fff;font-size:5.4pt;letter-spacing:.08em;text-transform:uppercase;
  padding:3px 5px;font-weight:700;border-bottom:0;
}
.dg-tbl thead th.sig{background:var(--stop)}
.dg-tbl thead th.wu{background:var(--co-teal)}
.dg-tbl thead th.pearl{background:var(--co-purple)}
.dg-tbl thead th.esc{background:var(--guide-red-deep)}
.dg-tbl tbody tr:nth-child(odd) td{background:var(--paper-warm)}
.dg-tbl tbody td.dg{
  font-weight:800;font-size:6.6pt;letter-spacing:-.005em;color:var(--ink);
}
.dg-tbl tbody td.dg .dg-sub{
  display:block;font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:600;font-size:5pt;letter-spacing:.06em;text-transform:uppercase;
  color:var(--ink-3);margin-top:1px;line-height:1.15;
}
.dg-tbl ul{margin:0;padding:0;list-style:none}
.dg-tbl ul li{
  padding:0 0 0 6px;position:relative;
  font-size:6pt;line-height:1.18;color:var(--ink-2);margin-bottom:0.5px;
}
.dg-tbl ul li::before{
  content:"";position:absolute;left:0;top:.55em;width:3px;height:1px;background:var(--ink);
}
.dg-tbl ul li b{color:var(--ink);font-weight:700}
.dg-tbl ul li .dose{font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500;font-size:5.8pt;color:var(--ink)}

/* Cancer therapy reference table */
.ctx-tbl{
  width:100%;border-collapse:collapse;font-size:6.2pt;line-height:1.18;
  margin-top:4px;table-layout:fixed;
}
.ctx-tbl col.c-ca{width:11%}
.ctx-tbl col.c-1l{width:30%}
.ctx-tbl col.c-2l{width:30%}
.ctx-tbl col.c-cv{width:29%}

.ctx-tbl th,.ctx-tbl td{
  padding:2.5px 5px;border-bottom:1px solid var(--rule-hair);vertical-align:top;text-align:left;
}
.ctx-tbl thead th{
  background:var(--ink);color:#fff;font-size:5.4pt;letter-spacing:.08em;text-transform:uppercase;
  padding:3px 5px;font-weight:700;border-bottom:0;
}
.ctx-tbl thead th.l1{background:#1f6b3a}
.ctx-tbl thead th.l2{background:#8a6700}
.ctx-tbl thead th.cv{background:var(--stop)}
.ctx-tbl tbody tr:nth-child(odd) td{background:var(--paper-warm)}
.ctx-tbl tbody td.ca{
  font-weight:800;font-size:6.6pt;letter-spacing:-.005em;color:var(--ink);
}
.ctx-tbl tbody td.ca .ca-sub{
  display:block;font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:600;font-size:5pt;letter-spacing:.06em;text-transform:uppercase;
  color:var(--ink-3);margin-top:1px;line-height:1.15;
}
.ctx-tbl ul{margin:0;padding:0;list-style:none}
.ctx-tbl ul li{
  padding:0 0 0 6px;position:relative;
  font-size:6pt;line-height:1.18;color:var(--ink-2);margin-bottom:0.5px;
}
.ctx-tbl ul li::before{
  content:"";position:absolute;left:0;top:.55em;width:3px;height:1px;background:var(--ink);
}
.ctx-tbl ul li b{color:var(--ink);font-weight:700}
.ctx-tbl .cv-flag{
  font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:800;
  font-size:5pt;letter-spacing:.04em;color:#fff;background:var(--stop);
  padding:0.5px 3px;border-radius:1px;display:inline;white-space:nowrap;
}
.ctx-tbl .cv-lo{background:var(--ink-3)}
.ctx-tbl .grp-row td{
  background:var(--ink)!important;color:#fff;
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-weight:800;font-size:5.6pt;letter-spacing:.1em;text-transform:uppercase;
  padding:2.5px 5px;border-bottom:0;
}
