.club-setup-options{margin:20px 0;padding:16px 0;border-top:1px solid #b69a5744;border-bottom:1px solid #b69a5744}.club-setup-options label{display:block;margin:12px 0;color:#c6c9b4;font-size:13px}.club-setup-options select{display:block;width:100%;min-height:44px;margin-top:8px;padding:9px 12px;background:#14271e;color:#e6d9b9;border:1px solid #af975a66;border-radius:4px;font:14px 'Golos Text',system-ui}.club-setup-options h3{font:21px 'Literata',Georgia;margin:22px 0 10px}.club-setup-options [hidden]{display:none}.club-setup-options p{line-height:1.6}.lobby-team-options{margin:12px 0}
html.flat-table .game.club-table .club-sort-container{position:relative;flex:none;z-index:20;width:100%}
html.flat-table .game.club-table .club-sort{display:grid;grid-template-columns:44px minmax(0,1fr);gap:0;min-height:42px;border:1px solid #a88f5977;border-radius:5px;background:linear-gradient(#283b2c,#14271c);overflow:hidden}
html.flat-table .game.club-table .club-sort>button{height:42px;min-height:42px;padding:6px;border:0;border-radius:0;box-shadow:none;background:none;margin:0;font-size:14px}
html.flat-table .game.club-table #club-sort-settings{border-right:1px solid #a88f5944;display:grid;place-items:center}
#club-sort-settings svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5}
.club-sort-picker{position:absolute;bottom:calc(100% + 7px);left:0;right:0;display:grid;gap:4px;padding:7px;border:1px solid #baa16e;background:#14271e;border-radius:6px;box-shadow:0 6px 20px #0007;transform-origin:bottom;animation:club-sort-open .16s ease-out}
.club-sort-picker[hidden]{display:none}.club-sort-picker [aria-pressed=true]{outline:1px solid #dfc487;outline-offset:-3px}
@keyframes club-sort-open{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
.club-player-metrics b{color:#dec78e;font-weight:500}.club-player-metrics small{display:block;font-size:inherit}.club-op-score{line-height:1.4}
.game.club-table button.club-team-progress{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left;font-size:clamp(11px,1cqw,16px);padding:8px 10px;max-width:100%}.club-team-progress small{font-size:clamp(9px,.8cqw,13px)}.club-team-progress b{color:#e4c780}
.club-surrender-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.club-surrender-actions .danger{background:linear-gradient(#783e35,#502823);border-color:#b4765b;color:#f1d2ba}
html.flat-table .game.club-table .hand .card.selected{transform:translate(var(--x),calc(var(--y) - 14px)) rotate(var(--r))!important}
.game.club-table>.club-team-progress{position:absolute;left:4.5%;top:23%;width:22%;z-index:9}
@media(max-width:900px) and (orientation:portrait){
 /* Same fixed viewport, half-hidden hand and compact dock as mobile Durak. */
 html.flat-table body.in-game .game.club-table{--mobile-card-width:min(48vw,30dvh,210px);--mobile-hand-height:calc(var(--mobile-card-width)*.75 + 12px);position:relative!important;inset:auto!important;transform:none!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto auto minmax(0,1fr) auto auto var(--mobile-hand-height)!important;gap:7px!important;padding:max(16px,env(safe-area-inset-top)) 16px 0!important;width:100%!important;height:100dvh!important;min-height:0!important;box-sizing:border-box;overflow:clip!important}
 html.flat-table .game.club-table>.opponents,html.flat-table .game.club-table>.club-team-progress,html.flat-table .game.club-table>.club-coach,html.flat-table .game.club-table>.club-play-area,html.flat-table .game.club-table>.club-turn-copy,html.flat-table .game.club-table>.club-controls,html.flat-table .game.club-table>.club-hand-area{grid-column:1!important}
 html.flat-table .game.club-table .club-heading,html.flat-table .game.club-table .club-last-action{display:none!important}
 html.flat-table .game.club-table .game-menu{top:16px!important;right:16px!important;width:44px!important;height:44px!important}
 html.flat-table .game.club-table .opponents,html.flat-table .game.club-table:has(.opponent:only-child) .opponents{position:relative!important;inset:auto!important;grid-row:1;height:auto!important;min-height:116px;width:calc(100% - 85px)!important;padding:0!important;grid-template-columns:repeat(min(3,var(--opponents)),minmax(0,1fr));gap:8px 5px!important;align-items:start}
 html.flat-table .game.club-table .opponent{min-width:0!important;width:auto!important}
 html.flat-table .game.club-table .opponent-cards{height:32px!important;display:block}
 html.flat-table .game.club-table .mini-back{width:24px;height:36px;left:calc(50% - 12px + (var(--i) - (var(--count) - 1)/2)*5px)}
 html.flat-table .game.club-table .opponent .portrait{width:42px!important;height:42px!important;margin-top:-18px!important}
 html.flat-table .game.club-table .opponent .name{font-size:12px!important;line-height:15px!important;padding:5px 0 2px!important;max-width:100%;white-space:nowrap}
 html.flat-table .game.club-table .opponent .status{font-size:10px!important;line-height:13px;min-height:13px}
 html.flat-table .game.club-table .opponent-count{top:35px!important;right:calc(50% - 29px)!important;width:21px;height:21px;font-size:12px}
 html.flat-table .game.club-table .club-op-score{display:block!important;font-size:9px!important;line-height:12px}
 html.flat-table .game.club-table:has(.opponent:nth-child(4)) .opponent-cards{display:none}
 html.flat-table .game.club-table:has(.opponent:nth-child(4)) .opponent .portrait{width:32px!important;height:32px!important;margin:0!important}
 html.flat-table .game.club-table:has(.opponent:nth-child(4)) .opponent-count{top:19px!important;right:calc(50% - 26px)!important}
 html.flat-table .game.club-table .club-supply{position:absolute;inset:68px 9px auto auto!important;width:78px;max-width:78px;min-height:0;display:block;font-size:11px;text-align:center;z-index:8}
 html.flat-table .game.club-table .club-supply>div{display:flex;flex-direction:column;align-items:center;gap:5px}
 html.flat-table .game.club-table .club-supply small{font-size:10px}.club-trump{justify-content:center}
 html.flat-table .game.club-table .supply-cards{display:none!important}
 html.flat-table .game.club-table .club-supply [data-club-command=scores]{display:none}
 html.flat-table .game.club-table>.club-team-progress{position:relative;inset:auto;grid-row:2;display:grid;grid-template-columns:1fr 1fr;gap:2px 12px;width:100%;max-width:none;text-align:left;min-height:0;padding:6px 10px;font-size:12px}
 html.flat-table .game.club-table>.club-team-progress small{font-size:10px}.game.club-table>.club-team-progress small:last-child{display:none}
 html.flat-table .game.club-table .club-coach{position:relative!important;inset:auto!important;grid-row:3;width:100%;height:32px;max-height:none;margin:0;padding:0}
 html.flat-table .game.club-table .club-play-area{position:relative!important;inset:auto!important;grid-row:4;min-height:0;width:100%;height:100%;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;justify-content:safe center;mask-image:linear-gradient(transparent,#000 10px,#000 calc(100% - 10px),transparent);padding:12px 0}
 html.flat-table .game.club-table .club-trick{display:flex;flex-wrap:wrap;gap:24px 8px;flex-shrink:0;width:100%;align-items:center;justify-content:center}
 html.flat-table .game.club-table .club-trick .battle{width:min(19vw,86px)!important;height:calc(min(19vw,86px)*1.5)!important}
 html.flat-table .game.club-table .club-card-owner{top:100%;font-size:10px;line-height:14px}
 html.flat-table .game.club-table .club-turn-copy{position:relative!important;inset:auto!important;grid-row:5;width:100%;display:grid;grid-template-columns:38px minmax(0,1fr);gap:2px 8px;margin:0}
 html.flat-table .game.club-table .club-turn-copy>.club-phase{display:none}
 html.flat-table .game.club-table .club-turn-copy h2{grid-column:2;grid-row:1;margin:0;font-size:21px;line-height:26px}
 html.flat-table .game.club-table .club-turn-copy>p{grid-column:2;grid-row:2;font-size:12px;line-height:16px;margin:0;max-height:32px;overflow:auto}
 html.flat-table .game.club-table .club-self{display:contents}
 html.flat-table .game.club-table .club-self>.portrait{grid-column:1;grid-row:1/4;width:34px;height:34px;min-width:34px;min-height:34px;align-self:center}
 html.flat-table .game.club-table .club-self>span:not(.portrait){grid-column:2;grid-row:3;display:flex;flex-wrap:wrap;gap:4px 10px;font-size:11px;line-height:15px}
 html.flat-table .game.club-table .club-self .club-player-metrics small{display:inline;margin-left:6px}
 html.flat-table .game.club-table .club-controls{position:relative!important;inset:auto!important;grid-row:6;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto;width:100%;max-height:none;margin:0;gap:8px;align-items:start}
 html.flat-table .game.club-table .club-sort-container{grid-column:1}
 html.flat-table .game.club-table .club-sort{grid-template-columns:38px minmax(0,1fr);height:40px;min-height:40px;box-sizing:border-box}
 html.flat-table .game.club-table .club-sort>button{height:38px;min-height:38px;font-size:13px}
 html.flat-table .game.club-table .club-phase-actions{grid-column:2;max-height:108px;gap:5px;min-width:0;padding:0}
 html.flat-table .game.club-table .club-phase-actions button{min-height:40px;padding:6px;font-size:13px;margin:0}
 .club-wait,.club-step-note{display:none}.club-sort-picker button{min-height:40px!important}
 html.flat-table .game.club-table .club-selected-count{display:block;font-size:10px;margin:0}
 html.flat-table .game.club-table .club-hand-area{position:relative!important;inset:auto!important;grid-row:7;min-height:0;height:100%!important;width:calc(100% + 32px)!important;max-width:none!important;margin:0 -16px!important}
 html.flat-table .game.club-table .hand-viewport{position:absolute;inset:0!important;height:100%!important;overflow:visible!important}
 html.flat-table .game.club-table .hand .card{--card-w:var(--mobile-card-width);--card-h:calc(var(--card-w)*1.5);bottom:calc(var(--mobile-card-width)*-.75)!important}
 .club-selection,.club-declaration-board{max-height:100%;overflow:auto;flex-shrink:0}.club-selection-slots{height:65px}
}
@media(max-width:900px) and (max-height:650px) and (orientation:portrait){
 html.flat-table body.in-game .game.club-table{--mobile-card-width:min(48vw,25dvh,180px);gap:5px!important;padding-top:12px!important}
 html.flat-table .game.club-table .opponents{min-height:100px;width:calc(100% - 74px)!important}
 html.flat-table .game.club-table .opponent .portrait{width:34px!important;height:34px!important}
 html.flat-table .game.club-table .opponent .name{font-size:11px!important}.game.club-table .opponent .status{font-size:9px!important}
 html.flat-table .game.club-table .club-turn-copy h2{font-size:18px;line-height:22px}
 html.flat-table .game.club-table .club-phase-actions{max-height:84px}
 html.flat-table .game.club-table .club-supply{width:70px;max-width:70px;font-size:10px}
}
@media(prefers-reduced-motion:reduce){.club-sort-picker{animation:none}}

.game.club-table:has(>.club-team-progress) .club-supply [data-club-command=scores]{display:none}

/* v143: a quiet score line; the ledger lives in the score dialog. */
html.flat-table .game.club-table>.club-team-progress{display:flex;align-items:center;justify-content:flex-start;gap:16px;width:22%;padding:0;border:0;background:none;box-shadow:none;font:clamp(12px,1.1cqw,18px)/1.3 'Literata',Georgia}
.club-team-progress>span{display:flex;align-items:baseline;gap:12px;white-space:nowrap}.club-team-progress b{font-weight:500;font-size:1.15em}
html.flat-table .game.club-table .club-team-progress>button{padding:0;width:34px;height:34px;min-height:34px;flex:none;font:22px/1 system-ui;background:#172b2070;border-color:#a88f5950;box-shadow:none}
.club-round-history{max-height:40vh;overflow:auto}.club-round-history details{padding:12px 0;border-bottom:1px solid #b69a5733}.club-round-history summary{cursor:pointer}.club-round-history p{font-size:13px}
@media(max-width:900px) and (orientation:portrait){html.flat-table .game.club-table>.club-team-progress{width:100%;font-size:14px;grid-template-columns:none;padding:0 2px;height:34px}}

