/**
 * CASSERV - Tema Escuro Personalizado
 * Baseado no Tabler Admin Template
 * Cores: Slate + Teal
 */

:root[data-bs-theme="dark"] {
    /* ========================================
       CORES PRINCIPAIS
    ======================================== */
    --tblr-body-bg: #0F172A;
    --tblr-body-color: #F1F5F9;
    --tblr-body-color-rgb: 241, 245, 249;
    
    /* Backgrounds */
    --tblr-bg-surface: #1E293B;
    --tblr-bg-surface-secondary: #334155;
    --tblr-bg-surface-tertiary: #475569;
    
    /* Bordas */
    --tblr-border-color: #334155;
    --tblr-border-color-translucent: rgba(51, 65, 85, 0.5);
    
    /* ========================================
       CORES DE MARCA
    ======================================== */
    --tblr-primary: #2DD4BF;
    --tblr-primary-rgb: 45, 212, 191;
    --tblr-primary-darken: #14B8A6;
    --tblr-primary-lighten: #5EEAD4;
    
    --tblr-secondary: #64748B;
    --tblr-secondary-rgb: 100, 116, 139;
    
    /* Cores de status */
    --tblr-success: #10B981;
    --tblr-info: #06B6D4;
    --tblr-warning: #F59E0B;
    --tblr-danger: #EF4444;
    
    /* ========================================
       TIPOGRAFIA
    ======================================== */
    --tblr-text-primary: #F1F5F9;
    --tblr-text-secondary: #CBD5E1;
    --tblr-text-muted: #94A3B8;
    --tblr-text-disabled: #64748B;
    
    --tblr-heading-color: #F1F5F9;
    --tblr-link-color: #5EEAD4;
    --tblr-link-hover-color: #2DD4BF;
    
    /* ========================================
       COMPONENTES
    ======================================== */
    
    /* Cards */
    --tblr-card-bg: #1E293B;
    --tblr-card-border-color: #334155;
    --tblr-card-cap-bg: #1E293B;
    
    /* Navbar */
    --tblr-navbar-bg: #1E293B;
    --tblr-navbar-border-color: #334155;
    
    /* Sidebar */
    --tblr-sidebar-bg: #1E293B;
    --tblr-sidebar-border-color: #334155;
    
    /* Dropdown */
    --tblr-dropdown-bg: #1E293B;
    --tblr-dropdown-border-color: #334155;
    --tblr-dropdown-link-color: #F1F5F9;
    --tblr-dropdown-link-hover-bg: #334155;
    --tblr-dropdown-link-hover-color: #2DD4BF;
    --tblr-dropdown-link-active-bg: #334155;
    --tblr-dropdown-link-active-color: #2DD4BF;
    
    /* Forms */
    --tblr-input-bg: #1E293B;
    --tblr-input-border-color: #334155;
    --tblr-input-color: #F1F5F9;
    --tblr-input-placeholder-color: #64748B;
    --tblr-input-focus-border-color: #2DD4BF;
    --tblr-input-focus-bg: #1E293B;
    
    /* Buttons */
    --tblr-btn-bg: #1E293B;
    --tblr-btn-border-color: #334155;
    --tblr-btn-color: #F1F5F9;
    
    /* Tables */
    --tblr-table-bg: transparent;
    --tblr-table-striped-bg: rgba(51, 65, 85, 0.3);
    --tblr-table-hover-bg: rgba(51, 65, 85, 0.5);
    --tblr-table-border-color: #334155;
    --tblr-table-color: #F1F5F9;
}

/* ========================================
   AJUSTES ESPECÍFICOS
======================================== */

[data-bs-theme="dark"] body {
    background-color: #0F172A;
    color: #F1F5F9;
}

/* Sidebar */
[data-bs-theme="dark"] .navbar-vertical {
    background-color: #1E293B;
    border-right: 1px solid #334155;
}

[data-bs-theme="dark"] .navbar-vertical .navbar-brand {
    border-bottom: 1px solid #334155;
}

[data-bs-theme="dark"] .navbar-nav .nav-link {
    color: #CBD5E1;
}

[data-bs-theme="dark"] .navbar-nav .nav-link:hover,
[data-bs-theme="dark"] .navbar-nav .nav-link.active {
    color: #2DD4BF;
    background-color: rgba(45, 212, 191, 0.1);
}

[data-bs-theme="dark"] .navbar-nav .nav-link-icon {
    color: #94A3B8;
}

[data-bs-theme="dark"] .navbar-nav .nav-link:hover .nav-link-icon,
[data-bs-theme="dark"] .navbar-nav .nav-link.active .nav-link-icon {
    color: #2DD4BF;
}

/* Dropdown Menu */
[data-bs-theme="dark"] .dropdown-menu {
    background-color: #1E293B;
    border: 1px solid #334155;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.3), 0 2px 4px -1px rgba(0, 0, 0, 0.2);
}

[data-bs-theme="dark"] .dropdown-item {
    color: #F1F5F9;
}

[data-bs-theme="dark"] .dropdown-item:hover,
[data-bs-theme="dark"] .dropdown-item:focus {
    background-color: #334155;
    color: #2DD4BF;
}

[data-bs-theme="dark"] .dropdown-divider {
    border-top-color: #334155;
}

/* Cards */
[data-bs-theme="dark"] .card {
    background-color: #1E293B;
    border-color: #334155;
}

[data-bs-theme="dark"] .card-header {
    background-color: #1E293B;
    border-bottom-color: #334155;
}

[data-bs-theme="dark"] .card-footer {
    background-color: #1E293B;
    border-top-color: #334155;
}

/* Tables */
[data-bs-theme="dark"] .table {
    color: #F1F5F9;
    border-color: #334155;
}

[data-bs-theme="dark"] .table thead th {
    background-color: #1E293B;
    border-bottom-color: #334155;
    color: #F1F5F9;
}

[data-bs-theme="dark"] .table tbody tr {
    border-bottom-color: #334155;
}

[data-bs-theme="dark"] .table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(51, 65, 85, 0.3);
}

[data-bs-theme="dark"] .table-hover tbody tr:hover {
    background-color: rgba(51, 65, 85, 0.5);
    color: #F1F5F9;
}

/* DataTables */
[data-bs-theme="dark"] .dataTables_wrapper .dataTables_length,
[data-bs-theme="dark"] .dataTables_wrapper .dataTables_filter,
[data-bs-theme="dark"] .dataTables_wrapper .dataTables_info,
[data-bs-theme="dark"] .dataTables_wrapper .dataTables_paginate {
    color: #CBD5E1;
}

[data-bs-theme="dark"] .dataTables_wrapper .dataTables_filter input {
    background-color: #1E293B;
    border-color: #334155;
    color: #F1F5F9;
}

[data-bs-theme="dark"] .dataTables_wrapper .dataTables_paginate .paginate_button {
    color: #CBD5E1 !important;
}

[data-bs-theme="dark"] .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    background: #334155;
    border-color: #334155;
    color: #2DD4BF !important;
}

[data-bs-theme="dark"] .dataTables_wrapper .dataTables_paginate .paginate_button.current {
    background: #2DD4BF;
    border-color: #2DD4BF;
    color: #0F172A !important;
}

/* Forms */
[data-bs-theme="dark"] .form-control,
[data-bs-theme="dark"] .form-select {
    background-color: #1E293B;
    border-color: #334155;
    color: #F1F5F9;
}

[data-bs-theme="dark"] .form-control:focus,
[data-bs-theme="dark"] .form-select:focus {
    background-color: #1E293B;
    border-color: #2DD4BF;
    color: #F1F5F9;
    box-shadow: 0 0 0 0.25rem rgba(45, 212, 191, 0.25);
}

[data-bs-theme="dark"] .form-control::placeholder {
    color: #64748B;
}

[data-bs-theme="dark"] .form-label {
    color: #CBD5E1;
}

/* Buttons */
[data-bs-theme="dark"] .btn-primary {
    background-color: #2DD4BF;
    border-color: #2DD4BF;
    color: #0F172A;
}

[data-bs-theme="dark"] .btn-primary:hover {
    background-color: #5EEAD4;
    border-color: #5EEAD4;
    color: #0F172A;
}

[data-bs-theme="dark"] .btn-secondary {
    background-color: #334155;
    border-color: #334155;
    color: #F1F5F9;
}

[data-bs-theme="dark"] .btn-secondary:hover {
    background-color: #475569;
    border-color: #475569;
    color: #F1F5F9;
}

[data-bs-theme="dark"] .btn-outline-primary {
    color: #2DD4BF;
    border-color: #2DD4BF;
}

[data-bs-theme="dark"] .btn-outline-primary:hover {
    background-color: #2DD4BF;
    border-color: #2DD4BF;
    color: #0F172A;
}

/* Links */
[data-bs-theme="dark"] a {
    color: #5EEAD4;
}

[data-bs-theme="dark"] a:hover {
    color: #2DD4BF;
}

/* Modals */
[data-bs-theme="dark"] .modal-content {
    background-color: #1E293B;
    border-color: #334155;
}

[data-bs-theme="dark"] .modal-header {
    border-bottom-color: #334155;
}

[data-bs-theme="dark"] .modal-footer {
    border-top-color: #334155;
}

/* Botão de fechar modal - garantir contraste em temas escuros */
[data-bs-theme="dark"] .btn-close {
    filter: invert(1) grayscale(100%) brightness(200%);
    opacity: 0.8;
}

[data-bs-theme="dark"] .btn-close:hover {
    opacity: 1;
}

/* Alerts */
[data-bs-theme="dark"] .alert-success {
    background-color: rgba(16, 185, 129, 0.15);
    border-color: #10B981;
    color: #6EE7B7;
}

[data-bs-theme="dark"] .alert-info {
    background-color: rgba(6, 182, 212, 0.15);
    border-color: #06B6D4;
    color: #67E8F9;
}

[data-bs-theme="dark"] .alert-warning {
    background-color: rgba(245, 158, 11, 0.15);
    border-color: #F59E0B;
    color: #FCD34D;
}

[data-bs-theme="dark"] .alert-danger {
    background-color: rgba(239, 68, 68, 0.15);
    border-color: #EF4444;
    color: #FCA5A5;
}

/* Badges */
[data-bs-theme="dark"] .badge {
    background-color: #334155;
    color: #F1F5F9;
}

[data-bs-theme="dark"] .badge.bg-primary {
    background-color: #2DD4BF !important;
    color: #0F172A;
}

/* Page Header */
[data-bs-theme="dark"] .page-header {
    background-color: #1E293B;
    border-bottom: 1px solid #334155;
}

/* Footer */
[data-bs-theme="dark"] .footer {
    background-color: #1E293B;
    border-top: 1px solid #334155;
    color: #94A3B8;
}

/* Empty State */
[data-bs-theme="dark"] .empty {
    color: #94A3B8;
}

[data-bs-theme="dark"] .empty-title {
    color: #CBD5E1;
}

/* Scrollbar (Webkit) */
[data-bs-theme="dark"] ::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

[data-bs-theme="dark"] ::-webkit-scrollbar-track {
    background: #1E293B;
}

[data-bs-theme="dark"] ::-webkit-scrollbar-thumb {
    background: #334155;
    border-radius: 5px;
}

[data-bs-theme="dark"] ::-webkit-scrollbar-thumb:hover {
    background: #475569;
}

/* SweetAlert2 Dark Theme */
[data-bs-theme="dark"] .swal2-popup {
    background-color: #1E293B !important;
    border: 1px solid #334155;
}

[data-bs-theme="dark"] .swal2-title,
[data-bs-theme="dark"] .swal2-html-container {
    color: #F1F5F9 !important;
}

[data-bs-theme="dark"] .swal2-confirm {
    background-color: #2DD4BF !important;
    color: #0F172A !important;
}

[data-bs-theme="dark"] .swal2-cancel {
    background-color: #334155 !important;
    color: #F1F5F9 !important;
}
