:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#fff8ec;background:#050703;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #050703;--felt: #0d1f12;--panel: rgba(9, 24, 14, .78);--panel-solid: #0c1a10;--panel-2: rgba(14, 31, 18, .9);--line: rgba(255, 200, 90, .18);--line-gold: rgba(255, 200, 90, .4);--text: #fff8ec;--muted: #b7c4b6;--hot: #ff4747;--rose: #ffd36a;--gold: #ffc844;--green: #3ddc84;--cyan: #ffb347;--bad: #ff5470;--bot: #5cc1ff;--shadow: 0 22px 70px rgba(0, 0, 0, .5);--radius: 22px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{min-height:100%;margin:0}body{overflow-x:hidden;background:var(--bg)}button,select{font:inherit}button{color:inherit}.app{position:relative;min-height:100svh;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 12% 18%,rgba(255,71,71,.2),transparent 28%),radial-gradient(circle at 84% 18%,rgba(255,200,68,.15),transparent 30%),radial-gradient(circle at 50% 86%,rgba(61,220,132,.12),transparent 34%),linear-gradient(135deg,#020401,#0b1c0e 25%,#0c1a08 54%,#0a1306 78%,#040703);background-size:160% 160%;animation:background-breathe 10s ease-in-out infinite alternate}.app:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:80;background:radial-gradient(circle at center,transparent 55%,rgba(0,0,0,.32) 100%)}.ambient,.grid-field{position:fixed;pointer-events:none;z-index:-1}.ambient{width:46vw;aspect-ratio:1;border-radius:50%;filter:blur(70px);opacity:.22;animation:ambient-float 13s ease-in-out infinite alternate}.ambient-a{left:-16vw;top:8vh;background:var(--hot)}.ambient-b{right:-13vw;bottom:-10vh;background:var(--green);animation-delay:-5s}.grid-field{top:0;right:0;bottom:0;left:0;opacity:.4;background-image:radial-gradient(circle,rgba(255,211,106,.42) 0 1px,transparent 1.6px),linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:48px 48px,28px 28px,28px 28px;animation:grid-drift 20s linear infinite}.shell{width:min(1480px,100%);min-height:100svh;margin:0 auto;padding:16px;display:grid;grid-template-rows:auto 1fr;gap:14px}.topbar,.cardPanel,.turnBox,.boardWrap{border:1px solid var(--line);background:linear-gradient(145deg,#0b1e11e6,#030805d6);box-shadow:var(--shadow),inset 0 1px #ffffff0b;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.topbar{min-height:92px;padding:14px 18px;border-radius:24px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-color:var(--line-gold);overflow:hidden;position:relative}.topbar:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(110deg,transparent 0 35%,rgba(255,255,255,.055) 46%,transparent 58% 100%);transform:translate(-100%);animation:header-scan 8s ease-in-out infinite}.brand{position:relative;z-index:1;min-width:0}.brand-kicker{display:block;margin-bottom:2px;color:var(--gold);font-size:10px;font-weight:900;letter-spacing:.26em}.brand h1{margin:0;font-size:clamp(28px,4vw,48px);line-height:.98;letter-spacing:-.055em;font-weight:1000;background:linear-gradient(110deg,#fff 0%,var(--gold) 34%,var(--hot) 66%,#fff 100%);background-size:220% 100%;color:transparent;-webkit-background-clip:text;background-clip:text;animation:title-flow 6s linear infinite}.brand p{margin:7px 0 0;color:var(--muted);font-size:12px;font-weight:750;letter-spacing:.06em}.casinoHud{position:relative;z-index:1;display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.coinBank,.multiplier,.online{min-height:42px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 13px;border:1px solid rgba(255,255,255,.12);background:#06030ab8;font-weight:950;white-space:nowrap}.coinBank{color:#fff6cb;border-color:#ffd36a61;box-shadow:inset 0 0 18px #ffd36a14}.coinIcon{display:inline-grid;place-items:center;font-size:18px;filter:drop-shadow(0 0 7px rgba(255,211,106,.7));animation:coin-spin 4s ease-in-out infinite}.multiplier{min-width:58px;color:var(--gold);border-color:#ff47475c;transition:.25s ease}.multiplier.hot{color:#fff7d0;transform:scale(1.06);border-color:#ff4747b8;box-shadow:0 0 28px #ff47475c,inset 0 0 16px #ffd36a1f;animation:multiplier-pulse .75s ease-in-out infinite alternate}.online{color:var(--muted);font-size:13px;min-width:102px}.dot{width:10px;height:10px;border-radius:50%;background:var(--bad);box-shadow:0 0 12px #ff5470b8}.is-online{color:var(--green);border-color:#65ffad42}.is-online .dot{background:var(--green);box-shadow:0 0 #65ffad9e;animation:heartbeat 1.5s ease-out infinite}.game{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:14px}.main{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:12px}.rail{min-width:0;display:grid;align-content:start;gap:12px}.turnBox{min-height:94px;border-radius:var(--radius);padding:17px 90px 15px 18px;position:relative;overflow:hidden}.turnBox:before{content:"";position:absolute;width:220px;height:220px;right:4%;top:50%;transform:translateY(-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,71,71,.16),transparent 68%);transition:.4s ease}.turnBox.bot-active:before{background:radial-gradient(circle,rgba(92,193,255,.22),transparent 68%);animation:bot-radar 1.7s ease-in-out infinite}.turn{position:relative;z-index:1;font-size:clamp(20px,3.4vw,34px);line-height:1;font-weight:1000;letter-spacing:-.035em}.turn.human{color:#fff7d4;text-shadow:0 0 22px rgba(255,211,106,.25)}.turn.bot{color:#d8ecff;text-shadow:0 0 22px rgba(92,193,255,.35)}.turn.wait{color:#f4e9f5}.subturn{position:relative;z-index:1;margin-top:8px;color:var(--muted);font-size:13px;font-weight:720}.timer{--timer-angle: 0deg;position:absolute;z-index:3;right:14px;top:50%;width:64px;aspect-ratio:1;transform:translateY(-50%);border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--gold) var(--timer-angle),rgba(255,255,255,.08) 0);box-shadow:0 0 22px #ffd36a24}.timer:before{content:"";position:absolute;top:5px;right:5px;bottom:5px;left:5px;border-radius:50%;background:#110716;border:1px solid rgba(255,255,255,.07)}.timer span{position:relative;z-index:1;font-size:21px;font-weight:1000;font-variant-numeric:tabular-nums}.timer.danger{background:conic-gradient(var(--bad) var(--timer-angle),rgba(255,84,112,.12) 0);color:#ffd6de;animation:danger-pulse .5s ease-in-out infinite alternate}.signal-line{position:absolute;left:18px;right:94px;bottom:8px;height:2px;overflow:hidden;opacity:.46;background:#ffffff0d}.signal-line i{display:block;width:18%;height:100%;background:linear-gradient(90deg,transparent,var(--hot),var(--gold),transparent);animation:signal-travel 2.2s linear infinite}.boardWrap{min-height:360px;border-radius:26px;padding:13px;position:relative;overflow:hidden;container-type:inline-size}.boardWrap:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 50% 50%,rgba(255,211,106,.055),transparent 34%),linear-gradient(110deg,transparent 30%,rgba(255,255,255,.026) 50%,transparent 70%)}.boardWrap.machine-turn{border-color:#5cc1ff6b;box-shadow:var(--shadow),inset 0 0 34px #5cc1ff11}.board-aura{position:absolute;top:10%;right:16%;bottom:10%;left:16%;border-radius:50%;pointer-events:none;filter:blur(42px);opacity:.16;background:var(--hot);animation:aura-breathe 4.5s ease-in-out infinite alternate}.machine-turn .board-aura{background:var(--bot);opacity:.24;animation-duration:1.8s}.payline{position:absolute;z-index:5;left:3%;right:3%;top:50%;height:3px;opacity:0;pointer-events:none;background:linear-gradient(90deg,transparent,var(--gold),#fff,var(--gold),transparent);box-shadow:0 0 18px var(--gold)}.app.streak-hot .payline{animation:payline-flash 1.2s ease-in-out infinite}.slotLine{position:fixed;z-index:118;left:0;right:0;top:50%;height:3px;pointer-events:none;background:linear-gradient(90deg,transparent,#fff 30%,var(--gold) 50%,#fff 70%,transparent);box-shadow:0 0 26px #ffc844f2,0 0 70px #ff47478c;animation:slot-line .82s cubic-bezier(.16,.84,.28,1) forwards}.slotLine:before{content:"";position:absolute;top:-8px;right:0;bottom:-8px;left:0;background:linear-gradient(90deg,transparent,rgba(255,200,68,.18),transparent);filter:blur(6px)}@keyframes slot-line{0%{opacity:0;transform:scaleX(.04) translateY(0)}14%{opacity:1}60%{transform:scaleX(1) translateY(24px)}to{opacity:0;transform:scaleX(1.05) translateY(-30px)}}.board{position:relative;z-index:2;width:100%;height:100%;display:grid;align-content:center;gap:clamp(6px,.8vw,11px)}.board.locked-human{filter:saturate(.72) brightness(.82)}.board-empty{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:grid;place-content:center;gap:7px;text-align:center;color:var(--muted)}.board-empty b{color:var(--text);font-size:20px}.memory-card{position:relative;min-width:0;aspect-ratio:.76;padding:0;border:0;border-radius:15px;background:transparent;perspective:900px;cursor:pointer;transition:filter .18s ease,transform .18s ease}.memory-card:not(:disabled):hover{transform:translateY(-3px);filter:brightness(1.08)}.memory-card:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}.memory-card:disabled{cursor:default}.card-inner{position:absolute;top:0;right:0;bottom:0;left:0;display:block;border-radius:inherit;transform-style:preserve-3d;transition:transform .5s cubic-bezier(.2,.78,.22,1),filter .25s ease}.memory-card.open .card-inner,.memory-card.matched .card-inner{transform:rotateY(180deg)}.card-face{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;overflow:hidden;display:grid;place-items:center;backface-visibility:hidden;border:1px solid rgba(255,255,255,.13);box-shadow:0 12px 24px #00000057,inset 0 1px #ffffff12}.card-back{background:radial-gradient(circle at 50% 40%,rgba(255,200,68,.16),transparent 27%),repeating-radial-gradient(circle at 50% 50%,transparent 0 9px,rgba(255,255,255,.02) 10px 11px),linear-gradient(145deg,#12331e,#0a1c10 58%,#040a06)}.card-back:before{content:"";position:absolute;top:7px;right:7px;bottom:7px;left:7px;border-radius:10px;border:1px solid rgba(255,200,68,.22)}.card-gem{font-size:clamp(18px,3.4vw,34px);color:#ffc844cc;text-shadow:0 0 16px rgba(255,200,68,.6),0 0 32px rgba(255,71,71,.3);animation:gem-breathe 2.4s ease-in-out infinite}.card-number{position:absolute;left:7px;top:5px;color:#ffffffb8;font-size:clamp(9px,1.2vw,13px);font-weight:950;font-variant-numeric:tabular-nums}.card-circuit{position:absolute;right:7px;bottom:7px;width:17px;height:17px;border-right:1px solid rgba(255,200,68,.4);border-bottom:1px solid rgba(255,200,68,.4)}.card-front{transform:rotateY(180deg);background:radial-gradient(circle at 50% 35%,rgba(255,200,68,.13),transparent 35%),linear-gradient(145deg,#1e3a14,#2e4c1b 58%,#0c1408);border-color:#ffc84466}.card-symbol{font-size:clamp(22px,5.2vw,52px);line-height:1;filter:drop-shadow(0 8px 12px rgba(0,0,0,.4));transform:translateZ(25px)}.card-owner{position:absolute;right:6px;bottom:4px;color:#ffffff57;font-size:10px;font-weight:900}.memory-card.bot-pick .card-front{border-color:#5cc1ffc7;box-shadow:0 0 26px #5cc1ff38,inset 0 0 24px #5cc1ff14}.memory-card.matched .card-front{border-color:#3ddc84bd;box-shadow:0 0 26px #3ddc842e,inset 0 0 24px #ffc84417}.memory-card.event-match .card-inner{animation:card-match .82s cubic-bezier(.16,.84,.28,1)}.memory-card.event-miss .card-inner,.memory-card.event-invalid .card-inner{animation:card-miss .42s ease}.card-particles{position:absolute;top:50%;right:50%;bottom:50%;left:50%;z-index:7;pointer-events:none}.card-particles i{position:absolute;width:7px;height:7px;border-radius:50%;opacity:0;background:radial-gradient(circle,#fff,var(--gold) 48%,transparent 70%)}.memory-card.event-match .card-particles i{animation:card-particle .72s ease-out forwards}.card-particles i:nth-child(1){--px: -38px;--py: -54px}.card-particles i:nth-child(2){--px: 14px;--py: -62px;animation-delay:.02s}.card-particles i:nth-child(3){--px: 42px;--py: -28px;animation-delay:.04s}.card-particles i:nth-child(4){--px: 48px;--py: 18px;animation-delay:.06s}.card-particles i:nth-child(5){--px: 6px;--py: 52px;animation-delay:.08s}.card-particles i:nth-child(6){--px: -36px;--py: 40px;animation-delay:.1s}.card-particles i:nth-child(7){--px: -52px;--py: 4px;animation-delay:.12s}.card-particles i:nth-child(8){--px: -20px;--py: -28px;animation-delay:.14s}.cardPanel{border-radius:var(--radius)}.controls{padding:12px;display:grid;gap:10px}.identityRow,.actionRow{display:grid;grid-template-columns:1fr 1fr;gap:8px}.actionRow{grid-template-columns:1fr 54px}.selectRow{display:grid;grid-template-columns:1.2fr .72fr .9fr;gap:8px}.field{min-width:0;display:grid;gap:5px}.field span{color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.field select{width:100%;min-height:42px;border-radius:13px;border:1px solid rgba(255,255,255,.1);background:#050209c2;color:var(--text);padding:8px 9px;outline:none}.field select:focus{border-color:#ffb347b3;box-shadow:0 0 0 3px #ffb34724}.btn{min-height:44px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:#08040dbd;color:var(--text);padding:9px 12px;font-weight:900;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.btn:hover{transform:translateY(-1px);border-color:#ffffff3d}.btn:active{transform:translateY(1px) scale(.99)}.btn:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}.btn.primary{border-color:#ffc8446b;background:linear-gradient(110deg,#d13a2f,#8e1414 52%,#5a4a0f);box-shadow:inset 0 1px #ffffff1f,0 10px 24px #62120e52}.btn.identity.selected{color:#fff6d2;border-color:#ffd36ab3;background:#ffd36a1a;box-shadow:inset 0 0 20px #ffd36a0f,0 0 18px #ffd36a14}.btn.identity small{color:var(--green);margin-left:4px;text-shadow:0 0 8px rgba(101,255,173,.8)}.btn.sound{padding-inline:0;font-size:18px}.lockNote{padding:8px 10px;border-radius:12px;border:1px solid rgba(255,211,106,.2);background:#ffd36a0f;color:#f6dda0;font-size:11px;font-weight:780}.scorebar{padding:11px;display:grid;gap:8px}.score{min-height:82px;padding:10px;border-radius:16px;border:1px solid rgba(255,255,255,.09);background:#07030b8f;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"number name" "number wallet";align-items:center;column-gap:12px;transition:.25s ease}.score.active{border-color:#ffd36a8f;background:#ffd36a12;box-shadow:inset 0 0 25px #ffd36a0e}.score.bot.active{border-color:#5cc1ff99;background:#5cc1ff12}.score.plus{animation:score-pop .72s cubic-bezier(.16,.84,.28,1)}.score-number{grid-area:number;min-width:56px;font-size:42px;line-height:1;font-weight:1000;letter-spacing:-.08em;color:#fff7d4}.score-name{grid-area:name;font-weight:950}.score-wallet{grid-area:wallet;color:var(--gold);font-size:12px;font-weight:850}.versus{color:#ffffff52;text-align:center;font-size:10px;font-weight:1000;letter-spacing:.24em}.metrics{padding:9px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.metric{min-width:0;min-height:59px;padding:8px 5px;border-radius:14px;border:1px solid rgba(255,255,255,.075);background:#06030a80;display:grid;place-content:center;text-align:center}.metric b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(15px,2vw,22px);line-height:1;font-weight:1000;letter-spacing:-.04em}.metric span{margin-top:5px;color:var(--muted);font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.metric.lead{border-color:#ffd36a38}.metric.streak{border-color:#ff47473d}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:20px;background:#000000ad;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modalCard{width:min(410px,100%);padding:28px;border-radius:28px;border:1px solid var(--line-gold);background:linear-gradient(145deg,#0f2614fa,#040905fa);box-shadow:0 35px 100px #000000ad,inset 0 1px #ffffff0f;text-align:center;animation:modal-enter .42s cubic-bezier(.16,.84,.28,1)}.modalIcon{font-size:58px}.modalTitle{margin-top:4px;font-size:31px;font-weight:1000;letter-spacing:-.045em}.modalSub{margin:8px 0 20px;color:var(--muted);font-weight:740}.toast{position:fixed;z-index:130;left:50%;bottom:18px;max-width:min(92vw,560px);transform:translate(-50%,16px);opacity:0;pointer-events:none;padding:11px 15px;border-radius:999px;border:1px solid rgba(255,139,214,.3);background:#08040cf0;box-shadow:var(--shadow);color:#fff;text-align:center;font-weight:900;transition:.22s ease}.toast.show{opacity:1;transform:translate(-50%)}.toast.warn{color:#ffd8df;border-color:#ff54709e}.fxLayer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;pointer-events:none;overflow:hidden}.comboFx,.coinToast,.jackpotBanner{position:fixed;left:50%;top:50%;text-align:center;font-weight:1000;pointer-events:none}.comboFx{color:#fff8d8;font-size:clamp(58px,15vw,150px);letter-spacing:-.06em;text-shadow:0 0 18px rgba(255,200,68,.95),0 0 44px rgba(255,71,71,.6),0 10px 35px rgba(0,0,0,.85);animation:combo-rise 1.28s cubic-bezier(.13,.86,.22,1) forwards}.comboFx small{display:block;margin-top:-.08em;color:var(--gold);font-size:.16em;letter-spacing:.24em;text-transform:uppercase}.jackpotBanner{right:0;bottom:0;left:0;top:0;display:grid;place-items:center;background:radial-gradient(circle,rgba(255,200,68,.26),transparent 24%),#ff47470d;animation:jackpot-screen 1.48s ease forwards}.jackpotBanner b{color:#fff8d8;font-size:clamp(58px,15vw,170px);letter-spacing:-.065em;text-shadow:0 0 18px #ffc844,0 0 50px #ff4747,0 12px 46px rgba(0,0,0,.85);animation:jackpot-text 1.48s cubic-bezier(.1,.9,.15,1) forwards}.coinToast.center{top:58%;padding:9px 14px;border-radius:999px;color:#fff4bf;border:1px solid rgba(255,211,106,.45);background:#09050ce6;box-shadow:0 0 30px #ffd36a38;animation:coin-toast-rise 1.22s ease forwards}.screenFlash{position:fixed;top:0;right:0;bottom:0;left:0;opacity:0;animation:screen-flash .72s ease forwards}.screenFlash.match{background:radial-gradient(circle at center,rgba(255,211,106,.23),rgba(101,255,173,.05) 42%,transparent 68%)}.screenFlash.miss{background:radial-gradient(circle at center,rgba(255,84,112,.18),transparent 62%)}.confetti{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.confetti-piece{position:absolute;left:var(--x);top:-18px;width:9px;height:16px;border-radius:3px;background:var(--tone);opacity:0;animation:confetti-fall var(--duration) linear var(--delay) forwards}.coin-rain{position:fixed;left:50%;top:55%}.coin-rain i{position:absolute;width:14px;height:14px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fffbe1,#ffd36a 45%,#9b6500 74%,transparent 76%);box-shadow:0 0 14px #ffd36abf;animation:coin-fly 1.15s cubic-bezier(.11,.76,.23,1) var(--delay) forwards}.disconnected .topbar,.disconnected .turnBox,.disconnected .boardWrap,.disconnected .cardPanel{filter:saturate(.45) brightness(.72)}.disconnected .grid-field{animation-play-state:paused}.machine-thinking .grid-field{opacity:.55;animation-duration:8s}@keyframes background-breathe{0%{background-position:0% 30%}to{background-position:100% 70%}}@keyframes ambient-float{0%{transform:translateZ(0) scale(.88)}to{transform:translate3d(8vw,5vh,0) scale(1.12)}}@keyframes grid-drift{to{background-position:48px 48px,28px 28px,28px 28px}}@keyframes header-scan{0%,55%{transform:translate(-110%)}72%,to{transform:translate(110%)}}@keyframes title-flow{to{background-position:220% 0}}@keyframes coin-spin{0%,70%,to{transform:rotateY(0)}84%{transform:rotateY(360deg)}}@keyframes multiplier-pulse{to{box-shadow:0 0 36px #ff474799,inset 0 0 20px #ffd36a24}}@keyframes heartbeat{0%{box-shadow:0 0 #65ffad9e}70%{box-shadow:0 0 0 10px #65ffad00}to{box-shadow:0 0 #65ffad00}}@keyframes bot-radar{0%,to{transform:translateY(-50%) scale(.82);opacity:.38}50%{transform:translateY(-50%) scale(1.22);opacity:.92}}@keyframes danger-pulse{to{transform:translateY(-50%) scale(1.08);box-shadow:0 0 32px #ff54706b}}@keyframes signal-travel{0%{transform:translate(-120%)}to{transform:translate(650%)}}@keyframes aura-breathe{0%{transform:scale(.8)}to{transform:scale(1.2)}}@keyframes payline-flash{0%,to{opacity:0;transform:scaleX(.2)}45%{opacity:.8;transform:scaleX(1)}}@keyframes gem-breathe{0%,to{transform:scale(.94);opacity:.72}50%{transform:scale(1.14);opacity:1}}@keyframes card-match{0%{transform:rotateY(180deg) translateY(0) scale(1)}42%{transform:rotateY(180deg) translateY(-13px) scale(1.12);filter:brightness(1.4)}to{transform:rotateY(180deg) translateY(0) scale(1)}}@keyframes card-miss{0%,to{transform:rotateY(180deg) translate(0)}25%{transform:rotateY(180deg) translate(-7px)}55%{transform:rotateY(180deg) translate(7px)}78%{transform:rotateY(180deg) translate(-3px)}}@keyframes card-particle{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}18%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--px)),calc(-50% + var(--py))) scale(1.8)}}@keyframes score-pop{0%{transform:scale(1)}38%{transform:scale(1.06);box-shadow:0 0 32px #ffd36a38}to{transform:scale(1)}}@keyframes modal-enter{0%{opacity:0;transform:translateY(18px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes combo-rise{0%{opacity:0;transform:translate(-50%,-44%) scale(.35) rotate(-3deg)}18%{opacity:1;transform:translate(-50%,-50%) scale(1.05) rotate(1deg)}70%{opacity:1;transform:translate(-50%,-59%) scale(.98)}to{opacity:0;transform:translate(-50%,-76%) scale(1.18) rotate(2deg)}}@keyframes jackpot-screen{0%{opacity:0}20%,72%{opacity:1}to{opacity:0}}@keyframes jackpot-text{0%{transform:scale(.2) rotate(-8deg)}25%{transform:scale(1.1) rotate(2deg)}72%{transform:scale(1)}to{transform:scale(1.35);opacity:0}}@keyframes coin-toast-rise{0%{opacity:0;transform:translate(-50%,-20%) scale(.55)}18%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}to{opacity:0;transform:translate(-50%,-150%) scale(1.18)}}@keyframes screen-flash{0%{opacity:0}35%{opacity:1}to{opacity:0}}@keyframes confetti-fall{0%{opacity:0;transform:translateY(-20px) rotate(0)}12%{opacity:1}to{opacity:.86;transform:translateY(110vh) rotate(var(--spin))}}@keyframes coin-fly{0%{opacity:0;transform:translate(-50%,-50%) scale(.35) rotate(0)}12%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--cx)),calc(-50% + var(--cy))) scale(1.2) rotate(900deg)}}@media(max-width:1040px){.game{grid-template-columns:minmax(0,1fr) 270px}.metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:899px){html,body,#root{height:100%;overflow:hidden}.app,.shell{height:100svh;min-height:0}.shell{padding:8px;gap:8px}.topbar{min-height:76px;padding:10px 12px;border-radius:18px;align-items:flex-start}.brand-kicker{display:none}.brand h1{font-size:26px}.brand p{margin-top:4px;font-size:9.5px}.casinoHud{gap:5px}.coinBank,.multiplier,.online{min-height:34px;min-width:0;padding:6px 9px;font-size:11px}.online{min-width:72px}.game{min-height:0;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto;gap:8px}.main{min-height:0;grid-template-rows:auto minmax(0,1fr) auto;gap:8px}.rail{gap:8px}.turnBox{min-height:68px;padding:10px 64px 9px 11px;border-radius:17px}.turn{font-size:18px}.subturn{margin-top:5px;font-size:10px}.timer{right:8px;width:48px}.timer span{font-size:16px}.signal-line{left:11px;right:65px;bottom:5px}.boardWrap{min-height:0;padding:7px;border-radius:18px}.board{gap:5px}.memory-card{border-radius:10px}.card-back:before{top:4px;right:4px;bottom:4px;left:4px;border-radius:7px}.card-number{left:4px;top:3px;font-size:8px}.card-symbol{font-size:clamp(18px,6.7vw,31px)}.metrics{padding:7px;gap:5px;grid-template-columns:repeat(6,minmax(0,1fr))}.metric{min-height:45px;padding:5px 2px;border-radius:10px}.metric b{font-size:14px}.metric span{margin-top:3px;font-size:7px;letter-spacing:.02em}.controls{padding:8px;gap:7px;border-radius:17px}.identityRow,.selectRow,.actionRow{gap:6px}.field span{display:none}.field select,.btn{min-height:38px;border-radius:11px;padding:6px 8px;font-size:11px}.actionRow{grid-template-columns:1fr 42px}.lockNote{padding:6px 8px;font-size:9px}.scorebar{display:none}}@media(max-width:420px){.brand p{display:none}.topbar{min-height:58px;align-items:center}.coinBank{display:none}.online{min-width:66px}.metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.metric:nth-child(n+4){display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}
