/* ==========================================================================
   Kalios — Street Lab design system v1.1
   Rules: kalios-design/street-lab-spec.md (the spec wins over the artboards).
   One stylesheet for every page. Tokens first, then type, then the 14
   components, then page templates, then the typography for existing content,
   then the root-page overrides, then the compiled utility layer for the stack
   tool and pair pages (the old Tailwind classes, scoped under .sl-tw).
   ========================================================================== */

/* 1. Tokens --------------------------------------------------------------- */
:root{
  --bg:#0a0a0a;
  --ink:#f5f5f5;
  --ink-body:rgba(245,245,245,0.78);
  --ink-muted:rgba(245,245,245,0.62);
  --line:rgba(245,245,245,0.16);
  --line-strong:rgba(245,245,245,0.30);
  --paper:#f4f1ea;
  --paper-ink:#0a0a0a;
  --red:#e63946;
  --caution:#f5c518;
  --approved:#6bcb77;
  --approved-paper:#1f7a3a;
  --partial-paper:#9a6b00;
  --research:#e07a5f;
  --notshown-paper:#6b6b6b;
  --crx:#d9a441;

  --f-display:Anton,Impact,"Arial Narrow",sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --f-sans:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;

  --gutter:20px;
  --col:760px;
  --radius:3px;

  /* Legacy names used by inline style="" attributes inside existing content
     and by the root pages' own stylesheets. They resolve to the new tokens.
     --gold, --gold-soft and --accent-gold stay #f5f5f5: never give them a color. */
  --text:#f5f5f5;
  --text-primary:#f5f5f5;
  --text-body:var(--ink-body);
  --text-secondary:var(--ink-muted);
  --text-muted:var(--ink-muted);
  --text-pri:#f5f5f5;
  --text-mut:var(--ink-muted);
  --border:var(--line);
  --border-strong:var(--line-strong);
  --bg-mid:#0a0a0a;
  --bg-surface:#0a0a0a;
  --bg-card:#0a0a0a;
  --gold:#f5f5f5;
  --gold-soft:#f5f5f5;
  --gold-dim:rgba(245,245,245,0.10);
  --accent-gold:#f5f5f5;
  --accent:#e63946;
  --font-display:var(--f-sans);
  --font-body:var(--f-sans);
}
@media (min-width:1024px){:root{--gutter:48px}}

/* 2. Base ----------------------------------------------------------------- */
*,*::before,*::after{box-sizing:border-box}
/* Migrated compound pages lost their inline reset; keep its effect at zero specificity */
.sl-page--compound :where(*){margin:0;padding:0}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.sl-page a{color:var(--ink)}
.sl-page :focus-visible{outline:2px solid var(--caution);outline-offset:2px}
/* Inputs: a 2px --ink focus ring, never --caution (G, 12a). On the caution band --ink is the
   band's own ink, so the ring stays visible on the yellow (and so do the band's buttons). */
.sl-page :is(input,select,textarea):focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.sl-caution{--ink:var(--paper-ink)}
.sl-caution :focus-visible{outline-color:var(--paper-ink)}
.sl-vh{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.sl-skip{position:absolute;left:8px;top:-60px;z-index:50;padding:10px 14px;background:var(--paper);color:var(--paper-ink) !important;font:700 14px var(--f-sans);border-radius:var(--radius);text-decoration:none}
.sl-skip:focus{top:8px}

/* 3. Type ------------------------------------------------------------------ */
/* Anton: H1, caution-band title, wordmark. Nothing else. */
.sl-h1{margin:0;font-family:var(--f-display);font-weight:400;text-transform:uppercase;letter-spacing:.01em;line-height:.93;font-size:var(--h1-size,84px);overflow-wrap:break-word}
.sl-h1--84{--h1-size:84px}.sl-h1--72{--h1-size:72px}.sl-h1--64{--h1-size:64px}.sl-h1--56{--h1-size:56px}.sl-h1--48{--h1-size:48px}.sl-h1--40{--h1-size:40px}
.sl-h1--home{--h1-size:58px;line-height:.95}
.sl-h1--tool{--h1-size:44px;line-height:.95}
@media (min-width:1024px){
  .sl-h1{--h1-size:96px}
  .sl-h1--home{--h1-size:80px}
  .sl-h1--tool{--h1-size:68px}
}
.sl-eyebrow,.sl-label{margin:0;font-family:var(--f-mono);font-size:11px;font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}
.sl-label{font-size:10.5px}
.sl-gist{margin:0;font-size:21px;line-height:1.25;font-weight:600;letter-spacing:-.01em;color:var(--ink)}
.sl-lead{margin:0;font-size:14.5px;line-height:1.5;color:var(--ink-body)}
.sl-aka{margin:0;font-family:var(--f-mono);font-size:12px;line-height:1.55;color:var(--ink-muted)}
@media (min-width:1024px){.sl-gist{font-size:23px}.sl-lead{font-size:16px}.sl-eyebrow{font-size:12px}}

/* 4. Components ------------------------------------------------------------ */

/* 4.1 Header — 56px, wordmark with the red dot, 44×44 menu button, hairline */
.sl-header{border-bottom:1px solid var(--line);background:var(--bg)}
.sl-header-in{max-width:1184px;margin:0 auto;padding:0 var(--gutter);min-height:56px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;column-gap:24px}
.sl-wordmark{font-family:var(--f-display);font-size:20px;line-height:56px;letter-spacing:.06em;text-decoration:none;color:var(--ink) !important;white-space:nowrap}
.sl-wordmark .sl-dot{color:var(--red)}
.sl-menu-btn{display:none;width:44px;height:44px;margin-right:-10px;padding:0;background:transparent;border:0;border-radius:var(--radius);color:var(--ink);cursor:pointer;align-items:center;justify-content:center}
.sl-menu-btn svg{display:block}
.sl-menu-btn[aria-expanded="true"] .sl-i-open,.sl-menu-btn[aria-expanded="false"] .sl-i-close{display:none}
.sl-nav{flex-basis:100%}
.sl-nav ul{list-style:none;margin:0;padding:0 0 8px}
.sl-nav li{margin:0;padding:0}
.sl-nav a{display:flex;align-items:center;gap:8px;min-height:54px;border-top:1px solid var(--line);font-size:16px;font-weight:600;text-decoration:none;color:var(--ink)}
.sl-nav a[aria-current="page"]{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.sl-live{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--red);flex-shrink:0;animation:sl-live 2s infinite}
@keyframes sl-live{0%{box-shadow:0 0 0 0 rgba(230,57,70,.6)}70%{box-shadow:0 0 0 6px rgba(230,57,70,0)}100%{box-shadow:0 0 0 0 rgba(230,57,70,0)}}
@media (prefers-reduced-motion:reduce){.sl-live{animation:none}}
.sl-js .sl-menu-btn{display:inline-flex}
.sl-js .sl-nav{display:none}
.sl-js .sl-nav.is-open{display:block}
@media (min-width:1024px){
  .sl-header-in{min-height:64px;flex-wrap:nowrap}
  .sl-wordmark{line-height:64px}
  .sl-js .sl-menu-btn,.sl-menu-btn{display:none}
  .sl-nav,.sl-js .sl-nav{display:block;flex-basis:auto}
  .sl-nav ul{display:flex;gap:28px;padding:0}
  .sl-nav a{min-height:44px;border-top:0;font-size:11.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);gap:6px}
  .sl-nav a:hover,.sl-nav a[aria-current="page"]{color:var(--ink)}
  .sl-nav a[aria-current="page"]{text-decoration:none;font-weight:600}
  .sl-live{width:6px;height:6px}
}

/* 4.2 Fine-print strip */
.sl-strip{border-bottom:1px solid var(--line);font-family:var(--f-mono);font-size:10.5px;line-height:1.7;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}
.sl-strip-in{max-width:1184px;margin:0 auto;padding:10px var(--gutter)}
.sl-strip p{margin:0}
.sl-strip .sl-strip-2{color:var(--ink)}
@media (min-width:1024px){.sl-strip{font-size:11px}}

/* 4.3 Stamp — a verdict, never decoration */
.sl-stamp{display:inline-block;flex-shrink:0;padding:7px 10px;border:2px solid currentColor;outline:1px solid currentColor;outline-offset:-5px;border-radius:var(--radius);font-family:var(--f-mono);font-size:11px;font-weight:700;line-height:1.15;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;transform:rotate(var(--rot,-2deg));color:var(--ink)}
.sl-stamp--sm{padding:5px 7px;outline:0;font-size:9px;letter-spacing:.12em}
.sl-stamp--approved{color:var(--approved)}
.sl-stamp--crx{color:var(--crx)}
.sl-stamp--caution{color:var(--caution)}
.sl-stamp--research{color:var(--research)}
.sl-stamp--red{color:var(--red)}
.sl-stamp--established{color:var(--approved-paper)}
.sl-stamp--partial{color:var(--partial-paper)}
.sl-stamp--notshown{color:var(--notshown-paper)}

/* 4.4 Caution band */
.sl-caution{display:flex;flex-direction:column;background:var(--caution);color:var(--paper-ink);border-radius:4px;overflow:hidden}
.sl-caution-stripe{height:8px;background:repeating-linear-gradient(45deg,#0a0a0a 0 10px,#f5c518 10px 20px)}
.sl-caution-in{padding:14px 16px 16px;display:flex;flex-direction:column;gap:10px}
.sl-caution-title{margin:0;font-family:var(--f-display);font-size:22px;font-weight:400;letter-spacing:.04em;text-transform:uppercase;line-height:1}
.sl-caution-body{margin:0;font-size:13.5px;line-height:1.45;font-weight:500}
.sl-caution a{color:var(--paper-ink) !important;font-weight:700;text-decoration:underline;text-underline-offset:2px}
.sl-alert-form{display:flex;gap:8px;margin:0}
.sl-alert-form input{flex:1;min-width:0;height:44px;padding:0 12px;background:var(--paper);color:var(--paper-ink);border:2px solid var(--paper-ink);border-radius:var(--radius);font:500 16px var(--f-sans)}
.sl-alert-form input::placeholder{color:rgba(10,10,10,.55)}
.sl-alert-form button{flex-shrink:0;height:44px;padding:0 14px;background:var(--paper-ink);color:var(--caution);border:0;border-radius:var(--radius);font:700 13px var(--f-sans);cursor:pointer}
.sl-alert-status{margin:0;font-size:12.5px;font-weight:600;min-height:0}
.sl-alert-status:empty{display:none}
@media (max-width:359px){.sl-alert-form{flex-direction:column}}
/* Research-only pages have no band: a mono status line under the data table, and the alert
   form in a small block at the end of the page (inputs on the dark ground: --line-strong) */
.sl-status-line{margin:-12px 0 0;font-family:var(--f-mono);font-size:10.5px;line-height:1.7;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}
.sl-status-line a{color:var(--ink) !important;text-decoration:underline;text-underline-offset:2px;white-space:nowrap}
.sl-alerts{display:flex;flex-direction:column;gap:10px;padding:14px 16px 16px;border:1px solid var(--line);border-radius:var(--radius)}
/* paper inputs everywhere (G, 12a): the research-only alert form's field too */
.sl-alerts .sl-alert-form input{background:var(--paper);color:var(--paper-ink);border:1px solid transparent}
.sl-alerts .sl-alert-form input::placeholder{color:rgba(10,10,10,.55)}
.sl-alerts .sl-alert-form button{background:transparent;color:var(--ink);border:1px solid var(--line-strong)}
.sl-alerts .sl-alert-form button:hover{border-color:var(--ink)}
.sl-alerts .sl-alert-status{color:var(--ink-body)}

/* 4.5 Primary action — one per page, paper, above the fold */
.sl-primary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:58px;padding:14px 18px;background:var(--paper);color:var(--paper-ink) !important;border-radius:var(--radius);text-decoration:none;font-size:16px;font-weight:700;line-height:1.25}
.sl-primary svg{flex-shrink:0}
.sl-primary:hover{background:#fff}

/* 4.6 Data table — dotted leaders, mono */
.sl-dl{margin:0;display:flex;flex-direction:column;font-family:var(--f-mono);font-size:13px;line-height:1.45;border-top:1px solid var(--line-strong)}
.sl-dl > div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:11px 0;border-bottom:1px dotted var(--line-strong)}
.sl-dl > div:last-child{border-bottom-style:solid}
.sl-dl dt{margin:0;flex:0 1 44%;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.08em;font-size:11.5px}
.sl-dl dd{margin:0;flex:0 1 56%;font-weight:500;text-align:right;color:var(--ink);overflow-wrap:anywhere}
.sl-dl dd a{color:var(--ink)}
.sl-dl-label{margin:0 0 6px}

/* 4.7 Section nav */
.sl-secnav{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.sl-secnav a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;border-bottom:1px solid var(--line);font-size:16px;font-weight:600;text-decoration:none;color:var(--ink)}
.sl-secnav a:hover{background:rgba(245,245,245,.03)}
.sl-secnav .sl-suffix{font-weight:400;color:var(--ink-muted)}
.sl-secnav svg{flex-shrink:0;color:var(--ink-muted)}
/* Data table (G, 12a): the first 8 rows, then a mono "Show all N" toggle; every row prints */
.sl-dl--clip > div:nth-child(n+9){display:none}
.sl-dl--clip > div:nth-child(8){border-bottom-style:solid}
.sl-dl-more{align-self:flex-start;min-height:44px;margin:-16px 0 -6px;padding:0;background:none;border:0;color:var(--ink);font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:3px;cursor:pointer}
.sl-dl-more:hover{text-decoration-color:var(--ink)}
@media print{.sl-dl--clip > div:nth-child(n+9){display:flex}.sl-dl--clip > div:nth-child(8){border-bottom-style:dotted}.sl-dl-more{display:none}}

/* 4.8 Lab slip — the only light surface besides the search field and primary button */
.sl-slip{background:var(--paper);color:var(--paper-ink);border-radius:var(--radius);display:flex;flex-direction:column;box-shadow:0 10px 30px rgba(0,0,0,.5)}
.sl-slip-head{padding:14px 16px 10px;border-bottom:1px dashed #0a0a0a;display:flex;align-items:center;justify-content:space-between;gap:12px;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase}
.sl-slip-rows{display:flex;flex-direction:column;padding:6px 16px 10px}
.sl-slip-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid rgba(10,10,10,.15)}
.sl-slip-row:last-child{border-bottom:0}
.sl-slip-row b{display:block;font-size:16px;font-weight:700}
.sl-slip-row small{display:block;font-size:12px;color:rgba(10,10,10,.7)}
.sl-slip-verify{padding:12px 16px 14px;border-top:1px dashed #0a0a0a;display:flex;flex-direction:column;gap:10px}
.sl-slip-verify p{margin:0;font-size:13.5px;line-height:1.45}
.sl-copy-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border:1px solid rgba(10,10,10,.25);border-radius:var(--radius);font-family:var(--f-mono);font-size:12px}
.sl-copy-btn{height:32px;padding:0 10px;background:var(--paper-ink);color:var(--paper);border:0;border-radius:var(--radius);font:600 12px var(--f-sans);cursor:pointer}
.sl-slip-action{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;background:var(--paper-ink);color:var(--paper) !important;border-radius:var(--radius);text-decoration:none;font-size:15px;font-weight:700}

/* 4.9 Share card — 1080×1350, rendered for download (COA results) */
.sl-share{width:1080px;height:1350px;padding:72px;background:var(--bg);color:var(--ink);display:flex;flex-direction:column;gap:40px}
.sl-share-title{font-family:var(--f-display);font-size:96px;line-height:.92;text-transform:uppercase}
.sl-share-url{font-family:var(--f-display);font-size:44px;line-height:1;text-transform:uppercase}
.sl-share-url b{color:var(--red);font-weight:400}

/* 4.10 Card — use tag, name, hook, meter, stamp, red flag, updated dot */
.sl-cards{display:grid;grid-template-columns:1fr;gap:10px;margin:0;padding:0;list-style:none}
@media (min-width:640px){.sl-cards{grid-template-columns:1fr 1fr}}
@media (min-width:1024px){.sl-cards{grid-template-columns:repeat(3,1fr)}}
.sl-card{display:flex;flex-direction:column;gap:8px;height:100%;padding:14px;border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;color:var(--ink) !important;background:var(--bg)}
.sl-card:hover{border-color:var(--line-strong)}
.sl-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.sl-card-tag{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted)}
.sl-card-upd{display:flex;align-items:center;gap:5px;flex-shrink:0;font-family:var(--f-mono);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);white-space:nowrap}
.sl-card-upd--new::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--red)}
.sl-card-name{font-size:21px;font-weight:700;line-height:1.1}
.sl-card-hook{font-size:13.5px;line-height:1.4;color:rgba(245,245,245,.85)}
.sl-card-flag{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--red)}
.sl-card-foot{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:10px;padding-top:4px}
.sl-meter{display:flex;flex-direction:column;gap:5px}
.sl-meter-bars{display:flex;gap:3px}
.sl-meter-bars i{display:block;width:14px;height:6px;background:rgba(245,245,245,.2)}
.sl-meter-bars i.on{background:var(--ink)}
.sl-meter-label{font-family:var(--f-mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:rgba(245,245,245,.72)}

/* 4.11 Chip — rectangle, never a pill */
.sl-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.sl-chip{display:inline-flex;align-items:center;min-height:40px;padding:8px 12px;border:1px solid rgba(245,245,245,.25);border-radius:var(--radius);text-decoration:none;font-size:12.5px;font-weight:500;color:var(--ink) !important;background:transparent;cursor:pointer}
.sl-chip:hover,.sl-chip[aria-pressed="true"]{border-color:var(--ink)}
.sl-chip .sl-chip-n{margin-left:6px;font-family:var(--f-mono);font-size:10.5px;color:var(--ink-muted)}
/* Phones: the goal chips are one horizontal scrolling row, bleeding to the screen edge so the
   cut-off chip shows there is more (G, 12a) */
@media (max-width:639px){
  .sl-chips--scroll{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-left:calc(-1 * var(--gutter));margin-right:calc(-1 * var(--gutter));padding:0 var(--gutter);scroll-padding:0 var(--gutter)}
  .sl-chips--scroll::-webkit-scrollbar{display:none}
  .sl-chips--scroll li{flex:0 0 auto}
  .sl-chips--scroll .sl-chip{white-space:nowrap}
}

/* 4.12 Footer — three short clauses */
.sl-footer{border-top:1px solid var(--line);font-family:var(--f-mono);font-size:10px;line-height:1.7;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted)}
.sl-footer-in{max-width:1184px;margin:0 auto;padding:14px var(--gutter) 20px;display:flex;flex-direction:column;gap:6px}
.sl-footer p{margin:0}
.sl-footer a{color:var(--ink-muted) !important;text-decoration:underline;text-underline-offset:2px;text-transform:none;letter-spacing:.02em}
/* The page's own legal disclaimer, verbatim, is the footer's fine print (G, 2026-09-28): mono
   10.5px, muted, under the footer's hairline and just above the three clauses. Full width, the
   footer's own measure, not a narrow left block (G, 12a). The aside runs full width so the
   hairline does; its padding lines the text up with the footer's. */
.sl-disclaimer{margin-top:12px;padding:14px max(var(--gutter),calc((100% - 1184px) / 2 + var(--gutter))) 0;border-top:1px solid var(--line);font-family:var(--f-mono);font-size:10.5px;line-height:1.7;color:var(--ink-muted)}
.sl-disclaimer p,.sl-disclaimer div{max-width:none;margin:0 0 6px;font:inherit;color:inherit;letter-spacing:0;text-transform:none;text-align:left}
.sl-disclaimer > :last-child{margin-bottom:0}
.sl-disclaimer a{color:var(--ink-muted) !important;text-decoration:underline;text-underline-offset:2px}
.sl-disclaimer + .sl-footer{border-top:0}
.sl-disclaimer + .sl-footer .sl-footer-in{padding-top:10px}

/* 4.13 The spray mark (G, 2026-09-28) replaces the drip mark: the full composition of
   art/kalios-wordmark.png, transparent (scripts/wordmark.py). Homepage hero, share cards and
   /og-default.png only; Anton KALIOS.HEALTH stays the header and footer wordmark. */

/* 4.14 Karl — static, never floating over content */
.sl-karl{display:block;width:140px;height:auto;flex-shrink:0}

/* Shared small parts */
.sl-back{display:inline-block;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted) !important;text-decoration:none}
.sl-back:hover{color:var(--ink) !important}
.sl-changed{display:flex;align-items:baseline;gap:10px;margin:0;font-family:var(--f-mono);font-size:11px;line-height:1.5;letter-spacing:.06em;text-transform:uppercase;color:rgba(245,245,245,.8)}
.sl-changed::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--red);flex-shrink:0;transform:translateY(-1px)}
.sl-changed b{color:var(--ink);font-weight:500}
.sl-btn-ghost{display:inline-flex;align-items:center;min-height:44px;padding:12px 16px;border:1px solid var(--line-strong);border-radius:var(--radius);text-decoration:none;font-size:13px;font-weight:600;color:var(--ink) !important}
.sl-btn-ghost:hover{border-color:var(--ink)}
.sl-search{margin:0;display:flex;flex-direction:column;gap:6px}
.sl-search label{font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:rgba(245,245,245,.65)}
.sl-search-field{display:flex;align-items:center;gap:10px;height:54px;padding:0 6px 0 14px;background:var(--paper);color:var(--paper-ink);border-radius:var(--radius)}
.sl-search-field svg{flex-shrink:0}
.sl-search-field input{flex:1;min-width:0;height:100%;background:transparent;border:0;outline:0;color:var(--paper-ink);font:500 16px var(--f-sans)}
.sl-search-field input::placeholder{color:rgba(10,10,10,.5)}
.sl-search-field button{flex-shrink:0;height:42px;padding:0 14px;background:var(--paper-ink);color:var(--paper);border:0;border-radius:var(--radius);font:700 13px var(--f-sans);cursor:pointer}
.sl-search-field:focus-within{box-shadow:0 0 0 2px var(--ink)}
.sl-page .sl-search-field input:focus-visible{outline:0}
/* The homepage typeahead (G, 12a): dark, mono, the best six matches as you type */
.sl-search{position:relative}
.sl-ta{position:absolute;left:0;right:0;top:100%;z-index:30;margin:4px 0 0;padding:4px 0;list-style:none;background:var(--bg);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:0 10px 30px rgba(0,0,0,.6);font-family:var(--f-mono);font-size:13.5px;line-height:1.3}
.sl-ta li{margin:0;padding:0}
.sl-ta a{display:flex;align-items:baseline;justify-content:space-between;gap:12px;min-height:44px;padding:12px 14px;color:var(--ink) !important;text-decoration:none}
.sl-ta a span{min-width:0;color:var(--ink-muted);font-size:11.5px;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sl-ta a:hover,.sl-ta [aria-selected="true"] a{background:rgba(245,245,245,.1)}
.sl-ta .sl-ta-none{padding:12px 14px;color:var(--ink-muted);font-size:12px}

/* 5. Page templates ------------------------------------------------------- */
.sl-main{width:100%;max-width:var(--col);margin:0 auto;padding:24px var(--gutter) 20px;display:flex;flex-direction:column;gap:22px}
@media (min-width:1024px){.sl-main{padding-top:40px;padding-bottom:40px;gap:26px}}

/* Compound (and stack) page */
.sl-hero{display:flex;flex-direction:column;gap:12px}
.sl-titlerow{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:10px 12px}
.sl-titlerow .sl-h1{flex:0 1 auto;min-width:0}
.sl-titlerow .sl-stamp{margin-bottom:8px}
@media (min-width:1024px){.sl-titlerow{justify-content:flex-start;column-gap:28px}.sl-titlerow .sl-stamp{margin-bottom:16px}}
.sl-members-label{margin:0 0 -14px}
.sl-related{display:flex;flex-direction:column;gap:8px}
.sl-related-links{display:flex;flex-wrap:wrap;gap:8px}
.sl-related-links a{flex:1 1 140px;padding:12px;border:1px solid rgba(245,245,245,.25);border-radius:var(--radius);text-decoration:none;font-size:14px;font-weight:600;color:var(--ink)}
.sl-related-links a:hover{border-color:var(--ink)}

/* Homepage */
.sl-home{max-width:1184px}
/* The spray mark: phone, above the headline and left-aligned; desktop, the right column,
   vertically centred on the headline block */
.sl-wm{display:block;width:200px;height:auto;align-self:flex-start}
.sl-home-hero{display:flex;flex-direction:column;gap:10px}
.sl-home-line{margin:0;font-size:17px;line-height:1.4;font-weight:500;color:rgba(245,245,245,.9)}
.sl-home-first{margin:0;font-size:14px;line-height:1.4;font-weight:600}
.sl-home-first a{color:var(--ink) !important;text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:3px}
.sl-home-first a:hover{text-decoration-color:var(--ink)}
.sl-doors{display:flex;flex-direction:column;border-top:1px solid var(--line-strong)}
.sl-door{display:flex;align-items:center;gap:14px;min-height:60px;padding:8px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink) !important}
.sl-door-n{font-family:var(--f-mono);font-size:12px;color:var(--ink-muted)}
.sl-door-t{display:flex;flex-direction:column;gap:2px}
.sl-door-t b{font-size:17px;font-weight:700}
.sl-door-t span{font-size:13px;color:rgba(245,245,245,.72)}
.sl-door:hover b{text-decoration:underline;text-underline-offset:3px}
/* Author card (HomeDesktop): desktop only (G, 11c), under the spray mark */
.sl-author{display:none;flex-direction:column;gap:4px;padding:16px;border:1px solid var(--line);border-radius:var(--radius)}
.sl-author p{margin:0;font-size:14px;line-height:1.45;color:rgba(245,245,245,.85)}
.sl-author strong{color:var(--ink);font-weight:600}
.sl-author a{align-self:flex-start;padding:6px 0 2px;font-size:13px;font-weight:600;text-decoration:none;color:var(--ink) !important}
.sl-author a:hover{text-decoration:underline;text-underline-offset:3px}
.sl-home-cards{display:flex;flex-direction:column;gap:10px}
.sl-home-cards .sl-btn-ghost{align-self:flex-start}
@media (min-width:1024px){
  .sl-home{display:grid;grid-template-columns:minmax(0,1fr) 260px;column-gap:56px;row-gap:28px;align-items:start}
  /* Headline + sub-line left, search and the three doors under it, the mark right (centred on
     the headline block) with the author card under it; the "what changed" line spans both */
  .sl-home > *{grid-column:1}
  .sl-home .sl-wm{grid-column:2;grid-row:1;align-self:center;width:260px}
  .sl-home-hero{grid-row:1;align-self:center}
  .sl-home .sl-search{grid-row:2}
  .sl-home .sl-doors{grid-row:3}
  .sl-home .sl-author{display:flex;grid-column:2;grid-row:2 / span 2;align-self:start}
  .sl-home .sl-changed{grid-column:1 / -1;grid-row:4}
  .sl-home .sl-chips{grid-row:5}
  .sl-home-cards{grid-row:6}
  .sl-home-line{font-size:22px}
  .sl-doors{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;border-top:0}
  .sl-door{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:6px;min-height:104px;padding:16px;border:1px solid var(--line);border-radius:var(--radius)}
  .sl-door:hover{border-color:var(--line-strong)}
  .sl-home-cards,.sl-home .sl-chips,.sl-home .sl-browse{grid-column:1 / -1}
  /* the four start-with cards: the /compounds/ card, two across (four across would squeeze the meter) */
  .sl-home-cards .sl-cards{grid-template-columns:1fr 1fr}
}

/* All compounds */
.sl-index{max-width:1184px}
.sl-index-group{display:flex;flex-direction:column;gap:10px;scroll-margin-top:12px}
.sl-index-group h2{margin:0;display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-bottom:8px;border-bottom:1px solid var(--line);font-size:18px;font-weight:700}
.sl-index-group h2 span{font-family:var(--f-mono);font-size:11px;font-weight:400;letter-spacing:.08em;color:var(--ink-muted)}
.sl-index-count{margin:0;font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}
.sl-index-count:empty{display:none}
.sl-index-count a{color:var(--ink) !important;text-decoration:underline;text-underline-offset:2px}
.sl-empty{display:flex;align-items:center;gap:16px}
[hidden]{display:none !important}

/* Corrections (G, 12a): one line per correction, newest first */
.sl-fixes{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;border-top:1px solid var(--line-strong)}
.sl-fixes li{margin:0;padding:12px 0;border-bottom:1px dotted var(--line-strong);font-size:14px;line-height:1.5;color:var(--ink-body)}
.sl-fix-meta{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted)}
.sl-fix-meta a{color:var(--ink) !important;text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:2px}
.sl-fix-body b{color:var(--ink);font-weight:600}
@media (min-width:1024px){.sl-fixes li{font-size:15px}}
/* Beginner's guide (G, 12a): the five-line Gist, and the four doors at the end */
.sl-guide-gist{margin:0 0 28px}
.sl-guide-gist .sl-gist-lines{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.sl-guide-gist .sl-gist-lines li{margin:0;padding:0;font-size:14.5px;line-height:1.5;color:var(--ink-body)}
.sl-guide-gist .sl-gist-lines li::before{content:none}
.sl-gist-lines b{color:var(--ink);font-weight:600}
@media (min-width:1024px){.sl-guide-gist .sl-gist-lines li{font-size:16px}}
.sl-guide-doors{display:flex;flex-direction:column;gap:14px;max-width:720px;margin:36px auto 0;padding:0}
.sl-guide-goal{display:flex;flex-direction:column;gap:12px;padding:14px 0 16px;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line)}
.sl-guide-goal .sl-door-t{display:flex;flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin:0}
.sl-guide-goal .sl-door-t b{font-size:17px;font-weight:700;color:var(--ink)}
.sl-guide-goal .sl-door-t > span:last-child{flex-basis:100%;font-size:13px;color:rgba(245,245,245,.72)}
.sl-doors--guide{border-top:0}
/* Stacks hub (G, 12a): the six named stacks as cards, then "Look up any two" */
.sl-hub-hero{margin-bottom:22px}
.sl-hub-stacks{display:flex;flex-direction:column;gap:10px;margin:0 0 30px}
.sl-hub-line{margin:0 0 18px;font-size:17px;line-height:1.4;font-weight:600;color:var(--ink)}
@media (min-width:1024px){.sl-hub-line{font-size:20px}}
/* Alerts page (G, 12a) */
.sl-alerts-note{margin:0;font-size:12.5px;line-height:1.5;color:var(--ink-muted)}
.sl-alerts-promise{margin:0;font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink)}
/* New article pages (alerts, corrections: G, 12a) reuse the compound sections' typography */
.sl-article .profile-section:last-child{margin-bottom:0}

/* Tool and article pages (tracker, guide, about, calculator, stack tool, compare, 404) */
.sl-tool-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}

/* 6. Existing content — typography only, structure untouched ---------------- */
.sl-main .profile-content{max-width:none;margin:0;padding:0;animation:none}
.profile-section{margin:0 0 36px;scroll-margin-top:16px}
.profile-section-title{margin:0 0 14px;padding:0 0 8px;border-bottom:1px solid var(--line);font-family:var(--f-sans);font-size:20px;font-weight:700;line-height:1.25;letter-spacing:-.01em;color:var(--ink)}
.profile-section p{margin:0 0 12px;font-size:14.5px;line-height:1.55;font-weight:400;color:var(--ink-body)}
.profile-section p strong,.key-points li strong{color:var(--ink);font-weight:600}
/* Dosing opens with one line on what has and hasn't been published for that use, and the calculator
   link sits beneath the section (G, 12a) */
.profile-section p.sl-dose-open{padding:10px 0 12px;border-bottom:1px dotted var(--line-strong);color:var(--ink);font-weight:400}
.sl-dose-calc{margin:-22px 0 36px !important;font-size:14.5px;font-weight:600}
.sl-dose-calc a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.profile-content a,.tldr-box a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--link-line);text-underline-offset:2px}
.profile-content a:hover,.tldr-box a:hover{text-decoration-color:var(--ink)}
.key-points{list-style:none;margin:0 0 12px;padding:0}
.key-points li{position:relative;margin:0;padding:10px 0 10px 20px;border-bottom:1px solid var(--line);font-size:14.5px;line-height:1.55;font-weight:400;color:var(--ink-body)}
.key-points li::before{content:"—";position:absolute;left:0;color:var(--ink-muted)}
.dosing-table{width:100%;border-collapse:collapse;margin:12px 0 16px;font-size:13.5px}
.dosing-table th{padding:10px 12px 8px 0;border-bottom:1px solid var(--line-strong);text-align:left;vertical-align:bottom;font-family:var(--f-mono);font-size:10.5px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted)}
.dosing-table td{padding:10px 12px 10px 0;border-bottom:1px dotted var(--line-strong);vertical-align:top;line-height:1.5;font-weight:400;color:var(--ink-body)}
.dosing-table td:first-child{color:var(--ink);font-weight:500}
@media (max-width:719px){.dosing-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.dosing-table td,.dosing-table th{min-width:96px}}
.warning-box,.status-box,.cost-access-box,.verdict-box,.component-card,.compare-card{margin:14px 0;padding:14px 16px;border:1px solid var(--line-strong);border-radius:var(--radius);background:transparent}
.warning-box-title,.status-box-label,.cost-access-box-label,.verdict-label,.tldr-label{margin:0 0 8px;font-family:var(--f-mono);font-size:10.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}
.warning-box p,.status-box p,.cost-access-box p,.verdict-box p{margin:0 0 10px;font-size:14px;line-height:1.55;font-weight:400;color:var(--ink-body)}
.warning-box p:last-child,.status-box p:last-child,.verdict-box p:last-child{margin-bottom:0}
/* The page's full PCAC notice (sl:pcac-note) opens its Legal status section; the band keeps one line */
.pcac-notice{margin:0 0 14px;padding:14px 16px;border:1px solid var(--line-strong);border-radius:var(--radius);font-size:14px;line-height:1.55;font-weight:400;color:var(--ink-body)}
.pcac-notice strong{color:var(--ink);font-weight:600}
.cost-access-disclaimer{font-size:12px !important;color:var(--ink-muted) !important;margin-top:8px}
.next-steps-warning{border-color:var(--ink) !important}
.stack-card{margin:10px 0;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:transparent !important}
.stack-card-name{margin:0 0 6px;font-family:var(--f-sans);font-size:16px;font-weight:700;color:var(--ink)}
.stack-card-name a{text-decoration:none}
.stack-card p{margin:0 0 8px;font-size:14px;line-height:1.55;color:var(--ink-body)}
.stack-card p:last-child{margin-bottom:0}
.comparison-crosslink{border:1px solid var(--line-strong) !important}
.references{list-style:none;counter-reset:ref;margin:0;padding:0}
.references li{position:relative;counter-increment:ref;margin:0;padding:6px 0 6px 30px;border-bottom:1px solid var(--line-faint);font-size:12.5px;line-height:1.55;color:var(--ink-muted);overflow-wrap:anywhere}
.references li::before{content:counter(ref);position:absolute;left:0;top:7px;font-family:var(--f-mono);font-size:11px;color:var(--ink)}
.related-research-list{list-style:none;margin:0;padding:0}
.related-research-list li{padding:11px 0;border-bottom:1px solid var(--line);font-size:14.5px;line-height:1.45}
.related-research-list li:last-child{border-bottom:0}
.related-research-list li a{font-weight:600;text-decoration:none}
.related-research-list .rr-note{display:block;margin-top:3px;font-size:12.5px;line-height:1.5;color:var(--ink-muted)}
.tldr-box{margin:0;padding:16px;border:1px solid var(--line-strong);border-radius:var(--radius);background:transparent}
.tldr-box p{margin:0;font-size:14.5px;line-height:1.55;font-weight:400;color:var(--ink-body)}
.sl-compound .tldr-box p br{display:none}
.sl-compound .tldr-box p strong{display:block;margin:14px 0 3px;font-family:var(--f-mono);font-size:10.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}
.sl-compound .tldr-box p strong:first-child{margin-top:0}
.tldr-box p + p{margin-top:10px}
.pull-quote{margin:20px 0;padding:0;font-size:19px;line-height:1.4;font-weight:600;color:var(--ink);border:0}
.component-card-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.component-card-name{font-size:17px;font-weight:700}
.component-card-name a{text-decoration:none}
.component-card-meta{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}
.compare-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;margin:12px 0 18px}
.compare-card-head{font-size:17px;font-weight:700;margin-bottom:2px}
.compare-card-head a{text-decoration:none}
.compare-card-aka{font-family:var(--f-mono);font-size:11px;color:var(--ink-muted);margin-bottom:10px}
.compare-card dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 12px;margin:0;font-size:13px}
.compare-card dt{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}
.compare-card dd{margin:0;color:var(--ink-body)}
/* Evidence badges inside content become small stamps */
.badge{display:inline-block;margin-left:.5em;padding:4px 7px;border:2px solid currentColor;border-radius:var(--radius);background:transparent;font-family:var(--f-mono);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;vertical-align:middle;line-height:1.2}
.badge-green{color:var(--approved)}
.badge-gold{color:var(--crx)}
.badge-red{color:var(--research)}
@media (min-width:1024px){
  .profile-section p,.key-points li,.tldr-box p{font-size:16px}
  .profile-section-title{font-size:23px}
  .dosing-table{font-size:14.5px}
  .warning-box p,.status-box p,.cost-access-box p,.stack-card p,.pcac-notice{font-size:15px}
  .references li{font-size:13.5px}
}

/* Article pages that keep the profile layout (compare pages) */
.sl-main .profile-header{max-width:none;margin:0;padding:0;animation:none;display:flex;flex-direction:column;gap:12px}
.profile-category{margin:0;font-family:var(--f-mono);font-size:11px;font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}
.profile-name{margin:0;font-family:var(--f-display);font-size:44px;font-weight:400;line-height:.95;letter-spacing:.01em;text-transform:uppercase;color:var(--ink)}
.profile-name .badge{margin-left:.3em;font-size:11px;padding:6px 9px;transform:rotate(-2deg);vertical-align:.35em}
.profile-aka{margin:0;font-family:var(--f-mono);font-size:12px;line-height:1.55;color:var(--ink-muted)}
.quick-facts{display:flex !important;flex-direction:column;margin:4px 0 0;border-top:1px solid var(--line-strong);font-family:var(--f-mono);font-size:13px;background:transparent !important}
.quick-fact{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:11px 0;border:0;border-bottom:1px dotted var(--line-strong);background:transparent}
.quick-fact-label{flex:0 1 44%;margin:0;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}
.quick-fact-value{flex:0 1 56%;font-family:var(--f-mono);font-size:13px;font-weight:500;text-align:right;color:var(--ink)}
@media (min-width:1024px){.profile-name{font-size:68px}}

/* 7. Root pages: page CSS stays; these win because this file loads last ----- */
.sl-page--article .tracker-main,.sl-page--article > main{animation:none}
.sl-page--article .tracker-h1,.sl-page--article .page-header h1,.sl-page--article .page-hero h1,.sl-page--tool .hdr h1{font-family:var(--f-display) !important;font-weight:400 !important;text-transform:uppercase;letter-spacing:.01em !important;line-height:.95 !important;font-size:44px !important;color:var(--ink)}
.sl-page--article .page-header h1 em,.sl-page--tool .hdr h1 em{font-style:normal;color:inherit}
@media (min-width:1024px){.sl-page--article .tracker-h1,.sl-page--article .page-header h1,.sl-page--article .page-hero h1,.sl-page--tool .hdr h1{font-size:68px !important}}
.sl-page--article .tracker-main h2,.sl-page--article .guide-article h2{font-family:var(--f-sans);font-weight:700;letter-spacing:-.01em}
.sl-page--article .guide-article h2 em{font-style:normal}
.sl-page--stack-tool main h1{font-family:var(--f-display) !important;font-weight:400 !important;text-transform:uppercase;letter-spacing:.01em !important;line-height:.95 !important;font-size:44px !important}
@media (min-width:1024px){.sl-page--stack-tool main h1{font-size:68px !important}}
/* Tracker: results table restyled as the data table; caution stripe as the section rule */
@media (max-width:719px){.sl-page--tracker .tracker-table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}}
.sl-page--tracker .tracker-table{font-family:var(--f-mono);border-top:1px solid var(--line-strong)}
.sl-page--tracker .tracker-table th{font-family:var(--f-mono);font-size:10.5px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);border-bottom:1px solid var(--line-strong)}
.sl-page--tracker .tracker-table td{font-size:13px;border-bottom:1px dotted var(--line-strong);color:var(--ink-body)}
.sl-page--tracker .tracker-table td:first-child,.sl-page--tracker .tracker-table td:first-child a{font-family:var(--f-sans);font-weight:700;color:var(--ink)}
.sl-page--tracker .tracker-main > h2,.sl-page--tracker .tracker-main > .sl-read > h2{position:relative;padding-top:18px;border-top:0 !important}
.sl-page--tracker .tracker-main > h2::before,.sl-page--tracker .tracker-main > .sl-read > h2::before{content:"";position:absolute;left:0;right:0;top:0;height:8px;border-radius:2px;background:repeating-linear-gradient(45deg,#0a0a0a 0 10px,#f5c518 10px 20px)}
.sl-page--tracker .key-dates h2::before{display:none}

/* 7a Reading surface (G, 2026-09-28; artboard v11-Label). The section bodies below the section
   nav, and the references (.sl-read), follow the phone's setting: dark is the site as it is,
   light is paper. html[data-read="paper"|"night"], set by the "Aa" toggle in the section nav
   and remembered (street-lab.js; restored before paint by the head script), overrides it.
   Header, strip, hero, stamps, band, data table, cards, tools and footer stay black in both.
   Custom properties resolve where they are declared, so paper restates every token, the
   legacy names included. The --r-* tokens stand in for colours the pages hard-code; their
   dark values are the pages' own, so the dark surface is unchanged. Body text on paper is
   #2a2a28 on #f4f1ea (12.7:1), muted #4f4d48 (7.4:1), headings #0a0a0a (17.5:1). */
:root{--read-bg:#f4f1ea;--read-ink:#2a2a28;--read-head:#0a0a0a;--read-muted:#4f4d48;--read-rule:rgba(10,10,10,.15);--read-rule-strong:rgba(10,10,10,.3);--read-green:#125427;
  --line-faint:rgba(245,245,245,.08);--link-line:rgba(245,245,245,.35);--link-rule:rgba(245,245,245,.3);
  --r-green:#A8D2A8;--r-green-tint:rgba(168,210,168,.12);--r-green-tint2:rgba(168,210,168,.09);--r-green-line:rgba(168,210,168,.4);--r-chip-bg:rgba(245,245,245,.1);--r-chip-line:rgba(245,245,245,.25);
  --r-ev-green-bg:rgba(120,180,120,.07);--r-ev-green-line:rgba(120,180,120,.4);--r-ev-green-text:rgb(168,210,168);--r-ev-red-bg:hsla(3,53%,68%,.07);--r-ev-red-line:hsla(3,53%,68%,.4);--r-ev-red-text:rgb(217,136,132);
  --r-ev-yellow-bg:hsla(0,0%,96%,.07);--r-ev-yellow-line:hsla(0,0%,96%,.4);--r-tint:rgba(245,245,245,.02);--r-target:rgba(245,245,245,.07)}
.sl-compound > .sl-read{display:flex;flex-direction:column;gap:22px}
@media (min-width:1024px){.sl-compound > .sl-read{gap:26px}}
/* Paper: the same three rules twice, for the phone's light setting and for the toggle */
@media (prefers-color-scheme:light){
  html:not([data-read="night"]) .sl-read{color-scheme:light;background:var(--read-bg);color:var(--read-ink);box-shadow:0 0 0 100vmax var(--read-bg);clip-path:inset(0 -100vmax);padding-top:20px;padding-bottom:24px;
  --ink:var(--read-head);--ink-body:var(--read-ink);--ink-muted:var(--read-muted);--line:var(--read-rule);--line-strong:var(--read-rule-strong);--line-faint:rgba(10,10,10,.1);--link-line:rgba(10,10,10,.45);--link-rule:rgba(10,10,10,.35);
  --bg:var(--read-bg);--bg-mid:var(--read-bg);--bg-surface:var(--read-bg);--bg-card:var(--read-bg);
  --text:var(--read-head);--text-primary:var(--read-head);--text-pri:var(--read-head);--text-body:var(--read-ink);--text-secondary:var(--read-muted);--text-muted:var(--read-muted);--text-mut:var(--read-muted);
  --border:var(--read-rule);--border-strong:var(--read-rule-strong);--gold:var(--read-head);--gold-soft:var(--read-head);--gold-dim:rgba(10,10,10,.08);--accent-gold:var(--read-head);
  --r-green:var(--read-green);--r-green-tint:rgba(18,84,39,.08);--r-green-tint2:rgba(18,84,39,.08);--r-green-line:rgba(18,84,39,.4);--r-chip-bg:rgba(10,10,10,.05);--r-chip-line:rgba(10,10,10,.25);
  --r-ev-green-bg:rgba(18,84,39,.04);--r-ev-green-line:rgba(18,84,39,.4);--r-ev-green-text:var(--read-green);--r-ev-red-bg:rgba(158,42,34,.06);--r-ev-red-line:rgba(158,42,34,.4);--r-ev-red-text:#9e2a22;
  --r-ev-yellow-bg:rgba(10,10,10,.04);--r-ev-yellow-line:rgba(10,10,10,.3);--r-tint:rgba(10,10,10,.03);--r-target:rgba(10,10,10,.06)}
  html:not([data-read="night"]) .sl-read a{text-decoration-line:underline;text-decoration-color:var(--link-line);text-underline-offset:2px}
  html:not([data-read="night"]) .sl-read :is(h1,h2,h3,h4){color:var(--read-head)}
}
html[data-read="paper"] .sl-read{color-scheme:light;background:var(--read-bg);color:var(--read-ink);box-shadow:0 0 0 100vmax var(--read-bg);clip-path:inset(0 -100vmax);padding-top:20px;padding-bottom:24px;
  --ink:var(--read-head);--ink-body:var(--read-ink);--ink-muted:var(--read-muted);--line:var(--read-rule);--line-strong:var(--read-rule-strong);--line-faint:rgba(10,10,10,.1);--link-line:rgba(10,10,10,.45);--link-rule:rgba(10,10,10,.35);
  --bg:var(--read-bg);--bg-mid:var(--read-bg);--bg-surface:var(--read-bg);--bg-card:var(--read-bg);
  --text:var(--read-head);--text-primary:var(--read-head);--text-pri:var(--read-head);--text-body:var(--read-ink);--text-secondary:var(--read-muted);--text-muted:var(--read-muted);--text-mut:var(--read-muted);
  --border:var(--read-rule);--border-strong:var(--read-rule-strong);--gold:var(--read-head);--gold-soft:var(--read-head);--gold-dim:rgba(10,10,10,.08);--accent-gold:var(--read-head);
  --r-green:var(--read-green);--r-green-tint:rgba(18,84,39,.08);--r-green-tint2:rgba(18,84,39,.08);--r-green-line:rgba(18,84,39,.4);--r-chip-bg:rgba(10,10,10,.05);--r-chip-line:rgba(10,10,10,.25);
  --r-ev-green-bg:rgba(18,84,39,.04);--r-ev-green-line:rgba(18,84,39,.4);--r-ev-green-text:var(--read-green);--r-ev-red-bg:rgba(158,42,34,.06);--r-ev-red-line:rgba(158,42,34,.4);--r-ev-red-text:#9e2a22;
  --r-ev-yellow-bg:rgba(10,10,10,.04);--r-ev-yellow-line:rgba(10,10,10,.3);--r-tint:rgba(10,10,10,.03);--r-target:rgba(10,10,10,.06)}
html[data-read="paper"] .sl-read a{text-decoration-line:underline;text-decoration-color:var(--link-line);text-underline-offset:2px}
html[data-read="paper"] .sl-read :is(h1,h2,h3,h4){color:var(--read-head)}
/* Colours the pages hard-code, through the tokens above (pair pages, tracker, guide, utilities) */
.sl-read .venn .a{fill:var(--ink);stroke:var(--ink)}
.sl-read .venn .b{fill:var(--r-green);stroke:var(--r-green)}
.sl-read .venn text{fill:var(--ink)}
.sl-read .tag-chip{background:var(--r-chip-bg);border-color:var(--r-chip-line);color:var(--ink)}
.sl-read .tag-chip.shared{background:var(--r-green-tint);border-color:var(--r-green-line);color:var(--r-green)}
.sl-read th[data-sort]:hover,.sl-read th[data-sort].active::after{color:var(--ink)}
.sl-read .bg-ev-green{background-color:var(--r-ev-green-bg)}
.sl-read .border-ev-green-border{border-color:var(--r-ev-green-line)}
.sl-read .text-ev-green-text{color:var(--r-ev-green-text)}
.sl-read .bg-ev-red{background-color:var(--r-ev-red-bg)}
.sl-read .border-ev-red-border{border-color:var(--r-ev-red-line)}
.sl-read .text-ev-red-text{color:var(--r-ev-red-text)}
.sl-read .bg-ev-yellow{background-color:var(--r-ev-yellow-bg)}
.sl-read .border-ev-yellow-border{border-color:var(--r-ev-yellow-line)}
.sl-read .events-list li.done{border-left-color:var(--r-green)}
.sl-read .events-list li.done::after{color:var(--r-green);background:var(--r-green-tint2);border-color:var(--r-green-line)}
.sl-read .precondition{background:var(--r-tint)}
.sl-read .tracker-list li:target{background:var(--r-target)}
.sl-read.guide-article p a{border-bottom-color:var(--link-rule)}
/* The "Aa" toggle: last in the section nav, just above the reading surface */
/* The last section row carries the "Aa" toggle: References · N ··· Aa (G, 12a) */
.sl-secnav-last{display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line)}
.sl-secnav-last a{flex:1;min-width:0;border-bottom:0}
.sl-aa{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:36px;padding:0 10px;background:transparent;border:1px solid var(--line-strong);border-radius:var(--radius);color:var(--ink);font:600 15px/1 var(--f-sans);letter-spacing:.02em;cursor:pointer}
.sl-aa:hover,.sl-aa[aria-pressed="true"]{border-color:var(--ink)}
.sl-aa[hidden]{display:none}

/* Stacks hub pickers on paper (G, 12a): the two compound fields, like every other input */
.sl-page .combobox > input{background:var(--paper) !important;color:var(--paper-ink) !important;border:1px solid transparent !important;border-radius:var(--radius);font-size:16px !important;color-scheme:light}
.sl-page .combobox > input::placeholder{color:rgba(10,10,10,.55)}

/* 8. Legacy utility layer (stack tool + pair pages) is appended below by
      scripts/build_tw_compat.py. Do not edit by hand below the marker. */

/* sl:tw-compat */
/* Legacy utility layer for the stack tool and pair pages: tailwindcss@3.4.17 (MIT) compiled once by scripts/build_tw_compat.py, scoped to :where(.sl-tw). Regenerate; do not edit by hand. */
:where(.sl-tw) *,:where(.sl-tw) :after,:where(.sl-tw) :before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }:where(.sl-tw) ::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }:where(.sl-tw) *,:where(.sl-tw) :after,:where(.sl-tw) :before{box-sizing:border-box;border:0 solid #e5e7eb}:where(.sl-tw) :after,:where(.sl-tw) :before{--tw-content:""}:where(.sl-tw){line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}:where(.sl-tw){margin:0;}:where(.sl-tw) hr{height:0;color:inherit;border-top-width:1px}:where(.sl-tw) abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}:where(.sl-tw) h1,:where(.sl-tw) h2,:where(.sl-tw) h3,:where(.sl-tw) h4,:where(.sl-tw) h5,:where(.sl-tw) h6{font-size:inherit;font-weight:inherit}:where(.sl-tw) a{color:inherit;text-decoration:inherit}:where(.sl-tw) b,:where(.sl-tw) strong{font-weight:bolder}:where(.sl-tw) code,:where(.sl-tw) kbd,:where(.sl-tw) pre,:where(.sl-tw) samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}:where(.sl-tw) small{font-size:80%}:where(.sl-tw) sub,:where(.sl-tw) sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}:where(.sl-tw) sub{bottom:-.25em}:where(.sl-tw) sup{top:-.5em}:where(.sl-tw) table{text-indent:0;border-color:inherit;border-collapse:collapse}:where(.sl-tw) button,:where(.sl-tw) input,:where(.sl-tw) optgroup,:where(.sl-tw) select,:where(.sl-tw) textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}:where(.sl-tw) button,:where(.sl-tw) select{text-transform:none}:where(.sl-tw) button,:where(.sl-tw) input:where([type=button]),:where(.sl-tw) input:where([type=reset]),:where(.sl-tw) input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:where(.sl-tw) :-moz-focusring{outline:auto}:where(.sl-tw) :-moz-ui-invalid{box-shadow:none}:where(.sl-tw) progress{vertical-align:baseline}:where(.sl-tw) ::-webkit-inner-spin-button,:where(.sl-tw) ::-webkit-outer-spin-button{height:auto}:where(.sl-tw) [type=search]{-webkit-appearance:textfield;outline-offset:-2px}:where(.sl-tw) ::-webkit-search-decoration{-webkit-appearance:none}:where(.sl-tw) ::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}:where(.sl-tw) summary{display:list-item}:where(.sl-tw) blockquote,:where(.sl-tw) dd,:where(.sl-tw) dl,:where(.sl-tw) figure,:where(.sl-tw) h1,:where(.sl-tw) h2,:where(.sl-tw) h3,:where(.sl-tw) h4,:where(.sl-tw) h5,:where(.sl-tw) h6,:where(.sl-tw) hr,:where(.sl-tw) p,:where(.sl-tw) pre{margin:0}:where(.sl-tw) fieldset{margin:0}:where(.sl-tw) fieldset,:where(.sl-tw) legend{padding:0}:where(.sl-tw) menu,:where(.sl-tw) ol,:where(.sl-tw) ul{list-style:none;margin:0;padding:0}:where(.sl-tw) dialog{padding:0}:where(.sl-tw) textarea{resize:vertical}:where(.sl-tw) input::-moz-placeholder,:where(.sl-tw) textarea::-moz-placeholder{opacity:1;color:#9ca3af}:where(.sl-tw) input::placeholder,:where(.sl-tw) textarea::placeholder{opacity:1;color:#9ca3af}:where(.sl-tw) [role=button],:where(.sl-tw) button{cursor:pointer}:where(.sl-tw) :disabled{cursor:default}:where(.sl-tw) audio,:where(.sl-tw) canvas,:where(.sl-tw) embed,:where(.sl-tw) iframe,:where(.sl-tw) img,:where(.sl-tw) object,:where(.sl-tw) svg,:where(.sl-tw) video{display:block;vertical-align:middle}:where(.sl-tw) img,:where(.sl-tw) video{max-width:100%;height:auto}:where(.sl-tw) [hidden]:where(:not([hidden=until-found])){display:none}:where(.sl-tw) .static{position:static}:where(.sl-tw) .absolute{position:absolute}:where(.sl-tw) .relative{position:relative}:where(.sl-tw) .isolate{isolation:isolate}:where(.sl-tw) .z-20{z-index:20}:where(.sl-tw) .m-0{margin:0}:where(.sl-tw) .mx-auto{margin-left:auto;margin-right:auto}:where(.sl-tw) .mb-0\.5{margin-bottom:.125rem}:where(.sl-tw) .mb-1{margin-bottom:.25rem}:where(.sl-tw) .mb-10{margin-bottom:2.5rem}:where(.sl-tw) .mb-12{margin-bottom:3rem}:where(.sl-tw) .mb-2{margin-bottom:.5rem}:where(.sl-tw) .mb-3{margin-bottom:.75rem}:where(.sl-tw) .mb-4{margin-bottom:1rem}:where(.sl-tw) .mb-5{margin-bottom:1.25rem}:where(.sl-tw) .mb-6{margin-bottom:1.5rem}:where(.sl-tw) .mb-8{margin-bottom:2rem}:where(.sl-tw) .ml-2{margin-left:.5rem}:where(.sl-tw) .mt-2{margin-top:.5rem}:where(.sl-tw) .mt-3{margin-top:.75rem}:where(.sl-tw) .mt-5{margin-top:1.25rem}:where(.sl-tw) .mt-6{margin-top:1.5rem}:where(.sl-tw) .block{display:block}:where(.sl-tw) .inline-block{display:inline-block}:where(.sl-tw) .inline{display:inline}:where(.sl-tw) .flex{display:flex}:where(.sl-tw) .table{display:table}:where(.sl-tw) .grid{display:grid}:where(.sl-tw) .hidden{display:none}:where(.sl-tw) .max-h-72{max-height:18rem}:where(.sl-tw) .min-h-screen{min-height:100vh}:where(.sl-tw) .w-1\/3{width:33.333333%}:where(.sl-tw) .w-full{width:100%}:where(.sl-tw) .max-w-4xl{max-width:56rem}:where(.sl-tw) .max-w-6xl{max-width:72rem}:where(.sl-tw) .max-w-7xl{max-width:80rem}:where(.sl-tw) .max-w-md{max-width:28rem}:where(.sl-tw) .flex-shrink{flex-shrink:1}:where(.sl-tw) .transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}:where(.sl-tw) .cursor-pointer{cursor:pointer}:where(.sl-tw) .list-disc{list-style-type:disc}:where(.sl-tw) .list-none{list-style-type:none}:where(.sl-tw) .grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}:where(.sl-tw) .flex-wrap{flex-wrap:wrap}:where(.sl-tw) .items-center{align-items:center}:where(.sl-tw) .justify-between{justify-content:space-between}:where(.sl-tw) .gap-2{gap:.5rem}:where(.sl-tw) .gap-4{gap:1rem}:where(.sl-tw) .gap-5{gap:1.25rem}:where(.sl-tw) .gap-6{gap:1.5rem}:where(.sl-tw) .space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}:where(.sl-tw) .space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}:where(.sl-tw) .overflow-x-auto{overflow-x:auto}:where(.sl-tw) .overflow-y-auto{overflow-y:auto}:where(.sl-tw) .truncate{overflow:hidden;text-overflow:ellipsis}:where(.sl-tw) .truncate,:where(.sl-tw) .whitespace-nowrap{white-space:nowrap}:where(.sl-tw) .border{border-width:1px}:where(.sl-tw) .border-b{border-bottom-width:1px}:where(.sl-tw) .border-l-2{border-left-width:2px}:where(.sl-tw) .border-t{border-top-width:1px}:where(.sl-tw) .border-border,:where(.sl-tw) .border-border-soft{border-color:var(--line)}:where(.sl-tw) .border-ev-green-border{border-color:rgba(120,180,120,.4)}:where(.sl-tw) .border-ev-red-border{border-color:hsla(3,53%,68%,.4)}:where(.sl-tw) .border-ev-yellow-border{border-color:hsla(0,0%,96%,.4)}:where(.sl-tw) .border-gold,:where(.sl-tw) .border-text-pri{border-color:var(--ink)}:where(.sl-tw) .bg-bg,:where(.sl-tw) .bg-bg-card,:where(.sl-tw) .bg-bg-mid{background-color:var(--bg)}:where(.sl-tw) .bg-ev-green{background-color:rgba(120,180,120,.07)}:where(.sl-tw) .bg-ev-red{background-color:hsla(3,53%,68%,.07)}:where(.sl-tw) .bg-ev-yellow{background-color:hsla(0,0%,96%,.07)}:where(.sl-tw) .bg-transparent{background-color:transparent}:where(.sl-tw) .p-0{padding:0}:where(.sl-tw) .p-4{padding:1rem}:where(.sl-tw) .p-5{padding:1.25rem}:where(.sl-tw) .p-6{padding:1.5rem}:where(.sl-tw) .px-3{padding-left:.75rem;padding-right:.75rem}:where(.sl-tw) .px-4{padding-left:1rem;padding-right:1rem}:where(.sl-tw) .px-5{padding-left:1.25rem;padding-right:1.25rem}:where(.sl-tw) .px-6{padding-left:1.5rem;padding-right:1.5rem}:where(.sl-tw) .py-1{padding-top:.25rem;padding-bottom:.25rem}:where(.sl-tw) .py-10{padding-top:2.5rem;padding-bottom:2.5rem}:where(.sl-tw) .py-2{padding-top:.5rem;padding-bottom:.5rem}:where(.sl-tw) .py-3{padding-top:.75rem;padding-bottom:.75rem}:where(.sl-tw) .py-4{padding-top:1rem;padding-bottom:1rem}:where(.sl-tw) .py-5{padding-top:1.25rem;padding-bottom:1.25rem}:where(.sl-tw) .py-8{padding-top:2rem;padding-bottom:2rem}:where(.sl-tw) .pb-16{padding-bottom:4rem}:where(.sl-tw) .pb-2{padding-bottom:.5rem}:where(.sl-tw) .pl-3{padding-left:.75rem}:where(.sl-tw) .pl-4{padding-left:1rem}:where(.sl-tw) .pl-5{padding-left:1.25rem}:where(.sl-tw) .pr-3{padding-right:.75rem}:where(.sl-tw) .pr-4{padding-right:1rem}:where(.sl-tw) .pt-6{padding-top:1.5rem}:where(.sl-tw) .pt-8{padding-top:2rem}:where(.sl-tw) .text-left{text-align:left}:where(.sl-tw) .text-center{text-align:center}:where(.sl-tw) .align-top{vertical-align:top}:where(.sl-tw) .font-display{font-family:var(--f-sans)}:where(.sl-tw) .text-2xl{font-size:1.5rem;line-height:2rem}:where(.sl-tw) .text-3xl{font-size:1.875rem;line-height:2.25rem}:where(.sl-tw) .text-4xl{font-size:2.25rem;line-height:2.5rem}:where(.sl-tw) .text-\[0\.55rem\]{font-size:.55rem}:where(.sl-tw) .text-\[0\.65rem\]{font-size:.65rem}:where(.sl-tw) .text-\[0\.6rem\]{font-size:.6rem}:where(.sl-tw) .text-\[0\.75rem\]{font-size:.75rem}:where(.sl-tw) .text-\[0\.7rem\]{font-size:.7rem}:where(.sl-tw) .text-base{font-size:1rem;line-height:1.5rem}:where(.sl-tw) .text-lg{font-size:1.125rem;line-height:1.75rem}:where(.sl-tw) .text-sm{font-size:.875rem;line-height:1.25rem}:where(.sl-tw) .text-xl{font-size:1.25rem;line-height:1.75rem}:where(.sl-tw) .text-xs{font-size:.75rem;line-height:1rem}:where(.sl-tw) .font-extrabold{font-weight:800}:where(.sl-tw) .font-light{font-weight:300}:where(.sl-tw) .font-medium{font-weight:500}:where(.sl-tw) .font-semibold{font-weight:600}:where(.sl-tw) .uppercase{text-transform:uppercase}:where(.sl-tw) .lowercase{text-transform:lowercase}:where(.sl-tw) .italic{font-style:italic}:where(.sl-tw) .leading-relaxed{line-height:1.625}:where(.sl-tw) .leading-snug{line-height:1.375}:where(.sl-tw) .leading-tight{line-height:1.25}:where(.sl-tw) .tracking-\[0\.15em\]{letter-spacing:.15em}:where(.sl-tw) .tracking-\[0\.2em\]{letter-spacing:.2em}:where(.sl-tw) .tracking-widest{letter-spacing:.1em}:where(.sl-tw) .text-ev-green-text{--tw-text-opacity:1;color:rgb(168 210 168/var(--tw-text-opacity,1))}:where(.sl-tw) .text-ev-red-text{--tw-text-opacity:1;color:rgb(217 136 132/var(--tw-text-opacity,1))}:where(.sl-tw) .text-gold{color:var(--ink)}:where(.sl-tw) .text-text-body{color:var(--ink-body)}:where(.sl-tw) .text-text-mut{color:var(--ink-muted)}:where(.sl-tw) .text-text-pri{color:var(--ink)}:where(.sl-tw) .no-underline{text-decoration-line:none}:where(.sl-tw) .shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}:where(.sl-tw) .outline-none{outline:2px solid transparent;outline-offset:2px}:where(.sl-tw) .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:where(.sl-tw) .transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:where(.sl-tw) .hover\:border-gold:hover{border-color:var(--ink)}:where(.sl-tw) .hover\:bg-\[rgba\(245\2c 245\2c 245\2c 0\.08\)\]:hover{background-color:hsla(0,0%,96%,.08)}:where(.sl-tw) .hover\:bg-bg-mid:hover{background-color:var(--bg)}:where(.sl-tw) .hover\:text-gold:hover,:where(.sl-tw) .hover\:text-text-pri:hover{color:var(--ink)}:where(.sl-tw) .hover\:underline:hover{text-decoration-line:underline}:where(.sl-tw) .focus\:border-gold:focus{border-color:var(--ink)}:where(.sl-tw) .disabled\:cursor-not-allowed:disabled{cursor:not-allowed}:where(.sl-tw) .disabled\:border-\[rgba\(245\2c 245\2c 245\2c 0\.15\)\]:disabled{border-color:hsla(0,0%,96%,.15)}:where(.sl-tw) .disabled\:bg-transparent:disabled{background-color:transparent}:where(.sl-tw) .disabled\:text-\[rgba\(245\2c 245\2c 245\2c 0\.3\)\]:disabled{color:hsla(0,0%,96%,.3)}@media (min-width:768px){:where(.sl-tw) .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}:where(.sl-tw) .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}:where(.sl-tw) .md\:gap-6{gap:1.5rem}:where(.sl-tw) .md\:border-x{border-left-width:1px;border-right-width:1px}:where(.sl-tw) .md\:border-border-soft{border-color:var(--line)}:where(.sl-tw) .md\:p-6{padding:1.5rem}:where(.sl-tw) .md\:p-7{padding:1.75rem}:where(.sl-tw) .md\:p-8{padding:2rem}:where(.sl-tw) .md\:px-5{padding-left:1.25rem;padding-right:1.25rem}:where(.sl-tw) .md\:text-2xl{font-size:1.5rem;line-height:2rem}:where(.sl-tw) .md\:text-3xl{font-size:1.875rem;line-height:2.25rem}:where(.sl-tw) .md\:text-4xl{font-size:2.25rem;line-height:2.5rem}:where(.sl-tw) .md\:text-5xl{font-size:3rem;line-height:1}:where(.sl-tw) .md\:text-xs{font-size:.75rem;line-height:1rem}}
