/* Peakhour MkDocs Theme - aligned with the public website shell */

:root {
  --peakhour-shell: #03070d;
  --peakhour-shell-2: #07111f;
  --peakhour-panel: #0b1726;
  --peakhour-panel-soft: #102033;
  --peakhour-line: rgba(159, 214, 255, 0.16);
  --peakhour-line-strong: rgba(159, 214, 255, 0.26);
  --peakhour-text: #dbe7f5;
  --peakhour-text-strong: #f7fbff;
  --peakhour-muted: #9fb0c5;
  --peakhour-blue: #2a5ca8;
  --peakhour-blue-bright: #67dcff;
  --peakhour-med-blue: #35b1e8;
  --peakhour-primary: #faab13;
  --peakhour-orange: #f59e0b;
  --peakhour-success: #19c6ad;

  --md-primary-fg-color: #06111f;
  --md-primary-fg-color--light: #0b2436;
  --md-primary-fg-color--dark: #02070d;
  --md-accent-fg-color: var(--peakhour-blue-bright);
  --md-accent-fg-color--transparent: rgba(103, 220, 255, 0.16);
  --md-text-font: "Roboto", "Manrope", "Rubik", -apple-system,
    BlinkMacSystemFont, Helvetica, Arial, sans-serif;
  --md-code-font: "Roboto Mono", ui-monospace, SFMono-Regular, Menlo, Consolas,
    monospace;
  --md-default-border-radius: 0.25rem;
}

body,
[data-md-color-scheme="default"],
[data-md-color-scheme="slate"] {
  --md-default-bg-color: var(--peakhour-shell);
  --md-default-fg-color: var(--peakhour-text);
  --md-default-fg-color--light: var(--peakhour-muted);
  --md-default-fg-color--lighter: #c4d2e2;
  --md-default-fg-color--lightest: rgba(159, 214, 255, 0.16);
  --md-typeset-color: var(--peakhour-text);
  --md-typeset-a-color: var(--peakhour-blue-bright);
  --md-code-bg-color: #07111f;
  --md-code-fg-color: #d8e5f3;
  --md-code-hl-color: rgba(250, 171, 19, 0.16);
  --md-footer-bg-color: #02070d;
  --md-footer-bg-color--dark: #02070d;
  background: var(--peakhour-shell);
  color: var(--peakhour-text);
}

body {
  min-height: 100vh;
}

.md-container,
.md-main {
  background:
    radial-gradient(circle at 78% 10%, rgba(53, 177, 232, 0.14), transparent 28rem),
    linear-gradient(180deg, #06111f 0, var(--peakhour-shell) 21rem);
}

.md-grid {
  max-width: 74rem;
}

.md-header,
.md-tabs {
  background: rgba(3, 7, 13, 0.96);
  border-bottom: 1px solid var(--peakhour-line);
  box-shadow: none;
}

.md-tabs {
  background: rgba(7, 17, 29, 0.96);
}

.md-header__title,
.md-header__button,
.md-tabs__link {
  color: var(--peakhour-text-strong);
}

.md-tabs__item {
  color: var(--peakhour-muted);
}

.md-tabs__link--active,
.md-tabs__link:hover,
.md-header__button:hover {
  color: var(--peakhour-blue-bright);
}

.md-header__button.md-logo {
  margin: 0.2rem;
  padding: 0;
}

.md-header__button.md-logo img,
.md-header__button.md-logo svg {
  display: block;
  width: auto;
  height: 2rem;
  max-width: 180px;
}

.md-main__inner {
  gap: 1.6rem;
}

.md-content {
  min-width: 0;
}

.md-content__inner {
  margin-bottom: 2.4rem;
  padding: 1.9rem 2.2rem 2.4rem;
  background: rgba(7, 17, 29, 0.92);
  border: 1px solid var(--peakhour-line);
  border-radius: 8px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.28);
}

.md-content__inner::before {
  display: none;
}

.md-typeset {
  color: var(--peakhour-text);
}

.md-typeset h1,
.md-typeset h2,
.md-typeset h3,
.md-typeset h4 {
  color: var(--peakhour-text-strong);
  font-weight: 650;
  letter-spacing: 0;
}

.md-typeset h1 {
  margin-bottom: 1.5rem;
  font-size: 2.15rem;
  line-height: 1.15;
}

.md-typeset h2 {
  margin-top: 2.2rem;
  padding-top: 0.15rem;
  font-size: 1.42rem;
}

.md-typeset h3 {
  color: #e7f1fb;
  font-size: 1.05rem;
}

.md-typeset p,
.md-typeset li {
  color: var(--peakhour-text);
  line-height: 1.72;
}

.md-typeset strong {
  color: var(--peakhour-text-strong);
}

.md-typeset a {
  color: var(--peakhour-blue-bright);
  text-decoration-color: rgba(103, 220, 255, 0.38);
}

.md-typeset a:hover {
  color: #99f6e4;
}

.md-nav {
  color: var(--peakhour-muted);
}

.md-nav__title {
  color: var(--peakhour-text-strong);
  background: transparent;
  box-shadow: none;
}

.md-nav__link {
  color: #c4d2e2;
}

.md-nav__link:hover,
.md-nav__item .md-nav__link--active {
  color: var(--peakhour-blue-bright);
}

.md-nav__item .md-nav__link--active {
  font-weight: 650;
}

.md-sidebar__scrollwrap {
  scrollbar-color: rgba(159, 214, 255, 0.28) transparent;
}

.md-sidebar--primary .md-sidebar__scrollwrap,
.md-sidebar--secondary .md-sidebar__scrollwrap {
  background: rgba(3, 7, 13, 0.24);
  border: 1px solid transparent;
  border-radius: 8px;
}

.md-search__form {
  background: rgba(7, 17, 29, 0.96);
  border: 1px solid var(--peakhour-line);
  border-radius: 6px;
}

.md-search__input,
.md-search__input::placeholder {
  color: var(--peakhour-text);
}

.md-search__input::placeholder {
  opacity: 0.74;
}

.md-search__output,
.md-search__scrollwrap {
  background: var(--peakhour-panel);
  color: var(--peakhour-text);
}

.md-search-result__meta {
  background: var(--peakhour-shell-2);
  color: var(--peakhour-muted);
}

.md-search-result__title {
  color: var(--peakhour-text-strong);
}

.md-button,
.md-button--primary {
  border-radius: var(--md-default-border-radius);
  font-weight: 600;
}

.md-button {
  background-color: rgba(7, 17, 29, 0.9);
  border-color: var(--peakhour-line-strong);
  color: var(--peakhour-text-strong);
}

.md-button:hover {
  background-color: rgba(103, 220, 255, 0.1);
  border-color: rgba(103, 220, 255, 0.55);
  color: var(--peakhour-blue-bright);
}

.md-button--primary {
  background-color: var(--peakhour-blue);
  border-color: var(--peakhour-blue);
  color: #ffffff;
}

.md-button--primary:hover {
  background-color: #356fc6;
  border-color: #356fc6;
  color: #ffffff;
}

.md-typeset code {
  color: #d8e5f3;
  background: rgba(159, 214, 255, 0.12);
  border: 1px solid rgba(159, 214, 255, 0.14);
  border-radius: 4px;
}

.md-typeset pre,
.md-typeset .highlight {
  border-radius: 6px;
}

.md-typeset pre > code {
  color: #d8e5f3;
  background: #07111f;
  border: 1px solid var(--peakhour-line);
  border-radius: 6px;
}

.md-typeset .highlighttable,
.md-typeset .highlighttable tbody,
.md-typeset .highlighttable td {
  background: #07111f;
}

.md-typeset table:not([class]) {
  background: rgba(7, 17, 29, 0.76);
  border: 1px solid var(--peakhour-line);
  border-radius: 6px;
}

.md-typeset table:not([class]) th {
  padding: 0.75rem;
  background-color: rgba(16, 32, 51, 0.95);
  color: var(--peakhour-text-strong);
  font-size: 0.7625rem;
  font-weight: 700;
}

.md-typeset table:not([class]) td {
  padding: 0.75rem;
  border-top-color: var(--peakhour-line);
}

.md-typeset .admonition,
.md-typeset details {
  background: rgba(7, 17, 29, 0.86);
  border-color: var(--peakhour-line-strong);
  border-radius: 6px;
  color: var(--peakhour-text);
}

.md-typeset .admonition-title,
.md-typeset summary {
  color: var(--peakhour-text-strong);
  background: rgba(16, 32, 51, 0.94);
}

.md-typeset .admonition.info,
.md-typeset details.info {
  border-color: var(--peakhour-med-blue);
}

.md-typeset .info > .admonition-title,
.md-typeset .info > summary {
  background-color: rgba(53, 177, 232, 0.13);
}

.md-typeset .admonition.warning,
.md-typeset details.warning {
  border-color: var(--peakhour-orange);
}

.md-typeset .warning > .admonition-title,
.md-typeset .warning > summary {
  background-color: rgba(245, 158, 11, 0.15);
}

.md-typeset .admonition.success,
.md-typeset details.success {
  border-color: var(--peakhour-success);
}

.md-typeset .success > .admonition-title,
.md-typeset .success > summary {
  background-color: rgba(25, 198, 173, 0.13);
}

.md-typeset .docs-visual {
  max-width: 100%;
  margin: 1.5rem 0 2rem;
  overflow: hidden;
}

.md-typeset .docs-visual img {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  background: #07111f;
  border: 1px solid var(--peakhour-line-strong);
  border-radius: 0.45rem;
  box-sizing: border-box;
}

.md-typeset .docs-visual figcaption {
  margin-top: 0.55rem;
  color: var(--peakhour-muted);
  font-size: 0.78rem;
  line-height: 1.45;
}

.md-typeset .docs-screenshot {
  width: min(100%, 58rem);
  margin: 1.7rem 0 2rem;
}

.md-typeset .docs-screenshot--standard {
  width: min(100%, 46rem);
}

.md-typeset .docs-screenshot--narrow {
  width: min(100%, 34rem);
}

.md-typeset .docs-screenshot img {
  display: block;
  width: 100%;
  height: auto;
  padding: 0.45rem;
  background: linear-gradient(180deg, #0b1726 0%, #06111f 100%);
  border: 1px solid var(--peakhour-line-strong);
  border-radius: 8px;
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.26);
  box-sizing: border-box;
}

.md-typeset .docs-screenshot figcaption {
  max-width: 46rem;
  margin-top: 0.6rem;
  color: var(--peakhour-muted);
  font-size: 0.78rem;
  line-height: 1.45;
}

.md-footer {
  background: #02070d;
  border-top: 1px solid var(--peakhour-line);
}

.md-footer-meta {
  background: #02070d;
}

.md-footer,
.md-footer-meta,
.md-footer__title,
.md-footer__direction,
.md-footer-copyright {
  color: var(--peakhour-text);
}

.md-footer a {
  color: var(--peakhour-blue-bright);
}

.peakhour-hero {
  background:
    radial-gradient(circle at 74% 28%, rgba(94, 234, 212, 0.18), transparent 30%),
    linear-gradient(135deg, #06111f 0%, #0b2436 58%, #08141f 100%);
}

.feature-card,
.guide-card,
.step-card {
  background: rgba(7, 17, 29, 0.92);
  border: 1px solid var(--peakhour-line);
  border-radius: 8px;
  color: var(--peakhour-text);
  transition: transform 0.2s ease-out, box-shadow 0.2s ease-out;
}

.feature-card:hover,
.guide-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.24);
}

.feature-card h3,
.guide-card h3,
.step-card h3 {
  color: var(--peakhour-text-strong);
}

.feature-card p,
.guide-card p,
.step-card p {
  color: var(--peakhour-text);
}

.md-nav__link:focus,
.md-button:focus,
.md-search__input:focus {
  outline: 2px solid var(--peakhour-blue-bright);
  outline-offset: 2px;
}

@media (max-width: 1200px) {
  .md-content,
  .md-content__inner,
  .md-typeset {
    max-width: 100vw;
    overflow-x: hidden;
  }

  .md-typeset p,
  .md-typeset li {
    max-width: calc(100vw - 2rem);
  }

  .md-typeset .docs-visual {
    width: calc(100vw - 2rem);
  }

  .md-typeset .docs-screenshot {
    width: calc(100vw - 2rem);
  }
}

@media (max-width: 768px) {
  .md-header__title {
    font-size: 1rem;
  }

  .md-tabs__item {
    font-size: 0.875rem;
  }

  .md-content__inner {
    margin: 0.75rem;
    padding: 1.3rem 1rem 1.8rem;
  }

  .md-typeset h1 {
    font-size: 1.72rem;
  }

  .md-typeset h2 {
    font-size: 1.24rem;
  }
}

@media print {
  body,
  .md-container,
  .md-main,
  .md-content__inner,
  .md-header,
  .md-tabs,
  .md-footer {
    background: white !important;
    color: black !important;
    box-shadow: none !important;
  }
}
