/* ═══════════════════════════════════════════════════════════════════
   theme-compat.css

   Backward compatibility layer for legacy admin.css dark theme selectors.
   Maps old [data-theme=dark] and html:not([data-theme=light]) to new
   data-bs-theme system.

   Load AFTER admin.css to override legacy dark theme rules.
   ═══════════════════════════════════════════════════════════════════ */

@layer components {
    /* Map old data-theme=dark to new data-bs-theme=dark tokens */
    [data-bs-theme="dark"] {
        /* Ensure all legacy selectors match new system */
    }

    /* Legacy log-analyzer dark theme */
    [data-bs-theme="dark"] .log-analyzer__stat-icon {
    color: var(--text-muted);
    }

    [data-bs-theme="dark"] .log-analyzer__cell-code.is-warning {
    background: color-mix(in srgb, var(--color-warning) 10%, var(--surface-base));
    }

    [data-bs-theme="dark"] .log-analyzer__alert--warning {
    background: color-mix(in srgb, var(--color-warning) 10%, var(--surface-base));
    border-color: color-mix(in srgb, var(--color-warning) 30%, var(--border-base));
    }

    /* Legacy zone editor */
    [data-bs-theme="dark"] .zone-override-group {
    background: var(--surface-muted);
    border-color: var(--border-base);
    }

    /* Theme toggle */
    [data-bs-theme="dark"] .theme-toggle .theme-toggle-track {
    background: var(--surface-muted);
    }

    [data-bs-theme="dark"] .theme-toggle .theme-toggle-thumb {
    background: var(--color-white);
    }

    /* Global search */
    [data-bs-theme="dark"] .global-search-input {
    background: var(--input-bg);
    border-color: var(--input-border);
    color: var(--color-text-heading);
    }

    [data-bs-theme="dark"] .global-search-input::placeholder {
    color: var(--text-muted);
    }

    [data-bs-theme="dark"] .global-search-input:focus {
    background: var(--surface-base);
    border-color: var(--input-focus-border);
    }

    [data-bs-theme="dark"] .search-results-list {
    background: var(--surface-base);
    border-color: var(--border-base);
    }

    [data-bs-theme="dark"] .search-empty-state {
    color: var(--text-muted);
    }

    /* Cards */
    [data-bs-theme="dark"] .card {
    background: var(--card-bg);
    border-color: var(--card-border);
    }

    [data-bs-theme="dark"] .stat-card::after {
    background: var(--surface-muted);
    }

    /* Tables */
    [data-bs-theme="dark"] .table thead th {
    color: var(--text-muted);
    border-bottom-color: var(--border-base);
    }

    [data-bs-theme="dark"] .table td {
    color: var(--color-text-base);
    border-color: var(--table-border);
    }

    [data-bs-theme="dark"] .attributes-table th,
    [data-bs-theme="dark"] .attributes-table td {
    border-color: var(--table-border);
    }

    /* Resource lists */
    [data-bs-theme="dark"] .resource-list .resource-item {
    border-color: var(--border-base);
    }

    [data-bs-theme="dark"] .domain-type-label {
    background: var(--surface-muted);
    color: var(--color-text-base);
    }

    [data-bs-theme="dark"] .resource-list .resource-meta .badge.bg-secondary {
    background: color-mix(in srgb, var(--color-gray-500) 14%, transparent);
    color: var(--color-gray-500);
    }

    [data-bs-theme="dark"] .domain-list .dropdown .btn-outline-secondary:hover {
    background: var(--surface-muted);
    border-color: var(--border-base);
    }

    [data-bs-theme="dark"] .dash-hero-link:hover {
    background: var(--surface-muted);
    }

    /* Forms */
    [data-bs-theme="dark"] .app-form-card .app-form-header {
    background: var(--surface-base);
    border-bottom-color: var(--border-light);
    }

    [data-bs-theme="dark"] .app-form-card .app-form-footer {
    background: var(--surface-base);
    border-top-color: var(--border-light);
    }

    [data-bs-theme="dark"] .form-section-title {
    color: var(--text-muted);
    }

    [data-bs-theme="dark"] .form-tab-intro {
    background: var(--surface-muted);
    }

    [data-bs-theme="dark"] .app-tab-form .nav-tabs {
    border-bottom-color: var(--border-base);
    }

    /* Gauges & Progress */
    [data-bs-theme="dark"] .gauge-card .gauge-track {
    fill: var(--surface-muted);
    }

    [data-bs-theme="dark"] .progress {
    background: var(--surface-muted);
    }

    /* Alerts */
    [data-bs-theme="dark"] .alert.alert-success {
    background: color-mix(in srgb, var(--color-success) 10%, var(--surface-base));
    border-color: color-mix(in srgb, var(--color-success) 30%, var(--border-base));
    color: var(--color-success);
    }

    [data-bs-theme="dark"] .alert.alert-danger {
    background: color-mix(in srgb, var(--color-danger) 10%, var(--surface-base));
    border-color: color-mix(in srgb, var(--color-danger) 30%, var(--border-base));
    color: var(--color-danger);
    }

    [data-bs-theme="dark"] .alert.alert-info {
    background: color-mix(in srgb, var(--color-info) 10%, var(--surface-base));
    border-color: color-mix(in srgb, var(--color-info) 30%, var(--border-base));
    color: var(--color-info);
    }

    [data-bs-theme="dark"] .alert.alert-warning {
    background: color-mix(in srgb, var(--color-warning) 10%, var(--surface-base));
    border-color: color-mix(in srgb, var(--color-warning) 30%, var(--border-base));
    color: var(--color-warning);
    }

    [data-bs-theme="dark"] .admin-info {
    background: color-mix(in srgb, var(--color-info) 10%, var(--surface-base));
    border-color: color-mix(in srgb, var(--color-info) 20%, var(--border-base));
    }

    /* Markdown */
    [data-bs-theme="dark"] .markdown-body code {
    background: var(--surface-muted);
    color: var(--color-text-base);
    }

    [data-bs-theme="dark"] .markdown-body table th {
    background: var(--surface-muted);
    border-color: var(--border-base);
    }

    [data-bs-theme="dark"] .markdown-body table td {
    border-color: var(--border-light);
    }

    [data-bs-theme="dark"] .markdown-body h3,
    [data-bs-theme="dark"] .markdown-body .h3 {
    color: var(--text-heading);
    border-bottom-color: var(--border-base);
    }
}
