/* Chat-owned overlays share the host palette. Keep camera/video stages and safety actions distinct. */
html[data-chat-theme] :is(.pm-dialog,.call-dialog,.ft-dialog,.yl-panel,.qsd-panel){background:var(--qmx-surface);color:var(--qmx-ink);border-color:var(--qmx-line);color-scheme:var(--qmx-modal-scheme,light);box-shadow:var(--qmx-modal-shadow,0 24px 72px rgba(15,25,22,.22));scrollbar-color:var(--qmx-line) var(--qmx-surface)}
html[data-chat-theme] :is(.pm-dialog,.call-dialog,.ft-dialog)::backdrop{background:var(--qmx-modal-scrim,rgba(20,28,26,.42))}
html[data-chat-theme] :is(.yl-overlay,.qsd-overlay){background:var(--qmx-modal-scrim,rgba(20,28,26,.42));color-scheme:var(--qmx-modal-scheme,light)}
html[data-chat-theme] :is(.pm-toolbar.pm-more-menu,.pm-dialog.is-voice-float,.yl-chip){box-shadow:var(--qmx-modal-shadow,0 24px 72px rgba(15,25,22,.22));color-scheme:var(--qmx-modal-scheme,light);scrollbar-color:var(--qmx-line) var(--qmx-surface)}
/* Override cached inline module palettes so an open popup follows theme changes immediately. */
html[data-chat-theme] :is(.yl-root,.yl-location-card,.yl-menu-action){--yl-bg:var(--qmx-surface)!important;--yl-fg:var(--qmx-ink)!important;--yl-soft:var(--qmx-soft)!important;--yl-border:var(--qmx-line)!important;--yl-muted:var(--qmx-muted)!important;--yl-accent:var(--qmx-modal-action,var(--qmx-brand))!important;--yl-on-accent:var(--qmx-modal-action-ink,#fffdf8)!important}
html[data-chat-theme] :is(.qsd-root,.qsd-entry,.qsd-phone-entry){--qsd-bg:var(--qmx-surface)!important;--qsd-fg:var(--qmx-ink)!important;--qsd-soft:var(--qmx-soft)!important;--qsd-border:var(--qmx-line)!important;--qsd-muted:var(--qmx-muted)!important}
html[data-chat-theme] :is(.pm-dialog,.call-dialog,.ft-dialog,.yl-panel,.qsd-panel) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="hidden"]),textarea,select){background:var(--qmx-soft);color:var(--qmx-ink);border-color:var(--qmx-line);color-scheme:var(--qmx-modal-scheme,light);caret-color:var(--qmx-ink)}
html[data-chat-theme] :is(.pm-dialog,.call-dialog,.ft-dialog,.yl-panel,.qsd-panel) :is(input,textarea)::placeholder{color:var(--qmx-muted);opacity:1}
html[data-chat-theme] :is(.pm-dialog,.call-dialog,.ft-dialog,.yl-panel,.qsd-panel) :is(option,optgroup){background:var(--qmx-surface);color:var(--qmx-ink)}
html[data-chat-theme] :is(.pm-dialog,.call-dialog,.ft-dialog,.yl-panel,.qsd-panel) input::file-selector-button{background:var(--qmx-soft);color:var(--qmx-ink);border:1px solid var(--qmx-line);border-radius:8px;padding:8px 12px;font:inherit}
html[data-chat-theme] :is(.pm-dialog,.call-dialog,.ft-dialog,.yl-panel,.qsd-panel) :is(input[type="checkbox"],input[type="radio"],input[type="range"]){accent-color:var(--qmx-modal-action,var(--qmx-brand));color-scheme:var(--qmx-modal-scheme,light)}
html[data-chat-theme] :is(.pm-dialog,.call-dialog,.ft-dialog,.yl-panel,.qsd-panel) :is(button,input,textarea,select,summary,a):not(.pm-capture-button):focus-visible{outline:2px solid var(--qmx-modal-action,var(--qmx-brand));outline-offset:3px}
html[data-chat-theme] .pm-dialog .pm-primary,html[data-chat-theme] .qsd-panel .qsd-primary,html[data-chat-theme] .qsd-panel .qsd-tabs button[aria-pressed="true"]{background:var(--qmx-modal-action,var(--qmx-brand));color:var(--qmx-modal-action-ink,#fffdf8);border-color:var(--qmx-modal-action,var(--qmx-brand))}
html[data-chat-theme] .ft-dialog button[aria-pressed="true"]{background:var(--qmx-soft);color:var(--qmx-ink);border-color:var(--qmx-modal-action,var(--qmx-brand));outline:2px solid var(--qmx-modal-action,var(--qmx-brand));outline-offset:2px}
html[data-chat-theme] .ft-dialog progress{accent-color:var(--qmx-modal-action,var(--qmx-brand));color:var(--qmx-modal-action,var(--qmx-brand));background:var(--qmx-soft);border-radius:8px;color-scheme:var(--qmx-modal-scheme,light)}
html[data-chat-theme] .ft-dialog progress::-webkit-progress-bar{background:var(--qmx-soft);border-radius:8px}
html[data-chat-theme] .ft-dialog progress::-webkit-progress-value{background:var(--qmx-modal-action,var(--qmx-brand));border-radius:8px}
html[data-chat-theme] .ft-dialog progress::-moz-progress-bar{background:var(--qmx-modal-action,var(--qmx-brand));border-radius:8px}
html[data-chat-theme] :is(.qmx-assistant-dialog,#qmx-assistant-panel){--ai-popup-accent:var(--qmx-modal-action,var(--qmx-brand))!important;color-scheme:var(--qmx-modal-scheme,light);scrollbar-color:var(--qmx-line) var(--qmx-surface)}
