:root{--night:#1b1b4b;--panel:#2c2769;--panel-soft:#2c2769f0;--ink:#15112e;--text:#fff7e6;--muted:#b9b4e6;--orange:#ff8a3c;--orange-lip:#c95f1b;--red:#ff5a3c;--sky:#4db8ff;--leaf:#6fe36a;--leaf-lip:#3ba03b;--gold:#ffd23f;--wood:#d9914a;--radius:14px;--outline:3px solid var(--ink);--display:"Lilita One", "Fredoka", "Arial Rounded MT Bold", system-ui, sans-serif;--body:"Fredoka", "Arial Rounded MT Bold", "Trebuchet MS", system-ui, sans-serif}*{box-sizing:border-box}html,body{background:var(--night);overscroll-behavior:none;-webkit-tap-highlight-color:transparent;height:100%;margin:0;overflow:hidden}body{font:500 15px/1.4 var(--body);color:var(--text);-webkit-font-smoothing:antialiased}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}.hidden{display:none!important}.muted{color:var(--muted)}#app{position:fixed;inset:0}.choice,.join button,.footer button,.invite button,.panel button,button.small,.chip,.icon,.action{border:var(--outline);border-radius:var(--radius);box-shadow:0 5px 0 var(--ink);background:#45409a;transition:transform 90ms,box-shadow 90ms,background .12s}.choice:hover:not(:disabled),.join button:hover:not(:disabled),.footer button:hover:not(:disabled),.invite button:hover,.panel button:hover,button.small:hover:not(:disabled),.chip:hover,.icon:hover,.action:hover{box-shadow:0 7px 0 var(--ink);background:#5852b8;transform:translateY(-2px)}.choice:active:not(:disabled),.join button:active,.footer button:active,.invite button:active,.panel button:active,button.small:active:not(:disabled),.chip:active,.icon:active,.action:active{box-shadow:0 2px 0 var(--ink);transform:translateY(3px)}input:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.screen.menu{background:linear-gradient(#1b1b4b 0%,#2a2a70 45%,#2f6a5c 100%);place-items:center;padding:16px;display:grid;overflow:auto}.backdrop{pointer-events:none;position:fixed;inset:0;overflow:hidden}.moon{background:#fff3c4;border-radius:50%;width:120px;height:120px;position:absolute;top:7%;right:12%;box-shadow:0 0 0 14px #fff3c41f,0 0 0 34px #fff3c40f}.moon:after{content:"";background:#f2dc9a;border-radius:50%;width:26px;height:26px;position:absolute;top:22px;left:26px;box-shadow:44px 30px 0 -6px #f2dc9a,14px 54px 0 -9px #f2dc9a}.star{background:#fff7e6;border-radius:50%;width:5px;height:5px;animation:2.6s ease-in-out infinite twinkle;position:absolute}.hill{background:#1f4a4a;border-radius:50% 50% 0 0;height:46vh;position:absolute;bottom:-18vh;left:-10%;right:-10%}.hill.near{background:#183a3c;bottom:-26vh;left:-30%;right:20%}.pine{clip-path:polygon(50% 0,78% 34%,64% 34%,90% 66%,74% 66%,100% 100%,0 100%,26% 66%,10% 66%,36% 34%,22% 34%);transform-origin:bottom;background:#123033;width:150px;height:330px;margin-left:-15px;animation:5s ease-in-out infinite sway;position:absolute;bottom:0}.eyes{gap:9px;animation:4.5s infinite blink;display:flex;position:absolute}.eyes i{background:#fff3a8;border-radius:50%;width:15px;height:19px;box-shadow:inset -4px 0 0 2px #2a2233}.eyes.big i{background:#ff9a7a;width:26px;height:30px;box-shadow:inset -7px 0 0 3px #2a2233}@keyframes twinkle{50%{opacity:.25;transform:scale(.6)}}@keyframes sway{50%{transform:rotate(1.6deg)}}@keyframes blink{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.08)}}.card{background:var(--panel-soft);border:var(--outline);width:min(460px,100%);box-shadow:0 10px 0 var(--ink), 0 30px 60px #00000073;border-radius:24px;padding:26px 28px 24px;animation:.45s cubic-bezier(.3,1.5,.5,1) drop;position:relative}.card.wide{width:min(700px,100%)}@keyframes drop{0%{opacity:0;transform:translateY(-30px)scale(.94)}}.logo{font:400 clamp(40px, 10vw, 58px) / .95 var(--display);text-align:center;color:var(--gold);-webkit-text-stroke:3px var(--ink);paint-order:stroke fill;text-shadow:0 6px 0 var(--ink);letter-spacing:.01em;margin:0 0 2px;transform:rotate(-2deg)}.logo span{color:var(--red);animation:2.4s ease-in-out infinite wiggle;display:inline-block;transform:rotate(12deg)scale(1.15)}@keyframes wiggle{50%{transform:rotate(-10deg)scale(1.25)}}.tagline{text-align:center;color:var(--muted);margin:10px 0 20px;font-size:16px}.field{gap:6px;margin-bottom:14px;display:grid}.field span,.columns h3,.panel h3{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:13px;font-weight:600}select option{background:var(--panel)}input:not([type=range]),select{border:var(--outline);border-radius:var(--radius);background:#1c1848;outline:none;width:100%;padding:10px 14px;font-weight:600}.choices{gap:12px;margin-bottom:4px;display:grid}.choice{text-align:left;gap:1px;padding:11px 16px;display:grid}.choice b{font:400 20px var(--display);letter-spacing:.02em}.choice span{color:var(--muted);font-size:14px}.choice.primary,button.primary{box-shadow:0 5px 0 var(--orange-lip), 0 5px 0 3px var(--ink);background:var(--orange)!important}.choice.primary:hover:not(:disabled),button.primary:hover{box-shadow:0 7px 0 var(--orange-lip), 0 7px 0 3px var(--ink);background:#ffa25e!important}.choice.primary:active:not(:disabled),button.primary:active{box-shadow:0 2px 0 var(--orange-lip), 0 2px 0 3px var(--ink)}.choice.primary span{color:#ffffffe6}.choice.primary b,button.primary{color:#fff;text-shadow:0 2px 0 var(--orange-lip)}.join{grid-template-columns:1fr auto;gap:10px;margin-top:16px;display:grid}.join button,.footer button,.invite button,.panel button{padding:9px 18px;font-weight:600}button.primary{font:400 18px var(--display);letter-spacing:.03em}button.link{color:var(--muted);padding:8px;font-weight:500;text-decoration:underline;box-shadow:none!important;background:0 0!important;border:none!important;transform:none!important}.card>button.link{margin:14px auto 0;display:block}.links{flex-wrap:wrap;justify-content:center;gap:0 14px;margin-top:14px;display:flex}.links button.link{white-space:nowrap}.panel.ask{text-align:center}.panel.ask .buttons{flex-wrap:wrap}.notice{border-radius:var(--radius);border:var(--outline);background:#6b2a45;margin:14px 0 0;padding:10px 14px;font-weight:600}.notice.quiet{color:var(--muted);text-align:center;background:0 0;border-color:#0000}.corner{z-index:5;gap:10px;display:flex;position:fixed;top:14px;right:14px}.chip{min-width:46px;padding:6px 12px;font-weight:700}.chip.off{color:var(--muted);text-decoration:line-through}.invite{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin:16px 0 4px;display:flex}.invite code{color:var(--gold);letter-spacing:.06em;font:700 20px ui-monospace,Consolas,monospace}.columns{grid-template-columns:1.15fr 1fr;gap:24px;margin-top:12px;display:grid}.columns h3{margin:12px 0 8px}.roster{gap:8px;margin:0;padding:0;list-style:none;display:grid}.roster li{border:var(--outline);border-radius:var(--radius);background:#1c1848;align-items:center;gap:8px;padding:8px 12px;display:flex}.roster b{text-overflow:ellipsis;white-space:nowrap;margin-right:auto;overflow:hidden}.roster em,.players em{color:var(--ink);background:var(--muted);border-radius:999px;padding:0 7px;font-size:11px;font-style:normal;font-weight:600}.roster .want{color:var(--muted);font-size:13px}.roster .want.hunter{color:var(--red)}.roster .want.builder{color:var(--sky)}.roster .ok{color:var(--leaf);font-size:13px}.roster .wait{color:var(--muted);font-size:13px}.segmented{border:var(--outline);border-radius:var(--radius);box-shadow:0 5px 0 var(--ink);grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.segmented button{border:none;border-right:var(--outline);background:#45409a;padding:10px 4px;font-weight:600}.segmented button:last-child{border-right:none}.segmented button:hover{background:#5852b8}.segmented button.on{background:var(--gold);color:var(--ink)}.segmented.lands{grid-template-columns:repeat(2,1fr)}.segmented.lands button{border-bottom:var(--outline);padding:8px 4px;font-size:14px}.segmented.lands button:nth-child(2n){border-right:none}.segmented.lands button:nth-last-child(-n+2){border-bottom:none}.segmented.lands button:disabled{opacity:1;cursor:default}.segmented.lands button:disabled:not(.on){color:var(--muted)}.segmented.lands+.muted{margin:10px 0 0;font-size:13.5px}.segmented button.on.hunter{background:var(--red);color:#fff}.segmented button.on.builder{background:var(--sky);color:var(--ink)}input[type=range]{width:100%;accent-color:var(--orange)}.footer{border-top:3px dashed #ffffff29;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;margin-top:22px;padding-top:18px;display:flex}.footer p{margin:0 auto 0 0}.countdown{font:400 26px var(--display);color:var(--gold);animation:1s infinite thump}@keyframes thump{10%{transform:scale(1.25)}40%{transform:scale(1)}}.overlay{z-index:40;pointer-events:auto;background:#0f0c28bd;place-items:center;padding:16px;display:grid;position:fixed;inset:0;overflow:auto}.panel{background:var(--panel);border:var(--outline);width:min(540px,100%);box-shadow:0 10px 0 var(--ink), 0 30px 60px #00000080;border-radius:24px;padding:24px 28px;animation:.4s cubic-bezier(.3,1.5,.5,1) drop;position:relative}.panel h2{font:400 32px var(--display);color:var(--gold);-webkit-text-stroke:2px var(--ink);paint-order:stroke fill;text-shadow:0 4px 0 var(--ink);margin:0 0 10px}.panel h3{margin:16px 0 6px}.panel p{margin:0 0 10px}.panel ul{color:var(--muted);margin:0 0 16px;padding-left:20px}.panel.end{text-align:center;overflow:hidden}.panel.end h2{font-size:64px;animation:1.2s infinite thump;transform:rotate(-3deg)}.panel.end.lost h2{color:var(--red)}.panel .buttons{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:20px;display:flex}.awards{text-align:left;gap:6px;margin:0 0 4px;list-style:none;display:grid;padding:0!important}.awards li{border:2px solid var(--ink);color:var(--text);background:#1c1848;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:baseline;gap:10px;padding:6px 12px;display:grid}.awards b{font:400 15px var(--display);color:var(--gold);letter-spacing:.02em}.awards em{color:var(--muted);font-size:13px;font-style:normal}.panel.settings .segmented{margin-bottom:8px}.segmented.four{grid-template-columns:repeat(4,1fr)}.segmented.two{grid-template-columns:repeat(2,1fr)}.panel .hint{min-height:2.8em;font-size:14px}.panel .gpu{margin:0 0 6px;font-size:13px}.panel .row{align-items:center;gap:14px;display:flex}.panel .row button.off{color:var(--muted);text-decoration:line-through}.confetti{border-radius:2px;width:10px;height:14px;animation:2.6s linear infinite fall;position:absolute;top:-14px}@keyframes fall{to{opacity:.2;transform:translateY(420px)rotate(720deg)}}.screen.play{background:var(--night)}canvas.world{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.hud{pointer-events:none;-webkit-user-select:none;user-select:none;touch-action:manipulation;position:absolute;inset:0}.hud>*{pointer-events:auto}.hud:before{content:"";pointer-events:none;background:radial-gradient(78% 74% at 50% 46%,#0000 58%,#0e0a2c6b 100%);position:absolute;inset:0}.hud .floaters{pointer-events:none;position:absolute;inset:0;overflow:hidden}.top{pointer-events:none;justify-content:space-between;align-items:flex-start;gap:10px;display:flex;position:absolute;top:10px;left:10px;right:10px}.top .group{pointer-events:auto;align-items:center;gap:8px;display:flex}.res,.clock,.ping{background:var(--panel-soft);border:var(--outline);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:7px;height:38px;padding:0 13px;font-weight:700;display:flex}.res b{min-width:2ch;font-size:17px}.clock span{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:12px}.clock b{font:400 20px var(--display);color:var(--gold)}.ping{color:var(--muted);font-size:12px;font-weight:600}.icon{width:38px;height:38px;box-shadow:0 4px 0 var(--ink);border-radius:50%;place-items:center;padding:0;font-size:16px;font-weight:700;display:grid}.icon.off{color:var(--muted);text-decoration:line-through}.dot{border:2px solid var(--ink);flex:none;width:15px;height:15px;display:inline-block}.dot.wood{background:linear-gradient(90deg, var(--wood) 68%, #a8662a 68%);border-radius:4px}.dot.gold{background:var(--gold);border-radius:50%;box-shadow:inset -3px -3px #e0a516}.dot.builder{background:var(--sky);border-radius:50% 50% 4px 4px}.banner{background:var(--red);border:var(--outline);font:400 17px var(--display);letter-spacing:.03em;color:#fff;white-space:nowrap;box-shadow:0 4px 0 var(--ink);border-radius:999px;padding:6px 18px;animation:1.4s ease-in-out infinite nudge;position:absolute;top:58px;left:50%;transform:translate(-50%)rotate(-1.5deg)}@keyframes nudge{50%{transform:translate(-50%)rotate(1.5deg)scale(1.04)}}.toasts{pointer-events:none;justify-items:center;gap:8px;width:min(580px,92vw);display:grid;position:absolute;top:108px;left:50%;transform:translate(-50%)}.toast{background:var(--text);color:var(--ink);border:var(--outline);text-align:center;box-shadow:0 4px 0 var(--ink);border-radius:18px;padding:8px 16px;font-weight:600;transition:opacity .5s,transform .5s;animation:.45s cubic-bezier(.3,1.7,.5,1) boing}.toast.good{background:#c9ffb8}.toast.bad{background:#ffc2b5}.toast.out{opacity:0;transform:translateY(-10px)}@keyframes boing{0%{opacity:0;transform:scale(.5)rotate(-4deg)}}.players{background:var(--panel-soft);border:var(--outline);border-radius:var(--radius);gap:5px;max-width:210px;margin:0;padding:9px 12px;font-size:14px;font-weight:600;list-style:none;display:grid;position:absolute;top:58px;right:10px}.players li{align-items:center;gap:7px;display:flex}.players li span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.players li.dead span{color:var(--muted);text-decoration:line-through}.players li.away{opacity:.5}.players li.hunter span{color:#ff9a85}.swatch{border:2px solid var(--ink);border-radius:50%;flex:none;width:13px;height:13px}.minimap{border:var(--outline);cursor:pointer;width:192px;height:192px;image-rendering:pixelated;box-shadow:0 5px 0 var(--ink);background:#000;border-radius:18px;position:absolute;bottom:10px;left:10px}.dock{justify-items:center;gap:6px;width:-moz-fit-content;width:fit-content;max-width:calc(100vw - 226px);margin-inline:auto;display:grid;position:absolute;bottom:12px;left:216px;right:10px}.tabs{align-items:center;gap:6px;display:flex}.tabs:empty{display:none}.tabs button{background:var(--panel-soft);border:var(--outline);color:var(--muted);border-radius:999px;padding:4px 14px;font-size:13px;font-weight:700}.tabs button:hover{color:var(--text)}.tabs button.on{background:var(--gold);color:var(--ink)}.tabs kbd{font:700 11px var(--body);color:var(--ink);background:var(--muted);border:2px solid var(--ink);border-radius:7px;padding:0 5px}.bar{background:var(--panel-soft);border:var(--outline);border-radius:20px;flex-wrap:wrap;justify-content:center;gap:12px 8px;max-width:100%;padding:12px 10px 13px;display:flex}.emotes{grid-template-columns:repeat(4,1fr);gap:4px;width:192px;display:grid;position:absolute;bottom:212px;left:10px}.emote{background:var(--panel-soft);border:2px solid var(--ink);border-radius:10px;height:34px;padding:0;font-size:18px;line-height:1;transition:transform 90ms;position:relative}.emote:hover{transform:scale(1.15)rotate(-6deg)}.emote kbd{font:700 9px var(--body);color:var(--ink);background:var(--gold);border:1.5px solid var(--ink);border-radius:5px;padding:0 3px;position:absolute;bottom:-4px;right:-3px}.combo{background:var(--orange);color:#fff;font:400 15px var(--display);letter-spacing:.03em}.combo.max{background:var(--red);animation:.5s infinite thump}.action{text-align:left;width:92px;height:104px;box-shadow:0 4px 0 var(--ink);flex:none;align-content:end;gap:2px;padding:4px 6px 5px;display:grid;position:relative}.bar:has(.power) .action{width:76px}.hud:not(.touch) .bar:has(>.action:nth-child(7)){scrollbar-width:thin;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto}.hud:not(.touch) .bar:has(>.action:nth-child(7)) .action{width:76px}.bar:has(.row){align-items:flex-end;column-gap:22px}.row{align-items:flex-end;gap:8px;display:flex}.action.glyph{height:88px}.action.active{background:var(--leaf);color:var(--ink);box-shadow:0 4px 0 var(--leaf-lip), 0 4px 0 3px var(--ink)}.action.active .detail{color:var(--ink)}.action.poor{background:#37336f}.action.poor .cost{color:#ff9a85}.action.poor .name{color:var(--muted)}.action.maxed{opacity:.6}.action.cooling{opacity:.5}.action.ability{background:#8a3a5c}.action kbd,button.small kbd{font:700 11px var(--body);color:var(--ink);background:var(--gold);border:2px solid var(--ink);border-radius:7px;padding:0 5px}.action kbd{position:absolute;top:4px;left:5px;transform:rotate(-6deg)}.action .name{-webkit-line-clamp:2;line-clamp:2;overflow-wrap:break-word;-webkit-box-orient:vertical;font-size:12px;font-weight:700;line-height:1.12;display:-webkit-box;overflow:hidden}.action .detail{color:var(--muted);justify-content:space-between;align-items:center;gap:4px;min-height:17px;font-size:12.5px;font-weight:600;display:flex}.cost{font-variant-numeric:tabular-nums;align-items:center;gap:4px;display:inline-flex}.cost .dot{border-width:1.5px;width:11px;height:11px}.pips{gap:2px;display:inline-flex}.pips i{background:#ffffff38;border-radius:50%;width:6px;height:6px}.pips i.on{background:var(--gold)}.tip{background:var(--text);width:max-content;color:var(--ink);border:var(--outline);text-align:center;pointer-events:none;max-width:320px;box-shadow:0 4px 0 var(--ink);border-radius:16px;gap:2px;margin-bottom:8px;padding:8px 14px;display:grid;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.tip b{font:400 16px var(--display);letter-spacing:.02em}.tip span{font-size:13px}.selection{right:10px;bottom:calc(var(--dock,170px) + 28px);background:var(--panel-soft);border:var(--outline);width:260px;box-shadow:0 5px 0 var(--ink);border-radius:18px;gap:9px;padding:11px 13px;display:grid;position:absolute}.selection .title{align-items:center;gap:10px;display:flex}.selection .title img{filter:drop-shadow(0 3px #15112e8c);flex:none;width:54px;height:54px;margin:-6px 0 -6px -4px}.selection .title div{display:grid}.selection .note.next{color:#c9ffb8}.selection .title b{font:400 18px var(--display);letter-spacing:.02em}.selection .title span,.selection .note{color:var(--muted);font-size:13px}.health{border:2px solid var(--ink);background:#1c1848;border-radius:999px;height:20px;position:relative;overflow:hidden}.health i{background:var(--leaf);position:absolute;inset:0 auto 0 0}.health span{text-align:center;font-variant-numeric:tabular-nums;text-shadow:0 1px 0 var(--ink), 0 -1px 0 var(--ink), 1px 0 0 var(--ink), -1px 0 0 var(--ink);font-size:12px;font-weight:700;line-height:16px;display:block;position:relative}.selection .buttons{flex-wrap:wrap;gap:8px;padding-bottom:4px;display:flex}button.small{box-shadow:0 4px 0 var(--ink);align-items:center;gap:6px;padding:5px 10px;font-size:13px;font-weight:600;display:inline-flex}button.small.danger:hover{background:var(--red)}.status{background:var(--text);color:var(--ink);border:var(--outline);box-shadow:0 5px 0 var(--ink);border-radius:18px;padding:14px 24px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.floater{font:400 18px var(--display);color:#fff;-webkit-text-stroke:4px var(--ink);paint-order:stroke fill;pointer-events:none;white-space:nowrap;animation:.8s ease-out forwards float;position:absolute;transform:translate(-50%,-50%)}.floater.hurt{color:#ff7a66;font-size:22px}.floater.chip{color:#ffe9b8}.floater.gain{color:#b6ff9a;font-size:20px}.floater.gain.big{color:var(--gold);font-size:28px}.floater.coin{color:var(--gold);font-size:19px}.floater.shout{-webkit-text-stroke:0;filter:drop-shadow(0 3px 0 var(--ink));font-size:44px;animation:1.7s cubic-bezier(.2,1.6,.4,1) forwards bubble}@keyframes bubble{0%{opacity:0;transform:translate(-50%,-50%)scale(.2)}15%{opacity:1;transform:translate(-50%,-90%)scale(1.3)}80%{opacity:1;transform:translate(-50%,-110%)scale(1)}to{opacity:0;transform:translate(-50%,-150%)scale(.8)}}.floater.word{color:var(--gold);-webkit-text-stroke:6px var(--ink);font-size:34px;animation:1s cubic-bezier(.2,1.6,.4,1) forwards pow}.floater.word.hot{color:#ff6a4d}.floater.word.good{color:#8dff7a}@keyframes float{to{opacity:0;transform:translate(-50%,-280%)}}@keyframes pow{0%{transform:translate(-50%, -50%) rotate(var(--tilt,0deg)) scale(.2);opacity:0}25%{transform:translate(-50%, -90%) rotate(var(--tilt,0deg)) scale(1.25);opacity:1}70%{transform:translate(-50%, -110%) rotate(var(--tilt,0deg)) scale(1);opacity:1}to{transform:translate(-50%, -160%) rotate(var(--tilt,0deg)) scale(.9);opacity:0}}.side{pointer-events:none;justify-items:start;gap:7px;min-width:0;display:grid}.goal{background:var(--gold);max-width:min(340px,30vw);color:var(--ink);border:var(--outline);box-shadow:0 3px 0 var(--ink);border-radius:999px;padding:4px 13px 5px;font-size:13.5px;font-weight:700;line-height:1.25;transform:rotate(-.6deg)}.goal:empty{display:none}.buffs{gap:6px;display:flex}.buffs:empty{display:none}.buff{color:var(--ink);gap:5px;padding:0 11px 0 8px;animation:.45s cubic-bezier(.3,1.7,.5,1) boing}.buff span{font-size:18px;line-height:1}.buff b{min-width:2ch;font-size:15px}.buff.haste{background:#8fe3ff}.buff.might{background:#ff9a7a}.buff.shield{background:#c7b6ff}.buff.sniff{background:#b9f58f}.hint-row{justify-content:center;align-items:center;gap:8px;min-height:0;display:flex}.hint-row:not(:has(>:not(.hidden))){display:none}.prompt{background:var(--text);color:var(--ink);border:var(--outline);box-shadow:0 3px 0 var(--ink);border-radius:999px;align-items:center;gap:8px;padding:4px 14px 4px 6px;font-size:14px;font-weight:700;animation:.35s cubic-bezier(.3,1.7,.5,1) boing;display:inline-flex}.prompt kbd{font:700 12px var(--body);color:var(--ink);background:var(--gold);border:2px solid var(--ink);border-radius:8px;padding:1px 9px}.cancel{background:var(--red);color:#fff;border:var(--outline);box-shadow:0 4px 0 var(--ink);border-radius:999px;padding:5px 16px;font-size:14px;font-weight:700;transition:transform 90ms,box-shadow 90ms}.cancel:hover{box-shadow:0 6px 0 var(--ink);transform:translateY(-2px)}.cancel:active{box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.action{grid-template-rows:1fr auto auto}.art{pointer-events:none;filter:drop-shadow(0 3px #15112e80);place-items:center;min-height:0;font-size:30px;line-height:1;display:grid}.art img{object-fit:contain;width:58px;height:58px;margin:-8px 0;transition:transform .12s}.action:hover .art img,.action.active .art img{transform:scale(1.12)rotate(-4deg)}.action.poor .art,.action.cooling .art{filter:grayscale(.7)drop-shadow(0 3px #15112e80);opacity:.75}.action .name{text-align:center}.power{flex:none;justify-items:stretch;gap:5px;display:grid}.up{background:var(--leaf);height:24px;color:var(--ink);border:2.5px solid var(--ink);font:700 12px var(--body);box-shadow:0 3px 0 var(--ink);border-radius:999px;justify-content:center;align-items:center;gap:5px;padding:0 6px;transition:transform 90ms,box-shadow 90ms;display:flex}.up:hover:not(:disabled){box-shadow:0 5px 0 var(--ink);transform:translateY(-2px)}.up:active:not(:disabled){box-shadow:0 1px 0 var(--ink);transform:translateY(2px)}.up:disabled{color:var(--muted);opacity:1;background:#37336f}.up .cost{gap:3px}.zoom{gap:4px;display:grid;position:absolute;bottom:136px;left:168px}.zoom button{background:var(--panel-soft);width:28px;height:28px;color:var(--text);border:2px solid var(--ink);font:700 17px/1 var(--body);border-radius:9px;place-items:center;padding:0;display:grid}.zoom button:hover{background:#5852b8}.emote-toggle{display:none}.pointers{position:absolute;inset:0;overflow:hidden;pointer-events:none!important}.pointer{background:var(--text);border:var(--outline);width:40px;height:40px;box-shadow:0 3px 0 var(--ink);border-radius:50%;place-items:center;font-size:19px;line-height:1;animation:1.1s infinite thump;display:grid;position:absolute;translate:-50% -50%}.pointer i{font:normal 15px/1 var(--body);color:var(--gold);-webkit-text-stroke:3px var(--ink);paint-order:stroke fill;transform:rotate(var(--turn,0deg));place-items:center end;display:grid;position:absolute;inset:-17px}.stick{left:max(18px, env(safe-area-inset-left));border:var(--outline);touch-action:none;background:#2c27698c;border-radius:50%;place-items:center;width:128px;height:128px;display:grid;position:absolute;bottom:18px}.stick i{background:var(--text);border:var(--outline);width:58px;height:58px;box-shadow:0 4px 0 var(--ink);pointer-events:none;border-radius:50%}.do{right:max(18px, env(safe-area-inset-right));border:var(--outline);width:92px;height:92px;box-shadow:0 6px 0 var(--ink);touch-action:none;opacity:.6;background:#45409a;border-radius:50%;padding:0;font-size:40px;line-height:1;transition:transform 90ms,box-shadow 90ms,background .15s,opacity .15s;position:absolute;bottom:26px}.do.ready{background:var(--orange);opacity:1;animation:.9s infinite thump}.do:active{box-shadow:0 2px 0 var(--ink);transform:translateY(4px)}.hud.touch .minimap{border-radius:14px;width:104px;height:104px;top:92px;bottom:auto}.hud.touch .zoom,.hud.touch .players{display:none}.hud.touch .dock{max-width:calc(100vw - 288px);bottom:8px;left:162px;right:126px}.hud.touch .bar{scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;gap:7px;padding:8px 8px 10px;overflow-x:auto}.hud.touch .bar::-webkit-scrollbar{display:none}.hud.touch .action{width:90px;height:98px}.hud.touch .art img{width:52px;height:52px}.hud.touch .row{flex:none}.hud.touch .selection{width:236px;top:58px;bottom:auto;right:10px}.hud.touch button.small{padding:9px 12px;font-size:14px}.hud.touch .up{height:30px;font-size:13px}.hud.touch .emote-toggle,.hud.touch .emotes{right:max(30px, env(safe-area-inset-right));bottom:132px;left:auto}.hud.touch .emote-toggle{background:var(--panel-soft);border:var(--outline);width:46px;height:46px;box-shadow:0 4px 0 var(--ink);border-radius:50%;place-items:center;padding:0;font-size:22px;line-height:1;display:grid;position:absolute}.hud.touch .emotes{grid-template-columns:repeat(4,46px);gap:6px;width:auto;display:none;bottom:186px}.hud.touch .emotes.open{display:grid}.hud.touch .emote{border-width:3px;border-radius:14px;height:46px;font-size:24px}.hud.touch .ping{display:none}@media (orientation:portrait){.hud.touch .dock{max-width:calc(100vw - 12px);left:6px;right:6px}.hud.touch .stick{width:116px;height:116px;bottom:172px}.hud.touch .do{width:84px;height:84px;bottom:184px}.hud.touch .emote-toggle{bottom:282px}.hud.touch .emotes{bottom:336px}}.coins{font-variant-numeric:tabular-nums;align-items:center;gap:5px;font-weight:700;display:inline-flex}.coin{background:var(--gold);border:2px solid var(--ink);border-radius:50%;flex:none;width:16px;height:16px;box-shadow:inset -3px -3px #e0a516}.chip.purse{min-width:0;padding:6px 12px}.chip.rank{background:var(--leaf);min-width:0;color:var(--ink);padding:6px 12px;position:relative}.chip.rank.todo:after{content:"";background:var(--red);border:2px solid var(--ink);border-radius:50%;width:11px;height:11px;position:absolute;top:-4px;right:-4px}.panel.progress{width:min(460px,100%)}.panel.feedback{gap:10px;width:min(460px,100%);display:grid}.panel.feedback textarea,.panel.feedback input{border:var(--outline);width:100%;color:var(--text);font:inherit;resize:vertical;background:#15112e99;border-radius:12px;padding:10px 12px}.panel.feedback textarea:focus,.panel.feedback input:focus{outline:3px solid var(--gold);outline-offset:1px}.meter{border:var(--outline);background:#15112e99;border-radius:999px;height:16px;overflow:hidden}.meter i{background:var(--gold);height:100%;display:block}.panel ul.missions,.missions{gap:8px;margin:8px 0 6px;padding:0;list-style:none;display:grid}.missions li{background:#15112e80;border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:9px 12px;font-weight:600;display:grid}.missions li.done{background:#6fe36a38}.missions li.done span:first-child{color:var(--muted);text-decoration:line-through}.missions b{font-variant-numeric:tabular-nums;color:var(--gold)}.panel .facts{gap:3px;margin:8px 0 14px;padding-left:18px;display:grid}.gain-note{color:var(--gold);margin:4px 0 0;font-weight:600}.chip.who{text-overflow:ellipsis;white-space:nowrap;max-width:150px;overflow:hidden}.panel.account{width:min(440px,100%)}.credits{margin:14px 0;font-size:12.5px}.credits summary{cursor:pointer;font-size:14px;font-weight:600}.credits ul{overflow-wrap:anywhere;gap:4px;max-height:180px;margin:8px 0 0;padding-left:18px;display:grid;overflow:auto}.sign{gap:2px;margin-top:14px;display:grid}.sign .notice{margin:4px 0 0}.panel .small{margin-top:14px;font-size:12.5px}.panel.shop{flex-direction:column;gap:12px;width:min(680px,100%);max-height:calc(100dvh - 32px);display:flex}.panel.shop .notice{text-align:center;border-color:var(--ink);color:var(--gold);background:#1c1848;margin:0;font-weight:600}.shop-foot{justify-content:space-between;align-items:center;gap:12px;display:flex}.recover{border:var(--outline);border-radius:var(--radius);background:#1c1848;gap:8px;padding:12px 14px;font-size:13px;display:grid}.recover .row{align-items:center;gap:8px;display:flex}.recover code{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--gold);-webkit-user-select:all;user-select:all;flex:1;font:600 12px ui-monospace,Consolas,monospace;overflow:hidden}.recover input{background:var(--panel);border:var(--outline);border-radius:10px;flex:1;min-width:0;padding:6px 10px}.recover p{margin:0}.shop-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.shop-head h2{margin:0}.purse{border:var(--outline);background:#1c1848;border-radius:999px;padding:5px 14px;font-size:17px}.segmented.three{grid-template-columns:repeat(3,1fr)}.looks{flex:auto;grid-template-columns:repeat(auto-fill,minmax(134px,1fr));align-content:start;gap:12px;min-height:150px;padding:4px 4px 10px;display:grid;overflow-y:auto}.look{border:var(--outline);box-shadow:0 5px 0 var(--ink);background:#37336f;border-radius:18px;justify-items:center;gap:6px;padding:8px 8px 12px;display:grid;position:relative}.look.on{background:#4a7a44}.look.premium{background:linear-gradient(160deg,#5a3f8a,#37336f 70%)}.look b{font:400 16px var(--display);letter-spacing:.02em}.look-art{place-items:center;width:104px;height:104px;display:grid}.look-art img{object-fit:contain;filter:drop-shadow(0 4px #15112e80);width:118px;height:118px;margin:-7px}.look-art.burst{position:relative}.look-art.burst i{border:var(--outline);border-radius:50%;position:absolute}.look-art.burst i:first-child{width:66px;height:66px;top:12px;left:8px}.look-art.burst i:nth-child(2){width:40px;height:40px;top:8px;right:10px}.look-art.burst i:nth-child(3){width:48px;height:48px;bottom:6px;right:16px}.look button.small{justify-content:center;min-width:96px}.ribbon{background:var(--gold);color:var(--ink);border:2px solid var(--ink);font:400 12px var(--display);letter-spacing:.04em;border-radius:8px;padding:1px 9px;position:absolute;top:8px;right:-6px;transform:rotate(8deg)}.panel.shop .note{margin:0;font-size:13px}.earned{justify-content:center;margin:4px 0 0;font-size:22px;display:flex}.earned .coin{width:22px;height:22px}.coach{z-index:30;background:var(--text);width:min(480px,100vw - 24px);color:var(--ink);border:var(--outline);box-shadow:0 6px 0 var(--ink);border-radius:20px;gap:6px;margin-inline:auto;padding:12px 16px;animation:.45s cubic-bezier(.3,1.7,.5,1) boing;display:grid;position:absolute;top:58px;left:0;right:0}.coach .head{align-items:center;gap:12px;display:flex}.coach .step{font:400 14px var(--display);letter-spacing:.04em;color:var(--orange-lip);text-transform:uppercase}.coach .dots{gap:5px;margin-right:auto;display:flex}.coach .dots i{border:2px solid var(--ink);background:#15112e29;border-radius:999px;width:18px;height:8px}.coach .dots i.on{background:var(--orange)}.coach p{margin:0;font-size:16.5px;font-weight:600;line-height:1.35}.coach .skip{color:#5a548f;text-underline-offset:3px;background:0 0;border:none;flex:none;padding:2px 4px;font-size:13px;font-weight:700;text-decoration:underline}.coach .skip:hover{color:var(--ink)}.coach.done{background:#c9ffb8}.coach.done p{font:400 24px var(--display);text-align:center}.tutorial .goal,.tutorial .banner,.tutorial .clock{display:none}.tutorial .toasts{top:206px}@media (max-width:820px){.minimap{width:120px;height:120px}.hud:not(.touch) .minimap{bottom:150px}.hud:not(.touch) .emotes,.hud:not(.touch) .zoom{display:none}.hud:not(.touch) .dock{max-width:calc(100vw - 20px);left:10px}.hud:not(.touch) .selection{width:220px}.goal{font-size:12.5px}}@media (max-width:520px){.top{gap:5px;top:6px;left:6px;right:6px}.top .group{gap:5px}.side .group{flex-wrap:wrap}.res,.clock,.ping{gap:5px;height:32px;padding:0 9px}.res b{min-width:1ch;font-size:15px}.clock b{font-size:17px}.icon{width:32px;height:32px;font-size:14px}.goal{max-width:calc(100vw - 12px);font-size:12.5px;position:fixed;top:44px;left:6px}.banner{padding:3px 14px;font-size:14px;top:76px}.toasts{top:112px}.toast{padding:5px 13px;font-size:13.5px}.hud.touch .minimap{width:92px;height:92px;top:auto;bottom:304px}.hud.touch .tabs{gap:4px;max-width:100%}.hud.touch .tabs button{padding:6px 10px;font-size:13px}.hud.touch .selection{top:106px}.hud.touch .tip{max-width:calc(100vw - 24px);position:fixed;top:108px;bottom:auto}.coach{padding:8px 12px 10px;top:46px}.coach p{font-size:15px}.tutorial .toasts{top:176px}.panel h2{font-size:26px}}@media (max-height:480px){.top{top:6px;left:6px;right:6px}.res,.clock,.ping{height:32px;padding:0 10px}.icon{width:32px;height:32px;font-size:14px}.goal{padding:2px 10px 3px;font-size:12px}.banner{padding:3px 14px;font-size:14px;top:44px}.toasts{top:78px}.toast{padding:5px 13px;font-size:13.5px}.hud.touch .minimap{width:84px;height:84px;top:90px}.hud.touch .stick{width:112px;height:112px;bottom:12px}.hud.touch .do{width:80px;height:80px;font-size:34px;bottom:18px}.hud.touch .dock{gap:4px;max-width:calc(100vw - 250px);bottom:5px;left:140px;right:110px}.hud.touch .action{width:88px;height:88px}.hud.touch .action.glyph{height:78px}.hud.touch .action .name{font-size:11.5px}.hud.touch .art img{width:44px;height:44px}.hud.touch .art{font-size:24px}.hud.touch .tabs button{padding:4px 12px;font-size:13px}.hud.touch .selection{gap:6px;width:220px;padding:8px 10px;top:46px}.hud.touch .emote-toggle{width:40px;height:40px;bottom:106px}.hud.touch .emotes{bottom:152px}.coach{border-radius:16px;gap:2px;width:min(440px,100vw - 250px);padding:6px 12px 8px;top:44px}.coach p{font-size:14px;line-height:1.25}.coach .step{font-size:12px}.coach .dots i{width:12px;height:6px}.tutorial .toasts{top:132px}.panel{padding:16px 20px}}@media (max-width:820px){.columns{grid-template-columns:1fr;gap:4px}.players,.clock span,.ping{display:none}.moon{width:80px;height:80px}}.action.nudge{outline:4px solid var(--gold);outline-offset:2px;z-index:1;animation:.9s infinite thump}.goal{transition:opacity .5s}.goal.quiet{opacity:0;pointer-events:none}.hud:not(.touch) .action{width:86px;height:94px}.hud:not(.touch) .action.glyph{height:82px}.hud:not(.touch) .bar:has(.power) .action{width:74px}.hud:not(.touch) .art img{width:52px;height:52px}.hud:not(.touch) .bar{padding:10px 9px 11px}.hud.touch .stick{left:max(14px, env(safe-area-inset-left));opacity:.8;width:104px;height:104px;bottom:14px}.hud.touch .stick i{width:46px;height:46px}.hud.touch .do{right:max(14px, env(safe-area-inset-right));width:72px;height:72px;font-size:30px;bottom:18px}.hud.touch .dock{gap:4px;max-width:calc(100vw - 226px);bottom:6px;left:128px;right:98px}.hud.touch .bar{border-radius:16px;gap:6px;padding:6px 6px 8px}.hud.touch .row{gap:6px}.hud.touch .bar:has(.row){column-gap:14px}.hud.touch .action{border-radius:12px;grid-template-rows:1fr auto;width:auto;min-width:62px;height:66px;padding:3px 5px 4px}.hud.touch .bar:has(.power) .action{border-radius:12px;grid-template-rows:1fr auto;width:auto;min-width:62px;height:66px;padding:3px 5px 4px}.hud.touch .action.glyph{height:60px}.hud.touch .action .name{display:none}.hud.touch .action .detail{justify-content:center;gap:3px;min-height:15px;font-size:11.5px}.hud.touch .art{font-size:25px}.hud.touch .art img{width:46px;height:46px;margin:-5px 0}.hud.touch .cost .dot{width:10px;height:10px}.hud.touch .tabs{gap:4px}.hud.touch .tabs button{padding:4px 11px;font-size:12.5px}.hud.touch .power{position:relative}.hud.touch .up{z-index:2;height:21px;box-shadow:0 2px 0 var(--ink);gap:2px;padding:0 5px;font-size:10.5px;position:absolute;top:-9px;right:-5px}.hud.touch .up .cost{gap:2px}.hud.touch .up .dot{border-width:1px;width:8px;height:8px}.hud.touch .bar:has(.power){padding-top:13px}.hud.touch .minimap{width:76px;height:76px;box-shadow:0 3px 0 var(--ink);opacity:.9;transform-origin:0 0;border-radius:12px;transition:transform .18s,opacity .18s;top:96px;bottom:auto;left:8px}.hud.touch .minimap.big{opacity:1;z-index:20;box-shadow:0 1px 0 var(--ink);border-width:1px;border-radius:6px;transform:scale(2.8)}.hud.touch .emote-toggle{right:max(26px, env(safe-area-inset-right));width:38px;height:38px;box-shadow:0 3px 0 var(--ink);font-size:18px;bottom:100px}.hud.touch .emotes{right:max(26px, env(safe-area-inset-right));grid-template-columns:repeat(4,42px);bottom:146px}.hud.touch .emote{height:42px;font-size:21px}.hud.touch .selection{top:56px}.tutorial .hud.touch .minimap:not(.big){display:none}@media (orientation:portrait){.hud.touch .dock{max-width:calc(100vw - 8px);bottom:4px;left:4px;right:4px}.hud.touch .stick{width:104px;height:104px;bottom:122px}.hud.touch .do{width:72px;height:72px;bottom:132px}.hud.touch .emote-toggle{bottom:214px}.hud.touch .emotes{bottom:260px}}@media (max-width:520px){.hud.touch .minimap{width:72px;height:72px;top:96px;bottom:auto}.hud.touch .minimap.big{transform:scale(2.8)}.hud.touch .selection{top:100px}.hud.touch .tabs button{padding:4px 9px;font-size:12.5px}}@media (max-height:480px){.hud.touch .minimap{width:66px;height:66px;top:84px}.hud.touch .stick{width:96px;height:96px;bottom:8px}.hud.touch .do{width:66px;height:66px;font-size:28px;bottom:12px}.hud.touch .dock{gap:3px;max-width:calc(100vw - 204px);bottom:4px;left:116px;right:88px}.hud.touch .action{width:auto;min-width:58px;height:60px}.hud.touch .bar:has(.power) .action{width:auto;min-width:58px;height:60px}.hud.touch .action.glyph{height:54px}.hud.touch .art img{width:40px;height:40px}.hud.touch .art{font-size:22px}.hud.touch .tabs button{padding:3px 10px;font-size:12px}.hud.touch .emote-toggle{width:34px;height:34px;bottom:86px}.hud.touch .emotes{bottom:126px}.hud.touch .selection{top:44px}}.recentre{background:var(--gold);width:28px;height:28px;color:var(--ink);border:2px solid var(--ink);font:700 17px/1 var(--body);box-shadow:0 2px 0 var(--ink);border-radius:9px;place-items:center;padding:0;display:grid;position:absolute;bottom:204px;left:168px}.hud.touch .recentre{left:auto;right:max(74px, calc(env(safe-area-inset-right) + 48px));width:38px;height:38px;box-shadow:0 3px 0 var(--ink);border-width:3px;border-radius:50%;font-size:21px;bottom:100px}@media (orientation:portrait){.hud.touch .recentre{bottom:214px}}@media (max-height:480px){.hud.touch .recentre{width:34px;height:34px;bottom:86px;right:max(68px, calc(env(safe-area-inset-right) + 44px))}}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
