/* ===== Navbar: production polish (scroll-spy, a11y, mobile menu) ===== */
html{scroll-padding-top:calc(var(--nav-h,72px) + 12px)}
#nb{padding-left:max(5%,env(safe-area-inset-left,0px));padding-right:max(5%,env(safe-area-inset-right,0px))}
#mmenu{top:var(--nav-h,72px);overscroll-behavior:contain;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))}
@media(min-width:901px){#nb .nlinks{margin-left:auto;margin-right:20px}#nb .nright{margin-left:0}}
.nlinks a{position:relative}
.nlinks a.active{color:var(--text-primary);background:rgba(59,130,246,.14);box-shadow:inset 0 0 0 1px rgba(59,130,246,.28)}
#mmenu a.active{color:var(--blue);background:rgba(59,130,246,.10)}
#nb a:focus-visible,#nb button:focus-visible,#mmenu a:focus-visible,#mmenu button:focus-visible{outline:2px solid var(--blue,#3b82f6);outline-offset:3px}
.hbtn{min-width:44px;min-height:44px;align-items:center;justify-content:center}
.theme-toggle{min-width:38px;min-height:38px}
#mmenu a.pbtn{color:#fff;text-align:center;border-radius:999px;padding:15px 20px}
#mmenu a.pbtn:hover,#mmenu a.pbtn:active{padding-left:20px;color:#fff}
.skip-link{position:fixed;left:12px;top:-64px;z-index:100000;background:#2563eb;color:#fff;padding:10px 16px;border-radius:10px;font:600 14px/1 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;text-decoration:none}
.skip-link:focus{top:calc(env(safe-area-inset-top,0px) + 10px)}
[tabindex="-1"]:focus{outline:none}
