*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:#1a1a2e}#root{width:100%;height:100%}button{font-family:inherit}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#1a1a2e}::-webkit-scrollbar-thumb{background:#333;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}.betting-panel{position:fixed;top:20px;left:20px;background:#000000d9;border-radius:12px;padding:15px 20px;display:flex;flex-direction:column;gap:12px;border:1px solid rgba(255,215,0,.3);box-shadow:0 4px 20px #00000080;min-width:180px;z-index:100}.betting-panel.poker-info{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.player-info-section,.game-info-section{display:flex;flex-direction:column;gap:8px}.balance-display,.current-bet-display,.blinds-info,.pot-display{display:flex;justify-content:space-between;align-items:center;gap:15px}.label{color:#888;font-size:12px;text-transform:uppercase}.value{color:#fff;font-size:16px;font-weight:700}.balance-display .value{color:#4caf50}.pot-value{color:gold!important;font-size:18px}.queue-info{padding:8px 12px;background:#ff980033;border-radius:6px;text-align:center}.queue-info span{color:#ff9800;font-size:14px}.waiting-info{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 12px;background:#2196f333;border-radius:6px}.waiting-info span{color:#2196f3;font-size:13px}.player-count{font-weight:700}.game-info-section{border-top:1px solid rgba(255,255,255,.1);padding-top:12px}.action-panel{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:#000000e6;border-radius:16px;padding:20px 30px;display:flex;flex-direction:column;align-items:center;gap:15px;border:2px solid #ffd700;box-shadow:0 4px 20px #00000080;z-index:1000}.action-panel.waiting-turn,.action-panel.waiting,.action-panel.folded,.action-panel.showdown{background:#000000b3;border-color:#555}.action-panel.waiting-turn span,.action-panel.waiting span,.action-panel.folded span,.action-panel.showdown span{color:#888;font-size:16px}.action-info{display:flex;gap:30px;align-items:center}.your-turn{color:gold;font-size:20px;font-weight:700;animation:glow 1s ease-in-out infinite alternate}@keyframes glow{0%{text-shadow:0 0 5px #ffd700}to{text-shadow:0 0 20px #ffd700,0 0 30px #ffd700}}.pot-info{color:#4caf50;font-size:18px;font-weight:700}.call-amount{color:#ff9800;font-size:16px}.action-buttons{display:flex;gap:15px;flex-wrap:wrap;justify-content:center}.btn-action{padding:15px 35px;border:none;border-radius:10px;font-size:18px;font-weight:700;cursor:pointer;transition:all .2s;text-transform:uppercase}.btn-action:disabled{opacity:.3;cursor:not-allowed;transform:none!important}.btn-fold{background:linear-gradient(135deg,#757575,#424242);color:#fff}.btn-fold:hover:not(:disabled){background:linear-gradient(135deg,#9e9e9e,#616161);transform:scale(1.05)}.btn-check{background:linear-gradient(135deg,#2196f3,#1565c0);color:#fff}.btn-check:hover:not(:disabled){background:linear-gradient(135deg,#42a5f5,#1976d2);transform:scale(1.05)}.btn-call{background:linear-gradient(135deg,#4caf50,#2e7d32);color:#fff}.btn-call:hover:not(:disabled){background:linear-gradient(135deg,#66bb6a,#43a047);transform:scale(1.05)}.btn-raise{background:linear-gradient(135deg,#ff9800,#ef6c00);color:#fff}.btn-raise:hover:not(:disabled){background:linear-gradient(135deg,#ffa726,#f57c00);transform:scale(1.05)}.btn-allin{background:linear-gradient(135deg,#f44336,#c62828);color:#fff}.btn-allin:hover:not(:disabled){background:linear-gradient(135deg,#ef5350,#d32f2f);transform:scale(1.05)}.raise-controls{display:flex;flex-direction:column;gap:15px;align-items:center;width:100%;min-width:400px}.raise-amount{font-size:24px;color:gold;font-weight:700}.raise-slider{width:100%;height:8px;-webkit-appearance:none;background:linear-gradient(90deg,#4caf50,gold,#f44336);border-radius:4px;outline:none}.raise-slider::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;background:gold;border-radius:50%;cursor:pointer;box-shadow:0 2px 6px #0000004d}.raise-slider::-moz-range-thumb{width:24px;height:24px;background:gold;border-radius:50%;cursor:pointer;box-shadow:0 2px 6px #0000004d;border:none}.chip-buttons{display:flex;gap:10px}.chip-btn{padding:8px 16px;border:2px solid rgba(255,255,255,.3);border-radius:20px;font-size:14px;font-weight:700;cursor:pointer;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5);transition:transform .2s,box-shadow .2s}.chip-btn:hover{transform:scale(1.1);box-shadow:0 4px 12px #0000004d}.raise-actions{display:flex;gap:15px}.btn-cancel{background:linear-gradient(135deg,#757575,#424242);color:#fff}.btn-cancel:hover{background:linear-gradient(135deg,#9e9e9e,#616161);transform:scale(1.05)}.btn-confirm-raise{background:linear-gradient(135deg,#ff9800,#ef6c00);color:#fff}.btn-confirm-raise:hover{background:linear-gradient(135deg,#ffa726,#f57c00);transform:scale(1.05)}.player-info{position:fixed;top:20px;right:20px;background:#000c;border-radius:12px;padding:15px 20px;display:flex;flex-direction:column;gap:10px;min-width:200px;border:1px solid #333}.connection-status{display:flex;align-items:center;gap:8px;font-size:12px;color:#888}.status-dot{width:8px;height:8px;border-radius:50%}.status-dot.connected{background:#4caf50;box-shadow:0 0 8px #4caf50}.status-dot.disconnected{background:#f44336;box-shadow:0 0 8px #f44336}.balance-display{display:flex;justify-content:space-between;align-items:center}.balance-label{color:#888;font-size:14px}.balance-amount{color:gold;font-size:24px;font-weight:700}.table-info{display:flex;justify-content:space-between;font-size:12px;color:#aaa;padding-top:10px;border-top:1px solid #333}.cards-remaining{color:#666}.queue-position{color:#ff9800;font-size:14px;text-align:center;padding:8px;background:#ff98001a;border-radius:6px}.game-result-overlay{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;gap:20px;z-index:100;pointer-events:none}.result-card{padding:30px 60px;border-radius:20px;text-align:center;display:flex;flex-direction:column;gap:10px;box-shadow:0 10px 40px #00000080}.result-text{font-size:48px;font-weight:700;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.result-payout{font-size:28px;font-weight:700}.result-win{background:linear-gradient(135deg,#4caf50,#2e7d32);color:#fff}.result-lose{background:linear-gradient(135deg,#f44336,#c62828);color:#fff}.result-push{background:linear-gradient(135deg,#9e9e9e,#616161);color:#fff}.result-blackjack{background:linear-gradient(135deg,gold,#ff8f00);color:#000;animation:blackjackGlow .5s ease-in-out infinite alternate}@keyframes blackjackGlow{0%{box-shadow:0 0 20px gold,0 10px 40px #00000080}to{box-shadow:0 0 40px gold,0 0 60px #ff8f00,0 10px 40px #00000080}}.app{width:100vw;height:100vh;overflow:hidden;position:relative}.loading-screen,.error-screen{width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e)}.loading-content,.error-content{text-align:center;color:#fff}.loading-content h1,.error-content h1{font-size:48px;margin-bottom:30px;color:gold;text-shadow:0 0 20px rgba(255,215,0,.5)}.loading-spinner{width:50px;height:50px;border:4px solid #333;border-top-color:gold;border-radius:50%;margin:20px auto;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-content p,.error-content p{font-size:18px;color:#888}.error-content button{margin-top:20px;padding:12px 30px;font-size:16px;background:gold;color:#000;border:none;border-radius:8px;cursor:pointer;transition:transform .2s}.error-content button:hover{transform:scale(1.05)}.reconnecting-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000}.reconnecting-content{text-align:center;color:#fff}.reconnecting-content p{font-size:20px;margin-top:20px}
