/* ─── THEME VARIABLES ─── */
html {
  --theme-font: 'Inter', system-ui, sans-serif;
  --theme-font-heading: 'Inter', system-ui, sans-serif;
  --theme-clr-primary: #d97706;
  --theme-clr-accent: #b45309;
  --theme-clr-dark: #292524;
  --theme-clr-bg: #fffbeb;
  --theme-clr-bg-alt: #fef3c7;
  --theme-clr-card: #ffffff;
  --theme-clr-text: #292524;
  --theme-clr-text-muted: #57534e;
  --theme-clr-light: #fffbeb;
  --theme-border-w: 2px;
  --theme-border-w-sm: 1px;
  --theme-radius: 0px;
  --theme-radius-lg: 0px;
  --theme-shadow: 4px 4px 0 var(--theme-clr-dark);
  --theme-shadow-hover: 6px 6px 0 var(--theme-clr-dark);
  --theme-hover-x: -2px;
  --theme-hover-y: -2px;
  --theme-btn-radius: 0px;
  --theme-btn-transform: hover:-translate-x-1 hover:-translate-y-1;
  --theme-card-pad: 1.5rem;
  --theme-section-py: 7rem;
  --theme-heading-weight: 900;
  --theme-hero-overlay: linear-gradient(to bottom, rgba(255,251,235,0.9), rgba(255,255,255,0.9));
  --theme-hero-min-h: 100vh;
  --theme-header-bg: #292524;
  --theme-header-link: #d1d5db;
  --theme-header-link-hover: #ffffff;
  --theme-footer-bg: #292524;
  --theme-footer-text: #a8a29e;
}

/* ─── BRUTAL (Current) ─── */
html[data-theme="brutal"] {
  --theme-font: 'Inter', system-ui, sans-serif;
  --theme-font-heading: 'Inter', system-ui, sans-serif;
  --theme-clr-primary: #d97706;
  --theme-clr-accent: #b45309;
  --theme-clr-dark: #292524;
  --theme-clr-bg: #fffbeb;
  --theme-clr-bg-alt: #fef3c7;
  --theme-clr-card: #ffffff;
  --theme-clr-text: #292524;
  --theme-clr-text-muted: #57534e;
  --theme-clr-light: #fffbeb;
  --theme-border-w: 2px;
  --theme-border-w-sm: 1px;
  --theme-radius: 0px;
  --theme-radius-lg: 0px;
  --theme-shadow: 4px 4px 0 var(--theme-clr-dark);
  --theme-shadow-hover: 6px 6px 0 var(--theme-clr-dark);
  --theme-hover-x: -2px;
  --theme-hover-y: -2px;
  --theme-btn-radius: 0px;
  --theme-card-pad: 1.5rem;
  --theme-section-py: 7rem;
  --theme-heading-weight: 900;
  --theme-hero-overlay: linear-gradient(to bottom, rgba(255,251,235,0.9), rgba(255,255,255,0.9));
  --theme-hero-min-h: 100vh;
  --theme-header-bg: #292524;
  --theme-header-link: #d1d5db;
  --theme-header-link-hover: #ffffff;
  --theme-footer-bg: #292524;
  --theme-footer-text: #a8a29e;
}

/* ─── ORGANIC (RegmaExports-inspired) ─── */
html[data-theme="organic"] {
  --theme-font: 'Rubik', system-ui, sans-serif;
  --theme-font-heading: 'Rubik', system-ui, sans-serif;
  --theme-clr-primary: #2d6a4f;
  --theme-clr-accent: #40916c;
  --theme-clr-dark: #1b4332;
  --theme-clr-bg: #f0fdf4;
  --theme-clr-bg-alt: #dcfce7;
  --theme-clr-card: #ffffff;
  --theme-clr-text: #1b4332;
  --theme-clr-text-muted: #4a7c6c;
  --theme-clr-light: #f0fdf4;
  --theme-border-w: 1px;
  --theme-border-w-sm: 1px;
  --theme-radius: 8px;
  --theme-radius-lg: 12px;
  --theme-shadow: 0 2px 8px rgba(27,67,50,0.12);
  --theme-shadow-hover: 0 4px 16px rgba(27,67,50,0.18);
  --theme-hover-x: 0px;
  --theme-hover-y: -2px;
  --theme-btn-radius: 8px;
  --theme-card-pad: 1.5rem;
  --theme-section-py: 6rem;
  --theme-heading-weight: 700;
  --theme-hero-overlay: linear-gradient(to bottom, rgba(240,253,244,0.92), rgba(255,255,255,0.95));
  --theme-hero-min-h: 90vh;
  --theme-header-bg: #1b4332;
  --theme-header-link: #c6e9d1;
  --theme-header-link-hover: #ffffff;
  --theme-footer-bg: #1b4332;
  --theme-footer-text: #a7c9b6;
}

/* ─── CORPORATE (BR Global Trade-inspired) ─── */
html[data-theme="corporate"] {
  --theme-font: 'Open Sans', system-ui, sans-serif;
  --theme-font-heading: 'Open Sans', system-ui, sans-serif;
  --theme-clr-primary: #1e3a5f;
  --theme-clr-accent: #cd2653;
  --theme-clr-dark: #0d1b2a;
  --theme-clr-bg: #f8fafc;
  --theme-clr-bg-alt: #e2e8f0;
  --theme-clr-card: #ffffff;
  --theme-clr-text: #0d1b2a;
  --theme-clr-text-muted: #475569;
  --theme-clr-light: #f8fafc;
  --theme-border-w: 1px;
  --theme-border-w-sm: 0px;
  --theme-radius: 4px;
  --theme-radius-lg: 8px;
  --theme-shadow: 0 1px 3px rgba(13,27,42,0.1);
  --theme-shadow-hover: 0 4px 12px rgba(13,27,42,0.15);
  --theme-hover-x: 0px;
  --theme-hover-y: -1px;
  --theme-btn-radius: 4px;
  --theme-card-pad: 2rem;
  --theme-section-py: 6rem;
  --theme-heading-weight: 800;
  --theme-hero-overlay: linear-gradient(to bottom, rgba(30,58,95,0.85), rgba(13,27,42,0.7));
  --theme-hero-min-h: 85vh;
  --theme-header-bg: #0d1b2a;
  --theme-header-link: #94a3b8;
  --theme-header-link-hover: #ffffff;
  --theme-footer-bg: #0d1b2a;
  --theme-footer-text: #64748b;
}

/* ─── SEAFOAM (Zoom Overseas-inspired) ─── */
html[data-theme="seafoam"] {
  --theme-font: 'Montserrat', system-ui, sans-serif;
  --theme-font-heading: 'Montserrat', system-ui, sans-serif;
  --theme-clr-primary: #16a780;
  --theme-clr-accent: #42713b;
  --theme-clr-dark: #1a3c2e;
  --theme-clr-bg: #f0fdfa;
  --theme-clr-bg-alt: #ccfbf1;
  --theme-clr-card: #ffffff;
  --theme-clr-text: #1a3c2e;
  --theme-clr-text-muted: #4a7a6a;
  --theme-clr-light: #f0fdfa;
  --theme-border-w: 1px;
  --theme-border-w-sm: 1px;
  --theme-radius: 6px;
  --theme-radius-lg: 10px;
  --theme-shadow: 0 2px 6px rgba(22,167,128,0.12);
  --theme-shadow-hover: 0 6px 20px rgba(22,167,128,0.18);
  --theme-hover-x: 0px;
  --theme-hover-y: -3px;
  --theme-btn-radius: 6px;
  --theme-card-pad: 1.5rem;
  --theme-section-py: 6.5rem;
  --theme-heading-weight: 700;
  --theme-hero-overlay: linear-gradient(to right, rgba(26,60,46,0.88), rgba(22,167,128,0.6));
  --theme-hero-min-h: 90vh;
  --theme-header-bg: #ffffff;
  --theme-header-link: #1a3c2e;
  --theme-header-link-hover: #16a780;
  --theme-footer-bg: #1a3c2e;
  --theme-footer-text: #7bb0a0;
}

/* ─── MODERN (GlobeWeave Ventures-inspired) ─── */
html[data-theme="modern"] {
  --theme-font: 'Roboto', system-ui, sans-serif;
  --theme-font-heading: 'Roboto', system-ui, sans-serif;
  --theme-clr-primary: #0f4c81;
  --theme-clr-accent: #2b6cb0;
  --theme-clr-dark: #0a1628;
  --theme-clr-bg: #f7fafc;
  --theme-clr-bg-alt: #e2e8f0;
  --theme-clr-card: #ffffff;
  --theme-clr-text: #0a1628;
  --theme-clr-text-muted: #4a5568;
  --theme-clr-light: #f7fafc;
  --theme-border-w: 0px;
  --theme-border-w-sm: 0px;
  --theme-radius: 12px;
  --theme-radius-lg: 16px;
  --theme-shadow: 0 4px 6px rgba(10,22,40,0.07);
  --theme-shadow-hover: 0 10px 25px rgba(10,22,40,0.12);
  --theme-hover-x: 0px;
  --theme-hover-y: -4px;
  --theme-btn-radius: 12px;
  --theme-card-pad: 2rem;
  --theme-section-py: 5.5rem;
  --theme-heading-weight: 700;
  --theme-hero-overlay: linear-gradient(to bottom, rgba(10,22,40,0.7), rgba(15,76,129,0.5));
  --theme-hero-min-h: 85vh;
  --theme-header-bg: #0a1628;
  --theme-header-link: #90cdf4;
  --theme-header-link-hover: #ffffff;
  --theme-footer-bg: #0a1628;
  --theme-footer-text: #63b3ed;
}

/* ─── APPLY THEME ─── */

/* Theme colors → utility class overrides */
html[data-theme] .text-amber-600,
html[data-theme] .hover\:text-amber-600:hover,
html[data-theme] .group:hover .group-hover\:text-amber-600 {
  color: var(--theme-clr-primary) !important;
}
html[data-theme] .text-amber-700,
html[data-theme] .hover\:text-amber-700:hover {
  color: var(--theme-clr-accent) !important;
}
html[data-theme] .text-amber-50 {
  color: var(--theme-clr-light) !important;
}
html[data-theme] .text-stone-900 {
  color: var(--theme-clr-text) !important;
}
html[data-theme] .text-stone-700,
html[data-theme] .text-stone-600,
html[data-theme] .text-stone-500 {
  color: var(--theme-clr-text-muted) !important;
}
html[data-theme] .text-stone-400 {
  color: var(--theme-clr-text-muted) !important;
  opacity: 0.7;
}
html[data-theme] .text-stone-300 {
  color: var(--theme-clr-text-muted) !important;
}

/* Backgrounds */
html[data-theme] .bg-amber-600 {
  background-color: var(--theme-clr-primary) !important;
}
html[data-theme] .hover\:bg-amber-600:hover {
  background-color: var(--theme-clr-primary) !important;
}
html[data-theme] .bg-amber-700,
html[data-theme] .hover\:bg-amber-700:hover {
  background-color: var(--theme-clr-accent) !important;
}
html[data-theme] .bg-amber-50 {
  background-color: var(--theme-clr-bg) !important;
}
html[data-theme] .bg-amber-100,
html[data-theme] .hover\:bg-amber-100:hover,
html[data-theme] .group:hover .group-hover\:bg-amber-200 {
  background-color: var(--theme-clr-bg-alt) !important;
}
html[data-theme] .bg-white {
  background-color: var(--theme-clr-card) !important;
}
html[data-theme] .bg-stone-900 {
  background-color: var(--theme-clr-dark) !important;
}
html[data-theme] .hover\:bg-stone-900:hover {
  background-color: var(--theme-clr-dark) !important;
}
html[data-theme] .bg-stone-100,
html[data-theme] .hover\:bg-stone-100:hover {
  background-color: var(--theme-clr-bg-alt) !important;
}

/* Borders */
html[data-theme] .border-amber-600 {
  border-color: var(--theme-clr-primary) !important;
  border-width: var(--theme-border-w) !important;
}
html[data-theme] .hover\:border-amber-600:hover {
  border-color: var(--theme-clr-primary) !important;
}
html[data-theme] .border-amber-700 {
  border-color: var(--theme-clr-accent) !important;
}
html[data-theme] .hover\:border-amber-700:hover {
  border-color: var(--theme-clr-accent) !important;
}
html[data-theme] .border-stone-900 {
  border-color: var(--theme-clr-dark) !important;
  border-width: var(--theme-border-w) !important;
}
html[data-theme] .border-stone-300 {
  border-color: var(--theme-clr-text-muted) !important;
}
html[data-theme] .border-stone-200 {
  border-color: var(--theme-clr-bg-alt) !important;
}

/* Outlines */
html[data-theme] .outline-amber-600,
html[data-theme] .hover\:outline-amber-600:hover {
  outline-color: var(--theme-clr-primary) !important;
}
html[data-theme] .focus\:border-amber-600:focus {
  border-color: var(--theme-clr-primary) !important;
}
html[data-theme] .ring-amber-600,
html[data-theme] .focus\:ring-amber-600:focus {
  --tw-ring-color: var(--theme-clr-accent) !important;
}

/* Shadows */
html[data-theme] .shadow-brutal {
  box-shadow: var(--theme-shadow-hover) !important;
}
html[data-theme] .shadow-brutal-sm {
  box-shadow: var(--theme-shadow) !important;
}
html[data-theme] .hover\:shadow-brutal:hover {
  box-shadow: var(--theme-shadow-hover) !important;
}
html[data-theme] .hover\:shadow-brutal-sm:hover {
  box-shadow: var(--theme-shadow) !important;
}
html[data-theme] .hover\:shadow-md:hover {
  box-shadow: var(--theme-shadow-hover) !important;
}

/* Rounded corners */
html[data-theme] .rounded,
html[data-theme] .rounded-sm {
  border-radius: var(--theme-radius) !important;
}
html[data-theme] .rounded-lg,
html[data-theme] .rounded-xl,
html[data-theme] .rounded-2xl {
  border-radius: var(--theme-radius-lg) !important;
}
html[data-theme] .rounded-full {
  border-radius: 9999px !important;
}

/* Hover transforms */
html[data-theme] .hover\:-translate-x-1:hover,
html[data-theme] .hover\:-translate-y-1:hover {
  transform: translate(var(--theme-hover-x), var(--theme-hover-y)) !important;
}
html[data-theme] .hover\:-translate-x-0\.5:hover,
html[data-theme] .hover\:-translate-y-0\.5:hover {
  transform: translate(calc(var(--theme-hover-x)/2), calc(var(--theme-hover-y)/2)) !important;
}

/* Typography */
html[data-theme] body,
html[data-theme] .font-sans {
  font-family: var(--theme-font) !important;
}
html[data-theme] h1, html[data-theme] h2, html[data-theme] h3,
html[data-theme] h4, html[data-theme] h5, html[data-theme] h6,
html[data-theme] .font-black, html[data-theme] .font-bold {
  font-family: var(--theme-font-heading) !important;
}
html[data-theme] .font-black {
  font-weight: var(--theme-heading-weight) !important;
}

/* Section spacing */
html[data-theme] .py-20, html[data-theme] .py-28 {
  padding-top: var(--theme-section-py) !important;
  padding-bottom: var(--theme-section-py) !important;
}

/* Button radius override */
html[data-theme] .thm-btn,
html[data-theme] button:not([class*="rounded"]),
html[data-theme] a:not([class*="rounded"]) > span.bg-amber-600 {
  border-radius: var(--theme-btn-radius) !important;
}

/* Gradient backgrounds (hero overlay) */
html[data-theme] .bg-gradient-to-b.from-amber-50.to-white,
html[data-theme] .bg-gradient-to-b.from-amber-50\/90 {
  background: var(--theme-hero-overlay) !important;
}

/* Hero min-height */
html[data-theme] .min-h-screen {
  min-height: var(--theme-hero-min-h) !important;
}
html[data-theme] .min-h-\[60vh\] {
  min-height: var(--theme-hero-min-h) !important;
}

/* Header */
html[data-theme] header.bg-stone-900,
html[data-theme] header .bg-stone-900 {
  background-color: var(--theme-header-bg) !important;
}
html[data-theme] header a.text-stone-300 {
  color: var(--theme-header-link) !important;
}
html[data-theme] header a:hover.text-stone-300:hover,
html[data-theme] header a.hover\:text-white:hover {
  color: var(--theme-header-link-hover) !important;
}

/* Footer */
html[data-theme] footer.bg-stone-900,
html[data-theme] footer .bg-stone-900 {
  background-color: var(--theme-footer-bg) !important;
}
html[data-theme] footer .text-stone-400,
html[data-theme] footer .text-stone-300 {
  color: var(--theme-footer-text) !important;
}

/* Border width for all bordered elements */
html[data-theme] .border-2 {
  border-width: var(--theme-border-w) !important;
}
html[data-theme] .border-3 {
  border-width: max(var(--theme-border-w), 2px) !important;
}
html[data-theme] .border {
  border-width: var(--theme-border-w-sm) !important;
}

/* Card padding */
html[data-theme] .p-6, html[data-theme] .p-8, html[data-theme] .p-10 {
  padding: var(--theme-card-pad) !important;
}
