[data-md-color-scheme="default"], [data-md-color-scheme="slate"] {
  --md-default-bg-color: var(--superficie);
  --md-default-fg-color: var(--texto);
  --md-default-fg-color--light: var(--texto-suave);
  --md-default-fg-color--lighter: var(--texto-fraco);
  --md-default-fg-color--lightest: var(--linha);
  --md-primary-fg-color: var(--superficie);
  --md-primary-bg-color: var(--texto);
  --md-primary-bg-color--light: var(--texto-fraco);
  --md-accent-fg-color: var(--acao);
  --md-typeset-color: var(--texto);
  --md-typeset-a-color: var(--acao);
  --md-code-bg-color: var(--superficie-alt);
  --md-code-fg-color: var(--texto);
  --md-footer-bg-color: var(--superficie-inversa);
  --md-footer-fg-color: var(--texto-inverso);
  --md-footer-fg-color--light: var(--texto-inverso-suave);
}

body, .md-typeset { font-family: var(--font-texto); }
.md-typeset { font-size: 18px; line-height: 1.6; color: var(--texto); }
.md-typeset p, .md-typeset li { max-width: var(--largura-texto); }
.md-typeset h1, .md-typeset h2, .md-typeset h3, .md-typeset h4,
.md-header__title, .md-tabs, .md-nav__title, .md-nav__link, .md-typeset table:not([class]) th {
  font-family: var(--font-display);
}
.md-typeset h1 { font-size: clamp(1.9rem, 2vw + 1rem, 2.2rem); font-weight: 800; letter-spacing: -0.035em; line-height: 1.05; color: var(--texto); text-wrap: balance; }
.md-typeset h2 { font-size: 1.5rem; font-weight: 800; letter-spacing: -0.035em; line-height: 1.1; text-wrap: balance; }
.md-typeset h3 { font-size: 22px; font-weight: 800; letter-spacing: -0.02em; line-height: 1.2; }
.md-typeset a { text-underline-offset: 0.18em; }
.md-typeset a:hover { color: var(--texto); }

/* focus ring */
.md-typeset a:focus-visible, .md-nav__link:focus-visible, .md-header__button:focus-visible, .md-tabs__link:focus-visible {
  outline: 3px solid var(--foco); outline-offset: 3px; border-radius: var(--raio-foco);
}

/* header: light surface, hairline, no shadow */
.md-header { background: var(--superficie); color: var(--texto); box-shadow: none; border-bottom: 1px solid var(--linha); }
.md-header[data-md-state="shadow"] { box-shadow: none; }
.md-header__title { font-weight: 600; font-size: 16px; color: var(--texto-fraco); margin-left: 0.6rem; }
.md-header__button.md-logo { padding: 0.2rem; margin: 0.2rem 0 0.2rem 0.2rem; }
.md-header__button.md-logo .rh-marca { font-size: 21px; color: var(--texto); }
.md-header__button.md-logo .rh-marca svg { fill: initial; width: 1.6em; height: 1.6em; }
.md-header .md-icon svg, .md-search__icon svg { fill: var(--texto); }

/* tabs: current page marked with a coral underline */
.md-tabs { background: var(--superficie); color: var(--texto); border-bottom: 1px solid var(--linha); }
.md-tabs__link { font-weight: 600; font-size: 16px; opacity: 1; color: var(--texto); }
.md-tabs__item { border-bottom: 2px solid transparent; }
.md-tabs__item--active { border-bottom-color: var(--coral); }
.md-tabs__link:hover { color: var(--texto); }

/* nav sidebar */
.md-nav__link--active, .md-nav__item .md-nav__link--active { color: var(--texto); font-weight: 700; }

/* tables and code: hairlines, big radii, no shadows */
.md-typeset table:not([class]) { border: 1px solid var(--linha); border-radius: var(--raio-valor); overflow: hidden; box-shadow: none; font-size: 16px; }
.md-typeset table:not([class]) th { background: var(--superficie-alt); color: var(--texto); font-weight: 700; }
.md-typeset table:not([class]) td { border-top: 1px solid var(--linha); }
.md-typeset code, .md-typeset pre > code { border-radius: 8px; }
.md-typeset pre > code { border-radius: var(--raio-valor); }

/* callouts: tinted surface, no coloured edge (coral is brand, not interface) */
.md-typeset .admonition, .md-typeset details { border: 1px solid var(--linha); border-radius: var(--raio-valor); background: var(--superficie-alt); box-shadow: none; }
.md-typeset .admonition-title, .md-typeset summary { background: transparent !important; font-family: var(--font-display); font-weight: 700; }
.md-typeset .admonition-title::before, .md-typeset summary::before { background-color: var(--texto-fraco); }

/* footer: inverse surface */
.md-footer, .md-footer-meta { background: var(--superficie-inversa); color: var(--texto-inverso-suave); }
.md-footer a { color: var(--texto-inverso); }
.md-typeset .mermaid { text-align: center; }
@media (prefers-reduced-motion: reduce) { * { transition: none !important; animation: none !important; } }

/* search field: mist surface instead of Material's default grey */
.md-search__input { background-color: var(--superficie-alt); color: var(--texto); border-radius: var(--raio-pilula); }
.md-search__input::placeholder { color: var(--texto-fraco); }
.md-search__icon svg { fill: var(--texto-fraco); }
