*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--green-felt: #1a6b3c;--green-felt-dark: #145530;--green-felt-light: #228b4a;--gold: #d4a843;--gold-light: #e8c45a;--gold-dark: #b8912e;--red: #c0392b;--red-light: #e74c3c;--dark: #1a1a2e;--dark-light: #2d2d44;--white: #ffffff;--gray-50: #f8f9fa;--gray-100: #f0f0f0;--gray-200: #e0e0e0;--gray-300: #bbbbbb;--gray-500: #888888;--gray-700: #555555;--gray-900: #222222;--card-red: #d32f2f;--card-black: #212121;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 20px;--shadow-sm: 0 1px 3px rgba(0,0,0,.15);--shadow-md: 0 2px 8px rgba(0,0,0,.2);--shadow-lg: 0 4px 20px rgba(0,0,0,.3);--shadow-card: 0 2px 8px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.3);--font: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif}html,body{height:100%;width:100%;font-family:var(--font);font-size:16px;line-height:1.5;color:var(--gray-900);background:var(--gray-100);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overflow-x:hidden}#root{min-height:100%;display:flex;flex-direction:column}.app-container{max-width:480px;margin:0 auto;width:100%;min-height:100vh;position:relative;background:var(--gray-50);padding-top:var(--safe-top);padding-bottom:var(--safe-bottom);padding-left:var(--safe-left);padding-right:var(--safe-right)}.app-bar{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:linear-gradient(135deg,var(--dark),var(--dark-light));color:var(--white);position:sticky;top:0;z-index:100;padding-top:calc(10px + var(--safe-top))}.app-bar-left{display:flex;align-items:center;gap:12px}.app-bar-nickname{font-size:15px;font-weight:600}.app-bar-points{font-size:13px;background:var(--gold);color:var(--dark);padding:2px 10px;border-radius:20px;font-weight:600}.app-bar-right{display:flex;align-items:center;gap:8px}.page{flex:1;display:flex;flex-direction:column;padding-bottom:70px}.page-center{justify-content:center;align-items:center;padding:20px;background:linear-gradient(180deg,var(--dark) 0%,var(--dark-light) 40%,var(--gray-100) 100%);min-height:100vh}.page-header{padding:16px;border-bottom:1px solid var(--gray-200)}.page-title{font-size:20px;font-weight:700}.login-header{text-align:center;margin-bottom:32px}.chip-icon{width:80px;height:80px;border-radius:50%;background:radial-gradient(circle at 35% 35%,var(--gold-light),var(--gold-dark));display:flex;align-items:center;justify-content:center;margin:0 auto 16px;box-shadow:var(--shadow-lg),inset 0 -3px #0003;border:3px solid var(--gold-light)}.chip-icon-inner{font-size:36px;color:var(--white);text-shadow:0 2px 4px rgba(0,0,0,.3)}.login-title{font-size:28px;font-weight:800;color:var(--white);text-shadow:0 2px 8px rgba(0,0,0,.3)}.login-subtitle{font-size:13px;color:#fff9;margin-top:6px;font-weight:400}.login-form{width:100%;max-width:360px}.dev-code-hint{background:#d4a84333;color:var(--gold-light);padding:8px 16px;border-radius:var(--radius-md);margin-bottom:16px;text-align:center;font-size:14px;font-family:monospace}.form-group{margin-bottom:16px}.form-label{display:block;font-size:13px;color:var(--gray-700);margin-bottom:6px;font-weight:500}.form-row{display:flex;gap:12px}.form-row .form-group{flex:1}.form-footer{text-align:center;margin-top:20px}.link{color:var(--gold);text-decoration:none;font-size:14px}.link:active{opacity:.7}.input{width:100%;height:48px;padding:0 16px;border:2px solid var(--gray-200);border-radius:var(--radius-md);font-size:16px;font-family:var(--font);background:var(--white);color:var(--gray-900);outline:none;transition:border-color .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none}.input:focus{border-color:var(--gold)}.input::placeholder{color:var(--gray-300)}select.input{padding-right:32px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23555' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.code-input-row{display:flex;gap:8px;justify-content:center}.code-input-box{width:44px;height:54px;text-align:center;font-size:22px;font-weight:700;border:2px solid var(--gray-200);border-radius:var(--radius-sm);background:var(--white);color:var(--gray-900);outline:none;transition:border-color .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none}.code-input-box:focus{border-color:var(--gold);box-shadow:0 0 0 3px #d4a84333}.btn{display:inline-flex;align-items:center;justify-content:center;height:44px;padding:0 20px;border:none;border-radius:var(--radius-md);font-size:15px;font-weight:600;font-family:var(--font);cursor:pointer;transition:all .15s ease;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;white-space:nowrap}.btn:active{transform:scale(.96)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn-block{width:100%}.btn-lg{height:52px;font-size:17px;border-radius:var(--radius-lg)}.btn-sm{height:36px;padding:0 14px;font-size:13px;border-radius:var(--radius-sm)}.btn-primary{background:linear-gradient(135deg,var(--gold),var(--gold-dark));color:var(--dark);box-shadow:var(--shadow-sm)}.btn-primary:active:not(:disabled){box-shadow:inset 0 2px 4px #0003}.btn-danger{background:linear-gradient(135deg,var(--red-light),var(--red));color:var(--white)}.btn-warning{background:linear-gradient(135deg,#f39c12,#e67e22);color:var(--white)}.btn-ghost{background:transparent;color:var(--white);border:1px solid rgba(255,255,255,.25)}.btn-ghost:active:not(:disabled){background:#ffffff1a}.btn-action{flex:1;min-width:0;height:40px;font-size:14px;padding:0 10px;border-radius:var(--radius-md)}.toast{position:fixed;top:calc(16px + var(--safe-top));left:50%;transform:translate(-50%);z-index:1000;padding:12px 24px;border-radius:var(--radius-md);font-size:14px;font-weight:500;box-shadow:var(--shadow-lg);animation:toastSlideIn .3s ease;max-width:400px;text-align:center}.toast-error{background:var(--red);color:var(--white)}.toast-success{background:var(--green-felt);color:var(--white)}@keyframes toastSlideIn{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.lobby-page{padding-bottom:80px}.announcement-bar{background:var(--dark);color:var(--gold);padding:8px 16px;overflow:hidden;font-size:13px}.announcement-scroll{display:flex;gap:24px;animation:scrollAnnounce 20s linear infinite;white-space:nowrap}@keyframes scrollAnnounce{0%{transform:translate(100%)}to{transform:translate(-100%)}}.announcement-item{flex-shrink:0}.join-by-code{display:flex;gap:8px;padding:12px 16px;background:var(--white);border-bottom:1px solid var(--gray-200)}.join-code-input{flex:1}.new-room-banner{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 16px;background:linear-gradient(135deg,#d4380d,#cf1322);color:#fff;font-size:15px;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none;flex-wrap:wrap}.new-room-label{font-size:13px;font-weight:400;opacity:.9}.new-room-code{font-size:28px;font-weight:800;letter-spacing:6px;background:#fff3;padding:4px 16px;border-radius:8px}.new-room-copy-hint{font-size:12px;opacity:.8}.section-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 4px}.section-title{font-size:17px;font-weight:700;color:var(--gray-800);margin:0}.btn-outline{background:transparent;border:1px solid var(--gray-300);color:var(--gray-700)}.btn-outline:active{background:var(--gray-100)}.tab-bar{display:flex;background:var(--white);border-bottom:2px solid var(--gray-200)}.tab-item{flex:1;height:44px;background:none;border:none;font-size:15px;font-weight:600;color:var(--gray-500);cursor:pointer;position:relative;font-family:var(--font)}.tab-active{color:var(--gold-dark)}.tab-active:after{content:"";position:absolute;bottom:-2px;left:20%;right:20%;height:3px;background:var(--gold);border-radius:3px 3px 0 0}.room-list{padding:12px 16px;flex:1}.room-card{background:var(--white);border-radius:var(--radius-md);padding:14px 16px;margin-bottom:12px;box-shadow:var(--shadow-sm)}.room-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.room-card-name{font-size:16px;font-weight:700;color:var(--gray-900)}.room-card-status{font-size:12px;padding:2px 10px;border-radius:20px;font-weight:600}.status-waiting{background:#e8f5e9;color:#2e7d32}.status-playing{background:#ffebee;color:#c62828}.room-card-info{display:flex;justify-content:space-between;font-size:13px;color:var(--gray-500);margin-bottom:10px}.room-card-code{font-family:monospace}.room-card-footer{display:flex;justify-content:space-between;align-items:center}.room-card-players{font-size:14px;color:var(--gray-700)}.player-icon{margin-right:4px}.create-room-form{padding:16px}.empty-state{text-align:center;padding:48px 20px;color:var(--gray-500);font-size:15px}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:480px;display:flex;background:var(--white);border-top:1px solid var(--gray-200);padding-bottom:var(--safe-bottom);z-index:100}.bottom-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;height:56px;background:none;border:none;color:var(--gray-500);font-family:var(--font);cursor:pointer;gap:2px}.bottom-nav-active{color:var(--gold-dark)}.bottom-nav-icon{font-size:22px;line-height:1}.bottom-nav-label{font-size:11px;font-weight:500}.game-room-page{background:var(--dark);min-height:100vh;padding-bottom:0}.game-top-bar-waiting{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;width:100%;padding-top:calc(8px + var(--safe-top))}.game-round-label{font-size:13px;color:var(--gold);font-weight:600}.game-top-bar{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#00000080;color:var(--white);padding-top:calc(8px + var(--safe-top))}.game-top-left{display:flex;align-items:center;gap:8px}.game-room-name{font-size:15px;font-weight:600}.game-room-code{font-size:12px;color:#ffffff80;cursor:pointer;font-family:monospace;letter-spacing:2px}.room-code-badge{background:#ffffff26;padding:4px 12px;border-radius:20px;font-size:13px;font-family:monospace;cursor:pointer}.room-code-badge:active{background:#ffffff4d}.game-fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;z-index:200;overflow:hidden;display:flex;flex-direction:column}.game-waiting-area{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;gap:16px}.waiting-players{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:8px}.waiting-player{background:#ffffff1a;border-radius:12px;padding:12px 20px;text-align:center;min-width:100px}.waiting-player-name{display:block;font-size:15px;font-weight:600;color:#fff}.waiting-player-chips{display:block;font-size:13px;color:var(--gold);margin-top:4px}.waiting-player-status{display:block;font-size:12px;margin-top:6px;color:#ffffff80}.waiting-player-ready{border:2px solid #52c41a;background:#52c41a26}.waiting-player-ready .waiting-player-status{color:#52c41a;font-weight:600}.waiting-info{font-size:15px;color:#fff9;text-align:center}.game-leave-bar{position:absolute;top:8px;left:8px;z-index:10;padding-top:var(--safe-top)}.game-result-modal{max-height:80vh;overflow-y:auto}.announcement-item{cursor:pointer;flex-shrink:0}.announcement-item:active{opacity:.7}.table-container{padding:12px;position:relative}.felt-table{background:radial-gradient(ellipse at center,var(--green-felt-light),var(--green-felt-dark));border-radius:var(--radius-xl);padding:16px;min-height:400px;position:relative;box-shadow:inset 0 0 60px #0000004d,0 4px 20px #0006;border:4px solid var(--dark-light);overflow:visible}.community-cards{display:flex;justify-content:center;gap:6px;padding:8px 0;position:absolute;top:10%;left:50%;transform:translate(-50%);z-index:10}.pot-display{text-align:center;color:#f5d77b;font-size:14px;font-weight:800;padding:4px 14px;position:absolute;top:calc(10% + 66px);left:50%;transform:translate(-50%);z-index:9;background:#00000059;border-radius:14px;text-shadow:0 1px 4px rgba(0,0,0,.8);letter-spacing:.5px}.seats-container{position:absolute;top:0;left:0;right:0;bottom:0;height:auto}.seat{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;z-index:3;transition:all .3s ease}.seat-me{filter:drop-shadow(0 0 6px rgba(255,255,255,.4))}.seat-active{filter:drop-shadow(0 0 8px rgba(212,168,67,.8))}.seat-badge{position:absolute;top:-18px;left:50%;transform:translate(-50%);font-size:10px;font-weight:700;padding:1px 8px;border-radius:8px;white-space:nowrap}.badge-dealer,.badge-d{background:var(--gold);color:var(--dark)}.badge-sb{background:#3498db;color:var(--white)}.badge-bb{background:#9b59b6;color:var(--white)}.badge-folded{background:var(--gray-500);color:var(--white)}.badge-allin{background:var(--red);color:var(--white)}.seat-name{font-size:11px;font-weight:600;color:var(--white);text-shadow:0 1px 3px rgba(0,0,0,.8);text-align:center;max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.seat-chips{font-size:10px;color:#f0d060;text-shadow:0 1px 3px rgba(0,0,0,.9)}.seat-bet{background:#0000008c;color:#f5d77b;font-size:11px;font-weight:700;padding:2px 8px;border-radius:8px;margin-top:3px;text-shadow:0 1px 2px rgba(0,0,0,.5)}.seat-cards{display:flex;gap:2px;margin-top:3px;flex-wrap:nowrap;justify-content:center}.seat-folded{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:900;color:#ffffff4d;letter-spacing:2px}.my-hand{padding:12px 16px 8px;text-align:center}.my-hand-label{font-size:12px;color:#ffffff80;margin-bottom:6px;font-weight:500}.my-hand-cards{display:flex;justify-content:center;gap:10px}.action-bar{background:var(--white);border-top:1px solid var(--gray-200);padding:12px 16px;padding-bottom:calc(12px + var(--safe-bottom));position:sticky;bottom:0;z-index:50}.action-bar-my-turn{background:linear-gradient(180deg,#fff8e1,var(--white));border-top:2px solid var(--gold)}.action-hint{text-align:center;color:var(--gold-dark);font-size:14px;font-weight:700;margin-bottom:8px;animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.action-buttons{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-start}.raise-group{display:flex;flex-direction:column;gap:6px;width:100%;background:#00000005;border-radius:var(--radius-lg);padding:10px;border:1px solid var(--gray-200)}.raise-total-label{text-align:center;font-size:13px;color:var(--gray-500)}.raise-total-label strong{color:var(--gold-dark);font-size:18px}.raise-controls{display:flex;align-items:center;gap:6px;justify-content:center}.raise-adj-btn{width:40px;height:40px;border-radius:50%;font-size:18px;font-weight:700;display:flex;align-items:center;justify-content:center;background:var(--gray-100);border:1px solid var(--gray-300);cursor:pointer;transition:all .12s ease}.raise-adj-btn:active{transform:scale(.9)}.raise-input{flex:0 0 80px;text-align:center;height:44px;font-size:20px;font-weight:700;border:2px solid var(--gold);border-radius:var(--radius-md)}.quick-raises{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}.chip-btn{min-width:44px;height:34px;padding:0 10px;border-radius:17px;border:1.5px solid var(--gray-300);background:var(--white);font-size:13px;font-weight:600;color:var(--gray-700);cursor:pointer;font-family:var(--font);transition:all .12s ease}.chip-btn:active{transform:scale(.94)}.chip-btn:hover{border-color:var(--gold);color:var(--gold-dark)}.chip-btn-active{background:var(--gold);color:var(--white);border-color:var(--gold-dark)}.raise-group .btn-action{height:40px;font-size:15px;font-weight:700;width:100%;padding:0 10px;border-radius:var(--radius-md);line-height:40px}.waiting-hint{text-align:center;color:var(--gray-700);font-size:13px;padding:10px 0;font-weight:500;background:#0000000a;border-radius:var(--radius-md);margin-top:4px;animation:hintPulse 2s ease-in-out infinite}@keyframes hintPulse{0%,to{opacity:.6}50%{opacity:1}}.chat-area{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:480px;z-index:60}.chat-toggle{position:absolute;bottom:calc(100% + 4px);right:12px;background:#000000b3;color:var(--white);border:none;padding:6px 14px;border-radius:20px;font-size:12px;cursor:pointer;font-family:var(--font)}.chat-body{background:var(--white);border-top:1px solid var(--gray-200);padding-bottom:var(--safe-bottom)}.chat-messages{max-height:160px;overflow-y:auto;padding:8px 12px}.chat-empty{color:var(--gray-300);text-align:center;font-size:13px;padding:8px}.chat-message{padding:4px 0;font-size:13px;line-height:1.4}.chat-name{font-weight:600;color:var(--gray-700);margin-right:6px}.chat-text{color:var(--gray-900)}.chat-input-row{display:flex;gap:8px;padding:8px 12px;border-top:1px solid var(--gray-200)}.chat-input{flex:1;height:38px;font-size:14px}.card{background:var(--white);border-radius:var(--radius-sm);box-shadow:var(--shadow-card);position:relative;display:inline-flex;flex-direction:column;justify-content:center;align-items:center;font-weight:700;transition:transform .2s ease;flex-shrink:0}.card:active{transform:translateY(-2px)}.card-tiny{width:30px;height:42px;font-size:9px;border-radius:3px}.card-small{width:44px;height:62px;font-size:11px;border-radius:4px}.card-medium{width:52px;height:72px;font-size:13px}.card-large{width:70px;height:98px;font-size:16px;border-radius:var(--radius-md)}.card-corner{position:absolute;display:flex;flex-direction:column;align-items:center;line-height:1}.card-corner-top{top:3px;left:4px}.card-corner-bottom{bottom:3px;right:4px;transform:rotate(180deg)}.card-rank{font-size:inherit;font-weight:700;min-width:1.2em;text-align:center}.card-suit{font-size:calc(100% - 2px)}.card-center-suit{font-size:calc(100% + 8px);opacity:.7}.card-back{background:linear-gradient(135deg,#1a237e,#283593);border:1px solid #3949ab}.card-back-pattern{width:80%;height:80%;border-radius:3px;background:repeating-linear-gradient(45deg,transparent,transparent 3px,rgba(255,255,255,.08) 3px,rgba(255,255,255,.08) 6px)}.card-empty{background:#ffffff14;border:1.5px solid rgba(255,255,255,.2);box-shadow:none;position:relative;animation:none;opacity:1}.card-empty:after{content:"";position:absolute;top:8px;right:8px;bottom:8px;left:8px;border-radius:2px;background:#ffffff0a;border:1px dashed rgba(255,255,255,.12)}.history-page{background:var(--gray-50)}.history-nav-bar{display:flex;align-items:center;padding:12px 16px;background:var(--white);border-bottom:1px solid var(--gray-200);position:sticky;top:0;z-index:50}.history-back-btn{background:none;border:none;font-size:15px;font-weight:600;color:var(--gold-dark);cursor:pointer;padding:4px 0;font-family:var(--font)}.history-nav-title{flex:1;text-align:center;font-size:16px;font-weight:700;color:var(--gray-800)}.history-nav-spacer{width:70px}.room-card-badge{font-size:11px;padding:2px 8px;border-radius:10px;font-weight:600}.badge-creator{background:#e6f7ff;color:#1890ff}.badge-joiner{background:#f6ffed;color:#52c41a}.room-card-rounds{font-size:12px;color:var(--gray-500)}.waiting-info-title{font-size:20px;font-weight:700;color:#fff;margin-bottom:12px}.round-scores{width:100%;max-width:320px;display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.round-score-row{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#ffffff1a;border-radius:8px;color:#fff;font-size:15px}.round-score-me{background:#52c41a33;border:1px solid rgba(82,196,26,.4)}.score-positive{color:#52c41a;font-weight:700}.score-negative{color:#ff4d4f;font-weight:700}.settlement-scores .round-score-row{font-size:16px;padding:12px 16px}.dissolve-vote-bar{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#ff4d4f26;border-bottom:1px solid rgba(255,77,79,.3);color:#fff;font-size:13px;flex-wrap:wrap;justify-content:center}.btn-success{background:#52c41a;color:#fff;border:none}.history-list{padding:12px 16px}.history-card{background:var(--white);border-radius:var(--radius-md);padding:14px 16px;margin-bottom:12px;box-shadow:var(--shadow-sm);cursor:pointer}.history-card-won{border-left:4px solid var(--gold)}.history-card-header{display:flex;justify-content:space-between;align-items:flex-start}.history-card-info{display:flex;flex-direction:column;gap:2px}.history-room-name{font-size:15px;font-weight:600;color:var(--gray-900)}.history-date{font-size:12px;color:var(--gray-500)}.result-badge{font-size:12px;font-weight:600;padding:3px 10px;border-radius:20px}.result-win{background:#fff8e1;color:var(--gold-dark)}.result-lose{background:var(--gray-100);color:var(--gray-500)}.history-card-detail{margin-top:12px;padding-top:12px;border-top:1px solid var(--gray-200)}.detail-section{margin-bottom:8px;font-size:13px}.detail-label{font-weight:600;color:var(--gray-700);display:block;margin-bottom:4px}.detail-winners{display:flex;flex-direction:column;gap:4px}.detail-winner{font-size:13px;color:var(--gray-900)}.detail-winner-me{color:var(--gold-dark);font-weight:700}.detail-players{display:flex;flex-wrap:wrap;gap:6px}.detail-player{background:var(--gray-100);padding:2px 10px;border-radius:12px;font-size:12px;color:var(--gray-700)}.detail-hands{display:flex;flex-direction:column;gap:2px}.detail-hand{font-size:12px;color:var(--gray-700)}.detail-value{font-size:13px;font-weight:700;color:var(--gray-900)}.history-card-expand{text-align:center;font-size:12px;color:var(--gray-500);margin-top:8px;padding-top:8px;border-top:1px solid var(--gray-100)}.history-room-code{font-size:12px;color:var(--gray-500)}.history-hand-count{font-size:12px;color:var(--gray-500);margin-right:8px}.history-net{font-size:18px;font-weight:700}.history-card-expanded{box-shadow:0 2px 12px #0000001a}.detail-hand-list{display:flex;flex-direction:column;gap:8px}.detail-hand-item{background:var(--gray-50);border-radius:6px;padding:10px 12px;margin-left:4px}.detail-hand-header{display:flex;justify-content:space-between;align-items:center}.detail-hand-index{font-size:13px;font-weight:600;color:var(--gray-700)}.detail-hand-net{font-size:15px;font-weight:700}.detail-hand-time{font-size:11px;color:var(--gray-400);margin-top:2px}.detail-hand-winners{font-size:12px;color:var(--gray-600);margin-top:4px;display:flex;flex-wrap:wrap;gap:4px}.detail-loading{text-align:center;font-size:13px;color:var(--gray-500);padding:12px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:999;padding:20px;animation:fadeIn .2s ease}.modal-content{background:var(--white);border-radius:var(--radius-xl);padding:24px 20px;max-width:340px;width:100%;text-align:center;box-shadow:var(--shadow-lg);animation:modalSlideUp .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.modal-title{font-size:22px;font-weight:800;margin-bottom:16px;color:var(--gray-900)}.modal-winners{margin-bottom:16px}.modal-winner{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--gray-100);font-size:14px}.winner-name{font-weight:600}.winner-prize{color:var(--gold-dark);font-weight:700}.modal-hand-desc{font-size:14px;color:var(--gray-700);margin-bottom:12px}.modal-community{display:flex;justify-content:center;gap:4px;margin-bottom:16px}@keyframes cardDeal{0%{opacity:0;transform:translateY(-40px) scale(.5)}to{opacity:1;transform:translateY(0) scale(1)}}.card{animation:cardDeal .3s ease forwards;opacity:0}.card:nth-child(1){animation-delay:0s}.card:nth-child(2){animation-delay:.1s}.card:nth-child(3){animation-delay:.2s}.card:nth-child(4){animation-delay:.3s}.card:nth-child(5){animation-delay:.4s}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:4px}@media (max-width: 360px){.card-small{width:36px;height:52px;font-size:10px}.card-large{width:60px;height:84px;font-size:14px}.seat{transform:translate(-50%,-50%) scale(.85)}.felt-table{min-height:340px;padding:12px}.community-cards{top:8%}.pot-display{top:calc(8% + 56px)}.code-input-box{width:36px;height:46px;font-size:18px}}@media (min-width: 481px){.app-container{border-left:1px solid var(--gray-200);border-right:1px solid var(--gray-200);box-shadow:0 0 30px #0000001a}}@media screen and (max-width: 480px){input,select,textarea{font-size:16px!important}}
