:root,html[data-theme=paper]{--bg: oklch(.985 .008 80);--bg-tint: oklch(.965 .012 80);--ink: oklch(.18 .012 60);--ink-2: oklch(.3 .012 60);--muted: oklch(.5 .012 60);--hairline: oklch(.88 .01 80);--hairline-strong: oklch(.78 .012 80);--accent: oklch(.62 .2 32);--accent-ink: oklch(.98 .005 80);--selection: oklch(.85 .14 32 / .45)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}html{background:var(--bg);color:var(--ink);font-family:Geist,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:17px;line-height:1.55;font-feature-settings:"ss01","ss02","cv11";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;scroll-behavior:smooth}::selection{background:var(--selection)}body{min-height:100vh;overflow-x:hidden}a{color:inherit;text-decoration:none;text-underline-offset:3px;transition:color .15s ease,opacity .15s ease}a:hover{color:var(--accent)}p{margin:0}ul,ol{margin:0;padding:0;list-style:none}img{max-width:100%;display:block}.wrap{max-width:1240px;margin:0 auto;padding:0 32px}@media (max-width: 540px){.wrap{padding:0 20px}}.mono{font-family:Geist Mono,ui-monospace,SF Mono,Menlo,monospace;font-feature-settings:"ss01","ss02"}.eyebrow{font-family:Geist Mono,ui-monospace,monospace;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);display:inline-flex;align-items:center;gap:8px}.eyebrow:before{content:"";width:18px;height:1px;background:var(--hairline-strong)}h1,h2,h3,h4{margin:0;font-weight:500;letter-spacing:-.02em}.lede{font-size:clamp(18px,1.4vw,22px);line-height:1.5;color:var(--ink-2);text-wrap:pretty;max-width:62ch}.body{font-size:17px;line-height:1.6;color:var(--ink-2);text-wrap:pretty}.small{font-size:14px;color:var(--muted)}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border:1px solid var(--hairline-strong);border-radius:999px;font-size:14.5px;font-weight:500;color:var(--ink);background:transparent;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.btn:hover{background:var(--bg-tint);color:var(--ink);border-color:var(--ink)}.btn.primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}.btn.primary:hover{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn .arrow{transition:transform .2s ease}.btn:hover .arrow{transform:translate(3px)}.arrow{width:14px;height:14px;display:inline-block;vertical-align:-1px}.site-footer{border-top:1px solid var(--hairline);padding:56px 0 40px}.site-footer .grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:56px}.site-footer h4{font-family:Geist Mono,monospace;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:14px;font-weight:500}.site-footer ul li{padding:4px 0}.site-footer ul li a{color:var(--ink-2);font-size:14.5px}.site-footer .meta{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--muted);padding-top:24px;border-top:1px solid var(--hairline)}@media (max-width: 820px){.site-footer .grid{grid-template-columns:1fr 1fr}}.reveal{opacity:0;transform:translateY(10px);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1)}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion: reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}.acc-body{transition:none!important}}.progress-track{position:fixed;top:0;left:0;right:0;height:2px;z-index:60;pointer-events:none}.progress-track .bar{height:100%;background:var(--accent);transform-origin:0 50%;transform:scaleX(0)}.page-hero{padding:clamp(48px,7vh,88px) 0 48px}.back-link{font-family:Geist Mono,monospace;font-size:12.5px;color:var(--muted);display:inline-block;margin-bottom:28px}.page-hero h1{font-size:clamp(34px,4.6vw,64px);line-height:1.04;letter-spacing:-.03em;text-wrap:balance;margin-top:16px;max-width:22ch}.hero-meta{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:28px;font-family:Geist Mono,monospace;font-size:12px;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}.glance{border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);padding:40px 0}.glance-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}@media (max-width: 820px){.glance-grid{grid-template-columns:1fr;gap:32px}}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:20px;background:var(--bg-tint);border-radius:4px}@media (max-width: 540px){.metrics{grid-template-columns:1fr}}.metrics .m .v{font-size:26px;font-weight:500;letter-spacing:-.02em;color:var(--ink);display:block}.metrics .m .k{font-size:13px;color:var(--muted);line-height:1.45;display:block;margin-top:6px}.lessons{border-left:2px solid var(--accent);padding:6px 0 6px 18px;font-size:15px;color:var(--ink);line-height:1.55;font-style:italic;max-width:52ch}.lessons:before{content:"Lesson, today";display:block;font-style:normal;color:var(--muted);font-family:Geist Mono,monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px}.quote-band{padding:48px 0;border-bottom:1px solid var(--hairline)}.quote-band blockquote{margin:0;font-size:clamp(18px,1.8vw,23px);line-height:1.5;letter-spacing:-.01em;color:var(--ink);max-width:56ch;text-wrap:pretty}.quote-band cite{display:block;margin-top:18px;font-style:normal;font-size:14px;color:var(--muted)}.content-zone{padding:56px 0 80px}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 264px;gap:64px;align-items:start}@media (max-width: 1000px){.content-grid{grid-template-columns:minmax(0,1fr)}.toc-aside{display:none}}.read-controls{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:18px}.read-controls .hint{font-family:Geist Mono,monospace;font-size:11.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.ctrl-btn{font-family:Geist Mono,monospace;font-size:11.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);background:transparent;border:1px solid var(--hairline-strong);border-radius:999px;padding:7px 14px;cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease;white-space:nowrap}.ctrl-btn:hover{border-color:var(--ink);color:var(--ink);background:var(--bg-tint)}.toc-aside{position:sticky;top:88px}.toc-title{font-family:Geist Mono,monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}.toc a{display:block;padding:6px 0 6px 14px;font-size:13.5px;line-height:1.4;color:var(--muted);border-left:1px solid var(--hairline);transition:color .15s ease,border-color .15s ease}.toc a:hover{color:var(--ink)}.toc a.active{color:var(--ink);border-left-color:var(--accent)}.toc .toc-foot{margin-top:18px}.acc{border-top:1px solid var(--hairline);scroll-margin-top:84px}.acc:last-child{border-bottom:1px solid var(--hairline)}.acc-head{width:100%;display:flex;align-items:baseline;gap:16px;padding:20px 0;background:none;border:none;cursor:pointer;text-align:left;font:inherit;color:var(--ink)}.acc-num{font-family:Geist Mono,monospace;font-size:12px;color:var(--muted);flex-shrink:0}.acc-title{flex:1;font-size:clamp(18px,2vw,23px);font-weight:500;letter-spacing:-.02em;line-height:1.2;text-wrap:balance}.acc-head:hover .acc-title{color:var(--accent)}.acc-mins{font-family:Geist Mono,monospace;font-size:11.5px;letter-spacing:.03em;text-transform:uppercase;color:var(--muted);flex-shrink:0;white-space:nowrap}.acc-chev{width:14px;height:14px;flex-shrink:0;align-self:center;color:var(--muted);transition:transform .25s ease}.acc.open .acc-chev{transform:rotate(180deg)}.acc-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s cubic-bezier(.2,.7,.2,1)}.acc.open .acc-body{grid-template-rows:1fr}.acc-inner{overflow:hidden;min-width:0}.acc-inner>:last-child{margin-bottom:32px}.prose{font-size:16.5px;line-height:1.65;color:var(--ink-2)}.prose h2{font-size:clamp(22px,2.4vw,28px);color:var(--ink);margin:40px 0 12px}.prose h3{font-size:19px;color:var(--ink);margin:30px 0 8px;letter-spacing:-.015em}.prose h4{font-size:16.5px;color:var(--ink);margin:24px 0 6px}.prose p{margin:13px 0;text-wrap:pretty}.prose ul,.prose ol{margin:13px 0;padding-left:24px}.prose ul{list-style:disc}.prose ol{list-style:decimal}.prose ul ul{list-style:circle;margin:4px 0}.prose li{margin:5px 0}.prose li::marker{color:var(--muted)}.prose strong{color:var(--ink);font-weight:600}.prose a{color:var(--accent);text-decoration:underline;text-decoration-color:color-mix(in oklch,var(--accent) 40%,transparent)}.prose a:hover{text-decoration-color:var(--accent)}.prose blockquote{margin:18px 0;border-left:2px solid var(--accent);padding:4px 0 4px 18px;color:var(--ink)}.prose code{font-family:Geist Mono,ui-monospace,SF Mono,Menlo,monospace;font-size:.86em}.prose :not(pre)>code{background:var(--bg-tint);border:1px solid var(--hairline);border-radius:4px;padding:1px 5px;color:var(--ink);white-space:nowrap}.prose pre{margin:18px 0;padding:18px;border-radius:8px;border:1px solid var(--hairline);overflow-x:auto;font-size:13.5px;line-height:1.55}.prose img{border:1px solid var(--hairline);border-radius:8px;margin:22px 0}.prose hr{border:none;border-top:1px solid var(--hairline);margin:32px 0}.prose table{width:100%;border-collapse:collapse;margin:18px 0;font-size:14.5px;display:block;overflow-x:auto}.prose th{font-family:Geist Mono,monospace;font-size:11.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-weight:500;text-align:left;padding:10px 14px 10px 0;border-bottom:1px solid var(--hairline-strong)}.prose td{padding:10px 14px 10px 0;border-bottom:1px solid var(--hairline);vertical-align:top}.mermaid-diagram{background:#fff;border:1px solid var(--hairline);border-radius:8px;padding:18px;margin:22px 0;overflow-x:auto}.mermaid-diagram svg{max-width:100%;height:auto}.acc-inner>hr:first-child,.acc-inner>hr:last-child,.prose>hr:last-child{display:none}.end-cta{border-top:1px solid var(--hairline);padding:56px 0}.end-cta .row{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end}@media (max-width: 820px){.end-cta .row{grid-template-columns:1fr;align-items:start}}.end-cta h2{font-size:clamp(28px,3.6vw,44px);line-height:1.05;letter-spacing:-.025em;text-wrap:balance}
