[data-theme='opsml'] {
	--text-scaling: 1.067;
	--base-font-color: 0 0 0;
	--base-font-color-dark: 255 255 255;
	--base-font-family: inherit;
	--base-font-size: inherit;
	--base-line-height: inherit;
	--base-font-weight: 500;
	--base-font-style: inherit;
	--base-letter-spacing: 0em;
	--heading-font-color: inherit;
	--heading-font-color-dark: inherit;
	--heading-font-family: inherit;
	--heading-font-weight: bold;
	--heading-font-style: normal;
	--heading-letter-spacing: inherit;
	--anchor-font-color: var(--color-primary-500);
	--anchor-font-color-dark: var(--color-primary-500);
	--anchor-font-family: inherit;
	--anchor-font-size: inherit;
	--anchor-line-height: inherit;
	--anchor-font-weight: inherit;
	--anchor-font-style: inherit;
	--anchor-letter-spacing: inherit;
	--anchor-text-decoration: none;
	--anchor-text-decoration-hover: underline;
	--anchor-text-decoration-active: none;
	--anchor-text-decoration-focus: none;
	--spacing: 0.25rem;
	--radius-base: 0.375rem;
	--radius-container: 0.75rem;
	--default-border-width: 1px;
	--default-divide-width: 1px;
	--default-ring-width: 1px;
	--body-background-color: var(--color-surface-50);
	--body-background-color-dark: var(--color-surface-950);
	--color-primary-50: oklch(100% 0 none);
	--color-primary-100: oklch(93.86% 0.03 299.6deg);
	--color-primary-200: oklch(87.64% 0.06 297.52deg);
	--color-primary-300: oklch(81.64% 0.08 296.73deg);
	--color-primary-400: oklch(75.43% 0.12 295.41deg);
	--color-primary-500: oklch(69.32% 0.15 294.6deg);
	--color-primary-600: oklch(61.99% 0.14 292.64deg);
	--color-primary-700: oklch(54.41% 0.1395 290.504);
	--color-primary-800: oklch(46.73% 0.14 288.29deg);
	--color-primary-900: oklch(38.72% 0.14 284.86deg);
	--color-primary-950: oklch(30.7% 0.14 279.76deg);
	--color-primary-contrast-dark: var(--color-primary-950);
	--color-primary-contrast-light: var(--color-primary-50);
	--color-primary-contrast-50: var(--color-primary-contrast-dark);
	--color-primary-contrast-100: var(--color-primary-contrast-dark);
	--color-primary-contrast-200: var(--color-primary-contrast-dark);
	--color-primary-contrast-300: var(--color-primary-contrast-dark);
	--color-primary-contrast-400: var(--color-primary-contrast-dark);
	--color-primary-contrast-500: var(--color-primary-contrast-light);
	--color-primary-contrast-600: var(--color-primary-contrast-light);
	--color-primary-contrast-700: var(--color-primary-contrast-light);
	--color-primary-contrast-800: var(--color-primary-contrast-light);
	--color-primary-contrast-900: var(--color-primary-contrast-light);
	--color-primary-contrast-950: var(--color-primary-contrast-light);
	--color-secondary-50: oklch(97.99% 0.03 196.62deg);
	--color-secondary-100: oklch(93.99% 0.05 173.3deg);
	--color-secondary-200: oklch(90.03% 0.08 164.54deg);
	--color-secondary-300: oklch(86.05% 0.1 160.39deg);
	--color-secondary-400: oklch(82.37% 0.13 156.92deg);
	--color-secondary-500: oklch(78.955% 0.14997 153.915);
	--color-secondary-600: oklch(71.83% 0.15 153.14deg);
	--color-secondary-700: oklch(64.6% 0.14 152.1deg);
	--color-secondary-800: oklch(56.97% 0.14 151.29deg);
	--color-secondary-900: oklch(49.43% 0.13 149.62deg);
	--color-secondary-950: oklch(41.7% 0.12 147.6deg);
	--color-secondary-contrast-dark: var(--color-secondary-950);
	--color-secondary-contrast-light: var(--color-secondary-50);
	--color-secondary-contrast-50: var(--color-secondary-contrast-dark);
	--color-secondary-contrast-100: var(--color-secondary-contrast-dark);
	--color-secondary-contrast-200: var(--color-secondary-contrast-dark);
	--color-secondary-contrast-300: var(--color-secondary-contrast-dark);
	--color-secondary-contrast-400: var(--color-secondary-contrast-dark);
	--color-secondary-contrast-500: var(--color-secondary-contrast-dark);
	--color-secondary-contrast-600: var(--color-secondary-contrast-dark);
	--color-secondary-contrast-700: var(--color-secondary-contrast-dark);
	--color-secondary-contrast-800: var(--color-secondary-contrast-light);
	--color-secondary-contrast-900: var(--color-secondary-contrast-light);
	--color-secondary-contrast-950: var(--color-secondary-contrast-light);
	--color-tertiary-50: oklch(100% 0 none);
	--color-tertiary-100: oklch(94.79% 0.02 264.49deg);
	--color-tertiary-200: oklch(89.54% 0.04 263.66deg);
	--color-tertiary-300: oklch(84.39% 0.06 264.62deg);
	--color-tertiary-400: oklch(79.13% 0.08 263.93deg);
	--color-tertiary-500: oklch(73.95% 0.11 263.6deg);
	--color-tertiary-600: oklch(66.53% 0.11 260.54deg);
	--color-tertiary-700: oklch(58.94% 0.11 257.4deg);
	--color-tertiary-800: oklch(51% 0.11 255.32deg);
	--color-tertiary-900: oklch(43.2% 0.11 253.57deg);
	--color-tertiary-950: oklch(35.46% 0.11 253.79deg);
	--color-tertiary-contrast-dark: var(--color-tertiary-950);
	--color-tertiary-contrast-light: var(--color-tertiary-50);
	--color-tertiary-contrast-50: var(--color-tertiary-contrast-dark);
	--color-tertiary-contrast-100: var(--color-tertiary-contrast-dark);
	--color-tertiary-contrast-200: var(--color-tertiary-contrast-dark);
	--color-tertiary-contrast-300: var(--color-tertiary-contrast-dark);
	--color-tertiary-contrast-400: var(--color-tertiary-contrast-dark);
	--color-tertiary-contrast-500: var(--color-tertiary-contrast-dark);
	--color-tertiary-contrast-600: var(--color-tertiary-contrast-dark);
	--color-tertiary-contrast-700: var(--color-tertiary-contrast-light);
	--color-tertiary-contrast-800: var(--color-tertiary-contrast-light);
	--color-tertiary-contrast-900: var(--color-tertiary-contrast-light);
	--color-tertiary-contrast-950: var(--color-tertiary-contrast-light);
	--color-success-50: oklch(98.97% 0.05 107.31deg);
	--color-success-100: oklch(97.05% 0.08 102.01deg);
	--color-success-200: oklch(95.11% 0.1 99.78deg);
	--color-success-300: oklch(93.31% 0.12 97.86deg);
	--color-success-400: oklch(91.51% 0.14 96.67deg);
	--color-success-500: oklch(89.86% 0.15 95.04deg);
	--color-success-600: oklch(82.48% 0.14 95.03deg);
	--color-success-700: oklch(75.05% 0.14 95.97deg);
	--color-success-800: oklch(67.33% 0.13 95.83deg);
	--color-success-900: oklch(59.52% 0.12 96.76deg);
	--color-success-950: oklch(51.33% 0.11 96.24deg);
	--color-success-contrast-dark: var(--color-success-950);
	--color-success-contrast-light: var(--color-success-50);
	--color-success-contrast-50: var(--color-success-contrast-dark);
	--color-success-contrast-100: var(--color-success-contrast-dark);
	--color-success-contrast-200: var(--color-success-contrast-dark);
	--color-success-contrast-300: var(--color-success-contrast-dark);
	--color-success-contrast-400: var(--color-success-contrast-dark);
	--color-success-contrast-500: var(--color-success-contrast-dark);
	--color-success-contrast-600: var(--color-success-contrast-dark);
	--color-success-contrast-700: var(--color-success-contrast-dark);
	--color-success-contrast-800: var(--color-success-contrast-light);
	--color-success-contrast-900: var(--color-success-contrast-light);
	--color-success-contrast-950: var(--color-success-contrast-light);
	--color-warning-50: oklch(99.02% 0.05 107.26deg);
	--color-warning-100: oklch(95.45% 0.06 93.7deg);
	--color-warning-200: oklch(91.73% 0.08 83.94deg);
	--color-warning-300: oklch(88.22% 0.1 78.32deg);
	--color-warning-400: oklch(84.68% 0.11 72.87deg);
	--color-warning-500: oklch(81.47% 0.13 68.75deg);
	--color-warning-600: oklch(74% 0.12 68.45deg);
	--color-warning-700: oklch(66.67% 0.12 68.25deg);
	--color-warning-800: oklch(58.85% 0.11 67.06deg);
	--color-warning-900: oklch(51.13% 0.11 65.69deg);
	--color-warning-950: oklch(42.82% 0.1 62.8deg);
	--color-warning-contrast-dark: var(--color-warning-950);
	--color-warning-contrast-light: var(--color-warning-50);
	--color-warning-contrast-50: var(--color-warning-contrast-dark);
	--color-warning-contrast-100: var(--color-warning-contrast-dark);
	--color-warning-contrast-200: var(--color-warning-contrast-dark);
	--color-warning-contrast-300: var(--color-warning-contrast-dark);
	--color-warning-contrast-400: var(--color-warning-contrast-dark);
	--color-warning-contrast-500: var(--color-warning-contrast-dark);
	--color-warning-contrast-600: var(--color-warning-contrast-dark);
	--color-warning-contrast-700: var(--color-warning-contrast-dark);
	--color-warning-contrast-800: var(--color-warning-contrast-light);
	--color-warning-contrast-900: var(--color-warning-contrast-light);
	--color-warning-contrast-950: var(--color-warning-contrast-light);
	--color-error-50: oklch(89.86% 0.05 26.86deg);
	--color-error-100: oklch(90.84% 0.04 16.21deg);
	--color-error-200: oklch(84.73% 0.08 23.52deg);
	--color-error-300: oklch(79.71% 0.12 21.92deg);
	--color-error-400: oklch(75.25% 0.15 22.22deg);
	--color-error-500: oklch(71.16% 0.18 22.84deg);
	--color-error-600: oklch(63.96% 0.18 23.5deg);
	--color-error-700: oklch(56.57% 0.17 24.08deg);
	--color-error-800: oklch(49.46% 0.17 24.94deg);
	--color-error-900: oklch(42.18% 0.16 26.39deg);
	--color-error-950: oklch(35.13% 0.14 28.29deg);
	--color-error-contrast-dark: var(--color-error-950);
	--color-error-contrast-light: var(--color-error-50);
	--color-error-contrast-50: var(--color-error-contrast-dark);
	--color-error-contrast-100: var(--color-error-contrast-dark);
	--color-error-contrast-200: var(--color-error-contrast-dark);
	--color-error-contrast-300: var(--color-error-contrast-dark);
	--color-error-contrast-400: var(--color-error-contrast-dark);
	--color-error-contrast-500: var(--color-error-contrast-dark);
	--color-error-contrast-600: var(--color-error-contrast-light);
	--color-error-contrast-700: var(--color-error-contrast-light);
	--color-error-contrast-800: var(--color-error-contrast-light);
	--color-error-contrast-900: var(--color-error-contrast-light);
	--color-error-contrast-950: var(--color-error-contrast-light);
	--color-surface-50: oklch(100% 0 none);
	--color-surface-100: oklch(99.43% 0 287.34deg);
	--color-surface-200: oklch(98.84% 0 287.33deg);
	--color-surface-300: oklch(98.34% 0 309.08deg);
	--color-surface-400: oklch(97.75% 0 309.07deg);
	--color-surface-500: oklch(97.18% 0 301.83deg);
	--color-surface-600: oklch(89.89% 0 309deg);
	--color-surface-700: oklch(82.2% 0 301.74deg);
	--color-surface-800: oklch(74.58% 0 308.87deg);
	--color-surface-900: oklch(66.5% 0 301.64deg);
	--color-surface-950: oklch(58.44% 0 308.74deg);
	--color-surface-contrast-dark: var(--color-surface-950);
	--color-surface-contrast-light: var(--color-surface-50);
	--color-surface-contrast-50: var(--color-surface-contrast-dark);
	--color-surface-contrast-100: var(--color-surface-contrast-dark);
	--color-surface-contrast-200: var(--color-surface-contrast-dark);
	--color-surface-contrast-300: var(--color-surface-contrast-dark);
	--color-surface-contrast-400: var(--color-surface-contrast-dark);
	--color-surface-contrast-500: var(--color-surface-contrast-dark);
	--color-surface-contrast-600: var(--color-surface-contrast-dark);
	--color-surface-contrast-700: var(--color-surface-contrast-dark);
	--color-surface-contrast-800: var(--color-surface-contrast-dark);
	--color-surface-contrast-900: var(--color-surface-contrast-dark);
	--color-surface-contrast-950: var(--color-surface-contrast-light);
}

[data-theme='opsml'] {
  /* You can fine‑tune these without touching classes */
  --retro-primary-from: oklch(88% 0.18 302deg); /* soft neon magenta */
  --retro-primary-mid:  oklch(84% 0.22 295deg);
  --retro-primary-to:   oklch(79% 0.20 288deg);

  --retro-secondary-from: oklch(90% 0.14 190deg); /* cyan / aqua */
  --retro-secondary-mid:  oklch(86% 0.18 182deg);
  --retro-secondary-to:   oklch(82% 0.20 174deg);

  --retro-tertiary-from: oklch(89% 0.16 265deg); /* violet */
  --retro-tertiary-mid:  oklch(85% 0.19 258deg);
  --retro-tertiary-to:   oklch(80% 0.21 252deg);

  --retro-success-from: oklch(90% 0.18 125deg); /* lime / acid */
  --retro-success-mid:  oklch(86% 0.22 112deg);
  --retro-success-to:   oklch(81% 0.24 100deg);

  --retro-warning-from: oklch(92% 0.14 80deg);  /* peach / apricot */
  --retro-warning-mid:  oklch(88% 0.18 70deg);
  --retro-warning-to:   oklch(83% 0.20 60deg);

  --retro-error-from: oklch(88% 0.18 25deg);    /* hot coral */
  --retro-error-mid:  oklch(83% 0.22 18deg);
  --retro-error-to:   oklch(78% 0.24 12deg);
}

/* Replace originals (or keep both; this fully overrides existing gradient-* if order is last) */
[data-theme='opsml'] .gradient-primary {
  background:
    linear-gradient(135deg,
      var(--retro-primary-from) 0%,
      var(--retro-primary-mid) 48%,
      var(--retro-primary-to) 100%);
}
[data-theme='opsml'] .gradient-secondary {
  background:
    linear-gradient(135deg,
      var(--retro-secondary-from) 0%,
      var(--retro-secondary-mid) 52%,
      var(--retro-secondary-to) 100%);
}
[data-theme='opsml'] .gradient-tertiary {
  background:
    linear-gradient(135deg,
      var(--retro-tertiary-from) 0%,
      var(--retro-tertiary-mid) 50%,
      var(--retro-tertiary-to) 100%);
}
[data-theme='opsml'] .gradient-success {
  background:
    linear-gradient(135deg,
      var(--retro-success-from) 0%,
      var(--retro-success-mid) 50%,
      var(--retro-success-to) 100%);
}
[data-theme='opsml'] .gradient-warning {
  background:
    linear-gradient(135deg,
      var(--retro-warning-from) 0%,
      var(--retro-warning-mid) 52%,
      var(--retro-warning-to) 100%);
}
[data-theme='opsml'] .gradient-error {
  background:
    linear-gradient(135deg,
      var(--retro-error-from) 0%,
      var(--retro-error-mid) 50%,
      var(--retro-error-to) 100%);
}

/* Optional neon glow + crisp brutalist edge */
[data-theme='opsml'] .neo-glow {
  position: relative;
  box-shadow:
    0 0 0 2px #000,
    3px 3px 0 0 #000,
    0 0 12px 2px oklch(82% 0.20 295deg / 0.55);
}
[data-theme='opsml'] .neo-glow::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 2px solid rgba(255 255 255 / 0.25);
  mix-blend-mode: overlay;
  pointer-events: none;
  border-radius: inherit;
}

/* Utility for grainy texture (optional) */
[data-theme='opsml'] .grain {
  position: relative;
}
[data-theme='opsml'] .grain::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
     repeating-radial-gradient(circle at 30% 30%, rgba(0 0 0 / 0.08) 0 1px, transparent 1px 3px),
     repeating-linear-gradient(45deg, rgba(255 255 255 / 0.07) 0 2px, transparent 2px 4px);
  mix-blend-mode: soft-light;
  opacity: .55;
  border-radius: inherit;
  filter: contrast(120%) brightness(105%);
}