/* Shared theme: base font size + day/night palettes.
   Night is the default; theme.js sets data-theme="light" on <html> for day. */

html { font-size: 17px; }

:root {
  --neon-green:  #00ff88;
  --neon-blue:   #00cfff;
  --neon-pink:   #ff2d78;
  --neon-amber:  #ffb020;
  --green-rgb:   0,255,136;
  --blue-rgb:    0,207,255;
  --pink-rgb:    255,45,120;
  --amber-rgb:   255,176,32;
  --bg-rgb:      5,5,16;
  --overlay-rgb: 2,2,10;
  --input-rgb:   0,0,0;
  --fg-rgb:      255,255,255;
  --bg:          #050510;
  --bg2:         #0a0a1f;
  --card-bg:     #0d0d28;
  --border:      rgba(0,255,136,0.2);
  --nav-bg:      rgba(5,5,16,0.85);
  --grid-line:   rgba(0,255,136,0.04);
  --terminal-bg: rgba(0,0,0,0.6);
  --text:        #c8d8e8;
  --text-strong: #fff;
  --text-body:   #aebccb;
  --text-soft:   #9db3c7;
  --text-muted:  #8899aa;
  --text-label:  #7f93a8;
  --text-card:   #7788aa;
  --text-dim:    #667788;
  --text-subtle: #556677;
  --text-faint:  #445566;
  --text-footer: #334455;
  --on-accent:   #050510;
  --error-text:  #ff6699;
  --glow-green:  var(--neon-green);
  --glow-soft:   rgba(0,255,136,0.4);
  --mono:        'Courier New', Courier, monospace;
}

:root[data-theme="light"] {
  --neon-green:  #00875a;
  --neon-blue:   #0072ad;
  --neon-pink:   #d6185f;
  --neon-amber:  #b86e00;
  --green-rgb:   0,135,90;
  --blue-rgb:    0,114,173;
  --pink-rgb:    214,24,95;
  --amber-rgb:   184,110,0;
  --bg-rgb:      244,247,251;
  --overlay-rgb: 232,238,245;
  --input-rgb:   255,255,255;
  --fg-rgb:      13,27,42;
  --bg:          #f4f7fb;
  --bg2:         #e8eef5;
  --card-bg:     #ffffff;
  --border:      rgba(0,135,90,0.25);
  --nav-bg:      rgba(244,247,251,0.88);
  --grid-line:   rgba(0,135,90,0.07);
  --terminal-bg: #ffffff;
  --text:        #2a3a4a;
  --text-strong: #0d1b2a;
  --text-body:   #34465a;
  --text-soft:   #3d4f62;
  --text-muted:  #4a5a6a;
  --text-label:  #55677a;
  --text-card:   #4f5d78;
  --text-dim:    #5a6a7a;
  --text-subtle: #627284;
  --text-faint:  #6a7a8a;
  --text-footer: #6a7a8a;
  --on-accent:   #ffffff;
  --error-text:  #c0134f;
  --glow-green:  transparent;
  --glow-soft:   transparent;
}

.theme-toggle {
  background: none;
  border: 1px solid var(--border);
  border-radius: 3px;
  color: var(--text);
  font-size: 1rem;
  line-height: 1;
  padding: 0.35rem 0.55rem;
  cursor: pointer;
  transition: color 0.2s, border-color 0.2s;
}

.theme-toggle:hover {
  color: var(--neon-green);
  border-color: var(--neon-green);
}

/* For pages without a nav bar (login) */
.theme-toggle-fixed {
  position: fixed;
  top: 1rem;
  right: 1rem;
  z-index: 100;
}
