/* ═══════════════════════════════════════════════
   RADIANT OPTIMIZER — Standard Floating Pill Nav
   Identical across all pages except index.html
   (index.html has its own self-contained nav CSS)
   ═══════════════════════════════════════════════ */

#nav {
  position: fixed !important;
  top: 16px !important;
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  z-index: 9000 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 24px !important;
  padding: 10px 12px 10px 22px !important;
  background: rgba(10,10,11,0.84) !important;
  backdrop-filter: blur(24px) saturate(160%) !important;
  -webkit-backdrop-filter: blur(24px) saturate(160%) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 100px !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.45), inset 0 1px 0 rgba(255,255,255,0.06) !important;
  max-width: calc(100vw - 32px) !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
}

/* Kill the blue underline on nav links from home.css */
#nav .nav-links a::after { display: none !important; content: none !important; }
#nav .nav-links a:hover { color: #fff !important; background: rgba(255,255,255,0.07) !important; }

/* Brand link */
#nav .nav-brand,
#nav a.nav-brand {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  text-decoration: none !important;
  color: #fff !important;
  flex-shrink: 0;
}

/* Blue square logo mark */
.nav-logo {
  width: 30px !important;
  height: 30px !important;
  border-radius: 8px !important;
  background: linear-gradient(135deg, #0052FF, #0047E0) !important;
  display: grid !important;
  place-items: center !important;
  font-family: 'Unbounded', system-ui, sans-serif !important;
  font-weight: 900 !important;
  font-size: 16px !important;
  color: #fff !important;
  box-shadow: 0 0 18px rgba(0,82,255,0.45), inset 0 1px 0 rgba(255,255,255,0.25) !important;
  flex-shrink: 0;
  line-height: 1;
  letter-spacing: 0;
}

/* Brand wordmark */
#nav .nav-brand-text {
  font-family: 'Unbounded', system-ui, sans-serif !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: 0.02em !important;
  color: #fff !important;
  white-space: nowrap;
  background: none !important;
  -webkit-text-fill-color: unset !important;
}

/* Old brand classes — override to prevent layout issues */
#nav .nav-brand-3d,
#nav .nav-brand-accent { display: none !important; }

/* Nav links list */
#nav .nav-links {
  display: flex !important;
  align-items: center !important;
  gap: 2px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
#nav .nav-links li { list-style: none; }
#nav .nav-links a {
  padding: 8px 13px !important;
  font-family: 'Manrope', system-ui, sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: rgba(255,255,255,0.72) !important;
  border-radius: 100px !important;
  transition: color 0.2s, background 0.2s !important;
  text-decoration: none !important;
  white-space: nowrap;
  display: inline-block;
  background: none;
}
#nav .nav-links a:hover,
#nav .nav-links a.active {
  color: #fff !important;
  background: rgba(255,255,255,0.07) !important;
}

/* Auth buttons wrapper */
.nav-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

/* Sign Up / Dashboard CTA button — white pill */
.nav-cta {
  padding: 9px 20px !important;
  background: #fff !important;
  color: #0A0A0B !important;
  font-family: 'Manrope', system-ui, sans-serif !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  border-radius: 100px !important;
  border: none !important;
  cursor: pointer !important;
  transition: transform 0.22s, box-shadow 0.22s !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  white-space: nowrap;
  line-height: 1;
}
.nav-cta:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 20px rgba(255,255,255,0.22) !important;
}

/* Old nav button class — override */
.nav-btn {
  padding: 9px 20px !important;
  background: #fff !important;
  color: #0A0A0B !important;
  font-family: 'Manrope', system-ui, sans-serif !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  border-radius: 100px !important;
  border: none !important;
  cursor: pointer !important;
  transition: transform 0.22s, box-shadow 0.22s !important;
  white-space: nowrap;
  line-height: 1;
  display: inline-flex !important;
  align-items: center !important;
}
.nav-btn:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 20px rgba(255,255,255,0.22) !important;
}

/* Hamburger — created by home.js but we style it */
.nav-hamburger {
  width: 38px !important;
  height: 38px !important;
  min-width: 38px;
  border-radius: 100px !important;
  background: rgba(255,255,255,0.09) !important;
  border: none !important;
  cursor: pointer !important;
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
  flex-direction: column !important;
  gap: 4px !important;
  flex-shrink: 0;
}
.nav-hamburger span {
  display: block !important;
  width: 15px !important;
  height: 1.5px !important;
  background: #fff !important;
  border-radius: 2px !important;
}
.nav-hamburger.open span:nth-child(1) { transform: translateY(5.5px) rotate(45deg); }
.nav-hamburger.open span:nth-child(2) { opacity: 0; }
.nav-hamburger.open span:nth-child(3) { transform: translateY(-5.5px) rotate(-45deg); }

/* Mobile drawer — created by home.js */
.nav-mobile-drawer {
  display: none;
  position: fixed !important;
  inset: 0 !important;
  z-index: 9500 !important;
  background: rgba(10,10,11,0.97) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  flex-direction: column !important;
  padding: 80px 32px 40px !important;
  overflow-y: auto;
  opacity: 0;
  transform: translateY(-10px);
  transition: opacity 0.3s ease, transform 0.3s ease !important;
}
.nav-mobile-drawer.open {
  display: flex !important;
  opacity: 1 !important;
  transform: translateY(0) !important;
}
.nav-mobile-drawer .nav-links {
  flex-direction: column !important;
  gap: 0 !important;
  width: 100% !important;
  align-items: flex-start !important;
}
.nav-mobile-drawer .nav-links a {
  font-family: 'Unbounded', system-ui, sans-serif !important;
  font-size: 22px !important;
  color: #fff !important;
  padding: 16px 0 !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 0 !important;
  font-weight: 500 !important;
  width: 100%;
  display: block !important;
  background: none !important;
}
.nav-mobile-drawer-btns {
  margin-top: 28px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.nav-mobile-drawer-btns .nav-btn,
.nav-mobile-drawer-btns .nav-cta {
  width: 100% !important;
  text-align: center !important;
  justify-content: center !important;
  padding: 14px 20px !important;
  font-size: 15px !important;
  border-radius: 14px !important;
}

/* Hide old lang switcher in nav (cleaned up on each page) */
#nav #radiant-lang-switcher { display: none !important; }

/* Responsive breakpoint */
@media (max-width: 900px) {
  #nav { gap: 8px !important; padding: 8px 8px 8px 16px !important; }
  #nav .nav-links { display: none !important; }
  .nav-hamburger { display: flex !important; }
  #nav .nav-brand-text { font-size: 11px !important; }
}
