/* Automatic Dark Mode - Respects System Preference */

@media (prefers-color-scheme: dark) {
  /* Base colors */
  :root {
    --background-color: #1a1a1a;
    --text-color: #e0e0e0;
    --link-color: #58a6ff;
    --link-hover-color: #79c0ff;
    --border-color: #30363d;
    --code-background: #0d1117;
    --masthead-background: #161b22;
    --footer-background: #0d1117;
    --notice-background: #21262d;
  }

  /* Body and main content */
  body {
    background-color: var(--background-color) !important;
    color: var(--text-color) !important;
  }

  /* Text elements */
  h1, h2, h3, h4, h5, h6,
  p, li, td, th, span, div {
    color: var(--text-color) !important;
  }

  /* Links */
  a {
    color: var(--link-color) !important;
  }

  a:hover {
    color: var(--link-hover-color) !important;
  }

  /* Header/Masthead */
  .masthead,
  .masthead__inner-wrap {
    background-color: var(--masthead-background) !important;
  }

  .masthead__menu {
    background-color: var(--masthead-background) !important;
  }

  .greedy-nav {
    background: var(--masthead-background) !important;
  }

  .greedy-nav a,
  .greedy-nav .visible-links a {
    color: var(--text-color) !important;
  }

  /* Footer */
  .page__footer {
    background-color: var(--footer-background) !important;
    color: var(--text-color) !important;
  }

  .page__footer-copyright,
  .page__footer-follow {
    color: var(--text-color) !important;
  }

  /* Main content area */
  .page__content,
  .page__inner-wrap,
  .page {
    background-color: var(--background-color) !important;
  }

  /* Sidebar */
  .sidebar,
  .author__avatar,
  .author__content,
  .author__bio {
    background-color: var(--background-color) !important;
    color: var(--text-color) !important;
  }

  /* Code blocks */
  pre,
  code {
    background-color: var(--code-background) !important;
    color: #c9d1d9 !important;
  }

  .highlight {
    background-color: var(--code-background) !important;
  }

  /* Inline code */
  code.language-plaintext {
    background-color: var(--notice-background) !important;
    color: #ff7b72 !important;
  }

  /* Borders */
  .page__content hr,
  .page__footer,
  .sidebar,
  blockquote,
  .archive__item {
    border-color: var(--border-color) !important;
  }

  /* Archive items (blog posts list) */
  .archive__item-title,
  .archive__item-excerpt {
    color: var(--text-color) !important;
  }

  /* Notices and callouts */
  .notice,
  .notice--primary,
  .notice--info,
  .notice--warning,
  .notice--success,
  .notice--danger {
    background-color: var(--notice-background) !important;
    color: var(--text-color) !important;
    border-color: var(--border-color) !important;
  }

  /* Pagination */
  .pagination {
    background-color: var(--background-color) !important;
  }

  .pagination a,
  .pagination span {
    color: var(--text-color) !important;
    background-color: var(--notice-background) !important;
    border-color: var(--border-color) !important;
  }

  /* Tables */
  table {
    background-color: var(--background-color) !important;
    border-color: var(--border-color) !important;
  }

  th {
    background-color: var(--notice-background) !important;
  }

  /* Buttons */
  .btn,
  .page__taxonomy-item {
    background-color: var(--notice-background) !important;
    color: var(--text-color) !important;
    border-color: var(--border-color) !important;
  }

  .btn:hover {
    background-color: var(--border-color) !important;
  }

  /* Social share buttons */
  .page__share a {
    background-color: var(--notice-background) !important;
    color: var(--text-color) !important;
  }

  /* Author profile */
  .author__urls {
    background-color: var(--background-color) !important;
  }

  .author__urls li a {
    color: var(--text-color) !important;
  }

  /* Search */
  .search-content {
    background-color: var(--background-color) !important;
  }

  .search-content input {
    background-color: var(--notice-background) !important;
    color: var(--text-color) !important;
    border-color: var(--border-color) !important;
  }

  /* Form elements */
  input,
  textarea,
  select {
    background-color: var(--notice-background) !important;
    color: var(--text-color) !important;
    border-color: var(--border-color) !important;
  }

  /* Comments section */
  .page__comments {
    background-color: var(--background-color) !important;
  }

  /* Navigation breadcrumbs */
  .breadcrumbs {
    background-color: var(--background-color) !important;
  }

  .breadcrumbs a {
    color: var(--link-color) !important;
  }

  /* TOC (Table of Contents) */
  .toc,
  .toc__menu {
    background-color: var(--notice-background) !important;
    border-color: var(--border-color) !important;
  }

  .toc__menu a {
    color: var(--text-color) !important;
  }

  /* Images - ensure they don't get inverted */
  img {
    opacity: 0.9;
  }

  /* Blockquotes */
  blockquote {
    background-color: var(--notice-background) !important;
    border-left-color: var(--link-color) !important;
  }
}
