:root{--felt:#17624a;--felt-edge:#0e4433;--rail:#4a2f1d;--ink:#f4f4f0;--ink-dim:#b9c3bd;--card-bg:#fafaf6;--card-edge:#c8c8c4;--card-red:#d3212d;--card-black:#1e1e24;--back-blue:#1c285c;--back-inner:#5a6ebe;--chip:#d8b64a;--seat-size:96px;--card-w:58px;--card-h:82px}*{box-sizing:border-box}html,body{height:100%;color:var(--ink);overscroll-behavior:none;background:#0b0f0d;margin:0;font:14px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}#app{height:100%}@media (width<=719.98px){:root{--seat-size:68px;--card-w:44px;--card-h:62px}}@media (width<=359.98px){:root{--seat-size:58px;--card-w:40px;--card-h:56px}html,body,#app{overflow-x:hidden}.table-root .seat:not([data-hero=true]) .seat-plate{padding:3px 4px 4px}.table-root .seat:not([data-hero=true]) .seat-name,.table-root .seat:not([data-hero=true]) .seat-stack{font-size:10px}}.banner{top:max(10px, env(safe-area-inset-top));z-index:100;background:#0c100eeb;border-radius:999px;align-items:center;gap:10px;max-width:min(520px,100% - 24px);padding:8px 14px;font-size:12.5px;font-weight:600;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:inset 0 0 0 1px #ffffff1f,0 8px 20px #00000080}.banner[data-kind=fatal]{background:#3c1414f0;box-shadow:inset 0 0 0 1px #ff8c8c47,0 8px 20px #00000080}.banner-message{flex:auto;min-width:0}.banner-retry{font:inherit;color:#2b1a10;background:var(--chip);cursor:pointer;border:0;border-radius:999px;flex:none;padding:5px 12px;font-weight:700}.banner-retry[hidden]{display:none}.buyin-dialog{z-index:90;background:#04060599;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.buyin-dialog[hidden]{display:none}.buyin-panel{background:linear-gradient(#17221dfa,#0a0f0dfc);border-radius:16px;flex-direction:column;gap:10px;width:min(320px,100%);padding:18px;display:flex;box-shadow:inset 0 0 0 1px #ffffff1a,0 20px 50px #0000008c}.buyin-title{margin:0;font-size:15px}.buyin-wallet,.buyin-range{color:var(--ink-dim);font-size:12px}.buyin-input{width:100%;color:var(--ink);font:inherit;font-variant-numeric:tabular-nums;background:#00000047;border:1px solid #ffffff29;border-radius:10px;padding:10px}.buyin-input:disabled{opacity:.5}.buyin-reason{color:#e2a3a3;min-height:14px;font-size:11.5px}.buyin-server-error{color:#ff8a8a;font-size:11.5px;font-weight:700}.buyin-actions{gap:10px;display:flex}.buyin-actions button{min-height:40px;font:inherit;cursor:pointer;border:0;border-radius:10px;flex:1 1 0;font-weight:700}.buyin-cancel{color:var(--ink);background:#ffffff1a}.buyin-sit{color:#241b07;background:linear-gradient(#e2c358,#a5842a)}.buyin-sit:disabled,.buyin-cancel:disabled{opacity:.4;cursor:default}.summary-panel{left:50%;bottom:max(18px, calc(env(safe-area-inset-bottom) + 12px));z-index:70;background:linear-gradient(#17221df5,#0a0f0dfa);border-radius:14px;width:min(340px,100% - 24px);padding:12px 16px;position:fixed;transform:translate(-50%);box-shadow:inset 0 0 0 1px #ffffff1a,0 12px 30px #00000080}.summary-panel[hidden]{display:none}.summary-title{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:6px;font-size:11px;font-weight:700}.summary-list{flex-direction:column;gap:4px;margin:0;padding:0;font-size:13px;font-weight:600;list-style:none;display:flex}.table-root{--plate-w:calc(var(--seat-size) * 1.55);--wood-top:#7b5133;--wood-bottom:#2b1a10;--plate-bg:linear-gradient(180deg, #101b16f0, #060c0af5);background:radial-gradient(130% 95% at 50% 0,#16211c 0%,#0b0f0d 58%,#050807 100%);flex-direction:column;height:100%;min-height:0;display:flex;position:relative}.table-stage{flex:auto;place-items:center;min-height:0;padding:clamp(10px,2vw,28px);display:grid;position:relative}.table-hud{flex:none;justify-content:flex-end;gap:8px;padding:8px clamp(10px,2vw,20px) 0;display:flex}.hud-button{font:inherit;color:var(--ink);cursor:pointer;background:#0000005c;border:0;border-radius:999px;padding:6px 14px;font-size:12px;font-weight:700;box-shadow:inset 0 0 0 1px #ffffff24}.hud-button[hidden]{display:none}.stand-button{color:#f4d9d9;background:#5d2b2f8c}@media (hover:hover){.hud-button:hover{filter:brightness(1.15)}}.rail{background:linear-gradient(180deg, var(--wood-top) 0%, #55341f 26%, var(--rail) 58%, var(--wood-bottom) 100%);border-radius:50%;width:100%;max-width:1180px;height:100%;max-height:740px;padding:clamp(12px,2.1vw,26px);position:relative;box-shadow:inset 0 2px 1px #ffffff38,inset 0 -9px 20px #0000008c,0 26px 60px #0000008c}.rail:before{content:"";pointer-events:none;border-radius:50%;position:absolute;inset:calc(clamp(12px,2.1vw,26px) - 4px);box-shadow:inset 0 0 0 1px #ffffff24}.felt{background:radial-gradient(70% 72% at 50% 34%, #1e7f5d 0%, var(--felt) 48%, var(--felt-edge) 100%);border-radius:50%;height:100%;position:relative;box-shadow:inset 0 0 0 3px #00000052,inset 0 16px 36px #00000057}.felt:before{content:"";border-radius:inherit;opacity:.6;pointer-events:none;background:repeating-linear-gradient(45deg,#ffffff0d 0 1px,#0000 1px 4px),repeating-linear-gradient(-45deg,#0000000f 0 1px,#0000 1px 4px);position:absolute;inset:0}.felt:after{content:"";pointer-events:none;border:1px solid #ffffff17;border-radius:50%;position:absolute;inset:11% 7%}.table-centre{pointer-events:none;flex-direction:column;align-items:center;gap:clamp(8px,1.6vh,16px);display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.dealer{flex-direction:column;align-items:center;gap:5px;display:flex}.deck{width:calc(var(--card-w) * .62);height:calc(var(--card-h) * .62);position:relative}.deck .card{width:100%;height:100%;position:absolute;inset:0}.deck .card:first-child{transform:translate(-3px,-2px)rotate(-7deg)}.deck .card:last-child{transform:translate(2px,1px)rotate(4deg)}.dealer-label{letter-spacing:.18em;text-transform:uppercase;color:#ffffff61;font-size:9px;font-weight:600}.pot-readout{background:#00000057;border-radius:999px;align-items:center;gap:8px;padding:4px 14px 4px 5px;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffff1a}.pot-label{letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim);font-size:10px;font-weight:600}.pot{color:var(--chip);font-variant-numeric:tabular-nums;font-size:17px;font-weight:700}.empty-state{text-align:center;max-width:220px;color:var(--ink-dim);pointer-events:none;padding:6px 4px;font-size:12px;font-weight:600}.empty-state[hidden]{display:none}.board{gap:clamp(4px,.8vw,8px);display:flex}.board-slot{width:var(--card-w);height:var(--card-h);background:#00000024;border-radius:7px;position:relative;box-shadow:inset 0 0 0 1px #ffffff12}.board-slot>.card{width:100%;height:100%;position:absolute;inset:0}.card{width:var(--card-w);height:var(--card-h);filter:drop-shadow(0 2px 3px #00000073);border-radius:7px}.card .card-front,.card .card-back{position:absolute;inset:0}.card[data-facedown=true] .card-front,.card[data-facedown=false] .card-back{visibility:hidden}.card svg{width:100%;height:100%;display:block}.chip{background:radial-gradient(circle at 50% 50%, var(--chip) 0 40%, transparent 40%), conic-gradient(var(--chip) 0 12%, #8c1f26 12% 25%, var(--chip) 25% 37%, #8c1f26 37% 50%, var(--chip) 50% 62%, #8c1f26 62% 75%, var(--chip) 75% 87%, #8c1f26 87% 100%);border-radius:50%;flex:none;width:16px;height:16px;box-shadow:0 1px 2px #00000080,inset 0 0 0 1px #00000059}.seat{width:var(--plate-w);flex-direction:column;align-items:center;gap:5px;display:flex;position:absolute;transform:translate(-50%,-50%)}.seat-cards{min-height:calc(var(--card-h) * .78);justify-content:center;display:flex}.seat-cards .card{width:calc(var(--card-w) * .78);height:calc(var(--card-h) * .78)}.seat-cards .card+.card{margin-left:calc(var(--card-w) * -.34)}.seat[data-hero=true] .seat-cards .card{width:var(--card-w);height:var(--card-h)}.seat[data-hero=true] .seat-cards .card+.card{margin-left:4px}.seat-plate{appearance:none;font:inherit;color:inherit;text-align:center;cursor:default;background:var(--plate-bg);border:0;border-radius:10px;flex-direction:column;align-items:center;gap:2px;width:100%;margin:0;padding:5px 9px 6px;display:flex;position:relative;box-shadow:inset 0 0 0 1px #ffffff1a,0 6px 14px #00000073}.seat[data-clickable=true] .seat-plate{cursor:pointer;box-shadow:inset 0 0 0 1.5px #d8b64a8c,0 6px 14px #00000073}@media (hover:hover){.seat[data-clickable=true] .seat-plate:hover{filter:brightness(1.18)}}.seat-avatar{letter-spacing:.02em;width:26px;height:26px;color:var(--ink-dim);background:#ffffff1f;border-radius:50%;place-items:center;font-size:10px;font-weight:800;display:grid;overflow:hidden}.seat-avatar img{object-fit:cover;width:100%;height:100%}.seat[data-empty=true] .seat-avatar{visibility:hidden}.seat-name{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:12px;font-weight:600;overflow:hidden}.seat-stack{color:var(--chip);font-variant-numeric:tabular-nums;font-size:12px;font-weight:700}.seat-sitting-out{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-dim);font-size:10px;font-weight:600;display:none}.seat[data-away=true] .seat-sitting-out{display:block}.seat-joining{letter-spacing:.06em;text-transform:uppercase;color:var(--chip);font-size:10px;font-weight:600;display:none}.seat[data-joining=true] .seat-joining{display:block}.seat[data-joining=true] .seat-stack{display:none}.seat[data-empty=true] .seat-plate{background:#00000042;box-shadow:inset 0 0 0 1px #ffffff1f}.seat[data-empty=true] .seat-name{color:var(--ink-dim);font-weight:500}.seat[data-empty=true] .seat-stack{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-dim);font-size:10px;font-weight:600}.seat[data-empty=true] .seat-cards,.seat[data-empty=true] .seat-bet,.seat[data-empty=true] .seat-button{visibility:hidden}.seat[data-active=true] .seat-plate{box-shadow:inset 0 0 0 1.5px var(--chip), 0 0 0 3px #d8b64a33, 0 8px 18px #00000080}.seat[data-folded=true]{opacity:.45;filter:grayscale(.6)}.seat[data-allin=true] .seat-plate:after{content:"ALL IN";letter-spacing:.1em;color:#2b1a10;background:var(--chip);border-radius:999px;padding:1px 6px;font-size:9px;font-weight:800;position:absolute;bottom:-7px;left:50%;transform:translate(-50%)}.seat-bet{left:calc(50% + var(--to-centre-x,0) * var(--seat-size));top:calc(50% + var(--to-centre-y,-.72) * var(--seat-size));white-space:nowrap;background:#0000006b;border-radius:999px;align-items:center;gap:5px;padding:2px 8px 2px 3px;display:inline-flex;position:absolute;transform:translate(-50%,-50%);box-shadow:inset 0 0 0 1px #ffffff1a}.seat-bet .chip{width:13px;height:13px}.seat-bet-amount{color:var(--chip);font-variant-numeric:tabular-nums;font-size:11px;font-weight:700}.seat-bet:has(.seat-bet-amount:empty){visibility:hidden}.seat-button{left:calc(50% + var(--button-x,.78) * var(--seat-size));top:calc(50% + var(--button-y,0) * var(--seat-size));color:#2b1a10;visibility:hidden;background:radial-gradient(circle at 35% 28%,#fff 0 18%,#f1ebd8 46%,#cdc3a7 100%);border-radius:50%;place-items:center;width:21px;height:21px;font-size:10px;font-weight:800;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 2px 4px #00000080,inset 0 0 0 1px #00000040}.seat[data-button=true] .seat-button{visibility:visible}.action-bar{background:linear-gradient(#15201bf5,#090e0cfa);border-radius:16px;flex:none;align-items:center;gap:12px;width:min(640px,100% - 32px);margin:0 auto clamp(10px,2vh,22px);padding:10px 14px;display:flex;box-shadow:inset 0 0 0 1px #ffffff1a,0 -6px 30px #00000080}.action-bar[hidden]{display:none}.action-info{flex-direction:column;gap:2px;min-width:90px;display:flex}.action-prompt{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim);font-size:10px;font-weight:600}.action-call{font-variant-numeric:tabular-nums;min-height:17px;font-size:14px;font-weight:700}.action-raise{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.raise-amount{min-height:15px;color:var(--chip);font-variant-numeric:tabular-nums;font-size:12px;font-weight:700}.raise-slider{width:100%;height:28px;accent-color:var(--chip);touch-action:manipulation;margin:0}.action-buttons{flex:none;gap:8px;display:flex}.act{min-width:86px;min-height:44px;font:inherit;color:var(--ink);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:linear-gradient(#33423a,#1d2a24);border:0;border-radius:12px;padding:0 16px;font-weight:700;box-shadow:inset 0 1px #ffffff24,0 3px #00000073}.act-fold{background:linear-gradient(#5d2b2f,#3a191c)}.act-check,.act-call{background:linear-gradient(#1f6b4f,#124732)}.act-raise{color:#241b07;background:linear-gradient(#e2c358,#a5842a)}.act:active{transform:translateY(2px);box-shadow:inset 0 1px #ffffff1a,0 1px #00000073}.act:focus-visible{outline:2px solid var(--chip);outline-offset:2px}.act[disabled]{opacity:.35;cursor:default}@media (hover:hover){.act:not([disabled]):hover{filter:brightness(1.14)}}@media (width<=719.98px){.table-stage{padding:8px 6px 0}.rail{border-radius:26px;max-width:none;max-height:none;padding:9px}.rail:before{border-radius:22px;inset:5px}.felt{border-radius:19px}.felt:after{border-radius:14px;inset:9% 5%}.table-centre{gap:8px;top:57%}.seat{--plate-w:calc(var(--seat-size) * 1.6);gap:3px}.seat-plate{padding:4px 6px 5px}.seat-avatar{width:20px;height:20px;font-size:9px}.seat-sitting-out{font-size:9px}.table-hud{padding-top:6px}.hud-button{padding:5px 11px;font-size:11px}.seat-name,.seat-stack{font-size:11px}.seat[data-hero=true]{--seat-size:104px;--card-w:58px;--card-h:82px}.seat[data-hero=true] .seat-plate{padding:6px 10px 7px}.seat[data-hero=true] .seat-name,.seat[data-hero=true] .seat-stack{font-size:14px}.seat-button{width:18px;height:18px;font-size:9px}.action-bar{width:100%;padding:12px 14px calc(12px + env(safe-area-inset-bottom));border-radius:18px 18px 0 0;flex-wrap:wrap;gap:8px;margin:0}.action-info{flex-direction:row;flex:100%;align-items:baseline;gap:8px}.action-raise{flex:100%}.raise-slider{height:36px}.action-buttons{flex:100%}.act{flex:1 1 0;min-width:0;min-height:56px;padding:0 8px;font-size:15px}}
