/* FunPhantom mood themes — full background + accent palettes */

html[data-fp-theme="midnight"] {
  --primary-color: #6366f1;
  --primary-dark: #4f46e5;
  --primary-light: #a5b4fc;
  --secondary-color: #06b6d4;
  --accent-color: #f59e0b;
  --bg-primary: #0f172a;
  --bg-secondary: #1e293b;
  --bg-tertiary: #334155;
  --text-primary: #f8fafc;
  --text-secondary: #cbd5e1;
  --text-muted: #94a3b8;
  --primary-gradient: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);
  --secondary-gradient: linear-gradient(135deg, #06b6d4 0%, #3b82f6 100%);
  --dark-gradient: linear-gradient(135deg, #1e293b 0%, #334155 100%);
  --glass-bg: rgba(15, 23, 42, 0.88);
  --glass-border: rgba(148, 163, 184, 0.22);
  --theme-accent: #6366f1;
  --theme-accent-2: #8b5cf6;
  --theme-accent-rgb: 99, 102, 241;
  --theme-accent-2-rgb: 139, 92, 246;
  --accent-purple: #6366f1;
  --accent-pink: #8b5cf6;
  --accent-blue: #06b6d4;
  --border-accent: rgba(99, 102, 241, 0.35);
}

html[data-fp-theme="ember"] {
  --primary-color: #f97316;
  --primary-dark: #c2410c;
  --primary-light: #fdba74;
  --secondary-color: #e11d48;
  --accent-color: #f59e0b;
  --bg-primary: #120805;
  --bg-secondary: #27110c;
  --bg-tertiary: #4a1d12;
  --text-primary: #fff7ed;
  --text-secondary: #fed7aa;
  --text-muted: #fdba74;
  --primary-gradient: linear-gradient(135deg, #f97316 0%, #e11d48 100%);
  --secondary-gradient: linear-gradient(135deg, #fb923c 0%, #f43f5e 100%);
  --dark-gradient: linear-gradient(135deg, #27110c 0%, #4a1d12 100%);
  --glass-bg: rgba(18, 8, 5, 0.9);
  --glass-border: rgba(251, 146, 60, 0.28);
  --theme-accent: #f97316;
  --theme-accent-2: #e11d48;
  --theme-accent-rgb: 249, 115, 22;
  --theme-accent-2-rgb: 225, 29, 72;
  --accent-purple: #f97316;
  --accent-pink: #e11d48;
  --accent-blue: #fb923c;
  --border-accent: rgba(249, 115, 22, 0.45);
}

html[data-fp-theme="ocean"] {
  --primary-color: #22d3ee;
  --primary-dark: #0891b2;
  --primary-light: #67e8f9;
  --secondary-color: #3b82f6;
  --accent-color: #38bdf8;
  --bg-primary: #02141c;
  --bg-secondary: #083344;
  --bg-tertiary: #155e75;
  --text-primary: #ecfeff;
  --text-secondary: #a5f3fc;
  --text-muted: #67e8f9;
  --primary-gradient: linear-gradient(135deg, #06b6d4 0%, #2563eb 100%);
  --secondary-gradient: linear-gradient(135deg, #22d3ee 0%, #60a5fa 100%);
  --dark-gradient: linear-gradient(135deg, #083344 0%, #155e75 100%);
  --glass-bg: rgba(2, 20, 28, 0.9);
  --glass-border: rgba(34, 211, 238, 0.28);
  --theme-accent: #06b6d4;
  --theme-accent-2: #3b82f6;
  --theme-accent-rgb: 6, 182, 212;
  --theme-accent-2-rgb: 59, 130, 246;
  --accent-purple: #06b6d4;
  --accent-pink: #38bdf8;
  --accent-blue: #22d3ee;
  --border-accent: rgba(6, 182, 212, 0.45);
}

html[data-fp-theme="neon"] {
  --primary-color: #ec4899;
  --primary-dark: #be185d;
  --primary-light: #f9a8d4;
  --secondary-color: #a855f7;
  --accent-color: #f472b6;
  --bg-primary: #07010c;
  --bg-secondary: #1a0828;
  --bg-tertiary: #3b0764;
  --text-primary: #fdf4ff;
  --text-secondary: #f5d0fe;
  --text-muted: #e879f9;
  --primary-gradient: linear-gradient(135deg, #ec4899 0%, #a855f7 100%);
  --secondary-gradient: linear-gradient(135deg, #f472b6 0%, #c084fc 100%);
  --dark-gradient: linear-gradient(135deg, #1a0828 0%, #3b0764 100%);
  --glass-bg: rgba(7, 1, 12, 0.92);
  --glass-border: rgba(236, 72, 153, 0.32);
  --theme-accent: #ec4899;
  --theme-accent-2: #a855f7;
  --theme-accent-rgb: 236, 72, 153;
  --theme-accent-2-rgb: 168, 85, 247;
  --accent-purple: #a855f7;
  --accent-pink: #ec4899;
  --accent-blue: #f472b6;
  --border-accent: rgba(236, 72, 153, 0.48);
}

html[data-fp-theme="forest"] {
  --primary-color: #34d399;
  --primary-dark: #047857;
  --primary-light: #6ee7b7;
  --secondary-color: #14b8a6;
  --accent-color: #84cc16;
  --bg-primary: #03140c;
  --bg-secondary: #0a2e1c;
  --bg-tertiary: #14532d;
  --text-primary: #ecfdf5;
  --text-secondary: #a7f3d0;
  --text-muted: #6ee7b7;
  --primary-gradient: linear-gradient(135deg, #059669 0%, #34d399 100%);
  --secondary-gradient: linear-gradient(135deg, #14b8a6 0%, #4ade80 100%);
  --dark-gradient: linear-gradient(135deg, #0a2e1c 0%, #14532d 100%);
  --glass-bg: rgba(3, 20, 12, 0.92);
  --glass-border: rgba(52, 211, 153, 0.28);
  --theme-accent: #10b981;
  --theme-accent-2: #34d399;
  --theme-accent-rgb: 16, 185, 129;
  --theme-accent-2-rgb: 52, 211, 153;
  --accent-purple: #10b981;
  --accent-pink: #34d399;
  --accent-blue: #14b8a6;
  --border-accent: rgba(16, 185, 129, 0.45);
}

html[data-fp-theme="obsidian"] {
  --primary-color: #eab308;
  --primary-dark: #ca8a04;
  --primary-light: #fde047;
  --secondary-color: #f59e0b;
  --accent-color: #facc15;
  --bg-primary: #050505;
  --bg-secondary: #121212;
  --bg-tertiary: #1f1f1f;
  --text-primary: #fafafa;
  --text-secondary: #e5e5e5;
  --text-muted: #a3a3a3;
  --primary-gradient: linear-gradient(135deg, #eab308 0%, #f59e0b 100%);
  --secondary-gradient: linear-gradient(135deg, #fde047 0%, #eab308 100%);
  --dark-gradient: linear-gradient(135deg, #121212 0%, #1f1f1f 100%);
  --glass-bg: rgba(5, 5, 5, 0.92);
  --glass-border: rgba(234, 179, 8, 0.28);
  --theme-accent: #eab308;
  --theme-accent-2: #f59e0b;
  --theme-accent-rgb: 234, 179, 8;
  --theme-accent-2-rgb: 245, 158, 11;
  --accent-purple: #eab308;
  --accent-pink: #f59e0b;
  --accent-blue: #fde047;
  --border-accent: rgba(234, 179, 8, 0.4);
}

html[data-fp-theme="crimson"] {
  --primary-color: #e11d48;
  --primary-dark: #9f1239;
  --primary-light: #fb7185;
  --secondary-color: #be123c;
  --accent-color: #fb7185;
  --bg-primary: #1a0a10;
  --bg-secondary: #2b1218;
  --bg-tertiary: #4a1d2a;
  --text-primary: #fff1f2;
  --text-secondary: #fecdd3;
  --text-muted: #fda4af;
  --primary-gradient: linear-gradient(135deg, #be123c 0%, #fb7185 100%);
  --secondary-gradient: linear-gradient(135deg, #e11d48 0%, #f43f5e 100%);
  --dark-gradient: linear-gradient(135deg, #2b1218 0%, #4a1d2a 100%);
  --glass-bg: rgba(26, 10, 16, 0.92);
  --glass-border: rgba(251, 113, 133, 0.3);
  --theme-accent: #be123c;
  --theme-accent-2: #fb7185;
  --theme-accent-rgb: 190, 18, 60;
  --theme-accent-2-rgb: 251, 113, 133;
  --accent-purple: #be123c;
  --accent-pink: #fb7185;
  --accent-blue: #e11d48;
  --border-accent: rgba(190, 18, 60, 0.45);
}

html[data-fp-theme="daylight"] {
  --primary-color: #4f46e5;
  --primary-dark: #3730a3;
  --primary-light: #6366f1;
  --secondary-color: #0284c7;
  --accent-color: #d97706;
  --bg-primary: #f1f5f9;
  --bg-secondary: #ffffff;
  --bg-tertiary: #e2e8f0;
  --text-primary: #0f172a;
  --text-secondary: #334155;
  --text-muted: #64748b;
  --primary-gradient: linear-gradient(135deg, #4f46e5 0%, #7c3aed 100%);
  --secondary-gradient: linear-gradient(135deg, #0284c7 0%, #4f46e5 100%);
  --dark-gradient: linear-gradient(135deg, #ffffff 0%, #e2e8f0 100%);
  --glass-bg: rgba(255, 255, 255, 0.86);
  --glass-border: rgba(15, 23, 42, 0.12);
  --theme-accent: #4f46e5;
  --theme-accent-2: #7c3aed;
  --theme-accent-rgb: 79, 70, 229;
  --theme-accent-2-rgb: 124, 58, 237;
  --accent-purple: #4f46e5;
  --accent-pink: #7c3aed;
  --accent-blue: #0284c7;
  --border-accent: rgba(79, 70, 229, 0.35);
}

html[data-fp-theme="sand"] {
  --primary-color: #c2410c;
  --primary-dark: #9a3412;
  --primary-light: #ea580c;
  --secondary-color: #b45309;
  --accent-color: #d97706;
  --bg-primary: #faf6ef;
  --bg-secondary: #fffdf8;
  --bg-tertiary: #efe4d4;
  --text-primary: #1c1410;
  --text-secondary: #44403c;
  --text-muted: #78716c;
  --primary-gradient: linear-gradient(135deg, #ea580c 0%, #b45309 100%);
  --secondary-gradient: linear-gradient(135deg, #f97316 0%, #d97706 100%);
  --dark-gradient: linear-gradient(135deg, #fffdf8 0%, #efe4d4 100%);
  --glass-bg: rgba(255, 253, 248, 0.9);
  --glass-border: rgba(28, 20, 16, 0.12);
  --theme-accent: #ea580c;
  --theme-accent-2: #b45309;
  --theme-accent-rgb: 234, 88, 12;
  --theme-accent-2-rgb: 180, 83, 9;
  --accent-purple: #ea580c;
  --accent-pink: #b45309;
  --accent-blue: #d97706;
  --border-accent: rgba(234, 88, 12, 0.35);
}

html[data-fp-theme="glacier"] {
  --primary-color: #0f766e;
  --primary-dark: #115e59;
  --primary-light: #14b8a6;
  --secondary-color: #0891b2;
  --accent-color: #0d9488;
  --bg-primary: #ecfeff;
  --bg-secondary: #f8fffe;
  --bg-tertiary: #cffafe;
  --text-primary: #134e4a;
  --text-secondary: #115e59;
  --text-muted: #0f766e;
  --primary-gradient: linear-gradient(135deg, #0d9488 0%, #0891b2 100%);
  --secondary-gradient: linear-gradient(135deg, #14b8a6 0%, #06b6d4 100%);
  --dark-gradient: linear-gradient(135deg, #f8fffe 0%, #cffafe 100%);
  --glass-bg: rgba(248, 255, 254, 0.9);
  --glass-border: rgba(19, 78, 74, 0.14);
  --theme-accent: #0d9488;
  --theme-accent-2: #0891b2;
  --theme-accent-rgb: 13, 148, 136;
  --theme-accent-2-rgb: 8, 145, 178;
  --accent-purple: #0d9488;
  --accent-pink: #14b8a6;
  --accent-blue: #0891b2;
  --border-accent: rgba(13, 148, 136, 0.35);
}

html[data-fp-scheme="light"] nav.navbar {
  background: var(--bg-secondary) !important;
  border-bottom: 1px solid var(--glass-border);
  box-shadow: 0 1px 0 var(--glass-border);
}
html[data-fp-scheme="light"] .navbar-dark .navbar-brand,
html[data-fp-scheme="light"] .navbar-dark .navbar-nav .nav-link,
html[data-fp-scheme="light"] .navbar-dark .navbar-toggler,
html[data-fp-scheme="light"] .navbar-brand span {
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .navbar-dark .navbar-nav .nav-link:hover {
  color: var(--theme-accent) !important;
}
html[data-fp-scheme="light"] .fp-mini-nav {
  background: var(--bg-secondary) !important;
  border-bottom: 1px solid var(--glass-border) !important;
}
html[data-fp-scheme="light"] .fp-mini-nav a { color: var(--text-secondary) !important; }
html[data-fp-scheme="light"] .fp-mini-nav a.is-on { color: var(--theme-accent) !important; }
html[data-fp-scheme="light"] footer {
  background: var(--bg-tertiary) !important;
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] footer a,
html[data-fp-scheme="light"] footer .text-white {
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .dropdown-menu {
  background: var(--bg-secondary) !important;
  border-color: var(--glass-border) !important;
}
html[data-fp-scheme="light"] .dropdown-item,
html[data-fp-scheme="light"] .dropdown-item-text,
html[data-fp-scheme="light"] .dropdown-header {
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .dropdown-item:hover {
  background: color-mix(in srgb, var(--theme-accent) 12%, transparent) !important;
}

.fp-theme-dd { position: relative; }
.fp-theme-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 36px;
  padding: 0 10px;
  border-radius: 10px;
  border: 1px solid var(--glass-border);
  background: color-mix(in srgb, var(--primary-color) 16%, transparent);
  color: var(--text-primary, #f8fafc);
  cursor: pointer;
}
.fp-theme-dd--compact .fp-theme-btn { width: 36px; padding: 0; }
.fp-theme-btn:hover {
  border-color: var(--theme-accent, var(--primary-color));
  background: color-mix(in srgb, var(--primary-color) 28%, transparent);
}
.fp-theme-swatch {
  width: 16px; height: 16px; border-radius: 999px;
  background: var(--primary-gradient);
  box-shadow: 0 0 0 2px rgba(255,255,255,.18);
  flex-shrink: 0;
}
.fp-theme-btn-label { font-size: 12px; font-weight: 700; }
.fp-theme-menu {
  min-width: 188px; padding: 8px;
  background: var(--bg-secondary) !important;
  border: 1px solid var(--glass-border) !important;
  border-radius: 14px !important;
}
.fp-theme-opt {
  display: flex; align-items: center; gap: 10px; width: 100%;
  padding: 8px 10px; border: 0; border-radius: 10px;
  background: transparent; color: var(--text-primary, #f8fafc);
  font-size: 13px; font-weight: 600; text-align: left; cursor: pointer;
}
.fp-theme-opt:hover { background: color-mix(in srgb, var(--primary-color) 16%, transparent); }
.fp-theme-opt.is-on {
  background: color-mix(in srgb, var(--primary-color) 22%, transparent);
  outline: 1px solid color-mix(in srgb, var(--primary-color) 45%, transparent);
}
.fp-theme-opt-dot {
  width: 14px; height: 14px; border-radius: 999px; flex-shrink: 0;
  box-shadow: 0 0 0 1px rgba(255,255,255,.2);
}

.fp-mini-nav a.is-on { color: var(--primary-light) !important; }

html[data-fp-theme] .btn-primary,
html[data-fp-theme] .btn-primary:focus {
  background: var(--primary-gradient) !important;
  border-color: var(--theme-accent) !important;
  color: #fff !important;
}
html[data-fp-theme] .btn-primary:hover { filter: brightness(1.06); }
html[data-fp-theme] .btn-outline-primary {
  color: var(--theme-accent) !important;
  border-color: var(--theme-accent) !important;
}
html[data-fp-theme] .btn-outline-primary:hover {
  background: var(--primary-gradient) !important;
  color: #fff !important;
  border-color: transparent !important;
}
html[data-fp-theme] .text-primary { color: var(--theme-accent) !important; }
html[data-fp-theme] .bg-primary { background: var(--theme-accent) !important; }

.fp-theme-group-label {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--text-muted, #94a3b8);
  margin: 4px 0 8px;
}
.fp-theme-swatches {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(128px, 1fr));
  gap: 10px;
  margin-bottom: 16px;
}
.fp-theme-swatch-card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
  padding: 10px;
  border-radius: 14px;
  border: 1px solid var(--glass-border);
  background: color-mix(in srgb, var(--bg-secondary) 80%, transparent);
  color: var(--text-primary, #f8fafc);
  cursor: pointer;
  text-align: left;
}
.fp-theme-swatch-card:hover { border-color: var(--theme-accent); }
.fp-theme-swatch-card.is-on {
  border-color: var(--theme-accent);
  box-shadow: 0 0 0 1px var(--theme-accent);
}
.fp-theme-swatch-card-bar { height: 36px; border-radius: 10px; }
.fp-theme-swatch-card[data-fp-theme-set="default"] .fp-theme-swatch-card-bar,
.fp-theme-swatch-card[data-fp-theme-set="midnight"] .fp-theme-swatch-card-bar { background: linear-gradient(135deg, #0f172a, #6366f1); }
.fp-theme-swatch-card[data-fp-theme-set="ember"] .fp-theme-swatch-card-bar { background: linear-gradient(135deg, #120805, #f97316); }
.fp-theme-swatch-card[data-fp-theme-set="ocean"] .fp-theme-swatch-card-bar { background: linear-gradient(135deg, #02141c, #22d3ee); }
.fp-theme-swatch-card[data-fp-theme-set="neon"] .fp-theme-swatch-card-bar { background: linear-gradient(135deg, #07010c, #ec4899); }
.fp-theme-swatch-card[data-fp-theme-set="forest"] .fp-theme-swatch-card-bar { background: linear-gradient(135deg, #03140c, #34d399); }
.fp-theme-swatch-card[data-fp-theme-set="obsidian"] .fp-theme-swatch-card-bar { background: linear-gradient(135deg, #050505, #eab308); }
.fp-theme-swatch-card[data-fp-theme-set="crimson"] .fp-theme-swatch-card-bar { background: linear-gradient(135deg, #1a0a10, #fb7185); }
.fp-theme-swatch-card[data-fp-theme-set="daylight"] .fp-theme-swatch-card-bar { background: linear-gradient(135deg, #e2e8f0, #4f46e5); }
.fp-theme-swatch-card[data-fp-theme-set="sand"] .fp-theme-swatch-card-bar { background: linear-gradient(135deg, #efe4d4, #ea580c); }
.fp-theme-swatch-card[data-fp-theme-set="glacier"] .fp-theme-swatch-card-bar { background: linear-gradient(135deg, #cffafe, #0d9488); }
.fp-theme-swatch-card-name { font-size: 13px; font-weight: 700; }
.fp-theme-appearance-card {
  background: var(--glass-bg);
  border: 1px solid var(--glass-border);
  border-radius: 16px;
  padding: 18px 20px 20px;
  margin: 0 0 24px;
}
.fp-theme-appearance-card h2,
.fp-theme-appearance-card h3 {
  font-size: 1.05rem;
  font-weight: 700;
  margin: 0 0 6px;
  color: var(--text-primary, #f8fafc);
}
.fp-theme-appearance-card p {
  margin: 0 0 14px;
  font-size: 13px;
  color: var(--text-muted, #94a3b8);
}

html[data-fp-scheme="light"] .user-hero-name,
html[data-fp-scheme="light"] .section-title-premium,
html[data-fp-scheme="light"] .studio-cmd-title,
html[data-fp-scheme="light"] .studio-commands-head h2,
html[data-fp-scheme="light"] .bento-card-title,
html[data-fp-scheme="light"] .uh-stat strong,
html[data-fp-scheme="light"] .uh-claim-title,
html[data-fp-scheme="light"] .tool-card-title {
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .gradient-text {
  background: linear-gradient(135deg, #0f172a 20%, #3730a3 70%, #4f46e5 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}
html[data-fp-scheme="light"] .studio-cmd {
  background: var(--bg-secondary) !important;
  border-color: var(--glass-border) !important;
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .studio-cmd-hint,
html[data-fp-scheme="light"] .uh-claim-sub,
html[data-fp-scheme="light"] .uh-stat em,
html[data-fp-scheme="light"] .tool-card-desc,
html[data-fp-scheme="light"] .bento-card-desc {
  color: var(--text-muted) !important;
}
html[data-fp-scheme="light"] .user-hero-eyebrow {
  color: var(--theme-accent) !important;
}
html[data-fp-scheme="light"] .uh-stat {
  background: var(--bg-secondary) !important;
  border-color: var(--glass-border) !important;
}
html[data-fp-scheme="light"] .bento-card,
html[data-fp-scheme="light"] .tool-card {
  background: var(--bg-secondary) !important;
  border-color: var(--glass-border) !important;
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .btn-premium-primary {
  background: var(--theme-accent) !important;
  color: #fff !important;
}

/* Light scheme: shared surfaces and copy. Accent fills keep white type. */
html[data-fp-scheme="light"] .card,
html[data-fp-scheme="light"] .glass-card,
html[data-fp-scheme="light"] .modal-content,
html[data-fp-scheme="light"] .list-group-item,
html[data-fp-scheme="light"] .accordion-item,
html[data-fp-scheme="light"] .accordion-button,
html[data-fp-scheme="light"] .offcanvas,
html[data-fp-scheme="light"] .mobile-bottom-nav,
html[data-fp-scheme="light"] .form-control,
html[data-fp-scheme="light"] .form-select,
html[data-fp-scheme="light"] .form-control-enhanced,
html[data-fp-scheme="light"] .filter-input-enhanced,
html[data-fp-scheme="light"] .filter-bar-enhanced,
html[data-fp-scheme="light"] .remix-card,
html[data-fp-scheme="light"] .remix-modal,
html[data-fp-scheme="light"] .remix-search,
html[data-fp-scheme="light"] .remix-sort a:not(.on),
html[data-fp-scheme="light"] .pagination-enhanced .page-link:not(.active),
html[data-fp-scheme="light"] .api-glass-card,
html[data-fp-scheme="light"] .api-stat-card,
html[data-fp-scheme="light"] .api-key-item,
html[data-fp-scheme="light"] .gen-tabs {
  background: var(--bg-secondary) !important;
  background-color: var(--bg-secondary) !important;
  border-color: var(--glass-border) !important;
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .api-page {
  background: transparent !important;
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="submit"]):not([type="button"]):not([type="file"]):not([type="hidden"]),
html[data-fp-scheme="light"] textarea,
html[data-fp-scheme="light"] select {
  background-color: var(--bg-secondary) !important;
  color: var(--text-primary) !important;
  border-color: var(--glass-border) !important;
}
html[data-fp-scheme="light"] .form-control::placeholder,
html[data-fp-scheme="light"] .form-control-enhanced::placeholder,
html[data-fp-scheme="light"] .remix-search::placeholder,
html[data-fp-scheme="light"] input::placeholder,
html[data-fp-scheme="light"] textarea::placeholder {
  color: var(--text-muted) !important;
}
html[data-fp-scheme="light"] main :is(h1, h2, h3, h4, h5, h6, p, label, dt, dd, li):not(.btn):not(.badge):not(.gradient-text):not(.remix-flag),
html[data-fp-scheme="light"] .card-title,
html[data-fp-scheme="light"] .card-text,
html[data-fp-scheme="light"] .hero-title,
html[data-fp-scheme="light"] .brand-hero-mark,
html[data-fp-scheme="light"] .stat-premium-val,
html[data-fp-scheme="light"] .stat-value,
html[data-fp-scheme="light"] .remix-page,
html[data-fp-scheme="light"] .remix-hero h1,
html[data-fp-scheme="light"] .remix-title,
html[data-fp-scheme="light"] .remix-modal h3,
html[data-fp-scheme="light"] .remix-help-ol,
html[data-fp-scheme="light"] .api-hero__title,
html[data-fp-scheme="light"] .api-card-header h2,
html[data-fp-scheme="light"] .api-stat-card__value,
html[data-fp-scheme="light"] .api-key-item__name,
html[data-fp-scheme="light"] .text-white:not(.btn):not(.badge):not(.btn-gradient):not(.btn-premium-primary):not(.remix-btn-use):not(.remix-flag),
html[data-fp-scheme="light"] .text-light:not(.btn):not(.badge) {
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .remix-hero p,
html[data-fp-scheme="light"] .remix-meta,
html[data-fp-scheme="light"] .remix-help-note,
html[data-fp-scheme="light"] .hero-subtitle,
html[data-fp-scheme="light"] .stat-premium-lbl,
html[data-fp-scheme="light"] .api-hero__subtitle,
html[data-fp-scheme="light"] .api-card-header p,
html[data-fp-scheme="light"] .api-stat-card__label,
html[data-fp-scheme="light"] .api-key-item__meta,
html[data-fp-scheme="light"] .text-muted,
html[data-fp-scheme="light"] .text-white-50 {
  color: var(--text-muted) !important;
}
html[data-fp-scheme="light"] .gen-tab {
  color: var(--text-secondary) !important;
}
html[data-fp-scheme="light"] .gen-tab.active,
html[data-fp-scheme="light"] .gen-tab.show {
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .mobile-bottom-nav,
html[data-fp-scheme="light"] .mobile-nav-item {
  color: var(--text-secondary) !important;
}
html[data-fp-scheme="light"] .mobile-nav-item.active,
html[data-fp-scheme="light"] .mobile-nav-item.is-on {
  color: var(--theme-accent) !important;
}
html[data-fp-scheme="light"] .remix-btn-ghost,
html[data-fp-scheme="light"] .remix-btn-disabled,
html[data-fp-scheme="light"] .remix-help-btn,
html[data-fp-scheme="light"] .remix-load-more,
html[data-fp-scheme="light"] .btn-outline-light,
html[data-fp-scheme="light"] .btn-outline-secondary,
html[data-fp-scheme="light"] .btn-link {
  color: var(--text-primary) !important;
  background: var(--bg-tertiary) !important;
  border-color: var(--glass-border) !important;
}
html[data-fp-scheme="light"] .remix-load-more:hover {
  background: var(--primary-gradient) !important;
  border-color: transparent !important;
  color: #fff !important;
}
html[data-fp-scheme="light"] .btn-gradient,
html[data-fp-scheme="light"] .btn-primary,
html[data-fp-scheme="light"] .btn-success,
html[data-fp-scheme="light"] .btn-premium-primary,
html[data-fp-scheme="light"] .remix-btn-use,
html[data-fp-scheme="light"] .remix-flag,
html[data-fp-scheme="light"] .remix-sort a.on,
html[data-fp-scheme="light"] .pagination-enhanced .page-link.active,
html[data-fp-scheme="light"] .api-btn--primary {
  color: #fff !important;
}
html[data-fp-scheme="light"] .remix-preview-card {
  background: var(--bg-secondary) !important;
  border-color: var(--glass-border) !important;
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .remix-preview-title,
html[data-fp-scheme="light"] .remix-preview-close {
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .remix-preview-close {
  background: var(--bg-tertiary) !important;
  border-color: var(--glass-border) !important;
}
html[data-fp-scheme="light"] .remix-preview-stage,
html[data-fp-scheme="light"] .remix-preview-stage video,
html[data-fp-scheme="light"] .remix-preview-stage img {
  background: #000 !important;
}

/* Light controls: bordered fields, chips, and panels */
html[data-fp-scheme="light"] #userDropdown {
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .remix-hero h1,
html[data-fp-scheme="light"] .remix-hero p,
html[data-fp-scheme="light"] .ct-hero-title,
html[data-fp-scheme="light"] .ct-hero-sub {
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .ct-hero-sub,
html[data-fp-scheme="light"] .remix-hero p {
  color: var(--text-muted) !important;
}
html[data-fp-scheme="light"] .remix-search,
html[data-fp-scheme="light"] .remix-search:focus,
html[data-fp-scheme="light"] .ct-search-input,
html[data-fp-scheme="light"] .ct-search-input:focus {
  background: var(--bg-secondary) !important;
  background-color: var(--bg-secondary) !important;
  color: var(--text-primary) !important;
  border: 1px solid var(--glass-border) !important;
  box-shadow: none !important;
}
html[data-fp-scheme="light"] .remix-search:focus,
html[data-fp-scheme="light"] .ct-search-input:focus {
  border-color: var(--theme-accent) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-accent) 22%, transparent) !important;
}
html[data-fp-scheme="light"] .remix-search::placeholder,
html[data-fp-scheme="light"] .ct-search-input::placeholder {
  color: var(--text-muted) !important;
}
html[data-fp-scheme="light"] .remix-btn-ghost,
html[data-fp-scheme="light"] .remix-sort a:not(.on),
html[data-fp-scheme="light"] .ct-pill:not(.active),
html[data-fp-scheme="light"] .ct-type-switcher,
html[data-fp-scheme="light"] .ct-type-btn:not(.active) {
  background: var(--bg-secondary) !important;
  color: var(--text-primary) !important;
  border: 1px solid var(--glass-border) !important;
  box-shadow: none !important;
}
html[data-fp-scheme="light"] .remix-sort a.on,
html[data-fp-scheme="light"] .ct-pill.active,
html[data-fp-scheme="light"] .ct-type-btn.active {
  background: var(--primary-gradient) !important;
  color: #fff !important;
  border-color: transparent !important;
}
html[data-fp-scheme="light"] .fp-flow-hero {
  background: linear-gradient(160deg, var(--bg-secondary) 0%, color-mix(in srgb, var(--theme-accent) 12%, var(--bg-primary)) 100%) !important;
  border-bottom: 1px solid var(--glass-border) !important;
}
html[data-fp-scheme="light"] .fp-hero-headline,
html[data-fp-scheme="light"] .fp-hstat-value,
html[data-fp-scheme="light"] .fp-sb-title,
html[data-fp-scheme="light"] .fp-mode-btn:not(.active),
html[data-fp-scheme="light"] .fp-mode-btn:not(.active) strong {
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .fp-hero-tagline,
html[data-fp-scheme="light"] .fp-sb-sub,
html[data-fp-scheme="light"] .fp-mode-btn:not(.active) small {
  color: var(--text-muted) !important;
}
html[data-fp-scheme="light"] .fp-hero-stat,
html[data-fp-scheme="light"] .fp-sb-card,
html[data-fp-scheme="light"] .fp-mode-btn:not(.active) {
  background: var(--bg-secondary) !important;
  border: 1px solid var(--glass-border) !important;
}
html[data-fp-scheme="light"] .fp-mode-btn.active {
  background: color-mix(in srgb, var(--theme-accent) 14%, var(--bg-secondary)) !important;
  border: 1px solid var(--theme-accent) !important;
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .fp-mode-btn.active strong {
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .fp-mode-btn.active small {
  color: var(--text-muted) !important;
}

/* Pricing page: neo cards load after this file, so these selectors are more specific. */
html[data-fp-scheme="light"] .ptab-bar {
  background: var(--bg-secondary) !important;
  border: 1px solid var(--glass-border) !important;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06) !important;
}
html[data-fp-scheme="light"] .ptab-btn {
  color: var(--text-primary) !important;
  background: transparent !important;
}
html[data-fp-scheme="light"] .ptab-btn.ptab-active {
  background: var(--primary-gradient) !important;
  color: #fff !important;
  border-color: transparent !important;
}
html[data-fp-scheme="light"] #ptab-subs-btn.ptab-active {
  background: linear-gradient(135deg, #10b981, #06b6d4) !important;
  color: #fff !important;
  border-color: transparent !important;
}
html[data-fp-scheme="light"] .neo-hcard,
html[data-fp-scheme="light"] .neo-hc-right,
html[data-fp-scheme="light"] .neo-sub-card {
  background: var(--bg-secondary) !important;
  border: 1px solid var(--glass-border) !important;
  color: var(--text-primary) !important;
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.08) !important;
}
html[data-fp-scheme="light"] .neo-ultra {
  background: var(--bg-secondary) !important;
  border: 1px solid color-mix(in srgb, #f59e0b 45%, var(--glass-border)) !important;
  color: var(--text-primary) !important;
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.08) !important;
}
html[data-fp-scheme="light"] .neo-hc-starter .neo-hc-left {
  background: linear-gradient(160deg, color-mix(in srgb, var(--theme-accent) 22%, var(--bg-secondary)) 0%, var(--bg-secondary) 100%) !important;
  border-right: 1px solid var(--glass-border) !important;
}
html[data-fp-scheme="light"] .neo-hc-value .neo-hc-left {
  background: linear-gradient(160deg, color-mix(in srgb, var(--theme-accent-2) 24%, var(--bg-secondary)) 0%, color-mix(in srgb, #ec4899 12%, var(--bg-secondary)) 100%) !important;
  border-right: 1px solid var(--glass-border) !important;
}
html[data-fp-scheme="light"] .neo-hc-pro .neo-hc-left {
  background: linear-gradient(160deg, color-mix(in srgb, #f59e0b 22%, var(--bg-secondary)) 0%, var(--bg-secondary) 100%) !important;
  border-right: 1px solid var(--glass-border) !important;
}
html[data-fp-scheme="light"] .neo-hc-mega .neo-hc-left {
  background: linear-gradient(160deg, color-mix(in srgb, #f43f5e 20%, var(--bg-secondary)) 0%, color-mix(in srgb, #a855f7 12%, var(--bg-secondary)) 100%) !important;
  border-right: 1px solid var(--glass-border) !important;
}
html[data-fp-scheme="light"] .neo-sec-h,
html[data-fp-scheme="light"] .neo-hc-plan,
html[data-fp-scheme="light"] .neo-sub-name,
html[data-fp-scheme="light"] .neo-sub-num,
html[data-fp-scheme="light"] .neo-ultra-name,
html[data-fp-scheme="light"] .neo-hc-feats li,
html[data-fp-scheme="light"] .neo-ufeat {
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .neo-hc-tagline,
html[data-fp-scheme="light"] .neo-sub-tag,
html[data-fp-scheme="light"] .neo-sub-period,
html[data-fp-scheme="light"] .neo-ultra-tagline,
html[data-fp-scheme="light"] .neo-ust-l {
  color: var(--text-muted) !important;
}
html[data-fp-scheme="light"] .neo-hc-feats li {
  border-bottom-color: var(--glass-border) !important;
}
html[data-fp-scheme="light"] .neo-hc-token-chip,
html[data-fp-scheme="light"] .neo-sub-pricebox,
html[data-fp-scheme="light"] .neo-ufeat {
  background: var(--bg-primary) !important;
  border: 1px solid var(--glass-border) !important;
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .neo-ufeat-hl {
  background: color-mix(in srgb, #f59e0b 14%, var(--bg-secondary)) !important;
  border-color: color-mix(in srgb, #f59e0b 40%, var(--glass-border)) !important;
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .neo-hc-sym,
html[data-fp-scheme="light"] .neo-sub-sym {
  color: var(--theme-accent) !important;
}
html[data-fp-scheme="light"] .neo-hc-btn,
html[data-fp-scheme="light"] .neo-hcbtn-indigo,
html[data-fp-scheme="light"] .neo-hcbtn-amber,
html[data-fp-scheme="light"] .neo-hcbtn-rose,
html[data-fp-scheme="light"] .neo-sub-btn,
html[data-fp-scheme="light"] .neo-ultra-btn,
html[data-fp-scheme="light"] .neo-hc-icon,
html[data-fp-scheme="light"] .neo-sub-icon {
  color: #fff !important;
}

/* Pricing hero + legal notice, generate, image edit, video studio */
html[data-fp-scheme="light"] {
  --vc: var(--bg-secondary);
  --vb: var(--glass-border);
  --vt: var(--text-primary);
  --vm: var(--text-muted);
}
html[data-fp-scheme="light"] .neo-title-line,
html[data-fp-scheme="light"] .notice-title,
html[data-fp-scheme="light"] .notice-item,
html[data-fp-scheme="light"] .notice-item span,
html[data-fp-scheme="light"] .notice-item strong {
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .neo-legal,
html[data-fp-scheme="light"] .important-notice-modern {
  background: var(--bg-secondary) !important;
  border: 1px solid var(--glass-border) !important;
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .notice-header {
  border-bottom-color: var(--glass-border) !important;
}
html[data-fp-scheme="light"] .notice-link {
  color: var(--theme-accent) !important;
}
html[data-fp-scheme="light"] .vg-card,
html[data-fp-scheme="light"] .prompt-field,
html[data-fp-scheme="light"] .smart-upload-zone,
html[data-fp-scheme="light"] .quality-tier-btn,
html[data-fp-scheme="light"] .orientation-card,
html[data-fp-scheme="light"] .size-card,
html[data-fp-scheme="light"] .panel-toggle-btn,
html[data-fp-scheme="light"] .ie-hero-panel,
html[data-fp-scheme="light"] .ie-section-card,
html[data-fp-scheme="light"] .ie-edit-type-card,
html[data-fp-scheme="light"] .va-card,
html[data-fp-scheme="light"] .va-dz,
html[data-fp-scheme="light"] .va-ta,
html[data-fp-scheme="light"] .va-inp,
html[data-fp-scheme="light"] .va-mc,
html[data-fp-scheme="light"] .va-chip:not(.va-chip--on),
html[data-fp-scheme="light"] .w3-size-card {
  background: var(--bg-secondary) !important;
  border-color: var(--glass-border) !important;
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .vg-card-title,
html[data-fp-scheme="light"] .suz-title,
html[data-fp-scheme="light"] .orientation-card-label,
html[data-fp-scheme="light"] .quality-tier-label,
html[data-fp-scheme="light"] .size-label,
html[data-fp-scheme="light"] .prompt-label,
html[data-fp-scheme="light"] .panel-toggle-btn,
html[data-fp-scheme="light"] .ie-page-title,
html[data-fp-scheme="light"] .ie-title-amp,
html[data-fp-scheme="light"] .va-plabel,
html[data-fp-scheme="light"] .va-sub-label,
html[data-fp-scheme="light"] .va-card-title,
html[data-fp-scheme="light"] .w3-size-card,
html[data-fp-scheme="light"] .w3-size-card strong {
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .suz-hint,
html[data-fp-scheme="light"] .vg-tb-sub,
html[data-fp-scheme="light"] .quality-tier-hint,
html[data-fp-scheme="light"] .orientation-card-info,
html[data-fp-scheme="light"] .ie-edit-type-desc {
  color: var(--text-muted) !important;
}
html[data-fp-scheme="light"] .quality-tier-btn.active,
html[data-fp-scheme="light"] .orientation-card.active,
html[data-fp-scheme="light"] .size-card.active,
html[data-fp-scheme="light"] .ie-edit-type-card.active,
html[data-fp-scheme="light"] .va-chip--on,
html[data-fp-scheme="light"] .va-mc--on {
  background: color-mix(in srgb, var(--theme-accent) 14%, var(--bg-secondary)) !important;
  border-color: var(--theme-accent) !important;
  color: var(--text-primary) !important;
}
html[data-fp-scheme="light"] .quality-tier-save {
  color: #047857 !important;
}
