/* Homepage externalized styles from inline markup */
.text-dark { color: #333; }
.text-secondary { color: #666; }
.text-muted { color: #888; }
.text-gold { color: #f2b900; }
.text-red { color: #c0392b; }
.link-gold { color: #f2b900; }
.link-gold:hover { color: #d4af37; }
.font-bold { font-weight: 700; }
.bg-gold { background: #f2b900; color: #fff; }
.section-white { background: #fff; }
.section-light { background: #f8f9fa; }
.section-bordered { border-top: 1px solid #eee; }
.section-kicker { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.15em; color: #f2b900; font-weight: 600; }

.hero-premium { min-height: calc(100vh - 80px); display: flex; align-items: center; justify-content: center; }
@supports (height: 100svh) {
  .hero-premium { min-height: calc(100svh - 80px); }
}
@supports (height: 100dvh) {
  .hero-premium { min-height: calc(100dvh - 80px); }
}
.hero-starfield { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; z-index: 1; }
.hero-premium-inner { max-width: 900px; margin: 0 auto; padding: 2rem; text-align: center; position: relative; z-index: 2; }
.hero-badge { display: inline-block; margin-bottom: 1.5rem; padding: 8px 20px; border: 1px solid rgba(242,185,0,0.3); border-radius: 50px; background: rgba(242,185,0,0.05); }
.hero-badge-text { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.2em; color: #f2b900; font-weight: 600; }
.hero-title { margin: 0 0 1.5rem 0; font-size: 3rem; line-height: 1.15; color: #333; font-family: 'Playfair Display', 'PlayfairDisplay-fallback', Georgia, serif; }
.hero-accroche { font-size: 1.8rem; color: #333; margin: 0 0 1rem 0; font-weight: 500; line-height: 1.3; }
.hero-accent-muted { color: #888; font-weight: 300; }
.hero-description { font-size: 1.15rem; color: #666; max-width: none; margin: 0 auto 2rem auto; line-height: 1.6; }
.hero-cta-group { display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center; align-items: center; margin-bottom: 1.5rem; }
.hero-cta-primary { padding: 16px 32px; font-size: 1.1rem; background-color: #f2b900; color: #0a0a0a; border: none; box-shadow: 0 0 20px rgba(242,185,0,0.3); }
.hero-cta-secondary { padding: 16px 32px; font-size: 1.1rem; background-color: #fff; color: #333; border: 1px solid #ddd; }
.hero-cta-secondary:hover { background-color: transparent; color: #f2b900; border: 1px solid #f2b900; }
.cta-button.hero-cta-secondary:hover { background: transparent !important; background-color: transparent !important; color: #f2b900 !important; border-color: #f2b900 !important; }
.cta-button { border-radius: 30px; display: inline-flex; align-items: center; justify-content: center; line-height: 1; }
.hero-location { font-size: .9rem; color: #888; margin-bottom: 2rem; }
.hero-scroll-hint { animation: bounce 2s infinite; }
.hero-scroll-icon { color: #f2b900; font-size: 1.5rem; }

.social-proof-section { padding: 1.5rem 2rem; background: #f8f9fa; border-top: 1px solid #eee; border-bottom: 1px solid #eee; }
.social-proof-title { text-align: center; font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.15em; color: #888; margin-bottom: 1rem; }
.social-proof-logos { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 2rem 3rem; opacity: 0.7; }
.social-proof-logo { font-size: 1.4rem; font-weight: 700; color: #333; }

.agitation-section { padding: 3rem 2rem; background: #fff; }
.agitation-grid { max-width: 1000px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: center; }
.agitation-title { font-size: 1.8rem; color: #333; line-height: 1.3; margin-bottom: 1rem; }
.agitation-text { color: #666; line-height: 1.7; margin-bottom: 1rem; }
.agitation-text-spaced { margin-bottom: 1.5rem; }
.agitation-quote { padding-left: 1.5rem; border-left: 3px solid #f2b900; }
.agitation-quote-text { color: #333; font-style: italic; font-size: 1.1rem; margin: 0; }
.terminal-card { background: #f8f9fa; border: 1px solid #eee; border-radius: 12px; padding: 1.5rem; position: relative; }
.terminal-dots { display: flex; gap: 6px; margin-bottom: 1rem; }
.terminal-dot { width: 10px; height: 10px; border-radius: 50%; }
.terminal-dot-red { background: #e74c3c; }
.terminal-dot-yellow { background: #f1c40f; }
.terminal-dot-green { background: #2ecc71; }
.terminal-body { font-family: monospace; font-size: 0.9rem; color: #666; }
.terminal-line { margin: 0 0 0.5rem 0; }
.terminal-line-highlight { margin: 0; color: #f2b900; }
.agitation-note { text-align: center; color: #666; margin: -1.5rem auto 2rem; max-width: 600px; }

.stats-subtitle { text-align: center; color: #666; margin: -1.5rem auto 2rem; max-width: 600px; }
.client-name { color: #888; }

.expertise-section { padding: 3rem 2rem; background: #f8f9fa; }
.expertise-header { max-width: 1200px; margin: 0 auto; text-align: center; margin-bottom: 2rem; }
.expertise-title { font-size: 1.8rem; color: #333; margin-top: 0.5rem; }
.expertise-description { color: #666; max-width: 600px; margin: 0 auto; }
.expertise-grid { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
.service-card-left { text-align: left; position: relative; }
.service-icon-wrapper { margin-bottom: 1rem; }
.service-icon-gold { font-size: 2.5rem; color: #f2b900; }
.service-card-title { font-size: 1.2rem; }
.service-card-text { font-size: 0.95rem; }
.service-card-list { color: #666; font-size: 0.9rem; }
.service-card-gold-border { border-color: #f2b900; }

.services-section-premium { background: #fff; padding-top: 3rem; }
.services-title { margin-top: 0.5rem; }
.service-card-lead { color: #888; font-size: 0.9rem; margin-bottom: 0.5rem; }
.service-price { font-size: 1.5rem; font-weight: 700; color: #333; margin: 0.5rem 0; }
.price-unit { font-size: 0.9rem; font-weight: 400; color: #888; }
.service-cta-block { display: block; width: 100%; box-sizing: border-box; }
.service-cta-outline { background: #fff; color: #333; border: 1px solid #ddd; }
.service-card-featured { border: 2px solid #f2b900; position: relative; transform: translateY(-10px); box-shadow: 0 10px 30px rgba(242,185,0,0.15); }
.service-badge { position: absolute; top: -12px; left: 50%; transform: translateX(-50%); background: #f2b900; color: #fff; padding: 4px 12px; border-radius: 20px; font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; }
.service-price-gold { color: #f2b900; }

.about-section { padding: 4rem 2rem; background: #fff; border-top: 1px solid #eee; }
.about-layout { max-width: 1000px; margin: 0 auto; display: flex; flex-wrap: wrap; gap: 3rem; align-items: center; }
.about-photo { flex: 0 0 280px; }
.about-photo-wrapper { position: relative; }
.about-photo-img { width: 100%; border-radius: 12px; box-shadow: 0 10px 40px rgba(0,0,0,0.1); }
.about-text { flex: 1; min-width: 300px; }
.about-title { font-size: 1.8rem; color: #333; margin: 0 0 0.5rem 0; }
.about-subtitle { font-size: 1.1rem; color: #f2b900; margin: 0 0 1.5rem 0; font-weight: 600; }
.about-description { color: #666; line-height: 1.8; text-align: justify; }
.about-paragraph { margin: 0 0 1rem 0; }

.map-iframe { border: 0; }
.dark-homepage .map-iframe {
  /* Applique un rendu "nuit" sans clÇ¸ API en inversant et recalibrant les couleurs */
  filter: grayscale(0.15) invert(0.92) brightness(0.85) contrast(1.05) saturate(0.8) hue-rotate(180deg);
}

/* Dark theme overrides (moved from inline) */
/* ========================================
     DARK PREMIUM THEME - Homepage Only
     ======================================== */

  /* Variables CSS pour le thÃƒÆ’Ã‚Â¨me sombre */
  :root {
    --dark-bg: #0a0a0a;
    --dark-surface: #121212;
    --dark-surface-light: #1a1a1a;
    --dark-border: rgba(255, 255, 255, 0.08);
    --gold: #D4AF37;
    --gold-light: #E5E1D8;
    --text-primary: #E0E0E0;
    --text-secondary: #9CA3AF;
    --text-muted: #6B7280;
  }

  /* Background sombre pour le body - uniquement avec la classe dark-homepage */
  .dark-homepage body {
    background-color: var(--dark-bg) !important;
    color: var(--text-primary);
  }

  /* ========================================
     NAVBAR - Version sombre
     ======================================== */
  .dark-homepage .fix-top {
    background-color: rgba(10, 10, 10, 0.85) !important;
    border-bottom: 1px solid var(--dark-border) !important;
    box-shadow: none !important;
  }

  .dark-homepage .fix-top.scrolled {
    background-color: rgba(10, 10, 10, 0.95) !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3) !important;
  }

  .dark-homepage .navbar-brand {
    background: linear-gradient(135deg, #fff 0%, var(--gold) 100%) !important;
    background-clip: text !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
  }

  .dark-homepage .navbar-nav .nav-link {
    color: var(--text-secondary) !important;
  }

  .dark-homepage .navbar-nav .nav-link:hover {
    color: var(--gold) !important;
    background-color: rgba(255, 255, 255, 0.05) !important;
  }

  .dark-homepage .navbar-toggler-icon {
    filter: invert(1);
  }

  /* Mobile nav */
  @media (max-width: 1035px) {
    .dark-homepage .navbar-nav {
      background-color: var(--dark-surface) !important;
      border-left: 1px solid var(--dark-border) !important;
    }
  }

  /* ========================================
     MAIN CONTENT
     ======================================== */
  .dark-homepage .main-full {
    background-color: var(--dark-bg);
  }

  .dark-homepage .main-content {
    background-color: var(--dark-bg);
  }

  /* ========================================
     HERO SECTION
     ======================================== */
  .dark-homepage .hero-section {
    background: var(--dark-bg) !important;
    position: relative;
  }

  .dark-homepage .hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 800px;
    height: 500px;
    background: radial-gradient(ellipse, rgba(212, 175, 55, 0.1) 0%, transparent 70%);
    pointer-events: none;
    z-index: 0;
  }

  .dark-homepage .hero-section h1 {
    color: #fff !important;
    font-family: 'Playfair Display', 'PlayfairDisplay-fallback', Georgia, serif;
    font-size: 4.5rem !important;
  }

  .dark-homepage .hero-section p {
    color: var(--text-secondary) !important;
  }

  .dark-homepage .hero-section strong {
    color: #fff !important;
  }

  .dark-homepage .hero-section em {
    color: var(--text-muted) !important;
  }

  /* Badge premium */
  .dark-homepage .hero-badge {
    background: rgba(212, 175, 55, 0.1) !important;
    border-color: rgba(212, 175, 55, 0.3) !important;
  }

  /* CTA Buttons */
  .dark-homepage .cta-button {
    background: var(--gold) !important;
    color: var(--dark-bg) !important;
    box-shadow: 0 0 25px rgba(212, 175, 55, 0.3) !important;
    border-radius: 30px !important;
  }

  .dark-homepage .cta-button:hover {
    background: #fff !important;
    transform: translateY(-2px) scale(1.02);
  }

  .dark-homepage .hero-cta-secondary {
    background: transparent !important;
    color: #fff !important;
    border: 1px solid var(--dark-border) !important;
  }

  .dark-homepage .hero-cta-secondary:hover {
    background: transparent !important;
    border: 1px solid var(--gold) !important;
    color: var(--gold) !important;
  }

  .dark-homepage .cta-button.hero-cta-secondary:hover {
    background: transparent !important;
    background-color: transparent !important;
    border-color: var(--gold) !important;
    color: var(--gold) !important;
  }

  /* ========================================
     SOCIAL PROOF SECTION
     ======================================== */
  .dark-homepage .section-light {
    background: var(--dark-surface) !important;
    border-color: var(--dark-border) !important;
  }

  .dark-homepage .social-proof-logo {
    color: rgba(255, 255, 255, 0.92) !important;
  }

  /* ========================================
     AGITATION SECTION
     ======================================== */
  .dark-homepage .section-white {
    background: var(--dark-bg) !important;
  }

  .dark-homepage .agitation-grid h2,
  .dark-homepage h2 {
    color: #fff !important;
  }

  .dark-homepage .agitation-grid p,
  .dark-homepage section p {
    color: var(--text-secondary) !important;
  }

  /* Terminal style card */
  .dark-homepage .terminal-card {
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid var(--dark-border) !important;
    backdrop-filter: blur(10px);
  }

  .dark-homepage .terminal-body {
    color: var(--text-secondary) !important;
  }

  .dark-homepage .terminal-line-highlight {
    color: var(--gold) !important;
  }

  /* Quote styling */
  .dark-homepage .agitation-quote p {
    color: var(--gold-light) !important;
  }

  /* ========================================
     STATS SECTION
     ======================================== */
  .dark-homepage .stats-section {
    background: var(--dark-surface) !important;
  }

  .dark-homepage .stats-title {
    color: #fff !important;
  }

  .dark-homepage .stat-item {
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid var(--dark-border) !important;
  }

  .dark-homepage .stat-item:hover {
    border-color: var(--gold) !important;
    box-shadow: 0 10px 30px rgba(212, 175, 55, 0.1) !important;
  }

  .dark-homepage .stat-number {
    color: var(--gold) !important;
  }

  .dark-homepage .stat-label {
    color: var(--text-secondary) !important;
  }

  .dark-homepage .stat-item::before {
    background: linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 100%) !important;
  }

  /* ========================================
     EXPERTISE SECTION
     ======================================== */
  .dark-homepage .section-light {
    background: var(--dark-surface) !important;
  }

  .dark-homepage .service-card {
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid var(--dark-border) !important;
    backdrop-filter: blur(10px);
  }

  .dark-homepage .service-card:hover {
    background: rgba(255, 255, 255, 0.05) !important;
    border-color: var(--gold) !important;
    transform: translateY(-5px);
  }

  .dark-homepage .service-card h3 {
    color: #fff !important;
  }

  .dark-homepage .service-card p {
    color: var(--text-secondary) !important;
  }

  .dark-homepage .service-card ul {
    color: var(--text-muted) !important;
  }

  .dark-homepage .service-icon-blue {
    color: var(--gold) !important;
  }

  /* Featured card styling */
  .dark-homepage .service-card-featured {
    border-color: var(--gold) !important;
    background: rgba(212, 175, 55, 0.05) !important;
    box-shadow: 0 10px 40px rgba(212, 175, 55, 0.15) !important;
  }

  /* Service CTA buttons */
  .dark-homepage .service-cta {
    background: var(--gold) !important;
    color: var(--dark-bg) !important;
  }

  .dark-homepage .service-cta:hover {
    background: #fff !important;
  }

  .dark-homepage .service-cta-outline {
    background: transparent !important;
    color: #fff !important;
    border: 1px solid var(--dark-border) !important;
  }

  .dark-homepage .service-cta-outline:hover {
    background: var(--dark-bg) !important;
    border: 1px solid var(--gold) !important;
    color: var(--gold) !important;
  }

  /* ========================================
     SERVICES SECTION
     ======================================== */
  .dark-homepage .services-section {
    background: var(--dark-bg) !important;
  }

  .dark-homepage .services-header h2 {
    color: #fff !important;
  }

  .dark-homepage .services-header p {
    color: var(--text-secondary) !important;
  }

  /* ========================================
     ABOUT SECTION
     ======================================== */
  .dark-homepage .section-bordered {
    border-color: var(--dark-border) !important;
  }

  .dark-homepage .about-flex h2 {
    color: #fff !important;
  }

  .dark-homepage .about-flex h3 {
    color: var(--gold) !important;
  }

  .dark-homepage .about-flex .text-secondary {
    color: var(--text-secondary) !important;
  }

  .dark-homepage .about-flex strong {
    color: #fff !important;
  }

  .dark-homepage .about-flex img {
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5) !important;
  }

  /* ========================================
     NEWSLETTER
     ======================================== */
  .dark-homepage .newsletter-subscription {
    background: var(--dark-bg) !important;
  }

  /* ========================================
     LOCAL SEO SECTION
     ======================================== */
  .dark-homepage .local-seo-section {
    background: var(--dark-bg) !important;
  }

  .dark-homepage .local-seo-header h2 {
    color: #fff !important;
  }

  .dark-homepage .local-seo-header p {
    color: var(--text-secondary) !important;
  }

  .dark-homepage .info-card {
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid var(--dark-border);
    box-shadow: none !important;
  }

  .dark-homepage .info-card h3 {
    color: #fff !important;
  }

  .dark-homepage .info-card p,
  .dark-homepage .info-card ul li {
    color: var(--text-secondary) !important;
  }

  .dark-homepage .info-card a {
    color: var(--gold) !important;
  }

  .dark-homepage .map-container {
    border: 1px solid var(--dark-border);
  }

  /* ========================================
     FAQ SECTION
     ======================================== */
  .dark-homepage .faq-section {
    background: var(--dark-surface) !important;
  }

  .dark-homepage .faq-header h2 {
    color: #fff !important;
  }

  .dark-homepage .faq-header p {
    color: var(--text-secondary) !important;
  }

  .dark-homepage .faq-item {
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid var(--dark-border) !important;
  }

  .dark-homepage .faq-question {
    background: rgba(255, 255, 255, 0.02) !important;
    color: #fff !important;
  }

  .dark-homepage .faq-question:hover {
    background: rgba(255, 255, 255, 0.05) !important;
  }

  .dark-homepage .faq-question i {
    color: var(--gold) !important;
  }

  .dark-homepage .faq-item.active .faq-question {
    background: rgba(255, 255, 255, 0.05) !important;
    border-bottom-color: var(--dark-border) !important;
  }

  .dark-homepage .faq-answer {
    background: var(--dark-bg) !important;
  }

  .dark-homepage .faq-answer p {
    color: var(--text-secondary) !important;
  }

  .dark-homepage .faq-answer a {
    color: var(--gold) !important;
  }

  .dark-homepage .faq-answer li {
    color: var(--text-secondary) !important;
  }

  /* ========================================
     CHATBOT SECTION
     ======================================== */
  .dark-homepage .homepage-chatbot-section {
    background: var(--dark-bg) !important;
  }

  .dark-homepage .homepage-chatbot-header h2 {
    color: #fff !important;
  }

  .dark-homepage .homepage-chatbot-header p {
    color: var(--text-secondary) !important;
  }

  .dark-homepage .homepage-chatbot-wrapper {
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid var(--dark-border) !important;
  }

  .dark-homepage .homepage-chatbot-messages {
    background: var(--dark-surface) !important;
  }

  .dark-homepage .homepage-chatbot-welcome p {
    color: var(--text-secondary) !important;
  }

  .dark-homepage .homepage-chatbot-input {
    background: var(--dark-surface) !important;
    border-color: var(--dark-border) !important;
    color: #fff !important;
  }

  .dark-homepage .homepage-chatbot-send-btn {
    background: var(--gold) !important;
    color: var(--dark-bg) !important;
  }

  /* ========================================
     FOOTER - Version sombre
     ======================================== */
  .dark-homepage .footer {
    background: var(--dark-surface) !important;
    border-top: 1px solid var(--dark-border) !important;
  }

  .dark-homepage .footer-title {
    color: #fff !important;
  }

  .dark-homepage .link-footer a {
    color: var(--text-secondary) !important;
  }

  .dark-homepage .link-footer a:hover {
    color: var(--gold) !important;
  }

  .dark-homepage .footer-separator {
    border-color: var(--dark-border) !important;
  }

  .dark-homepage .copyright-notice p {
    color: var(--text-muted) !important;
  }

  /* ========================================
     MISC OVERRIDES
     ======================================== */

  /* Gold accent text */
  .text-gradient {
    background: linear-gradient(to right, var(--gold-light), var(--gold));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
  }

  /* Glass card effect */
  .dark-homepage .glass-card {
    background: rgba(255, 255, 255, 0.03);
    backdrop-filter: blur(10px);
    border: 1px solid var(--dark-border);
    transition: all 0.4s ease;
  }

  .dark-homepage .glass-card:hover {
    background: rgba(255, 255, 255, 0.05);
    border-color: var(--gold);
    transform: translateY(-5px);
  }

  /* PrÃƒÆ’Ã‚Â©vention du CLS pour la section hero */
  .hero-container {
    min-height: 300px;
  }

  .hero-image {
    width: 200px;
    height: 200px;
  }

  .hero-image img {
    width: 200px;
    height: 200px;
    display: block;
  }

  /* Styles pour assurer l'affichage correct des vidÃƒÆ’Ã‚Â©os */
  .video-wrapper {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
    background: var(--dark-surface);
    border-radius: 10px 10px 0 0;
  }

  .video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 10px 10px 0 0;
  }

  .media-container {
    height: 240px;
    overflow: hidden;
    border-radius: 10px 10px 0 0;
  }

  .podcast-card .video-wrapper {
    border-left: 4px solid var(--gold);
    border-radius: 0 10px 0 0;
  }

  .video-wrapper::before {
    content: "Chargement de la vidÃƒÆ’Ã‚Â©o...";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: var(--text-muted);
    z-index: 0;
  }

  @keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
      transform: translateY(0);
    }
    40% {
      transform: translateY(-10px);
    }
    60% {
      transform: translateY(-5px);
    }
  }

/* Additional homepage styles (moved from inline) */

  /* R?server l'espace pour la newsletter */
  .newsletter-subscription {
    min-height: 350px;
  }

  /* Responsive pour la section Agitation et Expertise */
  @media (max-width: 900px) {
    .agitation-grid {
      grid-template-columns: 1fr !important;
      gap: 2rem !important;
    }

    .expertise-grid {
      grid-template-columns: 1fr !important;
    }

    .about-flex {
      flex-direction: column !important;
      text-align: center !important;
    }

    .about-flex>div:first-child {
      flex: 0 0 auto !important;
      max-width: 250px !important;
      margin: 0 auto !important;
    }
  }

  /* Hero responsive */
  @media (max-width: 768px) {
    .hero-section {
      min-height: calc(100vh - 60px) !important;
    }

    .dark-homepage .hero-section h1 {
      font-size: 3rem !important;
    }

    .hero-section .hero-accroche {
      font-size: 1.3rem !important;
    }
  }

  /* ========================================
     ADDITIONAL DARK THEME OVERRIDES
     ======================================== */

  /* Cookie consent banner - dark theme */
  .dark-homepage .cookie-consent-banner {
    background: var(--dark-surface) !important;
    border: 1px solid var(--dark-border) !important;
    color: var(--text-primary) !important;
  }

  .dark-homepage .cookie-consent-title {
    color: #fff !important;
  }

  .dark-homepage .cookie-consent-description p {
    color: var(--text-secondary) !important;
  }

  .dark-homepage .cookie-option {
    background: rgba(255, 255, 255, 0.03) !important;
    border-color: var(--dark-border) !important;
  }

  .dark-homepage .cookie-option-title {
    color: #fff !important;
  }

  .dark-homepage .cookie-option p {
    color: var(--text-muted) !important;
  }

  .dark-homepage .cookie-btn-primary {
    background: var(--gold) !important;
    color: var(--dark-bg) !important;
  }

  .dark-homepage .cookie-btn-secondary {
    background: transparent !important;
    border: 1px solid var(--dark-border) !important;
    color: var(--text-secondary) !important;
  }

  .dark-homepage .cookie-btn-secondary:hover {
    border-color: var(--gold) !important;
    color: var(--gold) !important;
  }

  .dark-homepage .cookie-preferences-btn {
    background: var(--dark-surface) !important;
    border: 1px solid var(--dark-border) !important;
    color: var(--text-secondary) !important;
  }

  /* Inline styles overrides for text colors */
  .dark-homepage .text-dark {
    color: #fff !important;
  }

  .dark-homepage .text-secondary {
    color: var(--text-secondary) !important;
  }

  .dark-homepage .text-muted {
    color: var(--text-muted) !important;
  }

  /* Social proof logos */
  .dark-homepage .section-light .font-bold {
    color: #fff !important;
  }

  /* Best Seller badge */
  .dark-homepage .bg-gold {
    background: var(--gold) !important;
    color: var(--dark-bg) !important;
  }

  /* Service tarif styling */
  .dark-homepage .service-tarif {
    color: var(--text-secondary) !important;
  }

  .dark-homepage .text-dark.text-bold {
    color: #fff !important;
  }

  .dark-homepage .text-gold {
    color: var(--gold) !important;
  }

  /* News cards styling */
  .dark-homepage .news-card,
  .dark-homepage .content-card {
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid var(--dark-border) !important;
  }

  .dark-homepage .news-card:hover,
  .dark-homepage .content-card:hover {
    border-color: var(--gold) !important;
  }

  .dark-homepage .card-title a {
    color: #fff !important;
  }

  .dark-homepage .card-description {
    color: var(--text-secondary) !important;
  }

  .dark-homepage .card-footer {
    border-top-color: var(--dark-border) !important;
  }

  /* Newsletter form */
  .dark-homepage .newsletter-form input {
    background: var(--dark-surface) !important;
    border: 1px solid var(--dark-border) !important;
    color: #fff !important;
  }

  .dark-homepage .newsletter-form input::placeholder {
    color: var(--text-muted) !important;
  }

  .dark-homepage .newsletter-form button {
    background: var(--gold) !important;
    color: var(--dark-bg) !important;
  }

  /* ========================================
     NEWSLETTER - Dark Theme Enhancements
     ======================================== */
  .dark-homepage .newsletter-subscription {
    background: var(--dark-surface) !important;
  }

  .dark-homepage .newsletter-submit {
    background: var(--gold) !important;
    color: var(--dark-bg) !important;
  }

  .dark-homepage .newsletter-submit:hover {
    background: #E8C547 !important;
    color: var(--dark-bg) !important;
  }

  /* ========================================
     CHATBOT - Dark Theme Fixes
     ======================================== */

  /* IcÃƒÆ’Ã‚Â´ne de bienvenue - bleu ÃƒÂ¢Ã¢â‚¬Â Ã¢â‚¬â„¢ dorÃƒÆ’Ã‚Â© */
  .dark-homepage .homepage-chatbot-welcome .welcome-icon {
    color: var(--gold) !important;
  }

  .dark-homepage .homepage-chatbot-welcome .welcome-icon i {
    color: var(--gold) !important;
  }

  /* Bouton d'expansion - bleu ÃƒÂ¢Ã¢â‚¬Â Ã¢â‚¬â„¢ dorÃƒÆ’Ã‚Â© */
  .dark-homepage .chatbot-expand-btn {
    background: transparent !important;
    border: 2px solid var(--gold) !important;
    color: var(--gold) !important;
  }

  .dark-homepage .chatbot-expand-btn:hover {
    background: #E8C547 !important;
    color: var(--dark-bg) !important;
  }

  /* Zone de saisie - fond moins blanc */
  .dark-homepage .homepage-chatbot-input-wrapper {
    background: var(--dark-surface) !important;
    border-top: 1px solid var(--dark-border) !important;
  }

  .dark-homepage .homepage-chatbot-input {
    background: var(--dark-bg) !important;
    border: 2px solid var(--dark-border) !important;
    color: #fff !important;
  }

  .dark-homepage .homepage-chatbot-input::placeholder {
    color: var(--text-muted) !important;
  }

  .dark-homepage .homepage-chatbot-input:focus {
    border-color: var(--gold) !important;
    box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.15) !important;
  }

  /* Bouton d'envoi - dorÃƒÆ’Ã‚Â© */
  .dark-homepage .homepage-chatbot-send-btn {
    background: var(--gold) !important;
    color: var(--dark-bg) !important;
  }

  .dark-homepage .homepage-chatbot-send-btn:hover:not(:disabled) {
    background: #E8C547 !important;
  }

  /* Messages utilisateur - bleu ÃƒÂ¢Ã¢â‚¬Â Ã¢â‚¬â„¢ dorÃƒÆ’Ã‚Â© */
  .dark-homepage .user-message .message-text {
    background: linear-gradient(135deg, var(--gold) 0%, #B8962E 100%) !important;
    color: var(--dark-bg) !important;
  }

  .dark-homepage .user-message .message-avatar {
    background: linear-gradient(135deg, var(--gold) 0%, #B8962E 100%) !important;
    color: var(--dark-bg) !important;
    box-shadow: 0 2px 8px rgba(212, 175, 55, 0.3) !important;
  }

  /* Avatar bot - bleu ÃƒÂ¢Ã¢â‚¬Â Ã¢â‚¬â„¢ dorÃƒÆ’Ã‚Â© */
  .dark-homepage .bot-message .message-avatar {
    background: linear-gradient(135deg, var(--gold) 0%, #B8962E 100%) !important;
    color: var(--dark-bg) !important;
    box-shadow: 0 2px 8px rgba(212, 175, 55, 0.3) !important;
  }

  /* Messages bot - fond sombre */
  .dark-homepage .message-text {
    background: rgba(255, 255, 255, 0.08) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--dark-border) !important;
  }

  /* Typing indicator */
  .dark-homepage .typing-indicator {
    color: var(--gold) !important;
  }

  /* Sources et follow-up */
  .dark-homepage .sources-title,
  .dark-homepage .followup-title {
    color: var(--text-secondary) !important;
  }

  .dark-homepage .sources-title i {
    color: var(--gold) !important;
  }

  .dark-homepage .source-link {
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid var(--dark-border) !important;
    color: var(--text-secondary) !important;
  }

  .dark-homepage .source-link:hover {
    background: rgba(212, 175, 55, 0.1) !important;
    border-color: var(--gold) !important;
    color: var(--gold) !important;
  }

  .dark-homepage .source-link i {
    color: var(--gold) !important;
  }

  .dark-homepage .followup-question {
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1.5px solid rgba(212, 175, 55, 0.3) !important;
    color: var(--gold) !important;
  }

  .dark-homepage .followup-question:hover {
    background: var(--gold) !important;
    color: var(--dark-bg) !important;
    border-color: var(--gold) !important;
  }

  /* Suggestions buttons */
  .dark-homepage .suggestion-btn {
    background: transparent !important;
    border: 2px solid var(--gold) !important;
    color: var(--gold) !important;
  }

  .dark-homepage .suggestion-btn:hover {
    background: var(--gold) !important;
    color: var(--dark-bg) !important;
  }

  /* CTA buttons - no white hover */
  .dark-homepage .cta-button:hover {
    background: #E8C547 !important;
    color: var(--dark-bg) !important;
  }

  .dark-homepage .service-cta:hover {
    background: #E8C547 !important;
    color: var(--dark-bg) !important;
  }

  /* ========================================
     WHATSAPP BUTTON - Gold outline on Homepage
     ======================================== */
  .dark-homepage .nav-item.whatsapp-item .whatsapp-link,
  .dark-homepage .whatsapp-item .nav-link.whatsapp-link,
  .dark-homepage a.whatsapp-link,
  .dark-homepage .whatsapp-link {
    background: var(--dark-bg) !important;
    background-color: var(--dark-bg) !important;
    color: var(--gold) !important;
    border: 1px solid var(--gold) !important;
    box-shadow: 0 4px 10px rgba(212, 175, 55, 0.2) !important;
  }

  .dark-homepage .nav-item.whatsapp-item .whatsapp-link:hover,
  .dark-homepage .whatsapp-item .nav-link.whatsapp-link:hover,
  .dark-homepage a.whatsapp-link:hover,
  .dark-homepage .whatsapp-link:hover {
    background: var(--gold) !important;
    background-color: var(--gold) !important;
    color: var(--dark-bg) !important;
    box-shadow: 0 6px 15px rgba(212, 175, 55, 0.4) !important;
  }

  .dark-homepage .whatsapp-link svg,
  .dark-homepage .whatsapp-link svg path {
    fill: var(--gold) !important;
    color: var(--gold) !important;
  }

  .dark-homepage .whatsapp-link:hover svg,
  .dark-homepage .whatsapp-link:hover svg path {
    fill: var(--dark-bg) !important;
    color: var(--dark-bg) !important;
  }

  .dark-homepage .whatsapp-text {
    color: var(--gold) !important;
  }

  .dark-homepage .whatsapp-link:hover .whatsapp-text {
    color: var(--dark-bg) !important;
  }

  /* ========================================
     FOOTER SOCIAL LINKS - Visibility Fix
     ======================================== */
  .dark-homepage .social-links img {
    filter: brightness(0) invert(1) !important;
    opacity: 0.8 !important;
    transition: all 0.3s ease !important;
  }

  .dark-homepage .social-links img:hover {
    opacity: 1 !important;
    filter: brightness(0) invert(1) drop-shadow(0 0 8px rgba(212, 175, 55, 0.5)) !important;
  }

  .dark-homepage .social-links a:hover img {
    transform: scale(1.1) !important;
  }

  /* ========================================
     FLOATING CHATBOT PANEL - Full Dark Theme
     ======================================== */

  /* Panel background */
  .dark-homepage #chatbotPanel {
    background-color: var(--dark-surface) !important;
    border-right: 1px solid var(--dark-border) !important;
  }

  /* Panel header - GOLD instead of blue */
  .dark-homepage .chatbot-panel-header {
    background: var(--gold) !important;
    background-color: var(--gold) !important;
    border-bottom: 1px solid rgba(0,0,0,0.1) !important;
  }

  .dark-homepage .chatbot-panel-header h3 {
    color: var(--dark-bg) !important;
  }

  .dark-homepage .close-chatbot-panel {
    color: var(--dark-bg) !important;
  }

  .dark-homepage .close-chatbot-panel:hover {
    background-color: rgba(0,0,0,0.1) !important;
    color: var(--dark-bg) !important;
  }

  /* Messages area */
  .dark-homepage .sidebar-chatbot-messages {
    background-color: var(--dark-bg) !important;
  }

  /* Bot message - text more visible */
  .dark-homepage .sidebar-bot-message {
    background-color: rgba(255, 255, 255, 0.1) !important;
    color: #fff !important;
  }

  .dark-homepage .sidebar-bot-message .sidebar-message-content {
    color: #fff !important;
  }

  /* User message - GOLD */
  .dark-homepage .sidebar-user-message {
    background: var(--gold) !important;
    background-color: var(--gold) !important;
    color: var(--dark-bg) !important;
  }

  .dark-homepage .sidebar-user-message .sidebar-message-content {
    color: var(--dark-bg) !important;
  }

  /* Avatar - GOLD */
  .dark-homepage .sidebar-message .message-avatar,
  .dark-homepage #chatbotPanel .message-avatar {
    background: var(--gold) !important;
    color: var(--dark-bg) !important;
  }

  /* Input area */
  .dark-homepage .sidebar-chatbot-textarea {
    background-color: var(--dark-bg) !important;
    border-color: var(--dark-border) !important;
    color: #fff !important;
  }

  .dark-homepage .sidebar-chatbot-textarea::placeholder {
    color: var(--text-muted) !important;
  }

  /* Send button - GOLD */
  .dark-homepage .sidebar-chatbot-send-btn {
    background: var(--gold) !important;
    background-color: var(--gold) !important;
    color: var(--dark-bg) !important;
  }

  .dark-homepage .sidebar-chatbot-send-btn:hover {
    background: #E8C547 !important;
    background-color: #E8C547 !important;
  }

  .dark-homepage .sidebar-chatbot-send-btn svg {
    fill: var(--dark-bg) !important;
    color: var(--dark-bg) !important;
  }

  /* Copy button */
  .dark-homepage .sidebar-copy-message-btn {
    color: var(--text-muted) !important;
  }

  .dark-homepage .sidebar-copy-message-btn:hover {
    color: var(--gold) !important;
  }

  /* URL results */
  .dark-homepage .sidebar-url-results h4 {
    color: #fff !important;
  }

  .dark-homepage .sidebar-url-list {
    background-color: var(--dark-bg) !important;
  }

  .dark-homepage .sidebar-url-item {
    background-color: rgba(255,255,255,0.05) !important;
    border-left-color: var(--gold) !important;
  }

  .dark-homepage .sidebar-url-title {
    color: var(--gold) !important;
  }

  .dark-homepage .sidebar-url-link {
    color: var(--text-secondary) !important;
  }

  .dark-homepage .sidebar-toggle-chunks-btn {
    color: var(--gold) !important;
  }

  .dark-homepage .sidebar-url-chunks {
    background-color: rgba(255,255,255,0.03) !important;
    border-top-color: var(--dark-border) !important;
  }

  .dark-homepage .sidebar-chunk-item {
    background-color: rgba(255,255,255,0.05) !important;
  }

  .dark-homepage .sidebar-chunk-number {
    color: var(--gold) !important;
  }

  .dark-homepage .sidebar-chunk-content {
    color: var(--text-primary) !important;
  }

  /* ========================================
     FLOATING CHATBOT TOGGLE BUTTON - Gold (no white hover)
     ======================================== */
  .dark-homepage #chatbotToggle,
  .dark-homepage .chatbot-toggle-btn,
  .dark-homepage .floating-chat-btn,
  .dark-homepage [class*="chat"][class*="toggle"],
  .dark-homepage [class*="chat"][class*="float"],
  .dark-homepage .sidebar-button[data-target="chatbot"] {
    background: var(--gold) !important;
    background-color: var(--gold) !important;
    color: var(--dark-bg) !important;
    border: none !important;
    box-shadow: 0 4px 15px rgba(212, 175, 55, 0.3) !important;
  }

  .dark-homepage #chatbotToggle:hover,
  .dark-homepage .chatbot-toggle-btn:hover,
  .dark-homepage .floating-chat-btn:hover,
  .dark-homepage .sidebar-button[data-target="chatbot"]:hover {
    background: #E8C547 !important;
    background-color: #E8C547 !important;
    box-shadow: 0 6px 20px rgba(212, 175, 55, 0.5) !important;
  }

  /* Cookie preferences button - also gold (no white hover) */
  .dark-homepage .cookie-preferences-btn {
    background: var(--gold) !important;
    background-color: var(--gold) !important;
    border: none !important;
    color: var(--dark-bg) !important;
  }

  .dark-homepage .cookie-preferences-btn:hover {
    background: #E8C547 !important;
    background-color: #E8C547 !important;
  }

  /* ========================================
     ALL BLUE ELEMENTS ÃƒÂ¢Ã¢â‚¬Â Ã¢â‚¬â„¢ GOLD
     ======================================== */
  /* ========================================
     CHATBOT POPUP - Floating chatbot (chatbot.js)
     Couleur bleue #0046B5 ÃƒÂ¢Ã¢â‚¬Â Ã¢â‚¬â„¢ DorÃƒÆ’Ã‚Â©
     ======================================== */

  /* Header du chatbot - fond dorÃƒÆ’Ã‚Â© */
  .dark-homepage .chatbot-header {
    background-color: var(--gold) !important;
    background: var(--gold) !important;
    color: var(--dark-bg) !important;
  }

  .dark-homepage .chatbot-title {
    color: var(--dark-bg) !important;
  }

  .dark-homepage .chatbot-clear-btn,
  .dark-homepage .chatbot-close-btn {
    color: var(--dark-bg) !important;
  }

  /* Avatar JG - fond dorÃƒÆ’Ã‚Â© */
  .dark-homepage .chatbot-avatar {
    background-color: var(--gold) !important;
    background: var(--gold) !important;
    color: var(--dark-bg) !important;
  }

  /* Bulle de message utilisateur - fond dorÃƒÆ’Ã‚Â© */
  .dark-homepage .chatbot-message-user .chatbot-bubble {
    background-color: var(--gold) !important;
    background: var(--gold) !important;
    color: var(--dark-bg) !important;
  }

  /* Bulle de message bot - fond sombre, texte lisible */
  .dark-homepage .chatbot-message-bot .chatbot-bubble {
    background-color: var(--dark-surface-light) !important;
    background: var(--dark-surface-light) !important;
    color: #fff !important;
  }

  /* Zone des messages - fond sombre */
  .dark-homepage .chatbot-messages {
    background-color: var(--dark-bg) !important;
    background: var(--dark-bg) !important;
  }

  /* Popup du chatbot - fond sombre */
  .dark-homepage .chatbot-popup {
    background-color: var(--dark-surface) !important;
    background: var(--dark-surface) !important;
    border: 1px solid var(--dark-border) !important;
  }

  /* Zone de saisie - fond sombre */
  .dark-homepage .chatbot-input-container {
    background-color: var(--dark-surface) !important;
    border-top-color: var(--dark-border) !important;
  }

  .dark-homepage .chatbot-input {
    background-color: var(--dark-bg) !important;
    border-color: var(--dark-border) !important;
    color: #fff !important;
  }

  .dark-homepage .chatbot-input::placeholder {
    color: var(--text-muted) !important;
  }

  /* Bouton d'envoi - dorÃƒÆ’Ã‚Â© */
  .dark-homepage .chatbot-send-btn {
    color: var(--gold) !important;
  }

  .dark-homepage .chatbot-send-btn:hover {
    color: #E8C547 !important;
  }

  /* Bouton toggle (bulle flottante) - dorÃƒÆ’Ã‚Â© */
  .dark-homepage .chatbot-toggle-btn {
    background-color: var(--gold) !important;
    background: var(--gold) !important;
    color: var(--dark-bg) !important;
  }

  .dark-homepage .chatbot-toggle-btn:hover {
    background-color: #E8C547 !important;
    background: #E8C547 !important;
  }

  .dark-homepage .chatbot-toggle-btn svg {
    stroke: var(--dark-bg) !important;
  }

  /* Sources dans les messages */
  .dark-homepage .chatbot-sources {
    border-top-color: var(--dark-border) !important;
  }

  .dark-homepage .chatbot-sources a {
    color: var(--gold) !important;
  }

  /* Bouton de copie */
  .dark-homepage .chatbot-copy-btn {
    color: var(--text-muted) !important;
  }

  .dark-homepage .chatbot-copy-btn:hover {
    color: var(--gold) !important;
  }

  /* PoignÃƒÆ’Ã‚Â©e de redimensionnement - triangle bleu ÃƒÂ¢Ã¢â‚¬Â Ã¢â‚¬â„¢ dorÃƒÆ’Ã‚Â© */
  .dark-homepage .chatbot-resize-handle:before {
    border-color: var(--gold) transparent transparent transparent !important;
  }

  .dark-homepage .chatbot-resize-handle:after {
    color: var(--dark-bg) !important;
  }

  /* ========================================
     COOKIE CONSENT POPUP - Bleu ÃƒÂ¢Ã¢â‚¬Â Ã¢â‚¬â„¢ DorÃƒÆ’Ã‚Â©
     ======================================== */

  /* Banner container */
  .dark-homepage .cookie-consent-banner {
    background: var(--dark-surface) !important;
    border-top: 2px solid var(--gold) !important;
  }

  /* Header - fond dorÃƒÆ’Ã‚Â© */
  .dark-homepage .cookie-consent-header {
    background: linear-gradient(135deg, var(--gold) 0%, #B8962E 100%) !important;
    color: var(--dark-bg) !important;
  }

  .dark-homepage .cookie-consent-header h2,
  .dark-homepage .cookie-consent-header h3,
  .dark-homepage .cookie-consent-title {
    color: var(--dark-bg) !important;
  }

  /* Body */
  .dark-homepage .cookie-consent-body {
    background: var(--dark-surface) !important;
  }

  .dark-homepage .cookie-consent-description {
    color: var(--text-primary) !important;
  }

  .dark-homepage .cookie-consent-description p {
    color: var(--text-secondary) !important;
  }

  .dark-homepage .cookie-consent-description strong {
    color: var(--gold) !important;
  }

  .dark-homepage .cookie-consent-description a {
    color: var(--gold) !important;
  }

  /* Options */
  .dark-homepage .cookie-options {
    border-top-color: var(--dark-border) !important;
  }

  .dark-homepage .cookie-option {
    background: var(--dark-bg) !important;
  }

  .dark-homepage .cookie-option:hover {
    background: var(--dark-surface-light) !important;
  }

  .dark-homepage .cookie-option-title {
    color: var(--text-primary) !important;
  }

  .dark-homepage .cookie-option-info p {
    color: var(--text-secondary) !important;
  }

  /* Toggle switch - checked = dorÃƒÆ’Ã‚Â© */
  .dark-homepage .cookie-toggle input:checked + .cookie-toggle-slider {
    background-color: var(--gold) !important;
  }

  .dark-homepage .cookie-toggle-slider {
    background-color: var(--dark-surface-light) !important;
  }

  /* Boutons primaires - dorÃƒÆ’Ã‚Â© */
  .dark-homepage .cookie-btn-primary {
    background: linear-gradient(135deg, var(--gold) 0%, #B8962E 100%) !important;
    color: var(--dark-bg) !important;
    box-shadow: 0 2px 8px rgba(212, 175, 55, 0.25) !important;
  }

  .dark-homepage .cookie-btn-primary:hover {
    box-shadow: 0 3px 12px rgba(212, 175, 55, 0.35) !important;
  }

  /* Boutons secondaires */
  .dark-homepage .cookie-btn-secondary {
    background: var(--dark-bg) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--dark-border) !important;
  }

  .dark-homepage .cookie-btn-secondary:hover {
    background: var(--dark-surface-light) !important;
    border-color: var(--gold) !important;
  }

  /* Bouton lien */
  .dark-homepage .cookie-btn-link {
    color: var(--gold) !important;
  }

  .dark-homepage .cookie-btn-link:hover {
    color: #E8C547 !important;
  }

  /* Bouton prÃƒÆ’Ã‚Â©fÃƒÆ’Ã‚Â©rences cookies (flottant) */
  .dark-homepage .cookie-preferences-btn {
    background: var(--gold) !important;
    color: var(--dark-bg) !important;
    box-shadow: 0 4px 15px rgba(212, 175, 55, 0.3) !important;
  }

  .dark-homepage .cookie-preferences-btn:hover {
    background: #E8C547 !important;
    box-shadow: 0 6px 20px rgba(212, 175, 55, 0.4) !important;
  }

/* Pre-audit modal */
.preaudit-modal {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
  z-index: 1200;
}

.preaudit-modal.is-open {
  opacity: 1;
  pointer-events: auto;
}

.preaudit-modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.65);
}

.preaudit-modal__dialog {
  position: relative;
  z-index: 1;
  width: min(620px, 92vw);
  background: #fff;
  color: #222;
  border-radius: 18px;
  padding: 2rem;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25);
  transform: translateY(20px);
  transition: transform 0.2s ease;
}

.preaudit-modal.is-open .preaudit-modal__dialog {
  transform: translateY(0);
}

.preaudit-modal__close {
  position: absolute;
  top: 16px;
  right: 16px;
  background: transparent;
  border: 0;
  font-size: 1.5rem;
  cursor: pointer;
  color: #666;
}

.preaudit-modal__title {
  margin: 0 0 0.5rem;
  font-size: 1.6rem;
  color: #333;
}

.preaudit-modal__subtitle {
  margin: 0 0 1.5rem;
  color: #666;
}

.preaudit-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.preaudit-field {
  min-width: 0;
}

.preaudit-field--full {
  grid-column: 1 / -1;
}

.preaudit-field span {
  display: block;
  margin-bottom: 0.35rem;
  font-size: 0.85rem;
  font-weight: 600;
  color: #333;
}

.preaudit-field input {
  width: 100%;
  padding: 0.7rem 0.9rem;
  border-radius: 10px;
  border: 1px solid #ddd;
  background: #fff;
  color: #222;
  font-size: 0.95rem;
  box-sizing: border-box;
}

.preaudit-field input:focus {
  outline: none;
  border-color: #f2b900;
  box-shadow: 0 0 0 3px rgba(242, 185, 0, 0.15);
}

.preaudit-field input.is-invalid {
  border-color: #c0392b;
  box-shadow: none;
}

.preaudit-actions {
  margin-top: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  align-items: flex-start;
}

.preaudit-submit:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  box-shadow: none;
}

.preaudit-status {
  margin: 0;
  font-size: 0.95rem;
  color: #666;
  min-height: 1.2rem;
}

.preaudit-status.is-error {
  color: #c0392b;
}

.preaudit-status.is-success {
  color: #2e7d32;
}

body.preaudit-modal-open {
  overflow: hidden;
}

.dark-homepage .preaudit-modal__dialog {
  background: #121212;
  color: #e0e0e0;
  border: 1px solid var(--dark-border);
}

.dark-homepage .preaudit-modal__title {
  color: #fff;
}

.dark-homepage .preaudit-modal__subtitle,
.dark-homepage .preaudit-status {
  color: var(--text-secondary);
}

.dark-homepage .preaudit-modal__close {
  color: var(--text-secondary);
}

.dark-homepage .preaudit-field span {
  color: #fff;
}

.dark-homepage .preaudit-field input {
  background: #0f0f0f;
  border-color: var(--dark-border);
  color: #fff;
}

@media (max-width: 680px) {
  .preaudit-grid {
    grid-template-columns: 1fr;
  }

  .preaudit-modal__dialog {
    padding: 1.5rem;
  }
}
