/* Theme picker is application UI, independent of video appearance controls. */
.proof-import-header:has(.proof-account-menu[open]){position:relative;z-index:var(--proof-z-menu)}
#proof-editor-header:has(.proof-account-menu[open]){position:relative;z-index:calc(var(--proof-z-menu) + 1)}
[data-app-appearance] [data-app-theme-label]{float:right;margin-left:24px;color:var(--proof-text-muted);font-size:var(--proof-font-sm)}
.app-theme-panel{position:fixed;inset:auto;margin:0;padding:16px;width:min(360px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow-y:auto;border:0;border-radius:var(--proof-radius-panel);background:var(--proof-surface);color:var(--proof-text);box-shadow:var(--proof-shadow-menu);font:var(--proof-font-sm)/var(--proof-leading-body) var(--proof-font-family);color-scheme:var(--proof-color-scheme)}
.app-theme-panel::backdrop{background:transparent}
.app-theme-heading{display:flex;align-items:center;gap:8px;margin-bottom:16px}
.app-theme-heading h2{margin:0;font:600 16px/1.5 var(--proof-font-family)}
.app-theme-heading button{display:grid;place-items:center;width:40px;height:40px;min-height:40px;flex-shrink:0;padding:8px;border:0;border-radius:var(--proof-radius-small);background:transparent;color:var(--proof-text);cursor:pointer}
.app-theme-heading button:hover{background:var(--proof-surface-hover)}
.app-theme-heading svg{width:20px;height:20px}.app-theme-heading [data-theme-close]{margin-left:auto}
.app-theme-panel fieldset{border:0;padding:0;margin:0;min-width:0}.app-theme-panel legend{padding:0 0 14px;color:var(--proof-text-muted);font-size:var(--proof-font-sm)}
.app-theme-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:3px}
.app-theme-option{display:block;min-width:0;color:var(--proof-text);font:500 14px/1.5 var(--proof-font-family);cursor:pointer}
.app-theme-option-label{display:flex;align-items:center;gap:8px;min-height:44px;padding-top:8px}
.app-theme-option input{width:18px;height:18px;min-height:0;margin:0;accent-color:var(--proof-indicator)}
.app-theme-preview{display:block;position:relative;height:96px;background:var(--proof-background);border:1px solid var(--proof-control-border);border-radius:6px;overflow:hidden;pointer-events:none}
.app-theme-preview-header{display:block;height:18px;background:var(--proof-surface);border-bottom:1px solid var(--proof-border)}
.app-theme-preview-sidebar{position:absolute;left:0;top:18px;bottom:0;width:30px;background:var(--proof-surface);border-right:1px solid var(--proof-border)}
.app-theme-preview-sidebar:after{content:'';position:absolute;top:8px;left:4px;right:4px;height:10px;background:var(--proof-selection);border-radius:2px}
.app-theme-preview-content{display:block;margin:12px 10px 0 42px}.app-theme-preview-content i{display:block;width:80%;height:3px;background:var(--proof-text-muted);margin-bottom:10px}.app-theme-preview-content b{display:block;width:28px;height:12px;background:var(--proof-primary);border-radius:2px;margin-bottom:10px}.app-theme-preview-content em{display:block;height:10px;border-top:1px solid var(--proof-border)}
.app-theme-option:has(input:checked) .app-theme-preview{outline:2px solid var(--proof-focus);outline-offset:2px}
.app-theme-panel :is(button,input):focus-visible{outline:2px solid var(--proof-focus);outline-offset:3px}
.app-theme-note{border-top:1px solid var(--proof-border);padding-top:16px;margin:12px 0 0;color:var(--proof-text-muted);font-size:var(--proof-font-xs)}
#app-theme-feedback{font-size:var(--proof-font-xs);color:var(--proof-selection-text);margin:12px 0 0;min-height:18px}
@media(pointer:coarse){.app-theme-heading button{width:44px;height:44px}}
@media(forced-colors:active){.app-theme-panel{border:1px solid CanvasText}.app-theme-option:has(input:checked) .app-theme-preview{outline-color:Highlight}}
