:root{--felt: #0d4d47;--felt-dark: #073430;--felt-darker: #041e1b;--bg-navy: #12122b;--bg-navy-mid: #1b1b42;--bg-navy-deep: #08081a;--table-rail: #050505;--accent: #f1c40f;--accent-soft: #f9e28c;--card-bg: #fdfdfd;--card-border: #1c1c1c;--win: #2ecc71;--loss: #e74c3c;--push: #f1c40f;--text: #f2f3fa;--text-muted: #a9acc8}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}button:focus:not(:focus-visible),a:focus:not(:focus-visible),input:focus:not(:focus-visible),[role=button]:focus:not(:focus-visible){outline:none}html,body{margin:0;padding:0}body{font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:repeating-linear-gradient(45deg,rgba(255,255,255,.035) 0px,rgba(255,255,255,.035) 1px,transparent 1px,transparent 28px),repeating-linear-gradient(-45deg,rgba(255,255,255,.035) 0px,rgba(255,255,255,.035) 1px,transparent 1px,transparent 28px),radial-gradient(circle at top,var(--bg-navy-mid) 0%,var(--bg-navy) 55%,var(--bg-navy-deep) 100%);color:var(--text);min-height:100vh;min-height:100dvh}#root{min-height:100vh;min-height:100dvh;display:flex;justify-content:center}.app{width:100%;max-width:1400px;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}:fullscreen .app{padding:0}.full-screen-state{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center;padding:24px;color:var(--text)}.spinner{width:40px;height:40px;border-radius:50%;border:3px solid rgba(47,143,216,.25);border-top-color:var(--accent);animation:spin .9s linear infinite}.spinner.error{border-top-color:var(--loss)}@keyframes spin{to{transform:rotate(360deg)}}.loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;display:flex;align-items:flex-end;justify-content:center;background:#050b14}.loading-screen-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center}.loading-screen-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,#03080e00 38%,#03080e8c 62%,#03080ef0 82%,#03080ef7)}.loading-screen-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:14px;padding-bottom:clamp(28px,7vh,64px)}.loading-screen-spinner{border-color:#f1c40f40;border-top-color:var(--accent)}.loading-screen-text{margin:0;color:#f5e6c8;font-size:.95rem;letter-spacing:.02em;text-shadow:0 2px 6px rgba(0,0,0,.6)}@media (max-width: 600px){.loading-screen-bg{object-fit:contain;object-position:top}}.demo-badge{text-align:center;background:var(--loss);color:#fff;font-size:11px;font-weight:700;letter-spacing:.05em;padding:4px}.app-footer{position:fixed;left:0;right:0;bottom:calc(6px + env(safe-area-inset-bottom,0px));z-index:5;text-align:center;font-size:.62rem;letter-spacing:.03em;color:#ffffff59;pointer-events:none}.auto-bet-indicator{position:fixed;top:calc(16px + env(safe-area-inset-top,0px));left:calc(12px + env(safe-area-inset-left,0px));z-index:60;display:flex;align-items:center;gap:6px;padding:6px 8px 6px 12px;border-radius:999px;background:#0f0f24d9;border:1px solid var(--accent);box-shadow:0 3px 10px #0006,0 0 8px 1px #f1c40f66}@media (max-width: 600px){.auto-bet-indicator{top:auto;bottom:calc(28px + env(safe-area-inset-bottom,0px));left:calc(10px + env(safe-area-inset-left,0px))}}.auto-bet-indicator-label{font-size:.66rem;font-weight:700;color:var(--accent-soft);white-space:nowrap}.auto-bet-indicator-stop{padding:4px 10px;border-radius:999px;border:1px solid var(--loss);background:#e539352e;color:var(--loss);font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.02em;cursor:pointer}.auto-bet-indicator-stop:active{transform:scale(.94)}.matchup-ticker{position:fixed;top:calc(64px + env(safe-area-inset-top,0px));left:12px;right:12px;z-index:45;display:flex;justify-content:center;pointer-events:none}.matchup-ticker-pill{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:5px 14px;border-radius:999px;background:#0f0f24bf;border:1px solid var(--accent);color:var(--text);font-size:.72rem;font-weight:700;text-align:center;box-shadow:0 3px 10px #0006}.matchup-ticker-pill.win{border-color:var(--win);color:var(--win)}.matchup-ticker-pill.lose{border-color:var(--loss);color:var(--loss)}.matchup-ticker-pill.push{border-color:var(--push);color:var(--push)}.spectate-hint{position:fixed;bottom:28px;left:12px;right:12px;z-index:55;display:flex;justify-content:center;pointer-events:none}.spectate-hint-pill{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:5px 14px;border-radius:999px;background:#0f0f24bf;border:1px solid var(--accent);color:var(--text);font-size:.72rem;font-weight:700;text-align:center;box-shadow:0 3px 10px #0006}.icon-btn{background:none;border:1px solid rgba(47,143,216,.4);border-radius:8px;font-size:1rem;padding:4px 8px;cursor:pointer;color:var(--text)}.toggle-switch{display:flex;align-items:center;gap:6px;background:none;border:none;padding:10px 4px;min-height:44px;cursor:pointer}.toggle-switch-track{position:relative;width:42px;height:24px;border-radius:999px;background:#00000059;border:1px solid rgba(47,143,216,.4);display:flex;align-items:center;padding:2px;transition:background-color .2s ease,border-color .2s ease}.toggle-switch.on .toggle-switch-track{background:var(--win);border-color:var(--win)}.toggle-switch-knob{width:18px;height:18px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;font-size:.62rem;transform:translate(0);transition:transform .2s ease}.toggle-switch.on .toggle-switch-knob{transform:translate(18px)}.toggle-switch-label{font-size:.68rem;font-weight:800;letter-spacing:.04em;min-width:20px;color:var(--text-muted)}.toggle-switch.on .toggle-switch-label{color:var(--win)}.table-wrap{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:10px;padding:2px 10px calc(28px + env(safe-area-inset-bottom,0px))}.rect-table-wrap{flex:1 1 auto;min-height:0;min-width:0;display:flex;align-items:center;justify-content:center;padding:4px;container-type:size;container-name:table-slot}.rect-table{position:relative;width:min(820px,100cqw,170cqh);aspect-ratio:2 / 1;container-type:inline-size;container-name:table}.felt-rect{position:absolute;top:12%;right:6%;bottom:12%;left:6%;background:radial-gradient(ellipse 65% 45% at 50% 12%,rgba(255,255,255,.22),transparent 68%),radial-gradient(ellipse at 50% 30%,#13615a,#0d4d47 55%,#073430);border:10px solid var(--table-rail);border-top-color:#2c2c2c;outline:2px solid rgba(255,255,255,.1);outline-offset:-12px;border-radius:28px;box-shadow:inset 0 0 40px #0000008c,inset 0 4px 10px #ffffff14,0 8px 22px #0000008c,0 0 50px #ffffff0f}.felt-rect:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;box-shadow:inset 0 0 40px #00000073,inset 0 4px 10px #ffffff14,0 0 24px #2f8fd899;opacity:0;transition:opacity .3s ease;pointer-events:none}.rect-table.is-dealing .felt-rect:after{opacity:1}.pot-stack{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:6px;z-index:2}.pot-badge{width:clamp(64px,20cqw,110px);height:auto;object-fit:contain;filter:drop-shadow(0 2px 6px rgba(0,0,0,.5));pointer-events:none}.pot-chip-pile{position:relative;width:clamp(34px,10cqw,50px);height:clamp(38px,12cqw,56px)}.pot-chip{position:absolute;left:50%;width:clamp(34px,10cqw,50px);height:clamp(34px,10cqw,50px);border-radius:50%;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5));pointer-events:none}.pot-chip--1{bottom:0;transform:translate(-50%) rotate(-4deg)}.pot-chip--2{bottom:6px;transform:translate(-50%) rotate(5deg)}.pot-chip--3{bottom:12px;transform:translate(-50%) rotate(-3deg)}.pot-stack-amount{position:relative;overflow:hidden;background:radial-gradient(circle at 50% -20%,#3c320ae6,#0000008c 70%);border:1px solid var(--accent);border-radius:999px;padding:3px 12px;font-size:.75rem;font-weight:800;color:var(--accent-soft);white-space:nowrap;box-shadow:0 0 8px 1px #f1c40f8c,0 0 16px 3px #f1c40f33,inset 0 1px #ffffff59}.pot-stack-amount:before{content:"";position:absolute;top:0;left:8%;right:8%;height:45%;background:linear-gradient(180deg,rgba(255,255,255,.35),transparent);border-radius:999px;pointer-events:none}.seat-slot{position:absolute;display:flex;justify-content:center;z-index:3}.seat-slot--top-1{top:0;left:25%;transform:translate(-50%)}.seat-slot--top-2{top:0;left:75%;transform:translate(-50%)}.seat-slot--bottom-1{bottom:0;left:25%;transform:translate(-50%)}.seat-slot--bottom-2{bottom:0;left:75%;transform:translate(-50%)}.seat-slot--left-1{top:30%;left:0;transform:translateY(-50%)}.seat-slot--left-2{top:70%;left:0;transform:translateY(-50%)}.seat-slot--right-1{top:30%;right:0;transform:translateY(-50%)}.seat-slot--right-2{top:70%;right:0;transform:translateY(-50%)}.seat{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;width:clamp(52px,16cqw,78px)}.seat--empty{opacity:.45}.seat-photo-stack{position:relative;display:flex;align-items:center;justify-content:center}.seat-avatar{position:relative;width:clamp(38px,12cqw,52px);height:clamp(38px,12cqw,52px);border-radius:50%;background:radial-gradient(circle at 35% 30%,#2a2a44,#14141f 75%);border:2px solid rgba(255,255,255,.15);box-shadow:0 2px 5px #00000080;display:flex;align-items:center;justify-content:center;font-size:clamp(1rem,5cqw,1.4rem);transition:border-color .2s ease,box-shadow .2s ease}.seat--me .seat-avatar{border-color:#22d3ee;box-shadow:0 0 10px #22d3eea6}.seat--me .seat-cards-overlay{filter:drop-shadow(0 0 4px rgba(34,211,238,.85)) drop-shadow(0 0 1px rgba(34,211,238,.95))}.seat--active .seat-avatar{border-color:var(--win);box-shadow:0 0 8px 1px #2ecc71bf,0 0 18px 4px #2ecc7159}.seat--winner .seat-avatar{border-color:var(--push)}.seat--winner .seat-avatar:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:50%;box-shadow:0 0 10px 2px #f1c40fe6,0 0 22px 6px #f1c40f80;opacity:0;animation:winner-glow-pulse 1.1s ease-in-out infinite;pointer-events:none;will-change:opacity;transform:translateZ(0)}@keyframes winner-glow-pulse{0%,to{opacity:.4}50%{opacity:1}}.seat-empty-card{width:clamp(56px,18cqw,82px);height:clamp(56px,18cqw,82px);object-fit:contain;pointer-events:none;filter:drop-shadow(0 2px 6px rgba(241,196,15,.45))}.seat--clickable{opacity:1;cursor:pointer}.seat-empty-card--pulsing{will-change:transform,opacity;transform:translateZ(0);animation:seat-empty-card-bob 1.2s ease-in-out infinite}@keyframes seat-empty-card-bob{0%,to{transform:translateZ(0) scale(1);opacity:.9}50%{transform:translate3d(0,4px,0) scale(1.03);opacity:1}}.seat-dealer-badge{position:absolute;top:-4px;left:50%;transform:translate(-50%);z-index:4;width:18px;height:18px;display:flex;align-items:flex-start;justify-content:center;padding-top:2px;clip-path:polygon(50% 100%,100% 62%,82% 0%,18% 0%,0% 62%);background:linear-gradient(180deg,#ff6f61,#e53935 55%,#8f1f1c);color:#fff;font-size:.6rem;font-weight:900;line-height:1;box-shadow:0 0 5px 1px #e53935cc,0 0 12px 3px #e5393566}.seat-you-badge{position:absolute;top:16px;right:-8px;z-index:4;padding:1px 6px;border-radius:999px;background:linear-gradient(180deg,#67e8f9,#22d3ee 55%,#0e7490);color:#052a30;font-size:.58rem;font-weight:900;letter-spacing:.02em;text-transform:uppercase;line-height:1.4;box-shadow:0 0 5px 1px #22d3eecc,0 0 12px 3px #22d3ee66}.seat-cards-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:2px;z-index:3}.seat-cards-overlay .card-slot{width:clamp(16px,5.5cqw,24px);height:clamp(23px,8cqw,34px);margin:0}.bandar-avatar-ring{position:absolute;top:50%;left:50%;width:138%;height:auto;transform:translate(-48.9%,-59%);pointer-events:none;z-index:2}.seat-name{font-size:.62rem;color:var(--text-muted);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.seat-name--empty{font-style:italic;white-space:normal;line-height:1.15}.seat-meta{display:flex;align-items:center;gap:5px;flex-wrap:wrap;justify-content:center}.seat-balance{display:inline-block;font-size:.65rem;font-weight:700;color:var(--accent-soft);text-align:center;background:#00000059;border:1px solid rgba(241,196,15,.6);border-radius:999px;padding:1px 8px;box-shadow:0 0 4px #f1c40f59,inset 0 1px #ffffff40}.seat-settled-meta{display:flex;align-items:center;gap:5px;flex-wrap:wrap;justify-content:center}.seat-score{font-size:.65rem;color:var(--text-muted);text-align:center}.seat-bet-chip{background:linear-gradient(160deg,#13615a,#073430);border:1px solid var(--accent);border-radius:999px;padding:2px 8px;font-size:.62rem;font-weight:700}.seat-result{font-size:.66rem;font-weight:800;padding:2px 8px;border-radius:999px}.seat-result.win{background:#2ecc7133;color:var(--win)}.seat-result.lose{background:#e74c3c33;color:var(--loss)}.seat-result.push{background:#f1c40f33;color:var(--push)}.result-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:flex-start;justify-content:center;pointer-events:none;background:#00000040;border-radius:28px}.result-overlay-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;padding:clamp(14px,5cqw,28px) clamp(20px,7cqw,42px);border-radius:20px;background:radial-gradient(circle at 50% 20%,#203a3efb,#080e11fb 75%);box-shadow:0 10px 30px #00000080,inset 0 1px #ffffff26;max-height:100%;overflow-y:auto;pointer-events:auto;margin:auto}.result-overlay.win .result-overlay-card{border:2px solid var(--win);box-shadow:0 0 30px #2ecc718c,0 10px 30px #00000080,inset 0 1px #ffffff26}.result-overlay.lose .result-overlay-card{border:2px solid var(--loss)}.result-overlay.push .result-overlay-card{border:2px solid var(--push)}.result-overlay-title-row{display:flex;align-items:center;justify-content:center;gap:10px}.result-title-dealer-badge{display:inline-flex;align-items:center;justify-content:center;padding:3px 10px;border-radius:999px;background:linear-gradient(135deg,#fcd34d,#f59e0b,#d97706);color:#1a1a1a;font-size:clamp(.68rem,2.4cqw,.9rem);font-weight:900;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 0 12px #f59e0bbf,0 2px 4px #0006;border:1px solid rgba(255,255,255,.4);will-change:transform,opacity;transform:translateZ(0);animation:dealer-badge-glow 2s ease-in-out infinite alternate}@keyframes dealer-badge-glow{0%{opacity:.88;transform:translateZ(0) scale(.97)}to{opacity:1;transform:translateZ(0) scale(1.03)}}.result-overlay-title{font-size:clamp(1.1rem,6cqw,2rem);font-weight:900;letter-spacing:.03em}.result-overlay.win .result-overlay-title{color:var(--win)}.result-overlay.lose .result-overlay-title{color:var(--loss)}.result-overlay.push .result-overlay-title{color:var(--push)}.result-overlay-amount{font-size:clamp(.85rem,3.4cqw,1.15rem);font-weight:700;color:var(--text)}.result-overlay-matchup{display:flex;align-items:center;justify-content:center;gap:clamp(10px,4cqw,22px);width:100%}@media (max-width: 600px){.result-overlay-matchup{flex-direction:column;gap:10px}}.result-overlay-side{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}.result-overlay-side--me .result-overlay-cards{filter:drop-shadow(0 0 5px rgba(34,211,238,.75))}.result-overlay-name-wrap{display:flex;align-items:center;justify-content:center;gap:6px;max-width:100%}.result-side-dealer-badge{display:inline-flex;align-items:center;justify-content:center;padding:1px 6px;border-radius:999px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#000;font-size:clamp(.52rem,1.8cqw,.65rem);font-weight:800;letter-spacing:.04em;text-transform:uppercase;box-shadow:0 1px 3px #00000059;flex-shrink:0}.result-overlay-name{max-width:clamp(80px,24cqw,140px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(.7rem,2.6cqw,.85rem);font-weight:700;color:var(--accent-soft)}.result-overlay-side--me .result-overlay-name{color:#67e8f9}.result-overlay-vs{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:clamp(24px,7cqw,32px);height:clamp(24px,7cqw,32px);border-radius:50%;background:radial-gradient(circle at 35% 30%,#203a3ef2,#080e11f2 75%);border:1.5px solid var(--accent);box-shadow:0 0 8px 1px #f1c40f80,inset 0 1px #fff3;font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.02em;color:var(--accent-soft)}@media (max-width: 600px){.result-overlay-vs{transform:rotate(90deg)}}.result-overlay-cards{display:flex;gap:6px;margin:4px 0}.result-overlay-cards .card-slot{width:clamp(44px,13cqw,78px);height:clamp(62px,18cqw,110px)}.result-overlay-score{font-size:clamp(.75rem,3cqw,.95rem);font-weight:700;color:var(--text-muted)}.result-overlay-fee{margin-top:-4px;font-size:clamp(.62rem,2.4cqw,.75rem);font-weight:600;color:var(--text-muted)}.confetti-particle{position:absolute;top:50%;left:50%;font-size:1.2rem;pointer-events:none;will-change:transform,opacity;transform:translateZ(0)}.result-overlay-fx{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none}.chip-burst-anchor{position:absolute;left:50%;top:14%;transform:translate(-50%);width:100%;height:0;overflow:visible}.chip-burst{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;display:flex;align-items:center;justify-content:center;z-index:30;overflow:visible}.chip-burst-particle{position:absolute;width:clamp(18px,5.5cqw,28px);height:clamp(18px,5.5cqw,28px);border-radius:50%;object-fit:contain;filter:drop-shadow(0 4px 6px rgba(0,0,0,.55));will-change:transform,opacity;transform:translateZ(0);backface-visibility:hidden}.chip-flight{position:absolute;top:0;left:0;width:clamp(20px,6cqw,30px);height:clamp(20px,6cqw,30px);margin-left:calc(-1*clamp(10px,3cqw,15px));margin-top:calc(-1*clamp(10px,3cqw,15px));border-radius:50%;object-fit:contain;pointer-events:none;z-index:25;filter:drop-shadow(0 4px 6px rgba(0,0,0,.5))}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;background:#ffffff80;padding:16px}.modal-card{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:340px;margin:auto;padding:24px 22px;border-radius:20px;background:#0f0f24f7;border:2px solid var(--accent);box-shadow:0 12px 40px #0009}.modal-message{margin:0;text-align:center;font-size:1rem;font-weight:700;color:var(--text)}.status-badge{width:clamp(70px,22vw,120px);height:auto;object-fit:contain;pointer-events:none}.waiting-badge{position:relative;width:clamp(70px,22vw,120px);aspect-ratio:1073 / 1047}.waiting-badge .status-badge{width:100%;height:100%;display:block}.waiting-badge-hand{position:absolute;top:35%;left:50.5%;width:3.4%;height:17%;transform-origin:50% 100%;transform:translate(-50%,-100%) rotate(0);border-radius:3px;background:linear-gradient(180deg,#fff3c4,#f6c945,#e8a317 70%,#a5670c);box-shadow:0 0 4px #f1c40fd9;will-change:transform;animation:waiting-hand-spin 3s linear infinite}@keyframes waiting-hand-spin{0%{transform:translate(-50%,-100%) rotate(0)}to{transform:translate(-50%,-100%) rotate(360deg)}}.countdown-ring{position:relative;width:clamp(56px,18vw,88px);height:clamp(56px,18vw,88px)}.countdown-ring img{width:100%;height:100%;object-fit:contain;pointer-events:none}.countdown-ring-number{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:clamp(1.1rem,5vw,1.6rem);color:var(--accent-soft);font-variant-numeric:tabular-nums}.rules-modal-text{margin:0;text-align:center;font-size:.85rem;line-height:1.6;color:var(--text-muted)}.history-list{width:100%;max-height:320px;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.history-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:10px;background:#ffffff0a;border:1px solid rgba(241,196,15,.2)}.history-row-main{min-width:0;display:flex;flex-direction:column;gap:2px}.history-row-room{font-size:.8rem;font-weight:800;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-row-vs{font-size:.68rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-row-side{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:2px}.history-row-outcome{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.02em}.history-row-outcome--win{color:var(--win)}.history-row-outcome--loss{color:var(--loss)}.history-row-outcome--push{color:var(--push)}.history-row-bet{font-size:.65rem;color:var(--text-muted)}.orientation-picker{display:flex;gap:16px;margin:6px 0}.orientation-option{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:12px;border-radius:14px;border:2px solid rgba(47,143,216,.3);background:#00000040;color:var(--text-muted);font-size:.8rem;font-weight:700;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.orientation-option.selected{border-color:var(--accent);background:#2f8fd829;color:var(--accent-soft)}.orientation-icon{display:block;border:2.5px solid currentColor;border-radius:6px;position:relative}.room-type-picker{gap:8px}.room-type-picker .orientation-option{padding:10px 8px;font-size:.75rem}.orientation-icon:after{content:"";position:absolute;background:currentColor;border-radius:2px}.orientation-icon--portrait{width:34px;height:54px}.orientation-icon--portrait:after{width:12px;height:3px;top:6px;left:50%;transform:translate(-50%)}.orientation-icon--landscape{width:54px;height:34px}.orientation-icon--landscape:after{width:3px;height:12px;right:6px;top:50%;transform:translateY(-50%)}.card-slot{width:clamp(22px,7cqw,34px);height:clamp(31px,10cqw,48px);perspective:480px;flex-shrink:0;will-change:transform,opacity;transform:translateZ(0)}.playing-card-flip{position:relative;width:100%;height:100%;transform-style:preserve-3d;will-change:transform}.playing-card-face{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;border-radius:5px;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 2px 4px #00000059}.playing-card-front{background:var(--card-bg);color:#111;border:1px solid var(--card-border);font-weight:700;font-size:.6rem}.playing-card-front.red{color:#c0392b}.playing-card-front .suit{font-size:.68rem;line-height:1}.playing-card-back{background:linear-gradient(135deg,#13615a,#073430);border:1px solid var(--accent);transform:rotateY(180deg)}.playing-card-back .card-back{color:var(--accent-soft);font-size:.48rem;font-weight:800;letter-spacing:.04em}.hidden-card-back{position:static;width:100%;height:100%;background:linear-gradient(135deg,#13615a,#073430);border:1px solid var(--accent)}.hidden-card-back .card-back{color:var(--accent-soft);font-size:.48rem;font-weight:800;letter-spacing:.04em}.card-slot--revealable{position:relative;cursor:pointer;filter:drop-shadow(0 0 6px var(--accent));will-change:transform,opacity;transform:translateZ(0);animation:reveal-pulse 1.1s ease-in-out infinite}.seat-cards-overlay .card-slot--revealable{width:clamp(24px,8cqw,34px);height:clamp(34px,11.5cqw,48px);z-index:6}.card-slot--revealable:before{content:"";position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px}.tap-hint{position:absolute;top:-14px;left:50%;transform:translate3d(-50%,0,0);padding:1px 6px;border-radius:999px;background:linear-gradient(180deg,#fff3c4,#f6c945 45%,#c98a12);color:#2a1d00;font-size:.5rem;font-weight:900;letter-spacing:.06em;line-height:1.5;white-space:nowrap;box-shadow:0 0 6px 1px #f1c40fcc;animation:tap-hint-bob .9s ease-in-out infinite;pointer-events:none;will-change:transform}@keyframes tap-hint-bob{0%,to{transform:translate3d(-50%,0,0)}50%{transform:translate3d(-50%,-4px,0)}}@keyframes reveal-pulse{0%,to{transform:translateZ(0) scale(1);opacity:.92}50%{transform:translateZ(0) scale(1.06);opacity:1}}.action-error{color:var(--loss);font-size:.8rem;text-align:center}.auto-bet-hint{margin:0;text-align:center;font-size:.72rem;color:var(--win)}.reveal-showcase-cards{display:flex;gap:clamp(8px,3vw,14px);margin:6px 0 2px}.reveal-showcase-cards .card-slot{width:clamp(64px,19vw,96px);height:clamp(90px,26.8vw,135px)}.reveal-showcase-cards .playing-card-front{font-size:clamp(1.1rem,4.5vw,1.6rem)}.reveal-showcase-cards .playing-card-front .suit{font-size:clamp(1.2rem,5vw,1.8rem)}.reveal-showcase-hidden{position:relative;padding:0;border:none;background:none;cursor:pointer;filter:drop-shadow(0 0 8px var(--accent));will-change:transform,opacity;transform:translateZ(0);animation:reveal-pulse 1.1s ease-in-out infinite}.reveal-showcase-hidden .card-back{font-size:clamp(.9rem,3.5vw,1.2rem)}.reveal-showcase-hidden .tap-hint{top:-18px;padding:3px 12px;font-size:clamp(.62rem,2.4vw,.78rem)}.reveal-showcase-score{font-size:clamp(.9rem,3.6vw,1.15rem);font-weight:800;color:var(--accent-soft)}.side-icon-controls{position:fixed;top:calc(16px + env(safe-area-inset-top,0px));right:calc(12px + env(safe-area-inset-right,0px));z-index:60;display:flex;flex-direction:row;gap:10px}@media (max-width: 480px){.side-icon-controls{gap:6px;top:calc(10px + env(safe-area-inset-top,0px));right:calc(8px + env(safe-area-inset-right,0px))}.side-icon-btn{width:36px;height:36px;font-size:.95rem}}.side-icon-btn{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;cursor:pointer;background:radial-gradient(circle at 35% 30%,#203a3ef2,#080e11f2 75%);border:2px solid var(--accent);color:#fff;box-shadow:0 4px 10px #0006,0 0 8px 1px #f1c40f80,inset 0 1px #fff3;transition:transform .08s ease}.side-icon-btn:active{transform:scale(.92)}.side-icon-btn--sound,.side-icon-btn--fullscreen{box-shadow:0 4px 10px #0006,0 0 8px 1px #f1c40f80,0 0 12px 2px #38bdf873,inset 0 1px #fff3}.side-icon-btn--info{box-shadow:0 4px 10px #0006,0 0 8px 1px #f1c40f80,0 0 12px 2px #f59e0b73,inset 0 1px #fff3}.side-icon-btn--leave{box-shadow:0 4px 10px #0006,0 0 8px 1px #f1c40f80,0 0 12px 2px #ef444473,inset 0 1px #fff3}.side-icon-btn--history{box-shadow:0 4px 10px #0006,0 0 8px 1px #f1c40f80,0 0 12px 2px #7c3aed73,inset 0 1px #fff3}.icon{display:inline-flex;width:20px;height:20px}.icon svg{width:100%;height:100%}.icon svg path{stroke:currentColor;stroke-width:.7px}.side-icon-btn .icon{filter:drop-shadow(0 1px 1px rgba(0,0,0,.35))}.chip-row{display:flex;flex-wrap:wrap;gap:clamp(6px,2vw,12px);justify-content:center}.chip{width:clamp(42px,8vw,60px);height:clamp(42px,8vw,60px);flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background:none;border:none;padding:0;cursor:pointer;filter:drop-shadow(0 4px 0 rgba(0,0,0,.4)) drop-shadow(0 5px 8px rgba(0,0,0,.35));transition:transform .08s ease,filter .08s ease}.chip-img{width:100%;height:100%;border-radius:50%;object-fit:contain;pointer-events:none}.chip-label{color:var(--text);font-size:clamp(.58rem,1.8vw,.72rem);font-weight:800}.chip-label--hidden{display:none}.chip:active:not(:disabled){transform:translateY(3px);filter:drop-shadow(0 1px 0 rgba(0,0,0,.4)) drop-shadow(0 2px 4px rgba(0,0,0,.3))}.chip.selected .chip-img{outline:3px solid var(--accent-soft);outline-offset:2px;border-radius:50%;box-shadow:0 0 10px 2px #f1c40fb3}.chip:disabled{opacity:.4;cursor:not-allowed}.chip--stackable{position:relative}.chip--stackable:after{content:"+";position:absolute;top:-3px;right:-3px;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#fff3c4,#e8a317);color:#2a1d00;font-size:.75rem;font-weight:900;line-height:1;box-shadow:0 1px 3px #00000080}.chip--stackable:disabled:after{display:none}.bet-modal-group{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;min-width:0}.app.orientation-horizontal .modal-card--bet{flex-direction:row;align-items:flex-start;max-width:min(720px,96%);padding:14px 18px}.app.orientation-horizontal .bet-modal-group{flex:1 1 0;gap:8px}.app.orientation-horizontal .modal-card--bet .countdown-ring{width:48px;height:48px}.app.orientation-horizontal .history-list{max-height:170px}@media (max-height: 520px) and (orientation: landscape){.modal-card--bet{flex-direction:row;align-items:flex-start;max-width:min(720px,96vw);padding:14px 18px}.bet-modal-group{flex:1 1 0;gap:8px}.modal-card--bet .countdown-ring{width:48px;height:48px}.history-list{max-height:170px}}.bet-stack{width:100%;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 14px 12px;border-radius:16px;background:radial-gradient(circle at 50% 20%,#203a3ef2,#080e11f2 75%);border:1.5px solid rgba(241,196,15,.45);box-shadow:inset 0 1px #ffffff1f;transition:border-color .15s ease,box-shadow .15s ease}.bet-stack--active{border-color:var(--accent);box-shadow:0 0 12px 2px #f1c40f66,inset 0 1px #ffffff1f}.bet-stack-label{font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.bet-stack-total{font-size:clamp(1.4rem,6vw,1.9rem);font-weight:900;color:var(--accent-soft);font-variant-numeric:tabular-nums;text-shadow:0 0 10px rgba(241,196,15,.45);line-height:1.1}.bet-stack-limits{font-size:.66rem;color:var(--text-muted)}.bet-stack-chips{min-height:30px;margin-top:6px;display:flex;flex-wrap:wrap;justify-content:center;gap:6px}.bet-stack-empty{font-size:.7rem;color:var(--text-muted);font-style:italic}.bet-stack-chip{display:inline-flex;align-items:center;gap:3px;padding:2px 7px 2px 3px;border-radius:999px;background:#00000059;border:1px solid rgba(241,196,15,.5)}.bet-stack-chip-img{width:22px;height:22px;border-radius:50%;object-fit:contain}.bet-stack-chip-count{font-size:.7rem;font-weight:800;color:var(--accent-soft);font-variant-numeric:tabular-nums}.bet-stack-actions{display:flex;gap:10px}.bet-stack-btn{padding:6px 16px;font-size:.78rem}.primary-btn-amount{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:999px;background:#00000040;font-size:.8em;font-variant-numeric:tabular-nums}.action-row{display:flex;gap:12px}.action-row .primary-btn,.action-row .secondary-btn{flex:1}.primary-btn,.secondary-btn{position:relative;overflow:hidden;flex-shrink:0;padding:clamp(10px,2.4vw,17px) clamp(12px,3vw,20px);border-radius:16px;border:none;font-weight:800;font-size:clamp(.85rem,2.6vw,1.05rem);letter-spacing:.02em;white-space:nowrap;cursor:pointer;transition:transform .08s ease,box-shadow .08s ease}.primary-btn:before,.secondary-btn:before{content:"";position:absolute;top:3px;left:6%;right:6%;height:42%;background:linear-gradient(180deg,rgba(255,255,255,.4),transparent);border-radius:999px;pointer-events:none}.primary-btn{background:linear-gradient(180deg,var(--accent-soft) 0%,var(--accent) 55%,#8a6a00 100%);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.6);border:2px solid #c0392b;box-shadow:0 5px #6b4e00,0 9px 18px #0006,0 0 16px 2px #f1c40f80}.primary-btn:active:not(:disabled){transform:translateY(4px);box-shadow:0 1px #6b4e00,0 3px 8px #0000004d,0 0 10px 1px #f1c40f66}.primary-btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.secondary-btn{background:linear-gradient(180deg,#e0685c,#c0392b 55%,#7b241c);color:#fff;border:2px solid var(--accent);box-shadow:0 5px #5c1811,0 9px 18px #00000059,0 0 16px 2px #e0685c80}.secondary-btn:active{transform:translateY(4px);box-shadow:0 1px #5c1811,0 3px 8px #00000040,0 0 10px 1px #e0685c66}.dealer-style-btn{background:radial-gradient(circle at 50% 50%,#203a3ef2,#080e11f2 75%);border:2px solid var(--accent);color:var(--accent-soft);text-shadow:0 1px 1px rgba(0,0,0,.3);box-shadow:0 0 10px 2px #f1c40f73,inset 0 1px #fff3}.dealer-style-btn:active:not(:disabled){transform:translateY(2px);box-shadow:0 0 6px 1px #f1c40f66,inset 0 1px #ffffff26}.dealer-style-btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.bandar-capacity-note{margin:0;text-align:center;font-size:.72rem;color:var(--push)}.lobby{width:100%;box-sizing:border-box;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:24px 16px}@media (max-width: 600px){.lobby{justify-content:flex-start;padding-top:32px}}.lobby-header{text-align:center}.lobby-title{margin:0 0 6px;font-size:clamp(1.6rem,6vw,2.2rem);font-weight:900;color:var(--accent-soft);letter-spacing:.02em}.lobby-subtitle{margin:0;color:var(--text-muted);font-size:.9rem}.lobby-private-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.room-list-status{margin:0;text-align:center;color:var(--text-muted);font-size:.85rem}.room-list-loading-wrap{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:200px;padding:24px}.room-list-spinner{width:34px;height:34px;border-width:3px}.room-table-wrap{width:100%;max-width:640px;max-height:360px;overflow:auto;border-radius:14px;border:1px solid rgba(241,196,15,.25)}.room-table{width:100%;border-collapse:collapse;font-size:.78rem;white-space:nowrap}.room-table thead th{position:sticky;top:0;background:#141414f2;color:var(--text-muted);font-size:.62rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase;text-align:left;padding:8px 10px;border-bottom:1px solid rgba(241,196,15,.25)}.room-table tbody td{padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.06);color:var(--text)}.room-table tbody tr:last-child td{border-bottom:none}.room-table tbody tr:hover{background:#ffffff0a}.room-table-name{font-weight:800}.room-table-nums{font-variant-numeric:tabular-nums}.room-type-badge{padding:1px 8px;border-radius:999px;font-size:.6rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.room-type-badge--small{background:#2ecc712e;color:var(--win)}.room-type-badge--medium{background:#f1c40f2e;color:var(--accent)}.room-type-badge--large{background:#e74c3c2e;color:var(--loss)}.room-table-play{padding:6px 14px;font-size:.75rem}@media (max-width: 600px){.room-table-col--type{display:none}.room-table{font-size:.72rem}.room-table thead th,.room-table tbody td{padding:7px 8px}}.pin-input{width:100%;max-width:220px;padding:12px 14px;border-radius:12px;border:2px solid var(--accent);background:#ffffff0f;color:var(--text);font-size:1.1rem;font-weight:700;letter-spacing:.1em;text-align:center}.pin-input::placeholder{color:var(--text-muted);letter-spacing:normal;font-weight:400}.room-code-display{font-size:clamp(1.6rem,8vw,2.4rem);font-weight:900;letter-spacing:.15em;color:var(--accent-soft);background:#ffffff0f;border:2px dashed var(--accent);border-radius:12px;padding:10px 20px}@media (orientation: landscape) and (min-width: 520px){.table-wrap{flex-direction:row;align-items:stretch;gap:16px;padding:8px 16px}.rect-table-wrap{flex:1 1 auto;min-width:0}}@media (min-width: 700px){.app{border-left:1px solid rgba(47,143,216,.25);border-right:1px solid rgba(47,143,216,.25)}}@media (max-width: 600px){.app.orientation-vertical .rect-table{aspect-ratio:3 / 5;width:min(470px,100cqw,87cqh)}.app.orientation-vertical .seat-slot--top-1,.app.orientation-vertical .seat-slot--left-1,.app.orientation-vertical .seat-slot--left-2,.app.orientation-vertical .seat-slot--bottom-1{left:3%;right:auto}.app.orientation-vertical .seat-slot--top-2,.app.orientation-vertical .seat-slot--right-1,.app.orientation-vertical .seat-slot--right-2,.app.orientation-vertical .seat-slot--bottom-2{right:3%;left:auto}.app.orientation-vertical .seat-slot--top-1,.app.orientation-vertical .seat-slot--top-2,.app.orientation-vertical .seat-slot--left-1,.app.orientation-vertical .seat-slot--right-1,.app.orientation-vertical .seat-slot--left-2,.app.orientation-vertical .seat-slot--right-2,.app.orientation-vertical .seat-slot--bottom-1,.app.orientation-vertical .seat-slot--bottom-2{transform:none}.app.orientation-vertical .seat-slot--top-1,.app.orientation-vertical .seat-slot--top-2{top:8%;bottom:auto}.app.orientation-vertical .seat-slot--left-1,.app.orientation-vertical .seat-slot--right-1{top:35%;bottom:auto;transform:translateY(-50%)}.app.orientation-vertical .seat-slot--left-2,.app.orientation-vertical .seat-slot--right-2{top:65%;bottom:auto;transform:translateY(-50%)}.app.orientation-vertical .seat-slot--bottom-1,.app.orientation-vertical .seat-slot--bottom-2{bottom:8%;top:auto}}@media (max-width: 600px) and (orientation: portrait){.app.orientation-horizontal{position:fixed;top:0;left:0;width:100vh;height:100vw;min-height:100vw;max-width:none;transform:rotate(90deg) translateY(-100%);transform-origin:top left;overflow-y:auto}.app.orientation-horizontal{width:100dvh;height:100dvw;min-height:100dvw}.app.orientation-horizontal .table-wrap{flex-direction:row;align-items:stretch;gap:16px;padding:8px 16px}.app.orientation-horizontal .rect-table-wrap{flex:1 1 auto;min-width:0}.app.orientation-horizontal .result-overlay-card{gap:4px;padding:8px 14px}.app.orientation-horizontal .result-overlay-matchup{flex-direction:row;gap:clamp(8px,3cqw,18px)}.app.orientation-horizontal .result-overlay-vs{transform:none}.app.orientation-horizontal .result-overlay-title{font-size:clamp(.8rem,4cqw,1.2rem)}.app.orientation-horizontal .result-overlay-cards .card-slot{width:clamp(26px,7cqw,42px);height:clamp(37px,10cqw,60px)}.app.orientation-horizontal .result-overlay-name{font-size:.62rem}.app.orientation-horizontal .result-overlay-score{font-size:.6rem}.app.orientation-horizontal .result-overlay-vs{width:clamp(16px,4cqw,22px);height:clamp(16px,4cqw,22px);font-size:.5rem}.app.orientation-horizontal .result-title-dealer-badge{font-size:.6rem;padding:2px 6px}.app.orientation-horizontal .result-side-dealer-badge{font-size:.5rem;padding:0 4px}.app.orientation-horizontal .result-overlay-amount{font-size:clamp(.68rem,2.4cqw,.85rem)}}@media (max-width: 420px){.room-table-col--dealer{display:none}.room-table th,.room-table td{padding:6px 5px;font-size:.72rem}.room-table-play{padding:5px 10px;font-size:.72rem}}@media (max-height: 520px) and (orientation: landscape){.result-overlay-card{gap:4px;padding:8px 14px}.result-overlay-matchup{gap:clamp(8px,3cqw,18px)}.result-overlay-title{font-size:clamp(.8rem,4cqw,1.2rem)}.result-title-dealer-badge{font-size:.6rem;padding:2px 6px}.result-side-dealer-badge{font-size:.5rem;padding:0 4px}.result-overlay-cards .card-slot{width:clamp(26px,7cqw,42px);height:clamp(37px,10cqw,60px)}.result-overlay-name{font-size:.62rem}.result-overlay-score{font-size:.6rem}.result-overlay-vs{width:clamp(16px,4cqw,22px);height:clamp(16px,4cqw,22px);font-size:.5rem}.result-overlay-amount,.result-overlay-fee{font-size:clamp(.68rem,2.4cqw,.85rem)}}
