@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Franklin:wght@600;700;800&display=swap');
:root{color-scheme:dark;--navy:#0d192b;--panel:#13223a;--line:#314359;--muted:#b3c0d1;--cream:#f8f2e6;--red:#c93d47;--gold:#dec58d;--text-xs:clamp(.75rem,.72rem + .1vw,.8rem);--text-sm:clamp(.85rem,.8rem + .2vw,.95rem);--text-base:1rem;--text-xl:clamp(1.8rem,1.2rem + 2vw,2.75rem)}
*{box-sizing:border-box}body{margin:0;background:var(--navy);color:var(--cream);font-family:'DM Sans',sans-serif;font-size:var(--text-base)}button,input,textarea{font:inherit}button{cursor:pointer;min-height:44px;color:inherit;border:1px solid var(--line);border-radius:7px;background:var(--panel);padding:10px 16px;font-size:var(--text-sm);font-weight:600}button:hover:not(:disabled){border-color:var(--gold)}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--cream);color:var(--navy);border-color:var(--cream)}button.raise{background:var(--red);border-color:var(--red)}button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:4px}[hidden]{display:none!important}h1,h2,p{margin:0}h1,h2,.brand{font-family:'Libre Franklin',sans-serif}h1{font-size:var(--text-xl);letter-spacing:-.04em}h2{font-size:1.2rem}header{height:72px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 max(24px,calc((100% - 1100px)/2));gap:16px}.brand{display:flex;gap:10px;align-items:center;font-weight:800;font-size:1.1rem;letter-spacing:-.04em}.brand svg{height:27px;width:27px;color:var(--red)}.dotcom{color:var(--muted);font-weight:600}.preview-tag{font-size:var(--text-xs);letter-spacing:.1em;color:var(--gold)}main{max-width:1000px;margin:0 auto;padding:30px 28px}.heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:16px}.eyebrow{font-size:var(--text-xs);letter-spacing:.15em;color:var(--gold);margin-bottom:6px}.subtitle{color:var(--muted);margin-top:5px}.room-bar{display:flex;justify-content:space-between;gap:12px;font-size:var(--text-xs);color:var(--muted);padding:0 8px 12px}.table{background:radial-gradient(ellipse at center,#213e58,#12283d);border:8px solid #263448;box-shadow:inset 0 0 0 1px #516275,0 18px 40px #060e1b70;min-height:280px;border-radius:130px;padding:20px 40px 18px;position:relative}.opponents{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;max-width:720px;margin:auto}.opponent{text-align:center;border-radius:8px;padding:8px 4px;border:1px solid transparent;background:#0c1b2e94;font-size:var(--text-sm)}.opponent.active{border-color:var(--gold);box-shadow:0 0 0 2px #dec58d20}.opponent.folded{opacity:.55}.opponent small{display:block;font-size:var(--text-xs);color:var(--muted);margin-top:3px}.opponent .cash{font-variant-numeric:tabular-nums;font-weight:700;display:block;margin-top:4px}.table-center{text-align:center;margin-top:16px}#street-label{font-size:var(--text-xs);letter-spacing:.12em;color:var(--muted);text-transform:uppercase;margin-bottom:10px}.board,.hole,.mini-cards{display:flex;gap:8px;justify-content:center}.card{width:56px;height:78px;border-radius:6px;background:var(--cream);color:#13233b;box-shadow:0 3px 0 #0004;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;padding:5px 7px;font-family:Georgia,serif;font-size:1.4rem;line-height:1}.card.red{color:#b32534}.card span:last-child{align-self:flex-end;font-size:1.5rem}.card.empty{border:1px dashed #698299;background:#132d4455;box-shadow:none}.pot{display:flex;align-items:baseline;justify-content:center;gap:9px;margin-top:13px}.pot span,.pot small{font-size:var(--text-xs);color:var(--muted)}.pot strong{font-size:1.5rem;font-variant-numeric:tabular-nums}#table-note{text-align:center;color:var(--muted);font-size:var(--text-xs);margin-top:10px}.your-seat{max-width:520px;margin:24px auto 0}.seat-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:var(--text-sm)}#you-position{color:var(--gold);font-size:var(--text-xs)}#stack{font-variant-numeric:tabular-nums}.hole .card{width:66px;height:91px;min-height:0;font-weight:400;font-size:1.5rem}.hole button.card{border:2px solid transparent;position:relative;padding:6px 8px}.hole button.card[aria-pressed=true]{border-color:var(--gold);transform:translateY(-7px);box-shadow:0 0 0 3px #dec58d55}.hole button.card[aria-pressed=true]:after{content:'DRAW';position:absolute;bottom:-12px;left:0;right:0;background:var(--gold);color:var(--navy);font:700 10px 'DM Sans',sans-serif;letter-spacing:.06em;padding:3px}#selection-hint{color:var(--muted);text-align:center;font-size:var(--text-xs);margin-top:14px;min-height:18px}.actions{text-align:center;margin:20px auto 22px;max-width:650px;min-height:85px}#turn-status{font-size:var(--text-sm);margin-bottom:12px}#action-buttons{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}#action-buttons button{min-width:110px}.utility{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:18px}#save-status{color:var(--muted);font-size:var(--text-xs);flex-basis:100%;text-align:center;margin-top:6px}#rules,#recovery,#result{background:var(--panel);border:1px solid var(--line);padding:22px;border-radius:10px;margin-bottom:20px}#rules p,#recovery p{line-height:1.6;color:var(--muted);font-size:var(--text-sm);margin-top:12px}a{color:var(--gold)}label{display:block;font-size:var(--text-sm);margin:18px 0 7px}input,textarea{display:block;width:100%;background:#091322;color:var(--cream);border:1px solid var(--line);border-radius:6px;padding:12px;min-height:44px}textarea{font-size:12px;overflow-wrap:anywhere;margin-bottom:10px}#recover{margin-top:8px}.backup-buttons{display:flex;gap:8px}#recovery{margin-top:20px}.result-title{display:flex;justify-content:space-between;gap:12px;margin-bottom:16px}#net{color:var(--gold)}.pot-result{border-top:1px solid var(--line);padding-top:12px;margin-top:14px}.pot-result h3{font-size:var(--text-sm);margin:0 0 10px}.halves{display:grid;grid-template-columns:1fr 1fr;gap:18px}.half{background:#0b1829;padding:14px;border-radius:6px;font-size:var(--text-sm)}.half p{margin:6px 0;color:var(--muted);line-height:1.5}.half strong{color:var(--cream)}.mini-cards{justify-content:flex-start;gap:4px;flex-wrap:wrap}.mini-cards .card{width:32px;height:43px;padding:3px;font-size:1rem}.mini-cards .card span:last-child{font-size:1rem}.mini-cards .board-used{outline:2px solid #739abb}.source-key{font-size:var(--text-xs)!important}footer{font-size:var(--text-xs);color:var(--muted);text-align:center;padding:22px 8px;line-height:1.6}#error{padding:14px;background:#55232c;border:1px solid #a34752;margin:15px 0;border-radius:6px}.skip{position:absolute;left:12px;top:-70px;background:var(--cream);color:var(--navy);padding:14px;z-index:99}.skip:focus{top:10px}
@media(max-width:600px){header{height:58px;padding:0 16px}.brand{font-size:.9rem}.brand svg{height:23px;width:23px}.preview-tag{font-size:.65rem;letter-spacing:.07em}main{padding:20px 14px}.heading{margin-bottom:20px}.heading button{padding:9px 11px}.subtitle{font-size:var(--text-sm)}.table{border-width:5px;border-radius:38px;padding:13px 10px 14px;min-height:258px}.opponents{gap:4px}.opponent{padding:6px 2px;font-size:12px}.opponent small{font-size:10px;line-height:1.4}.opponent .cash{font-size:12px}.board{gap:6px}.card{width:46px;height:65px;font-size:1.2rem}.room-bar{font-size:11px;padding-left:0;padding-right:0}.table-center{margin-top:17px}.your-seat{margin-top:20px;max-width:350px}.hole{gap:7px}.hole .card{width:55px;height:80px}.actions{margin:18px auto;min-height:89px}#action-buttons{gap:7px}#action-buttons button{min-width:0;flex:1;padding:12px 7px}.utility button{font-size:12px;padding:10px}.halves{grid-template-columns:1fr}.result-title{flex-wrap:wrap}#rules,#recovery,#result{padding:16px}.pot{margin-top:12px}#table-note{font-size:11px}footer{padding:18px 4px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.hole button.card[aria-pressed=true]:after{font-size:12px}
@media(max-width:600px){.preview-tag{font-size:12px;max-width:86px;text-align:right;line-height:1.35}.opponent small,.room-bar,#table-note{font-size:12px}.room-bar{flex-wrap:wrap}.opponent{overflow-wrap:anywhere}}
@media(max-width:360px){h1{font-size:26px}.heading{gap:8px;margin-bottom:14px}.heading button{width:80px;padding:8px;font-size:12px;flex-shrink:0}.subtitle{font-size:12px}.table{padding:10px 7px;min-height:240px}.table-center{margin-top:12px}.your-seat{margin-top:16px}.hole .card{height:72px}.actions{margin:12px auto}.opponent small{margin-top:2px}}
