:root{--black:#04060a;--black-2:#02030a;--charcoal:#0d1018;--charcoal-2:#161a26;--panel:#0a0d18;--emerald:#0a6b2c;--emerald-deep:#053617;--felt:#0a3818;--ruby:#e11515;--ruby-deep:#7c0808;--ruby-bright:#ff2a2a;--gold:gold;--gold-soft:#fff2a8;--gold-deep:#7a5c00;--neon:#29d8ff;--neon-soft:#6fe4ff;--neon-deep:#007cff;--soft-white:#f4f6fb;--muted:#8b8b94;--sans:"Inter", system-ui, "Segoe UI", Roboto, sans-serif;--display:"Montserrat", "Inter", system-ui, sans-serif;--serif:"Cinzel", "Playfair Display", "Times New Roman", serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:var(--sans);color:var(--soft-white);background:var(--black);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:16px}*{box-sizing:border-box}html,body,#app{height:100%}body{background:radial-gradient(ellipse 120% 60% at 50% -10%, #ffd7001a, transparent 60%), radial-gradient(ellipse 100% 80% at 50% 50%, #1a1830 0%, #0a0a0a 70%) fixed, var(--black);overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;margin:0}body:after{content:"";pointer-events:none;z-index:100;opacity:.04;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 0.6 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:fixed;inset:0}button{font:inherit;color:inherit;cursor:pointer}#app{width:100%;max-width:540px;min-height:100svh;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);flex-direction:column;margin:0 auto;display:flex;position:relative}.main-stage{flex-direction:column;flex:1;min-height:0;display:flex}@media (width>=900px){#app{max-width:1280px;padding:0 24px env(safe-area-inset-bottom)}.is-desktop .main-stage{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:stretch;gap:32px;padding:14px 0 18px;display:grid}.is-desktop .wheel-stage.hidden,.is-desktop .board-wrap.hidden,.is-desktop .tray.hidden{display:flex!important}.is-desktop .wheel-stage{aspect-ratio:auto;justify-content:center;align-items:center;min-height:0;padding:12px;display:flex}.is-desktop .wheel-canvas{aspect-ratio:1;width:min(100%,64vh);max-width:100%;height:auto;max-height:100%}.is-desktop .board{max-width:480px;height:min(100%,70vh)}.is-desktop .tray{background:linear-gradient(#04060a00 0%,#02030800 100%);border-top:1px solid #ffd7002e;gap:12px;padding:14px 24px 22px}.is-desktop .actions{max-width:800px;margin:0 auto}.is-desktop .chip-tray{gap:16px}.is-desktop .tray-chip{width:56px;height:56px;font-size:16px}.is-desktop .quick-bets{width:100%;max-width:800px;margin:0 auto}.is-desktop .btn{height:50px;font-size:13px}.is-desktop .btn.primary{letter-spacing:.22em;font-size:16px}.is-desktop .hud{gap:14px;padding:12px 16px}.is-desktop .hud-balance .value,.is-desktop .hud-bet .value,.is-desktop .hud-win .value{font-size:22px}.is-desktop .hud-balance .label,.is-desktop .hud-bet .label,.is-desktop .hud-win .label{font-size:10px}.is-desktop .brand{padding:10px 16px 8px}.is-desktop .brand-text{letter-spacing:.36em;font-size:18px}.is-desktop .hud-history{gap:6px;padding:8px 16px}.is-desktop .hud-history .pill{min-width:32px;height:32px;font-size:13px}.is-desktop .lucky-strip{justify-content:center;gap:10px;padding:10px 24px}.is-desktop .lucky-chip .lucky-n{width:28px;height:28px;font-size:15px}.is-desktop .lucky-chip .lucky-mult{font-size:14px}.is-desktop .board{aspect-ratio:.66;max-width:480px}.is-desktop .board-wrap{padding:8px 0}.is-desktop .wheel-stage{padding:12px}.is-desktop .wheel-canvas{width:100%}.is-desktop .missions-panel{width:420px}.is-desktop .achievement-toaster{max-width:300px}}@media (width>=1280px){.is-desktop .wheel-canvas{max-width:640px}.is-desktop .board{max-width:540px}.is-desktop .brand-text{font-size:20px}}.brand{border-bottom:1px solid #ffd7001f;align-items:center;gap:10px;padding:6px 12px 4px;display:flex}.brand-mark{color:var(--gold);text-shadow:0 0 10px #ffd700d9,0 0 22px #ffd70080;vertical-align:-1px;transform-origin:50% 56%;margin-right:8px;font-size:16px;animation:12s linear infinite brandRotorSpin;display:inline-block}@keyframes brandRotorSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.brand-text{font-family:var(--display);letter-spacing:.3em;color:var(--soft-white);text-shadow:0 0 8px #ffffff2e;align-items:center;font-size:14px;font-weight:900;display:inline-flex}.brand-accent{background:linear-gradient(180deg, #fff5b1 0%, var(--gold) 50%, #b58400 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 6px #ffd70099);-webkit-background-clip:text;background-clip:text;margin-left:1px}.brand-streak{font-family:var(--display);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-left:auto;font-size:9px;font-weight:700}.vip-chip{border:1px solid var(--gold);background:linear-gradient(#2a1f00,#0f0a00);border-radius:999px;align-items:center;gap:6px;padding:3px 9px 3px 7px;display:inline-flex;box-shadow:0 0 10px #ffd70066,inset 0 1px #ffffff1f}.vip-icon{color:var(--gold);text-shadow:0 0 6px #ffd700d9;font-size:12px}.vip-level{font-family:var(--display);letter-spacing:.14em;color:var(--gold-soft);font-size:10px;font-weight:900}.vip-bar{background:#ffd7002e;border-radius:2px;width:36px;height:4px;overflow:hidden}.vip-bar-fill{background:linear-gradient(90deg, var(--neon), var(--gold));width:0;height:100%;transition:width .5s;display:block;box-shadow:0 0 6px #29d8ff99}.achievement-toaster{z-index:40;pointer-events:none;flex-direction:column;gap:6px;max-width:230px;display:flex;position:fixed;top:56px;right:8px}.achievement-card{background:radial-gradient(at 100% 0,#ffd7002e,#0000 70%),linear-gradient(#14141ef2,#08080ef2);border:1px solid #ffd700a6;border-radius:10px;align-items:center;gap:10px;padding:8px 12px;animation:.36s cubic-bezier(.2,1.4,.25,1) forwards achIn;display:flex;box-shadow:0 0 18px #ffd70073}.achievement-card.out{animation:.7s forwards achOut}@keyframes achIn{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes achOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(40px)}}.ach-icon{filter:drop-shadow(0 0 8px #ffd700d9);font-size:22px}.ach-text{flex-direction:column;display:flex}.ach-title{font-family:var(--display);letter-spacing:.08em;color:var(--gold);text-shadow:0 0 8px #ffd7008c;font-size:12px;font-weight:900}.ach-sub{font-family:var(--sans);color:var(--muted);font-size:10px}.hud{background:linear-gradient(#ffd7001a,#0000);border-bottom:1px solid #ffd70033;justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;display:flex}.hud-balance,.hud-bet,.hud-win{background:linear-gradient(180deg, var(--charcoal-2), var(--charcoal));border:1px solid #ffd70073;border-radius:999px;flex-direction:column;flex:1;align-items:center;min-width:0;padding:4px 6px;display:flex;box-shadow:0 4px 14px #0000008c,inset 0 1px #ffffff12,inset 0 0 0 1px #0009}.hud-balance .label,.hud-bet .label,.hud-win .label{letter-spacing:.22em;text-transform:uppercase;color:var(--muted);font-size:8px;font-weight:600}.hud-balance .value,.hud-bet .value,.hud-win .value{font-family:var(--display);letter-spacing:.02em;white-space:nowrap;margin-top:2px;font-size:16px;font-weight:800}.hud-balance .value{color:var(--gold);text-shadow:0 0 14px #ffd70073}.hud-bet .value{color:var(--soft-white);text-shadow:0 0 8px #00ffff59}.hud-win .value{color:var(--neon);text-shadow:0 0 12px #00ffff80}.hud-win .value.pulse{animation:1.4s infinite hudPulse}@keyframes hudPulse{0%,to{text-shadow:0 0 12px #00ffff80}50%{text-shadow:0 0 22px #00fffff2}}.hud-icon-btn{background:linear-gradient(180deg, var(--charcoal-2), var(--charcoal));width:42px;height:42px;color:var(--soft-white);border:1px solid #ffd70080;border-radius:50%;place-items:center;font-size:16px;transition:transform .12s,box-shadow .12s;display:grid;box-shadow:0 4px 10px #00000080,inset 0 1px #ffffff14}.hud-icon-btn:active{transform:scale(.94);box-shadow:0 0 16px #0ff9}.hud-history{background:var(--black);scrollbar-width:none;border-bottom:1px solid #ffffff0f;align-items:center;gap:5px;padding:5px 10px;display:flex;overflow-x:auto}.hud-history::-webkit-scrollbar{display:none}.hud-history:before{content:"LAST";font-family:var(--display);letter-spacing:.22em;color:var(--muted);flex:none;margin-right:4px;font-size:9px;font-weight:700}.hud-history .pill{min-width:28px;height:28px;font-family:var(--display);color:#fff;text-shadow:0 1px 2px #0009;border:1px solid #ffffff2e;border-radius:14px;flex:none;place-items:center;padding:0 6px;font-size:12px;font-weight:700;display:grid}.hud-history .pill.red{background:linear-gradient(180deg, #d11515, var(--ruby-deep))}.hud-history .pill.black{background:linear-gradient(#2a2a2a,#050505)}.hud-history .pill.green{background:linear-gradient(180deg, var(--emerald), var(--emerald-deep))}.hud-history .pill.hot{border-color:var(--gold);box-shadow:0 0 10px #ffd70099,inset 0 0 0 1px #ffd7008c}.hud-history .pill.hot:after{content:"🔥";filter:drop-shadow(0 0 4px #ff8c00cc);margin-top:-16px;margin-left:-2px;font-size:9px;position:absolute}.hud-history .pill{position:relative}.wheel-stage{aspect-ratio:1;background:radial-gradient(circle,#29d8ff14,#0000 65%),radial-gradient(circle at 50% 0,#ffd7001a,#0000 60%),linear-gradient(#0a0e1a,#03060c);border-bottom:1px solid #ffd70040;flex:1;place-items:center;width:100%;min-height:0;padding:4px;animation:.28s stageFadeIn;display:grid;position:relative;overflow:hidden}.wheel-stage:before,.wheel-stage:after{content:"";background:linear-gradient(180deg, transparent, var(--neon) 20%, var(--neon) 80%, transparent);width:4px;box-shadow:0 0 20px var(--neon), 0 0 40px var(--neon-deep);opacity:.55;pointer-events:none;border-radius:999px;position:absolute;top:8%;bottom:8%}.wheel-stage:before{left:2px}.wheel-stage:after{right:2px}@keyframes stageFadeIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.wheel-canvas{aspect-ratio:1;filter:drop-shadow(0 14px 28px #000000b3)drop-shadow(0 0 24px #00ffff2e);width:100%;max-width:540px}.hot-cold-panel{z-index:5;background:linear-gradient(#141e37e6,#080a14eb);border:1px solid #29d8ff59;border-radius:10px;flex-direction:column;gap:4px;width:70px;padding:6px 6px 8px;animation:.36s 80ms both hcSlideIn;display:flex;position:absolute;top:10px;box-shadow:0 0 18px #29d8ff2e,inset 0 1px #ffffff0d}.hot-cold-panel.hot{border-color:#ff501e73;left:6px;box-shadow:0 0 18px #ff501e40,inset 0 1px #ffffff0d}.hot-cold-panel.cold{right:6px}@keyframes hcSlideIn{0%{opacity:0;transform:translateX(var(--from,-10px))}to{opacity:1;transform:translate(0)}}.hot-cold-panel.hot{--from:-16px}.hot-cold-panel.cold{--from:16px}.hc-title{font-family:var(--display);letter-spacing:.18em;text-align:center;color:var(--soft-white);border-bottom:1px solid #ffffff14;margin-bottom:2px;padding-bottom:2px;font-size:10px;font-weight:900}.hot-cold-panel.hot .hc-title{color:#ff7a3a;text-shadow:0 0 10px #ff7828b3}.hot-cold-panel.cold .hc-title{color:var(--neon);text-shadow:0 0 10px #29d8ffb3}.hc-list{grid-template-columns:1fr 1fr;gap:3px 4px;display:grid}.hc-num{font-family:var(--serif);text-align:center;background:#0009;border:1px solid #ffffff0d;border-radius:5px;padding:3px 0;font-size:14px;font-weight:700}.hc-num.red{color:var(--ruby-bright);text-shadow:0 0 6px #ff1e1e8c}.hc-num.black{color:var(--soft-white)}.hc-num.green{color:#34d869;text-shadow:0 0 6px #34d8698c}.spin-status{font-family:var(--display);letter-spacing:.28em;color:var(--gold);text-shadow:0 0 12px #ffd700b3,0 0 22px #ffd70066;opacity:0;pointer-events:none;white-space:nowrap;font-size:13px;font-weight:900;transition:opacity .3s,transform .3s;position:absolute;bottom:10px;left:50%;transform:translate(-50%)translateY(8px)}.spin-status.show{opacity:1;transform:translate(-50%)translateY(0)}.missions-toggle{top:calc(env(safe-area-inset-top) + 8px);background:linear-gradient(180deg, var(--charcoal-2), var(--charcoal));width:38px;height:38px;color:var(--gold);z-index:40;border:1px solid #ffd7008c;border-radius:50%;place-items:center;font-size:18px;display:grid;position:fixed;right:8px;box-shadow:0 4px 12px #0000008c,inset 0 1px #ffffff14}.missions-toggle:active{transform:scale(.92)}.missions-toggle-icon{filter:drop-shadow(0 0 6px #ffd70066)}.missions-toggle-badge{background:var(--ruby);color:#fff;min-width:18px;height:18px;font-family:var(--display);letter-spacing:0;border-radius:9px;place-items:center;padding:0 5px;font-size:10px;font-weight:900;display:grid;position:absolute;top:-3px;right:-3px;box-shadow:0 0 10px #cc0000d9}.missions-toggle-badge.show{animation:1.6s ease-in-out infinite badgePop;display:grid}@keyframes badgePop{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}.missions-panel{z-index:50;background:linear-gradient(#141218fa,#08070bfa);border-left:1px solid #ffd70059;flex-direction:column;width:min(86vw,360px);animation:.28s cubic-bezier(.2,1,.3,1) panelSlideIn;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-8px 0 22px #0000008c}.missions-panel.hidden{display:none!important}@keyframes panelSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.missions-header{border-bottom:1px solid #ffd7002e;justify-content:space-between;align-items:center;padding:14px 16px 10px;display:flex}.missions-header h3{font-family:var(--display);letter-spacing:.18em;text-transform:uppercase;color:var(--gold);text-shadow:0 0 10px #ffd70073;margin:0;font-size:16px;font-weight:900}.missions-close{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:4px 8px;font-size:16px}.missions-list{flex-direction:column;flex:1;gap:10px;padding:10px 14px;display:flex;overflow-y:auto}.mission-row{background:linear-gradient(#ffffff0a,#0003);border:1px solid #ffd7002e;border-radius:10px;padding:10px 12px}.mission-row.ready{border-color:#00e66ea6;box-shadow:0 0 14px #00e66e4d}.mission-row.claimed{opacity:.45}.mission-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.mission-title{font-family:var(--display);color:var(--soft-white);font-size:13px;font-weight:700}.mission-reward{font-family:var(--display);color:var(--gold);text-shadow:0 0 6px #ffd70080;font-size:13px;font-weight:900}.mission-reward:before{content:"+"}.mission-bar{background:#ffffff14;border-radius:3px;height:6px;margin-top:7px;overflow:hidden}.mission-bar-fill{background:linear-gradient(90deg, var(--neon), var(--gold));width:0%;height:100%;transition:width .4s;display:block;box-shadow:0 0 8px #ffd70080}.mission-bottom{justify-content:space-between;align-items:center;margin-top:6px;display:flex}.mission-progress{font-family:var(--display);color:var(--muted);letter-spacing:.08em;font-size:11px;font-weight:700}.mission-state{font-family:var(--display);letter-spacing:.2em;color:var(--muted);font-size:10px;font-weight:800}.mission-claim{color:#fff;font-family:var(--display);letter-spacing:.16em;cursor:pointer;background:linear-gradient(#34d869 0%,#0b5d29 100%);border:0;border-radius:999px;padding:5px 12px;font-size:11px;font-weight:900;animation:1.4s ease-in-out infinite claimPulse;box-shadow:0 0 12px #00e66e80}@keyframes claimPulse{0%,to{box-shadow:0 0 10px #00e66e73}50%{box-shadow:0 0 18px #00e66ed9}}.mission-claim:active{transform:scale(.95)}.missions-footer{font-family:var(--display);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);text-align:center;border-top:1px solid #ffd7001f;padding:10px 16px;font-size:9px}.stats-grid{flex-direction:column;flex:1;gap:2px;padding:10px 14px;display:flex;overflow-y:auto}.stat-row{border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:9px 4px;display:flex}.stat-label{font-family:var(--display);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:700}.stat-value{font-family:var(--display);color:var(--gold);text-shadow:0 0 6px #ffd70073;font-size:14px;font-weight:900}.lucky-strip{scrollbar-width:none;background:radial-gradient(at 50% 0,#ffd7001a,#0000 70%),linear-gradient(#14120af2,#080602f2);border-top:1px solid #ffd7002e;border-bottom:1px solid #ffd7002e;align-items:center;gap:6px;padding:6px 12px;display:none;overflow-x:auto}.lucky-strip::-webkit-scrollbar{display:none}.lucky-strip.show{animation:.36s cubic-bezier(.2,1.4,.3,1) luckyIn;display:flex}@keyframes luckyIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.lucky-icon{color:#fff5b1;text-shadow:0 0 12px #ffd700f2;font-size:16px;animation:1.2s ease-in-out infinite luckyZap}@keyframes luckyZap{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.lucky-label{font-family:var(--display);letter-spacing:.32em;text-transform:uppercase;color:var(--gold);text-shadow:0 0 8px #ffd7008c;margin-right:2px;font-size:10px;font-weight:900}.lucky-chip{background:linear-gradient(#2a1a02,#0d0801);border:1px solid #ffd700a6;border-radius:999px;flex:none;align-items:center;gap:5px;padding:3px 8px 3px 6px;display:inline-flex;box-shadow:0 0 10px #ffd70059}.lucky-chip .lucky-n{width:22px;height:22px;font-family:var(--serif);border:1px solid #ffd700b3;border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:inline-grid}.lucky-chip.red .lucky-n{color:#fff;background:linear-gradient(#d11515,#7a0606)}.lucky-chip.black .lucky-n{color:#fff;background:linear-gradient(#1f1f1f,#050505)}.lucky-chip.green .lucky-n{color:#fff;background:linear-gradient(#0aa341,#053617)}.lucky-chip .lucky-mult{font-family:var(--display);background:linear-gradient(180deg, #fff5b1 0%, var(--gold) 60%, #c89400 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 6px #ffd7008c);-webkit-background-clip:text;background-clip:text;font-size:12px;font-weight:900}.cell.is-lucky{isolation:isolate}.cell .lucky-badge{z-index:3;pointer-events:none;font-family:var(--display);letter-spacing:.05em;background:linear-gradient(180deg, #fff5b1, var(--gold) 60%, #a87f0c);color:#1a1100;border:1px solid #0006;border-radius:4px;padding:1px 4px;font-size:8px;font-weight:900;animation:1.4s ease-in-out infinite badgePulse;position:absolute;top:1px;right:1px;box-shadow:0 0 8px #ffd700d9,inset 0 1px #ffffff80}@keyframes badgePulse{0%,to{transform:scale(1);box-shadow:0 0 8px #ffd700d9,inset 0 1px #ffffff80}50%{transform:scale(1.1);box-shadow:0 0 14px gold,inset 0 1px #ffffffb3}}.board-wrap{flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:0;padding:6px 8px 4px;animation:.32s boardFadeIn;display:flex}@keyframes boardFadeIn{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}.board{aspect-ratio:.62;background:#29d8ff8c;border:1.5px solid #29d8ffd9;border-radius:6px;grid-template-rows:.7fr repeat(12,1fr) .75fr;grid-template-columns:.78fr 1fr 1fr 1fr;gap:2px;width:100%;max-width:380px;margin:0 auto;padding:2px;display:grid;position:relative;overflow:hidden;box-shadow:0 0 22px #29d8ffd9,0 0 44px #29d8ff80,0 0 70px #007cff4d,0 12px 30px #000000d9,inset 0 0 0 1px #0000008c}.board:before{content:"";z-index:0;background:radial-gradient(circle at 50% 0,#29d8ff0f,#0000 70%),linear-gradient(#03060e 0%,#02040a 100%);position:absolute;inset:0}.board>*{z-index:1;position:relative}.cell{font-family:var(--serif);color:var(--soft-white);cursor:pointer;background:linear-gradient(#060a14 0%,#03060e 100%);place-items:center;font-size:18px;font-weight:700;display:grid;position:relative}.cell:active{filter:brightness(1.6);transition:filter 60ms}.cell.has-bet{z-index:2;background:radial-gradient(circle,#29d8ff73,#29d8ff1a 70%,#0000 100%),linear-gradient(#060a14 0%,#03060e 100%);animation:.22s betGlowIn;box-shadow:inset 0 0 22px #29d8ffbf,inset 0 0 0 1px #29d8ffb3,0 0 14px #29d8ffd9}@keyframes betGlowIn{0%{box-shadow:inset 0 0 4px #29d8ff40}to{box-shadow:inset 0 0 22px #29d8ffbf,inset 0 0 0 1px #29d8ffb3,0 0 14px #29d8ffd9}}.cell.flash{animation:.28s flash}.cell.winning{animation:1.1s infinite winningPulse}@keyframes flash{0%{background-color:#ffd70059}to{background-color:#0000}}@keyframes winningPulse{0%,to{filter:brightness();box-shadow:inset 0 0 0 2px var(--gold), inset 0 0 22px #ffd70080, 0 0 22px #ffd70080}50%{filter:brightness(1.5);box-shadow:inset 0 0 0 3px var(--gold), inset 0 0 30px #ffd700e6, 0 0 32px #00ffffb3}}.cell-num{background:linear-gradient(#060a14 0%,#03060e 100%)}.cell-num.color-red .num-label{color:var(--ruby-bright);text-shadow:0 0 6px #ff1e1e8c,0 1px #000000d9}.cell-num.color-black .num-label{color:var(--soft-white);text-shadow:0 1px 2px #000000f2}.cell-num.color-green .num-label{color:#34d869;text-shadow:0 0 8px #34d86999,0 1px #000000d9}.cell-zero{font-size:22px}.cell-num .num-label{font-family:var(--serif);letter-spacing:.02em;font-size:22px;font-weight:700;line-height:1}.cell-zero .num-label{font-size:20px}.cell-out{font-family:var(--serif);letter-spacing:.18em;text-transform:uppercase;color:var(--soft-white);background:linear-gradient(#060a14 0%,#03060e 100%);font-size:12px}.cell-out .out-label{text-align:center;writing-mode:vertical-rl;letter-spacing:.16em;text-shadow:0 1px 2px #000000d9;font-size:13px;font-weight:700;line-height:1.1;transform:rotate(180deg)}.cell-col{font-family:var(--serif);letter-spacing:.12em;text-transform:uppercase;color:var(--soft-white);opacity:.7;background:linear-gradient(#060a14 0%,#03060e 100%);font-size:11px;font-weight:700}.cell-red,.cell-black{background:linear-gradient(#060a14 0%,#03060e 100%)}.diamond{border:2px solid #ffd700d9;width:28px;height:28px;display:block;transform:rotate(45deg);box-shadow:inset 0 0 12px #000000b3,0 0 14px #ffd7004d}.diamond-red{background:linear-gradient(#e02020,#850808)}.diamond-black{background:linear-gradient(#2c2c2c,#050505)}.hover-indicator{pointer-events:none;border:2px dashed var(--neon);z-index:4;border-radius:4px;display:none;position:absolute;box-shadow:0 0 16px #00ffff8c}.board.locked .cell{cursor:not-allowed;filter:brightness(.55)saturate(.7)}.board.locked{box-shadow:inset 0 0 0 2px #ff000073,0 12px 28px #0009}.chips-layer{pointer-events:none;z-index:5;position:absolute;inset:0}.chip-stack{width:0;height:0;position:absolute}.chip-stack.winning-stack{animation:.7s infinite stackWin}.chip-stack.losing-stack .chip{animation:.7s forwards stackLose}@keyframes stackWin{0%,to{filter:drop-shadow(0 0 8px #00ffffb3)drop-shadow(0 0 16px #ffd70080)}50%{filter:drop-shadow(0 0 18px #0ff)drop-shadow(0 0 28px #ffd700d9)}}@keyframes stackLose{0%{opacity:1}to{opacity:.18;filter:grayscale(.8)}}.chip{background:radial-gradient(circle at 32% 28%, #ffffff8c, transparent 38%), radial-gradient(circle at 50% 50%, var(--chip-base) 0 38%, #ffffffd9 38% 39%, var(--chip-base) 39% 60%, var(--chip-ring) 60% 100%);border-radius:50%;place-items:center;width:34px;height:34px;animation:.26s cubic-bezier(.2,1.4,.3,1) chipDrop;display:grid;position:absolute;top:0;left:0;transform:translate(-50%,-50%);box-shadow:0 4px 8px #000000b3,0 1px #ffffff26,inset 0 0 0 1.5px #00000080,inset 0 -3px 4px #00000059}.chip:before{content:"";pointer-events:none;background:conic-gradient(#0000 0deg 20deg,#ffffff8c 20deg 25deg,#0000 25deg 65deg,#ffffff8c 65deg 70deg,#0000 70deg 110deg,#ffffff8c 110deg 115deg,#0000 115deg 155deg,#ffffff8c 155deg 160deg,#0000 160deg 200deg,#ffffff8c 200deg 205deg,#0000 205deg 245deg,#ffffff8c 245deg 250deg,#0000 250deg 290deg,#ffffff8c 290deg 295deg,#0000 295deg 335deg,#ffffff8c 335deg 340deg,#0000 340deg 360deg);border-radius:50%;position:absolute;inset:0;-webkit-mask:radial-gradient(circle,#0000 0 60%,#000 60% 100%);mask:radial-gradient(circle,#0000 0 60%,#000 60% 100%)}.chip-label{font-family:var(--display);color:#fff;text-shadow:0 1px 2px #000000d9,0 0 4px #0009;letter-spacing:.02em;font-size:11px;font-weight:900;position:relative}@keyframes chipDrop{0%{opacity:0;transform:translate(-50%,-180%)scale(1.7)}60%{opacity:1;transform:translate(-50%,-50%)scale(1)}80%{transform:translate(-50%,-55%)scale(1.06)}to{transform:translate(-50%,-50%)scale(1)}}.tray{z-index:10;background:linear-gradient(#04060a00 0%,#04060aeb 25%,#020308fc 100%);flex-direction:column;gap:6px;padding:6px 8px 10px;display:flex;position:sticky;bottom:0}.quick-bets{justify-content:center;gap:6px;padding:0 2px 2px;display:flex}.quick{background:linear-gradient(180deg, var(--charcoal-2), var(--charcoal));height:28px;color:var(--soft-white);font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;will-change:transform;border:1px solid #ffd70059;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:5px;padding:0 6px;font-size:11px;font-weight:800;transition:transform 60ms cubic-bezier(.2,.9,.3,1);display:inline-flex;box-shadow:inset 0 1px #ffffff12}.quick:active{transform:scale(.94)}.q-diamond{border:1px solid #ffd700b3;width:12px;height:12px;display:inline-block;transform:rotate(45deg)}.q-red{background:linear-gradient(#d92020,#7c0808)}.q-black{background:linear-gradient(#2a2a2a,#050505)}.auto-btn{color:var(--neon);border-color:#00ffff80;flex:1.2}.auto-btn.active{border-color:var(--neon);color:#fff;background:linear-gradient(#1c4a4a,#07181d);animation:1.2s infinite autoPulse;box-shadow:0 0 14px #00ffffb3}@keyframes autoPulse{0%,to{box-shadow:0 0 12px #00ffff8c}50%{box-shadow:0 0 22px #00fffff2}}.chip-tray{justify-content:center;align-items:center;gap:8px;padding:4px 0;display:flex}.tray-chip{background:radial-gradient(circle at 32% 28%, #ffffff80, transparent 38%), radial-gradient(circle at 50% 50%, var(--chip-base) 0 38%, #ffffffd9 38% 39%, var(--chip-base) 39% 60%, var(--chip-ring) 60% 100%);width:44px;height:44px;font-family:var(--display);color:#fff;text-shadow:0 1px 2px #000c;border:0;border-radius:50%;place-items:center;font-size:14px;font-weight:900;transition:transform .14s,box-shadow .14s;display:grid;position:relative;box-shadow:0 5px 12px #0009,0 1px #fff3,inset 0 0 0 2px #00000073,inset 0 -4px 5px #00000059}.tray-chip:before{content:"";background:conic-gradient(#0000 0deg 20deg,#ffffff8c 20deg 25deg,#0000 25deg 65deg,#ffffff8c 65deg 70deg,#0000 70deg 110deg,#ffffff8c 110deg 115deg,#0000 115deg 155deg,#ffffff8c 155deg 160deg,#0000 160deg 200deg,#ffffff8c 200deg 205deg,#0000 205deg 245deg,#ffffff8c 245deg 250deg,#0000 250deg 290deg,#ffffff8c 290deg 295deg,#0000 295deg 335deg,#ffffff8c 335deg 340deg,#0000 340deg 360deg);border-radius:50%;position:absolute;inset:0;-webkit-mask:radial-gradient(circle,#0000 0 60%,#000 60% 100%);mask:radial-gradient(circle,#0000 0 60%,#000 60% 100%)}.tray-chip.active{box-shadow:0 8px 22px #00ffff8c, 0 0 24px #00ffff8c, inset 0 0 0 2px var(--neon), inset 0 -4px 5px #00000059;transform:translateY(-4px)scale(1.08)}.actions{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.btn{background:linear-gradient(180deg, var(--charcoal-2), var(--charcoal));height:42px;color:var(--soft-white);font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;will-change:transform;border:1px solid #ffd70080;border-radius:12px;place-items:center;font-size:11px;font-weight:800;transition:transform 70ms cubic-bezier(.2,.9,.3,1);display:grid;box-shadow:0 4px 10px #0000008c,inset 0 1px #ffffff12}.btn:active{transform:scale(.94)}.btn:disabled{opacity:.35;pointer-events:none}.btn.primary{background:linear-gradient(180deg, #fff5b1 0%, var(--gold) 50%, #c89b00 100%);color:#1a1100;text-shadow:0 1px #fff6;letter-spacing:.18em;border:1px solid #fff7c4;grid-column:span 2;font-size:14px;box-shadow:0 0 26px #ffd7008c,0 4px 14px #ffd70059,inset 0 1px #ffffffb3,inset 0 -2px 4px #0003}.btn.primary:active{background:linear-gradient(#fff5b1 0%,#ffe680 50%,#c89b00 100%);box-shadow:0 0 30px #00ffffb3,inset 0 1px #ffffff80}.btn.primary:disabled{background:linear-gradient(180deg, var(--charcoal-2), var(--charcoal));color:var(--muted);box-shadow:none;text-shadow:none;border-color:#ffffff26}.btn.ghost{border-color:#ffffff2e}.result-overlay{pointer-events:none;z-index:30;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:radial-gradient(circle,#0000008c 0%,#000000e0 75%);place-items:center;display:grid;position:fixed;inset:0}.result-overlay.mode-win{background:radial-gradient(circle,#0000008c 0%,#000000eb 75%)}.result-overlay.mode-lose{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0}.win-card{aspect-ratio:1;pointer-events:none;grid-template-columns:minmax(0,1fr);place-items:center;width:min(86vw,420px);animation:.48s cubic-bezier(.2,1.6,.25,1) both winCardIn;display:grid;position:relative}@keyframes winCardIn{0%{opacity:0;transform:scale(.5)}60%{opacity:1;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}.win-rays{opacity:.85;background:conic-gradient(#00c8608c 0deg 8deg,#0000 8deg 30deg,#00e66e73 30deg 38deg,#0000 38deg 60deg,#00c8608c 60deg 68deg,#0000 68deg 90deg,#00e66e73 90deg 98deg,#0000 98deg 120deg,#00c8608c 120deg 128deg,#0000 128deg 150deg,#00e66e73 150deg 158deg,#0000 158deg 180deg,#00c8608c 180deg 188deg,#0000 188deg 210deg,#00e66e73 210deg 218deg,#0000 218deg 240deg,#00c8608c 240deg 248deg,#0000 248deg 270deg,#00e66e73 270deg 278deg,#0000 278deg 300deg,#00c8608c 300deg 308deg,#0000 308deg 330deg,#00e66e73 330deg 338deg,#0000 338deg 360deg);border-radius:50%;animation:14s linear infinite rayRotate;position:absolute;inset:-8%;-webkit-mask-image:radial-gradient(circle,#000 30%,#0000 75%);mask-image:radial-gradient(circle,#000 30%,#0000 75%)}.tier-big .win-rays{opacity:1;animation-duration:9s}.tier-jackpot .win-rays{opacity:1;background:conic-gradient(#00e66ea6 0deg 12deg,#0000 12deg 30deg,#ffd7008c 30deg 42deg,#0000 42deg 60deg,#00e66ea6 60deg 72deg,#0000 72deg 90deg,#ffd7008c 90deg 102deg,#0000 102deg 120deg,#00e66ea6 120deg 132deg,#0000 132deg 150deg,#ffd7008c 150deg 162deg,#0000 162deg 180deg,#00e66ea6 180deg 192deg,#0000 192deg 210deg,#ffd7008c 210deg 222deg,#0000 222deg 240deg,#00e66ea6 240deg 252deg,#0000 252deg 270deg,#ffd7008c 270deg 282deg,#0000 282deg 300deg,#00e66ea6 300deg 312deg,#0000 312deg 330deg,#ffd7008c 330deg 342deg,#0000 342deg 360deg);animation-duration:5s}@keyframes rayRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.win-spotlight{filter:blur(8px);background:radial-gradient(circle,#00e66e8c 0%,#00c8602e 40%,#0000 70%);border-radius:50%;animation:2.4s ease-in-out infinite spotPulse;position:absolute;inset:12%}@keyframes spotPulse{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}.tier-jackpot .win-spotlight{background:radial-gradient(circle,#00e66ea6 0%,#ffd70059 40%,#0000 70%)}.win-content{z-index:2;flex-direction:column;align-items:center;gap:6px;display:flex;position:relative}.win-label{font-family:var(--display);letter-spacing:.4em;color:#c8ffd9;text-shadow:0 0 10px #00e66ed9,0 1px 2px #000000b3;text-transform:uppercase;font-size:16px;font-weight:800}.tier-big .win-label{letter-spacing:.32em;font-size:22px}.tier-jackpot .win-label{letter-spacing:.28em;color:#fff;text-shadow:0 0 12px #00e66ef2,0 0 24px #ffd700b3,0 1px 2px #000000d9;font-size:28px;animation:.6s ease-in-out infinite alternate jackpotFlash}@keyframes jackpotFlash{0%{transform:scale(1)}to{transform:scale(1.06)}}.win-amount{font-family:var(--display);letter-spacing:-.01em;white-space:nowrap;transform-origin:50%;background:linear-gradient(#c8ffd9 0%,#1cd061 50%,#056b2c 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px #043c19d9)drop-shadow(0 4px 14px #0009)drop-shadow(0 0 22px #00e66e99);-webkit-background-clip:text;background-clip:text;font-size:clamp(40px,14vw,72px);font-weight:900;line-height:1;display:inline-block}.tier-big .win-amount{font-size:clamp(52px,18vw,96px)}.tier-jackpot .win-amount{filter:drop-shadow(0 2px #043c19d9)drop-shadow(0 4px 14px #0009)drop-shadow(0 0 26px #00e66ed9)drop-shadow(0 0 42px #ffd7008c);font-size:clamp(60px,22vw,108px)}.win-content{box-sizing:border-box;text-align:center;flex-direction:column;align-items:center;width:100%;min-width:0;padding:0 12px;display:flex}.win-lucky-badge{font-family:var(--display);letter-spacing:.18em;background:linear-gradient(180deg, #fff5b1 0%, var(--gold) 60%, #a87f0c 100%);color:#1a1100;border:1px solid #00000073;border-radius:999px;margin-bottom:6px;padding:4px 10px;font-size:12px;font-weight:900;animation:.8s ease-in-out infinite luckyBadgePulse;display:inline-block;box-shadow:0 0 16px #ffd700d9}@keyframes luckyBadgePulse{0%,to{transform:scale(1);box-shadow:0 0 14px #ffd700b3}50%{transform:scale(1.08);box-shadow:0 0 22px gold}}.win-sub{font-family:var(--display);letter-spacing:.18em;text-transform:uppercase;color:#ffffffd9;text-shadow:0 1px 2px #000000b3;margin-top:4px;font-size:12px;font-weight:700}.result-num-inline{width:22px;height:22px;font-family:var(--serif);vertical-align:-6px;border:1px solid #ffd70080;border-radius:50%;place-items:center;margin:0 4px;font-size:12px;font-weight:700;display:inline-grid}.result-num-inline.red{color:#fff;background:linear-gradient(#d11515,#7a0606)}.result-num-inline.black{color:#fff;background:linear-gradient(#1f1f1f,#050505)}.result-num-inline.green{color:#fff;background:linear-gradient(#0aa341,#053617)}.blood-drip{pointer-events:none;clip-path:polygon(0% 0%,100% 0%,100% 22%,96% 28%,92% 24%,88% 32%,82% 26%,76% 38%,70% 28%,62% 36%,54% 30%,46% 42%,38% 30%,30% 36%,22% 28%,14% 36%,8% 26%,4% 32%,0% 24%);opacity:0;mix-blend-mode:normal;background:radial-gradient(120% 35% at 50% 0,#6e0000b3 0%,#46000059 35%,#0000 65%),linear-gradient(#50000080 0%,#50000000 28%);height:100%;animation:1.7s ease-out forwards bloodDrip;position:fixed;inset:0 0 auto}@keyframes bloodDrip{0%{opacity:0;transform:translateY(-20%)}15%{opacity:1;transform:translateY(0)}60%{opacity:.95;transform:translateY(3%)}to{opacity:0;transform:translateY(8%)}}.loss-float{pointer-events:none;background:radial-gradient(100% 60% at 50% 0,#a0000073 0%,#0000 70%),linear-gradient(#1c0000f5,#080000fa);border:1px solid #b41e1e8c;border-radius:4px;flex-direction:column;align-items:center;gap:4px;padding:16px 28px;animation:2.2s ease-out forwards lossFloat;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 6px 22px #000000b3,0 0 30px #78000073}@keyframes lossFloat{0%{opacity:0;transform:translate(-50%,-30%)scale(.85)}20%{opacity:1;transform:translate(-50%,-50%)scale(1.02)}85%{opacity:1;transform:translate(-50%,-65%)scale(1)}to{opacity:0;transform:translate(-50%,-85%)scale(1)}}.loss-label{font-family:var(--display);letter-spacing:.4em;color:#ff3030;text-shadow:0 0 10px #a00000e6,0 1px 2px #000000d9;text-transform:uppercase;font-size:12px;font-weight:900}.loss-amount{font-family:var(--display);background:linear-gradient(#ff5a5a 0%,#aa0606 55%,#4a0202 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px #140000f2)drop-shadow(0 4px 12px #000000b3)drop-shadow(0 0 18px #a000008c);letter-spacing:.02em;-webkit-background-clip:text;background-clip:text;font-size:56px;font-weight:900;line-height:1}.loss-amount:before{content:"-$";margin-right:2px}.loss-result{font-family:var(--display);letter-spacing:.2em;text-transform:uppercase;color:#ffc8c8b3;margin-top:2px;font-size:11px;font-weight:700}.loss-float.near-miss{border-color:#ff782899;box-shadow:0 6px 22px #000000b3,0 0 24px #ff782866}.loss-float.near-miss .loss-label{color:#ff8a4a}.loss-float.near-miss .loss-amount{background:linear-gradient(#ffb37a 0%,#d04400 55%,#4a1500 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.fx-canvas{pointer-events:none;z-index:25;position:fixed;inset:0}.screen-flash{pointer-events:none;z-index:28;mix-blend-mode:screen;animation:.6s forwards flashFade;position:fixed;inset:0}.screen-flash.flash-gold{background:radial-gradient(circle,gold 0%,#ffd70000 65%)}.screen-flash.flash-green{background:radial-gradient(circle,#32c85a 0%,#32c85a00 65%)}.screen-flash.flash-red{background:radial-gradient(circle,#c00 0%,#c000 65%)}@keyframes flashFade{0%{opacity:var(--start,1)}to{opacity:0}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-6px)}20%,40%,60%,80%{transform:translate(6px)}}.shake{animation:.5s shake}.hidden{display:none!important}
