/* ─────────────────────────────────────────────
   FusionLens — Dark Mode Overrides
   Activated via <html data-theme="dark">
   Additive only — light mode is never touched.
───────────────────────────────────────────── */

/* ── CSS VARIABLE OVERRIDES ─────────────────── */
/* html[data-theme="dark"] specificity = 0,1,1 — beats :root (0,1,0) in ProductPage.css
   so these values win even though dark-theme.css is loaded before page-specific CSS. */
html[data-theme="dark"] {
    --fl-bg:        #0d1829;
    --fl-surface:   #0f1f3d;
    --fl-surface-2: #162032;
    --fl-border:    rgba(255,255,255,0.07);
    --fl-border-b:  rgba(59,130,246,0.30);
    --fl-primary:   #60a5fa;
    --fl-text-1:    #f1f5f9;
    --fl-text-2:    #cbd5e1;
    --fl-text-3:    #94a3b8;
}

/* ── BODY ── */
[data-theme="dark"] body {
    background: #0d1829;
    color: #94a3b8;
}

/* ── SECTIONS ─────────────────────────────────
   Only override sections that use white/light bgs.
   Hero, navbar, footer, demo CTA already stay dark.
──────────────────────────────────────────────── */
[data-theme="dark"] .fl-section-light {
    background: #0d1829;
}

[data-theme="dark"] .fl-section-dark-blob {
    background: #0f1f3d;
}

[data-theme="dark"] .fl-how-section {
    background: #0d1829;
    border-top-color:    rgba(255,255,255,0.05);
    border-bottom-color: rgba(255,255,255,0.05);
}

/* "Who Is It For" – matched via :has() in ProductPage.css */
[data-theme="dark"] section:has(.fl-audience-card) {
    background: #0f1f3d;
}

/* ── PRODUCT CARDS ─────────────────────────── */
[data-theme="dark"] .fl-card {
    background: rgba(15,23,42,0.97);
    border-color: rgba(255,255,255,0.07);
    box-shadow: 0 1px 3px rgba(0,0,0,0.40), 0 4px 12px rgba(0,0,0,0.25);
}
[data-theme="dark"] .fl-card:hover {
    border-color: rgba(59,130,246,0.35);
    box-shadow: 0 4px 16px rgba(59,130,246,0.12), 0 12px 32px rgba(0,0,0,0.35);
}

[data-theme="dark"] .fl-step-card {
    background: rgba(15,23,42,0.97);
    border-color: rgba(255,255,255,0.07);
    box-shadow: 0 1px 3px rgba(0,0,0,0.40);
}
[data-theme="dark"] .fl-step-card:hover {
    border-color: rgba(59,130,246,0.35);
    box-shadow: 0 4px 20px rgba(59,130,246,0.12);
}

[data-theme="dark"] .fl-audience-card {
    background: rgba(15,23,42,0.97);
    border-color: rgba(255,255,255,0.07);
    box-shadow: 0 1px 3px rgba(0,0,0,0.40);
}
[data-theme="dark"] .fl-audience-card:hover {
    border-color: rgba(59,130,246,0.35);
    box-shadow: 0 16px 40px rgba(59,130,246,0.12), 0 4px 12px rgba(0,0,0,0.35);
}

[data-theme="dark"] .fl-testimonial-card {
    background: rgba(15,23,42,0.97);
    border-color: rgba(255,255,255,0.07);
    box-shadow: 0 1px 4px rgba(0,0,0,0.35);
}
[data-theme="dark"] .fl-testimonial-card:hover {
    border-color: rgba(59,130,246,0.28);
    box-shadow: 0 6px 24px rgba(59,130,246,0.10);
}

[data-theme="dark"] .fl-pp-card {
    background: rgba(15,23,42,0.97);
    border-color: rgba(255,255,255,0.07);
    box-shadow: 0 1px 4px rgba(0,0,0,0.35);
}
[data-theme="dark"] .fl-pp-card:hover {
    border-color: rgba(59,130,246,0.35);
    box-shadow: 0 8px 28px rgba(59,130,246,0.12);
}
[data-theme="dark"] .fl-pp-card.featured {
    border-color: rgba(59,130,246,0.50);
    box-shadow: 0 0 0 4px rgba(59,130,246,0.08), 0 8px 30px rgba(59,130,246,0.16);
}

/* ── FEATURE BAR ── */
[data-theme="dark"] .fl-feature-bar {
    background: rgba(255,255,255,0.04);
    border-color: rgba(255,255,255,0.05);
}
[data-theme="dark"] .fl-feat-item {
    background: rgba(15,23,42,0.97);
}
[data-theme="dark"] .fl-feat-item:hover {
    background: rgba(15,23,42,0.80);
}

/* ── SEC-BADGE (small pill above section titles) ── */
[data-theme="dark"] .fl-sec-badge {
    background: rgba(37,99,235,0.15);
    color: #93c5fd;
    border-color: rgba(59,130,246,0.30);
}

/* ── ORACLE DIAGRAM ── */
[data-theme="dark"] .fl-diagram-wrap {
    background: rgba(15,23,42,0.97);
    border-color: rgba(255,255,255,0.07);
    box-shadow: 0 2px 12px rgba(0,0,0,0.35);
}
[data-theme="dark"] .fl-diagram-inner  { background: #0b1526; }
[data-theme="dark"] .fl-diagram-status {
    background: rgba(15,23,42,0.97);
    border-color: rgba(255,255,255,0.05);
}
[data-theme="dark"] .fl-fb {
    background: rgba(15,23,42,0.97);
    border-color: rgba(255,255,255,0.07);
    box-shadow: 0 2px 8px rgba(0,0,0,0.35);
}
[data-theme="dark"] .fl-oracle-ring {
    background: rgba(15,23,42,0.85);
}
[data-theme="dark"] .fl-oracle-inner {
    background: rgba(239,68,68,0.08);
}

/* ── TESTIMONIAL QUOTE MARK ── */
[data-theme="dark"] .fl-quote { color: rgba(59,130,246,0.22); }

/* ── HOW-IT-WORKS IMAGE ── */
[data-theme="dark"] .fl-how-img {
    border-color: rgba(255,255,255,0.07);
    box-shadow: 0 4px 24px rgba(0,0,0,0.35);
}

/* ═══════════════════════════════════════════════
   ABOUT US PAGE — inline style overrides
═══════════════════════════════════════════════ */
[data-theme="dark"] .au-section-title { color: #f1f5f9; }
[data-theme="dark"] .au-body-text     { color: #94a3b8; }

[data-theme="dark"] .au-card {
    background: rgba(15,23,42,0.97);
    border-color: rgba(255,255,255,0.07);
    box-shadow: 0 1px 4px rgba(0,0,0,0.35);
}
[data-theme="dark"] .au-card:hover {
    border-color: rgba(59,130,246,0.35);
    box-shadow: 0 6px 24px rgba(37,99,235,0.12);
}
[data-theme="dark"] .au-card-title { color: #f1f5f9; }
[data-theme="dark"] .au-card-desc  { color: #94a3b8; }

[data-theme="dark"] .au-list li      { border-bottom-color: rgba(255,255,255,0.05); }
[data-theme="dark"] .au-list-title   { color: #f1f5f9; }
[data-theme="dark"] .au-list-desc    { color: #94a3b8; }

[data-theme="dark"] .au-cta {
    background: linear-gradient(135deg, rgba(37,99,235,0.18), rgba(124,58,237,0.12));
    border-color: rgba(59,130,246,0.25);
}
[data-theme="dark"] .au-cta-title { color: #f1f5f9; }
[data-theme="dark"] .au-cta-desc  { color: #94a3b8; }

/* Amber CTA light section at the bottom of About Us */
[data-theme="dark"] .au-cta-light                    { background: #0d1829; }
[data-theme="dark"] .au-cta-light .au-cta            { background: transparent; border-color: rgba(232,164,74,0.25); }
[data-theme="dark"] .au-cta-light .au-cta-title      { color: #f1f5f9; }
[data-theme="dark"] .au-cta-light .au-cta-desc       { color: #94a3b8; }
[data-theme="dark"] .au-cta-light .fl-nav-btn-secondary {
    border-color: rgba(255,255,255,0.14) !important;
    color: #94a3b8 !important;
}
[data-theme="dark"] .au-cta-light .fl-nav-btn-secondary:hover {
    border-color: rgba(255,255,255,0.28) !important;
    color: #f1f5f9 !important;
}

[data-theme="dark"] .au-story-img { border-color: rgba(255,255,255,0.07); }

/* ═══════════════════════════════════════════════
   PRICING PAGE — inline style overrides
═══════════════════════════════════════════════ */

/* Billing toggle */
[data-theme="dark"] .billing-toggle {
    background: rgba(15,23,42,0.97);
    border-color: rgba(255,255,255,0.08);
}
[data-theme="dark"] .billing-toggle-btn          { color: #94a3b8; }
[data-theme="dark"] .billing-toggle-btn.active   {
    background: rgba(37,99,235,0.20);
    color: #93c5fd;
    border-color: rgba(59,130,246,0.35);
}

/* Comparison table */
[data-theme="dark"] .comp-section-title { color: #f1f5f9; }
[data-theme="dark"] .comp-section-sub   { color: #94a3b8; }

[data-theme="dark"] .comp-wrap {
    border-color: rgba(255,255,255,0.07);
    box-shadow: 0 2px 12px rgba(0,0,0,0.35);
}
[data-theme="dark"] .comp-row {
    background: rgba(15,23,42,0.97);
    border-bottom-color: rgba(255,255,255,0.04);
}
[data-theme="dark"] .comp-row:hover { background: rgba(15,23,42,0.80); }
[data-theme="dark"] .comp-cell      { color: #94a3b8; }

[data-theme="dark"] .comp-val             { border-left-color: rgba(255,255,255,0.04); }
[data-theme="dark"] .comp-val.premium     { border-left-color: rgba(59,130,246,0.14); }
[data-theme="dark"] .comp-val.enterprise  { border-left-color: rgba(139,92,246,0.14); }

/* Amber bottom CTA on Pricing */
[data-theme="dark"] .pp-cta-wrap                    { background: #0d1829; }
[data-theme="dark"] .pp-cta-wrap .pp-cta            { background: transparent; border-color: rgba(232,164,74,0.25); }
[data-theme="dark"] .pp-cta-wrap .pp-cta h3         { color: #f1f5f9; }
[data-theme="dark"] .pp-cta-wrap .pp-cta p          { color: #94a3b8; }
[data-theme="dark"] .pp-cta-wrap .btn-cta-s         { border-color: rgba(255,255,255,0.14); color: #94a3b8; }
[data-theme="dark"] .pp-cta-wrap .btn-cta-s:hover   {
    border-color: rgba(255,255,255,0.30);
    color: #f1f5f9;
    background: rgba(255,255,255,0.04);
}

/* .fl-theme-toggle base styles are in _Layout.cshtml inline <style> */

/* ═══════════════════════════════════════════════
   LEGAL AGREEMENT PAGES (pp-* classes)
   Covers: DistanceSales, RefundPolicy,
           DeliveryPolicy, ConfidentialityAgreement
═══════════════════════════════════════════════ */

/* Hero section */
[data-theme="dark"] .pp-hero {
    border-bottom-color: rgba(255,255,255,0.08);
}
[data-theme="dark"] .pp-hero-label   { color: #60a5fa; }
[data-theme="dark"] .pp-hero-title   { color: #f1f5f9; }
[data-theme="dark"] .pp-meta-item    { color: #64748b; }
[data-theme="dark"] .pp-meta-item span { color: #94a3b8; }

/* Language toggle buttons */
[data-theme="dark"] .lang-btn {
    border-color: rgba(255,255,255,0.14);
    color: #64748b;
}
[data-theme="dark"] .lang-btn:hover:not(.active) {
    border-color: rgba(255,255,255,0.28);
    color: #94a3b8;
}

/* Section headings & body text */
[data-theme="dark"] .pp-section-heading { color: #60a5fa; }
[data-theme="dark"] .pp-section-title   { color: #f1f5f9; }

[data-theme="dark"] .pp-text           { color: #94a3b8; }
[data-theme="dark"] .pp-text strong,
[data-theme="dark"] .pp-text b         { color: #e2e8f0; }

[data-theme="dark"] .pp-list li        { color: #94a3b8; }
[data-theme="dark"] .pp-list li strong,
[data-theme="dark"] .pp-list li b      { color: #e2e8f0; }

[data-theme="dark"] .pp-steps li       { color: #94a3b8; }
[data-theme="dark"] .pp-steps li strong,
[data-theme="dark"] .pp-steps li b     { color: #e2e8f0; }

[data-theme="dark"] .pp-divider        { border-top-color: rgba(255,255,255,0.08); }

/* Info / warning / success boxes */
[data-theme="dark"] .pp-highlight-box {
    background: rgba(37,99,235,0.08);
    border-color: rgba(59,130,246,0.22);
}
[data-theme="dark"] .pp-warning-box {
    background: rgba(217,119,6,0.08);
    border-color: rgba(245,158,11,0.22);
}
[data-theme="dark"] .pp-success-box {
    background: rgba(22,163,74,0.08);
    border-color: rgba(34,197,94,0.22);
}

/* Table */
[data-theme="dark"] .pp-table th {
    background: rgba(15,23,42,0.97);
    color: #cbd5e1;
    border-color: rgba(255,255,255,0.08);
}
[data-theme="dark"] .pp-table td {
    color: #94a3b8;
    border-color: rgba(255,255,255,0.08);
}

/* Links */
[data-theme="dark"] .pp-contact-link       { color: #60a5fa; }
[data-theme="dark"] .pp-contact-link:hover { color: #93c5fd; }

/* Renewal block (Article 4a) */
[data-theme="dark"] .pp-renewal-block {
    border-color: rgba(255,255,255,0.08);
}
[data-theme="dark"] .pp-renewal-row {
    border-bottom-color: rgba(255,255,255,0.06);
}
[data-theme="dark"] .pp-renewal-label { color: #94a3b8; }
[data-theme="dark"] .pp-renewal-value { color: #94a3b8; }
[data-theme="dark"] .pp-renewal-value strong { color: #e2e8f0; }
[data-theme="dark"] .pp-renewal-value a { color: #60a5fa; }

[data-theme="dark"] .pp-plan-pill {
    background: rgba(15,23,42,0.97);
    border-color: rgba(255,255,255,0.10);
    color: #cbd5e1;
}
[data-theme="dark"] .pp-plan-pill strong { color: #f1f5f9; }
[data-theme="dark"] .pp-plan-pill.ai {
    background: rgba(139,92,246,0.10);
    border-color: rgba(139,92,246,0.28);
    color: #c4b5fd;
}
[data-theme="dark"] .pp-plan-pill.ai strong { color: #ddd6fe; }

/* ═══════════════════════════════════════════════
   FEATURES PAGE (fp-*) — dark mode overrides
═══════════════════════════════════════════════ */

/* Overview grid */
[data-theme="dark"] .fp-overview       { background: #0d1829; }
[data-theme="dark"] .fp-overview-title { color: #f1f5f9 !important; }
[data-theme="dark"] .fp-overview-sub   { color: #94a3b8; }

[data-theme="dark"] .fp-card           { background: rgba(15,23,42,0.97); border-color: rgba(255,255,255,0.07); }
[data-theme="dark"] .fp-card:hover     { border-color: rgba(59,130,246,0.35); box-shadow: 0 8px 32px rgba(59,130,246,0.10); }
[data-theme="dark"] .fp-card-title     { color: #f1f5f9; }
[data-theme="dark"] .fp-card-desc      { color: #94a3b8; }

/* Light / soft feature sections */
[data-theme="dark"] .fp-section.light  { background: #0d1829; }
[data-theme="dark"] .fp-section.soft   { background: #0f1f3d; }
[data-theme="dark"] .fp-section.light .fp-section-h2,
[data-theme="dark"] .fp-section.soft  .fp-section-h2  { color: #f1f5f9 !important; }
[data-theme="dark"] .fp-section.light .fp-section-desc,
[data-theme="dark"] .fp-section.soft  .fp-section-desc { color: #94a3b8; }
[data-theme="dark"] .fp-section.light .fp-bullet,
[data-theme="dark"] .fp-section.soft  .fp-bullet       { color: #94a3b8; }
/* Inline-styled text elements in soft sections */
[data-theme="dark"] .fp-section.soft  p[style*="color"],
[data-theme="dark"] .fp-section.soft  div[style*="color:#475569"] { color: #94a3b8 !important; }
/* Screenshot inline border in light sections */
[data-theme="dark"] .fp-section.light .fp-screenshot   { border-color: rgba(255,255,255,0.07) !important; box-shadow: 0 12px 48px rgba(0,0,0,0.40) !important; }

/* Plan comparison table */
[data-theme="dark"] .fp-plan-section    { background: #0f1f3d; }
[data-theme="dark"] .fp-plan-table-wrap { border-color: rgba(255,255,255,0.07); box-shadow: 0 2px 12px rgba(0,0,0,0.35); }
[data-theme="dark"] .fp-plan-row        { background: rgba(15,23,42,0.97); border-bottom-color: rgba(255,255,255,0.04); }
[data-theme="dark"] .fp-plan-row:hover  { background: rgba(15,23,42,0.80); }
[data-theme="dark"] .fp-plan-cell       { color: #94a3b8; }
[data-theme="dark"] .fp-plan-val        { border-left-color: rgba(255,255,255,0.04); }
[data-theme="dark"] .fp-plan-val.blue   { border-left-color: rgba(59,130,246,0.14); }
[data-theme="dark"] .fp-plan-val.amber  { border-left-color: rgba(245,158,11,0.18); }
[data-theme="dark"] .fp-plan-val.purple { border-left-color: rgba(139,92,246,0.14); }

/* CTA (amber card on light bg) */
[data-theme="dark"] .fp-cta-wrap        { background: #0d1829; }
[data-theme="dark"] .fp-cta             { background: transparent; border-color: rgba(232,164,74,0.25); }
[data-theme="dark"] .fp-cta h3          { color: #f1f5f9; }
[data-theme="dark"] .fp-cta p           { color: #94a3b8; }
[data-theme="dark"] .fp-btn-s           { color: #94a3b8; border-color: rgba(255,255,255,0.14); }
[data-theme="dark"] .fp-btn-s:hover     { border-color: rgba(255,255,255,0.30); color: #f1f5f9; background: rgba(255,255,255,0.04); }

/* ═══════════════════════════════════════════════
   AI SQL ASSISTANT PAGE (ai-*) — dark mode overrides
═══════════════════════════════════════════════ */

/* How it works */
[data-theme="dark"] .ai-how             { background: #0d1829; }
[data-theme="dark"] .ai-how-title       { color: #f1f5f9; }
[data-theme="dark"] .ai-how-sub         { color: #94a3b8; }
[data-theme="dark"] .ai-step            { border-bottom-color: rgba(255,255,255,0.05); }
[data-theme="dark"] .ai-step-body h4    { color: #f1f5f9; }
[data-theme="dark"] .ai-step-body p     { color: #94a3b8; }

/* Feature cards */
[data-theme="dark"] .ai-features        { background: #0f1f3d; }
[data-theme="dark"] .ai-feat-card       { background: rgba(15,23,42,0.97); border-color: rgba(255,255,255,0.07); }
[data-theme="dark"] .ai-feat-card:hover { border-color: rgba(124,58,237,0.30); box-shadow: 0 8px 32px rgba(124,58,237,0.10); }
[data-theme="dark"] .ai-feat-h3         { color: #f1f5f9; }
[data-theme="dark"] .ai-feat-desc       { color: #94a3b8; }
/* Bullet list items have inline style color:#475569 */
[data-theme="dark"] .ai-feat-card-head li { color: #94a3b8 !important; }

/* AI models section */
[data-theme="dark"] .ai-models-section   { background: #0d1829; }
[data-theme="dark"] .ai-model-card       { background: rgba(15,23,42,0.97); border-color: rgba(255,255,255,0.07); }
[data-theme="dark"] .ai-model-card:hover { border-color: rgba(124,58,237,0.30); }
[data-theme="dark"] .ai-model-name       { color: #f1f5f9; }
[data-theme="dark"] .ai-model-sub        { color: #64748b; }
[data-theme="dark"] .ai-model-tag        { background: rgba(255,255,255,0.04); border-color: rgba(255,255,255,0.08); color: #64748b; }

/* Quota / plan table */
[data-theme="dark"] .ai-quota-section    { background: #0f1f3d; }
[data-theme="dark"] .ai-quota-table-wrap { border-color: rgba(255,255,255,0.07); box-shadow: 0 2px 12px rgba(0,0,0,0.35); }
[data-theme="dark"] .ai-quota-row        { background: rgba(15,23,42,0.97); border-bottom-color: rgba(255,255,255,0.04); }
[data-theme="dark"] .ai-quota-row:hover  { background: rgba(15,23,42,0.80); }
[data-theme="dark"] .ai-quota-cell       { color: #94a3b8; }
[data-theme="dark"] .ai-quota-val        { border-left-color: rgba(255,255,255,0.04); }
[data-theme="dark"] .ai-quota-val.purple { border-left-color: rgba(139,92,246,0.14); }
[data-theme="dark"] .ai-quota-val.amber  { border-left-color: rgba(245,158,11,0.18); }
