:root{--bg:#111916;--surface:#202a25;--paper:#f4eedf;--muted:#a2aea5;--gold:#e4c78b;--gold-dark:#342b1b;--line:#ffffff1c;--red:#e4998c;--green:#95c3a3;color-scheme:dark;font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-synthesis:none}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--paper)}body{font-size:15px;line-height:1.55}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:1px solid var(--line);border-radius:9px;padding:10px 15px;min-height:44px;color:var(--paper);background:#ffffff08;transition:background .18s,transform .12s,border-color .18s}button:hover{background:#ffffff13;border-color:#ffffff44}button:active{transform:scale(.97)}button:disabled{opacity:.4;cursor:default;transform:none}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:4px}a{color:inherit;text-decoration:none}input,select{width:100%;min-height:48px;border:1px solid #ffffff29;border-radius:8px;background:#0b1310a8;color:var(--paper);padding:11px 13px;font-size:16px;outline:none}input:focus,select:focus{border-color:var(--gold);box-shadow:0 0 0 3px #e4c78b0e}input::placeholder{color:#7d8a80}input[type=checkbox],input[type=radio]{accent-color:var(--gold);width:18px;min-height:18px;margin:0}label{display:flex;flex-direction:column;gap:8px;margin-bottom:17px;font-size:13px;color:#c7cec8}h1,h2,p{margin:0}h2{font-size:24px;letter-spacing:-.6px;font-weight:600}p.muted{color:var(--muted);font-size:13px;margin:9px 0 24px}.primary{background:var(--gold);border-color:var(--gold);color:#1c241e;font-weight:700}.primary:hover{background:#f0d9a6;border-color:#f0d9a6}.wide{width:100%;display:flex;align-items:center;justify-content:space-between}.wide span{font-size:21px;font-weight:400}.quiet{background:transparent}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.check-row{display:flex;flex-direction:row;align-items:center;gap:10px;color:#c5cec5;min-height:28px}.form-error{font-size:13px;color:#ffc1b2;min-height:0;white-space:pre-wrap}.form-error:not(:empty){margin:12px 0}.eyebrow{font-size:12px;letter-spacing:3px;color:var(--gold);margin-bottom:14px}[hidden]{display:none!important}
.home{min-height:100dvh;max-width:1320px;padding:34px 64px 24px;margin:auto;position:relative}.home:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 17% 45%,#36554266,transparent 60%)}.brand{position:relative;display:flex;gap:13px;align-items:center;font-size:14px;letter-spacing:3px;font-weight:650}.brand a span{display:block;color:var(--muted);font-size:11px;letter-spacing:4px;font-weight:400;margin-top:3px}.brand-mark{color:var(--gold);font-size:39px}.brand-note{margin-left:auto;color:#7a8d7e;font-size:10px;letter-spacing:2px}.home-grid{position:relative;display:grid;grid-template-columns:1fr 430px;align-items:center;gap:80px;min-height:calc(100dvh - 170px);padding:44px 0}.welcome{position:relative;min-height:520px;padding-top:32px}.welcome h1{font-size:clamp(60px,6.4vw,88px);line-height:1.16;letter-spacing:-3px;font-weight:550}.lead{margin-top:25px;color:#acb8ac;line-height:1.9;font-size:16px}.hero-cards{position:absolute;right:6px;top:135px;width:210px;height:280px;transform:rotate(8deg);pointer-events:none}.hero-card{position:absolute;width:136px;height:191px;background:#eee7d4;border-radius:12px;box-shadow:0 16px 38px #0007;border:1px solid #fff6;color:#1c2923;overflow:hidden}.hero-card.black{top:5px;left:-22px;transform:rotate(-22deg)}.hero-card.red{top:65px;left:62px;transform:rotate(8deg);color:#9b403b}.hero-card b{position:absolute;left:12px;top:9px;z-index:1;font:700 25px Georgia,serif;line-height:1}.hero-card b span{display:block;font-size:21px;margin-top:2px}.hero-card strong{position:absolute;top:63px;left:40px;font:70px Georgia,serif}.hero-card img{position:absolute;inset:43px 15px 15px 39px;width:81px;height:135px;object-fit:cover;opacity:.8;mix-blend-mode:multiply}.chip{position:absolute;display:grid;place-items:center;width:54px;height:54px;border:6px dashed #e7d9b7;border-radius:50%;font-size:13px;font-weight:800;box-shadow:0 6px 0 #203b31,0 10px 0 #173026,0 14px 15px #0005;background:#416553;transform:rotate(-20deg)}.chip-one{left:15px;bottom:-16px}.chip-two{right:-26px;bottom:20px;background:#7d4a38;box-shadow:0 6px 0 #563327,0 10px 0 #40261d,0 14px 15px #0005}.mode-notes{position:absolute;bottom:0;display:flex;gap:26px;color:#a4b2a6;font-size:12px}.mode-notes span{display:flex;align-items:center;gap:9px}.mode-notes i{width:5px;height:5px;background:var(--gold);border-radius:50%}.entry-panel{background:#202a25d9;border:1px solid #ffffff1d;border-radius:16px;padding:28px 32px 22px;box-shadow:0 22px 80px #0002;backdrop-filter:blur(10px)}.entry-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);margin:0 -4px 27px}.entry-tabs button{position:relative;border:0;border-radius:0;background:transparent;color:var(--muted);padding-bottom:15px}.entry-tabs button[aria-selected=true]{color:var(--gold)}.entry-tabs button[aria-selected=true]:after{content:"";position:absolute;left:28px;right:28px;bottom:-1px;height:2px;background:var(--gold)}.entry-foot{text-align:center;margin-top:23px;color:#86958b;font-size:11px;letter-spacing:1px}.mode-picker{border:0;margin:0 0 15px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}.mode-picker legend{font-size:13px;margin-bottom:10px;color:#c7cec8}.mode-picker label{position:relative;margin:0;padding:13px 12px;border:1px solid var(--line);border-radius:8px;gap:3px;cursor:pointer}.mode-picker label:has(input:checked){border-color:var(--gold);background:#e4c78b0d}.mode-picker input{position:absolute;right:10px;top:12px;width:13px;min-height:13px}.mode-picker strong{font-size:14px;font-weight:500}.mode-picker small{font-size:10px;color:var(--muted)}.recent-rooms{margin-top:18px}.recent-rooms a{display:flex;justify-content:space-between;font-size:12px;color:#c5d9ca;padding:10px 0;border-bottom:1px solid var(--line)}.home-footer{position:relative;display:flex;justify-content:space-between;gap:10px;color:#73877a;font-size:10px;letter-spacing:1px;padding-top:14px;border-top:1px solid #ffffff0e}
body.in-room{overflow:hidden;background:#080c0a}#stage,#shade,#plates{position:fixed;inset:0}#stage canvas{width:100%;height:100%;display:block}#shade{pointer-events:none;background:linear-gradient(#02060466,transparent 25%,transparent 75%,#0005)}#plates{pointer-events:none;z-index:3}.room-bar{position:fixed;z-index:10;top:0;left:0;right:0;padding:max(14px,env(safe-area-inset-top)) 24px 12px;display:flex;gap:13px;align-items:center;background:linear-gradient(#080e0cee,transparent)}.room-brand{font-weight:650;color:var(--gold);letter-spacing:2px;font-size:20px;white-space:nowrap}.room-brand span{font-size:12px;margin-left:6px}.code-button{font-variant-numeric:tabular-nums;letter-spacing:1px;border-radius:24px;background:#18231dc9;font-size:13px;padding:8px 16px}.room-bar nav{display:flex;gap:8px;margin-left:auto}.room-bar nav button{background:#19221ed9;font-size:12px}.connection{font-size:11px;color:#9ec4aa;white-space:nowrap}.connection.offline{color:#e8ad98}.banner{position:fixed;top:74px;left:50%;transform:translateX(-50%);z-index:25;background:#633a24;color:#ffe6c4;padding:9px 18px;border-radius:8px;max-width:calc(100vw - 28px);font-size:13px;text-align:center}.room-summary{position:fixed;top:82px;left:50%;transform:translateX(-50%);z-index:4;display:flex;gap:18px;align-items:center;background:#0c1511c4;border:1px solid #c9dcbd21;padding:7px 20px;border-radius:24px;font-size:12px;color:#b9c9ba;white-space:nowrap}.room-summary strong{color:#e5d4ae;font-weight:500}.lobby-panel{position:fixed;z-index:5;top:51%;left:50%;transform:translate(-50%,-50%);width:min(510px,calc(100vw - 32px));max-height:calc(100dvh - 150px);overflow:auto;border:1px solid #d4ddc52d;background:#17221ef2;box-shadow:0 28px 100px #0008;border-radius:18px;padding:25px 27px;backdrop-filter:blur(18px)}.lobby-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.lobby-title h1{font-size:25px;line-height:1.3;font-weight:550;word-break:break-word}.lobby-title .eyebrow{font-size:10px;margin-bottom:8px}.lobby-title button{font-size:12px;flex:none}.rule-line{font-size:12px;color:var(--muted);margin:14px 0 20px}.seat-list{display:grid;grid-template-columns:1fr 1fr;gap:9px}.lobby-seat{display:flex;align-items:center;gap:10px;padding:12px 10px;border-radius:9px;background:#ffffff05;border:1px solid #ffffff13;min-width:0}.avatar{flex:none;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#3a5142;color:#e9dfc8;font-size:13px}.avatar.bot{background:#464b3b;color:#d9c89b}.lobby-seat.empty{border-style:dashed;color:#7e8d80;background:transparent}.seat-text{min-width:0}.seat-text b{font-size:13px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:550}.seat-text small{font-size:10px;color:var(--muted)}.seat-text small.ready{color:var(--green)}#lobby-action{display:flex;gap:10px;margin-top:22px}#lobby-action button{flex:1}#lobby-hint{font-size:11px;text-align:center;margin:12px 0 0}.seat-plate{position:absolute;left:0;top:0;min-width:122px;max-width:180px;padding:8px 12px;display:flex;align-items:center;gap:8px;border:1px solid #ffffff20;background:#0f1915e8;border-radius:12px;box-shadow:0 5px 16px #0005;transition:border-color .2s,opacity .2s}.seat-plate.active{border-color:var(--gold);box-shadow:0 0 0 2px #e4c78b20,0 6px 20px #0005}.seat-plate.folded{opacity:.55}.seat-plate .avatar{width:28px;height:28px;font-size:11px}.seat-plate .player-name{font-size:12px;max-width:104px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.seat-plate .player-stack{font-size:13px;color:var(--gold);font-variant-numeric:tabular-nums}.seat-plate .player-tag{font-size:10px;color:#99ad9f;white-space:nowrap}.seat-plate .act-tag{position:absolute;bottom:-20px;left:50%;transform:translateX(-50%);font-size:10px;background:#1c2a20e8;white-space:nowrap;border-radius:4px;padding:1px 5px;color:#cddacb}.pot-label{display:flex;align-items:center;gap:6px;position:fixed;z-index:4;transform:translateY(-50%);text-align:left;font-variant-numeric:tabular-nums;pointer-events:none}.pot-label small{display:block;line-height:1.2;font-size:10px;letter-spacing:2px;color:#9ab6a2}.pot-label b{display:block;font-size:19px;line-height:1.2;color:#f1e5c8;font-weight:550}.game-notice{position:fixed;z-index:9;top:42%;left:50%;transform:translate(-50%,-50%);width:min(380px,calc(100vw - 40px));padding:22px;border-radius:14px;border:1px solid #cfb98055;background:#17231df2;box-shadow:0 12px 60px #0006;text-align:center;font-size:14px}.game-notice button{margin:14px 4px 0}.action-panel{display:grid;grid-template-rows:24px 18px 44px 48px;gap:4px;height:168px;position:fixed;z-index:8;bottom:max(18px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:min(540px,calc(100vw - 28px));padding:10px 14px;background:#13211bea;border:1px solid #bdd5b930;border-radius:14px;backdrop-filter:blur(12px);box-shadow:0 12px 40px #0005}.action-heading{display:flex;justify-content:space-between;align-items:center;color:#d8dbc6;font-size:12px;min-width:0;gap:12px;margin:0}#countdown{font-variant-numeric:tabular-nums;color:var(--gold)}.action-buttons{display:flex;gap:8px;min-height:44px;align-items:stretch}.action-buttons .wait-message{display:flex;align-items:center;color:var(--muted);font-size:12px}.action-buttons button{flex:1;white-space:nowrap}.action-buttons .danger{color:#e9b8aa;background:#9b4d3226}.self-line{font-size:10px;color:#8fa494;margin-top:10px;display:flex;justify-content:space-between}.activity{position:fixed;bottom:27px;left:24px;max-width:calc(50vw - 300px);color:#97ab9b;font-size:11px;pointer-events:none;z-index:4;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.chat-button{position:fixed;bottom:28px;right:24px;z-index:9;background:#16251ee6;font-size:12px;border-radius:24px}.chat-button span{font-size:10px;color:var(--gold)}
dialog{color:var(--paper);background:#202c25;border:1px solid #e9edd22b;border-radius:16px;box-shadow:0 30px 90px #0009;padding:0;width:min(480px,calc(100vw - 28px));max-height:calc(100dvh - 40px)}dialog::backdrop{background:#010a06b5;backdrop-filter:blur(5px)}dialog[open]{animation:sheet-in .22s ease-out}dialog>header{position:sticky;top:0;background:#202c25;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 22px;border-bottom:1px solid var(--line)}dialog h2{font-size:19px}dialog header button{border:0;font-size:25px;padding:0;width:44px;background:transparent}#sheet-content{padding:22px}#sheet-error{padding:0 22px 16px}#sheet-error:empty{display:none}.sheet-actions{display:flex;gap:10px;margin-top:18px}.sheet-actions button{flex:1}.menu-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}.manage-member{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid var(--line);padding:10px 0;font-size:13px}.manage-member span{overflow:hidden;text-overflow:ellipsis}.manage-member div{display:flex;gap:6px}.manage-member button{font-size:11px;padding:5px 9px}.chat-log{max-height:340px;overflow:auto;display:flex;flex-direction:column;gap:15px;margin-bottom:20px}.chat-item b{display:block;color:var(--gold);font-size:11px;margin-bottom:3px}.chat-item p{font-size:14px;overflow-wrap:anywhere}.chat-input{display:flex;gap:8px}.chat-input input{flex:1;min-width:0}.chat-input button{flex:none}.history-hand{border-bottom:1px solid var(--line);padding:16px 0}.history-hand:first-child{padding-top:0}.history-hand h3{font-size:14px;margin:0 0 8px;font-weight:600}.history-hand p{font-size:12px;color:#bdc9bf;line-height:1.8}.history-hand details{font-size:11px;color:#92a898;margin-top:8px}.history-hand summary{cursor:pointer;min-height:32px}.history-hand details p{font-size:11px}.cards-inline{font-family:Georgia,serif;font-size:17px;color:#ecdfbf;letter-spacing:2px}.ranking{width:100%;border-collapse:collapse;font-size:13px}.ranking th{text-align:left;font-size:11px;color:var(--muted);font-weight:400;padding:10px 0}.ranking td{padding:12px 0;border-top:1px solid var(--line)}.ranking td:last-child,.ranking th:last-child{text-align:right;font-variant-numeric:tabular-nums}.positive{color:#aad4ae}.negative{color:#e8ac9d}.result-hero{text-align:center;margin:0 0 22px}.result-hero .eyebrow{margin-bottom:6px}.result-hero h3{font-size:27px;margin:0;font-weight:500}.result-hero p{color:var(--muted);font-size:12px;margin-top:6px}.quick-bets{display:flex;gap:8px;margin:12px 0}.quick-bets button{flex:1;padding:8px;font-size:12px}.bet-value{display:flex;align-items:center;gap:15px;margin:20px 0}.bet-value input[type=number]{width:130px}.bet-value input[type=range]{flex:1;accent-color:var(--gold);padding:0;background:transparent;border:0;box-shadow:none}.confirm-text{font-size:14px;line-height:1.8;color:#c7d2c8}.toast{position:fixed;bottom:calc(180px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:50;background:#e9dec6;color:#233026;font-size:13px;padding:10px 18px;border-radius:9px;box-shadow:0 7px 30px #0005;max-width:calc(100vw - 28px);text-align:center}.wait-message{text-align:center;color:var(--muted);font-size:13px;padding:13px 0}.loading-stage{position:fixed;inset:0;display:grid;place-items:center;color:var(--muted)}
@keyframes sheet-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.entry-panel,.welcome{animation:enter .5s both}.entry-panel{animation-delay:.08s}
@media(max-width:1050px){.home{padding:26px 38px}.home-grid{gap:34px;grid-template-columns:1fr 400px}.hero-cards{right:0;top:210px;transform:scale(.8) rotate(8deg);transform-origin:right top}.mode-notes{gap:15px;font-size:10px}.activity{display:none}}
@media(max-width:760px){.home{padding:22px 22px 18px}.brand-note{display:none}.brand-mark{font-size:31px}.brand{font-size:12px}.home-grid{display:block;padding:28px 0;min-height:auto}.welcome{min-height:0;padding:0 0 25px}.welcome .eyebrow{font-size:10px;margin-bottom:12px}.welcome h1{font-size:43px;line-height:1.2;letter-spacing:-1.6px}.welcome h1 br{display:none}.lead{font-size:13px;line-height:1.7;margin-top:14px}.lead br{display:none}.hero-cards,.mode-notes{display:none}.entry-panel{padding:22px 22px 18px;max-width:480px;margin:0 auto}.entry-panel h2{font-size:22px}.entry-tabs{margin-bottom:22px}.home-footer{font-size:9px;letter-spacing:0;flex-direction:column;gap:5px}.room-bar{padding: max(10px,env(safe-area-inset-top)) 12px 10px;gap:7px}.room-brand{font-size:25px}.room-brand span{display:none}.code-button{padding:6px 10px;font-size:11px;min-height:40px}.room-bar nav{gap:5px}.room-bar nav button{padding:7px 10px;font-size:11px;min-height:40px}.connection{font-size:9px}.room-summary{top:65px;gap:12px;font-size:10px;padding:5px 12px}.lobby-panel{padding:21px 20px;max-height:calc(100dvh - 130px);top:52%}.lobby-title h1{font-size:22px}.seat-list{gap:7px}.lobby-seat{padding:9px 8px;gap:8px}.lobby-title button{font-size:11px;padding:8px 10px}.lobby-seat .avatar{width:28px;height:28px;font-size:11px}.action-panel{bottom:max(10px,env(safe-area-inset-bottom));padding:10px 12px;border-radius:12px}.action-buttons button{font-size:13px;padding:8px 6px;min-height:44px}.action-heading{font-size:11px;margin:0}.self-line{font-size:10px}.chat-button{right:12px;bottom:170px;font-size:10px;padding:6px 12px;min-height:36px}.seat-plate{min-width:91px;max-width:120px;padding:6px 8px;border-radius:9px;gap:6px}.seat-plate .avatar{display:none}.seat-plate .player-name{font-size:10px;max-width:95px}.seat-plate .player-stack{font-size:12px}.seat-plate .player-tag{font-size:9px}.seat-plate .act-tag{font-size:9px;bottom:-18px}.pot-label{flex-direction:column;align-items:flex-start;gap:0;padding:2px 4px}.pot-label b{font-size:17px}.pot-label small{font-size:9px}.banner{top:105px;font-size:11px;width:calc(100vw - 28px)}dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 24px)}dialog>header{padding:13px 18px}#sheet-content{padding:18px}.game-notice{font-size:13px}.toast{font-size:12px}}
@media(max-height:540px) and (orientation:landscape){.room-summary{top:58px}.lobby-panel{top:56%;max-height:calc(100dvh - 90px)}.seat-list{grid-template-columns:repeat(3,1fr)}.action-panel{padding:8px 12px;bottom:6px;max-width:440px}.self-line{display:none}.action-heading{margin:0}.chat-button{bottom:15px}.seat-plate .player-tag{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Touch and small text refinement after the first mobile walkthrough. */
@media(max-width:760px){.room-bar nav button,.code-button{min-height:44px}.seat-plate .player-name{font-size:12px}.seat-plate .player-stack{font-size:14px}.seat-plate .player-tag{font-size:10px}.seat-plate .act-tag{font-size:10px}.seat-plate.folded{opacity:.75}.room-bar{gap:5px}.room-bar nav button{padding:7px 8px}.connection{font-size:9px}.chat-button{min-height:44px}}
.pot-label{padding:3px 7px;border-radius:6px;background:#10261e80;white-space:nowrap}

/* Keep the room setup and the decision at hand in the first phone screen. */
@media(max-width:760px){.home.creating .welcome{display:none}.home.creating .home-grid{padding-top:20px}.home.creating #create-form>h2,.home.creating #create-form>p.muted{display:none}.home.creating .entry-panel{padding-top:14px}.home.creating .entry-tabs{margin-bottom:18px}.home.creating .entry-foot{margin-top:16px}}
.action-panel.your-turn{border-color:#e4c78b99;box-shadow:0 0 0 1px #e4c78b1a,0 12px 40px #0005}.your-turn #action-status{color:var(--gold);font-weight:650}.your-turn #countdown{background:#e4c78b18;padding:2px 9px;border-radius:6px;font-size:14px;font-weight:650}.action-panel.urgent{border-color:#e99b76}.urgent #countdown{background:#713c29;color:#ffdfc7}.urgent #action-status{color:#ffcb9f}

/* Approved sequential showdown; table cards stay in the existing Three scene. */
#showdown-layer{position:fixed;inset:0;z-index:5;pointer-events:none;overflow:hidden}
.showdown-wash{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 46%,transparent 12%,#06100b70 70%);opacity:0}
.showdown-badge{position:absolute;transform:translate(-50%,-18px);text-align:center;opacity:0;max-width:140px;white-space:nowrap}
.showdown-badge .mini-space{height:42px}.showdown-badge strong{display:block;padding:3px 7px;border-radius:5px;background:#142b20e8;border:1px solid #c9bc8050;color:#ecddb0;font-size:12px;font-weight:650}
.showdown-badge small{display:block;color:#e2dcc4;font-size:11px;margin-top:3px;max-width:140px;overflow:hidden;text-overflow:ellipsis}
.showdown-badge.won strong{background:#e4c78b;color:#25372b}.showdown-badge.dim{filter:saturate(.65)}
.showdown-type{position:absolute;left:50%;top:0;width:320px;margin-left:-160px;text-align:center;transform-origin:50% 35%;opacity:0;color:#f3dfb0;text-shadow:2px 4px 0 #18372c,0 10px 25px #0008}
.showdown-type small{display:block;font-size:12px;letter-spacing:1px}.showdown-type h2{margin:2px 0;font-size:44px;line-height:1.2;font-weight:900;letter-spacing:3px}.showdown-type h2 span{display:inline-block}.showdown-type p{font-size:14px;font-weight:700}
.showdown-winner{position:absolute;left:50%;top:43%;width:min(540px,92vw);text-align:center;opacity:0;color:#f4db9d;text-shadow:2px 4px 0 #284534,0 5px 14px #0009}
.showdown-winner small{display:block;font-size:13px;color:#f3eddb}.showdown-winner h2{font-size:clamp(28px,5.2vw,64px);line-height:1.2;margin:10px 0;font-weight:900;overflow-wrap:anywhere}.showdown-winner b{font-size:22px;color:#fff3d2}.showdown-winner p{display:inline-block;max-width:100%;padding:8px 12px;margin-top:16px;border-radius:7px;background:#0b251eea;border:1px solid #e5d19755;font-size:12px;color:#fff4d9;line-height:1.6;text-shadow:none}
.hand-stage{font-size:14px;font-weight:650;color:#e4cf9e;margin:0;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.action-status{font-size:12px;color:#bbc9bc;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.action-guide{font-size:12px;color:#bbc9bc;line-height:1.5;margin-bottom:10px}.hand-hint{font-size:12px;color:#e7d5ac;margin:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.self-line{flex-wrap:wrap;gap:3px 10px}
.showdown-active .act-tag,.showdown-active #pot-label{visibility:hidden}.showdown-active .action-panel{border-color:#cbb17655}.showdown-active .game-notice{top:18%;padding:10px;font-size:12px}.showdown-active .showdown-badge{z-index:2}
@media(max-width:760px){.showdown-type h2{font-size:42px}.showdown-type p{font-size:13px}.showdown-badge .mini-space{height:33px}.showdown-badge strong{font-size:10px;padding:2px 5px}.showdown-badge small{font-size:10px;max-width:110px}.showdown-winner h2{font-size:clamp(28px,8vw,44px)}.showdown-winner b{font-size:19px}.showdown-winner p{font-size:11px}.action-guide{font-size:11px}.hand-hint{font-size:11px}.chat-button{bottom:190px}.hand-stage{font-size:13px}}
@media(max-height:540px) and (orientation:landscape){.action-guide,.hand-hint{display:none}.showdown-winner{top:42%}.showdown-type h2{font-size:32px}.showdown-badge small{display:none}}

.showdown-active #action-buttons{visibility:hidden}.showdown-visible .act-tag,.showdown-visible #chat-button{visibility:hidden}

.showdown-visible #action-buttons{visibility:hidden}@media(max-width:700px){.many-seats .seat-plate .player-tag:not(.player-action){display:none}.many-seats .seat-plate{padding:5px 8px}}

@media(min-width:761px){.room-summary{top:72px}}

.showdown-winner b{display:block}.showdown-winner p{display:block;width:fit-content;max-width:100%;margin:16px auto 0}.showdown-winner small{display:inline-block;padding:3px 9px;background:#153a2bd9;border-radius:5px}
@media(max-width:760px){.showdown-winner h2{font-size:clamp(40px,13vw,56px)}}

/* A single, scrollable result sheet follows the completed showdown. */
#sheet[data-kind=hand-results]{width:min(560px,calc(100vw - 20px));overflow:hidden}
#sheet[data-kind=hand-results][open]{display:flex;flex-direction:column}
#sheet[data-kind=hand-results]>header{flex:none}
#sheet[data-kind=hand-results] #sheet-content{overflow:auto;min-height:0;padding-bottom:0}
.hand-result-intro{text-align:center;padding:2px 0 20px}.hand-result-intro .eyebrow{font-size:11px;letter-spacing:2px;margin-bottom:7px}
.hand-result-intro h3{font-size:26px;line-height:1.35;color:var(--paper);margin:0 0 5px;overflow-wrap:anywhere}.hand-result-intro>p:last-child{color:var(--gold);font-size:14px}
.hand-rank-heading{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:11px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.hand-rank-list{list-style:none;padding:0;margin:0}.hand-rank-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:10px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);animation:enter .26s both;animation-delay:calc(var(--row)*45ms)}
.hand-rank{color:var(--muted);font-size:14px;text-align:center;line-height:1.4}.best .hand-rank{color:var(--gold);font-weight:700}.hand-rank-player{min-width:0}.hand-rank-player>b{font-size:15px;display:block;overflow-wrap:anywhere}.hand-rank-player>b>small{font-size:10px;color:var(--muted);font-weight:400;margin-left:7px}.hand-rank-player>p{font-size:12px;color:var(--muted);margin:3px 0 6px}.best .hand-rank-player>p{color:var(--gold)}
.hand-rank-chips{text-align:right;font-variant-numeric:tabular-nums;align-self:center}.hand-rank-chips>strong{display:block;font-size:20px;font-weight:650}.hand-rank-chips>small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.neutral{color:var(--paper)}
.result-cards{display:flex;gap:4px}.result-card{display:inline-flex;align-items:center;justify-content:center;gap:1px;background:var(--paper);color:#23342b;border-radius:3px;min-width:27px;height:30px;padding:0 3px;font:700 13px Georgia,serif;box-shadow:0 2px 0 #0005}.result-card.red{color:#a0443d}.result-card i{font-style:normal;font-size:12px}
.hand-result-pots{padding:12px 0 5px}.hand-result-pots p{display:flex;justify-content:space-between;gap:12px;margin:5px 0;font-size:12px;color:#cad3ca}.hand-result-pots p>span:last-child{text-align:right;overflow-wrap:anywhere}.hand-result-pots b{color:var(--gold);font-weight:500}
.hand-result-note{font-size:11px;color:var(--muted);line-height:1.7;margin:0 0 16px}.hand-result-footer{position:sticky;bottom:0;background:#202c25;padding:12px 0 18px;border-top:1px solid var(--line);display:flex;align-items:center;gap:12px;justify-content:space-between}.hand-result-footer p{font-size:11px;color:var(--muted);max-width:210px}.hand-result-footer button{flex:none;font-size:12px}.history-result-button{margin-top:10px;font-size:12px}
@media(max-width:400px){.hand-rank-row{grid-template-columns:26px minmax(0,1fr) auto;gap:7px}.hand-rank-chips>strong{font-size:18px}.hand-rank-player>b{font-size:14px}.result-card{min-width:24px;height:28px;font-size:12px}.result-cards{gap:3px}.hand-result-intro h3{font-size:24px}.hand-result-footer{gap:8px}}
@media(prefers-reduced-motion:reduce){.hand-rank-row,#sheet[data-kind=hand-results][open]{animation:none}}

.hand-rank>small{display:block;font-size:10px;white-space:nowrap;font-weight:400;margin-bottom:2px}

/* Room-wide scores share the existing green/gold surfaces. The table owns its viewport. */
:root{--scoreboard-space:0px}
#stage,#shade,#plates,#showdown-layer{right:var(--scoreboard-space)}
.room-summary,.lobby-panel,.game-notice,.action-panel,.next-hand{left:calc((100% - var(--scoreboard-space))/2)}
body.in-room .toast{left:calc((100% - var(--scoreboard-space))/2)}
.chat-button{right:calc(24px + var(--scoreboard-space))}
.next-hand{position:fixed;top:45%;transform:translate(-50%,-50%);z-index:7;text-align:center;background:#10291eef;border:1px solid #e4c78b77;border-radius:18px;padding:18px 30px 16px;box-shadow:0 12px 44px #0007;pointer-events:none;animation:countdown-in .2s ease-out}
.next-hand>p{font-size:14px;color:var(--gold);letter-spacing:2px}.next-hand>div{display:flex;align-items:baseline;justify-content:center;gap:7px;line-height:1.15;margin:5px 0}.next-hand strong{font-size:64px;min-width:1.2ch;color:var(--paper);font-weight:750;font-variant-numeric:tabular-nums;display:inline-block}.next-hand span,.next-hand small{font-size:11px;color:var(--muted)}
.next-hand-visible #pot-label{visibility:hidden}
.scoreboard-toggle{position:fixed;z-index:12;top:102px;right:14px;padding:7px 12px;min-height:38px;font-size:12px;background:#142b21ed;border-color:#d7c28d55;color:var(--gold);border-radius:24px}
.scoreboard-toggle span{margin-left:5px;display:inline-block;transition:transform .2s}.scoreboard-open .scoreboard-toggle span{transform:rotate(180deg)}
.room-scoreboard{display:none;position:fixed;z-index:11;right:14px;top:147px;bottom:192px;width:min(340px,calc(100vw - 28px));background:#17271f;border:1px solid #d8d7bb33;border-radius:14px;box-shadow:0 14px 50px #0007;overflow:hidden;flex-direction:column}
.scoreboard-open .room-scoreboard{display:flex;animation:enter .18s ease-out}
.room-scoreboard>header{display:flex;align-items:center;justify-content:space-between;padding:17px 18px 13px;flex:none}.room-scoreboard .eyebrow{font-size:10px;letter-spacing:2px;margin-bottom:2px}.room-scoreboard h2{font-size:20px;font-weight:550}.room-scoreboard>header>button{padding:0;width:40px;min-height:40px;font-size:23px;background:transparent;border:0}
.room-score-label{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);padding:0 18px 9px;border-bottom:1px solid var(--line)}
#room-score-list{list-style:none;padding:0 12px;margin:0;overflow:auto;min-height:0;flex:1;overscroll-behavior:contain}
.room-score-row{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:9px;padding:14px 6px;align-items:center;border-bottom:1px solid var(--line);animation:enter .2s ease-out}.room-score-row.self{background:#e4c78b0a}.room-score-rank{font-size:14px;color:var(--muted);font-variant-numeric:tabular-nums}.room-score-row.leading .room-score-rank{color:var(--gold);font-weight:700}.room-score-player{min-width:0}.room-score-player>b{font-size:14px;font-weight:550;display:block;overflow-wrap:anywhere}.room-score-player em{font-size:9px;font-style:normal;color:var(--gold);display:inline-block;margin-left:5px}.room-score-player>small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.room-score-row>strong{font-size:18px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.room-score-empty{padding:24px 6px;font-size:13px;color:var(--muted);line-height:1.8}
.room-scoreboard>footer{padding:12px 18px;border-top:1px solid var(--line);flex:none}.room-scoreboard>footer p{font-size:11px;color:#b9c8ba}.room-scoreboard>footer small{display:block;font-size:10px;color:var(--muted);margin-top:4px}
@media(min-width:1100px){body.in-room{--scoreboard-space:304px}.room-scoreboard{display:flex;top:94px;bottom:24px;right:16px;width:272px;z-index:9;box-shadow:0 14px 50px #0003}.scoreboard-toggle,#scoreboard-close{display:none}.action-panel{width:min(540px,calc(100vw - var(--scoreboard-space) - 28px))}}
@media(max-width:760px){.next-hand{top:43%;padding:15px 25px}.next-hand strong{font-size:56px}.chat-button{right:12px}}
@media(max-height:540px){.room-scoreboard{top:104px;bottom:150px}.scoreboard-toggle{top:64px}.next-hand{top:43%;padding:10px 23px}.next-hand strong{font-size:42px}.next-hand>small{display:none}}
@media(prefers-reduced-motion:reduce){.next-hand,.room-score-row,.scoreboard-open .room-scoreboard{animation:none}}

@keyframes countdown-in{from{opacity:0}to{opacity:1}}

/* Own stack remains beneath the cards, with a compact, stable height. */
.seat-plate.self{min-width:0;max-width:260px;height:40px;padding:6px 10px;gap:8px}
.seat-plate.self>div{display:flex;align-items:center;gap:12px;min-width:0}
.seat-plate.self .avatar{width:24px;height:24px}
.seat-plate.self .player-name{max-width:120px;font-size:12px}
.seat-plate.self .player-stack{font-size:14px;white-space:nowrap}
.seat-plate.self .player-tag,.seat-plate.self .act-tag{display:none}
@media(max-height:540px) and (orientation:landscape){.action-panel{height:112px;grid-template-rows:20px 18px 44px;gap:6px;padding:8px 12px}.action-buttons{min-height:44px}.hand-hint{display:none}.action-buttons button{min-height:44px;padding:6px}.chat-button{bottom:130px}}

@media(max-width:760px){.pot-label{padding:2px 4px}}

.showdown-active .player-action,.showdown-visible .player-action{visibility:hidden}

/* Information card: current strength + five final-hand probabilities, in the same 168px. */
.probability-summary{display:grid;grid-template-rows:14px 32px;gap:2px;width:100%;height:48px;min-height:48px;padding:0;border:0;border-radius:5px;background:transparent;text-align:left}
.probability-summary:hover{background:#ffffff08}.probability-summary:disabled{opacity:1;cursor:default;background:transparent}.probability-summary:active{transform:none}
.probability-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;font-size:10px;line-height:14px;color:var(--muted)}
.probability-summary .hand-hint{font-size:11px;line-height:14px;min-width:0}.probability-heading>span:last-child{flex:none}
.probability-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));min-width:0;color:#c2ccbf}
.probability-list>span{display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:11px;line-height:15px;min-width:0;white-space:nowrap}
.probability-list>span+span{border-left:1px solid var(--line)}.probability-list b{font-size:13px;line-height:17px;font-weight:600;color:var(--gold);font-variant-numeric:tabular-nums}
.probability-list>.probability-message{grid-column:1/-1;align-items:flex-start;color:var(--muted);font-size:11px}
.probability-known{font-size:13px;line-height:1.8;color:var(--gold)}.probability-detail-list>div{display:flex;justify-content:space-between;align-items:center;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px}
.probability-detail-list b{font-variant-numeric:tabular-nums;color:var(--gold);font-size:16px;font-weight:600}.probability-footnote{margin-bottom:0!important}
@media(max-height:540px) and (orientation:landscape){.probability-summary{display:none}}
