/* ====================================================================
   BZK THEME — jetons de design communs à tout le site (clair + sombre)
   --------------------------------------------------------------------
   Chargé une fois par head.phtml (donc par tous les layouts publics :
   accueil, évènement, tunnel, compte, clubs…). Le mode sombre est la
   classe `html.dark-mode` posée avant le rendu par head.phtml (toggle
   dans le footer, mémorisé dans localStorage `bzk-dark-mode`).

   Règle : un CSS de fonctionnalité utilise CES variables pour toute
   couleur, ombre ou bordure. Il n'écrit alors AUCUNE règle
   `html.dark-mode …` : le thème bascule tout seul. Les valeurs sombres
   reprennent la palette déjà en place (head.phtml, store-reservation.css) :
   fond #0B0B0F, surfaces #1e1e24, texte #e4e4e7, doré #d4a84b.
   ==================================================================== */

:root {
    /* Fonds et surfaces */
    --bzk-bg:            #f7f6f2;
    --bzk-surface:       #ffffff;
    --bzk-surface-2:     #faf9f5;   /* encart, zone secondaire */
    --bzk-surface-3:     #f1efe8;   /* survol, zone tertiaire */

    /* Texte */
    --bzk-text:          #2b2219;
    --bzk-text-2:        #555555;   /* texte courant secondaire */
    --bzk-text-muted:    #8a7e70;
    --bzk-text-faint:    #a8a29e;

    /* Contours et ombres */
    --bzk-border:        #e8e4d9;
    --bzk-border-strong: #d4d0c8;
    --bzk-shadow:        0 1px 3px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04);
    --bzk-shadow-lg:     0 10px 28px rgba(0,0,0,0.10), 0 4px 8px rgba(0,0,0,0.05);

    /* Accent Bizouk (doré) */
    --bzk-accent:        #b8860b;
    --bzk-accent-2:      #d4a84b;
    --bzk-accent-text:   #8a6d0b;   /* doré lisible sur fond clair */
    --bzk-accent-soft:   rgba(184,134,11,0.10);
    --bzk-on-accent:     #ffffff;

    /* Sémantique */
    --bzk-success:       #2e7d32;
    --bzk-success-soft:  #f1f8f2;
    --bzk-success-border:#cfe6d3;
    --bzk-warning:       #a8690f;
    --bzk-warning-soft:  #fbeed2;
    --bzk-warning-border:#ecd39a;
    --bzk-danger:        #b03a3a;
    --bzk-danger-soft:   #f8dede;
    --bzk-danger-border: #ecbcbc;
    --bzk-info:          #4c1d95;
    --bzk-info-soft:     #f3effa;
    --bzk-info-border:   #d9cdf0;

    /* Liens */
    --bzk-link:          #8a6d0b;
    --bzk-link-hover:    #b8860b;

    /* Formes */
    --bzk-radius:        10px;
    --bzk-radius-lg:     14px;
    --bzk-radius-pill:   999px;
}

html.dark-mode {
    color-scheme: dark;

    --bzk-bg:            #0B0B0F;
    --bzk-surface:       #1e1e24;
    --bzk-surface-2:     rgba(255,255,255,0.04);
    --bzk-surface-3:     rgba(255,255,255,0.08);

    --bzk-text:          #f4f4f5;
    --bzk-text-2:        #d4d4d8;
    --bzk-text-muted:    #a1a1aa;
    --bzk-text-faint:    #71717a;

    --bzk-border:        rgba(255,255,255,0.08);
    --bzk-border-strong: rgba(255,255,255,0.20);
    --bzk-shadow:        0 2px 8px rgba(0,0,0,0.30);
    --bzk-shadow-lg:     0 16px 48px rgba(0,0,0,0.60);

    --bzk-accent:        #d4a84b;
    --bzk-accent-2:      #e8c26c;
    --bzk-accent-text:   #d4a84b;
    --bzk-accent-soft:   rgba(212,168,75,0.10);
    --bzk-on-accent:     #1a1a1a;

    --bzk-success:       #34d399;
    --bzk-success-soft:  rgba(52,211,153,0.08);
    --bzk-success-border:rgba(52,211,153,0.25);
    --bzk-warning:       #e3b45c;
    --bzk-warning-soft:  rgba(227,180,92,0.10);
    --bzk-warning-border:rgba(227,180,92,0.30);
    --bzk-danger:        #e8817b;
    --bzk-danger-soft:   rgba(232,129,123,0.10);
    --bzk-danger-border: rgba(232,129,123,0.30);
    --bzk-info:          #ddd6fe;
    --bzk-info-soft:     rgba(167,139,250,0.08);
    --bzk-info-border:   rgba(167,139,250,0.25);

    --bzk-link:          #d4a84b;
    --bzk-link-hover:    #e8c26c;
}

/* --------------------------------------------------------------------
   Primitives génériques, construites uniquement sur les jetons
   (donc sombres/claires sans aucune règle supplémentaire).
   À utiliser dans les nouvelles pages plutôt que de redéfinir une carte,
   un bouton ou un encart d'état par fonctionnalité.
   -------------------------------------------------------------------- */
.bzk-card {
    background: var(--bzk-surface);
    border: 1px solid var(--bzk-border);
    border-radius: var(--bzk-radius-lg);
    padding: 26px;
    color: var(--bzk-text);
    box-shadow: var(--bzk-shadow);
}
.bzk-kicker {
    font-size: 12px; letter-spacing: .08em; text-transform: uppercase;
    font-weight: 700; color: var(--bzk-accent-text);
}
.bzk-title   { font-size: 22px; font-weight: 800; margin: 8px 0 4px; color: var(--bzk-text); }
.bzk-subtitle{ font-size: 15px; color: var(--bzk-text-2); margin-bottom: 18px; }
.bzk-text    { font-size: 14px; line-height: 1.6; color: var(--bzk-text-2); }
.bzk-muted   { color: var(--bzk-text-muted); }
.bzk-note    { font-size: 12px; line-height: 1.5; color: var(--bzk-text-faint); }

.bzk-amount {
    display: inline-block; padding: 12px 18px; border-radius: var(--bzk-radius);
    background: var(--bzk-surface-2); border: 1px solid var(--bzk-border);
    font-size: 20px; font-weight: 800; color: var(--bzk-success);
}

.bzk-btn {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 13px 22px; border-radius: 9px; font-size: 14px; font-weight: 700;
    border: 1.5px solid transparent; cursor: pointer; text-decoration: none;
    transition: background .15s, color .15s, border-color .15s;
}
.bzk-btn-primary { background: var(--bzk-accent); color: var(--bzk-on-accent); }
.bzk-btn-primary:hover { background: var(--bzk-accent-2); color: var(--bzk-on-accent); text-decoration: none; }
.bzk-btn-ghost { background: transparent; color: var(--bzk-text-2); border-color: var(--bzk-border-strong); }
.bzk-btn-ghost:hover { background: var(--bzk-surface-3); color: var(--bzk-text); text-decoration: none; }

.bzk-state { border-radius: var(--bzk-radius); padding: 16px 18px; font-size: 14px; line-height: 1.6; border: 1px solid var(--bzk-border); background: var(--bzk-surface-2); color: var(--bzk-text-muted); }
.bzk-state-success { background: var(--bzk-success-soft); border-color: var(--bzk-success-border); color: var(--bzk-success); }
.bzk-state-warning { background: var(--bzk-warning-soft); border-color: var(--bzk-warning-border); color: var(--bzk-warning); }
.bzk-state-danger  { background: var(--bzk-danger-soft);  border-color: var(--bzk-danger-border);  color: var(--bzk-danger); }
.bzk-state-info    { background: var(--bzk-info-soft);    border-color: var(--bzk-info-border);    color: var(--bzk-info); }

/* ====================================================================
   LEGACY OVERRIDES — déplacés tels quels depuis le bloc <style> de
   head.phtml (2026-09-16). Surcharges Bootstrap / nav / cartes / inputs
   en .dark-mode, écrites en dur avant l'existence des jetons ci-dessus.
   À résorber progressivement : chaque règle dont la version claire passe
   aux jetons --bzk-* peut être supprimée d'ici.
   ==================================================================== */
/* ─── Dark Mode — Modern with gradients ─── */
.dark-mode { color-scheme:dark; }

/* Logo swap: white logo in dark mode */
.dark-mode .bzk-logo-light { display:none !important; }
.dark-mode .bzk-logo-dark { display:block !important; }

/* Base — Pluto dark gray */
.dark-mode body {
    background:#0B0B0F !important; color:#d4d4d8 !important;
    background-image:none !important;
}

/* Header — dégradé sombre subtil */
.dark-mode #top { background:linear-gradient(180deg, #18181b 0%, #131316 100%) !important; border-bottom:1px solid rgba(255,255,255,0.06) !important; }
.dark-mode #top .container { background:transparent !important; }
.dark-mode .navbar, .dark-mode .nav { background:linear-gradient(180deg, #1c1c20 0%, #18181b 100%) !important; border-color:rgba(255,255,255,0.06) !important; }
.dark-mode .navbar a, .dark-mode .nav a { color:#a1a1aa !important; }
.dark-mode .navbar a:hover, .dark-mode .nav a.active { color:#d4a84b !important; }
.dark-mode #bzk-darkmode-toggle { border-color:rgba(255,255,255,0.15) !important; background:rgba(255,255,255,0.05) !important; }

/* Content */
.dark-mode main, .dark-mode #content { background:#0B0B0F !important; }
.dark-mode .container { background:transparent !important; }

/* Event listing */
.dark-mode #event-this-week { background:#0B0B0F !important; }
.dark-mode .bzk-event-card { background:linear-gradient(145deg, #1e1e24 0%, #1a1a1f 100%) !important; border:1px solid rgba(255,255,255,0.06) !important; box-shadow:0 2px 8px rgba(0,0,0,0.3) !important; }
.dark-mode .bzk-event-card:hover { border-color:rgba(212,168,75,0.4) !important; box-shadow:0 4px 20px rgba(212,168,75,0.08) !important; }
.dark-mode .bzk-event-info { background:transparent !important; }
.dark-mode .bzk-event-title { color:#e4e4e7 !important; }
.dark-mode .bzk-event-location { color:#71717a !important; }
.dark-mode .bzk-event-date { color:#d4a84b !important; }
.dark-mode .bzk-section-label { color:#a1a1aa !important; border-color:rgba(255,255,255,0.08) !important; }

/* Forms */
.dark-mode input, .dark-mode select, .dark-mode textarea {
    background:#1e1e24 !important; color:#d4d4d8 !important;
    border-color:rgba(255,255,255,0.1) !important;
}
.dark-mode input:focus, .dark-mode select:focus, .dark-mode textarea:focus { border-color:#d4a84b !important; }
.dark-mode input::placeholder { color:#52525b !important; }

/* Buttons */
.dark-mode .btn-default, .dark-mode .btn-outline-secondary {
    background:rgba(255,255,255,0.05) !important; color:#a1a1aa !important;
    border-color:rgba(255,255,255,0.1) !important;
}
.dark-mode .btn-default:hover { background:rgba(255,255,255,0.08) !important; color:#d4a84b !important; border-color:rgba(212,168,75,0.3) !important; }
.dark-mode .btn-primary { background:linear-gradient(135deg, #d4a84b 0%, #b8860b 100%) !important; border:none !important; color:#fff !important; }
.dark-mode .bzk-filter-btn { background:rgba(255,255,255,0.05) !important; color:#a1a1aa !important; border-color:rgba(255,255,255,0.1) !important; }
.dark-mode .bzk-filter-btn.active { background:linear-gradient(135deg, #d4a84b 0%, #b8860b 100%) !important; color:#fff !important; border-color:transparent !important; }

/* Cards & Panels */
.dark-mode .card, .dark-mode .panel {
    background:linear-gradient(145deg, #1e1e24 0%, #1a1a1f 100%) !important;
    border-color:rgba(255,255,255,0.06) !important;
    box-shadow:0 2px 8px rgba(0,0,0,0.25) !important;
}
.dark-mode .panel-heading, .dark-mode .card-header {
    background:linear-gradient(180deg, #252530 0%, #1e1e24 100%) !important;
    color:#d4d4d8 !important; border-color:rgba(255,255,255,0.06) !important;
}

/* Typography */
.dark-mode h1, .dark-mode h2, .dark-mode h3, .dark-mode h4, .dark-mode h5 { color:#e4e4e7 !important; }
.dark-mode a:not(.btn):not(.evh-hero-cta):not([class*="-btn"]):not([class*="btn-"]) { color:#d4a84b; }
.dark-mode a:not(.btn):not(.evh-hero-cta):not([class*="-btn"]):not([class*="btn-"]):hover { color:#e8c26c; }
.dark-mode p { color:#a1a1aa; }

/* Dropdowns & Modals */
.dark-mode .dropdown-menu {
    background:linear-gradient(180deg, #252530 0%, #1e1e24 100%) !important;
    border:1px solid rgba(255,255,255,0.08) !important;
    box-shadow:0 8px 32px rgba(0,0,0,0.5) !important;
}
.dark-mode .dropdown-menu a { color:#a1a1aa !important; }
.dark-mode .dropdown-menu a:hover { background:rgba(212,168,75,0.08) !important; color:#d4a84b !important; }
.dark-mode .dropdown-menu .divider { background:rgba(255,255,255,0.06) !important; }
.dark-mode .modal-content {
    background:linear-gradient(180deg, #1e1e24 0%, #18181b 100%) !important;
    color:#d4d4d8 !important; border:1px solid rgba(255,255,255,0.08) !important;
    box-shadow:0 16px 48px rgba(0,0,0,0.6) !important;
}

/* Date filter */
.dark-mode .bzk-date-display { background:#1e1e24 !important; color:#a1a1aa !important; border-color:rgba(255,255,255,0.1) !important; }
.dark-mode .bzk-date-display.active { border-color:#d4a84b !important; background:rgba(212,168,75,0.08) !important; }

/* ─── Bouton "Se connecter" du header (light + dark) ─── */
/* Ces styles vivent dans bizouk.css qui n'est PAS chargé sur toutes
   les pages (events-details notamment). On les duplique ici pour que
   le bouton ait le bon look partout. */
.bzk-header-login-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 18px;
    background: #3A2D22;
    color: #FFCF0F;
    border: 1px solid #2a1f16;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-decoration: none;
    line-height: 1;
    transition: background-color .15s ease, color .15s ease, transform .1s ease;
}
.bzk-header-login-btn:hover,
.bzk-header-login-btn:focus {
    background: #2a1f16;
    color: #FFE78A;
    text-decoration: none;
}
.bzk-header-login-btn:active { transform: translateY(1px); }
html.dark-mode .bzk-header-login-btn {
    background: #FFCF0F;
    color: #3A2D22;
    border-color: #E6B800;
}
html.dark-mode .bzk-header-login-btn:hover,
html.dark-mode .bzk-header-login-btn:focus {
    background: #FFD93A;
    color: #2a1f16;
}

/* Footer */
.dark-mode footer, .dark-mode #footer {
    background:linear-gradient(180deg, #1e1e26 0%, #18181f 100%) !important;
    border-top:1px solid rgba(255,255,255,0.06) !important;
}
.dark-mode #site-info-footer { background:transparent !important; }
.dark-mode #site-info-footer a { color:#52525b !important; }
.dark-mode #site-info-footer a:hover { color:#d4a84b !important; }
.dark-mode #footericons a { color:#3f3f46 !important; }
.dark-mode #footericons a:hover { color:#d4a84b !important; }

/* Cookie banner */
.dark-mode #bzk-cookie-consent { background:rgba(24,24,27,0.98) !important; }

/* Quand la bannière cookie est affichée, on pousse le chat widget
   au-dessus pour qu'il reste cliquable (bulle + fenêtre ouverte). */
body.has-cookie-banner #bzk-chat-widget,
body.has-cookie-banner .bzk-chat-toggle { bottom: 180px !important; }
body.has-cookie-banner .bzk-chat-window { bottom: 222px !important; }
@media (max-width: 640px) {
    body.has-cookie-banner #bzk-chat-widget,
    body.has-cookie-banner .bzk-chat-toggle { bottom: 240px !important; }
    body.has-cookie-banner .bzk-chat-window { bottom: 282px !important; }
}

/* Scrollbar */
.dark-mode ::-webkit-scrollbar { width:8px; }
.dark-mode ::-webkit-scrollbar-track { background:#18181b; }
.dark-mode ::-webkit-scrollbar-thumb { background:#333; border-radius:4px; }
.dark-mode ::-webkit-scrollbar-thumb:hover { background:#444; }

/* ─── Homepage search bar — fully dark ─── */
.dark-mode .bzk-search {
    background:#1e1e26 !important; border-color:rgba(255,255,255,0.08) !important;
    box-shadow:0 1px 4px rgba(0,0,0,0.3) !important;
}
.dark-mode .bzk-search-input { color:#d4d4d8 !important; }
.dark-mode .bzk-search-input::placeholder { color:#6b6b78 !important; }

/* ─── Navbar search — fully dark ─── */
.dark-mode #mainmenu_search .form-control {
    background:#1e1e26 !important; border-color:rgba(255,255,255,0.08) !important; color:#d4d4d8 !important;
}
.dark-mode #mainmenu_search .form-control::placeholder { color:#6b6b78 !important; }
.dark-mode #mainmenu_search .btn-default {
    background:#1e1e26 !important; border-color:rgba(255,255,255,0.08) !important; color:#a1a1aa !important;
}
.dark-mode #mainmenu_search .btn-default:hover { background:#35353d !important; color:#d4a84b !important; }
.dark-mode #mainmenu_search .input-group { border-color:rgba(255,255,255,0.08) !important; }

/* ─── Event detail — ticket/billets panels ─── */
.dark-mode .panel-body { background:#1e1e26 !important; color:#d4d4d8 !important; }
.dark-mode .panel-default > .panel-heading { background:#252530 !important; color:#d4d4d8 !important; border-color:rgba(255,255,255,0.06) !important; }
.dark-mode .panel-primary > .panel-heading { border-color:rgba(255,255,255,0.06) !important; }
.dark-mode .produit_prix { color:#d4a84b !important; }
.dark-mode .product-price-row { color:#d4d4d8 !important; }
.dark-mode .selectQuantity { background:#35353d !important; color:#fff !important; border-color:rgba(255,255,255,0.1) !important; }
.dark-mode .qty-btn { background:#35353d !important; color:#fff !important; border-color:rgba(255,255,255,0.1) !important; }
.dark-mode .qty-btn:hover { background:#45454d !important; }
.dark-mode #etapescontenu { color:#d4d4d8 !important; }
.dark-mode .event-section { color:#e4e4e7 !important; }
.dark-mode #party_description, .dark-mode .cssreset { color:#a1a1aa !important; }
.dark-mode .panel-footer { background:#1a1a22 !important; border-color:rgba(255,255,255,0.06) !important; color:#d4d4d8 !important; }
.dark-mode .table { color:#d4d4d8 !important; background:transparent !important; }
.dark-mode .table td, .dark-mode .table th { border-color:rgba(255,255,255,0.06) !important; }
.dark-mode .tableHeader td { background:#252530 !important; color:#d4d4d8 !important; }

/* ─── Lineup panel ─── */
.dark-mode .plu-section { background:#1e1e26 !important; border-color:rgba(255,255,255,0.08) !important; }
.dark-mode .plu-head { color:#e4e4e7 !important; border-color:rgba(255,255,255,0.06) !important; }
.dark-mode .plu-avatar { background:#35353d !important; border-color:rgba(255,255,255,0.1) !important; }
.dark-mode .plu-artist.headliner .plu-avatar { border-color:#b8860b !important; }
.dark-mode .plu-name { color:#e4e4e7 !important; }
.dark-mode .plu-type { color:#888 !important; }
.dark-mode .plu-meta { color:#888 !important; }
.dark-mode a.plu-link:hover { background:rgba(255,255,255,0.05) !important; }
.dark-mode a.plu-link:hover .plu-name { color:#d4a84b !important; }

/* ─── Agenda sidebar ─── */
.dark-mode .ag-sidebar-card { background:#1e1e26 !important; border-color:rgba(255,255,255,0.08) !important; }
.dark-mode .ag-sidebar-card-header { background:#252530 !important; color:#888 !important; border-color:rgba(255,255,255,0.06) !important; }
.dark-mode .ag-sidebar-search { background:#1e1e26 !important; border-color:rgba(255,255,255,0.08) !important; }
.dark-mode .ag-sidebar-search input { color:#d4d4d8 !important; }
.dark-mode .ag-sidebar-search input::placeholder { color:#6b6b78 !important; }
.dark-mode .ag-quick-date { color:#a1a1aa !important; }
.dark-mode .ag-quick-date:hover { background:rgba(255,255,255,0.05) !important; color:#d4d4d8 !important; }
.dark-mode .ag-quick-date.active { background:#444 !important; color:#fff !important; }
.dark-mode .ag-filter-item { color:#a1a1aa !important; }
.dark-mode .ag-filter-item:hover { background:rgba(255,255,255,0.05) !important; }
.dark-mode .ag-filter-item.active { background:#444 !important; color:#fff !important; }
.dark-mode .ag-filter-region { color:#a1a1aa !important; }
.dark-mode .ag-filter-region:hover { background:rgba(255,255,255,0.05) !important; color:#d4d4d8 !important; }
.dark-mode .ag-filter-region.active { background:#444 !important; color:#fff !important; }
.dark-mode .ag-datepicker input { background:#1e1e26 !important; color:#d4d4d8 !important; border-color:rgba(255,255,255,0.08) !important; }
.dark-mode .ag-create-btn { background:#1e1e26 !important; color:#a1a1aa !important; border-color:rgba(255,255,255,0.1) !important; }
.dark-mode .ag-create-btn:hover { border-color:#b8860b !important; color:#d4a84b !important; }

/* ─── Sticky cart dark ─── */
.dark-mode .cart-panel { background:#131117 !important; }
.dark-mode .cart-body { background:#131117 !important; }
.dark-mode .cart-section-title { color:#a1a1aa !important; }
.dark-mode .cart-item { background:#252530 !important; border-color:rgba(255,255,255,0.06) !important; }
.dark-mode .cart-item:hover { background:#2a2a35 !important; }
.dark-mode .item-name { color:#e4e4e7 !important; }
.dark-mode .item-price { color:#d4a84b !important; }
/* Boutons +/- sur les items (cart-item-qty-btn) */
.dark-mode .item-qty-controls { border-color:rgba(255,255,255,0.12) !important; }
.dark-mode .cart-item-qty-btn { background:#1a1a20 !important; color:#e4e4e7 !important; }
.dark-mode .cart-item-qty-btn:hover { background:#2a2a35 !important; color:#f0c040 !important; }
.dark-mode .item-qty-value { color:#e4e4e7 !important; border-left-color:rgba(255,255,255,0.12) !important; }
/* Résumé sous-total/total */
.dark-mode .cart-summary { background:#252530 !important; border-color:rgba(255,255,255,0.06) !important; }
.dark-mode .summary-line { color:#a1a1aa !important; }
.dark-mode .summary-total { color:#e4e4e7 !important; border-color:rgba(255,255,255,0.06) !important; }
/* Footer + boutons */
.dark-mode .cart-footer { background:linear-gradient(135deg,#1a1a20 0%,#15151a 100%) !important; border-top-color:rgba(255,255,255,0.08) !important; }
.dark-mode .btn-secondary { background:rgba(255,255,255,0.06) !important; color:#e4e4e7 !important; }
.dark-mode .btn-secondary:hover { background:rgba(255,255,255,0.12) !important; }
/* btn-primary garde son or — pas de dark override (visible en or sur fond noir) */
.dark-mode .cart-empty { color:rgba(255,255,255,0.5) !important; }
.dark-mode .cart-empty i { color:rgba(255,255,255,0.18) !important; }
.dark-mode .mobile-cart-bar { background:#1e1e26 !important; box-shadow:0 -4px 16px rgba(0,0,0,0.4) !important; }

/* ─── Contacter l'organisateur — dark ─── */
.dark-mode .contact-organizer-btn {
    background:#1e1e26 !important; color:#d4d4d8 !important;
    border-color:rgba(212,168,75,0.5) !important;
    box-shadow:0 2px 8px rgba(0,0,0,0.3) !important;
}
.dark-mode .contact-organizer-btn__text { color:#d4d4d8 !important; }
.dark-mode .contact-organizer-btn__arrow { color:#6b6b78 !important; }
.dark-mode .contact-organizer-btn:hover {
    background:var(--bzk-primary-color, #FFB800) !important;
    color:#333 !important;
}
.dark-mode .contact-organizer-btn:hover .contact-organizer-btn__text { color:#333 !important; }

/* ─── Waitlist section dark ─── */
.dark-mode #waitlist-section { background:linear-gradient(135deg, #1e1e26 0%, #252530 100%) !important; border-color:rgba(255,255,255,0.08) !important; }
.dark-mode #waitlist-section h4 { color:#e4e4e7 !important; }
.dark-mode #waitlist-section p { color:#a1a1aa !important; }
.dark-mode #waitlist-section label { color:#a1a1aa !important; }

/* Smooth transition */
html.dark-mode *, html.dark-mode *::before, html.dark-mode *::after {
    transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease;
}
