:root{
  --nav-fg: #0f172a;         /* slate-900 */
  --nav-fg-muted:#334155;    /* slate-700 */
  --nav-accent:#2563eb;      /* blue-600 */
  --nav-ring: rgba(37,99,235,.35);
}

/* Make header sticky with solid white background and subtle shadow */
header, .site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: #FFFFFF !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06) !important;
}

/* Generic nav links — stronger weight, spacing, contrast */
header nav a,
.site-header nav a,
header .nav a,
header a[role="menuitem"] {
  color: var(--nav-fg) !important;
  font-weight: 600;
  letter-spacing: .01em;
  padding: .5rem .75rem;
  border-radius: .625rem;
  text-decoration: none;
  transition: color .2s ease, background-color .2s ease, transform .15s ease, box-shadow .15s ease;
}

/* Hover / focus */
header nav a:hover,
header nav a:focus-visible,
.site-header nav a:hover,
.site-header nav a:focus-visible {
  color: var(--nav-accent) !important;
  background: rgba(37,99,235,.08);
  outline: none;
  box-shadow: 0 0 0 3px var(--nav-ring);
}

/* Current page indicator (if aria-current is used) */
header nav a[aria-current="page"],
.site-header nav a[aria-current="page"] {
  color: var(--nav-accent) !important;
  box-shadow: inset 0 -2px 0 var(--nav-accent);
}

/* Donate CTA — make it a pill button (targets donate/buymeacoffee) */
header nav a[href*="donate"],
.site-header nav a[href*="donate"],
header nav a[href*="buymeacoffee"],
.site-header nav a[href*="buymeacoffee"] {
  background: #111827 !important;   /* gray-900 */
  color: #fff !important;
  padding: .5rem .9rem;
  border-radius: 9999px;
}

header nav a[href*="donate"]:hover,
.site-header nav a[href*="donate"]:hover,
header nav a[href*="buymeacoffee"]:hover,
.site-header nav a[href*="buymeacoffee"]:hover {
  transform: translateY(-1px);
  background: #0f172a !important;
  box-shadow: 0 6px 12px rgba(0,0,0,.12);
}

/* Compact, comfy spacing on small screens */
@media (max-width: 640px){
  header nav, .site-header nav { gap: .25rem; }
  header nav a, .site-header nav a { padding: .45rem .6rem; }
}