@font-face{font-family:Bangers;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/bangers-vietnamese-400-normal-BbvBhFjQ.woff2) format("woff2"),url(/assets/bangers-vietnamese-400-normal-Ll9rymNv.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bangers;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/bangers-latin-ext-400-normal-7BLmjjiv.woff2) format("woff2"),url(/assets/bangers-latin-ext-400-normal-CzVt_Cgx.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:Bangers;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/bangers-latin-400-normal-DeHY8Ncq.woff2) format("woff2"),url(/assets/bangers-latin-400-normal-BAEm-Pv0.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}:root{--ink: #1d1b2e;--sand: #d9c9a3;--paper: #fff8e6;--asphalt: #8e8d89;--orange: #f08a2c;--yellow: #f5c518;--teal: #3fa7a0;--blue: #2f7bd1;--red: #d8362f;--green: #4caf50}*{box-sizing:border-box}*{touch-action:manipulation}button,.btn,.seg-btn,.swatch,.tile{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;font-family:Trebuchet MS,Segoe UI,system-ui,sans-serif;color:var(--ink);background:var(--asphalt);overflow:hidden}#game{position:fixed;top:0;right:0;bottom:0;left:0}#game canvas{display:block}#app{position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto}#app.in-game{pointer-events:none;overflow:hidden}.backdrop{min-height:100%;display:flex;flex-direction:column;align-items:center;padding:24px 16px 40px;background:repeating-linear-gradient(90deg,transparent 0 120px,rgba(29,27,46,.08) 120px 122px),linear-gradient(180deg,var(--sand) 0 22%,#6f6e6a 22% 24%,var(--asphalt) 24% 100%)}.hazard{height:22px;width:100%;max-width:760px;border:3px solid var(--ink);border-radius:8px;background:repeating-linear-gradient(-45deg,var(--yellow) 0 18px,var(--ink) 18px 36px);margin:6px 0 18px}.logo{width:min(100%,480px);margin:0 0 -10px;line-height:0;animation:logo-pop .5s cubic-bezier(.2,1.6,.4,1) both}.logo svg{display:block;width:100%;height:auto}@keyframes logo-pop{0%{transform:scale(.6) rotate(-6deg);opacity:0}}@media(prefers-reduced-motion:reduce){.logo{animation:none}}.tag{font-weight:800;margin:6px 0 18px;text-align:center;background:var(--paper);border:3px solid var(--ink);border-radius:999px;padding:6px 18px;box-shadow:0 3px 0 var(--ink);max-width:92%}.card{background:var(--paper);border:4px solid var(--ink);border-radius:20px;box-shadow:0 8px 0 var(--ink);padding:22px;width:100%;max-width:520px}.card.wide{max-width:760px}.card h2{margin:0 0 12px;font-size:26px}.card h3{margin:18px 0 8px}.muted{color:#5c5a6b;font-size:14px}label{display:block;font-weight:800;margin:14px 0 6px}input,select{width:100%;font:inherit;padding:12px 14px;border:3px solid var(--ink);border-radius:12px;background:#fff}input:focus,select:focus,button:focus-visible,a:focus-visible{outline:4px solid var(--blue);outline-offset:2px}.check{display:flex;gap:10px;align-items:flex-start;font-weight:600;margin:14px 0}.check input{width:22px;height:22px;margin-top:2px;flex:none}.btn{font:inherit;font-weight:900;font-size:18px;cursor:pointer;padding:12px 22px;border:3px solid var(--ink);border-radius:14px;background:var(--yellow);color:var(--ink);box-shadow:0 5px 0 var(--ink);transition:transform .06s,box-shadow .06s;text-decoration:none;display:inline-block;text-align:center}.btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 7px 0 var(--ink)}.btn:active:not(:disabled){transform:translateY(4px);box-shadow:0 1px 0 var(--ink)}.btn.blue{background:var(--blue);color:#fff}.btn.red{background:var(--red);color:#fff}.btn.orange{background:var(--orange)}.btn.teal{background:var(--teal);color:#fff}.btn.ghost{background:#fff}.btn.small{font-size:14px;padding:6px 12px;box-shadow:0 3px 0 var(--ink)}.btn:disabled{background:#bdb9a8;color:#6d6a5f;cursor:not-allowed;box-shadow:0 2px 0 var(--ink)}.btn.block{display:block;width:100%;margin-top:18px}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.row>input{flex:1 1 220px;width:auto}.menu{display:grid;gap:14px;margin-top:8px}.topbar{width:100%;max-width:760px;display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}.pill{display:inline-block;background:#fff;border:3px solid var(--ink);border-radius:999px;padding:4px 14px;font-weight:800}.slots{display:flex;gap:10px;margin:8px 0 4px}.slot{width:48px;height:48px;border:3px solid var(--ink);border-radius:12px;display:grid;place-items:center;font-size:22px;font-weight:900;background:#fff}.slot.free{background:var(--green);color:#fff}.slot.used{background:#bdb9a8}.big-msg{font-size:22px;font-weight:900}table{width:100%;border-collapse:collapse;margin-top:8px}th,td{text-align:left;padding:8px 6px;border-bottom:2px dashed rgba(29,27,46,.25);font-size:15px;vertical-align:middle}.badge{display:inline-block;padding:2px 10px;border:2px solid var(--ink);border-radius:999px;font-weight:800;font-size:13px;background:#fff}.badge.pending{background:var(--yellow)}.badge.accepted{background:var(--green);color:#fff}.badge.expired{background:#bdb9a8}.badge.revoked,.badge.suspended{background:var(--red);color:#fff}.badge.active{background:var(--green);color:#fff}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.tabs .btn{font-size:15px;padding:8px 14px}.tabs .btn.on{background:var(--orange)}.tree ul{list-style:none;margin:0;padding-left:22px;border-left:3px dotted var(--ink)}.tree>ul{border:0;padding:0}.tree li{margin:6px 0}.kv{display:grid;grid-template-columns:140px 1fr;gap:8px}.kv b{font-weight:800}.err-text{color:var(--red);font-weight:800;margin-top:10px}.legal{font-size:14px;line-height:1.5}.legal h3{margin-top:16px}#toasts{position:fixed;top:14px;left:50%;transform:translate(-50%);z-index:50;display:grid;gap:10px;width:min(92vw,460px);pointer-events:none}.toast{pointer-events:auto;padding:12px 16px;border:3px solid var(--ink);border-radius:14px;background:var(--paper);box-shadow:0 5px 0 var(--ink);font-weight:800;animation:pop .25s ease-out;display:flex;gap:10px;align-items:center;justify-content:space-between}.toast.ok{background:#c9f0cf}.toast.err{background:#ffd0cc}@keyframes pop{0%{transform:translateY(-14px) scale(.9);opacity:0}}#hud{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:10;font-weight:900}#hud .tl{position:absolute;top:12px;left:12px;display:grid;gap:8px}#hud .tr{position:absolute;top:12px;right:12px;text-align:right}#hud .bl{position:absolute;bottom:12px;left:12px}#hud .center{position:absolute;top:30%;left:0;right:0;text-align:center;font-size:clamp(34px,8vw,90px);color:#fff;text-shadow:3px 3px 0 var(--ink),-3px -3px 0 var(--ink),3px -3px 0 var(--ink),-3px 3px 0 var(--ink)}#hud .hudbox{background:var(--paper);border:3px solid var(--ink);border-radius:14px;box-shadow:0 4px 0 var(--ink);padding:8px 12px;display:inline-block}#hud .hpbar{width:220px;height:22px;border:3px solid var(--ink);border-radius:999px;background:#fff;overflow:hidden}#hud .hpbar i{display:block;height:100%;background:var(--red);transition:width .15s}#hud .pointer{pointer-events:auto}#hud .invite{pointer-events:auto;position:absolute;bottom:70px;left:50%;transform:translate(-50%)}#hud .board div{display:flex;justify-content:space-between;gap:18px;font-size:14px}.legend{color:#b8860b}@media(max-width:560px){.kv{grid-template-columns:1fr}.card{padding:16px}}#hud .bc{position:absolute;bottom:12px;right:12px;text-align:center}#hud .minimap{display:block;border:4px solid var(--ink);border-radius:12px;box-shadow:0 5px 0 var(--ink);background:#cfc3a1;image-rendering:pixelated}#hud .mini-info{margin-top:6px;font-size:12px;background:var(--paper);border:2px solid var(--ink);border-radius:999px;padding:2px 10px;display:inline-block}#hud .hpbar.super{height:12px;margin-top:4px}#hud .help{font-size:12px;font-weight:700;line-height:1.5}#hud .banner{position:absolute;top:18%;left:0;right:0;text-align:center}#hud .banner .hudbox{background:var(--yellow);font-size:18px;animation:pop .3s ease-out}@media(max-width:900px){#hud .bl{display:none}}.skins{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:10px}.skin{border:3px solid var(--ink);border-radius:16px;padding:10px;background:#fff;text-align:center;box-shadow:0 4px 0 var(--ink)}.skin.locked{filter:grayscale(1);opacity:.6}.skin.on{background:#fff1b8}.skin .ava{width:58px;height:58px;border-radius:50%;border:3px solid var(--ink);margin:0 auto 6px;position:relative}.skin .ava:after{content:"";position:absolute;left:8px;right:8px;top:30px;height:16px;background:#f2c9a0;border-radius:0 0 20px 20px}.skin b{display:block}.skin small{display:block;color:#5c5a6b;margin:4px 0 8px;min-height:48px}@media(max-width:700px){#hud .tr{top:auto;bottom:12px}#hud .tr .board{display:none}#hud .bc{left:12px;right:auto}#hud .minimap{width:150px;height:auto}#hud .hpbar{width:150px}#hud .tl .hudbox{max-width:190px;font-size:13px}}.score-box{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.score{flex:1 1 140px;display:grid;justify-items:center;background:#fff;border:3px solid var(--ink);border-radius:16px;padding:10px;box-shadow:0 4px 0 var(--ink)}.score strong{font-size:40px;line-height:1.1}.trophies{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:10px}.trophy{position:relative;display:grid;justify-items:center;gap:4px;text-align:center;background:#fff;border:3px solid var(--ink);border-radius:16px;padding:12px 10px;box-shadow:0 4px 0 var(--ink)}.trophy .ico{font-size:42px;line-height:1}.trophy .times{position:absolute;top:8px;right:8px;background:var(--yellow);border:2px solid var(--ink);border-radius:999px;padding:0 8px;font-weight:900}.mini-ava{display:inline-block;width:22px;height:22px;border:2px solid var(--ink);border-radius:50%;vertical-align:middle;flex:none}.ava{display:inline-block}table.board tr.me{background:#fff1b8;font-weight:800}.chat{display:grid;grid-template-columns:220px 1fr;gap:12px;margin-top:12px;min-height:380px}.convs{display:grid;align-content:start;gap:6px;max-height:460px;overflow:auto}.conv{display:flex;gap:8px;align-items:center;padding:8px;border:3px solid var(--ink);border-radius:12px;background:#fff;color:inherit;text-decoration:none}.conv.on{background:var(--yellow)}.conv .who{display:grid;min-width:0;flex:1}.conv small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#5c5a6b}.thread{display:flex;flex-direction:column;border:3px solid var(--ink);border-radius:14px;background:#fff;padding:10px;min-width:0}.thread-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding-bottom:8px;border-bottom:2px dashed var(--ink)}.msgs{flex:1;overflow:auto;display:flex;flex-direction:column;gap:6px;padding:10px 2px;max-height:360px;min-height:200px}.msg{align-self:flex-start;max-width:80%;background:var(--paper);border:2px solid var(--ink);border-radius:14px 14px 14px 4px;padding:6px 10px;display:grid;overflow-wrap:anywhere}.msg.mine{align-self:flex-end;background:#d5ecff;border-radius:14px 14px 4px}.msg small{color:#5c5a6b;font-size:11px;display:flex;gap:6px;align-items:center}.composer input{flex:1 1 160px}.results{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.linkish{background:none;border:0;padding:0;font:inherit;cursor:pointer;color:var(--blue);text-decoration:underline}.linkish.strong{font-weight:800}@media(max-width:620px){.chat{grid-template-columns:1fr}.convs{max-height:180px}}.pill.god{background:var(--ink);color:var(--yellow)}.admin .scroll{overflow-x:auto}.admin td.actions{white-space:nowrap}.admin td.actions .btn{margin:2px}.admin td.body{max-width:320px;overflow-wrap:anywhere}.admin tr.flagged{background:#ffd9d6}.admin .row{margin:8px 0}.admin .row select,.admin .row input{flex:1 1 140px;width:auto}.detail-head{display:flex;gap:14px;align-items:center;margin:12px 0}.detail-head .ava{width:56px;height:56px;border:3px solid var(--ink);border-radius:50%}.detail-head h3{margin:0}.edit-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;align-items:end}.edit-grid label{margin:0}.admin details{margin-top:12px}.admin summary{cursor:pointer;font-weight:800}.card.wide.admin{max-width:1000px}.admin .skin.locked{filter:none;opacity:1}.admin .skin.locked .ava,.admin .skin.locked b{filter:grayscale(1);opacity:.5}#hud .prompt{position:absolute;bottom:230px;left:50%;transform:translate(-50%);background:var(--yellow);border:3px solid var(--ink);border-radius:999px;padding:6px 16px;box-shadow:0 4px 0 var(--ink);font-size:16px;white-space:nowrap}#hud .prompt[hidden]{display:none}#hud .bonus{background:#fff1b8;border:3px solid var(--ink);border-radius:12px;padding:4px 10px;font-size:13px;animation:pop .3s ease-out}#hud .bossbar{position:absolute;top:14px;left:50%;transform:translate(-50%);text-align:center;background:#2b2733;color:#ff6b5a;border:3px solid var(--ink);border-radius:14px;padding:6px 12px;box-shadow:0 4px 0 var(--ink)}#hud .bossbar .hpbar{width:300px;margin-top:4px}#hud .bossbar .hpbar i{background:#ff3b3b}#hud .vignette{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:0;transition:opacity .4s;background:radial-gradient(ellipse at center,transparent 45%,rgba(10,8,20,.75) 100%);z-index:-1}#hud.dark .vignette{opacity:1}@media(max-width:700px){#hud .bossbar .hpbar{width:160px}#hud .prompt{bottom:200px;font-size:13px}}.player-bar{width:100%;max-width:760px;display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 14px}.player-chip{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);background:var(--paper);border:3px solid var(--ink);border-radius:16px;padding:6px 14px;box-shadow:0 3px 0 var(--ink);min-width:0}.player-chip:hover{transform:translateY(-1px)}.chip-name{font-weight:900;font-size:18px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip-stats{font-size:13px;font-weight:700;color:#5c5a6b}.menu-grid{width:100%;max-width:760px;display:grid;gap:16px;grid-template-columns:1fr 1fr;grid-template-areas:"online online" "duel practice"}.menu-grid>.primary{grid-area:online}.menu-card{background:var(--paper);border:4px solid var(--ink);border-radius:20px;box-shadow:0 6px 0 var(--ink);padding:18px;display:flex;flex-direction:column;gap:12px;min-width:0}.menu-card.primary{background:linear-gradient(135deg,#fff1b8,var(--paper) 60%)}.menu-head{display:flex;gap:12px;align-items:flex-start}.menu-head h2{margin:0;font-size:22px}.menu-head p{margin:2px 0 0}.menu-ico{font-size:30px;line-height:1;flex:none;width:48px;height:48px;display:grid;place-items:center;background:#fff;border:3px solid var(--ink);border-radius:14px}.btn.big{font-size:22px;padding:16px 22px}.btn.block{display:block;width:100%;margin-top:auto}.duel-grid{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}.duel-opt{display:flex;flex-direction:column;gap:6px;background:#fff;border:2px dashed rgba(29,27,46,.3);border-radius:14px;padding:10px 12px}.duel-opt p{margin:0}.code-row{display:flex;gap:8px}.code-row .code-input{flex:1;min-width:0;width:100%;text-transform:uppercase;letter-spacing:4px;font-weight:900;text-align:center}.field{display:grid;gap:6px}.field[hidden]{display:none}.field-label{font-weight:800;font-size:14px}.seg{display:flex;flex-wrap:wrap;gap:6px}.seg-btn{flex:1 1 0;min-width:44px;white-space:nowrap;min-height:44px;font:inherit;font-weight:800;cursor:pointer;padding:8px 10px;border:3px solid var(--ink);border-radius:12px;background:#fff;color:var(--ink);box-shadow:0 3px 0 var(--ink)}.seg-btn.on{background:var(--yellow)}.seg.cities .seg-btn{white-space:normal;line-height:1.15}.seg-btn:active{transform:translateY(2px);box-shadow:0 1px 0 var(--ink)}.tiles{width:100%;max-width:760px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}.tile{position:relative;display:flex;align-items:center;gap:10px;min-height:56px;padding:10px 14px;text-decoration:none;color:var(--ink);font-weight:900;background:var(--paper);border:3px solid var(--ink);border-radius:16px;box-shadow:0 4px 0 var(--ink);transition:transform .06s,box-shadow .06s}.tile:hover{transform:translateY(-2px);box-shadow:0 6px 0 var(--ink)}.tile:active{transform:translateY(3px);box-shadow:0 1px 0 var(--ink)}.tile-ico{font-size:24px}.tile-badge{position:absolute;top:-8px;right:-8px}.tile-badge[hidden]{display:none}@media(max-width:640px){.menu-grid{grid-template-columns:1fr;grid-template-areas:"online" "duel" "practice"}.tiles{grid-template-columns:1fr 1fr}.menu-head h2{font-size:20px}.menu-ico{width:42px;height:42px;font-size:24px}.seg-btn{padding:8px 4px;font-size:15px}.menu-card{padding:14px}}.characters{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;--gap: 10px;--free-r: 0px;--free-b: 0px;padding:max(var(--gap),env(safe-area-inset-top)) max(var(--gap),env(safe-area-inset-right)) max(var(--gap),env(safe-area-inset-bottom)) max(var(--gap),env(safe-area-inset-left))}.stage-box{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;touch-action:none;cursor:grab;background:radial-gradient(ellipse 60% 40% at 50% 78%,rgba(29,27,46,.16),transparent 70%),radial-gradient(circle at 50% 35%,#fffdf4 0,var(--paper) 35%,#eadbb5 75%,var(--sand) 100%)}.stage-box:active{cursor:grabbing}.stage-box canvas{display:block;width:100%!important;height:100%!important}.stage-status{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;text-align:center;padding:16px;font-weight:800;color:#5c5a6b}.cc-top{position:relative;z-index:2;display:flex;align-items:center;gap:8px;pointer-events:none}.cc-top>*{pointer-events:auto}.cc-chars{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;min-width:0;padding:2px 2px 6px}.cc-chars::-webkit-scrollbar{display:none}.cc-char{flex:none;font:inherit;font-weight:900;font-size:15px;min-height:40px;padding:6px 14px;cursor:pointer;white-space:nowrap;border:3px solid var(--ink);border-radius:999px;background:var(--paper);color:var(--ink);box-shadow:0 3px 0 var(--ink)}.cc-char.on{background:var(--yellow)}.cc-char:active{transform:translateY(2px);box-shadow:0 1px 0 var(--ink)}.cc-tools{position:absolute;z-index:2;left:max(var(--gap),env(safe-area-inset-left));bottom:calc(var(--free-b) + var(--gap));max-width:calc(100% - var(--free-r) - 2 * var(--gap));display:flex;align-items:center;gap:8px;flex-wrap:wrap;pointer-events:none}.cc-tools>*{pointer-events:auto}.cc-tools .btn.small{min-height:44px;min-width:44px;font-size:20px;padding:4px 10px}.characters .cc-view{flex-wrap:nowrap}.cc-view .seg-btn{flex:none;padding:6px 12px}.cc-hint{pointer-events:none!important;font-size:13px;font-weight:800;color:#5c5a6b;background:#fff8e6bf;border-radius:999px;padding:4px 10px}.cc-panel{position:absolute;z-index:3;display:flex;flex-direction:column;background:var(--paper);border:4px solid var(--ink);border-radius:20px;box-shadow:0 6px 0 var(--ink);overflow:hidden;top:calc(max(var(--gap),env(safe-area-inset-top)) + 54px);right:max(var(--gap),env(safe-area-inset-right));bottom:max(var(--gap),env(safe-area-inset-bottom));width:clamp(300px,34vw,400px)}.cc-panel.closed{bottom:auto}.cc-panel.closed .cc-body,.cc-panel.closed .cc-foot{display:none}.cc-tabs{display:flex;gap:4px;padding:6px;border-bottom:3px solid var(--ink);background:#fff1c9;flex:none}.cc-tab{flex:1 1 0;min-width:0;min-height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;cursor:pointer;font:inherit;font-size:12px;font-weight:900;color:var(--ink);background:transparent;border:3px solid transparent;border-radius:12px;padding:2px}.cc-tab .cc-ico{font-size:20px;line-height:1}.cc-tab.on{background:var(--yellow);border-color:var(--ink);box-shadow:0 3px 0 var(--ink)}.cc-collapse{flex:none;width:40px;font:inherit;font-size:20px;font-weight:900;cursor:pointer;border:3px solid var(--ink);border-radius:12px;background:#fff;color:var(--ink)}.cc-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:14px}.cc-pane{display:grid;gap:14px}.cc-pane[hidden]{display:none}.cc-pane p{margin:0}.cc-foot{flex:none;display:grid;gap:6px;padding:10px 14px 14px;border-top:3px dashed rgba(29,27,46,.25)}.cc-foot .btn.block{margin-top:0;font-size:16px}.cc-foot .save-state:empty{display:none}.characters .seg-btn{flex:1 1 auto;white-space:normal;line-height:1.15}.char-info{display:grid;gap:8px}.char-info p{margin:0}.char-info .row{gap:8px}.char-info .stats{display:flex;gap:6px;flex-wrap:wrap}.char-name{font-size:24px;font-family:Bangers,Trebuchet MS,sans-serif;letter-spacing:1px;font-weight:400}.rot-label{display:flex;align-items:center;gap:8px;font-weight:800;margin:0}.rot-label input{width:160px;padding:0}.pill.small{font-size:13px;padding:2px 10px;justify-self:start}.anim-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:6px}.anim-grid .btn{font-size:14px}.gadget-list{display:grid;gap:8px}.gadget-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;border:3px solid var(--ink);border-radius:12px;background:#fff;flex-wrap:wrap}.gadget-row.on{background:#e9fbf8}.gadget-txt{display:grid;gap:2px;min-width:0}.gadget-btns{flex-wrap:nowrap}.look{display:grid;gap:14px}.look-parts{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.look-part{display:flex;align-items:center;gap:6px;min-height:44px;padding:6px 8px;font:inherit;font-size:14px;font-weight:800;cursor:pointer;text-align:left;border:3px solid var(--ink);border-radius:12px;background:#fff;color:var(--ink);box-shadow:0 3px 0 var(--ink);min-width:0}.look-part.on{background:var(--yellow)}.look-part .dot{flex:none;width:18px;height:18px;border-radius:50%;border:2px solid var(--ink);font-style:normal;display:grid;place-items:center;font-size:12px}.look-part .dot.ico{border:0}.swatches{display:flex;flex-wrap:wrap;gap:10px}.swatch{width:46px;height:46px;border-radius:50%;border:3px solid var(--ink);cursor:pointer;box-shadow:0 3px 0 var(--ink);padding:0}.swatch.on{outline:4px solid var(--yellow);outline-offset:2px;transform:scale(1.06)}.small{font-size:13px}@media(max-aspect-ratio:1/1){.cc-panel{top:auto;left:max(var(--gap),env(safe-area-inset-left));width:auto;height:min(46%,440px)}.cc-panel.closed{height:auto;bottom:max(var(--gap),env(safe-area-inset-bottom))}.cc-hint{display:none}}@media(min-aspect-ratio:1/1)and (max-height:480px){.cc-panel{top:max(var(--gap),env(safe-area-inset-top));width:clamp(280px,40vw,360px)}.cc-top{margin-right:calc(clamp(280px,40vw,360px) + var(--gap))}.cc-tab{min-height:40px;flex-direction:row;gap:4px}.cc-tab .cc-ico{font-size:16px}.cc-hint{display:none}}@media(max-width:420px){.look-parts{grid-template-columns:repeat(2,1fr)}.cc-char{font-size:14px;padding:6px 11px}}.wallet-box{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;background:#fff;border:3px solid var(--ink);border-radius:14px;box-shadow:0 3px 0 var(--ink);padding:8px 12px;font-weight:900}.wallet-box .wallet-lives,.wallet-box .wallet-gems{font-size:20px}.wallet-box .muted{font-size:14px}.wallet-box .btn{margin-left:auto}.wallet-box .btn:disabled{opacity:.5;cursor:not-allowed}#hud .hp{pointer-events:none}#hud .hp>.ph{pointer-events:auto}#hud .hp.moved{position:fixed}#hud .hp.min>:not(.ph){display:none!important}#hud .hp.dragging{opacity:.85}#hud .ph{display:flex;align-items:center;gap:4px;justify-content:flex-start;margin-bottom:4px;width:max-content;max-width:100%;background:var(--paper);border:2px solid var(--ink);border-radius:999px;box-shadow:0 2px 0 var(--ink);padding:1px 2px 1px 8px;font-size:12px}#hud .tr:not(.moved) .ph,#hud .bc:not(.moved) .ph{margin-left:auto}#hud .bc:not(.moved) .ph{margin-right:auto}#hud .ph-grip{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;white-space:nowrap;padding:2px 0}#hud .dragging .ph-grip{cursor:grabbing}#hud .ph-btn{font:inherit;font-weight:900;width:24px;height:24px;padding:0;border:2px solid var(--ink);border-radius:50%;background:var(--yellow);color:var(--ink);cursor:pointer;line-height:1}#hud .ph-reset{display:none;background:#fff}#hud .hp.moved .ph-reset{display:inline-block}#hud .hp.min .ph{margin-bottom:0}#game,#hud{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}#hud input,#hud textarea{-webkit-user-select:text;user-select:text;touch-action:manipulation}.touch-layer{display:none;position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none}#hud.touch .touch-layer{display:block}.tc-zone{position:absolute;left:0;bottom:0;width:45%;height:60%;pointer-events:auto;touch-action:none}.tc-stick{position:absolute;width:150px;height:150px;border-radius:50%;display:grid;place-items:center;touch-action:none;background:#fff8e638;border:4px solid rgba(29,27,46,.55);box-shadow:inset 0 0 0 3px #ffffff40}.tc-stick i{width:64px;height:64px;border-radius:50%;background:#f5c518cc;border:4px solid var(--ink);box-shadow:0 4px 0 var(--ink);pointer-events:none}.tc-stick.on{background:#fff8e661}.tc-stick.move{position:fixed;left:calc(36px + env(safe-area-inset-left));bottom:calc(36px + env(safe-area-inset-bottom))}.tc-stick.move.on{transform:translate(-50%,-50%);bottom:auto}.tc-stick.aim{right:20px;bottom:20px;pointer-events:auto}.tc-stick.aim i{background:#d8362fd9}.tc-right{position:absolute;right:calc(12px + env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom));width:330px;height:260px;pointer-events:none}.tc-btn{position:absolute;width:64px;height:64px;border-radius:50%;border:4px solid var(--ink);box-shadow:0 4px 0 var(--ink);background:#fff8e6e6;font:inherit;font-size:26px;font-weight:900;color:var(--ink);pointer-events:auto;touch-action:none;padding:0}.tc-btn.on{transform:translateY(3px);box-shadow:0 1px 0 var(--ink);filter:brightness(.9)}.tc-btn.dodge{right:188px;bottom:63px;background:#bfe6ffeb}.tc-btn.spin{right:171px;bottom:125px}.tc-btn.thr{right:125px;bottom:171px}.tc-btn.sup{right:59px;bottom:184px;width:72px;height:72px;background:var(--yellow);font-size:30px}.tc-btn.pickup{right:262px;bottom:120px;width:58px;height:58px;background:var(--teal);color:#fff;font-size:24px}#hud.touch .tl{top:calc(10px + env(safe-area-inset-top));left:calc(10px + env(safe-area-inset-left))}#hud.touch .tr{top:calc(10px + env(safe-area-inset-top));bottom:auto;right:calc(10px + env(safe-area-inset-right))}#hud.touch .bc{top:calc(10px + env(safe-area-inset-top));bottom:auto;left:50%;right:auto;transform:translate(-50%)}#hud.touch .bc .minimap{width:170px;height:auto}#hud.touch .bl{display:none}#hud.touch .bossbar{top:auto;bottom:calc(14px + env(safe-area-inset-bottom))}#hud.touch .prompt{bottom:calc(190px + env(safe-area-inset-bottom))}#hud.touch .hpbar{width:170px}#hud.touch .tl .hudbox{font-size:13px}#hud.touch .btn.small{min-height:44px;padding:8px 14px}#hud.touch .ph-btn{width:32px;height:32px}#hud.touch .ph{font-size:14px;padding:2px 3px 2px 10px}#hud.touch .ph-grip{padding:6px 0}@media(max-width:820px){#hud.touch .tl .hudbox{max-width:200px}#hud.touch .tr .board{display:none}#hud.touch .bc{top:auto;bottom:calc(300px + env(safe-area-inset-bottom));left:auto;right:calc(10px + env(safe-area-inset-right));transform:none}#hud.touch .bc .minimap{width:140px}}@media(max-height:520px){.tc-stick{width:120px;height:120px}.tc-right{transform:scale(.82);transform-origin:bottom right}#hud.touch .bc{display:none}}@media(pointer:coarse){.btn.small,.tabs .btn{min-height:44px}}#hud .wallet{display:flex;align-items:center;gap:10px;margin-top:6px;padding-top:6px;border-top:2px dashed rgba(29,27,46,.25);font-size:16px}#hud .wallet .btn.small{margin-left:auto;padding:3px 8px;font-size:12px}#hud .wallet .btn:disabled,#hud .ko-pane .btn:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.6)}#hud .gem-flash{justify-self:start;background:#c9f7fa;border:3px solid var(--ink);border-radius:999px;box-shadow:0 3px 0 var(--ink);padding:2px 12px;font-size:16px}#hud .gem-flash.go{animation:pop .25s ease-out}#hud .ko-pane{position:absolute;top:22%;left:0;right:0;display:flex;justify-content:center;padding:0 12px}#hud .ko-pane .hudbox{display:grid;gap:10px;justify-items:center;text-align:center;font-size:17px;max-width:360px;padding:16px 20px}#hud .ko-title{font-size:30px;color:var(--red)}#hud .ko-pane b{font-size:22px}#hud .help div{white-space:nowrap}#hud .help{line-height:1.6}#hud [hidden]{display:none!important}
