@font-face{font-family:Lilita One;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lilita-one-latin-ext-400-normal-DxX3B4s6.woff2) format("woff2"),url(/assets/lilita-one-latin-ext-400-normal-QROd2hfm.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lilita One;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lilita-one-latin-400-normal-87r-Z-Re.woff2) format("woff2"),url(/assets/lilita-one-latin-400-normal-DXkechA3.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-hebrew-wght-normal-DdnsCkLr.woff2) format("woff2-variations");unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-ext-wght-normal-CYrqKuxd.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-wght-normal-DM6njrJ3.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink: #2b2118;--ink-soft: #6b5843;--paper: #fff6dc;--paper-2: #f7e6bb;--paper-3: #e8cf92;--gold: #ffc928;--gold-dark: #d08b00;--green: #5ccf4f;--green-dark: #2f9b2a;--blue: #4aa8ff;--blue-dark: #2470d0;--pink: #ff8ea6;--pink-dark: #d9547a;--red: #ef4b5f;--heavy: #8d6e63;--heavy-dark: #5d4037;--dash: #ffb300;--dash-dark: #c67c00;--split: #42a5f5;--split-dark: #1e6fc0;--boom: #ef5350;--boom-dark: #b71c1c;--font-display: "Lilita One", "Arial Black", system-ui, sans-serif;--font-body: "Fredoka Variable", "Fredoka", system-ui, -apple-system, "Segoe UI", sans-serif;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);color-scheme:light}#stage{position:fixed;inset:0;overflow:hidden;overflow:clip;background:#3a8fd6;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.game-canvas{position:absolute;inset:0;display:block;touch-action:none;visibility:hidden;cursor:crosshair}.game-canvas.is-visible{visibility:visible}#ui{position:absolute;inset:0;font-family:var(--font-body);font-weight:500;color:var(--ink);-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;pointer-events:none}#ui.in-game{pointer-events:none}#ui button,#ui select{font-family:inherit;-webkit-tap-highlight-color:transparent;touch-action:manipulation;cursor:pointer}#ui button:disabled{cursor:default}#ui [hidden]{display:none!important}#ui :focus-visible{outline:4px solid #fff;outline-offset:3px;box-shadow:0 0 0 7px var(--ink)}.icon{width:24px;height:24px;flex:none}.menu-backdrop{position:absolute;inset:0;background:linear-gradient(180deg,#143c6e1a,#143c6e00 40%,#281e1459),url(/art/bg-meadow.webp) center 70% / cover no-repeat,#74b9f0;transition:opacity .3s ease}#ui.in-game .menu-backdrop{opacity:0}.screen{position:absolute;inset:0;overflow:hidden;overflow:clip;display:flex;flex-direction:column;align-items:center;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease,visibility 0s linear .25s}.screen.is-active{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .25s ease,visibility 0s}.screen-header{display:flex;align-items:center;gap:12px;flex:none;width:100%;max-width:1100px;padding:calc(var(--safe-top) + 12px) calc(var(--safe-right) + 16px) 8px calc(var(--safe-left) + 16px)}.screen-title{flex:1;margin:0;font:400 clamp(28px,5vh,40px) / 1 var(--font-display);color:#fff;text-align:center;-webkit-text-stroke:7px var(--ink);paint-order:stroke fill;text-shadow:0 4px 0 var(--ink);letter-spacing:1px}.header-spacer{width:48px;flex:none}.header-tools{display:flex;align-items:center;gap:10px}.card{background:var(--paper);border:3px solid var(--ink);border-radius:22px;box-shadow:0 6px 0 var(--ink),inset 0 0 0 3px #ffffffe6,inset 0 -7px 0 var(--paper-2)}.btn{--btn-bg: var(--green);--btn-shade: var(--green-dark);--btn-fg: #fff;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 22px 3px;font:400 24px/1 var(--font-display)!important;letter-spacing:.5px;color:var(--btn-fg);text-shadow:0 2px 0 rgba(0,0,0,.28);white-space:nowrap;background:var(--btn-bg);border:3px solid var(--ink);border-radius:18px;box-shadow:inset 0 -6px 0 var(--btn-shade),inset 0 3px #ffffff61,0 5px 0 var(--ink);transition:transform .07s ease,box-shadow .07s ease,filter .15s ease}.btn .icon{width:24px;height:24px;filter:drop-shadow(0 2px 0 rgba(0,0,0,.25))}.btn:hover{filter:brightness(1.06)}.btn:active:not(:disabled){transform:translateY(4px);box-shadow:inset 0 -3px 0 var(--btn-shade),inset 0 2px #ffffff4d,0 1px 0 var(--ink)}.btn-play{min-height:62px;font-size:30px!important}.btn-play .icon{width:28px;height:28px}.btn-secondary{--btn-bg: var(--blue);--btn-shade: var(--blue-dark);min-height:50px;font-size:21px!important}.btn-tertiary{--btn-bg: #fff;--btn-shade: var(--paper-3);--btn-fg: var(--ink);min-height:50px;font-size:21px!important;text-shadow:none}.btn-tertiary .icon{filter:none}.btn.is-busy{pointer-events:none;filter:saturate(.7)}.btn.is-busy .icon{visibility:hidden}.btn.is-busy:after{content:"";position:absolute;left:calc(50% - 64px);width:22px;height:22px;border:4px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.icon-btn{display:grid;place-items:center;width:48px;height:48px;padding:0;color:var(--ink);background:#fff;border:3px solid var(--ink);border-radius:50%;box-shadow:inset 0 -4px 0 var(--paper-2),0 4px 0 var(--ink);transition:transform .07s ease,box-shadow .07s ease}.icon-btn:active{transform:translateY(3px);box-shadow:inset 0 -2px 0 var(--paper-2),0 1px 0 var(--ink)}.icon-btn.small{width:44px;height:44px}.icon-btn .icon{width:24px;height:24px}.round-btn{display:grid;place-items:center;width:54px;height:54px;padding:0;color:#fff;background:var(--pink);border:3px solid var(--ink);border-radius:50%;box-shadow:inset 0 -5px 0 var(--pink-dark),inset 0 3px #ffffff73,0 4px 0 var(--ink);transition:transform .07s ease,box-shadow .07s ease}.round-btn .icon{width:30px;height:30px;filter:drop-shadow(0 2px 0 rgba(0,0,0,.25))}.round-btn:active{transform:translateY(3px);box-shadow:inset 0 -3px 0 var(--pink-dark),inset 0 2px #ffffff59,0 1px 0 var(--ink)}.round-btn.small{width:48px;height:48px;color:var(--ink);background:#fff;box-shadow:inset 0 -4px 0 var(--paper-2),0 4px 0 var(--ink)}.round-btn.small .icon{width:26px;height:26px;filter:none}.pill{display:inline-flex;align-items:center;gap:8px;height:48px;max-width:320px;padding:0 14px 0 12px;color:var(--ink);background:#fff;border:3px solid var(--ink);border-radius:999px;box-shadow:inset 0 -4px 0 var(--paper-2),0 4px 0 var(--ink);transition:transform .07s ease,box-shadow .07s ease}.pill:active{transform:translateY(3px);box-shadow:inset 0 -2px 0 var(--paper-2),0 1px 0 var(--ink)}.link-btn{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:3px 10px 3px 8px;font:700 13px var(--font-body);color:var(--ink);background:#fff;border:2px solid var(--ink);border-radius:999px}.link-btn .icon{width:14px;height:14px}.spinner{display:inline-block;width:16px;height:16px;border:3px solid rgba(43,33,24,.2);border-top-color:var(--ink);border-radius:50%;animation:spin .7s linear infinite}.avatar{position:relative;display:inline-block;flex:none;width:48px;height:48px}.avatar img{position:absolute;pointer-events:none;-webkit-user-drag:none;user-select:none}.avatar-skin{inset:0;width:100%;height:100%}.avatar-gadget{left:-16.6667%;top:-16.6667%;width:133.3333%;height:133.3333%}.outlined text{font-family:var(--font-display)}kbd{display:inline-block;padding:0 7px 1px;font:400 15px/1.4 var(--font-display);color:var(--ink);text-shadow:none;background:#fff;border:2px solid var(--ink);border-radius:7px;box-shadow:0 2px 0 var(--ink)}.modal{position:absolute;inset:0;z-index:20;display:flex;align-items:flex-end;justify-content:center;visibility:hidden;pointer-events:none;transition:visibility 0s linear .3s}.modal.is-open{visibility:visible;pointer-events:auto;transition:visibility 0s}.modal-backdrop{position:absolute;inset:0;background:#0a10208c;opacity:0;transition:opacity .25s ease}.modal.is-open .modal-backdrop{opacity:1}.sheet{position:relative;display:flex;flex-direction:column;width:calc(100% - 16px);max-height:84%;margin-bottom:calc(var(--safe-bottom) + 10px);transform:translateY(112%);transition:transform .34s cubic-bezier(.2,.9,.3,1.08)}.modal.is-open .sheet{transform:none}.sheet-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px 8px 20px}.sheet-title{margin:0;font:400 30px/1 var(--font-display)}.sheet-body{overflow-y:auto;overscroll-behavior:contain;padding:8px 12px 18px}.gadget-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.gadget-tile{display:flex;flex-direction:column;align-items:center;min-width:0;padding:16px 4px 8px;color:var(--ink);background:#fff;border:3px solid var(--ink);border-radius:16px;box-shadow:0 3px 0 var(--ink);transition:transform .07s ease}.gadget-tile:active{transform:translateY(2px)}.gadget-tile .avatar{width:64px;height:64px;margin-bottom:8px}.gadget-tile-label{max-width:100%;overflow:hidden;font:600 13px/1.2 var(--font-body);white-space:nowrap;text-overflow:ellipsis}.gadget-tile[aria-selected=true]{background:var(--gold);box-shadow:inset 0 -4px 0 var(--gold-dark),0 3px 0 var(--ink)}.pause-menu{align-items:center}.dialog{position:relative;display:flex;flex-direction:column;gap:14px;width:310px;padding:18px 20px 22px;opacity:0;transform:scale(.9);transition:transform .22s cubic-bezier(.3,1.5,.5,1),opacity .15s ease}.modal.is-open .dialog{opacity:1;transform:none}.dialog-title{margin:0;font:400 42px/1.1 var(--font-display);text-align:center}.dialog-row{display:flex;gap:12px}.dialog-row .btn{flex:1}.dialog-row .icon-btn{width:54px;height:54px;flex:none}.wardrobe .sheet{max-width:760px}.wardrobe .gadget-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}.lobby{justify-content:space-evenly;gap:6px;padding:calc(var(--safe-top) + 10px) calc(var(--safe-right) + 16px) calc(var(--safe-bottom) + 12px) calc(var(--safe-left) + 16px)}.corner{position:absolute;top:calc(var(--safe-top) + 12px);z-index:2}.corner-right{right:calc(var(--safe-right) + 14px)}.logo-wrap{flex:none;width:clamp(200px,34vh,360px);max-width:70vw;margin:0;line-height:0}.logo{display:block;width:100%;height:auto;overflow:visible;animation:logo-bob 3.2s ease-in-out infinite}.lobby-main{display:flex;flex-direction:column;align-items:center;gap:clamp(8px,2vh,18px);width:100%;max-width:900px}.trio-wrap{display:flex;flex-direction:column;align-items:center;gap:10px}.trio{--size: clamp(64px, 13vh, 118px);position:relative;display:flex;align-items:flex-end;gap:calc(var(--size) * .12);padding:0 calc(var(--size) * .2) calc(var(--size) * .12)}.trio-log{position:absolute;left:0;right:0;bottom:calc(var(--size) * .02 + 18px);height:calc(var(--size) * .2);z-index:0;background:linear-gradient(180deg,#c98d4b,#a86f35 70%,#8a5a2b);border:3px solid var(--ink);border-radius:999px;box-shadow:0 4px 0 var(--ink)}.trio-knur{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:0;background:none;border:0;transition:transform .15s cubic-bezier(.3,1.6,.5,1)}.trio-knur:hover{transform:translateY(-4px)}.trio-knur:active{transform:translateY(2px) scale(.96)}.trio-avatar{width:var(--size);height:var(--size);margin-bottom:calc(var(--size) * .06);transform:scaleX(-1)}.trio-knur--0 .trio-avatar{animation:bob 2.4s ease-in-out infinite}.trio-knur--1 .trio-avatar{animation:bob 2.4s ease-in-out -.8s infinite}.trio-knur--2 .trio-avatar{animation:bob 2.4s ease-in-out -1.6s infinite}.trio-avatar img{transform-origin:center}.trio-power,.slot-power{display:inline-flex;align-items:center;gap:3px;padding:2px 8px 2px 4px;font:400 14px/1.2 var(--font-display);color:#fff;text-shadow:0 1px 0 rgba(0,0,0,.3);background:var(--power-bg, var(--heavy));border:2px solid var(--ink);border-radius:999px;box-shadow:0 2px 0 var(--ink)}.trio-power .icon,.slot-power .icon{width:16px;height:16px}.slot-power--heavy{--power-bg: var(--heavy);--power-dark: var(--heavy-dark)}.slot-power--dash{--power-bg: var(--dash);--power-dark: var(--dash-dark)}.slot-power--split{--power-bg: var(--split);--power-dark: var(--split-dark)}.slot-power--boom{--power-bg: var(--boom);--power-dark: var(--boom-dark)}.loadout-pill .gadget-name{font-size:20px}.start-card{display:flex;flex-direction:column;gap:9px;flex:none;width:100%;max-width:380px;padding:12px 16px 18px}.field-label{display:flex;justify-content:space-between;align-items:baseline;padding:0 4px;font:700 13px/1 var(--font-body);color:var(--ink-soft);text-transform:uppercase;letter-spacing:1px}.field-counter{font-size:13px;letter-spacing:0}.text-input{width:100%;height:50px;padding:0 16px;font:600 21px var(--font-body);color:var(--ink);background:#fff;border:3px solid var(--ink);border-radius:14px;outline:none;box-shadow:inset 0 4px #2b211814;-webkit-user-select:text;user-select:text}#ui .text-input:focus,#ui .text-input:focus-visible{outline:none;box-shadow:inset 0 4px #2b211814,0 0 0 4px #4aa8ff8c}.text-input::placeholder{color:#b9a888;font-weight:500}.lobby-bottom{display:flex;align-items:center;justify-content:center;gap:12px;flex:none}.best-chip{display:inline-flex;align-items:center;gap:6px;height:44px;padding:0 14px 0 10px;font:700 15px var(--font-body);color:var(--ink);white-space:nowrap;background:#fffffff2;border:3px solid var(--ink);border-radius:999px;box-shadow:0 3px 0 var(--ink)}.best-chip .icon{width:22px;height:22px;color:var(--gold-dark)}.best-chip b{font:400 22px/1 var(--font-display)}@media(min-aspect-ratio:5/4){.lobby-main{flex-direction:row;justify-content:center;align-items:center;gap:clamp(20px,5vw,64px)}.trio{--size: clamp(64px, 17vh, 132px)}}@media(max-height:430px){.logo-wrap{width:clamp(160px,30vh,220px)}.start-card{gap:6px;padding:8px 12px 12px}.text-input{height:42px}.btn-play{min-height:50px!important;font-size:24px!important}}.loadout-body{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:1000px;min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;padding:4px calc(var(--safe-right) + 14px) calc(var(--safe-bottom) + 16px) calc(var(--safe-left) + 14px)}.loadout-left{display:flex;flex-direction:column;align-items:center;gap:12px;flex:none}.loadout-intro{margin:0;padding:6px 14px;font:600 15px/1.3 var(--font-body);color:#fff;text-align:center;background:#2b21188c;border-radius:999px}.slots{display:flex;gap:10px}.slot{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;width:96px;padding:18px 6px 8px;color:var(--ink);background:#ffffffeb;border:3px solid var(--ink);border-radius:18px;box-shadow:0 4px 0 var(--ink);transition:transform .15s cubic-bezier(.3,1.6,.5,1),background .15s ease}.slot .avatar{width:56px;height:56px;margin-bottom:4px;transform:scaleX(-1)}.slot-order{position:absolute;top:-12px;left:50%;transform:translate(-50%);padding:1px 10px;font:400 15px/1.3 var(--font-display);color:#fff;background:var(--ink);border-radius:999px}.slot[aria-selected=true]{background:var(--gold);transform:translateY(-4px);box-shadow:inset 0 -4px 0 var(--gold-dark),0 6px 0 var(--ink)}.showcase{display:flex;align-items:center;gap:14px}.preview{--preview: clamp(110px, 24vh, 190px);position:relative;width:var(--preview);height:var(--preview);padding:0;background:none;border:0;border-radius:50%}.preview-glow{position:absolute;inset:-16%;border-radius:50%;background:radial-gradient(circle,#ffffffd9,#ffffff59 42%,#fff0 70%)}.preview-shadow{position:absolute;left:20%;right:20%;bottom:-5%;height:11%;border-radius:50%;background:#14283c40;animation:shadow-pulse 2.4s ease-in-out infinite}.preview-bob{position:absolute;inset:0;animation:bob 2.4s ease-in-out infinite}.preview-avatar{display:block;width:100%;height:100%;transform:scaleX(-1)}.preview-label{font:400 20px/1 var(--font-display);color:#fff;-webkit-text-stroke:5px var(--ink);paint-order:stroke fill}.avatar.is-swapped{animation:swap .32s cubic-bezier(.3,1.6,.5,1)}.preview-avatar.is-swapped,.slot .avatar.is-swapped,.trio-avatar.is-swapped{animation:swap-flipped .32s cubic-bezier(.3,1.6,.5,1)}.preview-avatar.is-squished{animation:squish-flipped .5s cubic-bezier(.3,1.6,.5,1)}.loadout-right{display:flex;flex-direction:column;gap:10px;width:100%;max-width:470px;padding:14px 16px 18px}.outfit-row{display:flex;align-items:center;gap:10px}.gadget-pill{flex:1;max-width:none}.gadget-pill .icon{width:24px;height:24px}.gadget-name{flex:1;overflow:hidden;font:400 21px/1 var(--font-display);text-align:left;white-space:nowrap;text-overflow:ellipsis}.gadget-count{padding:3px 8px;font:700 13px/1 var(--font-body);color:var(--ink-soft);background:var(--paper-2);border-radius:999px}.swatches{display:flex;flex-wrap:wrap;justify-content:center;gap:7px}.swatch{display:grid;place-items:center;width:44px;height:44px;padding:0;overflow:hidden;background:#ffffffeb;border:3px solid var(--ink);border-radius:50%;box-shadow:0 3px 0 var(--ink);transition:transform .15s cubic-bezier(.3,1.6,.5,1),box-shadow .15s ease}.swatch img{width:128%;height:128%;margin:8% 0 0 6%;pointer-events:none}.swatch[aria-checked=true]{transform:translateY(-3px) scale(1.12);box-shadow:0 0 0 3px var(--gold),0 0 0 6px var(--ink),0 6px 0 4px var(--ink)}.powers{display:grid;grid-template-columns:1fr 1fr;gap:8px}.power{display:flex;align-items:center;gap:8px;min-width:0;padding:7px 8px;color:var(--ink);text-align:left;background:#fff;border:3px solid var(--ink);border-radius:14px;box-shadow:0 3px 0 var(--ink);transition:transform .07s ease}.power:active{transform:translateY(2px)}.power-icon{display:grid;place-items:center;flex:none;width:36px;height:36px;color:#fff;border:2px solid var(--ink);border-radius:50%}.power--heavy .power-icon{background:var(--heavy)}.power--dash .power-icon{background:var(--dash)}.power--split .power-icon{background:var(--split)}.power--boom .power-icon{background:var(--boom)}.power-text{display:flex;flex-direction:column;min-width:0}.power-text b{font:400 18px/1.1 var(--font-display)}.power-text small{font:600 11.5px/1.25 var(--font-body);color:var(--ink-soft)}.power[aria-checked=true]{background:var(--gold);box-shadow:inset 0 -4px 0 var(--gold-dark),0 3px 0 var(--ink)}.power[aria-checked=true] small{color:var(--ink)}.loadout-done{margin-top:4px}@media(min-aspect-ratio:5/4){.loadout-body{flex-direction:row;justify-content:center;align-items:flex-start;gap:clamp(16px,4vw,48px)}.loadout-body>*{margin-block:auto}}@media(max-height:430px){.screen-header{padding-top:calc(var(--safe-top) + 6px);padding-bottom:2px}.screen-header .icon-btn{width:42px;height:42px}.loadout-right .field-label{display:none}.loadout-right .swatch{width:38px;height:38px}.loadout-right .pill{height:42px}.power{padding:4px 8px}.power-icon{width:30px;height:30px}}@media(max-height:520px)and (min-aspect-ratio:5/4){.loadout-intro{display:none}.slot{width:84px;padding-top:14px}.slot .avatar{width:44px;height:44px}.loadout-right{gap:7px;padding:10px 12px 12px}.power-text small{display:none}.loadout-done{min-height:46px!important;font-size:22px!important}}.worlds{display:flex;flex-direction:column;gap:14px;width:100%;max-width:1100px;flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:6px calc(var(--safe-right) + 16px) calc(var(--safe-bottom) + 18px) calc(var(--safe-left) + 16px)}.world{position:relative;flex:none;padding:12px 14px 16px;overflow:hidden;background-size:cover;background-position:center 65%;border:3px solid var(--ink);border-radius:22px;box-shadow:0 6px 0 var(--ink)}.world:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#14141e59,#14141e0d 60%)}.world.is-locked{filter:grayscale(.7) brightness(.85)}.world-head{position:relative;display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 12px;margin-bottom:10px}.world-name{margin:0;font:400 26px/1 var(--font-display);color:#fff;-webkit-text-stroke:6px var(--ink);paint-order:stroke fill}.world-tagline{margin:0;font:600 14px/1.2 var(--font-body);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.6)}.level-row{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.level-tile{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0;padding:8px 4px 9px;color:var(--ink);background:var(--paper);border:3px solid var(--ink);border-radius:16px;box-shadow:inset 0 -5px 0 var(--paper-2),0 4px 0 var(--ink);transition:transform .07s ease}.level-tile:active:not(:disabled){transform:translateY(3px)}.level-tile.is-cleared{background:#fff}.level-tile.is-locked{color:var(--ink-soft);background:#fff6dcbf}.level-num{font:400 26px/1 var(--font-display)}.level-name{max-width:100%;overflow:hidden;font:600 12.5px/1.2 var(--font-body);white-space:nowrap;text-overflow:ellipsis}.level-lock{width:26px;height:26px;margin:6px 0;opacity:.6}.level-best{font:700 12px/1 var(--font-body);color:var(--ink-soft)}.stars{display:inline-flex;gap:1px}.star{display:inline-grid;color:#2b211833}.star .icon{width:18px;height:18px}.star.is-on{color:var(--gold);filter:drop-shadow(0 1px 0 var(--ink)) drop-shadow(0 -1px 0 var(--ink)) drop-shadow(1px 0 0 var(--ink)) drop-shadow(-1px 0 0 var(--ink))}.stars--big{gap:6px}.stars--big .star .icon{width:52px;height:52px}.stars--big .star:nth-child(2){transform:translateY(-10px)}.star.is-popping{animation:star-pop .45s cubic-bezier(.3,1.8,.5,1)}.stars--big .star:nth-child(2).is-popping{animation-name:star-pop-mid}@media(max-width:560px){.level-row{grid-template-columns:repeat(3,minmax(0,1fr))}}.game-layer{pointer-events:none!important}.hud{position:absolute;inset:0;pointer-events:none}.hud-top{position:absolute;top:calc(var(--safe-top) + 10px);left:calc(var(--safe-left) + 12px);right:calc(var(--safe-right) + 14px);display:flex;align-items:flex-start;gap:10px}.hud-pause{pointer-events:auto;flex:none}.hud-info{display:flex;flex-direction:column;gap:4px;min-width:0;padding-top:2px}.hud-level{max-width:46vw;overflow:hidden;font:400 20px/1.1 var(--font-display);color:#fff;white-space:nowrap;text-overflow:ellipsis;-webkit-text-stroke:5px var(--ink);paint-order:stroke fill}.hud-apes{align-self:flex-start;padding:2px 10px;font:700 13px/1.3 var(--font-body);color:#fff;background:#2b211899;border-radius:999px}.hud-score{display:flex;flex-direction:column;align-items:flex-end;margin-left:auto}.hud-score-value{font:400 clamp(28px,6vh,42px) / 1 var(--font-display);color:#fff;-webkit-text-stroke:7px var(--ink);paint-order:stroke fill;text-shadow:0 4px 0 var(--ink)}.hud-score-value.is-bumped{animation:bump .25s ease}.hud-best{margin-top:4px;font:700 13px/1 var(--font-body);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.7)}.power-hint{position:absolute;left:50%;bottom:calc(var(--safe-bottom) + 16px);display:inline-flex;align-items:center;gap:8px;padding:8px 18px 9px 12px;font:400 22px/1 var(--font-display);color:#fff;text-shadow:0 2px 0 rgba(0,0,0,.3);background:var(--power-bg, var(--dash));border:3px solid var(--ink);border-radius:999px;box-shadow:inset 0 -4px 0 var(--power-dark, var(--dash-dark)),0 4px 0 var(--ink);opacity:0;transform:translate(-50%,20px);transition:opacity .2s ease,transform .25s cubic-bezier(.3,1.6,.5,1);pointer-events:none}.power-hint.is-visible{opacity:1;transform:translate(-50%);pointer-events:auto;animation:pulse .9s ease-in-out infinite}.hud-zoom{position:absolute;right:calc(var(--safe-right) + 14px);bottom:calc(var(--safe-bottom) + 18px);display:flex;flex-direction:column;gap:10px;pointer-events:auto}.hud-zoom .icon-btn:disabled{opacity:.45;box-shadow:inset 0 -4px 0 var(--paper-2),0 4px 0 var(--ink);transform:none}.scroll-btn{position:absolute;top:50%;display:grid;place-items:center;width:42px;height:64px;padding:0;color:#fff;background:#2b21188c;border:0;border-radius:14px;opacity:0;transform:translateY(-50%);transition:opacity .18s ease;pointer-events:none;touch-action:none;user-select:none;-webkit-user-select:none}.scroll-btn .icon{width:26px;height:26px}.scroll-btn--left{left:calc(var(--safe-left) + 8px)}.scroll-btn--right{right:calc(var(--safe-right) + 8px)}.scroll-btn.is-visible{opacity:1;pointer-events:auto}.scroll-btn:active{background:#2b2118cc}@media(max-height:430px){.hud-zoom{gap:8px;bottom:calc(var(--safe-bottom) + 12px)}.hud-zoom .icon-btn.small{width:40px;height:40px}.hud-zoom .icon-btn .icon{width:22px;height:22px}}.wait-hint{position:absolute;left:50%;bottom:calc(var(--safe-bottom) + 18px);display:inline-flex;align-items:center;gap:10px;padding:7px 18px 8px 12px;font:400 20px/1 var(--font-display);color:#fff;white-space:nowrap;background:#2b2118c7;border-radius:999px;opacity:0;transform:translate(-50%,12px);transition:opacity .12s ease,transform .12s ease}.wait-hint.is-visible{opacity:1;transform:translate(-50%);transition:opacity .2s ease .25s,transform .25s cubic-bezier(.3,1.6,.5,1) .25s}.wait-spinner{flex:none;width:18px;height:18px;border:3px solid rgba(255,255,255,.3);border-top-color:#ffd23f;border-radius:50%;animation:spin .8s linear infinite}@keyframes wait-pulse{50%{opacity:.35}}.aim-hint{position:absolute;left:50%;top:30%;display:flex;flex-direction:column;align-items:center;gap:10px;transform:translate(-50%);opacity:0;transition:opacity .3s ease}.aim-hint.is-visible{opacity:1}.aim-hand{width:46px;height:46px;background:#fff;border:4px solid var(--ink);border-radius:50%;box-shadow:0 4px 0 var(--ink);animation:aim-drag 2s ease-in-out infinite}.aim-text{padding:8px 16px;font:400 20px/1.2 var(--font-display);color:#fff;text-align:center;background:#2b2118bf;border-radius:999px}.rotate-hint{position:absolute;left:50%;bottom:calc(var(--safe-bottom) + 80px);display:none;align-items:center;gap:6px;width:max-content;max-width:90vw;padding:8px 10px 8px 16px;font:600 15px/1.3 var(--font-body);color:#fff;background:#2b2118d9;border-radius:16px;transform:translate(-50%);pointer-events:auto}.rotate-hint.is-visible{display:flex}.modal.pause-menu,.modal.result{align-items:center;pointer-events:none}.modal.pause-menu.is-open,.modal.result.is-open{pointer-events:auto}.dialog-row .btn-tertiary{flex:1}.result-card{width:min(420px,calc(100vw - 24px));align-items:center;gap:10px;max-height:calc(100% - 16px);overflow-y:auto}.result-title{margin:0;font:400 clamp(30px,6vh,42px) / 1.05 var(--font-display);text-align:center;color:#fff;-webkit-text-stroke:7px var(--ink);paint-order:stroke fill;text-shadow:0 4px 0 var(--ink)}.result.is-won .result-title{color:var(--gold)}.result-subtitle{margin:-2px 0 0;font:600 15px/1.3 var(--font-body);color:var(--ink-soft);text-align:center}.result-stars{padding-top:8px}.result-stats{display:flex;justify-content:center;gap:12px;width:100%}.stat{position:relative;display:flex;flex-direction:column;align-items:center;flex:1;padding:8px 6px;background:#fff;border:3px solid var(--ink);border-radius:14px}.stat-label{font:700 12px/1 var(--font-body);color:var(--ink-soft);text-transform:uppercase;letter-spacing:1px}.stat-value{margin-top:4px;font:400 26px/1 var(--font-display)}.new-badge{position:absolute;top:-12px;right:-8px;padding:3px 8px;font:400 13px/1.2 var(--font-display);color:#fff;background:var(--red);border:2px solid var(--ink);border-radius:999px;transform:rotate(8deg) scale(0)}.new-badge.is-visible{transform:rotate(8deg) scale(1);transition:transform .3s cubic-bezier(.3,1.8,.5,1) .6s}.result-status{min-height:20px;font:600 14px/1.3 var(--font-body);color:var(--ink-soft);text-align:center}.result-status--rank{font:400 17px/1.3 var(--font-display);color:var(--blue-dark)}.result-status--error{color:#cf2f45}.result-card .dialog-row{width:100%;align-items:center}.result-card .dialog-row .btn{flex:1}.result-card .dialog-row .icon-btn{width:52px;height:52px}.lb-panel{display:flex;flex-direction:column;gap:8px;width:calc(100% - 24px);max-width:720px;min-height:0;flex:1;margin-bottom:calc(var(--safe-bottom) + 14px);padding:12px 12px 6px}.lb-tools{display:flex;justify-content:center}.lb-select{width:100%;max-width:340px;height:46px;padding:0 14px;font:400 19px var(--font-display)!important;color:var(--ink);background:#fff;border:3px solid var(--ink);border-radius:14px;box-shadow:0 3px 0 var(--ink)}.lb-note{margin:0;font:600 13px/1.2 var(--font-body);color:var(--ink-soft);text-align:center}.lb-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.lb-list{display:flex;flex-direction:column;gap:6px;margin:0;padding:2px 2px 10px;list-style:none}.lb-row{display:grid;grid-template-columns:40px auto minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:6px 10px;background:#fff;border:3px solid var(--ink);border-radius:14px}.lb-row.is-me{background:#e3f1ff;box-shadow:0 0 0 3px var(--blue)}.lb-rank{font:400 20px/1 var(--font-display);text-align:center}.is-top-1 .lb-rank{color:var(--gold-dark)}.is-top-2 .lb-rank{color:#8a8f99}.is-top-3 .lb-rank{color:#b86b34}.lb-trio{display:flex;padding-right:8px}.lb-trio .avatar{width:34px;height:34px;margin-right:-6px;transform:scaleX(-1)}.lb-name{display:flex;flex-direction:column;min-width:0;overflow:hidden;font:600 16px/1.2 var(--font-body);white-space:nowrap;text-overflow:ellipsis}.lb-name small{font-size:12px;color:var(--ink-soft)}.lb-stars{display:inline-flex;align-items:center;gap:2px;font:700 14px var(--font-body)}.lb-stars .icon{width:16px;height:16px;color:var(--gold-dark)}.lb-score{font:400 19px/1 var(--font-display);text-align:right}.lb-empty{padding:24px 8px;font:600 15px/1.3 var(--font-body);color:var(--ink-soft);text-align:center}@media(max-width:480px){.lb-trio .avatar{width:26px;height:26px}.lb-stars{display:none}.lb-row{grid-template-columns:32px auto minmax(0,1fr) auto}}.toasts{position:absolute;top:calc(var(--safe-top) + 70px);left:0;right:0;z-index:50;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.toast{max-width:88%;padding:10px 16px;font:600 16px/1.3 var(--font-body);color:#fff;text-align:center;background:var(--ink);border-radius:14px;box-shadow:0 4px #00000040;opacity:0;transform:translateY(-16px);transition:opacity .3s ease,transform .3s ease}.toast--error{background:#b8283c}.toast.is-visible{opacity:1;transform:none}@keyframes spin{to{transform:rotate(360deg)}}@keyframes logo-bob{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-5px) rotate(-1deg)}}@keyframes bob{0%,to{translate:0 0}50%{translate:0 -8%}}@keyframes shadow-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.82);opacity:.7}}@keyframes swap{0%{transform:scale(.82)}to{transform:scale(1)}}@keyframes swap-flipped{0%{transform:scale(-.82,.82)}to{transform:scaleX(-1)}}@keyframes squish-flipped{0%{transform:scaleX(-1)}25%{transform:scale(-1.18,.8)}55%{transform:scale(-.9,1.12)}to{transform:scaleX(-1)}}@keyframes bump{0%{transform:scale(1)}40%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes pulse{0%,to{scale:1}50%{scale:1.06}}@keyframes star-pop{0%{transform:scale(0) rotate(-40deg)}to{transform:scale(1) rotate(0)}}@keyframes star-pop-mid{0%{transform:translateY(-10px) scale(0) rotate(-40deg)}to{transform:translateY(-10px) scale(1) rotate(0)}}@keyframes aim-drag{0%,15%{transform:translate(40px,-10px);opacity:0}25%{transform:translate(40px,-10px);opacity:1}70%{transform:translate(-30px,40px);opacity:1}85%,to{transform:translate(-30px,40px);opacity:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.wait-spinner{animation:wait-pulse 1.4s ease-in-out infinite!important}}
