:root {
  --md-text-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --md-code-font: "Cascadia Code", Consolas, monospace;
  --md-primary-fg-color: #0d3b36;
  --md-primary-fg-color--dark: #06211e;
  --md-accent-fg-color: #18b7a5;
  --gogenetic-hero-start: #071a17;
  --gogenetic-hero-end: #0f3b36;
}

[data-md-color-scheme="slate"] {
  --md-default-bg-color: #071312;
  --md-default-fg-color: #e5f5f2;
  --md-default-fg-color--light: #9ab7b2;
  --md-default-fg-color--lighter: #6e8e88;
}

.md-header {
  background: linear-gradient(135deg, #071a17 0%, #0f3b36 55%, #133f58 100%);
}

.md-main {
  background:
    radial-gradient(circle at top right, rgba(24, 183, 165, 0.12), transparent 28%),
    radial-gradient(circle at left top, rgba(14, 165, 233, 0.08), transparent 24%),
    linear-gradient(180deg, rgba(7, 26, 23, 0.04), transparent 20rem);
}

.hero {
  margin: 1.5rem 0 2rem;
  padding: 2rem;
  border-radius: 1.5rem;
  background: linear-gradient(135deg, var(--gogenetic-hero-start), var(--gogenetic-hero-end));
  color: white;
  box-shadow: 0 30px 60px rgba(7, 26, 23, 0.18);
}

.hero h1,
.hero .md-typeset h1 {
  color: white;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

.hero p {
  color: rgba(255, 255, 255, 0.92);
}

.hero .eyebrow {
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-size: 0.78rem;
  font-weight: 700;
  margin-bottom: 0.9rem;
  color: rgba(255, 255, 255, 0.7);
}

.hero .hero-meta {
  margin-top: 1rem;
  max-width: 52rem;
}

.md-typeset .grid.cards > ul > li {
  border-radius: 1rem;
  border: 1px solid rgba(24, 183, 165, 0.12);
  box-shadow: 0 12px 28px rgba(7, 26, 23, 0.05);
}

.md-typeset .grid.cards > ul > li:hover {
  transform: translateY(-2px);
  transition: transform 180ms ease, box-shadow 180ms ease;
  box-shadow: 0 18px 34px rgba(7, 26, 23, 0.08);
}

.md-typeset .soft-note {
  border-left: 0.25rem solid var(--md-accent-fg-color);
  background: rgba(24, 183, 165, 0.08);
  padding: 0.85rem 1rem;
  border-radius: 0.75rem;
}

.md-typeset table:not([class]) {
  border-radius: 0.75rem;
  overflow: hidden;
}

.md-typeset code {
  border-radius: 0.35rem;
}

/* Extensões da identidade da referência para uma documentação multipágina. */
.hero .md-button {
  margin: 0.4rem 0.5rem 0 0;
  border-radius: 0.5rem;
  color: #fff;
  border-color: rgba(255, 255, 255, 0.55);
}

.hero .md-button--primary {
  background: #18b7a5;
  border-color: #18b7a5;
  color: #071a17;
}

.md-typeset .grid.cards > ul > li {
  transition: transform 180ms ease, box-shadow 180ms ease;
}

.md-typeset .grid.cards .twemoji {
  color: var(--md-accent-fg-color);
}

.md-typeset .mermaid {
  overflow-x: auto;
  padding: 0.75rem;
  border-radius: 0.75rem;
  background: rgba(24, 183, 165, 0.035);
}

.md-typeset table:not([class]) th {
  white-space: nowrap;
}

@media (max-width: 600px) {
  .hero { padding: 1.35rem; border-radius: 1rem; }
  .hero h1 { font-size: 1.65rem; }
  .hero .eyebrow { font-size: 0.65rem; }
}

@media (prefers-reduced-motion: reduce) {
  .md-typeset .grid.cards > ul > li,
  .md-typeset .grid.cards > ul > li:hover {
    transition: none;
    transform: none;
  }
}
