@font-face{font-family:Anton;font-style:normal;font-display:swap;font-weight:400;src:url(./anton-vietnamese-400-normal-CkBxLiRJ.woff2)format("woff2"),url(./anton-vietnamese-400-normal-2FfR1wHA.woff)format("woff");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:Anton;font-style:normal;font-display:swap;font-weight:400;src:url(./anton-latin-ext-400-normal-SyiqE2Jt.woff2)format("woff2"),url(./anton-latin-ext-400-normal-BMODBQc6.woff)format("woff");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:Anton;font-style:normal;font-display:swap;font-weight:400;src:url(./anton-latin-400-normal-Byf51wtH.woff2)format("woff2"),url(./anton-latin-400-normal-AUNGEG_V.woff)format("woff");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:Permanent Marker;font-style:normal;font-display:swap;font-weight:400;src:url(./permanent-marker-latin-400-normal-BF23djCy.woff2)format("woff2"),url(./permanent-marker-latin-400-normal-BnZj5c41.woff)format("woff");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:VT323;font-style:normal;font-display:swap;font-weight:400;src:url(./vt323-vietnamese-400-normal-D0VnvwZ9.woff2)format("woff2"),url(./vt323-vietnamese-400-normal-D_5Q7Vcv.woff)format("woff");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:VT323;font-style:normal;font-display:swap;font-weight:400;src:url(./vt323-latin-ext-400-normal-iUdYUaX4.woff2)format("woff2"),url(./vt323-latin-ext-400-normal-DqOq58ri.woff)format("woff");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:VT323;font-style:normal;font-display:swap;font-weight:400;src:url(./vt323-latin-400-normal-wDgJuOC9.woff2)format("woff2"),url(./vt323-latin-400-normal-Dqn9ZSPj.woff)format("woff");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}:root{--bg:#0a0a0b;--ink:#f4f1ea;--dim:#8d8a83;--acid:#d4ff00;--rec:#ff3b30;--panel:#0b0b0dfb;--line:#f4f1ea24;--ui:"Anton", Impact, "Arial Narrow Bold", sans-serif;--hand:"Permanent Marker", "Marker Felt", "Comic Sans MS", cursive;--osd:"VT323", ui-monospace, Menlo, monospace;--st:env(safe-area-inset-top,0px);--sb:env(safe-area-inset-bottom,0px);--sl:env(safe-area-inset-left,0px);--sr:env(safe-area-inset-right,0px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);height:100%;color:var(--ink);overscroll-behavior:none;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;font-family:var(--ui);letter-spacing:.01em;margin:0;overflow:hidden}#stage{position:fixed;inset:0}.stage-canvas{width:100%;height:100%;display:block}#ui,#fx{pointer-events:none;position:fixed;inset:0}#ui>*,#fx>*{pointer-events:auto}#fx{z-index:30;pointer-events:none}#fx>*{pointer-events:none}.scanlines{pointer-events:none;z-index:40;mix-blend-mode:multiply;background:repeating-linear-gradient(#0000 0 2px,#00000021 2px 3px);position:fixed;inset:0}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:0}input{font:inherit}.btn{min-height:48px;font-family:var(--ui);text-transform:uppercase;color:#0a0a0b;background:var(--acid);box-shadow:5px 5px 0 #0a0a0b, 5px 5px 0 2px var(--ink);border:3px solid #0a0a0b;justify-content:center;align-items:center;gap:.4em;padding:.55em 1.1em .5em;font-size:22px;transition:transform 80ms,box-shadow 80ms;display:inline-flex;transform:rotate(-1.2deg)}.btn:active{box-shadow:1px 1px 0 #0a0a0b, 1px 1px 0 2px var(--ink);transform:rotate(-1.2deg)translate(4px,4px)}.btn.big{box-shadow:8px 8px 0 #0a0a0b, 8px 8px 0 3px var(--ink);padding:.35em .7em .3em;font-size:clamp(34px,11vw,52px)}.btn.ghost{color:var(--ink);border-color:var(--ink);background:#0a0a0bb3;transform:rotate(.8deg);box-shadow:4px 4px #f4f1ea40}.btn.ghost:active{transform:rotate(.8deg)translate(3px,3px);box-shadow:1px 1px #f4f1ea40}.btn.small{min-height:40px;padding:.45em .8em .4em;font-size:16px}.btn.red{background:var(--rec);color:#fff}.btn[disabled]{opacity:.4;pointer-events:none}.icon-btn{border:2px solid var(--line);width:48px;height:48px;font-family:var(--ui);color:var(--ink);background:#0a0a0b99;place-items:center;font-size:14px;display:grid}.icon-btn:active{background:var(--acid);color:#000}.icon-btn svg{width:22px;height:22px}.sticker{background:var(--ink);color:#0a0a0b;font-family:var(--ui);text-transform:uppercase;border:2px solid #0a0a0b;padding:.18em .5em .12em;display:inline-block;transform:rotate(-3deg);box-shadow:3px 3px #0009}.sticker.acid{background:var(--acid)}.sticker.red{background:var(--rec);color:#fff}.sticker.dark{color:var(--ink);border-color:var(--ink);background:#111}.osd{font-family:var(--osd);text-transform:uppercase;color:#fff;text-shadow:0 0 6px #ffffff73,2px 0 #ff003c59,-2px 0 #00c8ff59;letter-spacing:.04em}.hand{font-family:var(--hand)}.screen{padding:calc(var(--st) + 14px) calc(var(--sr) + 16px) calc(var(--sb) + 16px) calc(var(--sl) + 16px);flex-direction:column;animation:.22s ease-out screen-in;display:flex;position:fixed;inset:0}.screen.solid{background:var(--panel);-webkit-overflow-scrolling:touch;overflow-y:auto}.screen.dim{background:linear-gradient(#0a0a0b8c,#0a0a0b33 40%,#0a0a0bb3)}@keyframes screen-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.spacer{flex:1}.row{align-items:center;gap:10px;display:flex}.col{flex-direction:column;gap:12px;display:flex}.center{text-align:center;align-items:center}.wrap{flex-wrap:wrap}h1,h2,h3{text-transform:uppercase;margin:0;font-weight:400;line-height:.95}h2{font-size:40px}h3{font-size:22px}p{margin:0}.body-text{letter-spacing:0;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.45}.muted{color:var(--dim)}.logo{font-family:var(--ui);text-transform:uppercase;color:var(--ink);text-shadow:5px 5px 0 var(--acid), 10px 10px 0 #000;-webkit-text-stroke:2px #000;paint-order:stroke fill;letter-spacing:-.01em;font-size:clamp(64px,22vw,120px);line-height:.82;transform:rotate(-6deg)skew(-6deg)}.logo .flip{color:var(--acid);text-shadow:5px -5px 0 var(--ink), 10px -10px 0 #000;display:inline-block;transform:scaleY(-1)translateY(-.06em)}.tagline{font-family:var(--hand);color:var(--acid);margin-top:18px;font-size:22px;transform:rotate(-4deg)}.pulse{animation:1.4s ease-in-out infinite pulse}@keyframes pulse{0%,to{transform:rotate(-1.2deg)scale(1)}50%{transform:rotate(-1.2deg)scale(1.05)}}.card{background:var(--ink);color:#0a0a0b;box-shadow:8px 8px 0 var(--acid), 8px 8px 0 3px #000;text-align:left;border:3px solid #000;width:100%;max-width:380px;padding:22px 20px 20px;transform:rotate(-1deg)}.card h2{margin-bottom:10px;font-size:44px}.card .body-text{color:#1a1a1a}.tape{position:relative}.tape:before{content:"";background:#d4ff00bf;border:1px solid #00000026;width:110px;height:26px;position:absolute;top:-14px;left:50%;transform:translate(-50%)rotate(-3deg)}.hud{pointer-events:none;padding:calc(var(--st) + 10px) calc(var(--sr) + 14px) calc(var(--sb) + 14px) calc(var(--sl) + 14px);flex-direction:column;display:flex;position:fixed;inset:0}.hud *{pointer-events:none}.hud button,.hud .tappable{pointer-events:auto}.hud-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.rec{font-size:26px;line-height:1}.rec .dot{background:var(--rec);width:13px;height:13px;box-shadow:0 0 8px var(--rec);border-radius:50%;margin-right:6px;animation:1s steps(2,start) infinite blink;display:inline-block}.rec.play .dot{width:0;height:0;box-shadow:none;background:0 0;border-top:8px solid #0000;border-bottom:8px solid #0000;border-left:13px solid #fff;border-radius:0;animation:none}@keyframes blink{to{visibility:hidden}}.score{text-align:right}.score .num{font-variant-numeric:tabular-nums;font-size:44px;line-height:.9}.score .lbl{color:var(--dim);letter-spacing:.12em;font-size:13px}.best{color:var(--acid);white-space:nowrap;text-overflow:ellipsis;max-width:55vw;margin-top:4px;font-size:15px;overflow:hidden}.combo{opacity:0;flex-direction:column;align-self:flex-end;align-items:flex-end;margin-top:8px;transition:opacity .15s;display:flex}.combo.on{opacity:1}.combo .mult{color:#000;background:var(--acid);border:2px solid #000;padding:0 10px;font-size:34px;transform:rotate(3deg)}.combo .bar{background:#ffffff26;width:90px;height:6px;margin-top:6px}.combo .bar i{background:var(--acid);transform-origin:0;height:100%;display:block}.hud-bottom{flex-direction:column;gap:12px;margin-top:auto;display:flex}.hint{text-align:center;color:var(--ink);background:#0000008c;align-self:center;max-width:92vw;padding:6px 12px;font-size:15px;transition:opacity .3s}.hint b{color:var(--acid);font-weight:400}.hint .body-text{color:var(--dim);font-size:13px}.toolbar{justify-content:space-between;gap:8px;display:flex}.toolbar .btn{flex:1;min-height:46px;padding:.4em .3em .35em;font-size:17px;box-shadow:4px 4px #000}.status{left:50%;top:calc(var(--st) + 64px);font-size:22px;position:absolute;transform:translate(-50%)}.holdbar{text-align:center;opacity:0;width:min(80vw,340px);transition:opacity .15s;position:fixed;top:58%;left:50%;transform:translate(-50%)}.holdbar.on{opacity:1}.holdbar .name{font-family:var(--hand);color:var(--acid);-webkit-text-stroke:1.5px #000;paint-order:stroke fill;text-shadow:3px 3px #000;font-size:34px}.holdbar .track{border:2px solid var(--ink);background:#0009;height:14px;margin:8px 0;position:relative}.holdbar .zone{background:#d4ff0040;position:absolute;inset:0 30%}.holdbar .needle{background:var(--acid);width:4px;box-shadow:0 0 8px var(--acid);position:absolute;top:-5px;bottom:-5px;left:50%}.holdbar .t{font-variant-numeric:tabular-nums;font-size:30px}.callout{text-align:center;pointer-events:none;flex-direction:column;align-items:center;gap:8px;transition:transform .35s cubic-bezier(.2,.9,.2,1),top .35s cubic-bezier(.2,.9,.2,1);display:flex;position:fixed;top:30%;left:0;right:0}.callout.docked{top:calc(var(--st) + 96px);transform:scale(.55)}.callout .name{font-family:var(--hand);color:var(--acid);-webkit-text-stroke:3px #000;paint-order:stroke fill;text-shadow:5px 5px #000;padding:0 12px;font-size:clamp(46px,15vw,92px);line-height:.95;animation:.34s cubic-bezier(.15,1.6,.4,1) both slam-in;transform:rotate(-5deg)}.callout.bail .name{color:var(--rec);font-family:var(--ui);letter-spacing:.02em;font-size:clamp(70px,26vw,140px)}.callout .pts{font-family:var(--ui);color:var(--ink);-webkit-text-stroke:2px #000;paint-order:stroke fill;text-shadow:3px 3px #000;font-variant-numeric:tabular-nums;font-size:44px;animation:.3s cubic-bezier(.2,1.6,.4,1) .12s both pop-in}.callout .chips{flex-wrap:wrap;justify-content:center;gap:8px;animation:.3s cubic-bezier(.2,1.6,.4,1) .2s both pop-in;display:flex}.callout .chips .sticker{font-size:20px}.callout .chips .sticker:nth-child(2n){transform:rotate(3deg)}.callout .sub{font-family:var(--hand);color:var(--ink);text-shadow:2px 2px #000;font-size:22px;animation:.3s .2s both pop-in}.callout.out{animation:.25s forwards fade-out}@keyframes slam-in{0%{opacity:0;transform:rotate(-5deg)scale(2.8)}60%{opacity:1;transform:rotate(-5deg)scale(.9)}to{transform:rotate(-5deg)scale(1)}}@keyframes pop-in{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes fade-out{to{opacity:0;transform:scale(.9)}}.shake{animation:.32s linear shake}@keyframes shake{0%,to{translate:0}15%{translate:-10px 6px}30%{translate:9px -7px}45%{translate:-7px -4px}60%{translate:6px 5px}75%{translate:-3px 2px}}.toast{left:50%;bottom:calc(var(--sb) + 110px);background:var(--acid);color:#000;text-transform:uppercase;white-space:nowrap;border:3px solid #000;padding:8px 14px 6px;font-size:20px;animation:2.4s cubic-bezier(.2,1.4,.4,1) forwards toast;position:fixed;transform:translate(-50%)rotate(-2deg);box-shadow:5px 5px #000}@keyframes toast{0%{opacity:0;transform:translate(-50%)rotate(-2deg)translateY(30px)scale(.6)}12%{opacity:1;transform:translate(-50%)rotate(-2deg)scale(1.05)}18%,85%{opacity:1;transform:translate(-50%)rotate(-2deg)scale(1)}to{opacity:0;transform:translate(-50%)rotate(-2deg)translateY(-20px)}}.combo-banner{text-align:center;font-size:30px;animation:1.8s forwards toast-plain;position:fixed;top:20%;left:0;right:0}.combo-banner b{color:var(--acid);-webkit-text-stroke:2px #000;paint-order:stroke fill;text-shadow:4px 4px #000;font-size:58px;font-weight:400;display:block}@keyframes toast-plain{0%{opacity:0;transform:scale(.7)}15%,80%{opacity:1;transform:scale(1)}to{opacity:0}}.tabs{gap:8px;margin:12px 0 6px;display:flex}.tabs button{border:2px solid var(--line);color:var(--dim);padding:6px 14px 4px;font-size:20px}.tabs button.on{color:#000;background:var(--acid);border-color:#000}.section-title{letter-spacing:.16em;color:var(--dim);align-items:center;gap:10px;margin:18px 0 8px;font-size:15px;display:flex}.section-title:after{content:"";background:var(--line);flex:1;height:1px}.trick{border:2px solid var(--line);background:#ffffff08;grid-template-columns:1fr auto;gap:2px 10px;margin-bottom:8px;padding:12px 12px 11px;display:grid}.trick .tname{font-family:var(--hand);color:var(--acid);font-size:26px;line-height:1.05}.trick.locked .tname{font-family:var(--ui);color:var(--dim);font-size:22px}.trick .stat{text-align:right;color:var(--ink);font-size:15px;line-height:1.15}.trick .stat b{color:var(--acid);font-size:20px;font-weight:400}.trick .how{color:var(--dim);grid-column:1/-1;font-size:14px}.trick.locked{border-style:dashed}.boards{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:12px 10px;display:grid}.design{text-align:center;border:2px solid #0000;flex-direction:column;align-items:center;gap:6px;padding:8px 4px 6px;display:flex}.design canvas{width:44px;height:160px}.design .dn{font-size:13px;line-height:1.1}.design .dc{color:var(--dim);font-size:11px;line-height:1.15}.design.on{border-color:var(--acid);background:#d4ff0014}.design.locked canvas{filter:grayscale()brightness(.3)}.pass{background:var(--acid);color:#000;text-align:center;justify-content:center;align-items:center}.pass .to{letter-spacing:.1em;font-size:28px}.pass .who{font-family:var(--hand);word-break:break-word;margin:10px 0 18px;font-size:clamp(56px,20vw,110px);line-height:1;transform:rotate(-4deg)}.pass .btn{color:var(--acid);background:#000;border-color:#000;box-shadow:6px 6px #00000059}.letters{gap:4px;display:inline-flex}.letters span{opacity:.35;border:2px solid;place-items:center;width:30px;height:36px;font-size:26px;display:grid}.letters span.got{opacity:1;background:var(--rec);color:#fff;border-color:#000}.pass .letters span.got{color:var(--acid);background:#000}.players{flex-direction:column;gap:8px;display:flex}.player-row{background:#0000008c;border:2px solid #0000;justify-content:space-between;align-items:center;gap:10px;padding:6px 10px;display:flex}.player-row.me{border-color:var(--acid)}.player-row.out{opacity:.4;text-decoration:line-through}.player-row .pn{font-size:22px}.name-input{width:100%;color:var(--ink);border:2px solid var(--line);-webkit-user-select:text;user-select:text;font-size:24px;font-family:var(--ui);background:#000;border-radius:0;outline:none;padding:12px 14px 10px}.name-input:focus{border-color:var(--acid)}.task{text-align:center;border:2px solid var(--acid);background:#000000b3;align-self:center;padding:10px 16px}.task .what{color:var(--dim);letter-spacing:.12em;font-size:16px}.task .trickname{font-family:var(--hand);color:var(--acid);font-size:40px;line-height:1.1}.share-preview{flex:1;justify-content:center;align-items:center;min-height:0;margin:10px 0 14px;display:flex}.share-preview img,.share-preview canvas{border:2px solid var(--line);max-width:100%;max-height:100%;box-shadow:0 10px 40px #0009}.lab{font-family:var(--osd);text-transform:none;font-size:18px}.lab h2{font-family:var(--ui)}.lab .graph{border:1px solid var(--line);background:#050506;width:100%;height:120px;display:block}.lab .kv{grid-template-columns:auto 1fr;gap:2px 12px;font-size:18px;line-height:1.15;display:grid}.lab .kv span:nth-child(odd){color:var(--dim)}.lab pre{white-space:pre-wrap;word-break:break-word;font-family:var(--osd);color:var(--acid);border:1px solid var(--line);background:#050506;max-height:180px;margin:0;padding:8px;font-size:16px;line-height:1.1;overflow:auto}.lab select{font-family:var(--osd);color:var(--ink);border:2px solid var(--line);background:#000;flex:1;min-width:0;padding:6px 8px;font-size:20px}.lab .rec-list div{border-bottom:1px solid var(--line);justify-content:space-between;gap:8px;padding:4px 0;display:flex}.lab .legend{gap:12px;font-size:15px;display:flex}.stance-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.stance{border:3px solid var(--line);background:#0009;flex-direction:column;align-items:center;gap:8px;padding:16px 10px 14px;display:flex}.stance.on,.stance:active{border-color:var(--acid);background:#d4ff001f}.stance svg{width:90px;height:150px}.stance .sn{font-size:28px}.ring{width:150px;height:150px}.ring circle{fill:none;stroke-width:10px}.ring .bg{stroke:#ffffff1f}.ring .fg{stroke:var(--acid);stroke-linecap:butt;transform-origin:50%;transition:stroke-dashoffset 80ms linear;transform:rotate(-90deg)}.check-steps{justify-content:center;gap:8px;display:flex}.check-steps span{border:2px solid var(--line);color:var(--dim);padding:4px 8px;font-size:15px}.check-steps span.done{border-color:var(--acid);color:#000;background:var(--acid)}.check-steps span.now{border-color:var(--ink);color:var(--ink)}.overlay-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.demo-pad{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.demo-pad .btn{min-height:36px;padding:.35em .6em .3em;font-size:14px;box-shadow:3px 3px #000}@media (min-width:700px){.screen,.hud{max-width:520px;margin:0 auto}}
