/* ============================================================
   Core 3.0 — Dark Theme Overrides
   ============================================================ */

[data-theme="dark"] {
    /* Controles nativos (checkbox, radio, inputs de fecha/search, scrollbar)
       en modo oscuro. Sin esto se ven blancos sobre el fondo dark. */
    color-scheme: dark;

    --brand: #A496D9;
    --brand-hover: #C4BCE7;
    --brand-active: #8C79D8;
    --brand-subtle: rgba(164, 150, 217, .10);
    --brand-muted: rgba(164, 150, 217, .14);

    /* Riel de "estas dentro de esta rama" (menu lateral de dos niveles).
       La formula de variables.css (60% de --brand) alcanza en claro, donde el
       riel cae sobre blanco, pero sobre el fondo oscuro del menu (#0D0F1A) el
       trazo se apagaba: medido 3.31:1, y peor de lo que dice el numero porque
       compite con el riel SOLIDO del item activo pegado abajo. Al 78% sube a
       4.80:1 sin invadir al activo, que sigue 1.5x mas contrastado (7.22:1) y
       ademas lleva relleno --brand-subtle y texto en color de marca: la rama
       se lee, pero nadie la confunde con la pantalla seleccionada.
       Es decorativo (no texto), asi que no le aplica el minimo 4.5:1 de AA. */
    --brand-line: color-mix(in srgb, var(--brand) 78%, transparent);

    --bg-app: #0D0F1A;
    --bg-surface: #151827;
    /* Superficie "alt" (fondo de .badge-secondary, thead de tabla, inputs
       readonly): en oscuro venia igual que --bg-surface, asi que la pastilla
       y la banda del encabezado se fundian con la card. Este valor mantiene
       contra --bg-surface la misma relacion (~1.17:1) que #F0F1F3 sobre
       blanco en claro. */
    --bg-surface-alt: #232840;
    --bg-surface-hover: #1C2033;
    --bg-elevated: #1C2033;
    --bg-sidebar: #0D0F1A;
    --bg-topnav: rgba(13, 15, 26, .85);
    --bg-input: #151827;

    --text-primary: #EEEDF5;
    --text-secondary: #B8B5CC;
    /* Mismo criterio que en claro (ver variables.css). #7A778F quedaba al filo
       incluso sobre el fondo mas oscuro (4.42:1 sobre --bg-app) y se caia por
       debajo de AA sobre las superficies elevadas: 4.08:1 sobre --bg-surface,
       3.73:1 sobre --bg-surface-hover, 3.36:1 sobre --bg-surface-alt (thead de
       tabla, badge-secondary). Este pasa AA en las cuatro: 6.25 / 5.77 / 5.27 /
       4.74:1, y sigue por debajo de --text-secondary (9.56:1). */
    --text-tertiary: #9491A8;
    --text-inverse: #1A1F36;
    --text-link: #B7ADE1;

    --border: #1E2235;
    --border-subtle: #171B2B;
    --border-strong: #2D3348;
    --border-focus: #A496D9;

    --success: #10B981;
    --success-bg: rgba(16, 185, 129, .12);
    --success-text: #34D399;
    --warning: #F59E0B;
    --warning-bg: rgba(245, 158, 11, .12);
    --warning-text: #FBBF24;
    --danger: #EF4444;
    --danger-bg: rgba(239, 68, 68, .12);
    --danger-text: #FCA5A5;
    --info: #3B82F6;
    --info-bg: rgba(59, 130, 246, .12);
    --info-text: #93C5FD;

    --shadow-sm: none;
    --shadow-md: none;
    --shadow-lg: 0 8px 24px rgba(0, 0, 0, .3);
    --card-shadow: none;
}

/* Responsive table scroll indicator (dark) */
[data-theme="dark"] .table-responsive.has-scroll {
    box-shadow: inset -8px 0 8px -8px rgba(0, 0, 0, 0.2);
}

/* Kebab menu — dark overrides */
[data-theme="dark"] .kebab-panel {
    background: var(--bg-surface);
    border-color: var(--border);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .kebab-item-danger:hover {
    background: rgba(239, 68, 68, 0.15);
    color: var(--danger-text);
}
