.sp-grid{gap:var(--gap-card);align-items:start;display:grid}@media (min-width:960px){.sp-grid{gap:var(--sp-5);grid-template-columns:minmax(0,380px) minmax(0,1fr)}}.sp-form{padding:var(--sp-5)var(--sp-4);gap:var(--sp-4);display:grid}@media (min-width:960px){.sp-form{padding:var(--sp-5)var(--sp-5);position:-webkit-sticky;position:sticky;top:92px}}.sp-fieldset{gap:var(--sp-2);border:0;margin:0;padding:0;display:grid}.sp-fieldset .calc-label{padding:0}.sp-radio-row{gap:var(--sp-2)var(--sp-4);flex-wrap:wrap;display:flex}.sp-radio{align-items:center;gap:var(--sp-2);color:var(--body);cursor:pointer;font-size:.92rem;display:inline-flex}.sp-radio input{width:17px;height:17px;accent-color:var(--indigo)}.sp-money-input{align-items:center;gap:var(--sp-2);display:flex}.sp-money-input>span{color:var(--secondary);font-weight:600}.sp-sr{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sp-results{gap:var(--sp-4);display:grid}.sp-result-card{padding:var(--sp-5)var(--sp-5)}@media (prefers-reduced-motion:no-preference){.sp-result-card{animation:spReveal var(--dur-base)var(--ease-standard)both}}@keyframes spReveal{0%{opacity:0;transform:translateY(var(--reveal-rise))}to{opacity:1;transform:translateY(0)}}.sp-headline{gap:var(--sp-1);margin-bottom:16px;display:grid}.sp-headline .res-value{font-family:var(--serif);font-optical-sizing:auto;color:var(--ink);font-size:max(2rem,min(7vw,2.7rem));font-weight:600;line-height:1.1}.res-sub{color:var(--secondary);font-size:.9rem}.sp-fx{background:var(--indigo-tint);border-radius:var(--radius);padding:var(--sp-3)var(--sp-3);gap:var(--sp-2);margin-bottom:18px;display:grid}.sp-fx-line{color:var(--ink);margin:0;font-size:.92rem}.sp-schedule-wrap{border:1px solid var(--line);border-radius:var(--radius);max-height:360px;overflow-y:auto}.sp-schedule-wrap:focus-visible{outline:2px solid var(--indigo);outline-offset:2px}.sp-schedule{border-collapse:collapse;width:100%;font-size:.9rem}.sp-schedule th,.sp-schedule td{text-align:right;padding:var(--sp-2)var(--sp-3);border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}.sp-schedule th:first-child,.sp-schedule td:first-child{text-align:left}.sp-schedule thead th{background:var(--paper);color:var(--secondary);letter-spacing:.03em;text-transform:uppercase;font-size:.78rem;font-weight:600;position:-webkit-sticky;position:sticky;top:0}.sp-schedule tbody tr:last-child td{border-bottom:0}.sp-empty{padding:var(--sp-6)var(--sp-5)}.sp-actions{gap:var(--sp-2);display:grid}
