:root{--bg:#0f0f0f;--surface:#1a1a1a;--surface-2:#232323;--line:#2e2e2e;--line-strong:#3a3a3a;--ink:#ffffff;--muted:#a3a3a3;--accent:#dafa9c;--accent-ink:#0f0f0f;--field-1:#ffffff;--field-1-ink:#0f0f0f;--field-1-muted:#555555;--field-2:#dafa9c;--field-2-ink:#0f0f0f;--ok:#dafa9c;--warn:#f5c76b;--bad:#ff8f80;--font-display:"League Spartan",system-ui,sans-serif;--font-text:"Figtree",system-ui,sans-serif;--font-code:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--step-small:clamp(0.8125rem,0.79rem + 0.1vw,0.875rem);--step-body:clamp(1.0625rem,1rem + 0.25vw,1.1875rem);--step-lead:clamp(1.25rem,1.1rem + 0.7vw,1.625rem);--step-head:clamp(2rem,1.3rem + 3.2vw,4rem);--step-display:clamp(2.75rem,0.9rem + 4.9vw,5.5rem);--margin:clamp(16px,2.8vw,40px);--gap:clamp(16px,2vw,28px);--section:clamp(96px,10vw,168px);--radius:0px;--ease-out:cubic-bezier(0.23,1,0.32,1);--ease-in-out:cubic-bezier(0.77,0,0.175,1)}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-text);font-size:var(--step-body);line-height:1.5;-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 0}canvas,img,svg{display:block;max-width:100%}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--accent)}::selection{background:var(--accent);color:var(--accent-ink)}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}button,input,select,textarea{font:inherit;color:inherit}code,kbd,pre{font-family:var(--font-code);font-size:.92em}.num,.tabular,td.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}h1,h2,h3{font-family:var(--font-display);font-weight:700;letter-spacing:-.04em;line-height:.92;margin:0;text-wrap:balance}h1{font-size:var(--step-display)}h2{font-size:var(--step-head)}h3{font-size:var(--step-lead);letter-spacing:-.02em;line-height:1.05}p{margin:0;text-wrap:pretty}.lead{font-size:var(--step-lead);line-height:1.35;max-width:40ch}.muted{color:var(--muted)}.small{font-size:var(--step-small)}.wrap{width:100%;max-width:1440px;margin:0 auto;padding:0 var(--margin)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;background:var(--accent);border:0;border-radius:var(--radius);font-weight:600;font-size:var(--step-body);text-decoration:none;cursor:pointer;transition:transform .16s var(--ease-out),background-color .16s ease}.btn,.btn:hover{color:var(--accent-ink)}.btn:hover{background:#e8ffbd}.btn:active{transform:scale(.97)}.btn[disabled]{opacity:.5;cursor:not-allowed}.btn.ink{background:var(--ink);color:var(--bg)}.btn.ink:hover{background:#e6e6e6;color:var(--bg)}.btn.quiet{background:var(--surface-2);color:var(--ink)}.btn.quiet:hover{background:#2c2c2c;color:var(--ink)}.btn.sm{min-height:38px;padding:0 14px;font-size:var(--step-small)}.btn.danger{background:#3a1d1a;color:var(--bad)}.inf-list{list-style:none;padding:0;margin:0;display:grid;grid-gap:10px;gap:10px}.inf-list li{display:grid;grid-template-columns:26px 1fr;align-items:baseline;grid-gap:10px;gap:10px}.inf-list li:before{content:"";width:22px;height:11px;transform:translateY(1px);background:var(--accent);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 22'%3E%3Cpath d='M22 11c-4-6-8-9-12-9a9 9 0 0 0 0 18c4 0 8-3 12-9zm0 0c4 6 8 9 12 9a9 9 0 0 0 0-18c-4 0-8 3-12 9z' fill='none' stroke='black' stroke-width='4'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 22'%3E%3Cpath d='M22 11c-4-6-8-9-12-9a9 9 0 0 0 0 18c4 0 8-3 12-9zm0 0c4 6 8 9 12 9a9 9 0 0 0 0-18c-4 0-8 3-12 9z' fill='none' stroke='black' stroke-width='4'/%3E%3C/svg%3E") center/contain no-repeat}.field-1 .inf-list li:before,.field-2 .inf-list li:before{background:var(--bg)}.loader{width:44px;height:22px}.loader path{stroke:var(--accent);stroke-width:3;fill:none;stroke-dasharray:30 70;animation:loop 1.1s linear infinite}@keyframes loop{to{stroke-dashoffset:-100}}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:40;background:var(--bg)}.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px}.wordmark{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;font-family:var(--font-display);font-weight:700;font-size:24px;letter-spacing:-.04em;text-decoration:none;color:var(--ink)}.wordmark svg{width:38px;height:19px}.wordmark:hover{color:var(--ink)}.site-nav{display:flex;align-items:center;gap:clamp(14px,2vw,30px);font-size:var(--step-body)}.site-nav a{text-decoration:none;color:var(--ink)}.site-nav a.btn,.site-nav a.btn:hover{color:var(--accent-ink)}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--accent)}.nav-search{display:inline-flex;align-items:center;gap:10px;min-height:40px;padding:0 12px;background:var(--surface);border:0;color:var(--muted);cursor:pointer;font-size:var(--step-small);transition:transform .16s var(--ease-out)}.nav-search:active{transform:scale(.97)}.nav-search kbd{color:var(--ink);background:var(--surface-2);padding:1px 6px;font-size:13px}.nav-toggle{display:none}@media (max-width:860px){.site-nav .hide-sm{display:none}.wordmark{font-size:20px}.site-nav{gap:8px}.nav-toggle{display:inline-flex}}.palette{position:fixed;inset:0;z-index:100;display:grid;place-items:start center;padding:10vh 16px 16px;background:rgba(0,0,0,.6)}.palette-box{width:min(680px,100%);background:var(--surface);box-shadow:0 24px 64px rgba(0,0,0,.5);animation:pop .18s var(--ease-out);transform-origin:top center}@keyframes pop{0%{opacity:0;transform:scale(.97) translateY(-6px)}}.palette input{width:100%;height:60px;padding:0 20px;background:transparent;border:0;border-bottom:1px solid var(--line);font-size:19px;outline:none}.palette ul{list-style:none;margin:0;padding:8px;max-height:60vh;overflow:auto}.palette li a{display:grid;grid-template-columns:1fr auto;grid-gap:4px 16px;gap:4px 16px;padding:12px 14px;text-decoration:none;color:var(--ink)}.palette li a small{color:var(--muted);font-size:14px}.palette li a .grp{grid-row:span 2;align-self:center;font-size:13px;color:var(--muted)}.palette li[aria-selected=true] a{background:var(--accent);color:var(--accent-ink)}.palette li[aria-selected=true] a .grp,.palette li[aria-selected=true] a small{color:var(--accent-ink)}.palette .empty{padding:20px;color:var(--muted)}.hero{min-height:min(100svh,980px);display:grid;grid-template-columns:repeat(12,1fr);grid-column-gap:var(--gap);column-gap:var(--gap);padding:0 var(--margin);overflow:hidden}.hero,.hero-copy{position:relative}.hero-copy{grid-column:1/span 6;padding-top:clamp(48px,9vh,120px);z-index:2}.hero-copy h1{font-size:var(--step-display);max-width:none}.hero-copy .lead{margin-top:28px;max-width:34ch}.hero-copy .actions{margin-top:32px;display:flex;gap:12px;flex-wrap:wrap}.hero-live{margin-top:40px;max-width:30ch;color:var(--muted)}@media (min-width:861px){.hero-copy{grid-column:1/span 4}.hero-copy h1{white-space:nowrap}}.stage{position:absolute;left:calc(100% / 12 * 4.2);right:0;top:38%;bottom:0;background:var(--accent);color:var(--accent-ink)}.stage-notch{position:absolute;left:0;top:0;width:clamp(120px,12vw,190px);aspect-ratio:1;border-radius:0 0 100% 0;background:var(--bg);z-index:1}.stage .loopmap{position:absolute;inset:0}.stage-caption{position:absolute;right:var(--margin);bottom:18px;font-size:var(--step-small);color:var(--accent-ink);z-index:3}@media (max-width:860px){.hero{display:block;min-height:auto;padding-bottom:0}.hero-copy{padding-top:32px}.hero-copy h1{font-size:11vw}.stage{position:relative;left:calc(-1 * var(--margin));right:auto;top:auto;width:calc(100% + 2 * var(--margin));height:78svh;margin-top:40px}.stage-notch{width:96px}}.shutter{-webkit-clip-path:inset(0 0 0 100%);clip-path:inset(0 0 0 100%);animation:shutter 1.1s var(--ease-in-out) .15s forwards}@keyframes shutter{to{-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0)}}.loopmap{position:relative;touch-action:pan-y;cursor:-webkit-grab;cursor:grab}.loopmap:active{cursor:-webkit-grabbing;cursor:grabbing}.loopmap canvas{position:absolute;inset:0;width:100%!important;height:100%!important}.loopmap .labels{position:absolute;inset:0;pointer-events:none}.station{position:absolute;left:0;top:0;pointer-events:auto;text-decoration:none;display:grid;grid-gap:2px;gap:2px;padding:10px 14px 12px;min-width:150px;background:var(--bg);color:var(--ink);transition:transform .2s var(--ease-out),background-color .16s ease;will-change:transform}.station.is-hot,.station:focus-visible,.station:hover{background:var(--ink);color:var(--bg)}.station strong{font-family:var(--font-display);font-size:var(--step-lead);letter-spacing:-.03em;line-height:1}.station span{font-size:var(--step-small);color:var(--muted)}.station.is-hot span,.station:hover span{color:#444}.station.off span{color:var(--muted)}.loopmap.fallback .labels{position:static;display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));grid-gap:8px;gap:8px;padding:72px 24px 24px}.loopmap.fallback .station{position:static;transform:none!important}.loopmap .hint{position:absolute;left:20px;bottom:16px;font-size:var(--step-small);color:var(--accent-ink)}.loopmap.dark .station{background:var(--surface-2)}.loopmap.dark .hint{color:var(--muted)}.loopmap.compact canvas{top:64px!important;height:calc(100% - 64px - 120px)!important}.loopmap.compact .labels{position:absolute;inset:auto 0 0 0;height:120px;display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px;padding:0 12px 12px;align-content:end;pointer-events:auto}.loopmap.compact .station{position:static;transform:none!important;min-width:0;padding:8px 12px}.loopmap.compact .station strong{font-size:18px}.loopmap.dense .station{min-width:0;padding:6px 10px}.loopmap.dense .station strong{font-size:16px}.loopmap.dense .station span{display:none}.loopmap.dense.compact .labels{grid-template-columns:repeat(4,1fr)}@media (max-width:760px){table.t td,table.t th{white-space:nowrap}.row-actions{flex-wrap:nowrap}}.section{padding:var(--section) 0}.field-1{background:var(--field-1);color:var(--field-1-ink)}.field-1 .muted{color:var(--field-1-muted)}.field-2{background:var(--field-2);color:var(--field-2-ink)}.split{display:grid;grid-template-columns:repeat(12,1fr);grid-column-gap:var(--gap);column-gap:var(--gap)}.showcase{min-height:88svh;display:grid;grid-template-columns:1fr 1fr}.showcase .plate{display:grid;place-items:center;padding:40px}.showcase .plate>[data-ui]{width:100%;aspect-ratio:1}.showcase .side{display:flex;flex-direction:column;justify-content:space-between;padding:40px var(--margin) 40px 40px;gap:48px}.tabs{display:flex;gap:28px;font-size:var(--step-body)}.tabs button{background:none;border:0;padding:0;cursor:pointer;color:var(--field-1-muted);font-weight:600}.tabs button[aria-selected=true]{color:var(--field-1-ink);text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:8px}.showcase h2{font-size:var(--step-head)}.showcase .desc{margin-top:48px;max-width:34ch}.cells{display:grid;grid-template-columns:1fr 1fr}.cells a{display:flex;align-items:center;padding:0 22px;min-height:72px;text-decoration:none;font-weight:600;transition:transform .16s var(--ease-out)}.cells a:active{transform:scale(.98)}.cells a.ink{background:var(--field-1-ink);color:var(--field-1)}.cells a.tone{background:#e9e9e9;color:var(--field-1-ink)}@media (max-width:860px){.showcase{grid-template-columns:1fr}.showcase .plate{padding:16px}.showcase .side{padding:24px var(--margin) 48px}.cells{grid-template-columns:1fr}}.ui{background:var(--bg);color:var(--ink);font-size:15px;flex-direction:column;overflow:hidden}.ui,.ui-bar{display:flex}.ui-bar{justify-content:space-between;align-items:center;padding:14px 18px;background:var(--surface);font-size:14px}.ui-bar b{font-weight:600}.ui pre{margin:0;padding:18px;white-space:pre-wrap;word-break:break-word;line-height:1.55;font-size:14px;flex:1 1;overflow:hidden}.ui .k{color:var(--accent)}.ui .s{color:#cfcfcf}.ui .c{color:var(--muted)}.ui-split{display:grid;grid-template-rows:1fr auto;flex:1 1}.ui-resp{background:var(--surface);padding:16px 18px;margin:0;flex:none!important;font-family:var(--font-code);font-size:13.5px;line-height:1.5;white-space:pre-wrap}.pill{display:inline-flex;align-items:center;height:22px;padding:0 8px;font-size:13px;font-weight:600;background:rgba(218,250,156,.16);color:var(--accent)}.pill.gray{background:#2a2a2a;color:#cfcfcf}.pill.bad{background:rgba(255,143,128,.14);color:var(--bad)}.pill.warn{background:rgba(245,199,107,.14);color:var(--warn)}.stages h2{font-size:var(--step-display);max-width:12ch;margin-bottom:64px}.bar{display:flex;gap:6px;min-height:max(22vh,240px)}.bar.reveal>*{transform:scaleY(.6);transform-origin:bottom}.bar.reveal.in>*{transform:none}.bar>div{min-width:12%;display:flex;flex-direction:column;justify-content:space-between;padding:20px;color:var(--accent-ink)}.bar .dur{font-family:var(--font-display);font-weight:700;font-size:var(--step-lead);letter-spacing:-.02em;line-height:1}.bar-notes{display:flex;gap:6px;margin-top:18px}.bar-notes p{min-width:12%;font-size:var(--step-body);max-width:22ch}@media (max-width:860px){.stages h2{font-size:11vw}.bar,.bar-notes{flex-direction:column}.bar>div{min-height:96px;flex:none!important}.bar-notes{display:none}.bar .note-sm{display:block;font-size:16px;margin-top:10px;max-width:30ch}}.bar .note-sm{display:none}.calc{min-height:88svh;display:flex;flex-direction:column;justify-content:space-between;gap:64px}.calc h2{font-size:var(--step-head);max-width:18ch}.calc-control{margin-top:28px;width:min(480px,100%);display:grid;grid-gap:14px;gap:14px}.calc-control label{font-size:var(--step-small);font-weight:600;display:flex;justify-content:space-between}.calc-control select{height:48px;padding:0 12px;background:var(--field-1);color:var(--field-1-ink);border:2px solid var(--field-1-ink);border-radius:0}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:44px;background:transparent;cursor:pointer;--track:var(--line-strong);--thumb-ring:var(--bg)}.field-1 input[type=range]{--track:var(--field-1-ink);--thumb-ring:var(--field-1-ink)}input[type=range]::-webkit-slider-runnable-track{height:6px;background:var(--track)}input[type=range]::-moz-range-track{height:6px;background:var(--track)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;margin-top:-11px;background:var(--accent);border:4px solid var(--thumb-ring)}input[type=range]::-moz-range-thumb{width:22px;height:22px;background:var(--accent);border:4px solid var(--thumb-ring);border-radius:0}.calc-out{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap}.figure{font-family:var(--font-display);font-weight:700;font-size:clamp(110px,19vw,300px);line-height:.8;letter-spacing:-.05em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.figure .unit{font-size:.22em;letter-spacing:-.02em;margin-left:.15em}.figure .cur{font-size:.5em;vertical-align:.62em;margin-right:.04em}.calc-out p{max-width:30ch;font-size:var(--step-body)}@media (max-width:860px){.figure{font-size:30vw}}.price-split{min-height:80svh;align-items:center}.price-split .copy{grid-column:1/span 4;align-self:start}.price-split .copy h2{font-size:var(--step-head)}.price-split .copy p{margin-top:20px;font-size:17px;max-width:36ch}.price-split .big{grid-column:6/span 7;position:relative}.price-split .big .figure{font-size:clamp(120px,16vw,240px)}.per-below{font-weight:600;margin-top:14px}.price-split .over{position:absolute;right:0;top:-14%;width:clamp(240px,26vw,360px);min-height:230px}.bal-now{padding:14px 18px 6px;font-family:var(--font-display);font-size:var(--step-head);letter-spacing:-.03em;line-height:1}.bal-rows{width:100%;border-collapse:collapse;font-size:14px}.bal-rows td{padding:8px 18px;border-top:1px solid var(--line)}.bal-rows td:last-child{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.price-split ul{margin-top:36px;display:grid;grid-gap:8px;gap:8px;font-size:var(--step-body);list-style:none;padding:0}.price-split .btn{margin-top:32px}@media (max-width:860px){.price-split .big,.price-split .copy{grid-column:1/-1}.price-split .big{margin-top:40px}.price-split .big .figure{font-size:34vw}.price-split .over{position:relative;right:auto;top:auto;width:100%;margin:24px 0 0}}.faq h2{position:-webkit-sticky;position:sticky;top:104px;font-size:var(--step-head)}.faq .head{grid-column:1/span 4}.faq .list{grid-column:5/span 8;display:grid;grid-gap:8px;gap:8px}details.tile{background:var(--surface)}details.tile summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:72px;padding:0 24px;font-size:var(--step-lead);font-weight:600}details.tile summary::-webkit-details-marker{display:none}details.tile .plus{position:relative;width:16px;height:16px;flex:none}details.tile .plus:after,details.tile .plus:before{content:"";position:absolute;left:0;top:6.5px;width:16px;height:3px;background:currentColor;transition:transform .2s var(--ease-out)}details.tile .plus:after{transform:rotate(90deg)}details.tile[open]{background:var(--accent);color:var(--accent-ink)}details.tile[open] .plus:after{transform:rotate(0deg)}details.tile p{padding:0 24px 24px;max-width:52ch;font-size:var(--step-body)}@media (max-width:860px){.faq .head,.faq .list{grid-column:1/-1}.faq h2{position:static;font-size:9vw;margin-bottom:24px}details.tile summary{font-size:18px;min-height:64px;padding:14px 20px}}.site-footer{background:var(--accent);color:var(--accent-ink);padding:56px 0 28px}.site-footer a{color:var(--accent-ink);text-decoration:none}.site-footer a:hover{text-decoration:underline;color:var(--accent-ink)}.mark-row{display:flex;align-items:flex-end;gap:clamp(16px,3vw,48px);height:34svh;max-height:360px}.mark-built{height:100%;width:auto;flex:none}.mark-word{font-family:var(--font-display);font-weight:700;letter-spacing:-.05em;line-height:.8;font-size:clamp(64px,13vw,220px);margin-bottom:-.08em}.mark-built path{fill:none;stroke:var(--accent-ink)}.foot-cols{display:grid;grid-template-columns:repeat(12,1fr);grid-gap:24px var(--gap);gap:24px var(--gap);margin-top:56px;font-size:var(--step-small)}.foot-cols .col{grid-column:span 2;display:grid;align-content:start;grid-gap:8px;gap:8px}.foot-cols .col h3{font-family:var(--font-text);font-size:var(--step-small);letter-spacing:0;line-height:1.4;font-weight:700;margin-bottom:4px}.foot-cols .contact{grid-column:9/span 4;display:grid;align-content:start;grid-gap:8px;gap:8px}.foot-last{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:56px;font-size:var(--step-small)}.foot-last .btn{background:var(--accent-ink);color:var(--accent);min-height:40px}@media (max-width:860px){.mark-row{height:auto;flex-direction:column;align-items:flex-start}.mark-built{height:22svh}.mark-word{font-size:18vw}.foot-cols .col{grid-column:span 6}.foot-cols .contact{grid-column:1/-1}}.page-head{padding-top:clamp(48px,8vw,112px);padding-bottom:clamp(40px,5vw,72px)}.page-head h1{font-size:clamp(3rem,1.4rem + 5vw,6rem);max-width:14ch}.page-head .lead{margin-top:24px}.head-split{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-gap:48px var(--gap);gap:48px var(--gap);align-items:end}.life ol{list-style:none;margin:0;padding:6px 18px 12px}.life li{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #2a2a2a}.life li:last-child{border-bottom:0}.life li em{font-style:normal;color:var(--muted);text-align:right}.life li:nth-child(2) em{color:var(--accent)}.pin-sample{margin-top:24px;max-width:560px}.pin-sample .ui-bar a{color:var(--accent);text-decoration:none}@media (max-width:860px){.head-split{grid-template-columns:1fr}}.crumbs{display:flex;gap:8px;font-size:15px;margin-bottom:28px}.crumbs,.crumbs a{color:var(--muted)}.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--accent)}.family{display:grid;grid-template-columns:repeat(12,1fr);grid-gap:24px var(--gap);gap:24px var(--gap);padding:56px 0}.family+.family{border-top:0}.family>.fam-head{grid-column:1/span 4;display:grid;grid-gap:24px;gap:24px;align-content:start}.family h2{font-size:var(--step-head)}.fam-sample{min-height:210px}.fam-sample pre{font-size:13px}.family>.rows{grid-column:5/span 8;display:grid;grid-gap:6px;gap:6px}.row-link{display:grid;grid-template-columns:1fr auto auto;grid-gap:24px;gap:24px;align-items:center;padding:18px 22px;background:var(--surface);text-decoration:none;color:var(--ink);transition:background-color .16s ease,transform .16s var(--ease-out)}.row-link:hover{background:var(--surface-2);color:var(--ink)}.row-link:active{transform:scale(.99)}.row-link strong{font-size:19px;font-weight:600}.row-link small{display:block;color:var(--muted);font-size:var(--step-small)}.row-link .price{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600;text-align:right}@media (max-width:860px){.family>.fam-head,.family>.rows{grid-column:1/-1}.row-link{grid-template-columns:1fr auto}.row-link .hide-sm{display:none}}.matrix-wrap{overflow-x:auto}table.matrix{border-collapse:collapse;font-size:15px;min-width:760px;width:100%}table.matrix td,table.matrix th{padding:10px 12px;text-align:center}table.matrix th{font-weight:600;color:var(--muted);font-size:14px}table.matrix td:first-child,table.matrix th:first-child{text-align:left;position:-webkit-sticky;position:sticky;left:0;background:var(--bg)}table.matrix tbody tr{border-top:1px solid var(--line)}table.matrix td.on{color:var(--accent);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}table.matrix td.dim{color:#555}.cmp{display:grid;grid-template-columns:repeat(12,1fr);grid-gap:32px var(--gap);gap:32px var(--gap)}.cmp-a{grid-column:1/span 5}.cmp-b{grid-column:7/span 6;display:grid;grid-gap:6px;gap:6px;align-content:start}@media (max-width:860px){.cmp-a,.cmp-b{grid-column:1/-1}}.docs{display:grid;grid-template-columns:240px minmax(0,1fr) 220px;grid-gap:clamp(24px,3.4vw,56px);gap:clamp(24px,3.4vw,56px);padding-top:40px;padding-bottom:120px}.doc{min-width:0}.doc li code,.doc p code{overflow-wrap:anywhere}.doc td:first-child code{white-space:nowrap}.doc td code{overflow-wrap:anywhere}.docs>.doc-next{grid-column:2/-1;margin-top:64px}.doc h2{scroll-margin-top:96px}.doc-rail{position:-webkit-sticky;position:sticky;top:92px;align-self:start;display:grid;grid-gap:4px;gap:4px}.doc-rail h3{font-family:var(--font-text);font-size:14px;font-weight:700;color:var(--muted);margin-bottom:6px}.doc-rail a.toc{color:var(--muted);text-decoration:none;padding:5px 0 5px 12px;border-left:2px solid #2a2a2a;font-size:15px}.doc-rail a.toc:hover{color:var(--ink)}.doc-rail a.toc[aria-current]{color:var(--ink);border-left-color:var(--accent)}.rail-card{margin-top:28px;background:var(--surface);padding:18px;display:grid;grid-gap:10px;gap:10px;font-size:15px}.rail-card span{color:var(--muted)}.rail-card .btn{justify-self:start}@media (max-width:1180px){.docs{grid-template-columns:220px minmax(0,1fr)}.doc-rail{display:none}.docs>.doc-next{grid-column:2}}.docs-side{position:-webkit-sticky;position:sticky;top:92px;align-self:start;max-height:calc(100vh - 110px);overflow:auto;display:grid;grid-gap:28px;gap:28px;padding-bottom:24px}.docs-side h3{font-family:var(--font-text);font-size:14px;letter-spacing:0;font-weight:700;color:var(--muted);line-height:1.4;margin-bottom:6px}.docs-side a{display:block;padding:7px 10px;text-decoration:none;color:var(--ink);font-size:16px}.docs-side a:hover{background:var(--surface);color:var(--ink)}.docs-side a[aria-current=page]{background:var(--accent);color:var(--accent-ink)}.docs-side .types{max-height:320px;overflow:auto}.doc{max-width:820px}.doc h1{font-size:clamp(2.75rem,1.6rem + 3.4vw,4.5rem);margin-bottom:24px}.doc h2{font-size:clamp(1.75rem,1.3rem + 1.4vw,2.5rem);margin:64px 0 20px}.doc li,.doc p{max-width:68ch}.doc p+p{margin-top:14px}.doc ol{padding-left:22px;display:grid;grid-gap:8px;gap:8px}.doc pre{background:var(--surface);padding:18px 20px;overflow-x:auto;line-height:1.55;font-size:14px;margin:16px 0}.doc :not(pre)>code{background:var(--surface-2);padding:1px 6px}.doc table{width:100%;border-collapse:collapse;margin:16px 0;font-size:16px}.doc th{text-align:left;font-size:14px;color:var(--muted);font-weight:600;padding:8px 12px}.doc td{padding:12px;border-top:1px solid var(--line);vertical-align:top}.doc-next{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.doc-next a{display:grid;grid-gap:4px;gap:4px;padding:20px 22px;background:var(--surface);text-decoration:none;color:var(--ink)}.doc-next a small{color:var(--muted)}.doc-next a:hover{background:var(--surface-2);color:var(--ink)}.doc-next a.next{text-align:right}.req{color:var(--accent);font-weight:600}.opt,.req{font-size:14px}.opt{color:var(--muted)}.codetabs{margin:16px 0}.codetabs [role=tablist]{display:flex;gap:2px}.codetabs [role=tab]{background:var(--surface-2);border:0;padding:10px 16px;cursor:pointer;font-size:15px;color:var(--muted)}.codetabs [role=tab][aria-selected=true]{background:var(--surface);color:var(--ink);font-weight:600}.codetabs pre{margin-top:0}.docs-menu-btn{display:none}@media (max-width:960px){.docs{grid-template-columns:minmax(0,1fr)}.docs>.doc-next{grid-column:1}.docs-side{position:static;max-height:none;display:none}.docs-side.open{display:grid}.docs-menu-btn{display:inline-flex;margin-bottom:8px}.doc-next{grid-template-columns:1fr}.doc table{display:block;overflow-x:auto}.doc pre{white-space:pre-wrap;overflow-wrap:anywhere}}@media (max-width:760px){.doc table{display:block;overflow-x:auto}}.auth{min-height:calc(100svh - 76px);display:grid;grid-template-columns:1fr 1fr}.auth .form-side{display:flex;flex-direction:column;justify-content:center;padding:48px var(--margin);max-width:560px;width:100%;margin:0 auto}.auth h1{font-size:clamp(2.75rem,1.6rem + 3vw,4.25rem)}.auth .lead{margin-top:16px;font-size:19px}.auth form{margin-top:36px;display:grid;grid-gap:18px;gap:18px}.auth .alt{margin-top:28px;color:var(--muted)}.auth .art{background:var(--accent);color:var(--accent-ink);position:relative;overflow:hidden}.auth .art .loopmap{position:absolute;inset:0}@media (max-width:860px){.auth{grid-template-columns:1fr}.auth .art{min-height:46svh;order:-1}}.field{display:grid;grid-gap:8px;gap:8px}.field label,label.lbl{font-size:15px;font-weight:600}.field .hint{font-size:14px;color:var(--muted)}input:not([type]),input[type=email],input[type=number],input[type=password],input[type=text],select,textarea{width:100%;min-height:48px;padding:10px 14px;background:var(--surface);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius);font-size:16px}textarea{min-height:72px;resize:vertical}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent)}.check{display:inline-flex;align-items:center;gap:10px;font-size:16px;cursor:pointer}.check input{width:20px;height:20px;accent-color:var(--accent)}.err{color:var(--bad)}.ok{color:var(--accent)}.notice{padding:14px 18px;background:var(--surface);font-size:16px}.notice.good{background:rgba(218,250,156,.12);color:var(--accent)}.notice.bad{background:rgba(255,143,128,.12);color:var(--bad)}.secret{display:flex;gap:8px;align-items:stretch}.secret code{flex:1 1;padding:14px;background:var(--surface-2);word-break:break-all;font-size:15px}.app{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100svh}.app-side{position:-webkit-sticky;position:sticky;top:0;height:100svh;overflow:auto;display:flex;flex-direction:column;gap:28px;padding:22px 16px;background:var(--bg);border-right:1px solid var(--line)}.app-side .wordmark{font-size:21px;padding:0 8px}.app-side nav{display:grid;grid-gap:22px;gap:22px}.app-side h3{font-family:var(--font-text);font-size:13px;letter-spacing:0;font-weight:600;color:var(--muted);padding:0 10px;margin-bottom:4px;line-height:1.4}.app-side a.nav{display:flex;align-items:center;gap:10px;padding:8px 10px;text-decoration:none;color:#d6d6d6;font-size:15px}.app-side a.nav:hover{background:var(--surface);color:var(--ink)}.app-side a.nav[aria-current=page]{background:var(--surface-2);color:var(--ink);font-weight:600}.app-side .foot{margin-top:auto;display:grid;grid-gap:4px;gap:4px;font-size:14px}.app-side .foot a,.app-side .foot button{padding:6px 10px;color:var(--muted);text-decoration:none;background:none;border:0;text-align:left;cursor:pointer;font-size:14px}.app-side .foot a:hover,.app-side .foot button:hover{color:var(--ink)}.app-main{min-width:0;display:flex;flex-direction:column}.app-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 32px;border-bottom:1px solid var(--line);min-height:72px}.app-top h1{font-size:26px;letter-spacing:-.02em;line-height:1.1}.app-top p{margin-top:4px}.app-top .who,.app-top p{font-size:14px;color:var(--muted)}.app-top .who{display:flex;align-items:center;gap:12px}.app-body{padding:28px 32px 80px;display:grid;grid-template-columns:minmax(0,1fr);grid-gap:28px;gap:28px;max-width:1280px;width:100%}.app-menu{display:none}@media (max-width:960px){.app{grid-template-columns:minmax(0,1fr)}.app-side{position:fixed;z-index:60;inset:0 auto 0 0;width:280px;transform:translateX(-100%);transition:transform .26s var(--ease-out)}.app-side.open{transform:none;box-shadow:0 0 0 100vmax rgba(0,0,0,.5)}.app-menu{display:inline-flex}.app-top{padding:14px 16px;flex-wrap:wrap}.app-top h1{font-size:22px}.app-top .who{gap:8px}.app-top .nav-search kbd{display:none}.app-body{padding:20px 16px 64px}}.panel{background:var(--surface);border:1px solid var(--line)}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;flex-wrap:wrap}.panel-head h2{font-size:18px;letter-spacing:-.01em;line-height:1.2}.panel-head p{font-size:14px;color:var(--muted);margin-top:2px}.panel-body{padding:0 20px 20px}.kpis{grid-template-columns:repeat(4,minmax(0,1fr));background:var(--surface);border:1px solid var(--line)}.kpi,.kpis{display:grid}.kpi{padding:18px 20px;grid-gap:6px;gap:6px}.kpi+.kpi{border-left:1px solid var(--line)}.kpi label{font-size:14px;color:var(--muted)}.kpi strong{font-size:32px;font-family:var(--font-display);letter-spacing:-.03em;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kpi small{font-size:13px;color:var(--muted)}@media (max-width:760px){.kpis{grid-template-columns:1fr 1fr}.kpi:nth-child(3){border-left:0}.kpi:nth-child(n+3){border-top:1px solid var(--line)}}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px 20px}.grid-2,.grid-3{display:grid;gap:16px 20px}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px 20px}@media (max-width:760px){.grid-2,.grid-3{grid-template-columns:minmax(0,1fr)}}.loop-panel{position:relative;height:340px;background:var(--surface);border:1px solid var(--line)}.loop-panel .loopmap{position:absolute;inset:0}.loop-panel .legend{position:absolute;left:20px;top:16px;z-index:2;display:grid;grid-gap:4px;gap:4px;font-size:14px}.loop-panel .legend h2{font-size:18px;letter-spacing:-.01em}.table-wrap{overflow-x:auto}table.t{width:100%;border-collapse:collapse;font-size:15px}table.t th{text-align:left;font-size:13px;font-weight:600;color:var(--muted);padding:10px 12px;white-space:nowrap}table.t td{padding:12px;border-top:1px solid var(--line);vertical-align:middle}table.t td.r,table.t th.r{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}table.t tr:hover td{background:#1f1f1f}table.t code{font-size:13.5px;color:#d6d6d6}.row-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.empty-state{padding:36px 20px;text-align:center;color:var(--muted);display:grid;grid-gap:12px;gap:12px;justify-items:center}.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.toolbar input,.toolbar select{width:auto;min-width:200px}@media (max-width:760px){.toolbar{width:100%}.toolbar input,.toolbar select{min-width:0;width:100%;flex:1 1 140px}.panel-head>div:last-child{width:100%}}dialog.sheet{border:0;padding:0;background:var(--surface);color:var(--ink);width:min(520px,calc(100% - 32px));box-shadow:0 24px 64px rgba(0,0,0,.55)}dialog.sheet::-webkit-backdrop{background:rgba(0,0,0,.6)}dialog.sheet::backdrop{background:rgba(0,0,0,.6)}dialog.sheet[open]{animation:pop .18s var(--ease-out)}dialog.sheet form{padding:24px;display:grid;grid-gap:16px;gap:16px}dialog.sheet h2{font-size:22px;letter-spacing:-.01em}dialog.sheet .actions{display:flex;gap:8px;justify-content:flex-end}.reveal>*{opacity:0;transform:translateY(24px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out)}.reveal.in>*{opacity:1;transform:none}.reveal.in>:nth-child(2){transition-delay:80ms}.reveal.in>:nth-child(3){transition-delay:.16s}.reveal.in>:nth-child(4){transition-delay:.24s}.reveal.in>:nth-child(5){transition-delay:.32s}.no-js .reveal>*{opacity:1;transform:none}@media (hover:hover) and (pointer:fine){.row-link:hover strong{text-decoration:underline;text-underline-offset:4px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.shutter{-webkit-clip-path:none;clip-path:none}.reveal>*{opacity:1;transform:none}}@media (max-width:860px){.hide-sm{display:none!important}}.modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--gap);gap:var(--gap);margin-top:28px}.modes .ui{min-height:230px}.modes .ui p{margin:0;padding:14px 18px 0;color:var(--muted);font-size:15px}@media (max-width:860px){.modes{grid-template-columns:1fr}}