.budget-envelope-row{border-bottom:1px solid #e7edf3}.budget-toolbar{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:16px;padding:14px 18px;border:1px solid #dce5ec;border-radius:8px;background:#fff}.budget-cycle-control{display:grid;gap:5px;min-width:min(100%,330px)}.budget-eyebrow{display:inline-flex;align-items:center;gap:6px;color:#526174;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.budget-cycle-select{min-width:290px;padding:7px 10px;border-color:#cbd5e1;border-radius:6px;background:#f8fafc;color:#172033;font-size:.9rem;font-weight:700}.budget-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.budget-primary-action,.budget-fund-all-action{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:7px 11px;border-radius:6px;font-size:.82rem;font-weight:800;white-space:nowrap}.budget-primary-action{border:1px solid #0274ae;background:#087eb7;color:#fff}.budget-primary-action:hover{background:#056b9d}.budget-fund-all-action{border:1px solid #a7dfc8;background:#edfcf4;color:#047857}.budget-fund-all-action:hover{background:#d8f5e6}.budget-fund-all-action span{padding-left:4px;color:#036047}.budget-more-actions{position:relative}.budget-more-actions>.budget-icon-button{width:34px;height:34px;border-color:#d4dee8;background:#fff;color:#526174}.budget-more-actions>.budget-icon-button:hover{background:#f1f5f9;color:#172033}.budget-action-menu{position:absolute;top:calc(100% + 7px);right:0;z-index:20;display:grid;width:max-content;min-width:215px;padding:5px;border:1px solid #dce5ec;border-radius:7px;background:#fff;box-shadow:0 12px 24px #0f172a24}.budget-action-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:8px 9px;border:0;border-radius:5px;background:transparent;color:#334155;font-size:.8rem;font-weight:700;text-align:left}.budget-action-menu button:hover{background:#f1f5f9;color:#172033}.budget-overview{display:grid;grid-template-columns:minmax(230px,1.25fr) repeat(4,minmax(0,1fr));margin-bottom:24px;overflow:hidden;border:1px solid #dce5ec;border-radius:8px;background:#fff}.budget-ready-summary,.budget-overview-metric{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:17px}.budget-ready-summary{gap:3px;border-right:1px solid #dce5ec}.budget-ready-summary strong,.budget-overview-metric strong{margin-top:3px;color:#172033;font-size:1.38rem;line-height:1.1}.budget-ready-summary>span:last-child,.budget-overview-metric small{margin-top:5px;color:#64748b;font-size:.73rem;line-height:1.35}.budget-ready-summary.is-balanced{background:#ecfdf5}.budget-ready-summary.is-balanced strong,.budget-ready-summary.is-balanced>span:last-child{color:#047857}.budget-ready-summary.is-positive{background:#eff8ff}.budget-ready-summary.is-positive strong,.budget-ready-summary.is-positive>span:last-child{color:#0369a1}.budget-ready-summary.is-overbudget{background:#fff1f2}.budget-ready-summary.is-overbudget strong,.budget-ready-summary.is-overbudget>span:last-child{color:#b91c1c}.budget-overview-metric{border-left:1px solid #e7edf3}.budget-overview-metric>span{color:#526174;font-size:.71rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.budget-overview-metric .is-healthy{color:#047857}.budget-overview-metric .is-warning{color:#b45309}.budget-overview-progress{width:100%;height:5px;margin-top:9px;overflow:hidden;border-radius:999px;background:#e6edf3}.budget-overview-progress span{display:block;height:100%;border-radius:inherit;background:#059669}.budget-groups-list{display:flex;flex-direction:column;gap:16px}.budget-group{overflow:hidden;border:1px solid #dce5ec;border-radius:8px;background:#fff}.budget-group-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border-bottom:1px solid #e7edf3;background:#f8fafc}.budget-group-title,.budget-group-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.budget-group-title h3{margin:0;color:#172033;font-size:1rem}.budget-group-title>span{color:#64748b;font-size:.76rem}.budget-group-summary{padding-left:8px;border-left:1px solid #d7e0e8}.budget-group-available{color:#047857!important;font-weight:800}.budget-group-available.is-over{color:#b91c1c!important}.budget-group-actions{justify-content:flex-end;flex-shrink:0}.budget-add-envelope-button{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid #cbd9e6;border-radius:6px;background:#fff;color:#0369a1;font-size:.76rem;font-weight:800}.budget-add-envelope-button:hover{background:#eff8ff}.budget-envelope-row:last-child{border-bottom:0}.budget-envelope-cell{padding:14px 12px;vertical-align:top}.budget-envelope-cell--name{padding-left:18px}.budget-envelope-cell--money,.budget-envelope-cell--activity{text-align:right}.budget-envelope-cell--actions{padding-right:18px}.budget-envelope-name-button{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;border-radius:0;background:transparent;color:#172033;font-size:.92rem;font-weight:700;text-align:left}.budget-envelope-name-button:hover,.budget-envelope-name-button:focus-visible{background:transparent;color:#0369a1}.budget-envelope-name-button svg{color:#94a3b8}.budget-envelope-meta{min-height:20px;margin-top:4px}.budget-envelope-type{color:#64748b;font-size:.72rem}.budget-envelope-type--sinking{display:inline-flex;align-items:center;gap:4px;color:#047857;font-weight:600}.budget-spend-progress{width:100%;height:4px;margin-top:7px;overflow:hidden;border-radius:999px;background:#e6edf3}.budget-spend-progress span{display:block;height:100%;border-radius:inherit;transition:width .16s ease}.budget-money-field{display:inline-flex;align-items:center;width:106px;padding:3px 8px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;box-shadow:inset 0 1px 2px #0f172a0a}.budget-money-field--funded{border-color:#a7d9cd}.budget-money-field>span{color:#64748b;font-size:.8rem;font-weight:700}.budget-money-field--funded>span{color:#047857}.budget-money-input{width:100%;padding:0!important;border:0!important;border-radius:0!important;outline:0;background:transparent;color:#172033;font-size:.88rem;font-weight:700;text-align:right}.budget-money-input:focus{color:#0369a1}.budget-money-input.is-saving{color:#047857}.budget-field-hint{display:block;margin-top:4px;color:#64748b;font-size:.71rem;line-height:1.25}.budget-fund-button{display:inline-flex;align-items:center;gap:4px;margin-top:5px;padding:3px 7px;border:1px solid #a7e0c9;border-radius:5px;background:#edfcf4;color:#047857;font-size:.71rem;font-weight:700;white-space:nowrap}.budget-fund-button:hover{background:#d8f5e6}.budget-funding-status{margin-top:5px;color:#047857;font-size:.71rem;font-weight:700}.budget-funding-status.is-extra{color:#0369a1}.budget-available-pill{display:inline-block;padding:4px 8px;border:1px solid #b7e4c7;border-radius:5px;background:#eafaf0;color:#047857;font-size:.9rem;font-weight:800}.budget-available-pill.is-zero{border-color:#dbe3ec;background:#f4f7fa;color:#64748b}.budget-available-pill.is-over{border-color:#fecaca;background:#fff0f0;color:#b91c1c}.budget-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.budget-spend-button{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border:1px solid #9bdcc9;border-radius:6px;background:#edfcf4;color:#047857;font-size:.78rem;font-weight:700;white-space:nowrap}.budget-spend-button:hover{background:#d8f5e6}.budget-icon-button{display:inline-grid;width:30px;height:30px;padding:0;place-items:center;border:1px solid transparent;border-radius:6px;background:transparent;color:#94a3b8}.budget-icon-button:hover{background:#fff1f2;color:#dc2626}@media (max-width: 760px){.budget-dashboard{padding:0 0 32px!important}.budget-toolbar{align-items:stretch;flex-direction:column;padding:13px}.budget-cycle-control,.budget-cycle-select{width:100%;min-width:0}.budget-toolbar-actions{justify-content:flex-start}.budget-overview{grid-template-columns:1fr}.budget-ready-summary{border-right:0;border-bottom:1px solid #dce5ec}.budget-overview-metric{border-top:1px solid #e7edf3;border-left:0}.budget-overview-metric:nth-child(2){border-top:0}.budget-group-header{align-items:flex-start;flex-direction:column;padding:12px 14px}.budget-group-actions{width:100%;justify-content:flex-start}.budget-envelope-table thead{display:none}.budget-envelope-row,.budget-envelope-row>td{display:block;width:100%}.budget-envelope-row{padding:14px 16px}.budget-envelope-cell{padding:8px 0}.budget-envelope-cell--name{padding-top:0}.budget-envelope-cell--money,.budget-envelope-cell--activity{display:grid!important;grid-template-columns:minmax(84px,.85fr) minmax(0,1.15fr);align-items:center;text-align:right}.budget-envelope-cell--money:before,.budget-envelope-cell--activity:before,.budget-envelope-cell--actions:before{content:attr(data-label);color:#64748b;font-size:.72rem;font-weight:700;text-align:left;text-transform:uppercase}.budget-money-field,.budget-fund-button,.budget-funding-status,.budget-available-pill,.budget-field-hint{justify-self:end}.budget-field-hint{grid-column:2}.budget-envelope-cell--actions{display:grid!important;grid-template-columns:minmax(84px,.85fr) minmax(0,1.15fr);align-items:center;padding-bottom:0}.budget-row-actions{justify-self:end}}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:#1f2937;background:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{min-height:100vh}label{display:block;font-weight:600}input,select,button{font:inherit;box-sizing:border-box}input:not([type=checkbox]):not([type=radio]),select{width:100%;min-width:0;box-sizing:border-box;border:1px solid #d1d5db;border-radius:8px;padding:8px 12px}button{background:#111827;color:#fff;cursor:pointer;border-radius:8px;padding:10px 16px}button:hover{background:#1f2937}table td{padding:8px 0}
