/* ============================================================================
   nexterp-theme.css — Tema corporativo NextERP (puente WPF -> Blazor)
   Fuente de verdad: wpf10/NextERP.Modern.Wpf/Theme/tokens.light.xaml,
   tokens.dark.xaml, Assets/CorporateTheme.xaml (via _wf_modext/theming_bridge.md).
   Se carga DESPUES de style.css (DreamPos) para ganar en cascada.
   NO editar style.css/custom.css: todos los overrides van aqui.
   Dark: se activa con [data-theme="dark"] en <html>/<body> (themeInterop).
   ========================================================================== */

/* ------------------------------------------------------------------ tokens */
:root {
    /* Marca (light) */
    --nex-brand-primary: #092C4C;
    --nex-brand-primary-hover: #0B3A63;
    --nex-brand-on-primary: #FFFFFF;
    --nex-brand-accent: #1E6BB8;           /* azul de marca (antes naranja #FE9F43); blanco encima 5.5:1 AA */
    --nex-brand-accent-hover: #165594;
    --nex-brand-accent-rgb: 30, 107, 184;
    --nex-on-accent: #FFFFFF;
    --nex-brand-secondary: #6F42C1;
    --nex-brand-tint: #E9EFF5;

    /* Superficies */
    --nex-surface-page: #F3F3F3;
    --nex-surface-card: #FFFFFF;
    --nex-surface-alt: #F4F6F8;
    --nex-surface-border: #E2E6EA;
    --nex-surface-divider: #E5E9EE;

    /* Texto */
    --nex-text-primary: #1F2937;
    --nex-text-muted: #5A6B7B;
    --nex-text-on-brand: #FFFFFF;

    /* Semanticos (agnosticos de tema) */
    --nex-positive: #2E9E55;
    --nex-negative: #E5484D;
    --nex-warning: #E08C00;
    --nex-info: #155EEF;
    --nex-success: #3EB780;
    --nex-warning-yellow: #FFCA18;
    --nex-danger: #DC2626;

    /* Drawer / sidebar (AGNOSTICO: identico en light y dark, como en WPF) */
    --nex-drawer-bg: #06223A;
    --nex-drawer-header: #092C4C;
    --nex-drawer-item: #C2D2E0;
    --nex-drawer-active-bg: #2A78C5;
    --nex-drawer-on-active: #FFFFFF;
    --nex-drawer-hover: rgba(255, 255, 255, .06);
    --nex-drawer-section: #5F7D97;
    --nex-drawer-divider: rgba(255, 255, 255, .07);

    /* Geometria / sombras / tipografia */
    --nex-radius-card: 10px;
    --nex-radius-control: 6px;
    --nex-shadow-card: 0 2px 14px rgba(15, 23, 42, .07);
    --nex-shadow-card-hover: 0 2px 14px rgba(15, 23, 42, .14);
    --nex-font-family: "Nunito", "Segoe UI", -apple-system, sans-serif;

    /* Derivados por tema */
    --nex-topbar-bg: var(--nex-brand-primary);
    --nex-topbar-fg: #C2D2E0;
    --nex-btn-primary-bg: #092C4C;
    --nex-btn-primary-hover: #0B3A63;
    --nex-btn-primary-fg: #FFFFFF;

    /* Alineacion Bootstrap (primary=azul de marca, secondary=navy) */
    --bs-primary: #1E6BB8;
    --bs-primary-rgb: 30, 107, 184;
    --bs-secondary: #092C4C;
    --bs-secondary-rgb: 9, 44, 76;
    --bs-danger: #DC2626;
    --bs-danger-rgb: 220, 38, 38;
    --bs-success: #3EB780;
    --bs-info: #155EEF;
    --bs-warning: #FFCA18;
    --bs-body-bg: var(--nex-surface-page);
    --bs-body-color: var(--nex-text-primary);
    --bs-border-color: var(--nex-surface-border);
}

[data-theme="dark"] {
    /* Marca (dark): azul claro protagonista (antes naranja) */
    --nex-brand-primary: #6CB4F0;
    --nex-brand-primary-hover: #8CC5F4;
    --nex-brand-on-primary: #06223A;
    --nex-brand-tint: #10243A;
    --nex-brand-accent: #6CB4F0;
    --nex-brand-accent-hover: #8CC5F4;
    --nex-brand-accent-rgb: 108, 180, 240;
    --nex-on-accent: #06223A;
    --bs-primary: #6CB4F0;
    --bs-primary-rgb: 108, 180, 240;

    /* Superficies dark */
    --nex-surface-page: #1B1B1B;
    --nex-surface-card: #272727;
    --nex-surface-alt: #1A1A1A;
    --nex-surface-border: #6E6E6E;
    --nex-surface-divider: #3A3A3A;

    /* Texto dark */
    --nex-text-primary: #FFFFFF;
    --nex-text-muted: #C2C2C2;
    --nex-text-on-brand: #06223A;

    --nex-shadow-card: 0 2px 14px rgba(0, 0, 0, .35);
    --nex-shadow-card-hover: 0 2px 14px rgba(0, 0, 0, .55);

    /* Topbar dark = superficie card con acento (el navy pasa a fondo) */
    --nex-topbar-bg: #272727;
    --nex-topbar-fg: #C2C2C2;
    --nex-btn-primary-bg: #6CB4F0;
    --nex-btn-primary-hover: #8CC5F4;
    --nex-btn-primary-fg: #06223A;

    --bs-body-bg: #1B1B1B;
    --bs-body-color: #FFFFFF;
    --bs-border-color: #3A3A3A;
}

/* --------------------------------------------------------------- base/page */
body {
    background-color: var(--nex-surface-page);
    color: var(--nex-text-primary);
    font-family: var(--nex-font-family);
}

.page-wrapper {
    background-color: var(--nex-surface-page);
}

[data-theme="dark"] body,
[data-theme="dark"] .page-wrapper,
[data-theme="dark"] .page-wrapper .content {
    background-color: var(--nex-surface-page);
    color: var(--nex-text-primary);
}

/* ------------------------------------------------------- sidebar navy WPF */
/* El drawer es agnostico al tema (mismo navy en light y dark), por eso se
   usa !important: gana tanto a style.css light como a [data-theme=dark]. */
.sidebar,
.sidebar .slimScrollDiv,
.sidebar .sidebar-inner {
    background: var(--nex-drawer-bg) !important;
    border-right: 1px solid rgba(255, 255, 255, .05) !important;
}

.sidebar .sidebar-logo {
    background: var(--nex-drawer-header) !important;
    border-bottom: 1px solid var(--nex-drawer-divider) !important;
}

/* Placa clara detras del logo Farma7 (verde/negro: ilegible sobre navy) */
.sidebar .sidebar-logo .logo img,
.sidebar .sidebar-logo .logo-small img {
    background: #FFFFFF;
    border-radius: 6px;
    padding: 4px 8px;
}

/* Titulos de seccion del menu */
.sidebar .sidebar-menu > ul > li.submenu-open .submenu-hdr,
.sidebar .sidebar-menu .submenu-hdr {
    color: var(--nex-drawer-section) !important;
    background: transparent !important;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    font-size: 11px;
}

/* Items: texto claro sobre navy */
.sidebar .sidebar-menu > ul > li > a,
.sidebar .sidebar-menu > ul > li.submenu-open ul li a,
.sidebar .sidebar-menu > ul > li.submenu ul li a {
    color: var(--nex-drawer-item) !important;
    border-radius: 6px;
}

.sidebar .sidebar-menu > ul > li > a span,
.sidebar .sidebar-menu > ul > li.submenu-open ul li a span,
.sidebar .sidebar-menu > ul > li.submenu-open ul li a i,
.sidebar .sidebar-menu > ul > li a i {
    color: var(--nex-drawer-item) !important;
}

.sidebar .sidebar-menu > ul > li a svg {
    color: var(--nex-drawer-item) !important;
}

/* Hover: velo blanco suave, texto blanco */
.sidebar .sidebar-menu > ul > li > a:hover,
.sidebar .sidebar-menu > ul > li.submenu-open ul li a:hover,
.sidebar .sidebar-menu > ul > li.submenu ul li a:hover {
    background: var(--nex-drawer-hover) !important;
    color: #FFFFFF !important;
}

.sidebar .sidebar-menu > ul > li > a:hover span,
.sidebar .sidebar-menu > ul > li > a:hover i,
.sidebar .sidebar-menu > ul > li > a:hover svg,
.sidebar .sidebar-menu > ul > li.submenu-open ul li a:hover span,
.sidebar .sidebar-menu > ul > li.submenu-open ul li a:hover i {
    color: #FFFFFF !important;
}

/* Item activo: naranja corporativo con texto oscuro (WPF drawer.activeBg) */
.sidebar .sidebar-menu > ul > li > a.active,
.sidebar .sidebar-menu > ul > li.active > a,
.sidebar .sidebar-menu > ul > li.submenu-open ul li a.active,
.sidebar .sidebar-menu > ul > li.submenu-open ul > li.active a,
.sidebar .sidebar-menu > ul li .submenu > a.active {
    background: var(--nex-drawer-active-bg) !important;
    color: var(--nex-drawer-on-active) !important;
}

.sidebar .sidebar-menu > ul > li > a.active span,
.sidebar .sidebar-menu > ul > li > a.active i,
.sidebar .sidebar-menu > ul > li > a.active svg,
.sidebar .sidebar-menu > ul > li.submenu-open ul li a.active span,
.sidebar .sidebar-menu > ul > li.submenu-open ul li a.active i,
.sidebar .sidebar-menu > ul > li.submenu-open ul > li.active a span,
.sidebar .sidebar-menu > ul > li.submenu-open ul > li.active a i {
    color: var(--nex-drawer-on-active) !important;
}

/* Los "text-warning/text-primary/text-success" de iconos del menu pierden
   contraste sobre navy: se aclaran solo dentro del drawer */
.sidebar .sidebar-menu a .text-warning { color: #FFCA18 !important; }
.sidebar .sidebar-menu a .text-primary { color: #7EB3E8 !important; }
.sidebar .sidebar-menu a .text-success { color: #6FD09A !important; }

/* Grupos (.menu-grp-*): sobre navy van planos, separados por hairline */
.sidebar .sidebar-menu li[class*="menu-grp-"] {
    background: transparent !important;
    border-bottom: 1px solid var(--nex-drawer-divider);
    border-radius: 0;
    padding: 4px 6px 8px;
    margin: 0 4px 6px;
}

/* Perfil/atajos del sidebar (bloques bg-light del template) sobre navy */
.sidebar .modern-profile .bg-light,
.sidebar .sidebar-header .bg-light,
.sidebar .btn.bg-light {
    background: var(--nex-drawer-hover) !important;
    color: var(--nex-drawer-item) !important;
}

.sidebar .modern-profile h6, .sidebar .modern-profile p,
.sidebar .sidebar-header h6, .sidebar .sidebar-header p,
.sidebar .sidebar-header .btn i {
    color: var(--nex-drawer-item) !important;
}

/* ------------------------------------------------------------ header/topbar */
.header {
    background: var(--nex-topbar-bg) !important;
    border-bottom: 2px solid var(--nex-brand-accent) !important;
}

/* Zona del logo: placa clara para el logo Farma7 (legibilidad) */
.header .header-left {
    background: #FFFFFF;
    border-bottom: none;
}

[data-theme="dark"] .header .header-left {
    background: var(--nex-surface-card);
}

/* Iconos y acciones del topbar en claro sobre navy */
.header .user-menu.nav > li > a {
    color: var(--nex-topbar-fg);
}

.header .user-menu .nav-item-box > a {
    background: rgba(255, 255, 255, .08) !important;
    color: var(--nex-topbar-fg) !important;
}

.header .user-menu .nav-item-box > a:hover {
    background: rgba(255, 255, 255, .16) !important;
    color: #FFFFFF !important;
}

.header .user-menu .nav-item-box > a i {
    color: inherit;
}

.header .mobile_btn .bar-icon span {
    background-color: #FFFFFF;
}

/* Dropdown de usuario: vuelve a superficie normal (no hereda navy) */
.header .dropdown-menu {
    background: var(--nex-surface-card);
    color: var(--nex-text-primary);
    border: 1px solid var(--nex-surface-border);
    box-shadow: var(--nex-shadow-card);
}

/* ------------------------------------------------- page header / hero WPF */
/* Opt-in: replica PageHeaderBarHero del WPF (fondo navy + acento inferior).
   En dark el "navy" pasa a superficie card con el mismo acento. */
.page-header-hero {
    background: #092C4C;
    color: #FFFFFF;
    border-bottom: 2px solid var(--nex-brand-accent);
    border-radius: var(--nex-radius-card) var(--nex-radius-card) 0 0;
    padding: 16px 24px 14px;
    margin-bottom: 16px;
}

[data-theme="dark"] .page-header-hero {
    background: var(--nex-surface-card);
    color: var(--nex-text-primary);
}

.page-header-hero h1, .page-header-hero h2, .page-header-hero h3,
.page-header-hero h4, .page-header-hero h5, .page-header-hero h6 {
    color: inherit;
    margin-bottom: 0;
}

.page-header-hero .hero-subtitle {
    color: rgba(255, 255, 255, .72);
    font-size: 13px;
}

[data-theme="dark"] .page-header-hero .hero-subtitle {
    color: var(--nex-text-muted);
}

/* Toque conservador al page-header estandar del template: acento hairline */
.page-header h3, .page-header h4 {
    color: var(--nex-text-primary);
}

.page-header h6 {
    color: var(--nex-text-muted);
}

/* -------------------------------------------------------------------- cards */
.card {
    background-color: var(--nex-surface-card);
    border: 1px solid var(--nex-surface-border);
    border-radius: var(--nex-radius-card);
    box-shadow: var(--nex-shadow-card);
    color: var(--nex-text-primary);
}

.card .card-header {
    background-color: var(--nex-surface-card);
    border-bottom: 1px solid var(--nex-surface-divider);
    border-radius: var(--nex-radius-card) var(--nex-radius-card) 0 0;
}

.card .card-footer {
    background-color: var(--nex-surface-alt);
    border-top: 1px solid var(--nex-surface-divider);
}

.card .card-title {
    color: var(--nex-text-primary);
}

[data-theme="dark"] .card,
[data-theme="dark"] .card .card-header,
[data-theme="dark"] .modal-content {
    background-color: var(--nex-surface-card);
    color: var(--nex-text-primary);
    border-color: var(--nex-surface-divider);
}

/* ------------------------------------------------------------------- tablas */
.table {
    color: var(--nex-text-primary);
    border-color: var(--nex-surface-divider);
}

.table thead th,
.table thead tr th {
    background: var(--nex-surface-alt);
    color: var(--nex-text-primary);
    font-weight: 700;
    border-bottom: 1px solid var(--nex-surface-border);
}

.table tbody td {
    border-color: var(--nex-surface-divider);
    color: var(--nex-text-primary);
}

.table-hover > tbody > tr:hover > *,
.table tbody tr:hover td {
    background-color: var(--nex-brand-tint);
    color: var(--nex-text-primary);
}

[data-theme="dark"] .table thead th,
[data-theme="dark"] .table thead tr th {
    background: var(--nex-surface-alt);
    color: var(--nex-text-primary);
}

[data-theme="dark"] .table tbody td {
    background: transparent;
    color: var(--nex-text-primary);
}

/* Radzen DataGrid (material-base) — verificar clases .rz-* en DevTools */
.rz-data-grid {
    border: 1px solid var(--nex-surface-border);
    border-radius: var(--nex-radius-card);
    font-family: var(--nex-font-family);
}

.rz-grid-table thead th,
.rz-data-grid .rz-grid-table > thead > tr > th {
    background: var(--nex-surface-alt) !important;
    color: var(--nex-text-primary) !important;
    font-weight: 700;
    border-bottom: 1px solid var(--nex-surface-border);
}

.rz-grid-table thead th .rz-column-title,
.rz-grid-table thead th .rz-column-title-content {
    color: var(--nex-text-primary) !important;
    font-weight: 700;
}

.rz-grid-table tbody tr.rz-data-row > td {
    color: var(--nex-text-primary);
    border-color: var(--nex-surface-divider);
}

.rz-grid-table tbody tr.rz-data-row:hover > td,
.rz-data-grid .rz-grid-table tbody tr:not(.rz-datatable-empty-message-row):hover > td {
    background: var(--nex-brand-tint) !important;
}

[data-theme="dark"] .rz-data-grid,
[data-theme="dark"] .rz-grid-table,
[data-theme="dark"] .rz-grid-table tbody tr.rz-data-row > td {
    background: var(--nex-surface-card);
    color: var(--nex-text-primary);
}

.rz-paginator {
    background: var(--nex-surface-alt);
    border-top: 1px solid var(--nex-surface-divider);
}

[data-theme="dark"] .rz-paginator {
    background: var(--nex-surface-alt);
    color: var(--nex-text-muted);
}

/* ------------------------------------------------------------------ botones */
/* Primario = navy en light / naranja en dark (paridad boton primario WPF) */
.btn.btn-primary,
.btn-primary {
    background-color: var(--nex-btn-primary-bg);
    border-color: var(--nex-btn-primary-bg);
    color: var(--nex-btn-primary-fg);
    border-radius: var(--nex-radius-control);
}

.btn.btn-primary:hover, .btn.btn-primary:focus,
.btn.btn-primary:active, .btn.btn-primary.active,
.btn-primary:hover, .btn-primary:focus, .btn-primary:active,
.btn-check:checked + .btn.btn-primary {
    background-color: var(--nex-btn-primary-hover) !important;
    border-color: var(--nex-btn-primary-hover) !important;
    color: var(--nex-btn-primary-fg) !important;
}

/* Acento azul de marca (CTA) */
.btn.btn-accent, .btn-accent {
    background-color: var(--nex-brand-accent);
    border-color: var(--nex-brand-accent);
    color: var(--nex-on-accent);
    border-radius: var(--nex-radius-control);
}

.btn.btn-accent:hover, .btn-accent:hover,
.btn.btn-accent:focus, .btn.btn-accent:active {
    background-color: var(--nex-brand-accent-hover);
    border-color: var(--nex-brand-accent-hover);
    color: var(--nex-on-accent);
}

/* Secondary navy del template se mantiene; danger corporativo #DC2626 */
.btn.btn-danger, .btn-danger {
    background-color: var(--nex-danger);
    border-color: var(--nex-danger);
}

.btn.btn-danger:hover, .btn.btn-danger:focus,
.btn.btn-danger:active, .btn-danger:hover {
    background-color: #B91C1C !important;
    border-color: #B91C1C !important;
}

.btn-outline-primary {
    color: var(--nex-btn-primary-bg);
    border-color: var(--nex-btn-primary-bg);
}

.btn-outline-primary:hover, .btn-outline-primary:focus,
.btn-outline-primary:active, .btn-outline-primary.active {
    background-color: var(--nex-btn-primary-bg);
    border-color: var(--nex-btn-primary-bg);
    color: var(--nex-btn-primary-fg);
}

/* --------------------------------------------------------- badges con tint */
/* Paridad chips WPF: fondo tint + texto semantico (en vez de solido) */
.badge.bg-success, .badges-success {
    background-color: rgba(62, 183, 128, .14) !important;
    color: #24845A !important;
}

.badge.bg-danger, .badges-danger {
    background-color: rgba(220, 38, 38, .12) !important;
    color: #B91C1C !important;
}

.badge.bg-warning, .badges-warning {
    background-color: rgba(224, 140, 0, .14) !important;
    color: #A66300 !important;
}

.badge.bg-info, .badges-info {
    background-color: rgba(21, 94, 239, .12) !important;
    color: #1249B8 !important;
}

.badge.bg-secondary {
    background-color: var(--nex-brand-tint) !important;
    color: var(--nex-brand-primary) !important;
}

[data-theme="dark"] .badge.bg-success { color: #6FD09A !important; }
[data-theme="dark"] .badge.bg-danger  { color: #F08A8A !important; }
[data-theme="dark"] .badge.bg-warning { color: #FFC069 !important; }
[data-theme="dark"] .badge.bg-info    { color: #7EA6F5 !important; }
[data-theme="dark"] .badge.bg-secondary { color: var(--nex-brand-accent) !important; }

/* -------------------------------------------------------- forms / focus ring */
.form-control, .form-select {
    border-radius: var(--nex-radius-control);
    border-color: var(--nex-surface-border);
    color: var(--nex-text-primary);
}

.form-control:focus, .form-select:focus {
    border-color: var(--nex-brand-accent);
    box-shadow: 0 0 0 .2rem rgba(var(--nex-brand-accent-rgb), .25);
}

.form-check-input:checked,
.form-switch .form-check-input:checked {
    background-color: var(--nex-brand-accent);
    border-color: var(--nex-brand-accent);
}

[data-theme="dark"] .form-control,
[data-theme="dark"] .form-select {
    background-color: var(--nex-surface-alt);
    border-color: var(--nex-surface-divider);
    color: var(--nex-text-primary);
}

/* ------------------------------------------------------- clases nex-* (WPF) */
.nex-card {
    background: var(--nex-surface-card);
    border: 1px solid var(--nex-surface-border);
    border-radius: var(--nex-radius-card);
    box-shadow: var(--nex-shadow-card);
    padding: 16px;
    color: var(--nex-text-primary);
    transition: box-shadow .15s ease;
}

.nex-card:hover {
    box-shadow: var(--nex-shadow-card-hover);
}

.nex-kpi-card {
    background: var(--nex-surface-card);
    border: 1px solid var(--nex-surface-border);
    border-radius: var(--nex-radius-card);
    box-shadow: var(--nex-shadow-card);
    padding: 16px 18px;
    display: flex;
    align-items: center;
    gap: 12px;
}

.nex-kpi-card .nex-kpi-value {
    font-size: 28px;
    font-weight: 800;
    line-height: 1.15;
    color: var(--nex-text-primary);
    font-variant-numeric: tabular-nums;
}

.nex-kpi-card .nex-kpi-label {
    font-size: 13px;
    color: var(--nex-text-muted);
}

.nex-icon-chip {
    width: 40px;
    height: 40px;
    border-radius: 2px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--nex-brand-tint);
    color: var(--nex-brand-primary);
    font-size: 18px;
    flex: 0 0 auto;
}

.nex-icon-chip.accent {
    background: rgba(var(--nex-brand-accent-rgb), .16);
    color: var(--nex-brand-accent-hover);
}

.nex-segment-btn {
    border: 1px solid var(--nex-surface-border);
    background: var(--nex-surface-card);
    color: var(--nex-text-muted);
    border-radius: var(--nex-radius-control);
    padding: 6px 14px;
    font-weight: 600;
    font-size: 13px;
}

.nex-segment-btn:hover {
    background: var(--nex-surface-alt);
    color: var(--nex-text-primary);
}

.nex-segment-btn.active {
    background: var(--nex-brand-primary);
    border-color: var(--nex-brand-primary);
    color: var(--nex-brand-on-primary);
}

/* Badges semanticos nex-* (tint + texto, paridad chips WPF) */
.nex-badge {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 2px;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;
}

.nex-badge-success  { background: rgba(62, 183, 128, .14); color: #24845A; }
.nex-badge-danger   { background: rgba(220, 38, 38, .12);  color: #B91C1C; }
.nex-badge-warning  { background: rgba(224, 140, 0, .14);  color: #A66300; }
.nex-badge-info     { background: rgba(21, 94, 239, .12);  color: #1249B8; }
.nex-badge-neutral  { background: var(--nex-surface-alt);  color: var(--nex-text-muted); }
.nex-badge-brand    { background: var(--nex-brand-tint);   color: var(--nex-brand-primary); }

[data-theme="dark"] .nex-badge-success { color: #6FD09A; }
[data-theme="dark"] .nex-badge-danger  { color: #F08A8A; }
[data-theme="dark"] .nex-badge-warning { color: #FFC069; }
[data-theme="dark"] .nex-badge-info    { color: #7EA6F5; }
[data-theme="dark"] .nex-badge-brand   { color: var(--nex-brand-accent); }

/* --------------------------------------------------- dark: refuerzos varios */
/* El dark del template ([data-theme=dark] en style.css) queda debajo de estos
   refuerzos por orden de carga; solo se corrigen las superficies clave. */
[data-theme="dark"] h1, [data-theme="dark"] h2, [data-theme="dark"] h3,
[data-theme="dark"] h4, [data-theme="dark"] h5, [data-theme="dark"] h6 {
    color: var(--nex-text-primary);
}

[data-theme="dark"] .text-muted {
    color: var(--nex-text-muted) !important;
}

[data-theme="dark"] .dropdown-menu {
    background: var(--nex-surface-card);
    color: var(--nex-text-primary);
    border-color: var(--nex-surface-divider);
}

[data-theme="dark"] .dropdown-menu .dropdown-item {
    color: var(--nex-text-primary);
}

[data-theme="dark"] .dropdown-menu .dropdown-item:hover {
    background: var(--nex-surface-alt);
}

/* ------------------------------------------- utilidades "orange" del template */
/* Paridad con Modern.Wpf: el acento de contenido es el azul de marca.
   Los estados semanticos (success/warning/danger) NO se tocan. */
.bg-orange { background-color: var(--nex-brand-accent) !important; color: var(--nex-on-accent) !important; }
.border-orange { border-color: var(--nex-brand-accent) !important; }
.text-orange { color: var(--nex-brand-accent) !important; }

/* Chips/badges/etiquetas: rectangulares (esquinas casi rectas), sin forma ovalada */
.badge,
.badge.rounded-pill,
.badge.rounded-3 {
    border-radius: 2px !important;
}
