:root{color-scheme:dark;--bg:#100d18;--panel:#1b1626;--line:#332940;--muted:#a194b2;--orange:#ff962e;--purple:#b99afb}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#f2eef8;font:14px 'Segoe UI',sans-serif}button,input,select{font:inherit}button{border:0;border-radius:5px;padding:11px 18px;background:var(--orange);color:#281406;font-weight:700;cursor:pointer;white-space:nowrap}button:hover:not(:disabled){filter:brightness(1.12)}button:disabled{opacity:.35;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible,summary:focus-visible{outline:2px solid var(--orange);outline-offset:3px}.topbar{height:88px;display:flex;align-items:center;padding:0 30px;gap:45px;background:#1a1523;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap}.comet{font-size:43px;color:var(--orange);transform:rotate(-18deg)}.brand strong{font-size:23px;letter-spacing:1px}.brand strong span{font-weight:300;color:#c3a7ec}.topbar nav{display:flex;align-self:stretch;gap:20px}.topnav{border-radius:0;background:none;color:var(--muted);padding:0 6px;font-size:12px;letter-spacing:1px;border-bottom:3px solid transparent}.topnav.selected{color:#fff;border-bottom-color:var(--orange)}.account{margin-left:auto;display:flex;align-items:center;gap:18px}.account small{display:block;color:var(--muted);font-size:9px;letter-spacing:1px}.account strong{display:block;font-size:20px;margin-top:4px}.badge{border:1px solid #614225;background:#402b1b;color:#ffb971;padding:5px 8px;border-radius:4px;font-size:9px;letter-spacing:1px}.avatar{border:1px solid #765694;border-radius:50%;width:40px;height:40px;padding:0;background:#39264f;color:#d8c6ef;font-size:12px}.connection-bar{height:34px;display:flex;align-items:center;gap:25px;padding:0 32px;background:#130f1c;font-size:11px;color:var(--muted);border-bottom:1px solid #292033}.connection-bar>span:nth-child(2){margin-left:auto}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#9acb8b;margin-right:7px}.dot.offline{background:#70657b}.link{background:none;padding:0;color:var(--purple);font-size:11px}main{max-width:1600px;margin:auto;min-height:calc(100vh - 166px)}section{padding:25px 30px 30px}.banner{position:relative;display:flex;justify-content:space-between;overflow:hidden;min-height:230px;border-radius:8px;padding:30px 35px;background:radial-gradient(ellipse at 65% 120%,#63328a,transparent 58%),linear-gradient(120deg,#2c1941,#281834 60%,#442243);border:1px solid #563565}.eyebrow{font-size:10px;letter-spacing:2px;color:#c5a6ed;font-weight:700}h1{font-size:36px;line-height:1.12;letter-spacing:-1px;margin:14px 0}h2{font-size:19px;margin:10px 0 18px}.banner p{color:#c1adc9;font-size:13px}.orbit{position:absolute;left:52%;top:16px;width:230px;height:230px;border:1px solid #ac73d950;border-radius:50%;transform:rotate(-25deg) scaleX(1.4)}.orbit:after{content:'';position:absolute;inset:25px;border:1px solid #ac73d930;border-radius:50%}.orbit span{display:block;transform:scaleX(.714);font-size:180px;text-align:center;line-height:230px;color:var(--orange);text-shadow:0 0 70px #ff842e66}.banner-note{position:relative;align-self:center;text-align:right}.banner-note>span{font-size:9px;color:#daaf82;letter-spacing:1px}.banner-note strong{display:block;font-size:26px;font-weight:600;margin:15px 0}.banner-note small{color:#c2a6ca}.game-tabs{display:flex;margin-top:26px;border-bottom:1px solid var(--line);gap:20px}.tab{border-radius:0;padding:15px 8px;background:none;color:#b5a9c1}.tab.active{color:var(--orange);border-bottom:3px solid var(--orange)}.tab small{font-size:7px;display:block;letter-spacing:1px;margin-top:3px}.lobby-layout{display:grid;grid-template-columns:minmax(600px,1fr) 280px;gap:22px;margin-top:18px}.lobby-content{border:1px solid var(--line);border-radius:6px;overflow:hidden}.filters{display:flex;align-items:center;gap:8px;padding:15px;background:#211a2c}.filter-label{font-size:9px;letter-spacing:1px;color:#9f90af;margin-right:5px}.filter-label:nth-of-type(2){margin-left:12px}.chip{font-size:11px;padding:7px 14px;background:#30253e;color:#b1a3bd;border:1px solid transparent}.chip.selected{border-color:#9061be;background:#51336b;color:#f3e9ff}.hide-full{margin-left:auto;display:flex;align-items:center;gap:5px;font-size:11px;color:#b9aac6}.hide-full input{width:13px;accent-color:var(--orange)}.list-head,.room{display:grid;grid-template-columns:1.3fr 1fr .7fr .7fr 92px;gap:10px;align-items:center;padding:13px 17px}.list-head{font-size:9px;letter-spacing:.8px;background:#17121e;color:#867794}.room{border-top:1px solid #2b2135;background:#1c1625;font-size:12px;cursor:pointer;min-height:74px}.room:nth-child(2n){background:#20192a}.room.selected-row{background:#362342;box-shadow:inset 3px 0 var(--orange)}.room small{display:block;color:#a493b6;font-size:10px;margin-top:5px}.room button{padding:9px 10px;font-size:11px;background:#493057;color:#f5d6b4;border:1px solid #765044}.room.selected-row button{background:var(--orange);color:#281406;border-color:var(--orange)}.lobby-foot{display:flex;justify-content:space-between;padding:14px 17px;border-top:1px solid var(--line);font-size:10px;color:#897a97}.table-preview{background:#1e1728;border:1px solid var(--line);border-radius:6px;padding:21px}.table-preview h2{margin-top:9px;font-size:22px}.mini-felt{position:relative;height:95px;border:7px solid #3e2c4b;border-radius:70px;background:radial-gradient(ellipse,#70458f,#462660);margin:35px 5px 32px;text-align:center;line-height:80px;color:#b895d0;font-size:9px;letter-spacing:2px}.mini-seat{position:absolute;width:34px;height:22px;background:#281f32;border:1px solid #9c6fbb;border-radius:7px;left:calc(50% - 17px)}.mini-seat.top{top:-20px}.mini-seat.bottom{bottom:-20px}.preview-stat{display:flex;justify-content:space-between;gap:15px;font-size:12px;padding:10px 0;border-bottom:1px solid var(--line)}.preview-stat>span{color:var(--muted)}.preview-stat strong{font-weight:600;overflow-wrap:anywhere}.wide{width:100%;margin-top:18px}.muted{font-size:12px;line-height:1.7;color:var(--muted)}.table-preview .muted{font-size:10px;margin-bottom:0}.notice{border:1px solid var(--line);background:#17111f;padding:13px 18px;border-radius:5px;font-size:11px;color:#a695b7;margin-top:20px}.quiet{background:#34283f;color:#dfd0ec}.table-toolbar{display:flex;align-items:center;gap:18px}.table-toolbar h2{margin:0 0 5px}.table-toolbar small{font-size:11px;color:#b29ac4}.table-tools{margin-left:auto;display:flex;align-items:center;gap:25px}#turn-clock{color:#ffb568;font-size:12px}.felt-wrap{height:465px;padding:67px 120px 90px;background:radial-gradient(ellipse,#38204555,transparent 70%)}.felt{position:relative;max-width:900px;margin:auto;height:300px;border:14px solid #2d2136;outline:3px solid #6c4a7b;border-radius:180px;background:radial-gradient(ellipse,#744797,#482a67 75%);box-shadow:0 20px 50px #0008,inset 0 0 50px #291237;text-align:center;padding:53px 30px}.felt:after{content:'';position:absolute;inset:14px;border:1px solid #a77bc43b;border-radius:150px;pointer-events:none}.felt-brand{font-size:17px;letter-spacing:4px;color:#ba93d2;opacity:.6}.felt-brand>span{font-weight:300;font-size:13px}#pot{display:inline-block;font-size:12px;border:1px solid #b797d03b;border-radius:15px;background:#27153088;padding:5px 15px;margin:12px}.cards{display:flex;gap:6px;justify-content:center;min-height:68px}.card{display:inline-flex;flex-direction:column;justify-content:space-between;text-align:left;width:48px;height:67px;border-radius:5px;background:#fbf7f0;color:#252035;padding:4px 7px;box-shadow:0 3px 6px #0005;font-size:20px;line-height:1}.card b{font-weight:700}.card>span{align-self:flex-end;font-size:26px}.card.red{color:#d54b50}.card.covered{border:3px solid #d3bfde;background:repeating-linear-gradient(45deg,#633589,#633589 3px,#8956aa 3px,#8956aa 5px)}.seat{position:absolute;left:50%;transform:translateX(-50%);background:linear-gradient(#2c2236,#1c1523);border:1px solid #7c5c8f;border-radius:10px;padding:8px 24px 10px;min-width:175px;z-index:1;font-size:12px;box-shadow:0 6px 15px #0006}.seat.acting{border-color:var(--orange);box-shadow:0 0 0 2px #f9922e55,0 4px 20px #0006}.seat small{display:block;color:#d4b4eb;font-size:12px;margin:5px 0}.seat-avatar{position:absolute;left:-18px;top:9px;border:2px solid #a473c7;background:#4f326b;width:35px;height:35px;border-radius:50%;line-height:30px;color:#e7d3f7;font-size:24px}.seat-avatar.you{background:#9e5922;border-color:#ffad62;color:#ffe2b9}.opponent{top:-64px}.player{bottom:-88px}.seat .cards{margin-top:8px}.seat-bet{position:absolute;left:calc(100% + 14px);top:50%;color:#f1c17e;font-size:12px;white-space:nowrap}#message{text-align:center;color:#cfc0dc;font-size:13px;min-height:34px;margin-top:12px}.betting-panel{max-width:710px;margin:0 auto;background:#1f1829;border:1px solid #3b2b49;border-radius:8px;padding:16px 22px}.bet-presets{display:flex;align-items:center;gap:8px}.bet-presets button{padding:8px 15px;font-size:11px}.bet-presets label{margin-left:auto;font-size:12px;color:#baabc6}.bet-presets input{width:105px;margin-left:7px;padding:8px}.actions{display:flex;gap:10px;justify-content:center}.actions button{min-width:125px}.fold{background:#77394c;color:#fce0e8}#bet-slider{width:100%;margin:18px 0;accent-color:var(--orange);height:6px}input,select{border:1px solid #51405e;border-radius:5px;background:#17111f;color:#f2eaf8;padding:11px}label{display:block;font-size:12px;color:#c2afcf}label>input,label>select{display:block;width:100%;margin-top:7px}label>small{display:block;font-size:10px;color:#8e7c9e;margin-top:5px}details{font-size:12px;color:#a492b4;margin-top:20px}summary{cursor:pointer}#history{line-height:2;padding:14px}.page-heading{margin:15px 0 25px}.page-heading h1{font-size:34px}.cash-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}article{border:1px solid var(--line);background:var(--panel);padding:25px;border-radius:8px;margin-top:20px}article>p{color:#b8a7c7;font-size:13px;line-height:1.7}article form label{margin-top:16px}.wallet-card{padding:25px 30px;border:1px solid #65437b;background:linear-gradient(110deg,#3b2453,#23172e);border-radius:8px}.wallet-card>span:first-child{font-size:10px;letter-spacing:1.5px;color:#c1a3d9}.wallet-card h1{font-size:40px}.wallet-card>small{margin-left:20px;color:#b7a1c7}.status-box{padding:13px 15px;background:#2e223a;border-radius:5px;color:#d1b7e4;margin:18px 0;font-size:12px}.server-address{background:#120e19;border:1px solid var(--line);border-radius:4px;padding:14px;font-family:monospace;color:#d6b5ed}.section-heading{display:flex;justify-content:space-between;align-items:center}.transaction{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:13px 0;text-transform:capitalize;font-size:12px}.transaction small{display:block;margin-top:5px;color:#8d7b9c;font-size:10px}.transaction strong{color:#dfb6fc}.transaction-list{color:#b7a3c5;font-size:12px}footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:15px 30px;color:#a586ba;font-size:10px;letter-spacing:.8px}footer small{margin-left:15px;font-size:9px;color:#776487}#toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);z-index:20;background:#3f2b51;color:#f8e8ff;border:1px solid #b27ddd;padding:16px 24px;border-radius:8px;max-width:700px;box-shadow:0 10px 40px #0009;font-size:13px}dialog{color:#f3eafa;border:1px solid #63467a;border-radius:15px;background:radial-gradient(ellipse at top right,#432555,#20162d 60%);width:460px;padding:30px 36px;max-height:95vh;overflow:auto;box-shadow:0 20px 100px #000b}dialog::backdrop{background:#0b0716dc;backdrop-filter:blur(5px)}dialog h1{font-size:31px}.auth-brand{font-size:22px;font-weight:800;color:#ffab54;letter-spacing:1px;margin-bottom:28px}.auth-brand span{font-weight:300;color:#c39ce8}.auth-tabs{display:flex;border:1px solid #483055;border-radius:5px;padding:4px;gap:5px;margin:23px 0}.auth-tabs button{flex:1;padding:9px;font-size:12px;background:none;color:#b7a2c5}.auth-tabs .selected{background:#62417c;color:#fff}#auth-form>label{margin-top:14px}#auth-error{color:#ffbc98;font-size:12px;line-height:1.5;min-height:4px}#server-details{font-size:11px}#server-details label{margin-top:13px}.auth-note{font-size:10px;color:#947da6;text-align:center;line-height:1.6;margin:20px 0 0}.empty{text-align:center;padding:60px 20px;color:#8d789f}[hidden]{display:none!important}@media(max-width:1100px){.topbar{padding:0 20px;gap:20px}.lobby-layout{grid-template-columns:minmax(550px,1fr) 240px}.account{gap:12px}.felt-wrap{padding-left:80px;padding-right:80px}.banner-note{display:none}.orbit{left:64%}}@media(max-width:850px){.topbar nav{display:none}.lobby-layout{display:block}.table-preview{margin-top:18px}.mini-felt{max-width:240px;margin-left:auto;margin-right:auto}.cash-grid{grid-template-columns:1fr}.felt-wrap{padding-left:35px;padding-right:35px}.banner .orbit{display:none}.account .badge{display:none}section{padding:20px}.room,.list-head{grid-template-columns:1.2fr 1fr .6fr .8fr 80px;padding:12px 10px}.account strong{font-size:15px}.filters{gap:5px}.chip{padding:6px 10px}}

/* Eight-seat layout uses stable positions around the table, with your seat at the bottom. */
#players{display:contents}.felt-wrap{height:640px;padding:86px 95px 120px}.felt{height:425px;padding:125px 25px 70px;max-width:1050px}
.seat.seat-slot{width:135px;min-width:0;padding:8px 8px 6px;left:50%;top:auto;bottom:auto;transform:translate(-50%,-50%);font-size:11px;min-height:65px}.seat-slot strong{display:block;overflow-wrap:anywhere}.seat-slot small{font-size:11px;margin:4px 0}.seat-slot .cards{min-height:0;gap:3px;margin-top:4px}.seat-slot .card{width:29px;height:39px;font-size:13px;padding:3px 4px}.seat-slot .card>span{font-size:16px}.seat-slot .seat-bet{position:static;display:block;font-size:10px;margin-top:4px}.seat-status{font-size:9px;color:#eab37c}.seat-slot.folded{opacity:.55}.seat-slot.own-seat{border-color:#d39556;width:155px}.seat-slot.own-seat .card{width:38px;height:53px;font-size:18px}.seat-slot.own-seat .card>span{font-size:21px}.dealer{border-radius:50%;background:#ede5d8;color:#342437;display:inline-block;font-size:9px;padding:1px 4px}.seat-slot.empty-seat{border-style:dashed;background:#261830aa;color:#b49ac5;min-height:32px;box-shadow:none;font-size:10px;width:105px}
.seat-slot.pos-0{top:100%;left:50%}.seat-slot.pos-1{top:91%;left:15%}.seat-slot.pos-2{top:48%;left:0}.seat-slot.pos-3{top:3%;left:17%}.seat-slot.pos-4{top:-3%;left:50%}.seat-slot.pos-5{top:3%;left:83%}.seat-slot.pos-6{top:48%;left:100%}.seat-slot.pos-7{top:91%;left:85%}
.tournament-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.tournament-card{margin-top:0;min-width:0}.tournament-create{display:flex;align-items:end;gap:14px;margin:20px 0}.tournament-create label{min-width:150px}.tournament-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.tournament-actions button{font-size:11px}.entrants{font-size:11px;max-height:220px;overflow:auto}.entrants>div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid var(--line)}.entrants strong{color:#d6b2eb;font-size:10px}
@media(max-width:850px){.felt-wrap{padding-left:65px;padding-right:65px}}
@media(max-width:600px){.felt-wrap{height:650px;padding:80px 30px 130px}.felt{height:440px;padding:157px 5px 80px;border-radius:140px}.seat.seat-slot{width:91px;font-size:9px;padding:6px 4px}.seat-slot small{font-size:9px}.seat-slot .card{width:23px;height:32px;font-size:11px}.seat-slot .card>span{font-size:13px}.seat-slot.own-seat{width:115px}.seat-slot.own-seat .card{width:32px;height:44px;font-size:15px}.seat-slot.own-seat .card>span{font-size:18px}.seat-slot.empty-seat{width:70px;font-size:8px}.seat-slot.pos-1{left:12%;top:88%}.seat-slot.pos-7{left:88%;top:88%}.seat-slot.pos-3{left:12%;top:9%}.seat-slot.pos-5{left:88%;top:9%}.seat-slot.pos-4{top:-3%}.seat-slot.pos-2{left:-2%}.seat-slot.pos-6{left:102%}#board .card{width:30px;height:44px;font-size:13px}#board .card>span{font-size:17px}.tournament-grid{grid-template-columns:1fr}.tournament-create{align-items:end}.tournament-create button{font-size:11px;padding:12px}}

.mini-seat.mini-1{left:13%;bottom:-10px}.mini-seat.mini-2{left:-20px;top:28px}.mini-seat.mini-3{left:13%;top:-12px}.mini-seat.mini-5{left:73%;top:-12px}.mini-seat.mini-6{left:auto;right:-20px;top:28px}.mini-seat.mini-7{left:73%;bottom:-10px}#tournament-clock{font-size:11px;color:#c9a6e5}.table-tools{flex-wrap:wrap;gap:12px}
@media(max-width:600px){#game .felt-wrap{height:650px;padding:80px 35px 130px}#game .felt{height:440px;padding:157px 5px 80px;border-radius:140px}#tournament-clock{font-size:9px}}

/* Compact tournament list with expandable entrants and standings. */
.tournament-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:5px;margin-top:18px}.tournament-head,.tournament-row{display:grid;grid-template-columns:minmax(175px,1.4fr) 110px 115px 60px 125px minmax(180px,1fr);gap:16px;align-items:center;min-width:900px;padding:13px 16px}.tournament-head{background:#15101c;color:var(--muted);font-size:9px;letter-spacing:.8px}.tournament-row{border-top:1px solid var(--line);background:#1d1727;font-size:12px;min-height:76px}.tournament-row:nth-child(even){background:#241b2e}.tournament-row small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.tournament-name>strong{font-size:13px}.tournament-row details{margin-top:7px;font-size:10px}.tournament-row summary{color:#bb96df}.tournament-row .entrants{margin-top:12px;min-width:170px}.tournament-row .tournament-actions{margin:0;justify-content:flex-end}.tournament-row .tournament-actions button{padding:9px 12px}.cash-buyin-label{margin-top:16px}.cash-buyin-presets{display:flex;gap:5px;margin-top:9px}.cash-buyin-presets button{flex:1;padding:8px 5px;font-size:10px}.buyin-range{font-size:10px}.table-preview .preview-stat strong{font-size:11px}.tournament-row .tournament-actions span{font-size:11px;color:#dfb7f8}
