.theme {
  transition: background-color 0.25s ease, color 0.25s ease;
}

.theme .site-header,
.theme .card,
.theme .button,
.theme .footer-note {
  transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.theme.theme-ocean_pro {
  --primary: #1565c0;
  --secondary: #00acc1;
  --bg: #eef3f8;
  --header-bg: #0d47a1;
  --header-text: #f3f8ff;
  --heading-color: #0f3b79;
  background: radial-gradient(circle at 0% 0%, #f7fbff 0%, #eef3f8 40%, #e9eff5 100%);
}

.theme.theme-ocean_pro .site-header {
  border-bottom: 0;
  box-shadow: 0 8px 24px rgba(13, 71, 161, 0.24);
}

.theme.theme-ocean_pro .card {
  border: 0;
  border-radius: 18px;
  box-shadow: 0 18px 38px rgba(21, 101, 192, 0.12);
}

.theme.theme-ocean_pro .button {
  border-radius: 12px;
}

.theme.theme-slate_editorial {
  --primary: #2b3240;
  --secondary: #b88b5a;
  --bg: #f2f0ed;
  --header-bg: #1d232f;
  --header-text: #f7f5f2;
  --heading-color: #242b38;
  background: linear-gradient(180deg, #f8f6f2 0%, #f2f0ed 100%);
}

.theme.theme-slate_editorial .site-header {
  border-bottom: 2px solid rgba(184, 139, 90, 0.45);
}

.theme.theme-slate_editorial h1,
.theme.theme-slate_editorial h2,
.theme.theme-slate_editorial h3 {
  letter-spacing: 0.2px;
}

.theme.theme-slate_editorial .card {
  border: 1px solid rgba(43, 50, 64, 0.16);
  border-radius: 10px;
  box-shadow: 0 8px 22px rgba(43, 50, 64, 0.08);
}

.theme.theme-slate_editorial .button {
  border-radius: 8px;
}

.theme.theme-emerald_research {
  --primary: #0f6b58;
  --secondary: #1cb88f;
  --bg: #ecf8f3;
  --header-bg: #0a4e40;
  --header-text: #ecfff8;
  --heading-color: #0f5d4c;
  background: linear-gradient(160deg, #f8fffc 0%, #ecf8f3 55%, #e5f4ee 100%);
}

.theme.theme-emerald_research .site-header {
  border-bottom: 0;
  box-shadow: 0 6px 18px rgba(10, 78, 64, 0.2);
}

.theme.theme-emerald_research .card {
  border: 1px solid rgba(15, 107, 88, 0.14);
  border-radius: 14px;
}

.theme.theme-sunset_modern {
  --primary: #8f3f32;
  --secondary: #f2a84b;
  --bg: #fff4ea;
  --header-bg: #6b2b22;
  --header-text: #fff7f0;
  --heading-color: #7c2f24;
  background: radial-gradient(circle at 80% 10%, #ffe7d1 0%, #fff4ea 38%, #fff0e3 100%);
}

.theme.theme-sunset_modern .site-header {
  border-bottom: 0;
  box-shadow: 0 10px 30px rgba(107, 43, 34, 0.22);
}

.theme.theme-sunset_modern .card {
  border: 0;
  border-radius: 16px;
  box-shadow: 0 16px 36px rgba(143, 63, 50, 0.14);
}

.theme.theme-sunset_modern .button {
  border-radius: 999px;
  padding-left: 18px;
  padding-right: 18px;
}

.theme.theme-mono_contrast {
  --primary: #171717;
  --secondary: #636363;
  --bg: #f4f4f4;
  --header-bg: #0f0f0f;
  --header-text: #fafafa;
  --heading-color: #1f1f1f;
  background: linear-gradient(180deg, #f8f8f8 0%, #f4f4f4 100%);
}

.theme.theme-mono_contrast .card {
  border: 1px solid rgba(25, 25, 25, 0.12);
  border-radius: 12px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.1);
}

.theme.theme-mono_contrast .button {
  border-radius: 10px;
}
