/* Dark theme styles - applied via .dark-theme class or system preference */
@media (prefers-color-scheme: dark) {
    body:not(.light-theme) {
      background-color: #292929;
      color: #ddd;
    }

    body:not(.light-theme) p {
      color: #ddd;
    }

    body:not(.light-theme) .site-header a {
      color: #ccc;
    }

    body:not(.light-theme) a {
      color: #648dae;
    }

    body:not(.light-theme) a span.ecrm-0700,
    body:not(.light-theme) a span.ecrm-0800,
    body:not(.light-theme) .abstract_button {
      color: #ddd;
    }

    body:not(.light-theme) a:hover,
    body:not(.light-theme) a:focus,
    body:not(.light-theme) a:active,
    body:not(.light-theme) a span.ecrm-0700:hover,
    body:not(.light-theme) a span.ecrm-0800:hover  {
      color: #90caf9;
      text-decoration: none;
      background-image: linear-gradient(to top,
        rgba(0,0,0,0) 13%,
        rgba($link-hover-color,.8) 13%,
        rgba($link-hover-color,.8) 17%,
        rgba(0,0,0,0) 17%
      );
    }
    body:not(.light-theme) .site-header nav a {
      color: #aaa;
    }

    body:not(.light-theme) .site-header nav a:hover,
    body:not(.light-theme) .site-header nav a:focus,
    body:not(.light-theme) .site-header nav a:active {
      color: #bbb;
      opacity: 1;
      border-bottom: 2px solid #bbb;
    }

    body:not(.light-theme) footer {
      background-color: #292929;
      color: #aaa;
    }

    body:not(.light-theme) .wordcloud_div {
      background-color: #333;
    }

    body:not(.light-theme) .site-title {
      color: #bbb;
    }
    /* #5FBEEB #1487C8 */
    body:not(.light-theme) .site-nav {
      border-top: 1px solid #bbb;
      border-bottom: 1px solid #bbb;
    }

    body:not(.light-theme) .nav-item {
        color: #bbb;
    }
    body:not(.light-theme) .nav-item:hover {
        color: #fff;
    }

    body:not(.light-theme) button {
        color: #bbb;
    }
    body:not(.light-theme) button:hover {
        color: #eee;
    }
    body:not(.light-theme) button.button-primary {
        border-color: #0a3361;
        background-color: #154883;
    }

    body:not(.light-theme) hr {
        border-top-color: #444;
    }

    body:not(.light-theme) code {
        background: #3a3a3a;
        border-color: #555;
    }

    body:not(.light-theme) .footer-logo {
        filter: invert(1) grayscale(1) brightness(0.7);
    }

    body:not(.light-theme) picture img {
        filter: brightness(0) invert(1);
    }
  }

/* Manual dark theme - applied when user explicitly chooses dark */
body.dark-theme {
    background-color: #292929;
    color: #ddd;
}

body.dark-theme p {
    color: #ddd;
}

body.dark-theme .site-header a {
    color: #ccc;
}

body.dark-theme a {
    color: #648dae;
}

body.dark-theme a span.ecrm-0700,
body.dark-theme a span.ecrm-0800,
body.dark-theme .abstract_button {
    color: #ddd;
}

body.dark-theme a:hover,
body.dark-theme a:focus,
body.dark-theme a:active,
body.dark-theme a span.ecrm-0700:hover,
body.dark-theme a span.ecrm-0800:hover  {
    color: #90caf9;
    text-decoration: none;
}

body.dark-theme .site-header nav a {
    color: #aaa;
}

body.dark-theme .site-header nav a:hover,
body.dark-theme .site-header nav a:focus,
body.dark-theme .site-header nav a:active {
    color: #bbb;
    opacity: 1;
    border-bottom: 2px solid #bbb;
}

body.dark-theme footer {
    background-color: #292929;
    color: #aaa;
}

body.dark-theme .wordcloud_div {
    background-color: #333;
}

body.dark-theme .site-title {
    color: #bbb;
}

body.dark-theme .site-nav {
    border-top: 1px solid #bbb;
    border-bottom: 1px solid #bbb;
}

body.dark-theme .nav-item {
    color: #bbb;
}
body.dark-theme .nav-item:hover {
    color: #fff;
}

body.dark-theme button {
    color: #bbb;
}
body.dark-theme button:hover {
    color: #eee;
}
body.dark-theme button.button-primary {
    border-color: #0a3361;
    background-color: #154883;
}

body.dark-theme hr {
    border-top-color: #444;
}

body.dark-theme code {
    background: #3a3a3a;
    border-color: #555;
}

body.dark-theme .footer-logo {
    filter: invert(1) grayscale(1) brightness(0.7);
}

/* GitHub logo styling for dark mode */
body.dark-theme picture img {
    filter: brightness(0) invert(1);
}

@media (prefers-color-scheme: dark) {
    body:not(.light-theme) picture img {
        filter: brightness(0) invert(1);
    }
}

/* Theme toggle button styles */
.theme-toggle {
    position: fixed;
    top: 15px;
    right: 15px;
    z-index: 1000;
    background: transparent;
    border: 1px solid #bbb;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    padding: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    transition: all 0.3s ease;
    margin-bottom: 0;
}

.theme-toggle:hover {
    transform: scale(1.1);
}

body.dark-theme .theme-toggle,
body:not(.light-theme) .theme-toggle {
    border-color: #666;
}

@media (prefers-color-scheme: dark) {
    body:not(.light-theme) .theme-toggle {
        border-color: #666;
    }
}