:root {
  /* Core scientific colors - inspired by data visualization best practices */
  --primary-blue: #2c3e50;      /* Deep professional blue */
  --secondary-blue: #3498db;    /* Clear data blue */
  --accent-teal: #1abc9c;       /* Scientific precision */
  --highlight-orange: #e67e22;  /* Warning/attention */
  --success-green: #27ae60;     /* Validation */
  --error-red: #c0392b;         /* Critical alerts */
  
  /* Neutral tones for readability */
  --bg-light: #f5f6fa;          /* Light background */
  --bg-dark: #1a1a1a;           /* Darker background for better contrast */
  --text-light: #f1f2f6;        /* Light text */
  --text-dark: #2f3640;         /* Dark text */
  --text-muted: #a0a0a0;        /* Lighter muted text for dark mode */
  
  /* Data visualization accents */
  --data-1: #3498db;            /* Primary data */
  --data-2: #e74c3c;            /* Comparison data */
  --data-3: #2ecc71;            /* Tertiary data */
  --data-4: #f1c40f;            /* Quaternary data */
}

[data-md-color-scheme="autoclean-light"] {
  --md-default-bg-color: var(--bg-light);
  --md-primary-fg-color: var(--primary-blue);
  --md-typeset-a-color: var(--secondary-blue);
  --md-accent-fg-color: var(--accent-teal);
  --md-typeset-color: var(--text-dark);
  --md-code-bg-color: #f5f5f5;
  --md-code-fg-color: var(--text-dark);
}

[data-md-color-scheme="autoclean-dark"] {
  --md-default-bg-color: var(--bg-dark);
  --md-default-fg-color: var(--text-light);
  --md-primary-fg-color: var(--secondary-blue);  /* Changed from accent-teal for better contrast */
  --md-accent-fg-color: var(--accent-teal);
  --md-typeset-a-color: var(--secondary-blue);   /* Changed from accent-teal for consistency */
  --md-typeset-color: var(--text-light);         /* Added for text consistency */
  
  --md-code-fg-color: var(--text-light);
  --md-code-bg-color: #2d2d2d;
  
  /* Simplified syntax highlighting for better readability */
  --md-code-hl-comment-color: #a0a0a0;
  --md-code-hl-keyword-color: #66d9ef;
  --md-code-hl-string-color: #a6e22e;
  --md-code-hl-number-color: #ae81ff;
  --md-code-hl-constant-color: #fd971f;
  --md-code-hl-function-color: #a6e22e;
  --md-code-hl-special-color: #fd971f;
}

/* Image handling for dark/light modes */
[data-md-color-scheme="autoclean-light"] img[src$="#only-dark"],
[data-md-color-scheme="autoclean-light"] img[src$="#gh-dark-mode-only"] {
  display: none;
}

[data-md-color-scheme="autoclean-light"] img[src$="#only-light"],
[data-md-color-scheme="autoclean-light"] img[src$="#gh-light-mode-only"] {
  display: inline;
}

[data-md-color-scheme="autoclean-dark"] img[src$="#only-light"],
[data-md-color-scheme="autoclean-dark"] img[src$="#gh-light-mode-only"] {
  display: none;
}

[data-md-color-scheme="autoclean-dark"] img[src$="#only-dark"],
[data-md-color-scheme="autoclean-dark"] img[src$="#gh-dark-mode-only"] {
  display: inline;
}

/* Table styles */
.md-typeset__table {
  min-width: 100%;
}

.md-typeset table:not([class]) {
  display: table;
}

/* Dark mode specific overrides */
[data-md-color-scheme="autoclean-dark"] div.admonition {
  color: var(--text-light);
  background-color: #2d2d2d;
}

/* Navigation styling */
.md-nav--primary .md-nav__title {
  box-shadow: none;
}

@media screen and (min-width: 76.25em) {
  .md-nav__title {
    display: none;
  }
  
  .md-main {
    min-height: 100vh;
  }
  
  .md-nav--primary .md-nav {
    font-size: 0.8rem;
  }
}

/* Active link emphasis */
.md-nav__link--active {
  font-weight: bold;
  color: var(--accent-teal);
}