/* ============================================================
   Light Theme Overrides — Premium IB
   Navy hero + White content + Gold accents
   ============================================================ */

/* ── MARKETING: Section backgrounds ── */
.df-section--dark {
  background: var(--df-bg-navy);
  color: var(--df-text-on-dark);
}
.df-section--dark .df-section__subtitle { color: var(--df-text-on-dark-2); }
.df-section--dark .df-section__pill { background: rgba(255,255,255,0.08); border-color: rgba(255,255,255,0.15); color: rgba(255,255,255,0.8); }

.df-section--surface {
  background: var(--df-bg-light);
  color: var(--df-text-primary);
}
.df-section--surface .df-section__subtitle { color: var(--df-text-secondary); }
.df-section--surface .df-section__pill { background: var(--df-blue-subtle); border-color: var(--df-blue-border); color: var(--df-blue); }

/* ── Pain cards (on dark navy bg) ── */
.df-pain-card {
  background: var(--df-bg-navy-surface);
  border-color: rgba(255,255,255,0.08);
}
.df-pain-card:hover { border-color: rgba(255,255,255,0.15); }
.df-pain-card__stat { color: var(--df-text-on-dark); }
.df-pain-card__title { color: var(--df-text-on-dark); }
.df-pain-card__desc { color: var(--df-text-on-dark-3); }
.df-pain-card__icon { background: rgba(229,83,75,0.12); color: #e5534b; }

/* ── Product cards (on light bg) ── */
.df-product-card {
  background: #fff;
  border-color: var(--df-border-2);
  box-shadow: var(--df-shadow-sm);
}
.df-product-card:hover {
  border-color: var(--df-accent-border);
  box-shadow: var(--df-shadow-md);
}
.df-product-card__name { color: var(--df-text-primary); }
.df-product-card__desc { color: var(--df-text-secondary); }
.df-product-card__link { color: var(--df-accent); }
.df-product-card__icon { background: var(--df-accent-glow); color: var(--df-accent); }

/* ── Social proof (on dark navy) ── */
.df-proof__logo {
  background: var(--df-bg-navy-surface);
  border-color: rgba(255,255,255,0.08);
  color: var(--df-text-on-dark-3);
}
.df-proof__logo i { color: var(--df-text-on-dark-4); }
.df-testimonial {
  background: var(--df-bg-navy-surface);
  border-color: rgba(255,255,255,0.08);
  border-left-color: var(--df-amber-bright);
}
.df-testimonial__quote { color: var(--df-text-on-dark-2); }
.df-testimonial__author { color: var(--df-text-on-dark); }
.df-testimonial__role { color: var(--df-text-on-dark-3); }

/* ── Ticker ── */
.df-ticker {
  background: var(--df-bg-navy);
  border-color: rgba(255,255,255,0.06);
}
.df-ticker__value { color: var(--df-amber-bright); }
.df-ticker__label { color: var(--df-text-on-dark-3); }
.df-ticker__sep { background: var(--df-text-on-dark-4); }

/* ── CTA section ── */
.df-cta-section {
  background: linear-gradient(180deg, var(--df-bg-navy-light), var(--df-bg-navy));
}
.df-cta-section::before { background: linear-gradient(90deg, transparent, rgba(255,255,255,0.1), transparent); }
.df-cta-section__title { color: var(--df-text-on-dark); }
.df-cta-section__subtitle { color: var(--df-text-on-dark-2); }

/* ── Footer ── */
.df-footer { background: var(--df-bg-navy); border-top-color: rgba(255,255,255,0.06); }
.df-footer__logo { color: var(--df-text-on-dark); }
.df-footer__tagline { color: var(--df-text-on-dark-3); }
.df-footer__backed { color: var(--df-text-on-dark-4); border-color: rgba(255,255,255,0.1); }
.df-footer__col-title { color: var(--df-text-on-dark-4); }
.df-footer__col-link { color: var(--df-text-on-dark-3); }
.df-footer__col-link:hover { color: var(--df-text-on-dark); }
.df-footer__bottom { border-top-color: rgba(255,255,255,0.06); color: var(--df-text-on-dark-4); }

/* ── Nav: transparent on hero (dark), glass on scroll (light) ── */
.df-nav.is-scrolled {
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(20px) saturate(180%);
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.06);
}
.df-nav.is-scrolled .df-nav__link { color: var(--df-text-secondary); }
.df-nav.is-scrolled .df-nav__link:hover { color: var(--df-text-primary); }
.df-nav.is-scrolled .df-nav__logo { color: var(--df-text-primary); }

/* ── Hero stays dark navy ── */
.df-hero { background: var(--df-bg-navy); }
.df-hero__bg {
  background:
    radial-gradient(ellipse 80% 60% at 20% 40%, rgba(37,99,235,0.12), transparent),
    radial-gradient(ellipse 60% 50% at 80% 30%, rgba(99,102,241,0.08), transparent);
}
.df-hero__grid { background-image: radial-gradient(rgba(255,255,255,0.04) 1px, transparent 1px); }

/* ── Buttons: accent blue primary ── */
.df-btn--primary { background: var(--df-accent); }
.df-btn--primary:hover { background: var(--df-accent-bright); box-shadow: var(--df-shadow-blue); }
.df-nav__cta { background: var(--df-accent); }
.df-nav__cta:hover { background: var(--df-accent-bright); }

/* ── Ghost buttons on light bg ── */
.df-section--surface .df-btn--ghost,
.df-section--light .df-btn--ghost {
  color: var(--df-text-secondary);
  border-color: var(--df-border-2);
}
.df-section--surface .df-btn--ghost:hover,
.df-section--light .df-btn--ghost:hover {
  color: var(--df-text-primary);
  border-color: var(--df-border-3);
  background: var(--df-bg-elevated);
}

/* ── APP: Light main content ── */
.df-app { background: var(--df-bg-light); }
.df-main { background: var(--df-bg-light); }

/* Sidebar stays dark navy */
.df-sidebar { background: var(--df-bg-navy); }
.df-sidebar__logo { border-bottom-color: rgba(255,255,255,0.06); }
.df-sidebar__logo-text { color: var(--df-text-on-dark); }
.df-sidebar__logo-sub { color: var(--df-text-on-dark-4); }
.df-sidebar__group-label { color: var(--df-text-on-dark-4); }
.df-sidebar__link { color: var(--df-text-on-dark-3); }
.df-sidebar__link:hover { color: var(--df-text-on-dark-2); background: rgba(255,255,255,0.05); }
.df-sidebar__link.active { color: #fff; background: rgba(37,99,235,0.2); }
.df-sidebar__link.active i { color: var(--df-accent-bright); }
.df-sidebar__user { border-top-color: rgba(255,255,255,0.06); }
.df-sidebar__user-name { color: var(--df-text-on-dark); }
.df-sidebar__user-role { color: var(--df-text-on-dark-4); }

/* Topbar: light */
.df-topbar { background: #fff; border-bottom-color: var(--df-border); }
.df-topbar__breadcrumb { color: var(--df-text-tertiary); }
.df-topbar__breadcrumb-active { color: var(--df-text-primary); }
.df-topbar__search { background: var(--df-bg-elevated); border-color: var(--df-border); color: var(--df-text-muted); }
.df-topbar__icon-btn { color: var(--df-text-tertiary); }
.df-topbar__icon-btn:hover { background: var(--df-bg-elevated); color: var(--df-text-secondary); }

/* Cards: white on light bg */
.df-card { background: #fff; border-color: var(--df-border); box-shadow: var(--df-shadow-xs); }
.df-card:hover { border-color: var(--df-border-2); }
.df-kpi-tile { background: #fff; border-color: var(--df-border); box-shadow: var(--df-shadow-xs); }
.df-deal-card { background: #fff; border-color: var(--df-border); box-shadow: var(--df-shadow-xs); }
.df-deal-card:hover { border-color: var(--df-accent-border); box-shadow: var(--df-shadow-md); }
.df-deal-card__code { color: var(--df-text-primary); }
.df-deal-card__target { color: var(--df-text-secondary); }
.df-deal-card__meta { color: var(--df-text-tertiary); }
.df-deal-card__activity { color: var(--df-text-muted); }
.df-deal-card__team-avatar { border-color: #fff; }

/* Quick actions: light */
.df-quick-action { background: #fff; border-color: var(--df-border); box-shadow: var(--df-shadow-xs); }
.df-quick-action:hover { border-color: var(--df-accent-border); background: var(--df-bg-light); }
.df-quick-action--primary { background: linear-gradient(135deg, rgba(37,99,235,0.06), rgba(37,99,235,0.02)); border-color: var(--df-accent-border); }
.df-quick-action--primary:hover { background: linear-gradient(135deg, rgba(37,99,235,0.10), rgba(37,99,235,0.04)); }
.df-quick-action__label { color: var(--df-text-primary); }
.df-quick-action__desc { color: var(--df-text-muted); }

/* Activity */
.df-activity-item { border-bottom-color: var(--df-border); }
.df-activity-item__text { color: var(--df-text-secondary); }
.df-activity-item__text strong { color: var(--df-text-primary); }
.df-activity-item__time { color: var(--df-text-muted); }

/* Page header */
.df-page-header__title { color: var(--df-text-primary); }
.df-page-header__subtitle { color: var(--df-text-tertiary); }

/* Tables */
.df-table th { color: var(--df-text-tertiary); border-bottom-color: var(--df-border-2); }
.df-table td { color: var(--df-text-secondary); border-bottom-color: var(--df-border); }
.df-table tr:hover td { background: var(--df-bg-elevated); }

/* Badge */
.df-badge--blue { background: rgba(37,99,235,0.08); color: var(--df-accent); }
.df-badge--green { background: rgba(13,150,104,0.08); color: var(--df-green); }
.df-badge--amber { background: rgba(184,134,11,0.08); color: var(--df-amber); }
.df-badge--red { background: rgba(220,38,38,0.06); color: var(--df-red); }
.df-badge--gray { background: var(--df-bg-elevated); color: var(--df-text-muted); }

/* Progress bar */
.df-progress { background: var(--df-bg-elevated); }
.df-progress__bar--blue { background: var(--df-accent); }

/* Command palette */
.df-cmd-overlay { background: rgba(12, 26, 46, 0.4); }
.df-cmd-palette { background: #fff; border-color: var(--df-border-2); }
.df-cmd-palette__input-wrap { border-bottom-color: var(--df-border); }
.df-cmd-palette__input-wrap i { color: var(--df-text-muted); }
.df-cmd-palette__input { color: var(--df-text-primary); }
.df-cmd-palette__group-label { color: var(--df-text-muted); }
.df-cmd-palette__item { color: var(--df-text-secondary); }
.df-cmd-palette__item:hover, .df-cmd-palette__item.active { background: var(--df-bg-elevated); color: var(--df-text-primary); }
.df-cmd-palette__item i { color: var(--df-text-muted); }
.df-cmd-palette__item:hover i { color: var(--df-accent); }

/* Demo banner: gold instead of blue */
.df-demo-banner { background: linear-gradient(90deg, var(--df-bg-navy), var(--df-bg-navy-light)); }

/* Toast */
.df-toast { background: #fff; border-color: var(--df-border-2); color: var(--df-text-secondary); }

/* ── DEALFORGE MODULE OVERRIDES ── */

/* Wizard forms */
.df-form-input { background: #fff; border-color: var(--df-border-2); color: var(--df-text-primary); }
.df-form-input:focus { border-color: var(--df-accent); box-shadow: 0 0 0 3px var(--df-accent-glow); }
.df-form-label { color: var(--df-text-primary); }
.df-dropzone { border-color: var(--df-border-2); }
.df-dropzone:hover { border-color: var(--df-accent-border); background: var(--df-accent-glow); }
.df-dropzone__file { background: var(--df-bg-elevated); border-color: var(--df-border); color: var(--df-text-secondary); }

/* Generation progress */
.df-gen-section { background: #fff; border-color: var(--df-border); }
.df-gen-section.active { background: var(--df-accent-glow); border-color: var(--df-accent-border); }
.df-gen-section.complete { border-color: rgba(13,150,104,0.2); }
.df-gen-section.pending .df-gen-section__name { color: var(--df-text-muted); }
.df-gen-section.active .df-gen-section__name { color: var(--df-text-primary); }
.df-gen-section.active .df-gen-section__icon { background: var(--df-accent); }
.df-gen-section.complete .df-gen-section__icon { background: var(--df-green); }
.df-gen-section__meta { color: var(--df-text-muted); }
.df-gen-section.complete .df-gen-section__meta { color: var(--df-green); }
.df-gen-preview { background: #fff; border-color: var(--df-border); }
.df-gen-preview__title { color: var(--df-text-primary); }
.df-gen-preview__text { color: var(--df-text-secondary); }

/* CIM Editor */
.df-editor-sidebar { background: var(--df-bg-light); border-right-color: var(--df-border); }
.df-editor-sidebar__title { color: var(--df-text-muted); }
.df-editor-section-link { color: var(--df-text-tertiary); }
.df-editor-section-link:hover { background: var(--df-bg-elevated); color: var(--df-text-secondary); }
.df-editor-section-link.active { background: var(--df-accent-glow); color: var(--df-accent); border-left-color: var(--df-accent); }
.df-editor-section-link__count { color: var(--df-text-muted); }
.df-editor-content { background: #fff; }
.df-editor-content h2 { color: var(--df-text-primary); }
.df-editor-content h3 { color: var(--df-text-primary); }
.df-editor-content p { color: var(--df-text-secondary); }
.df-editor-content strong { color: var(--df-text-primary); }
.cim-financial-table thead th { background: var(--df-bg-elevated); color: var(--df-text-tertiary); border-bottom-color: var(--df-border-2); }
.cim-financial-table tbody td { color: var(--df-text-secondary); border-bottom-color: var(--df-border); }
.cim-financial-table tbody td:first-child { color: var(--df-text-tertiary); }
.cim-financial-table tbody tr:hover td { background: var(--df-bg-elevated); }

/* AI Panel: stays dark for contrast */
.df-ai-panel { background: var(--df-bg-navy); border-left-color: var(--df-border); }
.df-ai-panel__header { color: var(--df-accent-bright); border-bottom-color: rgba(255,255,255,0.06); }
.df-ai-panel__chips { border-bottom-color: rgba(255,255,255,0.06); }
.df-ai-chip { background: rgba(37,99,235,0.15); border-color: rgba(37,99,235,0.25); color: var(--df-accent-bright); }
.df-ai-chip:hover { background: var(--df-accent); color: #fff; }
.df-ai-msg--user { background: var(--df-bg-navy-surface); color: var(--df-text-on-dark); }
.df-ai-msg--ai { background: var(--df-bg-navy-light); border-color: rgba(255,255,255,0.06); color: var(--df-text-on-dark-2); }
.df-ai-panel__input { border-top-color: rgba(255,255,255,0.06); }
.df-ai-panel__input-field { background: var(--df-bg-navy-surface); border-color: rgba(255,255,255,0.1); color: var(--df-text-on-dark); }

/* Editor toolbar */
.df-editor-toolbar { background: #fff; border-bottom-color: var(--df-border); }
.df-editor-toolbar__btn { color: var(--df-text-tertiary); }
.df-editor-toolbar__btn:hover { background: var(--df-bg-elevated); color: var(--df-text-secondary); }
.df-editor-toolbar__version { background: var(--df-bg-elevated); border-color: var(--df-border); color: var(--df-text-tertiary); }

/* Slides (pitchbook) — keep dark slide cards */
.slide-filmstrip { background: var(--df-bg-light); border-right-color: var(--df-border); }
.slide-thumb { background: #fff; border-color: var(--df-border); }
.slide-thumb.active { border-color: var(--df-accent); }
.slide-thumb__num { color: var(--df-text-muted); }
.slide-thumb__title { color: var(--df-text-secondary); }
.slide-thumb__lines .slide-thumb__line { background: var(--df-bg-elevated); }
.slide-preview { background: var(--df-bg-elevated); }
/* Slide cards stay dark navy (they represent actual PPT slides) */

/* ── Scrollbar for light mode ── */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: rgba(0, 0, 0, 0.12); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: rgba(0, 0, 0, 0.2); }
/* Keep dark scrollbar in dark panels */
.df-sidebar::-webkit-scrollbar-thumb,
.df-ai-panel::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, 0.12); }
