.v3-footer{border-top:1px solid var(--v3-line)}.v3-footer-in{max-width:1240px;padding:28px max(20px, env(safe-area-inset-right,0px)) 44px max(20px, env(safe-area-inset-left,0px));flex-wrap:wrap;align-items:center;gap:18px 32px;margin:0 auto;display:flex}.v3-footer nav{flex-wrap:wrap;flex:1;gap:8px 22px;font-size:14px;display:flex}.v3-footer nav a{color:var(--v3-dim);text-decoration:none}.v3-footer nav a:hover{color:var(--v3-text)}.v3-footer p{color:var(--v3-dim);margin:0;font-size:13px}
.v3{--v3-bg:#000;--v3-panel:#0e0e0d;--v3-panel-2:#171716;--v3-line:#2a2a28;--v3-line-hi:#4a4a46;--v3-text:#f2f2ee;--v3-dim:#93938c;--v3-signal:#ffb21c;--v3-ok:#3ccb7f;--v3-canvas:#0b0d10;--v3-display:var(--font-v3-display), "Arial", sans-serif;--v3-body:var(--font-v3-text), system-ui, "Segoe UI", sans-serif;--v3-mono:var(--font-v3-mono), ui-monospace, Consolas, monospace;--v3-ease-out:cubic-bezier(.23, 1, .32, 1);--v3-ease-io:cubic-bezier(.77, 0, .175, 1);background:var(--v3-bg);color:var(--v3-text);font-family:var(--v3-body);min-height:100vh}:root[data-theme=light] .v3{--v3-bg:#f5f5f1;--v3-panel:#fff;--v3-panel-2:#ecece7;--v3-line:#d6d6cf;--v3-line-hi:#9c9c95;--v3-text:#0a0a0a;--v3-dim:#5c5c56;--v3-ok:#12804a;--v3-canvas:#f7f9fb}.v3 ::selection{background:var(--v3-text);color:var(--v3-bg)}.v3 :focus-visible{outline:2px solid var(--v3-text);outline-offset:3px;border-radius:4px}.v3-num{font-family:var(--v3-mono);font-variant-numeric:tabular-nums;font-size:.9em}.v3-btn{font:inherit;border:1.5px solid var(--v3-text);color:var(--v3-text);white-space:nowrap;cursor:pointer;transition:transform .16s var(--v3-ease-out), background-color .2s var(--v3-ease-out), border-color .2s var(--v3-ease-out);background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:8px;font-weight:600;text-decoration:none;display:inline-flex}.v3-btn:active{transform:scale(.97)}.v3-btn-primary{background:var(--v3-text);color:var(--v3-bg)}.v3-btn-ghost{border-color:var(--v3-line-hi)}.v3-btn-quiet{color:var(--v3-dim);border-color:#0000}@media (hover:hover) and (pointer:fine){.v3-btn-ghost:hover,.v3-btn-quiet:hover{border-color:var(--v3-text);color:var(--v3-text)}}.v3-btn-sm{padding:7px 15px;font-size:14px}.v3-btn-lg{padding:13px 24px;font-size:16px}.v3-bar{z-index:40;background:var(--v3-bg);transition:border-color .2s var(--v3-ease-out);border-bottom:1px solid #0000;position:sticky;top:0}.v3-bar.is-scrolled{border-bottom-color:var(--v3-line)}.v3-bar-inner{max-width:1240px;height:64px;padding-inline:max(20px, env(safe-area-inset-left,0px)) max(20px, env(safe-area-inset-right,0px));align-items:center;gap:32px;margin:0 auto;display:flex}.v3-brand{color:var(--v3-text);font-family:var(--v3-display);letter-spacing:-.045em;align-items:center;gap:10px;font-size:20px;font-weight:700;text-decoration:none;display:flex}.v3-links{flex:1;gap:26px;font-size:15px;display:flex}.v3-links a{color:var(--v3-dim);transition:color .16s var(--v3-ease-out);text-decoration:none}.v3-links a:hover{color:var(--v3-text)}.v3-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.v3 .theme-toggle{border:1px solid var(--v3-line-hi);width:36px;height:36px;color:var(--v3-text);cursor:pointer;background:0 0;border-radius:50%;place-items:center;display:grid}.v3-burger{border:1px solid var(--v3-line-hi);cursor:pointer;background:0 0;border-radius:50%;width:36px;height:36px;display:none;position:relative}.v3-burger span,.v3-burger span:before{background:var(--v3-text);content:"";height:1.5px;transition:transform .2s var(--v3-ease-out);position:absolute;left:10px;right:10px}.v3-burger span{top:14px}.v3-burger span:before{top:6px;left:0;right:0}.v3-burger span[data-open=true]{transform:translateY(3px)rotate(45deg)}.v3-burger span[data-open=true]:before{transform:translateY(-6px)rotate(-90deg)}.v3-menu{border-bottom:1px solid var(--v3-line);gap:4px;padding:8px 20px 18px;display:grid}.v3-menu a{color:var(--v3-text);padding:10px 0;font-size:18px;text-decoration:none}.v3-hero{max-width:1240px;padding:72px max(20px, env(safe-area-inset-right,0px)) 0 max(20px, env(safe-area-inset-left,0px));margin:0 auto}.v3-hero-top{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:end;gap:48px;display:grid}.v3-h1{font-family:var(--v3-display);letter-spacing:-.05em;margin:0;font-size:clamp(44px,7vw,108px);font-weight:800;line-height:.95}.v3-line{margin-bottom:-.08em;padding-bottom:.08em;display:block;overflow:hidden}.v3-line>span{white-space:nowrap;animation:v3-rise .64s var(--v3-ease-out) both;display:block}.v3-line+.v3-line>span{animation-delay:70ms}@keyframes v3-rise{0%{transform:translateY(105%)}}.v3-sub{max-width:36ch;margin:0 0 24px;font-size:20px;line-height:1.45}.v3-sub b{font-weight:600}.v3-sub span{color:var(--v3-dim)}.v3-ctas{flex-wrap:wrap;gap:12px;display:flex}.v3-fine{color:var(--v3-dim);margin:14px 0 0;font-size:14px}.v3-hero-side{animation:v3-slide .52s var(--v3-ease-out) 80ms both}@keyframes v3-slide{0%{transform:translateY(12px)}}@keyframes v3-fade{0%{opacity:0}}.v3-window{border:1px solid var(--v3-line-hi);background:var(--v3-panel);animation:v3-window .56s var(--v3-ease-out) .16s both;border-radius:16px;margin-top:56px;position:relative;overflow:hidden}@keyframes v3-window{0%{opacity:0;transform:translateY(14px)}}.v3-trace{border:2px solid var(--v3-text);pointer-events:none;z-index:5;clip-path:inset(0 100% 100% 0);animation:v3-trace .9s var(--v3-ease-io) .42s forwards, v3-trace-out .5s var(--v3-ease-out) 1.4s forwards;border-radius:16px;position:absolute;inset:-1px}@keyframes v3-trace{to{clip-path:inset(0)}}@keyframes v3-trace-out{to{opacity:0}}.v3-window-top{border-bottom:1px solid var(--v3-line);align-items:center;gap:18px;min-width:0;padding:11px 16px;font-size:14px;display:flex}.v3-file{color:var(--v3-dim);white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.v3-file b{color:var(--v3-text);font-weight:600}.v3-counts{color:var(--v3-dim);white-space:nowrap}.v3-open{color:var(--v3-text);border:1px solid var(--v3-line-hi);white-space:nowrap;border-radius:999px;margin-left:auto;padding:4px 12px;font-size:13px;text-decoration:none}.v3-open:hover{border-color:var(--v3-text)}.v3-stage{height:clamp(480px,66vh,680px);position:relative}.v3-stage,.v3 .lib-viewer{--bg:var(--v3-canvas);--bg-raised:var(--v3-panel);--bg-sunken:var(--v3-bg);--border:var(--v3-line);--border-strong:var(--v3-line-hi);--text:var(--v3-text);--text-muted:var(--v3-dim);--font-sans:var(--v3-body);--font-body:var(--v3-body);--font-ui-stack:var(--v3-body);--brand:var(--v3-signal);--brand-bright:var(--v3-signal);--brand-gradient:linear-gradient(var(--v3-line-hi), var(--v3-line-hi))}:root[data-theme=dark] .v3-stage,:root[data-theme=dark] .v3 .lib-viewer{--brand-ring:#f2f2ee66;--brand-ring-strong:#f2f2ee99}:root[data-theme=light] .v3-stage,:root[data-theme=light] .v3 .lib-viewer{--brand:#d88c00;--brand-bright:#d88c00;--brand-ring:#0a0a0a47;--brand-ring-strong:#0a0a0a73}:root[data-theme=dark] .v3-stage,:root[data-theme=dark] .v3 .lib-viewer{--node-bg:#14181e;--node-border:#2a303a;--group-bg:#ffffff06;--dot-grid:#ffffff12;--edge-color:#5b6472}:root[data-theme=light] .v3-stage,:root[data-theme=light] .v3 .lib-viewer{--node-bg:#fff;--node-border:#d5dce5;--group-bg:#0a0a0a06;--dot-grid:#0a0a0a14;--edge-color:#8a94a3}.v3-stage>*{height:100%}.v3-stage-wait{background:var(--v3-canvas);place-items:center;height:100%;display:grid}.v3-stage-wait span{background:var(--v3-signal);width:10px;height:10px;animation:v3-wait 1.2s var(--v3-ease-io) infinite alternate;border-radius:50%}@keyframes v3-wait{0%{transform:translate(-36px)}to{transform:translate(36px)}}.v3-port{flex-direction:column;align-items:flex-start;margin-top:-6px;padding-left:9%;display:flex}.v3-port-dot{border:2px solid var(--v3-line-hi);background:var(--v3-bg);z-index:2;border-radius:50%;width:12px;height:12px;position:relative}.v3-port-wire{background:linear-gradient(var(--v3-line-hi), transparent);width:2px;height:120px;margin-left:5px}@media (max-width:900px){.v3-hero{padding-top:40px}.v3-hero-top{grid-template-columns:1fr;gap:24px}.v3-links,.v3-signin,.v3-counts{display:none}.v3-burger{display:block}.v3-bar-inner{gap:12px}.v3-actions{gap:6px}.v3-brand{font-size:18px}.v3-window{margin-top:36px}.v3-stage{height:520px}}@media (prefers-reduced-motion:reduce){.v3-line>span,.v3-hero-side,.v3-window,.v3-stage-wait span{animation:none}.v3-trace{display:none}}.v3-stage .btn-violet,.v3 .lib-viewer .btn-violet{background:var(--v3-text);color:var(--v3-bg)}.v3-stage .btn-violet:hover:not(:disabled),.v3 .lib-viewer .btn-violet:hover:not(:disabled){background:var(--v3-text);box-shadow:none}.v3-menu{background:var(--v3-bg);visibility:hidden;opacity:0;pointer-events:none;position:absolute;top:100%;left:0;right:0}.v3-menu[data-open=true]{visibility:visible;opacity:1;pointer-events:auto}@media (min-width:901px){.v3-menu{display:none}}@media (prefers-reduced-motion:no-preference){.v3-menu{transition:opacity .14s var(--v3-ease-out), transform .14s var(--v3-ease-out), visibility 0s linear .14s;transform:translateY(-8px)}.v3-menu[data-open=true]{transition:opacity .22s var(--v3-ease-out), transform .22s var(--v3-ease-out), visibility 0s;transform:none}.v3-menu a{opacity:0;transition:opacity .12s var(--v3-ease-out), transform .12s var(--v3-ease-out);transform:translateY(-6px)}.v3-menu[data-open=true] a{opacity:1;transition:opacity .26s var(--v3-ease-out) calc(var(--i,0) * 30ms + 60ms), transform .26s var(--v3-ease-out) calc(var(--i,0) * 30ms + 60ms);transform:none}.v3-motion [data-reveal=rise]{clip-path:inset(-.2em -.1em);transition:clip-path .76s var(--v3-ease-out), transform .76s var(--v3-ease-out)}.v3-motion [data-reveal=rise]:not(.is-in){clip-path:inset(0 0 100%);transform:translateY(.4em)}.v3-motion [data-reveal=fade]{transition:opacity .6s var(--v3-ease-out) .16s}.v3-motion [data-reveal=fade]:not(.is-in){opacity:0}.v3-swap{animation:v3-swap-in .36s var(--v3-ease-out) both}.v3-trace-quick{animation:v3-trace .62s var(--v3-ease-io) forwards, v3-trace-out .42s var(--v3-ease-out) .64s forwards}}@keyframes v3-swap-in{0%{opacity:0;transform:scale(.985)}}@keyframes v3-scrub{0%{opacity:.3;transform:translateY(56px)scale(.955)}}.v3-count{text-align:right;font-variant-numeric:tabular-nums;display:inline-block}@media (hover:hover) and (pointer:fine){.v3-links a,.v3-footer nav a{position:relative}.v3-links a:after,.v3-footer nav a:after{content:"";transform-origin:0;height:1px;transition:transform .22s var(--v3-ease-out);background:currentColor;position:absolute;bottom:-4px;left:0;right:0;transform:scaleX(0)}.v3-links a:hover:after,.v3-footer nav a:hover:after{transform:scaleX(1)}.v3-btn-primary.v3-btn-lg:after{content:"→";transition:transform .2s var(--v3-ease-out);margin-left:10px;display:inline-block}.v3-btn-primary.v3-btn-lg:hover:after{transform:translate(4px)}}.v3-btn-primary.v3-btn-lg:after{content:"→";margin-left:10px;display:inline-block}@media (prefers-reduced-motion:no-preference){.v3-bar .v3-brand svg circle{animation:v3-dot .9s var(--v3-ease-io) .4s both}}@keyframes v3-dot{0%{opacity:0;transform:translateY(-8px)}}
