:root{--paper:#FBFAF5;--card:#FFFFFF;--ink:#122B54;--ink-soft:#4A5B7C;--pen:#1565C0;--pen-deep:#0E4C93;--brand:#1565C0;--pen-tint:#E3EEFB;--rule:#DCE6F2;--margin:#DA7A74;--hilite:#FFD84D;--hilite-ink:#1B2E56;--good:#2E9E5B;--bad:#D64545;--chip:#EFF4FB;--shadow:0 18px 50px -18px rgba(18,43,84,.25);--nav-bg:rgba(251,250,245,.85);--ring:rgba(21,101,192,.35)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#0B182E;--card:#13233F;--ink:#E8EFFA;--ink-soft:#9FB2CF;--pen:#5E9EEA;--pen-deep:#7FB4F2;--pen-tint:#1A2E4E;--rule:rgba(126,164,220,.16);--margin:#B96762;--hilite:#F2C43C;--hilite-ink:#132B54;--good:#4CC07E;--bad:#E4706E;--chip:#1B2D4C;--shadow:0 18px 50px -18px rgba(0,0,0,.55);--nav-bg:rgba(11,24,46,.85);--ring:rgba(126,164,220,.45)}}:root[data-theme=dark]{--paper:#0B182E;--card:#13233F;--ink:#E8EFFA;--ink-soft:#9FB2CF;--pen:#5E9EEA;--pen-deep:#7FB4F2;--pen-tint:#1A2E4E;--rule:rgba(126,164,220,.16);--margin:#B96762;--hilite:#F2C43C;--hilite-ink:#132B54;--good:#4CC07E;--bad:#E4706E;--chip:#1B2D4C;--shadow:0 18px 50px -18px rgba(0,0,0,.55);--nav-bg:rgba(11,24,46,.85);--ring:rgba(126,164,220,.45)}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}.display,h1,h2,h3{font-family:ui-rounded,SF Pro Rounded,Hiragino Maru Gothic ProN,Arial Rounded MT Bold,Trebuchet MS,system-ui,sans-serif;line-height:1.12;margin:0;text-wrap:balance;letter-spacing:-.01em}a{color:var(--pen)}:focus-visible{outline:3px solid var(--ring);outline-offset:3px;border-radius:6px}.container{max-width:1100px;margin:0 auto;padding:0 24px}.eyebrow{font-size:.99rem;letter-spacing:.14em;text-transform:uppercase;color:var(--pen);margin:0 0 14px}.btn,.eyebrow{font-weight:700}.btn{display:inline-flex;align-items:center;gap:8px;background:var(--brand);color:#fff;text-decoration:none;font-size:.95rem;padding:10px 20px;border-radius:999px;border:none;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;-webkit-text-decoration:#2E9E5B;text-decoration:#2E9E5B}.btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px -8px var(--brand)}.store-badge{display:inline-flex;align-items:center;gap:10px;background:#101418;color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.18);padding:9px 18px 9px 14px;border-radius:12px;min-width:158px;transition:transform .15s ease}.store-badge:hover{transform:translateY(-1px)}.store-badge svg{width:26px;height:26px;flex:none}.store-badge .lines{display:flex;flex-direction:column;line-height:1.15}.store-badge .tiny{font-size:.62rem;letter-spacing:.06em;text-transform:uppercase;opacity:.8}.store-badge .big{font-size:1.02rem;font-weight:700;font-family:ui-rounded,Arial Rounded MT Bold,Trebuchet MS,sans-serif}.cta-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.browser-link{font-weight:600;font-size:.95rem}.section{padding:84px 0}.section-head{max-width:620px;margin-bottom:44px}.section-head h2{font-size:clamp(1.7rem,3.4vw,2.4rem);font-weight:800}.section-head p{color:var(--ink-soft);margin:12px 0 0}.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}.reveal.on{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}.prose{max-width:720px;margin:0 auto;padding:96px 24px 64px}.prose h1{font-size:clamp(2rem,4vw,2.8rem);font-weight:800;margin-bottom:8px}.prose .updated{color:var(--ink-soft);font-size:.9rem;margin-bottom:36px}.prose h2{font-size:1.3rem;font-weight:800;margin:36px 0 10px}.prose h3{font-size:1.05rem;font-weight:700;margin:24px 0 6px}.prose li,.prose p{color:var(--ink-soft)}.prose a{font-weight:600}.prose ul{padding-left:1.2em}.prose li{margin:6px 0}.prose hr{border:none;border-top:1px solid var(--rule);margin:40px 0}.prose .lead{font-size:1.1rem;color:var(--ink)}.backlink{display:inline-flex;align-items:center;gap:6px;color:var(--ink-soft);text-decoration:none;font-weight:600;font-size:.9rem;margin-bottom:28px}.backlink:hover{color:var(--pen)}