.customer-auth-card{overflow:hidden}
.customer-auth-copy-list{display:grid;gap:.75rem}
.customer-auth-copy-item{display:flex;align-items:flex-start;gap:.7rem;padding:.8rem .9rem;border-radius:1rem;background:rgba(255,255,255,.10);backdrop-filter:blur(2px)}
.customer-auth-copy-item i{font-size:1.05rem;line-height:1.4;margin-top:.05rem}
.customer-auth-copy-item span{color:#fff;line-height:1.45;font-weight:500}
.customer-auth-form-wrap .auth-lead{max-width:34rem;line-height:1.55}
.customer-auth-hint{margin-top:.4rem;line-height:1.45}
.customer-auth-inline-note{display:flex;align-items:flex-start;gap:.55rem;padding:.8rem .95rem;border:1px solid rgba(15,23,42,.08);border-radius:1rem;background:#f8fafc;color:#334155;font-size:.95rem;line-height:1.45}
.customer-auth-inline-note i{margin-top:.05rem;color:#0f766e}
.customer-login-form .form-label{font-weight:700;letter-spacing:.01em}
@media (max-width: 991.98px){
  .customer-auth-form-wrap{padding:1.35rem !important}
  .customer-auth-inline-note{font-size:.92rem}
}


/* v102 compact auth nav refinement */
body.portal-shell{--bgsm-auth-nav-offset:76px;background:linear-gradient(180deg,#f8fafc 0%,#eff4ff 42%,#eef2ff 100%);overflow-x:hidden}
.portal-auth-nav{position:sticky;top:0;z-index:1040;background:linear-gradient(135deg,#0f172a 0%,#1e3a8a 50%,#2563eb 100%);padding:.7rem 0;border-bottom:1px solid rgba(255,255,255,.10);box-shadow:0 12px 30px rgba(15,23,42,.12);transition:transform .28s ease,padding .28s ease,box-shadow .28s ease,background .28s ease}
.portal-auth-nav.is-elevated{box-shadow:0 14px 34px rgba(15,23,42,.18)}
.portal-auth-nav.is-hidden{transform:translateY(-100%)}
.portal-nav-inner{gap:.75rem;align-items:center;min-height:56px}
.portal-auth-nav .navbar-brand{min-width:0;display:flex;align-items:center;gap:.75rem;padding:0;margin-right:0}
.portal-auth-nav .navbar-brand img{width:38px;height:38px;object-fit:contain;border-radius:.85rem;background:rgba(255,255,255,.1);padding:.3rem}
.portal-auth-nav .brand-text{display:flex;flex-direction:column;min-width:0;line-height:1.02}
.portal-auth-nav .brand-main,.portal-auth-nav .brand-sub{display:block;color:#fff}
.portal-auth-nav .brand-main{font-size:.98rem;font-weight:800;letter-spacing:.02em}
.portal-auth-nav .brand-sub{font-size:.72rem;text-transform:uppercase;letter-spacing:.18em;color:rgba(255,255,255,.72);margin-top:.15rem}
.portal-auth-nav .btn{border-radius:999px;font-weight:700;box-shadow:none}
.portal-auth-nav .btn-sm{padding:.58rem .95rem;font-size:.84rem}
.portal-nav-icon{width:40px;height:40px;padding:0;display:grid;place-items:center}
.portal-nav-toggle{display:inline-flex;align-items:center;gap:.5rem;min-height:40px;padding:.58rem .95rem;white-space:nowrap}
.portal-nav-toggle i{font-size:1.05rem}
.portal-mobile-nav-panel{position:fixed;left:12px;right:12px;top:calc(var(--bgsm-auth-nav-offset) + 8px);z-index:1045;transition:opacity .22s ease,transform .22s ease}
.portal-mobile-nav-panel[hidden]{display:block !important;pointer-events:none;opacity:0;transform:translateY(-10px) scale(.985)}
.portal-mobile-nav-panel:not([hidden]){opacity:1;transform:translateY(0) scale(1)}
.portal-mobile-nav-panel-inner{background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border:1px solid rgba(148,163,184,.24);border-radius:1.25rem;padding:.9rem;box-shadow:0 24px 48px rgba(15,23,42,.18)}
.portal-mobile-nav-title{font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#475569;margin:0 0 .7rem .15rem}
.portal-mobile-nav-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}
.portal-mobile-nav-link{display:flex;align-items:center;gap:.7rem;padding:.85rem .9rem;border-radius:1rem;background:#f8fafc;border:1px solid rgba(148,163,184,.2);text-decoration:none;color:#0f172a;font-weight:700;min-height:48px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}
.portal-mobile-nav-link i{font-size:1rem;color:#2563eb;flex:0 0 auto}
.portal-mobile-nav-link:hover,.portal-mobile-nav-link:focus-visible{background:#fff;border-color:rgba(37,99,235,.28);box-shadow:0 12px 22px rgba(37,99,235,.12);transform:translateY(-1px);outline:none}
.portal-mobile-nav-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.42);backdrop-filter:blur(2px);z-index:1042}
.portal-mobile-nav-backdrop[hidden]{display:block !important;pointer-events:none;opacity:0}
.portal-mobile-nav-backdrop:not([hidden]){opacity:1}
body.portal-mobile-nav-open{overflow:hidden}
.bgsm-customer-login-shell{padding:calc(var(--bgsm-auth-nav-offset) + 1.2rem) 0 1.4rem;min-height:100svh}
.customer-auth-card{border:1px solid rgba(226,232,240,.86);border-radius:1.65rem;box-shadow:0 26px 56px rgba(15,23,42,.12);background:rgba(255,255,255,.94);backdrop-filter:blur(10px)}
.customer-auth-form-wrap{padding:1.35rem !important}
.customer-auth-form-wrap .auth-brand{font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;color:#2563eb;font-weight:800}
.customer-auth-form-wrap h2{font-size:clamp(1.45rem,4.6vw,2rem);line-height:1.12}
.customer-auth-form-wrap .auth-lead{max-width:31rem;font-size:.96rem;color:#475569}
.customer-login-form{gap:.15rem 0}
.customer-login-form .form-control{min-height:50px;border-radius:1rem;padding:.84rem .95rem;font-size:.97rem}
.customer-login-form .form-text{font-size:.83rem}
.customer-auth-inline-note{border-radius:1rem;padding:.8rem .95rem}
.customer-auth-form-wrap .btn-auth-primary{min-height:50px;border-radius:1rem;font-size:.97rem}
.auth-linkbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.85rem 1rem;font-size:.92rem}
.auth-linkbar a,.auth-meta a{font-weight:600;text-decoration:none}
.auth-meta{font-size:.9rem}
@media (max-width: 991.98px){
  .bgsm-customer-login-shell{align-items:flex-start !important}
  .customer-auth-card{max-width:34rem;margin-inline:auto}
}
@media (max-width: 767.98px){
  body.portal-shell{--bgsm-auth-nav-offset:72px}
  .portal-auth-nav{padding:.6rem 0}
  .portal-auth-nav .container-fluid{padding-inline:.8rem}
  .portal-auth-nav .brand-main{font-size:.93rem}
  .portal-auth-nav .brand-sub{font-size:.67rem;letter-spacing:.14em}
  .portal-mobile-nav-links{grid-template-columns:1fr}
  .portal-mobile-nav-link{padding:.82rem .9rem}
  .bgsm-customer-login-shell{padding-top:calc(var(--bgsm-auth-nav-offset) + .95rem);padding-bottom:1rem}
  .customer-auth-form-wrap{padding:1.1rem !important}
  .customer-auth-form-wrap .auth-lead{font-size:.92rem}
  .auth-linkbar{flex-direction:column;align-items:flex-start}
}
@media (max-width: 389.98px){
  .portal-auth-nav .brand-main{font-size:.88rem}
  .portal-nav-toggle span{display:none}
  .portal-nav-toggle{padding:.58rem .72rem}
  .portal-mobile-nav-panel{left:8px;right:8px}
  .customer-auth-card{border-radius:1.25rem}
  .customer-auth-form-wrap{padding:1rem !important}
}
@media (min-width: 992px){
  .bgsm-customer-login-shell{padding-top:calc(var(--bgsm-auth-nav-offset) + 2rem);padding-bottom:2rem}
  .portal-auth-nav.bgsm-scroll-compact,.bgsm-scroll-compact .portal-auth-nav{padding:.52rem 0}
  .customer-auth-form-wrap{padding:2.2rem !important}
}
@media (min-width: 1280px){
  .customer-auth-card{border-radius:1.9rem}
  .customer-auth-form-wrap{padding:2.5rem !important}
}
