/* SARS-CoV-2 Assembly Pipeline — MkDocs Material custom styling */

:root {
  --pipeline-primary: #3949ab;
  --pipeline-accent: #00acc1;
  --pipeline-accent-soft: rgba(0, 172, 193, 0.14);
  --pipeline-code-bg: rgba(40, 44, 52, 0.05);
  --pipeline-border: rgba(57, 73, 171, 0.18);
  --pipeline-radius: 0.85rem;
}

/* Slightly sharper, scientific-docs look */
.md-typeset {
  font-size: 0.78rem;
  line-height: 1.72;
}

.md-typeset h1,
.md-typeset h2,
.md-typeset h3 {
  font-weight: 700;
  letter-spacing: -0.02em;
}

.md-typeset h1 {
  color: var(--pipeline-primary);
  border-bottom: 2px solid var(--pipeline-border);
  padding-bottom: 0.35rem;
}

.md-typeset h2 {
  margin-top: 2rem;
}

/* Better hero-style lead paragraph */
.md-typeset .lead,
.md-typeset p:first-of-type {
  font-size: 0.86rem;
}

/* Cards and grid blocks */
.md-typeset .grid.cards > ul > li,
.md-typeset .card {
  border: 1px solid var(--pipeline-border);
  border-radius: var(--pipeline-radius);
  box-shadow: 0 0.25rem 1.2rem rgba(0, 0, 0, 0.045);
  transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
}

.md-typeset .grid.cards > ul > li:hover,
.md-typeset .card:hover {
  transform: translateY(-2px);
  border-color: rgba(0, 172, 193, 0.45);
  box-shadow: 0 0.55rem 1.8rem rgba(0, 0, 0, 0.075);
}

/* Code blocks */
.md-typeset pre > code {
  border-radius: var(--pipeline-radius);
}

.md-typeset code {
  border-radius: 0.35rem;
  background-color: var(--pipeline-code-bg);
}

/* Tables */
.md-typeset table:not([class]) {
  border-radius: var(--pipeline-radius);
  overflow: hidden;
  box-shadow: 0 0.15rem 0.8rem rgba(0, 0, 0, 0.04);
}

.md-typeset table:not([class]) th {
  background: var(--pipeline-primary);
  color: white;
  font-weight: 700;
}

.md-typeset table:not([class]) tr:nth-child(even) {
  background-color: rgba(57, 73, 171, 0.035);
}

/* Admonitions */
.md-typeset .admonition,
.md-typeset details {
  border-radius: var(--pipeline-radius);
  border-left-width: 0.25rem;
}

.md-typeset .admonition.note,
.md-typeset details.note {
  border-color: var(--pipeline-accent);
}

.md-typeset .admonition.note > .admonition-title,
.md-typeset details.note > summary {
  background-color: var(--pipeline-accent-soft);
}

/* Navigation polish */
.md-nav__title {
  font-weight: 700;
}

.md-tabs__link {
  font-weight: 600;
}

/* Repository/source buttons */
.md-source {
  border-radius: 999px;
}

/* Footer */
.md-footer {
  margin-top: 3rem;
}

/* Dark mode refinements */
[data-md-color-scheme="slate"] {
  --pipeline-code-bg: rgba(255, 255, 255, 0.07);
  --pipeline-border: rgba(128, 203, 196, 0.22);
}

[data-md-color-scheme="slate"] .md-typeset h1 {
  color: #80deea;
}

[data-md-color-scheme="slate"] .md-typeset table:not([class]) th {
  background: #283593;
}

[data-md-color-scheme="slate"] .md-typeset .grid.cards > ul > li,
[data-md-color-scheme="slate"] .md-typeset .card {
  box-shadow: 0 0.4rem 1.3rem rgba(0, 0, 0, 0.22);
}

/* Small screens */
@media screen and (max-width: 76.2344em) {
  .md-typeset {
    font-size: 0.8rem;
  }
}