/* Campo completo, sin el borde interior que aparecía al usar type=email. */
#loginForm .input-shell { display:flex !important; align-items:center; }
#loginForm .input-shell #username,
#loginForm .input-shell input[type=email],
#loginForm .input-shell input[type=text] {
  flex:1 1 0 !important; width:100% !important; min-width:0 !important;
  height:50px !important; margin:0 !important; padding:0 12px 0 0 !important;
  border:0 !important; border-radius:0 !important; outline:0 !important;
  background:transparent !important; box-shadow:none !important;
  color:#17324a !important; font:inherit !important; font-size:16px !important;
}
#loginForm .input-shell #username:focus { border:0 !important; box-shadow:none !important; outline:0 !important; }
.nvx-credit-strip { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; padding:15px 24px; background:#f3f8fc; border-bottom:1px solid #d8e5ef; color:#153754; }
.nvx-credit-strip > div { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
.nvx-credit-kicker { font-size:12px; letter-spacing:.1em; font-weight:800; }
.nvx-credit-strip strong { font-size:24px; }
.nvx-credit-role { border-radius:20px; padding:5px 11px; background:#e0edf7; font-size:12px; font-weight:700; }
.nvx-credit-strip a { color:#075894; font-weight:700; text-decoration:none; }
.nvx-document-price { color:#24506c; background:#eef6fc; border-left:3px solid #2180bb; padding:10px 12px; font-size:13px; }
.nvx-credits-dialog { max-width:450px; width:calc(100% - 40px); padding:28px; border:0; border-radius:18px; color:#17324a; box-shadow:0 24px 80px #06172c55; }
.nvx-credits-dialog::backdrop { background:#08182d99; }
.nvx-credits-dialog h2 { margin:0 0 12px; font-size:23px; }
.nvx-credits-dialog p { line-height:1.6; }
.nvx-credit-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
.nvx-credit-actions a,.nvx-credit-actions button { padding:11px 17px; border-radius:8px; border:1px solid #c8d8e5; font:inherit; cursor:pointer; text-decoration:none; }
.nvx-credit-actions .nvx-credit-primary { background:#075fa3; border-color:#075fa3; color:#fff; }
.nvx-credit-admin-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; padding:20px 16px; }
.nvx-credit-admin-grid form { display:flex; flex-direction:column; gap:12px; }
.nvx-credit-admin-grid h4 { margin:0 0 4px; }
.nvx-credit-admin label { display:flex; flex-direction:column; gap:6px; font-size:13px; }
.nvx-credit-admin input,.nvx-credit-admin select { width:100%; padding:11px; border-radius:8px; border:1px solid #344450; color:#ecf4fa; background:#0b131a; font:inherit; }
.nvx-credit-admin button { padding:10px 14px; border-radius:8px; border:1px solid #286993; background:#102b40; color:#ecf4fa; font:inherit; cursor:pointer; }
.nvx-credit-admin button:disabled { opacity:.55; cursor:wait; }
#nvxCreditPriceFields { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
#nvxCreditAdminMessage { margin:0; padding:10px 16px; color:#71dbaf; }
#nvxCreditAdminMessage.error { color:#ff8f9c; }
#nvxCreditBalances small { display:block; opacity:.7; }
@media(max-width:680px) {
  .nvx-credit-admin-grid { grid-template-columns:1fr; }
  .nvx-credit-strip { padding:12px 16px; }
  .nvx-credits-dialog { padding:22px; }
}
