:root{color:#f5f0df;scrollbar-color:#56645d #0a0f0d;font-synthesis:none;background:#0a0f0d;font-family:Inter,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 50% 35%,#255e453d,#0000 38%),linear-gradient(#0b100e,#070a09);min-width:320px;min-height:100vh;margin:0}main{width:min(1180px,100% - 32px);margin:auto;padding:30px 0 60px}header{justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;display:flex}.header-actions{align-items:center;gap:24px;display:flex}.page-link{color:#d6bd67;letter-spacing:.08em;text-transform:uppercase;font:600 12px/1.4 ui-monospace,monospace;text-decoration:none}.page-link:hover{color:#f4df91}.page-link:focus-visible{outline-offset:5px;outline:2px solid #d6bd67}.github-link{color:#8f9f96;width:18px;height:18px}.github-link:hover{color:#f5f0df}.github-link:focus-visible{outline-offset:4px;outline:2px solid #d6bd67}.github-link svg{fill:currentColor;width:100%;display:block}.eyebrow,.seat-number,.summary span,.connection{letter-spacing:.12em;text-transform:uppercase;color:#8f9f96;font:500 11px/1.4 ui-monospace,monospace}h1{letter-spacing:-.045em;margin:4px 0 0;font-size:clamp(28px,5vw,52px);line-height:1}.home{flex-direction:column;min-height:100vh;display:flex}.home-brand{color:#f5f0df;letter-spacing:.12em;text-transform:uppercase;font:700 15px/1 ui-monospace,monospace;text-decoration:none}.page-heading{margin-bottom:24px}.table-header{justify-content:flex-end}.home-join{text-align:center;width:min(760px,100%);margin:auto;padding:9vh 0 14vh}.home-join h1{margin:0 0 24px;font-size:clamp(48px,7vw,88px)}.home-intro{color:#a9b6af;max-width:620px;margin:0 auto 42px;font-size:clamp(17px,2vw,21px);line-height:1.65}.join-steps{text-align:left;background:#0f1512d9;border:1px solid #27332d;border-radius:12px;grid-template-columns:1fr;display:grid;overflow:hidden}.join-steps article{min-width:0;padding:22px}.join-steps article+article{border-top:1px solid #27332d}.join-steps span{color:#8f9f96;letter-spacing:.08em;font:600 10px/1.5 ui-monospace,monospace}.join-steps pre{color:#e7d792;white-space:pre-wrap;overflow-wrap:anywhere;background:#090d0b;border:1px solid #33423a;border-radius:8px;margin:16px 0 14px;padding:16px;overflow-x:auto}.join-steps code{font:12px/1.7 ui-monospace,monospace}.lobby-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:28px 16px;display:grid}.lobby-table{color:inherit;text-align:center;padding:8px;text-decoration:none;display:block}.lobby-table:hover,.lobby-table:focus-visible{outline-offset:3px;outline:2px solid #d6bd67}.lobby-table:hover .lobby-felt.playing{background:#1d6747}.lobby-table:hover .lobby-felt.waiting{background:#345876}.lobby-table:hover .lobby-felt.paused{background:#48504c}.lobby-table-stage{height:190px;position:relative}.lobby-felt{color:#b6cabe;background:#174f37;border:6px solid #19251f;border-radius:50%;align-content:center;place-items:center;gap:8px;width:52%;height:40%;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:inset 0 0 0 1px #496859}.lobby-felt span{font:700 11px/1 ui-monospace,monospace}.lobby-felt.waiting{background:#294862}.lobby-felt.paused{background:#3c4541}.lobby-felt small{color:#d6bd67;letter-spacing:.12em;text-transform:uppercase;font:700 9px/1 ui-monospace,monospace}.lobby-seat{z-index:2;color:#718078;background:#121915;border:1px solid #46534c;border-radius:10px;place-items:center;width:48px;height:48px;display:grid;position:absolute;transform:translate(-50%,-50%)}.lobby-seat strong{font:700 14px/1 ui-monospace,monospace}.lobby-seat small{color:#77877e;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:64px;font:9px/1 ui-monospace,monospace;position:absolute;bottom:-14px;overflow:hidden}.lobby-seat.occupied{color:#161b18;background:#e7d792;border-color:#d6bd67}.lobby-seat.occupied small{color:#d8e1dc}.connection{text-overflow:ellipsis;align-items:center;gap:8px;max-width:320px;display:flex;overflow:hidden}.connection span{background:#d35c4c;border-radius:50%;width:9px;height:9px}.summary{background:#111815cc;border:1px solid #27332d;border-radius:12px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.summary div{border-right:1px solid #27332d;padding:14px 18px}.summary div:last-child{border:0}.summary span{display:block}.summary strong{font-size:18px}.table{background:radial-gradient(#174d35 0%,#103925 57%,#0b2419 100%);border:1px solid #2a3831;border-radius:180px;height:600px;margin:24px 0;position:relative;box-shadow:inset 0 0 0 14px #121a16,inset 0 0 0 16px #36453d,0 30px 80px #00000059}.table:after{content:"";border-radius:inherit;pointer-events:none;border:1px solid #ffffff12;position:absolute;inset:32px}.seat{z-index:2;background:#111815;border:1px solid #34443c;border-radius:13px;width:220px;min-height:130px;padding:15px 17px;transition:border-color .2s,box-shadow .2s;position:absolute;box-shadow:0 14px 35px #00000052}.seat.acting{border-color:#e6c968;box-shadow:0 0 0 3px #e6c9682b,0 14px 35px #0006}.seat.folded{background:linear-gradient(#261413d1,#171412f0),#111815;border-color:#794641;box-shadow:inset 0 0 0 1px #f28b8214,0 14px 35px #00000052}.seat.eliminated{background:#0d1210;border-color:#343d38;box-shadow:inset 0 0 0 1px #b5c2ba0a,0 14px 35px #00000040}.seat.folded h2,.seat.folded .stack,.seat.folded .bet,.seat.eliminated h2,.seat.eliminated .stack,.seat.eliminated .bet{opacity:.48}.fold-badge,.eliminated-badge,.turn-timer{color:#ffb4ac;letter-spacing:.11em;background:#68252175;border:1px solid #f28b829e;border-radius:999px;padding:3px 7px;font:700 10px/1.3 ui-monospace,monospace;position:absolute;top:13px;right:13px}.eliminated-badge{color:#9eada4;background:#18201c;border-color:#4c5a52}.turn-timer{color:#f4df91;background:#332d18;border-color:#e6c968}.seat h2{text-overflow:ellipsis;white-space:nowrap;margin:5px 0 0;font-size:17px;overflow:hidden}.seat-number{align-items:center;gap:6px;min-height:18px;padding-right:72px;display:flex}.blind-marker{color:#dce7e1;letter-spacing:.05em;background:#26312c;border:1px solid #6f7e76;border-radius:999px;place-items:center;min-width:25px;height:18px;padding:0 5px;font:800 9px/1 ui-monospace,monospace;display:inline-grid}.blind-marker.big-blind{color:#f4df91;background:#332d18;border-color:#d6bd67}.stack{color:#e6c968;font:500 21px ui-monospace,monospace}.seat p{color:#82938a;margin:4px 0;font:500 10px ui-monospace,monospace}.seat .player-status.is-folded{color:#ff9f96;letter-spacing:.08em;font-weight:700}.seat .player-status.is-eliminated{color:#7f8e86;letter-spacing:.08em;font-weight:700}.seat .empty{margin-top:24px}.total-bet{top:var(--total-bet-top);left:var(--total-bet-left);z-index:3;color:#f0d879;justify-items:center;gap:2px;font:700 11px/1 ui-monospace,monospace;display:grid;position:absolute;transform:translate(-50%,-50%)}.poker-chip{background:#b4443f;border:3px dashed #f4e6aa;border-radius:50%;width:25px;height:25px;box-shadow:0 3px 8px #0006,inset 0 0 0 3px #762923}.bet{color:#cbd9d1;font:11px ui-monospace,monospace;position:absolute;bottom:11px;right:13px}.hole-cards{gap:4px;display:flex;position:absolute;bottom:11px;right:13px}.seat:has(.hole-cards) .bet{right:82px}.hole-cards .card{border-radius:5px;width:29px;height:41px;font-size:12px}.hidden-cards .card{animation:.45s cubic-bezier(.2,.8,.2,1) both deal-card}.hidden-cards .card:nth-child(2){animation-delay:.12s}@keyframes deal-card{0%{opacity:0;transform:translate(60px,-70px)rotate(12deg)scale(.65)}}@media (prefers-reduced-motion:reduce){.hidden-cards .card{animation:none}}.board{text-align:center;width:min(480px,70%);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.board p{color:#9bb0a4;letter-spacing:.13em;margin:0 0 10px;font:12px ui-monospace,monospace}.board>strong{color:#cbd8d0;max-width:440px;margin:14px auto 0;font-size:13px;display:block}.cards{justify-content:center;gap:8px;min-height:68px;display:flex}.card{color:#171b19;background:#f7f3e7;border-radius:7px;place-items:center;width:48px;height:68px;font:700 19px ui-monospace,monospace;display:grid;box-shadow:0 5px 12px #00000047}.card.red{color:#c83b39}.card.back{color:#567261;background:#183628;border:1px solid #456b56}.feed{background:#0f1512;border:1px solid #27332d;border-radius:12px;overflow:hidden}.feed-title{border-bottom:1px solid #27332d;justify-content:space-between;align-items:center;padding:15px 18px;display:flex}.feed h2{margin:0;font-size:16px}.feed-title span{color:#7f9087;letter-spacing:.08em;text-transform:uppercase;font:600 10px/1.4 ui-monospace,monospace}.feed ol{overscroll-behavior:contain;scrollbar-gutter:stable;max-height:min(55vh,480px);margin:0;padding:0;list-style:none;overflow:hidden auto}.feed ol:focus-visible{outline-offset:-2px;outline:2px solid #d6bd67}.feed li{border-bottom:1px solid #27332db3;gap:4px;padding:11px 18px;font-size:13px;display:grid}.feed li small{color:#7f9087;letter-spacing:.08em;font:500 10px/1.3 ui-monospace,monospace}.feed li:last-child{border-bottom-color:#0000}.feed .quiet{color:#718078}.feed .history-status{color:#718078;letter-spacing:.08em;text-align:center;text-transform:uppercase;font:600 10px/1.4 ui-monospace,monospace;display:block}.feed .chat-message{background:#e6c9680f}.feed .chat-message small{color:#d6bd67}.leaderboard{background:#0f1512;border:1px solid #27332d;border-radius:12px;overflow:hidden}.leaderboard-title{border-bottom:1px solid #27332d;justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.leaderboard-title h2{margin:0;font-size:16px}.leaderboard-title span,.leaderboard th{color:#8f9f96;letter-spacing:.1em;text-transform:uppercase;font:600 11px/1.4 ui-monospace,monospace}.leaderboard table{border-collapse:collapse;width:100%}.leaderboard th,.leaderboard td{text-align:left;border-bottom:1px solid #27332db3;padding:16px 22px}.leaderboard tbody th{color:#f5f0df;letter-spacing:0;text-transform:none;font-size:14px}.leaderboard td:first-child{color:#8f9f96;width:90px;font-family:ui-monospace,monospace}.leaderboard td:last-child{color:#e6c968;text-align:right;font:600 18px ui-monospace,monospace}.leaderboard thead th:last-child{text-align:right}.leaderboard tbody tr:last-child>*{border-bottom:0}.leaderboard-message{color:#8f9f96;margin:0;padding:28px 22px}@media (width<=760px){main{width:min(100% - 20px,600px);padding-top:18px}header{align-items:flex-start}.header-actions{flex-direction:column;align-items:flex-end;gap:12px}.home-join{padding:10vh 0}.home-join h1{font-size:clamp(44px,14vw,68px)}.table{border-radius:40px;height:auto;padding:170px 14px 18px}.table:after{display:none}.seat{width:100%;min-height:142px;margin-bottom:10px;padding-bottom:38px;position:relative;inset:auto;top:auto!important;left:auto!important;transform:none!important}.total-bet{align-items:center;display:flex;inset:auto auto 12px 17px;transform:none}.poker-chip{border-width:2px;width:19px;height:19px}.seat-number{padding-right:82px}.board{width:96%;top:34px;transform:translate(-50%)}.board>strong{display:none}.card{width:39px;height:54px;font-size:15px}.leaderboard th,.leaderboard td{padding:14px 12px}}
