/* ===== V46 Top Header Fix ===== */
.topbar-v46{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:18px!important;
  width:100%!important;
  max-width:100%!important;
  min-height:76px!important;
  box-sizing:border-box!important;
  padding:9px 18px!important;
  overflow:hidden!important
}
.top-brand-v46{
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  align-items:center;
  gap:12px;
  min-width:0
}
.brandmark-v46{
  width:54px!important;height:54px!important;min-width:54px!important;
  padding:4px!important;box-sizing:border-box!important;
  overflow:hidden!important
}
.brandmark-v46 img{
  display:block!important;
  width:100%!important;height:100%!important;
  object-fit:contain!important;
  object-position:center!important
}
.brandtext-v46{min-width:0!important;overflow:hidden}
.brandtext-v46 h1{
  margin:0!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  color:#fff!important;
  font-size:17px!important;
  line-height:1.25!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important
}
.brandtext-v46 h1 span,.brandtext-v46 p span{opacity:.65}
.brandtext-v46 p{
  margin:4px 0 0!important;
  color:#c4d6e2!important;
  font-size:11px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important
}

.top-actions-v46{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  min-width:0!important;
  flex-wrap:nowrap!important
}
.top-fy-v46{
  min-width:92px;
  padding:5px 10px!important;
  border-left:1px solid rgba(255,255,255,.16)
}
.top-user-v46{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  max-width:290px;
  padding:6px 10px;
  border:1px solid rgba(255,255,255,.19);
  background:rgba(255,255,255,.08);
  border-radius:999px
}
.top-user-icon-v46{
  width:28px;height:28px;min-width:28px;
  display:grid;place-items:center;
  border-radius:50%;
  background:#fff;
  color:#123a5a;
  font-weight:900;
  font-size:12px
}
.top-user-copy-v46{
  display:flex;flex-direction:column;min-width:0;line-height:1.1
}
.top-user-copy-v46 span{
  color:#afc5d4;font-size:8px;text-transform:uppercase;letter-spacing:.07em
}
.top-user-copy-v46 b{
  color:#fff;font-size:11px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.logout-v46{
  min-width:82px!important;
  height:38px!important;
  padding:0 15px!important
}

/* Remove the old role pill if injected by legacy code. */
#rolePill{display:none!important}

/* Laptop */
@media(max-width:1120px){
  .topbar-v46{gap:12px!important;padding:8px 14px!important}
  .brandtext-v46 h1{font-size:15px!important}
  .top-user-v46{max-width:220px}
  .top-fy-v46{min-width:78px}
}

/* Narrow laptop / tablet */
@media(max-width:880px){
  .topbar-v46{
    grid-template-columns:minmax(0,1fr)!important;
    gap:8px!important;
    overflow:visible!important
  }
  .top-actions-v46{
    justify-content:flex-start!important;
    padding-left:66px!important
  }
  .top-fy-v46{border-left:0;padding-left:0!important}
  .top-user-v46{max-width:min(320px,55vw)}
}

/* Phone */
@media(max-width:560px){
  .topbar-v46{padding:9px 10px!important}
  .top-brand-v46{grid-template-columns:46px minmax(0,1fr);gap:9px}
  .brandmark-v46{width:46px!important;height:46px!important;min-width:46px!important}
  .brandtext-v46 h1{font-size:13px!important;white-space:normal!important;display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical}
  .brandtext-v46 p{display:none}
  .top-actions-v46{padding-left:55px!important;gap:7px!important;flex-wrap:wrap!important}
  .top-user-v46{max-width:100%;flex:1 1 180px}
  .top-fy-v46{min-width:72px}
  .logout-v46{min-width:70px!important;padding:0 10px!important}
}
