/*
 * Complements pour le mode sombre
 * Styles supplémentaires pour améliorer le confort visuel en mode sombre
 */

/* ---------- Footer ---------- */
[data-theme="dark"] .footer-section {
    background-color: var(--color-surface);
    color: var(--color-text);
}

[data-theme="dark"] .footer-text h6 {
    color: var(--color-text);
}

[data-theme="dark"] .footer-text a {
    color: var(--color-text-muted);
    transition: color 0.2s ease;
}

[data-theme="dark"] .footer-text a:hover {
    color: var(--color-accent);
}

[data-theme="dark"] .fa-social a {
    color: var(--color-text-muted);
    border-color: var(--color-text-muted);
}

[data-theme="dark"] .fa-social a:hover {
    color: var(--color-accent);
    border-color: var(--color-accent);
}

[data-theme="dark"] .copyright-option {
    background-color: var(--color-surface-alt);
    border-top: 1px solid var(--color-border);
}

[data-theme="dark"] .copyright-option a {
    color: var(--color-text-muted);
}

[data-theme="dark"] .copyright-option a:hover {
    color: var(--color-accent);
}

/* ---------- Newsletter Section ---------- */
[data-theme="dark"] .newsletter-section {
    background-color: var(--color-surface);
}

[data-theme="dark"] .newsletter-section h2,
[data-theme="dark"] .newsletter-section p {
    color: var(--color-text);
}

[data-theme="dark"] .input-group-custom input {
    background-color: var(--color-surface-alt);
    color: var(--color-text);
    border-color: var(--color-border);
}

[data-theme="dark"] .input-group-custom input::placeholder {
    color: var(--color-text-muted);
}

[data-theme="dark"] .input-group-custom input:focus {
    background-color: var(--color-surface);
    color: var(--color-text);
    border-color: var(--color-primary);
    outline: none;
    box-shadow: 0 0 0 3px rgba(0, 53, 128, 0.1);
}

/* ---------- Service Cards ---------- */
[data-theme="dark"] .service-item {
    background-color: var(--color-surface);
    border: 1px solid var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .service-item:hover {
    border-color: var(--color-primary);
    background-color: var(--color-surface-alt);
}

[data-theme="dark"] .service-item h5 {
    color: var(--color-text);
}

[data-theme="dark"] .service-item p {
    color: var(--color-text-muted);
}

/* .service-card : variante utilisée sur l'accueil et la page Services
   (distincte de .service-item ci-dessus, réutilisée sur plusieurs pages
   d'où sa présence ici plutôt que dans un <style> de page). */
[data-theme="dark"] .service-card {
    background-color: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .service-card .service-title,
[data-theme="dark"] .service-card h5 {
    color: var(--color-text);
}

[data-theme="dark"] .service-card .service-desc-short,
[data-theme="dark"] .service-card p {
    color: var(--color-text-muted);
}

[data-theme="dark"] .category-tab {
    background-color: var(--color-surface-alt);
    color: var(--color-text);
}

[data-theme="dark"] .services-section {
    background-color: var(--color-bg);
}

/* ---------- Booking Widget ---------- */
[data-theme="dark"] .booking-widget {
    background-color: var(--color-surface);
    border: 1px solid var(--color-border);
}

[data-theme="dark"] .booking-widget .form-control {
    background-color: var(--color-surface-alt);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .booking-widget .form-control:focus {
    background-color: var(--color-surface);
    border-color: var(--color-primary);
    color: var(--color-text);
    box-shadow: 0 0 0 0.2rem rgba(0, 53, 128, 0.15);
}

[data-theme="dark"] .booking-widget label {
    color: var(--color-text);
}

/* ---------- Testimonials ---------- */
[data-theme="dark"] .testimonial-card {
    background-color: var(--color-surface);
    border: 1px solid var(--color-border);
}

[data-theme="dark"] .testimonial-card-content {
    color: var(--color-text);
}

[data-theme="dark"] .testimonial-author-name {
    color: var(--color-text);
}

[data-theme="dark"] .testimonial-author-role {
    color: var(--color-text-muted);
}

/* ---------- Blog/Articles ---------- */
[data-theme="dark"] .article-card {
    background-color: var(--color-surface);
    border: 1px solid var(--color-border);
}

[data-theme="dark"] .article-card h3,
[data-theme="dark"] .article-card h4 {
    color: var(--color-text);
}

[data-theme="dark"] .article-card p {
    color: var(--color-text-muted);
}

[data-theme="dark"] .article-meta {
    color: var(--color-text-muted);
}

/* ---------- Admin Sections ---------- */
[data-theme="dark"] .admin-section-header {
    border-bottom: 1px solid var(--color-border);
}

[data-theme="dark"] .admin-filters {
    background-color: var(--color-surface-alt);
    border-radius: 8px;
    padding: 16px;
}

/* ---------- Search Boxes ---------- */
[data-theme="dark"] .search-box,
[data-theme="dark"] .search-input {
    background-color: var(--color-surface-alt);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .search-box:focus,
[data-theme="dark"] .search-input:focus {
    background-color: var(--color-surface);
    border-color: var(--color-primary);
    color: var(--color-text);
}

/* ---------- Breadcrumbs ---------- */
[data-theme="dark"] .breadcrumb {
    background-color: var(--color-surface-alt);
    border-color: var(--color-border);
}

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

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

/* ---------- Badges & Pills ---------- */
[data-theme="dark"] .badge-light {
    background-color: var(--color-surface-alt);
    color: var(--color-text);
}

[data-theme="dark"] .badge-light:hover {
    background-color: var(--color-border);
}

/* ---------- Tooltips & Popovers ---------- */
[data-theme="dark"] .tooltip-inner {
    background-color: var(--color-surface);
    color: var(--color-text);
    border: 1px solid var(--color-border);
}

[data-theme="dark"] .popover {
    background-color: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .popover-header {
    background-color: var(--color-surface-alt);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .popover-body {
    color: var(--color-text);
}

/* ---------- Links & Text ---------- */
[data-theme="dark"] a {
    color: var(--color-link);
}

[data-theme="dark"] a:hover {
    color: var(--color-primary-hover);
}

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

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

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

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

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

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

/* ---------- Scrollbar ---------- */
[data-theme="dark"] ::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

[data-theme="dark"] ::-webkit-scrollbar-track {
    background: var(--color-surface);
}

[data-theme="dark"] ::-webkit-scrollbar-thumb {
    background: var(--color-border);
    border-radius: 4px;
}

[data-theme="dark"] ::-webkit-scrollbar-thumb:hover {
    background: var(--color-text-muted);
}

/* ---------- Selection ---------- */
[data-theme="dark"] ::selection {
    background-color: var(--color-primary);
    color: white;
}

[data-theme="dark"] ::-moz-selection {
    background-color: var(--color-primary);
    color: white;
}
