:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--app-bg:#f4f6f8;--app-text:#172033;--app-text-muted:#5e6a7d;--app-text-subtle:#304055;--surface-bg:#fff;--surface-soft:#f8fbff;--surface-muted:#e5ebf2;--surface-raised:#ffffffe6;--surface-panel:#ffffffd1;--surface-border:#d7e1ec;--surface-border-strong:#c6d3e0;--surface-border-soft:#d9e2ec;--shadow-elevated:0 16px 48px #17203314;--shadow-card:0 12px 30px #17203314;--shadow-card-hover:0 16px 36px #1720331f;--surface-gradient:linear-gradient(180deg, #fff, #eef4fb);--surface-gradient-soft:linear-gradient(180deg, #fff, #f4f8fc);--surface-gradient-hero:radial-gradient(circle at top right, #0f766e29, transparent 34%), linear-gradient(135deg, #1d4ed81f, #fffffffa);--surface-gradient-context:linear-gradient(180deg, #f6f9fcfa, #fffffffa);--accent-surface:#fff7ed;--accent-border:#fdba74;--accent-text:#9a3412;--interactive-strong:#1d4ed8;--interactive-strong-text:#fff;--overlay-backdrop:#17203352;--chart-track:#e2e8f0;--chart-text:#172033;color:var(--app-text);background:var(--app-bg);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--app-bg:#0f1724;--app-text:#e5edf8;--app-text-muted:#9caec4;--app-text-subtle:#c4d1e2;--surface-bg:#172233;--surface-soft:#1c2a3d;--surface-muted:#223249;--surface-raised:#1b293ceb;--surface-panel:#172435e0;--surface-border:#30455f;--surface-border-strong:#43607c;--surface-border-soft:#39516d;--shadow-elevated:0 16px 48px #0206176b;--shadow-card:0 12px 30px #02061757;--shadow-card-hover:0 16px 36px #02061770;--surface-gradient:linear-gradient(180deg, #172233, #1f3046);--surface-gradient-soft:linear-gradient(180deg, #172233, #203149);--surface-gradient-hero:radial-gradient(circle at top right, #0f766e3d, transparent 34%), linear-gradient(135deg, #1d4ed833, #172435fa);--surface-gradient-context:linear-gradient(180deg, #1b2a3dfa, #141f2efa);--accent-surface:#9a34122e;--accent-border:#fb923c6b;--accent-text:#fdba74;--overlay-backdrop:#0206179e;--chart-track:#39516d;--chart-text:#e5edf8}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-height:100vh;color:var(--app-text);background:var(--app-bg)}a{color:inherit;text-decoration:none}.app-shell{width:100%;max-width:1280px;min-height:100vh;margin-inline:auto;padding:32px}.app-header{flex-direction:column;align-items:stretch;gap:24px;margin-bottom:32px;display:flex}.app-header-primary-row{justify-content:space-between;align-items:end;gap:24px;display:flex}.app-header h1{margin:0;font-size:clamp(1.75rem,3vw,2.5rem);line-height:1}.app-header-title-group{flex-wrap:wrap;align-items:center;gap:12px;min-width:0;display:flex}.app-fiscal-year-select{border:1px solid var(--border-subtle);background:var(--surface-muted);min-width:112px;color:inherit;font:inherit;border-radius:999px;padding:8px 34px 8px 12px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--app-text-muted);margin:0 0 8px;font-size:.75rem}.app-header nav{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.static-demo-notice{border:1px solid var(--accent-border);color:var(--accent-text);background:var(--accent-surface);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:.9rem;font-weight:600;display:flex}.static-demo-notice span{min-width:0}.static-demo-notice a{color:var(--interactive-strong);text-underline-offset:.18em;white-space:nowrap;flex:none;text-decoration:underline}.app-alert-strip{justify-self:end;width:min(560px,100%);display:grid;position:relative}.app-alert-bar{border:1px solid var(--surface-border-strong);text-align:left;width:100%;font:inherit;color:var(--app-text);background:var(--surface-soft);cursor:pointer;border-radius:8px;padding:9px 12px;font-weight:700}.app-alert-bar:disabled{cursor:default;opacity:.76}.app-alert-bar-danger{color:#991b1b;background:#fff1f2;border-color:#fca5a5}.app-page-status{border:1px solid var(--surface-border);color:var(--app-text-muted);background:var(--surface-soft);border-radius:8px;padding:16px;font-weight:600}.app-route-error{color:#9f1239;background:#fff1f2;border-color:#fecdd3}:root[data-theme=dark] .app-route-error{color:#fecdd3;background:#5b212df0;border-color:#fb718570}.app-alert-bar-warning{color:#713f12;background:#fefce8;border-color:#facc15}.app-alert-bar-clear{color:#166534;background:#f0fdf4;border-color:#86efac}.app-alert-panel{z-index:20;border:1px solid var(--surface-border-strong);background:var(--surface-bg);width:auto;max-height:min(70vh,560px);box-shadow:var(--shadow-elevated);border-radius:12px;gap:14px;padding:16px;display:grid;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:auto}.app-alert-panel-section,.app-alert-panel-supporting{gap:8px;display:grid}.app-alert-panel-section h3,.app-alert-panel-supporting h3{margin:0;font-size:.95rem}.app-alert-category-description{color:var(--app-text-muted);margin:0;font-size:.85rem}.app-alert-detail-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.app-alert-detail-list a{border:1px solid var(--surface-border);background:var(--surface-soft);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;display:flex}.app-alert-detail-main{gap:3px;min-width:0;display:grid}.app-alert-detail-main span,.app-alert-empty{color:var(--app-text-muted);font-size:.85rem}.app-alert-detail-amount{color:var(--app-text-subtle);flex:none;font-weight:700}.app-alert-grouped-details{grid-template-columns:max-content max-content auto;align-items:center;gap:5px 7px;display:grid}.app-alert-grouped-details-with-title{grid-template-columns:max-content minmax(7rem,1fr) max-content auto}.app-alert-grouped-detail{display:contents}.app-alert-grouped-badge{color:var(--app-text-muted);white-space:nowrap;background:#64748b21;border-radius:999px;padding:3px 8px;font-size:.75rem;font-weight:700}.app-alert-grouped-badge.overdue_planned,.app-alert-grouped-badge.excess_balance,.app-alert-grouped-badge.overdue{color:#92400e;background:#f59e0b24}.app-alert-grouped-badge.low_balance,.app-alert-grouped-badge.negative_balance,.app-alert-grouped-badge.budget_overrun{color:#991b1b;background:#ef444421}.app-alert-grouped-title{min-width:0;color:var(--app-text-muted);overflow-wrap:anywhere}.app-alert-grouped-value{color:var(--app-text);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;font-size:.82rem;font-weight:700}.app-alert-grouped-rate{color:var(--app-text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.82rem;font-weight:700}:root[data-theme=dark] .app-alert-grouped-badge.overdue_planned,:root[data-theme=dark] .app-alert-grouped-badge.excess_balance,:root[data-theme=dark] .app-alert-grouped-badge.overdue{color:#fdba74;background:#fb923c2e}:root[data-theme=dark] .app-alert-grouped-badge.low_balance,:root[data-theme=dark] .app-alert-grouped-badge.negative_balance,:root[data-theme=dark] .app-alert-grouped-badge.budget_overrun{color:#fca5a5;background:#f871712e}.app-header nav a,.app-header-action-button{background:var(--surface-muted);white-space:nowrap;border-radius:999px;padding:7px 10px}.app-header-action-button{font:inherit;color:inherit;cursor:pointer;border:0}.app-header-status{color:var(--app-text-subtle);margin:0;font-size:.875rem}.app-main{background:var(--surface-bg);box-shadow:var(--shadow-elevated);border-radius:24px;padding:24px}.detail-fiscal-year-notice{color:var(--app-text-muted);margin:12px 0 0;font-size:.9rem}.overview-grid{gap:20px;display:grid}.first-run-card{border:1px solid var(--surface-border-strong);background:var(--surface-gradient-soft);box-shadow:var(--shadow-card);border-radius:8px;gap:20px;padding:20px;display:grid}.first-run-card-intro{max-width:760px}.first-run-card-intro h2,.first-run-card-intro p,.first-run-step h3,.first-run-step p{margin:0}.first-run-card-intro h2{font-size:1.35rem}.first-run-card-intro p,.first-run-step p{color:var(--app-text-muted)}.first-run-actions{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px;display:grid}.first-run-step{border:1px solid var(--surface-border);background:var(--surface-raised);border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;padding:14px;display:grid}.first-run-step-number{width:28px;height:28px;color:var(--interactive-strong-text);background:var(--interactive-strong);border-radius:999px;place-items:center;font-size:.86rem;font-weight:700;display:inline-grid}.first-run-step h3{font-size:.98rem}.first-run-step code{border:1px solid var(--surface-border);max-width:100%;color:var(--app-text);background:var(--surface-muted);overflow-wrap:anywhere;border-radius:6px;margin-top:10px;padding:4px 7px;display:inline-block}.first-run-step .detail-action-button{width:fit-content;margin-top:10px;display:inline-flex}.first-run-doc-links{flex-wrap:wrap;gap:8px 12px;margin-top:10px;display:flex}.first-run-doc-links a{color:var(--interactive-strong);text-underline-offset:.18em;font-weight:700;text-decoration:underline}.overview-hero-grid{gap:20px;display:grid}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.overview-section-header{justify-content:space-between;align-items:end;gap:16px;display:flex}.overview-section-header h2{white-space:nowrap;margin:0}.overview-section-title-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.overview-section-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.overview-display-toggle{background:var(--surface-muted);border-radius:999px;gap:4px;padding:4px;display:inline-flex}.overview-display-toggle-button{font:inherit;color:var(--app-text-muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:8px 14px;font-weight:600;transition:background-color .14s,color .14s,box-shadow .14s}.overview-display-toggle-button[aria-pressed=true]{color:var(--app-text);background:var(--surface-bg);box-shadow:0 6px 18px #1720331f}.overview-display-toggle-button:focus-visible{outline-offset:2px;outline:2px solid #1d4ed8}.overview-project-tag-select-field{color:var(--app-text-muted);align-items:center;gap:8px;font-size:.92rem;font-weight:600;display:inline-flex}.overview-project-tag-select{border:1px solid var(--surface-border-strong);min-width:180px;max-width:min(320px,42vw);color:var(--app-text-muted);background:var(--surface-bg);font:inherit;border-radius:999px;padding:8px 34px 8px 12px;font-weight:600}.overview-project-tag-select:focus-visible{outline-offset:2px;outline:2px solid #1d4ed8}.hero-card{background:linear-gradient(135deg, var(--hero-card-accent-start,#1d4ed824), var(--hero-card-accent-end,#0f766e1a)), var(--hero-card-base,#f8fbff);border:1px solid var(--hero-card-border,#5e6a7d29);border-radius:20px;padding:24px;container-type:inline-size}:root[data-theme=dark] .hero-card{background:radial-gradient(circle at top right, var(--hero-card-dark-glow,#60a5fa2e), transparent 42%), linear-gradient(180deg, var(--hero-card-dark-top,#1b283afa), var(--hero-card-dark-bottom,#121c2bfa));border-color:var(--hero-card-dark-border,var(--surface-border-soft));box-shadow:0 12px 30px #02061747}.hero-card-button{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:transform .14s,box-shadow .14s,border-color .14s}.hero-card-button:hover{box-shadow:var(--shadow-card);transform:translateY(-1px)}.hero-card-button[aria-pressed=true]{box-shadow:var(--shadow-card-hover);border-color:#1d4ed852}:root[data-theme=dark] .hero-card-button[aria-pressed=true]{border-color:var(--hero-card-dark-active-border,#60a5fa6b);box-shadow:0 18px 36px #0206176b}.hero-card-button:focus-visible{outline-offset:3px;outline:2px solid #1d4ed8}.hero-card p{color:var(--app-text-muted);margin:0 0 10px;font-size:.95rem}:root[data-theme=dark] .hero-card p{color:#c4d1e2}.hero-card-amount{white-space:nowrap;letter-spacing:-.03em;font-size:clamp(1.2rem,12cqi,2.8rem);line-height:1.05;display:block}:root[data-theme=dark] .hero-card-amount{color:#f8fbff;text-shadow:0 1px #02061742}.overview-context-panel{background:var(--surface-gradient-context);border:1px solid var(--surface-border-soft);box-shadow:var(--shadow-card);border-radius:20px;gap:18px;padding:24px;display:grid}.overview-context-panel-header{justify-content:space-between;align-items:start;gap:16px;display:flex}.overview-context-panel-header h2,.overview-context-panel-section h3{margin:0}.overview-context-panel-value{text-align:right;min-width:0}.overview-context-panel-section-header span,.overview-context-share,.overview-context-empty{color:var(--app-text-muted)}.overview-context-panel-value strong{font-size:1.15rem}.overview-context-panel-section{background:var(--surface-panel);border:1px solid var(--surface-border);border-radius:16px;gap:12px;padding:16px;display:grid}.overview-context-insight-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.overview-context-insight-card{background:var(--surface-soft);border:1px solid var(--surface-border-soft);border-radius:14px;gap:6px;padding:12px 14px;display:grid}.overview-context-insight-card span{color:var(--app-text-muted);font-size:.8rem}.overview-context-insight-label{align-items:center;gap:6px;display:inline-flex}.overview-context-insight-card strong{color:var(--app-text);font-size:1rem;line-height:1.35}.overview-context-trend{gap:10px;display:grid}.overview-context-trend-meta{justify-content:flex-end;display:flex}.overview-context-trend-target-badge{background:var(--accent-surface);border:1px solid var(--accent-border);color:var(--accent-text);border-radius:999px;align-items:center;padding:4px 10px;font-size:.82rem;font-weight:600;display:inline-flex}.overview-context-trend-figure{margin:0}.overview-context-trend-chart{width:100%;height:auto;display:block}.overview-context-trend-surface{fill:#f8fbff;stroke:#d9e2ec;stroke-width:1px}.overview-context-trend-target-line{stroke:#ea580c;stroke-width:2.5px;stroke-dasharray:7 6}.overview-context-trend-ideal-line{stroke:#94a3b8;stroke-width:1.75px;stroke-dasharray:4 5}.overview-context-trend-today-line{stroke:#2563eb;stroke-width:2px;stroke-dasharray:5 4;opacity:.9}.overview-context-trend-today-label-surface{fill:#f8fafceb;stroke:#2563eb2e;stroke-width:1px}.overview-context-trend-today-label{fill:#1d4ed8;text-anchor:start;font-size:.72rem;font-weight:700}.overview-context-trend-series-line{stroke:#0f766e;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.overview-context-trend-point{fill:#0f766e;stroke:#fff;stroke-width:2px}.overview-cross-aggregate-chart{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.overview-cross-aggregate-donut{justify-self:center;width:100%;max-width:160px;margin:0}.overview-cross-aggregate-donut svg{width:100%;height:auto;display:block}.overview-cross-aggregate-track{stroke:#e6edf5}.overview-cross-aggregate-legend{gap:8px;margin:0;padding:0;list-style:none;display:grid}.overview-cross-aggregate-row{grid-template-columns:auto minmax(0,1fr) minmax(8ch,auto) 8ch;align-items:center;gap:8px;display:grid}.overview-cross-aggregate-swatch{border-radius:999px;width:10px;height:10px}.overview-cross-aggregate-label{min-width:0;color:var(--app-text);font-weight:600}.overview-cross-aggregate-value{color:var(--app-text);font-variant-numeric:tabular-nums;justify-self:end;font-weight:700}.overview-cross-aggregate-share{color:var(--app-text-muted);font-variant-numeric:tabular-nums;justify-self:end;font-size:.82rem}.overview-context-trend-axis{color:#5e6a7d;gap:8px;font-size:.8rem;display:grid}.overview-context-trend-axis span{text-align:center;min-width:0}.overview-context-panel-section-header{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.overview-context-panel-section-label{align-items:center;gap:6px;display:inline-flex}.overview-context-help{align-items:center;display:inline-flex;position:relative}.overview-context-help-trigger{color:#48617b;cursor:help;background:#f8fbff;border:1px solid #c6d3e0;border-radius:999px;justify-content:center;align-items:center;width:18px;height:18px;padding:0;font-size:.72rem;font-weight:700;line-height:1;display:inline-flex}.overview-context-help-trigger:hover,.overview-context-help-trigger:focus-visible{color:#1f4f82;border-color:#7aa7d9;outline:none}.overview-context-help-tooltip{z-index:1;color:#f8fbff;opacity:0;pointer-events:none;background:#172033;border-radius:12px;width:min(280px,70vw);padding:10px 12px;font-size:.76rem;line-height:1.5;transition:opacity .12s,transform .12s;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-4px);box-shadow:0 18px 30px #17203338}.overview-context-help:hover .overview-context-help-tooltip,.overview-context-help:focus-within .overview-context-help-tooltip{opacity:1;transform:translateY(0)}.overview-context-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.overview-context-row{border-bottom:1px solid #edf2f7;justify-content:space-between;align-items:baseline;gap:16px;padding-bottom:10px;display:flex}.overview-context-row:last-child{border-bottom:0;padding-bottom:0}.overview-context-rank{color:#172033;font-weight:600;display:block}.overview-context-row-compact{justify-content:flex-start}.overview-context-inline-summary{color:#172033;grid-template-columns:auto minmax(0,1fr) minmax(8ch,auto) 8ch;align-items:baseline;gap:8px;width:100%;display:grid}.overview-context-inline-rank{color:#7b8798;font-variant-numeric:tabular-nums;font-size:.82rem;font-weight:600}.overview-context-inline-name{min-width:0;font-weight:600}.overview-context-inline-value{font-variant-numeric:tabular-nums;justify-self:end;font-size:.95rem;font-weight:700}.overview-context-inline-share{text-align:right;color:#5e6a7d;font-variant-numeric:tabular-nums;justify-self:end;min-width:8ch;font-size:.82rem}:root[data-theme=dark] .overview-context-trend-surface{fill:#141f2efa;stroke:#43607ce0}:root[data-theme=dark] .overview-cross-aggregate-track{stroke:#94a3b842}:root[data-theme=dark] .overview-context-trend-today-label-surface{fill:#1e2e44fa;stroke:#93c5fd70}:root[data-theme=dark] .overview-context-trend-today-line{stroke:#93c5fd;opacity:1}:root[data-theme=dark] .overview-context-trend-today-label{fill:#dbeafe}:root[data-theme=dark] .overview-context-trend-axis{color:#9caec4}:root[data-theme=dark] .overview-context-help-trigger{color:#c4d1e2;background:#172435f0;border-color:#43607ce0}:root[data-theme=dark] .overview-context-help-trigger:hover,:root[data-theme=dark] .overview-context-help-trigger:focus-visible{color:#f8fbff;border-color:#60a5fa8f}:root[data-theme=dark] .overview-context-row{border-bottom-color:#43607c70}:root[data-theme=dark] .overview-context-rank,:root[data-theme=dark] .overview-context-inline-summary,:root[data-theme=dark] .overview-context-inline-value,:root[data-theme=dark] .overview-context-inline-name{color:#e5edf8}:root[data-theme=dark] .overview-context-inline-rank{color:#9caec4}:root[data-theme=dark] .overview-context-inline-share{color:#b4c1d2}:root[data-theme=dark] .fund-card-donut-segment-border-dark-hidden{stroke:none}@media (width<=520px){.overview-context-inline-summary{grid-template-columns:auto minmax(0,1fr);gap:4px 8px}.overview-context-inline-value{grid-column:2;justify-self:start}.overview-context-inline-share{grid-column:2}}.fund-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.overview-fund-grid-chart{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.overview-latest-import{color:#4b5565;border-top:1px solid #e2e8f0;gap:8px;padding-top:4px;font-size:.88rem;display:grid}.overview-latest-import-row{flex-wrap:wrap;align-items:center;gap:10px 14px;display:flex}.overview-latest-import-label{color:#172033;font-weight:700}.overview-latest-import-item,.overview-latest-import-link,.overview-latest-import-status{overflow-wrap:anywhere;min-width:0}.overview-latest-import-link{color:#1d4ed8;text-underline-offset:.18em;text-decoration:underline}.overview-latest-import-status{font-weight:600}.overview-latest-import-status.ok{color:#0f766e}.overview-latest-import-status.warn{color:#b45309}:root[data-theme=dark] .overview-latest-import{color:#b4c1d2;border-top-color:#43607c70}:root[data-theme=dark] .overview-latest-import-label{color:#e5edf8}:root[data-theme=dark] .overview-latest-import-link{color:#93c5fd;text-decoration-color:#93c5fdb8}:root[data-theme=dark] .overview-latest-import-status.ok{color:#99f6e4}:root[data-theme=dark] .overview-latest-import-status.warn{color:#fdba74}.settings-page{gap:24px;display:grid}.settings-page h2,.settings-section h3{margin:0}.settings-section{gap:16px;display:grid}.settings-copy{color:var(--app-text-muted);margin:0}.settings-theme-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;display:flex}.settings-theme-mode-toggle{background:var(--surface-muted);border-radius:999px;gap:4px;padding:4px;display:inline-flex}.settings-theme-mode-button,.settings-theme-system-button{font:inherit;color:var(--app-text-muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:10px 16px;font-weight:600;transition:background-color .14s,color .14s,box-shadow .14s}.settings-theme-mode-button-active,.settings-theme-system-button-active{color:var(--app-text);background:var(--surface-bg);box-shadow:0 6px 18px #1720331f}.settings-theme-system-button{background:var(--surface-soft);border:1px solid var(--surface-border-soft)}.settings-theme-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.settings-custom-theme-controls{gap:10px;margin:10px 0 12px;display:grid}.settings-custom-theme-editor{border:1px solid var(--surface-border-soft);background:var(--surface-soft);border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(180px,240px);align-items:start;gap:10px;padding:12px;display:grid}.settings-custom-theme-form{gap:10px;display:grid}.settings-custom-theme-fields{grid-template-columns:minmax(180px,1fr) repeat(4,minmax(72px,max-content));align-items:end;gap:10px;display:grid}.settings-custom-theme-fields input[type=color]{cursor:pointer;width:44px;min-height:38px;padding:2px}.settings-custom-theme-preview{border-left:1px solid var(--surface-border-soft);padding-left:10px}.settings-custom-theme-preview .fund-card-chart{gap:8px}.settings-custom-theme-preview .fund-card-donut svg{width:min(100%,132px)}.settings-custom-theme-preview .fund-card-legend,.settings-custom-theme-preview .fund-card-chart-metrics{gap:3px}.settings-custom-theme-error,.settings-custom-theme-warning{margin:0;font-weight:700}.settings-custom-theme-messages{gap:4px;display:grid}.settings-custom-theme-error{color:#b91c1c}.settings-custom-theme-warning{color:#92400e}.settings-custom-theme-actions,.settings-theme-card-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.settings-theme-card-action{border:1px solid var(--surface-border-soft);background:var(--surface-bg);color:var(--app-text);font:inherit;cursor:pointer;border-radius:6px;padding:4px 8px}.settings-theme-card{border:1px solid var(--surface-border-soft);background:var(--surface-soft);cursor:pointer;border-radius:20px;gap:14px;padding:18px;display:grid}.settings-theme-card-selected{border-color:#1d4ed8;box-shadow:0 12px 30px #1d4ed81f}.settings-theme-card-head{align-items:center;gap:10px;display:flex}.settings-theme-title{font-weight:700}.settings-theme-preview .fund-card-chart{gap:12px}.settings-theme-preview .fund-card-donut svg{width:min(100%,180px)}.settings-theme-preview .fund-card-chart-metrics{gap:4px}@media (width<=640px){.settings-theme-toolbar{align-items:stretch}.settings-theme-mode-toggle{width:100%}.settings-theme-mode-button,.settings-theme-system-button{text-align:center;flex:1 1 0;justify-content:center}.settings-custom-theme-fields{grid-template-columns:repeat(auto-fit,minmax(96px,1fr))}.settings-custom-theme-editor{grid-template-columns:1fr}.settings-custom-theme-preview{border-left:0;border-top:1px solid var(--surface-border-soft);padding-top:10px;padding-left:0}}.settings-option-grid{grid-template-columns:minmax(0,1fr);gap:20px;display:grid}.settings-option-group{border:1px solid var(--surface-border-soft);background:var(--surface-soft);border-radius:20px;gap:12px;margin:0;padding:16px 18px 18px;display:grid}.settings-option-group legend{color:var(--app-text);padding:0 6px;font-weight:700}.settings-option-choices{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.settings-toggle-strip{justify-self:start}.settings-option-card{background:var(--surface-raised);cursor:pointer;border-radius:16px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:4px 10px;height:100%;padding:12px 14px;display:grid}.settings-option-card input{margin-top:3px}.settings-option-title{font-weight:700}.settings-option-copy{color:var(--app-text-muted);grid-column:2;font-size:.92rem}.sortable-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.settings-order-toolbar{justify-content:flex-end;margin-bottom:12px;display:flex}.sortable-list-item{cursor:grab;transition:transform .18s}.sortable-list-item:active{cursor:grabbing}.sortable-list-item-dragging{z-index:1;position:relative}.sortable-list-item-sliding-up{transform:translateY(calc(-100% - 10px))}.sortable-list-item-sliding-down{transform:translateY(calc(100% + 10px))}.settings-order-item{border:1px solid var(--surface-border);background:var(--surface-panel);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.settings-order-label{color:var(--app-text);font-weight:600}.settings-order-actions{gap:8px;display:flex}.settings-order-button{border:1px solid var(--surface-border-strong);width:40px;height:40px;font:inherit;color:var(--app-text-subtle);background:var(--surface-raised);cursor:pointer;border-radius:999px;padding:0;font-weight:600}.settings-order-button:disabled{opacity:.55;cursor:not-allowed}.settings-threshold-examples{background:var(--surface-panel);border:1px solid var(--surface-border);border-radius:16px;gap:8px;padding:14px 16px;display:grid}.settings-threshold-section{gap:12px;margin-top:16px;display:grid}.settings-threshold-bar{background:var(--surface-panel);border:1px solid var(--surface-border);border-radius:16px;flex-wrap:wrap;align-items:center;gap:12px 16px;padding:14px 16px;display:flex}.settings-threshold-inline{flex-wrap:wrap;flex:420px;align-items:center;gap:10px 12px;display:inline-flex}.settings-threshold-inline-item{color:var(--app-text-subtle);align-items:center;gap:8px;font-weight:600;display:inline-flex}.settings-threshold-inline-item input{width:92px}.settings-threshold-input{border:1px solid var(--surface-border-strong);width:92px;font:inherit;color:inherit;background:var(--surface-raised);border-radius:14px;padding:12px 14px}.settings-threshold-inline-text{white-space:nowrap}.settings-threshold-examples-title{color:var(--app-text-subtle);font-weight:700}.settings-threshold-example{color:var(--app-text-muted);font-weight:600}.settings-threshold-examples-line{flex-wrap:wrap;align-items:center;gap:0 16px;display:flex}.settings-reset-button{border:1px solid var(--surface-border-strong);font:inherit;color:var(--app-text-subtle);background:var(--surface-raised);cursor:pointer;border-radius:999px;padding:9px 14px;font-weight:600}@media (width<=720px){.settings-threshold-input{width:80px}}.fund-card{background:var(--surface-gradient);border:1px solid var(--surface-border);box-shadow:var(--shadow-card);border-radius:18px;padding:20px;transition:transform .14s,box-shadow .14s;display:block}.fund-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.fund-card-create{background:var(--surface-gradient-context), var(--surface-bg);border-style:dashed}.fund-card h2{margin:0 0 12px;font-size:1.2rem}.overview-fund-project-tags{flex-wrap:wrap;gap:6px;margin:-2px 0 14px;display:flex}.fund-card p{color:var(--app-text-subtle);margin:2px 0 0}.fund-card-create-chart{border:1px dashed var(--surface-border-strong);background:var(--surface-panel);border-radius:18px;place-items:center;min-height:220px;display:grid}.fund-card-create-plus{color:#1d4ed8;font-size:3rem;font-weight:400;line-height:1}.fund-card-create-copy{margin-top:14px;font-weight:600}.fund-card-chart,.fund-card-donut-block{gap:14px;display:grid}.fund-card-donut{place-items:center;margin:0;display:grid}.fund-card-donut svg{aspect-ratio:1;width:min(100%,220px);display:block}.fund-card-donut-value{fill:var(--chart-text);font-size:1.05rem;font-weight:700}.fund-card-donut-alert-label{font-size:.88rem}.fund-card-donut-alert-amount{font-size:.82rem}.fund-card-donut-value.detail-rate-alert{fill:#c2410c}.fund-card-over-budget-ring{stroke:#c2410c}:root[data-theme=dark] .fund-card-donut-value.detail-rate-alert{fill:#fda4af}:root[data-theme=dark] .fund-card-over-budget-ring{stroke:#fb7185}.fund-card-donut-track{stroke:var(--chart-track)}.fund-card-legend{flex-wrap:wrap;gap:10px 16px;display:flex}.overview-fund-card-legend{flex-wrap:nowrap;gap:6px 10px}.fund-card-legend-row{color:var(--app-text-subtle);align-items:center;gap:8px;margin:0;display:flex}.fund-card-legend-label{font-weight:600}.fund-card-legend-chip{width:.75rem;height:.75rem;box-shadow:inset 0 0 0 1px var(--fund-card-legend-chip-border,#ffffff8c);border-radius:999px;flex-shrink:0}.fund-card-chart-metrics{gap:6px;display:grid}.fund-card-summary{gap:4px;display:grid}.fund-card-row{justify-content:space-between;align-items:baseline;gap:12px;line-height:1.3;display:flex}.fund-card-row span{color:var(--app-text-muted);font-size:.92rem}.fund-card-row strong{text-align:right}.detail-grid{gap:20px;display:grid}.detail-hero,.detail-panel{border:1px solid var(--surface-border);background:var(--surface-gradient-soft);border-radius:20px;box-shadow:0 12px 30px #1720330f}.detail-hero{background:var(--surface-gradient-hero);justify-content:space-between;align-items:end;gap:20px;padding:24px;display:flex}.detail-hero h2,.detail-panel h3{margin:0}.detail-hero h2{font-size:clamp(2rem,4vw,3rem)}.detail-summary{flex-wrap:wrap;justify-content:flex-end;align-items:flex-end;gap:20px;max-width:100%;display:flex}.detail-balance,.detail-summary-metric{text-align:right;color:var(--app-text-subtle);margin:0}.detail-balance span{color:var(--app-text-muted);margin-bottom:4px;font-size:.9rem;display:block}.detail-balance strong{white-space:nowrap;font-size:clamp(2rem,4vw,3rem);line-height:1.05}.detail-summary-metrics{gap:2px;min-width:0;max-width:100%;display:grid}.detail-summary-metric{justify-content:space-between;align-items:baseline;gap:16px;line-height:1.12;display:flex}.detail-summary-metric span{color:var(--app-text-muted);font-size:.84rem}.detail-summary-metric strong{font-size:clamp(1rem,1.7vw,1.3rem)}.detail-award{text-align:right;color:var(--app-text-subtle);margin:0}.detail-award span{color:var(--app-text-muted);margin-bottom:4px;font-size:.9rem;display:block}.detail-award strong{font-size:clamp(1.5rem,3vw,2.4rem)}.detail-panel{padding:20px}.detail-panel-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-bottom:16px;display:flex}.detail-panel-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.detail-panel-title-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.detail-panel-title-actions h3{margin:0}.detail-list-filter-bar{justify-content:flex-end;display:flex}.detail-list-filters{flex:0 520px;grid-template-columns:minmax(240px,320px) minmax(9rem,12rem);align-items:center;gap:12px;min-width:min(100%,360px);max-width:520px;display:grid}.detail-list-filter-input,.detail-list-filter-select{border:1px solid var(--surface-border-strong);width:100%;font:inherit;color:inherit;background:var(--surface-raised);border-radius:14px;padding:12px 14px}@media (width<=640px){.detail-list-filters{flex-basis:100%;grid-template-columns:1fr;min-width:0;max-width:none;margin-left:0}}.detail-sort-button{width:100%;color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0;display:inline-flex}.detail-sort-button-start{text-align:left;justify-content:flex-start}.detail-sort-button-end{text-align:right;justify-content:flex-end}.detail-sort-button-active{color:#1f3348;font-weight:700}.detail-sort-indicator{font-size:.72em;line-height:1}.detail-table{gap:10px;display:grid}.detail-categories-layout{align-items:start;gap:20px;display:grid}.detail-category-tables{gap:18px;display:grid}.detail-cross-aggregate-disclosure{gap:12px;display:grid}.detail-cross-aggregate-toggle{color:#334155;cursor:pointer;background:0 0;border:0;justify-self:start;align-items:center;padding:0;font-weight:700;display:inline-flex}.detail-cross-aggregate-toggle:before{content:"▸";margin-right:6px;display:inline-block}.detail-cross-aggregate-toggle[aria-expanded=true]:before{content:"▾"}.detail-table-head,.detail-table-row{grid-template-columns:minmax(140px,1.4fr) repeat(4,minmax(0,1fr));align-items:center;gap:12px;display:grid}.detail-table-head{text-transform:uppercase;letter-spacing:.08em;color:#5e6a7d;padding:0 12px;font-size:.88rem}.detail-table-row,.timeline-row{background:#e5ebf280;border-radius:16px;padding:14px 12px}.detail-table-total-row{background:#d7e1ecb8;font-weight:700}.detail-table-row strong,.timeline-row strong{font-size:1rem}.detail-table-money-heading,.detail-table-money-cell,.detail-table-rate-heading,.detail-table-rate-cell{text-align:right;justify-self:end}.detail-history-table-actual,.detail-history-table-planned{--detail-history-columns:minmax(116px, .9fr) minmax(116px, .9fr) minmax(280px, 3fr) minmax(124px, .9fr) minmax(220px, 1.5fr)}.detail-history-table-actual .detail-history-head,.detail-history-table-actual .detail-history-row,.detail-history-table-planned .detail-history-head,.detail-history-table-planned .detail-history-row{grid-template-columns:var(--detail-history-columns)}.detail-empty-state{color:#5e6a7d;background:#e5ebf280;border-radius:16px;margin:0;padding:18px 16px}.detail-fund-chart{background:#ffffffb8;border:1px solid #d7e1ecd9;border-radius:18px;align-content:start;gap:14px;padding:16px 18px;display:grid}.detail-fund-chart-figure{align-self:start}.detail-fund-chart-track{stroke:#e2e8f0f2}.detail-fund-chart-legend{gap:8px 14px}.detail-fund-chart-legend-groups{gap:12px;display:grid}.detail-fund-chart-legend-group{border-top:1px solid #d7e1ece6;gap:8px;padding-top:10px;display:grid}.detail-fund-chart-legend-group:first-child{border-top:0;padding-top:0}.detail-fund-chart-legend-title{letter-spacing:.08em;text-transform:uppercase;color:#5e6a7d;margin:0;font-size:.83rem;font-weight:700}.detail-fund-chart-legend-heading{justify-content:flex-start;align-items:center;gap:6px;display:flex}.detail-fund-chart-legend-parent-chip{width:.95rem;height:.95rem}.detail-history-entry{gap:8px;display:grid}.detail-history-entry-interactive{cursor:pointer}.detail-history-entry-interactive .detail-table-row:hover,.detail-history-entry-interactive .detail-table-row:focus-within{background:#dbe7f3e6;outline:none}:root[data-theme=dark] .detail-sort-button-active{color:#e5edf8}:root[data-theme=dark] .detail-table-head,:root[data-theme=dark] .timeline-head{color:#b4c1d2}:root[data-theme=dark] .detail-table-row,:root[data-theme=dark] .timeline-row{color:#cdd8e6;background:#182537f5;border:1px solid #43607c61}:root[data-theme=dark] .detail-table-row strong,:root[data-theme=dark] .timeline-row strong{color:#f8fbff}:root[data-theme=dark] .detail-empty-state{color:#b4c1d2;background:linear-gradient(#1b293ceb,#141f2ef0);border:1px solid #43607c52}:root[data-theme=dark] .detail-fund-chart{background:linear-gradient(#182537fa,#121c2afa);border-color:#43607c80}:root[data-theme=dark] .detail-fund-chart-track{stroke:#39516df5}:root[data-theme=dark] .detail-fund-chart-legend-group{border-top-color:#43607c75}:root[data-theme=dark] .detail-fund-chart-legend-title{color:#b4c1d2}:root[data-theme=dark] .detail-fund-chart .fund-card-legend-row,:root[data-theme=dark] .detail-fund-chart .fund-card-legend-label{color:#dbe6f4}:root[data-theme=dark] .detail-history-entry-interactive .detail-table-row:hover,:root[data-theme=dark] .detail-history-entry-interactive .detail-table-row:focus-within{background:#213148fa;border-color:#60a5fa57}.detail-history-description{gap:4px;min-width:0;display:grid}.detail-history-description-main,.detail-history-labels{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.detail-history-labels{gap:4px}.detail-history-heading-amount,.detail-history-amount{text-align:right;justify-self:end}.detail-history-heading-actions{text-align:left;justify-self:start}.detail-note-indicator{color:#1d4ed8;background:#3b82f61f;border-radius:999px;flex:none;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.detail-history-actions{justify-content:flex-start;gap:8px;min-width:max-content;display:flex}.detail-action-button{color:#304055;cursor:pointer;font:inherit;white-space:nowrap;background:#dbe7f3;border:0;border-radius:999px;justify-content:center;align-items:center;padding:8px 12px;font-weight:600;text-decoration:none;display:inline-flex}.detail-action-button:hover{background:#cdddef}:root[data-theme=dark] .detail-action-button{color:#dbe6f4;background:#1b293cf0;border:1px solid #43607c6b}:root[data-theme=dark] .detail-action-button:hover{background:#213148fa}.detail-action-button-settle{color:#166534;background:#dcfce7}.detail-action-button-settle:hover{background:#bbf7d0}:root[data-theme=dark] .detail-action-button-settle{color:#99f6e4;background:#064e3be6;border-color:#10b98157}:root[data-theme=dark] .detail-action-button-settle:hover{background:#065f46f5}.detail-action-button-edit{color:#92400e;background:#fef3c7}.detail-action-button-edit:hover{background:#fde68a}:root[data-theme=dark] .detail-action-button-edit{color:#fde68a;background:#78350fe6;border-color:#fbbf2457}:root[data-theme=dark] .detail-action-button-edit:hover{background:#92400ef5}.detail-action-button-danger{color:#b91c1c;background:#fee2e2}.detail-action-button-danger:hover{background:#fecaca}:root[data-theme=dark] .detail-action-button-danger{color:#fecaca;background:#7f1d1de6;border-color:#f8717157}:root[data-theme=dark] .detail-action-button-danger:hover{background:#991b1bf5}.detail-history-note{color:#304055;white-space:pre-wrap;background:#dbe7f380;border-radius:14px;margin:0 12px;padding:12px 14px}:root[data-theme=dark] .detail-history-note{color:#dbe6f4;background:#141f2ef0;border:1px solid #43607c57}.detail-rate-alert{color:#c2410c;font-weight:700}.detail-rate-notice{color:#2c5aa0;font-weight:700}.detail-rate-warning{color:#b45309;font-weight:700}:root[data-theme=dark] .detail-rate-alert{color:#fda4af}:root[data-theme=dark] .detail-rate-notice{color:#93c5fd}:root[data-theme=dark] .detail-rate-warning{color:#fcd34d}.timeline-list{gap:10px;display:grid}.timeline-head,.timeline-row{grid-template-columns:minmax(120px,1fr) repeat(3,minmax(0,1fr));align-items:center;gap:12px;display:grid}.timeline-head{text-transform:uppercase;letter-spacing:.08em;color:#5e6a7d;padding:0 12px;font-size:.8rem}.import-list,.import-detail-list{gap:16px;display:grid}.import-card,.import-detail-row{background:linear-gradient(#fff,#eef4fb);border:1px solid #d7e1ec;border-radius:18px;gap:10px;display:grid;box-shadow:0 12px 30px #1720330f}.import-card{padding:20px;transition:transform .14s,box-shadow .14s}.import-card:hover{transform:translateY(-2px);box-shadow:0 16px 36px #1720331a}:root[data-theme=dark] .import-card{background:linear-gradient(#182537fa,#121c2afa);border-color:#43607c80;box-shadow:0 12px 30px #02061757}:root[data-theme=dark] .import-card:hover{box-shadow:0 16px 36px #0206176b}.import-card-header{justify-content:space-between;align-items:start;gap:12px;display:flex}.import-card strong{font-size:1.05rem}.import-card p{color:#304055;margin:0}:root[data-theme=dark] .import-card strong,:root[data-theme=dark] .import-card strong a{color:#f8fbff}:root[data-theme=dark] .import-card p{color:#c4d1e2}.status-pill{white-space:nowrap;border-radius:999px;align-items:center;padding:6px 10px;font-size:.85rem;font-weight:600;display:inline-flex}.status-pill.ok{color:#0f766e;background:#0f766e1f}:root[data-theme=dark] .status-pill.ok{color:#99f6e4;background:#0f766e3d}.status-pill.warn{color:#b45309;background:#b4530924}:root[data-theme=dark] .status-pill.warn{color:#fdba74;background:#b4530942}.import-detail-row{padding:16px 18px}:root[data-theme=dark] .import-detail-row{color:#c4d1e2;background:linear-gradient(#182537f5,#141f2ef5);border-color:#43607c70;box-shadow:0 12px 30px #02061747}:root[data-theme=dark] .import-detail-row strong{color:#f8fbff}.budget-form-panel{background:radial-gradient(circle at 100% 0,#1d4ed814,#0000 32%),linear-gradient(#fff,#f4f8fc);border:1px solid #d7e1ec;border-radius:20px;padding:24px;box-shadow:0 12px 30px #1720330f}:root[data-theme=dark] .budget-form-panel{background:radial-gradient(circle at 100% 0,#1d4ed82e,#0000 32%),linear-gradient(#182537fa,#121c2afa);border-color:#43607c80;box-shadow:0 12px 30px #02061757}.budget-form-panel-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.budget-form-panel-header h2{margin:0}.budget-entry-form{gap:16px;display:grid}.budget-form-actions{justify-content:flex-end;align-items:center;gap:12px;display:flex}.budget-entry-field{color:var(--app-text-subtle);gap:8px;display:grid}.budget-entry-field span{font-size:.95rem;font-weight:600}.budget-entry-field input,.budget-entry-field textarea,.budget-entry-field select{border:1px solid var(--surface-border-strong);width:100%;font:inherit;color:inherit;background:var(--surface-raised);border-radius:14px;padding:12px 14px}.budget-entry-field textarea{resize:vertical}.planned-item-mode-toggle{justify-self:start}.planned-item-bulk-panel{gap:14px;display:grid}.planned-item-bulk-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.planned-item-preview-actions{justify-content:flex-start}.planned-item-preview-table{gap:8px;display:grid;overflow-x:auto}.planned-item-preview-head,.planned-item-preview-row{grid-template-columns:minmax(92px,.7fr) minmax(220px,2fr) minmax(120px,1fr);align-items:center;gap:10px;min-width:520px;display:grid}.planned-item-preview-head{color:var(--app-text-subtle);font-size:.86rem;font-weight:700}.planned-item-preview-month{color:var(--app-text-subtle);font-weight:700}.planned-item-preview-row input{border:1px solid var(--surface-border-strong);width:100%;font:inherit;color:inherit;background:var(--surface-raised);border-radius:12px;padding:10px 12px}.budget-entry-date-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.budget-entry-date-row>input[type=text]{min-width:0}.budget-entry-calendar-button{border:1px solid var(--surface-border-strong);width:44px;height:44px;color:var(--app-text-subtle);background:var(--surface-raised);cursor:pointer;border-radius:12px;place-items:center;padding:0;display:inline-grid}.budget-entry-calendar-input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}input[data-direct-number-input=true]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[data-direct-number-input=true]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[data-direct-number-input=true]{-moz-appearance:textfield}.budget-entry-submit{font:inherit;color:#fff;cursor:pointer;background:linear-gradient(135deg,#1d4ed8,#0f766e);border:0;border-radius:999px;justify-self:start;padding:10px 18px;font-weight:600}.budget-entry-submit:disabled{opacity:.72;cursor:progress}.budget-entry-submit.budget-entry-submit-disabled:disabled{opacity:1;color:#9f1239;cursor:not-allowed;background:#fff1f2;border:1px solid #fda4af;box-shadow:inset 0 0 0 1px #ffffff80}:root[data-theme=dark] .budget-entry-submit.budget-entry-submit-disabled:disabled{color:#fecdd3;background:#5b212df0;border-color:#fb71856b;box-shadow:inset 0 0 0 1px #fb718529}.budget-category-section{gap:16px;display:grid}.budget-category-section-header{align-items:center;gap:12px;display:flex}.budget-category-section-header h3{color:var(--app-text-subtle);margin:0}.budget-category-add,.budget-category-remove{border:1px solid var(--surface-border-strong);font:inherit;color:var(--app-text-subtle);background:var(--surface-raised);cursor:pointer;border-radius:999px;padding:8px 14px;font-weight:600}.budget-category-add:disabled,.budget-category-remove:disabled{opacity:.64;cursor:not-allowed}.budget-category-remove.detail-action-button-danger{color:#b91c1c;background:#fee2e2}.budget-category-remove.detail-action-button-danger:hover{background:#fecaca}:root[data-theme=dark] .budget-category-remove.detail-action-button-danger{color:#fecaca;background:#7f1d1de6;border-color:#f8717157}:root[data-theme=dark] .budget-category-remove.detail-action-button-danger:hover{background:#991b1bf5}.budget-category-list{gap:12px;display:grid}.budget-category-row{grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr) minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.budget-form-summary{border:1px solid var(--surface-border);background:var(--surface-panel);border-radius:16px;padding:16px 18px}.budget-form-summary-grid{grid-template-columns:minmax(0,1fr);margin:0;display:grid}.budget-form-summary-item{grid-template-columns:3em minmax(0,1fr);align-items:baseline;gap:8px;min-width:0;display:grid}.budget-form-summary-item dt{color:var(--app-text-muted);white-space:nowrap;margin:0}.budget-form-summary-item dd{color:var(--app-text);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;margin:0;font-size:1.1rem;font-weight:700}@media (width<=720px){.budget-category-row{grid-template-columns:1fr}.settings-order-item{flex-direction:column;align-items:flex-start}.settings-order-actions{width:100%}.settings-order-button{flex:1 1 0}}.budget-form-feedback{gap:12px;margin-top:20px;display:grid}.budget-modal-backdrop{background:var(--overlay-backdrop);place-items:center;padding:24px;display:grid;position:fixed;inset:0}.budget-modal{box-sizing:border-box;border:1px solid var(--surface-border);background:radial-gradient(circle at top right, #1d4ed814, transparent 32%), var(--surface-gradient-soft);border-radius:20px;width:min(640px,100%);max-height:calc(100dvh - 48px);padding:24px;overflow-y:auto;box-shadow:0 20px 50px #1720332e}.budget-route-modal{width:min(640px,100%)}.budget-route-modal .budget-form-panel{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.budget-modal-header{justify-content:space-between;align-items:start;gap:16px;margin-bottom:18px;display:flex}.budget-modal-header h3,.budget-modal-description,.budget-modal-copy{margin:0}.budget-modal-description,.budget-modal-copy{color:var(--app-text-subtle)}.budget-modal-description{margin-top:6px}.budget-modal-copy{margin-bottom:18px}.budget-modal-secondary{border:1px solid var(--surface-border-strong);font:inherit;color:var(--app-text-subtle);background:var(--surface-raised);cursor:pointer;border-radius:999px;padding:10px 16px}.budget-modal-actions{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.budget-modal-actions-between{justify-content:space-between;align-items:center}.workbook-export-meta{gap:8px;margin-bottom:18px;display:grid}.workbook-export-sheet-list{gap:12px;display:grid}.workbook-export-sheet{background:#ffffffd1;border:1px solid #d7e1ec;border-radius:16px;padding:14px 16px}:root[data-theme=dark] .workbook-export-sheet{background:linear-gradient(#182537f5,#141f2ef5);border-color:#43607c70}.workbook-export-sheet-header{color:#304055;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}:root[data-theme=dark] .workbook-export-sheet-header,:root[data-theme=dark] .workbook-export-change-list,:root[data-theme=dark] .workbook-export-empty{color:#c4d1e2}.workbook-export-change-list{color:#304055;margin:0;padding-left:18px}.workbook-export-empty{color:#5e6a7d;margin:0}.budget-form-messages,.budget-form-status{color:#304055;background:#f8fbff;border:1px solid #c6d3e0;border-radius:14px;margin:0}:root[data-theme=dark] .budget-form-messages,:root[data-theme=dark] .budget-form-status{color:#dbe6f4;background:#141f2ef0;border-color:#43607c66}.budget-form-messages{padding:14px 14px 14px 34px}.budget-form-status{padding:14px 16px}.budget-form-status-error{color:#9f1239;background:#fff1f2;border-color:#fecdd3}:root[data-theme=dark] .budget-form-status-error{color:#fecdd3;background:#5b212df0;border-color:#fb718570}.budget-form-status-info{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}:root[data-theme=dark] .budget-form-status-info{color:#bfdbfe;background:#132d4ef0;border-color:#60a5fa6b}.budget-form-messages-warning{color:#9a3412;background:#fff7ed;border-color:#fdba74}:root[data-theme=dark] .budget-form-messages-warning{color:#fdba74;background:#5c2d0ef0;border-color:#fb923c6b}@media (width<=720px){.overview-context-insight-grid{grid-template-columns:1fr}.overview-context-panel-header{flex-direction:column}.overview-context-panel-value{text-align:left}.overview-section-header{flex-direction:column;align-items:start}.overview-section-controls{align-items:stretch;width:100%}.overview-display-toggle{width:100%}.overview-display-toggle-button{flex:1 1 0}.overview-project-tag-select-field{justify-content:space-between;width:100%}.overview-project-tag-select{flex:1 1 0;min-width:0;max-width:none}.planned-item-mode-toggle{justify-self:stretch}.planned-item-bulk-grid{grid-template-columns:1fr}.detail-hero{flex-direction:column;align-items:start}.detail-list-filters{grid-template-columns:auto minmax(0,1fr)}.import-card-header{flex-direction:column}.detail-summary{flex-direction:column;align-items:start;gap:12px;width:100%}.detail-award,.detail-balance,.detail-summary-metric{text-align:left}.detail-table-head,.timeline-head{display:none}.detail-sort-head,.timeline-sort-head{flex-wrap:wrap;gap:8px;padding:0 0 12px;display:flex}.detail-sort-head .detail-sort-button,.timeline-sort-head .detail-sort-button{background:#ffffffe6;border:1px solid #c6d3e0;border-radius:999px;width:auto;padding:6px 10px}.detail-sort-head .detail-sort-button-active,.timeline-sort-head .detail-sort-button-active{background:#e2ecf6f2;border-color:#8ea7bf}:root[data-theme=dark] .detail-sort-head .detail-sort-button,:root[data-theme=dark] .timeline-sort-head .detail-sort-button{color:#b4c1d2;background:#1b293cf5;border-color:#43607c9e}:root[data-theme=dark] .detail-sort-head .detail-sort-button-active,:root[data-theme=dark] .timeline-sort-head .detail-sort-button-active{color:#f8fbff;background:#213148f5;border-color:#60a5fa75}.detail-table-row,.timeline-row{grid-template-columns:1fr}.detail-fund-chart{padding:14px}}[data-tour-active=true]{z-index:35;outline-offset:4px;outline:3px solid #2563eb;position:relative;box-shadow:0 0 0 8px #2563eb29}.demo-tutorial-backdrop{z-index:80;background:#0f172a6b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.demo-tutorial-prompt,.demo-tutorial-callout{color:#172033;background:#fff;border:1px solid #94a3b86b;border-radius:8px;box-shadow:0 18px 48px #0f172a38}.demo-tutorial-prompt{width:min(440px,100%);padding:22px}.demo-tutorial-callout{z-index:90;width:min(420px,100vw - 40px);padding:18px;position:fixed;bottom:20px;right:20px}.demo-tutorial-prompt h2,.demo-tutorial-callout h2{margin:0 0 8px;font-size:1.1rem}.demo-tutorial-prompt p,.demo-tutorial-callout p{color:#536176;margin:0;line-height:1.7}.demo-tutorial-step-count{color:#64748b;margin-bottom:8px;font-size:.82rem;font-weight:700}.demo-tutorial-actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.demo-tutorial-actions button:disabled{cursor:not-allowed;opacity:.45}.demo-tutorial-optional{color:#536176;flex-wrap:wrap;gap:8px;margin-top:14px;font-size:.9rem;display:flex}.demo-tutorial-optional button{color:#26364d;font:inherit;background:#f8fafc;border:1px solid #cbd5e1;border-radius:999px}.search-page{gap:18px;display:grid}.search-page-header h2{margin:0;font-size:1.35rem}.search-filters{background:#fff;border:1px solid #d9e2ef;border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end;gap:12px;padding:16px;display:grid}.search-filters label{color:#536176;gap:6px;font-size:.85rem;font-weight:700;display:grid}.search-filters input,.search-filters select{color:#172033;min-width:0;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:8px 10px}.search-tabs{flex-wrap:wrap;gap:8px;display:flex}.search-tab{color:#26364d;background:#fff;border:1px solid #cbd5e1;border-radius:999px;padding:8px 12px;font-size:.92rem;font-weight:700;text-decoration:none}.search-tab-active{color:#1d4ed8;background:#eff6ff;border-color:#2563eb}.search-results{gap:8px;display:grid}.search-result-row{color:inherit;background:#fff;border:1px solid #d9e2ef;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:grid}.search-result-row:hover{background:#f8fbff;border-color:#93c5fd}.search-result-type{border-radius:999px;padding:4px 8px;font-size:.78rem;font-weight:800}.search-result-type-planned{color:#047857;background:#ecfdf5}.search-result-type-actual{color:#1d4ed8;background:#eff6ff}.search-result-main{gap:3px;min-width:0;display:grid}.search-result-main strong,.search-result-main span{overflow-wrap:anywhere}.search-result-main span,.search-result-status{color:#64748b;font-size:.88rem}.search-result-amount{white-space:nowrap;font-weight:800}.search-empty-state{color:#64748b}.search-result-limit{color:#64748b;margin:0;font-size:.9rem}.detail-history-entry-focused{outline-offset:2px;background:#eff6ff;border-radius:8px;outline:2px solid #2563eb}.classification-checkbox-group{border:1px solid #dbe3ef;border-radius:8px;padding:.85rem}.classification-checkbox-group legend{padding:0 .35rem;font-weight:700}.classification-chip-list{flex-wrap:wrap;gap:.55rem;display:flex}.classification-checkbox-chip,.classification-result-label{color:#1f2937;background:#f8fafc;border:1px solid #dbe3ef;border-radius:999px;align-items:center;gap:.35rem;font-size:.88rem;display:inline-flex}.classification-checkbox-chip{padding:.35rem .65rem}.classification-result-label{padding:.15rem .45rem}.classification-color-swatch{border:1px solid #0f172a2e;border-radius:999px;flex:none;width:.8rem;height:.8rem}.classification-settings-grid{gap:1rem;display:grid}.classification-edit-list{grid-template-columns:fit-content(32rem) auto auto auto auto;justify-content:start;align-items:center;gap:.6rem .5rem;display:grid}.classification-settings-panel{gap:.75rem;display:grid}.classification-settings-heading{align-items:center;gap:8px;display:inline-flex}.classification-settings-heading h4{margin:0}.classification-create-row,.classification-edit-row{grid-template-columns:minmax(180px,1fr) auto auto auto;align-items:end;gap:.75rem;display:grid}.classification-saved-row,.classification-edit-list>.classification-edit-row{display:contents}.classification-saved-row>.classification-saved-label{grid-column:1/4}.classification-saved-label{overflow-wrap:anywhere;align-self:center;align-items:center;gap:8px;min-width:0;font-weight:700;display:inline-flex}.classification-saved-color-code{color:var(--app-text-muted);font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.82rem;font-weight:600}.classification-color-field input{width:3.5rem;min-height:2.4rem;padding:.15rem}.search-result-labels{flex-wrap:wrap;gap:.35rem;margin-top:.25rem;display:flex}.settings-inline-help-tooltip{width:min(360px,76vw);left:0;right:auto}:root[data-theme=dark] .demo-tutorial-prompt,:root[data-theme=dark] .demo-tutorial-callout{color:#f8fbff;background:#172033;border-color:#476584c7}:root[data-theme=dark] .demo-tutorial-prompt p,:root[data-theme=dark] .demo-tutorial-callout p,:root[data-theme=dark] .demo-tutorial-step-count,:root[data-theme=dark] .demo-tutorial-optional{color:#b8c6d8}:root[data-theme=dark] .demo-tutorial-optional button{color:#f8fbff;background:#1e2d42fa;border-color:#60a5fa57}:root[data-theme=dark] .search-filters,:root[data-theme=dark] .search-tab,:root[data-theme=dark] .search-result-row,:root[data-theme=dark] .classification-checkbox-group,:root[data-theme=dark] .classification-checkbox-chip,:root[data-theme=dark] .classification-result-label{color:#f8fbff;background:#172033;border-color:#476584c7}:root[data-theme=dark] .search-filters input,:root[data-theme=dark] .search-filters select{color:#f8fbff;background:#111827;border-color:#60a5fa57}:root[data-theme=dark] .search-tab-active{color:#bfdbfe;background:#2563eb33;border-color:#60a5fa}:root[data-theme=dark] .search-result-main span,:root[data-theme=dark] .search-result-status,:root[data-theme=dark] .search-filters label,:root[data-theme=dark] .search-empty-state,:root[data-theme=dark] .search-result-limit{color:#b8c6d8}:root[data-theme=dark] .detail-history-entry-focused{background:#2563eb33;outline-color:#60a5fa}@media (width>=640px){.overview-hero-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.app-alert-strip{justify-self:stretch;width:100%}.app-header-primary-row{flex-direction:column;align-items:flex-start}.app-header nav{flex-wrap:wrap;justify-content:flex-start}.classification-create-row,.classification-edit-row,.classification-edit-list{grid-template-columns:1fr}.classification-saved-row,.classification-edit-list>.classification-edit-row{grid-column:1;grid-template-columns:minmax(0,1fr) auto auto;gap:.5rem;display:grid}.classification-saved-row>.classification-saved-label{grid-column:auto}.classification-edit-list>.classification-edit-row{grid-template-columns:1fr}}@media (width>=860px){.overview-hero-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.overview-grid-with-context{grid-template-columns:minmax(0,1.55fr) minmax(320px,.95fr);align-items:start}.overview-grid-with-context .overview-hero-grid{grid-column:1/-1}.overview-grid-with-context .overview-context-panel{grid-area:2/2/span 4;position:sticky;top:24px}.overview-grid-with-context .overview-section-header,.overview-grid-with-context .fund-grid,.overview-grid-with-context .overview-latest-import{grid-column:1}.detail-categories-layout{grid-template-columns:minmax(0,1.7fr) minmax(280px,.95fr)}}
