.budget-filters, .budget-actions { display:flex; flex-wrap:wrap; gap:1rem; align-items:end; margin:1rem 0; }
.budget-filters label { display:flex; flex-direction:column; gap:.35rem; }
.budget-card, .budget-line { border:1px solid #d7dee5; border-radius:12px; padding:1rem; margin:1rem 0; background:#fff; min-width:0; overflow-wrap:anywhere; }
.budget-line { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.5rem 1rem; }
.budget-line p { margin:.35rem 0; min-width:0; }
.budget-line label { display:block; }
.budget-line input, .budget-line select, .budget-line textarea { max-width:100%; width:100%; box-sizing:border-box; }
.budget-line input[type=checkbox] { width:auto; }
.budget-totals { display:flex; flex-direction:column; gap:.4rem; padding:.75rem 0; overflow-wrap:anywhere; }
.errorlist { color:#ad2020; }
@media(max-width:700px) { .budget-line { grid-template-columns:minmax(0,1fr); } .budget-filters { align-items:stretch; } .budget-filters label { width:100%; } }
