/* ================================================================
   theme-dark-public.css — Mode sombre bleu marine (pages publiques)
   Palette admin : #040d1f, accent orange #FF8559
   ================================================================ */

/* ── Fond principal ── */
html.dark-mode { background: #040d1f !important; overflow-x: hidden; }
html.dark-mode body {
    background: transparent !important;
    color: rgba(255,255,255,0.88) !important;
}

/* ────────────────────────────────────────────────────────────────
   MODE SIMPLE (site entier) — blobs + vagues désactivés en sombre aussi.
   Fond sombre uni #040d1f conservé. Retirer les « display: none » pour revenir.
   ──────────────────────────────────────────────────────────────── */
/* ── Blobs sombres via pseudo-élément — DÉSACTIVÉ ── */
html.dark-mode body::before {
    display: none !important;
    content: '';
    position: fixed; inset: 0; z-index: -2; pointer-events: none;
    background:
        radial-gradient(ellipse at 88% 0%,   rgba(255,133,89,0.20)  0%, transparent 46%),
        radial-gradient(ellipse at 5%  95%,  rgba(5,25,80,0.66)     0%, transparent 46%),
        radial-gradient(ellipse at 55% 60%,  rgba(255,100,40,0.09)  0%, transparent 40%),
        radial-gradient(ellipse at 12% 18%,  rgba(3,12,55,0.72)     0%, transparent 55%);
    filter: blur(72px);
}

/* ── Vagues décoratives subtiles — DÉSACTIVÉ ── */
html.dark-mode body::after {
    display: none !important;
    content: '';
    position: fixed; inset: 0; z-index: -1; pointer-events: none;
    background: url('/static/images/deco-waves.svg') center / cover no-repeat;
    opacity: 0.18;
}

/* Masquer les divs dark hérités d'index.html (body::before suffit) */
html.dark-mode .bg-blob,
html.dark-mode .bg-overlay,
html.dark-mode .bg-waves { display: none !important; }

/* ════════════════════════════════════════════════════════════
   NAVBAR (pill-nav)
   ════════════════════════════════════════════════════════════ */
html.dark-mode .pill-links li a { color: rgba(255,255,255,0.80) !important; }
html.dark-mode .pill-links li a:hover,
html.dark-mode .pill-links li a.active,
html.dark-mode .pill-links li a.pill-active { color: #FF8559 !important; }
html.dark-mode .pill-hamburger span { background: rgba(255,255,255,0.80) !important; }
html.dark-mode .pill-mobile-menu {
    background: rgba(4,13,32,0.97) !important;
    border-color: rgba(255,255,255,0.10) !important;
    box-shadow: 0 16px 50px rgba(0,0,0,0.55) !important;
}
html.dark-mode .pill-mobile-menu a { color: rgba(255,255,255,0.88) !important; }
html.dark-mode .pill-mobile-menu a:hover {
    background: rgba(255,255,255,0.08) !important;
    color: #fff !important;
}
html.dark-mode .pill-logo .pill-logo-dark { filter: none !important; }

/* ════════════════════════════════════════════════════════════
   HERO (index.html)
   ════════════════════════════════════════════════════════════ */
html.dark-mode .hero-title { color: #ffffff !important; }
html.dark-mode .hero-sub { color: rgba(255,255,255,0.62) !important; }
html.dark-mode .hero-sub strong { color: rgba(255,255,255,0.92) !important; }
html.dark-mode .hero-chip {
    background: rgba(5,18,38,0.52) !important;
    border-color: rgba(255,255,255,0.10) !important;
    color: rgba(255,255,255,0.88) !important;
    box-shadow: 0 6px 20px rgba(0,0,0,0.30) !important;
}
html.dark-mode .hero-trust-text { color: rgba(255,255,255,0.55) !important; }
html.dark-mode .hero-cta { background: rgba(6,18,44,0.92) !important; }

/* ════════════════════════════════════════════════════════════
   SECTIONS ACCUEIL (index.html)
   ════════════════════════════════════════════════════════════ */
html.dark-mode .hs-title { color: #e8edf5 !important; }
html.dark-mode .hs-sub { color: rgba(255,255,255,0.58) !important; }

/* Offer card */
html.dark-mode .offer-card {
    background: rgba(4,13,32,0.72) !important;
    border: 1px solid rgba(255,255,255,0.07) !important;
    border-top: 1px solid rgba(255,133,89,0.42) !important;
    box-shadow: 0 20px 60px rgba(0,0,0,0.32), 0 0 0 1px rgba(255,255,255,0.03) inset !important;
}
html.dark-mode .check-list li { color: rgba(255,255,255,0.82) !important; }

/* Feature cards */
html.dark-mode .feat-card {
    background: linear-gradient(155deg, rgba(255,255,255,0.06) 0%, rgba(255,255,255,0.03) 100%) !important;
    border: 1px solid rgba(255,255,255,0.09) !important;
    box-shadow:
        0 1px 1px rgba(0,0,0,0.14),
        0 16px 48px rgba(0,0,20,0.38),
        inset 0 1px 0 rgba(255,255,255,0.05) !important;
}
html.dark-mode .feat-card:hover {
    border-color: rgba(255,133,89,0.35) !important;
    box-shadow:
        0 22px 54px rgba(0,0,20,0.44),
        0 8px 22px rgba(255,133,89,0.13),
        inset 0 1px 0 rgba(255,255,255,0.07) !important;
}
html.dark-mode .feat-card h3 { color: rgba(255,255,255,0.90) !important; }
html.dark-mode .feat-card p  { color: rgba(255,255,255,0.60) !important; }

/* Partner card */
html.dark-mode .partner-card {
    background: linear-gradient(155deg, rgba(255,255,255,0.06) 0%, rgba(255,255,255,0.03) 100%) !important;
    border: 1px solid rgba(255,255,255,0.09) !important;
    box-shadow:
        0 1px 1px rgba(0,0,0,0.12),
        0 14px 40px rgba(0,0,20,0.34),
        inset 0 1px 0 rgba(255,255,255,0.04) !important;
}
html.dark-mode .partner-card:hover { border-color: rgba(255,133,89,0.35) !important; }
html.dark-mode .partner-text h3 { color: rgba(255,255,255,0.90) !important; }
html.dark-mode .partner-text p  { color: rgba(255,255,255,0.62) !important; }

/* Partner modal */
html.dark-mode .partner-modal {
    background: rgba(4,13,32,0.97) !important;
    border: 1px solid rgba(255,255,255,0.10) !important;
    box-shadow: 0 30px 80px rgba(0,0,0,0.62), inset 0 1px 0 rgba(255,255,255,0.05) !important;
}
html.dark-mode .partner-modal-head h3 { color: rgba(255,255,255,0.90) !important; }
html.dark-mode .partner-modal-head p  { color: rgba(255,255,255,0.62) !important; }
html.dark-mode .partner-cond-title    { color: rgba(255,255,255,0.88) !important; }
html.dark-mode .partner-cond li       { color: rgba(255,255,255,0.72) !important; }
html.dark-mode .partner-close {
    background: rgba(255,255,255,0.08) !important;
    color: rgba(255,255,255,0.55) !important;
}
html.dark-mode .partner-close:hover {
    background: rgba(255,133,89,0.15) !important;
    color: #FF8559 !important;
}
html.dark-mode .partner-table td { color: rgba(255,255,255,0.80) !important; }
html.dark-mode .partner-table th { color: rgba(255,255,255,0.40) !important; }
html.dark-mode .partner-table tr + tr th,
html.dark-mode .partner-table tr + tr td { border-color: rgba(255,255,255,0.07) !important; }
html.dark-mode .partner-note    { color: rgba(255,255,255,0.32) !important; }
html.dark-mode .partner-divider {
    background: linear-gradient(90deg, transparent, rgba(255,133,89,0.35), transparent) !important;
}

/* Stat cards */
html.dark-mode .stat-card {
    background: rgba(4,13,32,0.68) !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.28), 0 0 0 1px rgba(255,255,255,0.03) inset !important;
}
html.dark-mode .stat-lbl { color: rgba(255,255,255,0.56) !important; }

/* UC Chips */
html.dark-mode .uc-chip {
    background: rgba(255,255,255,0.07) !important;
    border: 1px solid rgba(255,255,255,0.10) !important;
    color: rgba(255,255,255,0.78) !important;
    box-shadow: none !important;
}

/* ════════════════════════════════════════════════════════════
   PAGE ÉVÉNEMENTS (evenements.html)
   ════════════════════════════════════════════════════════════ */
html.dark-mode .event-card {
    background: linear-gradient(155deg, rgba(255,255,255,0.06) 0%, rgba(255,255,255,0.03) 100%) !important;
    border: 1px solid rgba(255,255,255,0.09) !important;
    box-shadow: 0 8px 28px rgba(0,0,20,0.36) !important;
}
html.dark-mode .event-card:hover {
    border-color: rgba(255,133,89,0.35) !important;
    box-shadow: 0 20px 46px rgba(0,0,20,0.46) !important;
}
html.dark-mode .event-title { color: rgba(255,255,255,0.88) !important; }
html.dark-mode .event-cover-container { background: #0a1a36 !important; }
html.dark-mode .event-cover-placeholder {
    background: rgba(255,255,255,0.05) !important;
    border-color: rgba(255,255,255,0.08) !important;
}
html.dark-mode .event-cover-placeholder svg { fill: rgba(255,255,255,0.18) !important; }
html.dark-mode .no-events {
    background: rgba(4,13,32,0.70) !important;
    border-color: rgba(255,255,255,0.08) !important;
    color: rgba(255,255,255,0.58) !important;
}
html.dark-mode .search-bar {
    background-color: rgba(4,13,32,0.72) !important;
    border-color: rgba(255,255,255,0.10) !important;
    box-shadow: 0 5px 20px rgba(0,0,0,0.28) !important;
}
html.dark-mode .search-input { color: rgba(255,255,255,0.88) !important; }
html.dark-mode .search-input::placeholder { color: rgba(255,255,255,0.35) !important; }
html.dark-mode .search-icon-wrapper { color: rgba(255,255,255,0.35) !important; }

/* ════════════════════════════════════════════════════════════
   PAGE CONTACT (contact.html)
   ════════════════════════════════════════════════════════════ */
html.dark-mode input[type="text"],
html.dark-mode input[type="email"],
html.dark-mode input[type="tel"],
html.dark-mode textarea,
html.dark-mode select {
    background: rgba(255,255,255,0.05) !important;
    border-color: rgba(255,255,255,0.12) !important;
    color: rgba(255,255,255,0.88) !important;
}
html.dark-mode input::placeholder,
html.dark-mode textarea::placeholder { color: rgba(255,255,255,0.30) !important; }

/* ════════════════════════════════════════════════════════════
   FOOTER (f-footer dans pill-nav.css)
   ════════════════════════════════════════════════════════════ */
html.dark-mode .f-footer {
    background: linear-gradient(160deg, rgba(4,13,32,0.96) 0%, rgba(6,18,52,0.94) 100%) !important;
    border-top: 1px solid rgba(255,255,255,0.07) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.05), 0 -1px 0 rgba(0,0,0,0.22) !important;
    color: rgba(255,255,255,0.70) !important;
}
html.dark-mode .f-wave-wrapper .f-wave-back  { fill: rgba(4,13,42,0.52) !important; }
html.dark-mode .f-wave-wrapper .f-wave-front { fill: rgba(4,13,32,0.93) !important; }
html.dark-mode .f-brand-name    { color: rgba(255,255,255,0.88) !important; }
html.dark-mode .f-brand-tagline { color: rgba(255,255,255,0.38) !important; }
html.dark-mode .f-brand-desc    { color: rgba(255,255,255,0.50) !important; }
html.dark-mode .f-title         { color: rgba(255,255,255,0.82) !important; }
html.dark-mode .f-links a       { color: rgba(255,255,255,0.52) !important; }
html.dark-mode .f-links a:hover { color: rgba(255,255,255,0.90) !important; }
html.dark-mode .f-help-link     { color: rgba(255,255,255,0.52) !important; }
html.dark-mode .f-help-link:hover { color: rgba(255,255,255,0.90) !important; }
html.dark-mode .f-help-link svg { color: #FF8559 !important; }
html.dark-mode .f-bottom p      { color: rgba(255,255,255,0.32) !important; }
html.dark-mode .f-circle-btn {
    background: rgba(255,255,255,0.07) !important;
    border-color: rgba(255,255,255,0.12) !important;
    color: rgba(255,255,255,0.56) !important;
}
html.dark-mode .f-circle-btn:hover {
    background: rgba(255,133,89,0.14) !important;
    border-color: rgba(255,133,89,0.36) !important;
    color: #FF8559 !important;
    box-shadow: 0 4px 16px rgba(255,133,89,0.18) !important;
}
