#tvaAuthGate{
  position:fixed; inset:0; z-index:99999;
  background:#0a0a0a;
  display:flex; align-items:center; justify-content:center;
  font-family:'Poppins',sans-serif;
  padding:20px;
}
#tvaAuthGate.tva-hidden{ display:none; }
#tvaAuthGate .tva-auth-card{
  width:100%; max-width:400px; background:#fff; border-radius:4px;
  padding:36px 32px; box-shadow:0 20px 60px rgba(0,0,0,.5);
}
#tvaAuthGate .tva-auth-star{ width:26px; height:26px; margin-bottom:14px; }
#tvaAuthGate h1{
  font-family:'Poppins',sans-serif; font-weight:700; font-size:20px;
  letter-spacing:.02em; color:#0a0a0a; margin:0 0 4px;
}
#tvaAuthGate p.tva-auth-sub{
  font-size:12.5px; color:#6b6b6b; margin:0 0 22px; line-height:1.5;
}
#tvaAuthGate input{
  width:100%; padding:11px 13px; border:1px solid #d4d4d4; border-radius:2px;
  font-family:'Poppins',sans-serif; font-size:13.5px; margin-bottom:12px;
  box-sizing:border-box;
}
#tvaAuthGate input:focus{ outline:none; border-color:#0a0a0a; }
#tvaAuthGate button.tva-auth-submit{
  width:100%; padding:12px; background:#0a0a0a; color:#fff; border:none;
  border-radius:2px; font-family:'Poppins',sans-serif; font-weight:600;
  font-size:13.5px; letter-spacing:.03em; cursor:pointer; margin-top:4px;
  transition:opacity .15s;
}
#tvaAuthGate button.tva-auth-submit:hover{ opacity:.85; }
#tvaAuthGate button.tva-auth-submit:disabled{ opacity:.5; cursor:not-allowed; }
#tvaAuthGate .tva-auth-switch{
  text-align:center; margin-top:18px; font-size:12.5px; color:#6b6b6b;
}
#tvaAuthGate .tva-auth-switch a{ color:#0a0a0a; font-weight:600; cursor:pointer; text-decoration:underline; }
#tvaAuthGate .tva-auth-msg{
  font-size:12.5px; margin-top:12px; min-height:16px; line-height:1.5;
}
#tvaAuthGate .tva-auth-msg.tva-err{ color:#b42318; }
#tvaAuthGate .tva-auth-msg.tva-ok{ color:#0a0a0a; }
#tvaSignOutBtn{
  cursor:pointer; font-size:12px; color:#9a9a9a; padding:8px 22px;
  display:flex; align-items:center; gap:8px; transition:color .12s;
}
#tvaSignOutBtn:hover{ color:#fff; }
.nav-item.tva-locked{ opacity:.4; cursor:not-allowed; }
.nav-item.tva-locked:hover{ background:transparent !important; color:var(--gray-300) !important; }
.tva-lock-icon{ margin-left:auto; font-size:11px; }
