:root{--ink:#fff;--pill-bg:#1c2040d1;--gold:#ffd23f;--heat:#ff8a3c;--green:#4dff88;--red:#ff3b3b;--blue:#3b8bff;--font:"Arial Rounded MT Bold", "Hiragino Maru Gothic ProN", "Yu Gothic UI", "Segoe UI", system-ui, sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}#game-root{font-family:var(--font);-webkit-user-select:none;user-select:none;background:radial-gradient(120% 90% at 50% 110%,#3a3f6e 0%,#3a3f6e00 55%),linear-gradient(#14162e 0%,#1c2040 55%,#23274d 100%);position:fixed;top:0;left:0;overflow:hidden}#view-rect{position:absolute;overflow:hidden}#view-rect canvas{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}#ui{pointer-events:none;position:absolute;inset:0;overflow:hidden}#ui>*{pointer-events:auto}#ui .hud,#ui .float-text,#ui .fx-vignette,#ui .fx-edgeglow,#ui .tut-overlay{pointer-events:none}#ui .hud button,#ui .tut-skip{pointer-events:auto}.hud{padding:calc(10px + env(safe-area-inset-top)) calc(10px + env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) calc(10px + env(safe-area-inset-left));display:none;position:absolute;inset:0}.hud.visible{display:block}.hud-left{top:calc(10px + env(safe-area-inset-top));left:calc(10px + env(safe-area-inset-left));flex-direction:column;align-items:flex-start;gap:6px;display:flex;position:absolute}.hud-right{top:calc(10px + env(safe-area-inset-top));right:calc(10px + env(safe-area-inset-right));flex-direction:row;align-items:flex-start;gap:8px;display:flex;position:absolute}.pill{background:var(--pill-bg);color:var(--ink);text-shadow:0 1px #0006;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:15px;font-weight:900;display:inline-flex;box-shadow:0 2px #00000040}.pill.carried .val{color:var(--gold)}.pill.rows{letter-spacing:1px;font-size:17px}.ico{border-radius:50%;width:14px;height:14px;display:inline-block}.ico-coin{background:radial-gradient(circle at 35% 35%, #ffe98a, var(--gold) 60%, #c9a015)}.ico-sack{background:radial-gradient(circle at 35% 30%,#d8a860,#b08040 65%,#7a5525);border-radius:40% 40% 50% 50%}.mult-chip{background:var(--heat);color:#2a1400;border-radius:999px;padding:3px 10px;font-size:14px;font-weight:900;animation:.5s ease-in-out infinite alternate chipPulse;box-shadow:0 2px #0000004d}@keyframes chipPulse{0%{transform:scale(1)}to{transform:scale(1.08)}}.pause-btn{background:var(--pill-bg);width:40px;height:40px;color:var(--ink);cursor:pointer;touch-action:none;border:none;border-radius:50%;font-size:17px;box-shadow:0 2px #00000040}.pause-btn:active{transform:scale(.92)}.screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:20px;display:flex;position:absolute;inset:0}.screen.dim{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a0c1c9e}.logo{margin-bottom:4px;line-height:.9}.logo-line1,.logo-line2{letter-spacing:4px;color:var(--ink);text-shadow:0 4px #00000059,0 8px 24px #0006;font-size:clamp(44px,12vw,84px);font-weight:900}.logo-line2{color:var(--gold)}.tagline{color:#c9cfee;max-width:420px;font-size:14px;font-weight:700}.title-stats{gap:10px;display:flex}.hint{color:#8a90b8;margin-top:8px;font-size:12px;font-weight:700;animation:1.6s ease-in-out infinite hintBlink}@keyframes hintBlink{0%,to{opacity:.55}50%{opacity:1}}@media (height<=500px){.screen{gap:8px;padding:10px}.logo-line1,.logo-line2{font-size:clamp(30px,7vw,44px)}.tagline{display:none}.title-stats .pill{padding:4px 10px;font-size:12px}.btn.big{padding:10px 28px;font-size:16px}.hint{display:none}}.panel{background:#1c2040f0;border-radius:20px;flex-direction:column;align-items:stretch;gap:10px;min-width:min(320px,86vw);max-width:92vw;max-height:88vh;padding:22px 24px;display:flex;overflow-y:auto;box-shadow:0 10px 40px #00000080}.panel h2{color:var(--ink);letter-spacing:2px;text-align:center;margin:0;font-size:26px}.panel h3{color:#9aa2cc;letter-spacing:2px;text-align:left;margin:6px 0 0;font-size:13px}.btn{color:var(--ink);font-family:var(--font);letter-spacing:1px;cursor:pointer;touch-action:manipulation;background:#39406b;border:none;border-radius:14px;padding:12px 18px;font-size:16px;font-weight:900;transition:transform 60ms;box-shadow:0 3px #0000004d}.btn:active{transform:scale(.95)}.btn.primary{color:#3a2000;background:linear-gradient(#ffd94a,#ff9d3c)}.btn.gold{color:#3a2000;background:linear-gradient(#ffe98a,#ffd23f)}.btn.ghost{background:#ffffff14}.btn.big{border-radius:18px;padding:16px 42px;font-size:22px}.btn.small{padding:8px 12px;font-size:13px}.btn.danger{background:#7a2a3a}.btn.disabled,.btn:disabled{opacity:.45;pointer-events:none}.btn.loading{opacity:.6;pointer-events:none}.row{justify-content:center;gap:10px;display:flex}.btn-col{flex-direction:column;gap:10px;display:flex}.busted-title{letter-spacing:4px;text-shadow:0 3px #0006;transform:rotate(-2deg);color:var(--red)!important;font-size:40px!important}.record-badge{background:var(--gold);color:#3a2000;border-radius:999px;align-self:center;padding:4px 14px;font-weight:900;animation:.5s ease-in-out infinite alternate chipPulse}.near-best{color:var(--heat);font-size:14px;font-weight:900}.stat-row{color:#c9cfee;justify-content:space-between;font-size:15px;font-weight:700;display:flex}.stat-row b{color:var(--ink)}.kept{color:#9aa2cc;font-size:12px;font-weight:700}.shop-balance{color:var(--gold);justify-content:center;align-items:center;gap:8px;font-size:20px;font-weight:900;display:flex}.shop-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.shop-item{background:#ffffff0f;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;display:flex}.shop-item.equipped{outline:2px solid var(--green)}.shop-item-name{color:var(--ink);text-align:left;flex:1;font-size:12px;font-weight:700}.skin-swatch{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:20px;display:flex}.skin-crook{background:linear-gradient(135deg,#e8ecf4 50%,#2a2d45 50%)}.skin-ninja{background:linear-gradient(135deg,#2a2d45 50%,#14161f 50%)}.skin-clown{background:linear-gradient(135deg,#ff5c5c 50%,#ffd23f 50%)}.skin-suit{background:linear-gradient(135deg,#1a1c2e 50%,#3a3f6e 50%)}.skin-mayor{background:linear-gradient(135deg,#3a3f6e 40%,#ffd23f 40%)}.ride-swatch{background:#2a2d45}.warn{color:var(--red);font-size:13px;font-weight:900}.warn.shake{animation:.4s shakeX}@keyframes shakeX{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.set-row{color:var(--ink);justify-content:space-between;align-items:center;gap:14px;font-size:14px;font-weight:700;display:flex}.set-row select{color:var(--ink);font-family:var(--font);background:#39406b;border:none;border-radius:8px;padding:8px;font-weight:700}.tut-overlay{justify-content:center;align-items:flex-end;padding-bottom:18vh;display:flex;position:absolute;inset:0}.tut-card{background:#1c2040e6;border-radius:16px;align-items:center;gap:12px;padding:14px 18px;animation:.25s tutPop;display:flex;box-shadow:0 6px 24px #0006}@keyframes tutPop{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.tut-text{color:var(--ink);max-width:60vw;font-size:16px;font-weight:900}.tut-skip{color:#9aa2cc;font-family:var(--font);cursor:pointer;background:#ffffff1f;border:none;border-radius:999px;padding:6px 12px;font-size:11px;font-weight:900}.float-text{color:var(--gold);text-shadow:0 2px #00000080;white-space:nowrap;will-change:transform, opacity;font-size:18px;font-weight:900;position:absolute;top:0;left:0}.float-text.gem{color:#3fe3d0}.float-text.closecall{color:#ff8a3c;font-size:20px}.float-text.heat{color:var(--heat)}.float-text.bank{color:var(--green);font-size:22px}.float-text.warn{color:var(--red);font-size:20px}.fx-vignette{pointer-events:none;opacity:0;background:radial-gradient(#f000 55%,#ff1e1e73 100%);position:absolute;inset:0}.fx-vignette.show{animation:.5s ease-out vignetteFlash}@keyframes vignetteFlash{0%{opacity:0}15%{opacity:1}to{opacity:0}}.fx-edgeglow{pointer-events:none;opacity:0;transition:opacity .3s;position:absolute;inset:0}.fx-edgeglow.show{opacity:1}.fx-edgeglow.show.dragnet{background:linear-gradient(#3b8bff00 75%,#ff3b3b4d 100%),linear-gradient(#3b8bff00 82%,#3b8bff4d 100%);animation:.5s ease-in-out infinite alternate edgePulse}.fx-edgeglow.show.chopper{background:radial-gradient(at 50% 40%,#fff2c038 0%,#fff2c000 55%);animation:.4s ease-in-out infinite alternate edgePulse}@keyframes edgePulse{0%{filter:brightness(.8)}to{filter:brightness(1.25)}}.countdown{color:var(--ink);text-shadow:0 6px #0006;pointer-events:none;justify-content:center;align-items:center;font-size:96px;font-weight:900;display:flex;position:absolute;inset:0}.countdown.tick{animation:.6s cdTick}@keyframes cdTick{0%{opacity:0;transform:scale(1.6)}30%{opacity:1;transform:scale(1)}to{opacity:.2;transform:scale(.9)}}.toast{bottom:calc(24px + env(safe-area-inset-bottom));color:var(--ink);opacity:0;pointer-events:none;text-align:center;background:#1c2040f2;border-radius:999px;max-width:86vw;padding:10px 20px;font-size:14px;font-weight:900;transition:all .3s;position:absolute;left:50%;transform:translate(-50%,20px)}.toast.show{opacity:1;transform:translate(-50%)}.modal{z-index:50;background:#0a0c1cb3;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.modal .panel{max-width:min(380px,90vw)}.modal p{color:#c9cfee;margin:0;font-size:13px;font-weight:700}
