:root{--clay: #ff8a5c;--clay-dark: #d9603a;--clay-light: #ffb899;--bg: #1b1426;--panel: #2a2138;--panel-2: #352b47;--panel-3: #41365a;--text: #fff4ea;--muted: #b9a9c9;--good: #7ed957;--bad: #ff5c7a;--gold: #ffd447;--blue: #5ec8ff;--radius: 18px;--shadow: 0 12px 40px rgba(0, 0, 0, .45), 0 2px 0 rgba(255, 255, 255, .06) inset;--font: "Nunito", "Segoe UI", system-ui, -apple-system, sans-serif;--sat: env(safe-area-inset-top, 0px);--sar: env(safe-area-inset-right, 0px);--sab: env(safe-area-inset-bottom, 0px);--sal: env(safe-area-inset-left, 0px);--tbtn: 64px}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;overflow:hidden;background:var(--bg);color:var(--text);font-family:var(--font);overscroll-behavior:none;-webkit-text-size-adjust:100%}body{touch-action:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}button,input,select{font-family:inherit}canvas#game{position:fixed;inset:0;width:100%;height:100%;display:block;outline:none;touch-action:none}#ui{position:fixed;inset:0;pointer-events:none;z-index:10;overflow:hidden;touch-action:none}#ui>*{pointer-events:auto}#ui>.hud-top,#ui>.toasts,#ui>.fps,#ui>.tpad,#ui>.tut,#ui>.rotate-hint{pointer-events:none}#ui>.tut .btn,#ui>.rotate-hint .btn{pointer-events:auto}#ui button,.btn,.tab,.lv,.switch{touch-action:manipulation}.hidden{display:none!important}body:not(.compact) .only-compact{display:none!important}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border:0;border-radius:14px;cursor:pointer;font-weight:800;font-size:15px;color:#fff;letter-spacing:.2px;background:linear-gradient(180deg,var(--clay) 0%,var(--clay-dark) 100%);box-shadow:0 4px #9f3f22,0 8px 18px #00000059,inset 0 1px #ffffff59;transition:transform .08s ease,filter .15s ease,box-shadow .08s ease;user-select:none;white-space:nowrap}.btn:hover{filter:brightness(1.08);transform:translateY(-1px)}.btn:active{transform:translateY(3px);box-shadow:0 1px #9f3f22,0 4px 10px #00000059}.btn.secondary{background:linear-gradient(180deg,#5a4b78,#3f3358);box-shadow:0 4px #241b33,0 8px 18px #00000059,inset 0 1px #fff3}.btn.secondary:active{box-shadow:0 1px #241b33,0 4px 10px #00000059}.btn.good{background:linear-gradient(180deg,#8ee55f,#4faa2d);box-shadow:0 4px #2f6d19,0 8px 18px #00000059,inset 0 1px #ffffff59}.btn.gold{background:linear-gradient(180deg,#ffe066,#e0a81e);color:#3a2a00;box-shadow:0 4px #9a6f0b,0 8px 18px #00000059,inset 0 1px #ffffff80}.btn.small{padding:6px 12px;font-size:13px;border-radius:10px}.btn.icon{padding:10px 12px;font-size:18px}.btn:disabled,.btn.disabled{filter:grayscale(.7) brightness(.7);cursor:not-allowed;transform:none}.btn.ghost{background:#ffffff14;box-shadow:none}.btn.ghost:active{transform:translateY(1px)}.btn .ic{display:inline-block}.hud-top{position:absolute;top:12px;left:12px;right:12px;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;pointer-events:none}.hud-top>*{pointer-events:auto}.res-chips{display:flex;gap:8px;flex-wrap:wrap}.chip{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:#1b1426c7;backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);font-weight:800;font-size:15px;box-shadow:0 6px 18px #0000004d}.chip .ic{font-size:18px}.chip.energy{min-width:200px;flex-direction:column;align-items:stretch;gap:4px;padding:8px 14px}.chip.energy .row{display:flex;justify-content:space-between;font-size:13px}.chip.gold-chip{color:var(--gold)}.chip.event{color:var(--gold);border-color:#ffd44780;animation:pulse 1.4s ease-in-out infinite}@keyframes pulse{0%,to{box-shadow:0 0 #ffd44700}50%{box-shadow:0 0 18px #ffd44773}}.hud-top.column{flex-direction:column;align-items:stretch;right:auto;width:268px;gap:8px}.hud-top.column .res-chips{gap:6px}.hud-top.column .chip{padding:6px 10px;font-size:13px}.hud-top.column .stat-panel{min-width:0}.hud-top.column .mini-panel{position:static;width:auto}.hud-bottom.shifted{left:280px;max-width:calc(100vw - 300px);gap:8px;padding:8px}.hud-bottom.shifted .btn{padding:9px 13px;font-size:14px}.stat-panel{display:flex;flex-direction:column;gap:6px;padding:10px 14px;border-radius:16px;background:#1b1426c7;backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);min-width:230px;box-shadow:0 6px 18px #0000004d}.stat-row{display:grid;grid-template-columns:24px 1fr auto;gap:8px;align-items:center;font-size:13px;font-weight:800}.stat-row .bar{grid-column:1 / -1}.bar{position:relative;height:10px;border-radius:999px;background:#00000073;overflow:hidden;box-shadow:inset 0 1px 3px #0009}.bar>i{position:absolute;left:0;top:0;bottom:0;width:0%;border-radius:999px;background:var(--clay);transition:width .15s linear}.bar>i:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#ffffff59,#fff0 60%)}.bar.big{height:16px}.bar>span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:900;text-shadow:0 1px 2px #000}.hud-bottom{position:absolute;bottom:14px;left:0;right:0;margin-inline:auto;width:max-content;display:flex;gap:10px;padding:10px;border-radius:20px;flex-wrap:wrap;justify-content:center;max-width:96vw;background:#1b1426c7;backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);box-shadow:0 10px 30px #00000059}.hud-bottom .btn{position:relative}.badge{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;border-radius:10px;background:var(--bad);color:#fff;font-size:11px;display:flex;align-items:center;justify-content:center;padding:0 5px;box-shadow:0 2px 6px #00000080}.hud-corner{position:absolute;right:12px;bottom:14px;display:flex;gap:8px}.fps{position:absolute;left:12px;bottom:14px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.toasts{position:absolute;top:90px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}.toast{padding:10px 18px;border-radius:14px;font-weight:800;font-size:14px;max-width:520px;text-align:center;background:#1b1426eb;border:1px solid rgba(255,255,255,.15);box-shadow:0 10px 30px #0006;animation:toastIn .25s ease-out}.toast.good{border-color:var(--good);color:var(--good)}.toast.bad{border-color:var(--bad);color:var(--bad)}.toast.gold{border-color:var(--gold);color:var(--gold)}.toast.out{animation:toastOut .3s ease-in forwards}@keyframes toastIn{0%{opacity:0;transform:translateY(-12px) scale(.95)}to{opacity:1;transform:none}}@keyframes toastOut{to{opacity:0;transform:translateY(-8px)}}.backdrop{position:absolute;inset:0;background:#0a061299;backdrop-filter:blur(3px);animation:fadeIn .15s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.panel{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(920px,94vw);max-height:88vh;display:flex;flex-direction:column;background:var(--panel);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.08);animation:panelIn .22s cubic-bezier(.2,1.4,.4,1)}@keyframes panelIn{0%{opacity:0;transform:translate(-50%,-46%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.panel.narrow{width:min(560px,94vw)}.panel-head{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.08)}.panel-head h2{margin:0;font-size:22px;flex:1}.panel-head .sub{color:var(--muted);font-size:13px;font-weight:600}.panel-body{padding:16px 20px;overflow-y:auto;flex:1;touch-action:pan-y;-webkit-overflow-scrolling:touch}.panel-foot{padding:12px 20px;border-top:1px solid rgba(255,255,255,.08);display:flex;gap:10px;justify-content:flex-end}.tabs{display:flex;gap:6px;padding:10px 20px 0;flex-wrap:wrap}.tab{padding:8px 14px;border-radius:12px 12px 0 0;background:transparent;border:0;color:var(--muted);font-weight:800;cursor:pointer;font-size:14px}.tab.active{background:var(--panel-2);color:var(--text)}.tab:hover{color:var(--text)}.row-list{display:flex;flex-direction:column;gap:10px}.urow{display:grid;grid-template-columns:48px 1fr auto;gap:12px;align-items:center;padding:12px 14px;border-radius:14px;background:var(--panel-2);border:1px solid rgba(255,255,255,.05)}.urow.maxed{opacity:.75}.urow.locked{opacity:.5}.urow .ic{font-size:30px;text-align:center}.urow .name{font-weight:900;font-size:15px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.urow .lvl{font-size:12px;color:var(--muted);background:#0000004d;padding:2px 8px;border-radius:999px}.urow .desc{color:var(--muted);font-size:13px;margin-top:2px}.urow .eff{font-size:12px;margin-top:4px;color:var(--blue)}.urow .eff b{color:var(--good)}.urow .buy{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.pips{display:flex;gap:3px}.pips i{width:10px;height:6px;border-radius:3px;background:#ffffff26}.pips i.on{background:var(--good)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.card{padding:12px;border-radius:14px;background:var(--panel-2);border:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column;gap:6px}.card.locked{opacity:.45;filter:grayscale(.6)}.card .ic{font-size:28px}.card .name{font-weight:900}.card .desc{font-size:12px;color:var(--muted)}.card .bonus{font-size:12px;color:var(--good);font-weight:800}.food-row{display:grid;grid-template-columns:40px 1fr auto auto;gap:10px;align-items:center;padding:10px 12px;border-radius:12px;background:var(--panel-2)}.food-row .ic{font-size:26px;text-align:center}.food-row .name{font-weight:900}.food-row .desc{font-size:12px;color:var(--muted)}.food-row .stock{font-weight:900;color:var(--gold);font-size:13px;min-width:48px;text-align:center}.kv{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px dashed rgba(255,255,255,.08);font-size:14px}.kv b{color:var(--gold)}.toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:12px;background:var(--panel-2);margin-bottom:8px;font-weight:800}.toggle .seg{flex:0 1 60%}.switch{width:46px;height:26px;border-radius:13px;background:#0006;position:relative;cursor:pointer;border:0;flex-shrink:0}.switch:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:10px;background:#fff;transition:left .15s}.switch.on{background:var(--good)}.switch.on:after{left:23px}.quest{padding:12px 14px;border-radius:14px;background:var(--panel-2);display:flex;flex-direction:column;gap:6px}.quest.done{opacity:.6}.quest .t{font-weight:900;display:flex;justify-content:space-between}.quest .r{color:var(--gold);font-size:13px}.quest .p{font-size:12px;color:var(--muted)}.hint{font-size:13px;color:var(--muted);line-height:1.45}.note{padding:12px 14px;border-radius:12px;background:#ffd4471a;border:1px solid rgba(255,212,71,.35);color:var(--gold);font-size:14px;line-height:1.4}textarea.save{width:100%;height:80px;border-radius:10px;border:1px solid rgba(255,255,255,.15);background:#00000059;color:var(--text);padding:8px;font-size:12px;resize:vertical}.keys{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:13px}.keys kbd{background:#ffffff1f;border-radius:6px;padding:2px 8px;font-family:inherit;font-weight:900;border-bottom:2px solid rgba(0,0,0,.5)}.biome{margin-bottom:18px}.biome h3{margin:0 0 4px;font-size:18px;display:flex;align-items:center;gap:10px}.biome .bd{color:var(--muted);font-size:13px;margin-bottom:10px}.lv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.lv{padding:12px;border-radius:14px;background:var(--panel-2);border:2px solid transparent;cursor:pointer;display:flex;flex-direction:column;gap:6px;transition:transform .1s,border-color .1s}.lv:hover{transform:translateY(-2px);border-color:var(--clay)}.lv.locked{opacity:.45;cursor:not-allowed}.lv.boss{background:linear-gradient(160deg,#4a2a3a,var(--panel-2))}.lv .id{font-size:12px;color:var(--muted);font-weight:800}.lv .nm{font-weight:900;font-size:15px}.lv .md{letter-spacing:2px;font-size:14px}.lv .bt{font-size:12px;color:var(--blue)}.lv .rq{font-size:11px;color:var(--muted)}.mini-panel{position:absolute;right:14px;top:90px;width:290px;display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:18px;background:#1b1426d9;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);box-shadow:0 12px 30px #0006}.mini-panel h3{margin:0;font-size:18px;display:flex;justify-content:space-between;align-items:center}.mini-panel .big{font-size:30px;font-weight:900;text-align:center;font-variant-numeric:tabular-nums}.mini-panel .sub{text-align:center;font-size:12px;color:var(--muted)}.mini-panel .stats{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px;font-size:13px}.mini-panel .stats b{float:right;color:var(--gold)}.seg{display:flex;gap:4px;flex-wrap:wrap}.seg button{flex:1;padding:6px 4px;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:#ffffff0f;color:var(--text);font-weight:900;cursor:pointer;font-size:12px;min-width:44px}.seg button.active{background:var(--clay);border-color:var(--clay-light)}.seg button:disabled{opacity:.35;cursor:not-allowed}.combo{text-align:center;font-weight:900;color:var(--gold);font-size:16px;min-height:20px}.course-hud{position:absolute;left:14px;top:14px;display:flex;flex-direction:column;gap:8px;pointer-events:none}.course-hud .chip{width:fit-content}.course-hud .sprint{width:200px}.course-hint{position:absolute;bottom:16px;left:50%;transform:translate(-50%);padding:10px 16px;border-radius:12px;background:#1b1426cc;font-size:13px;color:var(--muted);pointer-events:none;text-align:center;max-width:80vw}.course-hint kbd{background:#ffffff26;border-radius:5px;padding:1px 6px;font-weight:900;color:var(--text)}.course-top-right{position:absolute;right:14px;top:14px;display:flex;gap:8px}.lives{display:flex;gap:4px}.tut{position:absolute;left:50%;bottom:90px;transform:translate(-50%);width:min(640px,92vw);padding:16px 18px;border-radius:16px;background:#1b1426f0;border:1px solid var(--clay);box-shadow:0 12px 30px #00000080;display:flex;gap:14px;align-items:center;animation:panelIn .25s ease-out}.tut .ic{font-size:34px}.tut .tx{flex:1;font-size:14px;line-height:1.45}.result-medals{display:flex;justify-content:center;gap:14px;margin:10px 0 14px}.medal{width:96px;padding:10px;border-radius:14px;background:var(--panel-2);text-align:center;font-size:12px;color:var(--muted)}.medal .m{font-size:34px;filter:grayscale(1) opacity(.35)}.medal.on .m{filter:none;animation:medalPop .5s cubic-bezier(.2,1.6,.4,1)}.medal.on{color:var(--gold);border:1px solid rgba(255,212,71,.4)}@keyframes medalPop{0%{transform:scale(0)}to{transform:scale(1)}}.result-stats{display:grid;grid-template-columns:1fr 1fr;gap:6px 16px;font-size:14px}.result-stats b{float:right;color:var(--gold)}.title-screen{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:radial-gradient(ellipse at 50% 40%,#ff8a5c40,#1b1426f2 70%)}.title-screen h1{font-size:clamp(48px,9vw,96px);margin:0;letter-spacing:4px;color:var(--clay);text-shadow:0 6px 0 #8a3a1e,0 14px 30px rgba(0,0,0,.5)}.title-screen p{margin:0;color:var(--muted);font-size:18px;font-weight:800}@media (max-width: 900px){.stat-panel{min-width:180px}.mini-panel{width:230px}.lv-grid{grid-template-columns:repeat(2,1fr)}}body.compact .only-compact{display:inline-flex}body.touch .btn:hover{filter:none;transform:none}body.touch .lv:hover{transform:none;border-color:transparent}body.touch .tab:hover{color:var(--muted)}body.compact .hud-top{top:calc(6px + var(--sat));left:calc(6px + var(--sal));right:calc(6px + var(--sar));gap:6px}body.compact .chip{padding:4px 9px;font-size:12px;gap:5px;border-radius:999px}body.compact .chip .ic{font-size:14px}body.compact .res-chips{gap:5px}.stats-toggle{display:none;cursor:pointer;color:var(--text)}body.compact .stats-toggle{display:inline-flex}body.compact .hud-top.column{flex-direction:column;width:auto;align-items:stretch;gap:6px;position:absolute}body.compact .hud-top.column .chip{padding:4px 9px;font-size:12px}body.compact .stat-panel{display:none;position:absolute;top:36px;left:0;width:min(320px,92vw);z-index:5;min-width:0}body.compact .stat-panel.open{display:flex}body.compact #ui[data-mode=mini] .hud-top>.res-chips{display:none}body.compact .hud-top.column .mini-panel{flex-direction:row;flex-wrap:wrap;align-items:center;gap:4px 10px;padding:6px 10px;border-radius:14px}body.compact .mini-panel h3{font-size:14px;gap:8px;order:0}body.compact .mini-panel h3 .btn{padding:5px 9px;font-size:12px}body.compact .mini-panel h3 .lbl{display:none}body.compact .mini-panel .big{font-size:22px;order:1;line-height:1;cursor:pointer}body.compact .mini-panel .sub{order:2;font-size:11px;text-align:left}body.compact .mini-panel .combo{order:3;font-size:13px;min-height:0;flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.compact .mini-panel>.btn{order:4;margin-left:auto;padding:7px 14px;font-size:14px}body.compact .mini-panel .controls{order:5;flex-basis:100%;display:flex;align-items:center;gap:8px}body.compact .mini-panel .controls:empty{display:none}body.compact .mini-panel .controls .sub{white-space:nowrap;order:0}body.compact .mini-panel .controls .seg{flex:1}body.compact .mini-panel .seg button{padding:5px 3px;font-size:11px;min-width:36px}body.compact .mini-panel .stats{display:none;order:6;flex-basis:100%;grid-template-columns:1fr 1fr 1fr;font-size:11px;gap:2px 10px}body.compact .mini-panel.expanded .stats{display:grid}body.compact .hud-bottom{bottom:calc(6px + var(--sab));gap:5px;padding:5px;border-radius:16px}body.compact .hud-bottom.shifted{left:0;right:0;max-width:calc(100vw - 12px)}body.compact .hud-bottom .btn,body.compact .hud-bottom.shifted .btn{padding:7px 10px;font-size:17px;border-radius:11px}body.compact .hud-bottom .btn .lbl{display:none}body.compact .hud-corner{right:calc(8px + var(--sar));bottom:calc(8px + var(--sab))}body.compact .fps{left:calc(8px + var(--sal));bottom:calc(64px + var(--sab))}body.compact .panel,body.compact .panel.narrow{width:100vw;height:100dvh;max-height:100dvh;border-radius:0;left:0;top:0;transform:none;animation:fadeIn .15s ease-out;padding:var(--sat) var(--sar) var(--sab) var(--sal)}body.compact .panel.modal{width:min(560px,100vw);height:auto;max-height:100dvh;left:50%;transform:translate(-50%);border-radius:0 0 var(--radius) var(--radius);top:0}body.compact .panel-head{padding:8px 12px;gap:8px}body.compact .panel-head h2{font-size:17px}body.compact .panel-head>span:first-child{font-size:20px!important}body.compact .panel-body{padding:10px 12px}body.compact .panel-foot{padding:8px 12px;flex-wrap:wrap}body.compact .panel-foot .btn{padding:8px 12px;font-size:14px}body.compact .tabs{padding:6px 12px 0;gap:4px}body.compact .tab{padding:6px 10px;font-size:13px}body.compact .urow{grid-template-columns:36px 1fr auto;gap:8px;padding:8px 10px}body.compact .urow .ic{font-size:24px}body.compact .urow .name{font-size:14px}body.compact .grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}body.compact .lv-grid{grid-template-columns:repeat(2,1fr);gap:8px}body.compact .lv{padding:9px;gap:4px}body.compact .food-row{grid-template-columns:32px 1fr auto auto;gap:6px;padding:8px 10px}body.compact .keys{font-size:12px;gap:4px 10px}body.compact .toasts{top:calc(44px + var(--sat));width:100%;padding:0 8px}body.compact .toast{font-size:12px;padding:7px 12px;max-width:94vw}body.compact .tut{bottom:auto;top:50%;transform:translate(-50%,-50%);width:min(540px,94vw);padding:10px 12px;gap:10px}body.compact .tut .ic{font-size:26px}body.compact .tut .tx{font-size:12.5px;line-height:1.4}body.compact .tut .btn.small{padding:5px 10px}body.compact .course-hud{left:calc(8px + var(--sal));top:calc(6px + var(--sat));gap:5px}body.compact .course-hud .sprint{width:130px;height:12px}body.compact .course-top-right{right:calc(8px + var(--sar));top:calc(6px + var(--sat));gap:5px}body.compact .course-top-right .btn.small{padding:5px 9px;font-size:12px}body.compact .course-top-right .chip.lvname{display:none}body.compact .course-hint{bottom:auto;top:calc(8px + var(--sat));font-size:11px;padding:5px 10px;max-width:min(60vw,520px);line-height:1.5}body.touch .course-hint{display:none}body.portrait .course-hint{top:calc(92px + var(--sat));max-width:92vw}body.portrait .toasts{top:calc(150px + var(--sat))}body.portrait .rotate-hint{top:auto;bottom:calc(40% - 20px)}body.compact .result-medals{gap:8px}body.compact .medal{width:82px;padding:8px;font-size:11px}body.compact .medal .m{font-size:28px}body.compact .result-stats{font-size:13px}.rotate-hint{position:absolute;left:50%;top:calc(50% - 20px);transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:14px;background:#1b1426f0;border:1px solid var(--gold);color:var(--gold);font-weight:800;font-size:13px;max-width:92vw;text-align:center;box-shadow:0 10px 30px #00000080;z-index:20}.rotate-hint .btn{color:var(--text)}.tpad{position:absolute;inset:0;pointer-events:none;display:none;z-index:8}body.touch .tpad.show{display:block}.tpad>*{pointer-events:auto}.tpad .joystick{position:absolute;left:calc(14px + var(--sal));bottom:calc(12px + var(--sab));width:calc(var(--tbtn) * 1.55);height:calc(var(--tbtn) * 1.55);border-radius:50%;background:radial-gradient(circle,#ffffff0d 0 34%,#1b142694 35% 100%);border:2px solid rgba(255,255,255,.2);box-shadow:inset 0 0 0 1px #ffffff0d,0 6px 16px #00000059;touch-action:none;user-select:none;-webkit-user-select:none}.tpad .joystick:before,.tpad .joystick:after{content:"";position:absolute;background:#ffffff1a;pointer-events:none}.tpad .joystick:before{left:14%;right:14%;top:50%;height:1px}.tpad .joystick:after{top:14%;bottom:14%;left:50%;width:1px}.tpad .joystick .stick{position:absolute;left:50%;top:50%;width:calc(var(--tbtn) * .72);height:calc(var(--tbtn) * .72);margin:calc(var(--tbtn) * -.36) 0 0 calc(var(--tbtn) * -.36);border-radius:50%;background:linear-gradient(145deg,#7ed957e6,#45975ce6);border:2px solid rgba(255,255,255,.45);box-shadow:0 4px 10px #00000073;transition:transform .05s linear;pointer-events:none}.tpad .joystick small{position:absolute;left:0;right:0;bottom:5px;text-align:center;font-size:8px;font-weight:900;letter-spacing:.6px;color:#ffffffc7;pointer-events:none}.tpad .joystick.active{border-color:#7ed957a6}.tpad .joystick.drop{border-color:#ffd447cc}.tpad .joystick.drop small{color:var(--gold)}.tpad .tbtn{position:absolute;width:var(--tbtn);height:var(--tbtn);border-radius:50%;border:2px solid rgba(255,255,255,.22);background:#1b14269e;color:#fff;font-size:24px;font-weight:900;line-height:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:0;touch-action:none;user-select:none;-webkit-user-select:none;box-shadow:0 6px 16px #00000059}.tpad .tbtn small{font-size:8.5px;font-weight:800;letter-spacing:.5px;opacity:.85}.tpad .tbtn.on{background:#ff8a5ccc;border-color:#ffb899;transform:scale(.94)}.tpad .tbtn.latched{background:#5ec8ffa6;border-color:#bfe9ff}.tpad .jump{right:calc(16px + var(--sar));bottom:calc(16px + var(--sab));width:calc(var(--tbtn) * 1.4);height:calc(var(--tbtn) * 1.4);background:#7ed95766;border-color:#7ed957b3;font-size:30px}.tpad .push{right:calc(16px + var(--sar) + var(--tbtn) * 1.6);bottom:calc(12px + var(--sab))}.tpad .sprint{right:calc(16px + var(--sar) + var(--tbtn) * .25);bottom:calc(26px + var(--sab) + var(--tbtn) * 1.5)}.tpad .action{right:calc(16px + var(--sar));bottom:calc(16px + var(--sab));width:calc(var(--tbtn) * 1.4);height:calc(var(--tbtn) * 1.4);background:#5ec8ff66;border-color:#5ec8ffb3;font-size:30px}.tpad.covered{display:none!important}.tpad.gym .joystick,.tpad.gym .action{bottom:calc(64px + var(--sab))}.tpad.lefty .joystick{left:auto;right:calc(14px + var(--sar))}.tpad.lefty .jump,.tpad.lefty .action{right:auto;left:calc(16px + var(--sal))}.tpad.lefty .push{right:auto;left:calc(16px + var(--sal) + var(--tbtn) * 1.6)}.tpad.lefty .sprint{right:auto;left:calc(16px + var(--sal) + var(--tbtn) * .25)}@media (max-height: 420px){body.compact .chip{padding:3px 8px;font-size:11px}body.compact .mini-panel .big{font-size:18px}body.compact .hud-bottom .btn,body.compact .hud-bottom.shifted .btn{padding:5px 9px;font-size:15px}.tpad .joystick{width:calc(var(--tbtn) * 1.42);height:calc(var(--tbtn) * 1.42)}}@media (orientation: landscape) and (max-height: 420px){body.compact #ui[data-mode=mini] .mini-panel.mini-wall.active{position:fixed;top:calc(6px + var(--sat));left:calc(6px + var(--sal));right:calc(6px + var(--sar));width:auto;padding:0;gap:5px;flex-wrap:nowrap;align-items:flex-start;background:transparent;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;pointer-events:none}body.compact .mini-panel.mini-wall.active>h3,body.compact .mini-panel.mini-wall.active>.big,body.compact .mini-panel.mini-wall.active>.btn{pointer-events:auto}body.compact .mini-panel.mini-wall.active h3,body.compact .mini-panel.mini-wall.active .big{min-height:36px;padding:5px 8px;display:flex;align-items:center;background:#1b1426d1;border:1px solid rgba(255,255,255,.12)}body.compact .mini-panel.mini-wall.active h3{padding:0;border:0;border-radius:12px;background:transparent;font-size:0}body.compact .mini-panel.mini-wall.active h3 .btn{min-height:36px}body.compact .mini-panel.mini-wall.active .big{border-radius:12px}body.compact .mini-panel.mini-wall.active .big:after{content:" m";margin-left:3px;font-size:10px;color:var(--muted)}body.compact .mini-panel.mini-wall.active>.sub{display:none}body.compact .mini-panel.mini-wall.active .combo{position:absolute;left:0;top:41px;width:max-content;max-width:235px;padding:4px 8px;border-radius:10px;background:#1b1426c7;font-size:11px}body.compact .mini-panel.mini-wall.active .combo:empty{display:none}body.compact .mini-panel.mini-wall.active>.btn{margin-left:auto;min-height:36px;padding:6px 12px}}
