/* Brand palette -----------------------------------------------------------
   Material's "custom" primary/accent read these variables. */
:root {
  --cc-brand: #2c9ccd;
  --cc-brand-dark: #1e85a8;
  --cc-brand-light: #5bb3d9;
  /* The brand blue only reaches 4.2:1 on white; links need 4.5:1. */
  --cc-link: #176b89;

  --md-primary-fg-color: var(--cc-brand);
  --md-primary-fg-color--light: var(--cc-brand-light);
  --md-primary-fg-color--dark: var(--cc-brand-dark);
  --md-accent-fg-color: var(--cc-brand-dark);
}

[data-md-color-scheme="slate"] {
  --md-primary-fg-color: var(--cc-brand);
  --md-accent-fg-color: var(--cc-brand-light);
  --md-typeset-a-color: var(--cc-brand-light);
}

[data-md-color-scheme="default"] {
  --md-typeset-a-color: var(--cc-link);
}

/* Landing page -------------------------------------------------------------
   The hero is the first thing a visitor sees, so it carries the value
   proposition rather than a badge wall. */
.cc-hero {
  text-align: center;
  padding: 3.5rem 1rem 2.5rem;
}

.cc-hero h1 {
  font-size: 2.9rem;
  line-height: 1.15;
  font-weight: 800;
  letter-spacing: -0.02em;
  margin: 0 0 0.6rem;
}

.cc-hero p {
  font-size: 1.05rem;
  max-width: 40rem;
  margin: 0 auto 1.8rem;
  color: var(--md-default-fg-color--light);
}

.cc-hero .md-button {
  margin: 0.3rem;
}

/* Hide the redundant H1 that MkDocs renders above a custom hero. */
.cc-hero + hr {
  display: none;
}

/* Feature grid: uses Material's card grid, tightened up a little. */
.md-typeset .grid.cards > ul > li {
  border-radius: 0.4rem;
  transition: border-color 125ms, box-shadow 125ms;
}

.md-typeset .grid.cards > ul > li:hover {
  border-color: var(--cc-brand);
  box-shadow: 0 0 0 1px var(--cc-brand);
}

.md-typeset .grid.cards > ul > li > hr {
  margin: 0.6rem 0;
}

/* Tables -------------------------------------------------------------------
   Cells align to the top so short values line up with a wrapped message. */
.md-typeset table:not([class]) td,
.md-typeset table:not([class]) th {
  vertical-align: top;
}

/* In the rule index tables only, keep codes, names and CLI flags on one line
   so the tables stay scannable. Other tables hold long regexes and lists that
   must stay wrappable. */
.md-typeset table.rules-index td code {
  white-space: nowrap;
}

/* Sidebar section headings ("Getting started", "Reference", ...) */
.md-nav__item--section > .md-nav__link {
  font-weight: 700;
  color: var(--md-default-fg-color);
}
