/* CathLabHub complications toolkit (plan note 69): the index (toolkit.html), one card per complication (toolkit/<slug>.html) and
   the cart poster (toolkit/cart-poster.html). Built by tools/build_toolkit.mjs from toolkit/toolkit.json. Uses the site tokens from
   site.css (not edited here); every class is tk- prefixed. Light mode only. Order: tokens, index, card, print. */
body.tk{--lib-accent:#b42318;--lib-tint:#fdeeec;--lib-soft:rgba(180,35,24,.09);--tk-ink:#7a1a12}

/* ---------- index ---------- */
.tk-tools{margin-top:var(--s-6)}
.tk-tools .doc-search{margin-bottom:var(--s-3)}
.tk-chips{display:flex;flex-wrap:wrap;gap:var(--s-2)}
.tk-chips .chip{min-height:40px;padding:0 var(--s-4);gap:6px}
.tk-chips .chip .n{font-size:12px;color:var(--text-3);font-variant-numeric:tabular-nums}
.tk-chips .chip[aria-pressed="true"]{background:var(--lib-accent);color:#fff;box-shadow:none}
.tk-chips .chip[aria-pressed="true"] .n{color:rgba(255,255,255,.85)}
.tk-count{margin-top:var(--s-3);font-size:var(--t-foot);color:var(--text-3)}
.tk-group[hidden]{display:none}
.tk-grid{display:grid;gap:var(--s-3);grid-template-columns:1fr}
@media (min-width:640px){.tk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:980px){.tk-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
a.tk-card{min-height:0;gap:var(--s-2);padding:var(--s-4) var(--s-5) var(--s-4);transition:box-shadow var(--dur-2) var(--ease),transform var(--dur-2) var(--ease)}
a.tk-card:hover{box-shadow:var(--ring-2),var(--shadow-2);transform:translateY(-1px)}
a.tk-card[hidden]{display:none}
.tk-card h3{font-size:var(--t-head)}
.tk-card p{font-size:var(--t-small)}
.tk-card .tk-sign{color:var(--text-3);font-size:var(--t-foot)}
.tk-card .foot{padding-top:var(--s-1)}
.tk-card .pill{background:var(--lib-soft);color:var(--tk-ink)}
.tk-card .pill.tk-sim{background:var(--k-app-soft);color:var(--k-app)}

/* the complications cart */
.tk-cart-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-3);margin-bottom:var(--s-4)}
.tk-cart-head p{max-width:62ch;font-size:var(--t-small);line-height:1.55;color:var(--text-2)}
.tk-cart-head .tk-acts{display:flex;flex-wrap:wrap;gap:var(--s-2)}
.tk-cart{display:grid;gap:var(--s-3);grid-template-columns:1fr}
@media (min-width:760px){.tk-cart{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1040px){.tk-cart{grid-template-columns:repeat(3,minmax(0,1fr))}}
.tk-box{background:var(--surface);border-radius:var(--r-l);box-shadow:var(--ring),var(--shadow-1);padding:var(--s-4) var(--s-5)}
.tk-box h3{font-size:var(--t-small);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--tk-ink)}
.tk-box ul{list-style:none;margin:var(--s-3) 0 0;padding:0;display:grid;gap:var(--s-2)}
.tk-box li{font-size:var(--t-small);line-height:1.45;color:var(--text)}
.tk-box li small{display:block;font-size:var(--t-foot);color:var(--text-3)}

/* links into the directory, the Med App and the app */
.tk-link{color:var(--accent-deep);font-weight:600;text-decoration:underline;text-decoration-color:rgba(15,111,184,.35);text-underline-offset:2px}
.tk-link:hover{text-decoration-color:currentColor}
.tk-none{color:var(--text-3);font-size:var(--t-foot)}

/* ---------- card page ---------- */
.tk-hero .lede{max-width:64ch}
.tk-hero .tk-acts{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-top:var(--s-5)}
.tk-crumb{display:inline-flex;align-items:center;gap:6px;margin-top:var(--s-5);font-size:var(--t-small);font-weight:600;color:var(--accent-deep)}
.tk-crumb:hover{text-decoration:underline;text-underline-offset:3px}
.tk-layout{display:grid;gap:var(--s-5);margin-top:var(--s-6);grid-template-columns:minmax(0,1fr)}
@media (min-width:980px){.tk-layout{grid-template-columns:minmax(0,1fr) 220px;align-items:start}}
.tk-toc{order:-1}
.tk-toc ol{list-style:none;margin:0;padding:3px;display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;border-radius:var(--r-pill);background:rgba(255,255,255,.7);box-shadow:var(--ring)}
.tk-toc ol::-webkit-scrollbar{display:none}
.tk-toc a{display:inline-flex;align-items:center;min-height:36px;padding:0 var(--s-3);border-radius:var(--r-pill);font-size:var(--t-foot);font-weight:600;color:var(--text-2);white-space:nowrap}
.tk-toc a:hover{color:var(--text);background:var(--surface)}
.tk-toc a.is-on{background:var(--surface);color:var(--text);box-shadow:0 1px 3px rgba(16,24,40,.14),var(--ring)}
@media (min-width:980px){
  .tk-toc{order:0;position:sticky;top:calc(var(--header-h) + 16px)}
  .tk-toc ol{display:grid;gap:0;padding:var(--s-2);border-radius:var(--r-l);background:var(--surface)}
  .tk-toc a{display:flex;min-height:34px;border-radius:var(--r-s)}
  .tk-toc a.is-on{box-shadow:none;background:var(--lib-soft);color:var(--tk-ink)}
}
.tk-main{display:grid;gap:var(--s-4);min-width:0}
.tk-sec{background:var(--surface);border-radius:var(--r-l);box-shadow:var(--ring),var(--shadow-1);padding:var(--s-5);scroll-margin-top:calc(var(--header-h) + 16px)}
.tk-sec>h2{display:flex;align-items:center;gap:var(--s-2);font-size:var(--t-title3);letter-spacing:-.015em}
.tk-sec>h2 .n{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--lib-soft);color:var(--tk-ink);font-size:13px;font-weight:700;letter-spacing:0;flex:none}
.tk-sec>p.tk-sub{margin-top:var(--s-2);font-size:var(--t-small);color:var(--text-3)}
.tk-sec ul,.tk-sec ol{margin:var(--s-3) 0 0;padding:0;list-style:none;display:grid;gap:var(--s-2)}
.tk-sec li{position:relative;font-size:var(--t-body);line-height:1.5;color:var(--text)}
.tk-sec ul.tk-bul li{padding-left:var(--s-5)}
.tk-sec ul.tk-bul li::before{content:"";position:absolute;left:3px;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--lib-accent)}
.tk-sec ol.tk-steps{counter-reset:s}
.tk-sec ol.tk-steps>li{counter-increment:s;padding-left:38px;min-height:28px}
.tk-sec ol.tk-steps>li::before{content:counter(s);position:absolute;left:0;top:0;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--surface-2);color:var(--text-2);font-size:13px;font-weight:700}
.tk-sec ol.tk-steps>li.tk-key::before{background:var(--lib-accent);color:#fff}
.tk-sec ol.tk-steps>li.tk-key b{font-weight:700}
.tk-sec li.tk-differ,.tk-sec p.tk-differ{padding:var(--s-2) var(--s-3);border-radius:var(--r-s);background:var(--amber-soft);color:#5c3b06;font-size:var(--t-small)}
.tk-sec li.tk-differ::before{display:none}
.tk-sec ul.tk-bul li.tk-differ{padding-left:var(--s-3)}
/* recognize: a short tag for where the sign shows */
.tk-rec li{display:grid;grid-template-columns:76px minmax(0,1fr);gap:var(--s-3);align-items:baseline}
.tk-tag{justify-self:start;display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:var(--r-pill);background:var(--surface-2);color:var(--text-2);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.tk-tag.t-monitor{background:rgba(29,143,224,.12);color:#0f5f99}
.tk-tag.t-image{background:var(--k-app-soft);color:var(--k-app)}
.tk-tag.t-patient{background:var(--k-sop-soft);color:var(--k-sop)}
.tk-tag.t-echo{background:var(--k-poster-soft);color:var(--k-poster)}
.tk-tag.t-lab{background:var(--surface-2);color:var(--text-2)}
/* equipment and drugs */
.tk-eq{grid-template-columns:1fr}
@media (min-width:700px){.tk-eq{grid-template-columns:repeat(2,minmax(0,1fr))}}
.tk-eq li{padding:var(--s-3) var(--s-4);border-radius:var(--r-m);background:var(--surface-2);font-size:var(--t-small)}
.tk-eq li b{display:block;font-weight:650;color:var(--text)}
.tk-eq li span{display:block;margin-top:2px;color:var(--text-2)}
.tk-drugs li{display:grid;gap:2px;padding:var(--s-3) var(--s-4);border-radius:var(--r-m);background:var(--surface-2);font-size:var(--t-small)}
.tk-drugs li b{font-weight:650}
.tk-drugs li .d{color:var(--text)}
.tk-drugs li .m{color:var(--text-3);font-size:var(--t-foot)}
.tk-drugs li.tk-differ{display:block}
.tk-call li{padding-left:38px}
.tk-call li b{font-weight:650}
.tk-sec h3{margin-top:var(--s-3);font-size:var(--t-head)}
.tk-practice a{font-weight:600}
.tk-refs{counter-reset:r}
.tk-refs li{counter-increment:r;padding-left:30px;font-size:var(--t-small);line-height:1.5;color:var(--text-2);scroll-margin-top:calc(var(--header-h) + 16px)}
.tk-refs li::before{content:counter(r);position:absolute;left:0;top:1px;display:grid;place-items:center;min-width:22px;height:20px;padding:0 5px;border-radius:10px;background:var(--lib-soft);color:var(--tk-ink);font-size:11px;font-weight:700}
.tk-refs li:target{background:var(--amber-soft);border-radius:var(--r-s)}
.cite{text-decoration:none}
.tk-printhead,.tk-printfoot{display:none}

/* ---------- print: one card on two Letter pages ---------- */
@media print{
  @page{size:letter;margin:0.45in 0.5in}
  html{font-size:10px}
  body{display:block;background:#fff;min-height:0}
  .page{max-width:none;padding:0}
  .tk-noprint,.tk-toc,.lib-note,.tk-crumb,.tk-hero .tk-acts,.subnav{display:none !important}
  .banner{margin:0;padding:0 0 6pt;background:none;box-shadow:none;border-radius:0;border-bottom:1.5pt solid #b42318}
  .banner::before{display:none}
  .lib-hero{padding-top:0}
  .lib-hero .over{font-size:7.5pt}
  .lib-hero h1{margin-top:2pt;font-size:17pt;max-width:none}
  .lib-hero .lede{margin-top:3pt;font-size:9pt;max-width:none}
  .tk-printhead{display:flex;justify-content:space-between;gap:8pt;margin-bottom:5pt;font-size:7.5pt;color:#5d6675}
  .tk-printhead img{width:12pt;height:12pt;vertical-align:-2pt;margin-right:3pt}
  .tk-layout{display:block;margin-top:6pt}
  .tk-main{display:block;columns:2;column-gap:14pt}
  .tk-sec{display:block;break-inside:avoid-column;page-break-inside:avoid;margin:0 0 6pt;padding:0;background:none;box-shadow:none;border-radius:0}
  .tk-sec.tk-long{break-inside:auto;page-break-inside:auto}
  .tk-sec>h2{font-size:9.5pt;letter-spacing:.02em;text-transform:uppercase;color:#7a1a12;gap:4pt;border-bottom:.75pt solid #e4c9c5;padding-bottom:1.5pt}
  .tk-sec>h2 .n{width:13pt;height:13pt;font-size:7pt}
  .tk-sec>p.tk-sub{margin-top:2pt;font-size:7.5pt}
  .tk-sec ul,.tk-sec ol{margin-top:3pt;gap:1.5pt}
  .tk-sec li{font-size:8.2pt;line-height:1.3}
  .tk-sec ul.tk-bul li{padding-left:9pt}
  .tk-sec ul.tk-bul li::before{left:1pt;top:.5em;width:3.5pt;height:3.5pt}
  .tk-sec ol.tk-steps>li{padding-left:15pt;min-height:0}
  .tk-sec ol.tk-steps>li::before{width:11pt;height:11pt;font-size:6.5pt}
  .tk-rec li{grid-template-columns:40pt minmax(0,1fr);gap:4pt}
  .tk-tag{min-height:0;padding:0 3pt;font-size:6pt}
  .tk-eq,.tk-drugs{display:grid;grid-template-columns:1fr}
  .tk-eq li,.tk-drugs li{padding:1.5pt 0;background:none;border-radius:0;font-size:8pt}
  .tk-eq li b,.tk-eq li span{display:inline}
  .tk-eq li span::before{content:" : "}
  .tk-drugs li{display:block}
  .tk-drugs li .d::before{content:" "}
  .tk-drugs li .m{display:block;font-size:7pt}
  .tk-sec h3{margin-top:3pt;font-size:8.5pt}
  .tk-sec li.tk-differ,.tk-sec p.tk-differ{padding:1.5pt 3pt;font-size:7.5pt}
  .tk-refs li{padding-left:13pt;font-size:6.8pt;line-height:1.25}
  .tk-refs li::before{min-width:10pt;height:9pt;font-size:6pt;padding:0 2pt}
  .cite{min-width:9pt;height:9pt;font-size:5.5pt;padding:0 2pt;vertical-align:1pt}
  .tk-link{color:#0f1620;text-decoration:none;font-weight:600}
  .tk-printfoot{display:block;margin-top:6pt;padding-top:3pt;border-top:.75pt solid #d5dbe3;font-size:6.8pt;line-height:1.3;color:#5d6675}
}
.tk-tools .doc-empty[hidden],.tk-tools .doc-clear[hidden]{display:none}
.tk-tools .doc-empty{margin-top:var(--s-4)}
