/* ── NAV.CSS — navigation bar and cursor ── */

/* ── CUSTOM CURSOR ── */
#cur {
  position: fixed; top:0; left:0;
  width:22px; height:22px;
  border: 2px solid var(--accent); border-radius: 50%;
  pointer-events: none; z-index: var(--z-cursor);
  mix-blend-mode: screen;
  opacity: 0;
  will-change: translate;
  transition: opacity var(--duration-fast), border-color var(--duration-ui), scale var(--duration-ui);
}
#cur-dot {
  position: fixed; top:0; left:0;
  width:5px; height:5px;
  background: var(--accent); border-radius: 50%;
  pointer-events: none; z-index: var(--z-cursor);
  opacity: 0;
  will-change: transform;
}
body.cursor-ready #cur,
body.cursor-ready #cur-dot { opacity: 1; }
#cur.h {
  scale: 2.5;
  border-color: var(--gold);
  background: rgba(255,215,0,.1);
}
@media (hover:hover) and (pointer:fine) {
  input[type="range"], [role="slider"] { cursor:none; }
}

/* ── NAV BAR ── */
nav {
  position: fixed; top:0; left:0; right:0;
  z-index: var(--z-navigation);
  background: rgba(8,8,16,.92);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid var(--border);
}
.nav-inner {
  display: flex; align-items: center;
  justify-content: space-between;
  height: 64px; max-width: var(--content-width);
  margin: 0 auto; padding: 0 var(--page-gutter); gap: 16px;
}
.nav-logo {
  font-family: 'Press Start 2P', monospace;
  font-size: 11px; color: var(--accent);
  text-shadow: 0 0 20px var(--accent);
  letter-spacing: 2px; white-space: nowrap; flex-shrink: 0;
}
.nav-logo span { color: var(--accent2); }

.nav-links { display:flex; gap:4px; flex-shrink:0; }
.nav-links a {
  font-family: 'Rajdhani', sans-serif; font-weight: 600;
  font-size: 13px; letter-spacing: 2px; text-transform: uppercase;
  color: var(--dim); text-decoration: none;
  padding: 6px 11px; border: 1px solid transparent; border-radius: var(--radius-sm);
  transition: all var(--duration-ui); white-space: nowrap; cursor: none;
}
.nav-links a:hover, .nav-links a.active {
  color: var(--accent); border-color: var(--accent);
  background: rgba(0,212,255,.07);
  text-shadow: 0 0 10px var(--accent);
}

.nav-status { display:flex; align-items:center; flex-shrink:0; }

/* ── HAMBURGER (mobile) ── */
.nav-burger {
  display:none; flex-direction:column; gap:5px;
  cursor:none; padding:4px; background:none; border:none; flex-shrink:0;
}
.nav-burger span {
  display:block; width:22px; height:2px;
  background:var(--dim); border-radius:2px; transition:all .3s;
}
.nav-mobile {
  display:none; position:fixed; top:64px; left:0; right:0;
  background:rgba(8,8,16,.98); border-bottom:1px solid var(--border);
  z-index:var(--z-mobile-nav); padding:12px var(--page-gutter); flex-direction:column; gap:4px;
}
.nav-mobile.open { display:flex; }
.nav-mobile a {
  font-family:'Rajdhani',sans-serif; font-weight:600; font-size:16px;
  letter-spacing:2px; text-transform:uppercase; color:var(--dim);
  text-decoration:none; padding:10px 12px; border:1px solid transparent;
  border-radius:var(--radius-sm); transition:all var(--duration-ui); cursor:none;
}
.nav-mobile a:hover { color:var(--accent); border-color:var(--accent); }

:focus-visible {
  outline:2px solid var(--accent);
  outline-offset:3px;
}
