.budget-public,.budget-admin{--budget-purple:#6d28d9;--budget-ink:#1e293b;--budget-muted:#64748b;--budget-line:#e2dcea;--budget-surface:#fff;--budget-soft:#f5f1fb;color:var(--budget-ink);font-family:Kanit,sans-serif;line-height:1.65;min-width:0}
.budget-page{padding:36px 0 60px;background:var(--bg-light,#f8fafc);min-height:65vh}.budget-public *, .budget-admin *{box-sizing:border-box}.budget-intro{padding:8px 0 24px;border-bottom:2px solid #c4b5fd;margin-bottom:24px}.budget-kicker{color:#6d28d9;font-size:.88rem;margin-bottom:7px}.budget-intro h1,.budget-admin h1{font-size:clamp(1.5rem,3vw,2.15rem);line-height:1.4;margin:0 0 10px;color:var(--budget-ink);font-weight:600}.budget-intro>p:last-child{color:var(--budget-muted);max-width:72ch}
.budget-panel{background:var(--budget-surface);border:1px solid var(--budget-line);border-radius:12px;padding:20px;margin-bottom:18px;min-width:0}.budget-filter{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(200px,1.3fr) minmax(160px,1fr) auto;gap:14px;align-items:end}.budget-public label,.budget-admin label{display:flex;flex-direction:column;gap:6px;font-size:.9rem;min-width:0}.budget-public input,.budget-public select,.budget-admin input:not([type=checkbox]),.budget-admin select{font:inherit;min-width:0;width:100%;max-width:100%;min-height:44px;padding:9px 11px;border:1px solid #cbd5e1;border-radius:7px;background:var(--budget-surface);color:var(--budget-ink)}
.budget-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:8px 13px;font:inherit;font-size:.86rem;font-weight:500;text-decoration:none!important;border:1px solid #c4b5fd;border-radius:7px;background:var(--budget-surface);color:#5b21b6!important;cursor:pointer;line-height:1.5;max-width:100%;overflow-wrap:anywhere;touch-action:manipulation}.budget-btn:hover{background:var(--budget-soft)}.budget-primary{background:#6d28d9!important;color:#fff!important;border-color:#6d28d9}.budget-primary:hover{background:#5b21b6!important}.budget-danger{color:#b91c1c!important;border-color:#fecaca}.budget-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}.budget-actions form{margin:0}.budget-public :is(a,button,input,select,summary):focus-visible,.budget-admin :is(a,button,input,select,summary):focus-visible{outline:3px solid #a855f7;outline-offset:3px}
.budget-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:24px;align-items:start}.budget-year-nav{padding:14px}.budget-year-nav h2{font-size:1rem;margin:0 8px 12px}.budget-year-nav nav{display:flex;flex-direction:column;gap:5px}.budget-year-nav a{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 10px;border-radius:7px;color:var(--budget-ink);text-decoration:none;font-family:Inter,Kanit,sans-serif;font-variant-numeric:tabular-nums}.budget-year-nav a:hover{background:var(--budget-soft)}.budget-year-nav a[aria-current=page]{background:#ede9fe;color:#5b21b6;box-shadow:inset 3px 0 #7c3aed}.budget-year-nav small{font-size:.73rem;color:var(--budget-muted);white-space:nowrap}.budget-documents{min-width:0}.budget-results{display:flex;justify-content:space-between;gap:12px;align-items:baseline;flex-wrap:wrap;margin:3px 0 18px}.budget-results h2{font-size:1.25rem;font-weight:600;margin:0}.budget-results>span,.budget-footnote{font-size:.85rem;color:var(--budget-muted)}
.budget-section{padding:0;overflow:hidden}.budget-section>summary{display:flex;align-items:baseline;justify-content:space-between;gap:12px;list-style:none;padding:15px 18px;cursor:pointer;font-weight:500;background:var(--budget-soft);overflow-wrap:anywhere}.budget-section>summary::-webkit-details-marker{display:none}.budget-section>summary:after{content:'−';flex:0 0 auto}.budget-section:not([open])>summary:after{content:'+'}.budget-section>summary small{font-size:.73rem;font-weight:400;color:var(--budget-muted);margin-left:auto;white-space:nowrap}.budget-file-list{margin:0!important;padding:0!important;list-style:none!important}.budget-file-list>li{display:flex;align-items:center;gap:14px;padding:16px 18px;border-top:1px solid var(--budget-line);scroll-margin-top:100px}.budget-file-list>li:target{background:#fef3c7;box-shadow:inset 4px 0 #b7791f}.budget-file-mark{flex:0 0 42px;width:42px;height:48px;border:1px solid #d8cbee;border-radius:6px;display:flex;align-items:center;justify-content:center;color:#6d28d9;font:600 .68rem Inter,sans-serif;background:var(--budget-soft)}.budget-file-name{min-width:0;flex:1 1 auto}.budget-file-name h3{font-size:.98rem;font-weight:500;line-height:1.65;margin:0;overflow-wrap:anywhere;color:var(--budget-ink)}.budget-file-name p{font-size:.78rem;color:var(--budget-muted);margin:4px 0 0}.budget-file-link{flex:0 0 auto}.budget-unavailable{font-size:.8rem;color:var(--budget-muted)}.budget-empty{text-align:center;padding:32px 20px}.budget-empty h2,.budget-empty h3{font-size:1.2rem;margin:0 0 10px}.budget-empty p{margin-bottom:16px;color:var(--budget-muted)}.budget-pagination{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0}.budget-pagination a[aria-current=page]{background:#6d28d9;color:#fff!important}.budget-footnote{margin:20px 0}
.budget-admin{max-width:1400px;margin:0 auto}.budget-admin-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;flex-wrap:wrap;margin-bottom:22px}.budget-admin-header p{color:var(--budget-muted);max-width:70ch}.budget-note{border-left:4px solid #b7791f;background:#fffbeb;padding:14px 18px;margin-bottom:18px;font-size:.86rem}.budget-alert{padding:14px 18px;border-radius:8px;background:#ecfdf5;border:1px solid #a7f3d0;margin-bottom:18px}.budget-error{background:#fef2f2;border-color:#fecaca;color:#991b1b}.budget-admin-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:22px;align-items:start}.budget-admin .budget-filter{grid-template-columns:minmax(180px,1fr) minmax(140px,.6fr) auto}.budget-admin .budget-panel>h2{font-size:1.15rem;margin:0 0 16px}.budget-editor>summary{font-size:1.1rem;font-weight:500;cursor:pointer}.budget-editor[open]>summary{margin-bottom:18px}.budget-form{display:grid;gap:16px}.budget-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.budget-help{color:var(--budget-muted);font-size:.8rem;margin-top:-6px}.budget-admin-list{margin:0;padding:0;list-style:none}.budget-admin-list>li{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-top:1px solid var(--budget-line);padding:20px 0}.budget-admin-list>li:first-child{border-top:0}.budget-admin-list .budget-record{min-width:0;flex:1}.budget-record h3{font-size:1rem;font-weight:500;overflow-wrap:anywhere;margin:6px 0}.budget-record p{font-size:.8rem;color:var(--budget-muted);overflow-wrap:anywhere;margin:4px 0}.budget-admin-list .budget-actions{max-width:340px;justify-content:flex-end;flex:0 1 340px}.budget-status{display:inline-flex;font-size:.73rem;padding:2px 8px;background:#ede9fe;color:#5b21b6;border-radius:5px}.budget-status-hidden{background:#f1f5f9;color:#475569}.budget-status-deleted{background:#fee2e2;color:#991b1b}.budget-list-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.budget-list-heading h2{font-size:1.2rem}.budget-inline-form{display:inline-flex;gap:8px;flex-wrap:wrap}.budget-history{width:100%;border-collapse:collapse;font-size:.85rem}.budget-history td,.budget-history th{padding:9px;text-align:left;border-bottom:1px solid var(--budget-line);overflow-wrap:anywhere}
.budget-legacy{--budget-purple:#7b4795;--budget-soft:#f5ecf8;font-size:14px}.budget-legacy .budget-intro h1{font-size:26px}.budget-legacy .budget-layout{grid-template-columns:165px minmax(0,1fr);gap:18px}.budget-legacy .budget-filter{grid-template-columns:150px minmax(180px,1fr);}.budget-legacy .budget-section>summary{font-size:15px}.budget-legacy .budget-file-name h3{font-size:14px}
.nsm-color-dark .budget-public{--budget-ink:#e2e8f0;--budget-muted:#b5bfd0;--budget-line:#403954;--budget-surface:#1e2030;--budget-soft:#29253b}.nsm-color-dark .budget-page{background:#151724}.nsm-color-dark .budget-kicker{color:#c4b5fd}.nsm-color-dark .budget-btn{color:#ddd6fe!important;border-color:#6d5a91}.nsm-color-dark .budget-primary{color:#fff!important}.nsm-color-dark .budget-year-nav a[aria-current=page]{background:#3b2c55;color:#f3e8ff}.nsm-color-dark .budget-file-list>li:target{background:#423a20}
@media(max-width:1100px){.budget-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-admin-layout{grid-template-columns:180px minmax(0,1fr)}.budget-admin-list>li{flex-wrap:wrap}.budget-admin-list .budget-actions{max-width:none;flex:1 1 100%;justify-content:flex-start}}
@media(max-width:760px){.budget-layout,.budget-admin-layout{grid-template-columns:minmax(0,1fr)}.budget-year-nav nav{flex-direction:row;overflow-x:auto;padding-bottom:5px}.budget-year-nav a{flex:0 0 auto;flex-direction:column;align-items:flex-start}.budget-year-nav{padding:12px}.budget-year-nav h2{margin-left:0}.budget-filter,.budget-admin .budget-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-panel{padding:16px}.budget-section{padding:0}.budget-section>summary{flex-wrap:wrap;gap:5px 10px}.budget-section>summary>span{flex:1 1 80%}.budget-section>summary small{margin-left:0}.budget-file-list>li{flex-wrap:wrap;padding:14px;gap:10px}.budget-file-name{flex-basis:calc(100% - 60px)}.budget-file-link{margin-left:52px}.budget-page{padding-top:22px}}
@media(max-width:480px){.budget-filter,.budget-admin .budget-filter,.budget-form-row{grid-template-columns:minmax(0,1fr)}.budget-filter .budget-actions .budget-btn{flex:1}.budget-admin-header .budget-actions{width:100%}.budget-admin-header .budget-btn{flex:1}.budget-file-mark{flex-basis:34px;width:34px;height:42px;font-size:.6rem}.budget-file-name{flex-basis:calc(100% - 46px)}.budget-file-link{margin-left:44px}.budget-results{margin-bottom:12px}.budget-results h2{font-size:1.1rem}.budget-admin-list .budget-actions .budget-btn{min-height:40px}.budget-panel{border-radius:9px}}
@media(prefers-reduced-motion:reduce){.budget-public *,.budget-admin *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* The approved legacy 2570 layout keeps the document area at full width. */
.budget-legacy .budget-layout{display:block}.budget-legacy .budget-year-nav{display:none}
