/* =========================================================
   Naukri4Job — Unified navbar (.nv)
   Self-contained: identical on EVERY page. No dependency on
   fi-styles.css, style.css, app.css or bootstrap.
   ========================================================= */
.nv, .nv *{ box-sizing:border-box; }
.nv{
  position:sticky; top:0; z-index:300; background:#fff;
  border-bottom:1px solid #e6e8ee;
  box-shadow:0 1px 0 rgba(16,24,40,.05), 0 10px 30px -24px rgba(16,24,40,.5);
  font-family:'Poppins','Segoe UI',system-ui,sans-serif;
}
.nv-bar{ max-width:1300px; margin:0 auto; padding:0 24px; height:74px;
  display:flex; align-items:center; gap:16px; }
.nv-brand{ display:flex; align-items:center; flex:0 0 auto; }
.nv-brand img{ height:40px; width:auto; max-width:210px; display:block; }
@media (max-width:520px){ .nv-brand img{ height:32px; max-width:170px; } }

.nv-burger{ display:none; flex-direction:column; gap:5px; margin-left:auto;
  background:none; border:0; cursor:pointer; padding:8px; }
.nv-burger span{ width:26px; height:2.5px; background:#0B2447; border-radius:2px; transition:.2s; }

.nv-menu{ display:flex; align-items:center; flex:1 1 auto; gap:12px; min-width:0; }
.nv-links{ display:flex; align-items:center; gap:2px; list-style:none; margin:0; padding:0; }
.nv-links > li{ position:relative; }
.nv-link{ display:inline-flex; align-items:center; gap:6px; padding:9px 12px; border-radius:10px;
  font-weight:600; font-size:.94rem; color:#102A56; text-decoration:none; white-space:nowrap;
  background:none; border:0; cursor:pointer; font-family:inherit; line-height:1;
  transition:background .15s ease,color .15s ease; }
.nv-link:hover, .nv-has-mega:hover > .nv-link{ background:#eff4ff; color:#1d4ed8; }
.nv-chev{ transition:transform .2s ease; }
.nv-has-mega:hover > .nv-link .nv-chev{ transform:rotate(180deg); }

/* ---- Mega dropdown ---- */
.nv-mega{ position:absolute; top:calc(100% + 8px); left:0; min-width:560px;
  background:#fff; border:1px solid #e6e8ee; border-radius:14px;
  box-shadow:0 30px 60px -30px rgba(11,36,71,.45); padding:20px 22px;
  opacity:0; visibility:hidden; transform:translateY(8px);
  transition:opacity .16s ease, transform .16s ease, visibility .16s; z-index:50; }
.nv-has-mega:hover > .nv-mega{ opacity:1; visibility:visible; transform:translateY(0); }
.nv-mega-grid{ display:grid; grid-template-columns:repeat(3,minmax(150px,1fr));
  gap:6px 24px; max-height:72vh; overflow:auto; }
.nv-mega-col h5{ margin:0 0 6px; font-size:.72rem; font-weight:700; letter-spacing:.05em;
  text-transform:uppercase; color:#0B2447; }
.nv-mega-col a{ display:block; color:#475569; font-size:.86rem; line-height:1.85; text-decoration:none; }
.nv-mega-col a:hover{ color:#1d4ed8; }
.nv-mega-foot{ margin-top:14px; padding-top:12px; border-top:1px solid #eef1f6; }
.nv-mega-foot a{ color:#1d4ed8; font-weight:700; font-size:.86rem; text-decoration:none; }

/* ---- Auth ---- */
.nv-auth{ display:flex; align-items:center; gap:10px; margin-left:auto; flex:0 0 auto; white-space:nowrap; }
.nv-auth a{ text-decoration:none; font-weight:700; border-radius:10px; white-space:nowrap;
  transition:.15s; font-size:.92rem; }
.nv-login{ color:#0B2447; padding:9px 8px; }
.nv-login:hover{ color:#1d4ed8; }
.nv-register{ background:#F59E0B; color:#0B2447; padding:10px 18px; }
.nv-register:hover{ background:#d97706; }
.nv-logout{ background:#0B2447; color:#fff; padding:10px 16px; }
.nv-logout:hover{ background:#102A56; }
.nv-wallet{ display:inline-flex; align-items:center; gap:6px; background:#f6f8fc; border:1px solid #e6e8ee;
  color:#0B2447; padding:8px 14px; border-radius:999px; font-weight:700; font-size:.88rem; }
.nv-wallet b{ color:#10b981; }
.nv-cart{ position:relative; display:inline-flex; align-items:center; color:#0B2447; padding:6px; }
.nv-cart:hover{ color:#134e4a; }
.nv-cart .nv-cart-n{ position:absolute; top:-4px; right:-6px; min-width:18px; height:18px; padding:0 4px;
  background:#dc2626; color:#fff; border-radius:999px; font-size:.68rem; font-weight:700;
  display:grid; place-items:center; }

/* ---- Mobile (drawer under ~1000px) ---- */
@media (max-width:1000px){
  .nv-burger{ display:flex; }
  .nv-menu{ position:fixed; top:74px; left:0; right:0; background:#fff;
    border-bottom:1px solid #e6e8ee; flex-direction:column; align-items:stretch; gap:4px;
    padding:14px 20px 22px; box-shadow:0 30px 60px -30px rgba(11,36,71,.35);
    max-height:calc(100vh - 74px); overflow:auto; display:none; }
  .nv.open .nv-menu{ display:flex; }
  .nv-links{ flex-direction:column; align-items:stretch; gap:2px; width:100%; }
  .nv-link{ width:100%; justify-content:space-between; padding:13px 12px; font-size:1rem; }
  .nv-mega{ position:static; min-width:0; box-shadow:none; border:0; border-radius:0;
    padding:2px 6px 8px 14px; opacity:1; visibility:visible; transform:none; display:none; }
  .nv-has-mega.open > .nv-mega{ display:block; }
  .nv-has-mega.open > .nv-link .nv-chev{ transform:rotate(180deg); }
  .nv-mega-grid{ grid-template-columns:1fr; gap:0; max-height:46vh; }
  .nv-auth{ margin:12px 0 0; flex-direction:column; align-items:stretch; width:100%; gap:8px; }
  .nv-auth a{ text-align:center; padding:12px; }
  .nv-wallet{ justify-content:center; }
}
