*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--h-bg);color:var(--h-text);font:400 16px/1.6 var(--h-font);font-feature-settings:"cv11", "ss01";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;overflow-x:hidden}a{color:inherit;text-decoration:none}code{font-family:var(--h-mono);background:var(--h-surface-2);border:1px solid var(--h-border);border-radius:6px;padding:.1em .38em;font-size:.88em}h1,h2,h3{letter-spacing:-.03em;font-family:var(--h-display);margin:0}p{margin:0}:focus-visible{outline:2px solid var(--h-a0);outline-offset:3px;border-radius:8px}.wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 24px}.skip{z-index:100;background:var(--h-surface);border-radius:8px;padding:8px 14px;position:absolute;top:8px;left:-9999px}.skip:focus{left:12px}[data-theme=light] .dark-only{display:none}.nav{z-index:50;-webkit-backdrop-filter:saturate(160%)blur(14px);background:color-mix(in srgb, var(--h-bg) 78%, transparent);border-bottom:1px solid var(--h-border);position:sticky;top:0}.nav-in{align-items:center;gap:28px;height:64px;display:flex}.brand{font:650 17px var(--h-display);letter-spacing:-.02em;align-items:center;gap:10px;display:inline-flex}.nav nav{gap:4px;display:flex}.nav nav a{color:var(--h-text-2);border-radius:8px;padding:7px 12px;font-size:14.5px;transition:color .15s,background .15s}.nav nav a:hover{color:var(--h-text);background:var(--h-surface-2)}.nav-r{align-items:center;gap:10px;margin-left:auto;display:flex}.theme{border:1px solid var(--h-border);width:36px;height:36px;color:var(--h-text-2);cursor:pointer;background:0 0;border-radius:9px;place-items:center;display:grid}.theme:hover{color:var(--h-text);border-color:var(--h-border-strong)}.theme svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round}.theme .moon,[data-theme=light] .theme .sun{display:none}[data-theme=light] .theme .moon{display:block}.btn{white-space:nowrap;height:46px;transform:translate(var(--tx,0), var(--ty,0));border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:0 22px;font-size:15px;font-weight:600;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .25s,background .2s,border-color .2s;display:inline-flex}.btn.sm{height:36px;padding:0 15px;font-size:14px}.btn.primary{background:var(--h-text);color:var(--h-bg);box-shadow:0 0 0 1px var(--h-border), 0 10px 40px -12px var(--h-a1);position:relative}.btn.primary:after{content:"";border-radius:inherit;pointer-events:none;opacity:0;background:var(--h-grad);-webkit-mask-composite:xor;padding:1px;transition:opacity .25s;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-composite:exclude;mask-mode:match-source,match-source}.btn.primary:hover{box-shadow:0 0 0 4px var(--h-glow), 0 14px 44px -10px var(--h-a1)}.btn.primary:hover:after{opacity:1}.btn.primary span{transition:transform .25s}.btn.primary:hover span{transform:translate(3px)}.btn.ghost{border-color:var(--h-border-strong);color:var(--h-text);background:color-mix(in srgb, var(--h-surface) 70%, transparent)}.btn.ghost:hover{border-color:var(--h-text-3)}.hero{padding:40px 0 64px;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background-image:linear-gradient(var(--h-border) 1px, transparent 1px), linear-gradient(90deg, var(--h-border) 1px, transparent 1px);opacity:.55;background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 60% at 50% 30%,#000 30%,#0000 75%);mask-image:radial-gradient(70% 60% at 50% 30%,#000 30%,#0000 75%)}.glow{pointer-events:none;background:radial-gradient(40% 50% at 30% 30%, var(--h-glow), transparent 70%), radial-gradient(35% 45% at 75% 25%, var(--h-glow-2), transparent 70%);height:640px;position:absolute;inset:-20% -10% auto}.hero-in{text-align:center;flex-direction:column;align-items:center;gap:56px;display:flex;position:relative}.hero-in>.eclipse+.hero-copy{margin-top:-56px}.hero-copy{z-index:1;flex-direction:column;align-items:center;max-width:900px;display:flex;position:relative}.hero-term{width:100%;max-width:980px}.eyebrow{color:var(--h-text-2);border:1px solid var(--h-border-strong);background:color-mix(in srgb, var(--h-surface) 60%, transparent);border-radius:999px;align-items:center;gap:10px;padding:6px 14px 6px 10px;font-size:13px;display:inline-flex}.eyebrow:hover{color:var(--h-text)}.pulse-dot{background:var(--h-grad);width:8px;height:8px;box-shadow:0 0 0 0 color-mix(in srgb, var(--h-a1) 60%, transparent);border-radius:50%;animation:2.4s infinite pd}@keyframes pd{70%{box-shadow:0 0 0 8px #0000}to{box-shadow:0 0 #0000}}.hero h1{letter-spacing:-.045em;margin-top:24px;font-size:clamp(2.5rem,6.6vw,5.25rem);font-weight:600;line-height:1}.hero h1 .grad{white-space:nowrap}.grad{background:var(--h-grad-text);color:#0000;-webkit-background-clip:text;background-clip:text}.lede{color:var(--h-text-2);max-width:38em;margin-top:22px;font-size:clamp(1.05rem,1.6vw,1.25rem)}.ctas{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.hero .ctas{justify-content:center}.works{color:var(--h-text-3);letter-spacing:.01em;margin-top:26px;font-size:14px}.steps3{text-align:left;grid-template-columns:repeat(3,1fr);gap:14px;width:100%;max-width:980px;margin:-16px 0 0;padding:0;list-style:none;display:grid}.steps3 li{border:1px solid var(--h-border);background:color-mix(in srgb, var(--h-surface) 70%, transparent);border-radius:14px;gap:12px;padding:14px 16px;display:flex}.steps3 .n{width:24px;height:24px;font:600 12px var(--h-mono);color:#16130f;background:var(--h-grad);border-radius:50%;flex:none;place-items:center;display:grid}.steps3>li>div>code{font:600 13.5px var(--h-mono);color:var(--h-text);background:0 0;border:0;padding:0;display:block}.steps3 p{color:var(--h-text-3);margin:6px 0 0;font-size:13.5px;line-height:1.5}.steps3 p code{color:var(--h-text-2);font-size:12.5px;display:inline}@media (width<=860px){.steps3{grid-template-columns:1fr}}.term{text-align:left;color:#e3ded4;background:#0c0c10;border:1px solid #f4f1ea1a;border-radius:16px;margin:0;overflow:hidden;box-shadow:0 30px 80px -30px #000000a6,inset 0 0 0 1px #f4f1ea05}[data-theme=light] .term{box-shadow:0 30px 70px -30px #3c280a66}.term-bar{background:#121217;border-bottom:1px solid #f4f1ea12;align-items:center;gap:12px;height:42px;padding:0 14px;display:flex}.dots{gap:7px;display:flex}.dots i{background:#2a2a31;border-radius:50%;width:11px;height:11px}.dots i:first-child{background:#ff5f57}.dots i:nth-child(2){background:#febc2e}.dots i:nth-child(3){background:#28c840}.term-title{text-align:center;font:500 12.5px var(--h-mono);color:#8e897f;flex:1}.term-replay{font:500 12px var(--h-font);color:#bdb7ac;cursor:pointer;background:0 0;border:1px solid #f4f1ea1f;border-radius:7px;padding:4px 10px}.term-replay:hover{color:#fff;border-color:#f4f1ea4d}.term-body{height:400px;font:400 12.2px/1.62 var(--h-mono);white-space:pre-wrap;overflow-wrap:anywhere;scrollbar-width:thin;scrollbar-color:#2a2a31 transparent;margin:0;padding:16px 18px 20px;overflow:auto}.term-body .ln{min-height:1.62em;display:block}.term-body .cmd{color:#fff;margin-top:6px;font-weight:600}.term-body .cmd:first-child{margin-top:0}.term-body .ps{color:#ffb547}.term-body .good{color:#6ee7a8}.term-body .dim{color:#8e897f}.term-body .bad{color:#ffd0d0;background:#ff7a7a24;margin:0 -18px;padding:0 18px;box-shadow:inset 3px 0 #ff7a7a}.term-body.playing .cur:after{content:"▋";color:#ffb547;animation:1s step-end infinite blink}@keyframes blink{50%{opacity:0}}.term-cap{color:#8e897f;background:#0e0e12;border-top:1px solid #f4f1ea0f;padding:10px 16px;font-size:12px}.term-cap code{color:#bdb7ac;background:0 0;border:0;padding:0}.term-cap a{color:#ffb547;margin-left:6px}.sec{padding:104px 0}.sec.alt{background:radial-gradient(900px 320px at 50% 0%, color-mix(in srgb, var(--h-a1) 7%, transparent), transparent), var(--h-bg-2);border-top:1px solid var(--h-border);border-bottom:1px solid var(--h-border)}.kicker{font:600 12.5px var(--h-mono);letter-spacing:.12em;text-transform:uppercase;background:var(--h-grad-text);color:#0000;-webkit-background-clip:text;background-clip:text;display:inline-block}.sec h2{letter-spacing:-.035em;max-width:22em;margin-top:12px;font-size:clamp(1.8rem,3.4vw,2.75rem);font-weight:600;line-height:1.1}.sec-lede{color:var(--h-text-2);max-width:40em;margin-top:14px;font-size:1.08rem}.card,.tile,.stat,.sim,.sec4>div,.code{background:var(--h-surface);border:1px solid var(--h-border);border-radius:var(--h-radius);box-shadow:var(--h-shadow)}.cards3{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px;display:grid}.card{padding:26px}.card .num{font:600 12px var(--h-mono);color:var(--h-text-3)}.card h3{margin-top:14px;font-size:1.12rem;font-weight:640}.card p{color:var(--h-text-2);margin-top:8px;font-size:15px}.diagram-fig{margin:32px 0 0}.diagram-fig img{width:100%;max-width:980px;height:auto;margin:0 auto;display:block}.diagram-fig .light-only{display:none}[data-theme=light] .diagram-fig .light-only{display:block}.bento{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px;display:grid}.tile{flex-direction:column;min-width:0;padding:22px 24px 24px;transition:border-color .2s,transform .2s;display:flex}.tile:hover{border-color:var(--h-border-strong);transform:translateY(-2px)}.tile.wide{grid-column:span 2}.tile h3{margin-top:18px;font-size:1.1rem;font-weight:640}.tile p{color:var(--h-text-2);flex:1;margin-top:8px;font-size:15px}.tile .more{color:var(--h-accent);margin-top:16px;font-size:14px;font-weight:560}.mini{background:var(--h-bg-2);border:1px solid var(--h-border);border-radius:11px;place-items:center;height:132px;display:grid;overflow:hidden}.mini svg{width:100%;height:100%;max-height:132px;padding:8px}.m-track{fill:var(--h-surface-2);stroke:var(--h-border)}.m-fill{fill:var(--h-a0);opacity:.9}.tile:nth-child(2n) .m-fill{fill:var(--h-a1)}.m-lbl{font:500 10.5px var(--h-mono);fill:var(--h-text-3)}.m-lbl.sm{font-size:9.5px}.m-lblb{font:600 11px var(--h-mono);fill:var(--h-text-2)}.m-line{fill:none;stroke:var(--h-border-strong);stroke-width:2px}.m-line.acc{stroke:var(--h-a1)}.m-line.dashed{stroke-dasharray:4 5}.m-dot{fill:var(--h-a0)}.m-dot.alt{fill:var(--h-a1)}.m-node{fill:var(--h-text)}.m-box{fill:var(--h-surface);stroke:var(--h-border-strong)}.m-box.bad{stroke:var(--h-danger);fill:var(--h-danger-bg)}.m-knob{fill:#fff;filter:drop-shadow(0 2px 3px #0000004d)}.m-gate{stroke:var(--h-danger);stroke-width:1.5px;stroke-dasharray:5 5}.m-chip{fill:var(--h-surface);stroke:var(--h-border-strong)}.m-chipt{font:600 10px var(--h-font);fill:var(--h-text-2)}.verdicts .ship{animation:6s infinite chip}.verdicts .hold{animation:6s 2s infinite chip}.verdicts .block{animation:6s 4s infinite chip}@keyframes chip{0%,30%{fill:var(--h-glow);stroke:var(--h-a0)}34%,to{fill:var(--h-surface);stroke:var(--h-border-strong)}}.grow-y{transform-box:fill-box;transform-origin:bottom;animation:5s cubic-bezier(.4,0,.2,1) infinite gy}@keyframes gy{0%{transform:scaleY(.05)}30%,85%{transform:scaleY(1)}to{transform:scaleY(.05)}}.travel-a{offset-path:path("M20 60 H70 C90 60 90 30 110 30 H180");animation:3s linear infinite travel}.travel-b{offset-path:path("M20 60 H70 C90 60 90 90 110 90 H180");animation:3s linear 1.5s infinite travel}.route{offset-path:path("M80 60 H110 C125 60 125 92 140 92 H150");animation:2.4s linear infinite travel}@keyframes travel{0%{offset-distance:0%}to{offset-distance:100%}}.toggle-bg{animation:4s infinite tbg}.toggle-knob{animation:4s infinite tk}@keyframes tbg{0%,45%{opacity:.9}55%,to{opacity:0}}@keyframes tk{0%,45%{transform:translate(48px)}55%,to{transform:translate(0)}}.pulse-in{animation:2.4s infinite pin}@keyframes pin{0%,to{stroke:var(--h-border-strong)}50%{stroke:var(--h-a0)}}.sim{margin-top:36px;padding:24px}.sim-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.sim-kicker{font:600 13.5px var(--h-mono)}.sim-sub{color:var(--h-text-3);margin-top:4px;font-size:14px}.sim-ctl{align-items:center;gap:10px;display:flex}.seg{border:1px solid var(--h-border);background:var(--h-bg-2);border-radius:10px;padding:3px;display:inline-flex}.seg button,.sim-play{font:560 13.5px var(--h-font);color:var(--h-text-2);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px 14px}.seg button[aria-checked=true]{background:var(--h-surface);color:var(--h-text);box-shadow:var(--h-shadow)}.seg button[data-sc=regression][aria-checked=true]{color:var(--h-danger)}.sim-play{border:1px solid var(--h-border-strong)}.sim-play:hover,.seg button:hover{color:var(--h-text)}.sim-steps{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:22px 0 0;padding:0;list-style:none;display:grid}.sim-step{border:1px solid var(--h-border);background:var(--h-bg-2);border-radius:12px;flex-direction:column;gap:6px;min-width:0;padding:14px;transition:border-color .3s,background .3s;display:flex}.sim-step-top{align-items:center;gap:8px;display:flex}.sim-n{width:20px;height:20px;font:600 11px var(--h-mono);background:var(--h-surface-2);color:var(--h-text-3);border-radius:6px;place-items:center;display:inline-grid}.sim-name{font:600 13px var(--h-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sim-strat,.sim-exp{color:var(--h-text-3);font-size:12px}.bar{background:var(--h-surface-2);border-radius:99px;height:6px;overflow:hidden}.bar span{border-radius:inherit;background:var(--h-text-3);height:100%;transition:background .3s;display:block}.gates{flex-wrap:wrap;gap:4px;margin:2px 0 0;padding:0;list-style:none;display:flex}.gates li{font:500 10.5px var(--h-mono);border:1px solid var(--h-border);color:var(--h-text-3);white-space:nowrap;border-radius:6px;padding:2px 6px}.sim-state{font:600 11.5px var(--h-mono);color:var(--h-text-3);text-transform:uppercase;letter-spacing:.05em;margin-top:auto;padding-top:6px}.sim-step[data-status=live]{border-color:var(--h-a0);background:color-mix(in srgb, var(--h-a0) 7%, var(--h-bg-2))}.sim-step[data-status=live] .bar span{background:var(--h-grad)}.sim-step[data-status=live] .sim-state{color:var(--h-accent)}.sim-step[data-status=passed] .bar span{background:var(--h-ok)}.sim-step[data-status=passed] .sim-state{color:var(--h-ok)}.sim-step[data-status=failed]{border-color:var(--h-danger);background:var(--h-danger-bg)}.sim-step[data-status=failed] .bar span{background:var(--h-danger)}.sim-step[data-status=failed] .sim-state{color:var(--h-danger)}.sim-now{background:var(--h-bg-2);border:1px solid var(--h-border);font:400 13px var(--h-mono);border-radius:12px;flex-wrap:wrap;align-items:baseline;gap:12px;min-height:52px;margin-top:18px;padding:14px 16px;display:flex}.clock{color:var(--h-text);min-width:7ch;font-weight:700}.act{text-transform:uppercase;background:var(--h-surface-2);color:var(--h-text-2);border-radius:6px;padding:2px 8px;font-size:12px;font-weight:700}.act[data-a=advance],.act[data-a=complete]{color:var(--h-ok)}.act[data-a=rollback],.act[data-a=pause]{color:var(--h-danger);background:var(--h-danger-bg)}.why{color:var(--h-text-2);overflow-wrap:anywhere;flex:280px}.sim-out{border-radius:12px;margin-top:12px;padding:14px 16px;font-size:15px;font-weight:560}.sim-out[data-o=complete]{background:color-mix(in srgb, var(--h-ok) 12%, transparent);color:var(--h-ok)}.sim-out[data-o=rollback]{background:var(--h-danger-bg);color:var(--h-danger)}.sim-src{color:var(--h-text-3);margin-top:14px;font-size:12.5px}.sim-src a,.textlink,.badges a.note{color:var(--h-accent)}.sim-src a{margin-left:4px}.stats{grid-template-columns:repeat(6,1fr);gap:16px;margin-top:40px;display:grid}.stat{flex-direction:column;grid-column:span 2;gap:8px;padding:24px;transition:border-color .2s;display:flex}.stat:nth-child(4),.stat:nth-child(5){grid-column:span 3}.stat:hover{border-color:var(--h-border-strong)}.big{letter-spacing:-.04em;font-size:clamp(2rem,3.4vw,2.7rem);font-weight:700;line-height:1.05;font-family:var(--h-display);font-variant-numeric:tabular-nums;background:var(--h-grad-text);color:#0000;-webkit-background-clip:text;background-clip:text}.lbl{color:var(--h-text);font-size:15px;font-weight:500}.src{font:400 12px var(--h-mono);color:var(--h-text-3);overflow-wrap:anywhere;margin-top:auto}.badges{flex-wrap:wrap;align-items:center;gap:12px;margin-top:22px;display:flex}.badges img{display:block}.badges .note{color:var(--h-text-3);font-size:13.5px}.sec4{grid-template-columns:repeat(4,1fr);gap:16px;margin-top:40px;display:grid}.sec4>div{padding:22px}.sec4 h3{font-size:1rem;font-weight:640}.sec4 p{color:var(--h-text-2);margin-top:8px;font-size:14.5px}.textlink{margin-top:24px;font-weight:560;display:inline-block}.start{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;gap:48px;display:grid}.code{background:#0c0c10;border-color:#f4f1ea1a;overflow:hidden}.code-bar{font:500 12px var(--h-mono);color:#8e897f;background:#121217;border-bottom:1px solid #f4f1ea12;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.code-bar button{font:500 12px var(--h-font);color:#d6d0c4;cursor:pointer;background:0 0;border:1px solid #f4f1ea24;border-radius:7px;padding:4px 10px}.code pre{font:400 13px/1.75 var(--h-mono);color:#ece7de;margin:0;padding:18px;overflow-x:auto}.code pre code{font-size:inherit;background:0 0;border:0;padding:0}.code .c{color:#8e897f}.foot{border-top:1px solid var(--h-border);padding:56px 0 64px}.foot-in{flex-wrap:wrap;justify-content:space-between;gap:40px;display:flex}.brand-f{font-size:17px;font-weight:680}.muted{color:var(--h-text-3);max-width:28em;margin-top:8px;font-size:14px}.foot nav{gap:56px;display:flex}.foot nav p{color:var(--h-text);margin-bottom:10px;font-size:13px;font-weight:600}.foot nav a{color:var(--h-text-2);padding:3px 0;font-size:14px;display:block}.foot nav a:hover{color:var(--h-text)}.story{margin-top:48px}.story-steps{gap:16px;margin:0;padding:0;list-style:none;display:grid}.story-steps li{border-radius:var(--h-radius);border:1px solid var(--h-border);background:var(--h-surface);padding:24px}[data-theme=light] :is(.kicker,.story .badge){color:var(--h-accent);background:0 0}.story .badge{font:600 12.5px var(--h-mono);background:var(--h-grad-text);color:#0000;-webkit-background-clip:text;background-clip:text}.story-steps h3{margin-top:10px;font-size:clamp(1.3rem,2.2vw,1.75rem);font-weight:600}.story-steps p{color:var(--h-text-2);max-width:30em;margin-top:10px;font-size:16px}.stage{display:none}.story[data-js]{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:64px;display:grid}.story[data-js] .stage{height:460px;display:block;position:sticky;top:calc(50vh - 230px)}.story[data-js] .story-steps{gap:0}.story[data-js] .story-steps li{border:0;border-left:2px solid var(--h-border);background:0 0;flex-direction:column;justify-content:center;min-height:min(72vh,640px);padding:0 0 0 28px;transition:border-color .4s;display:flex}.story[data-js] .story-steps li :is(h3,p){transition:color .4s}.story[data-js] .story-steps li:not(.on) :is(h3,p){color:var(--h-text-3)}.story[data-js] .story-steps li.on{border-image:linear-gradient(var(--h-a0), var(--h-a1)) 1}.panel{border:1px solid var(--h-border-strong);background:var(--h-surface);box-shadow:var(--h-shadow), 0 40px 100px -50px var(--h-a1);opacity:0;visibility:hidden;border-radius:20px;transition:opacity .5s,transform .6s cubic-bezier(.2,.8,.2,1),visibility 0s .6s;position:absolute;inset:0;overflow:hidden;transform:translateY(18px)scale(.97)}.story[data-active="1"] [data-p="1"],.story[data-active="2"] [data-p="2"],.story[data-active="3"] [data-p="3"],.story[data-active="4"] [data-p="4"]{opacity:1;visibility:visible;transition:opacity .5s,transform .6s cubic-bezier(.2,.8,.2,1);transform:none}.pbar{border-bottom:1px solid var(--h-border);background:var(--h-surface-2);height:40px;font:500 12px var(--h-mono);color:var(--h-text-3);white-space:nowrap;align-items:center;gap:12px;padding:0 14px;display:flex;overflow:hidden}.p-code pre{font:400 12.5px/1.75 var(--h-mono);color:var(--h-text-2);margin:0;padding:18px 20px;overflow:hidden}.p-code b{color:var(--h-accent);font-weight:500}.p-code .c{color:var(--h-text-3);font-style:italic}.p-rel{text-align:center;background:radial-gradient(60% 50% at 50% 30%, var(--h-glow-2), transparent), var(--h-surface);flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:28px;display:flex}.seal svg{width:112px;height:112px}.seal-ring{fill:none;stroke:var(--h-a0);stroke-width:3px;stroke-dasharray:277;stroke-dashoffset:277px;filter:drop-shadow(0 0 10px var(--h-a1))}.seal-disc{fill:var(--h-disc)}.seal-tick{fill:none;stroke:var(--h-a0);stroke-width:5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:50;stroke-dashoffset:50px}.story[data-active="2"] .seal-ring{animation:1.1s cubic-bezier(.6,0,.2,1) .2s forwards draw}.story[data-active="2"] .seal-tick{animation:.5s ease-out 1.1s forwards draw}@keyframes draw{to{stroke-dashoffset:0}}.rel-ver{font:600 22px var(--h-display);letter-spacing:-.02em;margin-top:8px}.rel-repo,.rel-src{font:400 12.5px var(--h-mono);color:var(--h-text-3)}.rel-dig{font:500 12.5px var(--h-mono);color:var(--h-text);text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.rel-dig .dim,.p-back .dim{color:var(--h-text-3)}.chips{flex-wrap:wrap;justify-content:center;gap:6px;margin:10px 0 6px;padding:0;list-style:none;display:flex}.chips li{font:500 12px var(--h-mono);border:1px solid var(--h-border-strong);color:var(--h-text-2);background:var(--h-bg-2);border-radius:99px;padding:4px 10px}.p-rings{background:radial-gradient(50% 50% at 50% 50%, var(--h-glow), transparent 70%), var(--h-surface);place-items:center;display:grid}.p-rings svg{width:100%;height:100%}.rg{fill:none;stroke:var(--h-border-strong);stroke-width:1.5px}.rg-core{fill:var(--h-disc);stroke:var(--h-a0);stroke-width:2px;filter:drop-shadow(0 0 12px var(--h-a1))}.rg-core-t{font:600 10px var(--h-mono);fill:var(--h-a0)}.rg-n{font:600 11px var(--h-mono);fill:var(--h-text)}.rg-w{font:400 11px var(--h-mono);fill:var(--h-text-3)}.rg-l{opacity:.45}.rg-lead{fill:none;stroke:var(--h-text-3);stroke-width:1px;stroke-dasharray:2 3}.rg-dot{fill:var(--h-a0)}.story[data-active="3"] .rg{animation:rg-on 4.8s calc(var(--i) * 1s) infinite}.story[data-active="3"] .rg-l{animation:rg-l 4.8s calc(var(--i) * 1s) infinite}@keyframes rg-on{0%{stroke:var(--h-border-strong)}8%,70%{stroke:var(--h-a0);stroke-width:2.5px;filter:drop-shadow(0 0 6px var(--h-a1))}to{stroke:var(--h-border-strong)}}@keyframes rg-l{0%{opacity:.45}8%,70%{opacity:1}to{opacity:.45}}.p-back{flex-direction:column;justify-content:center;gap:14px;padding:22px;display:flex}.lane{border:1px solid var(--h-border);background:var(--h-bg-2);border-radius:14px;padding:16px 18px}.lane.hot{border-color:color-mix(in srgb, var(--h-danger) 45%, transparent);background:var(--h-danger-bg)}.lane-h{font:600 13px var(--h-display)}.flow{font:500 12.5px var(--h-mono);color:var(--h-text-2);flex-wrap:wrap;align-items:center;gap:8px 22px;margin:10px 0 0;padding:0;list-style:none;display:flex}.flow li{background:var(--h-surface);border:1px solid var(--h-border);border-radius:8px;padding:4px 10px}.flow li+li:before{content:"→";color:var(--h-text-3);position:absolute;left:-17px}.flow li+li{position:relative}.lane.hot .flow li:last-child{border-color:var(--h-danger);color:var(--h-danger)}.sim-line{font:400 12px/1.6 var(--h-mono);color:var(--h-text-2);margin-top:12px}.sim-line .at{color:var(--h-text-3)}.sim-line .rb{color:var(--h-danger);font-weight:600}.p-back .rel-src{margin-top:6px}.diagram-fig{margin-top:56px}.media{gap:24px;margin-top:40px;display:grid}.clips{gap:14px;display:grid}.clip-tabs{flex-wrap:wrap;gap:8px;display:flex}.clip-tabs button{cursor:pointer;border:1px solid var(--h-border-strong);background:0 0;border-radius:999px;padding:8px 14px;transition:background .2s,border-color .2s,box-shadow .2s}.clip-tabs button code{color:var(--h-text-2);background:0 0;border:0;padding:0;font-size:13px;font-weight:600}.clip-tabs button:hover{background:var(--h-surface)}.clip-tabs button:hover code{color:var(--h-text)}.clip-tabs button[aria-selected=true]{background:var(--h-text);border-color:var(--h-text);box-shadow:0 8px 30px -12px var(--h-a1)}.clip-tabs button[aria-selected=true] code{color:var(--h-bg)}.mv{border:1px solid var(--h-border-strong);box-shadow:var(--h-shadow), 0 40px 100px -50px var(--h-a1);background:#0c0c10;border-radius:16px;margin:0;overflow:hidden}.mv video{width:100%;height:auto;display:block}.mv-term video{aspect-ratio:1280/480;object-fit:contain;object-position:top;background:#0c0c10}.mv-console .pbar{color:#8e897f;background:#121217;border-color:#f4f1ea14}.mv-console .url{text-align:center;flex:1;margin-right:50px}.mv-console video{aspect-ratio:1280/800}.mv figcaption{color:#bdb7ac;background:#0e0e12;border-top:1px solid #f4f1ea12;padding:12px 16px;font-size:13.5px}.mv figcaption code{color:#ece7de;background:0 0;border:0;padding:0}.media-src{color:var(--h-text-3);font-size:13px}.media-src a{color:var(--h-accent)}.card,.tile,.stat,.sec4>div{isolation:isolate;position:relative}.card:before,.tile:before,.stat:before,.sec4>div:before{content:"";z-index:-1;border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%), color-mix(in srgb, var(--h-a1) 13%, transparent), transparent 62%);transition:opacity .3s;position:absolute;inset:0}.card:hover:before,.tile:hover:before,.stat:hover:before,.sec4>div:hover:before{opacity:1}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.sec .kicker,.sec h2,.sec-lede,.card,.tile,.stat,.sec4>div,.sim,.mv,.clips,.diagram-fig,.start>*{animation:linear both reveal view();animation-range:entry cover 22%}.hero-term{animation:linear both rise view();animation-range:exit -20% exit 60%}}}@keyframes reveal{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@keyframes rise{to{opacity:.6;transform:perspective(1200px)rotateX(8deg)scale(.96)}}@media (width<=1080px){.sim-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.sec4{grid-template-columns:repeat(2,1fr)}.start{grid-template-columns:1fr}.story[data-js]{gap:40px}}@media (width<=860px){.nav nav{display:none}.cards3{grid-template-columns:1fr}.bento{grid-template-columns:1fr 1fr}.tile.wide,.tile:last-child{grid-column:span 2}.stats{grid-template-columns:1fr 1fr}.stat,.stat:nth-child(4),.stat:nth-child(5){grid-column:span 1}.stat:nth-child(5){grid-column:span 2}.sec{padding:76px 0}.story[data-js]{grid-template-columns:1fr;gap:0}.story[data-js] .stage{z-index:2;background:var(--h-bg-2);height:350px;box-shadow:0 16px 16px -8px var(--h-bg-2);top:64px}.story[data-js] .panel{inset:12px 0 8px}.story[data-js] .story-steps li{justify-content:flex-start;min-height:280px;padding-top:24px}.story[data-js] .story-steps li:last-child{min-height:min(46vh,400px)}.p-code pre{padding:14px 16px;font-size:11px;line-height:1.6}.p-back{gap:10px;padding:14px}.p-back .sim-line,.p-back .rel-src,.p-rel .rel-src{display:none}.seal svg{width:84px;height:84px}}@media (width<=560px){.wrap{padding:0 16px}.hero{padding:56px 0 48px}.bento,.stats,.sec4{grid-template-columns:1fr}.tile.wide,.tile:last-child,.stat:nth-child(5){grid-column:span 1}.sim{padding:16px}.sim-steps{grid-template-columns:1fr}.diagram-fig{overflow-x:auto}.diagram-fig img{min-width:680px}.term-body{white-space:pre;overflow-wrap:normal;height:380px;font-size:11px}.foot nav{flex-wrap:wrap;gap:32px}.btn{height:42px;padding:0 16px}.nav-r .btn{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.travel-a,.travel-b,.route{display:none}}:is(.term-cap,.media-src,.sim-src,.rel-src,.src,.note,.muted) a{text-underline-offset:3px;text-decoration:underline;text-decoration-color:color-mix(in srgb, currentColor 55%, transparent)}.eclipse:where(.astro-3xeiiooh){aspect-ratio:1;pointer-events:none;width:min(400px,88vw);margin:-20px auto -92px;position:relative}.eclipse:where(.astro-3xeiiooh) svg:where(.astro-3xeiiooh){width:100%;height:100%;overflow:visible}.ec-corona:where(.astro-3xeiiooh){transform-box:view-box;transform-origin:50%;animation:6s ease-in-out infinite ec-breathe}.ec-late:where(.astro-3xeiiooh){animation-delay:-3s}.ec-spin:where(.astro-3xeiiooh){transform-box:view-box;transform-origin:50%;animation:40s linear infinite ec-spin}[data-theme=light] .ec-corona:where(.astro-3xeiiooh){--ec-lo:.6}@keyframes ec-breathe{0%,to{opacity:var(--ec-lo,.85);transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}@keyframes ec-spin{to{transform:rotate(360deg)}}@media (width<=560px){.eclipse:where(.astro-3xeiiooh){margin-bottom:-84px}}
