/* Generated by css/themes/build.sh from src/_base.css + src/aurora.vars.css. Edit those, not this file. */
/* ===== Theme layer: loaded AFTER /css/style.css. Re-points every hard-coded colour in style.css at variables.
   Each theme sets the variables (see <name>.vars.css); this file is identical across themes. ===== */
body{font-family:var(--font);color:var(--ink);background:var(--page-bg,var(--bg));background-attachment:fixed}
a{color:var(--link)}
a:hover{color:var(--link-hover,var(--link))}
h1,h2,h3,.hero h1{color:var(--heading,var(--ink));font-family:var(--font-display,var(--font))}
.hero h1{letter-spacing:var(--h1-track,-.03em);font-weight:800}
.skip{background:var(--surface);color:var(--ink)}
header.site{background:var(--header-bg);color:var(--header-ink);border-bottom:1px solid var(--header-line);-webkit-backdrop-filter:saturate(160%) blur(12px);backdrop-filter:saturate(160%) blur(12px)}
.logo{color:var(--header-ink)}
.logo em{color:var(--brand)}
.nav-btn{color:var(--header-ink);border-color:var(--header-line-strong,var(--header-line))}
.nav-btn:hover{border-color:var(--header-ink)}
header.site nav a{color:var(--header-muted);border-radius:8px}
header.site nav a:hover,header.site nav a[aria-current="page"]{color:var(--header-ink);text-decoration:none;background:var(--nav-hover-bg)}
header.site nav a[aria-current="page"]{box-shadow:inset 0 -2px 0 var(--brand)}
@media(max-width:760px){
  header.site nav{background:var(--header-solid,var(--header-bg));border-top:1px solid var(--header-line)}
  #nav-toggle:checked + .nav-btn{border-color:var(--brand)}
}
.calc,.tile,details,.disclaimer,.callout,.stat,table,.year-links a{background:var(--surface);border-color:var(--line)}
.calc{box-shadow:var(--shadow);border-radius:var(--r)}
input,select,textarea{background:var(--input-bg);color:var(--ink);border:1px solid var(--input-border);color-scheme:var(--scheme,light)}
input:hover,select:hover{border-color:var(--input-border-hover,var(--input-border))}
.checks input{accent-color:var(--brand-strong,var(--brand))}
.checks{color:var(--muted)}
button.primary{background:var(--btn-bg);color:var(--btn-ink);box-shadow:var(--btn-shadow,none)}
button.primary:hover{background:var(--btn-hover);filter:none}
.result{border:1px solid var(--line);border-radius:14px}
.result-hero{background:var(--hero-bg);color:var(--hero-ink)}
.result-hero .kicker{color:var(--hero-kicker)}
.result-hero .big{color:var(--hero-big,var(--hero-ink));font-family:var(--font-num,inherit);font-variant-numeric:tabular-nums}
.result-hero .sub{color:var(--hero-sub)}
.metrics{background:var(--line);border:0;border-top:1px solid var(--line)}
.metric{background:var(--surface)}
.metric .val,.stat .val,td.num{font-family:var(--font-num,inherit);font-variant-numeric:tabular-nums}
.metric .val{color:var(--ink)}
.metric .val.gain{color:var(--gain)}.metric .val.loss{color:var(--loss)}
.chart-wrap{background:var(--chart-bg,var(--surface));border:0;border-top:1px solid var(--line);border-radius:0}
.ad-slot{border:1px dashed var(--ad-border);color:var(--ad-ink);background:repeating-linear-gradient(45deg,var(--ad-a),var(--ad-a) 10px,var(--ad-b) 10px,var(--ad-b) 20px);border-radius:12px}
.formula{background:var(--surface-2);color:var(--ink);border-left-color:var(--brand)}
.tile{color:var(--ink)}
.tile:hover,.tile:focus-visible{border-color:var(--tile-hover-border,var(--brand));box-shadow:var(--shadow-hover,var(--shadow))}
.tile .ex{color:var(--brand-text,var(--link))}
.crumbs a{color:var(--link)}
footer{background:var(--footer-bg);color:var(--footer-ink);border-top:1px solid var(--footer-line)}
footer a{color:var(--footer-link)}
footer a:hover{color:var(--footer-link-hover)}
th{background:var(--surface-2);color:var(--muted)}
th,td{border-bottom-color:var(--line)}
.year-links a{color:var(--ink)}
.year-links a:hover{border-color:var(--brand)}
.form-disabled input,.form-disabled textarea{background:var(--surface-2);color:var(--muted)}
.tag{color:var(--tag-ink);background:var(--tag-bg)}
.callout{border-left-color:var(--brand)}
:focus-visible{outline-color:var(--focus)}
input:focus,select:focus,textarea:focus{outline-color:var(--focus)}
::selection{background:var(--selection,rgba(127,127,127,.3))}
header.site nav .nav-more,details.all-assets{background:none}
.nav-more-menu{background:var(--surface);border-color:var(--line)}
/* Theme: Aurora — clean light UI with soft violet/blue gradients (Stripe/Linear-like); automatic dark mode */
:root{
  color-scheme:light dark;--scheme:light;
  --font:"Inter","Segoe UI Variable","Segoe UI",system-ui,-apple-system,Roboto,sans-serif;
  --bg:#f7f8fc;--page-bg:radial-gradient(900px 420px at 10% -8%,rgba(124,58,237,.12),transparent 60%),radial-gradient(800px 420px at 95% 0%,rgba(14,165,233,.12),transparent 60%),#f7f8fc;
  --card:#fff;--surface:#fff;--surface-2:#f2f4f9;
  --ink:#0f172a;--heading:#0b1222;--muted:#4a5568;
  --line:#e3e7ef;--input-bg:#fff;--input-border:#8792a6;--input-border-hover:#5b21b6;
  --link:#5b21b6;--link-hover:#4c1d95;
  --brand:#7c3aed;--brand-text:#6d28d9;--brand-strong:#7c3aed;
  --header-bg:rgba(255,255,255,.75);--header-solid:#fff;--header-ink:#0b1222;--header-muted:#3f4a5e;--header-line:#e3e7ef;--header-line-strong:#c4cbd8;--nav-hover-bg:rgba(124,58,237,.08);
  --btn-bg:linear-gradient(135deg,#6d28d9,#2563eb);--btn-hover:linear-gradient(135deg,#5b21b6,#1d4ed8);--btn-ink:#fff;--btn-shadow:0 8px 20px rgba(91,33,182,.25);
  --hero-bg:linear-gradient(135deg,#1e1b4b 0%,#312e81 45%,#1e3a8a 100%);--hero-ink:#fff;--hero-kicker:#c4b5fd;--hero-sub:#dbe2f3;--hero-big:#fff;
  --gain:#047857;--loss:#b91c1c;
  --r:16px;--shadow:0 1px 2px rgba(15,23,42,.04),0 8px 24px rgba(15,23,42,.06);--shadow-hover:0 1px 2px rgba(15,23,42,.06),0 14px 32px rgba(91,33,182,.14);
  --focus:#6d28d9;
  --ad-border:#b6bfcf;--ad-ink:#4a5568;--ad-a:#f7f8fc;--ad-b:#eef1f7;
  --tag-bg:#ede9fe;--tag-ink:#5b21b6;
  --footer-bg:#0b1222;--footer-ink:#aab4c6;--footer-line:#1e293b;--footer-link:#e2e8f0;--footer-link-hover:#c4b5fd;
  --chart-bg:#fff;--chart-grid:#eef1f6;--chart-text:#4a5568;--chart-line:#6d28d9;--chart-area:rgba(124,58,237,.12);--chart-area-top:#7c3aed;--chart-area-top-op:.38;--chart-area-bottom:#3b82f6;--chart-area-bottom-op:.02;--chart-invested:#64748b;
  --s1:#6d28d9;--s2:#b45309;--s3:#2563eb;--s4:#047857;--s5:#db2777;--s6:#0891b2;--s7:#b91c1c;--s8:#475569;
  --selection:rgba(124,58,237,.2);
}
.hero h1{background:linear-gradient(90deg,#0b1222 20%,#5b21b6 70%,#1d4ed8);-webkit-background-clip:text;background-clip:text;color:transparent}
@media (prefers-color-scheme:dark){
  :root{
    --scheme:dark;
    --bg:#0b0d17;--page-bg:radial-gradient(900px 420px at 10% -8%,rgba(124,58,237,.20),transparent 60%),radial-gradient(800px 420px at 95% 0%,rgba(14,165,233,.14),transparent 60%),#0b0d17;
    --card:#12152a;--surface:#12152a;--surface-2:#181c35;
    --ink:#e4e7f2;--heading:#f6f7fb;--muted:#a3abc2;
    --line:#232847;--input-bg:#0e1124;--input-border:#606aa3;--input-border-hover:#a78bfa;
    --link:#c4b5fd;--link-hover:#ddd6fe;
    --brand:#a78bfa;--brand-text:#c4b5fd;--brand-strong:#8b5cf6;
    --header-bg:rgba(11,13,23,.75);--header-solid:#0b0d17;--header-ink:#f6f7fb;--header-muted:#b9c0d6;--header-line:#1d2140;--header-line-strong:#3b4270;--nav-hover-bg:rgba(167,139,250,.12);
    --btn-bg:linear-gradient(135deg,#7c3aed,#2563eb);--btn-hover:linear-gradient(135deg,#6d28d9,#1d4ed8);--btn-ink:#fff;--btn-shadow:0 8px 24px rgba(139,92,246,.3);
    --hero-bg:linear-gradient(135deg,#2e1065 0%,#1e1b4b 50%,#172554 100%);
    --gain:#34d399;--loss:#fb7185;
    --shadow:0 10px 30px rgba(0,0,0,.35);--shadow-hover:0 0 0 1px rgba(167,139,250,.4),0 14px 34px rgba(0,0,0,.45);
    --focus:#c4b5fd;
    --ad-border:#3b4270;--ad-ink:#a3abc2;--ad-a:#0e1124;--ad-b:#12152a;
    --tag-bg:rgba(167,139,250,.16);--tag-ink:#ddd6fe;
    --footer-bg:#070812;--footer-ink:#a3abc2;--footer-line:#1d2140;
    --chart-bg:#10132a;--chart-grid:#20254a;--chart-text:#a3abc2;--chart-line:#c4b5fd;--chart-area:rgba(167,139,250,.18);--chart-area-top:#8b5cf6;--chart-area-top-op:.6;--chart-area-bottom:#3b82f6;--chart-area-bottom-op:.04;--chart-invested:#94a3b8;
    --s1:#a78bfa;--s2:#fbbf24;--s3:#60a5fa;--s4:#34d399;--s5:#f472b6;--s6:#22d3ee;--s7:#fb7185;--s8:#cbd5e1;
    --selection:rgba(167,139,250,.35);
  }
  .hero h1{background:linear-gradient(90deg,#f6f7fb 20%,#c4b5fd 70%,#93c5fd)}
  .hero h1{-webkit-background-clip:text;background-clip:text}
}
