/* Shared utility refinements: clear entry points, readable hands, compact play. */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #fff2c8;outline-offset:4px}input,select{font-size:16px}a,button,input,select{touch-action:manipulation}button{transition:background .15s,border-color .15s}button:not(:disabled):hover{filter:brightness(1.08)}
.play-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 14px}.mode{display:grid;gap:9px;padding:22px;border:1px solid #d3b57866;border-radius:16px;background:#15372d;color:#f7eedb;text-decoration:none;min-height:150px}.mode.primary{background:#e8c783;color:#15291f;border-color:#e8c783}.mode-label{font-size:11px;font-weight:750;letter-spacing:.14em;display:flex;justify-content:space-between}.mode strong{font:25px Georgia}.mode small{font-size:13px;line-height:1.5;color:#c1d3c8}.mode.primary small{color:#304a3e}.mode:hover{border-color:#f5dfad;background:#204c3c}.mode.primary:hover{background:#f4dca7}.lesson-shortcut{display:block;text-align:center;color:#dec58c;padding:12px;min-height:48px;font-size:14px}.brand-header-home{margin-top:10px}
#entry h2{margin-top:0;margin-bottom:6px}#entry h3{font:600 15px system-ui}.join-heading{padding-top:24px;margin-top:26px;border-top:1px solid #d1b67544}#entry #createRoom{min-width:200px}.room-bar{padding:12px 0;border-bottom:1px solid #d1b67544}.room-bar strong{flex-basis:100%;font-size:18px}.room-bar a{padding:10px 0;min-height:44px;font-size:14px}.room-bar button{font-size:13px}.table-open .room-intro{display:none}.table-open header{padding-bottom:8px}.table-open header img{width:48px;height:48px}.table-open #status:empty{display:none}.table-open #connection{font-size:12px;margin:8px 0}.table-open .seats{margin-top:12px}.seat.active{border:2px solid #f4ce7e;background:#28553d}.seat.active strong{color:#fff1c7}.table-open .panel{margin:12px 0;padding:18px}#score{display:block;background:#0b281e;border-radius:10px;padding:12px;font-size:16px;font-variant-numeric:tabular-nums}#contract{font-size:13px;color:#d5c8a7;margin:12px 0}#instruction{margin:12px 0 6px;color:#f4d798}#note{margin:6px 0}.card:disabled{opacity:1;background:#e0ddcf;color:#3d5148;box-shadow:0 3px 0 #a9a28a}.card.red:disabled{color:#98414b}.card:not(:disabled){border:2px solid #e5c779}.card.selected{outline:3px solid #ffe098;background:#fff5cc}#hand{padding:10px 0;margin:8px 0 16px}#myHandLabel{font-size:13px;font-weight:650;margin:14px 0 0}#tableCards:empty{margin:0;min-height:0}.actions:empty{display:none}.actions{position:sticky;bottom:0;background:#123326f5;padding:12px 4px;border-top:1px solid #d1b67544;z-index:2}.actions button:disabled{opacity:1;background:#344c40;color:#bac7ba;border-color:#5c6d5f}.played-card{color:#dce5d9}.muted{color:#c2d1c5}#resumeRoom{margin-top:20px}summary{padding:12px 0;min-height:48px}
@media(max-width:600px){.play-options{grid-template-columns:1fr;gap:9px}.mode{min-height:0;padding:16px 18px;gap:5px;grid-template-columns:1fr auto}.mode-label{grid-column:1/-1}.mode strong{font-size:23px}.mode small{max-width:165px;text-align:right;font-size:12px;align-self:center}.table-open main{padding:12px}.table-open .seat{padding:9px;font-size:11px}.table-open .seat strong{font-size:13px}.table-open .panel{padding:12px}.hand{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.hand .card{width:100%;height:auto;aspect-ratio:2/3;font-size:clamp(16px,5vw,24px);min-height:58px;min-width:0}.room-bar{gap:8px}.room-bar button{padding:10px;font-size:12px}.table-open .actions{gap:8px}.table-open .actions button{padding:10px 8px;font-size:13px}.table-open header a{font-size:13px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
