@font-face{font-family:Fredoka;src:url(/assets/fonts/Fredoka-Variable.woff2)format("woff2");font-weight:300 700;font-display:swap}:root{--ink:#2b2150;--ink-soft:#4a3f7a;--paper:#fffaf0;--yellow:#ffd23d;--yellow-dark:#e0a800;--pink:#ff5f8f;--pink-dark:#d23a6c;--blue:#3d8bff;--blue-dark:#2563c9;--mint:#3ddc84;--mint-dark:#1fae5e;--sky:#9edbff;--radius:22px;--font:"Fredoka", "Baloo 2", "Arial Rounded MT Bold", "Nunito", system-ui, sans-serif;--shadow:0 6px 0 #2b215059}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}html,body{height:100%;font-family:var(--font);color:var(--ink);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;touch-action:none;background:#d6f1ff;margin:0;overflow:hidden}body{width:100%;position:fixed;top:0;bottom:0;left:0;right:0}input,textarea,select{-webkit-user-select:text;user-select:text;font-size:max(16px,1em)}button,[role=button]{touch-action:manipulation}.gi{object-fit:contain;vertical-align:-.25em;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none;flex:none;width:1.2em;height:1.2em;display:inline-block}#app{position:fixed;top:0;bottom:0;left:0;right:0}#game-canvas{touch-action:none;outline:none;width:100%;height:100%;display:block;position:absolute;top:0;bottom:0;left:0;right:0}#ui{pointer-events:none;z-index:2;position:fixed;top:0;bottom:0;left:0;right:0}#ui .screen{pointer-events:auto;flex-direction:column;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}#ui .screen.passthrough{pointer-events:none}.hidden{display:none!important}.logo{letter-spacing:.02em;color:var(--yellow);-webkit-text-stroke:clamp(4px, 1.1vw, 10px) var(--ink);paint-order:stroke fill;text-shadow:0 clamp(6px, 1.4vw, 14px) 0 var(--ink);margin:0 0 8px;font-size:clamp(64px,17vw,168px);font-weight:700;line-height:.9;display:flex;transform:rotate(-4deg)}.logo span{animation:2.4s ease-in-out infinite logo-bounce;display:inline-block}.logo span:nth-child(2){color:var(--pink);animation-delay:.12s}.logo span:nth-child(3){color:#56c8ff;animation-delay:.24s}.logo span:nth-child(4){color:var(--mint);animation-delay:.36s}.logo span:nth-child(5){animation-delay:.48s}@keyframes logo-bounce{0%,60%,to{transform:translateY(0)scale(1)}70%{transform:translateY(-12%)scale(.95,1.08)}80%{transform:translateY(0)scale(1.08,.92)}}.tagline{color:var(--ink);background:#ffffffbf;border-radius:999px;margin-bottom:18px;padding:6px 16px;font-size:clamp(16px,2.6vw,22px);font-weight:600}.btn{font-family:var(--font);letter-spacing:.04em;color:var(--ink);border:4px solid var(--ink);border-radius:var(--radius);box-shadow:0 6px 0 var(--ink);cursor:pointer;touch-action:manipulation;background:#fff;min-width:170px;min-height:56px;padding:12px 26px;font-size:clamp(18px,3vw,24px);font-weight:700;transition:transform 80ms,box-shadow 80ms,filter .1s}@media (hover:hover){.btn:hover{box-shadow:0 8px 0 var(--ink);filter:brightness(1.05);transform:translateY(-2px)scale(1.03)}}.btn:active{box-shadow:0 1px 0 var(--ink);transform:translateY(5px)}.btn:focus-visible{outline:4px dashed var(--pink);outline-offset:4px}.btn.primary{background:var(--yellow);box-shadow:0 9px 0 var(--ink);border-width:5px;border-radius:30px;padding:14px 56px;font-size:clamp(34px,7vw,56px);animation:1.8s ease-in-out infinite primary-pulse}.btn.primary:active{box-shadow:0 2px 0 var(--ink)}@keyframes primary-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.btn.pink{background:var(--pink);color:#fff}.btn.blue{background:#56c8ff}.btn.mint{background:var(--mint)}.btn.small{min-width:0;min-height:44px;box-shadow:0 4px 0 var(--ink);border-width:3px;padding:8px 14px;font-size:16px}.btn[disabled]{opacity:.5;pointer-events:none}.icon-btn{justify-content:center;align-items:center;width:52px;min-width:52px;height:52px;padding:0;font-size:24px;display:inline-flex}.row{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.stack{flex-direction:column;align-items:center;gap:14px;display:flex}.menu-screen{--menu-gap:16px;--tool:64px;padding:calc(var(--tool) + 30px + env(safe-area-inset-top)) 16px calc(96px + env(safe-area-inset-bottom));background:linear-gradient(#56acff9e 0%,#8cccff52 26%,#fff0 50%),radial-gradient(#fff0 55%,#2b21501f 100%)}.menu-center{flex-direction:column;align-items:center;max-width:100%;display:flex}.menu-logo{align-items:center;gap:clamp(0px,1vw,12px);display:flex}.menu-screen .logo{margin:0;transform:rotate(-2deg)}.logo-burst{flex:none;width:clamp(26px,4.2vw,58px);animation:2.4s ease-in-out infinite burst-pop;display:block}.logo-burst svg{width:100%;height:auto;display:block}.logo-burst.right{animation-name:burst-pop-r;transform:scaleX(-1)}@keyframes burst-pop{0%,60%,to{opacity:1;transform:scale(1)}75%{transform:scale(1.18)}}@keyframes burst-pop-r{0%,60%,to{opacity:1;transform:scaleX(-1)}75%{transform:scaleX(-1.18)scaleY(1.18)}}.menu-screen .tagline{background:#fff;margin:clamp(-18px,-1.2vw,-6px) 0 clamp(16px,2.6vh,28px);padding:6px 26px;font-weight:700;position:relative;box-shadow:0 4px #2b21502e,0 8px 24px #2b21501f}.btn.play-btn{background:linear-gradient(180deg, #ffe46b 0%, var(--yellow) 55%, #ffc21f 100%);border-radius:999px;align-items:center;gap:clamp(12px,1.8vw,22px);padding:10px clamp(36px,5vw,64px) 12px clamp(28px,3.6vw,44px);display:inline-flex;position:relative;overflow:hidden}.btn.play-btn:before{content:"";pointer-events:none;background:#ffffff80;border-radius:999px;height:18%;position:absolute;top:5px;left:9%;right:9%}.play-btn .play-icon,.play-text{position:relative}.play-btn .play-icon{flex:none;width:clamp(46px,6vw,70px);height:auto}.play-text{flex-direction:column;align-items:flex-start;line-height:1;display:flex}.play-label{letter-spacing:.03em;font-size:clamp(42px,6.4vw,70px)}.play-sub{letter-spacing:.1em;margin-top:2px;font-size:clamp(13px,1.6vw,19px)}.menu-profile{top:calc(var(--menu-gap) + env(safe-area-inset-top));left:calc(var(--menu-gap) + env(safe-area-inset-left));max-width:calc(100% - 2 * var(--menu-gap) - 3 * var(--tool) - 2 * 12px - 14px);flex-direction:column;align-items:flex-start;gap:8px;display:flex;position:absolute}.profile-card{background:var(--paper);border:4px solid var(--ink);width:380px;max-width:100%;box-shadow:var(--shadow);border-radius:999px;align-items:center;gap:12px;padding:6px 22px 6px 6px;display:flex}.profile-avatar{cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;padding:0;transition:transform .1s}@media (hover:hover){.profile-avatar:hover{transform:scale(1.06)rotate(-4deg)}}.profile-avatar:active{transform:scale(.94)}.profile-avatar:focus-visible{outline:4px dashed var(--pink);outline-offset:4px}.profile-avatar .bumpling-avatar{--size:60px;box-shadow:0 0 0 3px var(--yellow), 0 0 0 6px var(--ink);border-radius:50%;margin:6px}.profile-main{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.profile-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.profile-card .name-btn{text-overflow:ellipsis;white-space:nowrap;text-align:left;border-bottom:none;min-width:0;font-size:clamp(18px,2.2vw,22px);font-weight:700;overflow:hidden}.profile-card .locker-level{flex:none;padding:2px 12px;font-size:15px}.profile-xp{background:var(--ink);border:3px solid var(--ink);border-radius:999px;height:16px;overflow:hidden}.profile-xp-fill{background:linear-gradient(180deg, #ffe680, var(--yellow));border-radius:999px;min-width:10px;height:100%;transition:width .6s cubic-bezier(.2,1.4,.4,1)}.name-btn{font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:none;padding:0 2px}.name-btn:after{content:"";vertical-align:-.08em;background:url(/assets/generated/icons/pencil.webp) 50%/contain no-repeat;width:.9em;height:.9em;margin-left:.3em;display:inline-block}.edit-btn .ui-icon{width:60%;height:60%}.profile-card.name-edit{gap:8px;width:auto;padding:6px 8px 6px 12px}.edit-btn{width:44px;height:44px;min-height:44px}.name-input{font:inherit;color:var(--ink);border:3px solid var(--ink);background:#fffbe8;border-radius:12px;outline:none;width:min(12ch,40vw);min-width:0;padding:4px 10px;font-size:20px;font-weight:700}.name-input:focus{box-shadow:0 0 0 3px var(--yellow);background:#fff}.name-error:empty{display:none}.name-error{border:3px solid var(--ink);background:#fff;border-radius:999px;margin:0;padding:2px 14px}.menu-tools{top:calc(var(--menu-gap) + env(safe-area-inset-top));right:calc(var(--menu-gap) + env(safe-area-inset-right));gap:12px;display:flex;position:absolute}.btn.tool-btn{width:var(--tool);height:var(--tool);border-radius:20px;justify-content:center;align-items:center;min-width:0;min-height:0;padding:0;display:inline-flex;position:relative}.tool-btn .ui-icon{width:58%;height:58%}.btn.menu-room{bottom:calc(var(--menu-gap) + 4px + env(safe-area-inset-bottom));border-radius:999px;align-items:center;gap:12px;padding:10px 30px 10px 14px;font-size:clamp(18px,2.2vw,24px);display:inline-flex;position:absolute}.menu-room.create{left:calc(var(--menu-gap) + env(safe-area-inset-left))}.menu-room.join{right:calc(var(--menu-gap) + env(safe-area-inset-right))}.menu-room .ui-icon{flex:none;width:38px;height:38px}.menu-room.mint .ui-icon{width:42px}.controls-hint{bottom:calc(26px + env(safe-area-inset-bottom));white-space:nowrap;opacity:.9;background:#ffffffb8;border:2px solid #2b21508c;border-radius:999px;gap:18px;padding:6px 16px;font-size:14px;font-weight:600;display:flex;position:absolute;left:50%;transform:translate(-50%)}.key{border:2px solid var(--ink);text-align:center;background:#fff;border-bottom-width:4px;border-radius:8px;min-width:28px;margin-right:4px;padding:1px 7px;font-size:13px;font-weight:700;display:inline-block}.panel{background:var(--paper);border:5px solid var(--ink);box-shadow:0 10px 0 var(--ink);border-radius:30px;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:min(560px,100%);padding:26px 28px;animation:.25s cubic-bezier(.2,1.6,.4,1) pop-in;display:flex}@keyframes pop-in{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.panel h2{margin:0;font-size:clamp(28px,5vw,40px);font-weight:700}.backdrop{background:#2b215073}#ui .screen.backdrop{z-index:8}.code-input{gap:8px;display:flex}.code-input input{width:clamp(44px,12vw,64px);height:clamp(56px,14vw,76px);font-family:var(--font);text-align:center;text-transform:uppercase;border:4px solid var(--ink);color:var(--ink);box-shadow:0 4px 0 var(--ink);background:#fff;border-radius:16px;outline:none;font-size:clamp(28px,7vw,40px);font-weight:700}.code-input input:focus{background:#fff6c9}.error-text{color:var(--pink-dark);min-height:1.2em;font-weight:700}.room-code{letter-spacing:.18em;border:4px dashed var(--ink);background:#fff;border-radius:20px;padding:4px 18px 4px 28px;font-size:clamp(40px,10vw,64px);font-weight:700}.player-list{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.player-pill{border:3px solid var(--ink);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:4px 14px 4px 6px;font-weight:600;display:flex}.player-pill .dot{border:3px solid var(--ink);border-radius:50%;width:24px;height:24px}.player-pill.me{background:#fff6c9}.player-pill .tag{background:var(--ink);color:#fff;border-radius:999px;padding:1px 8px;font-size:12px}.lobby-bar{pointer-events:auto;flex-flow:wrap;justify-content:center;align-items:center;gap:18px;max-width:min(980px,100%);padding:14px 20px}.lobby-code{flex-direction:column;align-items:center;gap:4px;display:flex}.lobby-code .room-code{font-size:clamp(32px,6vw,46px)}.lobby-label{letter-spacing:.1em;font-size:14px;font-weight:700}.lobby-hint{text-align:center;opacity:.8;font-size:14px;font-weight:600}.lobby-players{flex-direction:column;flex:1;gap:8px;min-width:200px;display:flex}.lobby-actions{gap:8px}.btn.primary.lobby-start{padding:8px 34px;font-size:clamp(28px,5vw,40px)}.lobby-actions .tagline{margin:0}.create-panel{overscroll-behavior:contain;touch-action:pan-y;gap:14px;max-width:min(540px,100%);max-height:100%;padding:22px 24px 26px;position:relative;overflow-y:auto}.round-back{border:4px solid var(--ink);width:54px;height:54px;box-shadow:0 4px 0 var(--ink);cursor:pointer;touch-action:manipulation;background:#fff;border-radius:50%;place-items:center;padding:0;transition:transform .1s;display:grid;position:absolute;top:14px;left:14px}.round-back .ui-icon{width:28px;height:28px}.round-back:active{box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.round-back:focus-visible{outline:4px dashed var(--pink);outline-offset:3px}@media (hover:hover){.round-back:hover{background:#fff6c9}}.create-panel .spark-title{white-space:nowrap;padding:0 44px;font-size:clamp(26px,6vw,44px)!important}.create-body{grid-template-columns:1fr;gap:12px;width:100%;display:grid}.create-card{background:#f7efe2;border:2px solid #ebe0cd;border-radius:20px;flex-direction:column;gap:12px;min-width:0;padding:12px 16px 16px;transition:opacity .2s,filter .2s;display:flex}.create-head{text-align:left;align-items:center;gap:14px;display:flex}.create-ico{flex:none;place-items:center;width:46px;height:46px;display:grid}.create-ico .gi,.create-ico .ui-icon{vertical-align:0;width:46px;height:46px}.create-title{font-size:21px;font-weight:700;line-height:1.1}.create-sub{color:#8a83a3;font-size:15px;font-weight:600;line-height:1.2}.minute-row{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.minute-btn{font-family:var(--font);color:var(--ink);border:4px solid var(--ink);box-shadow:0 4px 0 var(--ink);cursor:pointer;touch-action:manipulation;background:#fff;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;min-height:64px;padding:4px 0 6px;line-height:1;transition:transform .12s cubic-bezier(.2,1.8,.4,1),background .12s;display:flex}.minute-num{font-size:26px;font-weight:700}.minute-unit{letter-spacing:.04em;margin-top:2px;font-size:13px;font-weight:700}.minute-btn.on{background:var(--yellow);transform:translateY(-2px)}.minute-btn:active{box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.minute-btn:focus-visible{outline:4px dashed var(--pink);outline-offset:3px}@media (hover:hover){.minute-btn:not(.on):hover{background:#fff6c9}}.seg.bots-seg{width:100%;box-shadow:0 4px 0 var(--ink);border-width:4px;border-radius:20px}.bots-seg button{white-space:nowrap;flex:1;justify-content:center;align-items:center;gap:10px;min-height:60px;padding:6px 10px;font-size:clamp(18px,3.4vw,22px);display:flex}.bots-seg button+button{border-left-width:4px}.bots-seg .toggle-ico{vertical-align:0;width:40px;height:40px}.no-bot-ico{flex:none;display:inline-grid;position:relative}.no-bot-ico .gi{filter:grayscale();opacity:.55}.no-bot-ico:after{content:"";background:var(--pink);border-radius:999px;width:48px;height:5px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}.create-count.off{opacity:.4;filter:grayscale()}.bot-picker{--thumb:40px;background:#fffdf8;border:2px solid #ebe0cd;border-radius:18px;flex-direction:column;gap:8px;padding:12px 18px 8px;display:flex}.bot-stops{justify-content:space-between;padding:0 3px;display:flex}.bot-stop,.bot-tick{width:var(--thumb);cursor:pointer;flex:none;place-items:center;display:grid}.create-count.off .bot-stop,.create-count.off .bot-tick{cursor:default}.bot-face{opacity:.25;filter:grayscale();width:40px;height:40px;transition:transform .2s cubic-bezier(.2,1.8,.4,1),opacity .15s;transform:scale(.8)}.bot-stop.on .bot-face{opacity:1;filter:none;transform:scale(1)}.bot-tick{font-family:var(--font);color:#8a83a3;touch-action:manipulation;background:0 0;border:none;min-height:28px;padding:0;font-size:18px;font-weight:600}.bot-tick.on{color:var(--ink);font-size:22px;font-weight:700}.bot-picker input[type=range]{background:linear-gradient(90deg, var(--yellow) calc(var(--thumb) / 2 + (100% - var(--thumb)) * var(--fill,0)), #fff 0);height:24px}.bot-picker input[type=range]::-webkit-slider-thumb{width:var(--thumb);height:var(--thumb)}.bot-picker input[type=range]::-moz-range-thumb{width:32px;height:32px}.bot-picker input[type=range]:disabled::-webkit-slider-thumb{cursor:default}.create-panel .error-text:empty{display:none}.btn.primary.create-go{flex:none;justify-content:center;align-items:center;gap:18px;width:94%;margin-top:4px;padding:10px 24px;font-size:clamp(32px,6.5vw,48px);display:flex}.create-go-ico{vertical-align:0;width:1.3em;height:1.3em}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:420px){.create-panel{gap:12px;padding:16px 14px 20px}.round-back{border-width:3px;width:46px;height:46px;top:10px;left:10px}.create-panel .spark-title{padding:0 40px}.create-panel .spark-title .spark{display:none}.bots-seg button{gap:6px;padding:6px;font-size:17px}.bots-seg .toggle-ico{width:32px;height:32px}.no-bot-ico:after{width:38px;height:4px}.create-card{padding:10px 12px 14px}.create-ico,.create-ico .gi,.create-ico .ui-icon{width:38px;height:38px}.create-title{font-size:18px}.create-sub{font-size:13px}.minute-row{gap:7px}.minute-num{font-size:22px}.bot-picker{--thumb:34px;padding:10px 12px 6px}.bot-face{width:34px;height:34px}}@media (max-height:800px) and (min-height:521px){.create-panel{gap:10px;padding-top:16px;padding-bottom:20px}.create-sub{display:none}.create-card{gap:10px;padding:10px 14px 12px}.create-ico,.create-ico .gi,.create-ico .ui-icon{width:36px;height:36px}.minute-btn{min-height:56px}.bots-seg button{min-height:52px}.bot-picker{gap:6px;padding-top:8px}}@media (max-height:520px) and (min-width:561px){.create-panel{border-radius:22px;gap:6px;max-width:min(820px,100%);padding:8px 18px 12px}.round-back{width:40px;height:40px;box-shadow:0 3px 0 var(--ink);border-width:3px;top:6px;left:8px}.round-back .ui-icon{width:22px;height:22px}.create-panel .spark-title{min-height:36px;font-size:24px!important}.create-body{grid-template-columns:1fr 1fr;grid-template-areas:"dur count""bots count";gap:8px 10px}.create-duration{grid-area:dur}.create-bots{grid-area:bots}.create-count{grid-area:count;justify-content:center}.create-sub{display:none}.create-card{border-radius:16px;gap:6px;padding:6px 10px 9px}.create-head{gap:10px}.create-ico,.create-ico .gi,.create-ico .ui-icon{width:26px;height:26px}.create-title{font-size:16px}.minute-row{gap:8px}.minute-btn{min-height:44px;box-shadow:0 3px 0 var(--ink);border-width:3px;border-radius:13px}.minute-num{font-size:19px}.minute-unit{font-size:10px}.seg.bots-seg{box-shadow:0 3px 0 var(--ink);border-width:3px;border-radius:15px}.bots-seg button{min-height:42px;font-size:17px}.bots-seg button+button{border-left-width:3px}.bots-seg .toggle-ico{width:28px;height:28px}.no-bot-ico:after{width:34px;height:4px}.bot-picker{--thumb:34px;gap:6px;padding:8px 14px 4px}.bot-face{width:34px;height:34px}.btn.primary.create-go{min-height:0;box-shadow:0 5px 0 var(--ink);border-width:4px;margin:2px 0 4px;padding:2px 24px;font-size:26px}}.spark-title{letter-spacing:.02em;align-items:center;gap:18px;display:flex}.spark-title .spark{flex:none;width:22px;height:26px;position:relative}.spark-title .spark:before,.spark-title .spark:after{content:"";background:var(--yellow);border-radius:999px;height:7px;position:absolute}.spark-title .spark:before{width:18px;top:3px;left:2px;transform:rotate(35deg)}.spark-title .spark:after{width:16px;bottom:2px;left:0}.spark-title .spark.right{transform:scaleX(-1)}#settings .panel,#pause .panel{overscroll-behavior:contain;touch-action:pan-y;max-height:100%;overflow-y:auto}#settings .panel{gap:16px;max-width:min(640px,100%);padding:22px 24px 26px}.spark-title{font-size:clamp(30px,6vw,48px)!important}.set-body{grid-template-columns:1fr 1fr;grid-template-areas:"vol vol""gfx touch""motion reports""keys keys";gap:12px;width:100%;display:grid}.set-volume{grid-area:vol}.set-graphics{grid-area:gfx}.set-touch{grid-area:touch}.set-motion{grid-area:motion}.set-reports{grid-area:reports}.set-controls{grid-area:keys}.set-card{background:#f7efe2;border:2px solid #ebe0cd;border-radius:20px;flex-direction:column;gap:10px;min-width:0;padding:12px 16px;display:flex}.set-volume{gap:4px;padding:10px 16px}.set-head{white-space:nowrap;align-items:center;gap:10px;font-size:20px;font-weight:700;display:flex}.set-ico{flex:none;width:32px;height:32px}.setting-row{grid-template-columns:32px 86px 1fr 40px;align-items:center;gap:12px;width:100%;min-height:46px;font-size:20px;font-weight:700;display:grid}.setting-row .set-value{text-align:right;font-variant-numeric:tabular-nums}.setting-row input[type=range]{height:20px}.setting-row input[type=range]::-webkit-slider-thumb{width:36px;height:36px}.setting-row input[type=range]::-moz-range-thumb{width:28px;height:28px}.set-card .seg{width:100%;box-shadow:0 3px 0 var(--ink);border-radius:18px}.set-card .seg button{flex:1;min-height:46px;padding:6px 8px;font-size:17px}.set-toggle{flex-direction:row;justify-content:space-between;align-items:center;gap:12px}.switch{cursor:pointer;background:#b4afc2;border:3px solid #9b96aa;border-radius:999px;flex:none;width:64px;height:38px;padding:0;transition:background .15s,border-color .15s;position:relative}.switch .knob{background:#fff;border-radius:50%;width:28px;height:28px;transition:transform .18s cubic-bezier(.3,1.6,.5,1);position:absolute;top:2px;left:2px;box-shadow:0 2px #2b215040}.switch.on{background:var(--yellow);border-color:var(--yellow-dark)}.switch.on .knob{transform:translate(26px)}.switch:focus-visible{outline:4px dashed var(--pink);outline-offset:3px}.key-row{justify-content:space-between;display:flex}.key-group{letter-spacing:.04em;color:var(--ink-soft);flex-direction:column;flex:1;align-items:center;gap:6px;font-size:15px;font-weight:600;display:flex}.key-group+.key-group{border-left:2px solid #e3d7c2}.keycaps{gap:4px;display:flex}.keycap{border:3px solid var(--ink);min-width:34px;height:36px;color:var(--ink);background:#fff;border-radius:9px;justify-content:center;align-items:center;padding:0 8px;font-size:17px;font-weight:700;display:inline-flex}.touch .set-controls{display:none}.btn.big-back{border-width:5px;border-radius:28px;min-width:220px;padding:8px 40px;font-size:clamp(26px,5vw,36px)}#pause .panel{gap:16px;max-width:min(420px,100%);padding:22px 28px 30px}.pause-btn{justify-content:center;align-items:center;gap:12px;width:100%;display:inline-flex}.pause-btn.resume{border-width:5px;border-radius:28px;min-height:72px;font-size:clamp(28px,5vw,36px)}.btn-ico{flex:none;width:30px;height:30px}.pause-btn.resume .btn-ico{width:36px;height:36px}@media (max-width:560px){#settings .panel{gap:12px;padding:16px 14px 20px}.set-body{grid-template-columns:1fr;grid-template-areas:"vol""gfx""touch""motion""reports""keys";gap:10px}.setting-row{grid-template-columns:28px 72px 1fr 34px;gap:8px;font-size:17px}.set-ico{width:28px;height:28px}.set-head{font-size:18px}.key-row{flex-wrap:wrap;row-gap:10px}.key-group{flex:1 0 30%}.key-group:nth-child(4){border-left:none}}@media (max-height:800px) and (min-height:521px) and (min-width:561px){#settings .panel{gap:10px;padding:14px 24px 18px}.spark-title{font-size:clamp(30px,5vw,40px)!important}.set-body{gap:8px}.set-card{gap:8px;padding:8px 14px}.set-volume{gap:0;padding:6px 16px}.setting-row{min-height:40px;font-size:18px}.set-head{font-size:18px}.set-card .seg button{min-height:42px}.keycap{min-width:30px;height:32px;font-size:15px}.key-group{gap:4px;font-size:13px}.btn.big-back{padding:4px 40px;font-size:28px}}@media (max-height:520px) and (min-width:561px){#ui #settings,#ui #pause{padding:8px}#settings .panel{border-radius:22px;gap:8px;max-width:min(860px,100%);padding:8px 20px 12px}.spark-title{gap:12px;font-size:28px!important}.spark-title .spark{transform:scale(.75)}.spark-title .spark.right{transform:scale(-.75,.75)}.set-body{grid-template-columns:1.25fr 1fr 1fr;grid-template-areas:"vol gfx gfx""vol touch touch""vol motion reports""keys keys keys";gap:8px}.set-card{border-radius:16px;gap:6px;padding:6px 12px}.set-volume{justify-content:center}.setting-row{grid-template-columns:26px 66px 1fr 32px;gap:8px;min-height:40px;font-size:16px}.set-ico{width:26px;height:26px}.set-head{gap:8px;font-size:16px}.set-graphics,.set-touch{flex-direction:row;align-items:center}.set-graphics .set-head,.set-touch .set-head{flex:none;width:112px}.set-card .seg button{min-height:40px;font-size:15px}.set-toggle .set-head{white-space:normal;font-size:14px}.switch{width:54px;height:32px}.switch .knob{width:22px;height:22px}.switch.on .knob{transform:translate(22px)}.set-controls{display:none}.btn.big-back{border-width:4px;min-height:44px;padding:2px 36px;font-size:24px}#pause .panel{gap:10px;padding:10px 24px 16px}.pause-btn{min-height:48px;padding-top:4px;padding-bottom:4px}.pause-btn.resume{min-height:56px;font-size:26px}}input[type=range]{-webkit-appearance:none;appearance:none;border:3px solid var(--ink);background:#fff;border-radius:999px;width:100%;height:16px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--yellow);border:4px solid var(--ink);cursor:pointer;border-radius:50%;width:30px;height:30px}input[type=range]::-moz-range-thumb{background:var(--yellow);border:4px solid var(--ink);cursor:pointer;border-radius:50%;width:24px;height:24px}.seg{border:3px solid var(--ink);border-radius:16px;display:flex;overflow:hidden}.seg button{font-family:var(--font);color:var(--ink);cursor:pointer;background:#fff;border:none;padding:8px 16px;font-size:16px;font-weight:700}.seg button+button{border-left:3px solid var(--ink)}.seg button.on{background:var(--yellow)}.hud{pointer-events:none}.hud-top{top:calc(10px + env(safe-area-inset-top));flex-direction:column;align-items:center;gap:clamp(6px,1.4vh,12px);display:flex;position:absolute;left:0;right:0}.hud-bottom{bottom:calc(16px + env(safe-area-inset-bottom));flex-direction:column-reverse;align-items:center;gap:8px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.hud-callout{align-items:center;gap:8px;display:flex}@media (max-width:1000px){body:not(.touch) .hud-bottom{bottom:80px}}.hud.announcing .event-chip{display:none}.timer{border:5px solid var(--ink);box-shadow:0 6px 0 var(--ink);text-align:center;font-variant-numeric:tabular-nums;background:#fff;border-radius:24px;min-width:132px;padding:0 22px;font-size:clamp(30px,min(6vw,10vh),52px);font-weight:700}.timer.urgent{background:var(--pink);color:#fff;animation:.5s ease-in-out infinite alternate urgent}@keyframes urgent{to{transform:scale(1.08)}}.hud-left{z-index:3;top:calc(12px + env(safe-area-inset-top));left:calc(12px + env(safe-area-inset-left));flex-direction:column;align-items:flex-start;gap:8px;display:flex;position:absolute}.score-card{pointer-events:auto;cursor:pointer;-webkit-tap-highlight-color:transparent}.score-card:active{transform:translateY(2px)}.board-caret{width:16px;height:16px;margin-left:-4px;transition:transform .2s;transform:rotate(90deg)}.hud.board-open .board-caret{transform:rotate(-90deg)}.lives-row{border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);background:#fff;border-radius:999px;align-items:center;gap:4px;width:max-content;padding:2px 10px;display:flex}.lives-row .life{font-size:24px;transition:transform .2s,filter .2s,opacity .2s;display:flex}.lives-row .life .gi{vertical-align:0;width:1.25em;height:1.25em}.lives-row .life.lost{filter:grayscale()brightness(1.25);opacity:.35;transform:scale(.8)}.lives-row .life.gained{animation:.6s ease-out life-gain}.lives-row.last .life:not(.lost){animation:.7s ease-in-out infinite life-beat}.lives-row.ouch{animation:.4s ease-out lives-ouch}@keyframes lives-ouch{0%{background:#ffd1e3;transform:translate(0)}25%{transform:translate(-6px)}50%{transform:translate(6px)}to{background:#fff;transform:none}}@keyframes life-beat{50%{transform:scale(1.22)}}@keyframes life-gain{0%{transform:scale(.2)}60%{transform:scale(1.5)}to{transform:scale(1)}}.score-card{transform-origin:0;border:5px solid var(--ink);box-shadow:0 6px 0 var(--ink);background:#fff;border-radius:24px;align-items:center;gap:10px;padding:4px 16px 4px 8px;font-weight:700;display:flex}.score-card .star{vertical-align:0;filter:drop-shadow(0 2px #2b215059);width:1.15em;height:1.15em;font-size:clamp(24px,min(5vw,8vh),40px)}.score-card .num{font-variant-numeric:tabular-nums;min-width:1.2em;font-size:clamp(26px,min(5.5vw,9vh),44px);line-height:1}.score-card .rank{background:var(--ink);color:#fff;border-radius:12px;padding:2px 10px;font-size:18px}.score-card.pop{animation:.4s cubic-bezier(.2,2,.4,1) score-pop}@keyframes score-pop{0%{transform:scale(1)}40%{transform:scale(1.25)rotate(-3deg)}to{transform:scale(1)}}.board{flex-direction:column;align-items:flex-end;gap:5px;display:flex;position:absolute;top:78px;right:12px}.board-row{border:3px solid var(--ink);background:#ffffffe0;border-radius:999px;align-items:center;gap:6px;padding:1px 10px 1px 4px;font-size:15px;font-weight:700;transition:transform .3s;display:flex}.board-row.me{background:#fff6c9}.board-row .dot{border:2px solid var(--ink);border-radius:50%;width:18px;height:18px}.board-row .pos{text-align:center;opacity:.6;min-width:1.4ch;font-size:12px}.board-row.out{opacity:.55}.board-row .lives,.board-row .stars{font-variant-numeric:tabular-nums;align-items:center;gap:1px;font-size:13px;display:inline-flex}.board-row .lives{color:var(--pink-dark)}.board-row .out-tag{background:var(--ink);color:#fff;border-radius:999px;padding:0 6px;font-size:11px}.hud:not(.board-open) .board-row.extra{display:none}.hud.board-open .board{z-index:6;pointer-events:auto;cursor:pointer;display:flex!important}.board-row .name{text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}.event-chip{border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);white-space:nowrap;background:#fff;border-radius:999px;align-items:center;gap:6px;padding:2px 12px 3px 4px;font-size:14px;font-weight:700;display:flex;position:relative;overflow:hidden}.event-chip .icon{justify-content:center;align-items:center;width:26px;height:26px;font-size:18px;display:flex}.event-chip .icon img{width:26px;height:26px}.event-chip .bar{background:var(--event-color,var(--pink));height:4px;position:absolute;bottom:0;left:0}.banner{border:4px solid var(--ink);border-bottom-width:7px;border-bottom-color:var(--event-color,var(--ink));box-shadow:0 4px 0 var(--ink);pointer-events:none;background:#fff;border-radius:999px;align-items:center;gap:6px;padding:2px 16px 2px 4px;animation:.45s cubic-bezier(.2,2,.4,1) banner-in;display:flex}.banner .icon{justify-content:center;align-items:center;width:clamp(30px,6.5vh,46px);height:clamp(30px,6.5vh,46px);font-size:clamp(22px,5vh,34px);line-height:1;animation:.6s cubic-bezier(.2,2,.4,1) banner-icon;display:flex}.banner .icon img{width:100%;height:100%}.banner .title{color:#fff;-webkit-text-stroke:4px var(--ink);paint-order:stroke fill;text-shadow:0 3px 0 var(--ink);white-space:nowrap;font-size:clamp(18px,min(3.2vw,5.5vh),30px);font-weight:700;animation:.5s cubic-bezier(.2,2,.4,1) banner-title}@keyframes banner-in{0%{opacity:0;transform:translateY(24px)scale(.4)}to{opacity:1;transform:none}}@keyframes banner-icon{0%{transform:scale(0)rotate(-40deg)}to{transform:scale(1)rotate(0)}}@keyframes banner-title{0%{opacity:0;transform:scale(2)}to{opacity:1;transform:scale(1)}}.center-text{color:var(--yellow);-webkit-text-stroke:7px var(--ink);paint-order:stroke fill;text-shadow:0 8px 0 var(--ink);pointer-events:none;white-space:nowrap;font-size:clamp(52px,min(18vw,23vh),170px);font-weight:700;line-height:1;position:absolute;top:31%;left:50%;transform:translate(-50%,-50%)}.center-text.go{color:var(--mint)}.center-text.anim{animation:.9s ease-out count-pop}@keyframes count-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(2.2)}20%{opacity:1;transform:translate(-50%,-50%)scale(.9)}35%{transform:translate(-50%,-50%)scale(1.05)}80%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(.9)}}.toasts{flex-direction:column-reverse;align-items:flex-start;gap:6px;display:flex}.toast{border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);transform-origin:0;white-space:nowrap;text-overflow:ellipsis;background:#fff;border-radius:14px;max-width:min(44vw,360px);padding:2px 12px;font-size:clamp(15px,min(2.4vw,4.6vh),22px);font-weight:700;animation:2.2s ease-out forwards toast;overflow:hidden}.toast.good{background:var(--yellow)}.toast.oops{background:#ffd1e3}.toast.info{background:#d6f1ff}@keyframes toast{0%{opacity:0;transform:translate(-36px)scale(.6)}10%{opacity:1;transform:translate(4px)scale(1.08)}18%{transform:none}80%{opacity:1;transform:none}to{opacity:0;transform:translate(-24px)}}.wind-arrow{justify-content:center;align-items:center;width:clamp(36px,8vh,48px);height:clamp(36px,8vh,48px);font-size:clamp(18px,4.5vh,26px);transition:opacity .3s;display:flex}.wind-arrow .arrow .gi{width:72%;height:72%}.wind-arrow .arrow{box-sizing:border-box;border:3px solid var(--ink);width:100%;height:100%;box-shadow:0 3px 0 var(--ink);background:#fff;border-radius:50%;justify-content:center;align-items:center;display:flex}.wind-arrow.warn .arrow{background:#d6f1ff;animation:.3s ease-in-out infinite alternate wind-warn}@keyframes wind-warn{to{transform:scale(1.15)}}.cooldown{border:5px solid var(--ink);background:conic-gradient(var(--pink) calc(var(--p,1) * 360deg), #fff 0);width:86px;height:86px;box-shadow:0 5px 0 var(--ink);border-radius:50%;justify-content:center;align-items:center;font-size:18px;font-weight:700;display:flex;position:absolute;bottom:22px;right:22px}.cooldown span{border:3px solid var(--ink);background:#fff;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;display:flex}.cooldown.ready span{background:var(--yellow)}.cooldown.powered{border-color:var(--ability-color,var(--ink));animation:.9s ease-in-out infinite alternate powered}@keyframes powered{0%{box-shadow:0 5px 0 var(--ink), 0 0 0 0 var(--ability-color)}to{box-shadow:0 5px 0 var(--ink), 0 0 0 7px color-mix(in srgb, var(--ability-color) 45%, transparent)}}.ability-badge{border:3px solid var(--ink);background:radial-gradient(circle, #fff 58%, transparent 60%), conic-gradient(var(--ability-color,var(--pink)) calc(var(--left,1) * 360deg), #ece7f7 0);pointer-events:none;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:22px;display:flex;position:absolute;top:-12px;left:-12px}.touch .ability-badge{width:44px;height:44px;font-size:24px;top:-14px;left:-14px}.spectate-bar{pointer-events:auto;align-items:center;gap:8px;display:flex}.spectate-who{border:4px solid var(--ink);box-shadow:0 4px 0 var(--ink);background:#fff;border-radius:20px;flex-direction:column;align-items:center;min-width:150px;padding:2px 16px 4px;display:flex}.spectate-label{opacity:.65;font-size:12px;font-weight:700}.spectate-name{text-overflow:ellipsis;white-space:nowrap;border-bottom:4px solid var(--who,var(--ink));max-width:44vw;font-size:20px;font-weight:700;overflow:hidden}.spectate-arrow{border:4px solid var(--ink);background:var(--yellow);width:54px;height:54px;box-shadow:0 4px 0 var(--ink);color:var(--ink);cursor:pointer;border-radius:50%;padding:0;font-size:22px}.spectate-arrow:active{box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.spectate-arrow .ui-icon{width:26px;height:26px;margin:auto;display:block}.spectate-arrow.back .ui-icon{transform:scaleX(-1)}.spectate-label{align-items:center;gap:4px;display:inline-flex}.hud.spectating .cooldown,.hud.spectating .touch-btn,.hud.spectating .lives-row,.hud.spectating .touch-stick-zone:after,.hud.spectating .touch-stick-base{display:none!important}.emote-bar{pointer-events:auto;gap:6px;display:flex;position:absolute;bottom:18px;left:18px}.emote-bar button{border:3px solid var(--ink);width:48px;height:48px;box-shadow:0 4px 0 var(--ink);cursor:pointer;background:#ffffffeb;border-radius:14px;padding:0;font-size:24px;position:relative}.emote-bar button .gi{vertical-align:middle;width:76%;height:76%}.emote-toggle .gi{vertical-align:middle;width:70%;height:70%}.emote-bar button small{font-family:var(--font);background:var(--ink);color:#fff;border-radius:999px;padding:0 5px;font-size:11px;font-weight:700;position:absolute;top:-8px;right:-6px}.emote-bar button:active{box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.hud-menu-btn{top:calc(12px + env(safe-area-inset-top));right:calc(12px + env(safe-area-inset-right));pointer-events:auto;position:absolute}.emote-toggle,.touch-zone,.touch-btn,.touch-stick-base{display:none}.touch .touch-zone{pointer-events:auto;touch-action:none;width:50%;display:block;position:absolute;top:72px;bottom:0}.touch .touch-stick-zone{left:0}.touch .touch-look-zone{right:0}.touch .touch-stick-zone:after{content:"MOVE";left:calc(28px + env(safe-area-inset-left));bottom:calc(28px + env(safe-area-inset-bottom));color:#2b21508c;background:#ffffff2e;border:4px dashed #2b215059;border-radius:50%;justify-content:center;align-items:center;width:116px;height:116px;font-size:18px;font-weight:700;display:flex;position:absolute}.touch .touch-stick-zone.active:after{opacity:0}.touch .touch-stick-base{pointer-events:none;background:#ffffff59;border:4px solid #2b21508c;border-radius:50%;width:132px;height:132px;margin:-66px 0 0 -66px;display:block;position:fixed}.touch .touch-stick-knob{border:4px solid var(--ink);background:var(--yellow);width:62px;height:62px;box-shadow:0 4px 0 var(--ink);border-radius:50%;margin:-31px 0 0 -31px;position:absolute;top:50%;left:50%}.touch .touch-btn{right:calc(22px + 108px + 18px + env(safe-area-inset-right));bottom:calc(26px + env(safe-area-inset-bottom));border:5px solid var(--ink);background:var(--mint);width:88px;height:88px;box-shadow:0 6px 0 var(--ink);font-family:var(--font);color:var(--ink);pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:20px;font-weight:700;display:flex;position:absolute}.touch .cooldown{right:calc(22px + env(safe-area-inset-right));bottom:calc(22px + env(safe-area-inset-bottom));pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent;width:108px;height:108px;font-size:22px}.touch .cooldown span{width:80px;height:80px}.touch .touch-btn.pressed,.touch .cooldown.pressed{box-shadow:0 2px 0 var(--ink);transform:translateY(4px)scale(.96)}@media (orientation:portrait){.touch .touch-btn{right:calc(32px + env(safe-area-inset-right));bottom:calc(22px + 108px + 20px + env(safe-area-inset-bottom))}.touch .hud-bottom{bottom:calc(160px + env(safe-area-inset-bottom));left:calc(20px + env(safe-area-inset-left));align-items:flex-start;transform:none}}.touch .emote-toggle{top:calc(12px + env(safe-area-inset-top));right:calc(12px + 52px + 10px + env(safe-area-inset-right));border:3px solid var(--ink);width:52px;height:52px;box-shadow:0 4px 0 var(--ink);pointer-events:auto;background:#ffffffeb;border-radius:14px;justify-content:center;align-items:center;padding:0;font-size:26px;display:flex;position:absolute}.touch .emote-bar{top:calc(74px + env(safe-area-inset-top));bottom:auto;left:auto;right:calc(12px + env(safe-area-inset-right));z-index:2;display:none}.touch .emote-bar.open{display:flex}.touch .emote-bar button small,.touch .controls-hint{display:none}@media (max-height:560px){.touch .board{display:none}}.touch .hud.board-open .board{top:calc(112px + env(safe-area-inset-top));left:calc(12px + env(safe-area-inset-left));align-items:stretch;max-height:calc(100vh - 140px);right:auto;overflow-y:auto}.touch .hud.board-open .board-row{padding:3px 12px 3px 6px;font-size:17px}@media (max-height:560px){.touch .hud.board-open .board{top:calc(106px + env(safe-area-inset-top));gap:3px}.touch .hud.board-open .board-row{border-width:2px;padding:0 10px 0 4px;font-size:14px}.touch .hud.board-open .board-row .dot{width:14px;height:14px}}.net-badge{background:var(--pink);color:#fff;border:3px solid var(--ink);border-radius:999px;padding:4px 14px;font-weight:700}.respawn-note{color:#fff;-webkit-text-stroke:5px var(--ink);paint-order:stroke fill;text-shadow:0 6px 0 var(--ink);white-space:nowrap;font-size:clamp(26px,min(6vw,9vh),44px);font-weight:700}.results-screen{--cap:clamp(20px, 3.4vh, 30px);--badge:clamp(32px, 5.6vh, 48px);-webkit-backdrop-filter:blur(6px)saturate(1.15);backdrop-filter:blur(6px)saturate(1.15);background:radial-gradient(55% 45% at 50% 36%,#fffbe4d9 0%,#fffbe400 72%),linear-gradient(#9edbff4d,#ffffff1f 55%,#2b215038);gap:clamp(6px,1vh,14px);overflow:hidden auto;justify-content:safe center!important;padding-top:clamp(10px,2.6vh,28px)!important;padding-bottom:clamp(14px,3vh,28px)!important}.results-screen>*{z-index:1;flex-shrink:0;position:relative}.results-screen>.results-fx{pointer-events:none;z-index:0;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.results-fx>.podium-rays{aspect-ratio:1;pointer-events:none;z-index:0;background:radial-gradient(circle,#fff6c4f2 0%,#ffeea08c 14%,#ffeea000 36%),repeating-conic-gradient(#fff9 0deg 8deg,#fff0 8deg 20deg);border-radius:50%;width:min(1400px,190vw);animation:40s linear infinite rays-spin,.8s ease-out .4s both fade-in;position:absolute;top:clamp(150px,38vh,340px);left:50%;translate:-50% -50%;-webkit-mask-image:radial-gradient(circle,#000 10%,#0000 62%);mask-image:radial-gradient(circle,#000 10%,#0000 62%)}.results-screen.no-stars .podium-rays{display:none}@keyframes rays-spin{to{rotate:360deg}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.results-head{flex-direction:column;align-items:center;max-width:100%;display:flex}.results-head .title-crown{filter:drop-shadow(0 4px #2b215059);width:clamp(36px,6.4vh,72px);height:auto;margin-bottom:clamp(-14px,-1.6vh,-6px);animation:.5s cubic-bezier(.2,1.8,.4,1) .4s both medal-pop,1.6s ease-in-out .9s infinite crown-wiggle}.title-row{justify-content:center;align-items:center;gap:clamp(2px,1.2vw,14px);max-width:100%;display:flex}.title-burst,.again-burst{flex:none;width:clamp(22px,3.6vw,50px);animation:2.4s ease-in-out infinite burst-pop;display:block}.title-burst svg,.again-burst svg{width:100%;height:auto;display:block}.title-burst.right,.again-burst.right{animation-name:burst-pop-r;transform:scaleX(-1)}.again-burst{width:clamp(18px,2.8vw,36px);animation-delay:.6s}.results-title{letter-spacing:.01em;text-align:center;min-width:0;margin:0;padding:0 4px .12em;font-size:clamp(40px,min(10vw,9.4vh),104px);font-weight:700;line-height:1.05;animation:.7s cubic-bezier(.2,1.8,.4,1) both title-pop}.results-title.long{font-size:clamp(30px,min(6.4vw,7vh),70px)}.results-title .word{white-space:nowrap;display:inline-block}.results-title .ch{color:var(--c2);-webkit-text-stroke:.15em var(--ink);paint-order:stroke fill;text-shadow:0 .08em 0 var(--ink);animation:2.6s ease-in-out infinite logo-bounce;display:inline-block;position:relative}.results-title .ch:nth-child(odd){rotate:-4deg}.results-title .ch:nth-child(2n){rotate:3deg}.results-title .ch:after{content:attr(data-ch);color:#0000;-webkit-text-stroke:0;text-shadow:none;background:radial-gradient(ellipse 34% 14% at 36% 24%, #fffffff2, #fff0 100%), linear-gradient(180deg, var(--c1) 18%, var(--c2) 82%);-webkit-background-clip:text;background-clip:text;position:absolute;top:0;bottom:0;left:0;right:0}@keyframes title-pop{0%{opacity:0;transform:scale(.3)rotate(-8deg)}to{opacity:1;transform:scale(1)rotate(0)}}.podium-stage{justify-content:center;width:min(660px,100% - 24px);margin-top:clamp(0px,1vh,10px);display:flex}.podium{z-index:1;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr) minmax(0,1fr);align-items:end;width:100%;display:grid;position:relative}.podium .place{flex-direction:column;align-items:center;min-width:0;display:flex;position:relative}.podium .place.p1{z-index:2}.podium .place.empty{visibility:hidden}.podium .figure{z-index:3;transform-origin:bottom;width:clamp(60px,min(12vw,11vh),104px);margin-bottom:-3px;animation:.55s cubic-bezier(.2,1.6,.4,1) both bumpling-drop,1.6s ease-in-out infinite bumpling-hop;position:relative}.podium .p1 .figure{width:clamp(74px,min(15vw,13.5vh),130px);animation-delay:.55s,1.1s}.podium .p2 .figure{animation-delay:.35s,1.3s}.podium .p3 .figure{animation-delay:.35s,1.5s}.bumpling-figure{display:block}.bumpling-figure svg{width:100%;height:auto;display:block;overflow:visible}.bumpling-figure .arm{transform-box:fill-box}.bumpling-figure .arm.l{transform-origin:100% 100%}.bumpling-figure .arm.r{transform-origin:0 100%}.pose-wave-l .arm.l.up,.pose-wave-r .arm.r.up{animation:.42s ease-in-out infinite alternate arm-wave}.pose-cheer .arm.l{animation:.5s ease-in-out infinite alternate arm-pump-l}.pose-cheer .arm.r{animation:.5s ease-in-out .25s infinite alternate arm-pump-r}@keyframes arm-wave{0%{rotate:-16deg}to{rotate:16deg}}@keyframes arm-pump-l{0%{rotate:10deg}to{rotate:-10deg}}@keyframes arm-pump-r{0%{rotate:-10deg}to{rotate:10deg}}.podium .figure .fig-hat{filter:drop-shadow(0 3px #2b215059);width:46%;height:auto;position:absolute;top:-22%;left:50%;translate:-50%;rotate:-8deg}.podium .figure .fig-hat.crown{width:54%;animation:1.2s ease-in-out infinite crown-wiggle;top:-30%}.podium .figure .sparkle{filter:drop-shadow(0 2px #2b215059);width:26%;height:auto;animation:1.4s ease-in-out infinite twinkle;position:absolute}.podium .figure .sparkle.s1{top:8%;left:-26%}.podium .figure .sparkle.s2{width:22%;animation-delay:.7s;top:34%;right:-24%}@keyframes twinkle{0%,to{opacity:.7;rotate:-18deg;scale:.7}50%{opacity:1;rotate:14deg;scale:1.1}}@keyframes crown-wiggle{0%,to{rotate:-10deg}50%{rotate:10deg}}@keyframes bumpling-drop{0%{opacity:0;transform:translateY(-60px)scale(.6,1.3)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes bumpling-hop{0%,70%,to{translate:0;scale:1}80%{translate:0 -10px;scale:.94 1.08}90%{translate:0;scale:1.08 .92}}.podium .block{--side:#ffc21a;--side-l:#ffe27a;--side-d:#e9a200;--lid:#ffe46f;--lid-l:#fff3b0;--bw:5px;z-index:1;border:var(--bw) solid var(--ink);background:linear-gradient(90deg, var(--side-d) 0%, var(--side) 16%, var(--side-l) 32%, var(--side) 58%, var(--side-d) 100%);transform-origin:bottom;border-top:0;border-bottom:0;flex-direction:column;align-items:center;width:100%;animation:.6s cubic-bezier(.2,1.6,.4,1) both rise;display:flex;position:relative}.podium .block:before{content:"";left:calc(var(--bw) * -1);right:calc(var(--bw) * -1);top:calc(var(--cap) / -2);height:var(--cap);box-sizing:border-box;border:var(--bw) solid var(--ink);background:radial-gradient(ellipse 70% 80% at 45% 40%, var(--lid-l), var(--lid));border-radius:50%;position:absolute}.podium .p2 .block{width:calc(100% + 12px);margin-right:-12px}.podium .p3 .block{width:calc(100% + 12px);margin-left:-12px}.podium .p1 .block{height:clamp(146px,23vh,220px);animation-delay:.45s}.podium .p2 .block,.podium .p3 .block{height:clamp(122px,17.5vh,162px);animation-delay:.2s}.podium .r2 .block{--side:#b9b2ee;--side-l:#e2deff;--side-d:#948bd6;--lid:#d9d4fb;--lid-l:#f3f1ff}.podium .r3 .block{--side:#ff9b5e;--side-l:#ffc49a;--side-d:#e5763a;--lid:#ffb88a;--lid-l:#ffdcc2}.podium .r0 .block{--side:#e3e8f5;--side-l:#fff;--side-d:#c3cbe0;--lid:#eef1fa;--lid-l:#fff}.podium .badge{z-index:2;left:50%;top:calc(var(--cap) / 2 - var(--badge) * .3);width:var(--badge);height:var(--badge);border:4px solid var(--ink);background:radial-gradient(circle at 50% 30%, var(--lid-l), var(--side));box-shadow:inset 0 0 0 3px #ffffffd9, 0 3px 0 var(--ink);font-weight:700;font-size:calc(var(--badge) * .56);color:var(--ink);border-radius:50%;place-items:center;line-height:1;animation:.5s cubic-bezier(.2,1.8,.4,1) .8s both medal-pop;display:grid;position:absolute;translate:-50%}.podium .p1 .badge{--badge:clamp(40px, 7vh, 56px)}@keyframes medal-pop{0%{transform:scale(0)rotate(-40deg)}to{transform:scale(1)rotate(0)}}.podium .card{width:calc(100% - 22px);margin-top:calc(var(--cap) / 2 + var(--badge) * .7 + 4px);background:#fff;border-radius:16px;flex-direction:column;align-items:center;gap:2px;padding:4px 8px 5px;display:flex;box-shadow:0 4px #2b215033,inset 0 -3px #2b215012}.podium .r0 .card{margin-top:calc(var(--cap) / 2 + 10px)}.podium .who{justify-content:center;align-items:center;gap:4px;max-width:100%;font-size:clamp(13px,min(2.3vw,2.4vh),18px);font-weight:700;line-height:1.2;display:flex}.podium .who .name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.podium .tags{gap:4px;display:flex}.podium .card{position:relative}.podium .p2 .tags,.podium .p3 .tags{position:absolute;top:-9px;right:-6px;rotate:6deg}.results-screen .tag.out{background:var(--ink)}.podium .tag,.rest-row .tag{background:var(--pink);color:#fff;border-radius:999px;flex-shrink:0;padding:0 7px;font-size:11px;font-weight:700;line-height:1.4}.podium .place.me .card{background:#fff6c9}.podium .score{color:var(--ink);align-items:center;gap:4px;font-size:clamp(20px,min(4vw,4vh),30px);font-weight:700;line-height:1.1;display:flex}.podium .p1 .score{font-size:clamp(26px,min(5.4vw,5.4vh),42px)}.podium .score .star{filter:drop-shadow(0 2px #2b21504d);width:1em;height:1em}.podium .score .num{font-variant-numeric:tabular-nums}.podium-stage:after{content:"";border:5px solid var(--ink);height:22px;box-shadow:0 5px 0 var(--ink);z-index:2;background:linear-gradient(#ebe8ff,#c6bff2);border-radius:14px;animation:.3s ease-out both fade-in;position:absolute;bottom:-14px;left:-18px;right:-18px}@keyframes rise{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.results-rest{border:4px solid var(--ink);width:min(780px,100%);box-shadow:0 5px 0 var(--ink);background:#fff9;border-radius:30px;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:clamp(16px,2.6vh,26px);padding:6px;display:flex}.results-rest.cols-1{width:min(300px,100%)}.results-rest.cols-2{width:min(540px,100%)}.rest-row{background:#fff;border-radius:999px;flex:0 calc(33.3333% - 5.33333px);align-items:center;gap:6px;min-width:0;padding:2px 12px 2px 6px;font-size:clamp(13px,min(2.4vw,2.2vh),16px);font-weight:700;animation:.35s cubic-bezier(.2,1.6,.4,1) both row-in;display:flex;box-shadow:0 3px #2b21502e}.results-rest.cols-2 .rest-row{flex-basis:calc(50% - 4px)}.results-rest.cols-1 .rest-row{flex-basis:100%}.rest-row .rank{text-align:center;opacity:.8;min-width:26px}.rest-row.me{box-shadow:0 0 0 3px var(--pink), 0 3px 0 #2b21502e;background:#fff6c9}.rest-row.me .rank{opacity:1}.rest-row .name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.rest-row .pts{font-variant-numeric:tabular-nums;align-items:center;gap:3px;display:flex}.bumpling-dot{flex:none;width:24px;height:24px;display:block}.bumpling-dot svg{width:100%;height:100%;display:block}@keyframes row-in{0%{opacity:0;transform:translateY(12px)scale(.9)}to{opacity:1;transform:none}}.results-mine{background:var(--yellow);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);border-radius:999px;padding:4px 16px;font-size:clamp(16px,2.8vw,20px);font-weight:700;animation:.4s cubic-bezier(.2,1.6,.4,1) 1.2s both row-in}.results-actions{gap:10px;margin-top:clamp(4px,2.4vh,28px);padding-top:8px}.results-actions .tagline{margin:0}.again-row{justify-content:center;align-items:center;gap:clamp(6px,1.6vw,18px);max-width:100%;display:flex}.results-actions .btn.primary.again-btn{white-space:nowrap;background:linear-gradient(#ffe866 0%,#ffd23d 55%,#ffc21a 100%);border-radius:999px;justify-content:center;align-items:center;gap:.35em;padding:clamp(6px,1.2vh,12px) clamp(30px,5vw,64px);font-size:clamp(28px,min(6vw,6.4vh),52px);display:flex}.again-btn .again-icon{flex:none;width:.8em;height:.8em}.results-actions .menu-btn{letter-spacing:.08em;border-radius:999px;min-width:160px;min-height:42px;padding:4px 14px;font-size:18px}@media (max-height:820px){.results-mine{display:none}}.results-fx>.confetti{position:absolute;top:0;bottom:0;left:0;right:0}.confetti i{border-radius:3px;width:10px;height:20px;animation:linear infinite both confetti-fall;position:absolute;top:-24px;box-shadow:inset -3px -3px #00000024}.confetti i:nth-child(3n){width:16px;height:9px}@keyframes confetti-fall{0%{transform:translate(0)rotate(0)}to{transform:translate(var(--drift,0), 110vh) rotate(var(--spin,3turn))}}@media (max-width:560px){.results-rest.cols-3 .rest-row{flex-basis:calc(50% - 4px)}.results-title{font-size:clamp(36px,12vw,64px)}.results-title.long{font-size:clamp(26px,7.4vw,44px)}.title-burst{display:none}}@media (max-width:460px){.results-rest{width:min(320px,100%)!important}.results-rest .rest-row{flex-basis:100%!important}}@media (max-height:560px){.results-screen{--cap:14px;--badge:26px;gap:6px;padding-top:6px!important}.results-head .title-crown{display:none}.results-title{font-size:clamp(30px,11vh,50px)}.results-title.long{font-size:clamp(24px,8vh,38px)}.title-burst{width:22px}.podium-stage{width:min(520px,100% - 24px);margin-top:8px}.podium .figure{width:46px}.podium .p1 .figure{width:58px}.podium .p1 .badge{--badge:30px}.podium .p1 .block{height:clamp(84px,24vh,112px)}.podium .p2 .block,.podium .p3 .block{height:clamp(66px,18vh,84px)}.podium .block{--bw:4px}.podium .card{margin-top:calc(var(--cap) / 2 + var(--badge) * .7 + 3px);flex-flow:row;justify-content:center;column-gap:6px;padding:2px 8px}.podium .who{flex:0 auto;min-width:0;font-size:13px}.podium .score{flex:none}.podium .tags{display:none}.podium .score,.podium .p1 .score{font-size:18px}.podium-stage:after{border-width:4px;height:16px;bottom:-10px}.results-rest{box-shadow:0 4px 0 var(--ink);border-width:3px;margin-top:14px;padding:4px;width:min(300px,100%)!important}.results-rest .rest-row:not(.me){display:none}.results-rest .rest-row.me{flex-basis:100%}.results-rest:not(:has(.me)){display:none}.results-mine{display:none}.results-actions{flex-direction:row;align-items:center;padding-top:4px}.results-actions .btn.primary.again-btn{min-height:0;padding:6px 26px;font-size:24px}.again-burst{display:none}}@media (prefers-reduced-motion:reduce){.results-screen *,.results-screen :before,.results-screen :after{animation-iteration-count:1!important}.results-fx{display:none}}body.reduced-motion .results-screen *,body.reduced-motion .results-screen :before,body.reduced-motion .results-screen :after{animation-iteration-count:1!important}body.reduced-motion .results-fx{display:none}#loading{z-index:10;background:linear-gradient(#58b8ff,#d6f1ff 70%,#ffd9ee);flex-direction:column;justify-content:center;align-items:center;gap:18px;transition:opacity .4s;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}#loading.done{opacity:0;pointer-events:none}.progress{border:5px solid var(--ink);width:min(320px,70vw);height:26px;box-shadow:0 5px 0 var(--ink);background:#fff;border-radius:999px;overflow:hidden}.progress .fill{background:repeating-linear-gradient(-45deg, var(--yellow) 0 14px, #ffe46f 14px 28px);width:0;height:100%;transition:width .25s}.loading-tip{text-align:center;max-width:min(560px,100vw - 32px);font-size:clamp(22px,4vw,30px);font-weight:700}.boot-error-code{opacity:.55;text-align:center;overflow-wrap:anywhere;max-width:calc(100vw - 32px);font-size:12px}.debug-panel{z-index:20;color:#d6ffe8;pointer-events:auto;-webkit-user-select:text;user-select:text;background:#141028db;border-radius:10px;max-width:330px;padding:8px 10px;font:12px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace;position:fixed;bottom:80px;left:8px}.debug-panel button,.debug-panel select{color:#fff;cursor:pointer;background:#2b2150;border:1px solid #7a6fb5;border-radius:6px;margin:2px 2px 0 0;padding:2px 6px;font:11px ui-monospace,monospace}.debug-panel label{grid-template-columns:110px 1fr 40px;align-items:center;gap:4px;display:grid}.debug-panel input[type=range]{border-width:1px;height:8px}.debug-panel details summary{cursor:pointer;color:#ffd23d}@media (max-width:640px){.board{display:none}.hud.board-open .board{top:calc(112px + env(safe-area-inset-top));left:calc(12px + env(safe-area-inset-left));align-items:stretch;right:auto}.hud-top{align-items:flex-end;padding-right:76px}.timer{min-width:104px;padding:0 12px}.controls-hint{display:none}.emote-bar button{width:40px;height:40px;font-size:20px}.score-card{padding:2px 10px 2px 6px}.touch .emote-toggle{top:calc(72px + env(safe-area-inset-top));right:calc(12px + env(safe-area-inset-right))}.touch .emote-bar{top:calc(132px + env(safe-area-inset-top))}}@media (prefers-reduced-motion:reduce){.logo span,.logo-burst,.btn.primary,.timer.urgent,.lives-row.last .life{animation:none}}body.reduced-motion .lives-row.last .life,body.reduced-motion .lb-empty-art{animation:none}body.reduced-motion .logo span,body.reduced-motion .logo-burst,body.reduced-motion .btn.primary,body.reduced-motion .timer.urgent,body.reduced-motion .center-text.anim{animation-duration:10ms}.locker-level{background:var(--ink);color:#fff;border-radius:999px;padding:1px 8px;font-size:13px;font-weight:700}.bumpling-avatar{--size:36px;width:var(--size);height:var(--size);flex:none;display:inline-block;position:relative}.bumpling-avatar .av-disc{border:3px solid var(--ink);background:radial-gradient(circle at 50% 30%,#fff 0%,#d4f0ff 75%);border-radius:50%;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.bumpling-avatar svg{width:100%;height:100%;display:block}.bumpling-avatar .av-hat{width:calc(var(--size) * .6);height:calc(var(--size) * .6);filter:drop-shadow(0 2px #2b21504d);position:absolute;top:-30%;left:50%;transform:translate(-50%)rotate(-10deg)}.locker-dot{background:var(--pink);border:3px solid var(--ink);border-radius:50%;width:16px;height:16px;position:absolute;top:-6px;right:-6px}.locker-panel{gap:12px;max-width:min(620px,100%);max-height:100%;padding:20px 22px;overflow-y:auto}.locker-progress,.locker-save{flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.level-row{align-items:center;gap:10px;width:100%;display:flex}.level-badge{background:var(--yellow);border:4px solid var(--ink);box-shadow:0 4px 0 var(--ink);border-radius:16px;flex:none;padding:2px 12px;font-size:20px;font-weight:700}.xp-bar{border:3px solid var(--ink);background:#ece7f7;border-radius:999px;flex:1;height:28px;position:relative;overflow:hidden}.xp-fill{background:linear-gradient(90deg, var(--mint), #8ef0b8);height:100%;transition:width .4s ease-out}.xp-text{justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.locker-stats{grid-template-columns:repeat(4,1fr);gap:8px;width:100%;display:grid}.locker-stat{border:3px solid var(--ink);background:#fff;border-radius:16px;flex-direction:column;align-items:center;padding:4px 2px;display:flex}.stat-icon{font-size:22px;line-height:1}.stat-value{font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}.stat-label{opacity:.65;font-size:11px;font-weight:700}.locker-note{text-align:center;opacity:.8;font-weight:600}.locker-save{border:4px solid var(--ink);text-align:center;border-radius:20px;padding:10px 14px}.locker-save.guest{background:#fff6c9}.locker-save.saved{background:#d9f8e6}.save-title{font-size:20px;font-weight:700}.save-text{font-size:15px;font-weight:600}.save-text.small{opacity:.75;font-size:12px}.google-slot{justify-content:center;align-items:center;min-height:44px;display:flex}.locker-msg:empty{display:none}.locker-section{flex-direction:column;gap:6px;width:100%;display:flex}.locker-label{opacity:.7;font-size:14px;font-weight:700}.locker-grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;display:grid}.locker-grid.colors{grid-template-columns:repeat(8,1fr)}.locker-color{aspect-ratio:1;border:4px solid var(--ink);cursor:pointer;border-radius:50%;min-height:36px;padding:0}.locker-color.on{box-shadow:0 0 0 4px var(--yellow), 0 0 0 7px var(--ink)}.locker-item{font-family:var(--font);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);cursor:pointer;min-height:64px;color:var(--ink);background:#fff;border-radius:16px;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;display:flex}.locker-item .item-icon{font-size:34px;line-height:1}.locker-item .item-icon .gi{filter:drop-shadow(0 2px #2b215033);transition:transform .15s cubic-bezier(.2,1.8,.4,1)}.locker-item:not(.locked):hover .item-icon .gi{transform:scale(1.12)rotate(-6deg)}.locker-item.on .item-icon .gi{transform:scale(1.08)}.locker-item .item-name{align-items:center;gap:2px;font-size:11px;font-weight:700;display:inline-flex}.locker-item.on{background:var(--yellow)}.locker-item.locked{cursor:default;background:#ece7f7}.locker-item.locked .item-icon{filter:grayscale();opacity:.45}.locker-item:not(.locked):active{box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.lb-card{right:calc(var(--menu-gap) + env(safe-area-inset-right));top:calc(var(--menu-gap) + var(--tool) + 22px + env(safe-area-inset-top));border:4px solid var(--ink);width:320px;box-shadow:var(--shadow);background:#fffaf0f5;border-radius:26px;flex-direction:column;gap:4px;padding:8px 16px 12px;display:flex;position:absolute}.lb-head{font-family:var(--font);letter-spacing:.02em;color:var(--ink);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #2b21501f;align-items:center;gap:10px;width:100%;margin-bottom:4px;padding:4px 0 10px;font-size:20px;font-weight:700;display:flex}.lb-head:focus-visible{outline:4px dashed var(--pink);outline-offset:2px;border-radius:12px}.lb-trophy{flex:none;width:36px;height:36px}.lb-chevron{flex:none;width:22px;height:22px;margin-left:auto;transition:transform .12s}@media (hover:hover){.lb-head:hover .lb-chevron{transform:translate(4px)}}.lb-sub{opacity:.75;text-align:center;margin-top:-8px;font-size:14px;font-weight:600}.lb-list{flex-direction:column;gap:5px;width:100%;display:flex}.lb-list.full{max-height:min(56vh,520px);padding:8px 4px 6px;overflow-y:auto}.lb-row{border:3px solid var(--ink);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:3px 12px 3px 5px;font-size:16px;font-weight:700;display:flex}.lb-row.me{background:#fff6c9}.lb-row.top1{background:#ffeaa0}.lb-rank{border:2px solid var(--ink);font-variant-numeric:tabular-nums;background:#fff;border-radius:999px;flex:none;justify-content:center;align-items:center;min-width:28px;height:28px;padding:0 4px;font-size:14px;display:inline-flex;box-shadow:inset 0 -3px #2b21502e}.top1 .lb-rank{background:var(--yellow)}.top2 .lb-rank{background:#dfe2ec}.top3 .lb-rank{background:#f3a462}.lb-avatar{--size:34px}.lb-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.lb-level{background:var(--ink);color:#fff;border-radius:999px;flex:none;padding:0 6px;font-size:11px}.lb-stars{font-variant-numeric:tabular-nums;flex:none;align-items:center;gap:2px;display:inline-flex}.lb-star{width:18px;height:18px}.lb-empty{text-align:center;opacity:.75;padding:8px 4px;font-weight:600}.lb-empty.big{opacity:1;flex-direction:column;align-items:center;gap:6px;padding:18px 8px 22px;display:flex}.lb-empty.big strong{letter-spacing:.02em;font-size:24px}.lb-empty.big span{opacity:.7}.lb-empty-art{filter:drop-shadow(0 6px #2b21502e);width:110px;height:110px;animation:2.4s ease-in-out infinite lb-empty-bob}@keyframes lb-empty-bob{50%{transform:translateY(-6px)rotate(-3deg)}}.lb-title{justify-content:center;align-items:center;gap:10px;display:flex}.lb-title .gi{width:1.3em;height:1.3em}.lb-mine:empty{display:none}.lb-mine{border:3px solid var(--ink);background:#fff6c9;border-radius:999px;padding:2px 14px;font-weight:700}.lb-panel{max-width:min(560px,100%);max-height:100%}.lb-card .lb-row,.lb-card .lb-row.top1,.lb-card .lb-row.me{background:0 0;border:none;gap:10px;padding:3px 0;font-size:18px}.lb-card .lb-row.me .lb-name{-webkit-text-decoration:underline wavy var(--yellow-dark);text-decoration:underline wavy var(--yellow-dark);text-underline-offset:4px}.lb-card .lb-level,.lb-card .lb-star{display:none}@media (max-width:1240px) and (max-height:999px),(max-width:760px),(max-height:620px){.lb-card{display:none!important}}.lb-flag,.report-flag{border:2px solid var(--ink);cursor:pointer;background:#fff;border-radius:999px;flex:none;min-width:32px;min-height:32px;padding:0 6px;font-size:15px;line-height:1}.report-flag[disabled]{opacity:.6;cursor:default}.lb-flag .gi,.report-flag .gi{vertical-align:middle;width:1.3em;height:1.3em}.player-pill .report-flag{min-width:28px;min-height:28px;font-size:13px}.report-panel{max-width:min(480px,100%)}.report-who{color:var(--pink-dark)}.report-reasons{grid-template-columns:1fr 1fr;gap:10px;width:100%;display:grid}.report-reason{flex-direction:column;align-items:center;gap:2px;min-width:0;padding:10px 8px;font-size:16px;display:flex}.report-icon{font-size:30px}.report-thanks{font-size:22px;font-weight:700}.results-progress{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;animation:.4s cubic-bezier(.2,1.6,.4,1) both row-in;display:flex}.results-progress .gain{border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);background:#fff;border-radius:999px;padding:2px 12px;font-size:clamp(15px,2.6vw,19px);font-weight:700}.results-progress .gain.level-up{background:var(--yellow)}.results-progress .gain.unlock{background:#d9f8e6}.podium .who .report-flag{min-width:26px;min-height:26px;font-size:12px}@media (max-height:560px){.locker-stats{grid-template-columns:repeat(4,1fr)}.locker-item{min-height:54px}.results-progress .gain{padding:1px 10px;font-size:14px}}@media (max-width:1180px){.controls-hint{bottom:calc(96px + env(safe-area-inset-bottom))}}@media (max-width:640px){.menu-screen{--menu-gap:12px;--tool:48px;padding-bottom:calc(92px + env(safe-area-inset-bottom))}.menu-tools{gap:8px}.btn.tool-btn{box-shadow:0 4px 0 var(--ink);border-width:3px;border-radius:15px}.menu-profile{max-width:calc(100% - 2 * var(--menu-gap) - 3 * var(--tool) - 2 * 8px - 10px)}.profile-card{border-width:3px;gap:8px;padding:3px 14px 3px 3px}.profile-avatar .bumpling-avatar{--size:38px;margin:5px}.profile-card .name-btn{font-size:16px}.profile-card .name-btn:after{content:none}.profile-main{gap:4px}.profile-card .locker-level{padding:1px 7px;font-size:12px}.profile-xp{border-width:2px;height:12px}.profile-card.name-edit{gap:4px;padding:4px}.edit-btn{width:40px;height:40px;min-height:40px}.name-input{width:100%;font-size:17px}.btn.menu-room{width:calc(50% - var(--menu-gap) * 1.5);text-align:left;justify-content:center;gap:8px;padding:8px 10px;font-size:17px;line-height:1.05}.menu-room .ui-icon{width:30px;height:30px}.menu-room.mint .ui-icon{width:34px}.btn.play-btn{padding:8px 30px 10px 22px}}@media (max-height:520px){.menu-screen{--menu-gap:12px;--tool:50px;padding-top:calc(var(--tool) + 20px + env(safe-area-inset-top));padding-bottom:calc(66px + env(safe-area-inset-bottom))}.menu-screen>*{flex-shrink:0}.menu-screen .logo{font-size:clamp(54px,17vh,92px)}.logo-burst{width:clamp(22px,5vh,36px)}.menu-screen .tagline{display:none}.menu-tools{gap:8px}.btn.tool-btn{box-shadow:0 4px 0 var(--ink);border-width:3px;border-radius:15px}.profile-card{border-width:3px;padding:2px 16px 2px 2px}.profile-avatar .bumpling-avatar{--size:40px;margin:5px}.profile-main{gap:4px}.profile-card .name-btn{font-size:17px}.profile-xp{border-width:2px;height:12px}.btn.play-btn{margin-top:10px;padding:4px 34px 6px 24px}.play-btn .play-icon{width:40px}.play-label{font-size:40px}.play-sub{font-size:12px}.btn.menu-room{min-height:48px;padding:4px 22px 4px 8px;font-size:18px}.menu-room .ui-icon{width:32px;height:32px}.menu-room.mint .ui-icon{width:36px}.controls-hint{display:none}}.map-row{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.map-btn{font-family:var(--font);color:var(--ink);border:4px solid var(--ink);box-shadow:0 4px 0 var(--ink);cursor:pointer;touch-action:manipulation;background:#fff;border-radius:16px;flex-direction:column;align-items:stretch;gap:4px;padding:0 0 6px;transition:transform .12s cubic-bezier(.2,1.8,.4,1),background .12s;display:flex;overflow:hidden}.map-pic{aspect-ratio:4/3;border-bottom:3px solid var(--ink);background:#cfeaff 50%/cover no-repeat;place-items:center;display:grid}.map-pic.shuffle{background:linear-gradient(135deg,#ffd6ec,#d6f1ff 55%,#e9f7ff)}.map-dice{vertical-align:0;width:56%;height:auto}.map-btn.on .map-dice{animation:.5s cubic-bezier(.2,1.6,.4,1) map-dice-roll}@keyframes map-dice-roll{0%{transform:rotate(-90deg)scale(.7)}to{transform:none}}.map-name{text-align:center;padding:0 4px;font-size:14px;font-weight:700;line-height:1.05}.map-btn.on{background:var(--yellow);transform:translateY(-2px)}.map-btn:active{box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.map-btn:focus-visible{outline:4px dashed var(--pink);outline-offset:3px}@media (hover:hover){.map-btn:not(.on):hover{background:#fff6c9}}@media (max-width:420px){.map-row{gap:6px}.map-name{font-size:11px}.map-btn{border-width:3px;border-radius:13px}}@media (max-height:520px) and (min-width:561px){.create-body{grid-template-areas:"map map""dur count""bots count"}.create-map{grid-area:map}.map-row{grid-template-columns:repeat(4,1fr);gap:8px}.map-btn{box-shadow:0 3px 0 var(--ink);border-width:3px;border-radius:13px;flex-direction:row;align-items:center;padding:0 6px 0 0}.map-pic{aspect-ratio:1;border-bottom:none;border-right:3px solid var(--ink);flex:none;width:54px}.map-name{text-align:left;font-size:12px}}@media (max-height:800px){.map-row{gap:8px}.map-btn{box-shadow:0 3px 0 var(--ink);border-width:3px;border-radius:13px;flex-direction:row;align-items:center;gap:6px;min-height:50px;padding:0 6px 0 0}.map-pic{aspect-ratio:1;border-bottom:none;border-right:3px solid var(--ink);flex:none;width:50px}.map-name{text-align:left;font-size:13px}}@media (max-height:520px) and (min-width:561px){.create-map .create-head{display:none}.map-btn{min-height:40px}.map-pic{width:42px}}@media (max-height:800px) and (min-width:900px){.create-panel{max-width:min(880px,100%)}.create-body{grid-template-columns:1fr 1fr;grid-template-areas:"map map""dur count""bots count"}.create-map{grid-area:map}.create-duration{grid-area:dur}.create-bots{grid-area:bots}.create-count{grid-area:count;justify-content:center}.map-name{font-size:15px}}@media (max-height:520px) and (min-width:561px){.create-body{grid-template-areas:"dur map""bots count"}.create-map{justify-content:center}.map-row{grid-template-columns:1fr 1fr;gap:6px}.map-btn{min-height:34px}.map-pic{width:36px}.create-count .create-head{display:none}}
