*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}:root{--bg-deep: #02050f;--bg-mid: #050a1e;--bg-elev: rgba(0, 240, 255, .04);--cyan: #00f0ff;--cyan-dim: rgba(0, 240, 255, .55);--cyan-soft: rgba(0, 240, 255, .12);--cyan-faint: rgba(0, 240, 255, .05);--glow-cyan: 0 0 20px rgba(0, 240, 255, .45);--gold-bright: #fdf65f;--gold-mid: #f4bf13;--gold-dark: #834700;--gold-shadow: #462000;--gold-soft: rgba(244, 191, 19, .18);--gold-faint: rgba(244, 191, 19, .07);--glow-gold: 0 0 24px rgba(244, 191, 19, .6);--text-primary: #fef8a7;--text-secondary: rgba(254, 248, 167, .7);--text-muted: rgba(254, 248, 167, .4);--danger: #ff3060;--font-body: "Pretendard", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Courier New", monospace;--font-impact: "Anton", "Impact", "Bebas Neue", sans-serif;--sa-top: env(safe-area-inset-top, 0px);--sa-bot: env(safe-area-inset-bottom, 0px)}html,body{background:var(--bg-deep);color:var(--text-primary);font-family:var(--font-body);user-select:none;-webkit-user-select:none;overflow-x:hidden}body{min-height:100vh;background:radial-gradient(ellipse 700px 500px at 50% -150px,rgba(0,240,255,.12),transparent 60%),radial-gradient(ellipse 600px 500px at 50% 50%,rgba(244,191,19,.07),transparent 70%),radial-gradient(ellipse 400px 600px at 0% 70%,rgba(0,240,255,.04),transparent 50%),radial-gradient(ellipse 400px 600px at 100% 70%,rgba(0,240,255,.04),transparent 50%),linear-gradient(180deg,#050a1e,#02050f 60%,#010205);background-attachment:fixed}#root{min-height:100vh}.app{position:relative;min-height:100vh;padding-top:var(--sa-top);padding-bottom:var(--sa-bot)}.loading{display:flex;align-items:center;justify-content:center;height:100vh;color:var(--cyan);font-family:var(--font-mono);font-size:.9em;letter-spacing:.2em}.card-modal{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:16px}.card-modal-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#02050f8c,#050a1eb3,#02050fd9);backdrop-filter:blur(8px) saturate(.8);-webkit-backdrop-filter:blur(8px) saturate(.8)}.card-modal-content{position:relative;z-index:1;width:100%;max-width:480px;text-align:center;padding-top:calc(var(--tg-safe-top, 0px) + 32px);padding-bottom:calc(var(--tg-safe-bottom, 0px) + 32px);padding-left:calc(var(--tg-safe-left, 0px) + 8px);padding-right:calc(var(--tg-safe-right, 0px) + 8px)}.card-modal-title{font-family:var(--font-impact);font-size:1.6em;font-weight:900;color:var(--text-primary);letter-spacing:.08em;margin-bottom:6px;text-shadow:0 0 16px rgba(0,240,255,.4)}.card-modal-subtitle{font-size:.82em;color:var(--text-secondary);margin-bottom:28px;letter-spacing:.04em}.card-grid{display:grid;grid-template-columns:1fr;gap:10px;margin-bottom:20px}@media(min-width:600px){.card-grid{grid-template-columns:repeat(3,1fr)}}.card{background:linear-gradient(180deg,#00f0ff1a,#00f0ff08);border:1.5px solid var(--cyan-dim);border-radius:14px;padding:22px 18px 20px;cursor:pointer;transition:transform .15s ease,border-color .15s,box-shadow .15s,background .15s;color:var(--text-primary);font-family:var(--font-body);text-align:left;position:relative;overflow:hidden;display:flex;flex-direction:column;gap:8px;box-shadow:0 6px 20px #00f0ff29,inset 0 1px #ffffff0f;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);animation:glitch-line 4s infinite}@keyframes glitch-line{0%,to{left:-100%}60%{left:200%}}.card:hover,.card:active{background:linear-gradient(180deg,var(--cyan-soft),var(--cyan-faint));border-color:var(--cyan);box-shadow:var(--glow-cyan);transform:translateY(-2px)}.card-tag{font-family:var(--font-mono);font-size:.7em;color:var(--cyan);letter-spacing:.25em;text-transform:uppercase;font-weight:600;text-shadow:0 0 8px rgba(0,240,255,.4)}.card-name{font-size:1.5em;font-weight:800;color:var(--gold-bright);letter-spacing:.01em;line-height:1.2;text-shadow:0 0 10px rgba(244,191,19,.3)}.card-desc{font-size:1em;color:var(--text-primary);line-height:1.45;font-weight:500;letter-spacing:.01em}.card-preview-stats{margin-top:10px;padding-top:8px;border-top:1px dashed rgba(0,240,255,.15);display:flex;justify-content:center;gap:6px;font-family:var(--font-mono);font-size:11px;color:var(--cyan-dim)}.card-preview-stats .stat-rtp{color:var(--gold-mid);font-weight:500}.card-preview-stats .stat-dot{opacity:.5}.card-preview-stats .stat-variance{color:var(--text-secondary)}.card{position:relative}.card-info-btn{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:50%;background:#00f0ff26;border:1px solid var(--cyan-soft);color:var(--cyan-dim);font-family:var(--font-mono);font-size:11px;font-weight:700;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:all .15s;z-index:2}.card-info-btn:hover,.card-info-btn:active{background:var(--cyan-soft);border-color:var(--cyan);color:var(--cyan);box-shadow:0 0 12px #00f0ff4d}.card-modal-footer{margin-top:16px;display:flex;flex-direction:column;align-items:center;gap:8px}.refresh-btn{background:transparent;border:1px solid rgba(255,255,255,.25);color:var(--text-secondary);padding:10px 22px;border-radius:24px;font-family:var(--font-body);cursor:pointer;font-size:.85em;letter-spacing:.08em;transition:all .15s;display:inline-flex;align-items:center;gap:8px}.refresh-btn:hover,.refresh-btn:active{background:#ffffff0f;border-color:var(--text-secondary);color:var(--text-primary)}.cancel-btn{background:transparent;border:none;color:var(--text-muted);padding:6px 14px;font-family:var(--font-body);font-size:.78em;letter-spacing:.05em;cursor:pointer;transition:color .15s}.cancel-btn:hover,.cancel-btn:active{color:var(--text-secondary);text-decoration:underline}.cards-list-btn{background:transparent;border:1px solid var(--cyan-soft);color:var(--cyan-dim);padding:8px 18px;border-radius:20px;font-family:var(--font-body);font-size:.8em;letter-spacing:.08em;cursor:pointer;transition:all .15s}.cards-list-btn:hover,.cards-list-btn:active{background:var(--cyan-soft);border-color:var(--cyan);color:var(--cyan)}.cards-list-modal{position:fixed;inset:0;z-index:1100;display:flex;align-items:center;justify-content:center;padding:16px;padding-top:max(16px,env(safe-area-inset-top,0px));padding-bottom:max(16px,env(safe-area-inset-bottom,0px))}.cards-list-overlay{position:absolute;inset:0;background:#02050fe0;backdrop-filter:blur(4px)}.cards-list-content{position:relative;width:100%;max-width:480px;max-height:100%;overflow-y:auto;background:var(--bg-mid);border:1px solid var(--cyan-soft);border-radius:8px;padding:18px 14px;display:flex;flex-direction:column;gap:12px;box-shadow:0 0 60px #00000080,0 0 24px #00f0ff14}.cards-list-close{position:absolute;top:6px;right:8px;width:32px;height:32px;background:transparent;border:none;color:var(--text-muted);font-size:24px;line-height:1;cursor:pointer;transition:color .1s}.cards-list-close:hover,.cards-list-close:active{color:var(--text-primary)}.cards-list-header{display:flex;flex-direction:column;gap:4px;padding-bottom:10px;border-bottom:1px dashed var(--cyan-soft)}.cards-list-title{font-family:var(--font-impact);font-size:18px;letter-spacing:.2em;color:var(--cyan);text-shadow:0 0 12px rgba(0,240,255,.4)}.cards-list-sub{font-family:var(--font-body);font-size:11px;color:var(--text-muted);letter-spacing:.05em}.cards-list-grid{display:flex;flex-direction:column;gap:6px}.cards-list-item{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center;padding:10px 8px;border:1px solid rgba(254,248,167,.06);border-radius:6px;background:#fef8a705;transition:background .15s}.cards-list-item.cat-safety{border-left:3px solid var(--cyan-dim)}.cards-list-item.cat-distribution{border-left:3px solid var(--gold-mid)}.cards-list-item.cat-distortion{border-left:3px solid var(--danger)}.cards-list-icon{font-size:20px;text-align:center}.cards-list-body{display:flex;flex-direction:column;gap:2px;min-width:0}.cards-list-name{font-family:var(--font-body);font-size:13px;font-weight:600;color:var(--text-primary);letter-spacing:.02em}.cards-list-desc{font-family:var(--font-body);font-size:11px;color:var(--text-secondary);line-height:1.35}.cards-list-cat{font-family:var(--font-body);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);padding:3px 6px;border-radius:3px;background:#fef8a70a}.ticker-banner{width:100%;max-width:280px;margin:0 auto;padding:5px 14px;text-align:center;background:linear-gradient(90deg,transparent,rgba(244,191,19,.06),rgba(244,191,19,.1),rgba(244,191,19,.06),transparent);border-top:1px solid var(--gold-faint);border-bottom:1px solid var(--gold-faint);overflow:hidden;height:24px;display:flex;align-items:center;justify-content:center}.ticker-msg{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.06em;color:var(--gold-mid);text-shadow:0 0 1px rgba(244,191,19,.5),0 0 8px rgba(244,191,19,.35);animation:ticker-fade .45s ease-out}@keyframes ticker-fade{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.version-badge{position:fixed;bottom:4px;right:6px;font-family:var(--font-mono);font-size:9px;color:#ffffff40;z-index:9999;letter-spacing:.05em;cursor:default;user-select:none;-webkit-user-select:none;padding:4px 6px}.slot-screen{max-width:440px;margin:0 auto;padding-top:var(--tg-safe-top, 0px);padding-bottom:calc(var(--tg-safe-bottom, 0px) + 24px);padding-left:calc(var(--tg-safe-left, 0px) + 16px);padding-right:calc(var(--tg-safe-right, 0px) + 16px);display:flex;flex-direction:column;gap:14px;min-height:100vh}.slot-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:4px 0}.balance{display:flex;flex-direction:column;gap:2px}.balance-label{font-family:var(--font-mono);font-size:.65em;color:var(--text-muted);letter-spacing:.25em;text-transform:uppercase}.balance-value{font-family:var(--font-mono);font-size:1.4em;font-weight:600;color:var(--cyan);text-shadow:0 0 1px rgba(0,240,255,.5),0 0 8px rgba(0,240,255,.4);font-variant-numeric:tabular-nums;letter-spacing:.02em}.card-chip{background:linear-gradient(180deg,#00f0ff24,#00f0ff0d);border:1px solid var(--cyan-dim);border-radius:100px;padding:7px 14px;display:inline-flex;align-items:center;gap:6px;cursor:pointer;color:var(--text-primary);font-family:var(--font-body);font-size:.82em;box-shadow:0 4px 16px #00f0ff2e,0 0 0 1px #00f0ff1a,inset 0 1px #ffffff14;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:all .15s;font-weight:500}.card-chip:active{transform:scale(.96)}.chip-dot{width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px #00f0ffb3;flex-shrink:0}.chip-name{letter-spacing:.02em}.jackpot-counter{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 0;background:linear-gradient(90deg,transparent,var(--gold-soft),transparent);border-top:1px solid rgba(255,193,69,.3);border-bottom:1px solid rgba(255,193,69,.3)}.jackpot-counter:before,.jackpot-counter:after{content:"◆";position:absolute;top:50%;transform:translateY(-50%);color:var(--gold-mid);font-size:.6em;text-shadow:0 0 6px var(--gold-mid);opacity:.7}.jackpot-counter:before{left:12px}.jackpot-counter:after{right:12px}.jackpot-label{font-family:var(--font-impact);font-size:.72em;color:var(--gold-mid);letter-spacing:.28em;font-weight:700;text-shadow:0 0 1px rgba(255,193,69,.4),0 0 6px rgba(255,193,69,.3);padding-left:.28em}.jackpot-value{font-family:var(--font-mono);font-size:1.55em;font-weight:600;color:var(--cyan);text-shadow:0 0 1px rgba(0,240,255,.6),0 0 10px rgba(0,240,255,.4),0 0 22px rgba(0,240,255,.18);font-variant-numeric:tabular-nums;letter-spacing:.04em;display:inline-block;animation:jackpot-tick .5s ease-out}@keyframes jackpot-tick{0%{color:var(--gold-bright);transform:scale(1.08);text-shadow:0 0 4px rgba(255,234,0,1),0 0 18px rgba(255,234,0,.85),0 0 32px rgba(244,191,19,.6)}to{color:var(--cyan);transform:scale(1);text-shadow:0 0 1px rgba(0,240,255,.6),0 0 10px rgba(0,240,255,.4),0 0 22px rgba(0,240,255,.18)}}.slot-frame{position:relative;display:block;width:100%;padding:0;margin:0}.slot-canvas-wrapper{position:relative;display:block;width:100%;max-width:440px;margin:0 auto;height:0;padding-bottom:97.69%;overflow:hidden}.slot-canvas-wrapper canvas{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;display:block!important;margin:0!important}.result{text-align:center;font-family:var(--font-body);font-size:1.05em;font-weight:700;padding:14px 8px 6px;letter-spacing:.02em;min-height:110px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.result.idle{color:var(--text-muted);font-size:.82em;font-weight:400;letter-spacing:.1em}.result.is-spinning{opacity:.55;transition:opacity .18s ease-out}.result.small-win{color:var(--gold-bright);text-shadow:0 0 1px rgba(255,234,0,.4),0 0 8px rgba(255,234,0,.35);animation:result-fade-up .4s ease-out}.result.small-win .result-amount{font-family:var(--font-mono);font-size:1.5em;font-weight:600}.result.big-win{color:var(--gold-bright);text-shadow:0 0 2px rgba(255,234,0,.6),0 0 14px rgba(255,234,0,.6),0 0 30px rgba(244,191,19,.4);animation:result-pop .55s cubic-bezier(.34,1.56,.64,1)}.result.big-win .result-amount{font-family:var(--font-mono);font-size:2.4em;font-weight:700;letter-spacing:.02em}.result.jackpot{color:var(--gold-bright);text-shadow:0 0 2px rgba(255,234,0,.9),0 0 18px rgba(255,234,0,.75),0 0 40px rgba(244,191,19,.6);animation:jackpot-bounce 1s ease-out}.result.jackpot .result-headline{font-family:var(--font-impact);font-size:3em;letter-spacing:.18em;line-height:1;animation:jackpot-pulse .8s infinite alternate}.result.jackpot .result-amount{font-family:var(--font-mono);font-size:1.8em;font-weight:700;margin-top:4px}.result.jackpot .result-sub{font-size:.85em;color:var(--cyan);letter-spacing:.1em;text-transform:uppercase}.result-amount{font-family:var(--font-mono);font-size:1.5em}@keyframes result-fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes result-pop{0%{opacity:0;transform:scale(.6)}60%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@keyframes jackpot-bounce{0%{opacity:0;transform:scale(.4) translateY(20px)}40%{opacity:1;transform:scale(1.25) translateY(-4px)}70%{transform:scale(.95) translateY(2px)}to{transform:scale(1) translateY(0)}}@keyframes jackpot-pulse{0%{text-shadow:0 0 2px rgba(255,234,0,.9),0 0 18px rgba(255,234,0,.75)}to{text-shadow:0 0 4px rgba(255,234,0,1),0 0 30px rgba(255,234,0,1),0 0 50px rgba(244,191,19,.7)}}.result.miss{color:var(--text-muted)}.result.blocked{color:var(--text-secondary)}.result .muted{font-size:.85em;opacity:.65}.card-applied{font-family:var(--font-mono);font-size:.78em;color:var(--cyan);letter-spacing:.05em;font-weight:500;padding:3px 8px;border-radius:3px;margin-top:4px;display:inline-block}.card-applied.boosted{color:var(--gold-bright);font-weight:700;text-shadow:0 0 12px rgba(255,234,0,.6);background:#f4bf131f;border:1px solid var(--gold-soft);animation:card-impact-flash-gold .6s ease-out}.card-applied.rescued{color:var(--cyan);font-weight:700;text-shadow:0 0 12px rgba(0,240,255,.6);background:var(--cyan-soft);border:1px solid var(--cyan-soft);animation:card-impact-flash-cyan .6s ease-out}.card-applied.blocked{color:var(--danger);font-weight:600;background:#ff306014;border:1px solid rgba(255,48,96,.2);text-decoration:line-through;animation:card-impact-flash-red .5s ease-out}.card-applied.reduced{color:var(--text-secondary);font-style:italic}.card-applied.unchanged{color:var(--text-muted)}@keyframes card-impact-flash-gold{0%{transform:scale(.6);opacity:0;box-shadow:0 0 #f4bf1300}40%{transform:scale(1.18);opacity:1;box-shadow:0 0 24px #f4bf13b3}to{transform:scale(1);opacity:1;box-shadow:0 0 8px #f4bf1333}}@keyframes card-impact-flash-cyan{0%{transform:scale(.6);opacity:0;box-shadow:0 0 #00f0ff00}40%{transform:scale(1.18);opacity:1;box-shadow:0 0 24px #00f0ffb3}to{transform:scale(1);opacity:1;box-shadow:0 0 8px #00f0ff33}}@keyframes card-impact-flash-red{0%{transform:translate(-4px);opacity:0}20%{transform:translate(4px)}40%{transform:translate(-4px)}60%{transform:translate(4px)}to{transform:translate(0);opacity:.85}}@keyframes result-flash{0%{transform:scale(.85);opacity:0}50%{transform:scale(1.08)}to{transform:scale(1);opacity:1}}@keyframes jackpot-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes dots{0%,to{opacity:.4}50%{opacity:1}}.bet-controls{display:flex;flex-direction:column;gap:12px}.bet-row{display:flex;gap:6px;align-items:stretch;height:52px}.bet-step-btn{width:48px;flex-shrink:0;background:linear-gradient(180deg,#00f0ff24,#00f0ff0a);border:1px solid var(--cyan-dim);color:var(--cyan);border-radius:10px;font-family:var(--font-impact);font-size:1.6em;font-weight:900;cursor:pointer;transition:all .12s;display:flex;align-items:center;justify-content:center;line-height:1;box-shadow:0 4px 14px #00f0ff26,inset 0 1px #ffffff14;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.bet-step-btn:hover:not(:disabled),.bet-step-btn:active:not(:disabled){background:#00f0ff2e;box-shadow:var(--glow-cyan)}.bet-step-btn:disabled{opacity:.3;cursor:not-allowed}.bet-display{flex:1;background:linear-gradient(180deg,#00f0ff1f,#00f0ff0a);border:1px solid rgba(0,240,255,.3);border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;box-shadow:0 4px 14px #00f0ff26,inset 0 1px #ffffff14;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.bet-display-label{font-family:var(--font-mono);font-size:.6em;color:var(--text-muted);letter-spacing:.3em}.bet-display-value{font-family:var(--font-mono);font-size:1.05em;font-weight:600;color:var(--cyan);text-shadow:0 0 1px rgba(0,240,255,.4),0 0 6px rgba(0,240,255,.3);font-variant-numeric:tabular-nums;letter-spacing:.02em}.bet-max-btn{padding:0 16px;flex-shrink:0;background:linear-gradient(180deg,var(--gold-soft),var(--gold-faint));border:1px solid var(--gold-mid);color:var(--gold-bright);border-radius:10px;font-family:var(--font-impact);font-size:.9em;font-weight:700;letter-spacing:.2em;cursor:pointer;transition:all .12s;text-shadow:0 0 1px rgba(255,234,0,.4),0 0 4px rgba(255,234,0,.25)}.bet-max-btn:hover:not(:disabled),.bet-max-btn:active:not(:disabled){background:linear-gradient(180deg,rgba(255,234,0,.25),var(--gold-soft));box-shadow:0 0 14px #ffea0066}.bet-max-btn:disabled{opacity:.3;cursor:not-allowed}.spin-btn{padding:28px 18px 22px;background:radial-gradient(ellipse at top,var(--gold-bright) 0%,var(--gold-mid) 40%,var(--gold-dark) 100%);color:#2a1500;border:2px solid var(--gold-bright);border-radius:16px;font-family:var(--font-impact);cursor:pointer;text-transform:uppercase;text-shadow:0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 24px #f4bf1380,inset 0 1px #ffffff80,inset 0 -2px 6px #00000040;transition:background .2s,border-color .2s,box-shadow .2s;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;-webkit-user-select:none;user-select:none;touch-action:manipulation}.spin-btn-main{position:relative;z-index:2;font-size:1.7em;font-weight:700;letter-spacing:.25em;line-height:1}.spin-btn-hint{position:relative;z-index:2;font-family:var(--font-body);font-size:.72em;font-weight:500;letter-spacing:.16em;text-transform:uppercase;opacity:.55;text-shadow:none;min-height:.9em;transition:opacity .3s,color .3s}.spin-btn-hint.hint-pulse{opacity:1;color:#00d4e6;font-weight:700;font-size:.85em;text-shadow:0 0 8px rgba(0,212,230,.8);animation:hint-pulse 1.6s ease-in-out 3}@keyframes hint-pulse{0%,to{transform:scale(1);opacity:.85}50%{transform:scale(1.12);opacity:1}}.spin-btn-fill{position:absolute;inset:0;background:linear-gradient(to top,#00f0ff8c,#00f0ff26);transform-origin:bottom;transform:scaleY(0);pointer-events:none;z-index:1;border-radius:inherit}.spin-btn.long-pressing .spin-btn-fill{animation:spin-fill .5s linear forwards}@keyframes spin-fill{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.spin-btn.auto-active{background:radial-gradient(ellipse at top,var(--cyan) 0%,rgba(0,200,220,.85) 50%,rgba(0,80,100,.95) 100%);border-color:var(--cyan);color:#001520;box-shadow:0 0 32px #00f0ffa6,inset 0 1px #ffffff73,inset 0 -2px 6px #0003;animation:auto-pulse 1.4s ease-in-out infinite}@keyframes auto-pulse{0%,to{box-shadow:0 0 32px #00f0ffa6,inset 0 1px #ffffff73,inset 0 -2px 6px #0003}50%{box-shadow:0 0 46px #00f0ffe6,inset 0 1px #ffffff8c,inset 0 -2px 6px #0003}}.spin-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:spin-btn-shimmer 3.5s infinite}@keyframes spin-btn-shimmer{0%{left:-100%}to{left:200%}}.spin-btn:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.4)}.spin-btn:active:not(:disabled){transform:translateY(2px) scale(.99);box-shadow:0 0 12px #ffc14566,inset 0 2px 8px #0006}.auto-row{display:flex;gap:8px;align-items:center;justify-content:space-between}.auto-toggle{flex:1;padding:10px 16px;background:#fef8a70a;border:1px solid rgba(254,248,167,.16);color:var(--text-secondary);border-radius:10px;font-family:var(--font-body);font-size:.9em;font-weight:600;cursor:pointer;letter-spacing:.05em;transition:all .15s;display:inline-flex;align-items:center;justify-content:center;gap:8px}.auto-toggle:hover:not(:disabled){background:#fef8a714;border-color:#fef8a74d;color:var(--text-primary)}.auto-toggle.active{background:linear-gradient(180deg,#00f0ff2e,#00c8dc14);color:var(--cyan);border-color:var(--cyan-dim);box-shadow:0 4px 18px #00f0ff47,0 0 0 1px #00f0ff26,inset 0 1px #ffffff1a;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:auto-pulse 1.6s infinite}@keyframes auto-pulse{0%,to{box-shadow:0 4px 18px #00f0ff47,0 0 0 1px #00f0ff26}50%{box-shadow:0 4px 26px #00f0ff73,0 0 0 1px #00f0ff40}}.speed-toggle{display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:.8em;color:var(--text-secondary);cursor:pointer;padding:6px 4px}.speed-toggle input[type=checkbox]{appearance:none;width:36px;height:20px;background:#ffffff1a;border-radius:12px;position:relative;cursor:pointer;transition:background .2s}.speed-toggle input[type=checkbox]:checked{background:var(--cyan)}.speed-toggle input[type=checkbox]:before{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform .2s}.speed-toggle input[type=checkbox]:checked:before{transform:translate(16px)}.ambient-toggles{position:fixed;top:calc(12px + var(--sa-top));right:12px;display:flex;gap:6px;z-index:50}.ambient-btn{width:36px;height:36px;border-radius:50%;border:1px solid rgba(254,248,167,.2);background:#fef8a70a;color:var(--text-secondary);cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;line-height:1;padding:0;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.ambient-btn svg{display:block}.ambient-btn:hover{background:#fef8a71a;border-color:#fef8a766}.ambient-btn.on{background:var(--cyan-soft);border-color:var(--cyan-dim);color:var(--cyan);box-shadow:0 0 10px #00f0ff40}.ambient-btn.off{opacity:.5}.ambient-btn:active{transform:scale(.92)}.debug-panel{position:fixed;bottom:calc(12px + var(--sa-bot));right:12px;display:flex;flex-direction:column;gap:5px;z-index:50;opacity:.5;transition:opacity .2s}.debug-panel:hover{opacity:1}.debug-btn{padding:5px 10px;border-radius:6px;font-family:var(--font-mono);font-size:.65em;cursor:pointer;letter-spacing:.05em;text-align:right;border-style:dashed;display:inline-flex;align-items:center;justify-content:flex-end;gap:5px}.debug-btn.charge{background:var(--cyan-faint);border:1px dashed var(--cyan-dim);color:var(--cyan)}.debug-btn.charge:active{background:#00f0ff40}.debug-btn.reset{background:#ff30601a;border:1px dashed var(--danger);color:var(--danger)}.debug-btn.reset:active{background:#ff306040}.debug-sound-row{display:flex;gap:3px;margin-bottom:4px}.debug-sound-btn{width:32px;height:24px;padding:0;font-family:var(--font-mono);font-size:.6em;font-weight:700;background:#fef8a70f;border:1px dashed rgba(254,248,167,.3);color:var(--text-secondary);border-radius:4px;cursor:pointer;letter-spacing:.05em;transition:all .1s}.debug-sound-btn:hover,.debug-sound-btn:active{background:#fef8a72e;color:var(--text-primary);border-color:#fef8a780}.paytable-btn{padding:4px 9px;font-family:var(--font-impact);font-size:11px;letter-spacing:.12em;background:transparent;border:1px solid var(--gold-soft);color:var(--gold-mid);border-radius:4px;cursor:pointer;transition:all .15s}.paytable-btn:hover,.paytable-btn:active{background:var(--gold-soft);border-color:var(--gold-mid);color:var(--gold-bright);box-shadow:var(--glow-gold)}.paytable-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;padding-top:max(16px,env(safe-area-inset-top,0px));padding-bottom:max(16px,env(safe-area-inset-bottom,0px))}.paytable-overlay{position:absolute;inset:0;background:#02050fd9;backdrop-filter:blur(4px)}.paytable-content{position:relative;width:100%;max-width:480px;max-height:100%;overflow-y:auto;background:var(--bg-mid);border:1px solid var(--gold-soft);border-radius:8px;padding:18px 16px 14px;display:flex;flex-direction:column;gap:12px;box-shadow:0 0 60px #00000080,0 0 24px var(--gold-faint)}.paytable-close{position:absolute;top:6px;right:8px;width:32px;height:32px;background:transparent;border:none;color:var(--text-muted);font-size:24px;line-height:1;cursor:pointer;transition:color .1s}.paytable-close:hover,.paytable-close:active{color:var(--text-primary)}.paytable-header{display:flex;flex-direction:column;gap:6px;padding-bottom:10px;border-bottom:1px dashed var(--gold-faint)}.paytable-title{font-family:var(--font-impact);font-size:18px;letter-spacing:.2em;color:var(--gold-bright);text-shadow:0 0 12px var(--gold-soft)}.paytable-card{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary)}.paytable-card-icon{font-size:16px}.paytable-card-name{font-weight:600;color:var(--text-primary);letter-spacing:.02em}.paytable-card-desc{flex-basis:100%;margin-top:2px;font-size:11px;color:var(--text-muted);line-height:1.4}.paytable-card-none{color:var(--text-muted);font-style:italic}.paytable-table{display:flex;flex-direction:column;font-family:var(--font-mono);font-size:11.5px}.paytable-row{display:grid;grid-template-columns:100px 78px 64px 18px;gap:6px;align-items:center;padding:5px 4px;border-bottom:1px solid rgba(254,248,167,.05);color:var(--text-secondary)}.paytable-mark{display:inline-block;margin-left:3px;font-size:11px;opacity:.85}.paytable-row-head{font-family:var(--font-body);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--gold-faint)}.paytable-col-combo{font-size:13px;letter-spacing:.05em;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.paytable-col-prob,.paytable-col-payout{text-align:right;color:var(--text-secondary)}.paytable-col-payout{color:var(--gold-mid);font-weight:500}.paytable-col-change{text-align:center;font-size:14px;line-height:1}.paytable-col-prob.up{color:var(--cyan);font-weight:500}.paytable-col-prob.down{color:var(--text-muted)}.paytable-col-prob.new{color:var(--cyan);font-weight:500}.paytable-col-prob.removed{color:var(--text-muted);text-decoration:line-through}.paytable-col-payout.up{color:var(--cyan);font-weight:600}.paytable-col-payout.down{color:var(--text-muted)}.paytable-col-payout.new{color:var(--cyan);font-weight:600}.paytable-col-payout.removed{color:var(--text-muted);text-decoration:line-through}.paytable-row-removed{opacity:.55}.paytable-row-removed .paytable-col-combo{text-decoration:line-through}.paytable-row-removed .paytable-col-change{color:var(--danger)}.paytable-footer{display:flex;justify-content:space-between;gap:12px;padding-top:10px;border-top:1px dashed var(--gold-faint)}.paytable-stat{display:flex;flex-direction:column;align-items:center;gap:2px;flex:1}.paytable-stat-label{font-family:var(--font-body);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted)}.paytable-stat-value{font-family:var(--font-mono);font-size:14px;color:var(--gold-bright);font-weight:500}.paytable-stat-base{color:var(--text-muted);font-size:12px}
