@font-face{font-family:Jost Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/jost-cyrillic-wght-normal-CjwCQKo9.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Jost Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/jost-latin-ext-wght-normal-BDUtSsKd.woff2)format("woff2-variations");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:Jost Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/jost-latin-wght-normal-ObQm3Zd1.woff2)format("woff2-variations");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{--ink:#1d2b4f;--ink-soft:#4f6185;--paper:#f6f8fb;--glow:#fff;--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--safe-r:env(safe-area-inset-right,0px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{-webkit-font-smoothing:antialiased;overscroll-behavior:none;touch-action:none;-webkit-user-select:none;user-select:none;background:#f6e7da;height:100%;margin:0;font-family:Jost Variable,Jost,system-ui,sans-serif;overflow:hidden}#app{position:fixed;inset:0}.surface{touch-action:none;position:absolute;inset:0}canvas.view{width:100%;height:100%;display:block;position:absolute;inset:0}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:default}[hidden]{display:none!important}.ui{pointer-events:none;color:var(--paper);position:absolute;inset:0}.ui section{opacity:0;visibility:hidden;transition:opacity .4s,visibility 0s linear .4s;position:absolute;inset:0}.ui section[data-open=true]{opacity:1;visibility:visible;transition:opacity .4s,visibility}.ui button,.ui input,.ui form,.ui .card{pointer-events:auto}.glass{background:color-mix(in srgb, var(--paper) 74%, transparent);-webkit-backdrop-filter:blur(16px)saturate(1.3);backdrop-filter:blur(16px)saturate(1.3);color:var(--ink);box-shadow:inset 0 0 0 1px #ffffff73}.icon-btn{width:42px;height:42px;color:var(--ink);border-radius:999px;place-items:center;transition:transform .15s,background .2s,opacity .2s;display:grid}.icon-btn svg{width:20px;height:20px}.icon-btn:active{transform:scale(.93)}.icon-btn.small{opacity:.78;width:40px;height:40px}.icon-btn.small:hover{opacity:1;background:color-mix(in srgb, var(--ink) 7%, transparent)}.icon-btn.ghost{color:var(--paper)}.icon-btn.ghost svg{filter:drop-shadow(0 0 1px color-mix(in srgb, var(--ink) 55%, transparent));width:24px;height:24px}.run-btn{background:var(--ink);height:46px;color:var(--paper);letter-spacing:.22em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 18px 0 20px;font-size:14px;font-weight:600;transition:transform .15s,opacity .25s,filter .2s;display:inline-flex}.run-btn .run-t{margin-right:-.22em}.run-btn svg{width:14px;height:14px}.run-btn:hover{filter:brightness(1.15)}.run-btn:active{transform:scale(.97)}.run-btn:disabled{opacity:.45;filter:none}.run-btn.wide{width:100%}.key{font:inherit;letter-spacing:.14em;opacity:.5;border:1px solid;border-radius:5px;padding:3px 6px 2px;font-size:9.5px;font-weight:650}.ui[data-touch=true] .key{display:none}.pill{background:color-mix(in srgb, var(--ink) 8%, transparent);height:40px;color:var(--ink);letter-spacing:.03em;border-radius:999px;align-items:center;gap:8px;padding:0 16px;font-weight:560;transition:transform .15s,background .2s;display:inline-flex}.pill svg{width:17px;height:17px}.pill:hover{background:color-mix(in srgb, var(--ink) 13%, transparent)}.pill:active{transform:scale(.96)}.pill.ghost{color:var(--ink-soft);background:0 0}.dot{background:#9aa3b5;border-radius:50%;flex:none;width:7px;height:7px}.ui[data-room=connected] .dot{background:#46b07a;box-shadow:0 0 0 3px #46b07a40}.menu{padding:calc(16px + var(--safe-t)) calc(18px + var(--safe-r)) calc(20px + var(--safe-b)) calc(20px + var(--safe-l));background:linear-gradient(to bottom, color-mix(in srgb, var(--ink) 14%, transparent), transparent 20%), linear-gradient(to top, color-mix(in srgb, var(--ink) 26%, transparent), transparent 32%);flex-direction:column;justify-content:space-between;display:flex}.menu-top{justify-content:space-between;align-items:center;display:flex}.brand{letter-spacing:.36em;text-transform:uppercase;text-shadow:0 1px 12px color-mix(in srgb, var(--ink) 45%, transparent);align-items:center;gap:.55em;margin:0;font-size:15px;font-weight:560;line-height:1;display:flex}.brand svg{width:1.1em;height:1.1em;filter:drop-shadow(0 1px 4px color-mix(in srgb, var(--ink) 40%, transparent));flex:none}.menu-bottom{flex-direction:column;align-items:center;display:flex}.map-picker{align-items:center;gap:6px;display:flex}.map-name{text-align:center;letter-spacing:.3em;text-transform:uppercase;white-space:nowrap;min-width:10em;text-shadow:0 2px 14px color-mix(in srgb, var(--ink) 55%, transparent);padding-left:.3em;font-size:clamp(17px,2vw,22px);font-weight:580}.map-sub{letter-spacing:.08em;opacity:.92;min-height:18px;text-shadow:0 1px 8px color-mix(in srgb, var(--ink) 60%, transparent);margin:0 0 14px;font-size:12.5px;font-weight:450}.map-sub b{font-variant-numeric:tabular-nums;font-weight:620}.dock{border-radius:999px;align-items:center;gap:2px;padding:5px 6px 5px 5px;display:flex}.dock .run-btn{margin-right:6px}.dock .daily[data-on=true]{opacity:1;background:color-mix(in srgb, var(--ink) 10%, transparent)}[data-tip]{position:relative}@media (hover:hover){[data-tip]:after{content:attr(data-tip);background:var(--ink);color:var(--paper);letter-spacing:.03em;text-transform:none;white-space:nowrap;opacity:0;pointer-events:none;border-radius:7px;padding:5px 9px;font-size:11.5px;font-weight:540;transition:opacity .15s .25s,transform .15s .25s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,4px)}[data-tip-pos=below]:after{inset:calc(100% + 8px) 0 auto auto;transform:translateY(-4px)}[data-tip]:hover:after{opacity:1;transform:translate(-50%)}[data-tip-pos=below]:hover:after{transform:translate(0)}}.ui:not([data-room=none]) .dock .together{display:none}.room-bar{letter-spacing:.04em;border-radius:999px;align-items:center;gap:9px;height:32px;margin-bottom:14px;padding:0 14px 0 12px;font-size:12.5px;font-weight:520;display:none}.ui:not([data-room=none]) .room-bar{display:inline-flex}.room-mode{border-left:1px solid color-mix(in srgb, var(--ink) 18%, transparent);letter-spacing:.14em;text-transform:uppercase;padding-left:9px;font-size:10.5px;font-weight:620}.hud .dist{top:calc(12px + var(--safe-t));font-variant-numeric:tabular-nums;text-shadow:0 2px 16px color-mix(in srgb, var(--ink) 55%, transparent), 0 0 2px color-mix(in srgb, var(--ink) 35%, transparent);align-items:baseline;gap:4px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.dist-n{letter-spacing:.02em;font-size:clamp(38px,6vw,60px);font-weight:540;line-height:1}.dist-u{opacity:.8;font-size:clamp(14px,1.8vw,19px);font-weight:500}.hud .sub{top:calc(16px + var(--safe-t) + clamp(40px, 6vw, 62px));letter-spacing:.2em;text-transform:uppercase;white-space:nowrap;opacity:.92;text-shadow:0 1px 10px color-mix(in srgb, var(--ink) 70%, transparent);font-size:11.5px;font-weight:600;position:absolute;left:50%;transform:translate(-50%)}.hud .north{top:calc(14px + var(--safe-t) + clamp(68px, 10vw, 98px));opacity:0;filter:drop-shadow(0 1px 6px color-mix(in srgb, var(--ink) 60%, transparent));flex-direction:column;align-items:center;gap:2px;transition:opacity .35s,transform .35s;display:flex;position:absolute;left:50%;transform:translate(-50%)scale(.85)}.hud .north[data-on=true]{opacity:.95;transform:translate(-50%)scale(1)}.hud .north .needle{width:24px;height:24px;transform:rotate(var(--a,0deg));transition:transform .12s linear}.hud .north svg{fill:currentColor;width:100%;height:100%}.hud .north span{letter-spacing:.2em;margin-right:-.2em;font-size:9px;font-weight:700}.pause-btn{top:calc(12px + var(--safe-t));right:calc(14px + var(--safe-r));opacity:.7;display:none;position:absolute}.hud[data-touch=true] .pause-btn{display:grid}.ui:not([data-room=none]) .pause-btn{display:none}.callouts{left:50%;bottom:calc(14% + var(--safe-b));flex-direction:column-reverse;align-items:center;gap:4px;display:flex;position:absolute;transform:translate(-50%)}.callout{text-transform:uppercase;letter-spacing:.12em;text-shadow:0 1px 2px color-mix(in srgb, var(--ink) 65%, transparent), 0 2px 14px color-mix(in srgb, var(--ink) 50%, transparent);white-space:nowrap;align-items:baseline;gap:8px;font-size:clamp(18px,2.4vw,24px);font-style:italic;font-weight:760;animation:1s cubic-bezier(.2,1.4,.4,1) both pop;display:flex}.callout .cs{opacity:.9;color:#fff;font-size:.72em;font-weight:700}.callout.gate .ct{color:#e6f6ff;text-shadow:0 0 18px #8cd2ffe6,0 2px 10px #14285080}.callout.best{animation-duration:1.6s}.callout.bump{font-size:clamp(15px,1.9vw,19px)}.hud .hint,.hud .note{left:50%;bottom:calc(24px + var(--safe-b));letter-spacing:.05em;white-space:nowrap;opacity:0;border-radius:999px;padding:9px 16px;font-size:12.5px;font-weight:540;transition:opacity .5s,transform .5s;position:absolute;transform:translate(-50%,8px)}.hud[data-hint=true] .hint,.hud[data-note=true] .note{opacity:1;transform:translate(-50%)}.hud[data-note=true] .hint{opacity:0}.countdown{letter-spacing:.04em;text-transform:uppercase;text-shadow:0 4px 30px color-mix(in srgb, var(--ink) 50%, transparent);opacity:0;pointer-events:none;place-items:center;font-size:clamp(64px,12vw,120px);font-weight:420;display:grid;position:absolute;inset:0}.countdown[data-on=true]{opacity:1}.countdown.tick{animation:.8s cubic-bezier(.2,.9,.3,1) both count}.card{background:color-mix(in srgb, var(--paper) 86%, transparent);-webkit-backdrop-filter:blur(20px)saturate(1.2);backdrop-filter:blur(20px)saturate(1.2);color:var(--ink);box-shadow:0 28px 70px -30px color-mix(in srgb, var(--ink) 75%, transparent), inset 0 1px 0 #fff9;border-radius:24px}.card-t,.sheet-head>span{letter-spacing:.26em;text-transform:uppercase;font-size:12.5px;font-weight:650}.crash{padding:var(--safe-t) var(--safe-r) var(--safe-b) var(--safe-l);background:radial-gradient(70% 60% at 50% 50%, color-mix(in srgb, var(--ink) 22%, transparent), transparent 70%);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.crash .card{text-align:center;min-width:min(340px,88vw);padding:22px 30px 18px;transition:transform .5s cubic-bezier(.2,1.2,.3,1);transform:translateY(12px)scale(.98)}.crash[data-open=true] .card{transform:none}.cause{letter-spacing:.24em;text-transform:uppercase;color:var(--ink-soft);font-size:11px;font-weight:650}.big{font-variant-numeric:tabular-nums;justify-content:center;align-items:baseline;gap:6px;margin-top:4px;display:flex}.big-n{font-size:clamp(50px,8vw,76px);font-weight:360;line-height:1}.big-u{color:var(--ink-soft);font-size:20px;font-weight:450}.best-line{letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);align-items:center;gap:6px;margin-top:6px;font-size:11.5px;font-weight:650;display:inline-flex}.best-line[data-new=true]{color:var(--ink)}.best-line .star{color:#d9a441;width:13px;height:13px;display:inline-flex}.beat-note{color:var(--ink);margin-top:6px;font-size:12.5px;font-weight:600}.stats{border-top:1px solid color-mix(in srgb, var(--ink) 9%, transparent);color:var(--ink-soft);justify-content:center;gap:18px;margin-top:12px;padding-top:12px;font-size:12.5px;display:flex}.stats b{color:var(--ink);font-weight:650}.res{border-top:1px solid color-mix(in srgb, var(--ink) 9%, transparent);margin-top:12px;padding-top:8px}.res-row{color:var(--ink-soft);font-variant-numeric:tabular-nums;justify-content:space-between;gap:40px;padding:5px 2px;font-size:14px;display:flex}.res-row b{font-weight:600}.res-row[data-lead=true]{color:var(--ink)}.crash-actions{align-items:center;gap:10px;display:flex}.crash:not([data-ready=true]) .crash-actions .run-btn{opacity:.5;pointer-events:none}.pause{background:color-mix(in srgb, var(--ink) 28%, transparent);place-items:center;display:grid}.pause .card{text-align:center;padding:22px 24px}.pause-actions{align-items:center;gap:8px;margin-top:16px;display:flex}.sheet{background:color-mix(in srgb, var(--ink) 30%, transparent);pointer-events:auto;place-items:center;padding:16px;display:grid}.sheet[data-open=false]{pointer-events:none}.sheet .card{width:min(400px,100%);padding:14px 20px 16px}.sheet-head{justify-content:space-between;align-items:center;margin:0 -8px 6px 0;display:flex}.row{border-top:1px solid color-mix(in srgb, var(--ink) 9%, transparent);justify-content:space-between;align-items:center;gap:12px;padding:9px 0;font-size:14.5px;display:flex}.toggle{background:color-mix(in srgb, var(--ink) 16%, transparent);border-radius:99px;width:44px;height:26px;transition:background .2s;position:relative}.toggle:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:3px;left:3px}.toggle[data-on=true]{background:var(--ink)}.toggle[data-on=true]:after{transform:translate(18px)}.seg{background:color-mix(in srgb, var(--ink) 9%, transparent);border-radius:99px;padding:3px;display:inline-flex}.seg button{color:var(--ink-soft);border-radius:99px;padding:6px 12px;font-size:13px;font-weight:550}.seg button[data-on=true]{background:var(--paper);color:var(--ink)}.seed-form,.join-form{gap:8px;display:flex}.join-form{justify-content:space-between;align-items:center}.code-slots{align-items:center;gap:5px;display:flex}.slot{border:1px solid color-mix(in srgb, var(--ink) 18%, transparent);width:34px;height:44px;color:var(--ink);font:inherit;text-align:center;text-transform:uppercase;caret-color:var(--ink-soft);-webkit-user-select:text;user-select:text;background:#ffffffd9;border-radius:10px;outline:none;padding:0;font-size:20px;font-weight:560}.slot:focus{border-color:var(--ink)}.code-slots .dash{color:var(--ink-soft);margin:0 2px}.swatches{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.swatch{background:radial-gradient(circle at 35% 30%, #fff 0%, var(--c) 45%, color-mix(in srgb, var(--c) 70%, #59607a) 100%);width:24px;height:24px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ink) 18%, transparent);border-radius:50%;transition:transform .15s}.swatch[data-on=true]{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ink) 18%, transparent), 0 0 0 2px var(--paper), 0 0 0 3.5px var(--ink)}.swatch:active{transform:scale(.92)}.seed-input{border:1px solid color-mix(in srgb, var(--ink) 16%, transparent);height:40px;color:var(--ink);font:inherit;letter-spacing:.05em;text-transform:uppercase;-webkit-user-select:text;user-select:text;background:#ffffffd9;border-radius:99px;outline:none;width:160px;padding:0 12px;font-weight:600}.seed-input:focus{border-color:var(--ink-soft)}.sheet-foot{color:var(--ink-soft);margin-top:8px;font-size:11.5px}.room .v-room,.room[data-view=room] .v-start{display:none}.room[data-view=room] .v-room{display:block}.v-start{padding-top:8px}.or{letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);align-items:center;gap:10px;margin:14px 0 12px;font-size:11px;font-weight:600;display:flex}.or:before,.or:after{content:"";background:color-mix(in srgb, var(--ink) 12%, transparent);flex:1;height:1px}.room-code{text-align:center;letter-spacing:.32em;-webkit-user-select:text;user-select:text;margin:6px 0 2px;padding-left:.32em;font-size:44px;font-weight:450}.room-line{color:var(--ink-soft);justify-content:center;align-items:center;gap:8px;margin-bottom:14px;font-size:13px;display:flex}.mode-note{color:var(--ink-soft);margin:2px 0 14px;font-size:12.5px;line-height:1.45}.sheet-actions{justify-content:space-between;gap:8px;display:flex}.veil{background:radial-gradient(90% 80% at 50% 40%, #fff, var(--paper) 55%, color-mix(in srgb, var(--paper) 82%, var(--ink)));color:var(--ink);opacity:0;visibility:hidden;pointer-events:none;place-items:center;transition:opacity .7s,visibility 0s linear .7s;display:grid;position:absolute;inset:0}.veil[data-open=true]{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .35s,visibility}.veil-mark{width:30px;height:30px;color:var(--ink);margin:0 auto 16px;animation:2.6s ease-in-out infinite twinkle;display:none}.veil[data-brand=true] .veil-mark{display:block}.veil-mark svg{width:100%;height:100%}.veil-title{letter-spacing:.36em;text-transform:uppercase;text-align:center;padding-left:.36em;font-size:clamp(22px,4vw,34px);font-weight:540}.veil-dots{justify-content:center;gap:9px;margin-top:18px;display:flex}.veil-dots i{background:var(--ink-soft);border-radius:50%;width:7px;height:7px;animation:1.1s ease-in-out infinite dot}.veil-dots i:nth-child(2){animation-delay:.15s}.veil-dots i:nth-child(3){animation-delay:.3s}.toast{left:50%;top:calc(18px + var(--safe-t));background:var(--ink);color:var(--paper);letter-spacing:.04em;opacity:0;border-radius:99px;padding:9px 16px;font-size:13px;font-weight:550;transition:opacity .3s,transform .3s;position:absolute;transform:translate(-50%,-12px)}.toast[data-open=true]{opacity:1;transform:translate(-50%)}@keyframes twinkle{0%,to{opacity:.6;transform:scale(.96)}50%{opacity:1;transform:scale(1.04)}}@keyframes pop{0%{opacity:0;transform:translateY(10px)scale(.6)skew(-8deg)}18%{opacity:1;transform:translateY(0)scale(1.08)skew(-8deg)}32%{transform:scale(1)skew(-8deg)}80%{opacity:1}to{opacity:0;transform:translateY(-18px)scale(.98)skew(-8deg)}}@keyframes count{0%{opacity:0;transform:scale(1.5)}25%{opacity:1;transform:scale(1)}80%{opacity:1}to{opacity:0;transform:scale(.92)}}@keyframes dot{0%,to{opacity:.4;transform:translateY(0)}50%{opacity:1;transform:translateY(-6px)}}@media (max-width:560px){.brand{letter-spacing:.3em;font-size:14px}.map-picker{gap:2px}.map-name{letter-spacing:.22em;min-width:0;padding-left:.22em;font-size:16px}.hud .hint,.hud .note{white-space:normal;text-align:center;width:max-content;max-width:88vw}}@media (max-height:460px){.map-sub{margin-bottom:8px}.crash .card{padding:14px 24px}.big-n{font-size:46px}}@media (prefers-reduced-motion:reduce){.veil-mark,.countdown.tick{animation:none}}
