/* Only the portal opts into this palette; admin keeps its own preference. */
:root[data-portal-theme="dark"] {
    color-scheme: dark;
    --nw-surface: #151619;
    --nw-surface-soft: #25272c;
    --nw-text-strong: #f2f0e9;
    --nw-text-muted: #b7b8bd;
    --nw-rule: #73757c;
}
.nw-theme-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 42px;
    height: 42px;
    padding: 0;
    border: 0;
    background: var(--nw-surface, #fff);
    color: var(--nw-text-strong, #000);
    font-family: var(--nw-font-text);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    cursor: pointer;
}
.nw-masthead .nw-search { margin-left: 0; }
.nw-theme-toggle:hover { background: var(--nw-surface-soft, #e8e8e8); }
.nw-theme-toggle:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.nw-theme-sun { display: none; }
[data-portal-theme="dark"] .nw-theme-moon { display: none; }
[data-portal-theme="dark"] .nw-theme-sun { display: block; }
[data-portal-theme="dark"] .nw-brand img { filter: invert(1); }
[data-portal-theme="dark"] .nw-menu-button span,
[data-portal-theme="dark"] .nw-masthead .nw-search button:after { background: var(--nw-text-strong); }
[data-portal-theme="dark"] .nw-cookie-panel__content { background: var(--nw-surface); color: var(--nw-text-strong); border-color: var(--nw-rule); }
[data-portal-theme="dark"] .nw-cookie-panel h2 { color: var(--nw-text-strong); }
[data-portal-theme="dark"] .nw-cookie-panel__actions button { background: var(--nw-surface-soft); color: var(--nw-text-strong); border-color: var(--nw-rule); }
[data-portal-theme="dark"] :is(.nw-cookie-panel__actions [data-cookie-accept], .nw-cookie-panel__actions [data-cookie-save]) { background: #000; color: #fff; }
@media (max-width: 640px) {
    .nw-masthead .nw-header-actions { display: flex; }
    .nw-masthead .nw-search { display: none; }
}
