:root{--bg:#071128;--panel:#101d3a;--panel2:#16264a;--text:#f7f9ff;--muted:#a8b4d3;--gold:#ffcb57;--green:#25d08a;--red:#ff5f6d;--blue:#4f8cff}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,Arial,sans-serif;background:radial-gradient(circle at top,#152c5d,#071128 50%);color:var(--text);min-height:100vh}a{color:inherit;text-decoration:none}.container{width:min(1180px,94%);margin:auto}.topbar{display:flex;align-items:center;justify-content:space-between;padding:16px 0;gap:12px}.brand{font-weight:900;font-size:22px;color:var(--gold)}.wallet{background:#0d1934;border:1px solid #2c3c65;border-radius:999px;padding:10px 16px;font-weight:800}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:12px;padding:11px 16px;font-weight:800;cursor:pointer;background:var(--blue);color:white}.btn.gold{background:var(--gold);color:#281b00}.btn.red{background:var(--red)}.btn.dark{background:#223457}.card{background:linear-gradient(180deg,rgba(23,40,77,.96),rgba(12,25,53,.96));border:1px solid #2a3e6c;border-radius:20px;box-shadow:0 18px 60px rgba(0,0,0,.28)}.login-wrap{min-height:100vh;display:grid;place-items:center}.login-card{width:min(430px,92%);padding:30px}.field{margin:14px 0}.field label{display:block;color:var(--muted);margin-bottom:7px}.input,select{width:100%;padding:13px 14px;border-radius:12px;border:1px solid #30456f;background:#0b1731;color:white;outline:none}.game-shell{padding-bottom:30px}.game-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:18px;gap:12px}.timer{text-align:center;font-size:36px;font-weight:900;color:var(--gold)}.round{text-align:right;color:var(--muted)}.numbers{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;padding:18px}.number{min-height:118px;border-radius:18px;border:2px solid #324f85;background:linear-gradient(145deg,#142b56,#0b1730);display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;position:relative;transition:.15s}.number:hover{transform:translateY(-2px);border-color:var(--gold)}.number .n{font-size:38px;font-weight:950}.number .placed{font-size:13px;color:var(--gold);margin-top:5px}.number.winner{border-color:var(--green);box-shadow:0 0 0 4px rgba(37,208,138,.14),0 0 36px rgba(37,208,138,.35)}.betbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:18px;border-top:1px solid #2a3e6c}.chip{width:58px;height:58px;border-radius:50%;border:4px dashed rgba(255,255,255,.38);background:linear-gradient(145deg,#ffd768,#d59b16);color:#332000;font-weight:950;cursor:pointer}.chip.active{outline:4px solid white;transform:scale(1.07)}.history{display:flex;gap:8px;flex-wrap:wrap}.ball{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#e8edf8;color:#0a1630;font-weight:900}.status-msg{padding:10px 18px;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.stat{padding:20px}.stat small{color:var(--muted)}.stat strong{display:block;font-size:28px;margin-top:6px}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:12px 14px;border-bottom:1px solid #283a63;text-align:left;white-space:nowrap}.table th{color:#b9c6e6;font-size:13px}.admin-nav{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 20px}.flash{padding:12px 14px;border-radius:10px;background:#153e32;border:1px solid #2a9c72;margin:12px 0}.error{background:#461e2a;border-color:#9c3853}@media(max-width:760px){.numbers{grid-template-columns:repeat(2,1fr)}.game-head{grid-template-columns:1fr 1fr}.game-head .round{grid-column:1/-1;text-align:left}.grid{grid-template-columns:1fr}.topbar{align-items:flex-start}.wallet{font-size:14px}}

.badge{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--red);color:#fff;font-size:12px;margin-left:4px}.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin:20px 0}.plan-card{padding:22px}.plan-title{font-size:20px;font-weight:900}.plan-coins{font-size:30px;font-weight:950;color:var(--gold);margin:12px 0}.plan-card p{color:var(--muted);min-height:42px}

.trend{font-weight:900;display:inline-flex;align-items:center;gap:5px}.trend.up{color:var(--green)}.trend.down{color:var(--red)}.pagination{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.winner-ticker{overflow:hidden;border:1px solid #2a3e6c;background:#0d1934;border-radius:12px;margin:4px 0 14px}.ticker-track{display:flex;width:max-content;gap:36px;padding:10px 0;animation:tickerScroll 22s linear infinite}.ticker-item{white-space:nowrap;color:#dce5ff}.ticker-item b{color:var(--green);margin-right:6px}@keyframes tickerScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){.ticker-track{animation:none;flex-wrap:wrap;width:auto;padding:10px 12px}}
.chat-admin-grid{display:grid;grid-template-columns:300px 1fr;gap:16px;margin-top:18px}.chat-list{padding:12px;max-height:720px;overflow:auto}.chat-user{display:flex;justify-content:space-between;gap:10px;padding:12px;border-bottom:1px solid #26324d;color:#fff;text-decoration:none}.chat-user small{display:block;color:#9cabca;margin-top:4px}.chat-shell{padding:0;overflow:hidden;margin-top:18px}.chat-header{padding:16px 18px;border-bottom:1px solid #26324d;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.chat-header span{color:#9cabca}.chat-messages{min-height:360px;max-height:560px;overflow:auto;padding:18px;background:#0a1020}.chat-row{display:flex;margin:8px 0}.chat-row.mine{justify-content:flex-end}.chat-bubble{max-width:76%;padding:11px 13px;border-radius:14px;background:#18233a;color:#fff}.chat-row.mine .chat-bubble{background:#234b32}.chat-bubble small{display:block;color:#9cabca;margin-top:6px}.chat-bubble a{color:#ffd36a}.chat-form{display:grid;grid-template-columns:1fr 230px auto;gap:10px;padding:14px;border-top:1px solid #26324d}.chat-form textarea{min-height:48px;resize:vertical}.chat-form textarea,.chat-form input[type=file]{background:#0f1728;color:#fff;border:1px solid #33415f;border-radius:8px;padding:10px}@media(max-width:760px){.chat-admin-grid{grid-template-columns:1fr}.chat-form{grid-template-columns:1fr}.chat-messages{min-height:300px}.chat-bubble{max-width:88%}}


/* ===== FUN card-table game UI ===== */
.card-game-body{background:radial-gradient(circle at 50% 0,#16346a 0,#071128 44%,#030817 100%)}
.game-table-card{overflow:hidden;background:#08142d;border-color:#294a83}
.casino-table{position:relative;padding-bottom:22px;background:radial-gradient(ellipse at center,#126442 0,#0b4a35 46%,#063124 100%);border-bottom:1px solid #31517f;box-shadow:inset 0 0 80px rgba(0,0,0,.38)}
.casino-table:before{content:"";position:absolute;inset:10px;border:2px solid rgba(245,206,92,.25);border-radius:28px;pointer-events:none}
.card-game-head{position:relative;z-index:2;background:linear-gradient(180deg,rgba(3,10,26,.78),rgba(3,10,26,.35));border-bottom:1px solid rgba(255,255,255,.12)}
.timer-wrap{text-align:center;background:#07162d;border:2px solid #f2bf42;border-radius:18px;min-width:118px;padding:6px 18px;box-shadow:0 0 24px rgba(242,191,66,.2)}
.timer-label{font-size:10px;letter-spacing:1.8px;color:#efcc6d;font-weight:900}.timer-wrap .timer{font-size:38px;line-height:1;color:#fff;margin:3px 0}.timer-sub{font-size:10px;color:#9db0d2}
.dealer-zone{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:12px;padding:16px 18px 8px}.dealer-avatar{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#ffe07b,#bf7d12);border:4px solid #fff0bd;color:#19213a;font-size:30px;box-shadow:0 7px 18px rgba(0,0,0,.3)}.dealer-copy{display:flex;flex-direction:column;min-width:145px}.dealer-copy b{color:#ffe07b;font-size:14px;letter-spacing:.8px}.dealer-copy small{color:#d7e7df;margin-top:3px}.shoe{width:78px;height:62px;position:relative;margin-left:4px}.card-back{background:repeating-linear-gradient(45deg,#b51f37 0 6px,#f4d7b1 6px 9px,#183b78 9px 15px);border:3px solid #fff;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.35)}.mini-back{position:absolute;width:39px;height:55px;top:2px}.mini-back.one{left:3px;transform:rotate(-9deg)}.mini-back.two{left:18px;transform:rotate(0)}.mini-back.three{left:33px;transform:rotate(9deg)}
.result-card-slot{width:64px;height:88px;margin-left:10px;perspective:700px}.result-back{width:64px;height:88px}.result-face{width:64px;height:88px;border-radius:9px;background:#fff;border:3px solid #eed48e;color:#111;display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:950;box-shadow:0 0 25px rgba(255,209,80,.45);animation:cardReveal .42s ease}.result-face.red{color:#d52b3e}.result-face .rf-rank{font-size:28px;line-height:1}.result-face .rf-suit{font-size:29px;line-height:1}.result-face .rf-num{position:absolute;margin-top:68px;background:#071128;color:#fff;border-radius:999px;padding:2px 7px;font-size:10px}@keyframes cardReveal{from{transform:rotateY(90deg) scale(.92)}to{transform:rotateY(0) scale(1)}}
.card-status{text-align:center;color:#e9fff5;position:relative;z-index:2;font-weight:700;min-height:42px}.betting-title{position:relative;z-index:2;text-align:center;margin:2px 0 8px}.betting-title span{display:block;font-weight:950;color:#ffda70;letter-spacing:1px}.betting-title small{color:#c1dfd1}
.playing-cards{position:relative;z-index:2;display:grid;grid-template-columns:repeat(5,minmax(115px,1fr));gap:16px;padding:12px 34px 20px;max-width:1040px;margin:auto}.play-card{appearance:none;position:relative;min-height:166px;border-radius:13px;border:4px solid #f6edce;background:linear-gradient(145deg,#fffdf5,#e9e6dc);box-shadow:0 9px 0 #b9ad88,0 14px 24px rgba(0,0,0,.38);cursor:pointer;transition:transform .15s,border-color .15s,box-shadow .15s;overflow:hidden}.play-card:hover{transform:translateY(-6px);border-color:#ffe16f;box-shadow:0 10px 0 #b9ad88,0 20px 28px rgba(0,0,0,.38)}.play-card.red-suit{color:#cf263d}.play-card.black-suit{color:#101622}.play-card .corner{position:absolute;display:flex;flex-direction:column;align-items:center;font-style:normal;line-height:.9}.play-card .corner b{font-size:20px}.play-card .corner i{font-size:19px;font-style:normal}.play-card .corner.top{top:8px;left:9px}.play-card .corner.bottom{right:9px;bottom:28px;transform:rotate(180deg)}.suit-main{font-size:56px;line-height:1}.card-number{position:absolute;right:9px;top:9px;min-width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#101b35;color:#fff;font-size:13px;font-weight:950;border:2px solid #f1c955}.placed-badge{position:absolute;left:0;right:0;bottom:0;background:#111b31;color:#f7d162;padding:5px;font-size:11px;font-weight:800}.play-card.winner{border-color:#51ffaf;transform:translateY(-8px);box-shadow:0 0 0 4px rgba(39,230,143,.22),0 0 38px rgba(35,243,151,.65),0 10px 0 #23865e}.play-card.bet-flash{animation:betFlash .35s ease}@keyframes betFlash{50%{transform:scale(1.05);box-shadow:0 0 30px #ffe173}}
.table-felt-label{text-align:center;color:rgba(255,238,179,.65);font-size:11px;letter-spacing:2.3px;font-weight:900}.casino-betbar{background:linear-gradient(180deg,#101e3d,#09142a);padding:16px 18px}.chip-row{display:flex;gap:9px;flex-wrap:wrap}.casino-betbar .chip{width:62px;height:62px;background:radial-gradient(circle,#ffe47c 0 48%,#d99a12 49% 62%,#ffeaa0 63% 68%,#c8850d 69%);border:3px dashed rgba(78,48,0,.55);box-shadow:inset 0 0 0 3px #ffd86c,0 5px 12px rgba(0,0,0,.25)}.max-bet{margin-left:auto;color:#a8b4d3}
@media(max-width:900px){.playing-cards{grid-template-columns:repeat(5,minmax(88px,1fr));gap:10px;padding-left:16px;padding-right:16px}.play-card{min-height:145px}.suit-main{font-size:46px}}
@media(max-width:680px){.card-game-head{grid-template-columns:1fr auto}.card-game-head .round{grid-column:1/-1;text-align:center}.dealer-zone{gap:7px}.dealer-avatar{width:48px;height:48px}.dealer-copy{min-width:115px}.dealer-copy b{font-size:12px}.shoe{display:none}.result-card-slot,.result-back,.result-face{width:52px;height:72px}.result-face .rf-rank{font-size:23px}.result-face .rf-suit{font-size:24px}.playing-cards{grid-template-columns:repeat(2,1fr);gap:14px;padding:12px 18px 20px}.play-card{min-height:150px}.casino-betbar{align-items:center}.max-bet{width:100%;margin-left:0}.timer-wrap{min-width:92px;padding:6px 12px}.timer-wrap .timer{font-size:31px}}

.live-players-wrap{position:relative;z-index:2;margin:6px 18px 12px;padding:10px 12px;border:1px solid rgba(255,226,130,.24);border-radius:16px;background:rgba(2,18,16,.34)}
.live-players-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.live-players-title span{font-size:12px;font-weight:900;letter-spacing:1px;color:#ffe07b}.live-players-title small{color:#b9cec6}.live-players{display:flex;gap:10px;overflow-x:auto;padding:2px 1px 5px;scrollbar-width:thin}.table-player{flex:0 0 auto;min-width:174px;display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:14px;background:linear-gradient(145deg,rgba(23,55,50,.95),rgba(8,31,28,.95));border:1px solid rgba(87,204,164,.25)}
.player-avatar{width:44px;height:44px;flex:0 0 44px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:linear-gradient(145deg,#ffcf50,#a86b09);border:2px solid #ffe8a2;color:#10221e;font-weight:900;font-size:15px}.player-avatar img{width:100%;height:100%;object-fit:cover;display:block}.player-meta{display:flex;flex-direction:column;min-width:0}.player-meta b{max-width:105px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff;font-size:13px}.player-meta small{max-width:105px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#a9c3bb;font-size:11px}.player-meta em{font-style:normal;color:#ffd75f;font-size:11px;margin-top:2px}.no-players{color:#a9c3bb;font-size:12px;padding:7px 3px}
.profile-card{max-width:520px;margin:34px auto;padding:24px}.profile-avatar-preview{width:104px;height:104px;border-radius:50%;overflow:hidden;display:grid;place-items:center;margin:16px auto 24px;background:linear-gradient(145deg,#ffcf50,#a86b09);border:4px solid #ffe8a2;color:#10221e;font-weight:900;font-size:30px}.profile-avatar-preview img{width:100%;height:100%;object-fit:cover}
@media(max-width:680px){.live-players-wrap{margin:5px 10px 10px}.table-player{min-width:155px}.player-avatar{width:40px;height:40px;flex-basis:40px}}

/* Fixed player footer navigation */
.player-footer-spacer{height:92px}
.player-footer-nav{position:fixed;left:0;right:0;bottom:0;z-index:1000;background:#08152f;border-top:1px solid #294675;display:flex;justify-content:center;padding:8px 10px max(8px,env(safe-area-inset-bottom))}
.player-footer-inner{width:min(720px,100%);display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.player-footer-item{min-height:58px;border-radius:12px;text-decoration:none;color:#aebfe1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-weight:700;font-size:12px;border:1px solid transparent}
.player-footer-item:hover,.player-footer-item.active{background:#13294d;color:#ffd04a;border-color:#31588e}
.player-footer-icon{font-size:21px;line-height:1}
@media(max-width:420px){.player-footer-nav{padding-left:6px;padding-right:6px}.player-footer-inner{gap:4px}.player-footer-item{font-size:11px;min-height:55px}}

.support-home-card{max-width:620px;margin:24px auto;padding:30px;text-align:center}
.support-head-icon{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;margin:0 auto 12px;background:#17345f;font-size:32px;border:1px solid #31588e}
.support-home-card h2{margin:5px 0 8px}
.support-muted{color:#a8b4d3;line-height:1.6;margin:0 auto 24px;max-width:480px}
.support-chat-button{display:flex;align-items:center;gap:14px;text-align:left;text-decoration:none;background:#12284c;border:1px solid #31588e;border-radius:16px;padding:16px;color:#fff}
.support-chat-button:hover{border-color:#ffd04a}
.support-chat-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:#213e6d;font-size:23px}
.support-chat-button span:nth-child(2){flex:1;min-width:0}
.support-chat-button strong{display:block;font-size:16px}
.support-chat-button small{display:block;color:#a8b4d3;margin-top:4px}
.support-chat-button>b{font-size:28px;color:#ffd04a}

/* Complete profile */
.profile-shell{max-width:860px;margin:18px auto}
.profile-top{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-bottom:20px}
.profile-avatar-large{width:96px;height:96px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:#17345f;border:2px solid #31588e;font-size:30px;font-weight:800}
.profile-avatar-large img{width:100%;height:100%;object-fit:cover}
.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.profile-section{margin-top:18px;padding-top:18px;border-top:1px solid #294675}
.profile-section h3{margin:0 0 12px}
.profile-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.profile-note{color:#a8b4d3;font-size:12px;line-height:1.5}
.bank-card-preview{padding:16px;border-radius:16px;background:#10284d;border:1px solid #31588e;margin-top:12px}
@media(max-width:640px){.profile-grid{grid-template-columns:1fr}.player-footer-inner{grid-template-columns:repeat(5,1fr)}.player-footer-item{font-size:10px}.player-footer-icon{font-size:19px}}

.qr-profile-preview{margin-top:14px;display:inline-flex;flex-direction:column;gap:8px;color:#a8b4d3;font-size:12px}
.qr-profile-preview img{width:180px;max-width:100%;aspect-ratio:1/1;object-fit:contain;background:#fff;border-radius:14px;padding:8px;border:1px solid #31588e}

/* 13-card table layout */
.playing-cards{grid-template-columns:repeat(7,minmax(82px,1fr))!important}
@media(max-width:900px){.playing-cards{grid-template-columns:repeat(5,minmax(76px,1fr))!important}}
@media(max-width:640px){.playing-cards{grid-template-columns:repeat(4,minmax(68px,1fr))!important}}
@media(max-width:420px){.playing-cards{grid-template-columns:repeat(3,minmax(72px,1fr))!important}}
