body.club-enabled #c3d { position:fixed; inset:112px 0 150px; width:auto; height:auto; }
body.club-enabled #c3d canvas { display:block; width:100%; height:100%; touch-action:none; }
body.club-enabled:has(#sidepanel:not(.collapsed)) #c3d { right:270px; }
/* The mobile host hides this panel regardless of its remembered open state. */
body.club-enabled.is-mobile:has(#sidepanel:not(.collapsed)) #c3d { right:0; }
body.club-enabled #topbar .brand span { display:none; }
#club-toolbar { position:fixed; left:12px; right:12px; top:67px; z-index:42; display:flex; align-items:center; gap:7px; flex-wrap:wrap; }
#club-toolbar button { padding:8px 12px; border:1px solid #786746; border-radius:6px; background:#153233; color:#efe6d3; cursor:pointer; }
#club-toolbar button:disabled { opacity:.4; cursor:default; }
#club-status { color:#e1d3ad; font:12px system-ui; padding-left:8px; }
#club-cards { position:fixed; inset:0; z-index:18; pointer-events:none; }
.club-card-row { position:fixed; display:flex; gap:4px; transform:translate(-50%,-50%); }
.club-card-row[hidden] { display:none; }
.club-shown-hand { z-index:24; }
.club-shown-label { position:absolute; left:50%; top:calc(100% + 6px); transform:translateX(-50%); width:max-content; max-width:220px; box-sizing:border-box; padding:4px 7px; border:1px solid #938260; border-radius:4px; background:#102a29f5; color:#eee6d6; text-align:center; font:600 12px/1.3 system-ui; }
.club-shown-label.winner { border-color:#b9d2bd; color:#e0efe0; }
.club-floating-board .felt-slot { display:none; }
body.club-seated-overlays .club-floating-board { gap:7px; z-index:24; }
body.club-seated-overlays :is(.hole-card-dom,.hole-hand-label,.pctfloat) { transition:opacity .22s ease; }
body.club-enabled.club-seated-overlays .hole-hand-label { display:block; }
body.club-enabled.club-seated-overlays .club-seat-equity { display:block!important; }
body.club-seated-overlays .club-seat-bet { max-width:min(220px,calc(100vw - 32px)); white-space:normal; text-align:center; line-height:1.25; padding:4px 7px; box-sizing:border-box; }
body.club-seated-overlays .club-seat-bet[data-displaced="true"] { border-color:var(--club-brass); }
.club-card { width:var(--card-width,46px); aspect-ratio:.714; padding:3px; box-sizing:border-box; border:1px solid #c4b99c; border-radius:3px; background:#eee9dc; color:#172734; display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; box-shadow:0 2px 3px #0007; font:bold calc(var(--card-width,46px)*.49) Georgia; }
.club-card.red { color:#a13b32; }
.club-card span { align-self:center; font-size:1.15em; }
.club-card.back { background:repeating-linear-gradient(45deg,#203f4b 0 4px,#53666b 4px 5px); border:2px solid #a78e5d; }
/* Keep seven-card hands at their own seat. Each exposed left strip contains
   both the rank (including 10) and suit; later cards cover only blank space. */
.club-stud-hand { gap:0; isolation:isolate; }
.club-stud-hand .club-card { flex-shrink:0; padding:calc(var(--card-width,46px)*.04); font-size:calc(var(--card-width,46px)*.44); box-shadow:0 2px 3px #0005; }
.club-stud-hand .club-card + .club-card { margin-left:calc(var(--card-width,46px)*-.36); }
.club-stud-hand .club-card span { align-self:flex-start; }
body.club-enabled .plate { width:112px; min-height:38px; padding:4px 6px; border-radius:5px; background:#0b2022ec; z-index:22; }
body.club-enabled .plate .av { display:none; }
body.club-enabled .plate .nm { font-size:12px; }
body.club-enabled .plate .st { font-size:11px; white-space:nowrap; }
body.club-enabled .plate .timer { margin-top:3px; }
body.club-enabled #domActionGlow, body.club-enabled #studFelt, body.club-enabled #potlabel { display:none!important; }
body.club-enabled:not(.tv-allin-moment) #holeOverlay { display:none; }
body.club-enabled:not(.tv-allin-moment):not(.club-stud-reveal):not(.club-spectating) .tvp, body.club-enabled:not(.tv-allin-moment):not(.club-stud-reveal) .pctfloat { display:none!important; }
body.club-enabled #sidepanel { z-index:43; }
body.club-enabled #actionbar { z-index:44; bottom:20px; }
body.club-enabled #tvpot { top:auto; bottom:112px; pointer-events:none; }
/* Center notices over the rendered table, excluding the open standings panel. */
body.club-enabled :is(#banner,#outsbar), body.club-enabled.tv-allin-moment #outsbar { left:var(--club-table-center, 50%); }
body.club-enabled #banner { top:115px; max-width:calc(100vw - 24px); box-sizing:border-box; }
body.club-enabled #tvpanels { top:112px; }
body.club-enabled .tvp { min-width:0; width:260px; max-width:260px; padding:6px; gap:6px; }
body.club-enabled .tvp-cards { gap:2px; }
body.club-enabled .tvp .mcard { width:24px; height:34px; font-size:12px; }
body.club-enabled .tvp .mcard .ms { font-size:12px; }
body.club-enabled .tvp-name, body.club-enabled .tvp-stack, body.club-enabled .tvp-pct { font-size:12px; }
body.club-enabled .tvp-name .pos { font-size:9px; }
body.club-enabled .tvp-pct { min-width:32px; }
body.club-enabled .tvp-action { font-size:10px; min-height:12px; }
/* Reserve the announcement row throughout the runout; fading it must not move the outs. */
body.club-enabled.tv-allin-moment #outsbar { top:calc(115px + var(--club-banner-height, 50px) + 12px); }
#club-fade { position:fixed; inset:112px 0 150px; z-index:35; background:#050d0c; opacity:0; pointer-events:none; }
#club-loading { position:fixed; inset:0; background:#081719; z-index:95; color:#f3e8d2; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:20px; padding:24px; text-align:center; font:18px system-ui; }
body.club-away #tvpot { display:none!important; }
body.club-away .spotlight-award-chip { display:none!important; }
.club-presentation-choice { display:none; } /* Legacy remains available for a future secret/unlock. */
.club-presentation-choice a { color:#e5c789; }
body.club-away #holeOverlay, body.club-away #actionbar, body.club-away #vegasDrawBar, body.club-away .tvp, body.club-away .pctfloat, body.club-away #outsbar { display:none!important; }
body:has(#start:not(.hidden)) #club-toolbar, body:has(#start:not(.hidden)) #club-cards { visibility:hidden; }
@media(max-width:900px){
  body.club-enabled #c3d { top:130px; bottom:132px; }
  #club-toolbar { top:60px; gap:4px; }
  #club-toolbar button { padding:6px 7px; font-size:11px; }
  #club-status { font-size:10px; }
  body.club-enabled .plate { width:82px; }
  body.club-enabled .plate .nm { font-size:10px; }
  body.club-enabled .plate .st { font-size:9px; }
}
@media(max-height:500px) and (orientation:landscape){
  body.club-enabled #c3d { top:83px; bottom:108px; }
  body.club-enabled #topbar { height:38px; min-height:38px; }
  #club-toolbar { top:42px; }
  #club-toolbar button { padding:5px 6px; font-size:10px; }
  #club-status { display:none; }
  body.club-enabled .plate { width:70px; padding:2px 3px; min-height:26px; }
  body.club-enabled .plate .st { font-size:8px; }
  body.club-enabled #actionbar { bottom:4px; }
  body.club-enabled #tvpot { bottom:88px; }
}

/* Club UI finish. Intentionally scoped: Legacy retains its original skin.
   Geometry, card projection, visibility gates and game timing belong to the host. */
body.club-enabled {
  --club-ink:#0b2022;
  --club-panel:#153233;
  --club-raised:#244440;
  --club-edge:#577269;
  --club-brass:#d4b379;
  --club-paper:#f3ead8;
  --club-muted:#a8bcb4;
  --club-font:'AEH Text',system-ui,sans-serif;
  --club-display:'AEH Display','Arial Narrow',sans-serif;
  --gold:var(--club-brass);
  --green:#a9cdbb;
  --red:#e59c94;
  --txt:var(--club-paper);
  --dim:var(--club-muted);
  --panel:#102a2af2;
  --panel-border:#57726980;
  font-family:var(--club-font);
  background:#0b2022;
}
body.club-enabled :is(#topbar,#club-toolbar,#actionbar,#club-resume-actions,#sidepanel,#tvpot,#vegasDrawBar) {
  background:linear-gradient(160deg,#1b3a38f5,#0b2022f7);
  border:1px solid #57726980;
  box-shadow:inset 0 1px #ffffff08,0 8px 24px #0003;
}
body.club-enabled #topbar { height:58px; padding:0 16px; border-width:0 0 1px; gap:12px; }
body.club-enabled #topbar .brand { font:600 24px/1 var(--club-display); letter-spacing:.055em; color:var(--club-paper); }
body.club-enabled #topbar .mid { gap:18px; }
body.club-enabled #topbar .stat { display:flex; flex-direction:column; gap:3px; }
body.club-enabled #topbar .stat i { font:600 9px/1 var(--club-font); letter-spacing:.11em; color:var(--club-muted); }
body.club-enabled #topbar .stat b,body.club-enabled #lvltimer { font:600 13px/1.1 var(--club-font); font-variant-numeric:tabular-nums; color:var(--club-paper); }
body.club-enabled #hMe,body.club-enabled #lvltimer { color:var(--club-brass); }
body.club-enabled #topbar .right { gap:6px; }
body.club-enabled #club-toolbar { top:64px; padding:3px; gap:6px; border-radius:7px; width:max-content; max-width:calc(100% - 24px); }
body.club-enabled :is(.iconbtn,#club-toolbar button,.preset,.lbtabs button) {
  border:1px solid var(--club-edge);
  border-radius:5px;
  background:linear-gradient(#284b45,#193432);
  color:var(--club-paper);
  font-family:var(--club-font);
  font-weight:550;
  box-shadow:inset 0 1px #ffffff08,0 2px 0 #061715;
  transition:background 140ms,border-color 140ms,box-shadow 140ms;
}
body.club-enabled .iconbtn { min-height:36px; min-width:36px; padding:7px 10px; }
body.club-enabled #club-toolbar button { min-height:38px; padding:8px 13px; font-size:12px; }
body.club-enabled #club-toolbar [data-club-view] { min-width:82px; }
body.club-enabled #club-toolbar [aria-pressed="true"] {
  background:#d3b774; color:#12282a; border-color:#ecd498;
  box-shadow:inset 0 1px #fff5,0 2px 0 #775e33;
}
body.club-enabled :is(#club-sitout,#club-sitout-bottom) { border-color:#a68c59; }
body.club-enabled #club-toolbar #club-sitout.is-sitting-out,body.club-enabled #club-sitout-bottom.is-sitting-out{background:#762f36;color:#fff2e8;border-color:#cf8c89}
body.club-enabled :is(#club-sitout-state,#club-sitout-bottom-state){display:block;font:600 10px/1.3 var(--club-font);letter-spacing:.06em;margin-top:2px}
body.club-enabled :is(#club-sitout-state,#club-sitout-bottom-state)[hidden]{display:none}
body.club-enabled #club-walk{height:38px;white-space:nowrap}
body.club-enabled #club-status { padding:0 10px; font:400 12px/1.4 var(--club-font); color:var(--club-muted); }
body.club-enabled :is(.iconbtn,#club-toolbar button,.preset,.lbtabs button):hover:not(:disabled):not(.locked) {
  border-color:var(--club-brass); background:#31534b; color:var(--club-paper);
}
body.club-enabled :is(.iconbtn,#club-toolbar button,.abtn,.preset,.mainbtn):disabled { opacity:.46; box-shadow:none; cursor:default; }
body.club-enabled :is(button,a,input):focus-visible { outline:2px solid #f3d593; outline-offset:3px; }
body.club-enabled :is(#speed,#raiseSlider) { accent-color:var(--club-brass); }
body.club-enabled #speed { min-height:24px; }
body.club-enabled #speedval { color:var(--club-brass); font:600 12px var(--club-font); }

/* A deliberately generous action area: colour communicates action hierarchy. */
body.club-enabled :is(#actionbar,#club-resume-actions) { border-radius:9px; padding:12px 14px; gap:12px; border-top-color:#a38b58; }
body.club-enabled #club-resume-actions { position:fixed; left:50%; bottom:20px; transform:translateX(-50%); z-index:44; box-sizing:border-box; max-width:calc(100vw - 24px); }
#club-resume-actions[hidden] { display:none!important; }
body.club-enabled #club-sitout-bottom { min-width:230px; background:linear-gradient(#e1c588,#c5a460); color:#12282a; }
body.club-enabled #club-sitout-bottom-state { margin-top:6px; }
body.club-enabled :is(#actionbar,#club-resume-actions,#vegasDrawBar) .abtn {
  min-height:48px; padding:12px 23px; border:1px solid #c9b477;
  border-radius:6px; font:600 21px/1.1 var(--club-display); letter-spacing:.04em;
  white-space:nowrap; flex-shrink:0;
  box-shadow:inset 0 1px #fff2,0 3px 0 #061412;
  transition:filter 140ms,box-shadow 140ms,transform 100ms;
}
body.club-enabled #btnFold { background:linear-gradient(#634047,#452b34); border-color:#a37178; color:#ffe1dc; }
body.club-enabled :is(#btnCall,#btnVegasPat) { background:linear-gradient(#365450,#253f3e); border-color:#71978b; color:#e4f0e7; }
body.club-enabled :is(#btnRaise,#btnStudRaiseHigh,#btnStudAllIn,#btnVegasDraw) { background:linear-gradient(#e1c588,#c5a460); border-color:#efd7a2; color:#12282a; }
body.club-enabled :is(#actionbar,#club-resume-actions,#vegasDrawBar) .abtn:hover:not(:disabled) { filter:brightness(1.12); }
body.club-enabled :is(#actionbar,#club-resume-actions,#vegasDrawBar) .abtn:active:not(:disabled) { transform:translateY(2px); box-shadow:inset 0 1px #fff2; }
body.club-enabled #raisebox { gap:5px; padding:0 5px; }
body.club-enabled .preset { min-height:30px; padding:5px 10px; font-size:11px; letter-spacing:.025em; white-space:nowrap; }
body.club-enabled #raiseSlider { width:210px; height:20px; }
body.club-enabled #raiseAmt { font:600 15px/1.2 var(--club-font); font-variant-numeric:tabular-nums; color:var(--club-paper); }
body.club-enabled #equityTip { font:400 10px/1.4 var(--club-font); color:var(--club-muted); }
body.club-enabled #equityTip b { color:#bad7c9; }

/* Information surfaces retain their original content and listeners. */
body.club-enabled #sidepanel { top:112px; border-radius:8px; }
body.club-enabled #paneltabs { padding:0 6px; border-color:#57726980; }
body.club-enabled #paneltabs button { min-height:42px; font:600 16px/1 var(--club-display); letter-spacing:.05em; color:var(--club-muted); }
body.club-enabled #paneltabs button.on { color:var(--club-paper); border-color:var(--club-brass); background:linear-gradient(transparent,#d3b77412); }
body.club-enabled #paneltabs button:hover { color:var(--club-paper); background:#ffffff06; }
body.club-enabled .panelbody { padding:10px 8px; font:400 12px/1.5 var(--club-font); scrollbar-color:#577269 transparent; }
body.club-enabled .standrow { padding:5px 7px; border-radius:4px; }
body.club-enabled .standrow:nth-child(even) { background:#ffffff03; }
body.club-enabled .standrow.me { background:#bfa06216; border:1px solid #ad935766; }
body.club-enabled .standrow .rk { color:#8fa69a; }
body.club-enabled .standrow .ch { color:#e1ceb0; }
body.club-enabled .logline { padding:7px 5px; border-color:#57726945; color:#c5d2c8; line-height:1.6; }
body.club-enabled .logline.important { color:#b9d7c9; }
body.club-enabled #tvpot { bottom:160px; border-radius:6px; border-right:2px solid var(--club-brass); padding:10px 14px; }
body.club-enabled #tvpot .tp-pot { font:600 21px/1.2 var(--club-display); letter-spacing:.05em; }
body.club-enabled #tvpot .tp-blinds { margin-top:5px; color:var(--club-muted); font:500 11px/1.3 var(--club-font); }
body.club-enabled .plate { border-radius:5px; border-color:#78938688; background:linear-gradient(#24423cf5,#102926f7); box-shadow:inset 0 1px #ffffff0b,0 3px 10px #0005; }
body.club-enabled .plate .nm { font-family:var(--club-font); font-weight:600; }
body.club-enabled .plate .st { color:#dfc992; font-family:var(--club-font); font-weight:500; }
body.club-enabled .plate.hero { border-color:#bfa062; }
body.club-enabled .plate.acting { border-color:#f2d58e; box-shadow:inset 0 0 0 1px #d3b77455,0 0 16px #d3b77430; }
body.club-enabled .plate.winner { border-color:#b1d5bd; box-shadow:0 0 16px #b1d5bd30; }
body.club-enabled .plate .timer { height:4px; background:#061511; }
body.club-enabled .plate .timer > div { background:linear-gradient(90deg,#b28c48,#f1d79d); }
body.club-enabled .betlabel { background:#102b29f5; border-color:#ad945c99; border-radius:4px; color:var(--club-paper); font-family:var(--club-font); }
body.club-enabled #banner { background:#153632f5; border-color:#c8ad6b; border-radius:5px; box-shadow:0 8px 30px #0006; font:600 22px/1.25 var(--club-display); letter-spacing:.05em; }

/* Broadcast and draw controls: retain card sizes and coordinate ownership. */
body.club-enabled :is(.tvp,#outsbar,.pctfloat) { background:linear-gradient(145deg,#23423cf5,#0e2625f7); border-color:#748c7e; color:var(--club-paper); }
body.club-enabled .tvp { border-radius:0 6px 6px 0; border-left-color:#829b8d; }
body.club-enabled .tvp.hero { border-left-color:var(--club-brass); }
body.club-enabled .tvp.winner { border-left-color:#a9cdbb; box-shadow:0 0 16px #a9cdbb25; }
body.club-enabled .tvp-pct { color:#b5d4bf; }
body.club-enabled .tvp-pct.losing { color:#e6b2a9; }
body.club-enabled .tvp-action { color:#e0c68b; }
body.club-enabled .pctfloat { border-radius:5px; color:#b5d4bf; box-shadow:0 3px 10px #0005; }
body.club-enabled .pctfloat.losing { color:#e6b2a9; border-color:#ae7d78; }
body.club-enabled #outsbar { border-radius:6px; border-color:#a88e5d; }
body.club-enabled #vegasDrawBar { border-radius:9px; border-top-color:#bda064; }
body.club-enabled .vegas-draw-title { font-family:var(--club-display); font-size:19px; color:var(--club-brass); }
body.club-enabled .vegas-draw-title span { font:500 10px/1.5 var(--club-font); color:var(--club-muted); }
body.club-enabled .vegas-draw-card { background:#f1e9d7; border-color:#b4a58a; color:#172330; }
body.club-enabled .vegas-draw-card.red { color:#a33530; }
body.club-enabled .vegas-draw-card.selected { border-color:#f2d48c; box-shadow:0 0 0 2px #d3b774,0 5px 14px #0006; }

/* Pause, results, rankings, loading and ceremony share the lobby's identity. */
body.club-enabled :is(#modal,#pausescreen,#lbscreen,#rotatescreen) { background:#071b19de; backdrop-filter:blur(8px); }
body.club-enabled :is(#modalcard,#pausecard,#lbcard,#rotatecard,.winCascadeUi) {
  background:linear-gradient(145deg,#28463f,#102a29 75%);
  border:1px solid #697f71; border-top:3px solid var(--club-brass); border-radius:8px;
  color:var(--club-paper); box-shadow:0 22px 70px #0008,inset 0 1px #ffffff0a;
}
body.club-enabled :is(#pausecard,#rotatecard) { padding:32px 40px; max-width:calc(100vw - 32px); }
body.club-enabled :is(#modalcard,#lbcard) { overflow-y:auto; max-height:88dvh; }
body.club-enabled #modalcard { padding:34px 40px; }
body.club-enabled :is(#modalcard,#pausecard,#lbcard,#rotatecard) h1 { font:600 36px/1.1 var(--club-display); letter-spacing:.065em; color:var(--club-paper); }
body.club-enabled #lbcard h1 { font-size:29px; align-items:center; }
body.club-enabled #modalcard h2 { font:400 15px/1.5 var(--club-font); color:var(--club-muted); }
body.club-enabled #modalcard .big { font:600 54px/1.1 var(--club-display); color:var(--club-brass); }
body.club-enabled :is(#modalcard .sub,#pausecard p,#rotatecard p) { font-family:var(--club-font); color:var(--club-muted); line-height:1.65; }
body.club-enabled :is(#modalcard,#pausecard,#rotatecard,.winCascadeUi) .mainbtn {
  min-height:48px; padding:12px 26px; border:1px solid #ecd198; border-radius:6px;
  background:linear-gradient(#e1c588,#c5a460); color:#12282a;
  font:600 22px/1.1 var(--club-display); letter-spacing:.045em;
  box-shadow:inset 0 1px #fff3,0 3px 0 #806435;
}
body.club-enabled :is(#modalcard,.winCascadeUi) .mainbtn.ghost { background:#24433c; border-color:#7a9384; color:var(--club-paper); box-shadow:inset 0 1px #ffffff08,0 3px 0 #091e1b; }
body.club-enabled .unlockbox { background:#b4c7ac10; border:1px solid #b4c7ac66; border-radius:5px; color:#c4ddc6; }
body.club-enabled #lbcard h1 button { min-width:38px; min-height:38px; color:var(--club-paper); border-radius:4px; }
body.club-enabled #lbcard h1 button:hover { background:#ffffff0d; }
body.club-enabled .lbtabs button { min-height:36px; padding:7px 12px; font-size:12px; }
body.club-enabled #lbcard .lbtabs button.on { background:#d3b774; color:#12282a; border-color:#e5ca8e; }
body.club-enabled .lbrow { padding:7px 8px; font-family:var(--club-font); }
body.club-enabled .lbrow.me { background:#bfa06218; border-color:#ad935766; }
body.club-enabled .lbmsg { font:400 13px/1.7 var(--club-font); color:var(--club-muted); }
body.club-enabled .winCascadeUi { padding:18px 22px; }
/* The ceremony draws once at its starting dimensions. Keep that artwork fitted
   and its live HTML actions reachable when a desktop window is resized. */
body.club-enabled #winCascade canvas { left:50%; transform:translateX(-50%); }
body.club-enabled .winCascadeUi { top:auto !important; bottom:12px !important; max-height:calc(100% - 24px); overflow:auto; }
body.club-enabled :is(.winCascadeStatus,.winCascadeCopy) { font:500 14px/1.6 var(--club-font); color:var(--club-paper); text-shadow:none; }
body.club-enabled #club-loading { background:radial-gradient(ellipse at 50% 46%,#163538 0,#0b2023 44%,#051511 100%); font:400 15px/1.5 var(--club-font); }
body.club-enabled #club-loading strong { position:relative; font:600 clamp(28px,3vw,38px)/1.2 var(--club-display); letter-spacing:.04em; }
#club-loading .club-loading-ellipsis { position:absolute; left:100%; top:0; display:inline-flex; padding-left:.07em; color:#d9b779; }
#club-loading .club-loading-ellipsis i { font-style:normal; opacity:.3; animation:club-loading-dot 1.65s ease-in-out infinite; }
#club-loading .club-loading-ellipsis i:nth-child(2) { animation-delay:.18s; }
#club-loading .club-loading-ellipsis i:nth-child(3) { animation-delay:.36s; }
#club-loading[data-state="error"] p { margin:0; max-width: min(560px,100%); color:#b4b9b3; overflow-wrap:anywhere; }
#club-loading a { color:#d9b779; text-underline-offset:4px; }
#club-loading .club-loading-retry { padding:11px 22px; border:1px solid #d9b779; border-radius:5px; background:#d9b779; color:#122325; font:600 14px var(--club-font); cursor:pointer; }
#club-loading .club-loading-retry:focus-visible { outline:2px solid #f3e8d2; outline-offset:5px; }
@keyframes club-loading-dot { 0%,70%,100% { opacity:.3; } 35% { opacity:1; } }
@media(prefers-reduced-motion:reduce) { #club-loading .club-loading-ellipsis i { animation:none; opacity:.7; } }

/* Felt guides use the same five slots as the enlarged overhead board. */
body.club-enabled .club-card.felt-slot {
  background:transparent; border:1px solid #d8ca9b99; border-radius:2px;
  outline:1px solid #d8ca9b50; outline-offset:2px; box-shadow:none;
}
body.club-enabled #club-pot-label {
  position:fixed; z-index:23; transform:translate(-50%,-100%); pointer-events:none;
  padding:5px 12px; border:1px solid #ab9566; border-radius:4px;
  background:#102b29ed; color:#f3ead8; box-shadow:0 3px 8px #0004;
  font:600 17px/1.2 var(--club-display); letter-spacing:.045em; font-variant-numeric:tabular-nums;
  white-space:nowrap;
}
body:has(#start:not(.hidden)) #club-pot-label,body.club-away #club-pot-label { display:none; }

/* Keep the host's reveal/outs layout and card sizes, with the club's deck finish. */
body.club-enabled :is(.hole-card-dom,.ocard,.mcard) {
  background:#eee9dc; color:#172734; border:1px solid #b9ac8e;
  border-radius:3px; font-family:Georgia,'Times New Roman',serif;
  box-shadow:inset 0 0 0 2px #ffffff30,0 2px 4px #0005;
}
body.club-enabled :is(.hole-card-dom,.ocard,.mcard).red { color:#a13b32; }
body.club-enabled .hole-card-dom :is(.corner,.pip) { font-family:Georgia,'Times New Roman',serif; }
body.club-enabled .hole-card-dom .corner { font-weight:700; }
body.club-enabled .hole-hand-label {
  border-radius:4px; background:#102a29f5; border-color:#938260;
  font-family:var(--club-font); font-weight:600; color:var(--club-paper);
  box-shadow:0 3px 10px #0005;
}
body.club-enabled .hole-hand-label.winner { border-color:#b9d2bd; color:#e0efe0; box-shadow:0 0 14px #b9d2bd30; }
body.club-enabled.tv-allin-moment #outsbar { border-radius:6px; box-shadow:0 6px 20px #0005; }
body.club-enabled #outsbar .outrow :is(.who,.dd) { font-family:var(--club-display); font-weight:600; letter-spacing:.025em; }
body.club-enabled #outsbar .outrow .who { color:var(--club-paper); }
body.club-enabled #outsbar .outrow .who b { color:var(--club-brass); }
body.club-enabled #outsbar .outrow .dd { color:#e4aba0; }
body.club-enabled :is(.tvp-name,.tvp-stack,.tvp-action,.tvp-pct) { font-family:var(--club-font); }

@media(min-width:901px) {
  body.club-enabled:has(#sidepanel:not(.collapsed)) :is(#actionbar,#club-resume-actions,#vegasDrawBar) { left:calc((100% - 270px)/2); }
  body.club-enabled:has(#sidepanel:not(.collapsed)) #vegasDrawBar { max-width:calc(100vw - 294px); }
  body.club-enabled:has(#sidepanel:not(.collapsed)) #tvpot { right:284px; }
}
@media(max-width:1200px) {
  body.club-enabled #topbar .mid { gap:10px; }
  body.club-enabled #topbar .brand { font-size:21px; }
}
@media(max-width:900px) {
  body.club-enabled #topbar { padding:0 8px; gap:6px; }
  body.club-enabled #topbar .mid { gap:8px; }
  body.club-enabled #topbar .brand { font-size:18px; }
  body.club-enabled #club-toolbar { width:auto; right:12px; }
  body.club-enabled #club-toolbar button { padding:7px 9px; min-height:36px; font-size:11px; }
  body.club-enabled #club-toolbar [data-club-view] { min-width:68px; }
  body.club-enabled #club-status { font-size:11px; }
  body.club-enabled #actionbar { max-width:calc(100vw - 16px); gap:8px; padding:10px; }
  body.club-enabled #club-resume-actions { bottom:max(6px,env(safe-area-inset-bottom)); padding:10px; }
  body.club-enabled #raiseSlider { width:170px; }
}
@media(max-height:500px) and (orientation:landscape) {
  body.club-enabled #topbar { height:38px; min-height:38px; }
  body.club-enabled #topbar .brand { font-size:18px; }
  body.club-enabled #topbar .stat { gap:0; }
  body.club-enabled #topbar .stat i { display:none; }
  body.club-enabled #topbar .stat b,body.club-enabled #lvltimer { font-size:11px; }
  body.club-enabled .iconbtn { min-height:32px; min-width:32px; padding:4px 7px; }
  body.club-enabled #club-toolbar { top:40px; padding:2px; gap:4px; flex-wrap:nowrap; overflow-x:auto; }
  body.club-enabled #club-toolbar button { flex-shrink:0; min-height:36px; padding:6px 9px; font-size:11px; }
  body.club-enabled #club-toolbar [data-club-view] { min-width:66px; }
  body.club-enabled :is(#actionbar,#club-resume-actions) { bottom:max(4px,env(safe-area-inset-bottom)); padding:7px 10px; gap:8px; }
  body.club-enabled #tvpot { bottom:112px; padding:6px 10px; }
  body.club-enabled :is(#actionbar,#club-resume-actions,#vegasDrawBar) .abtn { min-height:44px; padding:10px 17px; font-size:18px; }
  body.club-enabled #raisebox { gap:2px; }
  body.club-enabled .preset { min-height:28px; padding:3px 9px; }
  body.club-enabled #raiseSlider { height:18px; width:160px; }
  body.club-enabled #raiseAmt { font-size:12px; }
  body.club-enabled #equityTip { margin:0; font-size:9px; }
  body.club-enabled .vegas-draw-title { font-size:16px; }
  body.club-enabled :is(#modalcard,#pausecard,#rotatecard) { padding:18px 24px; }
  body.club-enabled :is(#modalcard,#pausecard,#rotatecard) h1 { font-size:28px; }
  body.club-enabled #modalcard .big { font-size:38px; }
  body.club-enabled .winCascadeUi { padding:10px 14px; }
}
@media(max-width:900px) and (max-height:500px) and (orientation:landscape) {
  /* Keep the longer Stud stakes and actual controls readable; the lobby already carries the title. */
  body.club-enabled #topbar .brand,body.club-enabled #hAvgWrap { display:none; }
  body.club-enabled #speed { width:70px; }
}
@media(prefers-reduced-motion:reduce) {
  body.club-enabled :is(.iconbtn,#club-toolbar button,.preset,.abtn,.mainbtn) { transition:none; }
}
/* Quiet-room and dealer controls share the existing club toolbar. */
body.club-enabled #club-audio-settings{position:relative;align-self:center;color:inherit}
body.club-enabled #club-audio-settings summary{cursor:pointer;box-sizing:border-box;display:flex;align-items:center;height:38px;padding:8px 13px;border:1px solid var(--club-edge);border-radius:5px;background:linear-gradient(#284b45,#193432);color:var(--club-paper);font:550 12px/normal var(--club-font);box-shadow:inset 0 1px #ffffff08,0 2px 0 #061715;list-style:none;white-space:nowrap}
body.club-enabled #club-audio-settings summary:hover{background:#31534b;border-color:var(--club-brass)}
@media(max-width:900px){body.club-enabled #club-walk,body.club-enabled #club-audio-settings summary{height:36px}body.club-enabled #club-audio-settings summary{font-size:11px;padding:6px 9px}}
body.club-enabled #club-audio-settings summary:focus-visible{outline:2px solid #d0b474;outline-offset:2px}
body.club-enabled #club-audio-settings>div{position:fixed;left:12px;top:108px;z-index:90;width:230px;padding:16px;background:#153233;border:1px solid #917c51;border-radius:8px;box-shadow:0 8px 30px #0009}
body.club-enabled #club-audio-settings label{display:grid;gap:5px;margin-bottom:12px;font-size:13px;color:#eee7d8}
body.club-enabled #club-audio-settings label>span{display:flex;justify-content:space-between;gap:8px}
body.club-enabled #club-audio-settings output{color:#d0b474;font-variant-numeric:tabular-nums}
body.club-enabled #club-audio-settings input{min-height:28px;width:100%;accent-color:#c3a467}
body.club-enabled #club-audio-settings a{color:#d0b474;font-size:12px}
/* Pass 1: automatic broadcast and explicit, persistent absence. */
/* Public all-in hands still use #holeOverlay while spectating. Its normal-play
   and away rules above already hide it outside the table's all-in reveal. */
body.club-enabled.club-spectating :is(.pctfloat,#outsbar,.spotlight-award-chip){display:none!important}
body.club-enabled #club-status.is-sitting-out{display:block;background:#762f36;color:#fff2e8;border:1px solid #cf8c89;border-radius:5px;padding:7px 10px;font:700 12px/1.3 system-ui;white-space:nowrap}
body.club-enabled :is(#club-sitout,#club-sitout-bottom).club-return-highlight{outline:2px solid #d6b76c;outline-offset:2px;background:#493e26;color:#fff4d8}
body.club-enabled :is(#club-sitout,#club-sitout-bottom).club-return-pulse{animation:club-return-pulse 1.8s ease-in-out 5}
@keyframes club-return-pulse{0%,100%{box-shadow:0 0 0 0 #d6b76c00}50%{box-shadow:0 0 0 5px #d6b76c55}}
@media(max-height:500px) and (orientation:landscape){
 body.club-enabled #club-status.is-sitting-out{position:fixed;right:14px;top:86px;z-index:44;font-size:11px;padding:5px 8px}
}
@media(prefers-reduced-motion:reduce){body.club-enabled :is(#club-sitout,#club-sitout-bottom).club-return-pulse{animation:none}}

/* The existing left TV stack is also the table-only spectator camera. */
body.club-enabled #tvpanels{max-height:calc(100vh - 260px);overflow-y:auto;overflow-x:hidden;max-width:min(280px,calc(100vw - 24px));scrollbar-width:thin}
body.club-enabled:is(.club-spectating,.tv-allin-moment) #tvpanels{max-width:min(420px,calc(100vw - 24px));z-index:25}
body.club-enabled:is(.club-spectating,.tv-allin-moment) #tvpanels .tvp{display:flex!important;flex-shrink:0;flex-wrap:wrap;box-sizing:border-box;width:420px;max-width:100%;padding:10px;gap:10px}
body.club-enabled:is(.club-spectating,.tv-allin-moment) .tvp-cards{flex-shrink:0;max-width:100%;flex-wrap:wrap;gap:4px}
body.club-enabled:is(.club-spectating,.tv-allin-moment).game-stud .tvp-cards{max-width:164px}
body.club-enabled:is(.club-spectating,.tv-allin-moment) .tvp .mcard{flex-shrink:0;width:38px;height:54px;font-size:19px}
body.club-enabled:is(.club-spectating,.tv-allin-moment) .tvp .mcard .ms{font-size:19px}
body.club-enabled:is(.club-spectating,.tv-allin-moment) .tvp-main{min-width:80px}
body.club-enabled:is(.club-spectating,.tv-allin-moment) .tvp-name{white-space:normal;overflow-wrap:anywhere}
body.club-enabled:is(.club-spectating,.tv-allin-moment) :is(.tvp-name,.tvp-stack,.tvp-pct){font-size:19px}
body.club-enabled:is(.club-spectating,.tv-allin-moment) .tvp-name .pos{font-size:14px}
body.club-enabled:is(.club-spectating,.tv-allin-moment) .tvp-pct{min-width:51px}
body.club-enabled:is(.club-spectating,.tv-allin-moment) .tvp-action{font-size:16px;min-height:19px;overflow-wrap:anywhere}
body:has(#start:not(.hidden)) #tvpanels{display:none!important}
@media(max-height:500px){body.club-enabled #tvpanels{top:110px;max-height:calc(100vh - 145px)}}
@media(max-width:600px) and (min-height:501px){body.club-enabled:is(.club-spectating,.tv-allin-moment) #tvpanels{top:156px;max-height:calc(100vh - 304px)}}

/* Concealed cards share the table deck back, independent of front style/color. */
body .mcard.back{background:#203f4b url("../assets/cards/club-back.svg") center/100% 100% no-repeat!important;border-color:#a78e5d;color:transparent}

/* A readable copy of the displayed cards on phones. The physical table and
   its reveal timing are unchanged; desktop keeps its existing composition. */
#club-mobile-readout { position:fixed; right:max(8px,env(safe-area-inset-right)); z-index:28; display:flex; gap:18px; max-width:calc(100vw - 32px); box-sizing:border-box; padding:8px 10px; border:1px solid #9c865b; border-radius:7px; background:#102a29f2; box-shadow:0 3px 14px #0006; pointer-events:none; }
#club-mobile-readout[hidden] { display:none; }
.club-mobile-heading { margin-bottom:5px; color:#f3ead8; font:600 12px/1.3 var(--club-font,system-ui); }
.club-mobile-hand { display:flex; gap:4px; }
#club-mobile-readout .club-card { --card-width:48px; flex-shrink:0; }
body.club-away #club-mobile-readout,body:has(#start:not(.hidden)) #club-mobile-readout { display:none; }
@media(max-width:1000px) and (max-height:600px) {
  body.club-enabled.is-mobile .preset { min-height:44px; min-width:44px; padding:6px 9px; }
  body.club-enabled.is-mobile #raiseSlider { min-height:24px; }
  body.club-enabled.is-mobile #leaderboardRunStatus { top:82px; right:8px; font-size:11px; }
  body.club-enabled.club-mobile-readout-visible #tvpot { display:none; }
}
