.recovery-screen[hidden]{display:none}
.recovery-screen{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:#262523b8;overflow:auto;box-sizing:border-box}
.recovery-card{box-sizing:border-box;width:min(100%,420px);margin:auto;padding:24px;background:#fff7eb;color:#262523;border:2px solid #262523;border-radius:16px;text-align:center;font:500 1rem/1.5 var(--sans,'DM Sans',sans-serif);user-select:text}
.recovery-card h2{font:700 1.5rem/1.15 'Courier Prime','Courier New',monospace;margin:0 0 16px}
.recovery-card p{margin:12px 0}
.recovery-card button{min-height:44px;min-width:140px;padding:10px 20px;border:2px solid #262523;border-radius:4px;background:#a9c797;color:#262523;font:600 1rem/1.25 var(--sans,'DM Sans',sans-serif);cursor:pointer}
.recovery-card button:hover{background:#f4d889}
.recovery-card button:active{background:#ed8796}
.recovery-card button:focus-visible{outline:3px solid #262523;outline-offset:4px;box-shadow:0 0 0 4px #fff7eb}
.recovery-card .recovery-hint{font-size:.875rem;margin-bottom:0}
/* Shared difficulty selection, including compact phone landscape. */
.difficulty-options{display:flex;gap:8px;justify-content:center;border:0;padding:0;margin:0;min-width:0;font:600 14px/1.2 var(--sans,'DM Sans',sans-serif)}
.difficulty-options legend{width:100%;padding:0;margin:0 0 6px;text-align:center;font-size:12px}
.difficulty-options label{position:relative;display:flex;align-items:center;justify-content:center;gap:5px;min-height:44px;min-width:64px;padding:0 8px;box-sizing:border-box;border:2px solid #262523;border-radius:4px;cursor:pointer;background:#fff7eb;color:#262523}
.difficulty-options label:has(input:checked){background:#a9c797}
.difficulty-options label:has(input:focus-visible){outline:3px solid #262523;outline-offset:3px;box-shadow:0 0 0 3px #fff7eb}
.difficulty-options input{position:absolute;width:1px;height:1px;opacity:0;margin:0}
.difficulty-options svg{height:28px;width:auto;display:block}
.difficulty-options label:has(input:checked)::after{content:"";position:absolute;bottom:3px;width:18px;height:2px;background:currentColor}
.difficulty-details{font:500 12px/1.35 var(--sans,'DM Sans',sans-serif);margin:6px 0 10px;color:#444;text-align:center}
.difficulty-restart{min-height:44px;padding:6px 12px;background:#a9c797;border:2px solid #262523;border-radius:4px;margin-bottom:8px;font:600 13px var(--sans,'DM Sans',sans-serif);cursor:pointer}
.difficulty-restart[hidden]{display:none}
.recovery-card{padding:16px 20px;max-width:420px}
.recovery-card h2{font-size:22px;margin:0 0 8px}
.recovery-card p{margin:8px 0;font-size:13px;line-height:1.35}
.recovery-card .difficulty-secondary{display:block;margin:8px auto 0;background:transparent;font-size:13px;min-height:44px;padding:6px 12px}
#pauseScreen{overflow:auto}
#pauseScreen .modal-frame{flex-shrink:0}
/* Align the action with the icon controls, excluding the fieldset legend. */
#startScreen .modal-bottom-row{align-items:flex-end}
#startScreen #startBtn{height:44px;box-sizing:border-box}

/* Single-hit modes omit health; the rare indicator stays beside the top counter. */
.hud-box .hearts[hidden]{display:none}

.recovery-actions{display:flex;justify-content:center;gap:12px;margin-top:16px;flex-wrap:wrap}
.recovery-actions button{min-width:120px}
.recovery-actions .difficulty-secondary{display:inline-block;margin:0;font-size:1rem;padding:10px 20px}

.pause-actions{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:12px}
.pause-actions button{box-sizing:border-box;min-height:44px;padding:8px 18px;font:600 16px var(--sans)}
.pause-back{border:2px solid var(--charcoal);border-radius:6px;background:transparent;color:var(--charcoal);cursor:pointer}
.pause-back:focus-visible{outline:3px solid var(--charcoal);outline-offset:4px}

/* Recognizable actions for players who do not read English. */
.pause-actions button,.recovery-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px}
.menu-action-icon{width:24px;height:24px;flex:0 0 24px;display:block}
/* Override the secondary button's older inline-block rule as well. */
.recovery-actions button.difficulty-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}
