@font-face{font-family:Space Grotesk;font-weight:500;font-display:swap;src:url(/_app/immutable/assets/space-grotesk-latin-500-normal.lFbtlQH6.woff2)format("woff2")}@font-face{font-family:Space Grotesk;font-weight:600;font-display:swap;src:url(/_app/immutable/assets/space-grotesk-latin-600-normal.DjKNqYRj.woff2)format("woff2")}@font-face{font-family:Space Grotesk;font-weight:700;font-display:swap;src:url(/_app/immutable/assets/space-grotesk-latin-700-normal.RjhwGPKo.woff2)format("woff2")}@font-face{font-family:Inter;font-weight:400;font-display:swap;src:url(/_app/immutable/assets/inter-latin-400-normal.C38fXH4l.woff2)format("woff2")}@font-face{font-family:Inter;font-weight:500;font-display:swap;src:url(/_app/immutable/assets/inter-latin-500-normal.Cerq10X2.woff2)format("woff2")}@font-face{font-family:Inter;font-weight:600;font-display:swap;src:url(/_app/immutable/assets/inter-latin-600-normal.LgqL8muc.woff2)format("woff2")}@font-face{font-family:Pixelify Sans;font-weight:400;font-display:swap;unicode-range:U+0-2F,U+3A-FFFF;src:url(/_app/immutable/assets/pixelify-sans-latin-400-normal.DLrIX9QE.woff2)format("woff2")}:root{--navy:#0c0f1d;--navy-deep:#080a16;--panel:#121733;--panel-2:#171d3d;--mint:#7ef0c8;--mint-deep:#3fb98f;--ember:#d9fff1;--text:#eef1ff;--muted:#9aa3c7;--line:#c4d2ff24;--line-strong:#c4d2ff3d;--todo-bg:#3b3410;--todo:#ffe27a;--display:"Space Grotesk", "Segoe UI", system-ui, sans-serif;--body:"Inter", "Segoe UI", system-ui, sans-serif;--pixel:"Pixelify Sans", "Space Grotesk", "Inter", sans-serif;--r:4px;--wrap:1120px;--gutter:clamp(16px, 4vw, 32px)}*{box-sizing:border-box}html{background:var(--navy);color:var(--text);-webkit-text-size-adjust:100%;scroll-padding-top:88px}body{font:400 16px/1.65 var(--body);background:var(--navy);color:var(--text);-webkit-font-smoothing:antialiased;margin:0}img{max-width:100%;height:auto;display:block}a{color:var(--mint);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--ember)}:focus-visible{outline:2px solid var(--mint);outline-offset:3px;border-radius:2px}h1,h2,h3{font-family:var(--display);letter-spacing:-.02em;text-wrap:balance;margin:0;line-height:1.1}h1{font-size:clamp(2.3rem,5.4vw,4rem);font-weight:700}h2{font-size:clamp(1.7rem,3.4vw,2.5rem);font-weight:700}h3{letter-spacing:-.005em;font-size:1.15rem;font-weight:600;line-height:1.3}p{margin:0}p+p{margin-top:.9em}.sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{z-index:10;background:var(--mint);color:var(--navy);border-radius:var(--r);padding:8px 12px;font-weight:600;position:absolute;top:-60px;left:16px}.skip:focus{top:12px}.wrap{max-width:var(--wrap);padding:0 var(--gutter);margin:0 auto}.top{z-index:5;border-bottom:1px solid var(--line);background:#0c0f1df0;position:sticky;top:0}.top-row{align-items:center;gap:16px;min-height:68px;display:flex}.brand{flex:none;margin-right:auto}.brand img{width:auto;height:30px}.nav{align-items:center;gap:4px;display:flex}.top-actions{align-items:center;gap:8px;display:flex}.nav a{white-space:nowrap;color:var(--muted);font:500 15px/1 var(--body);border-radius:var(--r);padding:10px 12px;text-decoration:none}.nav a:hover,.nav a[aria-current=page]{color:var(--text);background:var(--panel)}.lang{position:relative}.lang summary{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text);font:400 14px/1 var(--pixel);letter-spacing:.06em;border:1px solid var(--line-strong);border-radius:var(--r);align-items:center;gap:8px;padding:8px 10px 8px 9px;list-style:none;display:flex}.lang summary::-webkit-details-marker{display:none}.lang summary:hover,.lang[open] summary{background:var(--panel);border-color:var(--mint-deep)}.lang summary:focus-visible{outline:2px solid var(--mint);outline-offset:2px}.lang svg{fill:none;stroke:currentColor;stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round}.lang .globe{color:var(--mint)}.lang .chev{color:var(--muted);transition:transform .15s}.lang[open] .chev{transform:rotate(180deg)}.lang-list{z-index:6;background:var(--panel);border:1px solid var(--line-strong);border-radius:var(--r);min-width:168px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 32px #00000073}.lang-list a{color:var(--muted);font:500 15px/1 var(--body);border-radius:var(--r);align-items:center;gap:10px;padding:10px;text-decoration:none;display:flex}.lang-list a:hover{color:var(--text);background:var(--panel-2)}.lang-list a[aria-current=true]{color:var(--text);background:0 0}.lang-list a[aria-current=true]:after{content:"";background:var(--mint);width:6px;height:6px;margin-left:auto}.lang-list .code{font:400 12px/1 var(--pixel);letter-spacing:.06em;color:var(--mint);min-width:20px}.menu{display:none}.menu summary{cursor:pointer;-webkit-user-select:none;user-select:none;width:42px;height:36px;color:var(--text);border:1px solid var(--line-strong);border-radius:var(--r);place-items:center;list-style:none;display:grid}.menu summary::-webkit-details-marker{display:none}.menu summary:hover,.menu[open] summary{background:var(--panel);border-color:var(--mint-deep)}.menu summary:focus-visible{outline:2px solid var(--mint);outline-offset:2px}.menu svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round}.menu .x,.menu[open] .bars{display:none}.menu[open] .x{display:block}.menu-panel{z-index:6;background:var(--navy);border-bottom:1px solid var(--line-strong);gap:2px;padding:8px 12px 16px;display:grid;position:absolute;top:100%;left:0;right:0;box-shadow:0 16px 32px #00000073}.menu-panel a{color:var(--muted);font:500 17px/1.2 var(--body);border-radius:var(--r);padding:14px 12px;text-decoration:none}.menu-panel a:hover,.menu-panel a[aria-current=page]{color:var(--text);background:var(--panel)}.menu-panel a[aria-current=page]{box-shadow:inset 3px 0 0 var(--mint)}.kicker{font:400 14px/1 var(--pixel);letter-spacing:.08em;color:var(--mint);text-transform:uppercase;align-items:center;gap:12px;margin-bottom:18px;display:flex}.kicker:before{content:"";background:var(--mint);width:28px;height:2px}.lead{color:var(--muted);max-width:40em;font-size:clamp(1.05rem,1.6vw,1.2rem)}.btns{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.btn{border-radius:var(--r);min-height:48px;font:600 16px/1 var(--body);border:1px solid var(--line-strong);color:var(--text);background:var(--panel);align-items:center;gap:10px;padding:12px 20px;text-decoration:none;display:inline-flex}.btn:hover{color:var(--text);border-color:var(--muted)}.btn.primary{background:var(--mint);color:var(--navy);border-color:var(--mint);box-shadow:inset 0 -3px 0 var(--mint-deep)}.btn.primary:hover{background:var(--ember);border-color:var(--ember)}.badge{font:400 13px/1 var(--pixel);letter-spacing:.06em;color:var(--mint);border-radius:var(--r);vertical-align:.2em;border:1px solid #7ef0c866;padding:5px 8px 4px;display:inline-block}.pip{background:var(--mint);vertical-align:.12em;width:7px;height:7px;margin-right:10px;display:inline-block}section{padding:clamp(64px,10vw,112px) 0}section+section{border-top:1px solid var(--line)}.head{max-width:46em;margin-bottom:clamp(32px,5vw,56px)}.head h2+p{color:var(--muted);margin-top:16px;font-size:1.08rem}.hero{background:var(--navy) url(/_app/immutable/assets/night.BpzRcMlu.svg) center bottom / cover no-repeat;padding:clamp(56px,9vw,104px) 0 0;position:relative;overflow:hidden}.hero .wrap{position:relative}.hero h1{max-width:13em}.hero .lead{margin-top:22px}.hero .meta{color:var(--muted);margin-top:18px;font-size:14px}.splash{font:400 clamp(15px, 1.8vw, 19px)/1 var(--pixel);color:#ffe35c;margin-left:10px;display:inline-block;transform:rotate(-8deg)}.shot-hero{max-width:1040px;margin:clamp(48px,7vw,80px) auto 0}.shot{border:1px solid var(--line-strong);border-radius:var(--r);background:var(--navy-deep);margin:0;overflow:hidden}.shot img{width:100%}.shot figcaption{color:var(--muted);border-top:1px solid var(--line);background:var(--navy);padding:12px 16px;font-size:14px}.gallery{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:24px;display:grid}.gallery .wide{grid-column:1/-1}.cols{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:24px;display:grid}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:clamp(22px,3vw,32px)}.card h3{align-items:center;gap:12px;margin-bottom:18px;display:flex}.card h3 img{width:28px;height:28px}.list{margin:0;padding:0;list-style:none}.list li{border-top:1px solid var(--line);padding:12px 0}.list li:first-child{border-top:0;padding-top:0}.list b{color:var(--text);font-weight:600;display:block}.list span{color:var(--muted);font-size:15px}.split{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));align-items:start;gap:clamp(32px,5vw,64px);display:grid}.facts{counter-reset:f;gap:0;margin:0;padding:0;list-style:none;display:grid}.facts li{border-top:1px solid var(--line);padding:18px 0 18px 44px;position:relative}.facts li:before{counter-increment:f;content:counter(f);width:28px;height:28px;font:400 14px/1 var(--pixel);color:var(--navy);background:var(--mint);border-radius:2px;place-items:center;display:grid;position:absolute;top:18px;left:0}.facts b{font-family:var(--display);margin-bottom:4px;font-size:1.08rem;font-weight:600;display:block}.facts span{color:var(--muted)}.stack{gap:24px;display:grid}.band{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:clamp(24px,4vw,40px);display:flex}.band h2{font-size:clamp(1.4rem,2.6vw,1.9rem)}.band p{color:var(--muted);max-width:40em;margin-top:8px}.band .btns{margin-top:0}.doc{padding:clamp(48px,8vw,88px) 0 clamp(64px,10vw,112px)}.doc .wrap{max-width:820px}.doc h1{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;font-size:clamp(2rem,4.6vw,3rem)}.doc .lead{margin-top:18px}.doc .stand{color:var(--muted);margin-top:14px;font-size:14px}.prose{margin-top:clamp(36px,5vw,52px)}.prose h2{border-top:1px solid var(--line);margin:2.4em 0 .7em;padding-top:1.4em;font-size:clamp(1.3rem,2.4vw,1.6rem)}.prose h2:first-child{border-top:0;margin-top:0;padding-top:0}.prose h3{margin:1.8em 0 .5em}.prose p,.prose li{color:#d4d9f0}.prose ul,.prose ol{margin:.8em 0;padding-left:1.3em}.prose li+li{margin-top:.4em}.prose li::marker{color:var(--mint-deep)}.prose address{font-style:normal}.prose .note{border-left:3px solid var(--mint);background:var(--panel);border-radius:0 var(--r) var(--r) 0;color:var(--text);margin:1.4em 0;padding:16px 18px}.prose table{border-collapse:collapse;width:100%;margin:1.2em 0;font-size:15px}.table-scroll{overflow-x:auto}.prose th,.prose td{text-align:left;vertical-align:top;border-top:1px solid var(--line);padding:10px 12px}.prose th{color:var(--muted);letter-spacing:.02em;border-top:0;font-size:13px;font-weight:600}.prose code{font-family:var(--body);font-variant-numeric:tabular-nums;background:var(--panel);border:1px solid var(--line);word-break:break-word;border-radius:3px;padding:1px 5px;font-size:.92em}.toc{border:1px solid var(--line);border-radius:var(--r);margin-top:28px;padding:18px 20px}.toc p{font:400 13px/1 var(--pixel);letter-spacing:.08em;text-transform:uppercase;color:var(--mint);margin-bottom:12px}.toc ol{columns:2 260px;column-gap:32px;margin:0;padding-left:1.3em}.toc li{color:var(--muted);break-inside:avoid;padding:2px 0}.toc a{color:var(--text);text-decoration:none}.toc a:hover{color:var(--mint);text-decoration:underline}.faq details{border-top:1px solid var(--line)}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font:600 1.1rem/1.35 var(--display);padding:20px 40px 20px 0;list-style:none;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font:400 22px/1 var(--pixel);color:var(--mint);position:absolute;top:17px;right:4px}.faq details[open] summary:after{content:"−"}.faq .answer{color:#d4d9f0;max-width:44em;padding:0 0 22px}.steps{margin:1.2em 0;padding:0;list-style:none}.steps li{border-top:1px solid var(--line);color:#d4d9f0;grid-template-columns:28px 1fr;gap:14px;padding:14px 0;display:grid}.steps li:before{content:"";border:2px solid var(--muted);border-radius:2px;width:12px;height:12px;margin:6px 0 0 6px}.steps li.done:before{background:var(--mint);border-color:var(--mint)}.steps li.now:before{border-color:var(--mint)}.steps b{color:var(--text);font-weight:600}mark.todo{background:var(--todo-bg);color:var(--todo);border:1px dashed var(--todo);border-radius:3px;padding:1px 6px;font-weight:500}.foot{border-top:1px solid var(--line);background:var(--navy-deep);color:var(--muted);padding:64px 0 36px;font-size:14px}.foot-grid{grid-template-columns:minmax(0,1.7fr) repeat(3,minmax(0,1fr));gap:40px 56px;display:grid}.foot-brand p{max-width:26em;margin-top:18px;line-height:1.6}.foot-brand a{border-radius:var(--r);display:inline-block}.foot-h{font:400 13px/1 var(--pixel);letter-spacing:.08em;text-transform:uppercase;color:var(--mint);margin-bottom:16px}.foot-col ul{grid-template-columns:minmax(0,1fr);gap:4px;margin:0;padding:0;list-style:none;display:grid}.foot-col a{max-width:100%;color:var(--text);-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;padding:5px 0;text-decoration:none;display:inline-block}.foot-col a:hover{color:var(--mint);text-decoration:underline}.foot-col a[aria-current]{color:var(--mint)}.foot-legal{border-top:1px solid var(--line);margin-top:48px;padding-top:28px}.foot-legal p+p{margin-top:6px}.disclaimer{font:600 13px/1.5 var(--body);letter-spacing:.04em;color:var(--text)}.foot-bottom{flex-wrap:wrap;justify-content:space-between;gap:8px 32px;margin-top:24px;font-size:13px;display:flex}.build{font-variant-numeric:tabular-nums}.build .sep{margin:0 .45em}.build .commit{color:var(--text);font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:12px}.quiet{margin-top:24px;font-size:13px}@media (width<=860px){.foot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.foot-brand{grid-column:1/-1}}@media (width<=520px){.foot{padding-top:48px}.foot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px}}.lost{min-height:50vh}@media (width<=720px){html{scroll-padding-top:16px}.top{position:relative}.top-row{gap:12px;min-height:60px}.nav{display:none}.menu{display:block}.splash{display:none}.btn{justify-content:center;width:100%}}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}@media print{.top,.foot-col,.skip,.btns{display:none}html,body,.foot{color:#000;background:#fff}.prose p,.prose li{color:#000}}.quiet.after{margin-top:20px}.zoom{width:100%;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;display:block;position:relative}.zoom:focus-visible{outline-offset:-3px}.zoom-hint{border-radius:var(--r);border:1px solid var(--line-strong);opacity:0;background:#0c0f1dd1;width:32px;height:32px;transition:opacity .15s;position:absolute;bottom:10px;right:10px}.zoom-hint:before,.zoom-hint:after{content:"";border:2px solid var(--mint);width:9px;height:9px;position:absolute}.zoom-hint:before{border-bottom:0;border-left:0;top:7px;right:7px}.zoom-hint:after{border-top:0;border-right:0;bottom:7px;left:7px}.zoom:hover .zoom-hint,.zoom:focus-visible .zoom-hint{opacity:1}@media (hover:none){.zoom-hint{opacity:1}}.lightbox{width:auto;max-width:none;height:auto;max-height:none;color:var(--text);background:#080a16f2;border:0;justify-content:center;align-items:center;margin:0;padding:64px clamp(16px,4vw,56px) clamp(16px,4vw,56px);display:none;position:fixed;inset:0;overflow:hidden}.lightbox:popover-open{display:flex}.lightbox::backdrop{background:0 0}.lightbox-back{cursor:default;background:0 0;border:0;padding:0;position:absolute;inset:0}.lightbox img{object-fit:contain;border:1px solid var(--line-strong);border-radius:var(--r);pointer-events:none;width:auto;max-width:100%;height:auto;max-height:100%;position:relative}.lightbox-close{cursor:pointer;color:var(--text);font:500 15px/1 var(--body);border:1px solid var(--line-strong);border-radius:var(--r);background:var(--panel);align-items:center;gap:10px;padding:10px 14px 10px 16px;text-decoration:none;display:inline-flex;position:absolute;top:14px;right:clamp(16px,4vw,56px)}.lightbox-close:hover{color:var(--text);border-color:var(--muted)}.lightbox-close svg{flex:none;display:block}@supports not selector(:popover-open){.zoom{cursor:default}.zoom-hint{display:none}}@media print{.lightbox,.zoom-hint{display:none!important}}
