.hero{position:relative}.hero:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(at 70% 45%,#f2b1341a,#0000 60%),linear-gradient(#6ff3ff0d 1px,#0000 1px) 0 0/40px 40px,linear-gradient(90deg,#6ff3ff0d 1px,#0000 1px) 0 0/40px 40px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(at 60%,#000 30%,#0000 75%);mask-image:radial-gradient(at 60%,#000 30%,#0000 75%)}.demo-window{border-radius:var(--radius);border:1px solid var(--border);background:#1b1f27;position:relative;overflow:hidden;box-shadow:0 24px 60px #0000008c,0 0 80px #f2b13414}.demo-bar{background:var(--panel);border-bottom:1px solid var(--border);color:var(--muted);align-items:center;gap:12px;padding:8px 12px;font-size:13px;display:flex}.demo-dots{gap:6px;display:flex}.demo-dots i{background:#ff6b6b;border-radius:50%;width:10px;height:10px}.demo-dots i:nth-child(2){background:var(--accent)}.demo-dots i:nth-child(3){background:#3fb950}.demo-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:600;overflow:hidden}.demo-run{color:#3fb950;align-items:center;gap:6px;font-weight:600;display:flex}.demo-led{background:#3fb950;border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite blink;box-shadow:0 0 8px #3fb950}.demo-body{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);display:grid}.demo-stage{min-height:260px;position:relative}.demo-stage canvas{animation:.6s fade-in;display:block}.demo-hud{z-index:1;border:1px solid var(--border);color:var(--muted);background:#14171dcc;border-radius:8px;padding:5px 10px;font-size:13px;position:absolute;top:10px;left:10px}.demo-hud strong{color:var(--accent);font-variant-numeric:tabular-nums}.demo-spinner{width:48px;height:48px;color:var(--border);margin:-24px 0 0 -24px;animation:2s linear infinite spin;position:absolute;top:50%;left:50%}.demo-window:not(.loading) .demo-spinner{display:none}.demo-code{counter-reset:line;border-left:1px solid var(--border);font-variant-ligatures:none;color:#d7dae0;white-space:pre;background:#11141a;margin:0;padding:10px 0;font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:clamp(10px,.9vw,13px);line-height:1.75;list-style:none;overflow:hidden}.demo-code li{counter-increment:line;padding-right:8px;transition:background-color .15s}.demo-code li:before{content:counter(line);text-align:right;color:#4b5263;width:2.6em;padding-right:.8em;display:inline-block}.demo-code li.active{box-shadow:inset 3px 0 0 var(--info);background:#6ff3ff29}.demo-code li.active:before{color:var(--info)}.demo-code .kw{color:#c678dd}.demo-code .fn{color:#61afef}.demo-code .str{color:#98c379}.demo-fallback{width:100%;height:auto;display:none}.demo-window.failed .demo-bar,.demo-window.failed .demo-body{display:none}.demo-window.failed .demo-fallback{display:block}.belt-divider{height:44px;margin:8px 0;position:relative;overflow:hidden}.belt-track{border-top:3px solid var(--accent);border-bottom:3px solid var(--accent);background:repeating-linear-gradient(90deg,#262b34 0 22px,#353b46 22px 26px,#262b34 26px 34px);height:22px;animation:1.2s linear infinite belt;position:absolute;top:14px;left:0;right:0}.belt-items{position:absolute;inset:0}.it{width:22px;height:22px;animation:18s linear infinite ride;position:absolute;bottom:13px;left:0}.it:nth-child(2){animation-delay:-3s}.it:nth-child(3){animation-delay:-6s}.it:nth-child(4){animation-delay:-9s}.it:nth-child(5){animation-delay:-12s}.it:nth-child(6){animation-delay:-15s}.it-box{background:linear-gradient(45deg,#0000 45%,#8a5a2b 45% 55%,#0000 55%),linear-gradient(-45deg,#0000 45%,#8a5a2b 45% 55%,#0000 55%),#b7834a;border-radius:3px;box-shadow:inset 0 0 0 3px #8a5a2b}.it-ore{background:radial-gradient(circle at 30% 35%,#d08a3a 0 2px,#0000 3px),radial-gradient(circle at 70% 60%,#d08a3a 0 2px,#0000 3px),#6b5a4c;border-radius:45% 55% 40% 60%;width:18px;height:16px}.it-ingot{clip-path:polygon(15% 0,85% 0,100% 100%,0 100%);background:linear-gradient(#eef1f5,#a9b0ba);width:24px;height:12px}.it-gear{color:#d4a83a}.it-gear svg{width:100%;height:100%;animation:3s linear infinite spin;display:block}.steps .card{position:relative;overflow:hidden}.step-art{border-bottom:1px solid var(--border);background:linear-gradient(#232833,#1d2129);height:84px;margin:-20px -20px 16px;position:relative;overflow:hidden;container-type:inline-size}.art-write{flex-direction:column;justify-content:center;gap:8px;padding:0 24px;display:flex}.art-write .bar{transform-origin:0;background:#c678dd;border-radius:4px;height:8px;animation:4s ease-in-out infinite type}.art-write .bar:first-child{width:55%}.art-write .bar:nth-child(2){background:#61afef;width:40%;margin-left:22px;animation-delay:.4s}.art-write .bar:nth-child(3){background:#98c379;width:30%;animation-delay:.8s}.art-write .caret{background:var(--accent);width:9px;height:16px;animation:1s step-end infinite blink;position:absolute;bottom:18px;right:24px}.tiles{gap:4px;display:flex;position:absolute;bottom:12px;left:20px;right:20px}.tiles i{background:#4a505c;border-radius:2px;flex:1;height:10px}.tiles .goal{background:repeating-linear-gradient(45deg,#f2b134 0 5px,#2f6f3e 5px 10px)}.tiles .wall{background:#6b7280;height:30px;margin-top:-20px;box-shadow:inset 0 4px #f2b134}.mini-bot{width:52px;height:52px;position:absolute;bottom:18px;left:20px}.art-run .mini-bot{animation:5s step-end infinite walk}.art-fix .mini-bot{animation:4s ease-in-out infinite bump}.art-fix .bump,.art-fix .ok{opacity:0;font-size:20px;font-weight:800;position:absolute;top:8px}.art-fix .bump{color:var(--danger);animation:4s infinite flash;left:56%}.art-fix .ok{color:#3fb950;animation:4s infinite flash-late;left:8%}.steps .card,.modes .card{transition:opacity .6s,transform .4s,border-color .25s,box-shadow .25s}.steps .card:hover,.modes .card:hover{border-color:#f2b13480;transform:translateY(-4px);box-shadow:0 12px 30px #00000059}.cta-art{width:180px;height:120px;margin:0 auto 8px;position:relative}.cta-gear{color:#2f3542;position:absolute}.cta-gear.g1{width:90px;height:90px;animation:8s linear infinite spin;top:0;left:0}.cta-gear.g2{color:#3a4150;width:64px;height:64px;animation:5.7s linear infinite reverse spin;top:2px;right:6px}.cta-gear.g3{color:#f2b1348c;width:40px;height:40px;animation:3.6s linear infinite spin;bottom:0;right:46px}.cta-bot{width:84px;height:84px;margin-left:-42px;animation:2.4s ease-in-out infinite hop;position:absolute;bottom:0;left:50%}.bot-tip,.bot-visor{animation:1.6s ease-in-out infinite glow}@media (prefers-reduced-motion:no-preference){.reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(28px)}.reveal.in{opacity:1;transform:none}.trailer-button{transition:transform .2s}.trailer-play:hover .trailer-button,.trailer-play:focus-visible .trailer-button{transform:translate(-50%,-50%)scale(1.1)}}@media (prefers-reduced-motion:reduce){.hero *,.belt-divider *,.step-art *,.cta-art *,.bot-tip,.bot-visor{animation:none!important}.it{display:none}}@media (max-width:860px){.demo-body{grid-template-columns:minmax(0,1fr)}.demo-stage{aspect-ratio:4/3;min-height:0}.demo-code{border-left:none;border-top:1px solid var(--border);font-size:12px}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes blink{50%{opacity:.25}}@keyframes fade-in{0%{opacity:0}}@keyframes belt{to{background-position:34px 0}}@keyframes ride{0%{transform:translate(-40px)}to{transform:translate(calc(100vw + 40px))}}@keyframes type{0%{transform:scaleX(0)}30%,85%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes walk{0%{transform:translate(0)}20%{transform:translate(calc(20cqw - 8px))}40%{transform:translate(calc(40cqw - 16px))}60%{transform:translate(calc(60cqw - 24px))}80%{transform:translate(calc(80cqw - 32px))}}@keyframes bump{0%,10%{transform:translate(0)}40%{transform:translate(calc(50cqw - 20px))}44%{transform:translate(calc(50cqw - 26px))rotate(-8deg)}48%,85%{transform:translate(calc(50cqw - 20px))}to{transform:translate(0)}}@keyframes flash{0%,40%{opacity:0;transform:translateY(6px)}46%,78%{opacity:1;transform:none}86%,to{opacity:0}}@keyframes flash-late{0%,88%{opacity:0}94%{opacity:1}to{opacity:0}}@keyframes hop{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes glow{50%{opacity:.45}}
