/* STM night palette. Colour-only overrides; authored page canvases keep their own styles. */
html.dark,html[data-bs-theme=dark]{
 --night-bg:#191c20;--night-surface:#22262b;--night-raised:#2a2f35;--night-text:#dce1e5;--night-muted:#a9b2bb;--night-line:#3b4249;--night-accent:#83c9b1;--night-tint:#293e37;
 --bg:var(--night-bg);--page:var(--night-bg);--surface:var(--night-surface);--soft:var(--night-raised);
 --text:var(--night-text);--ink:var(--night-text);--heading:var(--night-text);--copy:var(--night-muted);--muted:var(--night-muted);
 --line:var(--night-line);--border:var(--night-line);--tint:var(--night-tint);--green:var(--night-accent);--primary:var(--night-accent);--green-hover:#a2d7c3;--deep:#293e37;
 --amber:#e2c68f;--amber-bg:#3c3427;--blue:#afc7e0;--blue-bg:#293747;--danger:#e6aba8;--error:#e6aba8;
 --shadow:0 16px 50px #0003;
 --tblr-primary:var(--night-accent);--tblr-primary-rgb:131,201,177;--tblr-body-bg:var(--night-bg);--tblr-body-color:var(--night-text);--tblr-bg-surface:var(--night-surface);--tblr-border-color:var(--night-line);--tblr-secondary:var(--night-muted);
 --gjs-primary-color:var(--night-surface);--gjs-secondary-color:var(--night-text);--gjs-tertiary-color:var(--night-tint);--gjs-quaternary-color:var(--night-accent);--gjs-main-color:var(--night-surface);--gjs-font-color:var(--night-text);--gjs-arrow-color:var(--night-muted);--gjs-color-blue:var(--night-accent);--gjs-color-highlight:var(--night-accent);
 color-scheme:dark;
}
html.dark body{background-color:var(--night-bg);color:var(--night-text)}
html.dark ::selection{background:#486957;color:#f0f3f1}
html.dark :is(button,a,input,select,textarea):focus-visible{outline-color:#8ab7a5}
html.dark :is(input,textarea)::placeholder{color:#a0a9b2;opacity:1}
/* Public pages use both semantic tokens and the existing utility stylesheet. */
html.dark .dark\:bg-night{background-color:var(--night-bg)}
html.dark .dark\:bg-night\/95{background-color:rgb(25 28 32 / .97)}
html.dark :is(.dark\:bg-night2,.dark\:hover\:bg-night2:hover){background-color:var(--night-surface)}
html.dark .dark\:bg-nline{background-color:var(--night-line)}
html.dark :is(.dark\:border-nline,.btn-pill-outline,.strip){border-color:var(--night-line)}
html.dark .strip{background-color:var(--night-line)}
html.dark .strip>*{background-color:var(--night-bg)}
html.dark :is(.dark\:text-white,.dark\:hover\:text-white:hover){color:var(--night-text)}
html.dark :is(.lede,.dark\:text-nbody){color:var(--night-muted)}
html.dark :is(.dark\:text-brand,.dark\:hover\:text-brand:hover){color:var(--night-accent)}
html.dark :is(.bg-brand,.dark\:bg-brand){background-color:#285d4d}
html.dark :is(.summary-icon,.countdown-unit,.countdown-unit:first-child){background:var(--night-surface);border-color:var(--night-line);color:var(--night-accent)}
html.dark .countdown-unit strong{color:var(--night-text)}
html.dark .countdown-unit span{color:var(--night-muted)}
html.dark :is(.btn-pill-white,.hero-action-primary){background:#dce4e0;color:#243c32;border-color:#dce4e0}
html.dark :is(.btn.primary,.btn-pill-brand,.reg-primary,.auth-submit,.studio-top .primary,.studio-layout .primary){background:#326d5b;color:#edf2f0;border-color:#326d5b}
html.dark :is(.btn.primary,.btn-pill-brand,.reg-primary,.auth-submit,.studio-top .primary,.studio-layout .primary):hover{background:#387560;color:#edf2f0;border-color:#387560}
html.dark :is(.reg-choice:first-child,.reg-rail .is-active span,.reg-rail [aria-current=step] span){background:var(--night-tint)}
html.dark :is(.reg-field input,.reg-field select,.reg-field textarea,.form-field input,.form-field select,.form-field textarea,.auth-field input){background:var(--night-surface);color:var(--night-text);border-color:#65717c}
html.dark .hero-aside small{color:#bdc9c4}
html.dark :is(.reg-error-summary,.auth-message[data-error=true]){background:#382b2f;color:#e6aba8}
html.dark .iti{--iti-dropdown-bg:var(--night-surface);--iti-text-gray:var(--night-muted);--iti-border-color:var(--night-line);--iti-hover-color:var(--night-raised)}
html.dark :is(.iti__dropdown-content,.iti__search-input,.iti__country-list){background:var(--night-surface);color:var(--night-text);border-color:var(--night-line)}
html.dark .iti__highlight{background:var(--night-raised)}
/* Documents, notices and account security. */
html.dark body:is([data-page=privacy-policy],[data-page=terms-conditions]){--legal-ink:var(--night-text);--legal-muted:var(--night-muted);--legal-rule:var(--night-line);--legal-tint:var(--night-raised);--legal-paper:var(--night-surface)}
html.dark :is(.legal-kicker,.legal-inline,.legal-contact-button,.legal-related,.legal-number,.legal-side-contact a,.mfa-skip,.mfa-symbol,.auth-text,.recovery-success-icon){color:var(--night-accent)}
html.dark .legal-page-mark{color:#485951}
html.dark .legal-draft{background:var(--night-raised);color:var(--night-muted)}
html.dark .legal-toc nav a[aria-current=location]{background:var(--night-tint)!important;color:var(--night-accent)!important}
html.dark .mfa-steps [aria-current=step]{color:var(--night-accent)}
html.dark .mfa-steps [aria-current=step] span{background:#326d5b;color:#edf2f0}
/* Dashboard: neutral surfaces, modest accents and readable table/form states. */
html.dark :is(.admin-page .nav-group,.admin-page .nav-label){color:var(--night-muted)}
html.dark #adminNav a{color:#bfc7cd}
html.dark #adminNav a[aria-current=page]{color:var(--night-accent);background:var(--night-tint)}
html.dark :is(.admin-page .form-control,.admin-page .form-select){background-color:var(--night-surface);border-color:#65717c;color:var(--night-text)}
html.dark .admin-page .form-check-input{border-color:#65717c}
html.dark .admin-page .form-check-input:checked{background-color:#326d5b;border-color:var(--night-accent)}
html.dark .brand-sample b{color:var(--night-accent)}
html.dark :is(.admin-page .metric:first-child,.admin-page .edition-card,.canvas-panel){background:var(--night-surface)}
html.dark :is(.badge.red,.badge.bg-red-lt){background:#3e2e32;color:var(--danger)}
html.dark .chart-panel{--chart-green:#83c9b1;--chart-green-deep:#6aa58e;--chart-accepted:#a8b9c9;--chart-grid:#3b4249}
html.dark .chart-key>span:first-child i{background:#83c9b1}
html.dark .chart-key>span:last-child i{background:#aebca3}
html.dark .type-list>div:nth-child(1) i{background:#75ac98!important}
html.dark .type-list>div:nth-child(2) i{background:#91a8bd!important}
html.dark .type-list>div:nth-child(3) i{background:#baab88!important}
html.dark .type-list>div:nth-child(4) i{background:#a49cba!important}
html.dark .type-list>div:nth-child(5) i{background:#c1969c!important}
html.dark .trend-tooltip{background:var(--night-raised);color:var(--night-text);border-color:var(--night-line)}
html.dark .trend-tooltip strong{color:var(--night-text)}
html.dark .trend-tooltip>span{color:var(--night-muted)}
html.dark .request-pagination button.active{background:var(--night-tint);color:var(--night-accent)}
html.dark #notifications .notification-count{background:#326d5b;color:#edf2f0}
html.dark :is(.asset-picker button,.media-manager-card){background:var(--night-surface);color:var(--night-text);border-color:var(--night-line)}
/* News writer and its floating menus retain the same controls and document content. */
html.dark :is(.stm-news-writer,.stm-news-toolbar,.stm-news-bubble,.stm-news-command-menu,.stm-news-dialog){background:var(--night-surface);color:var(--night-text);border-color:var(--night-line)}
html.dark :is(.stm-news-tool:hover,.stm-news-tool[aria-pressed=true],.stm-news-command-menu button:hover,.stm-news-command-menu button[aria-selected=true]){background:var(--night-tint)!important;color:var(--night-accent)!important}
html.dark :is(.stm-news-prose pre,.article-detail pre,.article-preview pre){background:var(--night-raised);color:var(--night-text)}
html.dark :is(.stm-news-prose a,.article-detail a){color:var(--night-accent)}
html.dark :is(.stm-news-prose blockquote,.article-detail blockquote,.article-preview blockquote){background:var(--night-raised);border-color:var(--night-accent)}
html.dark :is(.stm-news-prose mark,.article-detail mark,.article-preview mark){background:#5b5033;color:#f0dfb6}
html.dark .stm-news-prose p.is-editor-empty:first-child:before{color:var(--night-muted)}
/* Page-editor chrome only. No rules are injected into the authored iframe. */
html.dark :is(.studio-top,.studio-layout .library,.studio-layout .inspector,.canvas-footer,.mobile-dock,.gjs-one-bg,.gjs-blocks-c,.gjs-block,.gjs-block-category .gjs-title,.gjs-category-title,.gjs-layer-title,.gjs-sm-sector-title,.gjs-clm-tags,.gjs-rte-toolbar,.gjs-mdl-dialog,.template-caption,.ai-panel){background:var(--night-surface);color:var(--night-text);border-color:var(--night-line)}
html.dark :is(.studio-top button,.studio-top select,.studio-layout button,.studio-layout input,.studio-layout select,.studio-layout textarea,#studioDialog,#studioDialog button,#studioDialog input,#studioDialog select,#studioDialog textarea){background:var(--night-surface);color:var(--night-text);border-color:var(--night-line)}
html.dark :is(.mobile-dock button,.canvas-footer button,.ai-panel button,.ai-panel input,.ai-panel select,.ai-panel textarea,.gjs-mdl-dialog button){background:var(--night-surface);color:var(--night-text);border-color:var(--night-line)}
html.dark .mobile-dock button:hover{background:var(--night-raised);color:var(--night-accent)}
html.dark :is(.studio-top select,.studio-layout input,.studio-layout select,.studio-layout textarea,#studioDialog input,#studioDialog select,#studioDialog textarea){border-color:#65717c}
html.dark :is(.studio-layout .canvas-area,#gjs .gjs-cv-canvas,.loading){background:var(--night-bg)}
html.dark :is(.device-switch,.device-switch button.active,.gjs-field,.gjs-am-assets-cont,.ai-panel form,.modal-content pre,#widgetCategory,.studio-layout button:hover,.studio-top button:hover){background:var(--night-raised);color:var(--night-text);border-color:var(--night-line)}
html.dark :is(.studio-layout .library-bottom button,.studio-layout .soft){background:var(--night-tint);color:var(--night-text);border-color:var(--night-line)}
html.dark :is(.canvas-toolbar,.device-note,.empty-note,.empty-note h3,.gjs-two-color){color:var(--night-muted);border-color:var(--night-line)}
html.dark :is(.gjs-block:hover,.gjs-four-color,.gjs-four-color-h:hover,.gjs-layer-title:hover){color:var(--night-accent)}
html.dark :is(.studio-top .primary,.studio-layout .primary){background:#326d5b;color:#edf2f0}
html.dark .ai-message.error{background:#382b2f;color:var(--danger)}
