/* HAMBURGER ICON */
.hamburger {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    cursor: pointer;
    margin-left: 1.5rem;
    padding: 20px;
    height: 100%;
    border-radius: 100%;
    border: 1px solid var(--color-third);
    transition: background-color 0.3s ease;
  }
  .hamburger span {
    width: 22.5px;
    height: 3px;
    background-color: var(--color-secondary);
    transition: background-color 0.3s ease;
  }
  .hamburger:hover {
    background-color: var(--color-dark);
    border: 1px solid var(--color-dark);
  }
  .hamburger:hover span {
    background-color: #fff;
  }
  
  /* ALIGN NAV + HAMBURGER */
  nav {
    display: flex;
    align-items: center;
  }
  
  /* OVERLAY CONTAINER */
  .sidebar-overlay {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    max-width: 320px;
    height: 100vh;
    background: white;
    z-index: 9999;
    overflow: hidden;
    box-shadow: -2px 0 10px rgba(0, 0, 0, 0.2);
    transform: translateX(100%);
    transition: transform 0.3s ease;
    overflow: hidden;
  }
  .sidebar-overlay.active {
    transform: translateX(0%);
  }
  
  /* SIDEBAR PANELS */
  .sidebar {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: white;
    transform: translateX(100%);
    transition: transform 0.3s ease;
    pointer-events: none;
    opacity: 0;
    z-index: 0;
    padding: 3rem 2rem;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    max-height: 100vh;
  }
  .sidebar.active {
    transform: translateX(0%);
    pointer-events: auto;
    opacity: 1;
    z-index: 1;
  }
  
  /* SLIDE DIRECTION CLASSES */
  .sidebar.left-start {
    transform: translateX(-100%);
  }
  
  .sidebar.slide-in-right {
    transform: translateX(0%);
  }
  .sidebar.slide-out-right {
    transform: translateX(100%);
  }
  .sidebar.slide-in-left {
    transform: translateX(0%);
  }
  .sidebar.slide-out-left {
    transform: translateX(-100%);
  }
  
  /* MENU HEADER ROW (← and ×) */
  .sidebar-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
  }
  
  .back-btn {
    font-size: 1.5rem;
    border: none;
    background: none;
    cursor: pointer;
  }
  
  .close-btn {
    font-size: 2rem;
    border: none;
    background: none;
    cursor: pointer;
    display: block;
    margin-left: auto;
  }
  
  /* MENU STYLING */
  .menu {
    list-style: none;
    padding: 0;
    margin: 0;
  }
  .menu li {
    margin: 2rem 0;
    font-size: 1.3rem;
    letter-spacing: 0.5px;
  }
  .menu li.sub-link {
    margin-left: 1rem;
    font-size: 1rem;
  }

  .icon {
    font-family: 'Material Symbols Outlined';
    font-weight: normal;
    font-style: normal;
    font-size: 1.4rem;
    vertical-align: middle;
    margin-right: 0.5rem;
    display: inline-flex;
  }

  /* ===================== */
/* 🌙 DARK MODE STYLES  */
/* ===================== */

body.dark-mode {
    background-color: #121212;
    color: #f0f0f0;
  }
  
  /* Sidebar Overlay */
  body.dark-mode .sidebar-overlay {
    background-color: #1e1e1e;
    box-shadow: var(--drop-shadow-1);
  }
  
  /* Sidebar Panels */
  body.dark-mode .sidebar {
    background-color: #1e1e1e;
  }
  
  /* Text Colors */
  body.dark-mode .menu li a,
  body.dark-mode .menu li strong,
  body.dark-mode .close-btn,
  body.dark-mode .back-btn {
    color: #f0f0f0;
  }
  
  /* Hamburger Icon */
  body.dark-mode .hamburger {
    background-color: transparent;
  }
  body.dark-mode .hamburger span {
    background-color: #fff;
  }
  body.dark-mode .hamburger:hover {
    background-color: #fff;
  }
  body.dark-mode .hamburger:hover span {
    background-color: #121212;
  }
  
  /* Material Icons */
  body.dark-mode .icon {
    color: #f0f0f0;
  }
  
  /* Active Link Hover Effect (optional) */
  body.dark-mode .menu li a:hover {
    color: #66ccff;
  }
  
  /* Divider Line Tweaks (if <hr> is used) */
  body.dark-mode .menu hr {
    border-color: #333;
  }

/* Make sure icons go light in dark mode */
body.dark-mode .material-symbols-outlined,
body.dark-mode .icon {
  color: #f0f0f0 !important;
  transition: color 0.3s ease;
}

body.dark-mode a:hover .material-symbols-outlined,
body.dark-mode a:hover .icon {
  color: #66ccff !important;
}

  /* Hide nav links and show hamburger on small screens */
@media (max-width: 768px) {
    .nav-links {
      display: none;
    }
  
    .hamburger {
      margin-left: auto; /* push to right if links are gone */
    }
  }