/* NCD required header lock - preserves storefront/product card layouts. */
:root{--ncd-header-pink:#e84d83;--ncd-header-ink:#111827;--ncd-header-line:#eee;--ncd-header-blue:#2563eb;}
/* PUBLIC STOREFRONT HEADER: keep logo visible and nav aligned without moving page sections. */
.site-header{background:#fff!important;border-bottom:1px solid var(--ncd-header-line)!important;position:sticky!important;top:0!important;z-index:80!important;min-height:94px!important;display:block!important;overflow:visible!important;}
.site-header .header-grid{display:grid!important;grid-template-columns:minmax(220px,270px) minmax(0,1fr) auto!important;align-items:center!important;gap:18px!important;padding:14px 0!important;min-height:94px!important;}
.logo-link{display:flex!important;align-items:center!important;justify-content:flex-start!important;min-width:0!important;text-decoration:none!important;}
.logo-link img{display:block!important;width:auto!important;max-width:260px!important;height:78px!important;max-height:82px!important;object-fit:contain!important;object-position:left center!important;opacity:1!important;visibility:visible!important;background:transparent!important;border-radius:0!important;}
.site-header .main-nav{display:flex!important;align-items:center!important;justify-content:center!important;gap:26px!important;flex-wrap:wrap!important;margin:0!important;}
.site-header .main-nav a{font-weight:900!important;text-transform:uppercase!important;white-space:nowrap!important;}
.header-icons{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:12px!important;}
.header-icons .icon-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:32px!important;min-height:32px!important;}
.top-strip{display:block!important;}
@media(max-width:1100px){.site-header .header-grid{grid-template-columns:1fr!important;justify-items:center!important}.logo-link{justify-content:center!important}.logo-link img{max-width:300px!important;height:82px!important;object-position:center}.site-header .main-nav{gap:16px!important}.header-icons{justify-content:center!important}}
@media(max-width:720px){.site-header{min-height:auto!important}.site-header .header-grid{padding:12px 0!important}.logo-link img{height:70px!important;max-width:260px!important}.site-header .main-nav{gap:10px!important;font-size:12px!important}.top-strip-inner{display:grid!important;text-align:center!important}.top-strip nav{justify-content:center!important;flex-wrap:wrap!important}}
/* CUSTOMER CENTER HEADER: force approved full logo instead of old NCD placeholder crop. */
.site-head .brand img,.customer-header .brand img,.portal-top .brand img{display:block!important;width:116px!important;height:74px!important;object-fit:contain!important;object-position:center!important;background:#fff!important;border-radius:18px!important;visibility:visible!important;opacity:1!important;}
.site-head .head-inner{display:grid!important;grid-template-columns:minmax(270px,340px) 1fr auto!important;align-items:center!important;gap:18px!important;}
.site-head .main-nav{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;flex-wrap:wrap!important;}
@media(max-width:980px){.site-head .head-inner{grid-template-columns:1fr!important;justify-items:center!important}.site-head .head-actions{justify-content:center!important}}
/* ADMIN HEADER: required shell stays visible and readable on admin/system pages. */
.ncd-admin-nav-shell{display:block!important;width:min(100% - 20px,1580px)!important;margin:10px auto!important;background:#fff!important;border:1px solid #dbe7f7!important;border-radius:22px!important;box-shadow:0 14px 34px rgba(15,39,68,.10)!important;overflow:visible!important;position:relative!important;z-index:200!important;}
.ncd-admin-nav-bar{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;padding:10px!important;}
.ncd-admin-brand{display:flex!important;align-items:center!important;gap:10px!important;min-width:260px!important;flex:1 1 390px!important;text-decoration:none!important;color:#12304f!important;}
.ncd-admin-logo{display:block!important;width:82px!important;height:46px!important;object-fit:contain!important;object-position:left center!important;max-width:none!important;max-height:none!important;background:transparent!important;border-radius:0!important;}
.ncd-admin-brand strong{display:block!important;font-weight:950!important;line-height:1.05!important;color:#12304f!important;white-space:normal!important;}
.ncd-admin-brand small{display:block!important;font-weight:750!important;color:#5e7692!important;line-height:1.1!important;}
.ncd-nav-toggle,.ncd-nav-chip{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:38px!important;border-radius:12px!important;padding:9px 16px!important;font-weight:950!important;text-decoration:none!important;white-space:nowrap!important;}
.ncd-admin-identity{display:flex!important;align-items:center!important;gap:10px!important;min-width:min(100%,320px)!important;flex:1 1 360px!important;background:#eef5ff!important;border:1px solid #dbe7f7!important;border-radius:16px!important;padding:7px 10px!important;}
.ncd-admin-identity img{width:38px!important;height:38px!important;border-radius:50%!important;object-fit:cover!important;background:#fff!important;}
.ncd-admin-identity strong,.ncd-admin-identity small{display:block!important;white-space:normal!important;line-height:1.12!important;}
@media(max-width:760px){.ncd-admin-nav-bar{display:grid!important;grid-template-columns:1fr!important}.ncd-admin-brand,.ncd-admin-identity,.ncd-nav-toggle,.ncd-nav-chip{width:100%!important;justify-content:center!important}.ncd-admin-brand{justify-content:flex-start!important}.ncd-admin-logo{width:96px!important;height:54px!important}}
@media print{.ncd-admin-nav-shell{display:none!important}.site-header,.top-strip,.site-head{display:none!important}}


/* 20260511 required visible admin header lock: remains available even when pages open to deep tabs/anchors. */
.ncd-admin-nav-shell{
  position:sticky!important;
  top:0!important;
  z-index:99999!important;
  width:calc(100% - 20px)!important;
  max-width:1580px!important;
}
.ncd-admin-nav-bar{min-height:66px!important;}
.ncd-admin-logo{width:98px!important;height:54px!important;object-fit:contain!important;object-position:left center!important;}
.ncd-admin-identity img{display:block!important;width:42px!important;height:42px!important;object-fit:cover!important;border-radius:50%!important;}
.ncd-admin-brand span,.ncd-admin-identity span{overflow:visible!important;}
.ncd-admin-nav-shell + .ncd-badge-shell,
.ncd-admin-nav-shell + .admin-main,
.ncd-admin-nav-shell + main{margin-top:12px!important;}
@media(max-width:900px){.ncd-admin-nav-shell{position:relative!important;top:auto!important;}}


/* NCD 2026-05-11 header visible-logo/photo hard lock */
.ncd-admin-nav-shell{position:sticky!important;top:0!important;z-index:9999!important;background:#fff!important;}
.ncd-admin-brand{gap:14px!important;}
.ncd-admin-logo{display:block!important;visibility:visible!important;opacity:1!important;width:142px!important;height:64px!important;min-width:142px!important;object-fit:contain!important;object-position:left center!important;background:url('/admin/assets/logo-full.png') left center/contain no-repeat!important;border:0!important;border-radius:0!important;}
.ncd-admin-identity img{display:block!important;visibility:visible!important;opacity:1!important;width:54px!important;height:54px!important;min-width:54px!important;border-radius:999px!important;object-fit:cover!important;background:#fff url('/admin/assets/logo-full.png') center/contain no-repeat!important;border:1px solid #dbe7f7!important;}
.ncd-admin-identity img[src=''],.ncd-admin-identity img:not([src]){content:url('/admin/assets/logo-full.png')!important;}
@media(max-width:760px){.ncd-admin-logo{width:160px!important;height:72px!important;min-width:160px!important}}


/* NCD 2026-05-11 delicate badge/header repair: visible approved logo, identity photo fallback, reliable menu dropdown */
.ncd-admin-nav-shell{position:sticky!important;top:0!important;z-index:99998!important;overflow:visible!important;margin:10px 12px 12px!important;}
.ncd-admin-nav-bar{position:relative!important;z-index:99999!important;background:#fff!important;border-radius:24px!important;}
.ncd-admin-brand{display:flex!important;align-items:center!important;gap:14px!important;min-width:min(100%,360px)!important;}
.ncd-admin-logo-frame{display:flex!important;align-items:center!important;justify-content:flex-start!important;width:154px!important;min-width:154px!important;height:66px!important;background:url('/admin/assets/logo-full.png?v=20260511-delicate') left center/contain no-repeat!important;overflow:visible!important;}
.ncd-admin-logo{display:block!important;visibility:visible!important;opacity:1!important;width:154px!important;height:66px!important;min-width:154px!important;object-fit:contain!important;object-position:left center!important;border:0!important;border-radius:0!important;background:transparent!important;filter:none!important;}
.ncd-admin-identity{display:flex!important;align-items:center!important;gap:10px!important;}
.ncd-admin-avatar-frame{display:grid!important;place-items:center!important;width:50px!important;height:50px!important;min-width:50px!important;border-radius:999px!important;background:#fff!important;border:1px solid #d7e6fb!important;overflow:hidden!important;}
.ncd-admin-avatar-frame img,.ncd-admin-identity>img{display:block!important;width:50px!important;height:50px!important;min-width:50px!important;border-radius:999px!important;object-fit:cover!important;background:#fff url('/admin/assets/logo-full.png?v=20260511-delicate') center/contain no-repeat!important;}
.ncd-admin-nav-shell.is-open .ncd-nav-panel{display:block!important;position:relative!important;z-index:99997!important;max-height:calc(100vh - 120px)!important;overflow:auto!important;background:linear-gradient(180deg,#f8fbff,#eef5ff)!important;border-radius:0 0 22px 22px!important;}
.ncd-admin-nav-shell .ncd-nav-group[open] .ncd-nav-group-links{display:grid!important;}
.ncd-nav-toggle,.ncd-nav-chip{position:relative!important;z-index:100000!important;}
@media(max-width:900px){.ncd-admin-logo-frame,.ncd-admin-logo{width:130px!important;min-width:130px!important;height:58px!important}.ncd-admin-nav-shell{position:relative!important;top:auto!important}}


/* NCD 2026-05-15 no broken brand phrases */
/* NCD 2026-05-15 brand/department phrase readability guard.
   Keeps short identity phrases such as "Operations command center" on one line
   while allowing the overall header to wrap as a block on small screens. */
.ncd-admin-brand span,
.ncd-admin-brand .brand-copy,
.top-shell .brand > div,
.admin-shell .brand > div,
.brand-lockup > div{
  min-width:0!important;
  max-width:none!important;
}
.ncd-admin-brand strong,
.ncd-admin-brand small,
.top-shell .brand strong,
.top-shell .brand small,
.admin-shell .brand strong,
.admin-shell .brand small,
.brand-lockup strong,
.brand-lockup small{
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}
.ncd-admin-brand strong,
.top-shell .brand strong,
.admin-shell .brand strong,
.brand-lockup strong{
  font-size:clamp(15px,1.1vw,20px)!important;
  line-height:1.05!important;
}
.ncd-admin-brand small,
.top-shell .brand small,
.admin-shell .brand small,
.brand-lockup small{
  display:block!important;
  font-size:clamp(11px,.78vw,13px)!important;
  line-height:1.08!important;
}
.ncd-admin-brand,
.top-shell .brand,
.admin-shell .brand,
.brand-lockup{
  flex:0 1 auto!important;
  min-width:max-content!important;
  max-width:none!important;
}
@media(max-width:760px){
  .ncd-admin-brand,
  .top-shell .brand,
  .admin-shell .brand,
  .brand-lockup{min-width:0!important;width:auto!important;}
  .ncd-admin-brand strong,
  .ncd-admin-brand small,
  .top-shell .brand strong,
  .top-shell .brand small,
  .admin-shell .brand strong,
  .admin-shell .brand small{white-space:nowrap!important;}
}
