/* OpenMaskit docs — dark theme aligned with maskit-fe and the dashboard. */

:root,
[data-md-color-scheme="slate"] {
  --md-default-bg-color: #0a0c10;
  --md-default-bg-color--light: #12151c;
  --md-default-bg-color--lighter: #181c25;
  --md-default-bg-color--lightest: #1e2330;

  --md-default-fg-color: #e8ecf0;
  --md-default-fg-color--light: #8892a4;
  --md-default-fg-color--lighter: #5c6578;
  --md-default-fg-color--lightest: #3a4253;

  --md-primary-fg-color: #58a6ff;
  --md-primary-fg-color--light: #79b8ff;
  --md-primary-fg-color--dark: #4a8ddf;
  --md-primary-bg-color: #e8ecf0;
  --md-primary-bg-color--light: #8892a4;

  --md-accent-fg-color: #2dd4bf;
  --md-accent-fg-color--transparent: rgba(45, 212, 191, 0.12);
  --md-accent-bg-color: #0a0c10;
  --md-accent-bg-color--light: #12151c;

  --md-typeset-color: #e8ecf0;
  --md-typeset-a-color: #58a6ff;

  --md-code-bg-color: #12151c;
  --md-code-fg-color: #e8ecf0;
  --md-code-hl-color: rgba(88, 166, 255, 0.16);

  --md-footer-bg-color: #0a0c10;
  --md-footer-bg-color--dark: #0a0c10;
  --md-footer-fg-color: #e8ecf0;
  --md-footer-fg-color--light: #8892a4;
  --md-footer-fg-color--lighter: #5c6578;

  --md-typeset-table-color: #262d3a;
  --md-admonition-bg-color: #12151c;
  --md-admonition-fg-color: #e8ecf0;
}

/* Header + sidebar */
.md-header,
.md-tabs {
  background-color: #0a0c10;
  border-bottom: 1px solid #1e2330;
  box-shadow: none;
}

.md-sidebar__scrollwrap,
.md-sidebar {
  background-color: #0a0c10;
}

.md-nav__title {
  color: #8892a4;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.md-nav__link {
  color: #8892a4;
  transition: color 140ms cubic-bezier(0.4, 0, 0.2, 1);
}

.md-nav__link:hover {
  color: #58a6ff;
}

.md-nav__link--active,
.md-nav__link[aria-current="page"] {
  color: #2dd4bf;
}

/* Typography */
.md-typeset h1,
.md-typeset h2,
.md-typeset h3,
.md-typeset h4,
.md-typeset h5,
.md-typeset h6 {
  font-family: 'DM Sans', sans-serif;
  font-weight: 600;
  letter-spacing: -0.01em;
  color: #e8ecf0;
}

.md-typeset h1 {
  font-size: 2.1rem;
  font-weight: 700;
  border-bottom: 1px solid #1e2330;
  padding-bottom: 0.6rem;
  margin-bottom: 1.4rem;
}

.md-typeset h2 {
  font-size: 1.4rem;
  margin-top: 2.2rem;
}

.md-typeset h3 {
  font-size: 1.1rem;
  color: #8892a4;
}

.md-typeset p,
.md-typeset li {
  color: #c7cdd6;
  line-height: 1.65;
}

/* Code */
.md-typeset code,
.md-typeset pre {
  font-family: 'JetBrains Mono', monospace;
}

.md-typeset code {
  background-color: #12151c;
  border: 1px solid #1e2330;
  border-radius: 3px;
  padding: 0.08em 0.32em;
  font-size: 0.85em;
  color: #2dd4bf;
}

.md-typeset a code {
  color: #58a6ff;
}

.md-typeset pre > code {
  border: 1px solid #1e2330;
  border-radius: 6px;
  background-color: #0a0c10;
  color: #e8ecf0;
  font-size: 0.8rem;
}

.md-typeset .highlight pre {
  background-color: #0a0c10;
}

/* Tables */
.md-typeset table:not([class]) {
  border: 1px solid #1e2330;
  background-color: transparent;
  border-radius: 6px;
  overflow: hidden;
}

.md-typeset table:not([class]) th {
  background-color: #12151c;
  color: #e8ecf0;
  font-family: 'DM Sans', sans-serif;
  font-weight: 600;
  border-bottom: 1px solid #262d3a;
}

.md-typeset table:not([class]) td {
  border-top: 1px solid #1e2330;
  color: #c7cdd6;
}

/* Links */
.md-typeset a {
  color: #58a6ff;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: border-color 140ms cubic-bezier(0.4, 0, 0.2, 1);
}

.md-typeset a:hover {
  color: #79b8ff;
  border-bottom-color: #58a6ff;
}

/* Admonitions */
.md-typeset .admonition,
.md-typeset details {
  border: 1px solid #1e2330;
  border-radius: 6px;
  background-color: #12151c;
  box-shadow: none;
}

.md-typeset .admonition.note,
.md-typeset details.note {
  border-left: 3px solid #58a6ff;
}

.md-typeset .admonition.warning,
.md-typeset details.warning {
  border-left: 3px solid #f87171;
}

.md-typeset .admonition.tip,
.md-typeset details.tip {
  border-left: 3px solid #2dd4bf;
}

/* Search */
.md-search__form,
.md-search__input {
  background-color: #12151c;
  color: #e8ecf0;
}

.md-search__input::placeholder {
  color: #5c6578;
}

/* Footer */
.md-footer {
  background-color: #0a0c10;
  border-top: 1px solid #1e2330;
}

.md-footer-meta {
  background-color: #0a0c10;
}

/* Buttons / pills */
.md-typeset .md-button {
  background-color: transparent;
  border: 1px solid #2f3847;
  color: #e8ecf0;
  border-radius: 6px;
  padding: 0.5rem 1.1rem;
  font-family: 'DM Sans', sans-serif;
  font-weight: 500;
  transition: all 140ms cubic-bezier(0.4, 0, 0.2, 1);
}

.md-typeset .md-button:hover {
  border-color: #58a6ff;
  color: #58a6ff;
  background-color: rgba(88, 166, 255, 0.04);
}

.md-typeset .md-button--primary {
  background-color: #58a6ff;
  border-color: #58a6ff;
  color: #0a0c10;
}

.md-typeset .md-button--primary:hover {
  background-color: #79b8ff;
  border-color: #79b8ff;
  color: #0a0c10;
}

/* Hide "Made with Material" line — we have our own footer */
.md-footer-meta__inner > .md-copyright {
  color: #5c6578;
  font-size: 0.72rem;
}
