:root {
  --surface-tint: #0f766e;
  --primary: #0f766e;
  --primary-dim: #0d6460;
  --primary-container: #ccfbf1;
  --secondary: #1d4ed8;
  --secondary-dim: #1e40af;
  --secondary-container: #dbeafe;
  --tertiary: #7e22ce;
  --tertiary-dim: #6b21a8;
  --tertiary-container: #f3e8ff;
  --on-primary: #f0fdfa;
  --on-primary-container: #042f2e;
  --on-secondary: #eff6ff;
  --on-secondary-container: #1e3a5f;
  --on-tertiary: #faf5ff;
  --on-tertiary-container: #3b0764;
  --inverse-primary: #5eead4;
  --gradient-primary: linear-gradient(135deg, var(--primary), var(--primary-dim));
  --gradient-hero: linear-gradient(135deg, rgba(15, 118, 110, 0.10), rgba(13, 100, 96, 0.04));
}

body {
  background: linear-gradient(135deg, rgba(15, 118, 110, 0.06), rgba(219, 234, 254, 0.05)), var(--surface);
}

body::before {
  background:
    radial-gradient(circle at 20% 20%, rgba(255, 255, 255, 0.65), transparent 20%),
    radial-gradient(circle at 80% 0%, rgba(15, 118, 110, 0.06), transparent 28%),
    repeating-linear-gradient(0deg, rgba(45, 52, 51, 0.015) 0, rgba(45, 52, 51, 0.015) 1px, transparent 1px, transparent 5px);
}

::selection {
  background: rgba(15, 118, 110, 0.15);
  color: var(--on-surface);
}

@media (prefers-color-scheme: dark) {
  :root {
    --surface-tint: #5eead4;
    --primary: #5eead4;
    --primary-dim: #2dd4bf;
    --primary-container: #134e4a;
    --secondary: #93c5fd;
    --secondary-dim: #60a5fa;
    --secondary-container: #1e3a5f;
    --tertiary: #d8b4fe;
    --tertiary-dim: #c084fc;
    --tertiary-container: #4a1772;
    --on-primary: #002322;
    --on-primary-container: #a7f3d0;
    --on-secondary: #082044;
    --on-secondary-container: #bfdbfe;
    --on-tertiary: #1f0036;
    --on-tertiary-container: #f3e8ff;
    --inverse-primary: #0f766e;
    --gradient-primary: linear-gradient(135deg, var(--primary), var(--primary-dim));
    --gradient-hero: linear-gradient(135deg, rgba(94, 234, 212, 0.12), rgba(45, 212, 191, 0.05));
  }
}

html.dark-mode {
  --surface-tint: #5eead4;
  --primary: #5eead4;
  --primary-dim: #2dd4bf;
  --primary-container: #134e4a;
  --secondary: #93c5fd;
  --secondary-dim: #60a5fa;
  --secondary-container: #1e3a5f;
  --tertiary: #d8b4fe;
  --tertiary-dim: #c084fc;
  --tertiary-container: #4a1772;
  --on-primary: #002322;
  --on-primary-container: #a7f3d0;
  --on-secondary: #082044;
  --on-secondary-container: #bfdbfe;
  --on-tertiary: #1f0036;
  --on-tertiary-container: #f3e8ff;
  --inverse-primary: #0f766e;
  --gradient-primary: linear-gradient(135deg, var(--primary), var(--primary-dim));
  --gradient-hero: linear-gradient(135deg, rgba(94, 234, 212, 0.12), rgba(45, 212, 191, 0.05));
}

html.dark-mode body {
  background: linear-gradient(135deg, rgba(19, 78, 74, 0.25), rgba(74, 23, 114, 0.10)), var(--surface);
}
