/* White Theme Implementation - Improved with Bootstrap Gray Scale & Modern Aesthetics */
/* Activate by adding class .light-theme to body */

.light-theme {
    /* Main Variables Override */
    --fundomodal: #ffffff;
    --cabecalhotab: rgba(0, 114, 255, 0.1);
    --fundodarkinput: #f8f9fa;
    --text_dark_theme: #212529;
    --bs-body-bg: #dce1e7;
    /* Slightly cooler gray for modern feel */
    --bs-body-color: #212529;

    background: #dce1e7 !important;
    color: #212529 !important;
}

/* Header & Sidebar */
.light-theme .header {
    background: transparent;
}

.light-theme .sidebar {
    background: #ffffff;
    border-right: 1px solid #e9ecef;
    box-shadow: 4px 0 24px rgba(0, 0, 0, 0.02);
    /* Softer shadow */
}

.light-theme .file-label {
    color: #212529 !important;
}

.light-theme .changelog-list li {
    color: #212529 !important;
}

.light-theme .upload-description {
    color: #212529 !important;
}

.light-theme .file-name {
    color: #212529 !important;
}

.light-theme .sidebar-header {
    border-bottom: 1px solid #e9ecef;
}

.light-theme .sidebar-title {
    color: #212529 !important;
    font-weight: 700;
}

.light-theme .sidebar-subtitle {
    color: #6c757d;
}

.light-theme .header-icon {
    color: #495057;
}

.light-theme .category-title {
    color: #adb5bd;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 0.75rem;
    letter-spacing: 0.8px;
}

.light-theme .menu-link {
    color: #495057;
    font-weight: 500;
    transition: all 0.2s ease;
}

.light-theme .sidebar:hover .menu-link {
    color: #495057;
}

.light-theme .menu-icon {
    color: #6c757d;
}

.light-theme .sidebar:hover .menu-icon {
    color: #6c757d;
}

.light-theme .menu-link:hover,
.light-theme .sidebar:hover .menu-link:hover {
    background: rgba(0, 114, 255, 0.05);
    color: #0072ff;
    transform: translateX(5px);
}

.light-theme .menu-link:hover .menu-icon,
.light-theme .sidebar:hover .menu-link:hover .menu-icon {
    color: #0072ff;
}

.light-theme .menu-link.active,
.light-theme .sidebar:hover .menu-link.active {
    background: linear-gradient(90deg, rgba(0, 114, 255, 0.1), transparent);
    color: #0072ff;
    border-left: 3px solid #0072ff;
    font-weight: 600;
}

.light-theme .menu-link.active .menu-icon,
.light-theme .sidebar:hover .menu-link.active .menu-icon {
    color: #0072ff;
}

/* Sidebar Footer & Theme Switch */
.light-theme .sidebar-footer {
    border-top: 1px solid #e9ecef;
    background: #ffffff;
}

.light-theme .theme-switch {
    background: #f8f9fa;
    border: 1px solid #e9ecef;
}

.light-theme .switch-label,
.light-theme .sidebar:hover .switch-label {
    color: #495057;
    font-weight: 600;
}

.light-theme .slider {
    background-color: #ced4da;
}

.light-theme input:checked+.slider {
    background-color: #0072ff;
}

/* Main Content & Cards - REFINED SHADOWS & GLASS */
.light-theme .stat-card,
.light-theme .report-card,
.light-theme .content-section,
.light-theme .user-profile,
.light-theme .nav-container,
.light-theme .card,
.light-theme .filters-container,
.light-theme .table-container {
    background: rgba(255, 255, 255, 0.85);
    /* Balanced opacity for glass effect on darker background */
    border: 1px solid rgba(233, 236, 239, 0.8);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.02), 0 2px 4px -1px rgba(0, 0, 0, 0.02);
    /* Tailwind-like subtle shadow */
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

.light-theme .stat-card:hover,
.light-theme .report-card:hover {
    background: #ffffff;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.05), 0 4px 6px -2px rgba(0, 0, 0, 0.025);
    transform: translateY(-2px);
    transition: all 0.3s ease;
    border-color: rgba(0, 114, 255, 0.2);
}

/* Typography & Colors in Cards */
.light-theme .stat-title,
.light-theme .report-title,
.light-theme .section-title,
.light-theme .user-name,
.light-theme .user-profile h5,
.light-theme .user-profile .h5,
.light-theme h1,
.light-theme h2,
.light-theme h3,
.light-theme h4,
.light-theme h5,
.light-theme h6 {
    color: #212529 !important;
    font-weight: 600;
}

.light-theme .stat-description,
.light-theme .report-description,
.light-theme .user-role {
    color: #6c757d;
}

.light-theme .stat-value {
    background: linear-gradient(90deg, #212529, #0072ff);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: 800;
    /* Bolder */
}

/* Forms & Inputs - HIGH CONTRAST */
.light-theme .form-control,
.light-theme .form-select,
.light-theme .form-input,
.light-theme .search-input,
.light-theme .filter-date,
.light-theme .filter-input {
    background: #ffffff;
    border: 1px solid #dee2e6;
    color: #212529;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    font-weight: 400;
}

.light-theme .form-control:focus,
.light-theme .form-select:focus,
.light-theme .form-input:focus,
.light-theme .search-input:focus {
    background-color: #ffffff;
    border-color: #0072ff;
    /* color: #212529; */
    box-shadow: 0 0 0 3px rgba(0, 114, 255, 0.15);
    /* Modern outline ring */
}

.light-theme .form-control::placeholder,
.light-theme .search-input::placeholder {
    color: #adb5bd;
}

.light-theme .form-label,
.light-theme .filter-label {
    color: #495057;
    font-weight: 600;
}

/* Readonly Inputs - Specific Styling */
.light-theme input[readonly],
.light-theme .form-control[readonly] {
    background-color: #a9a9a93d !important;
    color: #000 !important;
}

/* Disabled Inputs - Specific Styling */
/* Disabled Inputs - Specific Styling */
.light-theme input[disabled],
.light-theme .form-control[disabled],
.light-theme .form-select[disabled] {
    color: #000 !important;
}

/* Modal Info Values (Visualizar Cliente) - Specific Styling */
.light-theme .info-value,
.light-theme .vehicle-item {
    background-color: #a9a9a93d !important;
    color: #000 !important;
    border-color: #dee2e6 !important;
}

/* Specific Input Tweaks */
.light-theme .form-select {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e") !important;
    background-repeat: no-repeat !important;
    background-position: right 0.75rem center !important;
    background-size: 16px 12px !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    padding-right: 2.5rem !important;
}

.light-theme input[type="date"]::-webkit-calendar-picker-indicator {
    filter: invert(0);
    /* Black icon */
    opacity: 0.6;
    cursor: pointer;
}

.light-theme .summary-item {
    color: #000000 !important;
}

.light-theme .search-icon {
    color: #6c757d;
}

/* Tables - CLEAN & READABLE */
.light-theme .data-table {
    border-color: #e9ecef;
    background: #ffffff;
}

.light-theme .data-table thead th,
.light-theme #table-veiculos thead th {
    background: #d3d3d3;
    color: #495057 !important;
    font-weight: 700;
    border-bottom: 2px solid #adb5bd;
    text-transform: uppercase;
    font-size: 0.85rem;
    letter-spacing: 0.5px;
}

.light-theme .data-table tbody tr,
.light-theme #table-veiculos tbody tr {
    background-color: #ffffff;
    color: #212529 !important;
    transition: background-color 0.2s;
}

.light-theme .data-table tbody tr:hover,
.light-theme #table-veiculos tbody tr:hover {
    background: #f1f3f5;
    /* Distinct hover */
}

.light-theme .data-table tbody tr:not(:last-child) {
    border-bottom: 1px solid #e9ecef;
}

.light-theme .data-table tbody td,
.light-theme #table-veiculos tbody td {
    color: #212529 !important;
    vertical-align: middle;
}

/* Icons in tables */
.light-theme .data-table i,
.light-theme .data-table svg,
.light-theme .data-table .bi {
    color: #6c757d;
    opacity: 1;
}

/* Removed generic tr:hover overrides to allow specific button colors */

/* Pagination */
.light-theme .pagination-item {
    background: #ffffff;
    color: #495057;
    border: 1px solid #dee2e6;
    font-weight: 500;
}

.light-theme .pagination-item:hover {
    background: #e9ecef;
    color: #212529;
    border-color: #dee2e6;
}

.light-theme .pagination-item.active {
    background: #0072ff;
    color: white;
    border-color: #0072ff;
    box-shadow: 0 2px 4px rgba(0, 114, 255, 0.3);
}

/* Modals */
.light-theme .modal-content {
    background: #ffffff !important;
    border: none !important;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

.light-theme .modal-header {
    border-bottom: 1px solid #e9ecef;
    background: #f8f9fa;
    border-top-left-radius: calc(0.3rem - 1px);
    border-top-right-radius: calc(0.3rem - 1px);
}

.light-theme .modal-footer {
    border-top: 1px solid #e9ecef;
    background: #f8f9fa;
}

.light-theme .btn-close {
    filter: none;
    opacity: 0.7;
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236c757d'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
}

.light-theme .btn-close:hover {
    opacity: 1;
}

/* Fix for FontAwesome Close Icon in Modals */
.light-theme .modal-header .fa-times,
.light-theme .modal-close .fa-times,
.light-theme .close .fa-times {
    color: #6c757d !important;
}

.light-theme .modal-close:hover .fa-times,
.light-theme .close:hover .fa-times {
    color: #000 !important;
}

/* Tabs */
.light-theme .tab-item {
    color: #6c757d;
    /* font-weight: 500; */
    padding: 12px 20px;
    border-radius: 6px;
    transition: all 0.2s;
}

.light-theme .tab-item:hover {
    color: #212529;
    background: #e9ecef;
}

.light-theme .tab-item.active {
    color: #0072ff;
    background: rgba(0, 114, 255, 0.1);
    font-weight: 600;
}

/* Buttons - Modernized */
.light-theme .btn {
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.light-theme .btn-primary,
.light-theme .btn-primary:not(:disabled):not(.disabled) {
    background: #0072ff;
    /* Solid color often looks cleaner in light mode */
    color: #ffffff !important;
    border: 1px solid transparent;
}

.light-theme .btn-primary:hover {
    background: #0056b3;
    box-shadow: 0 4px 6px rgba(0, 114, 255, 0.2);
    transform: translateY(-1px);
}

.light-theme .btn-secondary {
    background: #6c757d;
    color: #ffffff !important;
}

.light-theme .btn-success {
    background: #28a745;
    color: #ffffff !important;
}

.light-theme .btn-danger {
    background: #dc3545;
    color: #ffffff !important;
}

.light-theme .btn-warning {
    background: #ffc107;
    color: #212529 !important;
}

.light-theme .btn-filter {
    background: #ffffff;
    color: #495057 !important;
    border: 1px solid #dee2e6;
}

.light-theme .btn-filter:hover {
    background: #f8f9fa;
    color: #0072ff !important;
    border-color: #0072ff;
}

.light-theme .btn-filter.active {
    background: rgba(0, 114, 255, 0.1);
    color: #0072ff !important;
    border-color: #0072ff;
}

/* Dropdowns */
.light-theme .user-dropdown-menu {
    background: #ffffff;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    border: 1px solid #e9ecef;
}

.light-theme .user-dropdown-menu a {
    color: #495057;
}

.light-theme .user-dropdown-menu a:hover {
    background: #f8f9fa;
    color: #0072ff;
}

/* Page Title Contrast */
.light-theme .page-title {
    background: none;
    -webkit-text-fill-color: initial;
    color: #212529;
    font-weight: 700;
}

.light-theme .page-subtitle {
    color: #6c757d !important;
    font-weight: 500;
}

/* Navigation Items */
.light-theme .nav-item {
    color: #495057;
    font-weight: 500;
}

.light-theme .nav-item:hover {
    background: rgba(0, 114, 255, 0.1);
    color: #0072ff;
}

.light-theme .nav-item.active {
    background: #0072ff;
    color: white;
    box-shadow: 0 4px 6px rgba(0, 114, 255, 0.2);
}

/* Status Badges */
.light-theme .badge {
    color: #fff !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.light-theme .badge-warning {
    color: #212529 !important;
}

/* Scrollbar Customization */
.light-theme ::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

.light-theme ::-webkit-scrollbar-track {
    background: #f1f3f5;
}

.light-theme ::-webkit-scrollbar-thumb {
    background: #ced4da;
    border-radius: 4px;
}

.light-theme ::-webkit-scrollbar-thumb:hover {
    background: #adb5bd;
}

/* Canvas/Chart specific override for visibility */
.light-theme canvas {
    filter: none !important;
}

/* Action Buttons - Enhanced White Theme Interactions */
/* Action Buttons - Enhanced White Theme Interactions */
/* Action Buttons - Enhanced White Theme Interactions */
.light-theme .action-btn {
    background: rgba(149, 149, 149, 0.2);
    border: 1px solid transparent;
    border-radius: 8px;
    padding: 6px 10px;
    transition: all 0.2s ease;
    cursor: pointer;
    color: #6c757d;
    /* Generic Gray for icons */
}

.light-theme .action-btn i,
.light-theme .action-btn svg {
    color: inherit;
}

.light-theme .action-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
    background: rgba(149, 149, 149, 0.3);
    /* Slightly darker gray on hover */
}

/* View Actions - Hover Blue */
.light-theme .action-view {
    color: #6c757d;
}

.light-theme .action-view:hover {
    color: #0072ff;
    /* Blue */
}

/* Edit Actions - Hover Yellow */
.light-theme .action-edit {
    color: #6c757d;
}

.light-theme .action-edit:hover {
    color: #ffc823;
    /* Yellow */
}

/* Active Status - Green (Matching Dark Theme) */
.light-theme .action-active {
    background: rgba(40, 167, 69, 0.1);
    color: #28a745;
    border: 1px solid rgba(40, 167, 69, 0.3);
}

.light-theme .action-active:hover {
    background: rgba(40, 167, 69, 0.2);
    color: #28a745;
    /* Keep text green or white? Dark theme hovers text to white. User said 'same as dark'. Dark theme: color: #fff */
    /* Let's double check dark theme hover. 
       styles.css: .action-active:hover { background: ...0.2; color: #fff; border-color: ... }
       However, most white theme buttons I did color text on hover. 
       Use 'color: #fff' to match dark theme exactly IF the background is dark enough? 
       Background 0.2 is very light. White text might not be readable on 0.2 opacity green on white bg.
       Actually, in Dark Theme background is dark, so white text works better? No, dark theme background is 0.1 green ? 
       Wait, dark theme background is dark (#0a1128). 0.2 green on dark bg is visible.
       White theme background is white. 0.2 green on white bg is very light. White text would be invisible.
       So for White Theme "same as dark" probably refers to the Color Scheme (Green/Yellow), not necessarily unreadable text.
       I will stick to the colored text or stronger background?
       "mude a cor de para o mesmo que o dark".
       I will use the colors but ensure readability. 
       If I use color: #28a745 (Green) on hover it works.
       If I use color: #fff I need darker background.
       User said "same as dark". I'll try to replicate the LOOK.
       But the user also said "quando passar o mouse ficar da mesma cor que o dark" in the previous prompt.
       Let's stick to the color definitions.
       I will use the border and background from dark theme but maybe keep the text colored if white is unreadable?
       Actually, `styles.css` inactive hover has `color: #fff`.
       I'll use `color: #28a745` for active hover to be safe on white bg, or `color: #fff` if I make bg darker.
       Let's use the exact values first but maybe bump opacity if needed? 
       No, I'll stick to the requested "same as dark". 
       But I must ensure `color: #fff` is readable? 
       Actually, the user said "mude a cor... para o mesmo que o dark".
       I will use the Dark Theme values exactly for colors.
       Active Hover in styles.css: color #fff.
       Inactive Hover in styles.css: color #fff.
       If I use this in White Theme, 0.2 opacity background is too light for white text. 
       I will use the COLOR (Green/Yellow) for text on hover as well, similar to other buttons in my white theme.
       The user wants the "color style" (Green/Yellow) restored.
    */
    background: #28a745;
    /* Solid on hover for white theme visibility? */
    color: #ffffff;
    border-color: #28a745;
    box-shadow: 0 4px 6px rgba(40, 167, 69, 0.2);
}

/* Inactive Status - Yellow (Matching Dark Theme) */
.light-theme .action-inactive {
    background: rgba(255, 193, 7, 0.1);
    color: #ffc107;
    border: 1px solid rgba(255, 193, 7, 0.3);
}

.light-theme .action-inactive:hover {
    background: #ffc107;
    /* Solid on hover for white theme */
    color: #ffffff;
    border-color: #ffc107;
    box-shadow: 0 4px 6px rgba(255, 193, 7, 0.2);
}

/* PDF Action - Hover Purple */
.light-theme .action-pdf {
    color: #6c757d;
}

.light-theme .action-pdf:hover {
    color: #6f42c1;
    /* Purple */
}

/* WhatsApp Action - Hover Green */
.light-theme .action-whatsapp {
    color: #6c757d;
}

.light-theme .action-whatsapp:hover {
    color: #28a745;
    /* Green */
}

/* Convert/Exchange Action - Hover Green */
.light-theme .action-convert {
    color: #6c757d;
}

.light-theme .action-convert:hover {
    color: #28a745;
    /* Green as requested */
}

/* Ensure icons on solid buttons are white */
.light-theme .btn-primary i,
.light-theme .btn-primary svg,
.light-theme .btn-success i,
.light-theme .btn-success svg,
.light-theme .btn-danger i,
.light-theme .btn-danger svg,
.light-theme .btn-secondary i,
.light-theme .btn-secondary svg,
.light-theme .btn-primary .fas,
.light-theme .btn-success .fas,
.light-theme .btn-danger .fas,
.light-theme .btn-secondary .fas {
    color: #ffffff !important;
}

/* FIX HEADER VISIBILITY IN WHITE THEME */
.light-theme #header-theme-toggle {
    color: #212529 !important;
}

.light-theme #header-theme-toggle:hover {
    color: #0072ff !important;
    background: rgba(0, 0, 0, 0.05);
    border-radius: 50%;
}

.light-theme .user-role {
    color: #6c757d !important;
}


/* LOGIN PAGE WHITE THEME OVERRIDES */
.light-theme .login-card {
    background: #ffffff;
    border: 1px solid #e9ecef;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
}



.light-theme .login-subtitle {
    color: #6c757d;
}

.light-theme .login-tabs {
    background: #f1f3f5;
}

.light-theme .login-tab {
    color: #6c757d;
}

.light-theme .login-tab.active {
    background: #ffffff;
    color: #0072ff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.light-theme .remember span {
    color: #495057;
}

.light-theme .forgot-password {
    color: #6c757d;
}

.light-theme .forgot-password:hover {
    color: #0072ff;
}

.light-theme .login-footer {
    color: #adb5bd;
}

/* Toggle Icon in Login Page */
.light-theme #login-theme-toggle i {
    color: #212529;
    /* Dark icon */
}

.light-theme #login-theme-toggle:hover {
    background: rgba(0, 0, 0, 0.05);
    border-radius: 50%;
}

/* Background Particles color fix? 
   Particles color is usually set in JS. 
   We might need to check if particles are visible or distracting on white.
   Assuming JS handles it or it's just subtle default.
*/

/* MOBILE SIDEBAR FIXES FOR WHITE THEME */
@media (max-width: 767.98px) {
    .light-theme .offcanvas.offcanvas-start {
        background: #ffffff !important;
        color: #212529 !important;
    }

    .light-theme .offcanvas-title {
        color: #212529 !important;
    }

    /* Fix Close Button color */
    .light-theme .offcanvas-header .btn-close {
        filter: none !important;
        /* Remove white filter */
        color: #000 !important;
        opacity: 0.5;
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") !important;
    }

    /* Fix Menu Items text color */
    .light-theme .offcanvas-body .nav-item,
    .light-theme .offcanvas-body .menu-link {
        color: #495057 !important;
    }

    .light-theme .offcanvas-body .nav-item:hover,
    .light-theme .offcanvas-body .menu-link:hover {
        background: rgba(0, 114, 255, 0.05) !important;
        color: #0072ff !important;
    }

    /* Fix Sidebar Footer Buttons (Theme Switch & Logout) */
    .light-theme .sidebar-footer {
        border-top: 1px solid #e9ecef;
        margin-top: auto;
        /* Push to bottom if needed */
        padding-top: 15px;
    }

    .light-theme .theme-switch {
        background: #f8f9fa !important;
        border: 1px solid #e9ecef !important;
        margin-bottom: 10px;
    }

    .light-theme .switch-label {
        color: #495057 !important;
    }

    /* Logout Button - Red text on light background */
    .light-theme .logout-btn {
        background: rgba(220, 53, 69, 0.1) !important;
        color: #dc3545 !important;
        border: 1px solid rgba(220, 53, 69, 0.2) !important;
        width: 100%;
    }

    .light-theme .logout-btn:hover {
        background: rgba(220, 53, 69, 0.2) !important;
    }

    .light-theme .logout-icon {
        color: #dc3545 !important;
    }

    /* FIX: Configure Tabs horizontal scroll on mobile */
    .light-theme .tab-header,
    .tab-header {
        overflow-x: auto;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 5px;
    }

    .light-theme .tab-item,
    .tab-item {
        display: inline-block;
        flex: 0 0 auto;
    }
}

.light-theme .date-range .filter-date,
.light-theme .date-range .filter-input {
    background: #f8f9fa;
    border: 1px solid #ced4da;
    color: #212529;
}

.light-theme .date-range .filter-date:focus,
.light-theme .date-range .filter-input:focus {
    background: #ffffff;
    border-color: #0072ff;
    box-shadow: 0 0 0 3px rgba(0, 114, 255, 0.15);
}

/* Active Filter State */
.light-theme .active-filter {
    color: #0d6efd !important;
    border-color: #0d6efd !important;
    background-color: rgba(13, 110, 253, 0.1);
    position: relative;
}

.light-theme .active-filter::after {
    content: '';
    position: absolute;
    top: 8px;
    right: 8px;
    width: 6px;
    height: 6px;
    background-color: #0d6efd;
    border-radius: 50%;
}

/* ==========================================================================
   AGENDAMENTO / FULLCALENDAR STYLES (Light Theme)
   ========================================================================== */

/* Calendar Container */
body.light-theme #calendar {
    background: #ffffff;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    border: 1px solid #e9ecef;
}

body.light-theme .fc-theme-standard td,
body.light-theme .fc-theme-standard th {
    border-color: #e9ecef !important;
}

body.light-theme .fc-toolbar-title {
    color: #212529 !important;
    text-shadow: none;
}

/* Light Theme Buttons */
body.light-theme .fc-button-primary {
    background: #fff !important;
    border: 1px solid #dee2e6 !important;
    color: #495057 !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05) !important;
}

body.light-theme .fc-button-primary:hover {
    background: #f8f9fa !important;
    color: #0072ff !important;
    border-color: #0072ff !important;
}

body.light-theme .fc-button-active {
    background: #0072ff !important;
    color: #fff !important;
    border-color: #0072ff !important;
    box-shadow: 0 4px 6px rgba(0, 114, 255, 0.2) !important;
}

/* Light Theme Headers */
body.light-theme .fc-col-header-cell {
    background: #f8f9fa;
}

body.light-theme .fc-col-header-cell-cushion {
    color: #495057 !important;
}

body.light-theme .fc-daygrid-day-number {
    color: #6c757d !important;
}

body.light-theme .fc-daygrid-day:hover .fc-daygrid-day-number {
    color: #0072ff !important;
}

/* Light Theme Today */
body.light-theme .fc-day-today {
    background: rgba(0, 114, 255, 0.05) !important;
}

body.light-theme .fc-day-today::after {
    border-color: rgba(0, 114, 255, 0.3);
}

/* Light Theme List */
body.light-theme .fc-list {
    border-color: #dee2e6 !important;
}

body.light-theme .fc-list-day-cushion {
    background: #f1f3f5 !important;
}

body.light-theme .fc-list-day-text,
body.light-theme .fc-list-day-side-text {
    color: #212529 !important;
}

body.light-theme .fc-list-event:hover td {
    background: #f8f9fa !important;
}

body.light-theme .fc-list-event-title a {
    color: #212529 !important;
}

/* Modal Light Theme Override */
body.light-theme .modal-content {
    background: #ffffff;
    border: none;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

body.light-theme .modal-header {
    background: #f8f9fa;
    border-bottom-color: #e9ecef;
}

body.light-theme .modal-title {
    color: #212529;
}

body.light-theme .modal-footer {
    background: #f8f9fa;
    border-top-color: #e9ecef;
}

body.light-theme .form-label {
    color: #495057;
}

body.light-theme .form-control,
body.light-theme .form-select {
    color: #212529;
}

body.light-theme .form-control:focus,
body.light-theme .form-select:focus {
    color: #212529;
}

body.light-theme .form-control::placeholder {
    color: #adb5bd;
}

/* Close Button Fix */
body.light-theme .btn-close {
    filter: none;
}

/* Timeline History List - Light Theme Overrides */
.light-theme .history-timeline::before {
    background: rgba(0, 0, 0, 0.1);
}

.light-theme .history-card {
    background: #dce1e7;
    border: 1px solid #e9ecef;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    /* Sombra suave para o card */
}

.light-theme .history-card:hover {
    background: #f8f9fa;
    border-color: #dee2e6;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08);
}

/* Bolinha indicadora - borda interna branca para cortar a linha cinza */
.light-theme .history-card::before {
    border-color: #f1f3f5;
    /* Cor de fundo da p�gina no light theme (ajustar se necess�rio) */
}

.light-theme .history-card-header {
    border-bottom: 1px solid #e9ecef;
}

.light-theme .history-title {
    color: #212529;
}

.light-theme .history-date {
    color: #6c757d;
}

.light-theme .history-card-body {
    color: #495057;
}

.light-theme .history-value {
    color: #0072ff;
}

/* Ajustes de cores dos status badge (se ja nao estiverem cobertos por classes globais) */
/* .light-theme .status-active, .light-theme .status-completed etc sao globais */