:root{--paper:#faf9fc;--ink:#1a1c1e;--ink-muted:#43474e;--rule:#e2e2e5;--rule-strong:#c3c6cf;--primary:#10385c;--secondary:#466461;--sandy-gold:#e3d1ac;--stamp-done:#466461;--stamp-progress:#2c4f74;--stamp-planned:#73777f;--font-mono:"IBM Plex Mono", ui-monospace, "Cascadia Code", Menlo, Consolas, monospace;--font-serif:"Source Serif 4", Georgia, "Times New Roman", serif;--space-3xs:.25rem;--space-2xs:.5rem;--space-xs:.75rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2rem;--space-xl:3rem;--space-2xl:4rem;--space-3xl:6rem;--gutter:clamp(1.25rem, 4vw, 1.5rem);--section-py:clamp(3rem, 7vw, 5rem);--section-py-lg:clamp(3.5rem, 8vw, 6.5rem);--text-h1:clamp(2.3rem, 5vw, 3.5rem);--text-h2:clamp(1.6rem, 3.2vw, 2.2rem);--text-h3:1.25rem;--text-body-lg:1.1rem;--text-body:1rem;--text-small:.85rem;--text-micro:.75rem;--surface:#faf9fc;--surface-container:#eeedf1;--surface-container-low:#f4f3f7;--surface-container-high:#e8e8eb;--surface-container-highest:#e2e2e5;--outline-variant:#c3c6cf;--on-surface:#1a1c1e;--on-surface-variant:#43474e;--primary-blue:#2c4f74}:root[data-theme=dark]{--paper:#14161a;--ink:#eceef1;--ink-muted:#a7acb5;--rule:#2b2e34;--rule-strong:#3d4149;--primary:#7fb2e0;--secondary:#8fc9c1;--sandy-gold:#e3d1ac;--stamp-done:#7fb99a;--stamp-progress:#6fa8d8;--stamp-planned:#8b8f97;--surface:#14161a;--surface-container:#1d2025;--surface-container-low:#191c21;--surface-container-high:#24272d;--surface-container-highest:#2b2e34;--outline-variant:#3d4149;--on-surface:#eceef1;--on-surface-variant:#a7acb5;--primary-blue:#6fa8d8}*{box-sizing:border-box}html,body{width:100%;min-height:100%;margin:0}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-serif);-webkit-font-smoothing:antialiased;transition:background-color .2s,color .2s}a{color:inherit}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}html{scroll-behavior:auto}}.chip{line-height:1;font-size:var(--text-micro);background:var(--surface-container-high,var(--rule));color:var(--on-surface-variant,var(--ink-muted));border:1px solid var(--outline-variant,var(--rule));border-radius:999px;align-items:center;padding:.35rem .7rem;display:inline-flex}.chip-outline{background:var(--surface-container-low,transparent)}.chip-outline em{opacity:.8;margin-left:.3rem;font-size:.85em;font-style:normal}.site-nav{z-index:50;background:var(--paper);border-bottom:1px solid var(--rule);align-items:center;gap:2rem;padding:1.15rem clamp(1.25rem,4vw,3rem);transition:padding .2s,border-color .2s,box-shadow .2s;display:flex;position:sticky;top:0}.site-nav.is-compact{border-bottom-color:var(--rule-strong);padding-top:.7rem;padding-bottom:.7rem;box-shadow:0 8px 20px -16px #00000059}.site-nav .brand{font-family:var(--font-mono);letter-spacing:.01em;font-size:.95rem;font-weight:700;text-decoration:none}.site-nav .brand span{color:var(--ink-muted);font-weight:400}.site-nav ul{flex:1;gap:1.5rem;margin:0;padding:0;list-style:none;display:flex}.site-nav ul a{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);border-bottom:1px solid #0000;padding-bottom:.3rem;font-size:.78rem;text-decoration:none;transition:color .15s,border-color .15s}.site-nav ul a:hover{color:var(--ink)}.site-nav ul a[aria-current=page]{color:var(--ink);border-bottom-color:var(--stamp-progress)}.site-nav ul a.nav-cta{color:var(--paper);background:var(--primary);border-bottom:none;border-radius:999px;padding:.45rem .9rem}.site-nav ul a.nav-cta:hover{color:var(--paper);background:var(--secondary)}.site-nav ul a.nav-cta[aria-current=page]{color:var(--paper)}.site-nav .login-link{font-family:var(--font-mono);letter-spacing:.05em;color:var(--ink-muted);white-space:nowrap;font-size:.78rem;text-decoration:none}.site-nav .login-link:hover{color:var(--ink)}.theme-toggle{border:1px solid var(--rule);width:2rem;height:2rem;color:var(--ink-muted);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:color .15s,border-color .15s,background-color .15s;display:inline-flex}.theme-toggle:hover{color:var(--ink);border-color:var(--rule-strong)}.theme-toggle svg{width:1.1rem;height:1.1rem}.theme-toggle .icon-moon,:root[data-theme=dark] .theme-toggle .icon-sun{display:none}:root[data-theme=dark] .theme-toggle .icon-moon{display:block}@media (width<=640px){.site-nav{flex-wrap:wrap;gap:.75rem 1.25rem}.site-nav ul{flex-basis:100%;order:3;gap:1.1rem}}
