/* ==========================================================================
   Heimlane Dark Mode - CSS Overrides
   All styles use [data-theme="dark"] selector to override light mode
   Light mode (style.css) remains completely unchanged
   ========================================================================== */

/* ==========================================================================
   Dark Mode Color Variables
   ========================================================================== */
[data-theme="dark"] {
  /* Override brand variables for dark mode */
  --color-dark: #e5e7eb;
  --color-white: #0d1421;
  --color-gray: #9ca3af;

  /* Dark mode specific palette */
  --dark-bg-primary: #0d1421;
  --dark-bg-secondary: #1a2332;
  --dark-bg-card: #1e293b;
  --dark-bg-elevated: #253449;
  --dark-border: #374151;
  --dark-border-light: #4b5563;
  --dark-text-primary: #f1f5f9;
  --dark-text-secondary: #cbd5e1;
  --dark-text-muted: #94a3b8;

  /* Adjusted shadows for dark mode */
  --shadow-sm: 0 2px 4px rgba(0,0,0,0.3);
  --shadow-md: 0 2px 8px rgba(0,0,0,0.4);
  --shadow-lg: 0 4px 16px rgba(0,0,0,0.5);
}

/* ==========================================================================
   Base Elements
   ========================================================================== */
[data-theme="dark"] body {
  background: #0d1421;
  color: #e5e7eb;
}

[data-theme="dark"] h1,
[data-theme="dark"] h3,
[data-theme="dark"] h4,
[data-theme="dark"] h5,
[data-theme="dark"] h6 {
  color: #f1f5f9;
}

[data-theme="dark"] h2 {
  color: #60a5fa;
}

[data-theme="dark"] p {
  color: #cbd5e1;
}

[data-theme="dark"] a {
  color: #60a5fa;
}

[data-theme="dark"] a:hover {
  color: #93c5fd;
}

/* Two-tone text */
[data-theme="dark"] .text-two-tone {
  color: #e5e7eb;
}

[data-theme="dark"] .text-two-tone .accent {
  color: #60a5fa;
}

/* ==========================================================================
   Header Navigation
   ========================================================================== */
[data-theme="dark"] .site-header {
  background: rgba(13, 20, 33, 0.98);
}

[data-theme="dark"] .site-header.scrolled {
  background: rgba(13, 20, 33, 0.98);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .nav-menu a {
  color: #e5e7eb;
}

[data-theme="dark"] .nav-menu a:hover {
  color: #60a5fa;
}

/* Dropdown Menu */
[data-theme="dark"] .dropdown-menu {
  background: #1e293b;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.5);
}

[data-theme="dark"] .dropdown-menu a {
  color: #e5e7eb;
}

[data-theme="dark"] .dropdown-menu a:hover {
  background: rgba(96, 165, 250, 0.15);
  color: #60a5fa;
}

[data-theme="dark"] .dropdown-divider {
  background: #374151;
}

/* Dropdown labels (Solutions, Products headers) */
[data-theme="dark"] .dropdown-label {
  color: #ffffff;
}

/* Language Switcher */
[data-theme="dark"] .language-switcher a {
  color: #e5e7eb;
}

[data-theme="dark"] .language-switcher a:hover {
  color: #60a5fa;
}

/* Mobile Menu Toggle */
[data-theme="dark"] .mobile-menu-toggle span {
  background: #e5e7eb;
}

[data-theme="dark"] .site-header.scrolled .mobile-menu-toggle span {
  background: #e5e7eb;
}

/* Mobile Navigation */
[data-theme="dark"] .nav-menu.mobile-active {
  background: #1e293b;
}

[data-theme="dark"] .nav-menu.mobile-active a {
  color: #e5e7eb;
}

[data-theme="dark"] .nav-menu.mobile-active li {
  border-bottom-color: #374151;
}

[data-theme="dark"] .nav-menu.mobile-active .dropdown-menu {
  background: #253449;
}

[data-theme="dark"] .nav-menu.mobile-active .dropdown-menu a {
  background: #253449;
}

[data-theme="dark"] .nav-menu.mobile-active .dropdown-menu a:hover {
  background: #374151;
}

/* ==========================================================================
   Logo Handling
   ========================================================================== */
/* Default state: show default logo, hide dark logo */
.logo img.logo-dark {
  display: none;
}

/* Dark mode: hide default logo, show dark logo */
[data-theme="dark"] .logo img:not(.logo-dark) {
  display: none;
}

[data-theme="dark"] .logo img.logo-dark {
  display: block;
}

/* ==========================================================================
   Sections
   ========================================================================== */
[data-theme="dark"] section {
  background: #0d1421;
}

[data-theme="dark"] section.section-white {
  background: #0d1421;
}

[data-theme="dark"] section.section-light {
  background: #1a2332;
}

/* ==========================================================================
   Product Cards
   ========================================================================== */
[data-theme="dark"] .product-card {
  background: #1e293b;
  border-color: #374151;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .product-card::before {
  background: linear-gradient(180deg, #60a5fa 0%, rgba(96, 165, 250, 0.5) 50%, rgba(96, 165, 250, 0) 100%);
}

[data-theme="dark"] .product-card:hover {
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.4);
  border-color: #60a5fa;
}

[data-theme="dark"] .product-card h3 {
  color: #f1f5f9;
}

[data-theme="dark"] .product-card .description {
  color: #94a3b8;
}

[data-theme="dark"] .product-card li {
  color: #cbd5e1;
}

/* ==========================================================================
   Feature Items
   ========================================================================== */
[data-theme="dark"] .feature-item {
  background: transparent;
}

[data-theme="dark"] .feature-item .icon {
  background: rgba(30, 41, 59, 0.95);
  border: 1px solid #374151;
}

[data-theme="dark"] .feature-item h3 {
  color: #f1f5f9;
}

[data-theme="dark"] .feature-item p {
  color: #94a3b8;
}

/* ==========================================================================
   Role Cards (Partners, Vision pages)
   ========================================================================== */
[data-theme="dark"] .role-card {
  background: #1e293b;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .role-card:hover {
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .role-card h3 {
  color: #f1f5f9;
}

[data-theme="dark"] .role-card p {
  color: #cbd5e1;
}

/* ==========================================================================
   Comparison Cards (Prism page)
   ========================================================================== */
[data-theme="dark"] .comparison-new {
  background: linear-gradient(135deg, #1e3a5f 0%, #1e293b 100%);
}

[data-theme="dark"] .comparison-old {
  background: #1a2332;
}

/* ==========================================================================
   Titled Cards (NIS2, Cyber Insurance, Partners, etc.)
   ========================================================================== */
[data-theme="dark"] .titled-card {
  background: #1e293b;
  border-color: #374151;
}

[data-theme="dark"] .titled-card:hover {
  border-color: #60a5fa;
}

[data-theme="dark"] .titled-card h4,
[data-theme="dark"] .titled-card h3 {
  color: #f1f5f9;
}

[data-theme="dark"] .titled-card p {
  color: #94a3b8;
}

/* Titled card headers (gradient headers) - keep white text */
/* The light mode uses var(--color-white) but we override that variable in dark mode */
/* So we need to explicitly set white color for these gradient headers */
[data-theme="dark"] .titled-card-header h3,
[data-theme="dark"] .titled-card-header h4 {
  color: #ffffff !important;
}

[data-theme="dark"] .titled-card .titled-card-header h3,
[data-theme="dark"] .titled-card .titled-card-header h4 {
  color: #ffffff !important;
}

[data-theme="dark"] .feature-item.titled-card .titled-card-header h3,
[data-theme="dark"] .feature-item.titled-card .titled-card-header h4 {
  color: #ffffff !important;
}

[data-theme="dark"] .role-card.titled-card .titled-card-header h3,
[data-theme="dark"] .role-card.titled-card .titled-card-header h4 {
  color: #ffffff !important;
}

[data-theme="dark"] .tech-spec-card.titled-card .titled-card-header h4 {
  color: #ffffff !important;
}

/* Titled card body icons (lucide icons) - invert to white */
/* But NOT the flag icons which are colored */
[data-theme="dark"] .titled-card-icon:not(.titled-card-icon-flag) img {
  filter: brightness(0) invert(1);
}

/* Ensure flag icons retain their colors */
[data-theme="dark"] .titled-card-icon-flag img {
  filter: none;
}

/* ==========================================================================
   Timeline (NIS2, Cyber Insurance)
   ========================================================================== */
[data-theme="dark"] .timeline-item {
  background: #1e293b;
  border-color: #374151;
}

[data-theme="dark"] .timeline-item h4 {
  color: #f1f5f9;
}

[data-theme="dark"] .timeline-item p {
  color: #94a3b8;
}

/* ==========================================================================
   Forms
   ========================================================================== */
[data-theme="dark"] .form-group label {
  color: #e5e7eb;
}

[data-theme="dark"] .form-group input,
[data-theme="dark"] .form-group textarea,
[data-theme="dark"] .form-group select {
  background: #1e293b;
  border-color: #4b5563;
  color: #e5e7eb;
}

[data-theme="dark"] .form-group input:focus,
[data-theme="dark"] .form-group textarea:focus,
[data-theme="dark"] .form-group select:focus {
  border-color: #60a5fa;
  box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.2);
}

[data-theme="dark"] .form-group input::placeholder,
[data-theme="dark"] .form-group textarea::placeholder {
  color: #6b7280;
}

/* ==========================================================================
   Early Access Cards
   ========================================================================== */
[data-theme="dark"] .ea-conversion-card {
  background: #1e293b;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .ea-card-early-access {
  border-color: #374151;
}

[data-theme="dark"] .ea-card-vault-redirect {
  border-color: #60a5fa;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .ea-card-updates-only {
  border-color: #374151;
}

[data-theme="dark"] .ea-badge-casual {
  background: #374151;
  color: #9ca3af;
}

[data-theme="dark"] .ea-card-headline {
  color: #f1f5f9;
}

[data-theme="dark"] .ea-card-subheadline {
  color: #94a3b8;
}

[data-theme="dark"] .ea-benefits-list li {
  color: #cbd5e1;
  border-bottom-color: #374151;
}

[data-theme="dark"] .ea-required-indicator {
  color: #94a3b8;
}

/* Early Access Forms */
[data-theme="dark"] .ea-form-input,
[data-theme="dark"] .ea-form-select {
  background: #1e293b;
  border-color: #4b5563;
  color: #e5e7eb;
}

[data-theme="dark"] .ea-form-input:focus,
[data-theme="dark"] .ea-form-select:focus {
  border-color: #60a5fa;
  box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.2);
}

[data-theme="dark"] .ea-form-input:disabled,
[data-theme="dark"] .ea-form-select:disabled {
  background: #253449;
}

[data-theme="dark"] .ea-form-loading-overlay {
  background: rgba(30, 41, 59, 0.95);
}

[data-theme="dark"] .ea-spinner {
  border-color: #374151;
  border-top-color: #60a5fa;
}

/* ==========================================================================
   FAQ Section
   ========================================================================== */
[data-theme="dark"] .ea-faq-item {
  background: #1e293b;
  border-color: #374151;
}

[data-theme="dark"] .ea-faq-question {
  color: #f1f5f9;
}

[data-theme="dark"] .ea-faq-answer {
  color: #94a3b8;
}

/* ==========================================================================
   Trust Indicators
   ========================================================================== */
[data-theme="dark"] .ea-trust-indicator {
  background: #1e293b;
}

[data-theme="dark"] .ea-trust-indicator h4 {
  color: #60a5fa;
}

[data-theme="dark"] .ea-trust-indicator p {
  color: #94a3b8;
}

/* ==========================================================================
   Help & Documentation Pages
   ========================================================================== */
[data-theme="dark"] .help-article-card {
  background: #1e293b;
  border-color: #374151;
}

[data-theme="dark"] .help-article-card:hover {
  border-color: #60a5fa;
}

[data-theme="dark"] .help-article-card h3 {
  color: #60a5fa;
}

[data-theme="dark"] .help-article-card p {
  color: #94a3b8;
}

[data-theme="dark"] .security-info-box {
  background: #1e293b;
  border-color: #374151;
}

[data-theme="dark"] .download-card {
  background: #1e293b;
  border-color: #374151;
}

[data-theme="dark"] .download-card:hover {
  border-color: #60a5fa;
}

[data-theme="dark"] .download-card h3 {
  color: #60a5fa;
}

[data-theme="dark"] .download-card p {
  color: #94a3b8;
}

[data-theme="dark"] .feedback-box {
  background: #1e293b;
}

[data-theme="dark"] .requirements-box {
  background: #1e293b;
  border-color: #374151;
}

[data-theme="dark"] .requirements-list li {
  border-bottom-color: #374151;
  color: #94a3b8;
}

/* ==========================================================================
   Info & Warning Boxes
   ========================================================================== */
[data-theme="dark"] .info-box {
  background: #1e3a5f;
  border-left-color: #60a5fa;
}

[data-theme="dark"] .info-box p {
  color: #93c5fd;
}

[data-theme="dark"] .warning-box {
  background: #422006;
  border-left-color: #f59e0b;
}

[data-theme="dark"] .warning-box strong {
  color: #fbbf24;
}

/* ==========================================================================
   Privacy Policy & Terms Pages
   ========================================================================== */
[data-theme="dark"] .privacy-accordion {
  background: transparent;
}

[data-theme="dark"] .privacy-section {
  background: #1e293b;
  border-color: #374151;
}

[data-theme="dark"] .privacy-section-header {
  background: #1e293b;
  color: #f1f5f9;
}

[data-theme="dark"] .privacy-section-header:hover {
  background: #253449;
}

[data-theme="dark"] .privacy-section-content {
  background: #1e293b;
  color: #cbd5e1;
}

[data-theme="dark"] .privacy-section-content h3 {
  color: #60a5fa;
}

[data-theme="dark"] .privacy-section-content h4 {
  color: #f1f5f9;
}

[data-theme="dark"] .privacy-info-box {
  background: #253449;
  border-color: #374151;
}

[data-theme="dark"] .privacy-highlight-box {
  background: #253449;
  border-color: #374151;
}

[data-theme="dark"] .privacy-highlight-success {
  background: rgba(16, 185, 129, 0.1);
  border-color: #10b981;
}

[data-theme="dark"] .privacy-table {
  background: #1e293b;
}

[data-theme="dark"] .privacy-table-header {
  background: #253449;
  color: #f1f5f9;
}

[data-theme="dark"] .privacy-table-row {
  border-bottom-color: #374151;
}

[data-theme="dark"] .privacy-table-label {
  color: #cbd5e1;
}

[data-theme="dark"] .privacy-table-value {
  color: #94a3b8;
}

[data-theme="dark"] .privacy-list li {
  color: #cbd5e1;
}

[data-theme="dark"] .privacy-note {
  color: #94a3b8;
}

[data-theme="dark"] .privacy-toc-simple {
  background: #1e293b;
  border-color: #374151;
}

[data-theme="dark"] .privacy-toc-links a {
  color: #60a5fa;
}

/* Privacy Product Accordions */
[data-theme="dark"] .privacy-product-item {
  background: #253449;
  border-color: #374151;
}

[data-theme="dark"] .privacy-product-header {
  background: #253449;
  color: #f1f5f9;
}

[data-theme="dark"] .privacy-product-content {
  background: #253449;
}

/* Privacy Contact Section */
[data-theme="dark"] .privacy-contact-card {
  background: #1e293b;
}

[data-theme="dark"] .privacy-contact-card h3 {
  color: #f1f5f9;
}

[data-theme="dark"] .privacy-contact-card p {
  color: #cbd5e1;
}

/* ==========================================================================
   Legal Notice Page
   ========================================================================== */
[data-theme="dark"] .legal-info-card {
  background: #1e293b;
  border-color: #374151;
}

[data-theme="dark"] .legal-info-card h2 {
  color: #60a5fa;
}

[data-theme="dark"] .legal-info-card p {
  color: #cbd5e1;
}

/* ==========================================================================
   Contact Page Cards
   ========================================================================== */
[data-theme="dark"] .contact-card {
  background: #1e293b;
  border-color: #374151;
}

[data-theme="dark"] .contact-card h3 {
  color: #f1f5f9;
}

[data-theme="dark"] .contact-card p {
  color: #cbd5e1;
}

/* ==========================================================================
   CTA Sections
   ========================================================================== */
[data-theme="dark"] .section-cta {
  background: #1a2332;
}

[data-theme="dark"] .cta-card {
  background: #1e293b;
}

/* ==========================================================================
   Buttons (non-gradient adjustments only)
   ========================================================================== */
[data-theme="dark"] .btn-outline {
  border-color: #60a5fa;
  color: #60a5fa;
}

[data-theme="dark"] .btn-outline:hover {
  background: #60a5fa;
  color: #0d1421;
}

/* ==========================================================================
   Vault Pages Specific
   ========================================================================== */
[data-theme="dark"] .vault-welcome-card {
  background: #1e293b;
  border-color: #374151;
}

[data-theme="dark"] .vault-step-card {
  background: #1e293b;
}

[data-theme="dark"] .vault-step-card h3 {
  color: #f1f5f9;
}

[data-theme="dark"] .vault-step-card p {
  color: #94a3b8;
}

/* ==========================================================================
   Tables
   ========================================================================== */
[data-theme="dark"] table {
  background: #1e293b;
}

[data-theme="dark"] th {
  background: #253449;
  color: #f1f5f9;
  border-color: #374151;
}

[data-theme="dark"] td {
  color: #cbd5e1;
  border-color: #374151;
}

[data-theme="dark"] tr:hover {
  background: #253449;
}

/* ==========================================================================
   Code Blocks
   ========================================================================== */
[data-theme="dark"] code {
  background: #253449;
  color: #93c5fd;
}

[data-theme="dark"] pre {
  background: #1e293b;
  border-color: #374151;
}

/* ==========================================================================
   Scrollbar (Webkit browsers)
   ========================================================================== */
[data-theme="dark"] ::-webkit-scrollbar {
  width: 12px;
  height: 12px;
}

[data-theme="dark"] ::-webkit-scrollbar-track {
  background: #1a2332;
}

[data-theme="dark"] ::-webkit-scrollbar-thumb {
  background: #374151;
  border-radius: 6px;
}

[data-theme="dark"] ::-webkit-scrollbar-thumb:hover {
  background: #4b5563;
}

/* ==========================================================================
   Theme Toggle Button - Pill Switch Style (matches webvault)
   ========================================================================== */
.theme-toggle {
  position: relative;
  width: 56px;
  height: 28px;
  background: #e5e7eb;
  border: none;
  border-radius: 999px;
  cursor: pointer;
  padding: 2px;
  transition: background-color 0.3s ease;
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

.theme-toggle:hover {
  background: #d1d5db;
}

.theme-toggle-thumb {
  position: absolute;
  width: 24px;
  height: 24px;
  background: #ffffff;
  border-radius: 50%;
  transition: transform 0.3s ease, background-color 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  left: 2px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.theme-toggle-thumb svg {
  width: 14px;
  height: 14px;
  transition: opacity 0.2s ease;
}

/* Icons */
.theme-toggle .icon-sun {
  color: #f59e0b;
  opacity: 0;
  position: absolute;
}

.theme-toggle .icon-moon {
  color: #6b7280;
  opacity: 1;
}

/* Dark mode toggle state */
[data-theme="dark"] .theme-toggle {
  background: #374151;
}

[data-theme="dark"] .theme-toggle:hover {
  background: #4b5563;
}

[data-theme="dark"] .theme-toggle-thumb {
  transform: translateX(28px);
  background: #1e293b;
}

[data-theme="dark"] .theme-toggle .icon-sun {
  opacity: 1;
  color: #fbbf24;
}

[data-theme="dark"] .theme-toggle .icon-moon {
  opacity: 0;
}

/* ==========================================================================
   Smooth Transitions for Theme Change
   ========================================================================== */
html.theme-transition,
html.theme-transition *,
html.theme-transition *::before,
html.theme-transition *::after {
  transition: background-color 0.3s ease,
              border-color 0.3s ease,
              color 0.3s ease,
              box-shadow 0.3s ease,
              fill 0.3s ease !important;
}

/* ==========================================================================
   Print Styles - Force Light Mode
   ========================================================================== */
@media print {
  [data-theme="dark"] body {
    background: white !important;
    color: black !important;
  }

  [data-theme="dark"] * {
    background: transparent !important;
    color: black !important;
    box-shadow: none !important;
  }

  .theme-toggle {
    display: none !important;
  }
}

/* ==========================================================================
   Verification Banner (dark mode)
   ========================================================================== */
[data-theme="dark"] .verification-banner {
  background: #1e3a5f;
  border-bottom-color: #374151;
}

[data-theme="dark"] .verification-banner p {
  color: #93c5fd;
}

/* ==========================================================================
   Footer - Already dark, minor adjustments
   ========================================================================== */
/* Footer is already dark-themed in light mode, no changes needed */
/* Just ensure consistency */
[data-theme="dark"] .site-footer {
  background: #0d1421;
  border-top: 1px solid #1a2332;
}

/* ==========================================================================
   V1 FIXES - Issues from initial testing
   ========================================================================== */

/* FIX: Buttons - white text on blue button for better contrast */
[data-theme="dark"] .btn-primary {
  color: #ffffff;
}

[data-theme="dark"] .btn-primary:hover {
  color: #ffffff;
}

[data-theme="dark"] .btn-secondary {
  color: #ffffff;
  border-color: #ffffff;
}

[data-theme="dark"] .btn-secondary:hover {
  color: #163371;
  background: #ffffff;
}

[data-theme="dark"] .ea-btn-secondary {
  color: #ffffff;
  border-color: #ffffff;
}

/* FIX: Hero gradient sections - dark muted gradient like webvault */
[data-theme="dark"] .hero-gradient {
  background: linear-gradient(180deg, #0d1421 0%, #162033 50%, #1a2744 100%);
}

[data-theme="dark"] .hero-gradient h1,
[data-theme="dark"] .hero-gradient h2,
[data-theme="dark"] .hero-gradient p,
[data-theme="dark"] .hero-gradient .hero-tagline,
[data-theme="dark"] .hero-gradient .hero-subtitle {
  color: #ffffff;
}

[data-theme="dark"] .hero-gradient .text-two-tone {
  color: #ffffff;
}

[data-theme="dark"] .hero-gradient .text-two-tone .accent {
  color: #60a5fa;
}

/* FIX: Mini-hero (NIS2, solutions pages) - dark muted gradient */
[data-theme="dark"] .mini-hero {
  background: linear-gradient(180deg, #0d1421 0%, #162033 50%, #1a2744 100%);
}

[data-theme="dark"] .mini-hero h1,
[data-theme="dark"] .mini-hero .subtitle,
[data-theme="dark"] .mini-hero p {
  color: #ffffff;
}

[data-theme="dark"] .mini-hero .text-two-tone {
  color: #ffffff;
}

[data-theme="dark"] .mini-hero .text-two-tone .accent {
  color: #60a5fa;
}

/* FIX: Section CTA - dark muted gradient */
[data-theme="dark"] .section-cta {
  background: linear-gradient(180deg, #1a2744 0%, #162033 50%, #0d1421 100%);
}

[data-theme="dark"] .section-cta h2,
[data-theme="dark"] .section-cta p,
[data-theme="dark"] .section-cta .section-intro {
  color: #ffffff;
}

/* FIX: Partner CTA box - dark version */
[data-theme="dark"] .partner-cta-box {
  background: #1e293b;
  border-color: #374151;
}

[data-theme="dark"] .partner-cta-box h2 {
  color: #60a5fa;
}

[data-theme="dark"] .partner-cta-box p {
  color: #cbd5e1;
}

/* FIX: Mission quote box (Vision page) - dark version */
[data-theme="dark"] .mission-quote-box {
  background: #1e293b;
  border-left-color: #60a5fa;
}

[data-theme="dark"] .mission-quote-box h2 {
  color: #60a5fa;
}

[data-theme="dark"] .mission-quote-box .mission-text,
[data-theme="dark"] .mission-text {
  color: #cbd5e1;
}

[data-theme="dark"] .mission-quote-box::before,
[data-theme="dark"] .quote-icon {
  color: #374151;
}

/* FIX: Contact cards - dark version */
[data-theme="dark"] .contact-card {
  background: #1e293b;
  border-color: #374151;
}

/* FIX: Download cards (vault-downloads) */
[data-theme="dark"] .download-card {
  background: #1e293b;
  border-color: #374151;
}

[data-theme="dark"] .download-card:hover {
  border-color: #60a5fa;
}

[data-theme="dark"] .download-card h3 {
  color: #60a5fa;
}

[data-theme="dark"] .download-card p {
  color: #94a3b8;
}

/* FIX: Download icons - only invert Apple logo (black icon needs white) */
/* Browser icons (Firefox, Chrome, Edge, Safari) and Android have their own colors */
[data-theme="dark"] .download-icon img[src*="apple"] {
  filter: brightness(0) invert(1);
}

/* FIX: Help section cards - dark background with proper visibility */
[data-theme="dark"] .help-section-card {
  background: #1e293b;
  border-color: #374151;
}

[data-theme="dark"] .help-section-card:hover {
  border-color: #60a5fa;
  background: #253449;
}

[data-theme="dark"] .help-section-card h3 {
  color: #60a5fa;
}

[data-theme="dark"] .help-section-card p {
  color: #94a3b8;
}

/* FIX: Help section icons - softer gray instead of bright white */
[data-theme="dark"] .help-section-icon img {
  filter: brightness(0) invert(0.7);
  opacity: 0.75;
}

[data-theme="dark"] .help-section-card:hover .help-section-icon img {
  filter: brightness(0) saturate(100%) invert(44%) sepia(93%) saturate(1522%) hue-rotate(206deg) brightness(101%) contrast(93%);
  opacity: 1;
}

/* FIX: Help sidebar boxes (Related Articles, Need More Help) */
[data-theme="dark"] .help-related-box,
[data-theme="dark"] .help-feedback-box {
  background: #1e293b;
  border: 1px solid #374151;
}

[data-theme="dark"] .help-related-box h4,
[data-theme="dark"] .help-feedback-box h4 {
  color: #60a5fa;
}

[data-theme="dark"] .help-related-box a {
  color: #60a5fa;
}

[data-theme="dark"] .help-feedback-box p {
  color: #94a3b8;
}

/* FIX: Feedback box */
[data-theme="dark"] .feedback-box {
  background: #1e293b;
  border: 1px solid #374151;
}

[data-theme="dark"] .feedback-box h2 {
  color: #60a5fa;
}

/* FIX: Early Access cards on other pages (Contact page CTA) */
[data-theme="dark"] .early-access-content {
  background: #1e293b;
}

/* FIX: Generic light gradient backgrounds that should be dark */
[data-theme="dark"] [style*="linear-gradient(135deg, #f0f9ff"],
[data-theme="dark"] [style*="linear-gradient(135deg, #f8fafc"] {
  background: #1e293b !important;
}

/* ==========================================================================
   V2 FIXES - Additional issues from testing
   ========================================================================== */

/* FIX: Titled card and scope-grouped card inlay overlaps header */
/* Move the gradient inlay behind the header by adjusting z-index */
[data-theme="dark"] .titled-card::before,
[data-theme="dark"] .scope-grouped-card::before {
  z-index: 0;
}

/* FIX: Section icons - only invert lucide icons, keep colored SVGs (EU flag) */
[data-theme="dark"] .section-icon img[src*="lucide"] {
  filter: brightness(0) invert(1);
}

/* Ensure non-lucide section icons (EU flag, etc.) retain colors */
[data-theme="dark"] .section-icon img:not([src*="lucide"]) {
  filter: none;
}

/* FIX: Scope grouped cards (Cyber Insurance, NIS2) */
[data-theme="dark"] .scope-grouped-card {
  background: #1e293b;
}

[data-theme="dark"] .scope-grouped-header h3 {
  color: #ffffff !important;
}

[data-theme="dark"] .scope-item-content h4 {
  color: #f1f5f9;
}

[data-theme="dark"] .scope-item-content p {
  color: #94a3b8;
}

[data-theme="dark"] .scope-item-icon img {
  filter: brightness(0) invert(1);
}

/* FIX: FAQ section - dark mode styling */
[data-theme="dark"] .ea-faq-section {
  background: #0d1421;
}

[data-theme="dark"] .ea-faq-item {
  background: #1e293b;
  border-color: #374151;
}

[data-theme="dark"] .ea-faq-question {
  background: #1e293b;
  color: #f1f5f9;
}

[data-theme="dark"] .ea-faq-question:hover {
  background: #253449;
}

[data-theme="dark"] .ea-faq-chevron {
  color: #60a5fa;
}

[data-theme="dark"] .ea-faq-answer {
  background: #1e293b;
}

[data-theme="dark"] .ea-faq-answer p {
  color: #cbd5e1;
}

/* FIX: Security info box (Phishing protection) - dark mode */
[data-theme="dark"] .security-info-box {
  background: #1e293b;
  border-color: #374151;
}

[data-theme="dark"] .security-info-box h3 {
  color: #60a5fa;
}

[data-theme="dark"] .security-info-box p {
  color: #cbd5e1;
}

/* FIX: Warning box - dark mode styling (red/danger theme for warnings) */
[data-theme="dark"] .warning-box {
  background: rgba(239, 68, 68, 0.15);
  border-left-color: #ef4444;
}

[data-theme="dark"] .warning-box strong {
  color: #fca5a5;
}

[data-theme="dark"] .warning-box p {
  color: #fca5a5;
}

/* FIX: Info box - dark mode styling */
[data-theme="dark"] .info-box {
  background: #1e3a5f;
  border-left-color: #60a5fa;
}

[data-theme="dark"] .info-box p {
  color: #93c5fd;
}

/* FIX: Privacy info box - dark mode */
[data-theme="dark"] .privacy-info-box {
  background: #1e293b;
  border-left-color: #60a5fa;
}

[data-theme="dark"] .privacy-info-box p {
  color: #cbd5e1;
}

/* FIX: Early Access trust section icons */
/* Only invert lucide icons (monochrome), keep colored SVGs (flags) as-is */
[data-theme="dark"] .ea-trust-icon img.lucide-icon {
  filter: brightness(0) invert(0.7);
  opacity: 0.8;
}

/* Ensure colored SVGs (EU flag, FR flag, Zero Knowledge) are not filtered */
[data-theme="dark"] .ea-trust-icon img:not(.lucide-icon) {
  filter: none;
}

[data-theme="dark"] .ea-trust-item h3 {
  color: #f1f5f9;
}

[data-theme="dark"] .ea-trust-item p {
  color: #94a3b8;
}

/* FIX: Trust grid alignment - ensure proper centering and consistent icon sizes */
[data-theme="dark"] .ea-trust-grid {
  justify-items: center;
}

[data-theme="dark"] .ea-trust-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

[data-theme="dark"] .ea-trust-icon {
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem;
}

[data-theme="dark"] .ea-trust-icon img {
  width: 60px;
  height: 60px;
  object-fit: contain;
}

/* FIX: Early Access benefits list with icons - left align */
[data-theme="dark"] .ea-benefits-with-icons {
  text-align: left;
  width: 100%;
}

[data-theme="dark"] .ea-benefits-with-icons li {
  text-align: left;
}

/* Fix card 2 (vault redirect) benefits list alignment */
[data-theme="dark"] .ea-card-vault-redirect .ea-benefits-list {
  text-align: left;
}

[data-theme="dark"] .ea-card-vault-redirect .ea-benefits-list li {
  text-align: left;
}

/* FIX: Vault info box - dark mode */
[data-theme="dark"] .vault-info-box {
  background: #1e293b;
  border-color: #374151;
}

[data-theme="dark"] .vault-info-box h2 {
  color: #60a5fa;
}

[data-theme="dark"] .vault-subtitle {
  color: #cbd5e1;
}

/* FIX: Callout box (Vault pricing philosophy "Puissant mais abordable") - dark mode */
[data-theme="dark"] .callout-box {
  background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
  border-left-color: #60a5fa;
}

[data-theme="dark"] .callout-box h3 {
  color: #f1f5f9;
}

[data-theme="dark"] .callout-box p {
  color: #cbd5e1;
}

[data-theme="dark"] .callout-icon img {
  filter: brightness(0) invert(1);
}

/* FIX: Help article blockquote (Important callouts) - dark mode */
[data-theme="dark"] .help-article-content blockquote {
  background: #1e293b;
  border-left-color: #60a5fa;
}

[data-theme="dark"] .help-article-content blockquote p {
  color: #cbd5e1;
}

[data-theme="dark"] .help-article-content blockquote strong {
  color: #f1f5f9;
}

/* ==========================================================================
   FIX: Timeline alignment (affects both light and dark mode)
   Original: dots at 26px from timeline edge (center at 34px)
   Line needs center at 34px, so left edge at 32px
   ========================================================================== */
.timeline::before {
  left: 32px;
}

/* ==========================================================================
   Android EAP Page Styles (both light and dark mode)
   ========================================================================== */
.android-eap-content {
  max-width: 600px;
  margin: 0 auto;
  text-align: center;
}

.android-eap-info {
  margin-bottom: 2rem;
}

.android-icon-large {
  width: 80px;
  height: 80px;
  max-width: 80px;
  max-height: 80px;
  margin: 0 auto 1.5rem;
}

.android-icon-large img {
  width: 100%;
  height: 100%;
  max-width: 80px;
  max-height: 80px;
  object-fit: contain;
}

.android-eap-form-container {
  background: #f8fafc;
  border-radius: 12px;
  padding: 2rem;
  position: relative;
}

.android-eap-form .form-group {
  margin-bottom: 1.25rem;
  text-align: left;
}

.android-eap-form label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 500;
  color: #374151;
}

.android-eap-form .form-input {
  width: 100%;
  padding: 0.75rem 1rem;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  font-size: 1rem;
  transition: border-color 0.2s ease;
}

.android-eap-form .form-input:focus {
  outline: none;
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.android-eap-form .form-checkbox {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
}

.android-eap-form .checkbox-label {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  cursor: pointer;
  font-weight: normal;
}

.android-eap-form .checkbox-label input[type="checkbox"] {
  margin-top: 0.25rem;
  width: 18px;
  height: 18px;
}

.android-eap-form .form-error {
  background: #fef2f2;
  color: #dc2626;
  padding: 0.75rem 1rem;
  border-radius: 8px;
  margin-bottom: 1rem;
  font-size: 0.875rem;
}

.android-eap-form .form-error.hidden {
  display: none;
}

.android-eap-form .btn-full {
  width: 100%;
}

.android-eap-form .btn-spinner {
  display: inline-block;
  width: 16px;
  height: 16px;
  border: 2px solid transparent;
  border-top-color: currentColor;
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
  margin-right: 0.5rem;
  vertical-align: middle;
}

.android-eap-form .btn-spinner.hidden {
  display: none;
}

.form-loading-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(248, 250, 252, 0.95);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  z-index: 10;
}

.form-spinner {
  width: 40px;
  height: 40px;
  border: 3px solid #e5e7eb;
  border-top-color: #3b82f6;
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
  margin-bottom: 1rem;
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

.form-success-message {
  background: #ecfdf5;
  color: #059669;
  padding: 1.5rem;
  border-radius: 12px;
  text-align: center;
  font-weight: 500;
}

/* Android EAP Success Box (Thank You page) */
.android-eap-success-box {
  text-align: center;
  padding: 2rem;
}

.android-eap-success-box .android-icon-large {
  width: 100px;
  height: 100px;
  max-width: 100px;
  max-height: 100px;
}

.android-eap-success-box .android-icon-large img {
  max-width: 100px;
  max-height: 100px;
}

/* Dark mode overrides for Android EAP */
[data-theme="dark"] .android-eap-form-container {
  background: #1e293b;
}

[data-theme="dark"] .android-eap-form label {
  color: #e2e8f0;
}

[data-theme="dark"] .android-eap-form .form-input {
  background: #0f172a;
  border-color: #475569;
  color: #f1f5f9;
}

[data-theme="dark"] .android-eap-form .form-input:focus {
  border-color: #60a5fa;
  box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.2);
}

[data-theme="dark"] .android-eap-form .form-error {
  background: rgba(239, 68, 68, 0.15);
  color: #fca5a5;
}

[data-theme="dark"] .form-loading-overlay {
  background: rgba(30, 41, 59, 0.95);
}

[data-theme="dark"] .form-loading-overlay p {
  color: #cbd5e1;
}

[data-theme="dark"] .form-spinner {
  border-color: #475569;
  border-top-color: #60a5fa;
}

[data-theme="dark"] .form-success-message {
  background: rgba(16, 185, 129, 0.15);
  color: #6ee7b7;
}

[data-theme="dark"] .android-eap-success-box {
  color: #f1f5f9;
}

[data-theme="dark"] .android-icon-large img {
  filter: brightness(0) invert(1);
}
