@import"https://fonts.googleapis.com/css2?family=Lilita+One&family=Nunito:wght@600;800&display=swap";.theme-property .logo-top,.theme-property .logo-bottom{background:linear-gradient(#f4ffd0,#7be35a 50%,#1c8a3a);-webkit-background-clip:text;background-clip:text;-webkit-text-stroke:2px #05331a;filter:drop-shadow(0 4px 0 #04200f) drop-shadow(0 8px 12px rgba(0,0,0,.45))}.theme-property .logo-bottom{background:linear-gradient(#fff6b0,#ffc928 55%,#d98700);-webkit-background-clip:text;background-clip:text;-webkit-text-stroke:2px #4a2600}.theme-property .machine{background:linear-gradient(145deg,#3ad17c,#0f6a3a 45%,#07381f);border-color:#ffe58a;box-shadow:0 0 0 5px #04200f,0 0 0 8px #ffd67873,0 24px 60px #0009,inset 0 2px 6px #fff6,inset 0 -8px 16px #0006}.theme-property .reel-frame{background:linear-gradient(#17304f,#0a1830)}.theme-property .reel-frame:before{background:linear-gradient(rgba(0,10,25,.55),transparent 16%,transparent 84%,rgba(0,10,25,.55)),radial-gradient(ellipse at 50% 0%,rgba(255,230,140,.16),transparent 60%)}.theme-property .icon-btn{background:linear-gradient(#2fa863,#0d5a31)}.theme-property .panel{border-color:#ffe18c73;background:#051814cc}.theme-property .modal-card{background:linear-gradient(#123a4a,#0a2230)}.theme-property .spin-btn{background:radial-gradient(circle at 35% 30%,#ffe27a,#e0a012 55%,#8a5a00);box-shadow:0 0 0 4px #fff,0 0 0 7px #6a3a00,0 8px 0 7px #3a2000,0 14px 24px #00000080,0 0 30px #ffc83c8c}.theme-property .spin-arrow,.theme-property .spin-arrow-head{stroke:#4a2600;filter:none}.pbg-sky{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(#0b1030,#2a1a5e 45%,#8a3a7a 80%,#ff9a6a);transition:filter 1.5s}.pbg-bonus .pbg-sky{filter:hue-rotate(-60deg) saturate(1.3)}.star{position:absolute;border-radius:50%;background:#fff;animation:twinkle 3s ease-in-out infinite}@keyframes twinkle{50%{opacity:.15;transform:scale(.6)}}.pbg-moon{position:absolute;right:12%;top:8%;width:70px;height:70px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fffbe0,#ffe9a0 60%,#d8b860);box-shadow:0 0 60px 20px #fff0aa66}.skyline-far,.skyline-near{position:absolute;left:0;right:0;bottom:0}.skyline-far{height:260px;opacity:.85}.skyline-near{height:200px}.skyline{width:100%;height:100%;display:block}.win-light{fill:#ffe9a0;animation:flick 5s ease-in-out infinite;opacity:.85}@keyframes flick{0%,to{opacity:.9}45%{opacity:.15}60%{opacity:.9}}.bill{position:absolute;bottom:-60px;width:46px;height:24px;border-radius:4px;background:linear-gradient(#9ff0b0,#3fb866);border:2px solid #1c7a40;color:#1c7a40;font-family:var(--font-display);font-size:16px;display:grid;place-items:center;animation:billRise linear infinite;opacity:.75}@keyframes billRise{0%{margin-bottom:0;rotate:-20deg;opacity:0}10%{opacity:.8}to{margin-bottom:115vh;rotate:25deg;opacity:.2}}.pbg-vignette{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 45%,transparent 45%,rgba(5,5,25,.6))}.board-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;background:#050a1ec7;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fadeIn .4s;padding:6px}.board-wrap{width:min(96vw,max(300px,calc(100dvh - 330px)),640px);display:flex;flex-direction:column;gap:6px}.board-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.board-head>div{flex:1;text-align:center;padding:4px 8px;border-radius:12px;background:#051814d9;border:2px solid rgba(255,225,140,.5)}.board-head small{display:block;font-size:10px;letter-spacing:1.5px;opacity:.8}.board-head b{font-family:var(--font-display);font-weight:400;font-size:clamp(18px,3.4vw,28px);color:var(--gold)}.mult-badge{background:linear-gradient(#ff9a4d,#d9421c)!important;border-color:#fff!important}.mult-badge b{color:#fff}.board{position:relative;aspect-ratio:1;display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(7,1fr);gap:3px;padding:6px;border-radius:18px;background:linear-gradient(145deg,#1a8a52,#0b4d2c);border:3px solid #ffe58a;box-shadow:0 0 0 4px #04200f,0 20px 50px #0009}.tile{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;text-align:center;background:linear-gradient(#fdf6dc,#e6d9ae);color:#1a1a14;border-radius:6px;overflow:hidden;padding:2px;font-size:clamp(6px,1.3vw,11px);line-height:1.05;box-shadow:inset 0 0 0 1px #00000040;transition:transform .2s,box-shadow .3s,filter .3s}.tile-band{position:absolute;top:0;left:0;right:0;height:24%;border-bottom:1px solid rgba(0,0,0,.4)}.tile-name{font-weight:800;z-index:1}.tile-rent{font-family:var(--font-display);color:#0b6a3a;font-size:1.25em;z-index:1}.tile-houses{min-height:1em;font-size:1.1em;z-index:1}.tile-icon{font-size:2.4em;font-family:var(--font-display);color:#b01010}.tile.k-chance{background:linear-gradient(#ffd070,#ff9a3a)}.tile.k-chance .tile-icon{color:#fff;text-shadow:0 2px 0 #8a4a00}.tile.k-start{background:linear-gradient(#ff9b9b,#e03a3a);color:#fff}.tile.k-start .tile-icon{color:#fff}.tile.k-jail,.tile.k-gotojail{background:linear-gradient(#ffb36b,#f07a28)}.tile.k-parking{background:linear-gradient(#9fe8ff,#3ab0e0)}.tile.owned{box-shadow:inset 0 0 0 3px #ffd34d;background:linear-gradient(#fffbe8,#ffe9a0)}.tile.set{box-shadow:inset 0 0 0 3px #7bff9e,0 0 12px #7bff9e}.tile.hl{transform:scale(1.18);z-index:4;filter:brightness(1.15);box-shadow:0 0 22px 6px #ffe14d,inset 0 0 0 3px #fff}.board-center{grid-row:2 / 7;grid-column:2 / 7;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:radial-gradient(circle,#ffffff1f,#0000002e);border:2px dashed rgba(255,230,150,.45)}.dice-row{display:flex;gap:14px}.die{width:clamp(46px,11vw,78px);aspect-ratio:1;border-radius:14%;background:linear-gradient(#fff,#d8dde4);border:2px solid #9aa6b2;display:grid;grid-template:repeat(3,1fr) / repeat(3,1fr);padding:12%;gap:2%;box-shadow:0 6px #8a96a2,0 10px 16px #0006}.die i{border-radius:50%}.die i.on{background:radial-gradient(circle at 35% 35%,#ff6a5a,#c01a10);box-shadow:inset 0 -2px 3px #0000004d}.die.rolling{animation:dieRoll .5s linear infinite}@keyframes dieRoll{0%{transform:rotate(0) translateY(0)}25%{transform:rotate(90deg) translateY(-12px)}50%{transform:rotate(180deg) translateY(0)}75%{transform:rotate(270deg) translateY(-8px)}to{transform:rotate(360deg) translateY(0)}}.board-msg{min-height:2.4em;text-align:center;font-size:clamp(12px,2.4vw,17px);padding:0 8px;text-shadow:0 2px 4px rgba(0,0,0,.6)}.roll-btn{font-family:var(--font-display);font-weight:400;font-size:clamp(18px,3.6vw,28px);padding:8px 34px;letter-spacing:2px}.roll-btn:not(:disabled){animation:rollPulse 1s ease-in-out infinite alternate}@keyframes rollPulse{to{transform:scale(1.08);box-shadow:0 3px #0a5a1d,0 0 24px #5eea72}}.token{position:absolute;width:11%;aspect-ratio:1;transform:translate(-50%,-50%);z-index:5;pointer-events:none;transition:left .22s cubic-bezier(.3,1.4,.5,1),top .22s cubic-bezier(.3,1.4,.5,1);display:grid;place-items:center;font-size:clamp(20px,5vw,38px);filter:drop-shadow(0 6px 4px rgba(0,0,0,.6))}.token span{display:block;animation:hop .45s ease-in-out infinite alternate}@keyframes hop{to{transform:translateY(-8px) rotate(8deg)}}.board .popup{z-index:6}.ov-dice{display:flex;gap:16px;justify-content:center;margin-top:14px}.ov-dice .die{animation:dieRoll 1.4s linear infinite}.theme-property .ov-title,.theme-property .ov-huge,.theme-property .ov-amount{background:linear-gradient(#f4ffd0,#7be35a 50%,#1c8a3a);-webkit-background-clip:text;background-clip:text;-webkit-text-stroke:3px #05331a}.theme-property .tier-title,.theme-property .ov-amount{background:linear-gradient(#fff6b0,#ffc928 55%,#d98700);-webkit-background-clip:text;background-clip:text;-webkit-text-stroke:3px #4a2600}.color-key{display:flex;gap:6px;margin-top:8px}.color-key span{width:28px;height:10px;border-radius:3px}.login-page{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:radial-gradient(ellipse at 50% -10%,#1d3a7a,#0a1230 60%,#05081a);overflow:auto;padding:16px}.login-card{position:relative;width:min(380px,100%);display:flex;flex-direction:column;gap:12px;padding:26px 24px;background:linear-gradient(#142450,#0b1633);border:2px solid rgba(120,170,255,.5);border-radius:22px;box-shadow:0 24px 60px #0009}.login-card h1{margin:0;text-align:center;font-family:var(--font-display);font-weight:400;font-size:44px;letter-spacing:2px;color:#fff;text-shadow:0 4px 0 #1a2a6a}.login-card h1 span{background:linear-gradient(#fff6b0,#ffc928 55%,#d98700);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:2px #6a3a00;paint-order:stroke fill}.login-card .muted{text-align:center;margin:0 0 6px}.login-card label{display:flex;flex-direction:column;gap:4px;font-size:14px}.login-card input,.create-user input,.create-user select,.filters select,.users input,.stat-head select{background:#031a2e;border:1px solid rgba(255,255,255,.35);border-radius:8px;color:#fff;padding:8px 10px;font:inherit}.login-card input:focus,.create-user input:focus{outline:2px solid var(--gold)}.login-card .btn{margin-top:6px;font-family:var(--font-display);font-weight:400;letter-spacing:2px;font-size:20px}.form-error{color:#ffb0b0;background:#a0141459;border:1px solid rgba(255,120,120,.6);border-radius:8px;padding:6px 10px;font-size:14px}.account-bar{position:relative;z-index:2;display:flex;justify-content:flex-end;align-items:center;gap:12px;max-width:1040px;margin:0 auto 8px;flex-wrap:wrap}.account-bar .who{display:flex;gap:8px;align-items:center}.wallet{background:var(--panel);border:2px solid rgba(255,225,140,.45);border-radius:12px;padding:4px 14px;font-family:var(--font-display);color:var(--gold);font-size:20px}.wallet small{font-family:var(--font-body);font-size:10px;letter-spacing:1.5px;color:#fff;opacity:.8;margin-right:6px}.btn.small{padding:4px 12px;font-size:13px;border-radius:8px;text-decoration:none;display:inline-block}a.btn{text-decoration:none;color:inherit}.badge{padding:1px 8px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:1px;background:#ffffff26}.badge.admin{background:linear-gradient(#ff9a4d,#d9421c);color:#fff}.admin-page{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto;background:radial-gradient(ellipse at 50% -10%,#1d3a7a,#0a1230 60%,#05081a);-webkit-user-select:text;user-select:text}.admin-head{display:flex;align-items:center;gap:14px;padding:14px 20px;flex-wrap:wrap}.admin-head h1{margin:0;font-family:var(--font-display);font-weight:400;font-size:30px;color:var(--gold)}.admin-head .tabs{margin:0}.admin-body{max-width:1180px;margin:0 auto;padding:0 20px 40px;display:flex;flex-direction:column;gap:14px}.admin-card{background:linear-gradient(#142450,#0b1633);border:1px solid rgba(120,170,255,.35);border-radius:14px;padding:12px 16px;overflow-x:auto}.admin-card h3{margin:0 0 8px;font-family:var(--font-display);font-weight:400;color:var(--gold)}.create-user{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.create-user h3{margin:0 8px 0 0}.narrow{width:110px}.users td,.audit td{white-space:nowrap}.users input.narrow{width:100px;padding:4px 8px}.num-cell{text-align:right!important;font-variant-numeric:tabular-nums}tr.inactive{opacity:.55}tr.clickable{cursor:pointer}tr.clickable:hover{background:#ffffff0f}tr.detail td{white-space:normal;background:#00000040}.json-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.json-pair pre{margin:4px 0 0;max-height:320px;overflow:auto;background:#031a2e;border-radius:8px;padding:8px;font-size:11px}.details-cell{white-space:normal!important;font-family:ui-monospace,Consolas,monospace;font-size:11px;max-width:480px;word-break:break-all}.filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.game-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px}.stat-card.disabled{opacity:.7;border-style:dashed}.stat-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.stat-card dl{display:grid;grid-template-columns:1fr auto;gap:4px 12px;margin:8px 0 12px;font-size:14px}.stat-card dt{opacity:.8}.stat-card dd{margin:0;text-align:right;font-weight:800;font-variant-numeric:tabular-nums}.pos{color:#7bff9e}.neg{color:#ff9a9a}.admin-page .note{cursor:pointer}@media (max-width: 720px){.json-pair{grid-template-columns:1fr}}.badge.tier-mini{background:#12894a}.badge.tier-minor{background:#1565c0}.badge.tier-major{background:#6a1fb8}.badge.tier-mega{background:linear-gradient(#ffc928,#d9780a);color:#3a1f00}.home{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto;background:radial-gradient(ellipse at 50% -10%,#1d3a7a,#0a1230 60%,#05081a);padding:28px 20px 60px}.home-bg{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.home-bg i{position:absolute;bottom:-30px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#fff9,#78c8ff26);animation:homeRise linear infinite}@keyframes homeRise{to{transform:translateY(-115vh)}}.home-head{position:relative;text-align:center;margin-bottom:26px}.home-head h1{margin:0;font-family:var(--font-display);font-weight:400;font-size:clamp(40px,9vw,84px);letter-spacing:3px;color:#fff;text-shadow:0 4px 0 #1a2a6a,0 10px 30px rgba(80,140,255,.6)}.home-head h1 span{background:linear-gradient(#fff6b0,#ffc928 55%,#d98700);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:2px #6a3a00;paint-order:stroke fill;filter:drop-shadow(0 4px 0 #4a2600)}.home-head p{opacity:.8;margin:6px 0 0}.home-grid{position:relative;max-width:1040px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:22px}.game-card{position:relative;display:flex;flex-direction:column;border-radius:22px;overflow:hidden;text-decoration:none;color:inherit;background:linear-gradient(#142450,#0b1633);border:2px solid var(--accent, #6ab);box-shadow:0 14px 40px #00000080;transition:transform .25s cubic-bezier(.2,1.4,.4,1),box-shadow .25s}.game-card:not(.coming):hover{transform:translateY(-8px) scale(1.02);box-shadow:0 24px 50px #0009,0 0 36px 2px var(--accent)}.game-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(110deg,transparent 40%,rgba(255,255,255,.18) 50%,transparent 60%);background-size:250% 100%;background-position:150% 0;transition:background-position .8s}.game-card:hover:after{background-position:-50% 0}.card-art{height:210px;position:relative;overflow:hidden}.card-body{padding:16px 18px 20px;display:flex;flex-direction:column;gap:8px;flex:1}.card-body h2{margin:0;font-family:var(--font-display);font-weight:400;font-size:30px;color:var(--accent, #fff)}.card-body p{margin:0;opacity:.85;font-size:15px}.card-body ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.card-body li{font-size:12px;padding:3px 9px;border-radius:999px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2)}.play-btn{margin-top:auto;align-self:flex-start;padding:9px 22px;border-radius:14px;font-weight:800;letter-spacing:1px;color:#04200f;background:linear-gradient(#7bff9e,#1fb546);border:2px solid #fff;box-shadow:0 4px #0a5a1d}.game-card:hover .play-btn{animation:rollPulse .6s ease-in-out infinite alternate}@keyframes rollPulse{to{transform:scale(1.08)}}.coming{opacity:.55;border-style:dashed}.coming-art{display:grid;place-items:center;font-family:var(--font-display);font-size:90px;color:#ffffff40}.cover{position:absolute;top:0;right:0;bottom:0;left:0}.cover-fishing{background:linear-gradient(#58d3ff,#1790d6 30%,#0b4a96 70%,#062d63)}.cover-waves{position:absolute;top:0;left:0;right:0;height:22px;background:repeating-radial-gradient(circle at 20px 0,rgba(255,255,255,.7) 0 10px,transparent 10px 40px);animation:coverWave 6s linear infinite}@keyframes coverWave{to{background-position:40px 0}}.cover-property{background:linear-gradient(#0b1030,#2a1a5e 50%,#b0457a)}.cover-city{position:absolute;left:0;right:0;bottom:0;height:90px;background:linear-gradient(#111a35,#111a35) 6% 100% / 12% 60% no-repeat,linear-gradient(#18244a,#18244a) 20% 100% / 10% 85% no-repeat,linear-gradient(#111a35,#111a35) 33% 100% / 14% 50% no-repeat,linear-gradient(#18244a,#18244a) 50% 100% / 9% 95% no-repeat,linear-gradient(#111a35,#111a35) 63% 100% / 13% 70% no-repeat,linear-gradient(#18244a,#18244a) 78% 100% / 10% 55% no-repeat,linear-gradient(#111a35,#111a35) 92% 100% / 14% 80% no-repeat}.cover-sym{position:absolute;width:96px;filter:drop-shadow(0 8px 10px rgba(0,0,0,.45));animation:coverFloat 3.4s ease-in-out infinite alternate}.cover-sym .sym{width:100%;display:block}.cover-sym.s1{left:8%;top:46px;animation-delay:-.5s}.cover-sym.s2{left:36%;top:26px;width:120px;animation-delay:-1.4s}.cover-sym.s3{right:10%;top:40px;animation-delay:-2.2s}.cover-sym.s4{left:56%;top:100px;width:84px;animation-delay:-.9s}@keyframes coverFloat{0%{transform:translateY(-6px) rotate(-4deg)}to{transform:translateY(8px) rotate(4deg)}}.cover-dice{position:absolute;left:46%;top:120px;display:flex;gap:8px}.cover-dice .die{width:44px}:root{--gold: #ffd34d;--gold-d: #c98a00;--ink: #06243f;--panel: rgba(4, 28, 52, .78);--font-display: "Lilita One", "Baloo 2", Impact, system-ui, sans-serif;--font-body: "Nunito", system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;height:100%}body{background:#031a2e;color:#eaf7ff;font-family:var(--font-body);font-weight:600;overflow:hidden;-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none}button{font-family:inherit;color:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}.boot{display:grid;place-items:center;height:100%;font-family:var(--font-display);font-size:28px}.game{position:relative;height:100dvh;display:flex;flex-direction:column;overflow:hidden}.game.shake{animation:shake .6s cubic-bezier(.36,.07,.19,.97)}@keyframes shake{10%,90%{transform:translate3d(-2px,1px,0)}20%,80%{transform:translate3d(4px,-2px,0)}30%,50%,70%{transform:translate3d(-7px,3px,0)}40%,60%{transform:translate3d(7px,-3px,0)}}.top,.stage,.hud,.free-bar{position:relative;z-index:5}.top{display:flex;justify-content:space-between;align-items:center;padding:10px 18px 0}.logo{display:flex;flex-direction:column;line-height:.82;font-family:var(--font-display);transform:rotate(-2deg)}.logo-top,.logo-bottom{font-size:clamp(28px,5vw,52px);letter-spacing:2px;background:linear-gradient(#fff6b0,#ffc928 55%,#d98700);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:2px #6a3a00;paint-order:stroke fill;filter:drop-shadow(0 4px 0 #4a2600) drop-shadow(0 8px 12px rgba(0,0,0,.4))}.logo-bottom{margin-left:22px;background:linear-gradient(#ffb29b,#ff5a3c 55%,#b91e0a);-webkit-background-clip:text;background-clip:text;-webkit-text-stroke:2px #4d0a00}.logo:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(110deg,transparent 40%,rgba(255,255,255,.65) 50%,transparent 60%);background-size:250% 100%;mix-blend-mode:overlay;animation:shine 4s linear infinite}@keyframes shine{0%{background-position:150% 0}to{background-position:-50% 0}}.top-btns{display:flex;gap:8px}.icon-btn{width:42px;height:42px;border-radius:50%;border:2px solid rgba(255,255,255,.55);background:linear-gradient(#2c8fcf,#0f4f8a);font-size:18px;font-weight:800;box-shadow:0 4px #062a4d,0 6px 14px #00000059;transition:transform .12s}.icon-btn:hover:not(:disabled){transform:translateY(-2px) scale(1.05)}.icon-btn:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px #062a4d}.stage{flex:1;min-height:0;display:grid;place-items:center;padding:8px 10px}.machine{--w: min(94vw, calc((100dvh - 290px) * 5 / 3), 880px);width:var(--w);padding:clamp(8px,1.6vw,18px);border-radius:28px;background:linear-gradient(145deg,#e9a64a,#8a4f1a 45%,#5c300d);border:3px solid #ffe6a8;box-shadow:0 0 0 5px #3a1c06,0 0 0 8px #ffd67859,0 24px 60px #0000008c,inset 0 2px 6px #ffffff8c,inset 0 -8px 16px #00000059;position:relative}.machine:before,.machine:after{content:"";position:absolute;width:14px;height:14px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#fff,#ffd34d 40%,#8a5a00);top:10px;left:10px;box-shadow:calc(var(--w) - 52px) 0 0 -0px #ffd34d}.is-free .machine{background:linear-gradient(145deg,#ffe27a,#d9901a 45%,#8a4f0a);box-shadow:0 0 0 5px #3a1c06,0 0 40px 10px #ffc83c8c,0 24px 60px #0000008c,inset 0 2px 6px #ffffffb3;animation:freeGlow 2.4s ease-in-out infinite}@keyframes freeGlow{50%{filter:brightness(1.12) saturate(1.2)}}.reel-frame{position:relative;width:100%;background:linear-gradient(#0a4f7c,#052b4a);border-radius:16px;overflow:hidden;box-shadow:inset 0 0 0 3px #1a0c02,inset 0 8px 30px #000000a6}.reel-frame:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;background:linear-gradient(rgba(0,20,40,.55),transparent 16%,transparent 84%,rgba(0,20,40,.55)),radial-gradient(ellipse at 50% 0%,rgba(150,230,255,.18),transparent 60%)}.reels{display:flex;height:100%}.reel{flex:1;position:relative;border-right:2px solid rgba(0,20,40,.55)}.reel:last-child{border-right:0}.reel-window{position:relative;overflow:hidden}.reel-strip{will-change:transform}.reel.is-spinning .reel-window:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:repeating-linear-gradient(180deg,rgba(255,255,255,.07) 0 6px,transparent 6px 18px);animation:streak .25s linear infinite}@keyframes streak{to{background-position:0 18px}}.reel.is-anticipating{box-shadow:inset 0 0 0 3px #ffe14d,inset 0 0 40px 6px #ffe14d99;animation:antic .35s ease-in-out infinite alternate;z-index:2}@keyframes antic{to{box-shadow:inset 0 0 0 3px #fff,inset 0 0 60px 14px #ffeb78e6}}.cell{display:grid;place-items:center;padding:5%;transition:opacity .3s,filter .3s,transform .3s;position:relative}.cell .sym{width:100%;height:100%;overflow:visible}.cell.dim{opacity:.38;filter:grayscale(.5) brightness(.8)}.cell.win{z-index:2;animation:winPulse .7s ease-in-out infinite alternate}.cell.win .sym{filter:drop-shadow(0 0 10px #fff3a0) drop-shadow(0 0 22px #ffc928)}@keyframes winPulse{0%{transform:scale(1)}to{transform:scale(1.1)}}.cell.scatter-hit{z-index:2;animation:scatterHit .5s ease-in-out infinite alternate}.cell.scatter-hit .sym{filter:drop-shadow(0 0 14px #7ff6ff) drop-shadow(0 0 28px #3ad)}@keyframes scatterHit{0%{transform:scale(1) rotate(-3deg)}to{transform:scale(1.18) rotate(4deg)}}.lines{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:4;pointer-events:none}.lines polyline{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.line-faint{stroke-width:3;opacity:.35;stroke-dasharray:5 7}.line-draw{stroke-width:7;stroke-dasharray:1;stroke-dashoffset:1;animation:draw .5s ease-out forwards;filter:drop-shadow(0 0 6px currentColor)}@keyframes draw{to{stroke-dashoffset:0}}.fx-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none}.fly{position:absolute;width:14%;aspect-ratio:1;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 30% 30%,#fff9c2,#ffc928 55%,#b86e00);border:3px solid #fff;box-shadow:0 0 18px #ffd34d,0 0 40px #ffc83ccc;font-family:var(--font-display);color:#6a3a00;font-size:clamp(12px,2.2vw,22px)}.popup{position:absolute;transform:translate(-50%,-50%);white-space:nowrap;font-family:var(--font-display);font-size:clamp(18px,3.4vw,34px);color:#fff;-webkit-text-stroke:5px #6a3a00;paint-order:stroke fill;text-shadow:0 0 20px #ffc928;animation:popupFloat 1.5s ease-out forwards}.popup.mult{color:#ffe14d;font-size:clamp(22px,4.4vw,44px)}@keyframes popupFloat{0%{transform:translate(-50%,-30%) scale(.3);opacity:0}15%{transform:translate(-50%,-70%) scale(1.25);opacity:1}70%{opacity:1}to{transform:translate(-50%,-190%) scale(1);opacity:0}}.hud{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:10px 18px 16px;background:linear-gradient(transparent,#021020bf 40%)}.panel{background:var(--panel);border:2px solid rgba(160,220,255,.4);border-radius:14px;padding:6px 16px;min-width:130px;max-width:220px;text-align:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:inset 0 2px 8px #0006}.panel b{font-family:var(--font-display);font-weight:400;font-size:clamp(20px,3.2vw,30px);color:var(--gold)}.hud>.panel:first-child{justify-self:start}.win-panel{justify-self:end;transition:box-shadow .3s,border-color .3s}.win-panel.has-win{border-color:#ffe14d;box-shadow:0 0 22px #ffd63cb3,inset 0 2px 8px #0006}.win-panel.has-win b{color:#fff;text-shadow:0 0 12px #ffc928}.controls{display:flex;align-items:center;gap:22px}.bet{display:flex;align-items:center;gap:8px}.bet-panel{min-width:96px}.round-btn{width:40px;height:40px;border-radius:50%;border:2px solid #fff;background:linear-gradient(#ffd34d,#c98a00);font-size:26px;font-weight:800;color:#4a2600;line-height:1;box-shadow:0 4px #6a3a00,0 6px 12px #0006}.round-btn:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px #6a3a00}.spin-wrap{display:flex;align-items:center;gap:14px}.spin-btn{width:clamp(78px,11vw,104px);height:clamp(78px,11vw,104px);border-radius:50%;border:0;padding:0;background:radial-gradient(circle at 35% 30%,#8dff9a,#1fb546 55%,#0a6b25);box-shadow:0 0 0 4px #fff,0 0 0 7px #0a4f1d,0 8px 0 7px #06371a,0 14px 24px #00000080,0 0 30px #50ff788c;transition:transform .12s}.spin-btn:hover:not(:disabled){transform:scale(1.06)}.spin-btn:active:not(:disabled){transform:translateY(5px) scale(.97)}.spin-btn svg{width:100%;height:100%}.spin-ring{fill:none;stroke:#ffffff59;stroke-width:3;stroke-dasharray:8 8;transform-origin:50px 50px;animation:spinSlow 14s linear infinite}.spin-arrow{fill:none;stroke:#fff;stroke-width:9;stroke-linecap:round;filter:drop-shadow(0 2px 0 #06371a)}.spin-arrow-head{fill:none;stroke:#fff;stroke-width:9;stroke-linecap:round;stroke-linejoin:round}.spin-btn svg path{transform-origin:50px 50px}.spin-btn.busy{filter:saturate(.4) brightness(.8)}.spin-btn.busy svg path{animation:spinSlow .8s linear infinite}@keyframes spinSlow{to{transform:rotate(360deg)}}.toggle{width:54px;height:54px;border-radius:50%;border:2px solid rgba(255,255,255,.5);background:linear-gradient(#2c6c9c,#123c60);font-size:20px;line-height:1;padding-top:4px;display:flex;flex-direction:column;align-items:center;justify-content:center}.toggle small{font-size:8px;letter-spacing:1px;margin-top:2px}.toggle.on{background:linear-gradient(#ffe14d,#e08a00);color:#4a2600;box-shadow:0 0 18px #ffc928}.error{position:absolute;bottom:4px;left:50%;transform:translate(-50%);z-index:20;background:#7a1010;border:2px solid #ff9a9a;border-radius:10px;padding:8px 14px;font-size:14px;max-width:90vw;cursor:pointer}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;cursor:pointer;background:radial-gradient(circle,#00142d8c,#000a19e0);animation:fadeIn .3s}@keyframes fadeIn{0%{opacity:0}}.coin-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.ov-rays{position:absolute;width:150vmax;height:150vmax;left:50%;top:50%;margin:-75vmax 0 0 -75vmax;opacity:.5;background:repeating-conic-gradient(from 0deg,rgba(255,226,120,.55) 0 8deg,transparent 8deg 20deg);mask-image:radial-gradient(circle,#000 0%,transparent 55%);-webkit-mask-image:radial-gradient(circle,#000 0%,transparent 55%);animation:spinSlow 24s linear infinite}.ov-card{position:relative;z-index:2;text-align:center;padding:20px;animation:popIn .7s cubic-bezier(.2,1.6,.4,1);max-width:92vw}@keyframes popIn{0%{transform:scale(.2) rotate(-8deg);opacity:0}}.ov-title,.ov-huge,.ov-amount,.ov-mult{font-family:var(--font-display);font-weight:400;line-height:1;background:linear-gradient(#fff6b0,#ffc928 55%,#d98700);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:3px #6a3a00;paint-order:stroke fill;filter:drop-shadow(0 6px 0 #4a2600) drop-shadow(0 10px 22px rgba(0,0,0,.5))}.ov-title{font-size:clamp(34px,8vw,78px);margin:6px 0}.ov-huge{font-size:clamp(90px,22vw,220px);animation:throb 1s ease-in-out infinite alternate}.ov-amount{font-size:clamp(54px,13vw,130px);animation:throb .6s ease-in-out infinite alternate}.ov-mult{font-size:clamp(30px,6vw,56px);background:linear-gradient(#ffd0b0,#ff6a3c 55%,#b91e0a);-webkit-background-clip:text;background-clip:text;-webkit-text-stroke:3px #4d0a00}@keyframes throb{to{transform:scale(1.07)}}.ov-small{font-size:18px;letter-spacing:4px;opacity:.85}.ov-sub{max-width:460px;margin:10px auto 0;font-size:16px;opacity:.9}.ov-hint{margin-top:18px;font-size:13px;letter-spacing:2px;opacity:.7;animation:blink 1.4s infinite}@keyframes blink{50%{opacity:.2}}.tier-mega .ov-title.tier-title{background:linear-gradient(#e8ffb0,#6fe04a 55%,#1c8a2a);-webkit-background-clip:text;background-clip:text;-webkit-text-stroke:3px #0a3a10}.tier-epic .ov-title.tier-title{background:linear-gradient(#ffd0f8,#ff4ad8 55%,#8a1a9a);-webkit-background-clip:text;background-clip:text;-webkit-text-stroke:3px #3a0a45}.modal{position:absolute;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;background:#000a19b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s;padding:10px}.modal-card{width:min(860px,100%);max-height:94dvh;overflow:auto;border-radius:18px;padding:16px 20px;background:linear-gradient(#0e4a78,#08294a);border:2px solid rgba(180,230,255,.55);box-shadow:0 20px 60px #0009;-webkit-user-select:text;user-select:text;display:flex;flex-direction:column}.modal-head{display:flex;justify-content:space-between;align-items:center}.modal-head h2{margin:0;font-family:var(--font-display);font-weight:400;font-size:30px;color:var(--gold)}.modal h3{font-family:var(--font-display);font-weight:400;color:var(--gold);margin:14px 0 4px}.muted{opacity:.8;font-size:14px}.tabs,.seg{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.tabs button,.seg button{padding:7px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.3);background:#ffffff14;font-size:14px}.tabs button.active,.seg button.active{background:var(--gold);color:#4a2600;font-weight:800}.tab-body{flex:1;overflow:auto;min-height:280px;padding:4px 2px}.form{display:flex;flex-direction:column;gap:10px}.form label{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:15px}.form label.check{justify-content:flex-start}fieldset{border:1px solid rgba(255,255,255,.25);border-radius:10px;display:flex;flex-direction:column;gap:8px}legend{padding:0 6px;color:var(--gold);font-size:14px}.num{background:#031a2e;border:1px solid rgba(255,255,255,.35);border-radius:8px;color:#fff;padding:5px 7px;font:inherit}.num.wide{width:60%}.num:focus{outline:2px solid var(--gold)}.form span{display:inline-flex;align-items:center;gap:6px;font-size:13px}.grid-table{border-collapse:collapse;width:100%;font-size:14px}.grid-table th,.grid-table td{padding:4px 6px;border-bottom:1px solid rgba(255,255,255,.12);text-align:center}.grid-table td:first-child,.grid-table th:first-child{text-align:left}.grid-table.report td:last-child{text-align:right}.json{width:100%;min-height:300px;background:#031a2e;color:#bff;border:1px solid rgba(255,255,255,.3);border-radius:10px;font:12px/1.4 ui-monospace,Consolas,monospace;padding:8px}.modal-foot{display:flex;gap:8px;margin-top:12px;align-items:center}.spacer{flex:1}.btn{padding:9px 20px;border-radius:12px;border:2px solid #fff;background:linear-gradient(#5eea72,#1fa83c);font-weight:800;color:#04300f;box-shadow:0 3px #0a5a1d}.btn.ghost{background:#ffffff1a;color:#fff;border-color:#fff6;box-shadow:none}.note{margin-top:8px;padding:6px 10px;border-radius:8px;background:#ffe14d26;border:1px solid rgba(255,225,77,.5);font-size:13px}.error-inline{color:#ffb0b0;font-size:13px}.pt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}.pt-item{display:flex;gap:10px;align-items:center;background:#00000040;border-radius:12px;padding:8px}.pt-item.special{grid-column:1 / -1}.pt-art{width:64px;flex:none}.pt-item p{margin:3px 0;font-size:13px;opacity:.9}.pays{font-size:14px}.pays span{display:inline-block;width:18px;color:var(--gold);font-weight:800}@media (max-width: 720px){.hud{grid-template-columns:1fr 1fr;grid-template-areas:"bal win" "ctl ctl";padding:6px 10px 12px}.hud>.panel:first-child{grid-area:bal}.hud>.win-panel{grid-area:win}.hud>.controls{grid-area:ctl;justify-content:space-between;gap:8px}.machine{--w: min(96vw, calc((100dvh - 360px) * 5 / 3))}.panel{min-width:0}.controls{gap:6px}.bet{gap:5px}.bet-panel{min-width:62px;padding:4px 8px}.round-btn{width:32px;height:32px;font-size:22px}.spin-wrap{gap:8px}.spin-btn{width:70px;height:70px}.toggle{width:42px;height:42px;font-size:16px}.toggle small{font-size:7px}}@media (prefers-reduced-motion: reduce){.bg-rays i,.swimmer,.blade,.bg-surface svg{animation:none}}.panel small{display:block;font-size:11px;letter-spacing:1.5px;opacity:.8}.top-left{display:flex;align-items:center;gap:12px}.home-btn{display:grid;place-items:center;text-decoration:none;color:inherit;font-size:22px}.bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden}.jp-bar{position:relative;z-index:5;display:flex;flex-direction:column;align-items:center;gap:4px;margin:6px auto 0;width:min(94vw,760px)}.jp-pots{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:100%}.jp-pot{--c1: #5fe08a;--c2: #148a44;position:relative;overflow:hidden;text-align:center;padding:3px 6px 4px;border-radius:12px;background:linear-gradient(var(--c1),var(--c2));border:2px solid rgba(255,255,255,.85);box-shadow:0 4px #00000059,0 8px 18px #00000059,inset 0 1px 3px #ffffffb3}.jp-pot:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(110deg,transparent 40%,rgba(255,255,255,.45) 50%,transparent 60%);background-size:250% 100%;animation:shine 5s linear infinite;mix-blend-mode:overlay}.jp-mini{--c1: #6df09a;--c2: #12894a}.jp-minor{--c1: #6fd0ff;--c2: #1565c0}.jp-major{--c1: #d09bff;--c2: #6a1fb8}.jp-mega{--c1: #ffe27a;--c2: #d9780a;animation:megaGlow 1.6s ease-in-out infinite alternate}@keyframes megaGlow{to{box-shadow:0 4px #00000059,0 0 26px 4px #ffc83ccc,inset 0 1px 3px #ffffffb3}}.jp-label{display:block;font-size:10px;letter-spacing:2px;font-weight:800;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.6)}.jp-pot b{font-family:var(--font-display);font-weight:400;font-size:clamp(15px,3.4vw,26px);line-height:1.1;color:#fff;-webkit-text-stroke:3px rgba(0,0,0,.45);paint-order:stroke fill;display:block;font-variant-numeric:tabular-nums}.jp-bump{animation:potBump .6s ease-out}@keyframes potBump{0%{transform:scale(1);filter:brightness(1)}25%{transform:scale(1.18);filter:brightness(1.5)}to{transform:scale(1);filter:brightness(1)}}.jp-ticker{align-self:stretch;text-align:center;font-size:13px;padding:3px 10px;border-radius:10px;color:#fff;background:linear-gradient(#3c1900e6,#1e0a00eb);border:1px solid #ffe6a8;animation:dropIn .5s cubic-bezier(.2,1.4,.4,1)}.jp-live{position:absolute;right:-2px;top:-4px;width:9px;height:9px;border-radius:50%;background:#888;box-shadow:0 0 0 2px #0006}.jp-live.on{background:#4dff88;box-shadow:0 0 8px #4dff88}.has-jackpot .machine{--w: min(94vw, calc((100dvh - 355px) * 5 / 3), 880px)}.ov-jackpot .ov-title.jp-title{font-size:clamp(34px,8vw,80px)}.jp-mini .jp-title{background:linear-gradient(#e8ffe8,#5fe08a 55%,#12894a);-webkit-background-clip:text;background-clip:text;-webkit-text-stroke:3px #05331a}.jp-minor .jp-title{background:linear-gradient(#e8f6ff,#5fc8ff 55%,#1565c0);-webkit-background-clip:text;background-clip:text;-webkit-text-stroke:3px #062a5a}.jp-major .jp-title{background:linear-gradient(#f4e0ff,#c280ff 55%,#6a1fb8);-webkit-background-clip:text;background-clip:text;-webkit-text-stroke:3px #2a0a5a}.jp-mega .jp-title{background:linear-gradient(#fff6b0,#ffc928 55%,#d9780a);-webkit-background-clip:text;background-clip:text;-webkit-text-stroke:3px #6a3a00;animation:none;box-shadow:none}@media (max-width: 720px){.jp-pots{gap:4px}.jp-label{font-size:8px;letter-spacing:1px}.has-jackpot .machine{--w: min(96vw, calc((100dvh - 420px) * 5 / 3))}}
