@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600&display=swap');
:root{color-scheme:dark;--gold:#ebc580;--ink:#101c1b;--muted:#a8b7b1}*{box-sizing:border-box}body{margin:0;background:#101918;color:#f4f1e9;font:16px 'DM Sans',system-ui,sans-serif}button,input{font:inherit}button{cursor:pointer;border:1px solid #51605a;border-radius:8px;padding:11px 19px;background:#20302b;color:#f4f1e9;transition:background .15s}button:hover{background:#364c42}button:disabled{opacity:.4;cursor:default}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:4px}header{max-width:1280px;margin:auto;height:90px;display:flex;align-items:center;gap:26px;padding:0 40px;border-bottom:1px solid #ffffff15}.brand{color:#f4f1e9;text-decoration:none;font-weight:700;letter-spacing:2px;font-size:16px}.brand span{color:var(--gold);font-size:30px;vertical-align:middle;margin-right:10px}.practice{margin-left:auto;font-size:12px;letter-spacing:1.3px;color:var(--muted)}header button{background:transparent;font-size:14px}main{max-width:1200px;padding:32px 40px;margin:auto}.heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:1.7px;color:var(--gold);margin:0}h1{font:500 38px 'Playfair Display',Georgia,serif;margin:8px 0}.table-info{font-size:14px;color:var(--muted)}.table-info span{padding:0 14px;color:#5f726a}.game{position:relative;padding:0 0 84px}.table{min-height:382px;border:9px solid #29352e;outline:1px solid #726345;border-radius:160px;background:radial-gradient(ellipse at center,#1b5947,#123d32);box-shadow:0 22px 55px #0005,inset 0 0 0 2px #ffffff12;padding:25px 75px 40px}.opponents{display:flex;justify-content:space-around;gap:15px}.seat{text-align:center;min-width:130px;position:relative}.seat-name{font-size:14px;font-weight:600;margin-top:8px}.stack{font-size:14px;color:#d9cdae;margin-top:4px}.seat-status{color:#b9cec2;font-size:12px;min-height:19px;margin-top:4px}.seat.active .seat-name{color:var(--gold)}.seat.active:before{content:'';position:absolute;inset:-9px;border:1px solid var(--gold);border-radius:12px;pointer-events:none}.seat.folded{opacity:.42}.dealer{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#eee8d8;color:#1a2921;font-size:12px;margin-left:5px}.cards{display:flex;justify-content:center;gap:7px}.card{background:#fcf8ee;color:#213731;width:53px;height:74px;border-radius:6px;padding:5px 7px;display:flex;flex-direction:column;justify-content:space-between;text-align:left;font:600 22px Georgia,serif;box-shadow:0 3px 6px #0003}.card .suit{align-self:flex-end;font-size:25px}.card.red{color:#b94443}.card.back{background:repeating-linear-gradient(45deg,#25453d 0 3px,#315b4f 3px 5px);border:3px solid #c8c8ac}.card.empty{border:1px dashed #83ab9650;background:#0a2c2440;box-shadow:none}.card.private{outline:2px solid var(--gold);outline-offset:3px;margin-left:7px}.opponents .card{width:35px;height:49px;font-size:16px;padding:3px}.opponents .card .suit{font-size:17px}.board-zone{text-align:center;padding-top:29px}.board{margin:14px 0}.pot{font-size:12px;letter-spacing:2px;color:#bbd2c3}.pot strong{display:inline-block;color:#fff4d9;font-size:26px;letter-spacing:0;margin-left:10px}.river-note{font-size:12px;color:#b0c6b9;margin:10px 0 0}.hero{position:absolute;bottom:0;left:50%;transform:translateX(-50%);border-radius:15px;background:#172822;border:1px solid #5a6751;padding:15px 30px;min-width:260px;text-align:center;box-shadow:0 10px 20px #0003}.hero .seat-name{display:inline-block;margin-right:12px}.hero .stack{display:inline-block}.hero .seat-status{margin-top:7px}.action-panel{margin-top:25px;padding:22px 25px;background:#1b2824;border:1px solid #ffffff12;border-radius:14px;display:flex;align-items:center;justify-content:space-between;gap:20px}.status p{margin:8px 0 0;line-height:1.4;max-width:420px}#controls{display:flex;gap:9px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.primary{background:var(--gold);border-color:var(--gold);color:#203126;font-weight:700}.primary:hover{background:#f7dca8}.raise-controls{display:flex;align-items:center;gap:8px}.raise-controls input{width:91px;background:#101c17;border:1px solid #718075;border-radius:7px;padding:11px 8px;color:white}.raise-controls label{font-size:12px;color:var(--muted)}.bottom{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:30px;color:var(--muted)}.bottom p{font-size:14px;line-height:1.7;margin:8px 0}.history ol{list-style:none;padding:0;margin:8px 0;font-size:14px;line-height:1.7}.history li:first-child{color:#e1e7dc}dialog{max-width:570px;width:calc(100% - 30px);border:1px solid #6c795f;border-radius:18px;background:#1b2923;color:#ecede4;padding:26px;line-height:1.6}dialog::backdrop{background:#000a}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px}h2{font:500 27px Georgia,serif;margin:0}.dialog-head button{padding:5px 12px}dialog li{padding-bottom:8px}@media(max-width:760px){header{padding:0 18px;height:76px;gap:12px}.brand{font-size:13px;letter-spacing:1px}.brand span{margin-right:3px}.practice{display:none}header button{margin-left:auto;padding:9px 11px}main{padding:24px 14px}.heading{align-items:flex-start}.heading .eyebrow{font-size:10px;letter-spacing:1px}h1{font-size:30px}.table-info{font-size:12px;max-width:90px;text-align:right;line-height:1.8}.table-info span{padding:0 3px}.table{padding:25px 10px 38px;border-radius:60px;min-height:365px;border-width:6px}.seat{min-width:0;flex:1}.opponents{gap:10px}.opponents .cards{gap:3px}.opponents .card{width:27px;height:40px;font-size:13px}.opponents .card .suit{font-size:14px}.opponents .card.private{margin-left:2px;outline-offset:1px}.seat.active:before{inset:-5px}.seat-name{font-size:13px}.action-panel{flex-direction:column;align-items:stretch;padding:18px}.status p{max-width:none}#controls{justify-content:flex-start}.bottom{grid-template-columns:1fr;gap:18px}.bottom>div:first-child{display:none}.game{padding-bottom:80px}.hero{padding:12px 25px}.card{width:48px;height:68px}.board-zone{padding-top:30px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
