/* Optional PWA-only backup controls; never changes the game floor. */
#pwa-backup { margin: 18px auto; padding: 18px 22px; max-width: 1000px; background: #fff8e8; color: #254843; border: 2px solid #dac8a5; border-radius: 16px; font-size: calc(16px * var(--text-scale, 1)); line-height: 1.5; }
#pwa-backup[hidden], #pwa-backup [hidden] { display: none !important; }
#pwa-backup h2 { margin: 0 0 8px; font-size: 1.25em; }
#pwa-backup p { margin: 8px 0 12px; }
#pwa-backup .backup-actions { display: flex; flex-wrap: wrap; gap: 10px; }
#pwa-backup button { min-height: 44px; font-size: 1em; }
#pwa-backup button:disabled { opacity: .55; cursor: default; }
#pwa-backup .backup-status:empty { display: none; }
#pwa-backup .backup-status, #pwa-backup .backup-warning { font-weight: 600; }
#pwa-backup details { margin-top: 12px; }
#pwa-backup summary { cursor: pointer; padding: 8px 0; min-height: 44px; box-sizing: border-box; }
#pwa-backup label { display: block; font-weight: 600; }
#pwa-backup textarea { display: block; box-sizing: border-box; width: 100%; max-width: 100%; margin: 6px 0 10px; padding: 10px; border: 2px solid #778a79; border-radius: 8px; color: #193f39; background: #fffef9; font: calc(14px * var(--text-scale, 1))/1.5 ui-monospace, monospace; }
#pwa-backup :focus-visible { outline: 3px solid #a9432f; outline-offset: 3px; }
@media (max-width: 600px) { #pwa-backup { margin: 12px; padding: 14px; } #pwa-backup .backup-actions > button { width: 100%; } }
