:root {
  --theme-toggle-bg: rgba(255, 255, 255, 0.78);
  --theme-toggle-border: rgba(16, 42, 94, 0.12);
  --theme-toggle-shadow: 0 18px 40px rgba(16, 42, 94, 0.14);
}

body[data-theme="auburn"] {
  --bg-1: #f3ede2;
  --bg-2: #efe2cc;
  --text: #0c2340;
  --ink: #0c2340;
  --muted: #5f6f85;
  --card: rgba(255, 250, 242, 0.82);
  --surface: rgba(255, 248, 239, 0.92);
  --panel: rgba(255, 250, 242, 0.82);
  --panel-strong: rgba(255, 248, 239, 0.92);
  --border: rgba(12, 35, 64, 0.12);
  --line: rgba(12, 35, 64, 0.12);
  --shadow: 0 24px 60px rgba(46, 33, 17, 0.12);
  --button: #dd550c;
  --button-text: #fff9f2;
  --danger: #a63d14;
  --accent: #dd550c;
  --theme-toggle-bg: rgba(255, 250, 242, 0.9);
  --theme-toggle-border: rgba(12, 35, 64, 0.12);
  --theme-toggle-shadow: 0 18px 40px rgba(46, 33, 17, 0.14);
  color: var(--text);
  background:
    radial-gradient(circle at 12% 18%, rgba(221, 85, 12, 0.09), transparent 24%),
    radial-gradient(circle at 88% 12%, rgba(12, 35, 64, 0.08), transparent 28%),
    radial-gradient(circle at 78% 82%, rgba(221, 85, 12, 0.08), transparent 24%),
    linear-gradient(160deg, var(--bg-1), var(--bg-2)) !important;
  background-attachment: fixed;
}

body[data-theme="dark"] {
  --bg-1: #10254f;
  --bg-2: #1f3766;
  --text: #d7e0c6;
  --ink: #d7e0c6;
  --muted: #b9c9ab;
  --card: rgba(10, 24, 52, 0.74);
  --surface: rgba(14, 31, 64, 0.88);
  --panel: rgba(10, 24, 52, 0.74);
  --panel-strong: rgba(14, 31, 64, 0.9);
  --border: rgba(215, 224, 198, 0.14);
  --line: rgba(215, 224, 198, 0.14);
  --shadow: 0 24px 60px rgba(3, 8, 20, 0.34);
  --button: #d7e0c6;
  --button-text: #10254f;
  --accent: #d4c5a7;
  --theme-toggle-bg: rgba(14, 31, 64, 0.94);
  --theme-toggle-border: rgba(215, 224, 198, 0.16);
  --theme-toggle-shadow: 0 20px 44px rgba(3, 8, 20, 0.38);
  color: var(--text);
  background:
    radial-gradient(circle at 12% 18%, rgba(212, 197, 167, 0.12), transparent 24%),
    radial-gradient(circle at 88% 12%, rgba(137, 160, 129, 0.14), transparent 28%),
    radial-gradient(circle at 78% 82%, rgba(183, 134, 85, 0.1), transparent 24%),
    linear-gradient(160deg, var(--bg-1), var(--bg-2)) !important;
  background-attachment: fixed;
}

body[data-theme="auburn"] h1,
body[data-theme="auburn"] h2,
body[data-theme="auburn"] h3,
body[data-theme="auburn"] .nav-brand,
body[data-theme="auburn"] .side-value,
body[data-theme="auburn"] .stat-value,
body[data-theme="auburn"] .detail-card h2,
body[data-theme="auburn"] .engagement-caption h2,
body[data-theme="auburn"] .eyebrow,
body[data-theme="auburn"] .nav-link.active {
  font-family: "ITC Galliard Std", "Galliard", "Cormorant Garamond", Georgia, serif !important;
}

body[data-theme="auburn"] .sidenav,
body[data-theme="auburn"] .panel,
body[data-theme="auburn"] .hero-side,
body[data-theme="auburn"] .side-card,
body[data-theme="auburn"] .detail-card,
body[data-theme="auburn"] .match-card,
body[data-theme="auburn"] .member-row,
body[data-theme="auburn"] .table-wrap,
body[data-theme="auburn"] .site-footer,
body[data-theme="auburn"] .notice,
body[data-theme="auburn"] .access-gate,
body[data-theme="auburn"] .faq-item,
body[data-theme="auburn"] .timeline-card,
body[data-theme="auburn"] .travel-card,
body[data-theme="auburn"] .venue-card,
body[data-theme="auburn"] .schedule-card {
  background: var(--panel-strong) !important;
  border-color: var(--line) !important;
  color: var(--ink);
  box-shadow: var(--shadow);
}

body[data-theme="dark"] .sidenav,
body[data-theme="dark"] .panel,
body[data-theme="dark"] .hero-side,
body[data-theme="dark"] .side-card,
body[data-theme="dark"] .detail-card,
body[data-theme="dark"] .match-card,
body[data-theme="dark"] .member-row,
body[data-theme="dark"] .table-wrap,
body[data-theme="dark"] .site-footer,
body[data-theme="dark"] .notice,
body[data-theme="dark"] .access-gate,
body[data-theme="dark"] .faq-item,
body[data-theme="dark"] .timeline-card,
body[data-theme="dark"] .travel-card,
body[data-theme="dark"] .venue-card,
body[data-theme="dark"] .schedule-card {
  background: var(--panel-strong) !important;
  border-color: var(--line) !important;
  color: var(--ink);
  box-shadow: var(--shadow);
}

body[data-theme="dark"] .hero-main,
body[data-theme="dark"] .engagement-banner,
body[data-theme="dark"] .preview,
body[data-theme="dark"] .stat,
body[data-theme="dark"] .match-card,
body[data-theme="dark"] .member-row,
body[data-theme="dark"] .detail-card,
body[data-theme="dark"] .side-card,
body[data-theme="dark"] .photo-strip-item,
body[data-theme="dark"] .gallery-item,
body[data-theme="dark"] .event-card,
body[data-theme="dark"] .faq-card {
  background: var(--surface) !important;
  border-color: var(--line) !important;
  color: var(--ink);
}

body[data-theme="auburn"] .hero-main,
body[data-theme="auburn"] .engagement-banner,
body[data-theme="auburn"] .preview,
body[data-theme="auburn"] .stat,
body[data-theme="auburn"] .match-card,
body[data-theme="auburn"] .member-row,
body[data-theme="auburn"] .detail-card,
body[data-theme="auburn"] .side-card,
body[data-theme="auburn"] .photo-strip-item,
body[data-theme="auburn"] .gallery-item,
body[data-theme="auburn"] .event-card,
body[data-theme="auburn"] .faq-card {
  background: var(--surface) !important;
  border-color: var(--line) !important;
  color: var(--ink);
}

body[data-theme="dark"] .hero-main {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.02)),
    linear-gradient(145deg, rgba(14, 31, 64, 0.9), rgba(10, 24, 52, 0.84)) !important;
}

body[data-theme="auburn"] .hero-main {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.52), rgba(255, 255, 255, 0.18)),
    linear-gradient(145deg, rgba(255, 250, 242, 0.92), rgba(246, 235, 216, 0.88)) !important;
}

body[data-theme="auburn"] .eyebrow,
body[data-theme="auburn"] .date-band {
  background: rgba(255, 248, 239, 0.92) !important;
  border-color: rgba(12, 35, 64, 0.1) !important;
  color: var(--ink) !important;
}

body[data-theme="dark"] .eyebrow,
body[data-theme="dark"] .date-band {
  background: rgba(14, 31, 64, 0.86) !important;
  border-color: rgba(215, 224, 198, 0.14) !important;
  color: var(--muted) !important;
}

body[data-theme="dark"] input,
body[data-theme="dark"] select,
body[data-theme="dark"] textarea {
  background: var(--surface) !important;
  color: var(--text) !important;
  border-color: var(--line) !important;
}

body[data-theme="auburn"] input,
body[data-theme="auburn"] select,
body[data-theme="auburn"] textarea {
  background: var(--surface) !important;
  color: var(--text) !important;
  border-color: var(--line) !important;
}

body[data-theme="auburn"] input::placeholder,
body[data-theme="auburn"] textarea::placeholder {
  color: rgba(95, 111, 133, 0.82);
}

body[data-theme="dark"] input::placeholder,
body[data-theme="dark"] textarea::placeholder {
  color: rgba(185, 201, 171, 0.72);
}

body[data-theme="auburn"] button,
body[data-theme="auburn"] .button,
body[data-theme="auburn"] .button-link {
  background: var(--button) !important;
  color: var(--button-text) !important;
}

body[data-theme="auburn"] button.secondary,
body[data-theme="auburn"] .button-secondary,
body[data-theme="auburn"] .button-link.secondary {
  background: #0c2340 !important;
  color: #fff9f2 !important;
}

body[data-theme="auburn"] button.danger {
  background: #a63d14 !important;
  color: #fff9f2 !important;
}

body[data-theme="dark"] button,
body[data-theme="dark"] .button,
body[data-theme="dark"] .button-link {
  background: var(--button) !important;
  color: var(--button-text) !important;
}

body[data-theme="dark"] button.secondary,
body[data-theme="dark"] .button-secondary,
body[data-theme="dark"] .button-link.secondary {
  background: #8ea38a !important;
  color: #10254f !important;
}

body[data-theme="dark"] button.danger {
  background: #c98f98 !important;
  color: #10254f !important;
}

body[data-theme="auburn"] a,
body[data-theme="auburn"] .nav-link,
body[data-theme="auburn"] .muted,
body[data-theme="auburn"] .status,
body[data-theme="auburn"] .note,
body[data-theme="auburn"] .side-label,
body[data-theme="auburn"] .stat-label {
  color: var(--muted) !important;
}

body[data-theme="auburn"] .nav-brand,
body[data-theme="auburn"] strong,
body[data-theme="auburn"] h1,
body[data-theme="auburn"] h2,
body[data-theme="auburn"] h3,
body[data-theme="auburn"] .side-value,
body[data-theme="auburn"] .stat-value,
body[data-theme="auburn"] .nav-link.active,
body[data-theme="auburn"] .legal-links a {
  color: var(--ink) !important;
}

body[data-theme="dark"] a,
body[data-theme="dark"] .nav-link,
body[data-theme="dark"] .nav-brand,
body[data-theme="dark"] .muted,
body[data-theme="dark"] .status,
body[data-theme="dark"] .note,
body[data-theme="dark"] .side-label,
body[data-theme="dark"] .stat-label {
  color: var(--muted) !important;
}

body[data-theme="dark"] h1,
body[data-theme="dark"] h2,
body[data-theme="dark"] h3,
body[data-theme="dark"] strong,
body[data-theme="dark"] .side-value,
body[data-theme="dark"] .stat-value,
body[data-theme="dark"] .nav-link.active,
body[data-theme="dark"] .nav-brand {
  color: var(--ink) !important;
}

.site-theme-toggle {
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  z-index: 999;
  display: inline-flex;
  gap: 0.35rem;
  padding: 0.45rem;
  border-radius: 999px;
  border: 1px solid var(--theme-toggle-border);
  background: var(--theme-toggle-bg);
  box-shadow: var(--theme-toggle-shadow);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.site-theme-toggle button {
  min-width: 4.7rem;
  border: none;
  border-radius: 999px;
  padding: 0.55rem 0.95rem;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
  color: var(--muted);
  background: transparent;
  box-shadow: none;
}

.site-theme-toggle button.active {
  background: var(--button);
  color: var(--button-text);
  box-shadow: 0 10px 24px rgba(16, 42, 94, 0.14);
}

@media (max-width: 700px) {
  .site-theme-toggle {
    right: 0.75rem;
    bottom: 0.75rem;
  }
}
