@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_c15e96cb-module__0bjUvq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_c15e96cb-module__0bjUvq__variable{--font-inter:"Inter", "Inter Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.2f7nqdagzwx2-.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.176arc174-8zp.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.0bp8oijd_gu96.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.1fby2rem9ngyr.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.0vfdmo25voy_0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.3t6q91iet4nsy.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_dc177b0e-module__78ed6G__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_dc177b0e-module__78ed6G__variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
@layer theme;@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components,utilities;:root{--bg:#f7f9fc;--bg-2:#eef3f9;--panel:#fff;--panel-2:#f9fbfe;--ink:#0d1b2e;--ink-2:#2a3a50;--muted:#5a6a80;--line:#e1e8f0;--line-2:#cbd6e3;--accent:#1766d1;--accent-2:#0f52ae;--accent-soft:#e8f1fd;--violet:#6a4fe0;--solar:#ea5d1c;--solar-2:#f6a51c;--caution:#c77d14;--glow:#1766d121;--header:#f7f9fcc2;--shadow-sm:0 1px 2px #0d1b2e0f, 0 1px 1px #0d1b2e08;--shadow-md:0 14px 34px -16px #0d1b2e38;--shadow-lg:0 40px 90px -40px #0d1b2e61;--brand-gradient:linear-gradient(100deg, var(--accent) 5%, var(--violet) 48%, var(--solar) 95%);--spectrum:linear-gradient(90deg, #0b3fa8, #1e7be0 22%, #7a3bd1 44%, #e8412c 64%, #ff8a1e 82%, #ffd21e);--radius:14px;--radius-lg:20px;--ease:cubic-bezier(.2, .7, .2, 1);--ease-spring:cubic-bezier(.34, 1.4, .64, 1);--header-h:76px;--font-sans:var(--font-inter), ui-sans-serif, system-ui, "Segoe UI", Arial, sans-serif;--font-code:var(--font-mono), ui-monospace, SFMono-Regular, Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.dark{--bg:#060b14;--bg-2:#0a1220;--panel:#0d1626;--panel-2:#111c30;--ink:#e9eff8;--ink-2:#c3cfe1;--muted:#93a3ba;--line:#1c2a3f;--line-2:#2a3d58;--accent:#5ea6ff;--accent-2:#8dc1ff;--accent-soft:#10233f;--violet:#9b85ff;--solar:#ff7c3d;--solar-2:#ffc14d;--caution:#f0a53a;--glow:#5ea6ff24;--header:#060b14b8;--shadow-sm:0 1px 2px #0006;--shadow-md:0 18px 40px -18px #000000b3;--shadow-lg:0 40px 100px -40px #000000d9;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 24px);-webkit-text-size-adjust:100%}body{background:var(--bg);min-height:100vh;color:var(--ink);font-family:var(--font-sans);font-feature-settings:"cv11", "ss01";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:16px;line-height:1.6;overflow-x:clip}html.theme-transition,html.theme-transition *,html.theme-transition :before,html.theme-transition :after{transition:background-color .35s,border-color .35s,color .35s,fill .35s!important}::selection{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){::selection{background:color-mix(in srgb, var(--accent) 24%, transparent)}}a{color:inherit;text-decoration:none}button{cursor:pointer}a,button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}h1,h2,h3,h4{color:var(--ink);letter-spacing:-.035em;text-wrap:balance;line-height:1.12}h2{font-size:clamp(30px,4vw,44px);font-weight:600}p{color:var(--muted);text-wrap:pretty}img,video{max-width:100%;height:auto}code,kbd,pre{font-family:var(--font-code)}code{background:var(--bg-2);color:var(--ink-2);overflow-wrap:anywhere;border-radius:5px;padding:.15em .4em;font-size:.86em}kbd{border:1px solid var(--line-2);background:var(--panel);color:var(--ink-2);border-bottom-width:2px;border-radius:5px;padding:.1em .45em;font-size:.8em;display:inline-block}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--panel-2);border:1px solid var(--line);color:var(--ink-2);border-radius:12px;padding:20px 22px;font-size:13px;line-height:1.7}pre code{background:0 0;padding:0}.wrap{width:min(1180px,100% - 64px);margin-inline:auto}.skip-link{z-index:100;background:var(--panel);color:var(--ink);box-shadow:var(--shadow-md);border-radius:8px;padding:10px 16px;position:fixed;top:-100px;left:16px}.skip-link:focus{top:12px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);align-items:center;gap:10px;margin-bottom:16px;font-size:12px;font-weight:650;line-height:1.5;display:inline-flex}.eyebrow:before{content:"";background:var(--brand-gradient);border-radius:2px;width:18px;height:2px}.eyebrow.plain:before{display:none}.gradient-text{background:var(--brand-gradient);color:#0000;-webkit-background-clip:text;background-clip:text}.small{color:var(--muted);font-size:13px}.status{min-height:22px;color:var(--accent);margin-top:8px;font-size:13px}.tag{background:var(--accent-soft);color:var(--accent);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.tag.solar{background:var(--solar)}@supports (color:color-mix(in lab, red, red)){.tag.solar{background:color-mix(in srgb, var(--solar) 12%, transparent)}}.tag.solar{color:var(--solar)}.button{border:1px solid var(--line-2);background:var(--panel);color:var(--ink);transition:transform .25s var(--ease), box-shadow .25s var(--ease), background-color .2s, border-color .2s, color .2s;isolation:isolate;white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:10px;padding:13px 22px;font-size:14.5px;font-weight:600;line-height:1.4;display:inline-flex;position:relative;overflow:hidden}.button:hover{box-shadow:var(--shadow-md);border-color:var(--accent);transform:translateY(-2px)}.button:active{transform:translateY(0)scale(.98)}.button svg{transition:transform .25s var(--ease);flex-shrink:0}.button:hover svg.arrow{transform:translate(3px)}.button.primary{color:#fff;background:linear-gradient(135deg,#1f74e6,#1257b8);border-color:#0000;box-shadow:0 8px 22px -10px #1766d1cc,inset 0 1px #ffffff2e}.dark .button.primary{background:linear-gradient(135deg,#3d8ef5,#1a63c9)}.button.primary:after{content:"";z-index:-1;transition:transform .7s var(--ease);background:linear-gradient(115deg,#0000 30%,#ffffff47 48%,#0000 66%);position:absolute;inset:0;transform:translate(-120%)}.button.primary:hover:after{transform:translate(120%)}.button.primary:hover{box-shadow:0 16px 30px -12px #1766d1bf}.button.ghost{background:0 0;border-color:#0000}.button.ghost:hover{background:var(--bg-2);box-shadow:none}.button.lg{border-radius:12px;padding:15px 26px;font-size:15.5px}.button.sm{border-radius:9px;padding:9px 15px;font-size:13.5px}.button:disabled{opacity:.6;cursor:wait;transform:none}.actions{flex-wrap:wrap;gap:12px;display:flex}.text-link{color:var(--accent);transition:background-size .35s var(--ease), gap .25s var(--ease);background:linear-gradient(currentColor,currentColor) 0 100%/0 1.5px no-repeat;align-items:center;gap:7px;padding-bottom:2px;font-size:15px;font-weight:600;display:inline-flex}.text-link:hover{background-size:100% 1.5px;gap:10px}.notice{background:var(--accent-soft);border:1px solid var(--accent);padding:20px 24px}@supports (color:color-mix(in lab, red, red)){.notice{border:1px solid color-mix(in srgb, var(--accent) 22%, transparent)}}.notice{border-radius:var(--radius);color:var(--ink-2);margin:28px 0;font-size:15.5px}.notice strong{color:var(--ink)}.notice p{color:var(--ink-2);margin-top:6px}.spotlight{isolation:isolate;position:relative}.spotlight:before{content:"";z-index:-1;border-radius:inherit;opacity:0;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%), var(--glow), transparent 45%);pointer-events:none;transition:opacity .3s;position:absolute;inset:0}.spotlight:hover:before{opacity:1}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);transition:transform .3s var(--ease), border-color .3s, box-shadow .3s var(--ease);padding:28px;display:block}a.card:hover,.card.hoverable:hover{border-color:var(--accent);transform:translateY(-4px)}@supports (color:color-mix(in lab, red, red)){a.card:hover,.card.hoverable:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--line))}}a.card:hover,.card.hoverable:hover{box-shadow:var(--shadow-md)}.card h2,.card h3{letter-spacing:-.02em;margin:14px 0 10px;font-size:21px;font-weight:600}.card p{font-size:15px;line-height:1.7}.card .card-icon{background:var(--accent-soft);width:44px;height:44px;color:var(--accent);border-radius:12px;place-items:center;display:grid}.card .more{color:var(--accent);align-items:center;gap:6px;margin-top:18px;font-size:14px;font-weight:600;display:inline-flex}.card .more svg{transition:transform .25s var(--ease)}a.card:hover .more svg{transform:translate(4px)}.cards{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.cards.two{grid-template-columns:1fr 1fr}.js [data-reveal]{opacity:0;transition:opacity .9s var(--ease), transform .9s var(--ease);transition-delay:var(--delay,0s);transform:translateY(26px)}.js [data-reveal=fade]{transform:none}.js [data-reveal=scale]{transform:translateY(18px)scale(.97)}.js [data-reveal].is-visible{opacity:1;transform:none}.page-enter{animation:page-enter .6s var(--ease) backwards}@keyframes page-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes pulse-dot{0%,to{box-shadow:0 0 #ea5d1c80}60%{box-shadow:0 0 0 7px #ea5d1c00}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes shimmer{to{background-position:200%}}.scroll-progress{z-index:60;transform-origin:0;height:2px;transform:scaleX(var(--progress,0));background:var(--spectrum);pointer-events:none;position:fixed;top:0;left:0;right:0}.back-to-top{z-index:40;border:1px solid var(--line-2);background:var(--panel);width:44px;height:44px;color:var(--ink);box-shadow:var(--shadow-md);opacity:0;pointer-events:none;transition:opacity .3s, transform .35s var(--ease-spring), border-color .2s;border-radius:50%;place-items:center;display:grid;position:fixed;bottom:22px;right:22px;transform:translateY(14px)scale(.9)}.back-to-top.visible{opacity:1;pointer-events:auto;transform:none}.back-to-top:hover{border-color:var(--accent);color:var(--accent)}.site-header{z-index:50;background:0 0;border-bottom:1px solid #0000;transition:background-color .3s,border-color .3s,box-shadow .3s;position:sticky;top:0}.site-header:before{content:"";z-index:-1;opacity:0;background:var(--header);-webkit-backdrop-filter:saturate(180%)blur(18px);transition:opacity .3s;position:absolute;inset:0}[data-scrolled] .site-header,.site-header.menu-open{border-bottom-color:var(--line);box-shadow:0 8px 30px -22px #0d1b2e80}[data-scrolled] .site-header:before,.site-header.menu-open:before{opacity:1}.header-inner{height:var(--header-h);align-items:center;gap:28px;display:flex}.brand{letter-spacing:-.035em;color:var(--ink);flex-shrink:0;align-items:center;gap:11px;font-size:19px;font-weight:750;line-height:1.05;display:flex}.brand img{width:38px;height:38px;transition:transform .5s var(--ease-spring);border-radius:9px}.brand:hover img{transform:rotate(-8deg)scale(1.06)}.brand small{letter-spacing:.26em;color:var(--muted);margin-top:5px;font-size:9.5px;font-weight:600;display:block}.nav{gap:4px;margin-left:12px;display:flex}.nav a{color:var(--muted);border-radius:8px;padding:8px 13px;font-size:14.5px;font-weight:500;transition:color .2s,background-color .2s;position:relative}.nav a:after{content:"";background:var(--brand-gradient);transform-origin:0;height:2px;transition:transform .35s var(--ease);border-radius:2px;position:absolute;bottom:3px;left:13px;right:13px;transform:scaleX(0)}.nav a:hover{color:var(--ink)}.nav a:hover:after{transform:scaleX(.35)}.nav a[aria-current]{color:var(--ink)}.nav a[aria-current]:after{transform:scaleX(1)}.header-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.icon-button{border:1px solid var(--line);background:var(--panel);width:40px;height:40px;color:var(--ink-2);border-radius:10px;place-items:center;transition:border-color .2s,color .2s,transform .2s;display:grid}.icon-button:hover{border-color:var(--accent);color:var(--accent)}.theme-toggle svg{transition:transform .6s var(--ease-spring), opacity .3s}.theme-toggle .sun{position:absolute}.theme-toggle{position:relative;overflow:hidden}.dark .theme-toggle .sun{opacity:1;transform:translateY(0)rotate(0)}.dark .theme-toggle .moon{opacity:0;transform:translateY(26px)rotate(90deg)}html:not(.dark) .theme-toggle .sun{opacity:0;transform:translateY(-26px)rotate(-90deg)}html:not(.dark) .theme-toggle .moon{opacity:1;transform:none}.header-download{padding:10px 16px}.menu-button,.mobile-nav{display:none}.github-chip{align-items:center;gap:8px;width:auto;padding:0 13px;font-size:13.5px;font-weight:600;display:inline-flex}.hero{text-align:center;isolation:isolate;padding:56px 0 0;position:relative}.hero-canvas-wrap{inset:calc(var(--header-h) * -1) 0 auto;z-index:-2;pointer-events:none;-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;height:860px;position:absolute;overflow:hidden;-webkit-mask-image:radial-gradient(58% 46% at 50% 40%,#0000 22%,#000 78%),linear-gradient(#000 55%,#0000);mask-image:radial-gradient(58% 46% at 50% 40%,#0000 22%,#000 78%),linear-gradient(#000 55%,#0000);-webkit-mask-composite:source-in;mask-composite:intersect}.hero-canvas{opacity:.5;filter:saturate(1.05);width:100%;height:100%;display:block}.dark .hero-canvas{opacity:.62}.hero:after{content:"";z-index:-1;pointer-events:none;background:radial-gradient(ellipse 55% 40% at 50% 30%, var(--bg) 30%, transparent 75%);position:absolute;inset:-80px 0 0}.release-pill{border:1px solid var(--line);background:var(--panel);border-radius:999px;align-items:center;gap:10px;padding:6px 8px 6px 14px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.release-pill{background:color-mix(in srgb, var(--panel) 82%, transparent)}}.release-pill{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--ink-2);box-shadow:var(--shadow-sm);transition:border-color .25s, box-shadow .25s, transform .25s var(--ease);animation:rise .8s var(--ease) both;font-size:13px;font-weight:500}.release-pill:hover{border-color:var(--accent);box-shadow:var(--shadow-md);transform:translateY(-1px)}.release-pill .dot{background:var(--solar);border-radius:50%;width:8px;height:8px;animation:2.2s infinite pulse-dot}.release-pill .pill-cta{background:var(--accent-soft);color:var(--accent);border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:12.5px;font-weight:600;display:inline-flex}.hero h1{letter-spacing:-.055em;max-width:900px;animation:rise .9s 80ms var(--ease) both;margin:26px auto 0;font-size:clamp(44px,7vw,84px);font-weight:650;line-height:1.02}.hero h1 em{background:linear-gradient(100deg, var(--accent), var(--violet) 25%, var(--solar) 50%, var(--violet) 75%, var(--accent));color:#0000;background-size:200%;-webkit-background-clip:text;background-clip:text;padding-right:.04em;font-style:normal;animation:14s linear infinite shimmer}.hero-copy{max-width:640px;animation:rise .9s .16s var(--ease) both;margin:26px auto 32px;font-size:18.5px;line-height:1.65}.hero .actions{animation:rise .9s .24s var(--ease) both;justify-content:center}.hero-meta{color:var(--muted);animation:rise .9s .3s var(--ease) both;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 18px;margin:22px 0 54px;font-size:13px;display:flex}.hero-meta span{align-items:center;gap:7px;display:inline-flex}.hero-meta svg{color:var(--accent)}.hero-meta i{background:var(--line-2);width:1px;height:14px}.workspace-preview{animation:rise 1s .38s var(--ease) both;position:relative}.workspace-tabs{border:1px solid var(--line);background:var(--panel);border-radius:14px;gap:4px;padding:5px;display:inline-flex;position:relative}@supports (color:color-mix(in lab, red, red)){.workspace-tabs{background:color-mix(in srgb, var(--panel) 85%, transparent)}}.workspace-tabs{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-sm)}.workspace-tabs .indicator{background:var(--accent-soft);border:1px solid var(--accent);border-radius:10px;position:absolute;top:5px;bottom:5px;left:0}@supports (color:color-mix(in lab, red, red)){.workspace-tabs .indicator{border:1px solid color-mix(in srgb, var(--accent) 25%, transparent)}}.workspace-tabs .indicator{transition:transform .45s var(--ease-spring), width .45s var(--ease)}.workspace-tabs button{z-index:1;color:var(--muted);background:0 0;border:0;border-radius:10px;align-items:center;gap:9px;padding:9px 18px;font-size:14px;font-weight:600;transition:color .25s;display:flex;position:relative}.workspace-tabs button[aria-selected=true]{color:var(--accent)}.app-showcase-wrap{perspective:1800px;width:min(1080px,100%);margin:22px auto 0;position:relative}.app-showcase-wrap:before{content:"";z-index:-1;background:var(--spectrum);filter:blur(70px);opacity:.22;border-radius:40px;position:absolute;inset:8% 6% -6%}.dark .app-showcase-wrap:before{opacity:.3}.app-showcase{border:1px solid var(--line-2);background:var(--panel);box-shadow:var(--shadow-lg);text-align:left;transform:rotateX(var(--tilt,0deg));transform-origin:50% 0;border-radius:16px;transition:transform .2s linear;position:relative;overflow:hidden}.window-bar{height:40px;color:var(--muted);border-bottom:1px solid var(--line);background:var(--panel-2);align-items:center;gap:12px;padding:0 16px;font-size:12px;display:flex}.window-dots{gap:6px;display:flex}.window-dots i{background:#f26a5f;border-radius:50%;width:10px;height:10px}.window-dots i:nth-child(2){background:#f5bd4f}.window-dots i:nth-child(3){background:#5ec26a}.window-title{text-align:center;flex:1;font-weight:500}.window-label{letter-spacing:.14em;font-size:10px}.showcase-stage{background:#eef1f5;display:grid;position:relative}.dark .showcase-stage{background:#0b111c}.showcase-stage img{opacity:0;width:100%;height:auto;transition:opacity .7s var(--ease), transform 1.2s var(--ease);grid-area:1/1;display:block;transform:scale(1.015)}.showcase-stage img.active{opacity:1;transform:none}.app-showcase figcaption{color:var(--muted);border-top:1px solid var(--line);align-items:center;gap:9px;padding:13px 18px;font-size:13px;display:flex}.app-showcase figcaption svg{color:var(--accent)}.app-showcase figcaption span{letter-spacing:.1em;margin-left:auto;font-size:11px}.stats-band{border-block:1px solid var(--line);background:var(--panel);margin-top:72px;padding:34px 0;position:relative}@supports (color:color-mix(in lab, red, red)){.stats-band{background:color-mix(in srgb, var(--panel) 60%, transparent)}}.stats-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.stat{border-left:1px solid var(--line);flex-direction:column;gap:4px;padding-left:20px;display:flex}.stat:first-child{border-left:0;padding-left:0}.stat-value{letter-spacing:-.04em;color:var(--ink);font-variant-numeric:tabular-nums;font-size:clamp(28px,3.2vw,38px);font-weight:650;line-height:1.1}.stat-value .unit{color:var(--muted);letter-spacing:-.01em;margin-left:2px;font-size:.55em;font-weight:600}.stat-label{color:var(--muted);font-size:13px}.stat-label .live{letter-spacing:.1em;color:#1f9d55;align-items:center;gap:5px;margin-left:6px;font-size:10px;font-weight:700;display:inline-flex}.stat-label .live:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px;animation:2s infinite pulse-dot}.section{padding-block:104px}.section.tight{padding-block:72px}.section-heading{justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:48px;display:flex}.section-heading h2{max-width:640px}.section-heading>p{max-width:380px;font-size:16px}.section-heading.center{text-align:center;flex-direction:column;align-items:center}.section-heading.center>p{max-width:620px}.band{background:var(--bg-2);border-block:1px solid var(--line)}.toolkit-branches{grid-template-columns:1fr 1fr;gap:20px;display:grid}.toolkit-branch{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);transition:border-color .3s, box-shadow .3s var(--ease), transform .3s var(--ease);padding:34px}.toolkit-branch:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.toolkit-branch:hover{border-color:color-mix(in srgb, var(--accent) 40%, var(--line))}}.toolkit-branch:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.branch-label{color:var(--accent);letter-spacing:.14em;align-items:center;gap:12px;font-size:12px;font-weight:650;display:flex}.branch-label .card-icon{background:var(--accent-soft);border-radius:11px;place-items:center;width:40px;height:40px;display:grid}.toolkit-branch.solar .branch-label{color:var(--solar)}.toolkit-branch.solar .branch-label .card-icon{background:var(--solar)}@supports (color:color-mix(in lab, red, red)){.toolkit-branch.solar .branch-label .card-icon{background:color-mix(in srgb, var(--solar) 12%, transparent)}}.toolkit-branch h3{margin:24px 0 12px;font-size:27px;font-weight:650}.toolkit-branch>.text-link{margin-top:24px}.toolkit-children{border-top:1px solid var(--line);gap:4px;margin-top:22px;padding-top:10px;display:grid}.toolkit-children a{border-radius:12px;align-items:center;gap:14px;margin-inline:-12px;padding:12px;transition:background-color .2s;display:flex}.toolkit-children a:hover{background:var(--bg-2)}.toolkit-children svg{color:var(--solar);flex-shrink:0}.toolkit-children strong,.toolkit-children small{display:block}.toolkit-children strong{font-size:15.5px;font-weight:600}.toolkit-children small{color:var(--muted);margin-top:2px;font-size:13.5px}.toolkit-children .chev{color:var(--muted);transition:transform .25s var(--ease);margin-left:auto}.toolkit-children a:hover .chev{color:var(--accent);transform:translate(3px)}.feature-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.feature{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);transition:border-color .3s, transform .3s var(--ease), box-shadow .3s var(--ease);padding:30px}.feature:hover{box-shadow:var(--shadow-md);border-color:var(--accent);transform:translateY(-4px)}@supports (color:color-mix(in lab, red, red)){.feature:hover{border-color:color-mix(in srgb, var(--accent) 40%, var(--line))}}.feature .card-icon{background:var(--accent-soft);width:46px;height:46px;color:var(--accent);transition:transform .45s var(--ease-spring);border-radius:13px;place-items:center;margin-bottom:22px;display:grid}.feature:hover .card-icon{transform:rotate(-8deg)scale(1.08)}.feature h3{letter-spacing:-.02em;margin-bottom:10px;font-size:20px;font-weight:600}.feature p{font-size:15.5px;line-height:1.75}.feature ul{gap:8px;margin-top:16px;display:grid}.feature li{color:var(--ink-2);align-items:baseline;gap:9px;font-size:14px;display:flex}.feature li:before{content:"";background:var(--accent);border-radius:50%;flex-shrink:0;width:5px;height:5px;transform:translateY(-2px)}.solar-tool{grid-template-columns:1fr 1.6fr;align-items:center;gap:56px;margin-top:64px;display:grid}.solar-tool.reverse{grid-template-columns:1.6fr 1fr}.solar-tool.reverse .tool-copy{order:2}.tool-number{letter-spacing:.14em;color:var(--solar);font-size:12px;font-weight:650}.tool-copy h3{margin:14px 0 18px;font-size:clamp(28px,3vw,38px);font-weight:650}.tool-copy>p{margin-bottom:18px;font-size:16px;line-height:1.75}.capability-list{gap:4px;margin:24px 0;display:grid}.capability-list li{color:var(--ink-2);border-bottom:1px dashed var(--line);align-items:center;gap:12px;padding:8px 0;font-size:15px;display:flex}.capability-list svg{color:var(--solar);flex-shrink:0}.tool-image{border:1px solid var(--line-2);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-lg);transition:transform .5s var(--ease), box-shadow .5s var(--ease);display:block;overflow:hidden}.tool-image:hover{transform:translateY(-6px)scale(1.01)}.tool-image .image-frame{overflow:hidden}.tool-image img{width:100%;height:auto;transition:transform 1.2s var(--ease);display:block}.tool-image:hover img{transform:scale(1.03)}.tool-image>span{color:var(--muted);border-top:1px solid var(--line);align-items:center;gap:8px;padding:13px 18px;font-size:13px;display:flex}.parameter-pills{flex-wrap:wrap;gap:8px;margin:22px 0;display:flex}.parameter-pills span{background:var(--panel);border:1px solid var(--line);color:var(--ink-2);border-radius:999px;padding:6px 11px;font-size:12.5px;font-weight:500;transition:border-color .2s,color .2s}.parameter-pills span:hover{border-color:var(--solar);color:var(--solar)}.movie-heading{margin-top:100px}.movie-heading h3{margin:0 0 10px;font-size:clamp(26px,3vw,34px);font-weight:650}.movie-grid{grid-template-columns:1fr 1fr;gap:20px;margin-top:28px;display:grid}.example-movie{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);transition:box-shadow .3s var(--ease), transform .3s var(--ease);margin:28px 0;overflow:hidden}.example-movie:hover{box-shadow:var(--shadow-md)}.movie-grid .example-movie{margin:0}.example-movie video{aspect-ratio:16/10;object-fit:contain;background:#04070d;width:100%;display:block}.example-movie figcaption{padding:20px 22px}.example-movie strong{color:var(--ink);font-weight:600;display:block}.example-movie figcaption>span{color:var(--muted);margin-top:6px;font-size:14px;display:block}.movie-download{color:var(--accent);align-items:center;gap:7px;margin-top:12px;font-size:13.5px;font-weight:600;display:inline-flex}.movie-download:hover{text-underline-offset:4px;text-decoration:underline}.highlight-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.highlight{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);transition:transform .3s var(--ease), border-color .3s, box-shadow .3s var(--ease);padding:26px}.highlight:hover{border-color:var(--accent);transform:translateY(-3px)}@supports (color:color-mix(in lab, red, red)){.highlight:hover{border-color:color-mix(in srgb, var(--accent) 40%, var(--line))}}.highlight:hover{box-shadow:var(--shadow-md)}.highlight .card-icon{background:var(--accent-soft);width:40px;height:40px;color:var(--accent);border-radius:11px;place-items:center;margin-bottom:18px;display:grid}.highlight.solar .card-icon{background:var(--solar)}@supports (color:color-mix(in lab, red, red)){.highlight.solar .card-icon{background:color-mix(in srgb, var(--solar) 12%, transparent)}}.highlight.solar .card-icon{color:var(--solar)}.highlight h3{letter-spacing:-.015em;margin-bottom:8px;font-size:17.5px;font-weight:600}.highlight p{font-size:14.5px;line-height:1.7}.highlight ul{gap:7px;margin-top:12px;display:grid}.highlight li{color:var(--muted);padding-left:16px;font-size:14px;line-height:1.6;position:relative}.highlight li:before{content:"";background:var(--accent);opacity:.7;border-radius:2px;width:6px;height:6px;position:absolute;top:.62em;left:0}.highlight li strong{color:var(--ink-2);font-weight:600}.learn-grid{grid-template-columns:.9fr 1.1fr;align-items:center;gap:80px;display:grid}.learn-grid>div>p{max-width:440px;margin-top:18px;font-size:16.5px}.resource-links{display:grid}.resource-links a{border-bottom:1px solid var(--line);transition:background-color .25s, padding .3s var(--ease);border-radius:0;align-items:center;gap:22px;padding:22px 8px;display:flex}.resource-links a:first-child{border-top:1px solid var(--line)}.resource-links a:hover{background:var(--panel);padding-inline:18px}.resource-links a>span{color:var(--accent);font:600 12px var(--font-code)}.resource-links h3{letter-spacing:-.02em;margin-bottom:4px;font-size:19px;font-weight:600}.resource-links p{font-size:14.5px}.resource-links svg{color:var(--muted);transition:transform .3s var(--ease), color .2s;flex-shrink:0;margin-left:auto}.resource-links a:hover svg{color:var(--accent);transform:translate(4px)}.book{--rx:0deg;--ry:-18deg;perspective:1400px;width:min(300px,70%);margin:0 auto;position:relative}.book-inner{transform-style:preserve-3d;transform:rotateX(var(--rx)) rotateY(var(--ry));transition:transform .6s var(--ease);animation:7s ease-in-out infinite float;position:relative}.book:hover .book-inner{--ry:-6deg}.book img{width:100%;height:auto;box-shadow:var(--shadow-lg), inset 4px 0 8px #00000014;border-radius:3px 8px 8px 3px;display:block}.book-inner:before{content:"";transform-origin:0;background:repeating-linear-gradient(90deg,#f3f3f0 0 1px,#dcdcd6 1px 2px);border-radius:0 3px 3px 0;width:16px;position:absolute;top:2%;bottom:2%;right:-14px;transform:rotateY(90deg)translateZ(-1px)}.book-inner:after{content:"";pointer-events:none;background:linear-gradient(90deg,#00000024,#0000 6% 92%,#fff3);border-radius:3px 8px 8px 3px;position:absolute;inset:0}.book-shadow{filter:blur(14px);z-index:-1;background:#0d1b2e40;border-radius:50%;height:24px;position:absolute;bottom:-26px;left:10%;right:0}.book-badge{z-index:2;background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow-md);color:var(--ink);border-radius:12px;padding:10px 14px;font-size:12.5px;font-weight:600;position:absolute;top:64%;right:-18px}.book-badge small{color:var(--muted);font-weight:500;display:block}.community-banner{grid-template-columns:1.3fr 1fr;gap:24px;display:grid}.community-card,.citation-teaser{border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--panel);padding:44px;position:relative;overflow:hidden}.community-card{background:radial-gradient(120% 140% at 100% 0%, var(--accent), transparent 55%), radial-gradient(90% 120% at 0% 100%, var(--solar), transparent 55%), var(--panel)}@supports (color:color-mix(in lab, red, red)){.community-card{background:radial-gradient(120% 140% at 100% 0%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 55%), radial-gradient(90% 120% at 0% 100%, color-mix(in srgb, var(--solar) 12%, transparent), transparent 55%), var(--panel)}}.community-card h2{margin-bottom:16px}.community-card p{max-width:460px;font-size:16.5px}.community-card .actions{margin-top:28px}.citation-teaser h3{font-size:28px;font-weight:600}.citation-teaser p{margin:16px 0 22px;font-size:15.5px}.github-link{color:var(--muted);align-items:center;gap:9px;margin-top:26px;font-size:14px;transition:color .2s;display:flex}.github-link:hover{color:var(--ink)}.cta-banner{text-align:center;color:#fff;isolation:isolate;background:radial-gradient(80% 140% at 15% 0,#2a7ff0 0%,#0000 60%),radial-gradient(70% 120% at 100% 100%,#e85a22 0%,#0000 55%),#0b1a33;border-radius:28px;padding:64px 56px;position:relative;overflow:hidden}.cta-banner:before{content:"";z-index:-1;background-image:linear-gradient(#ffffff0f 1px,#0000 1px),linear-gradient(90deg,#ffffff0f 1px,#0000 1px);background-size:34px 34px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000 30%,#0000 75%);mask-image:radial-gradient(#000 30%,#0000 75%)}.cta-banner h2{color:#fff;max-width:720px;margin:0 auto}.cta-banner p{color:#ffffffc7;max-width:560px;margin:18px auto 30px;font-size:17px}.cta-banner .actions{justify-content:center}.cta-banner .button.secondary{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff1a;border-color:#ffffff47}.cta-banner .button.secondary:hover{background:#ffffff2e;border-color:#fff}.cta-banner .button.primary{color:#0b1a33;background:#fff;box-shadow:0 14px 30px -12px #00000080}.cta-banner .button.primary:after{background:linear-gradient(115deg,#0000 30%,#1766d126 48%,#0000 66%)}.site-footer{border-top:1px solid var(--line);background:linear-gradient(var(--bg), var(--bg-2));margin-top:40px;padding:64px 0 28px}.footer-grid{grid-template-columns:1.6fr repeat(4,1fr);gap:40px;display:grid}.footer-brand p{max-width:280px;margin-top:18px;font-size:14.5px}.footer-brand .tag{margin-top:18px}.footer-col h3{letter-spacing:.02em;color:var(--ink);margin-bottom:14px;font-size:13px;font-weight:650}.footer-col a{width:fit-content;color:var(--muted);transition:color .2s, transform .25s var(--ease);padding:5px 0;font-size:14px;display:block}.footer-col a:hover{color:var(--accent);transform:translate(3px)}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:52px;padding-top:22px;font-size:13px;display:flex}.footer-bottom a:hover{color:var(--accent)}.footer-spectrum{background:var(--spectrum);opacity:.8;border-radius:3px;height:3px;margin-top:22px}.page-hero{isolation:isolate;padding:64px 0 48px;position:relative}.page-hero:before{content:"";inset:calc(var(--header-h) * -1) calc(50% - 50vw) 0;z-index:-1;background:radial-gradient(50% 90% at 82% 0%, var(--glow), transparent 70%), radial-gradient(40% 70% at 0% 10%, var(--solar), transparent 70%);position:absolute}@supports (color:color-mix(in lab, red, red)){.page-hero:before{background:radial-gradient(50% 90% at 82% 0%, var(--glow), transparent 70%), radial-gradient(40% 70% at 0% 10%, color-mix(in srgb, var(--solar) 7%, transparent), transparent 70%)}}.page-hero:before{pointer-events:none}.breadcrumbs{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:22px;font-size:13px;display:flex}.breadcrumbs a:hover{color:var(--accent)}.breadcrumbs svg{opacity:.6}.page-hero h1{letter-spacing:-.05em;max-width:900px;animation:rise .8s 50ms var(--ease) both;font-size:clamp(38px,5.4vw,64px);font-weight:650}.page-hero .lede{max-width:680px;animation:rise .8s .12s var(--ease) both;margin-top:20px;font-size:18.5px;line-height:1.65}.page-hero .eyebrow{animation:rise .7s var(--ease) both}.page-hero .actions{animation:rise .8s .18s var(--ease) both;margin-top:28px}.content-section{padding-bottom:96px}.prose{max-width:780px;color:var(--ink-2);font-size:16.5px}.prose h2{letter-spacing:-.03em;margin:48px 0 16px;font-size:clamp(24px,2.6vw,30px);font-weight:650}.prose h3{letter-spacing:-.02em;margin:32px 0 12px;font-size:21px;font-weight:600}.prose p{color:var(--ink-2);margin:14px 0;line-height:1.85}.prose li{margin:8px 0;line-height:1.75}.prose li::marker{color:var(--accent)}.prose ol{padding-left:24px;list-style:decimal}.prose ul{padding-left:24px;list-style:outside}.prose a{color:var(--accent);text-decoration:underline;-webkit-text-decoration-color:var(--accent);-webkit-text-decoration-color:var(--accent);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.prose a{-webkit-text-decoration-color:color-mix(in srgb, var(--accent) 35%, transparent);-webkit-text-decoration-color:color-mix(in srgb, var(--accent) 35%, transparent);-webkit-text-decoration-color:color-mix(in srgb, var(--accent) 35%, transparent);text-decoration-color:color-mix(in srgb, var(--accent) 35%, transparent)}}.prose a{text-underline-offset:3px;transition:text-decoration-color .2s}.prose a:hover{text-decoration-color:currentColor}.prose img{border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:12px;margin:22px 0}.prose strong{color:var(--ink);font-weight:600}.prose pre{margin:18px 0}.prose blockquote{border-left:3px solid var(--accent);color:var(--muted);padding-left:18px}.doc-layout{grid-template-columns:220px minmax(0,1fr);gap:64px;display:grid}.doc-nav{top:calc(var(--header-h) + 28px);align-self:start;display:grid;position:sticky}.doc-nav a{border-left:2px solid var(--line);color:var(--muted);padding:8px 14px;font-size:14px;transition:color .2s,border-color .2s}.doc-nav a:hover,.doc-nav a.active{color:var(--accent);border-color:var(--accent)}.doc-nav .eyebrow{padding-left:14px}.formula{text-align:center;background:var(--panel);border:1px solid var(--line);color:var(--ink);border-radius:12px;margin:18px 0;padding:22px;font-size:18px;display:block}.article-list{gap:14px;display:grid}.article-link{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);transition:border-color .25s, transform .3s var(--ease), box-shadow .3s var(--ease);grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding:26px 28px;display:grid}.article-link:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.article-link:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--line))}}.article-link:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.article-link .num{font:600 28px/1 var(--font-code);color:var(--accent);opacity:.5}.article-link .eyebrow{margin-bottom:8px}.article-link .eyebrow:before{display:none}.article-link h2{letter-spacing:-.02em;margin-bottom:6px;font-size:22px;font-weight:600}.article-link p{font-size:15px}.article-link>svg{color:var(--muted);transition:transform .3s var(--ease), color .2s}.article-link:hover>svg{color:var(--accent);transform:translate(4px)}.tutorial-coming-soon{background:var(--panel);border:1px dashed var(--line-2);border-radius:var(--radius-lg);gap:24px;margin-bottom:36px;padding:32px;display:flex}.tutorial-coming-soon>svg{color:var(--solar);flex-shrink:0;margin-top:4px}.tutorial-coming-soon h2{margin:0 0 10px;font-size:26px}.tutorial-coming-soon p{max-width:720px;margin-bottom:16px}.steps{counter-reset:step;gap:4px;display:grid}.step{padding:4px 0 26px 64px;position:relative}.step:before{counter-increment:step;content:counter(step);background:var(--accent-soft);width:40px;height:40px;color:var(--accent);border-radius:12px;place-items:center;font-weight:700;display:grid;position:absolute;top:4px;left:0}.step:after{content:"";background:var(--line);width:2px;position:absolute;top:52px;bottom:6px;left:19px}.step:last-child:after{display:none}.step h2{margin:6px 0 8px;font-size:22px}.download-grid{grid-template-columns:repeat(3,1fr);align-items:stretch;gap:20px;display:grid}.download-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);transition:border-color .3s, transform .3s var(--ease), box-shadow .3s var(--ease);flex-direction:column;padding:30px;display:flex;position:relative}.download-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.download-card.recommended{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.download-card.recommended{border-color:color-mix(in srgb, var(--accent) 55%, var(--line))}}.download-card.recommended{box-shadow:0 0 0 4px var(--accent-soft), var(--shadow-md)}.download-card .recommended-badge{background:var(--accent);color:#fff;letter-spacing:.02em;box-shadow:var(--shadow-sm);border-radius:999px;padding:4px 12px;font-size:11.5px;font-weight:650;position:absolute;top:-12px;left:26px}.dark .download-card .recommended-badge{color:#06101f}.platform-head{align-items:center;gap:14px;display:flex}.platform-head .card-icon{background:var(--accent-soft);width:50px;height:50px;color:var(--accent);border-radius:14px;place-items:center;display:grid}.platform-head h2{font-size:24px;font-weight:650}.platform-head p{font-size:13.5px}.download-card .button{width:100%;margin-top:24px}.download-meta{color:var(--muted);justify-content:space-between;gap:10px;margin-top:12px;font-size:12.5px;display:flex}.download-card .install{flex:1;margin-top:20px;font-size:14.5px;line-height:1.7}.checksum{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.checksum summary{cursor:pointer;color:var(--muted);align-items:center;gap:6px;font-size:13px;font-weight:600;list-style:none;display:flex}.checksum summary::-webkit-details-marker{display:none}.checksum summary svg{transition:transform .25s var(--ease)}.checksum[open] summary svg{transform:rotate(90deg)}.checksum pre{margin-top:12px;padding:12px 14px;font-size:11.5px}.copy-row{flex-wrap:wrap;align-items:center;gap:12px;margin-top:10px;display:flex}.copy-row .status{margin:0}.download-card .release-link{color:var(--accent);align-items:center;gap:6px;margin-top:16px;font-size:13.5px;font-weight:600;display:inline-flex}.install-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.install-grid .card h3{align-items:center;gap:10px;margin-top:0;display:flex}.install-grid ol{color:var(--muted);gap:8px;padding-left:20px;font-size:14.5px;list-style:decimal;display:grid}.install-grid li::marker{color:var(--accent);font-weight:600}.release-table{border-collapse:collapse;width:100%;font-size:14.5px}.release-table th,.release-table td{text-align:left;border-bottom:1px solid var(--line);padding:14px 16px}.release-table th{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:650}.release-table td a{color:var(--accent);font-weight:500}.release-table td a:hover{text-underline-offset:3px;text-decoration:underline}.release-table tr{transition:background-color .2s}.release-table tbody tr:hover{background:var(--bg-2)}.table-scroll{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);overflow-x:auto}.channel-grid{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.channel{align-items:flex-start;gap:20px;display:flex}.channel .card-icon{flex-shrink:0}.channel h2{margin-top:2px}.setup-note{margin-top:26px}.handbook-intro{grid-template-columns:1.25fr 1fr;align-items:center;gap:56px;padding:8px 0 56px;display:grid}.handbook-intro h2{margin:6px 0 14px}.handbook-intro .book{width:min(260px,70%)}.guide-pdf .actions{margin-top:26px}.guide-pdf .small{align-items:center;gap:8px;margin-top:12px;display:flex}.guide-pdf-frame{border:1px solid var(--line);border-radius:var(--radius);width:100%;height:82vh;min-height:520px;box-shadow:var(--shadow-md);background:#fff;margin-top:28px}.handbook-search{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:56px;padding:26px;position:relative}.search-field{align-items:center;display:flex;position:relative}.search-field>svg{color:var(--muted);pointer-events:none;position:absolute;left:16px}.search-field input{border:1px solid var(--line-2);background:var(--bg);width:100%;color:var(--ink);border-radius:12px;outline:none;padding:15px 60px 15px 46px;font-size:16px;transition:border-color .2s,box-shadow .2s;display:block}.search-field input:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.search-field kbd{position:absolute;right:14px}.handbook-results{margin-top:18px;display:grid}.handbook-results a{animation:rise .35s var(--ease) both;border-radius:12px;margin-inline:-14px;padding:16px 14px;transition:background-color .2s;display:block}.handbook-results a:hover{background:var(--bg-2)}.handbook-results strong{color:var(--ink);font-weight:600;display:block}.handbook-results span{color:var(--muted);margin-top:4px;font-size:14.5px;line-height:1.6;display:block}mark{background:var(--solar-2)}@supports (color:color-mix(in lab, red, red)){mark{background:color-mix(in srgb, var(--solar-2) 38%, transparent)}}mark{color:inherit;border-radius:3px;padding:0 2px}.handbook-contents{grid-template-columns:1fr 1fr;gap:28px;display:grid}.handbook-part{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);padding:26px 28px 14px}.handbook-part h2{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:8px;font-size:13px;font-weight:650}.handbook-chapters a{border-top:1px solid var(--line);transition:color .2s, padding .3s var(--ease);align-items:baseline;gap:14px;padding:11px 0;display:flex}.handbook-chapters a:first-child{border-top:0}.handbook-chapters a:hover{color:var(--accent);padding-left:6px}.handbook-chapters a>span{width:26px;color:var(--muted);font:500 13px var(--font-code);flex-shrink:0}.handbook-chapters strong{font-size:15.5px;font-weight:500}.reading-progress{top:var(--header-h);z-index:45;pointer-events:none;background:0 0;height:3px;position:fixed;left:0;right:0}.reading-progress span{transform-origin:0;height:100%;transform:scaleX(var(--read,0));background:var(--brand-gradient);display:block}.handbook-reader{grid-template-columns:250px minmax(0,1fr) 210px;align-items:start;gap:52px;padding-top:40px;display:grid}.handbook-sidebar,.handbook-toc{top:calc(var(--header-h) + 26px);max-height:calc(100vh - var(--header-h) - 48px);overscroll-behavior:contain;scrollbar-width:thin;font-size:14px;position:sticky;overflow:auto}.handbook-sidebar .back{color:var(--accent);align-items:center;gap:6px;margin-bottom:20px;font-size:13.5px;font-weight:600;display:inline-flex}.handbook-sidebar .part{margin-bottom:16px}.handbook-sidebar .part>p{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;padding-left:12px;font-size:11px;font-weight:650}.handbook-sidebar nav a{color:var(--muted);border-radius:8px;gap:8px;padding:6px 12px;line-height:1.4;transition:color .2s,background-color .2s;display:flex}.handbook-sidebar nav a span{width:18px;font:500 12px/1.6 var(--font-code);opacity:.7;flex-shrink:0}.handbook-sidebar nav a:hover{color:var(--ink);background:var(--bg-2)}.handbook-sidebar nav a[aria-current=page]{color:var(--accent);background:var(--accent-soft);font-weight:600}.handbook-sidebar details{display:none}.handbook-toc p{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-size:11px;font-weight:650}.handbook-toc a{border-left:2px solid var(--line);color:var(--muted);padding:6px 0 6px 14px;font-size:13.5px;line-height:1.45;transition:color .2s,border-color .2s;display:block}.handbook-toc a:hover{color:var(--ink)}.handbook-toc a.active{color:var(--accent);border-left-color:var(--accent);font-weight:500}.handbook-toc .toc-actions{gap:8px;margin-top:22px;display:grid}.handbook-toc .toc-actions a{color:var(--accent);border:0;align-items:center;gap:7px;padding:0;font-weight:600;display:inline-flex}.handbook-body{min-width:0}.chapter-kicker{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.chapter-kicker a:hover{color:var(--accent)}.handbook-prose{overflow-wrap:break-word;max-width:100%;font-size:16.5px;line-height:1.8}.handbook-prose>h1:first-child{letter-spacing:-.045em;margin:14px 0 34px;font-size:clamp(34px,4.4vw,50px);font-weight:650;line-height:1.08}.handbook-prose h2{margin-top:56px;padding-top:8px;font-size:28px}.handbook-prose h3{margin-top:34px;font-size:20px}.handbook-prose h4,.handbook-prose h5{color:var(--ink);letter-spacing:-.01em;margin:26px 0 8px;font-size:17px;font-weight:650}.handbook-prose h2,.handbook-prose h3{scroll-margin-top:calc(var(--header-h) + 24px)}.handbook-prose math{font-size:1.08em}.handbook-prose math[display=block]{background:var(--panel);border:1px solid var(--line);border-radius:12px;max-width:100%;margin:22px 0;padding:22px 8px;display:block;overflow-x:auto}.handbook-prose figure{margin:34px 0}.handbook-prose figure img{width:min(var(--fig-w,100%), var(--fig-max,100%));border:1px solid var(--line);max-width:100%;height:auto;box-shadow:var(--shadow-md);cursor:zoom-in;transition:transform .35s var(--ease), box-shadow .35s var(--ease);background:#fff;border-radius:12px;margin:0 auto;display:block}.handbook-prose figure img:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.handbook-prose figcaption{color:var(--muted);text-align:center;margin-top:14px;max-width:640px;margin-inline:auto;font-size:14px;line-height:1.6}.handbook-prose figcaption strong{color:var(--ink-2)}.figure-panels{grid-template-columns:1fr 1fr;align-items:end;gap:18px;display:grid}.figure-panel{text-align:center}.figure-panel img{width:min(100%, var(--fig-max,100%));margin:0 auto}.figure-subcaption{color:var(--muted);margin-top:10px;font-size:13.5px;display:block}.flow-diagram{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);gap:30px;padding:28px;display:grid}.flow-row{grid-template-columns:repeat(3,1fr);gap:30px;display:grid}.flow-box{border:1.5px solid var(--accent);place-items:center;padding:14px 12px;display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.flow-box{border:1.5px solid color-mix(in srgb, var(--accent) 55%, transparent)}}.flow-box{background:var(--accent-soft);text-align:center;color:var(--ink-2);border-radius:10px;font-size:13.5px;line-height:1.45}.flow-box.context{border-color:var(--solar)}@supports (color:color-mix(in lab, red, red)){.flow-box.context{border-color:color-mix(in srgb, var(--solar) 60%, transparent)}}.flow-box.context{background:var(--solar);border-style:dashed}@supports (color:color-mix(in lab, red, red)){.flow-box.context{background:color-mix(in srgb, var(--solar) 8%, transparent)}}.flow-box .arrow{color:var(--accent);place-items:center;font-style:normal;font-weight:700;display:grid;position:absolute}.flow-box .arrow.right{width:30px;top:50%;left:100%;transform:translateY(-50%)}.flow-box .arrow.left{width:30px;top:50%;right:100%;transform:translateY(-50%)}.flow-box .arrow.down{height:30px;top:100%;left:50%;transform:translate(-50%)}.flow-box .arrow.right:before{content:"→"}.flow-box .arrow.left:before{content:"←"}.flow-box .arrow.down:before{content:"↓"}.flow-box.context .arrow{color:var(--solar)}.guide-table-scroll{border:1px solid var(--line);background:var(--panel);border-radius:12px;max-width:100%;margin:28px 0;overflow-x:auto}.handbook-prose table{border-collapse:collapse;width:100%;margin:0;font-size:14.5px;line-height:1.6}.handbook-prose caption{text-align:left;background:var(--bg-2);color:var(--ink);border-bottom:1px solid var(--line);padding:14px 16px;font-size:14px;font-weight:600}.handbook-prose th,.handbook-prose td{border-bottom:1px solid var(--line);vertical-align:top;min-width:100px;padding:11px 14px}.handbook-prose tr:last-child td{border-bottom:0}.handbook-prose th{background:var(--panel-2);text-align:left;color:var(--ink);font-weight:600}.handbook-prose dt{color:var(--ink);margin-top:18px;font-weight:650}.handbook-prose dd{margin:4px 0 14px 20px}.handbook-prose dd p{margin:4px 0}.handbook-prose .note,.handbook-prose .tip,.handbook-prose .caution,.handbook-prose .background{border:1px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){.handbook-prose .note,.handbook-prose .tip,.handbook-prose .caution,.handbook-prose .background{border:1px solid color-mix(in srgb, var(--accent) 22%, transparent)}}.handbook-prose .note,.handbook-prose .tip,.handbook-prose .caution,.handbook-prose .background{border-left:4px solid var(--accent);background:var(--accent-soft);border-radius:12px;margin:28px 0;padding:16px 22px}.handbook-prose .note>p:first-child strong,.handbook-prose .tip>p:first-child strong,.handbook-prose .caution>p:first-child strong,.handbook-prose .background>p:first-child strong{text-transform:uppercase;letter-spacing:.1em;color:var(--accent);font-size:12px}.handbook-prose .tip{background:#1f9d5514;border-color:#1f9d554d #1f9d554d #1f9d554d #1f9d55}.handbook-prose .tip>p:first-child strong{color:#1f9d55}.handbook-prose .caution{border-color:var(--caution)}@supports (color:color-mix(in lab, red, red)){.handbook-prose .caution{border-color:color-mix(in srgb, var(--caution) 32%, transparent)}}.handbook-prose .caution{border-left-color:var(--caution);background:var(--caution)}@supports (color:color-mix(in lab, red, red)){.handbook-prose .caution{background:color-mix(in srgb, var(--caution) 9%, transparent)}}.handbook-prose .caution>p:first-child strong{color:var(--caution)}.handbook-prose .background{border-color:var(--violet)}@supports (color:color-mix(in lab, red, red)){.handbook-prose .background{border-color:color-mix(in srgb, var(--violet) 28%, transparent)}}.handbook-prose .background{border-left-color:var(--violet);background:var(--violet)}@supports (color:color-mix(in lab, red, red)){.handbook-prose .background{background:color-mix(in srgb, var(--violet) 8%, transparent)}}.handbook-prose .background>p:first-child strong{color:var(--violet)}.handbook-prose .csl-entry{overflow-wrap:anywhere;margin-bottom:18px}.handbook-prose a{overflow-wrap:anywhere}.handbook-prose code{font-size:.85em}.chapter-pagination{grid-template-columns:1fr 1fr;gap:16px;margin-top:64px;display:grid}.chapter-pagination a{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);transition:border-color .25s, transform .3s var(--ease), box-shadow .3s var(--ease);padding:20px 22px;display:block}.chapter-pagination a:hover{border-color:var(--accent);box-shadow:var(--shadow-md);transform:translateY(-3px)}.chapter-pagination a.next{text-align:right;grid-column:2}.chapter-pagination span{color:var(--muted);align-items:center;gap:6px;margin-bottom:6px;font-size:13px;display:flex}.chapter-pagination a.next span{justify-content:flex-end}.chapter-pagination strong{color:var(--ink);font-weight:600}.lightbox{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:zoom-out;background:#04080fdb;place-items:center;padding:4vh 4vw;animation:.25s both fade-in;display:grid;position:fixed;inset:0}.lightbox img{width:auto;max-width:100%;height:auto;max-height:82vh;animation:zoom-in .35s var(--ease) both;background:#fff;border-radius:10px;box-shadow:0 30px 80px #0009}.lightbox p{text-align:center;color:#ffffffd1;max-width:760px;margin-top:16px;font-size:14px}.lightbox .icon-button{color:#fff;background:#ffffff1a;border-color:#fff3;position:absolute;top:18px;right:18px}@keyframes fade-in{0%{opacity:0}}@keyframes zoom-in{0%{opacity:0;transform:scale(.94)}}.not-found{text-align:center;padding:60px 0 40px}.not-found .big{letter-spacing:-.06em;background:var(--spectrum);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(90px,18vw,180px);font-weight:750;line-height:1}@media (max-width:1180px){.handbook-reader{grid-template-columns:230px minmax(0,1fr)}.handbook-toc{display:none}}@media (max-width:1040px){.nav a{padding:8px 9px}.github-chip{display:none}.footer-grid{grid-template-columns:repeat(3,1fr)}.footer-brand{grid-column:1/-1}.highlight-grid{grid-template-columns:repeat(2,1fr)}.learn-grid{gap:48px}}@media (max-width:900px){:root{--header-h:68px}.wrap{width:calc(100% - 40px)}.nav,.header-download{display:none}.menu-button{display:grid}.mobile-nav{top:var(--header-h);z-index:49;background:var(--bg);opacity:0;visibility:hidden;transition:opacity .3s var(--ease), transform .35s var(--ease), visibility 0s .35s;padding:18px 20px 40px;display:block;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(-8px)}.mobile-nav.open{opacity:1;visibility:visible;transition-delay:0s;transform:none}.mobile-nav a{border-bottom:1px solid var(--line);color:var(--ink);opacity:0;transition:opacity .4s var(--ease), transform .4s var(--ease), color .2s;transition-delay:calc(var(--i) * 40ms);justify-content:space-between;align-items:center;padding:16px 4px;font-size:19px;font-weight:600;display:flex;transform:translateY(8px)}.mobile-nav.open a{opacity:1;transform:none}.mobile-nav a[aria-current]{color:var(--accent)}.mobile-nav .button{color:#fff;border-bottom:0;justify-content:center;width:100%;margin-top:24px;font-size:16px}.section{padding-block:76px}.section-heading{flex-direction:column;align-items:flex-start;gap:16px}.toolkit-branches,.community-banner,.learn-grid,.download-grid,.install-grid,.channel-grid,.handbook-intro,.handbook-contents{grid-template-columns:1fr}.feature-grid,.cards{grid-template-columns:1fr 1fr}.solar-tool,.solar-tool.reverse{grid-template-columns:1fr;gap:28px}.solar-tool.reverse .tool-copy{order:0}.doc-layout{grid-template-columns:1fr;gap:0}.doc-nav{flex-wrap:wrap;gap:6px;margin-bottom:28px;display:flex;position:static}.doc-nav .eyebrow{width:100%;padding:0}.doc-nav a{border:1px solid var(--line);border-radius:999px;padding:6px 13px}.handbook-reader{padding-top:24px;display:block}.handbook-sidebar{max-height:none;margin-bottom:28px;position:static;overflow:visible}.handbook-sidebar .parts{display:none}.handbook-sidebar details{border:1px solid var(--line);background:var(--panel);border-radius:12px;display:block}.handbook-sidebar summary{cursor:pointer;justify-content:space-between;align-items:center;padding:14px 16px;font-weight:600;display:flex}.handbook-sidebar details nav{max-height:360px;padding:0 8px 12px;overflow:auto}.reading-progress{top:var(--header-h)}.handbook-intro .book{display:none}.book-badge{right:-6px}}@media (max-width:640px){.wrap{width:calc(100% - 32px)}.brand{font-size:17px}.brand img{width:34px;height:34px}.hero{padding-top:36px}.hero-copy{font-size:16.5px}.hero .actions .button{width:100%}.hero-meta i,.window-label,.window-title{display:none}.app-showcase figcaption{font-size:11.5px}.app-showcase figcaption span{display:none}.workspace-tabs button{padding:9px 13px;font-size:13px}.stats-grid{grid-template-columns:1fr 1fr}.stat{border-left:0;padding-left:0}.stat:nth-child(3){grid-column:1/-1}.feature-grid,.cards,.cards.two,.highlight-grid,.movie-grid,.figure-panels{grid-template-columns:1fr}.community-card,.citation-teaser{padding:30px 24px}.cta-banner{border-radius:22px;padding:48px 22px}.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.page-hero{padding:40px 0 32px}.page-hero .lede{font-size:16.5px}.article-link{grid-template-columns:1fr;gap:10px;padding:22px}.article-link .num,.article-link>svg{display:none}.chapter-pagination{grid-template-columns:1fr}.chapter-pagination a.next{grid-column:1}.handbook-prose{font-size:16px}.handbook-prose table{min-width:520px}.handbook-prose figure img{width:min(100%, var(--fig-max,100%))}.flow-diagram,.flow-row{background:0 0;border:0;gap:12px;padding:0}.flow-row{grid-template-columns:1fr}.flow-box .arrow{display:none}.tutorial-coming-soon{flex-direction:column;gap:12px;padding:24px}.step{padding-left:54px}.back-to-top{bottom:14px;right:14px}.download-card{padding:24px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.js [data-reveal]{opacity:1;transform:none}}@media print{.site-header,.site-footer,.back-to-top,.scroll-progress,.reading-progress,.handbook-sidebar,.handbook-toc{display:none!important}}
