:root{color-scheme:light;--bg:#F3F5FA;--surface:#FFF;--sunk:#EBEEF4;--line:#DDE2EA;--edge:#7B838F;--ink:#0D1117;--ink-2:#4A5260;--good:#1A7437;--warn:#8A5700;--bad:#BF2530;--accent:#2748C6;--on-accent:#FFF;--c1:#2A5BD7;--c2:#D9622B;--c3:#13936A;--c4:#B98000;--c5:#C2528B;--wash:#E6EBFA;--hover:#1F3AA3;--serif:Charter,Georgia,serif;--sans:"Helvetica Neue",Helvetica,Arial,sans-serif;--display:"Helvetica Neue",Helvetica,Arial,sans-serif;--mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;--r:10px;--r-card:16px;--a-l:#2748C6;--a-d:#8FA8FF}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg:#0F1219;--surface:#171B24;--sunk:#1E232D;--line:#2A303A;--edge:#6E7785;--ink:#EEF1F5;--ink-2:#AEB6C2;--good:#5DD286;--warn:#EDBE4F;--bad:#FF8080;--accent:#8FA8FF;--on-accent:#0F1219;--wash:#1E2640;--hover:#B3C3FF;--c1:#5B86F0;--c2:#E0703C;--c3:#22A77A;--c4:#B8880F;--c5:#D2649A}}
:root[data-theme=dark]{color-scheme:dark;--bg:#0F1219;--surface:#171B24;--sunk:#1E232D;--line:#2A303A;--edge:#6E7785;--ink:#EEF1F5;--ink-2:#AEB6C2;--good:#5DD286;--warn:#EDBE4F;--bad:#FF8080;--accent:#8FA8FF;--on-accent:#0F1219;--wash:#1E2640;--hover:#B3C3FF;--c1:#5B86F0;--c2:#E0703C;--c3:#22A77A;--c4:#B8880F;--c5:#D2649A}
[hidden]{display:none!important}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 var(--sans)}
h1,h2,h3{font-family:var(--display);letter-spacing:-.03em;line-height:1.05;text-wrap:balance;margin:0}h1{font-weight:800;font-size:clamp(34px,6vw,54px)}h2{font-weight:750;font-size:25px}h3{font-weight:750;font-size:20px}h1 em,h2 em{font:italic 700 1em var(--serif);color:var(--accent)}
.num,.stat b,.row .val,.chart text,.cnum b{font-variant-numeric:tabular-nums}
.lede,.hint,.lede-sm,.foot,.lbl{color:var(--ink-2)}.lede{max-width:56ch;margin:12px 0 0}.lede-sm{margin:8px 0 0;font-size:14px}
.kick{display:inline-block;margin:0 0 8px;padding:3px 10px;border-radius:99px;background:var(--wash);color:var(--accent);font:700 12px var(--sans);letter-spacing:.08em;text-transform:uppercase}
h2:after,h3:after{content:"";display:block;width:56px;height:4px;margin-top:8px;border-radius:99px;background:var(--accent)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border-radius:var(--r);border:1px solid transparent;font:600 15px var(--sans);text-decoration:none;cursor:pointer}
.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:hover{background:var(--hover)}
.btn-secondary{background:0 0;border-color:var(--edge);color:var(--ink)}.btn-secondary:hover{border-color:var(--accent);color:var(--accent)}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0 0}
.chip{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;border:1px solid var(--edge);border-radius:99px;background:var(--sunk);color:var(--ink-2);font:600 13px var(--sans);text-decoration:none;cursor:pointer}.chip:hover{border-color:var(--accent);color:var(--accent)}
.card,.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card)}.card{box-shadow:0 12px 32px color-mix(in srgb,var(--ink) 10%,transparent)}.panel{background:var(--sunk);padding:16px}
input,select,textarea{width:100%;min-width:0;min-height:44px;padding:8px 12px;border:1px solid var(--edge);border-radius:var(--r);background:var(--surface);color:var(--ink);font:16px var(--sans)}textarea{resize:vertical}
input:focus-visible,select:focus-visible,textarea:focus-visible,.btn:focus-visible,.chip:focus-visible,.cbtn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
label,.lbl{display:block;margin-bottom:4px;font-size:13px;font-weight:600;color:var(--ink-2)}
.f{margin-bottom:12px;min-width:0}.f2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.msg{min-height:1.4em;margin:8px 0 0;color:var(--good);font-size:14px}
.counter{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;margin-bottom:12px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface)}
.cbtn{width:64px;height:64px;flex:0 0 64px;border:1px solid var(--edge);border-radius:99px;background:var(--sunk);color:var(--accent);font:700 30px/1 var(--sans);cursor:pointer}
.cbtn:hover{border-color:var(--accent);background:var(--wash)}
.cnum{text-align:center;min-width:0}.cnum b{display:block;font:800 46px/1 var(--display);color:var(--accent)}.cnum span{font-size:13px;color:var(--ink-2)}
.bar-track{height:12px;border-radius:99px;background:var(--sunk);border:1px solid var(--line);overflow:hidden;margin-bottom:12px}
.bar-fill{height:100%;width:0;background:var(--accent);transition:width .28s ease}
.rows{display:grid;gap:8px}
.row{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}
.row .nm{flex:1;min-width:0;font-weight:600;overflow-wrap:anywhere}.row .val{font:600 14px var(--mono);color:var(--ink-2)}
.row .mv{min-width:44px;min-height:44px;border:1px solid var(--edge);border-radius:8px;background:0 0;color:var(--ink-2);font:600 13px var(--sans);cursor:pointer}.row .mv:hover{color:var(--accent);border-color:var(--accent)}
.empty{padding:16px;border:1px dashed var(--edge);border-radius:var(--r);color:var(--ink-2);font-size:14px}
.spark-card{padding:16px}.spark{width:100%;height:auto;display:block}
.spark polyline{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.spark circle{fill:var(--accent)}
.chart{width:100%;height:auto;display:block;margin-top:8px}.chart .grid{stroke:var(--line)}
.chart .bar{fill:var(--c1);opacity:.5}.chart .bar.goal{fill:var(--c3);opacity:.75}
.chart polyline{fill:none;stroke:var(--c2);stroke-width:3;stroke-linejoin:round}.chart circle{fill:var(--c2);cursor:pointer}.chart circle:hover{stroke:var(--ink);stroke-width:2}
.chart text{fill:var(--ink-2);font:11px var(--mono)}
.legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:8px;font-size:13px;color:var(--ink-2)}.legend i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.vit{padding:16px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface)}
.vit .nm{font:750 18px var(--display);margin:0}.vit .why{margin:8px 0 0;font-size:14px;color:var(--ink-2)}
.vit .tagline{display:inline-block;margin-top:12px;padding:3px 10px;border-radius:99px;background:var(--wash);color:var(--accent);font:700 12px var(--sans);letter-spacing:.06em;text-transform:uppercase}
.cta-card{padding:24px}
.foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:16px 24px;border-top:1px solid var(--line);font-size:13px}
@media (max-width:600px){.f2{grid-template-columns:1fr}.foot{justify-content:center;text-align:center}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
@layer kit-default{.bar{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 24px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(8px)}
.brand{display:flex;align-items:center;gap:8px;color:var(--accent);font-size:18px}.brand b{color:var(--ink);letter-spacing:-.02em}.bar-c{display:flex;flex-wrap:wrap;gap:8px}
main[data-main]{max-width:1200px;margin:0 auto;padding:24px 16px 64px;display:grid;gap:48px}
.hero{display:grid;gap:24px;align-items:center}@media (min-width:900px){.hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.stat{padding:12px 16px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface);text-align:right}
.stat b{display:block;font:700 24px var(--mono);color:var(--accent)}.stat span{font-size:12px;color:var(--ink-2);text-transform:uppercase;letter-spacing:.06em}
.cols{display:grid;gap:16px;margin-top:16px}@media (min-width:900px){.cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}}
.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));margin-top:16px}
@media (max-width:600px){.stats{grid-template-columns:repeat(2,1fr)}.bar{flex-wrap:wrap;row-gap:8px}}}
@media (prefers-color-scheme:light){:root:not([data-theme=dark]) p#kicker.kick{color:#2748c6!important}:root:not([data-theme=dark]) p#spark-kicker.kick{color:#2748c6!important}:root:not([data-theme=dark]) span.tagline{color:#2748c6!important}}

/* tap-targets: comfortable phone taps -- the sizes win on phones, the page's own layout stays */
@media (max-width: 600px) {
  a[href]:not(p a, li p a, blockquote a, figcaption a, td a, dd a, label a), button, [role=button], [onclick], summary, select, input:not([type=hidden], [type=checkbox], [type=radio], [type=range]) { min-height: 44px !important; min-width: 44px !important; }
  :where(a[href]:not(p a, li p a, blockquote a, figcaption a, td a, dd a, label a)) { display: inline-flex; align-items: center; justify-content: center; }
  input, select, textarea { font-size: max(16px, 1em) !important; }
}
