.goal-calculator .goal-presets { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin:0 0 24px; }
.goal-calculator .goal-presets button { background:#f0f8ff; color:#096da7; border:1px solid #b9dcef; border-radius:24px; padding:9px 17px; font:inherit; cursor:pointer; }
.goal-calculator .goal-presets button[aria-pressed="true"] { background:#d9f1ff; border-color:#007fbd; }
.goal-calculator .goal-presets button:focus-visible { outline:3px solid #f39b23; outline-offset:3px; }
.goal-calculator .calc-profit-box { min-height:250px; }
.goal-calculator .calc-profit-box strong { direction:ltr; unicode-bidi:isolate; }
.goal-calculator .goal-chart-card { margin:30px auto 0; max-width:100%; padding:24px; border:1px solid #dbe8f1; border-radius:16px; background:#fff; box-shadow:0 6px 20px #16476d08; }
.goal-calculator .goal-chart-card h3 { color:#30465d; margin:0 0 8px; font-size:24px; }
.goal-calculator .goal-chart-card p { margin:6px 0 12px; color:#52677b; font-size:15px; }
.goal-calculator .goal-chart { width:100%; height:auto; display:block; direction:ltr; }
.goal-calculator .goal-chart text { font-family:Arial,sans-serif; fill:#52677b; font-size:13px; }
.goal-calculator .goal-legend { display:flex; flex-wrap:wrap; justify-content:center; gap:20px; color:#52677b; font-size:14px; }
.goal-calculator .goal-legend span { display:inline-flex; align-items:center; gap:8px; }
.goal-calculator .goal-legend i { width:26px; height:0; border-top:3px solid #0087c9; }
.goal-calculator .goal-legend .deposits { border-top:3px dashed #8b9eaf; }
.goal-calculator .goal-legend .target { border-top:2px dashed #ed921c; }
.goal-calculator .goal-cta { display:flex; flex-direction:column; align-items:center; gap:12px; text-align:center; margin:28px auto 0; color:#52677b; }
.goal-calculator .goal-cta a { padding:13px 24px; border-radius:28px; color:#fff; background:linear-gradient(135deg,#0094d6,#006db3); font-weight:800; text-decoration:none; }
.goal-calculator .goal-preset-note { text-align:center; color:#64778a; font-size:14px; margin:0 0 20px; }
@media(max-width:600px){
 .goal-calculator .calc-controls label { grid-template-areas:"title range" "number range"; grid-template-columns:120px minmax(0,1fr); min-height:130px; }
 .goal-calculator .calc-controls input[type="range"] { grid-area:range; align-self:center; }
 .goal-calculator .goal-chart-card { padding:14px 8px; }
 .goal-calculator .goal-chart-card h3,.goal-calculator .goal-chart-card p { padding-inline:6px; }
 .goal-calculator .goal-chart text { font-size:18px; }
 .goal-calculator .goal-presets { gap:7px; }
 .goal-calculator .goal-presets button { font-size:14px; padding:8px 12px; }
}

/* Align the four slider cards with the bottom of the result notes. */
@media(min-width:981px){
 .goal-calculator .calculator-grid { align-items:stretch; }
 .goal-calculator .calc-controls {
   position:relative;
   display:flex;
   flex-direction:column;
   justify-content:space-between;
   gap:22px;
 }
 .goal-calculator .calc-controls label { flex:0 0 auto; }
 .goal-calculator .calc-controls .withdrawal-help {
   position:absolute;
   top:100%;
   inset-inline:0;
   margin-top:12px;
 }
 .goal-calculator .goal-chart-card { margin-top:64px; }
}
