/* Focused usability updates approved on 03/11/2026. */
body.screen-fit .keyboard { display:flex;flex-direction:column;gap:4px; }
body.screen-fit .keyboard-characters { display:grid;grid-template-columns:repeat(7,minmax(44px,1fr));gap:2px; }
body.screen-fit .keyboard-layouts { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px; }
body.screen-fit .keyboard-controls { display:grid;grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr);gap:4px; }
body.screen-fit .keyboard .key,
body.screen-fit.has-screen-keyboard .keyboard .key:last-child { grid-column:auto;white-space:nowrap;overflow-wrap:normal;word-break:normal;letter-spacing:normal; }
body.screen-fit .keyboard-layouts [aria-pressed="true"] { border-color:#ffd885;background:#ffd88524; }
body.screen-fit .ranking-panel { display:flex;flex-direction:column;gap:4px; }
body.screen-fit .ranking-panel > .screen-paged { flex:1 1 0;height:auto; }
body.screen-fit .ranking-range { flex:0 0 auto;margin:0;padding:4px;font:400 var(--fit-meta)/1.25 Inter,Arial,sans-serif;text-align:center;color:#e0d4f0; }
body.screen-fit .ranking-row:focus { outline:3px solid #ffd885;outline-offset:-3px; }
body.screen-fit[data-screen="result"] main { overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable; }
body.screen-fit[data-screen="result"] main > .screen-view { height:auto;min-height:100%; }
body.screen-fit .result-simple { height:auto;min-height:100%;grid-template-rows:none; }
body.screen-fit .result-delivery { grid-column:1/-1;display:flex;flex-direction:column;align-items:center;gap:6px;margin:0;padding:8px;border:1px solid #ffffff30;border-radius:9px; }
body.screen-fit .result-delivery p { margin:0;font:400 var(--fit-meta)/1.35 Inter,Arial,sans-serif;color:#e0d4f0; }
body.screen-fit .result-delivery[data-delivery="saved"] p { color:#b7f0c9; }
body.screen-fit .result-delivery:is([data-delivery="error"],[data-delivery="rejected"]) p { color:#ffd885; }
body.screen-fit .result-delivery .secondary { margin:0;min-height:44px; }
body.screen-fit .result-simple .result-actions { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px; }
body.screen-fit .result-simple .result-actions button { margin:0;width:100%;min-height:48px;padding:10px 12px; }
body.screen-fit .result-simple .result-actions .primary,
body.screen-fit .result-simple .result-actions #next-participant { grid-column:1/-1; }
body.screen-fit .result-actions:has(#find-my-position:not([hidden])) .primary { grid-column:auto; }
@media (min-width:700px) and (min-height:1000px) {
 body.screen-fit .keyboard-characters { grid-template-columns:repeat(9,minmax(44px,1fr));gap:5px; }
}
/* A low viewport scrolls naturally instead of clipping or shrinking controls. */
@media (max-height:560px) {
 body.screen-fit:is([data-screen="play"],[data-screen="home"],[data-screen="result"]) main { overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable; }
 body.screen-fit:is([data-screen="play"],[data-screen="home"]) main > .screen-view { height:auto;min-height:100%; }
 body.screen-fit .game-wrap { height:auto;min-height:100%; }
 body.screen-fit .question-panel,
 body.screen-fit .correction-panel,
 body.screen-fit .next-panel { flex:0 0 auto;min-height:min-content; }
 body.screen-fit .answers { flex:0 0 auto;grid-template-rows:none;grid-auto-rows:minmax(50px,auto); }
 body.screen-fit .answer { min-height:50px; }
 body.screen-fit .game-bottom { position:static;flex:0 0 auto; }
 body.screen-fit .welcome-animated { height:auto;min-height:100%;justify-content:flex-start;padding-block:8px; }
}
/* Approved text/card revision: readable inset instead of compressed copy. */
body.screen-fit[data-screen="play"] main { overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable; }
body.screen-fit[data-screen="play"] main > .screen-view { height:100%;min-height:100%; }
body.screen-fit .game-wrap { height:100%;min-height:max-content; }
body.screen-fit .question-panel,body.screen-fit .answers { min-height:min-content; }
body.screen-fit .question-panel { padding:12px 14px; }
body.screen-fit .result-simple { padding:clamp(12px,1.4vw,24px);gap:8px 12px; }
body.screen-fit .result-simple .currency-history,
body.screen-fit .result-simple .answer-book-link,
body.screen-fit .correction-picked,
body.screen-fit .correction-answer { padding:clamp(12px,1.6vw,20px) clamp(14px,2vw,24px); }
body.screen-fit .result-delivery { padding:12px 14px; }
body.screen-fit .currency-history .history-headline { line-height:1.5;overflow-wrap:normal;word-break:normal;hyphens:none; }
body.screen-fit .history-percent { white-space:nowrap;overflow-wrap:normal; }
body.screen-fit .currency-story-dialog { padding:24px 20px 20px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable; }
body.screen-fit .currency-story-dialog .currency-history { padding:0;margin:0; }
body.screen-fit .currency-story-dialog h2 { overflow-wrap:normal;word-break:normal;hyphens:none; }
body.screen-fit .currency-label { display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:8px;border:2px solid #ffd17b88;border-radius:16px;background:#ffd17b12; }
body.screen-fit .currency-label b { font:400 clamp(28px,5vw,60px)/1.1 'Luckiest Guy',Arial,sans-serif;color:#ffd17b; }
body.screen-fit .currency-label span { font:400 var(--fit-meta)/1.3 Inter,Arial,sans-serif;text-align:center;overflow-wrap:normal; }
/* In short landscape screens, the ranking uses one page scroll area. */
@media (max-height:560px) {
 body.screen-fit[data-screen="ranking"] main { overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable; }
 body.screen-fit[data-screen="ranking"] main > .screen-view,
 body.screen-fit .ranking-screen { height:auto;min-height:100%; }
 body.screen-fit .ranking-panel { flex:0 0 auto; }
 body.screen-fit .ranking-panel > .screen-paged { flex:0 0 auto;height:auto; }
 body.screen-fit .ranking-list.screen-page-content { flex:0 0 auto;height:auto;max-height:none;overflow:visible; }
}
