:root,
[data-bs-theme="light"] {
  --dp-accent: #68217a;
  --dp-accent-emphasis: #4e1861;
  --dp-accent-rgb: 104, 33, 122;
  --dp-accent2: #00599c;
  --dp-accent2-rgb: 0, 89, 156;
  --dp-success: #1f9d75;
  --dp-warn: #b8860b;
  --dp-hero-grad: linear-gradient(120deg, #3c1049, #5a2472 45%, #00599c);
  --dp-hero-fg: #ffffff;

  --bs-body-bg: #faf9f6;
  --bs-body-color: #1b1d22;
  --bs-primary: var(--dp-accent);
  --bs-primary-rgb: var(--dp-accent-rgb);
  --bs-link-color: var(--dp-accent-emphasis);
  --bs-link-hover-color: var(--dp-accent);
}

[data-bs-theme="dark"] {
  --dp-accent: #b37fc4;
  --dp-accent-emphasis: #c9a0d9;
  --dp-accent-rgb: 179, 127, 196;
  --dp-accent2: #5aa9e6;
  --dp-accent2-rgb: 90, 169, 230;
  --dp-success: #2ed8a0;
  --dp-warn: #f2b84b;
  --dp-hero-grad: linear-gradient(120deg, #171a21, #3c1049 50%, #114a76);
  --dp-hero-fg: #ffffff;

  --bs-body-bg: #0f1115;
  --bs-body-color: #e8e6e1;
  --bs-tertiary-bg: #1b1e26;
  --bs-secondary-bg: #1b1e26;
  --bs-border-color: #2a2d36;
  --bs-primary: var(--dp-accent);
  --bs-primary-rgb: var(--dp-accent-rgb);
  --bs-link-color: var(--dp-accent-emphasis);
  --bs-link-hover-color: var(--dp-accent);
  color-scheme: dark;
}

html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

html {
  position: relative;
  min-height: 100%;
}

body {
  font-family: "Inter", system-ui, -apple-system, sans-serif;
  margin-bottom: 60px;
  transition: background-color 0.15s ease, color 0.15s ease;
}

h1, h2, h3, h4, h5, h6, .navbar-brand {
  font-family: "Space Grotesk", "Inter", system-ui, sans-serif;
}

code, kbd, pre, .pkg-version-badge, .pkg-install-cmd, .package-card-meta code {
  font-family: "JetBrains Mono", ui-monospace, monospace;
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem var(--bs-body-bg), 0 0 0 0.25rem var(--dp-accent);
}

.btn-primary {
  --bs-btn-bg: var(--dp-accent);
  --bs-btn-border-color: var(--dp-accent);
  --bs-btn-hover-bg: var(--dp-accent-emphasis);
  --bs-btn-hover-border-color: var(--dp-accent-emphasis);
  --bs-btn-active-bg: var(--dp-accent-emphasis);
  --bs-btn-active-border-color: var(--dp-accent-emphasis);
}
