:root{--gold:gold;--gold2:orange;--red:#ff2d55;--dark:#0a0a0f;--panel:#12121a;--border:#2a2a3a;--green:#00ff87;--purple:#c688ff;--blue:#0af5f5;--text:#e8e8f0}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--dark);color:var(--text);min-height:100vh;font-family:Space Mono,monospace;overflow-x:hidden}.stars{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.star{animation:twinkle var(--d,3s) infinite;opacity:0;background:#fff;border-radius:50%;position:absolute}@keyframes twinkle{0%,to{opacity:0}50%{opacity:var(--o,.3)}}.page-bg{pointer-events:none;z-index:0;background:radial-gradient(at 20% 10%,#ffd7000f 0%,#0000 55%),radial-gradient(at 80% 90%,#0af5f50a 0%,#0000 55%),radial-gradient(#ff2d5508 0%,#0000 60%);position:fixed;inset:0}.lobby{z-index:200;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lobby-card{background:var(--panel);border:2px solid var(--border);text-align:center;z-index:1;border-radius:24px;width:min(400px,90vw);padding:44px 36px;position:relative;box-shadow:0 0 60px #ffd70012}.lobby-card:before{content:"";background:linear-gradient(90deg, transparent, var(--gold), transparent);height:2px;position:absolute;top:-1px;left:20%;right:20%}.lobby-logo{letter-spacing:6px;background:linear-gradient(135deg, var(--gold), var(--gold2), var(--gold));-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 20px #ffd7004d);-webkit-background-clip:text;background-clip:text;margin-bottom:2px;font-family:Bebas Neue,cursive;font-size:54px;line-height:1}.lobby-tagline{color:#555;letter-spacing:4px;text-transform:uppercase;margin-bottom:30px;font-size:9px}.lobby-tabs{border:1px solid var(--border);border-radius:8px;margin-bottom:22px;display:flex;overflow:hidden}.lobby-tab{color:#555;letter-spacing:2px;cursor:pointer;text-transform:uppercase;background:0 0;border:none;flex:1;padding:9px;font-family:Space Mono,monospace;font-size:11px;transition:all .15s}.lobby-tab:hover{color:var(--gold)}.lobby-tab.active{color:var(--gold);background:#ffd70014}.lobby-input{border:1px solid var(--border);width:100%;color:var(--text);text-align:center;letter-spacing:2px;background:#0d0d14;border-radius:10px;outline:none;margin-bottom:10px;padding:13px 16px;font-family:Space Mono,monospace;font-size:16px;transition:border-color .2s}.lobby-input:focus{border-color:var(--gold)}.lobby-input::placeholder{color:#333;letter-spacing:1px;font-size:12px}.lobby-error{color:var(--red);letter-spacing:1px;min-height:18px;margin-bottom:10px;font-size:11px}.lobby-btn{letter-spacing:6px;background:linear-gradient(135deg, var(--gold2), var(--gold));color:#0a0a0f;cursor:pointer;border:none;border-radius:12px;width:100%;padding:18px;font-family:Bebas Neue,cursive;font-size:28px;transition:all .18s;position:relative;overflow:hidden}.lobby-btn:before{content:"";background:linear-gradient(135deg,#0000,#ffffff2e,#0000);transition:transform .4s;position:absolute;inset:0;transform:translate(-100%)}.lobby-btn:hover:before{transform:translate(100%)}.lobby-btn:hover{transform:translateY(-2px);box-shadow:0 8px 28px #ffa50047}.hub-page{z-index:1;flex-direction:column;align-items:center;gap:24px;min-height:100vh;padding:32px 16px 60px;display:flex;position:relative}.hub-inner{flex-direction:column;align-items:center;gap:24px;width:min(900px,100%);display:flex}.hub-header{background:var(--panel);border:1px solid var(--border);border-radius:20px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;width:100%;padding:24px 32px;display:flex;position:relative}.hub-header:before{content:"";background:linear-gradient(90deg, transparent, var(--gold), transparent);height:2px;position:absolute;top:-1px;left:15%;right:15%}.hub-title{letter-spacing:6px;background:linear-gradient(135deg, var(--gold), var(--gold2), var(--gold));-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 12px #ffd70033);-webkit-background-clip:text;background-clip:text;font-family:Bebas Neue,cursive;font-size:48px;line-height:1}.hub-sub{color:#444;letter-spacing:4px;text-transform:uppercase;margin-top:4px;font-size:9px}.hub-player{flex-shrink:0;align-items:center;gap:20px;display:flex}.hub-name-pill{border:1px solid var(--border);color:var(--gold);letter-spacing:2px;background:#0d0d14;border-radius:20px;align-items:center;gap:8px;padding:8px 18px;font-size:12px;display:flex}.hub-profile-link{text-decoration:none;transition:border-color .15s,color .15s,transform .15s}.hub-profile-link:hover{border-color:var(--gold);transform:translateY(-1px)}.hub-online-dot{background:var(--green);width:6px;height:6px;box-shadow:0 0 6px var(--green);border-radius:50%}.hub-tokens{text-align:right}.hub-tokens-label{color:#555;letter-spacing:3px;text-transform:uppercase;margin-bottom:2px;font-size:9px}.hub-tokens-value{color:var(--gold);letter-spacing:2px;font-family:Bebas Neue,cursive;font-size:38px;line-height:1}.hub-logout-btn{color:#444;letter-spacing:2px;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #ff2d5540;border-radius:8px;flex-shrink:0;padding:8px 14px;font-family:Space Mono,monospace;font-size:10px;transition:all .15s}.hub-logout-btn:hover{border-color:var(--red);color:var(--red)}.game-select-label{color:#444;letter-spacing:4px;text-transform:uppercase;align-self:flex-start;width:100%;font-size:10px}.game-cards{grid-template-columns:repeat(2,1fr);gap:16px;width:100%;display:grid}.game-card{background:var(--panel);border:1px solid var(--border);cursor:pointer;color:inherit;border-radius:20px;flex-direction:column;align-items:center;gap:12px;padding:36px 28px;text-decoration:none;transition:all .2s;display:flex;position:relative;overflow:hidden}.game-card:before{content:"";height:2px;transition:opacity .2s;position:absolute;top:-1px;left:20%;right:20%}.game-card.slots:before{background:linear-gradient(90deg,transparent,var(--gold),transparent)}.game-card.bj:before{background:linear-gradient(90deg,transparent,var(--blue),transparent)}.game-card.roulette:before{background:linear-gradient(90deg,transparent,var(--red),transparent)}.game-card.horse:before{background:linear-gradient(90deg,transparent,var(--green),transparent)}.game-card.baccarat:before{background:linear-gradient(90deg,transparent,var(--purple),transparent)}.game-card.mines:before{background:linear-gradient(90deg,#0000,#ff9500,#0000)}.game-card.crash:before{background:linear-gradient(90deg,#0000,#ff4500,#0000)}.game-card.plinko:before{background:linear-gradient(90deg,#0000,#ff2d8b,#0000)}.game-card:hover{border-color:#444;transform:translateY(-4px)}.game-card.slots:hover{border-color:#ffd70066;box-shadow:0 8px 32px #ffd70014}.game-card.bj:hover{border-color:#0af5f566;box-shadow:0 8px 32px #0af5f514}.game-card.roulette:hover{border-color:#ff2d5566;box-shadow:0 8px 32px #ff2d5514}.game-card.horse:hover{border-color:#00ff8766;box-shadow:0 8px 32px #00ff8714}.game-card.baccarat:hover{border-color:#c688ff66;box-shadow:0 8px 32px #c688ff14}.game-card.mines:hover{border-color:#ff950066;box-shadow:0 8px 32px #ff950014}.game-card.crash:hover{border-color:#ff450066;box-shadow:0 8px 32px #ff450014}.game-card.plinko:hover{border-color:#ff2d8b66;box-shadow:0 8px 32px #ff2d8b14}.game-icon{filter:drop-shadow(0 4px 12px #0006);font-size:56px;line-height:1}.game-name{letter-spacing:4px;text-align:center;font-family:Bebas Neue,cursive;font-size:32px}.game-card.slots .game-name{color:var(--gold)}.game-card.bj .game-name{color:var(--blue)}.game-card.roulette .game-name{color:var(--red)}.game-card.horse .game-name{color:var(--green)}.game-card.baccarat .game-name{color:var(--purple)}.game-card.mines .game-name{color:#ff9500}.game-card.crash .game-name{color:#ff4500}.game-card.plinko .game-name{color:#ff2d8b}.game-desc{color:#555;letter-spacing:1px;text-align:center;font-size:10px;line-height:1.6}.game-play-btn{letter-spacing:4px;cursor:pointer;pointer-events:none;border:none;border-radius:10px;margin-top:8px;padding:12px 32px;font-family:Bebas Neue,cursive;font-size:20px;transition:all .15s}.game-card.slots .game-play-btn{background:linear-gradient(135deg,var(--gold2),var(--gold));color:#0a0a0f}.game-card.bj .game-play-btn{color:var(--blue);background:#0af5f51a;border:1px solid #0af5f54d}.game-card.roulette .game-play-btn{color:var(--red);background:#ff2d551a;border:1px solid #ff2d554d}.game-card.horse .game-play-btn{color:var(--green);background:#00ff871a;border:1px solid #00ff874d}.game-card.baccarat .game-play-btn{color:var(--purple);background:#c688ff1a;border:1px solid #c688ff4d}.game-card.mines .game-play-btn{color:#ff9500;background:#ff95001a;border:1px solid #ff95004d}.game-card.crash .game-play-btn{color:#ff4500;background:#ff45001a;border:1px solid #ff45004d}.game-card.plinko .game-play-btn{color:#ff2d8b;background:#ff2d8b1a;border:1px solid #ff2d8b4d}.game-card:hover .game-play-btn{transform:scale(1.04)}.game-page{flex-direction:column;align-items:center;min-height:100vh;padding-bottom:48px;display:flex;overflow-x:hidden}.game-bg{pointer-events:none;z-index:0;position:fixed;inset:0}.app-wrapper{z-index:1;flex-direction:column;gap:12px;width:min(720px,100%);padding:20px 16px;display:flex;position:relative}.app-wrapper.wide{width:min(960px,100%)}.game-header{background:var(--panel);border:1px solid var(--border);border-radius:18px;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;display:flex;position:relative;overflow:hidden}.game-header:before{content:"";height:2px;position:absolute;top:0;left:15%;right:15%}.back-btn{border:1px solid var(--border);color:#555;letter-spacing:2px;cursor:pointer;white-space:nowrap;background:0 0;border-radius:8px;flex-shrink:0;padding:6px 14px;font-family:Space Mono,monospace;font-size:10px;text-decoration:none;transition:all .15s}.header-center{text-align:center;flex:1}.header-center h1{letter-spacing:6px;font-family:Bebas Neue,cursive;font-size:36px;line-height:1}.header-center .tagline{color:#444;letter-spacing:3px;text-transform:uppercase;margin-top:2px;font-size:9px}.header-right{flex-shrink:0;align-items:center;gap:12px;display:flex}.player-pill{border:1px solid var(--border);letter-spacing:1px;white-space:nowrap;background:#0d0d14;border-radius:20px;padding:6px 14px;font-size:11px}.profile-link-pill{cursor:pointer;align-items:center;gap:8px;font-family:Space Mono,monospace;display:flex}.profile-link-pill:hover{border-color:currentColor}.mini-avatar{color:#050509;letter-spacing:0;background-position:50%;background-size:cover;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-family:Bebas Neue,cursive;font-size:16px;display:inline-flex}.tokens-box{text-align:right}.tokens-box-label{color:#555;letter-spacing:3px;text-transform:uppercase;margin-bottom:2px;font-size:9px}.tokens-value{color:var(--gold);letter-spacing:2px;font-family:Bebas Neue,cursive;font-size:36px;line-height:1}.tokens-value.bump{animation:.35s bump}@keyframes bump{50%{color:var(--green);text-shadow:0 0 18px #00ff878c}}.tokens-delta{letter-spacing:2px;pointer-events:none;white-space:nowrap;font-family:Bebas Neue,cursive;font-size:18px;animation:1.4s forwards deltaFloat;position:absolute;bottom:calc(100% + 2px);right:0}.tokens-delta.delta-pos{color:#22c55e}.tokens-delta.delta-neg{color:#ef4444}@keyframes deltaFloat{0%{opacity:1;transform:translateY(0)}25%{opacity:1;transform:translateY(-8px)}to{opacity:0;transform:translateY(-20px)}}.controls-bar{background:var(--panel);border:1px solid var(--border);border-radius:14px;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 20px;display:flex}.bet-label{color:#555;letter-spacing:3px;text-transform:uppercase;white-space:nowrap;font-size:10px}.bet-btn{border:1px solid var(--border);color:var(--text);cursor:pointer;background:#0d0d14;border-radius:6px;padding:5px 11px;font-family:Space Mono,monospace;font-size:12px;transition:all .12s}.bet-btn:hover{border-color:var(--gold);color:var(--gold)}.bet-btn.active{border-color:var(--gold);color:var(--gold);background:#ffd70014}.bet-custom{border:1px solid var(--border);color:var(--text);background:#0d0d14;border-radius:6px;outline:none;width:68px;padding:5px 10px;font-family:Space Mono,monospace;font-size:12px;transition:border-color .2s}.bet-custom:focus{border-color:var(--gold)}.bet-custom::placeholder{color:#444;font-size:10px}.cur-bet{color:#555;letter-spacing:2px;flex-shrink:0;margin-left:auto;font-size:10px}.cur-bet span{color:var(--gold);font-size:13px}.action-bar{flex-wrap:wrap;gap:10px;display:flex}.btn-primary{letter-spacing:5px;background:linear-gradient(135deg, var(--gold2), var(--gold));color:#0a0a0f;cursor:pointer;border:none;border-radius:12px;flex:1;padding:16px;font-family:Bebas Neue,cursive;font-size:26px;transition:all .18s;position:relative;overflow:hidden}.btn-primary:before{content:"";background:linear-gradient(135deg,#0000,#fff3,#0000);transition:transform .4s;position:absolute;inset:0;transform:translate(-100%)}.btn-primary:hover:before{transform:translate(100%)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px #ffa5004d}.btn-primary:disabled{color:#444;cursor:not-allowed;box-shadow:none;background:#1e1e2a;transform:none}.btn-green{letter-spacing:5px;background:linear-gradient(135deg, #007a47, var(--green));color:#0a0a0f;cursor:pointer;border:none;border-radius:12px;flex:1;padding:16px;font-family:Bebas Neue,cursive;font-size:26px;transition:all .18s;position:relative;overflow:hidden}.btn-green:before{content:"";background:linear-gradient(135deg,#0000,#fff3,#0000);transition:transform .4s;position:absolute;inset:0;transform:translate(-100%)}.btn-green:hover:before{transform:translate(100%)}.btn-green:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00ff874d}.btn-green:disabled{color:#444;cursor:not-allowed;background:#1e1e2a;transform:none}.no-tokens-msg{text-align:center;width:100%;color:var(--red);letter-spacing:1px;background:#ff2d550d;border:1px solid #ff2d5526;border-radius:10px;padding:14px;font-size:12px}.rules-strip{background:var(--panel);border:1px solid var(--border);border-radius:12px;flex-wrap:wrap;justify-content:center;gap:20px;padding:12px 20px;display:flex}.rule{color:#444;letter-spacing:1px;text-align:center;font-size:10px}.rule span{margin-bottom:2px;font-size:13px;font-weight:700;display:block}.c-gold{color:var(--gold)!important}.c-green{color:var(--green)!important}.c-blue{color:var(--blue)!important}.cards-row{flex-wrap:wrap;align-items:flex-start;gap:8px;min-height:110px;display:flex}.card{background:#f4f0e8;border-radius:8px;flex-direction:column;flex-shrink:0;width:70px;height:100px;padding:5px 6px;animation:.2s both cardIn;display:flex;position:relative;box-shadow:0 4px 12px #00000080,inset 0 1px #fffc}@keyframes cardIn{0%{opacity:0;transform:translateY(-12px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}.card.red{color:#cc2020}.card.black{color:#1a1a2e}.card-rank-top{font-size:15px;font-weight:700;line-height:1}.card-suit-top{margin-top:1px;font-size:12px;line-height:1}.card-suit-center{font-size:30px;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.card-rank-bot{font-size:15px;font-weight:700;line-height:1;position:absolute;bottom:5px;right:6px;transform:rotate(180deg)}.card-suit-bot{font-size:12px;line-height:1;position:absolute;bottom:20px;right:7px;transform:rotate(180deg)}.card.face-down{background:repeating-linear-gradient(135deg,#1a237e 0 4px,#283593 4px 8px);border:1px solid #3949ab}.result-bar{text-align:center;letter-spacing:4px;justify-content:center;align-items:center;min-height:44px;font-family:Bebas Neue,cursive;font-size:28px;transition:all .3s;display:flex}.result-bar.win{color:var(--green);text-shadow:0 0 20px #00ff8766}.result-bar.blackjack{color:var(--gold);text-shadow:0 0 20px #ffd70080;animation:1s infinite alternate bjPulse}.result-bar.loss{color:var(--red);text-shadow:0 0 10px #ff2d554d}.result-bar.push{color:var(--blue)}@keyframes bjPulse{0%{opacity:.8}to{opacity:1;transform:scale(1.03)}}.bj-table{background:#0d1f12;border:1px solid #1a3020;border-radius:20px;flex-direction:column;gap:0;padding:28px 24px;display:flex;position:relative;box-shadow:inset 0 0 60px #00000080,0 4px 24px #0006}.bj-table:before{content:"";pointer-events:none;border:1px solid #ffffff0a;border-radius:14px;position:absolute;inset:8px}.bj-side{flex-direction:column;gap:12px;padding:16px 0;display:flex}.dealer-side{border-bottom:1px solid #ffffff0f;padding-bottom:20px}.player-side{padding-top:20px}.side-label{letter-spacing:4px;color:#ffffff40;align-items:center;gap:10px;font-family:Bebas Neue,cursive;font-size:13px;display:flex}.side-total{color:#ffffff80;letter-spacing:1px;background:#ffffff12;border-radius:10px;padding:2px 10px;font-size:15px}.side-total.bust{color:var(--red);background:#ff2d551a}.side-total.bj{color:var(--gold);background:#ffd7001a}.side-total.good{color:var(--green);background:#00ff8714}.action-btn{letter-spacing:3px;cursor:pointer;border:none;border-radius:12px;flex:1;min-width:80px;padding:16px;font-family:Bebas Neue,cursive;font-size:22px;transition:all .15s}.action-btn:disabled{opacity:.25;cursor:not-allowed}.btn-hit{color:var(--green);background:#00ff871a;border:1px solid #00ff874d}.btn-hit:not(:disabled):hover{background:#00ff8733;transform:translateY(-2px)}.btn-stand{color:var(--red);background:#ff2d551a;border:1px solid #ff2d554d}.btn-stand:not(:disabled):hover{background:#ff2d5533;transform:translateY(-2px)}.btn-double{color:var(--blue);background:#0af5f514;border:1px solid #0af5f540}.btn-double:not(:disabled):hover{background:#0af5f529;transform:translateY(-2px)}.baccarat-table{background:#0d1f12;border:1px solid #1a3020;border-radius:20px;padding:24px;position:relative}.baccarat-table:before{content:"";pointer-events:none;border:1px solid #ffffff0a;border-radius:14px;position:absolute;inset:8px}.bacc-hands{grid-template-columns:1fr 1fr;gap:16px;display:grid}.bacc-side{flex-direction:column;gap:10px;display:flex}.bacc-label{letter-spacing:4px;color:#ffffff40;align-items:center;gap:10px;font-family:Bebas Neue,cursive;font-size:13px;display:flex}.side-score{color:#ffffff80;letter-spacing:1px;background:#ffffff12;border-radius:10px;padding:2px 10px;font-size:15px}.side-score.natural{color:var(--gold);background:#ffd7001a}.bet-type-row{gap:8px;display:flex}.bet-type-btn{letter-spacing:3px;border:1px solid var(--border);color:#555;cursor:pointer;background:#0d0d14;border-radius:10px;flex:1;padding:12px;font-family:Bebas Neue,cursive;font-size:18px;transition:all .15s}.bet-type-btn.player.selected{color:var(--green);background:#00ff871a;border-color:#00ff8766}.bet-type-btn.banker.selected{color:var(--red);background:#ff2d551a;border-color:#ff2d5566}.bet-type-btn.tie.selected{color:var(--blue);background:#0af5f51a;border-color:#0af5f566}.bet-type-btn:hover{color:var(--text);border-color:#555}.result-bar.player-win{color:var(--green);text-shadow:0 0 20px #00ff8766}.result-bar.banker-win{color:var(--red);text-shadow:0 0 20px #ff2d5566}.result-bar.tie-result{color:var(--blue);text-shadow:0 0 20px #0af5f566}.slot-controls{align-items:center;gap:10px;display:flex}.machines-grid{gap:12px;display:grid}.machines-grid.cols-1{grid-template-columns:1fr}.machines-grid.cols-2{grid-template-columns:1fr 1fr}.machines-grid.cols-3{grid-template-columns:1fr 1fr 1fr}.slot-card{background:var(--panel);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:10px;padding:20px;display:flex}.slot-header{justify-content:space-between;align-items:center;display:flex}.slot-title{color:#555;letter-spacing:3px;text-transform:uppercase;font-size:10px}.remove-slot-btn{color:#444;cursor:pointer;background:0 0;border:none;font-size:18px;transition:color .15s}.remove-slot-btn:hover{color:var(--red)}.slot-reels{justify-content:center;gap:8px;display:flex}.slot-symbol{border:1px solid var(--border);background:#080810;border-radius:12px;justify-content:center;align-items:center;width:72px;height:72px;font-size:34px;transition:all .15s;display:flex}.slot-symbol.winner{border-color:var(--gold);animation:.3s winnerPop;box-shadow:0 0 16px #ffd7004d}@keyframes winnerPop{50%{transform:scale(1.15)}}.slot-card.shake{animation:.4s shake}@keyframes shake{10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}.slot-msg{letter-spacing:2px;text-align:center;min-height:16px;font-size:11px}.slot-msg.win{color:var(--green)}.slot-msg.lose{color:var(--red)}.slot-msg.neutral{color:#555}.slot-spin-btn{letter-spacing:3px;width:100%;color:var(--gold);cursor:pointer;background:#ffd70014;border:1px solid #ffd7004d;border-radius:8px;padding:10px;font-family:Bebas Neue,cursive;font-size:18px;transition:all .15s}.slot-spin-btn:hover:not(:disabled){background:#ffd70026}.slot-spin-btn:disabled{opacity:.3;cursor:not-allowed}.paytable-toggle-btn{border:1px solid var(--border);color:#555;letter-spacing:2px;cursor:pointer;background:0 0;border-radius:8px;padding:6px 14px;font-family:Space Mono,monospace;font-size:10px;transition:all .15s}.paytable-toggle-btn:hover{color:var(--gold);border-color:var(--gold)}.paytable-content{display:none}.paytable-content.open{background:var(--panel);border:1px solid var(--border);border-radius:12px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;padding:16px;display:grid}.paytable-row{align-items:center;gap:8px;font-size:11px;display:flex}.paytable-sym{font-size:22px}.paytable-val{color:var(--gold)}.add-machine-btn{letter-spacing:2px;text-transform:uppercase;border:1px solid var(--border);color:#555;cursor:pointer;background:0 0;border-radius:8px;padding:8px 16px;font-family:Space Mono,monospace;font-size:11px;transition:all .15s}.add-machine-btn:hover:not(:disabled){border-color:var(--gold);color:var(--gold)}.add-machine-btn:disabled{opacity:.3;cursor:not-allowed}.machine-count-label{color:#555;letter-spacing:3px;text-transform:uppercase;font-size:10px}.message-bar{letter-spacing:3px;text-align:center;min-height:36px;font-family:Bebas Neue,cursive;font-size:22px}.message-bar.win{color:var(--green)}.message-bar.lose{color:var(--red)}.message-bar.neutral{color:#555}.confetti-piece{pointer-events:none;width:8px;height:8px;animation:confettiFall var(--dur,1.5s) ease-out forwards;z-index:9999;position:fixed}@keyframes confettiFall{to{opacity:0;transform:translateY(300px)rotate(720deg)}}.roulette-layout{flex-direction:column;gap:12px;display:flex}.wheel-area{flex-wrap:wrap;justify-content:center;align-items:center;gap:20px;display:flex}.wheel-wrap{flex-direction:column;align-items:center;gap:10px;display:flex;position:relative}#wheelCanvas{border-radius:50%;display:block}.win-num-area{letter-spacing:3px;color:#555;text-align:center;font-family:Bebas Neue,cursive;font-size:22px}.win-num-display{letter-spacing:2px;font-size:32px}.win-num-display.red-num{color:var(--red)}.win-num-display.black-num{color:var(--text)}.win-num-display.green-num{color:var(--green)}.bet-table-wrap{overflow-x:auto}.bet-table{grid-template-rows:repeat(6,36px);grid-template-columns:repeat(13,1fr);gap:2px;min-width:400px;display:grid}.bet-cell{cursor:pointer;-webkit-user-select:none;user-select:none;background:#0d0d14;border:1px solid #222;border-radius:4px;justify-content:center;align-items:center;font-size:11px;transition:all .1s;display:flex;position:relative}.bet-cell:hover{background:#1a1a28;border-color:#555}.bet-cell.winner{box-shadow:0 0 8px #ffd70066;border-color:var(--gold)!important;background:#ffd7001a!important}.num-cell{font-size:12px;font-weight:700}.num-cell.red-num{color:#f88;background:#8b151599}.num-cell.red-num:hover{background:#8b1515d9}.num-cell.black-num{color:#aaa;background:#0a0a18}.num-cell.black-num:hover{background:#111125}.num-cell.green-num{color:#6f8;background:#1a5c1a99}.num-cell.green-num:hover{background:#1a5c1ad9}.col-bet{color:var(--gold);background:#ffd7000f;font-size:10px}.dozen-cell{color:#888;text-align:center;background:#ffffff0a;font-size:10px}.even-cell{color:#888;background:#ffffff0a;font-size:11px}.red-cell{color:#f66;background:#8b151566;font-size:16px}.black-cell{color:#888;background:#0a0a18;font-size:16px}.chip-stack{background:var(--gold);color:#0a0a0f;z-index:2;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:8px;font-weight:700;display:flex;position:absolute;top:-8px;right:-8px}.chip-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.chip-btn{border:1px solid var(--border);color:var(--text);cursor:pointer;background:#0d0d14;border-radius:6px;padding:6px 14px;font-family:Space Mono,monospace;font-size:11px;transition:all .12s}.chip-btn:hover{border-color:var(--red);color:var(--red)}.chip-btn.active{border-color:var(--red);color:var(--red);background:#ff2d5514}.roulette-spin-btn{letter-spacing:4px;background:linear-gradient(135deg,#8b0000,var(--red));color:#fff;cursor:pointer;border:none;border-radius:10px;flex:1;padding:14px;font-family:Bebas Neue,cursive;font-size:24px;transition:all .18s}.roulette-spin-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #ff2d554d}.roulette-spin-btn:disabled{color:#444;cursor:not-allowed;background:#1e1e2a}.roulette-clear-btn{letter-spacing:3px;border:1px solid var(--border);color:#555;cursor:pointer;background:0 0;border-radius:10px;padding:14px 20px;font-family:Bebas Neue,cursive;font-size:22px;transition:all .15s}.roulette-clear-btn:hover:not(:disabled){border-color:var(--red);color:var(--red)}.total-bet-display{color:#555;letter-spacing:2px;text-transform:uppercase;font-size:10px}.total-bet-display span{color:var(--gold);font-size:13px}.track-section{border:1px solid var(--border);background:#060610;border-radius:16px;flex-direction:column;gap:6px;padding:16px;display:flex}.lane{grid-template-columns:140px 1fr 50px;align-items:center;gap:8px;display:grid}.lane.winner-lane .lane-label{color:var(--gold)}.lane-label{align-items:center;gap:8px;display:flex}.lane-num{letter-spacing:2px;font-family:Bebas Neue,cursive;font-size:20px}.lane-name{letter-spacing:1px;color:#777;font-size:10px;transition:color .3s}.lane-name.selected-horse{color:var(--gold)}.track-strip{background:#0d0d1a;border:1px solid #1a1a2a;border-radius:6px;height:28px;position:relative;overflow:hidden}.horse-runner{font-size:18px;transition:left 80ms linear;position:absolute;top:50%;transform:translateY(-50%)}.lane-pos{letter-spacing:2px;text-align:right;color:#555;font-size:9px}.lane-pos.p1{color:var(--gold)}.lane-pos.p2{color:#aaa}.lane-pos.p3{color:#8b6914}.horse-cards-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.horse-card{background:var(--panel);border:1px solid var(--border);cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:14px 12px;transition:all .15s;display:flex}.horse-card:hover{transform:translateY(-2px)}.horse-card.selected{border-color:currentColor}.horse-card.card-winner{animation:.5s 2 winnerFlash}@keyframes winnerFlash{50%{background:#ffd7001a}}.horse-badge{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-family:Bebas Neue,cursive;font-size:16px;display:flex}.horse-name{letter-spacing:1px;font-size:11px}.horse-payout{color:#555;letter-spacing:2px;margin-top:2px;font-size:9px}.chip-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chip-selector{border:1px solid var(--border);color:var(--text);cursor:pointer;background:#0d0d14;border-radius:6px;padding:5px 12px;font-family:Space Mono,monospace;font-size:11px;transition:all .12s}.chip-selector:hover{border-color:var(--green);color:var(--green)}.chip-selector.active{border-color:var(--green);color:var(--green);background:#00ff8714}.custom-chip-input{border:1px solid var(--border);width:70px;color:var(--text);background:#0d0d14;border-radius:6px;outline:none;padding:5px 8px;font-family:Space Mono,monospace;font-size:11px}.custom-chip-input:focus{border-color:var(--green)}.status-bar{letter-spacing:4px;text-align:center;min-height:36px;font-family:Bebas Neue,cursive;font-size:24px}.status-bar.win{color:var(--green);text-shadow:0 0 16px #00ff8780}.status-bar.loss{color:var(--red)}.status-bar.racing{color:var(--text)}.status-bar.countdown{color:var(--gold)}.race-btn{letter-spacing:5px;background:linear-gradient(135deg, #006b25, var(--green));color:#0a0a0f;cursor:pointer;border:none;border-radius:12px;flex:1;padding:16px;font-family:Bebas Neue,cursive;font-size:26px;transition:all .18s}.race-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #00ff874d}.race-btn:disabled{color:#444;cursor:not-allowed;background:#1e1e2a}.horse-c0{color:gold}.horse-bg-0{background:gold}.horse-c1{color:#00ff87}.horse-bg-1{background:#00ff87}.horse-c2{color:#0af5f5}.horse-bg-2{background:#0af5f5}.horse-c3{color:#f45}.horse-bg-3{background:#f45}.horse-c4{color:#b8f}.horse-bg-4{background:#b8f}.horse-c5{color:#ccc}.horse-bg-5{background:#ccc}.mines-grid{background:var(--panel);border:1px solid var(--border);border-radius:16px;grid-template-columns:repeat(5,1fr);gap:6px;padding:16px;display:grid}.mine-cell{aspect-ratio:1;cursor:pointer;background:#0d0d1a;border:1px solid #1e1e2e;border-radius:10px;justify-content:center;align-items:center;font-size:28px;transition:all .15s;display:flex}.mines-grid.playing .mine-cell:not(.safe):not(.mine):hover{background:#161626;border-color:#ff9500;transform:scale(1.03)}.mine-cell.safe{background:#00ff8714;border-color:#00ff8766;animation:.2s safeReveal}@keyframes safeReveal{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.mine-cell.mine{background:#ff2d551a;border-color:#ff2d5566}.mine-cell.mine.clicked{border-color:var(--red);background:#ff2d5533;box-shadow:0 0 16px #ff2d5580}.mines-game-status{background:var(--panel);border:1px solid var(--border);border-radius:12px;gap:16px;padding:12px 20px;display:flex}.stat-item{text-align:center}.stat-label{color:#555;letter-spacing:3px;text-transform:uppercase;margin-bottom:4px;font-size:9px}.stat-value{color:var(--gold);letter-spacing:2px;font-family:Bebas Neue,cursive;font-size:28px;line-height:1}.stat-value.green{color:var(--green)}.mine-count-bar{align-items:center;gap:8px;display:flex}.mc-btn{border:1px solid var(--border);color:var(--text);cursor:pointer;background:#0d0d14;border-radius:6px;padding:5px 12px;font-family:Space Mono,monospace;font-size:11px;transition:all .12s}.mc-btn:hover{color:#ff9500;border-color:#ff9500}.mc-btn.active{color:#ff9500;background:#ff950014;border-color:#ff9500}.result-banner{text-align:center;letter-spacing:4px;border-radius:12px;justify-content:center;align-items:center;min-height:48px;font-family:Bebas Neue,cursive;font-size:32px;transition:all .3s;display:flex}.result-banner.banner-win{color:var(--green);text-shadow:0 0 20px #00ff8766;background:#00ff870f}.result-banner.banner-lose{color:var(--red);text-shadow:0 0 20px #ff2d5566;background:#ff2d550f}.crash-display{border:1px solid var(--border);background:#06060d;border-radius:20px;height:220px;position:relative;overflow:hidden}#crashCanvas{width:100%;height:100%;display:block}.mult-overlay{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex;position:absolute;inset:0}.mult-value{letter-spacing:4px;font-family:Bebas Neue,cursive;font-size:72px;line-height:1;transition:color .2s,text-shadow .2s}.mult-value.idle{color:#333}.mult-value.safe{color:#00d4ff;text-shadow:0 0 30px #00d4ff66}.mult-value.warning{color:#ff9500;text-shadow:0 0 30px #ff950066}.mult-value.danger{color:#ff4500;text-shadow:0 0 30px #ff450080}.mult-value.crashed{color:#ff4500;text-shadow:0 0 40px #ff4500b3;animation:.45s crashFlash}@keyframes crashFlash{0%{transform:scale(1.35)}30%{transform:scale(.9)}65%{transform:scale(1.08)}to{transform:scale(1)}}.mult-sub{letter-spacing:3px;color:#555;text-transform:uppercase;font-size:10px}.crash-result-pill{letter-spacing:3px;white-space:nowrap;pointer-events:none;border-radius:10px;padding:8px 20px;font-family:Bebas Neue,cursive;font-size:22px;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.crash-result-pill.win{color:var(--green);background:#00ff8714;border:1px solid #00ff8740}.crash-result-pill.lose{color:#ff4500;background:#ff450014;border:1px solid #ff450040}.auto-cashout-bar{background:var(--panel);border:1px solid var(--border);border-radius:14px;align-items:center;gap:10px;padding:10px 20px;display:flex}.ac-label{color:#555;letter-spacing:3px;text-transform:uppercase;white-space:nowrap;font-size:10px}.ac-input{border:1px solid var(--border);color:var(--text);background:#0d0d14;border-radius:6px;outline:none;width:90px;padding:5px 10px;font-family:Space Mono,monospace;font-size:13px;transition:border-color .2s}.ac-input:focus{border-color:#00d4ff}.ac-suffix{color:#555;font-size:13px}.phase-badge{background:var(--panel);border:1px solid var(--border);letter-spacing:3px;text-transform:uppercase;text-align:center;border-radius:8px;padding:6px 14px;font-size:10px}.plinko-canvas-wrap{border:1px solid var(--border);background:#06060d;border-radius:20px;height:380px;position:relative;overflow:hidden}#plinkoCanvas{width:100%;height:100%;display:block}.result-overlay{letter-spacing:4px;white-space:nowrap;pointer-events:none;opacity:0;border-radius:12px;padding:12px 28px;font-family:Bebas Neue,cursive;font-size:32px;transition:opacity .3s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.result-overlay.visible{opacity:1}.result-overlay.win{color:var(--green);background:#00ff871a;border:1px solid #00ff874d}.result-overlay.lose{color:var(--red);background:#ff2d551a;border:1px solid #ff2d554d}.risk-row{align-items:center;gap:8px;display:flex}.risk-btn{text-transform:uppercase;border:1px solid var(--border);color:var(--text);cursor:pointer;background:#0d0d14;border-radius:6px;padding:5px 14px;font-family:Space Mono,monospace;font-size:11px;transition:all .12s}.risk-btn:hover{color:#ff2d8b;border-color:#ff2d8b}.risk-btn.active{color:#ff2d8b;background:#ff2d8b14;border-color:#ff2d8b}.loading-screen{background:var(--dark);z-index:200;letter-spacing:6px;color:#444;justify-content:center;align-items:center;font-family:Bebas Neue,cursive;font-size:28px;display:flex;position:fixed;inset:0}.profile-page{z-index:1;justify-content:center;min-height:100vh;padding:32px 16px 60px;display:flex;position:relative}.profile-shell{flex-direction:column;gap:18px;width:min(860px,100%);display:flex}.profile-topbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.profile-panel{background:var(--panel);border:1px solid var(--border);border-radius:18px;grid-template-columns:260px 1fr;gap:32px;padding:30px;display:grid;position:relative;overflow:hidden}.profile-panel:before{content:"";background:linear-gradient(90deg, transparent, var(--gold), var(--blue), transparent);height:2px;position:absolute;top:0;left:14%;right:14%}.profile-avatar-wrap{flex-direction:column;justify-content:center;align-items:center;gap:18px;min-width:0;display:flex}.profile-avatar{color:#050509;letter-spacing:0;background-position:50%;background-size:cover;border:2px solid #ffd70059;border-radius:50%;justify-content:center;align-items:center;width:180px;height:180px;font-family:Bebas Neue,cursive;font-size:92px;display:flex;box-shadow:0 0 40px #ffd70014}.profile-file-input{display:none}.profile-upload-btn,.profile-primary-btn,.profile-secondary-btn{letter-spacing:2px;text-transform:uppercase;cursor:pointer;border-radius:8px;padding:10px 16px;font-family:Space Mono,monospace;font-size:11px;transition:transform .15s,border-color .15s,color .15s,background .15s}.profile-upload-btn,.profile-secondary-btn{color:#777;border:1px solid var(--border);background:#0d0d14}.profile-upload-btn:hover,.profile-secondary-btn:hover{color:var(--gold);border-color:var(--gold);transform:translateY(-1px)}.profile-primary-btn{background:linear-gradient(135deg,var(--gold2),var(--gold));color:#050509;border:none;font-weight:700}.profile-primary-btn:hover{transform:translateY(-1px)}.profile-details{flex-direction:column;gap:16px;min-width:0;display:flex}.profile-kicker,.profile-section-label{color:#555;letter-spacing:4px;text-transform:uppercase;font-size:10px}.profile-details h1{letter-spacing:6px;color:var(--gold);overflow-wrap:anywhere;font-family:Bebas Neue,cursive;font-size:58px;line-height:1}.profile-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.profile-stat{border:1px solid var(--border);background:#0d0d14;border-radius:10px;padding:14px 16px}.profile-stat span{color:#555;letter-spacing:3px;text-transform:uppercase;margin-bottom:5px;font-size:9px;display:block}.profile-stat strong{color:var(--text);letter-spacing:2px;font-family:Bebas Neue,cursive;font-size:34px;line-height:1}.avatar-presets{flex-wrap:wrap;gap:10px;display:flex}.avatar-preset{cursor:pointer;border:2px solid #0000;border-radius:50%;width:44px;height:44px;transition:transform .15s,border-color .15s}.avatar-preset:hover,.avatar-preset.active{border-color:var(--gold);transform:translateY(-1px)}.profile-actions{flex-wrap:wrap;gap:10px;margin-top:2px;display:flex}.profile-message{color:var(--green);letter-spacing:1px;min-height:16px;font-size:11px}.admin-login-wrap{background:var(--dark);justify-content:center;align-items:center;min-height:100vh;display:flex}.admin-login-card{background:var(--panel);border:2px solid var(--border);text-align:center;border-radius:24px;width:min(400px,90vw);padding:44px 36px;position:relative;box-shadow:0 0 60px #ffd70012}.admin-login-card:before{content:"";background:linear-gradient(90deg,#0000,#ff4500,#0000);height:2px;position:absolute;top:-1px;left:20%;right:20%}.admin-login-badge{color:#ff4500;letter-spacing:4px;text-transform:uppercase;margin-bottom:12px;font-size:11px}.admin-login-title{letter-spacing:6px;background:linear-gradient(135deg, var(--gold), var(--gold2));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-family:Bebas Neue,cursive;font-size:54px;line-height:1}.admin-login-sub{color:#555;letter-spacing:4px;text-transform:uppercase;margin-bottom:30px;font-size:9px}.admin-wrap{background:var(--dark);height:100vh;color:var(--text);flex-direction:column;font-family:Space Mono,monospace;display:flex;overflow:hidden}.admin-header{background:var(--panel);border-bottom:1px solid var(--border);z-index:10;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:20px;padding:16px 28px;display:flex}.admin-header-left{flex:1;align-items:center;gap:14px;min-width:200px;display:flex}.admin-badge-pill{color:#ff4500;letter-spacing:3px;text-transform:uppercase;white-space:nowrap;background:#ff45001a;border:1px solid #ff45004d;border-radius:20px;padding:5px 12px;font-size:10px}.admin-title{letter-spacing:5px;background:linear-gradient(135deg, var(--gold), var(--gold2));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-family:Bebas Neue,cursive;font-size:32px;line-height:1}.admin-header-stats{align-items:center;gap:0;display:flex}.admin-stat{text-align:center;padding:0 20px}.admin-stat-value{color:var(--gold);letter-spacing:2px;font-family:Bebas Neue,cursive;font-size:28px;line-height:1}.admin-stat-label{color:#555;letter-spacing:3px;text-transform:uppercase;margin-top:2px;font-size:9px}.admin-stat-divider{background:var(--border);width:1px;height:36px}.admin-toolbar{border-bottom:1px solid var(--border);background:#0d0d14;flex-wrap:wrap;align-items:center;gap:16px;padding:10px 28px;display:flex}.admin-toolbar-bottom{border-top:1px solid var(--border);border-bottom:none;margin-top:auto}.admin-search-wrap{flex:1;align-items:center;min-width:200px;max-width:400px;display:flex;position:relative}.admin-search-icon{pointer-events:none;font-size:14px;position:absolute;left:12px}.admin-search{background:var(--panel);border:1px solid var(--border);width:100%;color:var(--text);border-radius:8px;outline:none;padding:8px 36px 8px 34px;font-family:Space Mono,monospace;font-size:12px;transition:border-color .2s}.admin-search:focus{border-color:var(--gold)}.admin-search::placeholder{color:#444}.admin-search-clear{color:#555;cursor:pointer;background:0 0;border:none;font-size:16px;line-height:1;position:absolute;right:10px}.admin-search-clear:hover{color:var(--red)}.admin-pagination{flex-wrap:wrap;align-items:center;gap:6px;margin-left:auto;display:flex}.admin-page-btn{background:var(--panel);border:1px solid var(--border);color:#777;letter-spacing:1px;cursor:pointer;white-space:nowrap;border-radius:6px;padding:5px 12px;font-family:Space Mono,monospace;font-size:10px;transition:all .12s}.admin-page-btn:hover:not(:disabled){border-color:var(--gold);color:var(--gold)}.admin-page-btn:disabled{opacity:.3;cursor:not-allowed}.admin-page-info{color:#555;letter-spacing:1px;white-space:nowrap;font-size:11px}.admin-page-num{background:var(--panel);border:1px solid var(--border);color:#777;cursor:pointer;border-radius:6px;width:30px;height:30px;font-family:Space Mono,monospace;font-size:10px;transition:all .12s}.admin-page-num:hover{border-color:var(--gold);color:var(--gold)}.admin-page-num.active{border-color:var(--gold);color:var(--gold);background:#ffd70014}.admin-ellipsis{color:#444;padding:0 4px;font-size:12px}.admin-result-count{color:#555;letter-spacing:2px;font-size:10px}.admin-table-wrap{flex:1;position:relative;overflow:auto}.admin-loading{color:#555;letter-spacing:3px;font-size:10px;position:absolute;top:12px;left:50%;transform:translate(-50%)}.admin-table{border-collapse:collapse;width:100%}.admin-table thead{z-index:5;background:#0a0a12;position:sticky;top:0}.admin-table th{text-align:left;color:#555;letter-spacing:3px;text-transform:uppercase;border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 16px;font-size:9px}.th-tokens{text-align:right}.th-quick,.th-custom{text-align:left}.admin-row{border-bottom:1px solid #111;transition:background .1s}.admin-row:hover{background:#ffffff05}.admin-row td{vertical-align:middle;padding:10px 16px}.td-name{min-width:160px}.player-name-text{letter-spacing:1px;align-items:center;gap:6px;font-size:13px;display:flex}.online-dot{background:var(--green);width:7px;height:7px;box-shadow:0 0 5px var(--green);border-radius:50%;flex-shrink:0;display:inline-block}.player-joined{color:#444;letter-spacing:1px;margin-top:2px;font-size:9px;display:block}.td-tokens{text-align:right;white-space:nowrap}.token-badge{color:var(--gold);letter-spacing:2px;font-family:Bebas Neue,cursive;font-size:22px}.td-quick,.td-custom{white-space:nowrap}.quick-row{flex-wrap:wrap;gap:4px;display:flex}.custom-row{align-items:center;gap:4px;display:flex}.q-btn{letter-spacing:1px;cursor:pointer;border:1px solid;border-radius:5px;padding:4px 10px;font-family:Space Mono,monospace;font-size:10px;transition:all .1s}.q-add{color:var(--green);background:#00ff870f;border-color:#00ff8740}.q-add:hover{background:#00ff8724}.q-sub{color:var(--red);background:#ff2d550f;border-color:#ff2d5540}.q-sub:hover{background:#ff2d5524}.q-set{color:var(--gold);background:#ffd7000f;border-color:#ffd70040}.q-set:hover{background:#ffd70024}.custom-input{border:1px solid var(--border);width:84px;color:var(--text);background:#0d0d14;border-radius:5px;outline:none;padding:4px 8px;font-family:Space Mono,monospace;font-size:11px}.custom-input:focus{border-color:var(--gold)}.admin-empty{text-align:center;color:#444;letter-spacing:2px;padding:40px;font-size:11px}.td-expand{text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;width:28px}.expand-arrow{color:#555;font-size:10px;transition:color .15s}.admin-row:hover .expand-arrow{color:var(--gold)}.admin-row-expanded{background:#ffd70008}.admin-detail-row td{padding:0!important}.admin-detail-cell{padding:0}.admin-detail{background:#07070f;border-top:1px solid #1a1a2a;border-bottom:1px solid #1a1a2a;grid-template-columns:260px minmax(0,1fr);align-items:start;gap:16px;padding:12px 20px;display:grid}.admin-profile-card{background:var(--panel);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:12px;padding:16px;display:flex}.admin-profile-avatar{background:linear-gradient(135deg,var(--gold),var(--blue));color:#050509;letter-spacing:0;background-position:50%;background-size:cover;border:1px solid #ffd70059;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;font-family:Bebas Neue,cursive;font-size:36px;display:flex}.admin-profile-main{min-width:0}.admin-profile-kicker{color:#555;letter-spacing:3px;text-transform:uppercase;margin-bottom:4px;font-size:9px}.admin-profile-name{color:var(--gold);letter-spacing:3px;overflow-wrap:anywhere;font-family:Bebas Neue,cursive;font-size:30px;line-height:1}.admin-profile-email{color:#555;letter-spacing:1px;overflow-wrap:anywhere;font-size:10px}.admin-profile-stats{gap:8px;display:grid}.admin-profile-stat{background:#0d0d14;border:1px solid #1a1a2a;border-radius:8px;padding:9px 10px}.admin-profile-stat span{color:#555;letter-spacing:2px;text-transform:uppercase;margin-bottom:3px;font-size:8px;display:block}.admin-profile-stat strong{color:var(--text);letter-spacing:1px;font-family:Space Mono,monospace;font-size:11px}.admin-profile-stat strong.is-online{color:var(--green)}.admin-permission-field{gap:6px;display:grid}.admin-permission-field span{color:#555;letter-spacing:2px;text-transform:uppercase;font-size:8px}.admin-permission-field select{border:1px solid var(--border);width:100%;color:var(--gold);letter-spacing:1px;cursor:pointer;background:#0d0d14;border-radius:8px;outline:none;padding:8px 10px;font-family:Space Mono,monospace;font-size:11px}.admin-permission-field select:focus{border-color:var(--gold)}.admin-activity-panel{min-width:0}.admin-detail-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.admin-detail-title{letter-spacing:3px;text-transform:uppercase;color:var(--red);font-size:10px}.admin-detail-count{color:#444;letter-spacing:2px;font-size:9px}.admin-detail-empty{color:#444;letter-spacing:2px;text-align:center;padding:12px 0;font-size:10px}.admin-event-list{flex-direction:column;gap:3px;max-height:260px;display:flex;overflow-y:auto}.admin-event-row{border:1px solid #0000;border-radius:6px;grid-template-columns:20px 60px 1fr 1fr 60px 70px;align-items:center;gap:8px;padding:5px 8px;font-size:10px;transition:background .1s;display:grid}.admin-event-row:hover{background:#ffffff08;border-color:#1a1a2a}.ev-icon{text-align:center;font-size:13px}.ev-game{letter-spacing:2px;color:#555;white-space:nowrap;font-size:9px}.ev-label{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.ev-detail{color:#555;white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.ev-net{text-align:right;white-space:nowrap;font-size:11px;font-weight:700}.ev-net.pos{color:var(--green)}.ev-net.neg{color:var(--red)}.ev-time{color:#444;text-align:right;white-space:nowrap;font-size:9px}.admin-toast{background:var(--panel);border:1px solid var(--green);color:var(--green);letter-spacing:2px;z-index:999;white-space:nowrap;border-radius:10px;padding:10px 24px;font-size:11px;animation:.2s toastIn;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #00ff8726}@keyframes toastIn{0%{opacity:0;transform:translate(-50%)translateY(8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.notif-stack{z-index:1000;flex-direction:column-reverse;gap:8px;display:flex;position:fixed;bottom:24px;right:24px}.notif-toast{letter-spacing:1px;background:var(--panel);border:1px solid var(--border);border-radius:8px;align-items:center;gap:10px;min-width:240px;max-width:380px;padding:10px 14px;font-size:11px;animation:.2s notifIn;display:flex;box-shadow:0 4px 20px #0006}@keyframes notifIn{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}.notif-msg{flex:1}.notif-close{color:#555;cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:16px;line-height:1}.notif-close:hover{color:var(--text)}.notif-info{border-color:var(--blue);color:var(--blue)}.notif-success{border-color:var(--green);color:var(--green)}.notif-warning{border-color:var(--gold);color:var(--gold)}.notif-error{border-color:var(--red);color:var(--red)}.admin-broadcast-bar{border-bottom:1px solid var(--border);background:#ffffff05;align-items:center;gap:8px;padding:8px 20px;display:flex}.broadcast-type-select{background:var(--panel);border:1px solid var(--border);color:var(--text);letter-spacing:1px;cursor:pointer;border-radius:6px;flex-shrink:0;padding:6px 8px;font-family:inherit;font-size:10px}.broadcast-input{border:1px solid var(--border);color:var(--text);letter-spacing:1px;background:0 0;border-radius:6px;outline:none;flex:1;padding:6px 12px;font-family:inherit;font-size:11px}.broadcast-input:focus{border-color:var(--gold)}.broadcast-btn{background:var(--gold);color:#000;letter-spacing:2px;cursor:pointer;border:none;border-radius:6px;flex-shrink:0;padding:6px 16px;font-family:inherit;font-size:10px;font-weight:700}.broadcast-btn:disabled{opacity:.4;cursor:default}@media (width<=520px){.game-cards{grid-template-columns:1fr 1fr}.hub-title{font-size:36px}.hub-player{gap:10px}.hub-name-pill{letter-spacing:1px;padding:6px 10px}.profile-panel{grid-template-columns:1fr;padding:24px 18px}.profile-avatar{width:140px;height:140px;font-size:72px}.profile-details h1{font-size:42px}.profile-stat-grid{grid-template-columns:1fr}.admin-detail{grid-template-columns:1fr;padding:12px}.admin-profile-card{grid-template-columns:64px minmax(0,1fr);align-items:center;display:grid}.admin-profile-stats{grid-column:1/-1}.game-icon{font-size:44px}.game-name{font-size:26px}.hub-header{padding:18px 20px}.card{width:58px;height:84px}.card-suit-center{font-size:24px}.action-btn{padding:13px;font-size:18px}.horse-cards-grid{grid-template-columns:repeat(2,1fr)}.header-center h1{font-size:28px}.player-pill{display:none}.bacc-hands{grid-template-columns:1fr}}
