/**
 * Site-wide light theme AAA pass
 * Bright teal (#0bf9ea / #3bd3d3) on cream fails text contrast (~1.5:1).
 * Tokens remap accents to deep teal (#045a55). This sheet:
 *  1) mirrors token remap for html[data-theme=light]
 *  2) restores bright cyan ONLY on filled CTAs (black text on #0bf9ea ≈ AAA)
 *  3) forces hardcoded neon teal text/borders/icons to deep teal
 */

html[data-theme='light'],
body.light-theme {
  --primary-bright: #0bf9ea;
  --primary-400: #045a55;
  --primary-500: #036963;
  --primary-600: #033f3b;
  --primary-color: #045a55;
  --primary-hover: #033f3b;
  --primary-400-rgb: 4, 90, 85;
  --primary-500-rgb: 3, 105, 99;
  --felan-color-accent: #045a55;
  --felan-color-primary: #045a55;
  --link: #045a55;
  --link-hover: #033f3b;
  --auth-primary: #045a55;
  --accent-color: #045a55;
  --secondary-color: #045a55;
  --info-color: #045a55;
  --border-primary: #045a55;
}

/* —— Filled CTAs: keep brand-bright cyan + black label —— */
body.light-theme .btn-primary,
body.light-theme .btn.btn-primary,
body.light-theme a.btn-primary,
body.light-theme button.btn-primary,
body.light-theme .btn-primary.btn-sm,
body.light-theme .btn.btn-primary.btn-sm,
body.light-theme .send-btn,
body.light-theme .waitlist-hero__cta,
body.light-theme .join-typeform__next:not(.join-typeform__next--client),
body.light-theme .auth-form .btn-primary,
body.light-theme .auth-form button.btn-primary,
body.light-theme .auth-form .btn-verify,
body.light-theme button.join-typeform__next:not(.join-typeform__next--client),
html[data-theme='light'] .btn-primary,
html[data-theme='light'] .btn.btn-primary,
html[data-theme='light'] a.btn-primary,
html[data-theme='light'] button.btn-primary,
html[data-theme='light'] .send-btn,
html[data-theme='light'] .waitlist-hero__cta,
html[data-theme='light'] .join-typeform__next:not(.join-typeform__next--client),
html[data-theme='light'] .auth-form .btn-primary,
html[data-theme='light'] .auth-form button.btn-primary {
  background: var(--primary-bright, #0bf9ea) !important;
  background-color: var(--primary-bright, #0bf9ea) !important;
  color: #000 !important;
  border-color: transparent !important;
  font-weight: 700 !important;
}

body.light-theme .btn-primary:hover,
body.light-theme .btn.btn-primary:hover,
body.light-theme a.btn-primary:hover,
body.light-theme button.btn-primary:hover,
body.light-theme .send-btn:hover,
body.light-theme .waitlist-hero__cta:hover,
body.light-theme .join-typeform__next:not(.join-typeform__next--client):hover:not(:disabled),
html[data-theme='light'] .btn-primary:hover,
html[data-theme='light'] .btn.btn-primary:hover,
html[data-theme='light'] .send-btn:hover,
html[data-theme='light'] .waitlist-hero__cta:hover {
  background: #00d4c8 !important;
  color: #000 !important;
}

/* Selected chips / badges that use teal fill */
body.light-theme .join-typeform__skill.is-on,
body.light-theme .join-typeform__tag,
body.light-theme .skill-tag,
html[data-theme='light'] .join-typeform__skill.is-on,
html[data-theme='light'] .join-typeform__tag,
html[data-theme='light'] .skill-tag {
  background: var(--primary-bright, #0bf9ea) !important;
  color: #000 !important;
  border-color: transparent !important;
}

/* Role badges: creator teal / client gold — not one shared color */
body.light-theme .auth-page[data-role='creator'] .role-badge,
html[data-theme='light'] .auth-page[data-role='creator'] .role-badge {
  background: #0bf9ea !important;
  color: #000 !important;
}

body.light-theme .auth-page[data-role='employer'] .role-badge,
body.light-theme .auth-page[data-role='client'] .role-badge,
html[data-theme='light'] .auth-page[data-role='employer'] .role-badge,
html[data-theme='light'] .auth-page[data-role='client'] .role-badge {
  background: #f9d654 !important;
  color: #000 !important;
}

/* Role selection CTAs: bright fills + black text */
body.light-theme .role-card-creator .role-card-cta,
html[data-theme='light'] .role-card-creator .role-card-cta {
  background: #0bf9ea !important;
  color: #000 !important;
}

body.light-theme .role-card-creator:hover .role-card-cta,
html[data-theme='light'] .role-card-creator:hover .role-card-cta {
  background: #00d4c8 !important;
  color: #000 !important;
}

body.light-theme .role-card-employer .role-card-cta,
html[data-theme='light'] .role-card-employer .role-card-cta {
  background: #f9d654 !important;
  color: #000 !important;
}

body.light-theme .role-card-employer:hover .role-card-cta,
html[data-theme='light'] .role-card-employer:hover .role-card-cta {
  background: #e6be69 !important;
  color: #000 !important;
}

body.light-theme .join-typeform__badge:not(.join-typeform__badge--client),
html[data-theme='light'] .join-typeform__badge:not(.join-typeform__badge--client) {
  background: var(--primary-bright, #0bf9ea) !important;
  color: #000 !important;
}

body.light-theme .join-typeform__progress-fill,
html[data-theme='light'] .join-typeform__progress-fill {
  background: #045a55 !important;
}

body.light-theme .join-typeform--client .join-typeform__progress-fill,
html[data-theme='light'] .join-typeform--client .join-typeform__progress-fill {
  background: #c9a227 !important;
}

/* —— Hardcoded neon teal → deep teal (text / icons / borders) —— */
body.light-theme a:not(.btn):not(.btn-primary):not(.role-card-cta):not(.social-btn),
html[data-theme='light'] a:not(.btn):not(.btn-primary):not(.role-card-cta):not(.social-btn) {
  /* don't force all links — only when they inherit neon; most use tokens now */
}

/* Explicit neon hex overrides (child-theme + marketing hardcodes) */
body.light-theme,
html[data-theme='light'] body {
  /* no-op anchor for cascade */
}

body.light-theme .header-signin-link,
body.light-theme .join-signin-hint a,
body.light-theme .role-selection-footer a,
body.light-theme .auth-footer a,
body.light-theme .auth-terms-label a,
body.light-theme .dreamers-steps__caption a,
body.light-theme .provider-name,
body.light-theme .stat-value,
body.light-theme .sidebar-rating-section .rating-large,
body.light-theme .dashboard-actions .btn-outline,
body.light-theme .dashboard-page a:not(.btn):not(.btn-primary),
body.light-theme .felan-menu a:hover,
body.light-theme .main-menu a:hover,
body.light-theme .site-footer a:hover,
body.light-theme .dreamers-waitlist-footer a,
body.light-theme .landing-footer a,
body.light-theme .policy-content a,
body.light-theme .resource-card a,
body.light-theme .guideline-item a,
body.light-theme .pricing-feature__check,
body.light-theme .join-typeform__back:hover:not(:disabled),
body.light-theme .join-typeform__skip:hover,
body.light-theme .join-review__hover-edit,
body.light-theme .join-typeform__media-edit,
body.light-theme .join-review__reel-caption em,
body.light-theme .dreamers-media-busy__label,
body.light-theme .otp-resend button,
body.light-theme .otp-resend a,
body.light-theme [style*='color: #0bf9ea'],
body.light-theme [style*='color:#0bf9ea'],
body.light-theme [style*='color: #0BF9EA'],
body.light-theme [style*='color:#0BF9EA'],
body.light-theme [style*='color: #3bd3d3'],
body.light-theme [style*='color:#3bd3d3'],
body.light-theme [style*='color: #3BD3D3'],
body.light-theme [style*='color:#3BD3D3'],
html[data-theme='light'] .header-signin-link,
html[data-theme='light'] .join-signin-hint a,
html[data-theme='light'] .role-selection-footer a,
html[data-theme='light'] .auth-footer a,
html[data-theme='light'] .auth-terms-label a,
html[data-theme='light'] .dreamers-waitlist-footer a,
html[data-theme='light'] .landing-footer a,
html[data-theme='light'] .policy-content a,
html[data-theme='light'] .join-typeform__back:hover:not(:disabled),
html[data-theme='light'] .join-typeform__skip:hover,
html[data-theme='light'] .join-review__hover-edit,
html[data-theme='light'] .join-typeform__media-edit,
html[data-theme='light'] .join-review__reel-caption em,
html[data-theme='light'] .dreamers-media-busy__label,
html[data-theme='light'] [style*='color: #0bf9ea'],
html[data-theme='light'] [style*='color:#0bf9ea'],
html[data-theme='light'] [style*='color: #3bd3d3'],
html[data-theme='light'] [style*='color:#3bd3d3'] {
  color: #045a55 !important;
}

body.light-theme .header-signin-link:hover,
body.light-theme .join-signin-hint a:hover,
body.light-theme .auth-footer a:hover,
body.light-theme .site-footer a:hover,
html[data-theme='light'] .header-signin-link:hover,
html[data-theme='light'] .join-signin-hint a:hover {
  color: #033f3b !important;
}

/* Borders / outlines that used neon teal */
body.light-theme .join-typeform__input:focus,
body.light-theme .join-typeform__textarea:focus,
body.light-theme .auth-form .input-field:focus,
body.light-theme .join-typeform__skill:not(.is-on),
body.light-theme button.join-review__reel--add,
body.light-theme .otp-digit:focus,
html[data-theme='light'] .join-typeform__input:focus,
html[data-theme='light'] .join-typeform__textarea:focus,
html[data-theme='light'] .auth-form .input-field:focus,
html[data-theme='light'] button.join-review__reel--add {
  border-color: #045a55 !important;
  outline-color: #045a55;
}

body.light-theme button.join-review__reel--add,
html[data-theme='light'] button.join-review__reel--add {
  color: #045a55 !important;
  border-color: rgba(4, 90, 85, 0.55) !important;
  background: rgba(4, 90, 85, 0.06) !important;
}

body.light-theme button.join-review__reel--add:hover,
html[data-theme='light'] button.join-review__reel--add:hover {
  border-color: #045a55 !important;
  background: rgba(4, 90, 85, 0.12) !important;
  color: #033f3b !important;
}

/* Landing / marketing neon leftovers */
body.light-theme .landing-page a:not(.btn):not(.btn-primary):not(.waitlist-hero__cta),
body.light-theme .dreamers-spotlight a,
body.light-theme .category-chip,
body.light-theme .spotlight-link,
html[data-theme='light'] .landing-page a:not(.btn):not(.btn-primary):not(.waitlist-hero__cta),
html[data-theme='light'] .dreamers-spotlight a {
  color: #045a55;
}

body.light-theme .landing-page .spotlight-link,
body.light-theme .landing-page [style*='0bf9ea'],
html[data-theme='light'] .landing-page .spotlight-link {
  color: #045a55 !important;
}

/* Platform / explore / gallery accents */
body.light-theme .explore-filters a.is-active,
body.light-theme .filter-chip.is-active,
body.light-theme .browse-tab.is-active,
body.light-theme .nav-item.active > a,
body.light-theme .dashboard-sidebar .is-active,
body.light-theme .dashboard-sidebar a:hover,
body.light-theme .portfolio-item-title,
body.light-theme .provider-skills .skill-tag:not([class*='bg']),
html[data-theme='light'] .explore-filters a.is-active,
html[data-theme='light'] .filter-chip.is-active,
html[data-theme='light'] .browse-tab.is-active {
  color: #045a55 !important;
}

/* Secondary / outline buttons: deep teal border + text, not neon fill */
body.light-theme .btn-secondary,
body.light-theme .btn.btn-secondary,
body.light-theme a.btn-secondary,
body.light-theme button.btn-secondary,
body.light-theme .btn-outline,
body.light-theme .btn.btn-outline,
html[data-theme='light'] .btn-secondary,
html[data-theme='light'] .btn.btn-secondary,
html[data-theme='light'] .btn-outline {
  color: #045a55 !important;
  border-color: #045a55 !important;
  background: transparent !important;
}

body.light-theme .btn-secondary:hover,
body.light-theme .btn-outline:hover,
html[data-theme='light'] .btn-secondary:hover,
html[data-theme='light'] .btn-outline:hover {
  background: rgba(4, 90, 85, 0.1) !important;
  color: #033f3b !important;
}

/* Icons / FA that inherit neon */
body.light-theme .fa-primary,
body.light-theme i.text-primary,
body.light-theme .text-primary,
body.light-theme .has-primary-color,
html[data-theme='light'] .text-primary,
html[data-theme='light'] .has-primary-color {
  color: #045a55 !important;
}

/* Page loader spinner stays visible: use deep teal ring on cream */
body.light-theme .dreamers-page-loader__spin,
html[data-theme='light'] .dreamers-page-loader__spin {
  border-top-color: #045a55 !important;
  border-right-color: rgba(4, 90, 85, 0.25) !important;
  border-bottom-color: rgba(4, 90, 85, 0.25) !important;
  border-left-color: rgba(4, 90, 85, 0.25) !important;
}

/* Auth methods package */
body.light-theme .auth-page,
html[data-theme='light'] .auth-page {
  --auth-primary: #045a55;
}

body.light-theme .auth-page[data-role='creator'] .role-badge,
html[data-theme='light'] .auth-page[data-role='creator'] .role-badge {
  background: var(--primary-bright, #0bf9ea) !important;
  color: #000 !important;
}

/* Cropper zoom track — must stay visible on cream */
body.light-theme .avatar-cropper-zoom,
html[data-theme='light'] .avatar-cropper-zoom {
  height: 6px !important;
  background: rgba(10, 10, 10, 0.22) !important;
  border-radius: 999px !important;
}

body.light-theme .avatar-cropper-zoom::-webkit-slider-runnable-track,
html[data-theme='light'] .avatar-cropper-zoom::-webkit-slider-runnable-track {
  height: 6px;
  background: rgba(10, 10, 10, 0.22);
  border-radius: 999px;
}

body.light-theme .avatar-cropper-zoom::-webkit-slider-thumb,
html[data-theme='light'] .avatar-cropper-zoom::-webkit-slider-thumb {
  appearance: none;
  width: 18px;
  height: 18px;
  margin-top: -6px;
  border-radius: 50%;
  background: #045a55 !important;
  border: 2px solid #fff !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.35);
}

body.light-theme .avatar-cropper-zoom::-moz-range-track,
html[data-theme='light'] .avatar-cropper-zoom::-moz-range-track {
  height: 6px;
  background: rgba(10, 10, 10, 0.22);
  border-radius: 999px;
}

body.light-theme .avatar-cropper-zoom::-moz-range-thumb,
html[data-theme='light'] .avatar-cropper-zoom::-moz-range-thumb {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #045a55 !important;
  border: 2px solid #fff !important;
}

body.light-theme .avatar-cropper-zoom-label,
html[data-theme='light'] .avatar-cropper-zoom-label {
  color: #0a0a0a !important;
}

body.light-theme .avatar-cropper-modal,
html[data-theme='light'] .avatar-cropper-modal {
  color: #0a0a0a;
}

body.light-theme .avatar-cropper-actions .btn-outline,
html[data-theme='light'] .avatar-cropper-actions .btn-outline {
  color: #0a0a0a !important;
  border-color: rgba(10, 10, 10, 0.35) !important;
  background: #fff !important;
}

/* Logo / chrome */
body.light-theme .dreamers-logo .logo-text,
body.light-theme .site-logo,
body.light-theme .logo-text,
html[data-theme='light'] .dreamers-logo .logo-text {
  color: #0a0a0a !important;
}

/* Footer + muted copy should stay dark, not washed teal */
body.light-theme .site-footer,
body.light-theme .dreamers-waitlist-footer,
html[data-theme='light'] .site-footer {
  color: #1f1f1f;
}

body.light-theme .site-footer a,
body.light-theme .dreamers-waitlist-footer a,
html[data-theme='light'] .site-footer a {
  color: #045a55 !important;
}
