:root{--color-primary:#0f5132;--color-primary-dark:#0a3d26;--color-accent:#ffd700;--color-accent-glow:#ffed4a;--color-danger:#dc2626;--color-info:#1e40af;--color-success:#10b981;--color-background:#0d2818;--color-surface:#1a5d3a;--color-surface-light:#2d7a4f;--color-text-main:#ffffff;--color-text-muted:#a7c5b8;--glass-bg:rgba(13,40,24,0.85);--glass-border:rgba(255,215,0,0.15);--glass-shadow:0 8px 32px rgba(0,0,0,0.4);--table-felt:#0f5132;--table-felt-gradient:linear-gradient(145deg,#1a5d3a,#0f5132);--table-border:#8b4513;--table-border-inner:rgba(255,215,0,0.4);--chip-red:#dc2626;--chip-blue:#1e40af;--chip-green:#059669;--chip-black:#000000;--chip-white:#ffffff;--chip-gold:#ffd700;--font-family-base:"Inter",system-ui,-apple-system,sans-serif;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--transition-fast:0.15s ease;--transition-medium:0.3s ease-out;--transition-slow:0.5s ease-out}.poker-room{color:var(--color-text-main);font-family:var(--font-family-base);overflow-x:hidden}.poker-room,.room-loading{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(180deg,#0a1f14,#0d2818 50%,#061510)}.room-loading{align-items:center;justify-content:center;gap:1.5rem}.loading-spinner{width:48px;height:48px;border:3px solid rgba(255,215,0,.2);border-top:3px solid var(--color-accent);border-radius:50%;animation:spin 1s linear infinite}.loading-text{color:var(--color-accent);font-size:1.25rem;font-weight:600;letter-spacing:.05em}@keyframes spin{to{transform:rotate(1turn)}}.room-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--glass-bg);border-bottom:1px solid var(--glass-border);backdrop-filter:blur(12px);position:sticky;top:0;z-index:50}.header-left,.header-right{display:flex;align-items:center;gap:.5rem}.header-center{display:flex;flex-direction:column;align-items:center;gap:.25rem}.room-title{font-size:1.125rem;font-weight:700;color:var(--color-text-main);letter-spacing:.02em}.room-blinds{display:flex;align-items:center;gap:.5rem;font-size:.75rem}.blind-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.1em}.blind-value{color:var(--color-accent);font-weight:700}.header-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--color-text-main);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.header-btn:hover{background:rgba(255,255,255,.1);border-color:rgba(255,215,0,.3)}.header-btn.back-btn{padding-left:.5rem}.header-btn.share-btn{background:linear-gradient(135deg,rgba(16,185,129,.2),rgba(16,185,129,.1));border-color:rgba(16,185,129,.3);color:#34d399}.header-btn.share-btn:hover{background:linear-gradient(135deg,rgba(16,185,129,.3),rgba(16,185,129,.2))}.game-status-bar{justify-content:center;gap:.75rem;padding:.75rem 1rem;background:rgba(0,0,0,.3);border-bottom:1px solid rgba(255,255,255,.05);flex-wrap:wrap}.game-status-bar,.status-item{display:flex;align-items:center}.status-item{gap:.375rem;padding:.375rem .75rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.status-item.phase{background:linear-gradient(135deg,rgba(16,185,129,.2),rgba(16,185,129,.1));border-color:rgba(16,185,129,.3);color:#34d399}.status-item.pot{background:linear-gradient(135deg,rgba(255,215,0,.15),rgba(255,215,0,.05));border-color:rgba(255,215,0,.25);color:var(--color-accent)}.status-label{color:var(--color-text-muted);font-weight:400}.status-value{color:var(--color-text-main)}.pot-icon,.pot-value{font-size:.875rem}.pot-value{font-weight:700}.action-overlay{position:fixed;top:35%;left:50%;transform:translate(-50%,-50%);z-index:100;animation:actionPop 1s ease-out forwards}.action-card{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem 2.5rem;background:linear-gradient(135deg,rgba(13,61,38,.95),rgba(0,0,0,.9));border:2px solid rgba(255,215,0,.5);border-radius:16px;box-shadow:0 20px 40px rgba(0,0,0,.6),0 0 40px rgba(255,215,0,.2),inset 0 1px 0 rgba(255,255,255,.1);backdrop-filter:blur(8px)}.action-icon{font-size:2.5rem}.action-text{color:var(--color-accent);font-size:1.5rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;text-shadow:0 2px 4px rgba(0,0,0,.5)}.action-amount{color:#34d399;font-size:1.25rem;font-weight:700}@keyframes actionPop{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}20%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}40%{transform:translate(-50%,-50%) scale(.95)}60%{transform:translate(-50%,-50%) scale(1.02)}80%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.9)}}.table-area{flex:1;justify-content:center;padding:1rem 1rem 120px}.table-area,.turn-indicator{display:flex;align-items:center}.turn-indicator{position:fixed;bottom:100px;left:50%;transform:translateX(-50%);gap:.5rem;padding:.5rem 1.5rem;background:linear-gradient(135deg,rgba(255,215,0,.15),rgba(255,215,0,.05));border:1px solid rgba(255,215,0,.3);border-radius:24px;color:var(--color-accent);font-size:.875rem;font-weight:600;letter-spacing:.05em;box-shadow:0 4px 20px rgba(255,215,0,.15);backdrop-filter:blur(8px);z-index:40;animation:turnPulse 2s ease-in-out infinite}.turn-dot{width:8px;height:8px;background:var(--color-accent);border-radius:50%;animation:dotPulse 1s ease-in-out infinite}@keyframes turnPulse{0%,to{box-shadow:0 4px 20px rgba(255,215,0,.15)}50%{box-shadow:0 4px 30px rgba(255,215,0,.3)}}@keyframes dotPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.action-area{position:fixed;bottom:0;left:0;right:0;padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(13,40,24,.95),rgba(10,30,18,.98));border-top:1px solid rgba(255,215,0,.2);backdrop-filter:blur(12px);z-index:50}.action-area,.game-btn{display:flex;justify-content:center}.game-btn{align-items:center;gap:.75rem;padding:1rem 2.5rem;border:none;border-radius:12px;font-size:1.125rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all var(--transition-fast);position:relative}.game-btn.start-btn.active{background:linear-gradient(135deg,#10b981,#059669);color:white;box-shadow:0 4px 20px rgba(16,185,129,.4),inset 0 1px 0 rgba(255,255,255,.2)}.game-btn.start-btn.active:hover{background:linear-gradient(135deg,#34d399,#10b981);transform:translateY(-2px);box-shadow:0 6px 24px rgba(16,185,129,.5)}.game-btn.start-btn.disabled{background:rgba(255,255,255,.1);color:rgba(255,255,255,.4);cursor:not-allowed}.game-btn.next-btn{background:linear-gradient(135deg,#10b981,#059669);color:white;box-shadow:0 4px 20px rgba(16,185,129,.4)}.game-btn.winner-btn{background:linear-gradient(135deg,#f59e0b,#d97706);color:white;box-shadow:0 4px 20px rgba(245,158,11,.4)}.btn-icon{font-size:1.25rem}.btn-hint{position:absolute;bottom:-1.5rem;left:50%;transform:translateX(-50%);font-size:.6875rem;font-weight:500;color:var(--color-text-muted);text-transform:none;letter-spacing:0;white-space:nowrap}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.8);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:1rem;z-index:100;animation:fadeIn .2s ease-out}.modal-card{width:100%;max-width:360px;background:linear-gradient(180deg,#1a3d2e,#0d2818);border:1px solid rgba(255,215,0,.2);border-radius:20px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.1);animation:slideUp .3s ease-out}.modal-header{justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.modal-header,.modal-header h3{display:flex;align-items:center}.modal-header h3{gap:.5rem;color:var(--color-text-main);font-size:1.125rem;font-weight:700}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:rgba(255,255,255,.05);border:none;border-radius:8px;color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast)}.modal-close:hover{background:rgba(255,255,255,.1);color:var(--color-text-main)}.modal-body{padding:1.5rem}.modal-footer{display:flex;gap:.75rem;padding:1rem 1.5rem 1.5rem}.input-group{margin-bottom:1rem}.input-group label{display:block;margin-bottom:.5rem;font-size:.8125rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.input-group input{width:100%;padding:.875rem 1rem;background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.1);border-radius:10px;color:var(--color-text-main);font-size:1rem;transition:all var(--transition-fast)}.input-group input:focus{outline:none;border-color:rgba(255,215,0,.5);box-shadow:0 0 0 3px rgba(255,215,0,.1)}.input-group input::placeholder{color:rgba(255,255,255,.3)}.buyin-info{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:rgba(255,215,0,.1);border:1px solid rgba(255,215,0,.2);border-radius:10px}.buyin-label{font-size:.875rem;color:var(--color-text-muted)}.buyin-amount{font-size:1.25rem;font-weight:700;color:var(--color-accent)}.quick-amounts{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-top:1rem}.quick-amount-btn{padding:.625rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--color-text-main);font-size:.875rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.quick-amount-btn:hover{background:rgba(255,215,0,.1);border-color:rgba(255,215,0,.3)}.modal-btn{flex:1;padding:.875rem 1rem;border:none;border-radius:10px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.modal-btn.cancel{background:rgba(255,255,255,.1);color:var(--color-text-main)}.modal-btn.cancel:hover{background:rgba(255,255,255,.15)}.modal-btn.confirm{background:linear-gradient(135deg,#10b981,#059669);color:white}.modal-btn.confirm:hover:not(:disabled){background:linear-gradient(135deg,#34d399,#10b981)}.modal-btn.confirm:disabled{opacity:.5;cursor:not-allowed}.modal-btn.award-btn{background:linear-gradient(135deg,#f59e0b,#d97706)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.winner-modal{max-width:400px}.pot-display-modal{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:1rem;background:rgba(255,215,0,.1);border:1px solid rgba(255,215,0,.2);border-radius:12px;margin-bottom:1rem}.pot-display-modal .pot-label{font-size:.75rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.1em}.pot-display-modal .pot-amount{font-size:2rem;font-weight:800;color:var(--color-accent);text-shadow:0 0 20px rgba(255,215,0,.3)}.winner-list{display:flex;flex-direction:column;gap:.5rem}.winner-option{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1rem;background:rgba(255,255,255,.05);border:2px solid transparent;border-radius:10px;cursor:pointer;transition:all var(--transition-fast)}.winner-option:hover{background:rgba(255,255,255,.08)}.winner-option.selected{background:rgba(16,185,129,.15);border-color:#10b981}.winner-name{font-weight:600;color:var(--color-text-main)}.winner-chips{font-size:.875rem;color:var(--color-text-muted)}.winner-check{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#10b981;border-radius:50%;color:white;font-size:.75rem;font-weight:700}.share-dialog{background:linear-gradient(180deg,#1a3d2e,#0d2818)!important;border:1px solid rgba(255,215,0,.2)!important;border-radius:20px!important}.dialog-title{color:var(--color-text-main)}.share-content{display:flex;flex-direction:column;align-items:center;gap:1.25rem;padding:1rem 0}.qr-container{padding:1rem;background:white;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,.3)}.share-info{text-align:center}.room-code{font-size:1.5rem;font-weight:800;color:var(--color-accent);letter-spacing:.15em}.share-hint{font-size:.875rem;color:var(--color-text-muted);margin-top:.25rem}.share-link-group{display:flex;gap:.5rem;width:100%}.share-input{flex:1;background:rgba(0,0,0,.3)!important;border-color:rgba(255,255,255,.1)!important}.copy-btn{display:flex;align-items:center;justify-content:center;width:40px;background:var(--color-success);border:none;border-radius:8px;color:white;cursor:pointer;transition:all var(--transition-fast)}.copy-btn:hover{background:#059669}.copied-toast{font-size:.875rem;color:var(--color-success);font-weight:600}.poker-table-container{width:100%;max-width:800px;margin:0 auto;padding:2rem 1.5rem;position:relative}.game-info{display:none}.poker-table{position:relative;width:100%;padding-bottom:55%;background:url(/table_zoom_s.png) 50%/cover no-repeat;border-radius:50%/40%;box-shadow:0 20px 50px rgba(0,0,0,.5),0 0 0 4px rgba(139,69,19,.6),inset 0 0 40px rgba(0,0,0,.3)}.pot-display{position:absolute;top:40%;left:50%;transform:translate(-50%,-50%);text-align:center;padding:.75rem 1.5rem;background:rgba(0,0,0,.4);border:1px solid rgba(255,215,0,.3);border-radius:16px;backdrop-filter:blur(4px)}.pot-label{font-size:.6875rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.15em}.pot-amount{font-size:1.75rem;font-weight:800;color:var(--color-accent);text-shadow:0 0 20px rgba(255,215,0,.4)}.player-seat{position:absolute;width:80px;transform:translate(-50%,-50%);text-align:center;cursor:pointer;transition:all var(--transition-medium);z-index:20}.player-seat:hover{z-index:30;transform:translate(-50%,-50%) scale(1.08)}.player-seat.empty{opacity:.6}.player-seat.empty:hover{opacity:1}.player-seat.current .player-avatar{box-shadow:0 0 0 3px var(--color-accent),0 0 20px rgba(255,215,0,.5),0 0 40px rgba(255,215,0,.3);animation:currentPlayerGlow 2s ease-in-out infinite}@keyframes currentPlayerGlow{0%,to{box-shadow:0 0 0 3px var(--color-accent),0 0 20px rgba(255,215,0,.5),0 0 40px rgba(255,215,0,.3)}50%{box-shadow:0 0 0 4px var(--color-accent),0 0 30px rgba(255,215,0,.7),0 0 60px rgba(255,215,0,.4)}}.player-seat.folded{opacity:.35}.player-avatar{width:52px;height:52px;margin:0 auto;border-radius:50%;border:3px solid rgba(255,255,255,.8);background:linear-gradient(135deg,#4b5563,#374151);display:flex;align-items:center;justify-content:center;font-size:1.125rem;font-weight:700;color:white;box-shadow:0 4px 12px rgba(0,0,0,.4);overflow:hidden;position:relative}.player-avatar img{width:100%;height:100%;object-fit:cover}.player-name{margin-top:.375rem;padding:.25rem .5rem;background:rgba(0,0,0,.7);border-radius:4px;font-size:.6875rem;font-weight:600;color:white;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;backdrop-filter:blur(4px)}.player-stack{margin-top:.25rem;font-size:.8125rem;font-weight:700;color:var(--color-accent);text-shadow:0 1px 2px rgba(0,0,0,.8)}.dealer-button{position:absolute;top:-6px;right:-6px;width:22px;height:22px;background:white;border:2px solid #333;border-radius:50%;align-items:center;font-size:.6875rem;font-weight:800;color:#333;box-shadow:0 2px 6px rgba(0,0,0,.4);z-index:10}.chip-stack,.dealer-button{display:flex;justify-content:center}.chip-stack{gap:-3px;margin-top:.25rem}.chip{width:14px;height:14px;border-radius:50%;border:2px dashed rgba(255,255,255,.4);box-shadow:0 1px 2px rgba(0,0,0,.5)}.chip.red{background:var(--chip-red)}.chip.blue{background:var(--chip-blue)}.chip.green{background:var(--chip-green);border-color:rgba(255,255,255,.2)}.chip.black{background:var(--chip-black);border:2px solid white}.action-bar{display:flex;gap:.75rem;justify-content:center;align-items:center;flex-wrap:wrap}.action-btn{min-width:80px;padding:.75rem 1.25rem;border:none;border-radius:10px;font-size:.9375rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;transition:all var(--transition-fast)}.action-btn:active{transform:scale(.95)}.action-btn.fold{background:rgba(255,255,255,.1);color:white;border:1px solid rgba(255,255,255,.2)}.action-btn.fold:hover{background:rgba(220,38,38,.2);border-color:rgba(220,38,38,.5)}.action-btn.call,.action-btn.check{background:linear-gradient(135deg,#1e40af,#1e3a8a);color:white}.action-btn.call:hover,.action-btn.check:hover{background:linear-gradient(135deg,#2563eb,#1e40af)}.action-btn.bet,.action-btn.raise{background:linear-gradient(135deg,var(--color-accent),#f59e0b);color:#000;font-weight:800;box-shadow:0 0 15px rgba(255,215,0,.3)}.action-btn.bet:hover,.action-btn.raise:hover{background:linear-gradient(135deg,#ffed4a,var(--color-accent));box-shadow:0 0 20px rgba(255,215,0,.5)}.amount-input-group{display:flex;align-items:center;background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.1);border-radius:10px;overflow:hidden}.amount-adjust{width:36px;height:42px;background:transparent;border:none;color:var(--color-text-muted);font-size:1.25rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.amount-adjust:hover{background:rgba(255,255,255,.1);color:white}.amount-input{width:80px;padding:.5rem;background:transparent;border:none;color:white;font-size:1rem;font-weight:600;text-align:center}.amount-input:focus{outline:none}.amount-input::-webkit-inner-spin-button,.amount-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.amount-input[type=number]{-moz-appearance:textfield}.community-card{width:40px;height:56px;background:white;border-radius:6px;box-shadow:0 2px 8px rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center;animation:cardDeal .4s ease-out}@keyframes cardDeal{0%{opacity:0;transform:translateY(-30px) rotateY(-90deg)}to{opacity:1;transform:translateY(0) rotateY(0)}}@media (max-width:640px){.room-header{padding:.5rem .75rem}.header-btn span{display:none}.header-btn{padding:.5rem;min-width:40px;justify-content:center}.room-title{font-size:1rem}.game-status-bar{gap:.5rem;padding:.5rem}.status-item{padding:.25rem .5rem;font-size:.6875rem}.poker-table-container{padding:1rem .5rem}.player-seat{width:70px}.player-avatar{width:44px;height:44px;font-size:1rem}.player-name{font-size:.625rem}.player-stack{font-size:.75rem}.action-bar{gap:.5rem}.action-btn{min-width:60px;padding:.625rem .875rem;font-size:.8125rem}.amount-input-group{order:10;width:100%;justify-content:center}.game-btn{padding:.875rem 2rem;font-size:1rem}.turn-indicator{bottom:90px;font-size:.8125rem;padding:.375rem 1rem}}