.budget{color:#153d35;background:#f5f7f5;min-height:100vh;padding:24px;font-family:Arial,sans-serif}.budget header{justify-content:space-between;align-items:center;max-width:1100px;margin:auto;display:flex}.budget header a{color:inherit;font-size:26px;font-weight:800;text-decoration:none}.budget section{max-width:1100px;margin:45px auto}.budget h1{margin:10px 0;font-size:clamp(30px,5vw,48px)}.budget p{line-height:1.8}.budget .eyebrow{color:#65736d}.budget-grid{grid-template-columns:1.5fr 1fr;gap:24px;margin:28px 0;display:grid}.budget-form,.budget aside{background:#fff;border:1px solid #d9e2dc;border-radius:18px;padding:24px}.budget-settings{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.budget label{font-weight:600;line-height:1.6;display:block}.budget-field{margin:18px 0}.budget input,.budget select{box-sizing:border-box;color:#153d35;background:#fff;border:1px solid #859f94;border-radius:8px;width:100%;margin-top:7px;padding:12px;font-size:16px;display:block}.budget button{color:#fff;cursor:pointer;background:#185a49;border:0;border-radius:8px;margin:5px;padding:12px 18px;font-size:16px}.budget button.secondary{color:#153d35;background:#edf3ef}.budget aside strong{overflow-wrap:anywhere;font-size:30px}.budget-missing{background:#fff6df;border-radius:10px;margin:16px 0;padding:16px}.budget li{margin:8px 0;line-height:1.5}.budget small{line-height:1.7;display:block}.budget :focus-visible{outline-offset:3px;outline:3px solid #b16d18}.budget [aria-invalid=true]{border:2px solid #a32828}@media (width<=720px){.budget{padding:16px}.budget-grid{grid-template-columns:1fr}.budget-form,.budget aside{padding:18px}.budget-settings{grid-template-columns:1fr 1fr}.budget-settings label:last-child{grid-column:1/-1}}@media print{.budget{background:#fff;padding:0}.budget header button,.budget aside button,.budget section>a{display:none}.budget-grid{grid-template-columns:1fr 1fr}.budget input,.budget select{border:0}.budget-form,.budget aside{break-inside:avoid}.budget small{font-size:10px}}.budget-target{border-top:1px solid #d9e2dc;margin-top:24px;padding-top:12px}.budget-target label{margin:16px 0}.budget-target-result{background:#eef6f1;border-radius:10px;margin:20px 0;padding:16px}.budget button:disabled{opacity:.5;cursor:not-allowed}
