/*-- -------------------------- -->
<---      Core Dark Styles      -->
<--- -------------------------- -*/
/* Mobile */
@media only screen and (min-width: 0em) {
  body.dark-mode {
    /* Gruvbox Dark Hard — overrides the light tokens defined in root.css */
    --bg: #1d2021;
    --bg-soft: #282828;
    --text: #ebdbb2;
    --text-muted: #d5c4a1;
    --text-faint: #a89984;
    --border: #504945;
    --surface: #32302f;
    /* On dark backgrounds the bright orange has plenty of contrast for text */
    --primary-text: #fe8019;
    --bodyTextColorWhite: #1d2021;

    /* Legacy aliases used by existing nav/footer dark rules — Gruvbox-mapped */
    --dark: #1d2021;
    --medium: #32302f;
    --accent: #504945;
  }
  /* Logo swap: show the dark-mode variant, hide the light one */
  body.dark-mode .light {
    display: none;
  }
  body.dark-mode .dark {
    display: block !important;
  }
  .dark {
    display: none;
  }
}
/*-- -------------------------- -->
<---      Dark Mode Toggle      -->
<--- -------------------------- -*/
/* Mobile */
@media only screen and (min-width: 0em) {
  body.dark-mode #dark-mode-toggle .sun {
    transform: translate(-50%, -50%);
    opacity: 1;
  }
  body.dark-mode #dark-mode-toggle .moon {
    transform: translate(-50%, -150%);
    opacity: 0;
  }
  #dark-mode-toggle {
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 3.75rem;
    width: 3rem;
    height: 3rem;
    background: transparent;
    border: none;
    overflow: hidden;
    padding: 0;
  }
  #dark-mode-toggle img,
  #dark-mode-toggle svg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 1.5625rem;
    height: 1.5625rem;
    pointer-events: none;
  }
  #dark-mode-toggle .moon {
    z-index: 2;
    transition: transform .3s, opacity .3s, fill .3s;
    fill: var(--text);
  }
  #dark-mode-toggle .sun {
    z-index: 1;
    transform: translate(-50%, 100%);
    opacity: 0;
    transition: transform .3s, opacity .3s;
  }
}
/* Desktop */
@media only screen and (min-width: 64em) {
  #dark-mode-toggle {
    position: relative;
    top: auto;
    right: auto;
    transform: none;
    margin-left: 1.875rem;
    margin-bottom: 0rem;
  }
  #dark-mode-toggle .moon {
    fill: var(--text);
  }
}
