/* Popup surfaces are independent of the page's foreground transparency. */
:root{--opaque-popup-bg:#fffaf0}
html[data-theme="night"]{--opaque-popup-bg:#202633}
html body :is(dialog:not(.tutorial-dialog),[popover],[role="menu"],[role="listbox"],.options-panel,.background-picker-menu,.song-context-menu,.source-copy-menu,.source-save-more-panel,.site-admin-actions,.advanced-filters[open],.source-status-filter[open]>.source-filter-group,.tutorial-card,.header-tooltip,select,option,optgroup){
 background:var(--opaque-popup-bg)!important;
 opacity:1!important;
 backdrop-filter:none!important;
 -webkit-backdrop-filter:none!important;
 --menu-bg:var(--opaque-popup-bg);
}
/* Tutorial overlays stay clear around their opaque instruction card. */
html body .tutorial-dialog{opacity:1!important}
/* Never composite an overlay through a faded ancestor. Ordinary sibling
   branches get the setting exactly once, regardless of their nesting depth.
   Keep these rules outside pure-background mode so its hiding rules win. */
html body:not(.is-background-only) :is(dialog,[popover],[role="menu"],[role="listbox"],.site-header,#siteAdminBar,.back-to-top,.recent-notification-button,.mini-player,.music-memory-actions,.options-panel,.background-picker-menu,.song-context-menu,.source-copy-menu,.source-save-more-panel,.site-admin-actions,.advanced-filters[open],.source-status-filter[open]>.source-filter-group,.tutorial-spotlight,.tutorial-card,.header-tooltip,.dialog-top-actions,.source-edit-save,.line-edit-actions,.line-edit-player,.source-quick-save,.event-editor-actions,.social-editor-actions,.new-song-actions,#sourceResumePrompt,.celebration-preview-notice,.admin-review-reminder,.tutorial-actions,.admin-navigation,#adminNavigation,.photo-edit-footer,.curator-placement-tools,#editorSaveNotice,#recordTrashUndo,.skip-link,.skip-main-link),
html body:not(.is-background-only) :has(:is(dialog,[popover],[role="menu"],[role="listbox"],.site-header,#siteAdminBar,.back-to-top,.recent-notification-button,.mini-player,.music-memory-actions,.options-panel,.background-picker-menu,.song-context-menu,.source-copy-menu,.source-save-more-panel,.site-admin-actions,.advanced-filters[open],.source-status-filter[open]>.source-filter-group,.tutorial-spotlight,.tutorial-card,.header-tooltip,.dialog-top-actions,.source-edit-save,.line-edit-actions,.line-edit-player,.source-quick-save,.event-editor-actions,.social-editor-actions,.new-song-actions,#sourceResumePrompt,.celebration-preview-notice,.admin-review-reminder,.tutorial-actions,.admin-navigation,#adminNavigation,.photo-edit-footer,.curator-placement-tools,#editorSaveNotice,#recordTrashUndo,.skip-link,.skip-main-link)){opacity:1!important;}
html body:not(.is-background-only) :is(#siteViewRoot,:has(:is(dialog,[popover],[role="menu"],[role="listbox"],.site-header,#siteAdminBar,.back-to-top,.recent-notification-button,.mini-player,.music-memory-actions,.options-panel,.background-picker-menu,.song-context-menu,.source-copy-menu,.source-save-more-panel,.site-admin-actions,.advanced-filters[open],.source-status-filter[open]>.source-filter-group,.tutorial-spotlight,.tutorial-card,.header-tooltip,.dialog-top-actions,.source-edit-save,.line-edit-actions,.line-edit-player,.source-quick-save,.event-editor-actions,.social-editor-actions,.new-song-actions,#sourceResumePrompt,.celebration-preview-notice,.admin-review-reminder,.tutorial-actions,.admin-navigation,#adminNavigation,.photo-edit-footer,.curator-placement-tools,#editorSaveNotice,#recordTrashUndo,.skip-link,.skip-main-link))) > :not(:is(dialog,[popover],[role="menu"],[role="listbox"],.site-header,#siteAdminBar,.back-to-top,.recent-notification-button,.mini-player,.music-memory-actions,.options-panel,.background-picker-menu,.song-context-menu,.source-copy-menu,.source-save-more-panel,.site-admin-actions,.advanced-filters[open],.source-status-filter[open]>.source-filter-group,.tutorial-spotlight,.tutorial-card,.header-tooltip,.dialog-top-actions,.source-edit-save,.line-edit-actions,.line-edit-player,.source-quick-save,.event-editor-actions,.social-editor-actions,.new-song-actions,#sourceResumePrompt,.celebration-preview-notice,.admin-review-reminder,.tutorial-actions,.admin-navigation,#adminNavigation,.photo-edit-footer,.curator-placement-tools,#editorSaveNotice,#recordTrashUndo,.skip-link,.skip-main-link)):not(:has(:is(dialog,[popover],[role="menu"],[role="listbox"],.site-header,#siteAdminBar,.back-to-top,.recent-notification-button,.mini-player,.music-memory-actions,.options-panel,.background-picker-menu,.song-context-menu,.source-copy-menu,.source-save-more-panel,.site-admin-actions,.advanced-filters[open],.source-status-filter[open]>.source-filter-group,.tutorial-spotlight,.tutorial-card,.header-tooltip,.dialog-top-actions,.source-edit-save,.line-edit-actions,.line-edit-player,.source-quick-save,.event-editor-actions,.social-editor-actions,.new-song-actions,#sourceResumePrompt,.celebration-preview-notice,.admin-review-reminder,.tutorial-actions,.admin-navigation,#adminNavigation,.photo-edit-footer,.curator-placement-tools,#editorSaveNotice,#recordTrashUndo,.skip-link,.skip-main-link))):not(:is(dialog,[popover],[role="menu"],[role="listbox"],.site-header,#siteAdminBar,.back-to-top,.recent-notification-button,.mini-player,.music-memory-actions,.options-panel,.background-picker-menu,.song-context-menu,.source-copy-menu,.source-save-more-panel,.site-admin-actions,.advanced-filters[open],.source-status-filter[open]>.source-filter-group,.tutorial-spotlight,.tutorial-card,.header-tooltip,.dialog-top-actions,.source-edit-save,.line-edit-actions,.line-edit-player,.source-quick-save,.event-editor-actions,.social-editor-actions,.new-song-actions,#sourceResumePrompt,.celebration-preview-notice,.admin-review-reminder,.tutorial-actions,.admin-navigation,#adminNavigation,.photo-edit-footer,.curator-placement-tools,#editorSaveNotice,#recordTrashUndo,.skip-link,.skip-main-link) *):not(script):not(style):not(link){opacity:var(--foreground-content-opacity);transition:opacity 160ms ease;}
html body:not(.is-background-only) > :not(#siteViewRoot):not(#customBackgroundLayer):not(#ambientCanvas):not(#polaroidWall):not(#backgroundOnlyExit):not(script):not(style):not(link):not(:is(dialog,[popover],[role="menu"],[role="listbox"],.site-header,#siteAdminBar,.back-to-top,.recent-notification-button,.mini-player,.music-memory-actions,.options-panel,.background-picker-menu,.song-context-menu,.source-copy-menu,.source-save-more-panel,.site-admin-actions,.advanced-filters[open],.source-status-filter[open]>.source-filter-group,.tutorial-spotlight,.tutorial-card,.header-tooltip,.dialog-top-actions,.source-edit-save,.line-edit-actions,.line-edit-player,.source-quick-save,.event-editor-actions,.social-editor-actions,.new-song-actions,#sourceResumePrompt,.celebration-preview-notice,.admin-review-reminder,.tutorial-actions,.admin-navigation,#adminNavigation,.photo-edit-footer,.curator-placement-tools,#editorSaveNotice,#recordTrashUndo,.skip-link,.skip-main-link)):not(:has(:is(dialog,[popover],[role="menu"],[role="listbox"],.site-header,#siteAdminBar,.back-to-top,.recent-notification-button,.mini-player,.music-memory-actions,.options-panel,.background-picker-menu,.song-context-menu,.source-copy-menu,.source-save-more-panel,.site-admin-actions,.advanced-filters[open],.source-status-filter[open]>.source-filter-group,.tutorial-spotlight,.tutorial-card,.header-tooltip,.dialog-top-actions,.source-edit-save,.line-edit-actions,.line-edit-player,.source-quick-save,.event-editor-actions,.social-editor-actions,.new-song-actions,#sourceResumePrompt,.celebration-preview-notice,.admin-review-reminder,.tutorial-actions,.admin-navigation,#adminNavigation,.photo-edit-footer,.curator-placement-tools,#editorSaveNotice,#recordTrashUndo,.skip-link,.skip-main-link))){opacity:var(--foreground-content-opacity);}
/* Opaque surfaces; floating action groups and tutorial masks keep their
   transparent empty space, while their actual controls/cards are solid. */
html body:not(.is-background-only) :is(.site-header,#siteAdminBar,.back-to-top,.recent-notification-button,.mini-player,.music-memory-actions>button,.music-memory-actions>a,.dialog-top-actions,.source-edit-save,.line-edit-actions,.line-edit-player,.source-quick-save,.event-editor-actions,.social-editor-actions,.new-song-actions,#sourceResumePrompt,.celebration-preview-notice,.admin-review-reminder,.tutorial-actions,.admin-navigation,#adminNavigation,.photo-edit-footer,.curator-placement-tools,#editorSaveNotice,#recordTrashUndo,.skip-link,.skip-main-link){
 background:var(--opaque-popup-bg)!important;
 backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
 --menu-bg:var(--opaque-popup-bg);
}

/* Celebration ink uses a dark spotlight; keep its opaque gradient with the ink. */
html body dialog.celebration-dialog.celebration-festival[open]{background:radial-gradient(ellipse at 10% 10%,#ae5eff77,transparent 48%),radial-gradient(ellipse at 90% 25%,#ff324d77,transparent 48%),radial-gradient(ellipse at 50% 100%,#ffad2566,transparent 50%),linear-gradient(145deg,#210b35,#310816 56%,#392000)!important;}
