.open-budget-button{margin:0 0 18px;min-height:44px}.budget-editor{padding:0;border:1px solid #c8d8e7;border-radius:19px;width:min(1140px,95vw);max-width:95vw;max-height:93vh;color:#153652;box-shadow:0 20px 80px #09264d45}.budget-editor::backdrop{background:#08244180;backdrop-filter:blur(3px)}.be-head{position:sticky;top:0;z-index:4;display:flex;align-items:start;justify-content:space-between;gap:18px;background:#f0f6fc;border-bottom:1px solid #d5e2ed;padding:21px 25px}.be-head span{font-size:10px;letter-spacing:.1em;color:#57748f;font-weight:750}.be-head h2{font-size:23px;margin:6px 0}.be-head p{font-size:13px;line-height:1.5;color:#607a90;margin:6px 0 0}.be-content{padding:18px 25px 25px}.be-context{font-size:13px;line-height:1.6;color:#5e7890;margin-top:0}.be-families{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0 25px}.be-families button{text-align:left;font-size:13px}.be-families small{display:block;font-size:11px;font-weight:400;color:#6b8297;margin-top:5px}.be-family-active{background:#0b4785;color:#fff;border-color:#0b4785}.be-family-active small{color:#dceafa}.be-section-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:13px}.be-section-head h3{font-size:19px}.be-line{border:1px solid #d9e4ee;border-radius:12px;padding:17px;margin-bottom:12px;background:#fff}.be-line-heading{display:flex;gap:15px;align-items:center;justify-content:space-between;margin-bottom:16px}.be-line-heading small{display:block;font-size:10px;color:#728b9e;margin-bottom:4px}.be-line-heading strong{font-size:15px;line-height:1.5}.be-remove{font-size:12px;color:#93492d;background:#fff7f0;border-color:#efdfd1}.be-line-fields{display:grid;grid-template-columns:1fr 1fr 1.4fr 1.2fr;gap:13px;align-items:end}.budget-editor label{font-size:12px;letter-spacing:0;text-transform:none;font-weight:650;color:#526e86}.budget-editor input{min-height:42px;padding:10px;font-size:14px}.be-line-fields>div{align-self:center;padding-top:10px}.be-line-fields>div small{display:block;color:#698295;font-size:11px}.be-line-fields>div strong{display:block;color:#164e7d;font-size:18px;margin-top:5px}.be-line-note{font-size:11px;color:#6e8396;line-height:1.5;margin-bottom:0}.be-empty{padding:24px;border:1px dashed #bdcfdf;border-radius:12px;background:#f6fafe;font-size:14px;color:#55758f}.be-empty p{font-size:13px}.be-add-existing{margin:20px 0;border:1px solid #d6e4f0;border-radius:11px;padding:15px;background:#f6f9fd}.be-add-existing summary{font-size:14px;font-weight:700;cursor:pointer;color:#195388}.be-add-existing input{margin:15px 0}.be-catalog{display:grid;gap:7px;max-height:320px;overflow:auto}.be-catalog-item{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px;border:1px solid #dae6ef;border-radius:8px;background:white;color:#264f72;text-align:left;cursor:pointer}.be-catalog-item span{display:grid;gap:4px}.be-catalog-item small{font-size:10px;color:#698397}.be-catalog-item strong{font-size:13px}.be-catalog-item b{font-size:12px;white-space:nowrap;color:#07538b}.be-new{background:#fff8ee;border:1px solid #eadac4;padding:18px;border-radius:12px}.be-new h3{color:#815521;font-size:15px}.be-new-fields{display:grid;grid-template-columns:2fr 1fr .8fr 1.3fr;gap:12px;margin:15px 0}.be-footer{display:flex;justify-content:space-between;align-items:center;gap:18px;background:#f1f6fb;position:sticky;bottom:0;border-top:1px solid #d4e2ed;padding:17px 25px;z-index:3}.be-footer>div:first-child{display:grid;gap:5px}.be-footer small,.be-footer span{font-size:11px;color:#59758c}.be-footer strong{font-size:24px;color:#0b447e}.be-footer>div:last-child{display:flex;gap:10px;flex-wrap:wrap}.be-error{color:#953f21;background:#fff2e9;padding:12px;border-radius:8px;font-size:13px;line-height:1.5}button:focus-visible,summary:focus-visible{outline:3px solid #72a9d5;outline-offset:3px}@media(max-width:650px){.budget-editor{max-height:96vh;width:96vw}.be-head{padding:16px}.be-head h2{font-size:19px}.be-content{padding:15px}.be-families{grid-template-columns:1fr 1fr}.be-families button{font-size:12px;padding:10px}.be-line-fields,.be-new-fields{grid-template-columns:1fr 1fr}.be-footer{padding:13px;align-items:stretch;flex-direction:column}.be-footer>div:last-child button{flex:1}.be-line{padding:13px}}
