/* ASCICat Documentation Custom Styles */

/* Root variables */
:root {
  --md-primary-fg-color: #4051b5;
  --md-primary-fg-color--light: #5c6bc0;
  --md-primary-fg-color--dark: #303f9f;
  --md-accent-fg-color: #7c4dff;
}

/* Dark mode adjustments */
[data-md-color-scheme="slate"] {
  --md-default-bg-color: #1e1e2e;
  --md-default-fg-color: #cdd6f4;
}

/* Hero section styling */
.md-typeset h1 {
  font-weight: 700;
  margin-bottom: 0.5em;
}

/* Code block styling */
.md-typeset code {
  background-color: var(--md-code-bg-color);
  border-radius: 0.25em;
  padding: 0.1em 0.3em;
}

/* Table styling */
.md-typeset table:not([class]) {
  font-size: 0.85em;
  border-collapse: collapse;
}

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

.md-typeset table:not([class]) td,
.md-typeset table:not([class]) th {
  padding: 0.75em 1em;
  border: 1px solid var(--md-typeset-table-color);
}

/* Admonition customization */
.md-typeset .admonition.tip {
  border-color: #00bfa5;
}

.md-typeset .admonition.warning {
  border-color: #ff9100;
}

/* Card grid styling */
.md-typeset .grid.cards > ul > li {
  border: 1px solid var(--md-typeset-table-color);
  border-radius: 0.5em;
  transition: transform 0.2s, box-shadow 0.2s;
}

.md-typeset .grid.cards > ul > li:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

/* Math equation styling */
.md-typeset .arithmatex {
  overflow-x: auto;
}

/* Navigation tabs */
.md-tabs__link {
  font-weight: 500;
}

/* Footer styling */
.md-footer {
  background-color: var(--md-primary-fg-color--dark);
}

/* API reference styling */
.doc-heading {
  font-weight: 600;
  margin-top: 1.5em;
}

.doc-signature {
  background-color: var(--md-code-bg-color);
  padding: 0.5em;
  border-radius: 0.25em;
  font-family: var(--md-code-font-family);
}

/* Button styling */
.md-button {
  font-weight: 600;
  border-radius: 0.5em;
  transition: all 0.2s;
}

.md-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

/* Responsive adjustments */
@media screen and (max-width: 76.1875em) {
  .md-typeset h1 {
    font-size: 1.8em;
  }
}

/* Print styles */
@media print {
  .md-header,
  .md-footer,
  .md-sidebar {
    display: none;
  }
}
