#nsfas-calculator.nsfas-calc {
  --nsfas-primary: #176b45;
  --nsfas-primary-dark: #0f4e33;
  --nsfas-border: #dfe7e3;
  --nsfas-bg: #f6faf8;
  --nsfas-text: #17221d;
  --nsfas-muted: #65736c;
  max-width: 820px;
  margin: 30px auto;
  padding: 0;
  border: 1px solid var(--nsfas-border);
  border-radius: 18px;
  background: #fff;
  color: var(--nsfas-text);
  box-shadow: 0 10px 35px rgba(23, 107, 69, .08);
  overflow: hidden;
  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
}
.nsfas-calc * { box-sizing: border-box; }
.nsfas-calc__header {
  padding: 28px 30px 24px;
  background: linear-gradient(135deg,#f1faf5,#ffffff);
  border-bottom: 1px solid var(--nsfas-border);
}
.nsfas-calc__badge {
  display: inline-block;
  padding: 5px 10px;
  border-radius: 999px;
  background: #e0f2e8;
  color: var(--nsfas-primary-dark);
  font-size: 12px;
  font-weight: 700;
}
.nsfas-calc h2 { margin: 10px 0 6px; font-size: 30px; line-height: 1.2; }
.nsfas-calc__header p { margin: 0; color: var(--nsfas-muted); line-height: 1.6; }
.nsfas-calc__form { padding: 28px 30px 30px; }
.nsfas-calc__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.nsfas-field--full { grid-column: 1 / -1; }
.nsfas-field label { display:block; margin:0 0 7px; font-size:14px; font-weight:700; }
.nsfas-field input,.nsfas-field select {
  width:100%; min-height:48px; border:1px solid #ccd8d2; border-radius:10px;
  background:#fff; padding:11px 13px; font-size:15px; color:var(--nsfas-text);
  outline:none;
}
.nsfas-field input:focus,.nsfas-field select:focus { border-color:var(--nsfas-primary); box-shadow:0 0 0 3px rgba(23,107,69,.12); }
.nsfas-input { position:relative; }
.nsfas-input span { position:absolute; left:13px; top:50%; transform:translateY(-50%); color:#68766f; font-weight:600; }
.nsfas-input input { padding-left:30px; }
.nsfas-calc__actions { display:flex; gap:10px; margin-top:24px; }
.nsfas-btn {
  border:0; border-radius:10px; padding:13px 20px; font-size:15px; font-weight:700; cursor:pointer;
}
.nsfas-btn--primary { background:var(--nsfas-primary); color:#fff; }
.nsfas-btn--primary:hover { background:var(--nsfas-primary-dark); }
.nsfas-btn--secondary { background:#edf2ef; color:#25352d; }
.nsfas-calc__note { margin:18px 0 0; color:var(--nsfas-muted); font-size:13px; line-height:1.55; }
.nsfas-result { margin:0 30px 30px; padding:22px; border:1px solid var(--nsfas-border); border-radius:14px; background:var(--nsfas-bg); }
.nsfas-result__top { display:flex; justify-content:space-between; gap:15px; align-items:center; margin-bottom:12px; }
.nsfas-result__label { font-size:13px; color:var(--nsfas-muted); font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
.nsfas-result__status { padding:7px 11px; border-radius:999px; background:#edf2ef; font-size:13px; }
.nsfas-result__status.is-positive { background:#dff4e7; color:#0f5b38; }
.nsfas-result__summary { line-height:1.65; margin-bottom:18px; }
.nsfas-result__table { border-top:1px solid var(--nsfas-border); }
.nsfas-result__table div { display:flex; justify-content:space-between; gap:20px; padding:12px 0; border-bottom:1px solid var(--nsfas-border); }
.nsfas-result__table span { color:var(--nsfas-muted); }
.nsfas-result__table strong { text-align:right; }
.nsfas-result__tips { margin-top:18px; line-height:1.6; }
.nsfas-result__tips ul { margin:8px 0 0 20px; padding:0; }
@media (max-width: 640px) {
  #nsfas-calculator.nsfas-calc { margin:20px 0; border-radius:12px; }
  .nsfas-calc__header,.nsfas-calc__form { padding:22px 18px; }
  .nsfas-calc__grid { grid-template-columns:1fr; }
  .nsfas-field--full { grid-column:auto; }
  .nsfas-calc__actions { flex-direction:column; }
  .nsfas-btn { width:100%; }
  .nsfas-result { margin:0 18px 22px; padding:18px; }
  .nsfas-result__top { align-items:flex-start; flex-direction:column; }
  .nsfas-result__table div { flex-direction:column; gap:4px; }
  .nsfas-result__table strong { text-align:left; }
}
