/* Original slate table, amber seat markers and large readable hand cards. */
.table .trick-table{position:relative;isolation:isolate;width:100%;min-height:clamp(340px,calc(100svh - 400px),440px);border-radius:24px;background:radial-gradient(ellipse at 50% 45%,#405773,#2c3e57 76%);color:#fff7e9;border:7px solid #d6c4ad;box-shadow:inset 0 0 0 1px #ffffff25,inset 0 8px 30px #17223655;margin:8px auto 0}
#game:has(.trick-table){min-height:0;padding-bottom:16px}
.table-seat{position:absolute;width:154px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:2px;z-index:2;font:13px/1.3 Arial,sans-serif;padding:6px;border-radius:16px}
.table-seat.is-current .table-avatar{outline:3px solid #f0ac79;outline-offset:3px}
.table-avatar{width:56px;height:56px;border-radius:50%;background:#eee5d7;box-shadow:0 2px 8px #13213955;margin-bottom:3px}
.table-avatar svg{display:block;width:100%;height:100%}
.table-seat.is-locked{opacity:.6}.seat-name{font-size:15px}.seat-score{color:#f4eee6}.seat-status{color:#ffcb9c;min-height:16px}.seat-card-count{font-size:11px;color:#cdd8e8}
.seat-top{top:10px;left:50%;transform:translateX(-50%)}.seat-left{left:10px;top:50%;transform:translateY(-50%)}.seat-right{right:10px;top:50%;transform:translateY(-50%)}
.seat-bottom{bottom:8px;left:50%;transform:translateX(-50%);width:260px;display:grid;grid-template-columns:42px 1fr;column-gap:10px;text-align:left}.seat-bottom .table-avatar{grid-row:1/4;width:42px;height:42px;margin:0}.seat-bottom .seat-status{font-size:12px}
.seat-top{width:260px;display:grid;grid-template-columns:42px 1fr;column-gap:10px;text-align:left}.seat-top .table-avatar{grid-row:1/5;width:42px;height:42px}.seat-top .seat-cards{display:none}.seat-top .seat-card-count{grid-column:2}
.seat-cards{display:flex;justify-content:center;margin-top:4px}.mini-card-back{width:20px;height:28px;background:repeating-linear-gradient(45deg,#627894 0 3px,#778ca6 3px 4px);border:2px solid #eee8de;border-radius:3px;box-shadow:0 1px 2px #15243d88}.mini-card-back+.mini-card-back{margin-left:-9px;transform:rotate(7deg)}
.trick-center{position:absolute;left:50%;top:94px;transform:translateX(-50%);width:min(56%,430px);text-align:center}.table-round,.table-contract,.trick-caption{margin:4px 0;font:13px/1.35 Arial,sans-serif}.table-round{font-weight:bold;color:#ead5bc}.trick-caption{font-size:12px;color:#d9e1eb;min-height:20px}
.trick-cards{--card-width:clamp(43px,7cqw,78px);--card-height:calc(var(--card-width)*1.4);--card-font:clamp(15px,2cqw,22px);position:relative;height:130px;margin-top:0}
.table-round,.table-contract{display:inline-block;margin:2px 5px}.trick-caption{margin:2px 0}
.trick-card{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.trick-card .small{display:none}.trick-pos-top{transform:translate(-50%,-85%) rotate(-3deg)}.trick-pos-bottom{transform:translate(-50%,-13%) rotate(3deg)}.trick-pos-left{transform:translate(-117%,-50%) rotate(-8deg)}.trick-pos-right{transform:translate(17%,-50%) rotate(8deg)}
.table .trick-card .card{box-shadow:0 4px 9px #101e3555}.table .trick-card .card:disabled{opacity:1;filter:none}
.table-hand-area{--card-width:clamp(45px,8.5cqw,104px);--card-height:calc(var(--card-width)*1.4);--card-font:clamp(15px,2.4cqw,26px);text-align:center;margin:12px auto 24px}
.table-hand-label{font-size:13px;margin:6px 0 18px;color:#4c596d}.table-hand{display:flex;justify-content:center;width:max-content;max-width:100%;margin:auto;padding:0 0 8px;isolation:isolate}
.hand-card{position:relative;flex:0 0 calc(var(--card-width)*.43);width:calc(var(--card-width)*.43)}.hand-card:last-child{flex-basis:var(--card-width);width:var(--card-width)}
.table .table-hand .card{display:block;transition:transform .12s;box-shadow:-2px 2px 5px #18223633}.table .table-hand .card .card-corner{flex-direction:column;gap:0;left:3px;top:4px;line-height:1}.table .table-hand .card .card-corner-bottom{left:auto;top:auto;right:3px;bottom:4px}.table .table-hand .card .card-face{inset:18% 10% auto;width:80%;height:64%}
.table .table-hand .card[disabled]{opacity:1;filter:none}.table .table-hand .card[data-action]:hover,.table .table-hand .card[data-action]:focus-visible,.table .table-hand .card.selected{transform:translateY(-12px)}
.table .table-hand .card.selected{outline:3px solid #b85320}.hand-card:has(:focus-visible){z-index:4}.table-actions{margin:12px auto 0}.table-scorecard{max-width:650px;margin:16px auto}.table-scorecard summary{cursor:pointer;font-weight:bold;padding:10px}.table-message{text-align:center}.action-error{padding:8px;color:#9c301e;text-align:center}
@container(max-width:600px){
 .table .trick-table{min-height:380px;border-width:4px;border-radius:18px}.table-seat{width:90px;font-size:11px;gap:1px;padding:3px}.seat-name{font-size:13px}.table-avatar{width:42px;height:42px}.seat-top{top:8px}.seat-left{left:0}.seat-right{right:0}.seat-bottom{width:200px;grid-template-columns:34px 1fr;bottom:7px}.seat-bottom .table-avatar{width:34px;height:34px}.seat-status{font-size:10px;min-height:13px}.seat-card-count{font-size:10px}.seat-cards{display:none}
 .seat-top{width:200px;grid-template-columns:34px 1fr}.seat-top .table-avatar{width:34px;height:34px}.trick-center{top:96px;width:51%}.table-round,.table-contract{font-size:11px}.trick-caption{font-size:10px;min-height:40px}.trick-cards{height:130px;margin-top:0}.table-hand-area{margin-top:9px}.table-hand-label{font-size:12px}
}
@container(max-width:360px){.table-seat{width:74px}.table-avatar{width:36px;height:36px}.seat-bottom{width:185px}.seat-score{font-size:10px}.trick-center{width:49%}.table .trick-table{min-height:368px}.table-hand-area{--card-width:45px}.table .table-hand .card .card-corner{left:2px;letter-spacing:-.8px}.table .table-hand .card .card-corner-bottom{left:auto;right:2px}}
@media(prefers-reduced-motion:reduce){.table .table-hand .card{transition:none}}
