/* Jenz brand for Material for MkDocs — same tokens as the Jenz document style. */

:root {
  --jenz-pink: #e7267a;
  --jenz-pink-dark: #b8135c;   /* links and text on white: 4.5:1 or better */
  --jenz-pink-light: #ff6fa8;  /* links on dark backgrounds */
  --jenz-ink: #202124;
  --jenz-ink-soft: #404041;
  --jenz-muted: #696969;
  --jenz-ground: #f6f8f9;
  --jenz-surface: #ffffff;
  --jenz-turquoise: #1f7a7a;
  --jenz-amber: #8a5a00;
}

/* ---------- Light ---------- */

[data-md-color-scheme="default"] {
  --md-primary-fg-color: var(--jenz-pink);
  --md-primary-fg-color--light: #ee5c9b;
  --md-primary-fg-color--dark: var(--jenz-pink-dark);
  --md-primary-bg-color: #ffffff;
  --md-accent-fg-color: var(--jenz-pink-dark);
  --md-accent-fg-color--transparent: rgba(231, 38, 122, 0.1);

  --md-default-fg-color: var(--jenz-ink);
  --md-default-fg-color--light: var(--jenz-ink-soft);
  --md-default-fg-color--lighter: var(--jenz-muted);
  --md-default-bg-color: var(--jenz-surface);

  --md-typeset-color: var(--jenz-ink);
  --md-typeset-a-color: var(--jenz-pink-dark);
  --md-code-bg-color: var(--jenz-ground);
  --md-footer-bg-color: var(--jenz-ink);
  --md-footer-bg-color--dark: #17181a;
}

/* ---------- Dark ---------- */

[data-md-color-scheme="slate"] {
  --md-hue: 220;
  --md-primary-fg-color: var(--jenz-pink);
  --md-primary-fg-color--light: #ee5c9b;
  --md-primary-fg-color--dark: var(--jenz-pink-dark);
  --md-primary-bg-color: #ffffff;
  --md-accent-fg-color: var(--jenz-pink-light);
  --md-accent-fg-color--transparent: rgba(255, 111, 168, 0.12);
  --md-typeset-a-color: var(--jenz-pink-light);
}

/* ---------- Text logo ---------- */

.jenz-wordmark {
  display: inline-block;
  font-family: "Nunito", sans-serif;
  font-weight: 900;
  font-size: 1.45rem;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--md-primary-bg-color);
}
.md-header__button.md-logo {
  margin-right: 0;
  padding-right: 0.2rem;
}
.md-header__title {
  font-weight: 600;
  opacity: 0.92;
}
.md-nav__title .md-nav__button.md-logo .jenz-wordmark {
  color: var(--md-primary-fg-color);
  font-size: 1.8rem;
}

/* ---------- Type ---------- */

.md-typeset h1 {
  font-weight: 800;
  color: var(--md-default-fg-color);
}
.md-typeset h2,
.md-typeset h3 {
  font-weight: 700;
}
.md-typeset code {
  border-radius: 6px;
}

/* ---------- Callouts in Jenz colours ---------- */

.md-typeset .admonition.note,
.md-typeset details.note,
.md-typeset .admonition.info,
.md-typeset details.info {
  border-color: var(--jenz-turquoise);
}
.md-typeset .note > .admonition-title,
.md-typeset .note > summary,
.md-typeset .info > .admonition-title,
.md-typeset .info > summary {
  background-color: rgba(31, 122, 122, 0.1);
}
.md-typeset .note > .admonition-title::before,
.md-typeset .note > summary::before,
.md-typeset .info > .admonition-title::before,
.md-typeset .info > summary::before {
  background-color: var(--jenz-turquoise);
}

.md-typeset .admonition.warning,
.md-typeset details.warning {
  border-color: var(--jenz-amber);
}
.md-typeset .warning > .admonition-title,
.md-typeset .warning > summary {
  background-color: rgba(138, 90, 0, 0.1);
}
.md-typeset .warning > .admonition-title::before,
.md-typeset .warning > summary::before {
  background-color: var(--jenz-amber);
}

.md-typeset .admonition.tip,
.md-typeset details.tip {
  border-color: var(--jenz-pink);
}
.md-typeset .tip > .admonition-title,
.md-typeset .tip > summary {
  background-color: rgba(231, 38, 122, 0.08);
}
.md-typeset .tip > .admonition-title::before,
.md-typeset .tip > summary::before {
  background-color: var(--jenz-pink);
}

/* ---------- Landing page ---------- */

.jenz-hero {
  margin: 0 0 2rem;
  padding: 2.4rem 2rem;
  border-radius: 18px;
  background: linear-gradient(135deg, var(--jenz-pink) 0%, #c4155f 100%);
  color: #fff;
}
.md-typeset .jenz-hero h1 {
  margin: 0 0 0.6rem;
  color: #fff;
  font-size: 2.1rem;
  line-height: 1.2;
}
.jenz-hero p {
  max-width: 38rem;
  margin: 0 0 1.4rem;
  font-size: 0.95rem;
  opacity: 0.95;
}
.md-typeset .jenz-hero .md-button {
  margin: 0 0.4rem 0.4rem 0;
  border-color: #fff;
  color: #fff;
}
.md-typeset .jenz-hero .md-button--primary {
  background-color: #fff;
  color: var(--jenz-pink-dark);
}
.md-typeset .jenz-hero .md-button:hover,
.md-typeset .jenz-hero .md-button:focus {
  background-color: rgba(255, 255, 255, 0.18);
  border-color: #fff;
  color: #fff;
}

.md-typeset .grid.cards > ul > li,
.md-typeset .grid.cards > ol > li {
  border-radius: 14px;
}
.md-typeset .grid.cards > ul > li:hover {
  border-color: var(--jenz-pink);
  box-shadow: 0 6px 18px rgba(231, 38, 122, 0.12);
}

@media screen and (max-width: 44.9375em) {
  .jenz-hero {
    padding: 1.6rem 1.2rem;
    border-radius: 14px;
  }
  .md-typeset .jenz-hero h1 {
    font-size: 1.6rem;
  }
}
