/* ==========================================================================
   SysPlumas Native Theme System (Issue #480)
   Suporte a: Claro | SysPlumas Dark (Nativo) | Sistema (Automático)
   ========================================================================== */

:root {
    --sys-theme-name: 'light';
    --sys-bg: #f3f8ff;
    --sys-surface-1: #ffffff;
    --sys-surface-2: #f8fbff;
    --sys-surface-3: #eef5ff;
    --sys-border: #dbe7f7;
    --sys-border-subtle: #e8eff9;
    --sys-text: #09285a;
    --sys-text-muted: #60759a;
    --sys-text-subtle: #899bb5;
    --sys-shadow: 0 18px 45px rgba(0, 43, 95, 0.10);
    --sys-card-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    
    /* Inputs */
    --sys-input-bg: #ffffff;
    --sys-input-border: #cbd8e8;
    --sys-input-text: #09285a;
    --sys-input-placeholder: #7487a8;
    --sys-input-focus-border: #1584ff;
    --sys-input-focus-ring: rgba(21, 132, 255, 0.18);
    
    /* Tabelas */
    --sys-table-header-bg: #eaf2fc;
    --sys-table-header-text: #002b5f;
    --sys-table-row-bg: #ffffff;
    --sys-table-row-alt: #f8fbff;
    --sys-table-row-hover: #eef5ff;
    --sys-table-border: #dbe7f7;
    
    /* Modais e Dropdowns */
    --sys-modal-bg: #ffffff;
    --sys-dropdown-bg: #ffffff;
    --sys-dropdown-hover: #f1f6fd;
    --sys-dropdown-text: #09285a;
    --sys-divider: #e9ecef;
    
    /* Cores Semânticas / Marca */
    --sys-brand-blue: #004b9b;
    --sys-brand-cyan: #23c4d8;
    --sys-brand-green: #20c997;
    --sys-status-success-bg: #e6f6ea;
    --sys-status-success-text: #28a745;
    --sys-status-warning-bg: #fff6df;
    --sys-status-warning-text: #f0a202;
    --sys-status-danger-bg: #fdecea;
    --sys-status-danger-text: #dc3545;
    --sys-status-info-bg: #e8f0fe;
    --sys-status-info-text: #1a73e8;
    --sys-status-purple-bg: #f1eafe;
    --sys-status-purple-text: #6f42c1;
    
    /* Scrollbars */
    --sys-scrollbar-track: #f1f5f9;
    --sys-scrollbar-thumb: #cbd5e1;
    --sys-scrollbar-thumb-hover: #94a3b8;
}

/* ==========================================================================
   TEMA ESCURO NATIVO (SysPlumas Dark)
   ========================================================================== */
[data-theme="dark"],
html[data-theme="dark"] body {
    --sys-theme-name: 'dark';
    /* Nível 0: Fundo Geral */
    --sys-bg: #0F172A;
    
    /* Nível 1: Cards e Painéis */
    --sys-surface-1: #172231;
    
    /* Nível 2: Áreas Internas, Tabelas, Inputs, Modais */
    --sys-surface-2: #1D2A3E;
    
    /* Nível 3: Hover, Selecionados e Badges */
    --sys-surface-3: #27374D;
    
    /* Bordas e Contornos Nítidos */
    --sys-border: #2A3A4A;
    --sys-border-subtle: #202D3D;
    
    /* Textos com Alto Contraste (AA/AAA) */
    --sys-text: #F1F5F9;
    --sys-text-muted: #94A3B8;
    --sys-text-subtle: #64748B;
    
    --sys-shadow: 0 18px 45px rgba(0, 0, 0, 0.45);
    --sys-card-shadow: 0 4px 14px rgba(0, 0, 0, 0.35);
    
    /* Inputs Dark */
    --sys-input-bg: #152238;
    --sys-input-border: #2E415A;
    --sys-input-text: #F1F5F9;
    --sys-input-placeholder: #64748B;
    --sys-input-focus-border: #38BDF8;
    --sys-input-focus-ring: rgba(56, 189, 248, 0.25);
    
    /* Tabelas Dark */
    --sys-table-header-bg: #131E2D;
    --sys-table-header-text: #38BDF8;
    --sys-table-row-bg: #172231;
    --sys-table-row-alt: #1A2637;
    --sys-table-row-hover: #24354C;
    --sys-table-border: #2A3A4A;
    
    /* Modais e Dropdowns Dark */
    --sys-modal-bg: #172231;
    --sys-dropdown-bg: #172231;
    --sys-dropdown-hover: #24354C;
    --sys-dropdown-text: #F1F5F9;
    --sys-divider: #2A3A4A;
    
    /* Cores Semânticas Adaptadas para Alto Contraste Dark */
    --sys-brand-blue: #38BDF8;
    --sys-brand-cyan: #22D3EE;
    --sys-brand-green: #34D399;
    --sys-status-success-bg: rgba(34, 197, 94, 0.18);
    --sys-status-success-text: #4ADE80;
    --sys-status-warning-bg: rgba(245, 158, 11, 0.18);
    --sys-status-warning-text: #FBBF24;
    --sys-status-danger-bg: rgba(239, 68, 68, 0.20);
    --sys-status-danger-text: #F87171;
    --sys-status-info-bg: rgba(56, 189, 248, 0.18);
    --sys-status-info-text: #38BDF8;
    --sys-status-purple-bg: rgba(168, 85, 247, 0.20);
    --sys-status-purple-text: #C084FC;
    
    /* Scrollbars Dark */
    --sys-scrollbar-track: #0F172A;
    --sys-scrollbar-thumb: #2D3E53;
    --sys-scrollbar-thumb-hover: #41556E;
}

/* ==========================================================================
   ESTILIZAÇÃO GLOBAL NO DARK MODE
   ========================================================================== */

[data-theme="dark"] {
    color-scheme: dark;
}

[data-theme="dark"] body {
    background-color: var(--sys-bg) !important;
    color: var(--sys-text) !important;
}

[data-theme="dark"] main,
[data-theme="dark"] .container-fluid,
[data-theme="dark"] .container {
    color: var(--sys-text);
}

[data-theme="dark"] a:not(.btn):not(.nav-link):not(.dropdown-item) {
    color: #38BDF8;
}

[data-theme="dark"] a:not(.btn):not(.nav-link):not(.dropdown-item):hover {
    color: #7DD3FC;
    text-decoration: underline;
}

/* Textos e Rótulos */
[data-theme="dark"] h1,
[data-theme="dark"] h2,
[data-theme="dark"] h3,
[data-theme="dark"] h4,
[data-theme="dark"] h5,
[data-theme="dark"] h6,
[data-theme="dark"] .cc-title,
[data-theme="dark"] .card-title {
    color: #FFFFFF !important;
}

[data-theme="dark"] .text-muted,
[data-theme="dark"] .small.text-muted,
[data-theme="dark"] small.text-muted {
    color: var(--sys-text-muted) !important;
}

[data-theme="dark"] .text-dark {
    color: #F1F5F9 !important;
}

[data-theme="dark"] hr {
    border-color: var(--sys-border);
}

/* Cards e Painéis */
[data-theme="dark"] .card,
[data-theme="dark"] .sys-welcome-card,
[data-theme="dark"] .sys-filter-card,
[data-theme="dark"] .cc-kpi-card,
[data-theme="dark"] .cc-chart-box,
[data-theme="dark"] .cc-alerts-box,
[data-theme="dark"] .cc-table,
[data-theme="dark"] .cc-panel,
[data-theme="dark"] .cc-ritmo-box,
[data-theme="dark"] .cc-dia-detalhe {
    background-color: var(--sys-surface-1) !important;
    border: 1px solid var(--sys-border) !important;
    color: var(--sys-text) !important;
    box-shadow: var(--sys-card-shadow) !important;
}

[data-theme="dark"] .card-header,
[data-theme="dark"] .card-footer {
    background-color: var(--sys-surface-2) !important;
    border-color: var(--sys-border) !important;
    color: var(--sys-text) !important;
}

[data-theme="dark"] .card-header.bg-light {
    background-color: var(--sys-surface-2) !important;
}

[data-theme="dark"] .sys-welcome-content {
    background: radial-gradient(circle at 85% 20%, rgba(56, 189, 248, 0.14), transparent 36%),
                linear-gradient(135deg, #172231 0%, #15202E 60%, #111A26 100%) !important;
}

[data-theme="dark"] .sys-welcome-content h1 {
    color: #FFFFFF !important;
}

[data-theme="dark"] .sys-welcome-content h2 {
    color: #E2E8F0 !important;
}

[data-theme="dark"] .sys-welcome-content p {
    color: var(--sys-text-muted) !important;
}

/* Tabelas e DataTables */
[data-theme="dark"] .table,
[data-theme="dark"] table.dataTable {
    color: var(--sys-text) !important;
    background-color: var(--sys-surface-1) !important;
    border-color: var(--sys-border) !important;
}

[data-theme="dark"] .table thead th,
[data-theme="dark"] table.dataTable thead th {
    background-color: var(--sys-table-header-bg) !important;
    color: var(--sys-table-header-text) !important;
    border-color: var(--sys-border) !important;
    font-weight: 700;
}

[data-theme="dark"] .table td,
[data-theme="dark"] .table th,
[data-theme="dark"] table.dataTable td,
[data-theme="dark"] table.dataTable th {
    border-color: var(--sys-border) !important;
    background-color: transparent;
}

[data-theme="dark"] .table-striped tbody tr:nth-of-type(odd) {
    background-color: var(--sys-table-row-alt) !important;
}

[data-theme="dark"] .table-hover tbody tr:hover,
[data-theme="dark"] table.dataTable tbody tr:hover {
    background-color: var(--sys-table-row-hover) !important;
    color: #FFFFFF !important;
}

[data-theme="dark"] .dataTables_wrapper .dataTables_length,
[data-theme="dark"] .dataTables_wrapper .dataTables_filter,
[data-theme="dark"] .dataTables_wrapper .dataTables_info,
[data-theme="dark"] .dataTables_wrapper .dataTables_processing,
[data-theme="dark"] .dataTables_wrapper .dataTables_paginate {
    color: var(--sys-text-muted) !important;
}

[data-theme="dark"] .dataTables_wrapper .dataTables_paginate .paginate_button {
    color: var(--sys-text) !important;
    border: 1px solid var(--sys-border) !important;
    background: var(--sys-surface-2) !important;
    border-radius: 6px;
}

[data-theme="dark"] .dataTables_wrapper .dataTables_paginate .paginate_button.current,
[data-theme="dark"] .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
    background: #004B9B !important;
    color: #FFFFFF !important;
    border-color: #1584FF !important;
}

/* Formulários e Inputs */
[data-theme="dark"] .form-control,
[data-theme="dark"] .form-select,
[data-theme="dark"] input[type="text"],
[data-theme="dark"] input[type="password"],
[data-theme="dark"] input[type="email"],
[data-theme="dark"] input[type="number"],
[data-theme="dark"] input[type="date"],
[data-theme="dark"] input[type="month"],
[data-theme="dark"] input[type="search"],
[data-theme="dark"] select.form-control,
[data-theme="dark"] textarea.form-control,
[data-theme="dark"] .sys-field-control,
[data-theme="dark"] .sys-search-box {
    background-color: var(--sys-input-bg) !important;
    border-color: var(--sys-input-border) !important;
    color: var(--sys-input-text) !important;
}

[data-theme="dark"] .form-control:focus,
[data-theme="dark"] .form-select:focus,
[data-theme="dark"] input:focus,
[data-theme="dark"] select:focus,
[data-theme="dark"] textarea:focus,
[data-theme="dark"] .sys-field-control:focus-within,
[data-theme="dark"] .sys-search-box:focus-within {
    border-color: var(--sys-input-focus-border) !important;
    box-shadow: 0 0 0 3px var(--sys-input-focus-ring) !important;
    background-color: var(--sys-input-bg) !important;
    color: #FFFFFF !important;
}

[data-theme="dark"] .form-control::placeholder,
[data-theme="dark"] input::placeholder,
[data-theme="dark"] textarea::placeholder,
[data-theme="dark"] .sys-search-box input::placeholder {
    color: var(--sys-input-placeholder) !important;
}

[data-theme="dark"] .form-control[readonly],
[data-theme="dark"] .form-control:disabled {
    background-color: #0E1624 !important;
    color: #64748B !important;
    border-color: #1E2D42 !important;
}

[data-theme="dark"] .input-group-text {
    background-color: var(--sys-surface-2) !important;
    border-color: var(--sys-input-border) !important;
    color: var(--sys-text-muted) !important;
}

/* Select2 & Selectize */
[data-theme="dark"] .select2-container--default .select2-selection--single,
[data-theme="dark"] .select2-selection {
    background-color: var(--sys-input-bg) !important;
    border-color: var(--sys-input-border) !important;
    color: var(--sys-input-text) !important;
}

[data-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__rendered,
[data-theme="dark"] .select2-selection .select2-selection__rendered {
    color: var(--sys-input-text) !important;
}

[data-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__placeholder,
[data-theme="dark"] .select2-selection__placeholder {
    color: var(--sys-input-placeholder) !important;
}

[data-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: var(--sys-text-muted) transparent transparent transparent !important;
}

[data-theme="dark"] .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
    border-color: transparent transparent var(--sys-text-muted) transparent !important;
}

[data-theme="dark"] .select2-container--default.select2-container--focus .select2-selection--single,
[data-theme="dark"] .select2-container--default.select2-container--open .select2-selection--single {
    border-color: var(--sys-input-focus-border) !important;
    box-shadow: 0 0 0 3px var(--sys-input-focus-ring) !important;
}

[data-theme="dark"] .select2-container--default .select2-selection--multiple {
    background-color: var(--sys-input-bg) !important;
    border-color: var(--sys-input-border) !important;
    color: var(--sys-input-text) !important;
}

[data-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: var(--sys-surface-2) !important;
    border-color: var(--sys-border) !important;
    color: var(--sys-text) !important;
}

[data-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    color: var(--sys-text-muted) !important;
    margin-right: 4px;
}

[data-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
    color: #F87171 !important;
}

[data-theme="dark"] .select2-dropdown {
    background-color: var(--sys-surface-1) !important;
    border-color: var(--sys-border) !important;
    box-shadow: var(--sys-shadow) !important;
    color: var(--sys-text) !important;
}

[data-theme="dark"] .select2-search--dropdown {
    background-color: var(--sys-surface-1) !important;
}

[data-theme="dark"] .select2-container--default .select2-search--dropdown .select2-search__field,
[data-theme="dark"] .select2-search__field {
    background-color: var(--sys-input-bg) !important;
    border: 1px solid var(--sys-input-border) !important;
    color: var(--sys-input-text) !important;
    border-radius: 6px !important;
}

[data-theme="dark"] .select2-container--default .select2-search--dropdown .select2-search__field:focus,
[data-theme="dark"] .select2-search__field:focus {
    border-color: var(--sys-input-focus-border) !important;
    box-shadow: 0 0 0 2px var(--sys-input-focus-ring) !important;
    outline: none !important;
}

[data-theme="dark"] .select2-results {
    background-color: var(--sys-surface-1) !important;
}

[data-theme="dark"] .select2-results__option {
    color: var(--sys-text) !important;
    background-color: transparent !important;
}

[data-theme="dark"] .select2-container--default .select2-results__option--highlighted[aria-selected],
[data-theme="dark"] .select2-container--default .select2-results__option--highlighted {
    background-color: #004B9B !important;
    color: #FFFFFF !important;
}

[data-theme="dark"] .select2-container--default .select2-results__option[aria-selected="true"] {
    background-color: #1A365D !important;
    color: #38BDF8 !important;
    font-weight: 600;
}

[data-theme="dark"] .select2-results__option--no-results,
[data-theme="dark"] .select2-results__message {
    color: var(--sys-text-muted) !important;
    background-color: transparent !important;
}

/* Modais do Bootstrap */
[data-theme="dark"] .modal-content {
    background-color: var(--sys-modal-bg) !important;
    border: 1px solid var(--sys-border) !important;
    color: var(--sys-text) !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.6) !important;
}

[data-theme="dark"] .modal-header,
[data-theme="dark"] .modal-footer {
    border-color: var(--sys-border) !important;
}

[data-theme="dark"] .modal-header .close,
[data-theme="dark"] .closeModal {
    color: var(--sys-text-muted) !important;
    text-shadow: none !important;
    opacity: 0.85;
}

[data-theme="dark"] .modal-header .close:hover,
[data-theme="dark"] .closeModal:hover {
    color: #FFFFFF !important;
    opacity: 1;
}

/* Dropdown Menus */
[data-theme="dark"] .dropdown-menu,
[data-theme="dark"] .sys-dropdown-menu,
[data-theme="dark"] .sys-header-context-menu {
    background-color: var(--sys-dropdown-bg) !important;
    border: 1px solid var(--sys-border) !important;
    box-shadow: var(--sys-shadow) !important;
    color: var(--sys-text) !important;
}

[data-theme="dark"] .dropdown-item {
    color: var(--sys-dropdown-text) !important;
}

[data-theme="dark"] .dropdown-item:hover,
[data-theme="dark"] .dropdown-item:focus {
    background-color: var(--sys-dropdown-hover) !important;
    color: #FFFFFF !important;
}

[data-theme="dark"] .dropdown-divider {
    border-top: 1px solid var(--sys-divider) !important;
}

/* Breadcrumb */
[data-theme="dark"] .sys-system-breadcrumb {
    background: #0B1322 !important;
    border-bottom: 1px solid var(--sys-border) !important;
    color: var(--sys-text-muted) !important;
}

[data-theme="dark"] .sys-system-breadcrumb a {
    color: #38BDF8 !important;
}

[data-theme="dark"] .sys-system-breadcrumb [aria-current="page"] {
    color: #E2E8F0 !important;
}

/* Toasts */
[data-theme="dark"] .toast-custom {
    background-color: var(--sys-surface-1) !important;
    border: 1px solid var(--sys-border) !important;
    color: var(--sys-text) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5) !important;
}

[data-theme="dark"] .toast-header {
    background-color: var(--sys-surface-2) !important;
    border-bottom: 1px solid var(--sys-border) !important;
    color: #FFFFFF !important;
}

[data-theme="dark"] .toast-body {
    color: var(--sys-text) !important;
}

/* SweetAlert2 Fluent Dark Mode */
[data-theme="dark"] .swal2-popup {
    background: var(--sys-surface-1) !important;
    background-color: var(--sys-surface-1) !important;
    border: 1px solid var(--sys-border) !important;
    color: #F1F5F9 !important;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.7) !important;
}

[data-theme="dark"] .swal2-title {
    color: #FFFFFF !important;
}

[data-theme="dark"] .swal2-html-container {
    color: var(--sys-text-muted) !important;
}

[data-theme="dark"] .swal2-popup.swal2-empresa-inativa-popup,
[data-theme="dark"] .swal2-popup.swal2-sieg-2col-white-popup {
    background: var(--sys-surface-1) !important;
    background-color: var(--sys-surface-1) !important;
    border-color: var(--sys-border) !important;
    color: #F1F5F9 !important;
}

[data-theme="dark"] .swal2-popup.swal2-empresa-inativa-popup .swal2-html-container,
[data-theme="dark"] .swal2-popup.swal2-sieg-2col-white-popup .swal2-html-container {
    background: var(--sys-surface-1) !important;
    color: #CBD5E1 !important;
}

/* Nav Tabs */
[data-theme="dark"] .nav-tabs {
    border-bottom: 1px solid var(--sys-border);
}

[data-theme="dark"] .nav-tabs .nav-link {
    color: var(--sys-text-muted);
    border-color: transparent;
}

[data-theme="dark"] .nav-tabs .nav-link:hover {
    color: #FFFFFF;
    border-color: var(--sys-border) var(--sys-border) transparent;
}

[data-theme="dark"] .nav-tabs .nav-link.active {
    color: #38BDF8 !important;
    background-color: var(--sys-surface-1) !important;
    border-color: var(--sys-border) var(--sys-border) var(--sys-surface-1) !important;
}

/* Central de Controle KPIs & Componentes Específicos */
[data-theme="dark"] .cc-kpi-pendentes { color: #FBBF24; background: rgba(245, 158, 11, 0.20); }
[data-theme="dark"] .cc-kpi-andamento { color: #38BDF8; background: rgba(56, 189, 248, 0.20); }
[data-theme="dark"] .cc-kpi-concluidas { color: #4ADE80; background: rgba(34, 197, 94, 0.20); }
[data-theme="dark"] .cc-kpi-alerta { color: #F87171; background: rgba(239, 68, 68, 0.20); }
[data-theme="dark"] .cc-kpi-progresso { color: #C084FC; background: rgba(168, 85, 247, 0.20); }

[data-theme="dark"] .cc-kpi-label { color: var(--sys-text-muted); }
[data-theme="dark"] .cc-kpi-sub { color: #CBD5E1; }

[data-theme="dark"] .cc-mini {
    background-color: var(--sys-surface-2) !important;
    border-color: var(--sys-border) !important;
    color: var(--sys-text) !important;
}

[data-theme="dark"] .cc-mini span {
    color: var(--sys-text-muted) !important;
}

[data-theme="dark"] .cc-badge-Critico { background: rgba(239, 68, 68, 0.25); color: #FCA5A5; }
[data-theme="dark"] .cc-badge-Atencao { background: rgba(245, 158, 11, 0.25); color: #FDE047; }
[data-theme="dark"] .cc-badge-EmAndamento { background: rgba(56, 189, 248, 0.25); color: #7DD3FC; }
[data-theme="dark"] .cc-badge-Concluido { background: rgba(34, 197, 94, 0.25); color: #86EFAC; }
[data-theme="dark"] .cc-badge-SemMovimentacao { background: #27374D; color: #94A3B8; }

[data-theme="dark"] .cc-alert-item,
[data-theme="dark"] .cc-calendario-item,
[data-theme="dark"] .cc-mensagem-item,
[data-theme="dark"] .cc-action-row {
    border-color: var(--sys-border) !important;
}

[data-theme="dark"] .cc-war {
    background: #0F172A !important;
    color: var(--sys-text) !important;
}

[data-theme="dark"] .cc-war-header {
    border-color: var(--sys-border) !important;
}

/* Skeletons Dark */
[data-theme="dark"] .cc-skeleton {
    background: linear-gradient(90deg, #1D2A3E 25%, #27374D 50%, #1D2A3E 75%) !important;
    background-size: 200% 100% !important;
}

/* Scrollbars Customizadas */
::-webkit-scrollbar {
    width: 9px;
    height: 9px;
}

::-webkit-scrollbar-track {
    background: var(--sys-scrollbar-track);
}

::-webkit-scrollbar-thumb {
    background: var(--sys-scrollbar-thumb);
    border-radius: 6px;
}

::-webkit-scrollbar-thumb:hover {
    background: var(--sys-scrollbar-thumb-hover);
}

/* ==========================================================================
   SELETOR DE APARÊNCIA (Claro | SysPlumas Dark | Sistema)
   ========================================================================== */

.sys-theme-switcher-menu {
    padding: 8px 12px;
    min-width: 250px;
}

.sys-theme-switcher-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: var(--sys-text-muted);
    margin-bottom: 8px;
}

.sys-theme-options-group {
    display: flex;
    background: var(--sys-surface-2);
    border: 1px solid var(--sys-border);
    border-radius: 10px;
    padding: 3px;
    gap: 3px;
}

.sys-theme-btn {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 6px 4px;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: var(--sys-text-muted);
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
    transition: all .16s ease;
    white-space: nowrap;
}

.sys-theme-btn:hover {
    color: var(--sys-text);
    background: rgba(255, 255, 255, 0.08);
}

.sys-theme-btn.active {
    background: #004B9B !important;
    color: #FFFFFF !important;
    box-shadow: 0 2px 6px rgba(0, 75, 155, 0.35);
}

[data-theme="dark"] .sys-theme-btn.active {
    background: #1584FF !important;
    color: #FFFFFF !important;
    box-shadow: 0 2px 8px rgba(21, 132, 255, 0.40);
}

/* Cards Visuais de Seleção na Página de Perfil */
.sys-theme-profile-card {
    border: 2px solid var(--sys-border);
    border-radius: 14px;
    padding: 16px;
    cursor: pointer;
    transition: all .2s ease;
    background: var(--sys-surface-1);
    height: 100%;
}

.sys-theme-profile-card:hover {
    border-color: #1584FF;
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(0, 75, 155, 0.12);
}

.sys-theme-profile-card.active {
    border-color: #1584FF;
    background: var(--sys-surface-2);
    box-shadow: 0 0 0 3px rgba(21, 132, 255, 0.20);
}

.sys-theme-preview-box {
    height: 80px;
    border-radius: 8px;
    margin-bottom: 12px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--sys-border);
}

.sys-theme-preview-header {
    height: 18px;
    background: #0E2841;
}

.sys-theme-preview-body {
    flex: 1;
    display: flex;
    padding: 6px;
    gap: 6px;
}

.sys-theme-preview-card-item {
    flex: 1;
    border-radius: 4px;
}

.sys-preview-light { background: #f3f8ff; }
.sys-preview-light .sys-theme-preview-card-item { background: #ffffff; border: 1px solid #dbe7f7; }

.sys-preview-dark { background: #0F172A; }
.sys-preview-dark .sys-theme-preview-card-item { background: #172231; border: 1px solid #2A3A4A; }

.sys-preview-system { background: linear-gradient(135deg, #f3f8ff 50%, #0F172A 50%); }
.sys-preview-system .sys-theme-preview-card-item { background: rgba(255, 255, 255, 0.5); border: 1px solid #94a3b8; }

/* ==========================================================================
   Painéis "ofx-*" (Importações, Contas Correntes, Palavra-chave e telas que
   reaproveitam esses componentes de Contas.css) — Issue #480
   ========================================================================== */

[data-theme="dark"] .ofx-account-page {
    color: var(--sys-text);
}

[data-theme="dark"] .ofx-account-hero,
[data-theme="dark"] .ofx-account-hero-ajuda {
    background: var(--sys-surface-1) !important;
    border-color: var(--sys-border) !important;
}

[data-theme="dark"] .ofx-account-title h1 {
    color: var(--sys-text) !important;
}

[data-theme="dark"] .ofx-account-title > div > span {
    color: var(--sys-text-muted) !important;
}

[data-theme="dark"] .ofx-account-panel,
[data-theme="dark"] .ofx-keyword-table-wrap {
    background: var(--sys-surface-1) !important;
    border-color: var(--sys-border) !important;
}

[data-theme="dark"] .ofx-account-panel-header {
    background: var(--sys-surface-2) !important;
    border-color: var(--sys-border) !important;
}

[data-theme="dark"] .ofx-account-panel-header h2,
[data-theme="dark"] .ofx-keyword-toolbar h2 {
    color: var(--sys-text) !important;
}

[data-theme="dark"] .ofx-account-panel-header p {
    color: var(--sys-text-muted) !important;
}

[data-theme="dark"] .ofx-account-field label {
    color: var(--sys-text) !important;
}

[data-theme="dark"] .ofx-account-btn-secondary {
    background: var(--sys-surface-2) !important;
    border-color: var(--sys-border) !important;
    color: var(--sys-text) !important;
}

[data-theme="dark"] .ofx-account-btn-secondary:hover,
[data-theme="dark"] .ofx-account-btn-secondary:focus {
    background: var(--sys-surface-3) !important;
    color: #FFFFFF !important;
}

[data-theme="dark"] .ofx-account-tabs {
    border-color: var(--sys-border) !important;
}

[data-theme="dark"] .ofx-account-tabs .nav-link {
    color: var(--sys-text-muted) !important;
}

[data-theme="dark"] .ofx-account-tabs .nav-link.active {
    color: #38BDF8 !important;
    background: var(--sys-surface-2) !important;
    border-color: var(--sys-border) var(--sys-border) var(--sys-surface-2) !important;
}

[data-theme="dark"] .ofx-keyword-table-wrap tbody td {
    color: var(--sys-text) !important;
    border-color: var(--sys-border) !important;
}

[data-theme="dark"] .ofx-keyword-table-wrap tbody tr:hover td {
    background-color: var(--sys-surface-3) !important;
    color: #FFFFFF !important;
}

[data-theme="dark"] .ofx-table-action {
    background: var(--sys-surface-2) !important;
    border-color: var(--sys-border) !important;
    color: var(--sys-text-muted) !important;
}

[data-theme="dark"] .ofx-table-action:hover,
[data-theme="dark"] .ofx-table-action:focus {
    background: #004B9B !important;
    border-color: #1584FF !important;
    color: #FFFFFF !important;
}

[data-theme="dark"] .ofx-table-action-danger {
    border-color: rgba(239, 68, 68, 0.4) !important;
    color: #F87171 !important;
}

[data-theme="dark"] .ofx-table-action-warning {
    border-color: rgba(245, 158, 11, 0.4) !important;
    color: #FBBF24 !important;
}

[data-theme="dark"] .ofx-account-row-inactive td {
    background: rgba(239, 68, 68, 0.12) !important;
    color: #F87171 !important;
}

[data-theme="dark"] .ofx-delete-icon-button {
    background: rgba(239, 68, 68, 0.12) !important;
    border-color: rgba(239, 68, 68, 0.4) !important;
    color: #F87171 !important;
}

[data-theme="dark"] .status-processado {
    color: #4ADE80 !important;
    background-color: rgba(34, 197, 94, 0.18) !important;
    border-color: rgba(34, 197, 94, 0.35) !important;
}

[data-theme="dark"] .status-erro {
    color: #F87171 !important;
    background-color: rgba(239, 68, 68, 0.18) !important;
    border-color: rgba(239, 68, 68, 0.35) !important;
}

[data-theme="dark"] .status-andamento {
    color: #FBBF24 !important;
    background-color: rgba(245, 158, 11, 0.18) !important;
    border-color: rgba(245, 158, 11, 0.35) !important;
}

[data-theme="dark"] .status-desconhecido {
    color: var(--sys-text-muted) !important;
    background-color: var(--sys-surface-2) !important;
    border-color: var(--sys-border) !important;
}

/* ==========================================================================
   TELA PRINCIPAL: LANÇAMENTOS, CONTAS CONTÁBEIS E DRE (Issue #498)
   Destaque cromático para rápida identificação visual de contas contábeis
   ========================================================================== */

/* Cabeçalho de Categoria Contábil */
[data-theme="dark"] .bg-categoria,
[data-theme="dark"] th.bg-categoria,
[data-theme="dark"] td.bg-categoria,
[data-theme="dark"] tr.bg-categoria,
[data-theme="dark"] .modal-header.bg-categoria {
    background: linear-gradient(135deg, #1A2639 0%, #1E3A5F 100%) !important;
    color: #FFFFFF !important;
    border-color: #2E415A !important;
    font-weight: 700;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.45);
}

/* Código da Conta Contábil (Destaque imediato para escaneabilidade) */
[data-theme="dark"] td.codigo,
[data-theme="dark"] .codigo,
[data-theme="dark"] .form-lancamento .codigo,
[data-theme="dark"] #dre .codigo,
[data-theme="dark"] #conteudoModalLancamentos .codigo {
    color: #38BDF8 !important;
    font-weight: 700 !important;
    font-family: 'Consolas', 'Monaco', 'Courier New', monospace;
    letter-spacing: 0.04em;
}

/* Descrição da Conta Contábil */
[data-theme="dark"] td.descricao,
[data-theme="dark"] .descricao,
[data-theme="dark"] .form-lancamento .descricao,
[data-theme="dark"] #dre .descricao,
[data-theme="dark"] #conteudoModalLancamentos td:first-child {
    color: #E2E8F0 !important;
    font-weight: 500;
}

/* Inputs e Campos de Valor Contábil */
[data-theme="dark"] input.mask-valor,
[data-theme="dark"] td.valor input,
[data-theme="dark"] .mask-valor,
[data-theme="dark"] .mask-valor-6cases,
[data-theme="dark"] .valor-dre {
    background-color: #152238 !important;
    border: 1px solid #2E415A !important;
    color: #F8FAFC !important;
    font-weight: 600 !important;
    border-radius: 4px;
}

[data-theme="dark"] input.mask-valor:focus,
[data-theme="dark"] td.valor input:focus,
[data-theme="dark"] .mask-valor:focus,
[data-theme="dark"] .mask-valor-6cases:focus {
    border-color: #38BDF8 !important;
    box-shadow: 0 0 0 2px rgba(56, 189, 248, 0.3) !important;
    background-color: #152238 !important;
    color: #FFFFFF !important;
    outline: none !important;
}

/* Campos de valor desabilitados / calculados / bloqueados */
[data-theme="dark"] input.mask-valor:disabled,
[data-theme="dark"] input.mask-valor[disabled],
[data-theme="dark"] td.valor input:disabled,
[data-theme="dark"] td.valor input[disabled],
[data-theme="dark"] input.mask-valor[readonly] {
    background-color: #0E1726 !important;
    border-color: #1E2D42 !important;
    color: #94A3B8 !important;
    opacity: 0.85;
}

/* Hover interativo nas linhas das contas contábeis */
[data-theme="dark"] .form-lancamento table tbody tr:hover,
[data-theme="dark"] .form-lancamento table tbody tr:hover td,
[data-theme="dark"] #teste table tbody tr:hover,
[data-theme="dark"] #teste table tbody tr:hover td,
[data-theme="dark"] #conteudoModalLancamentos tbody tr:hover,
[data-theme="dark"] #conteudoModalLancamentos tbody tr:hover td,
[data-theme="dark"] #dre table.teste tbody tr:hover,
[data-theme="dark"] #dre table.teste tbody tr:hover td {
    background-color: rgba(56, 189, 248, 0.08) !important;
}

/* Botões da Tela Principal de Lançamentos */
[data-theme="dark"] .fixed-width-button .btn-plumas,
[data-theme="dark"] .form-lancamento .btn-plumas,
[data-theme="dark"] .btn-plumas {
    background-color: #1D2A3E !important;
    border-color: #2E415A !important;
    color: #38BDF8 !important;
}

[data-theme="dark"] .fixed-width-button .btn-plumas:hover,
[data-theme="dark"] .form-lancamento .btn-plumas:hover,
[data-theme="dark"] .btn-plumas:hover,
[data-theme="dark"] .btn-plumas:focus {
    background-color: #004B9B !important;
    border-color: #1584FF !important;
    color: #FFFFFF !important;
}

[data-theme="dark"] .btn-plumas-w {
    background-color: #1D2A3E !important;
    border: 1px solid #2E415A !important;
    color: #38BDF8 !important;
}

[data-theme="dark"] .btn-plumas-w:hover,
[data-theme="dark"] .btn-plumas-w:focus {
    background-color: #004B9B !important;
    border-color: #1584FF !important;
    color: #FFFFFF !important;
}

[data-theme="dark"] .btn.btn-plumas-3d {
    background: linear-gradient(180deg, #1E3A5F 0%, #172E4D 100%) !important;
    border-color: #2E415A !important;
    color: #FFFFFF !important;
}

[data-theme="dark"] .btn.btn-plumas-3d:hover,
[data-theme="dark"] .btn.btn-plumas-3d:focus {
    background: linear-gradient(180deg, #2563EB 0%, #1D4ED8 100%) !important;
    border-color: #38BDF8 !important;
    color: #FFFFFF !important;
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.4) !important;
}

/* Botões Flutuantes */
[data-theme="dark"] .floatBtnLancamento,
[data-theme="dark"] .floatBtnArquivo,
[data-theme="dark"] .floatBtnDRE {
    background-color: #004B9B !important;
    border: 1px solid #1584FF !important;
    color: #FFFFFF !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.5) !important;
}

[data-theme="dark"] .floatBtnLancamento:hover,
[data-theme="dark"] .floatBtnArquivo:hover,
[data-theme="dark"] .floatBtnDRE:hover {
    background-color: #1584FF !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(21, 132, 255, 0.4) !important;
}

/* Barra de Salvar e Card de Observações */
[data-theme="dark"] .lancamento-save-bar {
    background: #172231 !important;
    border: 1px solid #2A3A4A !important;
    border-left: 4px solid #38BDF8 !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35) !important;
}

[data-theme="dark"] .lancamento-save-bar strong {
    color: #F1F5F9 !important;
}

[data-theme="dark"] .lancamento-save-bar span {
    color: #94A3B8 !important;
}

[data-theme="dark"] .lancamento-observacao-card {
    background: #172231 !important;
    border: 1px solid #2A3A4A !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35) !important;
    color: #F1F5F9 !important;
}

[data-theme="dark"] .lancamento-observacao-card label {
    color: #F1F5F9 !important;
}

[data-theme="dark"] .lancamento-observacao-card textarea {
    background-color: #152238 !important;
    border-color: #2E415A !important;
    color: #F1F5F9 !important;
}

/* DRE / Telas de Impressão e Relatório */
[data-theme="dark"] #dre .table-bordered {
    color: #F1F5F9 !important;
    border-color: #2A3A4A !important;
    background-color: #172231 !important;
}

[data-theme="dark"] #dre .table-bordered td,
[data-theme="dark"] #dre .table-bordered th {
    border: 1px solid #2A3A4A !important;
}

[data-theme="dark"] #dre .th-dre {
    background: linear-gradient(135deg, #1A2639 0%, #1E3A5F 100%) !important;
    color: #FFFFFF !important;
    border: 1px solid #2A3A4A !important;
}

[data-theme="dark"] #dre .text-empresa {
    color: #F1F5F9 !important;
}

[data-theme="dark"] #dre .text-empresa strong {
    color: #FFFFFF !important;
}
