/* Dark mode — pages hors index (l'index a déjà un thème sombre via body[data-spy]) */

@media (prefers-color-scheme: dark) {
    body:not([data-spy]) {
        background-color: #0f172a;
        color: #e2e8f0;
    }

    /* Sidebar */
    body:not([data-spy]) .sidebar {
        background: linear-gradient(145deg, #1e293b 0%, #0f172a 100%);
        border-color: rgba(148, 163, 184, 0.15);
        box-shadow: 0 4px 25px rgba(0, 0, 0, 0.4);
    }
    body:not([data-spy]) .sidebar h3 {
        color: #e2e8f0;
        border-bottom-color: #334155;
        background: linear-gradient(135deg, #cbd5e1, #94a3b8);
        -webkit-background-clip: text;
        background-clip: text;
    }

    /* Sous-catégories */
    body:not([data-spy]) .subcategory-link {
        background: linear-gradient(135deg, #334155, #1e293b);
        color: #cbd5e1;
    }
    body:not([data-spy]) .subcategory-link:hover {
        background: linear-gradient(135deg, #475569, #334155);
        color: #f1f5f9;
    }

    /* Recherche */
    body:not([data-spy]) .search-section {
        background: linear-gradient(135deg, #1e293b, #0f172a);
        border-color: rgba(148, 163, 184, 0.15);
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4);
    }
    body:not([data-spy]) .search-title {
        color: #e2e8f0;
    }
    body:not([data-spy]) .search-input {
        background: #0f172a;
        border-color: #334155;
        color: #e2e8f0;
    }
    body:not([data-spy]) .search-input:focus {
        background: #1e293b;
        border-color: #3f8ec1;
        box-shadow: 0 0 0 3px rgba(63, 142, 193, 0.2);
    }
    body:not([data-spy]) .search-input::placeholder {
        color: #64748b;
    }

    /* Filtres */
    body:not([data-spy]) .filters-panel {
        border-top-color: #334155;
    }
    body:not([data-spy]) .filter-label {
        color: #cbd5e1;
    }
    body:not([data-spy]) .filter-checkbox {
        background: #1e293b;
        border-color: #334155;
        color: #cbd5e1;
    }
    body:not([data-spy]) .filter-checkbox:hover {
        background: #334155;
        border-color: #475569;
    }

    /* Cartes produits */
    body:not([data-spy]) .product-card {
        background: #1e293b;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
    }
    body:not([data-spy]) .product-card:hover {
        box-shadow: 0 8px 25px rgba(0, 0, 0, 0.5);
    }
    body:not([data-spy]) .product-card .card-title,
    body:not([data-spy]) .product-card .card-title a {
        color: #f1f5f9;
    }
    body:not([data-spy]) .product-card .description,
    body:not([data-spy]) .card-subcategory-text {
        color: #94a3b8;
    }

    /* Cartes Bootstrap */
    body:not([data-spy]) .card {
        background: linear-gradient(145deg, #1e293b 0%, #0f172a 100%);
        border-color: rgba(148, 163, 184, 0.15);
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4);
        color: #e2e8f0;
    }

    /* Breadcrumb */
    body:not([data-spy]) .breadcrumb-item + .breadcrumb-item::before {
        color: #94a3b8;
    }
    body:not([data-spy]) .breadcrumb-item a {
        color: #7dd3fc;
    }
    body:not([data-spy]) .breadcrumb-item a:hover {
        color: #bae6fd;
    }
    body:not([data-spy]) .breadcrumb-item.active {
        color: #e2e8f0;
    }

    /* Bandeau d'info résultats */
    body:not([data-spy]) .results-info {
        background: linear-gradient(135deg, #0c4a6e, #082f49);
        border-color: #0369a1;
        color: #bae6fd;
    }

    /* Boutons outline */
    body:not([data-spy]) .btn-outline-secondary {
        color: #cbd5e1;
        border-color: #64748b;
    }
    body:not([data-spy]) .btn-outline-primary {
        color: #7dd3fc;
        border-color: #0ea5e9;
    }
    body:not([data-spy]) .btn-outline-primary:hover {
        background-color: #0ea5e9;
        border-color: #0ea5e9;
        color: #0f172a;
    }

    /* Titres / h1-h6 par défaut Bootstrap dans les pages */
    body:not([data-spy]) h1,
    body:not([data-spy]) h2,
    body:not([data-spy]) h3,
    body:not([data-spy]) h4,
    body:not([data-spy]) h5,
    body:not([data-spy]) h6 {
        color: #f1f5f9;
    }

    /* Liens contextuels dans les cartes */
    body:not([data-spy]) .card a:not(.btn) {
        color: #7dd3fc;
    }
    body:not([data-spy]) .card a:not(.btn):hover {
        color: #bae6fd;
    }

    /* Séparateur <hr> */
    body:not([data-spy]) hr {
        border-color: #334155;
    }
}
