:root{
  --paper:#f3f4f6; --panel:#ffffff; --panel-2:#f8f9fa; --ink:#14243a; --ink-2:#4b5869; --ink-3:#848e9c; --rule:#d8dde4; --rule-2:#eaedf1;
  --accent:#1d4f91; --accent-ink:#173f74; --accent-wash:#eaf0f8; --mark:#fbe7a1; --mark-ink:#14243a;
  --seg-off:#d8dde4; --seg-on:#1d4f91; --seg-ap:#14243a;
  --met:#18794e; --met-wash:#e3f3ea; --missed:#b42318; --missed-wash:#fbe7e5; --fda:#9a5b00; --fda-wash:#f9eedb; --neutral-wash:#edf0f3;
  --display:"IBM Plex Sans",system-ui,-apple-system,sans-serif; --body:"IBM Plex Sans",system-ui,-apple-system,sans-serif; --mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
  --rail:232px; --radius:6px;
}
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]){ --paper:#0c131c; --panel:#131c27; --panel-2:#18222f; --ink:#e5eaf1; --ink-2:#a7b2c0; --ink-3:#6d7a8a; --rule:#243041; --rule-2:#1c2736; --accent:#79a6e3; --accent-ink:#a8c5ee; --accent-wash:#16253a; --mark:rgba(240,200,80,.30); --mark-ink:#f4ead0; --seg-off:#283445; --seg-on:#79a6e3; --seg-ap:#e5eaf1; --met:#5fcf93; --met-wash:#123323; --missed:#f2867c; --missed-wash:#3b1a18; --fda:#e5b257; --fda-wash:#352812; --neutral-wash:#1d2836; color-scheme:dark } }
:root[data-theme="dark"]{ --paper:#0c131c; --panel:#131c27; --panel-2:#18222f; --ink:#e5eaf1; --ink-2:#a7b2c0; --ink-3:#6d7a8a; --rule:#243041; --rule-2:#1c2736; --accent:#79a6e3; --accent-ink:#a8c5ee; --accent-wash:#16253a; --mark:rgba(240,200,80,.30); --mark-ink:#f4ead0; --seg-off:#283445; --seg-on:#79a6e3; --seg-ap:#e5eaf1; --met:#5fcf93; --met-wash:#123323; --missed:#f2867c; --missed-wash:#3b1a18; --fda:#e5b257; --fda-wash:#352812; --neutral-wash:#1d2836; color-scheme:dark }

*{box-sizing:border-box} html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.5 var(--body)}
a{color:var(--accent-ink)} .wrap{max-width:1040px;margin:0 auto;padding:0 20px}
.mast{border-bottom:1px solid var(--rule);background:var(--panel)} .mast .wrap{display:flex;align-items:center;gap:18px;height:64px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);margin-right:auto;font:600 17px/1.05 var(--display);letter-spacing:-.015em} .brand svg{flex:none;border-radius:7px}
.mast nav{display:flex;gap:18px;font-size:14px;align-items:center;flex-wrap:wrap;justify-content:flex-end} @media (max-width:700px){.mast .wrap{height:auto;padding-top:12px;padding-bottom:12px;flex-wrap:wrap} .mast nav{gap:12px;width:100%}} .mast nav a{color:var(--ink-2);text-decoration:none} .mast nav a:hover{color:var(--ink)} .mast nav a.btn,.mast nav a.btn:hover{color:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--accent);color:#fff;border:1px solid var(--accent);border-radius:5px;padding:10px 16px;font:600 14px/1 var(--body);text-decoration:none;cursor:pointer}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--rule)} .btn.sm{padding:7px 12px;font-size:13px} .btn:disabled{opacity:.6;cursor:default}
.link-btn{background:none;border:0;color:var(--ink-2);font:inherit;cursor:pointer;text-decoration:underline}
.page{padding:40px 0 64px} .narrow{max-width:620px} .card{background:var(--panel);border:1px solid var(--rule);border-radius:6px;padding:22px}
.muted{color:var(--ink-3)} .msg{background:var(--accent-wash);color:var(--accent-ink);border-radius:5px;padding:10px 14px;margin:0} .msg.warn{background:var(--fda-wash);color:var(--fda)}
.pill{display:inline-block;border-radius:3px;padding:2px 10px;font-size:12.5px;font-weight:600;background:var(--neutral-wash);color:var(--ink-2)} .pill.g{background:var(--met-wash);color:var(--met)} .pill.a{background:var(--fda-wash);color:var(--fda)}
.foot{border-top:1px solid var(--rule);padding:22px 0;font-size:13px;color:var(--ink-3)} .foot nav{display:flex;gap:16px;flex-wrap:wrap} .foot a{color:var(--ink-3)}
.hp{position:absolute;left:-9999px} form .row{display:flex;gap:10px;margin-top:10px} form input[type=email]{width:100%;border:1px solid var(--rule);border-radius:5px;padding:10px 12px;font:inherit;background:var(--panel);color:var(--ink)} .err{color:var(--missed);font-size:13px;min-height:1em;margin:6px 0 0}
dialog.wl{border:1px solid var(--rule);border-radius:6px;padding:24px;max-width:420px;background:var(--panel);color:var(--ink)} dialog.wl::backdrop{background:rgba(0,0,0,.4)}

mark{background:var(--mark);color:var(--mark-ink);padding:0 2px;border-radius:2px}
.tk{font-family:var(--mono)}
h1,h2,h3{letter-spacing:-.015em}
