/* Blogus Documentation Custom Styles */

/* Primary color overrides */
:root {
  --md-primary-fg-color: #5c6bc0;
  --md-primary-fg-color--light: #8e99c0;
  --md-primary-fg-color--dark: #3949ab;
  --md-accent-fg-color: #7c4dff;
}

/* Dark mode adjustments */
[data-md-color-scheme="slate"] {
  --md-primary-fg-color: #7986cb;
  --md-accent-fg-color: #b388ff;
}

/* Code block styling */
.highlight {
  border-radius: 8px;
}

.md-typeset code {
  border-radius: 4px;
}

/* Admonition styling */
.md-typeset .admonition,
.md-typeset details {
  border-radius: 8px;
}

/* Table styling */
.md-typeset table:not([class]) {
  border-radius: 8px;
  overflow: hidden;
}

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

[data-md-color-scheme="slate"] .md-typeset table:not([class]) th {
  background-color: var(--md-primary-fg-color--dark);
}

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

/* Hero section styling for index page */
.md-typeset h1 {
  font-weight: 700;
}

/* Command/terminal output styling */
.md-typeset pre > code {
  font-size: 0.85em;
}

/* Improve readability of long code blocks */
.md-typeset pre {
  line-height: 1.5;
}

/* Card grid styling */
.grid.cards > ul {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 1rem;
  padding: 0;
}

.grid.cards > ul > li {
  list-style: none;
  padding: 1rem;
  border: 1px solid var(--md-default-fg-color--lightest);
  border-radius: 8px;
  transition: box-shadow 0.2s, border-color 0.2s;
}

.grid.cards > ul > li:hover {
  border-color: var(--md-primary-fg-color);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

/* Status badges */
.status-badge {
  display: inline-block;
  padding: 0.2em 0.6em;
  border-radius: 4px;
  font-size: 0.75em;
  font-weight: 600;
  text-transform: uppercase;
}

.status-badge.success {
  background-color: #4caf50;
  color: white;
}

.status-badge.warning {
  background-color: #ff9800;
  color: white;
}

.status-badge.error {
  background-color: #f44336;
  color: white;
}

/* Command reference styling */
.md-typeset h3 code {
  font-size: 0.9em;
  background-color: var(--md-code-bg-color);
  padding: 0.2em 0.5em;
  border-radius: 4px;
}

/* Improve heading anchors */
.md-typeset .headerlink {
  opacity: 0;
  transition: opacity 0.2s;
}

.md-typeset h1:hover .headerlink,
.md-typeset h2:hover .headerlink,
.md-typeset h3:hover .headerlink,
.md-typeset h4:hover .headerlink {
  opacity: 1;
}

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

/* Search highlight */
.md-search-result mark {
  background-color: var(--md-accent-fg-color);
  color: white;
  padding: 0.1em 0.2em;
  border-radius: 2px;
}

/* Responsive adjustments */
@media screen and (max-width: 76.1875em) {
  .md-nav--primary .md-nav__title {
    background-color: var(--md-primary-fg-color);
  }
}

/* ASCII art / diagram styling */
.md-typeset pre:has(code:not([class])) {
  background-color: var(--md-code-bg-color);
  font-family: monospace;
  line-height: 1.4;
}

/* Horizontal rule styling */
.md-typeset hr {
  margin: 2em 0;
  border-color: var(--md-default-fg-color--lightest);
}

/* Better list styling */
.md-typeset ul li,
.md-typeset ol li {
  margin-bottom: 0.5em;
}

/* Tab styling improvements */
.md-typeset .tabbed-labels {
  border-radius: 8px 8px 0 0;
}

.md-typeset .tabbed-content {
  border-radius: 0 0 8px 8px;
}
