.budget-controls{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px}
.budget-list,.project-list{display:grid;gap:12px}.budget-list>.budget-card{display:grid;grid-template-columns:minmax(180px,1fr) minmax(140px,.7fr) minmax(180px,1fr) auto;column-gap:24px;align-items:center}.budget-list .budget-card-top{grid-column:1;grid-row:1/3}.budget-list .budget-amount{grid-column:2;grid-row:1;margin:0 0 10px}.budget-list .budget-amount strong{font-size:1.25rem}.budget-list .budget-progress{grid-column:2;grid-row:2}.budget-list .budget-figures{grid-column:3;grid-row:1/3;margin:0}.budget-list .budget-card-actions{grid-column:4;grid-row:1/3}.budget-list .budget-history{grid-column:1/-1}.project-list>.project-card{display:grid;grid-template-columns:minmax(230px,1fr) minmax(140px,.6fr) minmax(240px,1fr);column-gap:24px;align-items:start}.project-list .budget-card-top{grid-column:1;grid-row:1/3}.project-list .budget-amount{grid-column:2;grid-row:1;margin:0 0 10px}.project-list .budget-amount strong{font-size:1.25rem}.project-list .budget-progress{grid-column:2;grid-row:2}.project-list .project-currency-group{grid-column:3;grid-row:auto}.project-list .project-description{grid-column:1/-1;grid-row:4;font-size:.75rem;margin:12px 0 0}.project-list .project-currency-group .budget-figures{margin-top:0}
@media(max-width:1150px){.budget-list>.budget-card,.project-list>.project-card{display:block}.budget-list .budget-amount,.project-list .budget-amount{margin-top:16px}.budget-list .budget-figures,.project-list .project-currency-group{margin-top:14px}}
.budget-primary-controls{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.budget-month-controls{display:flex;gap:3px;align-items:center}
.budget-month-controls>input{min-width:145px;width:165px;min-height:38px;padding:8px 10px;font-size:.84rem}
.budget-currency-picker{max-width:110px;min-height:38px;padding:8px 10px;font-size:.82rem}
.budget-icon-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;min-height:34px;padding:7px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer}
.budget-icon-button:hover:not(:disabled){background:var(--soft);color:var(--accent);border-color:transparent}
.budget-icon-button svg,.budget-secondary-filters>summary svg,.budget-card-actions svg,.project-currency-group>button svg,.project-action-menu svg{display:block;width:17px;height:17px;flex:0 0 17px}
[dir=rtl] .budget-month-controls [data-budget-shift] svg{transform:rotate(180deg)}
.budget-secondary-filters{position:relative;margin-inline-start:auto}
.budget-secondary-filters>summary{display:flex;align-items:center;gap:7px;list-style:none;cursor:pointer;padding:9px 12px;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--muted);font-size:.8rem;min-height:38px}
.budget-secondary-filters>summary::-webkit-details-marker,.project-more>summary::-webkit-details-marker{display:none}
.budget-secondary-filters>summary .badge{padding:2px 6px;font-size:.68rem}
.budget-secondary-filters[open]>summary{background:var(--soft);color:var(--accent);border-color:var(--accent)}
.budget-secondary-filters>summary:focus-visible,.project-more>summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.budget-scope{position:absolute;inset-inline-end:0;top:calc(100% + 8px);z-index:4;display:grid;gap:14px;width:300px;max-width:calc(100vw - 36px);padding:18px;border:1px solid var(--border);border-radius:11px;box-shadow:0 12px 32px #1025351f;background:var(--panel)}
.budget-filter{display:grid;gap:6px;font-size:.76rem;color:var(--muted);min-width:0}.budget-filter select,.budget-filter input{color:var(--ink);min-width:0;width:100%;font-size:.84rem;padding:9px 10px;min-height:38px}
.budget-reset{font-size:.78rem;padding:8px 10px;min-height:35px}
.budget-overview{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.budget-filter-chip{border-radius:20px;padding:7px 12px;font-size:.73rem;min-height:34px;background:transparent}.budget-filter-chip strong{margin-inline-start:7px}.budget-filter-chip[aria-pressed=true]{background:var(--soft);border-color:var(--accent)}
.budget-warning-text{color:#815406}.dark .budget-warning-text{color:#f4c872}
.budget-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));gap:16px;align-items:start}
.budget-card,.project-card{padding:20px}.budget-card{border-top:3px solid var(--green)}.budget-card.budget-warning{border-top-color:#b47d16}.budget-card.budget-over{border-top-color:var(--red)}
.budget-card-top{display:flex;justify-content:space-between;gap:12px;align-items:start}.budget-card-top>div:first-child{min-width:0}.budget-card-top h3{margin:0 0 4px;font-size:.94rem;line-height:1.4}.budget-card-top small{display:block;line-height:1.5;font-size:.73rem}.budget-card-top>.budget-icon-button{margin-block-start:-5px;margin-inline-end:-7px}
.budget-ratio{font-size:.78rem;font-weight:650;flex-shrink:0;color:var(--green)}.budget-over .budget-ratio{color:var(--red)}.budget-warning .budget-ratio{color:#815406}.dark .budget-warning .budget-ratio{color:#f4c872}
.budget-amount{margin-block:17px 11px;display:flex;gap:10px;align-items:end;justify-content:space-between}.budget-amount>div{display:grid;gap:3px}.budget-amount small{font-size:.72rem}.budget-amount strong{font-size:1.65rem;font-weight:650;letter-spacing:-.03em}.budget-amount>.budget-ratio{padding-bottom:3px}
.budget-progress{display:block;width:100%;height:7px;border:0;border-radius:8px;background:var(--bg);overflow:hidden;accent-color:var(--green)}.budget-progress::-webkit-progress-bar{background:var(--bg);border-radius:8px}.budget-progress::-webkit-progress-value{background:var(--green);border-radius:8px}.budget-progress::-moz-progress-bar{background:var(--green);border-radius:8px}.budget-over .budget-progress,.budget-progress.project-over{accent-color:var(--red)}.budget-over .budget-progress::-webkit-progress-value,.budget-progress.project-over::-webkit-progress-value{background:var(--red)}.budget-over .budget-progress::-moz-progress-bar,.budget-progress.project-over::-moz-progress-bar{background:var(--red)}.budget-warning .budget-progress{accent-color:#b47d16}.budget-warning .budget-progress::-webkit-progress-value{background:#b47d16}.budget-warning .budget-progress::-moz-progress-bar{background:#b47d16}
.budget-figures{display:flex;gap:12px;justify-content:space-between;margin:13px 0 14px;flex-wrap:wrap}.budget-figures>div{display:grid;gap:5px}.budget-figures dt{font-size:.72rem;color:var(--muted)}.budget-figures dd{margin:0;font-size:.88rem;font-weight:600}.budget-figures>div:last-child{text-align:end}
.budget-card-actions{display:flex;gap:8px;flex-wrap:wrap}.budget-card-actions button,.project-currency-group>button{display:inline-flex;align-items:center;gap:7px;font-size:.76rem;padding:5px 0;min-height:32px;border:0;border-radius:4px;background:transparent;color:var(--accent)}
.budget-history{margin-top:9px;padding-top:9px;border-top:1px solid var(--border)}.budget-history>summary{cursor:pointer;font-size:.74rem;color:var(--muted);padding-block:4px}.budget-history-chart{display:grid;grid-template-columns:repeat(6,minmax(38px,1fr));gap:8px;overflow:auto;padding-top:18px}
.budget-history-column{text-align:center;display:flex;flex-direction:column;align-items:center;min-width:0}.budget-history-column>span{font-size:.62rem;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.budget-history-track{height:60px;display:flex;align-items:center;justify-content:center;width:100%;margin-block:8px;background:linear-gradient(to bottom,transparent 49%,var(--border) 50%,transparent 51%)}.budget-history-track>progress{display:block;flex-shrink:0;width:60px;height:18px;border:0;transform:rotate(-90deg);accent-color:var(--accent);background:transparent}.budget-history-track>progress::-webkit-progress-bar{background:transparent}.budget-history-track>progress::-webkit-progress-value{background:var(--accent);border-radius:0 4px 4px 0}.budget-history-track>.over::-webkit-progress-value{background:var(--red)}.budget-history-track>.warning::-webkit-progress-value{background:#b47d16}.budget-history-track>.surplus::-webkit-progress-value{background:var(--green)}.budget-history-column>button{font-size:.62rem;padding:4px 0;border:0;min-height:30px;background:none;white-space:nowrap;color:var(--muted)}
.budget-delete-confirm{padding:18px;border:1px solid var(--red);border-radius:9px;margin-block:18px}.budget-delete-confirm .dialog-actions{position:static;margin:0;padding:0}
.project-controls{display:flex;gap:10px;margin-bottom:16px}.project-controls select{min-height:38px;padding:8px 10px;font-size:.82rem;max-width:260px}.project-controls [data-project-currency]{max-width:110px}
.project-card{position:relative;overflow:visible}.project-card:has(.project-more[open]){z-index:2}.project-card .budget-amount{margin-top:15px}.project-card-top .badge,.project-card .budget-card-top .badge{padding:3px 7px;font-size:.67rem}.project-description{font-size:.8rem;margin:12px 0 0}.project-card-tools{display:flex;align-items:center;gap:1px;flex-shrink:0;margin-block-start:-5px;margin-inline-end:-7px}
.project-more{position:relative}.project-more>summary{list-style:none}.project-more[open]>summary{background:var(--soft);color:var(--accent)}.project-action-menu{position:absolute;inset-inline-end:0;top:calc(100% + 7px);width:max-content;min-width:170px;max-width:min(280px,calc(100vw - 48px));background:var(--panel);border:1px solid var(--border);border-radius:9px;box-shadow:0 8px 25px #10253524;padding:5px;z-index:3}.project-action-menu>button{display:flex;align-items:center;gap:8px;text-align:start;width:100%;font-size:.8rem;min-height:38px;padding:9px 10px;border:0;border-radius:5px}.project-action-menu>button:hover:not(:disabled){background:var(--soft)}
.project-currency-group{padding-block:4px 0}.project-currency-group+.project-currency-group{border-block-start:1px solid var(--border);margin-block-start:10px;padding-block-start:12px}.project-currency-group>strong{font-size:.72rem;color:var(--muted)}.project-currency-group .budget-figures{margin-bottom:8px}
@media(max-width:650px){.budget-controls{gap:10px}.budget-grid{gap:13px}.budget-card,.project-card{padding:18px}.budget-overview{gap:6px}.budget-filter-chip{font-size:.68rem;padding-inline:10px}.budget-secondary-filters{margin-inline-start:0}.budget-scope{inset-inline-start:0;inset-inline-end:auto}}
@media(max-width:400px){.budget-primary-controls{gap:5px}.budget-month-controls>input{width:142px;min-width:0;font-size:.77rem}.budget-month-controls{gap:0}.budget-month-controls .budget-icon-button{width:30px;flex-basis:30px;padding:6px}.budget-currency-picker{max-width:80px;padding-inline:7px}.project-controls{flex-wrap:wrap}.budget-amount strong{font-size:1.5rem}}

.planning-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:20px;align-items:start}.planning-filters{grid-column:2;grid-row:1;display:flex;flex-direction:column;align-items:stretch;padding:18px;position:sticky;top:20px;gap:18px}.planning-main{grid-column:1;grid-row:1;min-width:0}.planning-filters .budget-primary-controls{display:flex;flex-direction:column;align-items:stretch}.planning-filters .budget-month-controls{flex-wrap:wrap}.planning-filters .budget-month-controls>input{flex:1;min-width:120px;width:120px}.planning-filters .budget-currency-picker{max-width:none;width:100%}.planning-filters .budget-secondary-filters{margin:0;width:100%}.planning-filters .budget-scope{position:static;display:grid;grid-template-columns:1fr;width:100%;min-width:0;box-shadow:none;border:0;padding:14px 0 0}.planning-main .budget-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.planning-main .budget-card,.planning-main .project-card{border-radius:14px;padding:22px;box-shadow:none}.planning-main .budget-card-top h3{font-size:1rem}.planning-main .num{font-size:1.12rem;font-weight:600}.planning-main .budget-amount strong{font-size:1.5rem}.planning-identity{display:flex;gap:12px;align-items:start}.planning-identity>.ui-icon{width:36px;height:36px;padding:8px;background:var(--soft);color:var(--accent);border-radius:10px}.planning-main .budget-list>.budget-card,.planning-main .project-list>.project-card{display:block}.planning-main .budget-card-actions button,.planning-main .project-currency-group>button{border:0;background:transparent;color:var(--accent);padding-inline:0}.planning-main .budget-progress{height:6px}
@media(max-width:950px){.planning-layout{grid-template-columns:1fr}.planning-filters{grid-column:1;grid-row:1;position:static}.planning-main{grid-row:2}}@media(max-width:600px){.planning-main .budget-grid{grid-template-columns:1fr}}

.planning-filters .budget-filter select{width:100%;max-width:none}.planning-filters .budget-month-controls{display:grid;grid-template-columns:30px minmax(0,1fr) 30px}.planning-filters .budget-month-controls>input{min-width:0;width:100%;padding-inline:3px}.planning-filters [data-budget-today]{grid-column:2;justify-self:center}
@media(min-width:951px){.content:has(>.planning-layout){display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:20px;align-items:start}.content:has(>.planning-layout)>.heading{grid-column:1;grid-row:1;margin:0}.content>.planning-layout{display:contents}.content>.planning-layout>.planning-filters{grid-column:2;grid-row:1/span 2}.content>.planning-layout>.planning-main{grid-column:1;grid-row:2}}

.budget-donut{position:relative;width:160px;height:160px;margin:12px auto 18px}.budget-donut svg{display:block;width:100%;height:100%}.budget-donut-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.budget-donut-center strong{font-size:25px;font-weight:600;font-variant-numeric:tabular-nums}.budget-donut-center small{font-size:12px;color:var(--muted);margin-top:4px}.budget-card .budget-ratio{display:none}.budget-list .budget-donut,.project-list .budget-donut{width:130px;height:130px}.dark .budget-donut svg>circle:first-of-type{opacity:.7}

.budget-date-selectors{display:grid;gap:16px;width:100%}.budget-date-selectors select{width:100%}.project-budget-bar{display:block;width:100%;height:9px;margin:24px 0;accent-color:#8DC34A}.project-budget-bar.warning{accent-color:#FFC107}.project-budget-bar.over{accent-color:#E04C54}.project-list .project-currency-group{margin-top:20px}.project-currency-group .budget-figures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}

.planning-main>.budget-date-selectors{display:flex;gap:14px;margin-bottom:20px}.planning-main>.budget-date-selectors>label{width:170px}.budget-card .budget-figures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.budget-card-extra{margin-top:16px;border-top:1px solid var(--border);padding-top:12px}.budget-card-extra>summary{font-size:12px;color:var(--muted);cursor:pointer}.budget-card-extra .budget-history{margin-top:10px}.budget-list-meter{margin:20px 0}.budget-list-meter>span{display:block;text-align:end;font-size:14px;font-weight:600}.budget-list-meter .project-budget-bar{margin:8px 0}.budget-over .budget-list-meter>span{color:#E04C54}.budget-warning .budget-list-meter>span{color:#df9500}.planning-main .budget-card{border-top:1px solid var(--border)}

.project-status-selector{margin-bottom:20px;max-width:300px}.project-status-selector select{width:100%}.project-currency-section{margin-bottom:28px}.project-currency-section>h2{font-size:1rem;color:var(--muted);margin:0 0 14px}.project-icon{flex:none}.planning-identity .project-icon{width:44px;height:44px}

.project-heading-actions{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:10px;flex:none}.content:has([data-project-view])>.heading{align-items:flex-start}

.project-spending-ring .budget-donut-center strong{font-size:18px;max-width:115px;overflow-wrap:anywhere;text-align:center}
[data-project-default-result]:empty{display:none}
@media(min-width:951px){
.content:has([data-project-view])>.project-heading-actions{grid-column:2;grid-row:1;align-items:center}
.content>[data-project-view]>.planning-filters{grid-column:2;grid-row:2}
}
@media(max-width:950px){.content:has([data-project-view])>.project-heading-actions{margin-bottom:18px}}

@media(min-width:951px){.content:has([data-budget-view])>.project-heading-actions{grid-column:2;grid-row:1}.content>[data-budget-view]>.planning-filters{grid-column:2;grid-row:2}}
.planning-filters>.budget-date-selectors{display:grid;gap:14px}.planning-filters>.budget-date-selectors select{width:100%}

.project-heading-actions.budget-heading-actions{flex-direction:row;align-items:center;justify-content:flex-end;gap:10px}.budget-controls>.budget-filter select{width:100%;min-width:0}

.budget-heading-actions>.create-button{margin-inline-start:auto}.budget-heading-actions>.collection-view-toggle{margin-inline-start:0}

