:root{color-scheme:light;--bg: #08111b;--panel: rgba(8, 19, 33, .9);--panel-strong: rgba(13, 30, 48, .96);--panel-soft: rgba(11, 24, 39, .78);--text: #f4f7fb;--muted: #9fb1c6;--gold: #f5bf4a;--gold-strong: #e29b15;--mint: #7ce1b2;--sky: #74c0fc;--rose: #fca5a5;--line: rgba(148, 163, 184, .18);--line-strong: rgba(245, 191, 74, .32);--shadow: 0 24px 70px rgba(0, 0, 0, .35)}*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;color:var(--text);background:radial-gradient(circle at top left,rgba(116,192,252,.12),transparent 30%),radial-gradient(circle at top right,rgba(245,191,74,.14),transparent 26%),linear-gradient(180deg,#0b1623,#050b13);min-height:100vh}.page-shell{width:min(1180px,calc(100vw - 32px));margin:28px auto 40px;padding:24px}.hero{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:22px}.hero h1{margin:0;font-size:clamp(2.15rem,4vw,3.6rem);line-height:.98;max-width:720px}.eyebrow,.panel-kicker{margin:0 0 8px;text-transform:uppercase;letter-spacing:.22em;font-size:.73rem;color:var(--gold);font-weight:700}.subtitle{margin:12px 0 0;max-width:760px;color:var(--muted);font-size:1.02rem;line-height:1.6}.hero-badges,.lobby-badges{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.pill{border:1px solid var(--line);background:#0a131fdb;color:var(--muted);padding:9px 14px;border-radius:999px;font-size:.82rem;font-weight:700}.pill-gold{border-color:#f5bf4a6b;color:var(--gold)}.casino-lobby,.machine-panel,.info-card{border:1px solid var(--line);border-radius:24px;background:linear-gradient(180deg,var(--panel-strong),var(--panel));box-shadow:var(--shadow)}.casino-lobby{padding:20px;margin-bottom:18px}.lobby-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px}.lobby-header h2{margin:0;font-size:1.55rem}.lobby-copy{margin:10px 0 0;color:var(--muted);max-width:720px;line-height:1.55}.lobby-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.lobby-card,.machine-panel,.paytable-card,.theme-starter-machine{--machine-line: rgba(116, 192, 252, .26);--machine-glow: rgba(116, 192, 252, .16);--machine-chip-bg: rgba(116, 192, 252, .12);--machine-chip-color: #dbeafe}.theme-lucky-bells{--machine-line: rgba(124, 225, 178, .28);--machine-glow: rgba(124, 225, 178, .16);--machine-chip-bg: rgba(124, 225, 178, .12);--machine-chip-color: var(--mint)}.theme-high-roller{--machine-line: rgba(252, 165, 165, .3);--machine-glow: rgba(252, 165, 165, .16);--machine-chip-bg: rgba(252, 165, 165, .12);--machine-chip-color: #fecdd3}.lobby-card{width:100%;border-radius:20px;border:1px solid rgba(255,255,255,.05);background:radial-gradient(circle at top left,var(--machine-glow),transparent 50%),linear-gradient(180deg,#0a1421f2,#070e18f5);color:var(--text);padding:16px;text-align:left;cursor:pointer;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease,opacity .14s ease}.lobby-card:not(:disabled):hover{transform:translateY(-2px);border-color:var(--machine-line)}.lobby-card.is-active{border-color:var(--machine-line);box-shadow:0 0 0 1px var(--machine-line),0 16px 40px #00000038}.lobby-card:disabled{opacity:.72;cursor:not-allowed}.lobby-card-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.lobby-card h3{margin:0;font-size:1.1rem}.lobby-card p{margin:8px 0 0;color:var(--muted);font-size:.92rem;line-height:1.45}.lobby-top-hit,.lobby-pill,.lobby-badge-active{display:inline-flex;align-items:center;border-radius:999px;padding:7px 11px;font-size:.75rem;font-weight:700;white-space:nowrap}.lobby-top-hit,.lobby-pill{background:var(--machine-chip-bg);color:var(--machine-chip-color);border:1px solid var(--machine-line)}.lobby-badge-active{background:#f5bf4a24;border:1px solid rgba(245,191,74,.34);color:var(--gold)}.lobby-pill-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.lobby-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.lobby-stats div{border:1px solid rgba(255,255,255,.05);border-radius:14px;padding:10px;background:#ffffff08}.lobby-stats span,.stat-card span,.mini-stats span{display:block;color:var(--muted);font-size:.78rem;margin-bottom:8px}.lobby-stats strong,.recent-copy strong,.paytable-list strong,.mini-stats strong{display:block;font-size:1rem}.top-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,.9fr);gap:18px}.machine-panel{padding:20px}.panel-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}.panel-copy h2,.info-card h3{margin:0;font-size:1.35rem}.machine-pitch{margin:10px 0 0;color:var(--text);font-size:.98rem;line-height:1.5}.machine-meta{margin:10px 0 0;color:var(--muted);font-size:.9rem}.panel-actions{display:grid;justify-items:end;gap:10px}.sound-toggle{border:1px solid rgba(116,192,252,.25);background:#74c0fc1a;color:#dbeafe;border-radius:999px;padding:10px 14px;font-size:.82rem;font-weight:700;cursor:pointer;transition:transform .12s ease,background .12s ease,border-color .12s ease}.sound-toggle:hover{transform:translateY(-1px)}.sound-toggle.is-enabled{background:#7ce1b21f;border-color:#7ce1b24d;color:var(--mint)}.machine-state{padding:8px 12px;border-radius:999px;background:var(--machine-chip-bg);border:1px solid var(--machine-line);color:var(--machine-chip-color);font-size:.82rem;font-weight:700}.status-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:18px}.stat-card{border:1px solid var(--line);border-radius:16px;padding:14px;background:var(--panel-soft);min-height:92px;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}.stat-card strong{font-size:1.9rem;line-height:1}.pulse-positive{animation:statPulsePositive .56s ease}.pulse-warm{animation:statPulseWarm .56s ease}.pulse-jackpot{animation:statPulseJackpot .72s ease}.machine-stage{padding:22px;border:1px solid var(--machine-line);border-radius:24px;background:radial-gradient(circle at top,var(--machine-glow),transparent 38%),linear-gradient(180deg,#09111cf5,#050a11f5);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.machine-stage.is-spinning{border-color:#74c0fc59;box-shadow:inset 0 0 30px #74c0fc0f}.machine-stage.is-anticipating{border-color:#f5bf4a80;box-shadow:0 0 28px #f5bf4a2e;transform:translateY(-1px)}.reel-window{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px}.reel{border-radius:18px;border:1px solid rgba(245,191,74,.2);background:linear-gradient(180deg,rgba(255,255,255,.06),transparent),linear-gradient(180deg,#111e2ef2,#070d16fa);display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:10px;padding:10px;box-shadow:inset 0 0 0 1px #ffffff08,inset 0 12px 22px #ffffff08;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease,filter .14s ease}.reel.is-spinning{transform:translateY(-4px) scale(1.01);filter:blur(.6px);box-shadow:0 0 22px #74c0fc1f}.reel.is-landing{animation:reelLanding .22s ease}.symbol-cell{min-height:92px;display:grid;place-items:center;border-radius:14px;font-size:clamp(2.4rem,5vw,3.5rem);background:#ffffff0a;border:1px solid rgba(255,255,255,.04);transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.symbol-cell.is-win{border-color:#7ce1b280;box-shadow:0 0 22px #7ce1b22e}.symbol-cell.is-jackpot{border-color:#f5bf4a8c;box-shadow:0 0 26px #f5bf4a3d;transform:scale(1.02)}.symbol-cell.is-near-miss{border-color:#f5bf4a61;box-shadow:0 0 18px #f5bf4a1f}.result-banner{border:1px solid var(--line);border-radius:14px;padding:14px 16px;color:var(--muted);min-height:58px;display:flex;align-items:center;transition:border-color .14s ease,background .14s ease,color .14s ease}.result-idle{background:#ffffff08}.result-spinning{color:#dbeafe;border-color:#74c0fc47;background:#1e40af29}.result-miss{border-color:#94a3b840;background:#0f172a7a}.result-near-miss{color:var(--gold);border-color:#f5bf4a66;background:#a162071f}.result-pair{color:var(--mint);border-color:#7ce1b259;background:#14532d2e}.result-line-hit{color:var(--mint);border-color:#7ce1b266;background:#14532d38}.result-jackpot{color:var(--gold);border-color:#f5bf4a73;background:#a162072e}.payline-strip{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.payline-pill{display:inline-flex;align-items:center;border-radius:999px;padding:7px 11px;font-size:.75rem;font-weight:700;white-space:nowrap;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);color:var(--muted)}.payline-pill-primary{background:var(--machine-chip-bg);border-color:var(--machine-line);color:var(--machine-chip-color)}.controls{margin-top:16px;display:grid;grid-template-columns:1fr auto;gap:10px}.bet-controls,.action-controls{display:flex;gap:8px;flex-wrap:wrap}.btn{border:1px solid transparent;border-radius:14px;padding:12px 16px;font-weight:700;cursor:pointer;transition:transform .12s ease,opacity .12s ease,background .12s ease,box-shadow .12s ease}.btn:not(:disabled):hover{transform:translateY(-1px)}.btn:disabled,.sound-toggle:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(180deg,var(--gold),var(--gold-strong));color:#111827;min-width:168px;box-shadow:0 10px 24px #e29b1547}.btn-secondary{background:#74c0fc1f;color:#dbeafe;border-color:#74c0fc38}.btn-muted{background:#ffffff0a;color:#d1d5db;border-color:var(--line)}.control-note{margin:12px 2px 0;color:var(--muted);font-size:.86rem}.recent-panel{margin-top:16px;border:1px solid var(--line);border-radius:18px;background:#060d16c2;padding:16px}.recent-header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.recent-header h3{margin:0}.recent-header p{margin:0;font-size:.85rem;color:var(--muted)}.recent-results,.info-list,.paytable-list{list-style:none;margin:0;padding:0}.recent-results{display:grid;gap:10px}.recent-item{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:16px;background:#ffffff0a;border:1px solid rgba(255,255,255,.04)}.recent-item.is-latest{border-color:#f5bf4a33;background:#f5bf4a0f}.recent-copy{display:grid;gap:7px}.recent-meta-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.recent-kind,.recent-machine{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.02em}.recent-kind-jackpot{background:#f5bf4a29;color:var(--gold)}.recent-kind-line-hit,.recent-kind-pair{background:#7ce1b224;color:var(--mint)}.recent-kind-near-miss{background:#f5bf4a1f;color:var(--gold)}.recent-kind-miss{background:#94a3b81f;color:var(--muted)}.recent-machine-starter-machine{background:#74c0fc1f;color:#dbeafe}.recent-machine-lucky-bells{background:#7ce1b21f;color:var(--mint)}.recent-machine-high-roller{background:#fca5a51f;color:#fecdd3}.recent-subcopy,.recent-empty,.info-list li,.caution-copy,.paytable-subtitle{color:var(--muted)}.recent-positive{color:var(--mint)}.recent-neutral{color:var(--muted)}.side-panel{display:grid;gap:16px}.info-card{padding:18px}.mini-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.progress-card{border-color:#74c0fc33}.progress-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.progress-note,.progress-caption{margin:8px 0 0;color:var(--muted);font-size:.88rem}.rank-chip{display:inline-flex;align-items:center;border-radius:999px;padding:8px 12px;background:#74c0fc1f;border:1px solid rgba(116,192,252,.25);color:#dbeafe;font-size:.8rem;font-weight:700;white-space:nowrap}.progress-bar{position:relative;overflow:hidden;height:10px;margin-top:14px;border-radius:999px;background:#ffffff0f;border:1px solid rgba(255,255,255,.05)}.progress-bar span{display:block;height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,var(--sky),var(--gold));transition:width .22s ease}.progress-stats{margin-top:14px}.goal-list{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:10px}.goal-item{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border-radius:14px;border:1px solid rgba(255,255,255,.05);background:#ffffff08}.goal-item.is-done{border-color:#7ce1b247;background:#7ce1b214}.goal-mark{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;background:#ffffff12;color:var(--muted);font-size:.86rem;font-weight:700;flex:0 0 auto}.goal-item.is-done .goal-mark{background:#7ce1b229;color:var(--mint)}.goal-copy{display:grid;gap:4px}.goal-copy strong{font-size:.95rem}.info-list{display:grid;gap:10px}.info-list li,.caution-copy,.paytable-subtitle{line-height:1.55}.paytable-card{border-color:var(--machine-line)}.paytable-subtitle{margin:10px 0 14px;font-size:.9rem}.paytable-list{display:grid;gap:10px}.paytable-list li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.05)}.paytable-list li:last-child{border-bottom:0;padding-bottom:0}.paytable-list span{font-size:1.05rem}.caution-card{border-color:#f5bf4a38}@keyframes reelLanding{0%{transform:translateY(-8px) scale(1.02)}to{transform:translateY(0) scale(1)}}@keyframes statPulsePositive{0%,to{transform:translateY(0);border-color:var(--line)}40%{transform:translateY(-2px);border-color:#7ce1b266;box-shadow:0 12px 26px #7ce1b21f}}@keyframes statPulseWarm{0%,to{transform:translateY(0);border-color:var(--line)}40%{transform:translateY(-2px);border-color:#f5bf4a52;box-shadow:0 12px 26px #f5bf4a1a}}@keyframes statPulseJackpot{0%,to{transform:translateY(0);border-color:var(--line)}35%{transform:translateY(-3px) scale(1.01);border-color:#f5bf4a70;box-shadow:0 16px 30px #f5bf4a29}}@media (max-width: 980px){.hero,.lobby-header,.top-grid,.controls{grid-template-columns:1fr;display:grid}.hero,.lobby-header{gap:14px}.hero-badges,.lobby-badges{justify-content:flex-start}.lobby-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.action-controls{justify-content:flex-end}}@media (max-width: 720px){.page-shell{width:min(100vw - 20px,100%);margin:18px auto 28px;padding:14px}.casino-lobby,.machine-panel,.info-card{border-radius:20px}.panel-header,.recent-header{grid-template-columns:1fr;display:grid;gap:12px}.panel-actions{justify-items:start}.lobby-grid,.status-grid,.lobby-stats,.mini-stats{grid-template-columns:1fr}.reel{gap:8px;padding:8px}.symbol-cell{min-height:76px;font-size:clamp(2rem,12vw,3rem)}.controls{gap:12px}.bet-controls,.action-controls{width:100%}.bet-controls .btn,.action-controls .btn{flex:1 1 140px}.recent-item,.paytable-list li{flex-direction:column;align-items:flex-start}}.is-hidden{display:none!important}.stack-form,.payment-shell{display:grid;gap:12px}.field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field{display:grid;gap:8px}.field span,.mini-label{color:var(--muted);font-size:.82rem;font-weight:600}.field input,.field select{width:100%;border-radius:14px;border:1px solid var(--line);background:#ffffff0a;color:var(--text);padding:12px 14px;font:inherit}.field input::placeholder{color:#9fb1c6b8}.check-row{display:flex;gap:10px;align-items:flex-start;color:var(--muted);font-size:.85rem;line-height:1.45}.check-row input{margin-top:3px}.status-box{border:1px solid var(--line);border-radius:16px;background:#ffffff08;padding:12px 14px;color:var(--muted);line-height:1.45;font-size:.9rem;word-break:break-word}.auth-summary{display:grid;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.quick-amounts,.payment-actions{display:flex;flex-wrap:wrap;gap:10px}.quick-chip{border-radius:999px;border:1px solid var(--line);background:#ffffff0a;color:var(--text);padding:10px 14px;font-weight:700;cursor:pointer}.quick-chip.is-active{border-color:#f5bf4a6b;color:var(--gold);background:#f5bf4a14}.history-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.history-item,.history-empty{border:1px solid rgba(255,255,255,.05);border-radius:16px;padding:12px 14px;background:#ffffff08}.history-item{display:flex;justify-content:space-between;gap:12px;align-items:center}.history-item div{display:grid;gap:4px}.history-item strong{font-size:.95rem}.history-item span,.history-empty{color:var(--muted);font-size:.84rem}.recent-negative{color:var(--rose)}@media (max-width: 720px){.field-row{grid-template-columns:1fr}.payment-actions,.quick-amounts{flex-direction:column}.history-item{flex-direction:column;align-items:flex-start}}
