.credit-register-page .credit-apply-link { display: inline-flex; align-items: center; gap: 5px; margin-top: 8px; color: #4338ca; font-size: 12px; font-weight: 500; }
.credit-register-page .credit-apply-link:hover { text-decoration: underline; text-underline-offset: 3px; }
.credit-application-page { margin-top: 24px; }
.credit-allocation-summary { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; padding: 16px 18px; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 10px; }
.credit-allocation-summary strong { font-size: 22px; font-weight: 600; font-variant-numeric: tabular-nums; }
.credit-allocation-summary small { font-size: 12px; font-weight: 400; color: #64748b; }
.credit-allocation-controls { display: flex; align-items: end; gap: 14px; margin-bottom: 18px; }
.credit-allocation-controls > div { flex: 0 0 170px; }
.credit-allocation-controls > p { max-width: 340px; margin: 0 0 7px auto; line-height: 1.5; }
.credit-allocation-controls [data-credit-auto-amount] { text-align: right; font-variant-numeric: tabular-nums; }
.credit-allocation-table-wrap { overflow-x: auto; border: 1px solid #e2e8f0; border-radius: 9px; }
.credit-allocation-table { width: 100%; min-width: 600px; border-collapse: collapse; font-size: 13px; }
.credit-allocation-table th { padding: 11px 14px; background: #f8fafc; text-align: left; color: #64748b; font-size: 11px; font-weight: 500; white-space: nowrap; }
.credit-allocation-table td { padding: 12px 14px; border-top: 1px solid #edf1f6; font-variant-numeric: tabular-nums; }
.credit-allocation-table td:nth-child(2) { white-space: nowrap; }
.credit-allocation-table th:nth-last-child(-n+2), .credit-allocation-table td:nth-last-child(-n+2) { text-align: right; }
.credit-allocation-table td:first-child { width: 36%; }
.credit-allocation-table td:last-child { width: 185px; }
.credit-document-memo { display: block; margin-top: 4px; color: #64748b; font-size: 12px; max-width: 260px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.credit-allocation-input { display: flex; align-items: center; justify-content: flex-end; gap: 9px; }
.credit-application-shell .credit-allocation-input input { width: 110px; text-align: right; font-variant-numeric: tabular-nums; }
.credit-allocation-totals { width: 280px; max-width: 100%; justify-self: end; }
.credit-application-shell .invoice-button:disabled { opacity: .5; cursor: not-allowed; }
.credit-application-empty { padding: 32px 16px; text-align: center; }
.credit-application-empty > i { font-size: 30px; color: #94a3b8; }
.credit-application-shell .invoice-footer-note { max-width: 480px; line-height: 1.5; }
@media(max-width:640px) {
  .credit-allocation-summary { padding: 12px; gap: 12px; }
  .credit-allocation-summary strong { font-size: 18px; }
  .credit-allocation-controls { flex-wrap: wrap; gap: 10px; }
  .credit-allocation-controls > p { flex-basis: 100%; max-width: none; margin: 0; }
}
.credit-register-page .credit-payment-credits { margin-top: 24px; }
.credit-register-page .credit-payment-caption { caption-side: top; text-align: left; padding: 12px 16px; font-size: 14px; font-weight: 600; color: #0f172a; }
.credit-register-page .credit-payment-caption .register-secondary { display: block; margin-top: 2px; font-weight: 400; }
