.situation-intro h2{letter-spacing:-.8px;margin:12px 0;font-size:clamp(26px,3vw,36px)}.situation-intro p{color:var(--muted);line-height:1.65}.situation-examples{margin:22px 0 30px}.situation-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;display:grid}.situation-fields label{color:var(--ink);margin-bottom:10px;font-size:15px;font-weight:650;display:block}.situation-fields input{width:100%;min-width:0;min-height:50px;color:var(--ink);border:1px solid var(--line-strong);font:inherit;background:#fff;border-radius:10px;padding:12px 15px;font-size:18px}.situation-fields input:focus-visible{outline:2px solid var(--green);outline-offset:3px}.situation-fields input[aria-invalid=true]{border-color:#a52a1f}.situation-error{color:#99271d;margin:10px 0;font-size:14px;line-height:1.6}.situation-assumption{margin:24px 0 20px}.situation-pending{background:var(--surface-soft);border-radius:10px;margin:24px 0 0;padding:16px;line-height:1.6}.situation-results{border-top:1px solid var(--line);margin-top:30px;padding-top:30px}.situation-total{color:#fff;background:var(--green-dark);border-radius:18px;padding:26px}.situation-total>span{color:#c2f4df;font-size:15px}.situation-total h3{color:#fff;overflow-wrap:anywhere;margin:12px 0 16px;font-size:clamp(30px,4vw,46px);line-height:1.15}.situation-total h3 small{font-size:16px;font-weight:500}.situation-total p{color:#e0f2eb;margin:0;line-height:1.65}.situation-warning{color:#654812;background:#fff5db;border:1px solid #e8ce8a;border-radius:12px;padding:18px 20px;line-height:1.65}.situation-details{margin:18px 0}.situation-details>div{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px 12px;display:grid}.situation-details dt{font-size:15px;line-height:1.5}.situation-details dd{color:var(--ink);text-align:right;overflow-wrap:anywhere;margin:0;font-size:22px;font-weight:650}.situation-details dd small{font-size:13px;font-weight:400}.situation-details .situation-collect{background:var(--mint);border-radius:10px}.situation-results>.button{margin-top:22px}.situation-resource{background:var(--mint);border:1px solid var(--line);border-radius:18px;margin:30px 0;padding:26px}.situation-resource h2{margin-top:0}.situation-resource .button{color:#fff;text-decoration:none}@media (max-width:650px){.situation-fields{grid-template-columns:1fr;gap:24px}.situation-total{padding:20px}.situation-details>div{grid-template-columns:1fr;gap:8px}.situation-details dd{text-align:left}.situation-resource{padding:20px}}
