/* Shared theme adapters. Keep module structure and semantic state colors intact. */
:root { color-scheme:light; }
:root[data-bs-theme="dark"],body[data-bs-theme="dark"] {
    color-scheme:dark;
    --drm-surface:#1e293b;
    --drm-surface-muted:#172033;
    --drm-surface-raised:#243248;
    --drm-surface-sunken:#142035;
    --drm-border:#394b63;
    --drm-border-subtle:#2a3a50;
    --drm-border-strong:#566982;
    --drm-text-primary:#e8eef6;
    --drm-text-secondary:#bdcadb;
    --drm-text-tertiary:#a8b8cc;
    --drm-text-muted:#a8b8cc;
    --drm-success:#69d69d;
    --drm-success-bg:#173e2d;
    --drm-warning:#f3c36b;
    --drm-warning-bg:#45371e;
    --drm-danger:#ff9c99;
    --drm-danger-bg:#472627;
    --drm-info:#86c9ef;
    --drm-info-bg:#163a50;
    --ops-accent:#93c5fd;
    --ops-accent-dark:#bfdbfe;
    --ops-accent-soft:#203550;
    --ops-border:#394b63;
    --ops-border-strong:#566982;
    --ops-surface:#1e293b;
    --ops-sunken:#172033;
    --ops-text:#e8eef6;
    --ops-muted:#b5c3d5;
    --ops-dim:#a8b8cc;
    --ops-pos:#69d69d;
    --ops-neg:#ff9c99;
    --hr-surface:#1e293b;
    --hr-line:#394b63;
    --hr-muted:#b5c3d5;
    --app-text-muted:#a8b8cc;
    --dcf-text-faint:#a8b8cc;
}
/* Explicit foregrounds for filled controls; accent tokens also serve text links. */
[data-bs-theme="dark"] .ops-btn.primary { background:#285c9d; border-color:#4278b9; color:#fff; }
[data-bs-theme="dark"] .ops-btn.primary:hover:not(:disabled) { background:#326dad; color:#fff; }
[data-bs-theme="dark"] .ops-alert.warn,
[data-bs-theme="dark"] .ops-kpi.warn { background:var(--drm-warning-bg); border-color:#75613c; color:var(--drm-warning); }
[data-bs-theme="dark"] .ops-alert.info { background:var(--drm-info-bg); border-color:#35627d; color:var(--drm-info); }
[data-bs-theme="dark"] .drm-dialog-question .drm-dialog-icon { background:var(--drm-info-bg); color:var(--drm-info); }
[data-bs-theme="dark"] .drm-dialog-danger .drm-dialog-icon { background:var(--drm-danger-bg); color:var(--drm-danger); }
[data-bs-theme="dark"] .drm-dialog-info .drm-dialog-icon { background:var(--drm-surface-sunken); color:var(--drm-text-secondary); }
/* Unstyled headings in legacy DCF panels should not fall back to Bootstrap's 2rem h2. */
.dcf-page .dcf-panel > h2 { font-size:var(--dcf-fs-lg); line-height:1.5; color:var(--dcf-text); }
/* Prevent a wide report's minimum content width from widening the application shell. */
.main-content,.content { min-width:0; }

[data-bs-theme="dark"] .drm-alert--danger { color:var(--drm-danger); }
[data-bs-theme="dark"] .drm-alert--warning { color:var(--drm-warning); }
[data-bs-theme="dark"] .drm-alert--success { color:var(--drm-success); }
[data-bs-theme="dark"] .ops-tab-badge { color:#0f172a; }
[data-bs-theme="dark"] .ops-tab:hover:not(.active) { background:var(--drm-surface-raised); color:var(--ops-text); }
