.comfort-settings .check-option{display:flex;align-items:center;gap:12px;min-height:48px;line-height:1.5}.check-option input{width:22px;height:22px;accent-color:var(--gold);flex-shrink:0}
.game-route .hand-title{position:relative;padding-right:50px;min-height:48px}.history-trigger{position:absolute;right:0;top:0;min-width:48px;min-height:48px}
.action-caption{position:absolute;bottom:38px;left:12px;right:12px;max-width:480px;margin:0 auto;padding:5px 9px;background:#071b17eF;border-radius:8px;color:var(--text);font-size:12px;line-height:1.4;text-align:center;pointer-events:none}.action-caption:empty{display:none}
.public-history{margin:16px 0 0;padding-left:24px;max-height:55dvh;overflow:auto}.public-history li{padding:10px 4px;line-height:1.5;border-bottom:1px solid var(--line);font-size:15px}
.game-route .end-round{max-height:65dvh;overflow:auto}.round-role{color:var(--gold);font-weight:700}.round-countdown strong{font-variant-numeric:tabular-nums;font-size:22px}.round-countdown{margin:8px 0}.game-route .end-round .row{gap:8px;flex-wrap:wrap}
.practice-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px;max-width:1000px;margin:auto}.practice-steps{display:flex;flex-direction:column;gap:8px}.practice-steps button{text-align:left;white-space:normal}.practice-stage h2{font-size:24px}.practice-stage>p{line-height:1.6}.practice-pile{display:flex;align-items:center;justify-content:center;gap:24px;padding:24px 0}.practice-pile img{width:75px}.practice-hand{display:flex;justify-content:center;gap:12px;padding:16px 0;flex-wrap:wrap}.practice-hand .hand-card{width:72px;min-width:60px;padding:0;position:relative;transform:none}.practice-hand .hand-card img{width:100%;display:block}.practice-hand [aria-pressed="true"]{outline:3px solid var(--gold);outline-offset:3px}.practice-result{min-height:3em;color:var(--text);line-height:1.5;margin-top:14px}.practice-result.success{color:var(--green);font-weight:700}.practice-stage .row{gap:8px;flex-wrap:wrap}.practice-stage .row .btn{white-space:normal}
.invitation-notice{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:16px;margin-bottom:20px;background:var(--surface2);border:1px solid var(--line);border-radius:12px}.invitation-notice span{overflow-wrap:anywhere}.invite-qr{max-width:250px;margin:20px auto;background:white;padding:10px;border-radius:8px}.invite-qr svg{display:block;width:100%;height:auto}.invite-link{width:100%;font-size:14px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--text)}
.voice-person-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}.voice-person-row .voice-person{white-space:normal;overflow-wrap:anywhere}.voice-person-row .btn{min-width:48px;min-height:48px}.voice-person-row label{grid-column:1/-1;font-size:13px;display:flex;gap:12px;align-items:center}.voice-person-row input{min-width:80px;flex:1}.voice-person-row summary{cursor:pointer;font-size:13px;padding:12px 0}.voice-person-row details{grid-column:1/-1}.voice-person-row output{font-variant-numeric:tabular-nums;min-width:36px}.voice-mode{margin-top:12px;font-size:13px}.voice-mode select{min-height:48px;width:100%;font-size:16px;margin:5px 0}.hold-to-talk{touch-action:none;user-select:none;min-height:54px;width:100%}.hold-to-talk[aria-pressed="true"]{background:var(--green);color:var(--bg)}
body[data-high-contrast="true"] .hand-card[aria-disabled="true"]{opacity:1;filter:none;outline:2px dashed var(--muted);outline-offset:1px}body[data-high-contrast="true"] .hand-card[aria-disabled="false"]{outline:3px solid var(--green);outline-offset:1px}body[data-high-contrast="true"] .hand-card[aria-pressed="true"]{outline:4px solid var(--gold);outline-offset:2px}body[data-high-contrast="true"] .deck-back{border:3px solid #fff}body[data-high-contrast="true"] .btn.secondary{border-color:var(--text)}body[data-high-contrast="true"] .game-hint,body[data-high-contrast="true"] .pile small{color:var(--text);background:var(--bg)}
@media(max-width:700px){.practice-layout{grid-template-columns:1fr;gap:18px}.practice-steps{flex-direction:row;overflow:auto;padding-bottom:8px}.practice-steps .btn{min-width:180px}.practice-stage{padding:18px}.practice-hand{gap:9px}.practice-hand .hand-card{width:60px}.game-route .hand-title h2{font-size:15px}.game-route .hand-title small{font-size:11px}}
@media(orientation:landscape) and (max-height:500px){.action-caption{bottom:32px;left:20%;right:20%;font-size:11px}.game-route .end-round{max-height:70dvh}.round-countdown{margin:4px 0}.game-route .end-round p{margin:4px 0}}
@media(prefers-reduced-motion:reduce){.hold-to-talk{transition:none}}
.practice-hand .hand-card:disabled{opacity:1;filter:none;cursor:default}
/* At Android's largest text size the history provides the full action text. */
body[data-large-text="true"] .action-caption{display:none}
body[data-large-text="true"] .game-route .table-arena.room3d-ready .table-turn{font-size:10px;line-height:1.2;white-space:nowrap;max-width:95%;padding:3px 7px;bottom:0;overflow:hidden;text-overflow:ellipsis}
body[data-large-text="true"] .table-turn .thinking-dots{display:none}
