/* R13 controls own this small surface; no overrides of the hunting shutter. */
#recording-open { min-width: 44px; min-height: 44px; margin: 0; padding: 4px 8px; font-size: .75rem; pointer-events: auto; }
#recording-front { position: absolute; z-index: 24; left: calc(100% - 104px); top: 64px; width: 96px; height: 128px; object-fit: cover; transform: scaleX(-1); border: 1px solid var(--ap-paper); pointer-events: none; }
#recording-controls { position: absolute; z-index: 25; left: 8px; top: 112px; width: max-content; max-width: calc(100% - 16px); display: flex; flex-direction: column; align-items: start; gap: 4px; pointer-events: none; }
#recording-controls button { min-width: 44px; min-height: 44px; margin: 0; padding: 6px 8px; font-size: .75rem; pointer-events: auto; background: var(--ap-ink); border: 1px solid var(--ap-line); }
#recording-indicator { max-width: 8rem; padding: 4px; font-size: .6875rem; color: var(--ap-paper); background: var(--ap-ink); }
#recording-dialog { width: min(92vw, 480px); max-height: 90dvh; overflow: auto; padding: 20px; border: 1px solid var(--ap-line); background: var(--ap-ink); color: var(--ap-paper); }
#recording-dialog::backdrop { background: rgba(23,23,25,.84); }
#recording-permission-notice { position: fixed; z-index: 26; inset-inline: 12px; bottom: calc(80px + env(safe-area-inset-bottom, 0px)); padding: 8px; background: var(--ap-ink); color: var(--ap-paper); border: 1px solid var(--ap-line); display: flex; align-items: center; gap: 8px; }
#recording-permission-notice[hidden] { display: none !important; }
#recording-permission-status { margin: 0; min-width: 0; font-size: .875rem; }
#recording-permission-back { min-width: 44px; min-height: 44px; margin: 0; flex-shrink: 0; font-size: .875rem; color: var(--ap-paper); background: var(--ap-ink); border: 1px solid var(--ap-line); }
#recording-dialog h2 { margin: 0 0 12px; font-size: 1.5rem; }
#recording-dialog p { font-size: .875rem; line-height: 1.65; }
#recording-audio-options { min-width: 0; padding: 8px; border: 1px solid var(--ap-line); }
#recording-audio-options legend, #recording-audio-options label { font-size: .875rem; }
#recording-audio-options label { display: flex; align-items: center; gap: 8px; min-height: 44px; }
#recording-game-audio { width: 22px; height: 22px; flex: 0 0 auto; margin: 0; accent-color: var(--ap-paper); }
#recording-dialog .recording-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-block: 12px; }
#recording-dialog button, #recording-download { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; margin: 0; padding: 8px 12px; border: 1px solid var(--ap-line); background: var(--ap-ink); color: var(--ap-paper); font-size: .875rem; text-decoration: none; }
#recording-preview img, #recording-preview video { display: block; width: 100%; max-height: 44dvh; object-fit: contain; background: var(--ap-ink); }
#recording-dialog [hidden], #recording-controls[hidden], #recording-front[hidden], #recording-controls [hidden], #recording-open[hidden] { display: none !important; }
@media (orientation: landscape) and (max-height: 520px) {
    #recording-controls { top: 60px; flex-direction: row; align-items: center; }
    #recording-indicator { max-width: 6rem; }
}
