/* easy-cheese — cheese-themed overrides for mkdocs-material */

@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&display=swap");


:root {
  --cheese-rind: #b45309;
  --cheese-curd: #fde68a;
  --cheese-wheel: #f59e0b;
  --cheese-melt: #fb923c;
  --cheese-wax: #c2410c;
}

/* Headings keep the artisanal Fraunces; body stays on Inter for legibility */
.md-typeset h1,
.md-typeset h2 {
  font-family: "Fraunces", "Source Serif 4", Georgia, serif;
  font-optical-sizing: auto;
  letter-spacing: -0.01em;
}

/* Warm the header into a wheel-of-cheese gradient (light mode) */
.md-header,
.md-tabs {
  background: linear-gradient(
    135deg,
    var(--cheese-wax) 0%,
    var(--cheese-melt) 55%,
    var(--cheese-wheel) 100%
  );
}

/* Dark mode: brighten body + heading text. mkdocs-material's slate scheme
   uses ~82% alpha on text which reads as dim against the dark background;
   push to full opacity with a warm cream so paragraphs and headings stay
   crisp and on-brand */
[data-md-color-scheme="slate"] {
  --md-typeset-color: hsla(45, 35%, 96%, 1);
  --md-default-fg-color: hsla(45, 35%, 96%, 1);
  --md-default-fg-color--light: hsla(45, 30%, 90%, 1);
  --md-default-fg-color--lighter: hsla(45, 25%, 80%, 0.85);
}

[data-md-color-scheme="slate"] .md-typeset h1,
[data-md-color-scheme="slate"] .md-typeset h2,
[data-md-color-scheme="slate"] .md-typeset h3,
[data-md-color-scheme="slate"] .md-typeset h4 {
  color: #fef3c7;
}

/* Dark mode: swap to a deeper, aged-rind gradient so the header
   doesn't glare against the slate page background */
[data-md-color-scheme="slate"] .md-header,
[data-md-color-scheme="slate"] .md-tabs {
  background: linear-gradient(
    135deg,
    #7c2d12 0%,
    #92400e 55%,
    #b45309 100%
  );
}

/* Brand-mark gets a subtle melt */
.md-header__title {
  font-weight: 600;
  letter-spacing: 0.01em;
}

/* Logo: a tiny gentle wobble on hover, like a wheel rocking on a board */
@media (prefers-reduced-motion: no-preference) {
  .md-header__button.md-logo svg,
  .md-header__button.md-logo img {
    transition: transform 200ms ease-in-out;
  }

  .md-header__button.md-logo:hover svg,
  .md-header__button.md-logo:hover img {
    transform: rotate(-8deg) scale(1.05);
  }
}

/* Inline code: wax-paper background */
.md-typeset :not(pre) > code {
  background-color: rgba(253, 230, 138, 0.45);
  border: 1px solid rgba(180, 83, 9, 0.15);
  border-radius: 4px;
}

[data-md-color-scheme="slate"] .md-typeset :not(pre) > code {
  background-color: rgba(180, 83, 9, 0.25);
  border-color: rgba(253, 230, 138, 0.2);
}

/* "Tip" admonitions get a cheese-colored stripe so cheese-flavored asides pop */
.md-typeset .admonition.tip,
.md-typeset details.tip {
  border-color: var(--cheese-wheel);
}
.md-typeset .tip > .admonition-title,
.md-typeset .tip > summary {
  background-color: rgba(245, 158, 11, 0.12);
}
.md-typeset .tip > .admonition-title::before,
.md-typeset .tip > summary::before {
  background-color: var(--cheese-rind);
}

/* Tables: subtle aged-paper alternating rows */
.md-typeset table:not([class]) tbody tr:nth-child(even) {
  background-color: rgba(253, 230, 138, 0.08);
}

/* Footer copyright a little warmer */
.md-footer-meta__inner {
  font-variant-caps: small-caps;
  letter-spacing: 0.03em;
}

/* Mermaid diagrams: nudge node fills toward the cheese palette */
.mermaid .node rect,
.mermaid .node polygon,
.mermaid .node circle {
  stroke: var(--cheese-rind) !important;
}
