.egao-loan {
  --egao-ink: #263238;
  --egao-accent: #176b5b;
  --egao-line: #d8e1df;
  box-sizing: border-box;
  max-width: 680px;
  margin: 1.5rem auto;
  padding: clamp(1.1rem, 4vw, 2rem);
  color: var(--egao-ink);
  background: #fff;
  border: 1px solid var(--egao-line);
  border-radius: 14px;
  box-shadow: 0 8px 28px rgba(22, 50, 45, .07);
}
.egao-loan *, .egao-loan *::before, .egao-loan *::after { box-sizing: border-box; }
.egao-loan__title { margin: 0 0 .35rem; font-size: 1.45rem; line-height: 1.4; }
.egao-loan__intro { margin: 0 0 1.4rem; color: #5e6b68; font-size: .94rem; }
.egao-loan__form { display: grid; gap: 1rem; }
.egao-loan__field { display: grid; grid-template-columns: minmax(8rem, 1fr) minmax(12rem, 1.4fr); align-items: center; gap: 1rem; }
.egao-loan__field label { font-weight: 700; }
.egao-loan__input-wrap { display: flex; align-items: center; gap: .65rem; }
.egao-loan__input-wrap input { width: 100%; min-width: 0; min-height: 46px; padding: .65rem .8rem; color: inherit; background: #fff; border: 1px solid #aab8b4; border-radius: 7px; font: inherit; }
.egao-loan__input-wrap input:focus { outline: 3px solid rgba(23, 107, 91, .2); border-color: var(--egao-accent); }
.egao-loan__input-wrap span { min-width: 1.5rem; }
.egao-loan__rate-note { margin: -.25rem 0 0; color: #5e6b68; font-size: .9rem; }
.egao-loan__rate-note a { color: var(--egao-accent); font-weight: 700; }
.egao-loan__button { min-height: 48px; padding: .75rem 1rem; color: #fff; background: var(--egao-accent); border: 0; border-radius: 7px; font: inherit; font-weight: 700; cursor: pointer; }
.egao-loan__button:hover { background: #105647; }
.egao-loan__error { margin: 0; color: #b42318; font-size: .92rem; }
.egao-loan__results { margin-top: 1.4rem; padding: 1.2rem; background: #f1f7f5; border-radius: 9px; }
.egao-loan__results-title { margin: 0 0 .7rem; font-size: 1.12rem; }
.egao-loan__result-list { margin: 0; }
.egao-loan__result-list > div { display: flex; justify-content: space-between; gap: 1rem; padding: .65rem 0; border-bottom: 1px solid var(--egao-line); }
.egao-loan__result-list > div:last-child { border-bottom: 0; }
.egao-loan__result-list dt { font-weight: 600; }
.egao-loan__result-list dd { margin: 0; font-weight: 700; text-align: right; font-variant-numeric: tabular-nums; }
.egao-loan__disclaimer { margin: 1.2rem 0 0; color: #68736f; font-size: .82rem; line-height: 1.65; }
@media (max-width: 520px) {
  .egao-loan__field { grid-template-columns: 1fr; gap: .35rem; }
  .egao-loan__result-list > div { align-items: flex-start; }
}
