/* Version: v1.0.0 (2026-08-01) | Admin/Partner theme tokens — Light default · Dark charcoal */
/* Rule: never paint full page with HOAM Blue — accent only */

:root {
  --bg-main: #F8FAFC;
  --bg-elevated: #FFFFFF;
  --card-bg: #FFFFFF;
  --sidebar-bg: #FFFFFF;
  --topbar-bg: #FFFFFF;
  --border-subtle: #E5E7EB;
  --text-primary: #0F172A;
  --text-secondary: #64748B;
  --text-inverse: #FFFFFF;
  --accent: #0F5C61;
  --accent-mid: #148A8F;
  --accent-soft: rgba(15, 92, 97, 0.08);
  --accent-mid-soft: rgba(15, 92, 97, 0.14);
  --danger: #B91C1C;
  --danger-soft: #FEF2F2;
  --danger-border: #F87171;
  --shadow-soft: 0 4px 16px rgba(15, 23, 42, 0.04);

  /* bridge → existing admin-theme vars */
  --adm-wash: var(--bg-main);
  --adm-white: var(--card-bg);
  --adm-sidebar-bg: var(--sidebar-bg);
  --adm-topbar-bg: var(--topbar-bg);
  --adm-line: var(--border-subtle);
  --adm-text: var(--text-primary);
  --adm-muted: var(--text-secondary);
  --adm-navy: var(--accent);
  --adm-blue: var(--accent-mid);
  --adm-accent-soft: var(--accent-soft);
  --adm-accent-mid: var(--accent-mid-soft);
}

html.dark {
  color-scheme: dark;
  --bg-main: #0F172A;
  --bg-elevated: #1E293B;
  --card-bg: #1E293B;
  --sidebar-bg: #1E293B;
  --topbar-bg: #1E293B;
  --border-subtle: #334155;
  --text-primary: #F8FAFC;
  --text-secondary: #94A3B8;
  --text-inverse: #0F172A;
  --accent: #0F5C61;
  --accent-mid: #148A8F;
  --accent-soft: rgba(15, 92, 97, 0.22);
  --accent-mid-soft: rgba(20, 138, 143, 0.28);
  --danger: #FCA5A5;
  --danger-soft: rgba(248, 113, 113, 0.12);
  --danger-border: #F87171;
  --shadow-soft: 0 8px 24px rgba(0, 0, 0, 0.35);

  --adm-navy-deep: #020617;
  --adm-gold: #E8C547;
  --adm-success: #34D399;
}

/* Surfaces that still hardcode white */
html.dark body.adm-body,
html.dark body.adm-body .adm-main,
html.dark body.ptn-console .adm-main {
  background: var(--bg-main) !important;
  color: var(--text-primary);
}

html.dark .adm-sidebar,
html.dark .ptn-sidebar.adm-sidebar {
  background: var(--sidebar-bg) !important;
  border-right-color: var(--border-subtle) !important;
  box-shadow: none !important;
  color: var(--text-primary);
}

html.dark .adm-topbar,
html.dark body.ptn-console .adm-topbar {
  background: var(--topbar-bg) !important;
  border-color: var(--border-subtle) !important;
  box-shadow: none !important;
}

html.dark .adm-card,
html.dark body.ptn-console .adm-card,
html.dark body.ptn-console .adm-card--blue,
html.dark body.ptn-console .adm-card--navy,
html.dark body.ptn-console .adm-card--gold,
html.dark .ptn-hub-chrome,
html.dark .adm-user,
html.dark .adm-menu-btn,
html.dark .ptn-input,
html.dark .adm-input,
html.dark .ptn-select,
html.dark .adm-select,
html.dark .ptn-textarea,
html.dark .adm-data-table,
html.dark .ptn-preview-frame {
  background: var(--card-bg) !important;
  color: var(--text-primary) !important;
  border-color: var(--border-subtle) !important;
}

html.dark .adm-page-title,
html.dark .adm-card-head,
html.dark .adm-brand-title,
html.dark .adm-kpi-value,
html.dark .adm-breadcrumb strong,
html.dark body.ptn-console .adm-page-title {
  color: var(--text-primary) !important;
}

html.dark .adm-page-sub,
html.dark .adm-kpi-label,
html.dark .adm-nav-desc,
html.dark .adm-muted,
html.dark .ptn-hint,
html.dark .adm-brand-eyebrow,
html.dark body.ptn-console .adm-kpi-label {
  color: var(--text-secondary) !important;
}

html.dark .adm-nav-link,
html.dark .ptn-lnb-flat,
html.dark .ptn-lnb-item {
  color: #CBD5E1 !important;
}

html.dark .ptn-lnb-flat:hover,
html.dark .adm-nav-link:hover {
  background: rgba(148, 163, 184, 0.08) !important;
  color: var(--accent) !important;
}

html.dark .ptn-lnb-flat.is-active,
html.dark .adm-nav-link.is-active {
  background: var(--accent-soft) !important;
  color: var(--accent) !important;
  border-color: var(--border-subtle) !important;
  box-shadow: inset 3px 0 0 var(--accent) !important;
}

html.dark .ptn-lnb-parent-icon,
html.dark .adm-nav-icon,
html.dark .adm-brand-icon {
  background: #0F172A !important;
  border-color: var(--border-subtle) !important;
  color: var(--accent) !important;
}

html.dark .ptn-hub-tabs .ptn-tab,
html.dark .ptn-tab {
  background: #0F172A !important;
  border-color: var(--border-subtle) !important;
  color: var(--text-secondary) !important;
}

html.dark .ptn-hub-tabs .ptn-tab.is-active,
html.dark .ptn-tab.is-active {
  background: var(--accent) !important;
  border-color: var(--accent) !important;
  color: #FFFFFF !important;
}

html.dark .adm-bottom-nav {
  background: var(--sidebar-bg) !important;
  border-top-color: var(--border-subtle) !important;
}

html.dark .adm-bn-item { color: var(--text-secondary) !important; }
html.dark .adm-bn-item.is-active { color: var(--accent) !important; }

html.dark .adm-topbar-logout {
  background: var(--danger-soft) !important;
  border-color: var(--danger-border) !important;
  color: var(--danger) !important;
}

html.dark .hoam-theme-toggle {
  background: var(--card-bg);
  border-color: var(--border-subtle);
  color: var(--text-primary);
}

html.dark .hoam-theme-seg {
  background: #0F172A;
  border-color: var(--border-subtle);
}

html.dark .hoam-theme-seg button.is-active {
  background: var(--card-bg);
  color: var(--accent);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.35);
}
