/* Device-local player preferences. The v1.9.2 table remains the default. */
.audio-button-icon{font-size:13px;font-weight:800}
.audio-panel{z-index:1180;width:min(410px,calc(100vw - 20px));max-height:calc(100dvh - 76px);overflow-y:auto;overscroll-behavior:contain;padding:14px;scrollbar-color:#9a6b39 #1a120e}
.settings-device-hint{margin:-5px 0 10px;color:#a9957d;font-size:9px;line-height:1.4}
.settings-group{margin-top:9px;padding:10px;border:1px solid #69472f;border-radius:11px;background:#120d0aa6}
.settings-group>h3{margin:0 0 8px;color:#d9b77f;font-size:9px;letter-spacing:.14em;text-transform:uppercase}
.settings-row{display:grid;grid-template-columns:95px minmax(0,1fr);align-items:center;gap:8px;padding:6px 0;border-top:1px solid #ffffff0a}
.settings-row:first-of-type{border-top:0}
.settings-row>span,.settings-track>span{color:#ead3b0;font-size:11px}
.setting-segments{display:flex;justify-content:flex-end;gap:4px;min-width:0}
.setting-choice{min-width:0;padding:5px 7px;border:1px solid #59412f;border-radius:7px;background:#1a130f;color:#a99780;font-size:8px;line-height:1.15;cursor:pointer}
.setting-choice.selected{border-color:#d2a14f;background:#593a1d;color:#ffe0a3;box-shadow:inset 0 1px #fff1}
.settings-track{padding-top:8px}
.track-options{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:6px}
.track-options .setting-choice{min-height:30px;text-align:left}
.track-options .setting-choice:last-child{grid-column:1/3;text-align:center}
.settings-reset{display:block;margin:10px auto 0;padding:6px 10px;border-color:#5b4636;background:#18120f;color:#b5a38d;font-size:8px}

/* Larger text choices: only typography grows; card and table geometry stay locked. */
body[data-font-size="large"]{font-size:15px}
body[data-font-size="xlarge"]{font-size:16px}
body[data-font-size="large"] .game-hud .turn-title{font-size:12px!important}
body[data-font-size="xlarge"] .game-hud .turn-title{font-size:14px!important}
body[data-font-size="large"] .game-hud .turn-banner .subtle{font-size:8px!important}
body[data-font-size="xlarge"] .game-hud .turn-banner .subtle{font-size:9px!important}
body[data-font-size="large"] .official-lane-head h3{font-size:11px!important}
body[data-font-size="xlarge"] .official-lane-head h3{font-size:12px!important}
body[data-font-size="large"] .official-lane-head span{font-size:7px!important}
body[data-font-size="xlarge"] .official-lane-head span{font-size:8px!important}
body[data-font-size="large"] .opponent-seat .player-name{font-size:10px!important}
body[data-font-size="xlarge"] .opponent-seat .player-name{font-size:11px!important}
body[data-font-size="large"] .seat-type,body[data-font-size="large"] .mini-stat b{font-size:8px!important}
body[data-font-size="xlarge"] .seat-type,body[data-font-size="xlarge"] .mini-stat b{font-size:9px!important}
body[data-font-size="large"] .personal-identity-row strong{font-size:9px!important}
body[data-font-size="xlarge"] .personal-identity-row strong{font-size:10px!important}
body[data-font-size="large"] .caravan-card-top,body[data-font-size="large"] .played-label,body[data-font-size="large"] .own-points b{font-size:7px!important}
body[data-font-size="xlarge"] .caravan-card-top,body[data-font-size="xlarge"] .played-label,body[data-font-size="xlarge"] .own-points b{font-size:8px!important}
body[data-font-size="large"] .game-card .card-type{font-size:8px!important}
body[data-font-size="xlarge"] .game-card .card-type{font-size:9px!important}
body[data-font-size="large"] .game-card .index{font-size:7px!important}
body[data-font-size="xlarge"] .game-card .index{font-size:8px!important}
body[data-font-size="large"] .chat-compose input,body[data-font-size="large"] .chat-message{font-size:10px!important}
body[data-font-size="xlarge"] .chat-compose input,body[data-font-size="xlarge"] .chat-message{font-size:11px!important}
body[data-font-size="large"] .table-action-broadcast .ai-replay-main h4{font-size:18px!important}
body[data-font-size="xlarge"] .table-action-broadcast .ai-replay-main h4{font-size:20px!important}
body[data-font-size="large"] .turn-announcement strong{font-size:27px!important}
body[data-font-size="xlarge"] .turn-announcement strong{font-size:30px!important}
body[data-font-size="large"] .modal-card p,body[data-font-size="large"] .modal-card label,body[data-font-size="large"] .modal-card button{font-size:13px}
body[data-font-size="xlarge"] .modal-card p,body[data-font-size="xlarge"] .modal-card label,body[data-font-size="xlarge"] .modal-card button{font-size:15px}
body[data-font-size="large"] .lobby-player,body[data-font-size="large"] .lobby-timeout-copy strong{font-size:14px!important}
body[data-font-size="xlarge"] .lobby-player,body[data-font-size="xlarge"] .lobby-timeout-copy strong{font-size:16px!important}

body[data-contrast="clear"] .landscape-board{background:radial-gradient(ellipse at 50% 42%,#2b241d 0,#181512 62%,#0b0a09 100%);border-color:#69533f}
body[data-contrast="clear"] .official-card-slot .game-card,body[data-contrast="clear"] .hand-row .game-card{filter:brightness(1.1) contrast(1.08) saturate(1.04)}
body[data-contrast="clear"] .turn-title,body[data-contrast="clear"] .official-lane-head h3,body[data-contrast="clear"] .player-name{color:#ffe5b7!important;text-shadow:0 1px 2px #000}
body[data-contrast="clear"] .opponent-seat{border-color:#9b724e}
body[data-contrast="clear"] .caravan-card{filter:brightness(1.08) contrast(1.06)}

body[data-motion="reduced"] .broadcast-flying-card{display:none!important}
body[data-motion="reduced"] .ai-action-replay,
body[data-motion="reduced"] .turn-announcement,
body[data-motion="reduced"] .opponent-seat.thinking:after,
body[data-motion="reduced"] .ai-orb i,
body[data-motion="reduced"] .turn-focus,
body[data-motion="reduced"] .table-pulse,
body[data-motion="reduced"] .receive-glow{animation:none!important;transition:none!important}
body[data-motion="reduced"] .victory-rays,body[data-motion="reduced"] .victory-sparkles{display:none!important}

@media (orientation:landscape) and (max-height:520px){
  .game-active .audio-panel{top:36px;right:5px;max-height:calc(100dvh - 41px);width:min(390px,calc(100vw - 12px));padding:9px}
  .audio-panel-head{margin-bottom:7px}.audio-panel-head strong{font-size:14px}.settings-device-hint{margin-bottom:6px;font-size:7px}
  .settings-group{margin-top:5px;padding:6px}.settings-group>h3{margin-bottom:4px;font-size:7px}
  .settings-row{grid-template-columns:82px minmax(0,1fr);padding:3px 0}.settings-row>span,.settings-track>span{font-size:9px}
  .setting-choice{padding:4px 5px;font-size:7px}.audio-setting{padding:6px 7px;margin-top:5px}.audio-setting input[type=range]{margin:7px 0 3px}
  .track-options .setting-choice{min-height:24px}.settings-reset{margin-top:6px;padding:4px 8px}
}
