/*
================================================================================
   PlaceToWork — Mode clair
   Activé par défaut ou via [data-theme="light"] sur <html>
   Palette élégante et moderne inspirée du mode sombre
================================================================================
*/

/* --------------------------------------------------------------------------
   Bootstrap 5.3 - Mode clair
   -------------------------------------------------------------------------- */
[data-theme="light"] {
    --bs-body-bg: var(--bg-primary);
    --bs-body-color: var(--text-primary);
    --bs-border-color: var(--border-color);
    --bs-link-color: var(--primary-color);
    --bs-link-hover-color: var(--primary-dark);
    --bs-emphasis-color: var(--gray-900);
    --bs-secondary-color: var(--text-muted);
    --bs-tertiary-color: var(--gray-500);
    --bs-secondary-bg: var(--gray-100);
    --bs-tertiary-bg: var(--gray-200);
}

[data-theme="light"] .card {
    background-color: var(--bg-card);
    border-color: var(--border-color);
    color: var(--text-primary);
}

[data-theme="light"] .card-header,
[data-theme="light"] .card-footer {
    background-color: var(--gray-50);
    border-color: var(--border-color);
    color: var(--text-primary);
}

[data-theme="light"] .list-group-item {
    background-color: var(--bg-card);
    border-color: var(--border-color);
    color: var(--text-primary);
}

[data-theme="light"] .list-group-item-action:hover,
[data-theme="light"] .list-group-item-action:focus {
    background-color: var(--gray-100);
    color: var(--text-primary);
}

[data-theme="light"] .form-control,
[data-theme="light"] .form-select,
[data-theme="light"] .form-control:focus,
[data-theme="light"] .form-select:focus {
    background-color: white;
    border-color: var(--border-color);
    color: var(--text-primary);
}

[data-theme="light"] .form-control::placeholder {
    color: var(--gray-400);
}

[data-theme="light"] .form-control:disabled,
[data-theme="light"] .form-select:disabled {
    background-color: var(--gray-100);
    color: var(--gray-500);
}

[data-theme="light"] .form-label,
[data-theme="light"] .col-form-label {
    color: var(--gray-700);
}

[data-theme="light"] .input-group-text {
    background-color: var(--gray-100);
    border-color: var(--border-color);
    color: var(--text-secondary);
}

[data-theme="light"] .table {
    --bs-table-bg: transparent;
    --bs-table-color: var(--text-primary);
    --bs-table-border-color: var(--border-color);
    --bs-table-striped-bg: var(--gray-50);
    --bs-table-hover-bg: var(--primary-ultra-light);
    --bs-table-active-bg: var(--gray-100);
}

[data-theme="light"] .table > :not(caption) > * > * {
    border-bottom-color: var(--border-color);
}

[data-theme="light"] .dropdown-menu {
    background-color: var(--bg-card);
    border-color: var(--border-color);
    box-shadow: var(--shadow-lg);
}

[data-theme="light"] .dropdown-item {
    color: var(--text-primary);
}

[data-theme="light"] .dropdown-item:hover,
[data-theme="light"] .dropdown-item:focus {
    background-color: var(--gray-100);
    color: var(--text-primary);
}

[data-theme="light"] .dropdown-divider {
    border-color: var(--border-color);
}

[data-theme="light"] .modal-content {
    background-color: var(--bg-card);
    border-color: var(--border-color);
    color: var(--text-primary);
}

[data-theme="light"] .modal-header,
[data-theme="light"] .modal-footer {
    border-color: var(--border-color);
}

[data-theme="light"] .pagination-top {
    background-color: transparent !important;
}

[data-theme="light"] .pagination {
    background-color: transparent !important;
}

[data-theme="light"] .pagination .page-link {
    background-color: var(--bg-card) !important;
    border-color: var(--border-color) !important;
    color: var(--text-primary) !important;
}

[data-theme="light"] .pagination .page-link:hover {
    background-color: var(--gray-100) !important;
    color: var(--primary-color) !important;
}

[data-theme="light"] .pagination .page-item.active .page-link {
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
    color: #fff !important;
}

[data-theme="light"] .pagination .page-item.disabled .page-link {
    background-color: var(--gray-100) !important;
    border-color: var(--border-color) !important;
    color: var(--gray-500) !important;
    pointer-events: none;
}

[data-theme="light"] .nav-tabs {
    border-bottom-color: var(--border-color);
}

[data-theme="light"] .nav-tabs .nav-link {
    color: var(--text-muted);
}

[data-theme="light"] .nav-tabs .nav-link:hover {
    border-color: var(--border-color);
    color: var(--text-primary);
}

[data-theme="light"] .nav-tabs .nav-link.active {
    background-color: var(--bg-card);
    border-color: var(--border-color) var(--border-color) var(--bg-card);
    color: var(--primary-color);
}

[data-theme="light"] .breadcrumb-item a {
    color: var(--primary-color);
}

[data-theme="light"] .breadcrumb-item.active {
    color: var(--text-muted);
}

[data-theme="light"] .text-muted {
    color: var(--text-muted) !important;
}

[data-theme="light"] .text-dark {
    color: var(--text-primary) !important;
}

[data-theme="light"] .bg-white {
    background-color: var(--bg-card) !important;
}

[data-theme="light"] .bg-light {
    background-color: var(--gray-100) !important;
    color: var(--text-primary);
}

[data-theme="light"] .border,
[data-theme="light"] .border-top,
[data-theme="light"] .border-bottom,
[data-theme="light"] .border-start,
[data-theme="light"] .border-end {
    border-color: var(--border-color) !important;
}

[data-theme="light"] h1,
[data-theme="light"] h2,
[data-theme="light"] h3,
[data-theme="light"] h4,
[data-theme="light"] h5,
[data-theme="light"] h6,
[data-theme="light"] .h1,
[data-theme="light"] .h2,
[data-theme="light"] .h3,
[data-theme="light"] .h4,
[data-theme="light"] .h5,
[data-theme="light"] .h6 {
    color: var(--text-primary);
}

[data-theme="light"] hr {
    border-color: var(--border-color);
    opacity: 1;
}

[data-theme="light"] .btn-outline-secondary {
    color: var(--gray-700);
    border-color: var(--gray-300);
}

[data-theme="light"] .btn-outline-secondary:hover {
    background-color: var(--gray-200);
    border-color: var(--gray-400);
    color: var(--text-primary);
}

[data-theme="light"] .btn-outline-primary {
    color: var(--primary-color);
    border-color: var(--primary-color);
}

[data-theme="light"] .btn-outline-primary:hover {
    background-color: var(--primary-color);
    color: #fff;
}

[data-theme="light"] .badge.bg-light {
    background-color: var(--gray-200) !important;
    color: var(--text-primary) !important;
}

[data-theme="light"] .badge.bg-white {
    background-color: var(--gray-300) !important;
    color: var(--primary-color) !important;
}

/* --------------------------------------------------------------------------
   Select2 - Mode clair
   -------------------------------------------------------------------------- */
[data-theme="light"] .select2-container--bootstrap4 .select2-selection {
    background-color: white !important;
    border-color: var(--border-color) !important;
    color: var(--text-primary) !important;
}

[data-theme="light"] .select2-container--bootstrap4 .select2-selection__rendered {
    color: var(--text-primary) !important;
}

[data-theme="light"] .select2-container--bootstrap4 .select2-selection__placeholder {
    color: var(--gray-500) !important;
}

[data-theme="light"] .select2-dropdown {
    background-color: var(--bg-card) !important;
    border-color: var(--border-color) !important;
}

[data-theme="light"] .select2-container--bootstrap4 .select2-results__option {
    color: var(--text-primary);
}

[data-theme="light"] .select2-container--bootstrap4 .select2-results__option--highlighted {
    background-color: var(--primary-color) !important;
    color: #fff !important;
}

[data-theme="light"] .select2-search__field {
    background-color: white !important;
    border-color: var(--border-color) !important;
    color: var(--text-primary) !important;
}

/* --------------------------------------------------------------------------
   Composants PlaceToWork (general.css) - Mode clair
   -------------------------------------------------------------------------- */
[data-theme="light"] .table-modern thead {
    background: linear-gradient(135deg, var(--gray-100), var(--bg-card));
}

[data-theme="light"] .table-modern tbody tr:hover {
    background: var(--primary-ultra-light);
}

[data-theme="light"] .btn-outline-modern {
    border-color: var(--gray-300);
    color: var(--gray-700);
}

[data-theme="light"] .btn-outline-modern:hover {
    color: #fff;
}

[data-theme="light"] .alert-modern .btn-close:hover {
    background: rgba(0, 0, 0, 0.1);
}

[data-theme="light"] .scroll-to-top {
    background: var(--primary-color);
    color: #fff;
    box-shadow: var(--shadow-lg);
}

[data-theme="light"] .skip-to-content {
    background: var(--primary-color);
    color: #fff;
}

/* --------------------------------------------------------------------------
   Sous-menu moderne (inline dans _modern_submenu.html.twig)
   -------------------------------------------------------------------------- */
[data-theme="light"] .modern-submenu {
    background: var(--bg-card);
    box-shadow: var(--shadow-md);
}

[data-theme="light"] .submenu-header {
    background: linear-gradient(135deg, var(--gray-100), var(--gray-200));
}

[data-theme="light"] .submenu-title {
    color: var(--text-primary);
}

[data-theme="light"] .submenu-nav {
    background: var(--bg-card);
}

[data-theme="light"] .nav-pill {
    background: var(--gray-100);
    color: var(--text-muted);
}

[data-theme="light"] .nav-pill:hover {
    background: var(--primary-ultra-light);
    color: var(--primary-color);
    border-color: var(--primary-color);
}

[data-theme="light"] .nav-pill.active {
    color: #fff;
}

[data-theme="light"] .nav-pill .badge.bg-white {
    background-color: rgba(255, 255, 255, 0.5) !important;
    color: var(--primary-color) !important;
}

/* --------------------------------------------------------------------------
   Header (compléments modern-header.css)
   -------------------------------------------------------------------------- */
[data-theme="light"] .modern-header {
    background: var(--surface-overlay);
    border-bottom-color: var(--border-color);
}

[data-theme="light"] .language-dropdown {
    background: var(--bg-card);
    border-color: var(--border-color);
    box-shadow: var(--shadow-lg);
}

[data-theme="light"] .language-option {
    color: var(--text-primary);
}

[data-theme="light"] .language-option:hover {
    background: var(--gray-100);
}

[data-theme="light"] .language-option.active {
    background: var(--primary-ultra-light);
    color: var(--primary-color);
}

[data-theme="light"] .theme-dropdown {
    background: var(--bg-card);
    border-color: var(--border-color);
}

[data-theme="light"] .theme-option:hover {
    background: var(--gray-100);
    color: var(--text-primary);
}

[data-theme="light"] .theme-option.active {
    background: var(--primary-ultra-light);
    color: var(--primary-color);
}

[data-theme="light"] .favorite-item {
    background: linear-gradient(135deg, rgba(251, 191, 36, 0.15), rgba(245, 158, 11, 0.25));
    border: 2px solid rgba(245, 158, 11, 0.6);
    color: #d97706;
    box-shadow: 0 2px 8px rgba(245, 158, 11, 0.25);
}

[data-theme="light"] .favorite-item:hover {
    background: linear-gradient(135deg, rgba(251, 191, 36, 0.25), rgba(245, 158, 11, 0.35));
    color: #b45309;
    border-color: rgba(245, 158, 11, 0.8);
    box-shadow: 0 4px 12px rgba(245, 158, 11, 0.35);
}

/* --------------------------------------------------------------------------
   Sidebar — Section active
   -------------------------------------------------------------------------- */
[data-theme="light"] .nav-section.active .nav-section-header {
    background: var(--primary-ultra-light);
    color: var(--primary-color);
}

[data-theme="light"] .nav-section.active .nav-section-header i:first-child {
    color: var(--primary-color);
}

/* --------------------------------------------------------------------------
   Sidebar — bouton thème
   -------------------------------------------------------------------------- */
[data-theme="light"] .theme-toggle-btn {
    background: linear-gradient(135deg, var(--gray-100), var(--gray-200));
    border-color: var(--gray-300);
    color: var(--gray-800);
}

[data-theme="light"] .theme-toggle-btn:hover {
    background: linear-gradient(135deg, var(--primary-ultra-light), rgba(99, 102, 241, 0.15));
    border-color: var(--primary-color);
    color: var(--primary-color);
}

/* --------------------------------------------------------------------------
   FullCalendar & widgets tiers (pages calendrier)
   -------------------------------------------------------------------------- */
[data-theme="light"] .fc {
    --fc-border-color: var(--border-color);
    --fc-page-bg-color: var(--bg-card);
    --fc-neutral-bg-color: var(--gray-100);
    --fc-list-event-hover-bg-color: var(--gray-200);
}

[data-theme="light"] .fc-theme-standard td,
[data-theme="light"] .fc-theme-standard th {
    border-color: var(--border-color);
}

[data-theme="light"] .fc-col-header-cell-cushion,
[data-theme="light"] .fc-daygrid-day-number,
[data-theme="light"] .fc-toolbar-title {
    color: var(--text-primary);
}

[data-theme="light"] .fc-button-primary {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
}

[data-theme="light"] .fc-button-primary:not(:disabled).fc-button-active,
[data-theme="light"] .fc-button-primary:not(:disabled):active {
    background-color: var(--primary-dark);
    border-color: var(--primary-dark);
}

/* --------------------------------------------------------------------------
   TinyMCE zone éditable
   -------------------------------------------------------------------------- */
[data-theme="light"] .tox .tox-edit-area__iframe {
    background-color: var(--bg-card) !important;
}

[data-theme="light"] .tox .tox-edit-area {
    background-color: var(--bg-card) !important;
}

[data-theme="light"] .tox .tox-edit-area__iframe iframe {
    background-color: var(--bg-card) !important;
}

[data-theme="light"] .tox {
    background-color: var(--bg-card) !important;
    border-color: var(--border-color) !important;
}

[data-theme="light"] .tox .tox-editor-header {
    background-color: var(--gray-100) !important;
    border-color: var(--border-color) !important;
}

[data-theme="light"] .tox .tox-toolbar,
[data-theme="light"] .tox .tox-toolbar__primary,
[data-theme="light"] .tox .tox-toolbar__overflow {
    background-color: var(--gray-100) !important;
    border-color: var(--border-color) !important;
}

[data-theme="light"] .tox .tox-tbtn {
    color: var(--text-primary) !important;
    fill: var(--text-primary) !important;
}

[data-theme="light"] .tox .tox-tbtn:hover {
    background-color: var(--gray-200) !important;
}

[data-theme="light"] .tox .tox-tbtn--enabled,
[data-theme="light"] .tox .tox-tbtn--enabled:hover {
    background-color: var(--primary-ultra-light) !important;
    color: var(--primary-color) !important;
    fill: var(--primary-color) !important;
}

[data-theme="light"] .tox .tox-statusbar {
    background-color: var(--gray-100) !important;
    border-color: var(--border-color) !important;
    color: var(--text-muted) !important;
}

[data-theme="light"] .tox .tox-statusbar__path-item {
    color: var(--text-muted) !important;
}

[data-theme="light"] .tox .tox-statusbar__path-item:hover {
    color: var(--primary-color) !important;
}

[data-theme="light"] .tox .tox-sidebar-wrap {
    background-color: var(--bg-card) !important;
}

[data-theme="light"] .tox .tox-sidebar {
    background-color: var(--gray-100) !important;
    border-color: var(--border-color) !important;
}

[data-theme="light"] .tox .tox-menu {
    background-color: var(--bg-card) !important;
    border-color: var(--border-color) !important;
}

[data-theme="light"] .tox .tox-menu__item {
    color: var(--text-primary) !important;
}

[data-theme="light"] .tox .tox-menu__item:hover,
[data-theme="light"] .tox .tox-menu__item.selected {
    background-color: var(--gray-200) !important;
}

[data-theme="light"] .tox .tox-dialog {
    background-color: var(--bg-card) !important;
    border-color: var(--border-color) !important;
}

[data-theme="light"] .tox .tox-dialog__header {
    background-color: var(--gray-100) !important;
    border-color: var(--border-color) !important;
}

[data-theme="light"] .tox .tox-dialog__title {
    color: var(--text-primary) !important;
}

[data-theme="light"] .tox .tox-dialog__body {
    background-color: var(--bg-card) !important;
    color: var(--text-primary) !important;
}

[data-theme="light"] .tox .tox-dialog__footer {
    background-color: var(--gray-100) !important;
    border-color: var(--border-color) !important;
}

/* TinyMCE content styling inside iframe */
[data-theme="light"] .tox .tox-edit-area__iframe html,
[data-theme="light"] .tox .tox-edit-area__iframe body {
    background-color: var(--bg-card) !important;
    color: var(--text-primary) !important;
}

/* --------------------------------------------------------------------------
   Page Interventions (styles inline dans index.html.twig)
   -------------------------------------------------------------------------- */
[data-theme="light"] .dashboard-header,
[data-theme="light"] .sidebar-compact,
[data-theme="light"] .stat-card,
[data-theme="light"] .filters-panel,
[data-theme="light"] .filter-item:not(.active),
[data-theme="light"] .search-input,
[data-theme="light"] .search-input-compact,
[data-theme="light"] .filter-chip:not(.active),
[data-theme="light"] .empty-state {
    background: var(--bg-card) !important;
    border-color: var(--border-color) !important;
    color: var(--text-primary);
}

[data-theme="light"] .search-input-compact {
    background: white !important;
    border-color: var(--border-color) !important;
    color: var(--text-primary);
}

[data-theme="light"] .search-input-compact:focus,
[data-theme="light"] .search-input:focus {
    background: var(--gray-100) !important;
    border-color: var(--primary-color) !important;
}

[data-theme="light"] .dashboard-subtitle,
[data-theme="light"] .stat-label,
[data-theme="light"] .filter-title,
[data-theme="light"] .meta-item,
[data-theme="light"] .empty-description {
    color: var(--text-muted) !important;
}

[data-theme="light"] .filter-item:not(.active) {
    color: var(--text-secondary) !important;
}

[data-theme="light"] .recent-tickets-list .btn-outline-secondary {
    color: var(--text-secondary) !important;
    background: transparent !important;
    border-color: var(--border-color) !important;
}

[data-theme="light"] .recent-tickets-list .btn-outline-secondary:hover {
    background: var(--gray-200) !important;
    border-color: var(--gray-400) !important;
    color: var(--text-primary) !important;
}

[data-theme="light"] .recent-tickets-list .btn-primary {
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
    color: #fff !important;
}

[data-theme="light"] .filter-item.clear {
    background: var(--danger-light) !important;
    color: var(--danger-color) !important;
    border-color: var(--danger-color) !important;
}

[data-theme="light"] .filter-title,
[data-theme="light"] .sidebar-info {
    border-color: var(--border-color) !important;
}

[data-theme="light"] .intervention-card {
    background: var(--bg-card) !important;
    box-shadow: var(--shadow-md);
}

[data-theme="light"] .intervention-card.in_progress {
    background: linear-gradient(135deg, var(--bg-card) 0%, rgba(249, 115, 22, 0.08) 100%) !important;
}

[data-theme="light"] .intervention-card:not(.closed):not(.in_progress) {
    background: linear-gradient(135deg, var(--bg-card) 0%, rgba(16, 185, 129, 0.05) 100%) !important;
}

[data-theme="light"] .intervention-card.closed {
    background: linear-gradient(135deg, var(--bg-card) 0%, rgba(239, 68, 68, 0.05) 100%) !important;
}

[data-theme="light"] .intervention-card.unassigned:not(.closed):not(.in_progress),
[data-theme="light"] .intervention-card.unassigned.in_progress,
[data-theme="light"] .intervention-card.unassigned.closed {
    border-color: #7c3aed;
}

[data-theme="light"] .card-title,
[data-theme="light"] .empty-title {
    color: var(--text-primary) !important;
}

[data-theme="light"] .filter-chip.open {
    background: var(--primary-ultra-light) !important;
    color: var(--primary-color) !important;
}

[data-theme="light"] .filter-chip.closed {
    background: var(--success-light) !important;
    color: var(--success-color) !important;
}

[data-theme="light"] .inline-edit-select,
[data-theme="light"] .inline-edit .form-select {
    background-color: white !important;
    border-color: var(--border-color) !important;
    color: var(--text-primary) !important;
}

/* --------------------------------------------------------------------------
   Dashboard accueil
   -------------------------------------------------------------------------- */
[data-theme="light"] .dashboard-card,
[data-theme="light"] .quick-action-card,
[data-theme="light"] .stat-widget {
    background: var(--bg-card) !important;
    border-color: var(--border-color) !important;
    color: var(--text-primary);
}

/* --------------------------------------------------------------------------
   Page login
   -------------------------------------------------------------------------- */
[data-theme="light"] .login-card,
[data-theme="light"] .auth-card {
    background: var(--bg-card) !important;
    border-color: var(--border-color) !important;
    color: var(--text-primary);
}

/* --------------------------------------------------------------------------
   Page Clocking
   -------------------------------------------------------------------------- */
[data-theme="light"] .alert-success,
[data-theme="light"] .alert-danger {
    background-color: var(--success-light) !important;
    border-color: var(--success-color) !important;
    color: var(--success-color) !important;
}

[data-theme="light"] .alert-danger {
    background-color: var(--danger-light) !important;
    border-color: var(--danger-color) !important;
    color: var(--danger-color) !important;
}

[data-theme="light"] .modern-clocking-item.alert-success {
    background: linear-gradient(135deg, var(--success-light), var(--gray-100)) !important;
    border-color: var(--success-color) !important;
    color: var(--text-primary) !important;
}

[data-theme="light"] .modern-clocking-item.alert-danger {
    background: linear-gradient(135deg, var(--danger-light), var(--gray-100)) !important;
    border-color: var(--danger-color) !important;
    color: var(--text-primary) !important;
}

[data-theme="light"] .btn-success-modern {
    background: linear-gradient(135deg, var(--success-color), #047857) !important;
    color: white !important;
    border-color: var(--success-color) !important;
}

[data-theme="light"] .btn-danger-modern {
    background: linear-gradient(135deg, var(--danger-color), #b91c1c) !important;
    color: white !important;
    border-color: var(--danger-color) !important;
}

/* --------------------------------------------------------------------------
   Mobile responsive adjustments
   -------------------------------------------------------------------------- */
@media (max-width: 768px) {
    [data-theme="light"] .sidebar-overlay {
        background: rgba(0, 0, 0, 0.5);
    }
    
    [data-theme="light"] .modern-sidebar.open {
        box-shadow: var(--shadow-xl);
    }
    
    [data-theme="light"] .modern-header {
        background: var(--surface-overlay);
    }
}
