/* Custom branding and styling for llm-expose documentation */

:root {
  /* Primary brand color: Deep Purple */
  --md-primary-fg-color: #976cff !important;
  --md-primary-fg-color--light: #7e57c2 !important;
  --md-primary-fg-color--dark: #3f2c70 !important;

  /* Accent color: Purple */
  --md-accent-fg-color: #7c4dff !important;
  --md-accent-fg-color--transparent: rgba(124, 77, 255, 0.07) !important;
}

/* Light theme customizations */
[data-md-color-scheme="default"] {
  --md-primary-bg-color: #f5f5f5;
  --md-default-bg-color: #ffffff;
  --md-text-color: #212121;
  --md-border-color: #e0e0e0;
}

/* Dark theme customizations */
[data-md-color-scheme="slate"] {
  --md-primary-bg-color: #ffffff;
  --md-default-bg-color: #101010;
  --md-text-color: #ffffff;
  --md-border-color: #404040;
}

/* Code styling */
.md-typeset code {
  background-color: rgba(124, 77, 255, 0.07);
  padding: 0.15em 0.4em;
  font-weight: 500;
}

[data-md-color-scheme="slate"] .md-typeset code {
  background-color: rgba(101, 60, 214, 0.15);
}

.md-typeset pre {
  border-radius: 8px;
  border-left: 4px solid #7c4dff;
}

[data-md-color-scheme="slate"] .md-typeset pre {
  border-left-color: #653cd6;
}

/* Admonition styling */
.md-typeset .admonition {
  border-left: 4px solid #7c4dff;
  border-radius: 4px;
}

[data-md-color-scheme="slate"] .md-typeset .admonition {
  border-left-color: #653cd6;
}

.md-typeset .admonition.note {
  border-left-color: #7c4dff;
}

[data-md-color-scheme="slate"] .md-typeset .admonition.note {
  border-left-color: #653cd6;
}

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

.md-typeset .admonition.danger {
  border-left-color: #f44336;
}

.md-typeset .admonition.tip {
  border-left-color: #4caf50;
}

.md-typeset .admonition.info {
  border-left-color: #2196f3;
}

/* Badge styling */
.md-typeset img[alt*="badge"],
.md-typeset img[alt*="Badge"],
.md-typeset img[alt*="PyPI"],
.md-typeset img[alt*="License"],
.md-typeset img[alt*="Python"],
.md-typeset img[alt*="Tests"],
.md-typeset img[alt*="Docs"] {
  margin: 0.3em 0.2em 0.3em 0;
  vertical-align: middle;
}

/* Button styling */
.md-button {
  border-radius: 6px;
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 0.5px;
}

.md-button.md-button--primary {
  background-color: #976cff;
}

.md-button.md-button--primary:hover {
  background-color: #3f2c70;
}

/* Table styling */
.md-typeset table {
  border-radius: 4px;
  overflow: hidden;
}

.md-typeset table thead {
  background-color: #976cff;
  color: white;
}

.md-typeset table tbody tr:hover {
  background-color: rgba(124, 77, 255, 0.05);
}

[data-md-color-scheme="slate"] .md-typeset table tbody tr:hover {
  background-color: rgba(101, 60, 214, 0.1);
}

/* Navigation tabs */
.md-tabs {
  background-color: #f5f5f5;
}

[data-md-color-scheme="slate"] .md-tabs {
  background-color: #050505;
}

[data-md-color-scheme="slate"] .md-tabs__link{
  color: #e4d9ff;
}

/* Header and footer styling */
.md-header {
  background-color: #7c4dff;
}

[data-md-color-scheme="slate"] .md-header {
  background-color: #653cd6;
}

.md-footer {
  background-color: #7c4dff;
  padding: 3em;
}

[data-md-color-scheme="slate"] .md-footer {
  background-color: #653cd6;
}

.md-footer-meta {
  background-color: rgba(0, 0, 0, 0);
}

/* Navigation link styling */
.md-tabs__link,
.md-nav__link {
  color: #7c4dff;
}

[data-md-color-scheme="slate"] .md-tabs__link,
[data-md-color-scheme="slate"] .md-nav__link {
  color: #653cd6;
}

.md-tabs__link:hover,
.md-nav__link:hover {
  background-color: rgba(124, 77, 255, 0.1);
  color: #7c4dff;
}

[data-md-color-scheme="slate"] .md-tabs__link:hover,
[data-md-color-scheme="slate"] .md-nav__link:hover {
  background-color: rgba(101, 60, 214, 0.1);
  color: #653cd6;
}

.md-tabs__link--active,
.md-nav__link--active {
  border-left: 3px solid #7c4dff;
  padding-left: 0.75em;
  color: #7c4dff;
}

[data-md-color-scheme="slate"] .md-tabs__link--active,
[data-md-color-scheme="slate"] .md-nav__link--active {
  border-left-color: #653cd6;
  color: #653cd6;
}

.md-tabs__item--active {
  border-bottom: 3px solid #7c4dff;
  color: #7c4dff;
}

[data-md-color-scheme="slate"] .md-tabs__item--active {
  border-bottom-color: #653cd6;
  color: #653cd6;
}

/* Breadcrumbs styling */
.md-breadcrumbs {
  margin-bottom: 1.5em;
}

.md-breadcrumbs__item {
  color: #666;
}

.md-breadcrumbs__item--active {
  color: #7c4dff;
  font-weight: 600;
}

[data-md-color-scheme="slate"] .md-breadcrumbs__item--active {
  color: #653cd6;
}

/* Tab styling for code examples */
.md-typeset .tabbed-set {
  margin: 1em 0;
  border-radius: 4px;
}

.md-typeset .tabbed-set > label {
  border-radius: 4px 4px 0 0;
  font-weight: 500;
}

.md-typeset .tabbed-set > label:hover {
  background-color: rgba(124, 77, 255, 0.1);
}

[data-md-color-scheme="slate"] .md-typeset .tabbed-set > label:hover {
  background-color: rgba(101, 60, 214, 0.1);
}

.md-typeset .tabbed-set > input:checked + label {
  border-bottom-color: #7c4dff;
  color: #7c4dff;
}

[data-md-color-scheme="slate"] .md-typeset .tabbed-set > input:checked + label {
  border-bottom-color: #653cd6;
  color: #653cd6;
}

/* Search box styling */
.md-search__input {
  border-radius: 6px;
}

.md-search__input::placeholder {
  color: rgba(255, 255, 255, 0.5);
}

/* List styling */
.md-typeset ul,
.md-typeset ol {
  margin: 1em 0;
}

.md-typeset li {
  margin: 0.5em 0;
  line-height: 1.6;
}

/* Links styling */
.md-typeset a {
  color: #7c4dff;
  text-decoration: none;
  border-bottom: 1px solid rgba(124, 77, 255, 0.3);
}

[data-md-color-scheme="slate"] .md-typeset a {
  color: #653cd6;
  border-bottom-color: rgba(101, 60, 214, 0.3);
}

.md-typeset a:hover {
  border-bottom-color: #7c4dff;
  color: #7c4dff;
}

[data-md-color-scheme="slate"] .md-typeset a:hover {
  border-bottom-color: #653cd6;
  color: #653cd6;
}

/* Heading styling */
.md-typeset h1,
.md-typeset h2,
.md-typeset h3 {
  margin-top: 1.5em;
  margin-bottom: 0.75em;
  font-weight: 700;
  line-height: 1.3;
}

.md-typeset h1 {
  color: #7c4dff;
  border-bottom: 3px solid #7c4dff;
  padding-bottom: 0.5em;
}

[data-md-color-scheme="slate"] .md-typeset h1 {
  color: #653cd6;
  border-bottom-color: #653cd6;
}

.md-typeset h2 {
  color: #7c4dff;
  border-left: 4px solid #7c4dff;
  padding-left: 0.75em;
}

[data-md-color-scheme="slate"] .md-typeset h2 {
  color: #653cd6;
  border-left-color: #653cd6;
}

.md-typeset h3 {
  color: #7c4dff;
}

[data-md-color-scheme="slate"] .md-typeset h3 {
  color: #653cd6;
}

/* Blockquote styling */
.md-typeset blockquote {
  border-left: 4px solid #7c4dff;
  padding-left: 1em;
  color: #666;
  font-style: italic;
}

[data-md-color-scheme="slate"] .md-typeset blockquote {
  border-left-color: #653cd6;
  color: #aaa;
}

/* Content cards/boxes */
.md-typeset .content-card {
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  padding: 1.5em;
  margin: 1em 0;
  background-color: #fafafa;
}

[data-md-color-scheme="slate"] .md-typeset .content-card {
  border-color: #404040;
  background-color: #242424;
}

/* Footer links */
.md-footer__link:hover {
  color: #7c4dff;
}

[data-md-color-scheme="slate"] .md-footer__link:hover {
  color: #653cd6;
}

.md-header__button.md-logo img, .md-header__button.md-logo svg {
  height: 5em;
}