:root {
  --md-primary-fg-color: #c9871b;
  --md-primary-fg-color--light: #f4b640;
  --md-primary-fg-color--dark: #79500f;
  --md-accent-fg-color: #e9a326;
}

[data-md-color-scheme='slate'] {
  --md-default-bg-color: #10140f;
  --md-default-bg-color--light: #171c14;
  --md-default-fg-color: #f2ead4;
  --md-default-fg-color--light: #c9c4a9;
  --md-code-bg-color: #192017;
  --md-typeset-a-color: #efb13c;
}

[data-md-color-scheme='observatory-light'] {
  --md-default-bg-color: #fbf8ed;
  --md-default-fg-color: #253022;
  --md-code-bg-color: #eee9d5;
  --md-typeset-a-color: #855800;
}

.md-header,
.md-tabs {
  background: linear-gradient(115deg, #172016, #3a3216);
}

.md-main {
  background-image:
    radial-gradient(circle at 88% 8%, rgb(218 151 29 / 10%), transparent 20rem),
    linear-gradient(rgb(185 133 32 / 4%) 1px, transparent 1px),
    linear-gradient(90deg, rgb(185 133 32 / 4%) 1px, transparent 1px);
  background-size:
    auto,
    32px 32px,
    32px 32px;
}

.md-typeset h1 {
  color: var(--md-default-fg-color);
  font-weight: 760;
  letter-spacing: -0.035em;
}

.md-typeset h2 {
  border-bottom: 1px solid
    color-mix(in srgb, var(--md-primary-fg-color) 35%, transparent);
  padding-bottom: 0.35rem;
}

.md-typeset .grid.cards > ul > li,
.md-typeset .admonition,
.md-typeset details {
  border-color: color-mix(in srgb, var(--md-primary-fg-color) 48%, transparent);
  box-shadow: 0 12px 34px rgb(0 0 0 / 12%);
}

.md-typeset .grid.cards > ul > li:hover {
  border-color: var(--md-primary-fg-color);
  transform: translateY(-2px);
  transition: 160ms ease;
}

.mermaid {
  overflow-x: auto;
  padding: 1rem;
  border: 1px solid
    color-mix(in srgb, var(--md-primary-fg-color) 35%, transparent);
  border-radius: 0.7rem;
  background: #10140f;
}

.status-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.25rem 0.6rem;
  border: 1px solid #a77721;
  border-radius: 999px;
  color: #ffd58c;
  background: #2b2d13;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

@media (max-width: 600px) {
  .md-grid {
    padding-inline: 0.25rem;
  }
  .md-typeset h1 {
    font-size: 1.8rem;
  }
  .md-typeset table:not([class]) {
    font-size: 0.72rem;
  }
  .mermaid {
    padding: 0.45rem;
  }
  .md-typeset .md-button {
    display: block;
    width: 100%;
    margin: 0.4rem 0;
    text-align: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}
