.assets-liabilities-page{width:100%;min-height:100%;color:var(--text)}.position-page-header{align-items:center;margin-bottom:18px}.position-page-header h1{font-family:var(--moolah-type-page-title-family)}.position-card{min-width:0;border:.5px solid var(--display-shell-border);border-radius:16px;background:var(--display-shell-fill)}.position-card-header{display:flex;min-height:22px;align-items:center;justify-content:space-between;gap:16px}.position-card-header h2{margin:0}.position-card-label h2{color:var(--text-muted);font-size:10px;font-weight:500;line-height:1}.position-refresh-action,.position-header-add-action,.position-page-state button{display:inline-flex;min-height:36px;align-items:center;justify-content:center;gap:7px;padding:0 11px;border:.5px solid var(--clickable-shell-border);border-radius:9px;background:var(--clickable-shell-fill);color:var(--text-muted);font:500 11px/1 var(--moolah-font-body);cursor:pointer}.position-refresh-action:hover:not(:disabled),.position-header-add-action:hover:not(:disabled),.position-page-state button:hover:not(:disabled){background:var(--clickable-shell-hover-fill);color:var(--text)}.position-page-actions{display:flex;align-items:center;gap:8px}.position-overview-grid{display:grid;grid-template-columns:minmax(330px,.84fr) minmax(440px,1.36fr);gap:16px;margin-bottom:18px}.position-equation-card,.position-history-card{min-height:272px;padding:18px}.position-equation{display:grid;min-height:204px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;padding-top:20px}.position-equation-part{display:grid;min-width:0;grid-template-columns:20px minmax(0,1fr);align-items:center}.position-equation-part:first-child{grid-template-columns:minmax(0,1fr)}.position-equation-operator{align-self:end;margin-bottom:31px;color:var(--text-muted);font-size:17px;font-weight:300;text-align:center}.position-equation-metric{display:grid;min-width:0;justify-items:center;gap:4px;text-align:center}.position-equation-bar{position:relative;display:block;width:16px;height:126px;margin-bottom:5px;overflow:hidden;border-radius:5px;background:var(--surface-muted)}.position-equation-bar i{position:absolute;right:0;bottom:0;left:0;height:var(--position-bar-fill);border-radius:inherit;background:var(--positive)}.position-equation-metric.liability .position-equation-bar i{background:var(--negative)}.position-equation-metric.equity .position-equation-bar i{background:var(--accent)}.position-equation-metric small{color:var(--text-muted);font-size:9.5px;font-weight:300;white-space:nowrap}.position-equation-metric strong{max-width:100%;overflow:hidden;color:var(--text);font-size:clamp(12px,1.25vw,16px);font-weight:500;letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap}.position-equation-metric.liability strong{color:var(--negative)}.position-history-selection{display:grid;flex:0 0 auto;gap:3px;text-align:right}.position-history-selection small{color:var(--text-muted);font-size:9px;font-weight:300}.position-history-selection strong{color:var(--text);font-size:15px;font-weight:500;letter-spacing:-.02em}.position-history-plot{position:relative;height:160px;margin-top:10px}.position-history-plot svg{display:block;width:100%;height:100%;overflow:visible}.position-history-hover-band{fill:var(--clickable-shell-selected-fill);stroke:color-mix(in srgb,var(--clickable-shell-selected-border) 62%,transparent);stroke-width:1;pointer-events:none;vector-effect:non-scaling-stroke}.position-history-hover-zones{position:absolute;z-index:2;inset:0;display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column}.position-history-hover-zones span{min-width:0;cursor:crosshair}.position-history-grid{stroke:color-mix(in srgb,var(--display-shell-border) 72%,transparent);stroke-width:1;vector-effect:non-scaling-stroke}.position-history-area{fill:url(#position-history-fill)}.position-history-line{fill:none;stroke:var(--accent);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4;vector-effect:non-scaling-stroke}.position-history-guide{stroke:color-mix(in srgb,var(--text-muted) 45%,transparent);stroke-dasharray:3 4;stroke-width:1;vector-effect:non-scaling-stroke}.position-history-point{fill:var(--accent)}.position-history-point-halo{fill:color-mix(in srgb,var(--accent) 20%,transparent)}.position-history-point.selected{stroke:var(--canvas);stroke-width:2;vector-effect:non-scaling-stroke}.position-history-months{display:flex;min-height:26px;align-items:center;justify-content:space-between;gap:3px}.position-history-months button{min-width:28px;min-height:26px;padding:0 5px;border:0;border-radius:7px;background:transparent;color:var(--text-muted);font-size:8.5px;font-weight:300;cursor:pointer}.position-history-months button:hover,.position-history-months button[aria-pressed=true]{background:var(--clickable-shell-hover-fill);color:var(--text)}.position-chart-state{display:grid;min-height:194px;place-content:center;justify-items:center;gap:8px;color:var(--text-muted);font-size:10px;font-weight:300;text-align:center}.position-workspace-grid{display:grid;grid-template-columns:minmax(0,1fr);align-items:start}.position-balance-card{padding:18px}.position-balance-header{padding-bottom:12px}.position-balance-result{display:grid;flex:0 0 auto;gap:2px;text-align:right}.position-balance-result small{color:var(--text-muted);font-size:9px;font-weight:300}.position-balance-result strong{color:var(--accent);font-size:16px;font-weight:500;letter-spacing:-.02em}.position-balance-result strong.negative{color:var(--negative)}.position-balance-tbar{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:.5px solid var(--display-shell-border)}.position-balance-tbar:after{position:absolute;top:0;bottom:0;left:50%;width:.5px;background:var(--display-shell-border);content:""}.position-ledger-side{min-width:0;padding:0 14px 6px 0}.position-ledger-side.liability{padding-right:0;padding-left:14px}.position-ledger-side>header{display:grid;min-height:70px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.position-ledger-side>header>span{display:grid;gap:2px}.position-ledger-side>header h3,.position-ledger-side>header small{margin:0}.position-ledger-side>header h3{color:var(--text);font-size:14px;font-weight:500}.position-ledger-side>header small{color:var(--text-muted);font-size:8.5px;font-weight:300}.position-ledger-side>header>strong{color:var(--positive);font-size:14px;font-weight:500;letter-spacing:-.02em;white-space:nowrap}.position-ledger-side.liability>header>strong{color:var(--negative)}.position-ledger-groups{display:grid;gap:2px}.position-ledger-group{overflow:hidden;border-radius:10px}.position-ledger-group-toggle{display:grid;width:100%;min-height:48px;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:7px;padding:5px 8px 5px 5px;border:0;border-radius:10px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.position-ledger-group-toggle:hover{background:var(--clickable-shell-hover-fill)}.position-ledger-group-toggle>svg{color:var(--text-muted);transition:transform .16s ease}.position-ledger-group-toggle>svg.expanded{transform:rotate(90deg)}.position-ledger-group-toggle>span{display:grid;min-width:0;gap:2px}.position-ledger-group-toggle strong{overflow:hidden;color:var(--text);font-size:11px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.position-ledger-group-toggle>span small{color:var(--text-muted);font-size:8.5px;font-weight:300}.position-ledger-items{margin:0 5px 4px 21px;overflow:hidden;border-left:.5px solid var(--display-shell-border)}.position-row{display:grid;min-height:48px;grid-template-columns:28px minmax(0,1fr) auto 26px;align-items:center;gap:8px;padding:6px 4px 6px 9px;border-bottom:.5px solid color-mix(in srgb,var(--display-shell-border) 68%,transparent)}.position-row:last-child{border-bottom:0}.position-row-icon{display:grid;width:27px;height:27px;place-items:center;overflow:hidden;border-radius:8px;background:var(--clickable-shell-fill);color:var(--text-muted);font-size:14px}.position-row-icon img{width:100%;height:100%;object-fit:cover}.position-row-copy{display:grid;min-width:0;gap:2px}.position-row-copy strong,.position-row-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.position-row-copy strong{color:var(--text);font-size:10px;font-weight:500}.position-row-copy small{color:var(--text-muted);font-size:8px;font-weight:300}.position-row-value{color:var(--text);font-size:10px;font-weight:500;white-space:nowrap}.position-source-pill{padding:4px 5px;border:.5px solid var(--display-shell-border);border-radius:999px;color:var(--text-faint);font-size:7px;font-weight:300;line-height:1}.position-edit-action{display:grid;width:26px;height:26px;place-items:center;border:0;border-radius:7px;background:transparent;color:var(--text-muted);cursor:pointer}.position-edit-action:hover{background:var(--clickable-shell-hover-fill);color:var(--text)}.position-empty-action{display:flex;width:100%;min-height:76px;align-items:center;justify-content:center;gap:8px;border:0;background:transparent;color:var(--text-muted);font:300 10px/1 var(--moolah-font-body);cursor:pointer}.position-empty-action:hover{background:var(--clickable-shell-hover-fill);color:var(--text)}.position-page-message{margin:-6px 0 16px;color:var(--positive);font-size:10.5px;font-weight:300}.position-page-state{display:grid;min-height:260px;place-content:center;justify-items:center;gap:10px;color:var(--text-muted);font-size:11px;font-weight:300;text-align:center}.position-page-state.error strong{color:var(--text);font-size:14px}.position-editor-dialog{width:min(440px,calc(100vw - 32px));max-height:calc(100vh - 32px);padding:0;overflow:auto;border:.5px solid var(--clickable-shell-border);border-radius:16px;background:var(--surface);color:var(--text);box-shadow:0 24px 70px color-mix(in srgb,black 34%,transparent)}.position-editor-dialog::backdrop{background:color-mix(in srgb,var(--canvas) 42%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.position-editor-dialog>form{display:grid}.position-editor-dialog header{display:grid;grid-template-columns:38px minmax(0,1fr) 32px;align-items:center;gap:10px;padding:14px 16px;border-bottom:.5px solid var(--display-shell-border)}.position-editor-dialog header>span{display:grid;width:36px;height:36px;place-items:center;border-radius:10px;background:var(--clickable-shell-selected-fill);color:var(--accent)}.position-editor-dialog header h2,.position-editor-dialog header p{margin:0}.position-editor-dialog header h2{font-size:14px;font-weight:500}.position-editor-dialog header p{margin-top:3px;color:var(--text-muted);font-size:9.5px}.position-editor-dialog header button{display:grid;width:32px;height:32px;place-items:center;border:0;border-radius:8px;background:transparent;color:var(--text-muted);cursor:pointer}.position-editor-dialog header button:hover:not(:disabled){background:var(--clickable-shell-hover-fill);color:var(--text)}.position-editor-fields{display:grid;gap:0;margin:16px;padding:0}.position-editor-fields label{display:grid;min-height:52px;grid-template-columns:minmax(104px,.48fr) minmax(0,1fr);align-items:center;gap:14px;padding:6px 12px 6px 14px;color:var(--text-muted);font-size:11px}.position-editor-fields label+label{border-top:.5px solid color-mix(in srgb,var(--line) 66%,transparent)}.position-editor-fields input,.position-editor-fields select{width:100%;min-height:40px;padding:0 9px;border:0;border-radius:9px;background:transparent;color:var(--text);font:300 11.5px/1 var(--moolah-font-body)}.position-editor-fields input:focus,.position-editor-fields select:focus{outline:0}.position-editor-fields label:focus-within{box-shadow:inset var(--moolah-input-focus-width) 0 0 var(--accent)}.position-money-input{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;overflow:hidden;border:.5px solid var(--clickable-shell-border);border-radius:9px;background:var(--clickable-shell-fill)}.position-money-input>span{padding-left:10px;color:var(--text-faint);font-size:10.5px}.position-money-input input{border:0;border-radius:0;background:transparent}.position-editor-error{margin:-3px 16px 14px;color:var(--negative);font-size:10.5px}.position-editor-dialog footer{display:flex;min-height:62px;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px;border-top:.5px solid var(--display-shell-border)}.position-editor-dialog footer>div{display:flex;gap:7px}.position-editor-secondary,.position-editor-danger,.position-editor-save{display:inline-flex;min-height:36px;align-items:center;justify-content:center;gap:6px;padding:0 12px;border-radius:9px;font:500 11px/1 var(--moolah-font-body);cursor:pointer}.position-editor-secondary{border:.5px solid var(--clickable-shell-border);background:var(--clickable-shell-fill);color:var(--text-muted)}.position-editor-danger{border:.5px solid color-mix(in srgb,var(--negative) 28%,transparent);background:color-mix(in srgb,var(--negative) 9%,transparent);color:var(--negative)}.position-editor-save{border:.5px solid var(--clickable-shell-selected-border);background:var(--clickable-shell-selected-fill);color:var(--accent)}.position-editor-dialog button:disabled,.position-refresh-action:disabled{cursor:not-allowed;opacity:.5}.position-refresh-action:focus-visible,.position-header-add-action:focus-visible,.position-history-months button:focus-visible,.position-ledger-group-toggle:focus-visible,.position-empty-action:focus-visible,.position-edit-action:focus-visible,.position-editor-dialog button:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 48%,transparent);outline-offset:2px}@media(max-width:1080px){.position-overview-grid{grid-template-columns:1fr}.position-equation-card,.position-history-card{min-height:260px}}@media(max-width:680px){.position-page-header{align-items:flex-start}.position-page-actions{flex-wrap:wrap;justify-content:flex-end}.position-equation-card,.position-history-card,.position-balance-card{padding:14px}.position-equation{min-height:176px;padding-top:16px}.position-equation-part{grid-template-columns:16px minmax(0,1fr)}.position-equation-operator{font-size:14px}.position-equation-metric strong{font-size:11px}.position-history-card .position-card-header{align-items:flex-start}.position-history-selection strong{font-size:12px}.position-history-months{overflow-x:auto;justify-content:flex-start;padding-bottom:2px}.position-history-months button{min-width:42px;min-height:36px}.position-balance-tbar{grid-template-columns:1fr}.position-balance-tbar:after{display:none}.position-ledger-side,.position-ledger-side.liability{padding:0}.position-ledger-side.liability{border-top:.5px solid var(--display-shell-border)}.position-editor-fields{margin:12px}.position-editor-fields label{grid-template-columns:86px minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){.position-ledger-group-toggle>svg{transition:none}.position-editor-dialog::backdrop{-webkit-backdrop-filter:none;backdrop-filter:none}}.open-banking-page{width:min(960px,100%);min-height:100%;margin:0 auto;padding:40px 32px 72px;color:var(--moolah-color-primary-text)}.open-banking-heading,.open-banking-panel-heading,.open-banking-connection,.open-banking-institution,.open-banking-progress{display:flex;align-items:center}.open-banking-heading,.open-banking-panel-heading{justify-content:space-between;gap:24px}.open-banking-heading{margin-bottom:24px}.open-banking-heading h1{margin:4px 0 6px;font:var(--moolah-type-page-title-weight) 32px/1.15 var(--moolah-type-page-title-family)}.open-banking-heading p,.open-banking-panel-heading p,.open-banking-progress p,.open-banking-connection p,.open-banking-boundary{margin:0;color:var(--moolah-color-secondary-text)}.open-banking-eyebrow{color:var(--moolah-color-accent);font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.open-banking-panel,.open-banking-progress,.open-banking-message{margin-bottom:20px;border:.5px solid var(--display-shell-border);border-radius:var(--moolah-radius-panel);background:var(--display-shell-fill)}.open-banking-panel{padding:24px}.open-banking-progress{gap:16px;padding:20px 24px}.open-banking-message{padding:14px 16px}.open-banking-message.error{border-color:color-mix(in srgb,var(--moolah-color-negative) 38%,transparent);color:var(--moolah-color-negative)}.open-banking-panel h2,.open-banking-progress h2{margin:0 0 4px;font-size:18px}.open-banking-primary-button,.open-banking-secondary-button,.open-banking-icon-button,.open-banking-text-button{min-height:42px;border:0;border-radius:var(--moolah-radius-control);font:500 14px/1 var(--moolah-font-body);cursor:pointer}.open-banking-primary-button{padding:0 18px;background:var(--moolah-color-accent);color:#fff}.open-banking-secondary-button{padding:0 16px;border:1px solid var(--clickable-shell-border);background:var(--clickable-shell-fill);color:var(--moolah-color-primary-text)}.open-banking-icon-button{display:inline-flex;align-items:center;gap:8px;padding:0 14px;border:1px solid var(--clickable-shell-border);background:var(--clickable-shell-fill);color:var(--moolah-color-primary-text)}.open-banking-text-button{padding:0 8px;background:transparent;color:var(--moolah-color-accent)}.open-banking-secondary-button:hover:not(:disabled),.open-banking-icon-button:hover:not(:disabled){background:var(--clickable-shell-hover-fill)}.open-banking-primary-button:focus-visible,.open-banking-secondary-button:focus-visible,.open-banking-icon-button:focus-visible,.open-banking-text-button:focus-visible{outline:2px solid color-mix(in srgb,var(--moolah-color-accent) 48%,transparent);outline-offset:2px}.open-banking-primary-button:disabled,.open-banking-secondary-button:disabled,.open-banking-icon-button:disabled{cursor:default;opacity:.48}.open-banking-connections,.open-banking-institutions{display:grid;gap:10px;margin-top:20px}.open-banking-connection,.open-banking-institution{min-width:0;gap:14px;padding:12px 0;border-top:1px solid var(--moolah-color-line)}.open-banking-connection>div{min-width:0}.open-banking-connection h3,.open-banking-institution h3{margin:0 0 3px;font-size:15px}.open-banking-institution h3{display:-webkit-box;min-width:0;flex:1;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.open-banking-logo-shell{display:grid;width:46px;height:46px;flex:0 0 46px;place-items:center;overflow:hidden;border:1px solid var(--clickable-shell-border);border-radius:13px;background:var(--moolah-color-surface-muted);color:var(--moolah-color-accent)}.open-banking-logo-shell img{width:100%;height:100%;padding:7px;object-fit:contain}.open-banking-search{display:flex;align-items:center;gap:10px;min-height:48px;margin-top:20px;padding:0 16px;border:1px solid var(--moolah-color-line);border-radius:var(--moolah-radius-control);background:var(--clickable-shell-fill);color:var(--moolah-color-secondary-text)}.open-banking-search input{width:100%;border:0;outline:0;background:transparent;color:var(--moolah-color-primary-text);font:400 15px/1.2 var(--moolah-font-body)}.open-banking-boundary{margin-top:18px;font-size:13px}.open-banking-empty{margin:12px 0 0;color:var(--moolah-color-secondary-text);text-align:center}.open-banking-settings-panel{gap:0}.open-banking-settings-heading{align-items:center}.open-banking-settings-actions{display:flex;flex:0 0 auto;align-items:center;gap:7px}.account-settings-section-heading>.open-banking-settings-actions{display:flex}.open-banking-settings-actions .account-settings-save-action{white-space:nowrap}.open-banking-settings-actions .account-settings-secondary-action{width:36px;padding:0}.open-banking-settings-panel .open-banking-message,.open-banking-settings-panel .open-banking-progress{margin:0 0 12px}.open-banking-settings-panel .open-banking-message.success{border-color:color-mix(in srgb,var(--positive) 26%,transparent);background:color-mix(in srgb,var(--positive) 6%,transparent);color:var(--positive)}.open-banking-settings-panel .open-banking-progress{padding:12px;border-radius:11px}.open-banking-settings-panel .open-banking-progress h2{font-size:11.5px;font-weight:500}.open-banking-settings-panel .open-banking-progress p{font-size:10px}.open-banking-settings-panel .account-settings-panel-loading .open-banking-spinner{width:15px;height:15px;border-width:2px}.open-banking-settings-logo{display:grid;width:34px;height:34px;place-items:center;overflow:hidden;border:.5px solid var(--clickable-shell-border);border-radius:10px;background:var(--clickable-shell-fill);color:var(--accent)}.open-banking-settings-logo img{width:100%;height:100%;padding:5px;object-fit:contain}.open-banking-status{padding:4px 7px;border-radius:999px;background:var(--clickable-shell-selected-fill);color:var(--accent);font-size:9px;font-style:normal;font-weight:500;white-space:nowrap}.open-banking-status.failed,.open-banking-status.error,.open-banking-status.disconnected,.open-banking-status.withdrawn,.open-banking-status.expired{background:color-mix(in srgb,var(--negative) 10%,transparent);color:var(--negative)}.open-banking-connection-ledger{overflow:hidden;border:.5px solid var(--display-shell-border);border-radius:11px;background:color-mix(in srgb,var(--surface-muted) 20%,transparent)}.open-banking-bank{border-bottom:.5px solid var(--display-shell-border)}.open-banking-bank:last-child{border-bottom:0}.open-banking-bank-summary{display:grid;width:100%;min-height:58px;grid-template-columns:36px minmax(0,1fr) auto 18px;align-items:center;gap:10px;padding:9px 11px;border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer;list-style:none}.open-banking-bank-summary::-webkit-details-marker{display:none}.open-banking-bank-summary:hover{background:var(--clickable-shell-hover-fill)}.open-banking-bank-summary:focus-visible{outline:var(--moolah-input-focus-width) solid color-mix(in srgb,var(--accent) 48%,transparent);outline-offset:-1px}.open-banking-bank-summary>svg{color:var(--text-muted);transition:transform .15s ease}.open-banking-bank[open] .open-banking-bank-summary>svg{transform:rotate(180deg)}.open-banking-bank-copy{display:grid;min-width:0;gap:2px}.open-banking-bank-copy strong{overflow:hidden;font-size:11.5px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.open-banking-bank-copy small{overflow:hidden;color:var(--text-muted);font-size:9.5px;text-overflow:ellipsis;white-space:nowrap}.open-banking-bank-detail{padding:12px;border-top:.5px solid var(--display-shell-border);background:color-mix(in srgb,var(--clickable-shell-fill) 58%,transparent)}.open-banking-bank-detail-heading,.open-banking-bank-controls,.open-banking-consent-actions{display:flex;align-items:center}.open-banking-bank-detail-heading{justify-content:space-between;gap:16px;margin-bottom:9px}.open-banking-bank-detail-heading>div{display:grid;gap:2px}.open-banking-bank-detail-heading strong{color:var(--text);font-size:10.5px;font-weight:500}.open-banking-bank-detail-heading span{color:var(--text-muted);font-size:9.5px}.open-banking-account-list{overflow:hidden;border:.5px solid var(--display-shell-border);border-radius:9px;background:color-mix(in srgb,var(--surface-muted) 16%,transparent)}.open-banking-account-row{display:grid;min-height:55px;grid-template-columns:26px minmax(130px,1fr) minmax(92px,auto) 118px 76px;align-items:center;gap:9px;padding:8px 10px;border-bottom:.5px solid var(--display-shell-border)}.open-banking-account-row:last-child{border-bottom:0}.open-banking-account-included{display:grid;place-items:center;cursor:pointer}.open-banking-account-included input{position:absolute;opacity:0;pointer-events:none}.open-banking-account-included>span{position:relative;width:17px;height:17px;border:.5px solid var(--clickable-shell-border);border-radius:5px;background:var(--clickable-shell-fill)}.open-banking-account-included input:checked+span{border-color:var(--clickable-shell-selected-border);background:var(--clickable-shell-selected-fill)}.open-banking-account-included input:checked+span:after{position:absolute;top:3px;left:5px;width:4px;height:7px;border-right:1.5px solid var(--accent);border-bottom:1.5px solid var(--accent);content:"";transform:rotate(45deg)}.open-banking-account-included input:focus-visible+span{outline:var(--moolah-input-focus-width) solid color-mix(in srgb,var(--accent) 50%,transparent)}.open-banking-account-included input:disabled+span{cursor:default;opacity:.62}.open-banking-account-copy{display:grid;min-width:0;gap:2px}.open-banking-account-copy strong,.open-banking-account-balance{overflow:hidden;color:var(--text);font-size:10.5px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.open-banking-account-copy small{overflow:hidden;color:var(--text-muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.open-banking-account-balance{justify-self:end;font-variant-numeric:tabular-nums}.open-banking-account-role{display:grid;gap:3px}.open-banking-account-role>span{color:var(--text-faint);font-size:8.5px}.open-banking-account-role select{min-height:30px;font-size:9.5px}.open-banking-account-tracking{min-width:0}.open-banking-account-tracking b{color:var(--text-muted);font-size:8.5px}.open-banking-bank-controls{flex-wrap:wrap;justify-content:flex-end;gap:7px;margin-top:9px}.open-banking-bank-controls>div{min-width:160px;flex:1 1 auto;color:var(--text-faint);font-size:9px}.open-banking-danger-action{border-color:color-mix(in srgb,var(--negative) 22%,var(--clickable-shell-border));color:var(--negative)}.open-banking-danger-action:hover:not(:disabled){background:color-mix(in srgb,var(--negative) 9%,transparent);color:var(--negative)}.open-banking-consent-section{padding-top:2px}.open-banking-consent-summary{overflow:hidden;border:.5px solid var(--display-shell-border);border-radius:11px;background:color-mix(in srgb,var(--surface-muted) 20%,transparent)}.open-banking-consent-purpose{display:flex;align-items:center;gap:10px;min-height:57px;padding:10px 12px;border-bottom:.5px solid var(--display-shell-border)}.open-banking-consent-icon,.open-banking-confirmation-icon{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border-radius:10px;background:var(--clickable-shell-selected-fill);color:var(--accent)}.open-banking-consent-purpose>span:last-child{display:grid;min-width:0;gap:2px}.open-banking-consent-purpose strong{color:var(--text);font-size:11px;font-weight:500}.open-banking-consent-purpose small{color:var(--text-muted);font-size:9.5px}.open-banking-consent-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0}.open-banking-consent-facts>div{min-width:0;padding:10px 12px;border-right:.5px solid var(--display-shell-border)}.open-banking-consent-facts>div:last-child{border-right:0}.open-banking-consent-facts dt{margin-bottom:4px;color:var(--text-faint);font-size:8.5px}.open-banking-consent-facts dd{margin:0;color:var(--text);font-size:9.5px;line-height:1.45}.open-banking-consent-actions{flex-wrap:wrap;gap:7px;margin-top:10px}.open-banking-consent-actions .open-banking-danger-action{margin-left:auto}.open-banking-withdrawal{display:grid;gap:3px;margin-top:9px;padding:10px 12px;border:.5px solid var(--display-shell-border);border-radius:9px;color:var(--text-muted);font-size:9.5px}.open-banking-withdrawal strong{color:var(--text);font-size:10.5px}.open-banking-withdrawal.completed{border-color:color-mix(in srgb,var(--positive) 24%,var(--display-shell-border));background:color-mix(in srgb,var(--positive) 5%,transparent)}.open-banking-withdrawal.failed{border-color:color-mix(in srgb,var(--negative) 24%,var(--display-shell-border));background:color-mix(in srgb,var(--negative) 5%,transparent)}.open-banking-confirmation{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;border:.5px solid color-mix(in srgb,var(--negative) 24%,var(--display-shell-border));border-radius:11px;background:color-mix(in srgb,var(--negative) 5%,transparent)}.open-banking-confirmation-icon{background:color-mix(in srgb,var(--negative) 10%,transparent);color:var(--negative)}.open-banking-confirmation>div:not(.open-banking-confirmation-actions){display:grid;gap:3px}.open-banking-confirmation strong{color:var(--text);font-size:11px;font-weight:500}.open-banking-confirmation p{margin:0;color:var(--text-muted);font-size:9.5px;line-height:1.45}.open-banking-confirmation-actions{display:flex;gap:7px}.open-banking-settings-empty{display:flex;min-height:76px;align-items:center;gap:12px;padding:12px;border:.5px dashed var(--display-shell-border);border-radius:11px}.open-banking-settings-empty>div{display:grid;gap:3px}.open-banking-settings-empty strong{color:var(--text);font-size:11.5px;font-weight:500}.open-banking-settings-empty p{margin:0;color:var(--text-muted);font-size:10px;line-height:1.4}.open-banking-settings-panel .open-banking-boundary{margin-top:11px;font-size:10px;line-height:1.45}.open-banking-settings-picker{padding-top:16px}.open-banking-settings-picker .open-banking-search{margin-top:0}.open-banking-settings-picker .open-banking-institutions{margin-top:10px}.open-banking-settings-picker .open-banking-institution{min-height:58px;padding:8px 0}.open-banking-settings-picker .open-banking-institution:first-child{border-top:0}.open-banking-search:focus-within{border-color:var(--clickable-shell-selected-border);outline:var(--moolah-input-focus-width) solid color-mix(in srgb,var(--accent) 42%,transparent);outline-offset:0}.open-banking-spinner{width:30px;height:30px;flex:0 0 auto;border:3px solid var(--moolah-color-accent-soft);border-top-color:var(--moolah-color-accent);border-radius:50%;animation:open-banking-spin .8s linear infinite}@keyframes open-banking-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.open-banking-spinner{animation:none}}.open-banking-callback-page{display:grid;min-height:100dvh;padding:24px;place-items:center;background:var(--moolah-color-canvas)}.open-banking-callback-card{width:min(420px,100%);padding:32px;border:.5px solid var(--display-shell-border);border-radius:var(--moolah-radius-prominent);background:var(--display-shell-fill);text-align:center}.open-banking-callback-card h1{margin:18px 0 8px;font-size:22px}.open-banking-callback-card p{margin:0 0 20px;color:var(--moolah-color-secondary-text)}.open-banking-callback-icon{display:grid;width:54px;height:54px;margin:0 auto;place-items:center;border-radius:16px;background:var(--moolah-color-surface-muted);color:var(--moolah-color-accent)}.open-banking-callback-card.failed .open-banking-callback-icon{color:var(--moolah-color-negative)}@media(max-width:680px){.open-banking-page{padding:24px 18px 56px}.open-banking-heading{align-items:flex-start}.open-banking-icon-button span{display:none}.open-banking-panel{padding:20px}.open-banking-panel-heading,.open-banking-settings-heading{align-items:flex-start}.open-banking-settings-actions{flex-wrap:wrap;justify-content:flex-end}.open-banking-bank-detail-heading,.open-banking-bank-controls,.open-banking-consent-actions{align-items:stretch;flex-direction:column}.open-banking-account-row{grid-template-columns:26px minmax(0,1fr) auto}.open-banking-account-role{grid-column:2}.open-banking-account-tracking{grid-column:3;grid-row:2}.open-banking-consent-facts{grid-template-columns:1fr}.open-banking-consent-facts>div{border-right:0;border-bottom:.5px solid var(--display-shell-border)}.open-banking-consent-facts>div:last-child{border-bottom:0}.open-banking-consent-actions .open-banking-danger-action{margin-left:0}.open-banking-confirmation{grid-template-columns:38px minmax(0,1fr)}.open-banking-confirmation-actions{grid-column:1 / -1;justify-content:flex-end}}.account-settings-page{width:100%;min-height:100%;color:var(--text)}.account-settings-heading{align-items:flex-start;margin-bottom:22px}.account-settings-heading h1{font-family:var(--moolah-type-page-title-family);text-wrap:balance}.account-settings-workspace{display:grid;width:100%;min-height:650px;grid-template-columns:252px minmax(0,1fr)}.account-settings-mobile-picker{display:none}.account-settings-rail-group a,.account-settings-panel button,.account-settings-panel a,.account-settings-choice-grid button,.account-settings-detail-action{touch-action:manipulation}.account-settings-rail{padding:0 18px 12px 0;border-right:.5px solid var(--display-shell-border);background:transparent}.account-settings-rail-group{padding:10px 0;border-bottom:.5px solid var(--display-shell-border)}.account-settings-rail-group:last-child{border-bottom:0}.account-settings-rail-group h2{margin:0 0 5px;color:var(--text-muted);font-size:9.5px;font-weight:450;letter-spacing:0;line-height:1.2;opacity:.78;text-transform:none}.account-settings-rail-group>div{display:grid;gap:2px}.account-settings-rail-group a{display:grid;width:calc(100% + 9px);min-height:34px;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;margin-left:-9px;padding:6px 9px;border:0;border-radius:8px;background:transparent;color:var(--text);font:480 12px/1.2 var(--moolah-font-body);text-align:left;text-decoration:none;cursor:pointer}.account-settings-rail-group a:hover{background:var(--clickable-shell-hover-fill);color:var(--text)}.account-settings-rail-group a.selected{background:var(--clickable-shell-selected-fill);color:var(--accent);box-shadow:inset 0 0 0 .5px var(--clickable-shell-selected-border)}.account-settings-rail-group a.danger:not(.selected){color:color-mix(in srgb,var(--negative) 78%,var(--text-muted))}.account-settings-rail-group a.danger.selected{background:color-mix(in srgb,var(--negative) 10%,transparent);color:var(--negative);box-shadow:inset 0 0 0 .5px color-mix(in srgb,var(--negative) 26%,transparent)}.account-settings-rail-group a svg{justify-self:center}.account-settings-rail-group a>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-settings-rail-group a small{padding:3px 5px;border:.5px solid var(--display-shell-border);border-radius:999px;color:var(--text-faint);font-size:8.5px;font-weight:500;line-height:1}.account-settings-rail-group a:focus-visible,.account-settings-choice-grid button:focus-visible,.account-settings-detail-action:focus-visible{position:relative;z-index:1;outline:2px solid color-mix(in srgb,var(--accent) 48%,transparent);outline-offset:1px}.account-settings-detail{min-width:0}.account-settings-detail-inner{width:100%;padding:6px 0 36px 32px}.account-settings-detail-list{overflow:hidden;border:.5px solid var(--display-shell-border);border-radius:12px;background:color-mix(in srgb,var(--surface-muted) 28%,transparent)}.account-settings-detail-row,.account-settings-feature-row{display:flex;min-height:50px;align-items:center;justify-content:space-between;gap:20px;padding:10px 13px;border-bottom:.5px solid var(--display-shell-border)}.account-settings-detail-row:last-child,.account-settings-feature-row:last-child{border-bottom:0}.account-settings-detail-row>span{color:var(--text-muted);font-size:11.5px}.account-settings-detail-row>strong{overflow:hidden;color:var(--text);font-size:12px;font-weight:500;text-align:right;text-overflow:ellipsis;white-space:nowrap}.account-settings-feature-row{min-height:44px;justify-content:flex-start;gap:10px;color:var(--text);font-size:12px}.account-settings-feature-row svg{color:var(--accent)}.account-settings-profile-summary{display:flex;align-items:center;gap:12px;margin-bottom:14px}.account-settings-profile-avatar{display:grid;width:56px;height:56px;flex:0 0 56px;place-items:center;overflow:hidden;border:.5px solid var(--clickable-shell-selected-border);border-radius:50%;background:var(--clickable-shell-selected-fill);color:var(--accent);font-size:15px;font-weight:500}.account-settings-profile-avatar img{width:100%;height:100%;object-fit:cover}.account-settings-profile-editor{width:100%}.account-settings-photo-row{display:grid;min-height:78px;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:14px;margin-bottom:16px;padding:2px 0 18px;border-bottom:.5px solid var(--display-shell-border)}.account-settings-photo-row>div{display:grid;gap:5px}.account-settings-photo-row>div strong{color:var(--text);font-size:12.5px;font-weight:500}.account-settings-file-input{display:none}.account-settings-edit-list{overflow:hidden;border:.5px solid var(--display-shell-border);border-radius:12px;background:color-mix(in srgb,var(--surface-muted) 28%,transparent)}.account-settings-edit-row{display:grid;min-height:62px;grid-template-columns:minmax(138px,.34fr) minmax(220px,.66fr);align-items:center;gap:20px;padding:9px 12px;border-bottom:.5px solid var(--display-shell-border)}.account-settings-edit-row:last-child{border-bottom:0}.account-settings-edit-row>label{display:grid;gap:2px}.account-settings-edit-row>label strong{color:var(--text);font-size:11.5px;font-weight:500}.account-settings-edit-row>label small{color:var(--text-muted);font-size:9.5px;font-weight:420}.account-settings-field-control{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px}.account-settings-field-control>input,.account-settings-field-control>.account-settings-phone-control{grid-row:1;grid-column:1}.account-settings-row-actions{display:flex;grid-row:1;grid-column:2;gap:6px}.account-settings-row-actions .account-settings-secondary-action,.account-settings-row-actions .account-settings-save-action{min-height:34px;padding:0 10px}.account-settings-field-message{grid-column:1 / -1;color:var(--positive);font-size:10.5px;font-weight:470;line-height:1.35}.account-settings-field-message.error{color:var(--negative)}.account-settings-panel{display:grid;width:100%;gap:16px}.account-settings-panel-section{min-width:0;padding-bottom:16px;border-bottom:.5px solid var(--display-shell-border)}.account-settings-panel-section:last-of-type{padding-bottom:0;border-bottom:0}.account-settings-section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:12px}.account-settings-section-heading>div{display:grid;gap:3px}.account-settings-section-heading>.account-settings-heading-actions{display:flex}.account-settings-heading-actions{flex:0 0 auto;align-items:center;gap:7px}.account-settings-section-heading strong{color:var(--text);font-size:12.5px;font-weight:500}.account-settings-section-heading span{color:var(--text-muted);font-size:10.5px;line-height:1.4}.account-settings-panel-loading,.account-settings-empty{display:flex;min-height:54px;align-items:center;gap:8px;margin:0;color:var(--text-muted);font-size:11px}.account-settings-compact-list,.account-settings-panel-section:has(.account-settings-setting-row){overflow:hidden;border:.5px solid var(--display-shell-border);border-radius:11px;background:color-mix(in srgb,var(--surface-muted) 24%,transparent)}.account-settings-compact-row,.account-settings-setting-row{display:grid;min-height:56px;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 12px;border-bottom:.5px solid var(--display-shell-border)}.account-settings-compact-row:last-child,.account-settings-setting-row:last-child{border-bottom:0}.account-settings-compact-row>svg{color:var(--text-muted)}.account-settings-compact-row>span,.account-settings-setting-row>span{display:grid;min-width:0;gap:2px}.account-settings-compact-row strong,.account-settings-setting-row strong{overflow:hidden;color:var(--text);font-size:11.5px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.account-settings-compact-row small,.account-settings-setting-row small{overflow:hidden;color:var(--text-muted);font-size:9.5px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.account-settings-compact-row em{color:var(--text-faint);font-size:9.5px;font-style:normal}.account-settings-availability-pill{padding:4px 7px;border:.5px solid var(--display-shell-border);border-radius:999px;color:var(--text-muted);font-size:9px;font-style:normal;white-space:nowrap}.account-settings-setting-row{grid-template-columns:minmax(0,1fr) auto}.account-settings-panel input:not([type=checkbox]),.account-settings-panel select{width:100%;min-width:0;min-height:36px;padding:0 10px;border:.5px solid var(--clickable-shell-border);border-radius:8px;background:var(--clickable-shell-fill);color:var(--text);font:470 11px/1 var(--moolah-font-body)}.account-settings-panel select{padding-right:28px}.account-settings-panel input:focus-visible,.account-settings-panel select:focus-visible{border-color:var(--clickable-shell-selected-border);outline:var(--moolah-input-focus-width) solid color-mix(in srgb,var(--accent) 42%,transparent);outline-offset:0}.account-settings-panel input:disabled,.account-settings-panel select:disabled{cursor:not-allowed;opacity:.52}.account-settings-household-form{display:grid;gap:0;margin:0 0 12px;overflow:hidden;border:.5px solid var(--display-shell-border);border-radius:11px;background:color-mix(in srgb,var(--surface-muted) 24%,transparent)}.account-settings-dialog .account-settings-household-form{margin:0}.account-settings-household-form label{display:grid;min-height:56px;grid-template-columns:minmax(138px,.34fr) minmax(220px,.66fr);align-items:center;gap:20px;padding:9px 12px;border-bottom:.5px solid var(--display-shell-border);color:var(--text);font-size:11.5px;font-weight:500}.account-settings-household-form-actions{display:flex;justify-content:flex-end;gap:7px;padding:9px 12px}.account-settings-household-list{margin-top:10px}.account-settings-household-row{display:grid;min-height:58px;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 12px;border-bottom:.5px solid var(--display-shell-border)}.account-settings-household-row:last-child{border-bottom:0}.account-settings-household-row>svg{color:var(--text-muted)}.account-settings-household-row>span{display:grid;min-width:0;gap:2px}.account-settings-household-row>span strong,.account-settings-household-row>span small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-settings-household-row>span strong{color:var(--text);font-size:11.5px;font-weight:500}.account-settings-household-row>span small{color:var(--text-muted);font-size:9.5px}.account-settings-household-row>div{display:flex;align-items:center;gap:6px}.account-settings-household-row>div>em{color:var(--text-faint);font-size:9px;font-style:normal;text-transform:capitalize}.account-settings-household-invites{display:grid;gap:6px;margin-top:12px}.account-settings-household-invites>strong{margin:0;color:var(--text-muted);font-size:9.5px;font-weight:500}.account-settings-household-invite-row{display:grid;min-height:52px;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 12px;border-bottom:.5px solid var(--display-shell-border)}.account-settings-household-invite-row:last-child{border-bottom:0}.account-settings-household-invite-row>svg{color:var(--text-muted)}.account-settings-household-invite-row>span{display:grid;min-width:0;gap:2px}.account-settings-household-invite-row strong,.account-settings-household-invite-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-settings-household-invite-row strong{color:var(--text);font-size:11px;font-weight:500}.account-settings-household-invite-row small{color:var(--text-muted);font-size:9.5px}.account-settings-household-invite-row em{padding:4px 7px;border:.5px solid var(--display-shell-border);border-radius:999px;color:var(--text-faint);font-size:9px;font-style:normal;text-transform:capitalize}.account-settings-household-approval{padding:12px;border:.5px solid var(--clickable-shell-selected-border);border-radius:11px;background:var(--clickable-shell-selected-fill)}.account-settings-household-approval .account-settings-section-heading>svg{color:var(--accent)}.account-settings-household-checks{display:grid;gap:8px}.account-settings-household-checks label{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:start;gap:8px;color:var(--text-muted);font-size:10px;line-height:1.35;cursor:pointer}.account-settings-household-checks input{margin:1px 0 0}@media(max-width:900px){.account-settings-household-form{grid-template-columns:1fr}.account-settings-household-form-actions{grid-column:1}}.account-settings-text-action,.account-settings-icon-action{display:inline-flex;min-height:30px;align-items:center;justify-content:center;padding:0 7px;border:0;border-radius:7px;background:transparent;color:var(--text-muted);font:500 10px/1 var(--moolah-font-body);cursor:pointer}.account-settings-text-action:hover:not(:disabled),.account-settings-icon-action:hover:not(:disabled){background:var(--clickable-shell-hover-fill);color:var(--text)}.account-settings-danger-text{margin-top:8px;color:color-mix(in srgb,var(--negative) 78%,var(--text-muted))}.account-settings-danger-action{display:inline-flex;min-height:36px;align-items:center;justify-content:center;gap:7px;padding:0 12px;border:.5px solid color-mix(in srgb,var(--negative) 30%,transparent);border-radius:9px;background:color-mix(in srgb,var(--negative) 10%,transparent);color:var(--negative);font:500 11px/1 var(--moolah-font-body);cursor:pointer}.account-settings-danger-action:hover:not(:disabled){background:color-mix(in srgb,var(--negative) 16%,transparent)}.account-settings-danger-action:disabled,.account-settings-text-action:disabled,.account-settings-icon-action:disabled{cursor:not-allowed;opacity:.48}.account-settings-inline-confirm{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-top:10px;padding:10px;border:.5px solid color-mix(in srgb,var(--negative) 24%,var(--display-shell-border));border-radius:10px;background:color-mix(in srgb,var(--negative) 5%,transparent)}.account-settings-inline-confirm>span{flex:1 1 auto;color:var(--text-muted);font-size:10.5px}.account-settings-inline-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:7px}.account-settings-panel-status{margin:-4px 0 0;color:var(--positive);font-size:10.5px;line-height:1.4}.account-settings-panel-status.error{color:var(--negative)}.account-settings-mcp-verify{max-width:520px;grid-template-columns:24px minmax(0,1fr);align-items:start;padding:15px;border:.5px solid var(--display-shell-border);border-radius:11px;background:color-mix(in srgb,var(--surface-muted) 26%,transparent)}.account-settings-mcp-verify>svg{color:var(--accent)}.account-settings-mcp-verify>div{display:grid;gap:4px}.account-settings-mcp-verify strong{color:var(--text);font-size:12px;font-weight:500}.account-settings-mcp-verify p{margin:0;color:var(--text-muted);font-size:10.5px;line-height:1.45}.account-settings-mcp-verify form,.account-settings-mcp-verify>.account-settings-panel-status{grid-column:2}.account-settings-mcp-verify form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:7px}.account-settings-mcp-verify .moolah-compact-form-group{min-width:0}.account-settings-mcp-list{display:grid;overflow:hidden;border:.5px solid var(--display-shell-border);border-radius:11px;background:color-mix(in srgb,var(--surface-muted) 22%,transparent)}.account-settings-mcp-agent{display:grid;gap:9px;padding:10px 12px;border-bottom:.5px solid var(--display-shell-border)}.account-settings-mcp-agent:last-child{border-bottom:0}.account-settings-mcp-agent header{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px}.account-settings-mcp-agent-mark,.account-settings-mcp-empty>svg{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:9px;background:var(--clickable-shell-selected-fill);color:var(--accent)}.account-settings-mcp-agent-mark img{display:block;width:21px;height:21px}.account-settings-mcp-agent-mark[data-agent-brand=claude]{overflow:hidden;padding:0;background:transparent}.account-settings-mcp-agent-mark[data-agent-brand=claude] img{width:34px;height:34px}.account-settings-mcp-agent header>div,.account-settings-mcp-empty>span{display:grid;min-width:0;gap:2px}.account-settings-mcp-agent header strong,.account-settings-mcp-empty strong{color:var(--text);font-size:11.5px;font-weight:500}.account-settings-mcp-agent header small,.account-settings-mcp-empty small{color:var(--text-muted);font-size:9.5px}.account-settings-mcp-agent fieldset{display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:0;border:0}.account-settings-mcp-agent legend{width:100%;margin-bottom:6px;color:var(--text-faint);font-size:9.5px}.account-settings-mcp-agent fieldset label{position:relative;display:inline-flex;min-height:28px;align-items:center;gap:6px;padding:0 8px;border:.5px solid var(--clickable-shell-border);border-radius:999px;background:var(--clickable-shell-fill);color:var(--text-muted);font-size:9.5px;cursor:pointer}.account-settings-mcp-agent fieldset label:has(input:checked){border-color:var(--clickable-shell-selected-border);background:var(--clickable-shell-selected-fill);color:var(--accent)}.account-settings-mcp-agent fieldset input{width:12px;height:12px;accent-color:var(--accent)}.account-settings-mcp-agent footer{display:flex;min-height:30px;align-items:center;justify-content:space-between;gap:10px}.account-settings-mcp-agent footer>span{display:flex;gap:7px}.account-settings-mcp-disconnect{color:color-mix(in srgb,var(--negative) 70%,var(--text-muted))}.account-settings-mcp-confirm{align-items:center;margin-left:auto}.account-settings-mcp-confirm>small{color:color-mix(in srgb,var(--negative) 72%,var(--text-muted));font-size:9.5px}.account-settings-mcp-empty{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;padding:14px}.account-settings-mcp-note,.account-settings-mcp-partial{margin:0;color:var(--text-muted);font-size:10px;line-height:1.45}.account-settings-mcp-setup{display:grid;gap:13px}.account-settings-mcp-server{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border:.5px solid var(--display-shell-border);border-radius:10px;background:color-mix(in srgb,var(--surface-muted) 30%,transparent)}.account-settings-mcp-server>span{display:grid;min-width:0;gap:4px}.account-settings-mcp-server small{color:var(--text-muted);font-size:9px}.account-settings-mcp-server code{overflow:hidden;color:var(--text);font:450 9.5px/1.4 var(--moolah-font-mono);text-overflow:ellipsis;white-space:nowrap}.account-settings-mcp-setup ol{display:grid;gap:7px;margin:0;padding-left:20px;color:var(--text);font-size:10.5px;line-height:1.4}.account-settings-mcp-setup>p{margin:0;color:var(--text-muted);font-size:9.5px;line-height:1.45}@media(max-width:720px){.account-settings-mcp-agent footer{align-items:stretch;flex-direction:column}.account-settings-mcp-confirm{margin-left:0}}.account-settings-panel-actions{display:flex;justify-content:flex-end;gap:7px}.account-settings-toggle{display:inline-flex;min-width:74px;align-items:center;justify-content:flex-end;gap:7px;color:var(--text-muted);font-size:10px;cursor:pointer}.account-settings-toggle input{position:absolute;opacity:0;pointer-events:none}.account-settings-toggle>span{position:relative;width:32px;height:18px;border:.5px solid var(--clickable-shell-border);border-radius:999px;background:var(--clickable-shell-fill);transition:background .14s ease,border-color .14s ease}.account-settings-toggle>span:after{position:absolute;top:3px;left:3px;width:11px;height:11px;border-radius:50%;background:var(--text-muted);content:"";transition:transform .14s ease,background .14s ease}.account-settings-toggle input:checked+span{border-color:var(--clickable-shell-selected-border);background:var(--clickable-shell-selected-fill)}.account-settings-toggle input:checked+span:after{background:var(--accent);transform:translate(14px)}.account-settings-toggle input:focus-visible+span{outline:var(--moolah-input-focus-width) solid color-mix(in srgb,var(--accent) 50%,transparent);outline-offset:0}.account-settings-toggle b{min-width:18px;font-weight:500}.account-settings-panel-section.account-settings-danger-zone{padding:14px;border:.5px solid color-mix(in srgb,var(--negative) 22%,var(--display-shell-border));border-radius:11px;background:color-mix(in srgb,var(--negative) 4%,transparent)}.account-settings-danger-zone .account-settings-section-heading{margin-bottom:0}.account-settings-delete-confirm{display:grid;grid-template-columns:minmax(0,1fr) 130px auto auto;align-items:center;gap:7px;margin-top:12px}.account-settings-delete-confirm p{margin:0;color:var(--text-muted);font-size:10.5px}.account-settings-delete-confirm p strong{color:var(--text)}.account-settings-household-invite{grid-template-columns:.8fr 1fr 1fr auto}.account-settings-plan-summary{display:grid;gap:0;overflow:hidden;border:.5px solid var(--display-shell-border);border-radius:11px;background:color-mix(in srgb,var(--surface-muted) 24%,transparent)}.account-settings-plan-summary>span{display:grid;min-height:56px;grid-template-columns:minmax(138px,.34fr) minmax(0,.66fr);align-items:center;gap:20px;padding:9px 12px;border-bottom:.5px solid var(--display-shell-border)}.account-settings-plan-summary>span small{color:var(--text-muted);font-size:9.5px}.account-settings-plan-summary>span strong{color:var(--text);font-size:11.5px;font-weight:500}.account-settings-plan-summary dl{display:grid;margin:0}.account-settings-plan-summary dl>div{display:grid;min-height:48px;grid-template-columns:minmax(138px,.34fr) minmax(0,.66fr);align-items:center;gap:20px;padding:8px 12px;border-bottom:.5px solid var(--display-shell-border)}.account-settings-plan-summary dl>div:last-child{border-bottom:0}.account-settings-plan-summary dt,.account-settings-plan-summary dd{margin:0;font-size:10.5px}.account-settings-plan-summary dt{color:var(--text-muted)}.account-settings-plan-summary dd{color:var(--text);font-weight:500;text-transform:capitalize}.account-settings-plan-actions{padding:9px 12px;border-top:.5px solid var(--display-shell-border);background:color-mix(in srgb,var(--surface-muted) 12%,transparent)}.account-settings-rule-row{display:grid;grid-template-columns:96px 82px minmax(120px,.9fr) minmax(150px,1fr);align-items:center;gap:7px;padding:10px 12px;border-bottom:.5px solid var(--display-shell-border)}.account-settings-rule-row:last-child{border-bottom:0}.account-settings-rule-apply{display:inline-flex;align-items:center;gap:6px;grid-row:2;grid-column:1 / 3;color:var(--text-muted);font-size:9.5px}.account-settings-rule-apply input{accent-color:var(--accent)}.account-settings-rule-row>.account-settings-row-actions{grid-row:2;grid-column:3 / -1;justify-content:flex-end}.account-settings-rules-list{display:grid;overflow:hidden;border:.5px solid var(--display-shell-border);border-radius:11px;background:color-mix(in srgb,var(--surface-muted) 24%,transparent)}.account-settings-alert-groups{display:grid;gap:12px}.account-settings-alert-groups>div{overflow:hidden;border:.5px solid var(--display-shell-border);border-radius:11px;background:color-mix(in srgb,var(--surface-muted) 24%,transparent)}.account-settings-alert-groups h3{min-height:32px;margin:0;padding:8px 12px;border-bottom:.5px solid var(--display-shell-border);color:var(--text-muted);font-size:9.5px;font-weight:470}.account-settings-alert-row{display:grid;min-height:52px;grid-template-columns:minmax(120px,.28fr) minmax(260px,.72fr) auto;align-items:center;gap:12px;padding:8px 12px;border-bottom:.5px solid var(--display-shell-border)}.account-settings-alert-row:last-child{border-bottom:0}.account-settings-alert-row>span:first-child{display:grid;gap:2px}.account-settings-alert-row>span:first-child strong{color:var(--text);font-size:11px;font-weight:500}.account-settings-alert-row>span:first-child small{color:var(--text-muted);font-size:9px}.account-settings-thresholds{display:flex;flex-wrap:wrap;gap:5px}.account-settings-thresholds button{min-height:28px;padding:0 8px;border:.5px solid var(--clickable-shell-border);border-radius:7px;background:var(--clickable-shell-fill);color:var(--text-muted);font:500 9px/1 var(--moolah-font-body);cursor:pointer}.account-settings-thresholds button:hover:not(:disabled){background:var(--clickable-shell-hover-fill);color:var(--text)}.account-settings-thresholds button.selected{border-color:var(--clickable-shell-selected-border);background:var(--clickable-shell-selected-fill);color:var(--accent)}.account-settings-panel a.account-settings-secondary-action,.account-settings-panel a.account-settings-save-action{text-decoration:none}.account-settings-edit-row input,.account-settings-edit-row select,.account-settings-verification-controls input{width:100%;min-width:0;min-height:38px;color:var(--text);font:480 11.5px/1 var(--moolah-font-body)}.account-settings-edit-row input,.account-settings-verification-controls input{padding:0 11px}.account-settings-edit-row input{border:0;border-radius:0;background:transparent;box-shadow:inset 0 -1px 0 transparent;transition:background .16s ease,box-shadow .16s ease}.account-settings-edit-row input:hover:not(:disabled){background:color-mix(in srgb,var(--text) 2.5%,transparent);box-shadow:inset 0 -1px 0 var(--line-strong)}.account-settings-edit-row select,.account-settings-verification-controls input{border:.5px solid var(--clickable-shell-border);border-radius:9px;background:var(--clickable-shell-fill)}.account-settings-edit-row select{padding:0 26px 0 9px}.account-settings-edit-row input::placeholder,.account-settings-verification-controls input::placeholder{color:var(--text-faint)}.account-settings-edit-row input:focus{outline:0;background:color-mix(in srgb,var(--accent) 4%,transparent);box-shadow:inset 0 -2px color-mix(in srgb,var(--accent) 72%,transparent)}.account-settings-edit-row select:focus,.account-settings-verification-controls input:focus{border-color:var(--clickable-shell-selected-border);outline:var(--moolah-input-focus-width) solid color-mix(in srgb,var(--accent) 44%,transparent);outline-offset:0}.account-settings-edit-row input:disabled,.account-settings-edit-row select:disabled,.account-settings-verification-controls input:disabled{cursor:not-allowed;opacity:.64}.account-settings-phone-control{display:grid;min-width:0;grid-template-columns:82px minmax(0,1fr);gap:7px}.account-settings-secondary-action,.account-settings-save-action{display:inline-flex;min-height:36px;align-items:center;justify-content:center;gap:7px;padding:0 12px;border:.5px solid var(--clickable-shell-border);border-radius:9px;background:var(--clickable-shell-fill);color:var(--text-muted);font:500 11px/1 var(--moolah-font-body);cursor:pointer}.account-settings-secondary-action:hover:not(:disabled){background:var(--clickable-shell-hover-fill);color:var(--text)}.account-settings-save-action{border-color:var(--clickable-shell-selected-border);background:var(--clickable-shell-selected-fill);color:var(--accent)}.account-settings-save-action:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 22%,transparent)}.account-settings-secondary-action:disabled,.account-settings-save-action:disabled{cursor:not-allowed;opacity:.48}.account-settings-secondary-action:focus-visible,.account-settings-save-action:focus-visible,.account-settings-danger-action:focus-visible,.account-settings-text-action:focus-visible,.account-settings-icon-action:focus-visible,.account-settings-thresholds button:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 46%,transparent);outline-offset:2px}.account-settings-verification{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;margin-top:14px;padding:13px 14px;border:.5px solid var(--clickable-shell-selected-border);border-radius:11px;background:var(--clickable-shell-selected-fill)}.account-settings-verification>div:first-child strong{color:var(--text);font-size:11.5px;font-weight:500}.account-settings-verification>div:first-child p{margin:3px 0 0;color:var(--text-muted);font-size:10.5px}.account-settings-verification-controls{display:flex;align-items:center;gap:7px}.account-settings-verification-controls input{width:96px;letter-spacing:.15em;text-align:center}.account-settings-secondary-action .is-spinning{animation:account-settings-spin .9s linear infinite}.account-settings-profile-summary>div{display:grid;gap:2px}.account-settings-profile-summary strong{color:var(--text);font-size:13px;font-weight:500}.account-settings-profile-summary span{color:var(--text-muted);font-size:11.5px}.account-settings-mobile-notice,.account-settings-action-block{margin-top:0;padding:10px 12px;border:.5px solid var(--display-shell-border);border-radius:11px;background:color-mix(in srgb,var(--surface-muted) 24%,transparent)}.account-settings-action-block{display:grid;min-height:68px;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:18px}.account-settings-mobile-notice strong,.account-settings-action-block>strong{display:block;color:var(--text);font-size:12px;font-weight:500}.account-settings-mobile-notice p,.account-settings-action-block>p{max-width:520px;margin:4px 0 0;color:var(--text-muted);font-size:11.5px;line-height:1.45}.account-settings-choice-grid{display:grid;grid-template-columns:1fr;gap:0;overflow:hidden;border:.5px solid var(--display-shell-border);border-radius:11px;background:color-mix(in srgb,var(--surface-muted) 24%,transparent)}.account-settings-preferences{display:grid;gap:18px}.account-settings-preference-group{min-width:0;padding-bottom:18px;border-bottom:.5px solid var(--display-shell-border)}.account-settings-preference-group:last-child{padding-bottom:0;border-bottom:0}.account-settings-preference-group>.account-settings-panel{gap:10px}.account-settings-cadence-grid{grid-template-columns:1fr}.account-settings-choice-grid button{display:grid;min-height:58px;grid-template-columns:20px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:9px 12px;border:0;border-bottom:.5px solid var(--display-shell-border);border-radius:0;background:transparent;color:var(--text-muted);font-family:var(--moolah-font-body);text-align:left;cursor:pointer}.account-settings-choice-grid button:last-child{border-bottom:0}.account-settings-choice-grid button:hover{background:var(--clickable-shell-hover-fill);color:var(--text)}.account-settings-choice-grid button.selected{background:var(--clickable-shell-selected-fill);box-shadow:inset 2px 0 var(--accent);color:var(--accent)}.account-settings-choice-grid button>span{display:grid;gap:3px}.account-settings-choice-grid strong{color:var(--text);font-size:12px;font-weight:500}.account-settings-choice-grid small{color:var(--text-muted);font-size:10.5px;font-weight:420;line-height:1.3}.account-settings-choice-check{opacity:0}.account-settings-choice-grid button.selected .account-settings-choice-check{opacity:1}.account-settings-device-note{margin:8px 12px 0;color:var(--text-faint);font-size:10.5px}.account-settings-dialog{width:min(460px,calc(100vw - 32px));max-height:calc(100vh - 32px);padding:0;overflow:auto;border:.5px solid var(--clickable-shell-border);border-radius:16px;background:var(--surface);color:var(--text);box-shadow:0 24px 70px color-mix(in srgb,black 34%,transparent)}.account-settings-dialog::backdrop{background:color-mix(in srgb,var(--canvas) 42%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.account-settings-dialog-card{display:grid}.account-settings-dialog-card>header{display:grid;grid-template-columns:36px minmax(0,1fr) 30px;align-items:center;gap:10px;padding:13px 14px;border-bottom:.5px solid var(--display-shell-border)}.account-settings-dialog-card>header>span{display:grid;width:34px;height:34px;place-items:center;border-radius:9px;background:var(--clickable-shell-selected-fill);color:var(--accent)}.account-settings-dialog-card>header>div{min-width:0}.account-settings-dialog-card h2,.account-settings-dialog-card header p{margin:0}.account-settings-dialog-card h2{color:var(--text);font-size:13px;font-weight:500}.account-settings-dialog-card header p{margin-top:3px;color:var(--text-muted);font-size:9.5px;line-height:1.4}.account-settings-dialog-card header>button{display:grid;width:30px;height:30px;place-items:center;padding:0;border:0;border-radius:8px;background:transparent;color:var(--text-muted);cursor:pointer}.account-settings-dialog-card header>button:hover:not(:disabled){background:var(--clickable-shell-hover-fill);color:var(--text)}.account-settings-dialog-body{padding:14px}.account-settings-dialog-card>footer{display:flex;justify-content:flex-end;gap:7px;padding:10px 14px 14px;border-top:.5px solid var(--display-shell-border)}.account-settings-detail-action{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:7px;margin-top:16px;padding:0 13px;border:.5px solid var(--clickable-shell-selected-border);border-radius:10px;background:var(--clickable-shell-selected-fill);color:var(--accent);font:500 11.5px/1 var(--moolah-font-body);text-decoration:none;cursor:pointer}.account-settings-detail-action:hover{background:color-mix(in srgb,var(--accent) 22%,transparent)}.account-settings-detail-action:disabled{cursor:wait;opacity:.7}.account-settings-action-block .account-settings-detail-action{grid-column:2;grid-row:1 / span 2;margin-top:0}.account-settings-inline-status{grid-column:1 / -1;margin:5px 0 0;color:var(--accent);font-size:10.5px}.account-settings-danger-block{border-color:color-mix(in srgb,var(--negative) 22%,var(--display-shell-border));background:color-mix(in srgb,var(--negative) 6%,transparent)}.account-settings-detail-action.account-settings-danger-action{border-color:color-mix(in srgb,var(--negative) 28%,transparent);background:color-mix(in srgb,var(--negative) 10%,transparent);color:var(--negative)}.account-settings-detail-action.account-settings-danger-action:hover{background:color-mix(in srgb,var(--negative) 16%,transparent)}.account-settings-detail-action .is-spinning{animation:account-settings-spin .9s linear infinite}@keyframes account-settings-spin{to{transform:rotate(360deg)}}@media(max-width:840px){.account-settings-workspace{grid-template-columns:220px minmax(0,1fr)}.account-settings-detail-inner{padding-right:0;padding-left:24px}.account-settings-rail-group a small{display:none}}@media(max-width:680px){.account-settings-workspace{grid-template-columns:1fr}.account-settings-mobile-picker{display:grid;gap:6px;padding:0 0 16px;border-bottom:.5px solid var(--display-shell-border)}.account-settings-mobile-picker>span{color:var(--text-muted);font-size:10px;font-weight:500}.account-settings-mobile-picker select{width:100%;height:44px;min-height:44px;padding:0 34px 0 12px;border:.5px solid var(--clickable-shell-border);border-radius:10px;background:var(--clickable-shell-fill);color:var(--text);font:500 12px/1 var(--moolah-font-body)}.account-settings-mobile-picker select:focus-visible{border-color:var(--clickable-shell-selected-border);outline:2px solid color-mix(in srgb,var(--accent) 44%,transparent);outline-offset:1px}.account-settings-rail{display:none}.account-settings-detail-inner{padding:16px 0 30px}.account-settings-photo-row{grid-template-columns:56px minmax(0,1fr)}.account-settings-photo-row>.account-settings-secondary-action{grid-column:1 / -1;justify-self:start}.account-settings-edit-row{grid-template-columns:1fr;gap:7px}.account-settings-household-form label{grid-template-columns:1fr;gap:6px}.account-settings-field-control{grid-template-columns:1fr}.account-settings-field-control>input,.account-settings-field-control>.account-settings-phone-control,.account-settings-row-actions{grid-column:1}.account-settings-row-actions{grid-row:2;justify-self:end}.account-settings-verification{grid-template-columns:1fr}.account-settings-verification-controls{flex-wrap:wrap}.account-settings-section-heading,.account-settings-inline-confirm{align-items:stretch;flex-direction:column}.account-settings-inline-fields,.account-settings-household-invite,.account-settings-delete-confirm,.account-settings-plan-summary{grid-template-columns:1fr}.account-settings-plan-summary>span,.account-settings-plan-summary dl>div{grid-template-columns:minmax(112px,.4fr) minmax(0,.6fr);gap:12px}.account-settings-action-block{grid-template-columns:1fr;row-gap:8px}.account-settings-action-block .account-settings-detail-action{grid-column:1;grid-row:auto;justify-self:start}.account-settings-setting-row,.account-settings-alert-row{grid-template-columns:1fr}.account-settings-rule-row{grid-template-columns:repeat(2,minmax(0,1fr))}.account-settings-rule-row>input,.account-settings-rule-row>select:nth-of-type(3),.account-settings-rule-apply,.account-settings-rule-row>.account-settings-row-actions{grid-column:1 / -1}.account-settings-alert-row>.account-settings-row-actions{justify-content:flex-end}.account-settings-choice-grid{grid-template-columns:1fr}}.wc-shell{--wc-graphite: #262223;--wc-paper: var(--moolah-color-brand-canvas, #f3f4f0);--wc-warm: var(--moolah-color-brand-text-on-dark, #f8e9e0);--wc-lavender: var(--moolah-color-accent-soft, #b8c0ee);--wc-ember: var(--moolah-color-milestone, #e65a3a);--wc-rust: var(--moolah-color-decision, #5d181f);--wc-positive: var(--moolah-color-positive, #73d2a3);--wc-paper-ink: #262223;--wc-paper-muted: rgba(38, 34, 35, .62);--wc-paper-line: rgba(38, 34, 35, .12);background:radial-gradient(circle at 14% 18%,rgba(184,192,238,.075),transparent 31%),radial-gradient(circle at 88% 82%,rgba(230,90,58,.04),transparent 26%),#262223;color:var(--wc-warm);color-scheme:dark;font-family:var(--moolah-type-body-family);font-weight:var(--moolah-type-body-weight);min-height:100svh;overflow-x:clip;position:relative;-webkit-font-smoothing:antialiased}.wc-shell *,.wc-shell *:before,.wc-shell *:after{box-sizing:border-box}.wc-shell button,.wc-shell input{color:inherit;font:inherit}.wc-shell button,.wc-shell summary,.wc-shell a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.wc-shell a{color:inherit}.wc-shell button:focus-visible,.wc-shell summary:focus-visible,.wc-shell a:focus-visible{outline:3px solid rgba(184,192,238,.62);outline-offset:3px}.wc-flow-header{align-items:center;border-bottom:1px solid rgba(248,233,224,.08);display:flex;justify-content:space-between;margin:0 auto;min-height:84px;padding:0 clamp(24px,4vw,58px);width:min(100%,1440px)}.wc-brand{align-items:center;color:var(--wc-warm);display:inline-flex;gap:11px;text-decoration:none}.wc-brand .brand-mark{border:1px solid rgba(248,233,224,.1);border-radius:13px;box-shadow:0 12px 24px -18px #000000c7;height:40px;width:40px}.wc-brand-name{color:var(--wc-warm);font-family:var(--moolah-font-display);font-size:17px;font-weight:600;letter-spacing:-.035em}.wc-header-note{align-items:center;color:#f8e9e08c;display:inline-flex;font-size:12px;gap:7px}.wc-header-note svg{color:var(--wc-lavender)}.wc-flow-layout,.wc-success-layout{align-items:start;display:grid;gap:clamp(52px,7vw,108px);grid-template-columns:minmax(340px,.88fr) minmax(460px,1.12fr);margin:0 auto;max-width:1240px;min-height:calc(100svh - 84px);padding:clamp(64px,8vh,92px) 40px 56px}.wc-flow-intro,.wc-success-intro{align-self:start;padding-top:20px;position:sticky;top:110px}.wc-kicker,.wc-card-step{font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.wc-flow-intro>.wc-kicker,.wc-success-intro>.wc-kicker{color:#f2a18c;margin:0 0 18px}.wc-flow-intro h1,.wc-success-intro h1{color:var(--wc-warm);font-family:var(--moolah-font-display);font-size:clamp(48px,5vw,72px);font-weight:600;letter-spacing:-.075em;line-height:.96;margin:0;max-width:620px;text-wrap:balance}.wc-flow-intro>p:not(.wc-kicker),.wc-success-intro>p:not(.wc-kicker){color:#f8e9e09e;font-size:16px;font-weight:300;line-height:1.55;margin:26px 0 0;max-width:500px}.wc-flow-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:48px 0 0;padding:0;position:relative}.wc-flow-progress:before{background:#f8e9e021;content:"";height:1px;left:10%;position:absolute;right:10%;top:16px}.wc-flow-progress li{align-items:center;display:flex;flex-direction:column;gap:9px;min-width:0;position:relative;text-align:center}.wc-flow-progress li>span{align-items:center;background:#262223;border:1px solid rgba(248,233,224,.18);border-radius:50%;color:#f8e9e07a;display:flex;font-size:11px;font-variant-numeric:tabular-nums;font-weight:650;height:33px;justify-content:center;position:relative;width:33px;z-index:1}.wc-flow-progress li>strong{color:#f8e9e06b;font-size:11px;font-weight:550;white-space:nowrap}.wc-flow-progress li.is-complete>span{background:#b8c0ee24;border-color:#b8c0ee61;color:var(--wc-lavender)}.wc-flow-progress li.is-current>span{background:var(--wc-lavender);border-color:var(--wc-lavender);box-shadow:0 0 0 7px #b8c0ee12;color:var(--wc-paper-ink)}.wc-flow-progress li.is-current>strong{color:var(--wc-warm)}.wc-flow-assurances{border-top:1px solid rgba(248,233,224,.08);display:flex;flex-wrap:wrap;gap:11px 20px;margin-top:38px;padding-top:20px}.wc-flow-assurances span{align-items:center;color:#f8e9e08c;display:inline-flex;font-size:12px;gap:7px}.wc-flow-assurances svg{color:var(--wc-lavender)}.wc-stage{align-items:flex-start;display:flex;justify-content:center;min-width:0}.wc-card,.wc-success-card{animation:wc-rise var(--moolah-motion-emphasized) cubic-bezier(.2,.8,.2,1) both;background:var(--wc-paper);border:1px solid rgba(248,233,224,.13);border-radius:34px;box-shadow:10px 26px 38px -24px #040304db,inset 0 1px #ffffff9e;color:var(--wc-paper-ink);color-scheme:light;margin:0 auto;padding:clamp(34px,4vw,48px);text-align:left;width:min(100%,570px)}.wc-card-step{color:var(--wc-rust);margin:0 0 13px}.wc-card h2,.wc-success-card h2{color:var(--wc-paper-ink);font-family:var(--moolah-font-display);font-size:clamp(34px,3.4vw,46px);font-weight:600;letter-spacing:-.065em;line-height:.99;margin:0;text-wrap:balance}.wc-intro{color:var(--wc-paper-muted);font-size:15px;font-weight:300;line-height:1.5;margin:17px 0 30px;max-width:470px}.wc-intro strong{color:var(--wc-paper-ink);font-weight:600}.wc-form{display:grid;gap:20px;text-align:left}.wc-details-shell{display:grid;gap:16px}.wc-detail-row{display:grid;gap:8px}.wc-detail-row>span{color:#262223b8;font-size:12px;font-weight:650}.wc-detail-row input:not([type=checkbox]){background:#ffffffb8;border:1px solid var(--wc-paper-line);border-radius:15px;color:var(--wc-paper-ink);font-size:15px;font-weight:450;height:56px;min-width:0;outline:0;padding:0 16px;width:100%}.wc-detail-row input:not([type=checkbox])::placeholder,.wc-code-input::placeholder{color:#26222359}.wc-detail-row input:not([type=checkbox]):focus,.wc-phone-field:focus-within{border-color:#a6b1ed;box-shadow:0 0 0 3px #a6b1ed38}.wc-phone-field{align-items:center;background:#ffffffb8;border:1px solid var(--wc-paper-line);border-radius:15px;display:grid;grid-template-columns:92px minmax(0,1fr);min-width:0}.wc-phone-field>input:not([type=checkbox]){background:transparent;border:0;border-radius:0 15px 15px 0;box-shadow:none}.wc-country-picker{height:56px;position:relative}.wc-country-picker summary{align-items:center;border-right:1px solid var(--wc-paper-line);color:var(--wc-paper-ink);cursor:pointer;display:flex;font-size:14px;gap:5px;height:56px;justify-content:center;list-style:none}.wc-country-picker summary::-webkit-details-marker{display:none}.wc-country-menu{background:#fff;border:1px solid var(--wc-paper-line);border-radius:16px;box-shadow:0 18px 44px #221d1f24;left:0;min-width:230px;overflow:hidden;padding:6px;position:absolute;top:62px;z-index:5}.wc-country-option{align-items:center;background:transparent;border:0;border-radius:11px;cursor:pointer;display:flex;justify-content:space-between;padding:11px;text-align:left;width:100%}.wc-country-option:hover{background:#f0f1ed}.wc-country-option span{display:grid;gap:2px}.wc-country-option small{color:var(--wc-paper-muted)}.wc-consent-shell,.wc-billing-options{background:#e8e9e5b8;border:1px solid rgba(38,34,35,.08);border-radius:20px}.wc-consent-shell{display:grid;padding:7px 15px}.wc-checkbox{align-items:start;color:var(--wc-paper-muted);cursor:pointer;display:grid;font-size:12.5px;font-weight:350;gap:11px;grid-template-columns:20px minmax(0,1fr);line-height:1.4;min-height:54px;padding:11px 0}.wc-checkbox input{accent-color:#5c69df;height:19px;margin:0;width:19px}.wc-checkbox a{color:var(--wc-paper-ink);font-weight:600;text-underline-offset:2px}.wc-checkbox-optional{border-top:1px solid rgba(38,34,35,.08)}.wc-primary-button,.wc-secondary-button{align-items:center;border-radius:18px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:650;gap:9px;justify-content:center;min-height:56px;padding:0 20px;text-decoration:none;transition:background var(--moolah-motion-fast) ease,box-shadow var(--moolah-motion-fast) ease,transform var(--moolah-motion-fast) ease}.wc-primary-button{background:var(--wc-lavender);border:1px solid var(--wc-lavender);box-shadow:0 12px 24px -17px #262223c2;color:var(--wc-paper-ink)!important}.wc-form .wc-primary-button svg,.wc-plan-card>.wc-primary-button svg{order:2}.wc-primary-button:hover:not(:disabled){background:#c8cff3;box-shadow:0 15px 28px -18px #262223db;transform:translateY(-1px)}.wc-secondary-button{background:transparent;border:1px solid rgba(38,34,35,.16);color:var(--wc-paper-ink)}.wc-secondary-button:hover{background:#2622230b}.wc-form>.wc-primary-button,.wc-plan-card>.wc-primary-button{width:100%}.wc-shell button:disabled,.wc-shell input:disabled{cursor:not-allowed;opacity:.56}.wc-text-button,.wc-back-button{align-items:center;background:transparent;border:0;color:var(--wc-paper-muted);cursor:pointer;display:inline-flex;font-size:12.5px;font-weight:600;gap:6px;justify-content:center;padding:0}.wc-text-button:hover,.wc-back-button:hover{color:var(--wc-paper-ink)}.wc-auth-back{align-items:center;color:#f8e9e094;display:flex;font-size:12.5px;gap:7px;justify-content:center;margin:-24px auto 0;padding:0 20px 42px;text-decoration:none;width:max-content}.wc-auth-back:hover{color:var(--wc-warm)}.wc-fine-print{color:var(--wc-paper-muted);font-size:11.5px;font-weight:350;line-height:1.5;margin:15px 0 0;text-align:center}.wc-fine-print a{color:var(--wc-paper-ink)}.wc-message{border:1px solid;border-radius:13px;font-size:12px;line-height:1.45;margin:0;padding:11px 13px;text-align:left}.wc-message.is-error{background:#c14a4012;border-color:#c14a4047;color:#a23e36}.wc-message.is-warning{background:#94631312;border-color:#9463134d;color:#7e5410}.wc-message.is-success{background:#347a5212;border-color:#347a5242;color:#2d6846}.wc-loading-card{min-height:380px;place-content:center;text-align:center}.wc-loading-card>svg{color:#5c69df}.wc-loading-card h2{font-size:30px;margin-top:20px}.wc-loading-card p{color:var(--wc-paper-muted)}.wc-verify-card .wc-form{margin-top:30px}.wc-code-row{display:grid;gap:10px}.wc-code-control{position:relative}.wc-code-input{background:transparent;border:0;caret-color:transparent;color:transparent;height:100%;inset:0;opacity:.01;outline:0;padding:0;position:absolute;width:100%;z-index:2}.wc-code-slots{display:grid;gap:8px;grid-template-columns:repeat(6,minmax(0,1fr))}.wc-code-slots span{align-items:center;aspect-ratio:1;background:#ffffffb8;border:1px solid var(--wc-paper-line);border-radius:14px;color:var(--wc-paper-ink);display:flex;font-size:18px;font-variant-numeric:tabular-nums;justify-content:center}.wc-code-slots span.is-current{border-color:#8997e5;box-shadow:0 0 0 3px #a6b1ed33}.wc-verify-card>.wc-text-button,.wc-verify-card>.wc-back-button{display:flex;margin:20px auto 0}.wc-verify-card>.wc-back-button{margin-top:14px}.wc-plan-card{width:min(100%,610px)}.wc-plan-heading{margin-bottom:28px}.wc-plan-lede{color:var(--wc-paper-muted);font-size:13px;font-weight:350;line-height:1.35;margin:11px 0 0}.wc-plan-tier{background:#e8e9e5b8;border:1px solid rgba(38,34,35,.08);border-radius:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:4px}.wc-plan-tier button{align-items:center;background:transparent;border:1px solid transparent;border-radius:12px;color:var(--wc-paper-muted);cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:5px;justify-content:center;min-height:44px}.wc-plan-tier button[aria-pressed=true]{background:#fff;border-color:#5c69df40;box-shadow:0 8px 20px -17px #2622238c;color:var(--wc-paper-ink)}.wc-billing-options{display:grid;gap:5px;margin-top:14px;padding:8px}.wc-billing-options>button{align-items:center;background:transparent;border:1px solid transparent;border-radius:15px;cursor:pointer;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto 20px;min-height:68px;padding:9px 11px 9px 12px;text-align:left}.wc-billing-options>button.is-selected{background:#b8c0ee33;border-color:#5c69df3d}.wc-billing-options>button>span:first-child{display:grid;gap:3px}.wc-billing-options strong{font-size:14px;font-weight:650}.wc-billing-options small{color:var(--wc-paper-muted);font-size:11px;font-weight:400}.wc-billing-price{align-items:baseline;display:flex;font-size:14px;font-weight:650;gap:2px;white-space:nowrap}.wc-selection-mark{align-items:center;border:1px solid rgba(38,34,35,.3);border-radius:50%;color:#5c69df;display:flex;height:18px;justify-content:center;width:18px}.is-selected .wc-selection-mark{border-color:#5c69df}.wc-selected-plan-copy{color:var(--wc-paper-muted);font-size:13px;font-weight:350;line-height:1.45;margin:20px 4px 0}.wc-plan-features{display:grid;gap:8px;list-style:none;margin:17px 4px 24px;padding:0}.wc-plan-features li{align-items:center;color:#262223bd;display:flex;font-size:12.5px;gap:8px}.wc-plan-features svg{color:#347a52}.wc-plan-card>.wc-message{margin-bottom:14px}.wc-success-layout{align-items:center}.wc-success-intro{top:112px}.wc-success-card{width:min(100%,600px)}.wc-success-mark{align-items:center;background:var(--wc-lavender);border-radius:50%;color:var(--wc-paper-ink);display:flex;height:58px;justify-content:center;margin:0 0 24px;width:58px}.wc-success-mark.is-inactive{background:#f2c56a;color:#4c3812}.wc-success-copy{color:var(--wc-paper-muted);font-size:14.5px;line-height:1.55;margin:18px 0 24px}.wc-handoff-steps{background:#e8e9e5b8;border:1px solid rgba(38,34,35,.08);border-radius:20px;display:grid;list-style:none;margin:0 0 22px;padding:8px 16px}.wc-handoff-steps li{align-items:center;display:grid;gap:11px;grid-template-columns:27px minmax(0,1fr);min-height:48px}.wc-handoff-steps li+li{border-top:1px solid rgba(38,34,35,.08)}.wc-handoff-steps li>span{align-items:center;background:#b8c0ee4d;border-radius:50%;color:#3f4a9e;display:flex;font-size:10px;font-weight:700;height:24px;justify-content:center;width:24px}.wc-handoff-steps strong{font-size:12.5px;font-weight:600}.wc-success-actions{display:grid;gap:9px;grid-template-columns:repeat(2,minmax(0,1fr));margin:22px 0 20px}.wc-success-card>.wc-text-button{display:flex;margin:0 auto}@keyframes wc-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:820px){.wc-flow-header{min-height:68px;padding:0 20px}.wc-header-note{font-size:11px}.wc-flow-layout,.wc-success-layout{gap:36px;grid-template-columns:minmax(0,1fr);min-height:0;padding:38px 20px 48px}.wc-flow-intro,.wc-success-intro{padding-top:0;position:static}.wc-flow-intro h1,.wc-success-intro h1{font-size:clamp(42px,11vw,54px);max-width:620px}.wc-flow-intro>p:not(.wc-kicker),.wc-success-intro>p:not(.wc-kicker){font-size:15px;margin-top:20px}.wc-flow-progress{margin-top:32px}.wc-flow-assurances{margin-top:28px}.wc-card,.wc-success-card{border-radius:28px;padding:32px}.wc-auth-back{margin-top:-20px}.wc-success-layout{padding-bottom:36px}}@media(max-width:520px){.wc-header-note{display:none}.wc-flow-layout,.wc-success-layout{gap:30px;padding:32px 16px 42px}.wc-flow-intro,.wc-success-intro{padding-inline:4px}.wc-flow-intro h1,.wc-success-intro h1{font-size:clamp(40px,11.5vw,48px)}.wc-flow-progress li>strong{font-size:10px}.wc-flow-assurances{gap:10px 16px}.wc-card,.wc-success-card{border-radius:26px;padding:28px 22px}.wc-card h2,.wc-success-card h2{font-size:clamp(32px,9.4vw,40px)}.wc-intro{margin-bottom:26px}.wc-code-slots{gap:5px}.wc-code-slots span{border-radius:11px;font-size:16px}.wc-billing-options>button{grid-template-columns:minmax(0,1fr) auto 18px;padding-inline:9px}.wc-billing-price{font-size:13px}.wc-success-actions{grid-template-columns:1fr}.wc-auth-back{margin-top:-18px;padding-bottom:34px}}@media(prefers-reduced-motion:reduce){.wc-card,.wc-success-card{animation:none}.wc-primary-button,.wc-secondary-button,.wc-plan-tier button{transition:none}}:root,[data-moolah-theme=light]{--moolah-design-contract-version: 12;--moolah-font-display: "Google Sans Code", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--moolah-font-body: "Stack Sans Text", Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--moolah-type-page-title-family: var(--moolah-font-display);--moolah-type-page-title-weight: 500;--moolah-type-section-title-family: var(--moolah-font-body);--moolah-type-section-title-weight: 500;--moolah-type-metric-family: var(--moolah-font-body);--moolah-type-metric-weight: 500;--moolah-type-body-family: var(--moolah-font-body);--moolah-type-body-weight: 300;--moolah-type-secondary-family: var(--moolah-font-body);--moolah-type-secondary-weight: 300;--moolah-type-label-family: var(--moolah-font-body);--moolah-type-label-weight: 500;--moolah-color-canvas: #F7F7F9;--moolah-color-surface: #FFFFFF;--moolah-color-surface-muted: #F1F2F5;--moolah-color-raised-surface: #FFFFFF;--moolah-color-control: #F1F2F5;--moolah-color-disabled-control: #C7C9D0;--moolah-color-primary-text: #191A1F;--moolah-color-secondary-text: #62656F;--moolah-color-line: #DADCE3;--moolah-color-accent: #5C69DF;--moolah-color-accent-soft: #A6B1ED;--moolah-color-on-accent-soft: #191A1F;--moolah-color-brand-canvas: #F3F4F0;--moolah-color-brand-text-on-dark: #F8E9E0;--moolah-color-decision: #5D181F;--moolah-color-milestone: #E65A3A;--moolah-color-positive: #347A52;--moolah-color-warning: #946313;--moolah-color-negative: #C14A40;--moolah-color-income: #A85D13;--moolah-color-spending: #27737B;--moolah-color-surplus: #4A8A65;--moolah-color-deficit: #C14A40;--moolah-color-forecast: #BBC7C8;--moolah-space-xs: 4px;--moolah-space-sm: 8px;--moolah-space-md: 12px;--moolah-space-lg: 16px;--moolah-space-xl: 20px;--moolah-space-xxl: 24px;--moolah-space-xxxl: 32px;--moolah-space-section: 40px;--moolah-radius-control: 12px;--moolah-radius-panel: 18px;--moolah-radius-prominent: 22px;--moolah-radius-floating: 16px;--moolah-radius-pill: 999px;--moolah-motion-fast: .16s;--moolah-motion-standard: .24s;--moolah-motion-emphasized: .36s}:root[data-theme=dark],[data-moolah-theme=dark]{--moolah-color-canvas: #181818;--moolah-color-surface: #1E1E1E;--moolah-color-surface-muted: #262626;--moolah-color-raised-surface: #242424;--moolah-color-control: #202020;--moolah-color-disabled-control: #4F4F4F;--moolah-color-primary-text: #F4F7FB;--moolah-color-secondary-text: #A8AAB5;--moolah-color-line: #FFFFFF1A;--moolah-color-accent: #B8C0EE;--moolah-color-accent-soft: #B8C0EE;--moolah-color-on-accent-soft: #191A1F;--moolah-color-brand-canvas: #F3F4F0;--moolah-color-brand-text-on-dark: #F8E9E0;--moolah-color-decision: #5D181F;--moolah-color-milestone: #E65A3A;--moolah-color-positive: #73D2A3;--moolah-color-warning: #FFB864;--moolah-color-negative: #FF9B94;--moolah-color-income: #E7C97D;--moolah-color-spending: #68B9C2;--moolah-color-surplus: #7BBE9A;--moolah-color-deficit: #F2A39B;--moolah-color-forecast: #616F89}@font-face{font-family:Google Sans Code;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/GoogleSansCode-Bold-B1uOEeuA.ttf) format("truetype")}@font-face{font-family:Google Sans Code;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/GoogleSansCode-Medium-_H7hGw2G.ttf) format("truetype")}.cs7-page{width:min(1480px,100%);margin:0 auto;padding-bottom:64px}@media(min-width:781px){.app-content:has(>.cs7-page.timeline-mode){overflow:hidden;padding-bottom:30px}.cs7-page.timeline-mode{display:flex;height:100%;min-height:0;flex-direction:column;padding-bottom:0}.cs7-page.timeline-mode .cs7-header{flex:0 0 auto}.cs7-page.timeline-mode .cs7-timeline-workspace{display:flex;min-height:0;flex:1 1 auto}.cs7-page.timeline-mode .cs7-timeline-scroll{display:flex;height:100%;max-height:none;flex:1 1 auto;flex-direction:column}.cs7-page.timeline-mode .cs7-timeline-chart{flex:1 0 330px}.cs7-page.timeline-mode .cs7-timeline-table{flex:0 0 auto}}.cs7-page button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.cs7-page input:focus-visible,.cs7-page select:focus-visible{outline:var(--moolah-input-focus-width) solid var(--focus-ring);outline-offset:0}.cs7-header,.cs7-workspace-heading,.cs7-category-section>header,.cs7-trend-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.cs7-header{margin-bottom:12px}.cs7-heading{max-width:760px}.cs7-title-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.cs7-heading h1{margin:0;font-family:var(--moolah-type-page-title-family);font-size:30px;font-weight:var(--moolah-type-page-title-weight);letter-spacing:0;line-height:1.15}.cs7-workspace-heading p,.cs7-chart-summary,.cs7-reconciliation-card p,.cs7-attention-card p,.cs7-panel-section>p,.cs7-helper{color:var(--text-muted);line-height:1.55}.cs7-workspace-heading p{margin:0}.cs7-header-actions,.cs7-chart-legend,.cs7-filter-row,.cs7-category-manager-tools,.cs7-panel-actions,.cs7-treatment-actions{display:flex;align-items:center;gap:10px}.cs7-header-actions{flex:0 0 auto}.cs7-snapshot-period{display:grid;height:38px;grid-template-columns:36px minmax(108px,auto) 36px;align-items:center;overflow:hidden;border:1px solid var(--line);border-radius:13px;background:var(--surface-muted);color:var(--text)}.cs7-snapshot-period button{display:grid;width:36px;height:36px;place-items:center;padding:0;border:0;background:transparent;color:var(--text-muted)}.cs7-snapshot-period button:hover{background:var(--surface-raised);color:var(--text)}.cs7-snapshot-period span{min-width:0;padding:0 8px;overflow:hidden;font-size:12px;font-weight:500;text-align:center;text-overflow:ellipsis;white-space:nowrap}.cs7-panel-header button{display:grid;width:44px;min-height:44px;place-items:center;border:0;background:transparent;color:var(--text-muted)}.cs7-panel-header button:hover{color:var(--accent)}.cs7-segmented{display:inline-flex;min-width:max-content;gap:3px;padding:4px;border:1px solid var(--line);border-radius:13px;background:var(--surface-muted)}.cs7-segmented button{min-height:44px;padding:0 14px;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-size:13px;font-weight:500}.cs7-segmented button.selected{background:var(--surface-raised);box-shadow:0 2px 9px #14181b14;color:var(--text)}.cs7-tabs{display:flex;gap:5px;margin:22px 0;padding-bottom:1px;border-bottom:1px solid var(--line)}.cs7-tabs button{display:inline-flex;min-height:46px;align-items:center;gap:8px;margin-bottom:-1px;padding:0 16px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text-muted);font-weight:500}.cs7-tabs button.selected{border-bottom-color:var(--accent);color:var(--accent)}.cs7-tabs button>span{display:grid;min-width:22px;height:22px;place-items:center;border-radius:999px;background:var(--warning-soft);color:var(--warning);font-size:11px}.cs7-notice{display:flex;align-items:center;gap:9px;margin:-8px 0 16px;padding:11px 14px;border:1px solid color-mix(in srgb,var(--positive) 24%,var(--line));border-radius:12px;background:var(--positive-soft);color:var(--positive);font-size:13px;font-weight:500}.cs7-snapshot-workspace{container-type:inline-size}.cs7-snapshot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:16px}.cs7-snapshot-column{display:grid;min-width:0;align-content:start;gap:16px}.cs7-snapshot-kpi,.cs7-snapshot-panel{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--surface-translucent);box-shadow:var(--shadow)}.cs7-snapshot-kpi{--cs7-snapshot-accent: var(--accent);display:flex;min-height:142px;flex-direction:column;padding:15px 16px 12px}.cs7-snapshot-kpi.income{--cs7-snapshot-accent: var(--income)}.cs7-snapshot-kpi.spending{--cs7-snapshot-accent: var(--spending)}.cs7-snapshot-kpi.surplus{--cs7-snapshot-accent: var(--chart-saved)}.cs7-snapshot-kpi.surplus:has(>strong.negative){--cs7-snapshot-accent: var(--chart-deficit)}.cs7-snapshot-kpi>header,.cs7-snapshot-kpi>footer,.cs7-snapshot-panel>header{display:flex;align-items:center}.cs7-snapshot-kpi>header{gap:8px;color:var(--text-muted)}.cs7-snapshot-kpi>header span{display:grid;place-items:center}.cs7-snapshot-kpi>header small{font-size:11.5px;font-weight:300}.cs7-snapshot-kpi>strong{margin-top:16px;overflow:hidden;font-family:var(--moolah-type-metric-family);font-size:clamp(29px,3vw,38px);font-variant-numeric:tabular-nums;font-weight:500;letter-spacing:-.045em;line-height:1;text-overflow:ellipsis;white-space:nowrap}.cs7-snapshot-kpi>strong.negative{color:var(--negative)}.cs7-snapshot-kpi>footer{gap:9px;margin-top:auto;padding-top:10px}.cs7-snapshot-kpi>footer span{padding:4px 9px;border-radius:999px;background:color-mix(in srgb,var(--cs7-snapshot-accent) 16%,transparent);color:var(--cs7-snapshot-accent);font-size:10.5px;font-weight:500}.cs7-snapshot-kpi>footer small{min-width:0;overflow:hidden;color:var(--text-muted);font-size:10.5px;font-weight:300;text-overflow:ellipsis;white-space:nowrap}.cs7-snapshot-panel{--cs7-snapshot-progress-color: var(--chart-saved);--cs7-snapshot-progress-track: color-mix(in srgb, var(--chart-saved) 15%, transparent);padding:16px}.cs7-snapshot-panel.income{--cs7-snapshot-progress-color: var(--income);--cs7-snapshot-progress-track: var(--income-soft)}.cs7-snapshot-panel.spending{--cs7-snapshot-progress-color: var(--spending);--cs7-snapshot-progress-track: var(--spending-soft)}.cs7-snapshot-panel>header{justify-content:space-between;gap:12px;margin-bottom:16px}.cs7-snapshot-panel>header h2{display:flex;min-width:0;align-items:center;gap:6px;margin:0;font-size:15px;font-weight:500}.cs7-snapshot-panel>header h2 svg{flex:0 0 auto;color:var(--text-muted)}.cs7-snapshot-panel>header>strong{flex:0 0 auto;font-family:var(--moolah-type-metric-family);font-size:12px;font-variant-numeric:tabular-nums;font-weight:500;white-space:nowrap}.cs7-snapshot-panel>header>strong span{color:var(--text-muted);font-size:10.5px;font-weight:450}.cs7-snapshot-category-list,.cs7-snapshot-transaction-list{display:grid;gap:9px}.cs7-snapshot-category-row{--cs7-snapshot-progress: 0%;position:relative;display:grid;width:100%;min-height:55px;grid-template-columns:30px minmax(0,1fr) max-content 14px;align-items:center;gap:8px;padding:7px 10px 10px;overflow:hidden;border:1px solid var(--clickable-shell-border);border-radius:13px;background:var(--clickable-shell-fill);color:var(--text);text-align:left}.cs7-snapshot-category-row:before,.cs7-snapshot-category-row:after{position:absolute;right:0;bottom:0;left:0;height:5px;content:""}.cs7-snapshot-category-row:before{background:var(--cs7-snapshot-progress-track)}.cs7-snapshot-category-row:after{right:auto;width:var(--cs7-snapshot-progress);background:var(--cs7-snapshot-progress-color)}.cs7-snapshot-category-row.overspent:before{background:color-mix(in srgb,var(--negative) 18%,transparent)}.cs7-snapshot-category-row.overspent:after{background:var(--negative)}.cs7-snapshot-category-row:hover,.cs7-snapshot-transaction-row:hover{border-color:var(--clickable-shell-border);background:var(--clickable-shell-hover-fill)}.cs7-snapshot-category-icon{display:grid;width:30px;height:30px;place-items:center;border-radius:9px;background:var(--surface-raised);font-size:18px}.cs7-snapshot-category-copy,.cs7-snapshot-transaction-row>span:nth-child(2){display:grid;min-width:0;gap:2px}.cs7-snapshot-category-copy strong,.cs7-snapshot-transaction-row strong,.cs7-snapshot-transaction-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cs7-snapshot-category-copy strong{font-size:11.5px;font-weight:500}.cs7-snapshot-category-total{display:flex;align-items:baseline;gap:3px;font-family:var(--moolah-type-metric-family);font-variant-numeric:tabular-nums;white-space:nowrap}.cs7-snapshot-category-total strong{font-size:10.5px;font-weight:500}.cs7-snapshot-category-total small{color:var(--text-muted);font-size:9.5px;font-weight:300}.cs7-snapshot-category-row>svg{color:var(--text-muted)}.cs7-snapshot-count{display:grid;min-width:24px;height:24px;place-items:center;padding:0 7px;border-radius:999px;background:var(--negative-soft);color:var(--negative);font-size:10.5px;font-weight:500}.cs7-snapshot-transaction-row{display:grid;width:100%;min-height:55px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 9px;border:1px solid var(--clickable-shell-border);border-radius:13px;background:var(--clickable-shell-fill);color:var(--text);text-align:left}.cs7-snapshot-transaction-row .cs7-direction-icon{width:28px;height:28px;border-radius:9px}.cs7-snapshot-transaction-row>span:nth-child(2) strong{font-size:11px;font-weight:500}.cs7-snapshot-transaction-row>span:nth-child(2) small{color:var(--text-muted);font-size:8.5px}.cs7-snapshot-transaction-row>strong{max-width:78px;font-family:var(--moolah-type-metric-family);font-size:10.5px;font-variant-numeric:tabular-nums;font-weight:500;text-align:right}.cs7-snapshot-transaction-row>strong.positive{color:var(--positive)}.cs7-snapshot-empty{margin:24px 8px 12px;color:var(--text-muted);font-size:11px;line-height:1.45;text-align:center}@container (max-width: 940px){.cs7-snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (max-width: 560px){.cs7-snapshot-grid{grid-template-columns:1fr}}.cs7-overview-grid{display:grid;grid-template-columns:minmax(0,1fr) 290px;align-items:start;gap:20px}.cs7-overview-main,.cs7-group-list,.cs7-attention-rail,.cs7-manager-list,.cs7-panel-form{display:grid;gap:16px}.cs7-hero-card,.cs7-trend-card,.cs7-category-section,.cs7-attention-card,.cs7-reconciliation-card,.cs7-workspace-card{border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow)}.cs7-hero-card{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(420px,1.1fr);gap:24px;padding:26px;overflow:hidden;background:radial-gradient(circle at 12% 0%,var(--accent-soft),transparent 38%),var(--surface)}.cs7-hero-copy>span,.cs7-trend-card header>div>span,.cs7-category-section>header>div>span,.cs7-workspace-heading>div>span,.cs7-panel-section header span,.cs7-panel-header>div>span{color:var(--text-muted);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.cs7-hero-copy>strong{display:block;margin:7px 0 8px;font-family:var(--moolah-type-metric-family);font-size:40px;line-height:1}.cs7-hero-copy>strong.negative,.cs7-transaction-amount strong:not(.positive){color:var(--negative)}.cs7-hero-copy>p{max-width:520px;margin:0;color:var(--text-muted);line-height:1.5}.cs7-summary-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-content:center;gap:10px}.cs7-summary-metric{display:flex;min-width:0;gap:10px;padding:14px;border:1px solid var(--line);border-radius:15px;background:var(--surface-translucent)}.cs7-summary-metric>span{display:grid;width:34px;height:34px;flex:0 0 auto;place-items:center;border-radius:10px;background:var(--accent-soft);color:var(--accent)}.cs7-summary-metric>span svg{width:17px}.cs7-summary-metric>div{display:grid;min-width:0}.cs7-summary-metric small,.cs7-summary-metric em{color:var(--text-muted);font-size:11px;font-style:normal}.cs7-summary-metric strong{margin:2px 0;font-family:var(--moolah-type-metric-family);font-size:16px}.cs7-trend-card,.cs7-category-section,.cs7-workspace-card{padding:22px}.cs7-trend-card h2,.cs7-category-section h2,.cs7-attention-card h2,.cs7-reconciliation-card h2,.cs7-workspace-heading h2,.cs7-panel-section h3{margin:2px 0 0;font-size:20px;letter-spacing:0}.cs7-chart-legend{color:var(--text-muted);font-size:12px}.cs7-chart-legend span:before{display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:999px;content:""}.cs7-chart-legend .actual:before,.cs7-trend-bars .actual{background:var(--accent)}.cs7-chart-legend .forecast:before,.cs7-trend-bars .forecast{background:var(--chart-forecast)}.cs7-trend-chart{display:grid;height:210px;grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:7px;margin-top:22px;padding-top:10px;border-bottom:1px solid var(--line-strong)}.cs7-trend-column{display:grid;height:100%;grid-template-rows:minmax(0,1fr) 26px;align-items:end;gap:6px;text-align:center}.cs7-trend-column small{color:var(--text-muted);font-size:10px}.cs7-trend-bars{display:flex;height:100%;align-items:end;justify-content:center;gap:2px}.cs7-trend-bars span{width:min(12px,43%);min-height:3px;border-radius:5px 5px 1px 1px}.cs7-chart-summary{margin:12px 0 0;font-size:12px}.cs7-category-section>header{align-items:center;margin-bottom:16px}.cs7-group-card{overflow:hidden;border:1px solid var(--line);border-radius:17px;background:var(--surface-muted)}.cs7-group-card>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 16px;border-bottom:1px solid var(--line)}.cs7-group-card>header>div{display:flex;align-items:center;gap:10px}.cs7-group-card h3{margin:0;font-size:15px}.cs7-group-card header small,.cs7-category-tile small,.cs7-manager-row small,.cs7-mini-transactions small,.cs7-rule-row small{color:var(--text-muted);font-size:11px}.cs7-group-card header strong{font-family:var(--moolah-type-metric-family);font-size:13px}.cs7-group-card header strong span{color:var(--text-muted);font-weight:500}.cs7-group-emoji,.cs7-category-emoji{display:grid;flex:0 0 auto;place-items:center}.cs7-group-emoji{width:36px;height:36px;border-radius:11px;background:var(--surface-raised);font-size:21px}.cs7-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line)}.cs7-category-tile{display:grid;min-height:72px;grid-template-columns:40px minmax(0,1fr) auto 18px;align-items:center;gap:11px;padding:12px 14px;border:0;background:var(--surface);color:var(--text);text-align:left}.cs7-category-tile:hover,.cs7-manager-row:hover,.cs7-transaction-row:hover{background:var(--surface-muted)}.cs7-category-emoji{width:40px;height:40px;border:1px solid var(--line);border-radius:12px;background:var(--surface-muted);font-size:23px}.cs7-category-tile>span:nth-child(2),.cs7-manager-row>span:nth-child(2){display:grid;min-width:0}.cs7-category-tile strong,.cs7-category-tile small,.cs7-manager-row strong,.cs7-manager-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cs7-category-values{display:grid;justify-items:end;font-family:var(--moolah-type-metric-family)}.cs7-attention-card,.cs7-reconciliation-card{padding:18px}.cs7-attention-card{border-color:color-mix(in srgb,var(--warning) 32%,var(--line));background:linear-gradient(145deg,var(--warning-soft),var(--surface) 70%)}.cs7-attention-card header{display:flex;align-items:flex-start;gap:10px;color:var(--warning)}.cs7-attention-card header h2,.cs7-attention-card header span{color:var(--text)}.cs7-attention-card header span{font-size:11px}.cs7-attention-card .primary-button{width:100%}.cs7-reconciliation-card dl{display:grid;gap:10px;margin:16px 0}.cs7-reconciliation-card dl div{display:flex;justify-content:space-between;gap:12px;padding-bottom:9px;border-bottom:1px solid var(--line)}.cs7-reconciliation-card dt{color:var(--text-muted);font-size:12px}.cs7-reconciliation-card dd{margin:0;font-family:var(--moolah-type-metric-family);font-size:12px}.cs7-workspace-card{min-height:520px}.cs7-workspace-heading{align-items:center;margin-bottom:20px}.cs7-transaction-tools{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px}.cs7-search{display:flex;width:min(360px,100%);min-height:44px;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--line-strong);border-radius:12px;background:var(--surface-muted);color:var(--text-muted)}.cs7-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 var(--moolah-input-focus-width) var(--focus-ring)}.cs7-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text)}.cs7-filter-row{flex-wrap:wrap;justify-content:flex-end}.cs7-filter-row button{min-height:36px;padding:0 11px;border:1px solid var(--line);border-radius:999px;background:var(--surface-muted);color:var(--text-muted);font-size:12px;font-weight:500}.cs7-filter-row button.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.cs7-transaction-table{overflow:hidden;border:1px solid var(--line);border-radius:15px}.cs7-transaction-head,.cs7-transaction-row{display:grid;grid-template-columns:minmax(260px,2fr) minmax(150px,1fr) minmax(125px,.8fr) minmax(100px,.65fr);align-items:center;gap:16px}.cs7-transaction-head{min-height:42px;padding:0 16px;background:var(--surface-muted);color:var(--text-muted);font-size:11px;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.cs7-transaction-row{width:100%;min-height:68px;padding:10px 16px;border:0;border-top:1px solid var(--line);background:var(--surface);color:var(--text);text-align:left}.cs7-transaction-row>strong{display:flex;align-items:center;gap:8px;justify-self:end;font-family:var(--moolah-type-metric-family)}.cs7-disclosure-icon{flex:0 0 auto;color:var(--text-muted)}.cs7-transaction-row .positive,.cs7-transaction-amount .positive{color:var(--positive)}.cs7-transaction-description{display:flex;min-width:0;align-items:center;gap:11px}.cs7-transaction-description>span:last-child{display:grid;min-width:0}.cs7-transaction-description strong,.cs7-transaction-description small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cs7-transaction-description small{color:var(--text-muted);font-size:11px}.cs7-direction-icon{display:grid;width:36px;height:36px;flex:0 0 auto;place-items:center;border-radius:11px}.cs7-direction-icon.in{background:var(--positive-soft);color:var(--positive)}.cs7-direction-icon.out{background:var(--spending-soft);color:var(--spending)}.cs7-status-pill{display:inline-flex;width:fit-content;min-height:25px;align-items:center;gap:5px;padding:0 8px;border-radius:999px;background:var(--surface-muted);color:var(--text-muted);font-size:10px;font-weight:500;white-space:nowrap}.cs7-status-pill.accent{background:var(--accent-soft);color:var(--accent)}.cs7-status-pill.attention{background:var(--warning-soft);color:var(--warning)}.cs7-status-pill.positive{background:var(--positive-soft);color:var(--positive)}.cs7-category-manager-tools{justify-content:space-between;margin-bottom:15px}.cs7-check{display:flex;min-height:44px;align-items:center;gap:8px;color:var(--text-muted);font-size:13px}.cs7-check input{width:18px;height:18px;accent-color:var(--accent)}.cs7-manager-list{gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:15px;background:var(--line)}.cs7-manager-row{display:grid;min-height:66px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 14px;border:0;background:var(--surface);color:var(--text);text-align:left}.cs7-manager-row>span:last-child{display:flex;align-items:center;justify-content:flex-end;gap:7px}.cs7-manager-row.archived{opacity:.67}.cs7-empty{display:grid;min-height:200px;place-items:center;align-content:center;gap:5px;padding:24px;color:var(--text-muted);text-align:center}.cs7-empty.compact{min-height:130px}.cs7-empty p{margin:0;font-size:12px}.cs7-overlay{position:fixed;z-index:80;inset:0;display:flex;justify-content:flex-end}.cs7-overlay-scrim{position:absolute;inset:0;width:100%;border:0;background:var(--scrim)}.cs7-detail-panel{position:relative;z-index:1;display:grid;width:min(520px,calc(100vw - 20px));height:100%;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border-left:1px solid var(--line);background:var(--surface-raised);box-shadow:-20px 0 50px #0000002e}.cs7-panel-header{display:flex;min-height:76px;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border-bottom:1px solid var(--line)}.cs7-panel-header h2{margin:2px 0 0;font-size:23px;letter-spacing:0}.cs7-panel-scroll,.cs7-panel-form{overflow-y:auto;padding:18px}.cs7-panel-summary{display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:13px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--surface-muted)}.cs7-panel-summary .cs7-category-emoji{width:56px;height:56px;font-size:28px}.cs7-panel-summary>span:nth-child(2){display:grid}.cs7-panel-summary>span:nth-child(2) small{color:var(--text-muted);font-size:11px}.cs7-panel-summary>span:last-child{display:grid;justify-items:end;font-family:var(--moolah-type-metric-family)}.cs7-panel-summary>span:last-child small{color:var(--text-muted);font-size:10px}.cs7-panel-actions{flex-wrap:wrap;margin:14px 0}.cs7-panel-section{display:grid;gap:12px;padding:18px 0;border-top:1px solid var(--line)}.cs7-panel-section header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.cs7-rule-row,.cs7-mini-transactions>div,.cs7-suggestion,.cs7-safety-card{border:1px solid var(--line);border-radius:14px;background:var(--surface-muted)}.cs7-rule-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px}.cs7-rule-row>div:first-child,.cs7-mini-transactions>div>span:first-child{display:grid}.cs7-rule-row>div:last-child{display:flex;align-items:center;gap:8px}.cs7-rule-row>div:last-child>strong{font-family:var(--moolah-type-metric-family);font-size:13px}.cs7-rule-row>div:last-child>button{display:grid;width:38px;min-height:38px;place-items:center;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text-muted)}.cs7-inline-rule-form{display:grid;grid-column:1 / -1;grid-template-columns:minmax(130px,.8fr) minmax(170px,1.2fr) auto;align-items:end;gap:9px;padding-top:11px;border-top:1px solid var(--line)}.cs7-inline-rule-form label,.cs7-field{display:grid;gap:6px;color:var(--text-muted);font-size:12px;font-weight:500}.cs7-inline-rule-form input,.cs7-inline-rule-form select,.cs7-field input,.cs7-field select{width:100%;min-height:44px;padding:0 11px;border:1px solid var(--line-strong);border-radius:11px;background:var(--surface);color:var(--text)}.cs7-field small{color:var(--text-muted);font-size:11px;font-weight:400;line-height:1.45}.cs7-money-input{display:grid;grid-template-columns:26px minmax(0,1fr);align-items:center;overflow:hidden;border:1px solid var(--line-strong);border-radius:11px;background:var(--surface)}.cs7-money-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 var(--moolah-input-focus-width) var(--focus-ring)}.cs7-money-input>span{padding-left:11px;color:var(--text-muted)}.cs7-money-input input{border:0;outline:0;box-shadow:none}.moolah-compact-form-group>.cs7-field,.moolah-compact-form-group>label{display:grid;min-height:52px;grid-template-columns:minmax(104px,.48fr) minmax(0,1fr);align-items:center;gap:14px;padding:6px 12px 6px 14px;font-size:11px}.moolah-compact-form-group>.cs7-field+.cs7-field,.moolah-compact-form-group>label+label{border-top:.5px solid color-mix(in srgb,var(--line) 66%,transparent)}.moolah-compact-form-group>.cs7-field>:is(input,select),.moolah-compact-form-group>label>:is(input,select),.moolah-compact-form-group .cs7-money-input{min-height:40px;border:0;border-radius:9px;background:transparent}.moolah-compact-form-group>.cs7-field>small{grid-column:2}.cs7-inline-rule-form.moolah-compact-form{grid-template-columns:minmax(0,1fr) auto;align-items:end}.cs7-mini-transactions{display:grid;gap:8px}.cs7-mini-transactions>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 12px}.cs7-mini-transactions strong:last-child{font-family:var(--moolah-type-metric-family);font-size:12px}.cs7-transaction-amount{display:grid;justify-items:center;gap:7px;padding:28px 18px}.cs7-transaction-amount>span{color:var(--text-muted);font-size:12px}.cs7-transaction-amount>strong{font-family:var(--moolah-type-metric-family);font-size:36px}.cs7-suggestion,.cs7-safety-card{display:flex;align-items:flex-start;gap:11px;margin-bottom:14px;padding:13px}.cs7-suggestion>svg,.cs7-safety-card>svg{flex:0 0 auto;color:var(--accent)}.cs7-suggestion>div,.cs7-safety-card>div{display:grid;min-width:0;flex:1}.cs7-suggestion span,.cs7-safety-card p{margin:2px 0 0;color:var(--text-muted);font-size:11px;line-height:1.45}.cs7-suggestion button{min-height:36px;padding:0 11px;border:0;border-radius:9px;background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:500}.cs7-treatment-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.cs7-treatment-actions button,.cs7-direction-choice button{display:flex;min-height:48px;align-items:center;justify-content:center;gap:8px;padding:8px 10px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--text-muted);font-size:12px;font-weight:500}.cs7-treatment-actions button:hover,.cs7-direction-choice button:hover,.cs7-direction-choice button.selected{border-color:var(--accent);color:var(--accent)}.cs7-direction-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;border:0}.cs7-direction-choice legend{grid-column:1 / -1;margin-bottom:6px;color:var(--text-muted);font-size:12px;font-weight:500}.cs7-setting-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.cs7-setting-options.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.cs7-setting-options button{display:flex;min-height:92px;align-items:flex-start;gap:9px;padding:13px;border:1px solid var(--line);border-radius:13px;background:var(--surface-muted);color:var(--text-muted);text-align:left}.cs7-setting-options button.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.cs7-setting-options button>svg{flex:0 0 auto}.cs7-setting-options button span{display:grid;gap:3px}.cs7-setting-options button small{color:var(--text-muted);font-size:11px;font-weight:400;line-height:1.4}.cs7-view-switch{display:inline-flex;min-width:max-content;gap:3px;padding:3px;border:1px solid var(--line);border-radius:13px;background:var(--surface-muted)}.cs7-view-switch button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:7px;padding:0 12px;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-size:13px;font-weight:500}.cs7-view-switch button.selected{background:var(--surface-raised);box-shadow:0 2px 9px color-mix(in srgb,var(--text) 8%,transparent);color:var(--accent)}.cs7-timeline-workspace{--cs7-timeline-label-width: 230px;--cs7-timeline-period-width: 78px;--cs7-timeline-total-width: 90px;--cs7-timeline-shell: var(--surface);--cs7-timeline-surface: var(--surface);--cs7-timeline-raised: var(--surface-raised);--cs7-timeline-line: var(--line);overflow:hidden;border:1px solid var(--cs7-timeline-line);border-radius:20px;background:var(--cs7-timeline-shell);box-shadow:var(--shadow)}:root[data-theme=dark] .cs7-timeline-workspace{--cs7-timeline-shell: color-mix(in srgb, var(--canvas) 86%, var(--surface));--cs7-timeline-surface: color-mix(in srgb, var(--canvas) 72%, var(--surface));--cs7-timeline-raised: color-mix(in srgb, var(--canvas) 60%, var(--surface-raised));--cs7-timeline-line: color-mix(in srgb, var(--line) 72%, transparent)}.cs7-timeline-workspace.moolah-data-surface{border-color:var(--cs7-timeline-line);background:var(--cs7-timeline-shell)}.cs7-timeline-scroll{width:100%;max-width:100%;max-height:max(560px,calc(100dvh - 245px));overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.cs7-timeline-scroll:focus-visible{outline:3px solid var(--focus-ring);outline-offset:-3px}.cs7-timeline-chart{position:relative;display:grid;width:calc(var(--cs7-timeline-label-width) + var(--cs7-timeline-period-width) * 12 + var(--cs7-timeline-total-width));min-width:100%;height:330px;grid-template-columns:var(--cs7-timeline-label-width) repeat(12,var(--cs7-timeline-period-width)) var(--cs7-timeline-total-width);overflow:visible;border-bottom:1px solid var(--cs7-timeline-line);background:linear-gradient(180deg,color-mix(in srgb,var(--cs7-timeline-raised) 46%,transparent),transparent 78%),var(--cs7-timeline-surface)}.cs7-timeline-chart-summary{position:sticky;left:0;z-index:4;display:flex;min-width:0;grid-column:1;align-items:flex-start;flex-direction:column;padding:18px 20px;background:transparent}.cs7-timeline-chart-summary>span,.cs7-timeline-chart-summary small{color:var(--text-muted);font-size:11px;font-weight:500}.cs7-timeline-chart-summary>strong{margin-top:4px;font-family:var(--moolah-type-metric-family);font-size:26px;font-variant-numeric:tabular-nums;letter-spacing:-.035em}.cs7-timeline-chart-summary .positive{color:var(--positive)}.cs7-timeline-chart-summary .negative{color:var(--negative)}.cs7-timeline-chart-summary>div{display:grid;width:100%;gap:2px;margin-top:auto;padding:9px 10px;border:1px solid color-mix(in srgb,var(--positive) 16%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--positive) 5%,transparent)}.cs7-timeline-chart-summary>div b{overflow:visible;font-family:var(--moolah-type-metric-family);font-size:12px;font-variant-numeric:tabular-nums;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.cs7-timeline-chart-summary>button{min-height:32px;margin-top:8px;padding:0;border:0;background:transparent;color:var(--accent);font-size:11px;font-weight:500;text-align:left}.cs7-timeline-chart-plot{position:relative;min-width:0;grid-column:2 / span 12;overflow:hidden}.cs7-timeline-chart-plot svg{position:absolute;inset:34px 0 30px;width:100%;height:calc(100% - 64px)}.cs7-timeline-zero-line{stroke:color-mix(in srgb,var(--text-muted) 36%,transparent);stroke-width:1;vector-effect:non-scaling-stroke}.cs7-timeline-selected-band{fill:color-mix(in srgb,var(--accent) 8%,transparent)}.cs7-timeline-bar{vector-effect:non-scaling-stroke}.cs7-timeline-bar.saving{fill:color-mix(in srgb,var(--positive) 66%,transparent)}.cs7-timeline-bar.overspent{fill:color-mix(in srgb,var(--negative) 68%,transparent)}.cs7-timeline-bar.forecast{opacity:.54}.cs7-timeline-line{fill:none;stroke:var(--accent);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.25;vector-effect:non-scaling-stroke}.cs7-timeline-line.forecast{opacity:.72;stroke-dasharray:7 7}.cs7-timeline-point{fill:var(--accent);stroke:var(--cs7-timeline-surface);stroke-width:1.5;vector-effect:non-scaling-stroke}.cs7-timeline-point.forecast{opacity:.7}.cs7-timeline-chart-targets{position:absolute;inset:0;display:grid;grid-template-columns:repeat(12,minmax(0,1fr))}.cs7-timeline-chart-targets button{min-width:0;border:0;background:transparent}.cs7-timeline-chart-targets button:focus-visible{border-radius:9px;outline:3px solid var(--focus-ring);outline-offset:-4px}.cs7-timeline-chart-tooltip{position:absolute;top:9px;z-index:2;display:grid;min-width:100px;gap:1px;padding:6px 9px;border:1px solid var(--cs7-timeline-line);border-radius:10px;background:color-mix(in srgb,var(--cs7-timeline-raised) 96%,transparent);box-shadow:0 8px 24px color-mix(in srgb,var(--text) 12%,transparent);pointer-events:none;transform:translate(-50%)}.cs7-timeline-chart-tooltip span,.cs7-timeline-chart-tooltip small{color:var(--text-muted);font-size:9px}.cs7-timeline-chart-tooltip strong{font-family:var(--moolah-type-metric-family);font-size:12px;font-variant-numeric:tabular-nums}.cs7-timeline-chart-tools{position:sticky;right:0;z-index:4;display:flex;min-width:0;grid-column:14;align-items:flex-end;justify-content:space-between;flex-direction:column;padding:16px 12px 18px 8px;background:transparent}.cs7-timeline-chart-tools>div:first-child{display:flex;gap:4px}.cs7-timeline-chart-tools button{display:grid;width:32px;height:32px;place-items:center;padding:0;border:1px solid var(--cs7-timeline-line);border-radius:9px;background:transparent;color:var(--text-muted)}.cs7-timeline-chart-tools button.selected{border-color:var(--line-strong);background:var(--cs7-timeline-raised);color:var(--text)}.cs7-timeline-chart-legend{display:grid;gap:5px}.cs7-timeline-chart-legend span{display:flex;align-items:center;gap:5px;color:var(--text-muted);font-size:9px;white-space:nowrap}.cs7-timeline-chart-legend span:before{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:var(--text-muted);content:""}.cs7-timeline-chart-legend .saved:before{background:var(--positive)}.cs7-timeline-chart-legend .overspent:before{background:var(--negative)}.cs7-timeline-chart-legend .actual:before,.cs7-timeline-chart-legend .forecast:before{width:12px;height:0;border-top:2px solid var(--accent);border-radius:0;background:transparent}.cs7-timeline-chart-legend .forecast:before{border-top-style:dashed}.cs7-timeline-table{width:calc(var(--cs7-timeline-label-width) + var(--cs7-timeline-period-width) * 12 + var(--cs7-timeline-total-width));min-width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.cs7-timeline-table th,.cs7-timeline-table td{min-width:var(--cs7-timeline-period-width);width:var(--cs7-timeline-period-width);height:44px;padding:6px;border-bottom:1px solid color-mix(in srgb,var(--cs7-timeline-line) 70%,transparent);background:var(--cs7-timeline-surface);text-align:center;vertical-align:middle}.cs7-timeline-table th:first-child,.cs7-timeline-table td:first-child{position:sticky;left:0;z-index:3;min-width:var(--cs7-timeline-label-width);width:var(--cs7-timeline-label-width);text-align:left}.cs7-timeline-table th:last-child,.cs7-timeline-table td:last-child{min-width:var(--cs7-timeline-total-width);width:var(--cs7-timeline-total-width)}.cs7-timeline-table thead th{position:sticky;top:0;z-index:5;height:36px;padding:0;background:color-mix(in srgb,var(--cs7-timeline-raised) 94%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 1px 0 var(--line)}.cs7-timeline-table thead th:first-child{z-index:7;padding:0 12px 0 20px;white-space:nowrap}.cs7-timeline-table thead th:first-child>span,.cs7-timeline-table thead .cs7-timeline-total>span{font-size:12px;font-weight:500}.cs7-timeline-table thead th>button{display:grid;width:100%;height:100%;place-content:center;padding:4px;border:0;background:transparent;color:var(--text);text-align:center}.cs7-timeline-table thead th>button>span{max-width:calc(var(--cs7-timeline-period-width) - 8px);overflow:hidden;font-size:10px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.cs7-timeline-size-toggle{display:inline-grid!important;width:26px!important;height:26px!important;min-height:26px;margin-left:7px;place-items:center!important;padding:0!important;border:1px solid var(--line)!important;border-radius:8px;color:var(--text-muted)!important;vertical-align:middle}.cs7-timeline-size-toggle:hover{border-color:var(--line-strong)!important;background:var(--surface-muted)!important;color:var(--text)!important}.cs7-timeline-table .selected{background:color-mix(in srgb,var(--accent) 7%,var(--cs7-timeline-surface))}.cs7-timeline-table thead th.selected{box-shadow:inset 0 -2px 0 var(--accent);color:var(--accent)}.cs7-timeline-table .cs7-timeline-total{position:sticky;right:0;z-index:4;background:color-mix(in srgb,var(--cs7-timeline-raised) 94%,var(--cs7-timeline-surface))}.cs7-timeline-table thead .cs7-timeline-total{z-index:7;padding:6px}.cs7-timeline-value{display:grid;justify-items:center;gap:1px}.cs7-timeline-value strong,.cs7-timeline-rule-row td>strong,.cs7-timeline-rule-row td button>strong{font-family:var(--moolah-type-metric-family);font-size:12px;font-variant-numeric:tabular-nums;font-weight:500;white-space:nowrap}.cs7-timeline-value small{color:color-mix(in srgb,var(--text-muted) 78%,transparent);font-size:9px;font-weight:450;white-space:nowrap}.cs7-timeline-value.plan-only{gap:0}.cs7-timeline-value.plan-only small{color:var(--text-muted);font-weight:500}.cs7-timeline-value.negative strong{color:var(--negative)}.cs7-timeline-root-row th,.cs7-timeline-root-row td{background:color-mix(in srgb,var(--text) 3%,var(--cs7-timeline-surface));border-top:1px solid color-mix(in srgb,var(--cs7-timeline-line) 86%,transparent);border-bottom-color:color-mix(in srgb,var(--cs7-timeline-line) 86%,transparent)}.cs7-timeline-root-row th,.cs7-timeline-group-row th,.cs7-timeline-subcategory-row th{padding:0}.cs7-timeline-root-row th>button,.cs7-timeline-group-row th>button,.cs7-timeline-subcategory-row th>button{display:flex;width:100%;min-height:44px;align-items:center;gap:6px;border:0;background:transparent;color:var(--text);text-align:left}.cs7-timeline-root-row th>button{height:58px;padding:0 10px 0 12px}.cs7-timeline-root-row th>button strong{font-size:14px;font-weight:500;letter-spacing:.01em}.cs7-timeline-root-row.spending th,.cs7-timeline-root-row.spending td{background:color-mix(in srgb,var(--text) 3.6%,var(--cs7-timeline-surface))}.cs7-timeline-group-row th,.cs7-timeline-group-row td{background:color-mix(in srgb,var(--text) 1.7%,var(--cs7-timeline-surface))}.cs7-timeline-group-row th>button{height:54px;padding:0 10px 0 28px}.cs7-timeline-group-row th>button>span{width:18px;flex:0 0 auto;font-size:15px;text-align:center}.cs7-timeline-group-row th>button strong{overflow:hidden;color:color-mix(in srgb,var(--text) 80%,var(--text-muted));font-size:12.5px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.cs7-timeline-subcategory-row th,.cs7-timeline-subcategory-row td{background:color-mix(in srgb,var(--text) 1.1%,var(--cs7-timeline-surface))}.cs7-timeline-subcategory-row th>button{height:54px;padding:0 10px 0 var(--timeline-indent)}.cs7-timeline-root-row th>button:hover,.cs7-timeline-group-row th>button:hover,.cs7-timeline-subcategory-row th>button:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}.cs7-timeline-disclosure{flex:0 0 auto;color:var(--text-muted);transform:rotate(0);transition:transform .16s ease}.cs7-timeline-root-row th>button[aria-expanded=true] .cs7-timeline-disclosure,.cs7-timeline-group-row th>button[aria-expanded=true] .cs7-timeline-disclosure,.cs7-timeline-subcategory-row th>button[aria-expanded=true] .cs7-timeline-disclosure{transform:rotate(90deg)}.cs7-timeline-category-emoji{width:20px;flex:0 0 auto;font-size:20px;text-align:center}.cs7-timeline-subcategory-row th>button>span:last-child,.cs7-timeline-rule-row th>span{display:grid;min-width:0}.cs7-timeline-subcategory-row th strong,.cs7-timeline-rule-row th strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.cs7-timeline-subcategory-row th small,.cs7-timeline-rule-row th small{overflow:hidden;color:var(--text-muted);font-size:9px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.cs7-timeline-rule-row th,.cs7-timeline-rule-row td{height:52px;background:color-mix(in srgb,var(--surface-translucent) 34%,var(--cs7-timeline-surface))}.cs7-timeline-rule-row th{padding:0 8px 0 var(--timeline-indent)}.cs7-timeline-rule-row th>span{width:calc(100% - 28px)}.cs7-timeline-rule-edit{position:absolute;top:14px;right:8px;display:grid;width:24px;height:24px;place-items:center;padding:0;border:1px solid color-mix(in srgb,var(--accent) 42%,var(--line));border-radius:50%;background:color-mix(in srgb,var(--accent) 12%,var(--cs7-timeline-surface));color:var(--accent);opacity:0}.cs7-timeline-rule-row:hover .cs7-timeline-rule-edit,.cs7-timeline-rule-row:focus-within .cs7-timeline-rule-edit{opacity:1}.cs7-timeline-rule-row td{padding:3px;color:color-mix(in srgb,var(--text-muted) 72%,transparent);text-align:center}.cs7-timeline-rule-row td>button{display:inline-flex;width:100%;min-height:44px;align-items:center;justify-content:center;padding:0 4px;border:1px solid color-mix(in srgb,var(--line) 82%,transparent);border-radius:8px;background:color-mix(in srgb,var(--cs7-timeline-raised) 48%,transparent);color:var(--text)}.cs7-timeline-rule-row td>button:hover{border-color:color-mix(in srgb,var(--accent) 48%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--cs7-timeline-raised))}.cs7-timeline-add-rule-row th,.cs7-timeline-add-rule-row td{height:52px;background:var(--cs7-timeline-surface)}.cs7-timeline-add-rule-row th{padding:0}.cs7-timeline-add-rule-row th>button{display:flex;width:100%;min-height:52px;align-items:center;gap:7px;padding:0 8px 0 var(--timeline-indent);border:0;background:transparent;color:var(--accent);font-size:11px;font-weight:500;text-align:left}.cs7-timeline-add-rule-row th>button:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}.cs7-timeline-ungrouped{display:flex;height:54px;align-items:center;padding-left:50px;color:color-mix(in srgb,var(--text) 78%,var(--text-muted));font-size:12.5px;font-weight:500}.cs7-timeline-table tfoot th,.cs7-timeline-table tfoot td{position:sticky;bottom:0;z-index:5;border-top:1px solid var(--line-strong);border-bottom:0;background:var(--cs7-timeline-raised);box-shadow:0 -1px 0 var(--cs7-timeline-line)}.cs7-timeline-table tfoot th{padding-left:20px;font-size:12px;font-weight:500}.cs7-timeline-table tfoot th:first-child,.cs7-timeline-table tfoot .cs7-timeline-total{z-index:7}.cs7-scope-options{display:grid;gap:8px;margin:0;padding:0;border:0}.cs7-scope-options legend{margin-bottom:8px;color:var(--text);font-size:13px;font-weight:500}.cs7-scope-options button{display:flex;min-height:68px;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--surface-muted);color:var(--text-muted);text-align:left}.cs7-scope-options button.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.cs7-scope-options button>svg{flex:0 0 auto}.cs7-scope-options button>span{display:grid;gap:3px}.cs7-scope-options button small{color:var(--text-muted);font-size:11px;font-weight:400;line-height:1.4}.cs7-summary-word{text-transform:capitalize}@media(max-width:1180px){.cs7-overview-grid{grid-template-columns:1fr}.cs7-attention-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.cs7-hero-card{grid-template-columns:1fr}}@media(max-width:880px){.cs7-header,.cs7-transaction-tools,.cs7-workspace-heading{align-items:stretch;flex-direction:column}.cs7-header-actions,.cs7-search{width:100%}.cs7-header-actions{display:grid;grid-template-columns:minmax(0,1fr) auto auto}.cs7-view-switch{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}.cs7-view-switch button{min-width:0}.cs7-filter-row{justify-content:flex-start}.cs7-summary-metrics,.cs7-category-grid{grid-template-columns:1fr}.cs7-transaction-head{display:none}.cs7-transaction-row{grid-template-columns:minmax(0,1fr) auto;gap:5px 12px}.cs7-transaction-row>span:nth-child(2),.cs7-transaction-row>span:nth-child(3){grid-column:1;padding-left:47px}.cs7-transaction-row>strong{grid-column:2;grid-row:1}.cs7-timeline-workspace{--cs7-timeline-label-width: 218px;--cs7-timeline-period-width: 78px;--cs7-timeline-total-width: 86px}}@media(max-width:680px){.app-content:has(>.cs7-page){padding:18px 14px 40px}.cs7-heading h1{font-size:38px}.cs7-header-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.cs7-header-actions>.secondary-button{width:100%}.cs7-view-switch{grid-column:1 / -1}.cs7-view-switch button{min-height:44px}.cs7-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}.cs7-tabs button{min-width:0;justify-content:center;gap:5px;padding:0 4px;font-size:12px}.cs7-hero-card,.cs7-trend-card,.cs7-category-section,.cs7-workspace-card{padding:17px;border-radius:17px}.cs7-trend-chart{height:180px;gap:3px}.cs7-trend-column small{font-size:9px}.cs7-category-section>header,.cs7-group-card>header,.cs7-category-manager-tools{align-items:stretch;flex-direction:column}.cs7-category-tile{grid-template-columns:40px minmax(0,1fr)}.cs7-category-values{grid-column:2;justify-items:start}.cs7-attention-rail{grid-template-columns:1fr}.cs7-transaction-row{padding:11px}.cs7-manager-row{grid-template-columns:42px minmax(0,1fr)}.cs7-manager-row>span:last-child{grid-column:2;justify-content:flex-start}.cs7-detail-panel{width:100%;height:min(92dvh,820px);margin-top:auto;border-top:1px solid var(--line);border-left:0;border-radius:22px 22px 0 0}.cs7-inline-rule-form,.cs7-setting-options,.cs7-setting-options.compact,.cs7-treatment-actions{grid-template-columns:1fr}.cs7-panel-summary{grid-template-columns:48px minmax(0,1fr)}.cs7-panel-summary>span:last-child{grid-column:2;justify-items:start}.cs7-timeline-scroll{max-height:70vh}.cs7-timeline-chart{height:280px}}@media(prefers-reduced-motion:reduce){.cs7-page *,.cs7-page *:before,.cs7-page *:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.dashboard-compass-card{position:relative;display:grid;width:100%;min-width:0;max-width:100%;grid-template-columns:minmax(0,1fr) auto;gap:14px 24px;padding:18px 20px 15px;border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.dashboard-compass-card.tone-positive{border-left-color:var(--positive)}.dashboard-compass-card.tone-warning{border-left-color:var(--warning)}.dashboard-compass-card.tone-negative{border-left-color:var(--negative)}.dashboard-compass-copy{min-width:0;max-width:820px}.dashboard-compass-header,.dashboard-compass-eyebrow,.dashboard-compass-status,.dashboard-compass-actions,.dashboard-compass-rhythm,.dashboard-compass-rhythm-label,.dashboard-compass-rhythm ol,.dashboard-compass-rhythm li{display:flex;align-items:center}.dashboard-compass-header{flex-wrap:wrap;gap:8px 10px}.dashboard-compass-eyebrow{gap:7px;color:var(--accent);font-size:12px;font-weight:500;letter-spacing:.025em}.dashboard-compass-status{gap:6px;min-height:28px;padding:0 9px;border:1px solid var(--line);border-radius:999px;background:var(--surface-muted);color:var(--text);font-size:11px;font-weight:500}.dashboard-compass-card.tone-positive .dashboard-compass-status{border-color:color-mix(in srgb,var(--positive) 35%,var(--line));background:var(--positive-soft);color:var(--positive)}.dashboard-compass-card.tone-warning .dashboard-compass-status{border-color:color-mix(in srgb,var(--warning) 35%,var(--line));background:var(--warning-soft);color:var(--warning)}.dashboard-compass-card.tone-negative .dashboard-compass-status{border-color:color-mix(in srgb,var(--negative) 35%,var(--line));background:var(--negative-soft);color:var(--negative)}.dashboard-compass-copy h2{margin:7px 0 3px;color:var(--text);font-size:18px;letter-spacing:0;line-height:1.3}.dashboard-compass-copy>p,.dashboard-compass-popover p{color:var(--text-muted);line-height:1.5}.dashboard-compass-copy>p{max-width:780px;margin:0;font-size:12px}.dashboard-compass-actions{align-self:center;gap:6px}.dashboard-compass-action{min-height:44px;padding:0 15px;white-space:nowrap;text-decoration:none}.dashboard-compass-info{position:relative}.dashboard-compass-info>summary,.dashboard-compass-learn{display:grid;width:44px;height:44px;place-items:center;border:1px solid var(--line);border-radius:12px;background:var(--surface-muted);color:var(--text-muted);cursor:pointer}.dashboard-compass-info>summary{list-style:none}.dashboard-compass-info>summary::-webkit-details-marker{display:none}.dashboard-compass-info>summary:hover,.dashboard-compass-learn:hover{border-color:var(--accent);color:var(--accent)}.dashboard-compass-info>summary:focus-visible,.dashboard-compass-learn:focus-visible,.dashboard-compass-action:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.dashboard-compass-popover{position:absolute;z-index:20;top:calc(100% + 8px);right:0;width:min(320px,calc(100vw - 40px));padding:14px 15px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-strong, 0 18px 45px rgba(0, 0, 0, .16))}.dashboard-compass-popover strong{color:var(--text);font-size:13px}.dashboard-compass-popover p{margin:5px 0 10px;font-size:12px}.dashboard-compass-source{color:var(--text-muted);font-size:10px}.dashboard-compass-source.stale{color:var(--warning)}.dashboard-compass-rhythm{grid-column:1 / -1;min-width:0;gap:14px;padding-top:12px;border-top:1px solid var(--line)}.dashboard-compass-rhythm-label{flex:0 0 auto;gap:6px;color:var(--text-muted);font-size:11px;font-weight:500}.dashboard-compass-rhythm ol{min-width:0;flex:1;gap:10px;margin:0;padding:0;color:var(--text-muted);list-style:none}.dashboard-compass-rhythm li{gap:6px;font-size:11px}.dashboard-compass-rhythm li:not(:last-child):after{margin-left:4px;color:var(--line-strong);content:"→"}.dashboard-compass-rhythm li>span{width:7px;height:7px;border:1px solid var(--line-strong);border-radius:50%;background:var(--surface)}.dashboard-compass-rhythm li.current{color:var(--text);font-weight:500}.dashboard-compass-rhythm li.current>span{border-color:var(--accent);background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}@media(max-width:760px){.dashboard-compass-card{grid-template-columns:1fr;gap:14px;padding:16px}.dashboard-compass-actions{width:100%;min-width:0}.dashboard-compass-action{min-width:0;flex:1;justify-content:center;text-align:center;white-space:normal}.dashboard-compass-popover{right:-50px;width:min(300px,calc(100vw - 56px))}.dashboard-compass-rhythm{grid-column:auto;align-items:flex-start;flex-direction:column;gap:9px}.dashboard-compass-rhythm ol{display:grid;width:100%;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.dashboard-compass-rhythm li{min-width:0;flex-direction:column;align-items:flex-start;gap:5px;font-size:10px}.dashboard-compass-rhythm li:not(:last-child):after{display:none}}.dashboard-compass-card{position:fixed;z-index:80;right:24px;bottom:24px;display:grid;width:min(320px,calc(100vw - 48px));grid-template-columns:1fr;justify-items:start;gap:9px;padding:16px 52px 16px 16px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-strong, 0 18px 48px rgba(0, 0, 0, .18))}.dashboard-compass-card.tone-positive,.dashboard-compass-card.tone-warning,.dashboard-compass-card.tone-negative{border-left-color:var(--line)}.dashboard-compass-card>h2{margin:0;color:var(--text);font-size:14px;letter-spacing:0;line-height:1.35}.dashboard-compass-close{position:absolute;top:8px;right:8px;display:grid;width:44px;height:44px;place-items:center;padding:0;border:0;border-radius:11px;background:transparent;color:var(--text-muted)}.dashboard-compass-close:hover{background:var(--surface-muted);color:var(--text)}.dashboard-compass-action{display:inline-flex;min-height:36px;align-items:center;gap:6px;margin-top:2px;padding:0;background:transparent;color:var(--accent);font-size:12px;font-weight:500;text-decoration:none}.dashboard-compass-action:hover{text-decoration:underline;text-underline-offset:3px}.dashboard-compass-close:focus-visible,.dashboard-compass-action:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}@media(max-width:760px){.dashboard-compass-card{right:16px;bottom:16px;width:calc(100vw - 32px);gap:8px;padding:14px 50px 14px 14px}}@font-face{font-family:Stack Sans Text;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/StackSansText-Variable-DjxiitzZ.ttf) format("truetype")}:root{font-family:var(--moolah-font-body);color:var(--moolah-color-primary-text);background:var(--moolah-color-canvas);font-synthesis:none;text-rendering:optimizeLegibility;--canvas: var(--moolah-color-canvas);--surface: var(--moolah-color-surface);--surface-muted: var(--moolah-color-surface-muted);--surface-raised: var(--moolah-color-raised-surface);--control: var(--moolah-color-control);--text: var(--moolah-color-primary-text);--text-muted: var(--moolah-color-secondary-text);--line: var(--moolah-color-line);--line-strong: color-mix(in srgb, var(--moolah-color-primary-text) 22%, var(--moolah-color-line));--accent: var(--moolah-color-accent);--accent-soft: color-mix(in srgb, var(--moolah-color-accent-soft) 18%, transparent);--positive: var(--moolah-color-positive);--positive-soft: color-mix(in srgb, var(--moolah-color-positive) 12%, transparent);--income: var(--moolah-color-income);--income-soft: color-mix(in srgb, var(--moolah-color-income) 12%, transparent);--spending: var(--moolah-color-spending);--spending-soft: color-mix(in srgb, var(--moolah-color-spending) 12%, transparent);--negative: var(--moolah-color-negative);--negative-soft: color-mix(in srgb, var(--moolah-color-negative) 12%, transparent);--warning: var(--moolah-color-warning);--warning-soft: color-mix(in srgb, var(--moolah-color-warning) 12%, transparent);--chart-saved: var(--moolah-color-surplus);--chart-deficit: var(--moolah-color-deficit);--chart-line: var(--moolah-color-accent);--chart-forecast: var(--moolah-color-forecast);--surface-translucent: rgba(255, 255, 255, .74);--surface-glass: rgba(255, 255, 255, .95);--sidebar-surface: color-mix( in srgb, var(--moolah-color-surface) 86%, var(--moolah-color-surface-muted) );--sidebar-hover: rgba(255, 255, 255, .72);--sidebar-active: color-mix(in srgb, var(--accent) 16%, transparent);--sidebar-active-border: #d8dcfb;--scrim: rgba(18, 20, 26, .52);--chart-highlight: rgba(20, 24, 27, .045);--focus-ring: rgba(79, 92, 204, .32);--selected-text: #ffffff;--primary-hover: #2c3135;--skeleton-sheen: rgba(255, 255, 255, .58);--shadow: 0 14px 34px rgba(20, 24, 27, .06);--radius: var(--moolah-radius-panel);--sidebar-width: 80px;--flutter-canvas: var(--canvas);--flutter-surface: var(--surface);--flutter-row: var(--surface-muted);--flutter-row-hover: #f4f1ec;--flutter-border: var(--line);--flutter-border-strong: var(--line-strong);--flutter-text: var(--text);--flutter-muted: var(--text-muted);--flutter-subtle: #86898c;--flutter-purple: var(--accent);--flutter-purple-soft: var(--accent-soft);--flutter-teal: var(--spending);--flutter-teal-track: var(--spending-soft);--flutter-yellow: var(--income);--flutter-yellow-track: var(--income-soft);--flutter-green: var(--positive);--flutter-green-soft: var(--positive-soft);--flutter-red: var(--negative);--flutter-red-track: var(--negative-soft);--widget-shell-fill: rgba(255, 255, 255, .4);--widget-shell-border: rgba(255, 255, 255, .52);--display-shell-fill: var(--widget-shell-fill);--display-shell-border: var(--widget-shell-border);--clickable-shell-fill: color-mix(in srgb, var(--control) 72%, transparent);--clickable-shell-border: color-mix(in srgb, var(--widget-shell-border) 72%, transparent);--clickable-shell-hover-fill: color-mix(in srgb, #ffffff 48%, var(--clickable-shell-fill));--clickable-shell-selected-fill: color-mix(in srgb, var(--accent) 16%, transparent);--clickable-shell-selected-border: color-mix(in srgb, var(--accent) 28%, var(--widget-shell-border));color-scheme:light}:root[data-theme=dark]{color:var(--moolah-color-primary-text);background:var(--moolah-color-canvas);--canvas: var(--moolah-color-canvas);--surface: var(--moolah-color-surface);--surface-muted: var(--moolah-color-surface-muted);--surface-raised: var(--moolah-color-raised-surface);--control: var(--moolah-color-control);--text: var(--moolah-color-primary-text);--text-muted: var(--moolah-color-secondary-text);--line: var(--moolah-color-line);--line-strong: color-mix(in srgb, var(--moolah-color-primary-text) 18%, transparent);--accent: var(--moolah-color-accent);--accent-soft: color-mix(in srgb, var(--moolah-color-accent-soft) 20%, transparent);--positive: var(--moolah-color-positive);--positive-soft: color-mix(in srgb, var(--moolah-color-positive) 16%, transparent);--income: var(--moolah-color-income);--income-soft: color-mix(in srgb, var(--moolah-color-income) 15%, transparent);--spending: var(--moolah-color-spending);--spending-soft: color-mix(in srgb, var(--moolah-color-spending) 14%, transparent);--negative: var(--moolah-color-negative);--negative-soft: color-mix(in srgb, var(--moolah-color-negative) 16%, transparent);--warning: var(--moolah-color-warning);--warning-soft: color-mix(in srgb, var(--moolah-color-warning) 14%, transparent);--chart-saved: var(--moolah-color-surplus);--chart-deficit: var(--moolah-color-deficit);--chart-line: var(--moolah-color-accent);--chart-forecast: var(--moolah-color-forecast);--surface-translucent: color-mix(in srgb, var(--moolah-color-surface) 82%, transparent);--surface-glass: color-mix(in srgb, var(--moolah-color-raised-surface) 96%, transparent);--sidebar-surface: color-mix( in srgb, var(--moolah-color-canvas) 68%, var(--moolah-color-surface-muted) );--sidebar-hover: rgba(255, 255, 255, .055);--sidebar-active: color-mix(in srgb, var(--accent) 18%, transparent);--sidebar-active-border: #414662;--scrim: rgba(0, 0, 0, .62);--chart-highlight: rgba(255, 255, 255, .055);--focus-ring: rgba(142, 156, 255, .4);--selected-text: #15161a;--primary-hover: #dedde3;--skeleton-sheen: rgba(255, 255, 255, .05);--shadow: 0 18px 42px rgba(0, 0, 0, .26);--flutter-canvas: var(--canvas);--flutter-surface: var(--surface);--flutter-row: var(--surface-muted);--flutter-row-hover: #303036;--flutter-border: #29292e;--flutter-border-strong: #36363c;--flutter-text: var(--text);--flutter-muted: #a7a5af;--flutter-subtle: #74727c;--flutter-purple: #8e9cff;--flutter-purple-soft: #30344f;--flutter-teal: #67cad2;--flutter-teal-track: #29484d;--flutter-yellow: #e6c96f;--flutter-yellow-track: #554e36;--flutter-green: #69bd8e;--flutter-green-soft: #294539;--flutter-red: #f29494;--flutter-red-track: #513538;--widget-shell-fill: rgba(255, 255, 255, .02);--widget-shell-border: rgba(255, 255, 255, .06);--display-shell-fill: var(--widget-shell-fill);--display-shell-border: var(--widget-shell-border);--clickable-shell-fill: color-mix(in srgb, var(--control) 68%, var(--surface-muted));--clickable-shell-border: var(--widget-shell-border);--clickable-shell-hover-fill: color-mix(in srgb, #ffffff 5.5%, var(--clickable-shell-fill));--clickable-shell-selected-fill: color-mix(in srgb, var(--accent) 18%, transparent);--clickable-shell-selected-border: color-mix(in srgb, var(--accent) 30%, var(--widget-shell-border));color-scheme:dark}*{box-sizing:border-box}html{min-width:320px;background:var(--canvas)}body{min-width:320px;min-height:100dvh;margin:0;background:var(--canvas);color:var(--text)}button,input,textarea{font:inherit}button{touch-action:manipulation}button:not(:disabled),input[type=month]{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:var(--moolah-input-focus-width) solid var(--focus-ring);outline-offset:0}button:disabled{cursor:not-allowed}.animated-money,[data-animated-money=true]{font-variant-numeric:tabular-nums}h1,h2,p{margin-top:0}h1{font-family:var(--moolah-type-page-title-family)}.eyebrow{margin-bottom:8px;color:var(--accent);font-size:12px;font-weight:500;letter-spacing:.1em;line-height:1.2;text-transform:uppercase}.brand-mark{display:grid;width:58px;height:58px;flex:0 0 auto;overflow:hidden;place-items:center;border-radius:18px;box-shadow:0 12px 24px #14181b24}.brand-mark img{display:block;width:100%;height:100%;object-fit:cover}.brand-mark-compact{width:34px;height:34px;border-radius:10px;box-shadow:none;font-size:16px}.primary-button,.secondary-button,.text-button,.icon-button{min-height:44px;border-radius:12px;transition:background .16s ease,border-color .16s ease,color .16s ease,opacity .16s ease}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 18px;border:1px solid transparent;font-weight:500}.primary-button{background:var(--text);color:var(--canvas)}.primary-button:hover:not(:disabled){background:var(--primary-hover)}.primary-button:disabled{opacity:.48}.secondary-button{border-color:var(--line-strong);background:var(--surface);color:var(--text)}.secondary-button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.text-button{padding:0 12px;border:0;background:transparent;color:var(--accent);font-weight:500}.text-button:hover:not(:disabled){background:var(--accent-soft)}.icon-button{display:grid;width:44px;height:44px;flex:0 0 auto;place-items:center;border:1px solid var(--line);background:var(--surface);color:var(--text-muted)}.icon-button:hover:not(:disabled){border-color:var(--line-strong);color:var(--text)}.icon-button:disabled{opacity:.52}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-canvas{--auth-background: var(--moolah-blue-lavender-dark, #b8c0ee);--auth-foreground: var(--moolah-graphite, #262223);--auth-secondary: color-mix(in srgb, var(--auth-foreground) 72%, var(--auth-background));--auth-control: color-mix(in srgb, var(--auth-foreground) 6%, var(--auth-background));--auth-control-strong: color-mix(in srgb, var(--auth-foreground) 10%, var(--auth-background));--auth-border: color-mix(in srgb, var(--auth-foreground) 18%, var(--auth-background));--auth-focus: var(--auth-foreground);position:relative;display:grid;grid-template-rows:minmax(0,1fr) auto;min-height:100dvh;padding:88px 24px 20px;overflow-x:hidden;background:var(--auth-background);color:var(--auth-foreground);color-scheme:light}.auth-content{display:grid;width:100%;place-items:center;padding:0 0 32px}.auth-wordmark{position:absolute;top:28px;left:32px}.brand-wordmark{display:block;width:82px;height:22px;color:var(--auth-foreground)}.brand-wordmark-shape{display:block;width:100%;height:100%;background:currentColor;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}.auth-panel{display:grid;width:min(100%,350px);justify-items:stretch;text-align:center}.auth-login-panel,.auth-verification-panel{min-height:434px;align-content:start}.auth-brand-hand{display:block;width:76px;height:76px;margin:0 auto 30px;color:var(--auth-foreground)}.auth-brand-hand-shape{display:block;width:100%;height:100%;background:currentColor;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}.auth-panel h1{margin-bottom:12px;color:var(--auth-foreground);font-size:clamp(30px,3.5vw,36px);font-weight:var(--moolah-type-page-title-weight);letter-spacing:0;line-height:1.08}.auth-description{margin:0;color:var(--auth-secondary);font-size:14px;font-weight:300;line-height:1.55}.auth-form{display:grid;gap:10px;margin-top:30px;text-align:left}.auth-form>label{color:var(--auth-foreground);font-size:13px;font-weight:500}.auth-compact-group{display:grid;overflow:hidden;border:1px solid var(--auth-border);border-radius:16px;background:var(--auth-control)}.auth-compact-group:has(.phone-country-picker[open]){overflow:visible}.auth-compact-row{display:grid;min-width:0;min-height:58px;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:10px;padding:5px 10px 5px 14px}.auth-compact-row>label{color:var(--auth-secondary);font-size:12px;font-weight:500}.auth-phone-row{grid-template-columns:minmax(0,1fr);gap:0;padding:5px 8px}.auth-compact-row:focus-within{box-shadow:inset var(--moolah-input-focus-width) 0 0 var(--auth-focus)}.phone-field{display:grid;grid-template-columns:auto minmax(0,1fr);min-height:58px;align-items:center;margin-bottom:2px;border:1px solid var(--auth-border);border-radius:22px;background:var(--auth-control);transition:border-color var(--moolah-motion-fast) ease,background var(--moolah-motion-fast) ease}.auth-compact-row .phone-field,.auth-compact-row .oauth-phone-field{min-height:48px;margin:0;border:0;border-radius:0;background:transparent}.phone-field:focus-within{border-width:.5px;border-color:var(--auth-focus);background:var(--auth-control-strong);box-shadow:none}.phone-country-picker{position:relative;align-self:stretch}.phone-country-picker summary{display:flex;min-width:58px;height:100%;min-height:56px;align-items:center;justify-content:center;gap:2px;padding:0 9px;border-right:0;color:var(--auth-secondary);cursor:pointer;font-size:15px;list-style:none;border-radius:22px 0 0 22px}.auth-compact-row .phone-country-picker summary{min-height:48px;border-radius:0}.phone-country-picker summary::-webkit-details-marker{display:none}.phone-country-picker summary svg{transition:transform var(--moolah-motion-fast) ease}.phone-country-picker[open] summary{background:var(--auth-control)}.phone-country-picker[open] summary svg{transform:rotate(180deg)}.phone-country-flag{font-family:system-ui,sans-serif;font-size:20px;line-height:1}.phone-country-menu{position:absolute;z-index:40;top:calc(100% + 8px);left:0;display:grid;width:230px;gap:3px;padding:7px;border:1px solid var(--auth-border);border-radius:18px;background:color-mix(in srgb,var(--auth-background) 92%,var(--auth-foreground));box-shadow:0 18px 40px color-mix(in srgb,var(--auth-foreground) 18%,transparent)}.phone-country-option{display:grid;grid-template-columns:26px minmax(0,1fr) 18px;min-height:48px;align-items:center;gap:10px;padding:0 12px;border:0;border-radius:12px;background:transparent;color:var(--auth-foreground);text-align:left}.phone-country-option-flag{font-family:system-ui,sans-serif;font-size:20px;line-height:1}.phone-country-option:hover,.phone-country-option:focus-visible{background:var(--auth-control)}.phone-country-option-label{display:grid;min-width:0;gap:2px}.phone-country-option strong{font-size:13px;font-weight:500}.phone-country-option small{color:var(--auth-secondary);font-size:12px;font-variant-numeric:tabular-nums}.phone-country-option svg{color:var(--auth-focus)}.phone-field input{width:100%;min-width:0;min-height:56px;padding:0 16px;border:0;outline:0;background:transparent;color:var(--auth-foreground);font-size:16px;font-weight:500}.auth-compact-row .phone-field input{min-height:48px;padding:0 8px}.phone-field input::placeholder{color:var(--auth-secondary)}.code-input-shell{position:relative;width:min(100%,372px);margin:0 auto 2px}.auth-compact-row .code-input-shell{width:100%;margin:0}.code-input-cells{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.code-input-cells span{display:grid;aspect-ratio:1;place-items:center;border:1px solid var(--auth-border);border-radius:12px;background:var(--auth-control);color:var(--auth-foreground);font-size:22px;font-variant-numeric:tabular-nums;font-weight:500;transition:border-color var(--moolah-motion-fast) ease,background var(--moolah-motion-fast) ease}.code-input-cells span.is-current{border-width:.5px;border-color:var(--auth-focus);background:var(--auth-control-strong);box-shadow:none}.code-input{position:absolute;inset:0;width:100%;border:0;outline:0;opacity:0;cursor:text}.form-error{margin:0;color:#651f2b;font-size:13px;font-weight:500;line-height:1.45;text-align:center}.moolah-compact-form{display:grid;gap:14px}.moolah-compact-form-group{display:grid;gap:0;overflow:hidden;border:.5px solid var(--display-shell-border);border-radius:var(--moolah-radius-control, 12px);background:color-mix(in srgb,var(--surface-muted) 32%,transparent)}.moolah-compact-form-contents{display:contents}.moolah-compact-form-group>label,.moolah-compact-form-row{display:grid;min-width:0;min-height:52px;grid-template-columns:minmax(104px,.48fr) minmax(0,1fr);align-items:center;gap:14px;padding:6px 12px 6px 14px;color:var(--text)}.moolah-compact-form-group>label+label,.moolah-compact-form-group>label+.moolah-compact-form-contents>label:first-child,.moolah-compact-form-group>.moolah-compact-form-contents+label,.moolah-compact-form-contents>label+label{border-top:.5px solid color-mix(in srgb,var(--line) 66%,transparent)}.moolah-compact-form-group>label>span:first-child,.moolah-compact-form-row>span:first-child{color:var(--text-muted);font-size:11px;font-weight:500;line-height:1.25}.moolah-compact-form-group>label>:is(input,select,textarea),.moolah-compact-form-row>:is(input,select,textarea),.moolah-compact-form-control{width:100%;min-width:0;min-height:40px;padding:0 9px;border:0;border-radius:9px;outline:0;background:transparent;color:var(--text);font:inherit;font-size:12px}.moolah-compact-form-group>label>textarea,.moolah-compact-form-row>textarea{min-height:64px;padding-block:10px;resize:vertical}.moolah-compact-form-group>label>input[type=checkbox],.moolah-compact-form-row>input[type=checkbox]{width:18px;min-height:18px;justify-self:end;padding:0;accent-color:var(--accent)}.moolah-compact-form-group>label:focus-within,.moolah-compact-form-row:focus-within{box-shadow:inset var(--moolah-input-focus-width) 0 0 var(--accent)}.moolah-compact-form-actions{display:flex;justify-content:flex-end;gap:8px}@media(max-width:520px){.moolah-compact-form-group>label,.moolah-compact-form-row{grid-template-columns:minmax(82px,.42fr) minmax(0,1fr);gap:10px;padding-inline:12px}}.auth-form .primary-button{width:100%;min-height:52px;margin-top:8px;border:0;border-radius:var(--moolah-radius-pill);background:var(--auth-foreground);color:var(--auth-background);font-size:15px;transition:background var(--moolah-motion-fast) ease,opacity var(--moolah-motion-fast) ease,transform var(--moolah-motion-fast) ease}.auth-form .primary-button:hover:not(:disabled){background:color-mix(in srgb,var(--auth-foreground) 88%,var(--auth-background))}.auth-form .primary-button:active:not(:disabled){transform:scale(.985)}.auth-form .primary-button:disabled{background:color-mix(in srgb,var(--auth-foreground) 42%,var(--auth-background));color:color-mix(in srgb,var(--auth-background) 76%,var(--auth-foreground));opacity:1}.security-signals{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 20px;margin-top:24px;color:var(--auth-secondary);font-size:12px;line-height:1.2}.security-signals span{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.security-signals svg{flex:0 0 auto}.auth-create-account{display:flex;width:fit-content;min-height:40px;align-items:center;justify-content:center;gap:7px;margin:0;padding:0 14px;border:0;border-radius:var(--moolah-radius-pill);background:color-mix(in srgb,var(--auth-foreground) 6%,transparent);color:color-mix(in srgb,var(--auth-foreground) 64%,transparent);font-size:12px}.auth-create-account a,.auth-secondary-actions button,.auth-state-panel .text-button{color:var(--auth-foreground);font-weight:500;text-decoration:none}.auth-create-account a{color:color-mix(in srgb,var(--auth-foreground) 86%,transparent)}.auth-create-account a:hover,.auth-create-account a:focus-visible,.auth-footer a:hover,.auth-footer a:focus-visible{text-decoration:underline;text-underline-offset:3px}.auth-secondary-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:0 12px;margin-top:8px}.auth-secondary-actions button{min-height:44px;padding:0 8px;border:0;background:transparent;font-size:13px}.auth-secondary-actions button:hover:not(:disabled){text-decoration:underline;text-underline-offset:3px}.auth-state-panel{text-align:center}.auth-state-panel .primary-button{min-height:52px;margin-top:28px;border:0;border-radius:var(--moolah-radius-pill);background:var(--auth-foreground);color:var(--auth-background)}.auth-state-panel .text-button{margin-top:8px;background:transparent}.auth-footer-stack{display:grid;justify-items:center;gap:4px}.auth-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin:0;color:var(--auth-secondary);font-size:13px;text-align:center}.auth-footer a{min-height:36px;align-content:center;color:inherit;text-decoration:none}.auth-canvas button:focus-visible,.auth-canvas input:focus-visible,.auth-canvas a:focus-visible,.auth-canvas summary:focus-visible{outline-color:var(--auth-focus)}.oauth-consent-canvas{padding-top:74px}.oauth-consent-panel{width:min(100%,480px);text-align:left}.oauth-consent-panel>.auth-brand-hand{width:54px;height:54px;margin-right:auto;margin-bottom:20px;margin-left:auto}.oauth-consent-panel>h1,.oauth-consent-panel>.auth-description{text-align:center}.oauth-loading{display:grid;justify-items:center;gap:12px;color:var(--auth-secondary)}.oauth-phone-field{display:grid;grid-template-columns:auto minmax(0,1fr);min-height:58px;align-items:center;border:1px solid var(--auth-border);border-radius:22px;background:var(--auth-control)}.oauth-phone-field>span{padding:0 14px;border-right:1px solid var(--auth-border);color:var(--auth-secondary)}.oauth-phone-field input,.oauth-code-field{width:100%;min-height:56px;padding:0 16px;border:0;outline:0;background:transparent;color:var(--auth-foreground);font-size:16px}.auth-compact-row .oauth-phone-field input,.auth-compact-row .oauth-code-field{min-height:48px}.oauth-code-field{border:1px solid var(--auth-border);border-radius:18px;background:var(--auth-control);font-size:22px;font-variant-numeric:tabular-nums;letter-spacing:.42em;text-align:center}.auth-compact-row .oauth-code-field{border:0;border-radius:0;background:transparent;font-size:18px}.oauth-client-heading{display:grid;justify-items:center;gap:8px;margin-bottom:6px;text-align:center}.oauth-client-heading>img,.oauth-client-heading>svg{width:48px;height:48px;padding:10px;border:1px solid var(--auth-border);border-radius:16px;background:var(--auth-control);object-fit:contain}.oauth-client-heading span{display:block;margin-bottom:3px;color:var(--auth-secondary);font-size:12px}.oauth-client-heading h1{margin:0;font-size:clamp(24px,4vw,30px);text-align:center}.oauth-client-heading>div{display:grid;width:100%;min-width:0;justify-items:center}.oauth-client-origin{display:block;max-width:280px;margin-top:5px;overflow:hidden;color:var(--auth-secondary);font-size:11px;font-weight:300;text-overflow:ellipsis;white-space:nowrap}.oauth-permission-list{display:grid;gap:8px;margin-top:24px}.oauth-permission-list>button{display:grid;grid-template-columns:40px minmax(0,1fr) 24px;min-height:72px;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--auth-border);border-radius:20px;background:var(--auth-control);color:var(--auth-foreground);text-align:left}.oauth-permission-list>button:hover,.oauth-permission-list>button.is-selected{background:var(--auth-control-strong)}.oauth-permission-list>button.is-selected{border-color:color-mix(in srgb,var(--auth-focus) 54%,var(--auth-border))}.oauth-permission-icon,.oauth-permission-check{display:grid;place-items:center;color:var(--auth-secondary)}.oauth-permission-check{width:22px;height:22px;border:1px solid var(--auth-border);border-radius:50%}.is-selected .oauth-permission-check{border-color:var(--auth-focus);background:var(--auth-focus);color:var(--auth-background)}.oauth-permission-list strong,.oauth-permission-list small{display:block}.oauth-permission-list strong{margin-bottom:3px;font-size:14px}.oauth-permission-list small{color:var(--auth-secondary);font-size:12px;font-weight:300}.oauth-cdr-boundary{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;margin-top:14px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--auth-focus) 34%,transparent);border-radius:16px;background:color-mix(in srgb,var(--auth-focus) 8%,transparent);color:var(--auth-secondary)}.oauth-cdr-boundary p{margin:0;font-size:12px;line-height:1.45}.oauth-consent-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:10px;margin-top:18px}.oauth-consent-actions button{min-height:52px;border:1px solid var(--auth-border);border-radius:var(--moolah-radius-pill);background:#fff;color:var(--auth-foreground);box-shadow:0 1px color-mix(in srgb,white 70%,transparent) inset,0 4px 12px color-mix(in srgb,var(--auth-foreground) 5%,transparent)}.oauth-consent-actions .primary-button{border:0;background:var(--auth-foreground);color:var(--auth-background);box-shadow:none}.oauth-revoke-copy{margin:14px 10px 0;color:var(--auth-secondary);font-size:11px;font-weight:300;line-height:1.5;text-align:center}.oauth-error-icon{margin:0 auto 18px}.oauth-consent-canvas{--auth-background: var(--moolah-blue-lavender-dark, #b8c0ee);--auth-foreground: var(--moolah-graphite, #262223);--auth-secondary: color-mix(in srgb, var(--auth-foreground) 68%, transparent);--auth-control: color-mix(in srgb, var(--auth-foreground) 5%, transparent);--auth-control-strong: color-mix(in srgb, var(--auth-foreground) 9%, transparent);--auth-border: color-mix(in srgb, var(--auth-foreground) 17%, transparent);--auth-focus: var(--auth-foreground);background:var(--auth-background);color-scheme:light}.oauth-consent-canvas .auth-wordmark{top:30px}.oauth-consent-canvas .brand-wordmark{width:96px}.oauth-consent-canvas .auth-content{align-items:start;justify-items:center;padding-top:clamp(48px,7vh,72px)}.oauth-consent-canvas .auth-panel{padding:0 0 12px}.oauth-consent-canvas .auth-panel h1,.oauth-consent-canvas .oauth-permission-list strong,.oauth-consent-canvas .oauth-agent-row strong{color:var(--auth-foreground)}.oauth-consent-canvas .auth-form .primary-button,.oauth-consent-canvas .oauth-consent-actions .primary-button{background:var(--auth-foreground);color:var(--auth-background)}.oauth-consent-canvas .auth-form .primary-button:hover:not(:disabled),.oauth-consent-canvas .oauth-consent-actions .primary-button:hover:not(:disabled){background:color-mix(in srgb,var(--auth-foreground) 88%,transparent)}.oauth-consent-canvas .oauth-phone-field,.oauth-consent-canvas .oauth-code-field,.oauth-consent-canvas .oauth-permission-list>button,.oauth-consent-canvas .oauth-client-heading>img,.oauth-consent-canvas .oauth-client-heading>svg{box-shadow:0 1px color-mix(in srgb,white 24%,transparent) inset}.oauth-consent-canvas .oauth-permission-list>button.is-selected{border-color:color-mix(in srgb,var(--auth-foreground) 42%,transparent);background:color-mix(in srgb,var(--auth-foreground) 11%,transparent)}.oauth-consent-canvas .is-selected .oauth-permission-check{border-color:var(--auth-foreground);background:var(--auth-foreground);color:var(--auth-background)}.oauth-consent-canvas .oauth-cdr-boundary{border-color:color-mix(in srgb,var(--auth-foreground) 17%,transparent);background:color-mix(in srgb,var(--auth-foreground) 5%,transparent)}.oauth-consent-canvas .oauth-revoke-copy a{color:var(--auth-foreground);font-weight:500;text-underline-offset:3px}.oauth-consent-canvas .form-error{color:#651f2b}.oauth-connections-panel{width:min(100%,620px)}.oauth-page-heading{display:grid;justify-items:center;text-align:center}.oauth-page-heading>div>span{display:block;margin-bottom:4px;color:var(--auth-secondary);font-size:12px}.oauth-page-heading h1{margin:0;font-size:clamp(26px,4vw,32px);text-align:center}.oauth-page-description{margin-top:6px;text-align:center}.oauth-empty-state{display:grid;justify-items:center;gap:7px;margin-top:30px;padding:28px;border:1px solid var(--auth-border);border-radius:22px;background:var(--auth-control);text-align:center}.oauth-empty-state strong{font-size:16px}.oauth-empty-state p{margin:0;color:var(--auth-secondary);font-size:13px}.oauth-agent-list{display:grid;gap:10px;margin-top:20px}.oauth-agent-row{display:grid;gap:12px;padding:16px 18px;border:1px solid var(--auth-border);border-radius:22px;background:var(--auth-control);box-shadow:0 1px color-mix(in srgb,white 24%,transparent) inset}.oauth-agent-row>header{display:grid;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:12px}.oauth-agent-row>header>span:last-child,.oauth-agent-row>header strong,.oauth-agent-row>header small{display:block;min-width:0}.oauth-agent-row>header strong{overflow:hidden;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.oauth-agent-row>header small{margin-top:3px;overflow:hidden;color:var(--auth-secondary);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.oauth-agent-logo{display:grid;width:46px;height:46px;place-items:center;overflow:hidden;border:1px solid var(--auth-border);border-radius:15px;background:color-mix(in srgb,var(--auth-background) 72%,white)}.oauth-agent-logo img{width:100%;height:100%;padding:8px;object-fit:contain}.oauth-agent-domains{display:flex;flex-wrap:wrap;gap:6px}.oauth-agent-domains span{min-height:28px;align-content:center;padding:0 10px;border:1px solid var(--auth-border);border-radius:999px;background:color-mix(in srgb,var(--auth-background) 62%,transparent);color:var(--auth-foreground);font-size:11px;font-weight:500}.oauth-agent-partial{margin:0;color:var(--auth-secondary);font-size:12px;line-height:1.45}.oauth-agent-meta{display:flex;flex-wrap:wrap;gap:5px 14px;color:var(--auth-secondary);font-size:11px}.oauth-disconnect-button,.oauth-agent-confirm button,.oauth-management-footer button,.oauth-retry-button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:8px;border-radius:var(--moolah-radius-pill);font-family:inherit;font-weight:500}.oauth-disconnect-button{width:fit-content;padding:0 14px;border:1px solid var(--auth-border);background:#fff;color:var(--auth-foreground);box-shadow:0 4px 12px color-mix(in srgb,var(--auth-foreground) 5%,transparent)}.oauth-agent-confirm{display:grid;gap:10px;padding-top:12px;border-top:1px solid var(--auth-border)}.oauth-agent-confirm p{margin:0;color:var(--auth-foreground);font-size:13px;line-height:1.45}.oauth-agent-confirm>div{display:flex;justify-content:flex-end;gap:8px}.oauth-agent-confirm button{padding:0 14px;border:1px solid var(--auth-border);background:#fff;color:var(--auth-foreground);box-shadow:0 4px 12px color-mix(in srgb,var(--auth-foreground) 5%,transparent)}.oauth-agent-confirm .oauth-disconnect-confirm{border-color:var(--auth-foreground);background:var(--auth-foreground);color:var(--auth-background);box-shadow:none}.oauth-connections-error{margin-top:14px}.oauth-management-footer{display:grid;justify-items:center;gap:10px;margin-top:20px;text-align:center}.oauth-management-footer p{max-width:500px;margin:0;color:var(--auth-secondary);font-size:11px;line-height:1.5}.oauth-management-footer button,.oauth-retry-button{padding:0 14px;border:0;background:transparent;color:var(--auth-foreground)}.oauth-retry-button{min-width:150px;margin:8px auto 0;background:var(--auth-foreground);color:var(--auth-background)}.oauth-consent-actions button:hover:not(:disabled),.oauth-disconnect-button:hover:not(:disabled),.oauth-agent-confirm button:not(.oauth-disconnect-confirm):hover:not(:disabled){border-color:color-mix(in srgb,var(--auth-foreground) 28%,transparent);background:color-mix(in srgb,white 88%,var(--auth-background))}.oauth-agent-confirm .oauth-disconnect-confirm:hover:not(:disabled),.oauth-retry-button:hover:not(:disabled){background:color-mix(in srgb,var(--auth-foreground) 88%,transparent)}@media(max-width:560px){.oauth-consent-canvas{padding:76px 18px 18px}.oauth-consent-canvas .auth-wordmark{top:24px}.oauth-consent-canvas .auth-panel{padding-top:0}.oauth-consent-canvas .auth-content{padding-top:34px}.oauth-permission-list>button{min-height:68px}.oauth-agent-row{padding:15px}.oauth-agent-confirm>div{display:grid;grid-template-columns:1fr 1fr}}.session-restoring{display:grid;min-height:100dvh;justify-items:center;align-content:center;gap:18px;padding:24px;background:var(--canvas);color:var(--text);text-align:center}.session-restoring-brand{display:grid;width:64px;height:64px;place-items:center;color:var(--accent)}.session-restoring .auth-brand-hand{width:56px;height:56px;margin:0;color:currentColor}.session-restoring-progress{display:grid;width:min(220px,72vw);justify-items:center;animation:session-restoring-reveal var(--moolah-motion-fast) ease-out both}.session-restoring-track{position:relative;width:88px;height:2px;margin-bottom:14px;overflow:hidden;border-radius:var(--moolah-radius-pill);background:var(--line)}.session-restoring-track span{position:absolute;inset:0 auto 0 0;width:42%;border-radius:inherit;background:var(--accent);animation:session-restoring-track 1.15s ease-in-out infinite}.session-restoring h1{margin:0 0 4px;font-size:16px;letter-spacing:0}.session-restoring p{margin:0;color:var(--text-muted);font-size:12px}@keyframes session-restoring-reveal{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes session-restoring-track{0%{transform:translate(-115%)}50%{transform:translate(110%)}to{transform:translate(265%)}}@media(prefers-reduced-motion:reduce){.session-restoring-progress{animation:none}.session-restoring-track span{width:100%;animation:none}}.app-shell{--ai-drawer-width: 380px;display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);grid-template-rows:minmax(0,1fr);width:100%;height:100dvh;min-height:100dvh;overflow:hidden;background:var(--canvas);transition:grid-template-columns .22s ease-out}@media(min-width:781px){html:has(.app-shell),body:has(.app-shell),body:has(.app-shell) #root{height:100%;overflow:hidden}body:has(.app-shell){position:fixed;inset:0;width:100%}}.app-shell.ai-drawer-open{grid-template-columns:calc(var(--sidebar-width) + var(--ai-drawer-width) + 6px) minmax(0,1fr)}.app-topbar{z-index:20;grid-column:1 / -1;display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);min-height:var(--topbar-height);border-bottom:1px solid var(--line);background:#fffffff0;transition:grid-template-columns .18s ease}.topbar-brand,.topbar-main,.topbar-account{display:flex;align-items:center}.topbar-brand{min-width:0;gap:10px;padding:0 16px;border-right:1px solid var(--line)}.brand-copy,.account-copy{display:grid;min-width:0}.brand-copy strong,.account-copy strong{overflow:hidden;color:var(--text);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.brand-copy small,.account-copy small{overflow:hidden;color:var(--text-muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.topbar-main{min-width:0;justify-content:flex-end;gap:16px;padding:0 20px}.live-status{display:inline-flex;min-height:30px;align-items:center;gap:7px;padding:0 10px;border:1px solid #cfe3d7;border-radius:999px;background:var(--positive-soft);color:var(--positive);font-size:11px;font-weight:500}.live-status>span{width:7px;height:7px;border-radius:999px;background:var(--positive)}.topbar-account{min-width:0;gap:10px}.account-copy{max-width:190px;text-align:right}.account-avatar{display:grid;width:36px;height:36px;flex:0 0 auto;place-items:center;border:1px solid var(--line);border-radius:11px;background:var(--surface-muted);color:var(--text);font-size:11px;font-weight:500}.mobile-menu-button,.shell-mobile-bar,.shell-navigation-scrim{display:none}.moolah-rail{position:relative;z-index:15;grid-column:1;grid-row:1;display:grid;width:calc(var(--sidebar-width) - 12px);min-width:0;min-height:0;grid-template-columns:calc(var(--sidebar-width) - 12px) 0;column-gap:6px;margin:6px;overflow:visible;border:0;background:transparent;transition:width .22s cubic-bezier(.22,1,.36,1),grid-template-columns .22s cubic-bezier(.22,1,.36,1)}.moolah-rail.ai-open{width:calc(var(--sidebar-width) + var(--ai-drawer-width) - 6px);grid-template-columns:calc(var(--sidebar-width) - 12px) var(--ai-drawer-width)}.app-sidebar{--sidebar-copy-opacity: 0;--sidebar-copy-visibility: hidden;--sidebar-label-background: transparent;--sidebar-label-border: 0;--sidebar-label-left: 52px;--sidebar-label-opacity: 0;--sidebar-label-padding: 0;--sidebar-label-shadow: none;--sidebar-soon-display: none;position:relative;z-index:2;grid-column:1;grid-row:1;display:flex;width:100%;min-height:0;flex-direction:column;align-items:stretch;padding:8px 5px;overflow:visible;border:1px solid var(--line);border-radius:var(--moolah-radius-floating);background:color-mix(in srgb,var(--sidebar-surface) 94%,transparent);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px) saturate(1.04);backdrop-filter:blur(12px) saturate(1.04)}.moolah-rail.ai-open .app-sidebar{overflow:hidden}.moolah-ai-shortcut-hint{position:fixed;z-index:35;bottom:calc(20px + env(safe-area-inset-bottom,0px));left:calc(var(--sidebar-width) + 10px);display:flex;align-items:stretch;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));border-radius:17px;background:color-mix(in srgb,var(--surface-glass) 94%,var(--accent-soft));box-shadow:0 18px 48px color-mix(in srgb,var(--text) 14%,transparent),0 0 0 1px color-mix(in srgb,var(--surface-raised) 55%,transparent) inset;-webkit-backdrop-filter:blur(16px) saturate(1.08);backdrop-filter:blur(16px) saturate(1.08);animation:moolah-ai-hint-arrive .48s cubic-bezier(.22,1,.36,1) both}.moolah-ai-shortcut-hint-main{display:grid;min-height:58px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 11px 8px 9px;border:0;background:transparent;color:var(--text);text-align:left}.moolah-ai-shortcut-hint-main:hover{background:color-mix(in srgb,var(--accent-soft) 58%,transparent)}.moolah-ai-shortcut-hint-main:focus-visible,.moolah-ai-shortcut-dismiss:focus-visible{position:relative;z-index:1;outline:3px solid var(--focus-ring);outline-offset:-3px}.moolah-ai-shortcut-wave{display:flex;width:34px;height:34px;align-items:center;justify-content:center;gap:2px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line));border-radius:11px;background:var(--accent-soft);color:var(--accent)}.moolah-ai-shortcut-wave i{display:block;width:2px;height:12px;border-radius:999px;background:currentColor;transform-origin:center;animation:moolah-ai-hint-wave 1.15s ease-in-out infinite}.moolah-ai-shortcut-wave i:nth-child(2){height:18px;animation-delay:-.78s}.moolah-ai-shortcut-wave i:nth-child(3){height:15px;animation-delay:-.52s}.moolah-ai-shortcut-wave i:nth-child(4){height:9px;animation-delay:-.26s}.moolah-ai-shortcut-copy{display:grid;gap:2px;min-width:0}.moolah-ai-shortcut-copy strong{font-size:12px;font-weight:600;letter-spacing:-.01em;line-height:1.15}.moolah-ai-shortcut-copy small{color:var(--text-muted);font-size:9.5px;line-height:1.2;white-space:nowrap}.moolah-ai-shortcut-hint-main kbd{min-width:48px;padding:5px 8px 4px;border:1px solid var(--line-strong);border-bottom-width:3px;border-radius:8px;background:var(--surface-raised);box-shadow:0 1px color-mix(in srgb,var(--surface-raised) 72%,white) inset;color:var(--text);font-family:inherit;font-size:9px;font-weight:650;line-height:1;text-align:center}.moolah-ai-shortcut-dismiss{display:grid;width:31px;min-height:58px;place-items:center;padding:0;border:0;border-left:1px solid color-mix(in srgb,var(--line) 72%,transparent);background:transparent;color:var(--text-muted)}.moolah-ai-shortcut-dismiss:hover{background:var(--surface-muted);color:var(--text)}@keyframes moolah-ai-hint-arrive{0%{opacity:0;transform:translate3d(-10px,8px,0) scale(.97)}to{opacity:1;transform:translateZ(0) scale(1)}}@keyframes moolah-ai-hint-wave{0%,to{transform:scaleY(.52);opacity:.58}50%{transform:scaleY(1);opacity:1}}@media(max-width:780px){.moolah-ai-shortcut-hint{display:none}}@media(prefers-reduced-motion:reduce){.moolah-ai-shortcut-hint,.moolah-ai-shortcut-wave i{animation:none}}@media(prefers-reduced-transparency:reduce),(update:slow){.app-sidebar,.moolah-ai-drawer{background:var(--sidebar-surface);-webkit-backdrop-filter:none;backdrop-filter:none}}.sidebar-brand{position:relative;display:flex;width:100%;min-height:47px;align-items:center;justify-content:flex-start;padding:0 8px 6px;border-bottom:1px solid var(--line)}.sidebar-brand-symbol{display:grid;width:40px;height:40px;flex:0 0 auto;overflow:hidden;place-items:center;border:0;background:transparent;box-shadow:none}.sidebar-brand-hand{display:block;width:29px;height:29px;background:var(--moolah-blue-lavender-dark, #b8c0ee);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}.sidebar-brand-wordmark{display:block;width:52px;line-height:0}.sidebar-brand-wordmark img{display:block;width:100%;height:auto}.sidebar-wordmark-dark{display:none!important}:root[data-theme=dark] .sidebar-wordmark-light{display:none}:root[data-theme=dark] .sidebar-wordmark-dark{display:block!important}.sidebar-brand .brand-copy{position:absolute;left:52px;display:grid;width:52px;opacity:var(--sidebar-copy-opacity);pointer-events:none;transition:opacity .14s ease;visibility:var(--sidebar-copy-visibility)}.sidebar-ai-section{display:grid;width:100%;flex:0 0 auto;margin-top:6px;padding:7px 0 0;border-top:1px solid var(--line)}.sidebar-navigation{display:grid;width:100%;flex:0 0 auto;align-content:start;gap:2px;margin:6px 0 0}.navigation-item{position:relative;display:flex;width:100%;min-height:44px;align-items:center;justify-content:flex-start;padding:0 7px;border:1px solid transparent;border-radius:14px;background:transparent;color:var(--text-muted);cursor:pointer;text-decoration:none;transition:background .18s ease,color .18s ease,border-color .18s ease}.navigation-item:not(:disabled):hover{border-color:transparent;background:var(--sidebar-hover);color:var(--text)}.navigation-item.active{border-color:transparent;background:var(--sidebar-active);box-shadow:none;color:var(--accent)}.navigation-item:disabled{opacity:.42}.navigation-icon{position:relative;display:grid;width:40px;height:40px;place-items:center;border-radius:13px}.navigation-icon>svg{width:18px;height:18px}.sidebar-ai-item .navigation-icon>svg{fill:currentColor;stroke-width:1.35}.moolah-rail.listening .sidebar-ai-item .navigation-icon:after{position:absolute;right:7px;bottom:7px;width:6px;height:6px;border:1px solid var(--sidebar-surface);border-radius:50%;background:var(--positive);content:"";transform-origin:center;animation:moolah-rail-listening-pulse 1.2s ease-in-out infinite}@keyframes moolah-rail-listening-pulse{0%,to{opacity:.62;transform:scale(.78)}50%{opacity:1;transform:scale(1.16)}}.navigation-label{position:absolute;z-index:40;top:50%;left:var(--sidebar-label-left);width:max-content;max-width:142px;overflow:hidden;padding:var(--sidebar-label-padding);border:var(--sidebar-label-border);border-radius:9px;background:var(--sidebar-label-background);box-shadow:var(--sidebar-label-shadow);color:var(--text);font-size:13px;font-weight:500;text-overflow:ellipsis;white-space:nowrap;opacity:var(--sidebar-label-opacity);pointer-events:none;transform:translateY(-50%);transition:opacity .14s ease}.navigation-item:not(:disabled):hover .navigation-label,.navigation-item:focus-visible .navigation-label{opacity:1}.coming-soon{position:absolute;right:6px;display:var(--sidebar-soon-display);align-items:center;padding:3px 6px;border-radius:var(--moolah-radius-pill);background:var(--surface-muted);color:var(--text-muted);font-size:9px;font-weight:500;text-transform:uppercase}.sidebar-footer{display:grid;width:100%;gap:2px;margin-top:auto;padding-top:7px}.sidebar-footer .navigation-item{min-height:44px}.sidebar-account{position:relative;display:grid;width:100%;min-height:44px;place-items:center start;padding-inline:10px;border:1px solid transparent;border-radius:14px;background:transparent;color:var(--text);cursor:pointer;text-decoration:none;transition:background .18s ease,color .18s ease}.sidebar-account:hover{background:var(--sidebar-hover)}.sidebar-account.active{background:transparent;box-shadow:none}.sidebar-avatar{display:grid;width:34px;height:34px;overflow:hidden;place-items:center;border:1px solid var(--line-strong);border-radius:13px;background:transparent;color:var(--text);font-size:11px;font-weight:500}.sidebar-avatar img{display:block;width:100%;height:100%;object-fit:cover}.sidebar-account-copy{position:absolute;right:6px;left:52px;display:grid;min-width:0;opacity:var(--sidebar-copy-opacity);pointer-events:none;transition:opacity .14s ease;visibility:var(--sidebar-copy-visibility)}.sidebar-account-copy strong,.sidebar-account-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-account-copy strong{color:var(--text);font-size:12px;font-weight:500}.sidebar-account-copy small{color:var(--text-muted);font-size:10px}@media(min-width:781px){.app-sidebar .navigation-label{display:none}}.app-content{grid-column:2;grid-row:1;min-width:0;min-height:0;overflow-y:auto;padding:24px;background:var(--canvas);overscroll-behavior:contain}.app-content:has(>.goals-page),.app-content:has(>.goal-detail-page){padding:28px 16px 16px}.page-header{display:flex;width:100%;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}.page-header h1{margin-bottom:4px;font-size:30px;font-weight:500;letter-spacing:0;line-height:1.08}.page-description{margin:0;color:var(--text-muted);font-size:14px}.page-header-actions{display:flex;align-items:flex-end;gap:10px}.month-field{display:grid;gap:5px}.month-field span{color:var(--text-muted);font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.month-field input{min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text)}.surface{display:grid;min-width:0;gap:18px;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-translucent)}.surface-header{display:flex;min-width:0;align-items:flex-start;justify-content:space-between;gap:16px}.surface-header h2,.dashboard-error h2{margin-bottom:4px;font-size:17px;font-weight:500;letter-spacing:0}.surface-header p,.dashboard-error p{margin:0;color:var(--text-muted);font-size:12px;line-height:1.45}.surface-icon{flex:0 0 auto;color:var(--text-muted)}.dashboard-stack{display:grid;gap:20px}.plan-status-card{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(190px,260px);min-height:132px;align-items:center;gap:18px;padding:22px;border:1px solid var(--positive);border-radius:var(--radius);background:linear-gradient(120deg,var(--positive-soft) 0%,var(--surface-translucent) 72%)}.plan-status-card.status-watch,.plan-status-card.status-at-risk,.plan-status-card.status-needs-forecast{border-color:#ead7a5;background:linear-gradient(120deg,var(--warning-soft) 0%,var(--surface-translucent) 72%)}.plan-status-card.status-at-risk{border-color:#efc4bf;background:linear-gradient(120deg,var(--negative-soft) 0%,var(--surface-translucent) 72%)}.plan-status-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:14px;background:var(--positive-soft);color:var(--positive)}.status-watch .plan-status-icon,.status-needs-forecast .plan-status-icon{background:var(--warning-soft);color:var(--warning)}.status-at-risk .plan-status-icon{background:var(--negative-soft);color:var(--negative)}.plan-status-copy{min-width:0}.plan-status-copy .eyebrow,.dashboard-section-header .eyebrow{margin-bottom:5px}.plan-status-copy h2{margin-bottom:6px;font-size:21px;font-weight:500;letter-spacing:0}.plan-status-copy>p:last-child{max-width:760px;margin:0;color:var(--text-muted);font-size:13px;line-height:1.5}.month-progress-block{display:grid;gap:9px;padding-left:20px;border-left:1px solid var(--line)}.month-progress-block>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.month-progress-block span{color:var(--text-muted);font-size:11px;font-weight:500}.month-progress-block strong{font-size:18px;font-variant-numeric:tabular-nums}.month-progress-track,.tracking-progress,.budget-row-progress,.goal-progress-track{height:7px;overflow:hidden;border-radius:999px;background:var(--line)}.month-progress-track>span,.tracking-progress>span,.budget-row-progress>span,.goal-progress-track>span{display:block;height:100%;border-radius:inherit;background:var(--positive)}.dashboard-inline-alert{display:flex;min-height:48px;align-items:center;gap:10px;padding:10px 14px;border:1px solid #ead7a5;border-radius:12px;background:var(--warning-soft);color:var(--warning);font-size:13px}.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tracking-metric-card{display:grid;min-width:0;gap:13px;padding:20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-translucent)}.tracking-metric-heading{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:4px 9px}.tracking-metric-heading>span:first-child{display:grid;width:28px;height:28px;grid-row:1;place-items:center;border-radius:9px;background:var(--positive-soft);color:var(--positive)}.tone-warning .tracking-metric-heading>span:first-child{background:var(--warning-soft);color:var(--warning)}.tracking-metric-heading p{margin:0;color:var(--text-muted);font-size:12px;font-weight:500}.tracking-metric-heading>strong{grid-column:1 / -1;margin-top:8px;overflow:hidden;font-size:34px;font-variant-numeric:tabular-nums;font-weight:500;letter-spacing:0;line-height:1;text-overflow:ellipsis;white-space:nowrap}.tracking-target-row,.tracking-metric-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.tracking-target-row{color:var(--text-muted);font-size:11px}.tracking-target-row strong{color:var(--text);font-variant-numeric:tabular-nums}.tracking-progress>span.over,.budget-row-progress>span.over{background:var(--negative)}.tracking-metric-footer>span:last-child{overflow:hidden;color:var(--text-muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.status-pill{display:inline-flex;min-height:24px;flex:0 0 auto;align-items:center;padding:0 8px;border:1px solid transparent;border-radius:999px;font-size:11px;font-weight:500;white-space:nowrap}.status-pill-good{border-color:#cfe3d7;background:var(--positive-soft);color:var(--positive)}.status-pill-warning{border-color:#ead7a5;background:var(--warning-soft);color:var(--warning)}.status-pill-neutral{border-color:var(--line);background:var(--surface-muted);color:var(--text-muted)}.dashboard-workspace-grid,.dashboard-lower-grid{display:grid;grid-template-columns:minmax(0,2.15fr) minmax(310px,.85fr);gap:18px;align-items:stretch}.dashboard-lower-grid{grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr)}.cashflow-tracking-surface,.attention-surface,.goal-progress-surface,.activity-surface{align-content:start}.dashboard-section-header{display:flex;min-width:0;align-items:flex-start;justify-content:space-between;gap:18px}.dashboard-section-header>div:first-child{min-width:0}.dashboard-section-header h2{margin-bottom:4px;font-size:19px;font-weight:500;letter-spacing:0}.dashboard-section-header>div>p:last-child{margin:0;color:var(--text-muted);font-size:12px;line-height:1.45}.dashboard-section-link{display:inline-flex;min-height:44px;flex:0 0 auto;align-items:center;gap:7px;padding:0 12px;border-radius:10px;color:var(--accent);font-size:12px;font-weight:500;text-decoration:none}.dashboard-section-link:hover{background:var(--accent-soft)}.budget-group-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.budget-group-card{display:grid;min-width:0;align-content:start;gap:12px;padding:15px;border:1px solid var(--line);border-radius:14px;background:var(--surface-muted)}.budget-group-card>header{display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:9px}.budget-group-card>header>.status-pill{grid-column:1 / -1;justify-self:start}.budget-group-icon{display:grid;width:32px;height:32px;place-items:center;border-radius:10px;background:var(--income-soft);color:var(--income)}.budget-group-2 .budget-group-icon{background:var(--spending-soft);color:var(--spending)}.budget-group-3 .budget-group-icon{background:var(--accent-soft);color:var(--accent)}.budget-group-card h3{margin:0 0 3px;overflow:hidden;font-size:14px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.budget-group-card header p{margin:0;color:var(--text-muted);font-size:11px;font-variant-numeric:tabular-nums}.budget-group-card header p strong{color:var(--text)}.budget-row-list{display:grid;gap:8px}.budget-row{display:grid;gap:6px;padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--surface)}.budget-row.status-over,.budget-row.status-behind,.budget-row.status-unplanned{border-color:#ead7a5}.budget-row-heading{display:flex;min-width:0;align-items:baseline;justify-content:space-between;gap:8px}.budget-row-heading strong{overflow:hidden;font-size:12px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.budget-row-heading span{flex:0 0 auto;color:var(--text-muted);font-size:10px;font-variant-numeric:tabular-nums}.budget-row small{color:var(--text-muted);font-size:10px}.budget-row.status-over small,.budget-row.status-behind small,.budget-row.status-unplanned small{color:var(--warning);font-weight:500}.budget-empty-state{display:grid;min-height:100px;place-items:center;padding:16px;border:1px dashed var(--line-strong);border-radius:11px;color:var(--text-muted);font-size:12px;line-height:1.45;text-align:center}.attention-count{display:grid;min-width:30px;height:30px;place-items:center;border-radius:999px;background:var(--positive-soft);color:var(--positive);font-size:12px;font-weight:500}.attention-count.has-items{background:var(--warning-soft);color:var(--warning)}.attention-action-list{display:grid;gap:9px}.attention-action{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-muted)}.attention-action.warning{border-color:#ead7a5;background:var(--warning-soft)}.attention-action-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;background:var(--surface);color:var(--text-muted)}.attention-action.warning .attention-action-icon{color:var(--warning)}.attention-action strong{display:block;margin-bottom:3px;overflow:hidden;font-size:12px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.attention-action p{margin:0;color:var(--text-muted);font-size:11px;line-height:1.4}.attention-clear-state{display:grid;min-height:190px;place-content:center;justify-items:center;gap:6px;color:var(--positive);text-align:center}.attention-clear-state strong{color:var(--text);font-size:14px}.attention-clear-state p{max-width:220px;margin:0;color:var(--text-muted);font-size:12px;line-height:1.45}.attention-review-button{width:100%;text-decoration:none}.goal-summary-stat{display:grid;min-width:105px;justify-items:end}.goal-summary-stat strong{font-size:22px;font-variant-numeric:tabular-nums;letter-spacing:0}.goal-summary-stat span{color:var(--text-muted);font-size:10px}.goal-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.goal-card{display:grid;min-width:0;gap:12px;padding:15px;border:1px solid var(--line);border-radius:14px;background:var(--surface-muted)}.goal-card.goal-behind{border-color:#ead7a5}.goal-card-heading{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px}.goal-icon{display:grid;width:32px;height:32px;place-items:center;border-radius:10px;background:var(--accent-soft);color:var(--accent)}.goal-card-heading>div{display:grid;min-width:0;gap:2px}.goal-card-heading strong{overflow:hidden;min-height:110px;font-size:13px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.goal-card-heading div span{color:var(--text-muted);font-size:10px}.goal-amount-row{display:flex;align-items:baseline;gap:5px}.goal-amount-row strong{font-size:18px;font-variant-numeric:tabular-nums;letter-spacing:0}.goal-amount-row span{color:var(--text-muted);font-size:11px}.goal-amount-row b{margin-left:auto;color:var(--positive);font-size:11px;font-variant-numeric:tabular-nums}.goal-card>p{margin:0;color:var(--text-muted);font-size:11px}.transaction-list{display:grid}.transaction-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;min-height:64px;align-items:center;gap:11px;border-top:1px solid var(--line)}.transaction-direction{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;background:var(--spending-soft);color:var(--spending)}.transaction-direction.income{background:var(--positive-soft);color:var(--positive)}.transaction-row>div{display:grid;min-width:0;gap:3px}.transaction-row strong{overflow:hidden;color:var(--text);font-size:12px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.transaction-row small{overflow:hidden;color:var(--text-muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.transaction-amount-block{justify-items:end}.transaction-amount-block>span{font-size:12px;font-variant-numeric:tabular-nums;font-weight:500;white-space:nowrap}.transaction-amount-block small{color:var(--warning)}.amount-income{color:var(--positive)}.financial-position-strip{display:grid;grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(130px,.7fr));gap:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-translucent)}.position-strip-heading,.position-strip-stat{min-width:0;padding:18px 20px}.position-strip-heading{display:flex;align-items:center;gap:12px;background:var(--surface-muted)}.position-strip-heading>svg{color:var(--accent)}.position-strip-heading>div,.position-strip-stat{display:grid;gap:4px}.position-strip-heading span,.position-strip-stat span{color:var(--text-muted);font-size:10px;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.position-strip-heading strong{font-size:21px;font-variant-numeric:tabular-nums;letter-spacing:0}.position-strip-stat{justify-content:center;border-left:1px solid var(--line)}.position-strip-stat strong{font-size:15px;font-variant-numeric:tabular-nums}.empty-state{display:grid;min-height:160px;place-content:center;gap:6px;padding:24px;border-top:1px solid var(--line);text-align:center}.empty-state strong{font-size:14px}.empty-state p{margin:0;color:var(--text-muted);font-size:12px}.cashflow-page{display:flex;min-height:100%;flex-direction:column;container-type:inline-size}.app-content:has(>.cashflow-page.year-view){overflow:hidden}.cashflow-page.year-view{height:100%;min-height:0;overflow:hidden}.cashflow-page.year-view .cashflow-stack{display:flex;min-height:0;flex-direction:column}.cashflow-stack{display:grid;min-height:0;flex:1;gap:18px}.cashflow-page-header{align-items:center;margin-bottom:14px}.cashflow-page-header .page-header-actions{align-items:center;gap:8px}.cashflow-title-controls{display:flex;min-width:0;flex-wrap:nowrap;align-items:center;gap:10px}.cashflow-title-controls h1{margin:0 4px 0 0}.cashflow-year-stepper{display:grid;grid-template-columns:34px 68px 34px;min-height:36px;align-items:center;border:1px solid var(--line);border-radius:999px;background:var(--surface)}.cashflow-year-stepper button{display:grid;width:34px;min-height:34px;place-items:center;border:0;border-radius:999px;background:transparent;color:var(--text-muted)}.cashflow-year-stepper button:hover{background:var(--surface-muted);color:var(--text)}.cashflow-year-stepper>span{font-size:13px;font-variant-numeric:tabular-nums;font-weight:500;text-align:center}.cashflow-comparison-selector{position:relative}.cashflow-comparison-selector summary{display:inline-flex;min-height:36px;align-items:center;gap:6px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface-translucent);color:var(--text-muted);cursor:pointer;font-size:12px;font-weight:500;list-style:none;-webkit-user-select:none;user-select:none}.cashflow-comparison-selector summary::-webkit-details-marker{display:none}.cashflow-comparison-selector summary:hover{border-color:var(--line-strong);color:var(--text)}.cashflow-comparison-info{margin-left:2px}.cashflow-comparison-chevron{transition:transform .16s ease}.cashflow-comparison-selector[open] .cashflow-comparison-chevron{transform:rotate(180deg)}.cashflow-comparison-menu{position:absolute;z-index:20;top:calc(100% + 7px);left:0;display:grid;width:292px;gap:3px;padding:6px;border:1px solid var(--line);border-radius:13px;background:var(--surface-glass);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.cashflow-comparison-menu button{display:grid;grid-template-columns:minmax(0,1fr) 18px;min-height:38px;align-items:center;gap:8px;padding:0 10px;border:0;border-radius:9px;background:transparent;color:var(--text-muted);text-align:left}.cashflow-comparison-menu button:hover,.cashflow-comparison-menu button.selected{background:var(--accent-soft);color:var(--text)}.cashflow-comparison-menu button>span{min-width:0}.cashflow-comparison-option-title{display:flex;min-width:0;align-items:center;gap:6px}.cashflow-comparison-option-title strong{min-width:0}.cashflow-comparison-option-info{display:inline-grid;flex:0 0 auto;place-items:center;color:var(--text-muted);cursor:help}.cashflow-comparison-menu button:hover .cashflow-comparison-option-info,.cashflow-comparison-menu button.selected .cashflow-comparison-option-info{color:var(--text)}.cashflow-comparison-menu strong{display:block;overflow:hidden;font-size:12px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.cashflow-comparison-menu small{display:none}.cashflow-header-month{grid-template-columns:auto minmax(150px,1fr);min-height:38px;align-items:center;gap:10px;padding:3px 4px 3px 13px;border:1px solid var(--line);border-radius:14px;background:var(--surface-muted);transition:border-color .16s ease,box-shadow .16s ease}.cashflow-header-month:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 16%,transparent)}.cashflow-header-month>span{font-size:9px;letter-spacing:.11em}.cashflow-header-month input{min-height:30px;padding:0 8px 0 11px;border:0;border-left:1px solid var(--line);border-radius:10px;outline:0;background:var(--surface);color:var(--text);color-scheme:dark;font-size:13px;font-weight:500}.cashflow-header-month input:focus-visible{outline:0}.cashflow-header-month input::-webkit-calendar-picker-indicator{width:15px;height:15px;opacity:.7;cursor:pointer;filter:invert(85%) sepia(7%) saturate(420%) hue-rotate(194deg)}.cashflow-header-month input::-webkit-calendar-picker-indicator:hover{opacity:1}.cashflow-view-toggle{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:208px;height:36px;padding:2px;border:1px solid var(--line);border-radius:14px;background:var(--surface-glass);isolation:isolate}.cashflow-view-toggle:before{position:absolute;z-index:-1;top:2px;bottom:2px;left:2px;width:calc(50% - 2px);border-radius:12px;background:var(--accent);content:"";transform:translate(0);transition:transform .22s ease-in-out}.cashflow-view-toggle[data-view-mode=year]:before{transform:translate(100%)}.cashflow-view-toggle button{position:relative;min-height:32px;padding:0 10px;border:0;border-radius:12px;background:transparent;color:var(--text);font-size:13px;font-weight:500;transition:color .16s ease-in-out}.cashflow-view-toggle button.selected{color:var(--selected-text)}.cashflow-plan-button{display:inline-flex;min-width:76px;min-height:36px;align-items:center;justify-content:center;gap:6px;padding:0 12px;border:1px solid var(--line);border-radius:14px;background:var(--surface-glass);color:var(--text-muted);font-size:12px;font-weight:500;transition:background .16s ease,border-color .16s ease,color .16s ease}.cashflow-plan-button:hover{border-color:var(--line-strong);color:var(--text)}.cashflow-plan-button.selected{border-color:var(--accent);background:var(--accent);color:var(--selected-text)}.cashflow-page-header .icon-button{width:36px;height:36px;min-height:36px;border-radius:12px}.cashflow-month-overview{min-width:0}.year-field input{width:112px}.cashflow-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.cashflow-summary-card{display:grid;min-height:120px;align-content:space-between;gap:22px;padding:20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-translucent)}.cashflow-summary-card>div{display:flex;align-items:center;gap:8px;color:var(--text-muted);font-size:12px;font-weight:500}.cashflow-summary-card>strong{overflow:hidden;font-size:34px;font-variant-numeric:tabular-nums;font-weight:500;letter-spacing:0;line-height:1;text-overflow:ellipsis;white-space:nowrap}.cashflow-summary-card.income svg,.cashflow-summary-card.surplus svg{color:var(--positive)}.cashflow-summary-card.spending svg{color:var(--spending)}.cashflow-summary-card.deficit svg,.cashflow-summary-card.deficit>strong{color:var(--negative)}.cashflow-income-map-layout{position:relative;display:grid;width:100%;min-width:0;grid-template-columns:minmax(0,1fr);align-items:start;gap:0}.cashflow-income-map-layout.inspector-open{grid-template-columns:minmax(0,1fr) 360px;gap:12px}.cashflow-income-map-workspace{position:relative;display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;padding-bottom:calc(94px + env(safe-area-inset-bottom,0px))}.cashflow-map-panel{position:sticky;top:18px;display:grid;width:100%;min-width:0;justify-self:stretch;gap:0}.cashflow-map-pool,.cashflow-map-destination{display:grid;min-width:0;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;border:.5px solid var(--display-shell-border);border-radius:15px;background:color-mix(in srgb,var(--surface-raised) 88%,transparent);color:var(--text);cursor:pointer;font:inherit;text-align:left;transition:border-color .15s ease,background-color .15s ease,transform .15s ease}.cashflow-map-pool:hover,.cashflow-map-destination:hover{border-color:var(--line-strong);background:var(--surface-raised)}.cashflow-map-pool.selected,.cashflow-map-destination.selected{border-color:color-mix(in srgb,var(--accent) 58%,var(--line-strong));background:color-mix(in srgb,var(--accent) 9%,var(--surface-raised))}.cashflow-map-pool{min-height:70px;padding:10px 13px;border-color:color-mix(in srgb,var(--income) 25%,var(--display-shell-border))}.cashflow-map-pool>span:nth-child(2),.cashflow-map-destination>span:nth-child(2){display:grid;min-width:0;gap:3px}.cashflow-map-pool small,.cashflow-map-destination small{overflow:hidden;color:var(--text-muted);font-size:10px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.cashflow-map-pool strong,.cashflow-map-destination strong{overflow:hidden;font-size:12px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.cashflow-map-pool>b,.cashflow-map-destination>b{font-size:14px;font-variant-numeric:tabular-nums;font-weight:500;white-space:nowrap}.cashflow-map-pool>b{color:var(--income);font-size:17px}.cashflow-map-card-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;background:var(--surface-muted);color:var(--text-muted)}.cashflow-map-card-icon.income{background:var(--income-soft);color:var(--income)}.cashflow-map-card-icon.essentials{background:var(--spending-soft);color:var(--spending)}.cashflow-map-card-icon.lifestyle{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.cashflow-map-card-icon.goal{overflow:hidden;background:color-mix(in srgb,var(--accent) 12%,transparent)}.cashflow-map-card-icon.goal img{width:100%;height:100%;padding:6px;object-fit:contain}.cashflow-map-flow{--cashflow-map-card-offset: 46px;--cashflow-map-spine-x: 23px;--cashflow-map-branch-overlap: 3px;--cashflow-map-branch-rise: 15px;--cashflow-map-rule-width: 2px;position:relative;display:grid;min-width:0;gap:9px;padding-top:18px;overflow:clip}.cashflow-map-spine{position:absolute;top:0;bottom:50px;left:var(--cashflow-map-spine-x);width:var(--cashflow-map-rule-width);overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--income) 72%,transparent)}.cashflow-map-spine:after{position:absolute;inset:0;border-radius:inherit;background:linear-gradient(to bottom,transparent 0,color-mix(in srgb,var(--income) 18%,white) 38%,var(--income) 58%,transparent 100%);content:"";transform-origin:top;animation:cashflow-map-pulse 1.9s .22s ease-out both}@keyframes cashflow-map-pulse{0%{opacity:0;transform:translateY(-44%) scaleY(.16)}16%{opacity:1}82%{opacity:1}to{opacity:0;transform:translateY(82%) scaleY(.22)}}.cashflow-map-lane-header{display:flex;min-height:26px;align-items:center;justify-content:space-between;gap:12px;margin-left:var(--cashflow-map-card-offset);color:var(--spending)}.cashflow-map-lane-header span{font-size:11px;font-weight:500}.cashflow-map-lane-header strong{font-size:11px;font-variant-numeric:tabular-nums;font-weight:500}.cashflow-map-lane-header.goals{margin-top:7px;color:var(--accent)}.cashflow-map-destinations{position:relative;display:grid;gap:8px}.cashflow-map-spine.spending-only{top:-53px;bottom:50px}.cashflow-map-destination{position:relative;z-index:1;min-height:70px;margin-left:var(--cashflow-map-card-offset);padding:10px 13px}.cashflow-map-destination:before{position:absolute;z-index:-1;top:calc(50% - var(--cashflow-map-branch-rise));left:calc(var(--cashflow-map-spine-x) - var(--cashflow-map-card-offset));width:calc(var(--cashflow-map-card-offset) - var(--cashflow-map-spine-x) + var(--cashflow-map-branch-overlap));height:var(--cashflow-map-branch-rise);border-bottom:var(--cashflow-map-rule-width) solid color-mix(in srgb,var(--income) 72%,transparent);border-left:var(--cashflow-map-rule-width) solid color-mix(in srgb,var(--income) 72%,transparent);border-radius:0 0 0 10px;content:""}.cashflow-map-empty-goals{min-height:42px;margin:0 0 0 var(--cashflow-map-card-offset);padding:12px;border:.5px dashed var(--line);border-radius:12px;color:var(--text-muted);font-size:11px}.cashflow-planner-panel.surface{border:0;background:transparent;gap:0;overflow:visible;padding:0}.cashflow-planner-panel .cashflow-editor-status{margin-bottom:12px;border:.5px solid var(--display-shell-border);border-radius:12px;background:var(--surface-raised)}.cashflow-planner-panel .cashflow-sections{gap:0;overflow:hidden;padding:0;border:.5px solid var(--display-shell-border);border-radius:var(--moolah-radius-control, 12px);background:color-mix(in srgb,var(--surface-raised) 58%,transparent)}.cashflow-planner-context{display:flex;margin-bottom:8px}.cashflow-planner-context button{display:inline-flex;min-height:30px;align-items:center;gap:6px;padding:0 9px;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-size:11px;font-weight:500}.cashflow-planner-context button:hover{background:var(--surface-muted);color:var(--text)}.cashflow-income-map-goal-detail{display:grid;gap:12px;padding:2px}.cashflow-income-map-amount-detail{display:grid;gap:12px}.cashflow-income-map-amount-row{display:grid;min-width:0;min-height:72px;grid-template-columns:minmax(150px,1fr) minmax(124px,156px);align-items:center;gap:16px;padding:14px;border:.5px solid var(--display-shell-border);border-radius:14px;background:color-mix(in srgb,var(--surface-raised) 72%,transparent);cursor:text}.cashflow-income-map-amount-copy{display:grid;min-width:0;gap:2px}.cashflow-income-map-amount-copy>strong{font-size:14px;font-weight:550}.cashflow-income-map-amount-copy>span{overflow:hidden;color:var(--text-muted);font-size:10px;line-height:1.35;text-overflow:ellipsis}.cashflow-income-map-primary-amount{display:grid;min-width:0;min-height:48px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px;padding:0 11px;border-radius:12px;background:color-mix(in srgb,var(--canvas) 52%,var(--surface-muted));color:var(--text-muted);transition:background-color .15s ease,color .15s ease}.cashflow-income-map-primary-amount:focus-within{background:color-mix(in srgb,var(--income) 8%,var(--surface-muted));color:var(--income)}.cashflow-income-map-amount-row.goal .cashflow-income-map-primary-amount:focus-within{background:color-mix(in srgb,var(--accent) 9%,var(--surface-muted));color:var(--accent)}.cashflow-income-map-primary-amount>i{font-size:16px;font-style:normal;font-weight:550}.cashflow-income-map-primary-amount input{width:100%;min-width:0;padding:0;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:21px;font-variant-numeric:tabular-nums;font-weight:550;text-align:right}.cashflow-income-map-primary-amount input::-webkit-inner-spin-button,.cashflow-income-map-primary-amount input::-webkit-outer-spin-button{margin:0;appearance:none}.cashflow-income-map-primary-amount:has(input[aria-invalid=true]),.cashflow-rule-inspector-money:has(input[aria-invalid=true]){background:var(--negative-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--negative) 58%,transparent);color:var(--negative)}.cashflow-income-map-input-error{margin:-5px 4px 0;color:var(--negative);font-size:10px;font-weight:500;line-height:1.35}.cashflow-income-map-account,.cashflow-income-map-account-empty{display:grid;min-width:0;min-height:72px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 14px;border:.5px solid var(--display-shell-border);border-radius:14px;background:color-mix(in srgb,var(--surface-raised) 72%,transparent)}.cashflow-income-map-account-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:11px;background:color-mix(in srgb,var(--income) 10%,var(--surface-raised));color:var(--income)}.cashflow-income-map-account-copy,.cashflow-income-map-account-amount{display:grid;min-width:0;gap:2px}.cashflow-income-map-account-copy small,.cashflow-income-map-account-amount small{color:var(--text-muted);font-size:9px;font-weight:500}.cashflow-income-map-account-copy strong{overflow:hidden;font-size:13px;font-weight:550;text-overflow:ellipsis;white-space:nowrap}.cashflow-income-map-account-copy>span{overflow:hidden;color:var(--text-muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.cashflow-income-map-account-amount{justify-items:end;font-variant-numeric:tabular-nums;text-align:right}.cashflow-income-map-account-amount strong{color:var(--text);font-size:15px;font-weight:550}.cashflow-income-map-account.unassigned{color:var(--text-muted)}.cashflow-income-map-account.unassigned .cashflow-income-map-account-icon{background:var(--surface-raised);color:var(--text-muted)}.cashflow-income-map-account-empty{border-color:color-mix(in srgb,var(--income) 22%,var(--display-shell-border));color:var(--text);text-decoration:none;transition:background-color .15s ease,border-color .15s ease}.cashflow-income-map-account-empty:hover{border-color:color-mix(in srgb,var(--income) 42%,var(--display-shell-border));background:color-mix(in srgb,var(--income) 6%,var(--surface-raised))}.cashflow-income-map-account-empty>svg{color:var(--text-muted)}.cashflow-income-map-amount-detail>footer{display:flex;min-height:36px;align-items:center;justify-content:space-between;gap:12px;padding:0 4px;color:var(--text-muted);font-size:10px}.cashflow-income-map-amount-detail>footer strong{color:var(--text);font-variant-numeric:tabular-nums;font-weight:550}.cashflow-income-map-amount-detail>footer button{min-height:28px;padding:0 8px;border:0;border-radius:8px;background:transparent;color:var(--income);font-size:10px;font-weight:550}.cashflow-income-map-amount-detail>footer button:hover{background:var(--income-soft)}.cashflow-income-map-goal-detail>header{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;padding:2px 3px}.cashflow-income-map-goal-icon{display:grid;width:42px;height:42px;place-items:center;overflow:hidden;border-radius:12px;background:var(--surface-muted)}.cashflow-income-map-goal-icon img{width:100%;height:100%;padding:5px;object-fit:contain}.cashflow-income-map-goal-detail header>span:nth-child(2){display:grid;gap:2px}.cashflow-income-map-goal-detail header small{color:var(--text-muted);font-size:10px;font-weight:500}.cashflow-income-map-goal-detail h2{margin:0;font-size:17px;font-weight:550}.cashflow-income-map-goal-detail header>strong{color:var(--accent);font-size:15px;font-variant-numeric:tabular-nums;font-weight:550}.cashflow-income-map-goal-progress{position:relative;height:5px;overflow:hidden;border-radius:999px;background:var(--surface-muted)}.cashflow-income-map-goal-progress i{position:absolute;top:0;left:0;display:block;height:100%;min-width:2px;border-radius:inherit}.cashflow-income-map-goal-progress i.projected{opacity:.28}.cashflow-income-map-goal-progress i.current{opacity:1}.cashflow-income-map-goal-summary{display:grid;gap:10px;padding:13px 14px;border:.5px solid var(--display-shell-border);border-radius:14px;background:color-mix(in srgb,var(--surface-raised) 72%,transparent)}.cashflow-income-map-goal-summary-heading,.cashflow-income-map-goal-summary-footer{display:flex;min-width:0;align-items:baseline;justify-content:space-between;gap:12px}.cashflow-income-map-goal-summary-heading span,.cashflow-income-map-goal-summary-footer{color:var(--text-muted);font-size:10px;font-weight:500}.cashflow-income-map-goal-summary-heading strong,.cashflow-income-map-goal-summary-footer strong{color:var(--text);font-size:12px;font-variant-numeric:tabular-nums;font-weight:550}.cashflow-income-map-open-goal{display:inline-flex;min-height:34px;align-items:center;gap:5px;justify-self:start;padding:0 7px;color:var(--accent);font-size:11px;font-weight:550;text-decoration:none}.cashflow-income-map-open-goal:hover{text-decoration:underline;text-underline-offset:3px}@media(max-width:760px){.cashflow-income-map-amount-row{grid-template-columns:minmax(0,1fr);gap:10px}.cashflow-income-map-account{grid-template-columns:38px minmax(0,1fr)}.cashflow-income-map-account-amount{grid-column:2;justify-items:start;text-align:left}}.cashflow-jobless-widget{position:fixed;bottom:calc(18px + env(safe-area-inset-bottom,0px));left:50%;z-index:30;display:grid;min-width:278px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 13px 9px 9px;border:.5px solid color-mix(in srgb,var(--positive) 32%,var(--line-strong));border-radius:16px;background:color-mix(in srgb,var(--surface-raised) 96%,var(--canvas));box-shadow:0 14px 36px #00000047;color:var(--positive);pointer-events:none;transform:translate(-50%);transition:opacity .14s ease,visibility .14s ease}.cashflow-jobless-widget>span:first-child{display:grid;width:38px;height:38px;place-items:center;border-radius:11px;background:var(--positive-soft)}.cashflow-jobless-widget>span:nth-child(2){display:grid;gap:1px}.cashflow-jobless-widget small{color:var(--text-muted);font-size:9px;font-weight:500;letter-spacing:.02em}.cashflow-jobless-widget>span:nth-child(2)>small{color:currentColor;font-weight:500}.cashflow-jobless-widget strong{font-size:18px;font-variant-numeric:tabular-nums;font-weight:500;line-height:1.1}.cashflow-jobless-widget.shortfall{border-color:color-mix(in srgb,var(--negative) 36%,var(--line-strong));color:var(--negative)}.cashflow-jobless-widget.shortfall>span:first-child{background:var(--negative-soft)}@media(max-width:1080px){.cashflow-income-map-workspace{grid-template-columns:minmax(0,1fr)}.cashflow-map-panel{position:static}}@media(max-width:520px){.cashflow-map-pool,.cashflow-map-destination{grid-template-columns:40px minmax(0,1fr)}.cashflow-map-pool>b,.cashflow-map-destination>b{grid-column:2}.cashflow-map-card-icon{width:40px;height:40px}.cashflow-planner-panel .cashflow-sections{padding:0}.cashflow-jobless-widget{width:calc(100% - 32px);min-width:0}}@media(prefers-reduced-motion:reduce){.cashflow-map-spine:after{animation:none;opacity:0}}.cashflow-editor{gap:0}.cashflow-editor>.surface-header{padding-bottom:16px}.cashflow-editor-status{padding:7px 10px;border-top:1px solid var(--line);color:var(--positive);font-size:11px;line-height:1.45}.cashflow-editor-status.error{color:var(--negative)}.cashflow-sections{display:grid}.cashflow-section{display:grid;gap:0;overflow:visible;border:0;border-radius:0;background:transparent}.cashflow-section+.cashflow-section{margin-top:0;border-top:8px solid color-mix(in srgb,var(--canvas) 62%,var(--surface-muted))}.cashflow-section-header{display:grid;grid-template-columns:minmax(0,1fr) auto;min-height:50px;align-items:center;gap:14px;padding:9px 14px;border-bottom:.5px solid color-mix(in srgb,var(--line) 72%,transparent)}.cashflow-section-icon{display:grid;width:30px;height:30px;place-items:center;border-radius:9px;background:var(--surface-muted);color:var(--text-muted)}.cashflow-section-header>div{display:flex;min-width:0;align-items:baseline;gap:8px}.cashflow-section.category-1 .cashflow-section-icon{background:var(--positive-soft);color:var(--positive)}.cashflow-section.category-2 .cashflow-section-icon{background:var(--income-soft);color:var(--income)}.cashflow-section.category-3 .cashflow-section-icon{background:var(--spending-soft);color:var(--spending)}.cashflow-section-header h3{margin:0;font-size:16px;font-weight:550;letter-spacing:0}.cashflow-section-header p{overflow:hidden;margin:0;color:var(--text-muted);font-size:10px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.cashflow-section-header>strong{font-size:16px;font-variant-numeric:tabular-nums;font-weight:550}.cashflow-rule-list{display:grid}.cashflow-rule-row{display:grid;grid-template-columns:minmax(0,1fr) 122px;min-height:44px;align-items:center;gap:8px;padding:0 14px;transition:background-color .15s ease,opacity .15s ease}.cashflow-rule-row+.cashflow-rule-row{border-top:.5px solid color-mix(in srgb,var(--line) 68%,transparent)}.cashflow-sections:has(.cashflow-rule-row:is(:hover,:focus-within)) :is(.cashflow-section-header,.cashflow-rule-row,.cashflow-section-add){opacity:.7}.cashflow-sections:has(.cashflow-rule-row:is(:hover,:focus-within)) .cashflow-section:has(.cashflow-rule-row:is(:hover,:focus-within)) .cashflow-section-header,.cashflow-sections:has(.cashflow-rule-row:is(:hover,:focus-within)) .cashflow-rule-row:is(:hover,:focus-within){opacity:1}.cashflow-rule-row:is(:hover,:focus-within){background:color-mix(in srgb,var(--accent) 7%,transparent)}.cashflow-rule-copy{display:grid;min-width:0;grid-template-columns:minmax(0,auto) minmax(0,1fr);align-items:baseline;gap:8px}.cashflow-rule-edit-trigger{display:grid;width:100%;min-width:0;min-height:38px;grid-template-columns:22px minmax(0,1fr) 20px;align-items:center;gap:7px;padding:3px 2px 3px 0;border:0;border-radius:10px;background:transparent;color:inherit;text-align:left;transition:background .15s ease,color .15s ease}.cashflow-rule-edit-trigger>svg{color:var(--text-muted);opacity:.58;transition:opacity .15s ease}.cashflow-rule-category-mark{display:grid;width:22px;height:22px;place-items:center;overflow:hidden;font-family:"Apple Color Emoji","Segoe UI Emoji",sans-serif;font-size:16px;line-height:1}.cashflow-rule-category-mark img{display:block;width:20px;height:20px;object-fit:contain}.cashflow-rule-edit-trigger:hover{background:color-mix(in srgb,var(--surface-muted) 58%,transparent)}.cashflow-rule-edit-trigger:hover>svg,.cashflow-rule-edit-trigger:focus-visible>svg{opacity:1}.cashflow-rule-edit-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cashflow-rule-copy strong,.cashflow-rule-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cashflow-rule-copy strong{font-size:12px;font-weight:500}.cashflow-rule-copy span{color:var(--text-muted);font-size:10px}.cashflow-amount-field{display:grid;gap:3px}.cashflow-amount-control{display:grid;grid-template-columns:auto minmax(0,1fr);min-height:36px;align-items:center;border:1px solid var(--line);border-radius:12px;background:var(--surface);transition:background-color .18s ease}.cashflow-amount-control:focus-within{background:color-mix(in srgb,var(--accent) 10%,var(--surface))}.cashflow-amount-control>span{padding-left:12px;color:var(--text-muted);font-size:13px}.cashflow-amount-control input{width:100%;min-width:0;min-height:34px;padding:0 10px 0 4px;border:0;outline:0;background:transparent;color:var(--text);font-size:13px;font-variant-numeric:tabular-nums;font-weight:500;text-align:right}.cashflow-amount-control input:disabled{opacity:.58}.cashflow-amount-control:has(input[aria-invalid=true]),.cashflow-timeline-amount-cell input[aria-invalid=true]{border-color:color-mix(in srgb,var(--negative) 58%,var(--line));background:var(--negative-soft);color:var(--negative)}.cashflow-rule-row.has-error{min-height:62px}.cashflow-amount-inline-error{overflow:hidden;color:var(--negative);font-size:8.5px;font-weight:500;line-height:1.2;text-align:right;text-overflow:ellipsis;white-space:nowrap}.cashflow-section-empty{padding:18px;color:var(--text-muted);font-size:12px}.cashflow-section-add{display:flex;min-height:42px;align-items:center;gap:8px;padding:0 14px;border:0;border-top:.5px solid color-mix(in srgb,var(--line) 68%,transparent);background:transparent;color:var(--accent);font-size:11px;font-weight:550;text-align:left}.cashflow-section-add:hover{background:color-mix(in srgb,var(--accent) 7%,transparent)}.cashflow-rule-quick-add{display:grid;min-width:0;min-height:46px;grid-template-columns:minmax(130px,1fr) minmax(138px,.78fr) 30px 30px;align-items:center;gap:6px;padding:5px 10px 5px 14px;border-top:.5px solid color-mix(in srgb,var(--accent) 30%,var(--line));background:color-mix(in srgb,var(--accent) 6%,transparent)}.cashflow-rule-quick-add label{min-width:0}.cashflow-rule-quick-add input,.cashflow-rule-quick-add select{display:block;width:100%;min-width:0;height:34px;padding:0 10px;border:.5px solid var(--display-shell-border);border-radius:10px;outline:0;background:var(--surface);color:var(--text);font:inherit;font-size:11px}.cashflow-rule-quick-add input:focus,.cashflow-rule-quick-add select:focus{border-color:color-mix(in srgb,var(--accent) 62%,var(--line));background:color-mix(in srgb,var(--accent) 7%,var(--surface))}.cashflow-rule-quick-add input::placeholder,.cashflow-rule-quick-add select:invalid{color:var(--text-muted)}.cashflow-rule-quick-add-category{position:relative}.cashflow-rule-quick-add-category select{padding-right:28px;appearance:none}.cashflow-rule-quick-add-category>svg{position:absolute;top:50%;right:9px;color:var(--text-muted);pointer-events:none;transform:translateY(-50%)}.cashflow-rule-quick-add select option{background:var(--surface-raised);color:var(--text)}.cashflow-rule-quick-add-confirm,.cashflow-rule-quick-add-cancel{display:grid;width:30px;height:30px;min-height:30px;place-items:center;padding:0;border-radius:9px}.cashflow-rule-quick-add-confirm{border:.5px solid color-mix(in srgb,var(--accent) 48%,var(--line));background:var(--accent-soft);color:var(--accent)}.cashflow-rule-quick-add-cancel{border:0;background:transparent;color:var(--text-muted)}.cashflow-rule-quick-add-confirm:hover:not(:disabled),.cashflow-rule-quick-add-cancel:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--text)}.cashflow-rule-quick-add>small{grid-column:1 / -1;padding:0 2px 2px;color:var(--negative);font-size:10px}@media(max-width:620px){.cashflow-rule-quick-add{grid-template-columns:minmax(0,1fr) 30px 30px;padding-block:8px}.cashflow-rule-quick-add-name{grid-column:1 / -1}}.cashflow-skeleton-editor{min-height:430px}.cashflow-year-layout{display:grid;width:100%;min-width:0;min-height:0;flex:1 1 auto;grid-template-columns:minmax(0,1fr);gap:0}.cashflow-year-layout.inspector-open{grid-template-columns:minmax(0,1fr) 360px;gap:12px}.cashflow-year-workspace.surface{--cashflow-workspace-min-width: 1060px;--cashflow-category-track-width: 18.312102%;--cashflow-ledger-line: color-mix(in srgb, var(--line) 52%, transparent);display:flex;position:relative;height:100%;min-height:0;flex:1 1 auto;flex-direction:column;overflow:hidden;padding:0;border-radius:18px;background:var(--surface-translucent)}.cashflow-year-workspace>.cashflow-editor-status{border-top:0;border-bottom:1px solid var(--line)}.cashflow-workspace-scroll{display:flex;width:100%;min-height:0;flex:1;overflow-x:auto;overflow-y:hidden;outline:0;overscroll-behavior-inline:contain}.cashflow-workspace-scroll:focus-visible{box-shadow:inset 0 0 0 3px var(--accent-soft)}.cashflow-workspace-inner{display:flex;width:100%;height:100%;min-height:100%;min-width:var(--cashflow-workspace-min-width);flex-direction:column;overflow:hidden}.cashflow-timeline{display:flex;width:100%;min-width:0;min-height:0;flex:0 1 auto;flex-direction:column;overflow-y:auto;overscroll-behavior-block:contain;scrollbar-gutter:stable}.cashflow-timeline>*{flex-shrink:0}.cashflow-year-workspace.editor-expanded .cashflow-timeline{min-height:100%;flex:1;background:var(--surface-translucent)}.cashflow-chart{position:relative;width:100%;height:auto;min-height:260px;aspect-ratio:1256 / 330;flex:1 1 auto;border-bottom:.5px solid var(--cashflow-ledger-line);background:linear-gradient(to bottom,var(--surface-translucent),transparent 55%),transparent}.cashflow-chart-svg{position:absolute;inset:0;display:block;width:100%;height:100%}.cashflow-chart-summary{position:absolute;z-index:2;top:16px;left:16px;display:grid;width:calc(var(--cashflow-category-track-width) - 32px);min-width:154px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface) 90%,transparent);box-shadow:0 8px 24px color-mix(in srgb,var(--canvas) 24%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.cashflow-chart-headline{display:grid;gap:4px}.cashflow-year-estimate{display:grid;gap:3px;margin-top:11px;padding-top:10px;border-top:1px solid var(--line)}.cashflow-chart-headline>span,.cashflow-year-estimate>span{color:var(--text-muted);font-size:11px;font-weight:500}.cashflow-chart-headline strong{color:var(--text);font-size:21px;font-variant-numeric:tabular-nums;font-weight:500;letter-spacing:0}.cashflow-chart-headline.positive strong,.cashflow-year-estimate.positive strong{color:var(--positive)}.cashflow-chart-headline.negative strong,.cashflow-year-estimate.negative strong{color:var(--negative)}.cashflow-chart-toggles{position:absolute;z-index:3;top:14px;right:14px;display:flex;gap:6px}.cashflow-chart-toggles button{display:grid;width:32px;height:32px;place-items:center;border:1px solid var(--line);border-radius:9px;background:var(--surface-glass);color:var(--text-muted);box-shadow:0 3px 10px #14181b0d}.cashflow-chart-toggles button[aria-pressed=true]{border-color:var(--line-strong);color:var(--text);box-shadow:0 3px 10px #14181b14}.cashflow-chart-selection rect{fill:var(--chart-highlight)}.cashflow-chart-selection line{stroke:var(--line-strong);stroke-dasharray:4 5;stroke-width:1}.cashflow-chart-zero{stroke:var(--line-strong);stroke-width:1.5}.cashflow-chart-bar.saved.actual{fill:var(--chart-saved)}.cashflow-chart-bar.overspent.actual{fill:var(--chart-deficit)}.cashflow-chart-bar.forecast{fill-opacity:.17;stroke-width:1.25}.cashflow-chart-bar.saved.forecast{fill:var(--chart-saved);stroke:var(--chart-saved)}.cashflow-chart-bar.overspent.forecast{fill:var(--chart-deficit);stroke:var(--chart-deficit)}.cashflow-chart-line{fill:none;stroke:var(--chart-line);stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.cashflow-chart-line.forecast{opacity:.76;stroke-dasharray:5 6}.cashflow-chart-point{fill:var(--chart-line)}.cashflow-chart-point.forecast{opacity:.75}.cashflow-chart-callout text{fill:var(--text-muted);font-size:10px;text-anchor:middle}.cashflow-chart-callout text.value{fill:var(--text);font-size:12px;font-weight:500}.cashflow-chart-hit{cursor:pointer;outline:none}.cashflow-chart-hit:focus,.cashflow-chart-hit:focus-visible{outline:none}.cashflow-year-estimate strong{font-size:12px;font-variant-numeric:tabular-nums;font-weight:500}.cashflow-chart-legend{position:absolute;z-index:2;right:24px;bottom:18px;display:grid;grid-template-columns:repeat(2,auto);gap:6px 16px;color:var(--text-muted);font-size:10px}.cashflow-chart-legend span{display:inline-flex;align-items:center;gap:6px}.cashflow-chart-legend i{display:inline-block;width:15px;height:2px;background:var(--text-muted)}.cashflow-chart-legend i.saved,.cashflow-chart-legend i.overspent{width:8px;height:8px;border-radius:999px}.cashflow-chart-legend i.saved{background:var(--chart-saved)}.cashflow-chart-legend i.overspent{background:var(--chart-deficit)}.cashflow-chart-legend i.actual{background:var(--chart-line)}.cashflow-chart-legend i.forecast{height:0;border-top:2px dashed var(--chart-line);background:transparent}.cashflow-timeline-row{display:grid;grid-template-columns:230fr repeat(12,78fr) 90fr;width:100%;min-width:0}.cashflow-timeline-disclosure{height:0;opacity:0;overflow:hidden}.cashflow-timeline-disclosure.is-open{opacity:1;background:color-mix(in srgb,var(--accent) 2.5%,var(--surface))}.cashflow-timeline-disclosure-inner{min-height:0;transform:translateY(-6px);transition:transform .16s cubic-bezier(.4,0,1,1)}.cashflow-timeline-disclosure.is-open .cashflow-timeline-disclosure-inner{box-shadow:inset 3px 0 color-mix(in srgb,var(--accent) 28%,transparent);transform:translateY(0);transition-duration:.24s;transition-timing-function:cubic-bezier(.22,1,.36,1)}.cashflow-timeline-row>*{display:flex;min-width:0;min-height:52px;align-items:center;justify-content:center;padding:0 clamp(3px,.45vw,8px);border-bottom:.5px solid var(--cashflow-ledger-line);color:var(--text-muted);font-size:11px;font-variant-numeric:tabular-nums;text-align:center}.cashflow-timeline-row>:first-child{border-left:0}.cashflow-timeline-label{position:sticky;left:0;z-index:2;justify-content:flex-start!important;gap:8px;background:var(--surface);color:var(--text)!important;text-align:left!important}.cashflow-timeline-expand-button{display:flex;width:100%;min-height:0;align-self:stretch;align-items:center;gap:8px;padding:0;border:0;background:transparent;color:inherit;text-align:left}.cashflow-timeline-chevron{flex:0 0 auto;color:var(--text-muted);opacity:.78;transform:rotate(0);transition:transform .22s cubic-bezier(.22,1,.36,1)}.cashflow-timeline-expand-button[aria-expanded=true] .cashflow-timeline-chevron{transform:rotate(90deg)}.cashflow-subcategory-icon,.cashflow-subcategory-emoji{display:block;width:22px;height:22px;flex:0 0 auto}.cashflow-subcategory-icon{object-fit:contain}.cashflow-subcategory-emoji{display:grid;place-items:center;font-size:16px;line-height:1}.cashflow-timeline-static-label{display:flex!important;align-items:center;gap:8px!important}.cashflow-timeline-label span{display:grid;min-width:0;gap:2px}.cashflow-timeline-label strong,.cashflow-timeline-label small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cashflow-timeline-label strong{font-size:12px;font-weight:500}.cashflow-timeline-label small{color:var(--text-muted);font-size:10px;font-weight:450}.cashflow-timeline-header>*{min-height:38px;background:var(--surface);color:var(--text-muted)!important;font-size:10px;font-weight:500}.cashflow-timeline-header{position:sticky;z-index:7;top:0;flex:0 0 auto}.cashflow-timeline-header .cashflow-timeline-label{z-index:3;gap:9px;padding-left:20px}.cashflow-editor-size-toggle{display:grid;width:24px;height:24px;flex:0 0 auto;place-items:center;padding:0;border:1px solid var(--line);border-radius:7px;background:var(--surface-glass);color:var(--text-muted)}.cashflow-editor-size-toggle:hover{border-color:var(--line-strong);color:var(--text)}.cashflow-editor-size-toggle:focus-visible{outline:3px solid var(--focus-ring);outline-offset:1px}.cashflow-editor-size-toggle[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.cashflow-timeline-header>div:not(:first-child){justify-content:center}.cashflow-timeline-header .current span{padding:4px 9px;border-radius:9px;background:var(--accent-soft);color:var(--accent);font-weight:500}.cashflow-timeline-category>*{min-height:54px;background:var(--surface-muted)}.cashflow-timeline-category.cashflow-values-single-line>*{min-height:44px}.cashflow-timeline-category.cashflow-values-stacked>*{min-height:50px}.cashflow-timeline-category .cashflow-timeline-label{background:var(--surface-muted)}.cashflow-timeline-category .cashflow-timeline-label strong{font-size:13px}.cashflow-timeline-group.category-1 .cashflow-timeline-category .cashflow-timeline-chevron,.cashflow-timeline-group.category-spending .cashflow-timeline-category .cashflow-timeline-chevron{color:var(--text-muted)}.cashflow-timeline-subcategory>*{min-height:48px;background:var(--surface)}.cashflow-timeline-subcategory.cashflow-values-single-line>*{min-height:38px}.cashflow-timeline-subcategory.cashflow-values-stacked>*{min-height:46px}.cashflow-timeline-subcategory .cashflow-timeline-label{padding-left:25px}.cashflow-timeline-subcategory .cashflow-timeline-label strong,.cashflow-timeline-rule .cashflow-timeline-label strong,.cashflow-timeline-subcategory .cashflow-timeline-rollup-value>strong,.cashflow-timeline-subcategory .cashflow-actual-drilldown strong{color:var(--text-muted);font-size:11px;font-weight:450}.cashflow-timeline-subcategory.spending-category .cashflow-timeline-label{padding-left:22px;background:var(--surface)}.cashflow-timeline-subcategory.nested .cashflow-timeline-label{padding-left:46px}.cashflow-timeline-rule>*{min-height:52px;background:var(--surface)}.cashflow-timeline-rule .cashflow-timeline-label{padding-left:54px;background:var(--surface)}.cashflow-timeline-rule .cashflow-rule-label{display:flex;min-width:0;flex:1 1 auto;align-items:center;gap:6px}.cashflow-timeline-rule .cashflow-rule-label strong{min-width:0}.cashflow-timeline-rule .cashflow-rule-cadence{display:inline-flex;min-height:17px;flex:0 0 auto;align-items:center;padding:2px 6px;border:.5px solid var(--line);border-radius:999px;background:var(--surface-muted);color:var(--text-muted);font-size:8.5px;font-weight:500;line-height:1}.cashflow-rule-settings{display:grid;width:28px;height:28px;flex:0 0 auto;margin-left:auto;place-items:center;padding:0;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text-muted)}.cashflow-rule-settings:hover,.cashflow-rule-settings:focus-visible{border-color:var(--line);background:var(--surface-muted);color:var(--text)}.cashflow-rule-settings:focus-visible{outline:3px solid var(--focus-ring);outline-offset:1px}.cashflow-rule-create-row{width:100%;min-width:0;min-height:52px;border-bottom:.5px solid var(--cashflow-ledger-line);background:var(--surface)}.cashflow-rule-create-prompt{position:sticky;left:0;z-index:2;display:flex;width:var(--cashflow-category-track-width);min-height:52px;align-items:center;gap:8px;padding:4px 12px 4px 54px;background:var(--surface)}.cashflow-rule-create-prompt>span{color:var(--text-muted);font-size:10px;white-space:nowrap}.cashflow-rule-create-prompt.empty{min-height:64px;flex-direction:column;align-items:flex-start;justify-content:center;gap:0}.cashflow-rule-create-trigger{display:inline-flex;min-height:44px;align-items:center;gap:6px;padding:0;border:0;background:transparent;color:var(--accent);font-size:11px;font-weight:500;white-space:nowrap}.cashflow-rule-create-trigger:hover{color:var(--text)}.cashflow-timeline-rollup-value{display:grid;align-content:center;justify-items:center;gap:3px;text-align:center}.cashflow-values-stacked .cashflow-timeline-rollup-value{gap:0}.cashflow-values-stacked .cashflow-timeline-rollup-value strong,.cashflow-values-stacked .cashflow-timeline-rollup-value>span{line-height:1.05}.cashflow-timeline-rollup-value strong{color:var(--text);font-size:12px;font-weight:500}.cashflow-timeline-rollup-value>span{color:var(--text-muted);font-size:9.5px}.cashflow-actual-drilldown{display:inline-grid;min-width:44px;min-height:28px;place-items:center;padding:2px 6px;border:1px solid transparent;border-radius:8px;background:transparent;color:inherit;cursor:pointer}.cashflow-values-stacked .cashflow-actual-drilldown{min-height:20px;padding-block:0}.cashflow-actual-drilldown:hover,.cashflow-actual-drilldown:focus-visible{border-color:color-mix(in srgb,var(--accent) 28%,var(--line));background:color-mix(in srgb,var(--accent) 9%,transparent)}.cashflow-actual-drilldown:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 46%,transparent);outline-offset:1px}.cashflow-actual-drilldown strong{color:var(--text);font-size:12px;font-weight:500}.cashflow-timeline-rollup-value.single{gap:0}.cashflow-tracking-only-note{min-height:48px;padding:16px 20px 16px 54px;border-bottom:.5px solid var(--cashflow-ledger-line);color:var(--text-muted);font-size:11px}.cashflow-timeline-saving>*{min-height:48px;border-bottom:0;background:var(--surface-muted)}.cashflow-timeline-saving.cashflow-values-single-line>*{min-height:40px}.cashflow-timeline-saving.cashflow-values-stacked>*{min-height:46px}.cashflow-timeline-saving{position:sticky;z-index:8;bottom:0;margin-top:auto;flex:0 0 auto;box-shadow:0 -8px 18px color-mix(in srgb,var(--canvas) 18%,transparent)}.cashflow-timeline-saving .cashflow-timeline-label{z-index:9}.cashflow-timeline-saving .cashflow-timeline-label{padding-left:20px;background:var(--surface-muted)}.cashflow-timeline-row.cashflow-timeline-saving .cashflow-timeline-rollup-value.positive>strong{color:var(--positive)}.cashflow-timeline-row.cashflow-timeline-saving .cashflow-timeline-rollup-value.negative>strong{color:var(--negative)}.cashflow-timeline-rollup-value.planning-primary>strong,.cashflow-timeline-row.cashflow-timeline-saving .cashflow-timeline-rollup-value.planning-primary>strong{color:var(--text-muted)}.cashflow-timeline-amount-cell{position:relative;justify-content:center!important;padding:6px!important}.cashflow-timeline-amount-cell input{width:100%;min-width:0;min-height:38px;padding:0 7px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--text-muted);font-size:11px;font-variant-numeric:tabular-nums;font-weight:500;text-align:center;transition:background-color .18s ease,color .18s ease}.cashflow-timeline-amount-cell:hover input{border-color:var(--line);background:var(--surface)}.cashflow-timeline-amount-cell input:focus{border-color:transparent;background:color-mix(in srgb,var(--accent) 11%,var(--surface));outline:0;color:var(--text)}.cashflow-timeline-amount-cell.is-saving,.cashflow-amount-field.is-saving .cashflow-amount-control{background:color-mix(in srgb,var(--accent) 7%,var(--surface))}.cashflow-timeline-amount-cell.is-saving input,.cashflow-amount-field.is-saving input{opacity:1;background-image:linear-gradient(90deg,var(--text-muted) 10%,var(--text) 45%,var(--text-muted) 80%);background-position:140% 0;background-size:220% 100%;background-clip:text;animation:cashflow-save-shimmer .85s linear infinite;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.cashflow-timeline-amount-cell.is-saved{--cashflow-saved-final-background: transparent;--cashflow-saved-final-color: var(--text-muted);animation:cashflow-saved-surface 1.45s ease-out both}.cashflow-amount-field.is-saved{--cashflow-saved-final-background: var(--surface);--cashflow-saved-final-color: var(--text)}.cashflow-amount-field.is-saved .cashflow-amount-control{animation:cashflow-saved-surface 1.45s ease-out both}.cashflow-timeline-amount-cell.is-saved input,.cashflow-amount-field.is-saved input,.cashflow-amount-field.is-saved .cashflow-amount-control>span{animation:cashflow-saved-text 1.45s ease-out both}@keyframes cashflow-save-shimmer{to{background-position:-80% 0}}@keyframes cashflow-saved-text{0%,58%{color:var(--positive)}to{color:var(--cashflow-saved-final-color)}}@keyframes cashflow-saved-surface{0%,42%{background-color:color-mix(in srgb,var(--positive) 11%,var(--surface))}to{background-color:var(--cashflow-saved-final-background)}}@media(prefers-reduced-motion:reduce){.cashflow-timeline-amount-cell.is-saving input,.cashflow-amount-field.is-saving input{background-image:none;animation:none;-webkit-text-fill-color:var(--text-muted)}.cashflow-timeline-amount-cell.is-saved,.cashflow-amount-field.is-saved .cashflow-amount-control,.cashflow-timeline-amount-cell.is-saved input,.cashflow-amount-field.is-saved input,.cashflow-amount-field.is-saved .cashflow-amount-control>span{animation:none}.cashflow-timeline-amount-cell.is-saved input,.cashflow-amount-field.is-saved input,.cashflow-amount-field.is-saved .cashflow-amount-control>span{color:var(--positive)}}.cashflow-rule-inspector{position:absolute;z-index:20;top:0;right:0;bottom:0;display:flex;width:360px;min-width:0;min-height:0;flex-direction:column;overflow:hidden;border-left:1px solid var(--line);background:var(--surface);box-shadow:-16px 0 36px #14181b1a;animation:cashflow-inspector-enter .18s cubic-bezier(.22,1,.36,1) both}.cashflow-year-layout>.cashflow-rule-inspector{position:relative;inset:auto;width:100%;border:1px solid var(--line);border-radius:18px;box-shadow:0 14px 36px #14181b14}.cashflow-income-map-layout>.cashflow-rule-inspector{position:sticky;inset:18px auto auto;width:100%;height:min(640px,calc(100dvh - 118px));min-height:480px;border:1px solid var(--line);border-radius:18px;box-shadow:0 14px 36px #14181b1f}@keyframes cashflow-inspector-enter{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.cashflow-rule-inspector>header{display:flex;min-height:68px;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px 12px 18px;border-bottom:1px solid var(--line)}.cashflow-rule-inspector>header:has(>strong){min-height:54px}.cashflow-rule-inspector>header>span{display:grid;gap:3px}.cashflow-rule-inspector>header strong{color:var(--text);font-size:14px}.cashflow-rule-inspector>header small{color:var(--text-muted);font-size:10px}.cashflow-rule-inspector>header button{display:grid;width:32px;height:32px;flex:0 0 auto;place-items:center;padding:0;border:1px solid var(--line);border-radius:9px;background:var(--surface-muted);color:var(--text-muted)}.cashflow-rule-inspector>form{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;gap:14px;padding:18px;overflow-y:auto}.cashflow-rule-inspector label>span:first-child{color:var(--text-muted);font-size:11px;font-weight:500}.cashflow-rule-effective-month{grid-template-rows:auto auto}.cashflow-rule-effective-month>small{grid-column:2;margin-top:-8px;color:var(--text-muted);font-size:9px;line-height:1.25}.cashflow-rule-inspector input:not([type=checkbox]),.cashflow-rule-inspector select,.cashflow-rule-inspector-money{width:100%;min-height:42px;padding:0 9px;border:0;border-radius:9px;background:transparent;color:var(--text);font-size:12px}.cashflow-rule-inspector .cashflow-rule-frequency-select{display:block;height:40px;min-height:40px;padding:0 30px 0 10px;border:.5px solid color-mix(in srgb,var(--line) 72%,transparent);background-color:color-mix(in srgb,var(--surface-muted) 58%,transparent);line-height:40px;text-align:left;text-align-last:left}.cashflow-readable-date{display:grid;position:relative;min-width:0;min-height:40px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 10px;border:.5px solid color-mix(in srgb,var(--line) 72%,transparent);border-radius:9px;background:color-mix(in srgb,var(--surface-muted) 58%,transparent);color:var(--text);font-size:12px}.cashflow-readable-date>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cashflow-readable-date>svg{color:var(--text-muted)}.cashflow-readable-date>input{position:absolute;inset:0;width:100%;height:100%;min-height:0!important;padding:0!important;border:0!important;appearance:none;cursor:pointer;opacity:0}.cashflow-readable-date.disabled{opacity:.55}.cashflow-readable-date.disabled>input{cursor:not-allowed}.cashflow-rule-inspector select option{background:var(--surface-raised);color:var(--text)}.cashflow-rule-inspector select:open{background:var(--surface-muted);box-shadow:inset 0 0 0 1px var(--line-strong)}@supports (appearance: base-select){.cashflow-rule-inspector select,.cashflow-rule-inspector select::picker(select){appearance:base-select}.cashflow-rule-inspector select::picker(select){margin-block:5px;padding:5px;border:1px solid var(--line-strong);border-radius:11px;background:var(--surface-raised);box-shadow:0 16px 34px #00000047;color:var(--text)}.cashflow-rule-inspector select option{min-height:34px;padding:8px 10px;border-radius:8px;background:var(--surface-raised);color:var(--text)}.cashflow-rule-inspector select option:hover,.cashflow-rule-inspector select option:focus-visible,.cashflow-rule-inspector select option:checked{background:var(--accent-soft);color:var(--text)}}.cashflow-rule-select-control{display:block;position:relative;min-width:0}.cashflow-rule-select-control>select{appearance:none!important}.cashflow-rule-select-control>svg{position:absolute;top:50%;right:10px;color:var(--text-muted);pointer-events:none;transform:translateY(-50%)}.cashflow-rule-select-control:has(select:disabled)>svg{opacity:.45}.cashflow-rule-inspector-money{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;color:var(--text-muted)}.cashflow-rule-inspector-money input{min-height:40px!important;padding-inline:6px!important;border:0!important;outline:0}.cashflow-rule-inspector-end-toggle{min-height:52px;align-items:center;color:var(--text);font-size:11px}.cashflow-rule-inspector-toggle{display:inline-flex;min-width:74px;align-items:center;justify-content:flex-end;gap:7px;color:var(--text-muted);cursor:pointer;font-size:10px}.cashflow-rule-inspector-toggle input{position:absolute;opacity:0;pointer-events:none}.cashflow-rule-inspector-toggle>span{position:relative;width:32px;height:18px;border:.5px solid var(--clickable-shell-border);border-radius:999px;background:var(--clickable-shell-fill);transition:background .14s ease,border-color .14s ease}.cashflow-rule-inspector-toggle>span:after{position:absolute;top:3px;left:3px;width:11px;height:11px;border-radius:50%;background:var(--text-muted);content:"";transition:transform .14s ease,background .14s ease}.cashflow-rule-inspector-toggle input:checked+span{border-color:var(--clickable-shell-selected-border);background:var(--clickable-shell-selected-fill)}.cashflow-rule-inspector-toggle input:checked+span:after{background:var(--accent);transform:translate(14px)}.cashflow-rule-inspector-toggle input:focus-visible+span{outline:var(--moolah-input-focus-width) solid color-mix(in srgb,var(--accent) 50%,transparent);outline-offset:0}.cashflow-rule-inspector-toggle input:disabled+span,.cashflow-rule-inspector-toggle input:disabled~b{opacity:.5}.cashflow-rule-inspector-toggle b{min-width:18px;font-weight:500}.cashflow-rule-inspector>form>p{margin:0;color:var(--negative);font-size:11px}.cashflow-rule-inspector-actions{display:flex;width:100%;align-items:center;gap:7px;margin-top:auto;padding-top:16px}.cashflow-rule-inspector-actions>button{min-width:96px;min-height:38px;justify-content:center;padding:0 12px;border-radius:10px;font-size:12px}.cashflow-rule-inspector-action-spacer{flex:1 1 auto}.cashflow-rule-delete-button{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:6px;padding:0 11px;border:1px solid color-mix(in srgb,var(--negative) 36%,var(--line));border-radius:10px;background:color-mix(in srgb,var(--negative) 8%,transparent);color:var(--negative);font-size:12px}.cashflow-rule-delete-button:hover:not(:disabled),.cashflow-rule-delete-button.confirm{border-color:var(--negative);background:var(--negative);color:#fff}.cashflow-rule-delete-confirm{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:10px;border:1px solid color-mix(in srgb,var(--negative) 28%,var(--line));border-radius:11px;background:color-mix(in srgb,var(--negative) 6%,var(--surface))}.cashflow-rule-delete-confirm>span{display:grid;gap:2px}.cashflow-rule-delete-confirm strong{color:var(--text);font-size:11px}.cashflow-rule-delete-confirm small{color:var(--text-muted);font-size:9px}.cashflow-rule-delete-confirm button{min-height:34px;padding:0 9px;font-size:10px}.cashflow-rule-override-confirm{display:grid;gap:10px;padding:12px;border:1px solid color-mix(in srgb,var(--spending) 34%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--spending) 7%,var(--surface))}.cashflow-rule-override-confirm>span:first-child{display:grid;gap:3px}.cashflow-rule-override-confirm strong{color:var(--text);font-size:11px}.cashflow-rule-override-confirm small{color:var(--text-muted);font-size:9.5px;line-height:1.35}.cashflow-rule-override-confirm ul{display:flex;max-height:84px;flex-wrap:wrap;gap:5px;margin:0;padding:0;overflow-y:auto;list-style:none}.cashflow-rule-override-confirm li{padding:4px 7px;border:.5px solid var(--line);border-radius:999px;background:var(--surface-muted);color:var(--text);font-size:9px;font-variant-numeric:tabular-nums}.cashflow-rule-override-confirm-actions{display:flex;justify-content:flex-end;gap:7px}.cashflow-rule-override-confirm-actions button{min-height:34px;padding:0 10px;font-size:10px}.cashflow-amount-scope-options{display:grid;gap:7px;margin:0;padding:0;border:0}.cashflow-amount-scope-options legend{margin-bottom:7px;color:var(--text-muted);font-size:11px;font-weight:500}.cashflow-amount-scope-options>label{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:9px;padding:10px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--surface-muted) 55%,transparent);cursor:pointer}.cashflow-amount-scope-options>label:has(input:checked){border-color:color-mix(in srgb,var(--accent) 52%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.cashflow-rule-inspector .cashflow-amount-scope-options input[type=radio]{width:16px;min-height:16px;margin:2px 0 0;accent-color:var(--accent)}.cashflow-amount-scope-options>label>span{display:grid;gap:3px}.cashflow-amount-scope-options strong{color:var(--text);font-size:11px}.cashflow-amount-scope-options small{color:var(--text-muted);font-size:9.5px;line-height:1.4}.cashflow-amount-scope-options input[type=month]{margin-top:6px;border:1px solid var(--line)!important;background:var(--surface)!important}.cashflow-timeline-inactive,.cashflow-timeline-rule-total{justify-content:center!important;color:#aaa7a1!important}.cashflow-timeline-rule-total{justify-content:center!important;color:var(--text-muted)!important;font-weight:500}.cashflow-timeline-row:not(.cashflow-timeline-header):not(.cashflow-timeline-saving){transition:opacity .15s ease}.cashflow-timeline:has(.cashflow-timeline-subcategory:is(:hover,:focus-within)) .cashflow-timeline-row:not(.cashflow-timeline-header):not(.cashflow-timeline-saving){opacity:.7}.cashflow-timeline:has(.cashflow-timeline-subcategory:is(:hover,:focus-within)) .cashflow-timeline-row.cashflow-timeline-subcategory:is(:hover,:focus-within){opacity:1}.cashflow-timeline-subcategory:is(:hover,:focus-within)>*{background:color-mix(in srgb,var(--accent) 9%,var(--surface));color:var(--text)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.dashboard-error{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;margin-bottom:18px}.dashboard-error>svg{color:var(--negative)}.skeleton{position:relative;overflow:hidden;min-height:132px;background:var(--surface-muted)}.skeleton:after{position:absolute;inset:0;background:linear-gradient(90deg,transparent,var(--skeleton-sheen),transparent);content:"";transform:translate(-100%);animation:shimmer 1.5s infinite}.skeleton-panel{min-height:270px}@keyframes shimmer{to{transform:translate(100%)}}@media(max-width:1080px){.dashboard-secondary-grid,.dashboard-workspace-grid,.dashboard-lower-grid{grid-template-columns:1fr}}@media(max-width:780px){.app-shell{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:64px minmax(0,1fr);height:auto;min-height:100dvh;overflow:visible}.shell-mobile-bar{position:sticky;top:0;z-index:35;display:flex;grid-column:1;grid-row:1;min-height:64px;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid var(--line);background:var(--sidebar-surface);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.shell-mobile-brand{display:flex;align-items:center;gap:10px}.shell-mobile-brand>span:last-child{display:grid}.shell-mobile-brand strong{color:var(--text);font-size:13px}.shell-mobile-brand small{color:var(--text-muted);font-size:10px}.shell-mobile-menu{display:grid;width:42px;height:42px;min-height:42px;padding:0;border:1px solid var(--line);background:var(--surface-raised);color:var(--text);box-shadow:none}.shell-navigation-scrim{position:fixed;z-index:40;inset:64px 0 0;display:block;padding:0;border:0;background:var(--scrim)}.app-sidebar{position:fixed;inset:64px auto 0 0;z-index:45;display:none;width:min(300px,calc(100vw - 40px));max-height:calc(100dvh - 64px);align-items:stretch;margin:0;padding:18px 14px 14px;overflow-y:auto;border:0;border-right:1px solid var(--line);border-bottom:0;border-radius:0;background:var(--sidebar-surface);box-shadow:var(--shadow)}.app-sidebar.mobile-open{display:flex}.sidebar-navigation{display:grid;align-content:start;gap:8px;margin:8px 0 0}.sidebar-ai-section{margin:12px 0 20px;padding:8px 0 0}.sidebar-brand{display:flex;justify-content:flex-start;gap:10px;padding:0 8px}.sidebar-brand .brand-copy{position:static;display:grid;width:auto;opacity:1;transform:none;visibility:visible}.navigation-item{display:grid;min-height:50px;grid-template-columns:40px minmax(0,1fr) auto;justify-content:initial;justify-items:stretch;gap:10px;padding:0 12px;border-radius:13px}.navigation-label{position:static;display:block;align-self:center;width:auto;max-width:none;overflow:visible;padding:0;border:0;background:transparent;box-shadow:none;opacity:1;text-overflow:clip;transform:none}.navigation-item:not(:disabled):hover .navigation-label,.navigation-item:focus-visible .navigation-label{transform:none}.coming-soon{display:inline-flex;position:static;align-self:center;padding:3px 6px;border-radius:999px;background:var(--surface-muted);color:var(--text-muted);font-size:9px;font-weight:500;text-transform:uppercase}.sidebar-account{display:grid;min-height:58px;grid-template-columns:40px minmax(0,1fr);justify-content:initial;place-items:center stretch;gap:10px;padding:0 12px}.sidebar-account-copy{position:static;display:grid;min-width:0;opacity:1;transform:none;visibility:visible}.sidebar-account-copy strong,.sidebar-account-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-account-copy strong{color:var(--text);font-size:12px}.sidebar-account-copy small{color:var(--text-muted);font-size:10px}.app-content{grid-column:1;grid-row:2;min-height:calc(100dvh - 64px);overflow:visible;padding:22px 18px 40px}.app-content:has(>.cashflow-page.year-view){overflow:visible}.cashflow-page.year-view{height:auto;overflow:visible}.cashflow-year-layout.inspector-open,.cashflow-income-map-layout.inspector-open{grid-template-columns:minmax(0,1fr);gap:0}.cashflow-income-map-layout.inspector-open .cashflow-jobless-widget{visibility:hidden;opacity:0}.cashflow-rule-inspector,.cashflow-year-layout>.cashflow-rule-inspector,.cashflow-income-map-layout>.cashflow-rule-inspector{position:fixed;inset:64px 0 0 auto;width:min(100%,390px);height:auto;min-height:0;border-radius:18px 0 0}.page-header{align-items:flex-start;flex-direction:column;gap:16px}.page-header-actions{width:100%;flex-wrap:wrap}.month-field{flex:1}.cashflow-view-toggle{width:100%}.cashflow-plan-button{flex:1}.month-field input{width:100%}.kpi-grid,.dashboard-kpi-grid,.dashboard-primary-grid,.cashflow-summary-grid{grid-template-columns:1fr}.plan-status-card{grid-template-columns:auto minmax(0,1fr)}.month-progress-block{grid-column:1 / -1;padding:14px 0 0;border-top:1px solid var(--line);border-left:0}.budget-group-grid{grid-template-columns:1fr}.financial-position-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.position-strip-stat{border-top:1px solid var(--line)}.position-strip-stat:nth-child(2){border-top:0}.metric-card{min-height:116px}.definition-list{grid-template-columns:1fr}.definition-list div{grid-template-columns:minmax(0,1fr) auto}.dashboard-error{grid-template-columns:auto minmax(0,1fr)}.dashboard-error .secondary-button{grid-column:1 / -1}}@media(max-width:520px){.auth-canvas{padding:82px 20px 18px}.auth-wordmark{top:24px;left:20px}.brand-wordmark{width:80px}.auth-content{align-items:center;padding:0 0 28px}.auth-brand-hand{width:68px;height:68px;margin-bottom:24px}.auth-login-panel,.auth-verification-panel{min-height:408px}.auth-panel h1{font-size:30px}.auth-description{font-size:14px}.auth-form{margin-top:26px}.phone-field{min-height:56px;border-radius:22px}.phone-country-picker summary,.phone-field input{min-height:54px}.phone-country-picker summary{border-radius:22px 0 0 22px}.code-input-cells{gap:6px}.code-input-cells span{border-radius:11px;font-size:20px}.security-signals{margin-top:22px}.account-avatar{width:34px;height:34px}.transaction-row{grid-template-columns:34px minmax(0,1fr)}.transaction-row>span:last-child{grid-column:2}.dashboard-section-header{align-items:flex-start;flex-direction:column}.dashboard-section-header.compact{flex-direction:row}.dashboard-section-link{width:100%;justify-content:center;border:1px solid var(--line)}.goal-card-grid,.financial-position-strip{grid-template-columns:1fr}.position-strip-stat,.position-strip-stat:nth-child(2){border-top:1px solid var(--line);border-left:0}.transaction-amount-block{grid-column:2;justify-items:start}.cashflow-section-header{grid-template-columns:minmax(0,1fr) auto;padding:12px 14px}.cashflow-section-header>strong{grid-column:auto}.cashflow-rule-list{padding-left:0}.cashflow-rule-row{grid-template-columns:minmax(0,1fr) 116px;gap:8px;padding-inline:14px}.cashflow-section-empty{margin-left:0}}.flutter-dashboard{width:100%;min-width:0;container-type:inline-size}.flutter-dashboard-header{display:flex;min-height:58px;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.flutter-dashboard-title-row{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:16px}.flutter-dashboard-title-row h1{margin:0;color:var(--flutter-text);font-size:34px;font-weight:500;letter-spacing:0;line-height:1}.flutter-month-stepper{display:grid;grid-template-columns:44px minmax(128px,auto) 44px;min-height:48px;align-items:center;border:1px solid var(--flutter-border-strong);border-radius:999px;background:var(--flutter-row)}.flutter-month-stepper button{display:grid;width:44px;height:44px;place-items:center;border:0;border-radius:999px;background:transparent;color:var(--flutter-muted)}.flutter-month-stepper button:not(:disabled):hover{color:var(--flutter-text)}.flutter-month-stepper button:disabled{color:var(--flutter-subtle)}.flutter-month-stepper>span{color:var(--flutter-text);font-size:14px;font-weight:500;text-align:center}.flutter-ai-button{display:inline-flex;min-height:54px;flex:0 0 auto;align-items:center;gap:10px;padding:0 18px;border:1px solid var(--flutter-border-strong);border-radius:18px;background:var(--flutter-row);color:var(--flutter-text);font-size:14px;font-weight:500;opacity:1}.flutter-ai-button .brand-mark-compact{width:30px;height:30px;border-radius:9px}.flutter-dashboard-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(280px,1.08fr);gap:18px;align-items:start}.flutter-dashboard-main{display:grid;min-width:0;align-content:start;gap:18px}.flutter-budget-grid{display:grid;min-width:0;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:18px}.flutter-forecast-alert{grid-column:1 / -1;padding:12px 14px;border:1px solid var(--warning);border-radius:12px;background:var(--warning-soft);color:var(--warning);font-size:13px}.flutter-kpi-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.flutter-metric-card{display:grid;min-width:0;min-height:174px;align-content:space-between;gap:18px;padding:22px;border:.5px solid var(--widget-shell-border);border-radius:20px;background:var(--widget-shell-fill)}.flutter-metric-label{display:flex;align-items:center;gap:10px;color:var(--flutter-muted);font-size:13px;font-weight:480}.flutter-metric-label svg{color:var(--flutter-muted)}.flutter-metric-card>strong{overflow:hidden;color:var(--flutter-text);font-size:40px;font-variant-numeric:tabular-nums;font-weight:500;letter-spacing:0;line-height:1;text-overflow:ellipsis;white-space:nowrap}.flutter-metric-card>strong.positive{color:var(--positive)}.flutter-metric-card>strong.negative{color:var(--negative)}.flutter-metric-comparison{display:flex;min-width:0;align-items:center;gap:12px}.flutter-metric-comparison>span{flex:0 0 auto;padding:5px 10px;border-radius:999px;background:var(--flutter-green-soft);color:var(--flutter-green);font-size:11px;font-variant-numeric:tabular-nums;font-weight:500}.flutter-metric-comparison small{overflow:hidden;color:var(--flutter-muted);font-size:11px;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.flutter-income-stack,.flutter-activity-rail{display:grid;gap:18px}.flutter-panel{display:grid;min-width:0;align-content:start;gap:16px;padding:20px;border:.5px solid var(--widget-shell-border);border-radius:20px;background:var(--widget-shell-fill)}.flutter-panel-header{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:12px}.flutter-panel-header>div{display:flex;min-width:0;align-items:center;gap:8px}.flutter-panel-header h2{margin:0;overflow:hidden;color:var(--flutter-text);font-size:20px;font-weight:500;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.flutter-panel-header svg{flex:0 0 auto;color:var(--flutter-muted)}.flutter-panel-header>p{margin:0;flex:0 0 auto;color:var(--flutter-muted);font-size:12px;font-variant-numeric:tabular-nums}.flutter-panel-header>p strong{color:var(--flutter-text);font-size:18px;font-weight:500}.flutter-budget-list,.flutter-goal-list,.flutter-transaction-list{display:grid;gap:10px}.flutter-budget-row{position:relative;min-width:0;overflow:hidden;border:1px solid var(--flutter-border);border-radius:15px;background:var(--flutter-row);transition:border-color .16s ease,box-shadow .16s ease}.flutter-budget-row.is-expanded{border-color:color-mix(in srgb,var(--flutter-purple) 62%,var(--flutter-border));box-shadow:0 0 0 2px color-mix(in srgb,var(--flutter-purple) 18%,transparent)}.flutter-budget-row-content{display:grid;width:100%;grid-template-columns:34px minmax(0,1fr) auto 15px;min-height:58px;align-items:center;gap:8px;padding:7px 10px 10px;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;text-align:left;touch-action:manipulation;transition:background .16s ease}.flutter-budget-row-content:hover{background:color-mix(in srgb,var(--flutter-purple) 7%,transparent)}.flutter-budget-row-content:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-3px}.flutter-budget-row-content>svg{color:var(--flutter-muted);transition:color .16s ease,transform .16s ease}.flutter-budget-row-content:hover>svg,.flutter-budget-row.is-expanded .flutter-budget-row-content>svg{color:var(--flutter-purple)}.flutter-budget-row.is-expanded .flutter-budget-row-content>svg{transform:rotate(90deg)}.flutter-row-icon{display:grid;width:34px;height:34px;overflow:hidden;place-items:center;border-radius:10px;background:var(--flutter-border-strong);color:var(--flutter-muted)}.flutter-row-icon img{display:block;width:100%;height:100%;padding:4px;object-fit:contain}.flutter-budget-row-content>strong{overflow:hidden;color:var(--flutter-text);font-size:13px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.flutter-budget-values{display:inline-flex;align-items:baseline;gap:3px;color:var(--flutter-muted);font-size:10.5px;font-variant-numeric:tabular-nums;white-space:nowrap}.flutter-budget-values strong{color:var(--flutter-text);font-size:11.5px;font-weight:500}.flutter-budget-values i{color:var(--flutter-subtle);font-style:normal}.flutter-budget-track{position:absolute;right:0;bottom:0;left:0;height:7px;background:var(--flutter-teal-track)}.flutter-budget-track>span{display:block;height:100%;border-radius:0 999px 999px 0;background:var(--flutter-teal)}.flutter-budget-1 .flutter-budget-track{background:var(--flutter-yellow-track)}.flutter-budget-1 .flutter-budget-track>span{background:var(--flutter-yellow)}.flutter-budget-row.is-over .flutter-budget-track{background:var(--flutter-red-track)}.flutter-budget-row.is-over .flutter-budget-track>span{background:var(--flutter-red)}.cashflow-category-popover{position:fixed;z-index:60;display:grid;width:min(332px,calc(100vw - 32px));height:min(520px,calc(100vh - 32px));grid-template-rows:auto auto minmax(0,1fr);overflow:hidden;border:1px solid var(--flutter-border-strong);border-radius:18px;background:var(--surface);box-shadow:var(--shadow);color:var(--flutter-text);animation:cashflow-category-popover-in .18s ease-out both;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.cashflow-category-popover-header{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:12px;padding:13px 12px 11px 14px}.cashflow-category-popover-header>div{display:flex;min-width:0;align-items:center;gap:10px}.cashflow-category-popover-header .flutter-row-icon{width:34px;height:34px;flex:0 0 auto}.cashflow-category-popover-header .flutter-row-icon img{padding:4px}.cashflow-category-popover-header h3{margin:2px 0 0;overflow:hidden;font-size:16px;font-weight:500;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.cashflow-category-period{display:flex;align-items:center;gap:5px;color:var(--flutter-muted);font-size:10px;font-weight:500}.cashflow-category-popover-header>button{display:grid;width:44px;height:44px;flex:0 0 auto;place-items:center;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--flutter-muted)}.cashflow-category-popover-header>button:hover{border-color:var(--flutter-border);background:var(--flutter-row);color:var(--flutter-text)}.cashflow-category-progress{position:relative;padding:10px 16px 13px;border-top:1px solid var(--flutter-border);border-bottom:1px solid var(--flutter-border);background:var(--surface-muted)}.cashflow-category-actual-target{display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cashflow-category-actual-target>span{display:flex;min-width:0;align-items:baseline;gap:5px}.cashflow-category-actual-target>span+span{justify-content:flex-end;padding-left:12px;border-left:1px solid var(--line)}.cashflow-category-actual-target small{color:var(--flutter-muted);font-size:9px}.cashflow-category-actual-target strong{overflow:hidden;color:var(--text);font-size:12px;font-variant-numeric:tabular-nums;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.cashflow-category-progress-track{position:absolute;right:0;bottom:0;left:0;height:4px;overflow:hidden;background:var(--spending-soft)}.cashflow-category-progress-track span{display:block;height:100%;border-radius:0 var(--moolah-radius-pill) var(--moolah-radius-pill) 0;background:var(--spending)}.cashflow-category-progress.cashflow-category-1 .cashflow-category-progress-track{background:var(--income-soft)}.cashflow-category-progress.cashflow-category-1 .cashflow-category-progress-track span{background:var(--income)}.cashflow-category-progress.is-over .cashflow-category-progress-track{background:var(--negative-soft)}.cashflow-category-progress.is-over .cashflow-category-progress-track span{background:var(--negative)}.cashflow-category-popover-list{display:grid;min-height:0;align-content:start;gap:8px;overflow-y:auto;padding:10px;overscroll-behavior:contain}.cashflow-actual-popover-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:3px 12px;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--surface-muted)}.cashflow-category-popover.cashflow-actual-popover{height:auto;max-height:min(520px,calc(100vh - 32px))}.cashflow-actual-popover .cashflow-category-popover-list{max-height:360px}.cashflow-actual-popover-summary span,.cashflow-actual-popover-summary small{color:var(--text-muted);font-size:10px}.cashflow-actual-popover-summary strong{grid-row:span 2;color:var(--text);font-size:14px}.cashflow-actual-popover-transaction{display:grid;width:100%;min-height:58px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 10px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface-muted);color:var(--text);text-align:left}.cashflow-actual-popover-transaction:hover,.cashflow-actual-popover-transaction:focus-visible{border-color:color-mix(in srgb,var(--accent) 34%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--surface-muted))}.cashflow-actual-popover-transaction>span{display:grid;min-width:0;gap:3px}.cashflow-actual-popover-transaction>span strong,.cashflow-actual-popover-transaction>span small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cashflow-actual-popover-transaction>span strong,.cashflow-actual-popover-transaction>strong{font-size:11px;font-weight:600}.cashflow-actual-popover-transaction>span small{color:var(--text-muted);font-size:9.5px}.cashflow-actual-popover-transaction>strong.income{color:var(--positive)}.cashflow-category-transaction.flutter-transaction-row{min-height:64px;padding:10px;border-color:var(--line-strong);background:var(--surface-muted)}.cashflow-category-transaction.flutter-transaction-row:hover{background:color-mix(in srgb,var(--accent) 8%,var(--surface-muted))}.cashflow-category-popover-empty{display:grid;min-height:132px;place-content:center;justify-items:center;gap:5px;padding:16px 24px 24px;color:var(--flutter-muted);text-align:center}.cashflow-category-popover-empty strong{color:var(--flutter-text);font-size:12px}.cashflow-category-popover-empty p{max-width:260px;margin:0;font-size:10px;line-height:1.45}@keyframes cashflow-category-popover-in{0%{transform:translateY(4px) scale(.985);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.cashflow-category-popover{animation:none}.flutter-budget-row,.flutter-budget-row-content,.flutter-budget-row-content>svg,.cashflow-category-transaction{transition:none}}.flutter-goal-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;min-height:68px;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--flutter-border);border-radius:15px;background:var(--flutter-row)}.flutter-goal-row>div{display:grid;min-width:0;gap:3px}.flutter-goal-row strong{overflow:hidden;color:var(--flutter-text);font-size:13px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.flutter-goal-row small,.flutter-goal-row>span:last-child{color:var(--flutter-muted);font-size:10px;font-variant-numeric:tabular-nums}.flutter-count-badge{display:inline-flex;min-width:32px;height:32px;align-items:center;justify-content:center;padding:0 9px;border-radius:10px;background:var(--flutter-red-track);color:var(--flutter-red);font-size:11px;font-weight:500}.flutter-transaction-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;min-height:58px;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--flutter-border);border-radius:15px;background:var(--flutter-row)}.flutter-transaction-row:has(>button){grid-template-columns:36px minmax(0,1fr) auto 38px}.flutter-transaction-row.interactive{width:100%;grid-template-columns:36px minmax(0,1fr) auto 16px;color:inherit;cursor:pointer;text-align:left;transition:border-color .16s ease,background .16s ease,transform .16s ease}.flutter-transaction-row.interactive:hover{border-color:color-mix(in srgb,var(--flutter-purple) 45%,var(--flutter-border));background:color-mix(in srgb,var(--flutter-purple) 7%,var(--flutter-row));transform:translateY(-1px)}.flutter-transaction-row.interactive>svg{color:var(--flutter-muted)}.flutter-transaction-icon{position:relative;display:grid;width:36px;height:36px;overflow:hidden;place-items:center;border-radius:12px;background:var(--flutter-row);color:var(--flutter-muted)}.flutter-transaction-icon.income{color:var(--income)}.flutter-transaction-icon.expense{color:var(--spending)}.flutter-transaction-icon img{position:absolute;width:100%;height:100%;padding:3px;object-fit:contain}.flutter-transaction-copy,.flutter-transaction-meta{display:grid;min-width:0;gap:3px}.flutter-transaction-copy strong{overflow:hidden;color:var(--flutter-text);font-size:12px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.flutter-transaction-copy small{display:flex;min-width:0;align-items:center;gap:4px;overflow:hidden;color:var(--flutter-muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.flutter-transaction-copy small svg{flex:0 0 auto;color:var(--flutter-green)}.flutter-transaction-meta{justify-items:end}.flutter-transaction-meta strong{color:var(--flutter-text);font-size:12px;font-variant-numeric:tabular-nums;font-weight:500;white-space:nowrap}.flutter-transaction-meta strong.income{color:var(--income)}.flutter-transaction-meta small{color:var(--flutter-muted);font-size:9px;white-space:nowrap}.flutter-transaction-row>button{display:grid;width:38px;height:38px;place-items:center;border:1px solid var(--flutter-purple);border-radius:11px;background:var(--flutter-purple);color:var(--selected-text);opacity:1}.flutter-see-more{width:max-content;min-height:36px;padding:0;border:0;background:transparent;color:var(--flutter-purple);font-size:12px;opacity:1}.flutter-see-more:not(:disabled){cursor:pointer}.flutter-see-more:disabled{opacity:.5}.flutter-empty-state{display:grid;min-height:110px;place-content:center;justify-items:center;gap:4px;padding:14px;color:var(--flutter-subtle);text-align:center}.flutter-empty-state strong{color:var(--flutter-text);font-size:12px}.flutter-empty-state p{max-width:220px;margin:0;color:var(--flutter-muted);font-size:10px;line-height:1.4}.flutter-dashboard-error{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:18px;padding:16px;border:1px solid var(--flutter-red);border-radius:16px;background:var(--negative-soft);color:var(--flutter-red)}.flutter-dashboard-error strong{color:var(--flutter-text)}.flutter-dashboard-error p{margin:3px 0 0;color:var(--flutter-muted);font-size:12px}.flutter-dashboard-error button{min-height:44px;padding:0 14px;border:1px solid var(--flutter-border-strong);border-radius:11px;background:var(--flutter-row);color:var(--flutter-text)}.flutter-skeleton{position:relative;overflow:hidden;min-height:170px;background:var(--flutter-row)}.flutter-skeleton:after{position:absolute;inset:0;background:linear-gradient(90deg,transparent,var(--skeleton-sheen),transparent);content:"";transform:translate(-100%);animation:shimmer 1.5s infinite}.cashflow-transaction-backdrop{position:fixed;z-index:80;inset:0;display:grid;place-items:center;padding:24px;background:#0f12163d;-webkit-backdrop-filter:blur(6px) saturate(.82);backdrop-filter:blur(6px) saturate(.82)}.cashflow-transaction-review{display:flex;width:min(520px,calc(100vw - 32px));max-height:min(720px,calc(100dvh - 48px));flex-direction:column;overflow:hidden;border:1px solid var(--line-strong);border-radius:22px;background:color-mix(in srgb,var(--surface) 96%,var(--canvas));box-shadow:0 28px 80px #05070a61,0 2px 8px #05070a3d;transform-origin:50% 55%;animation:cashflow-transaction-popover-in .18s cubic-bezier(.2,.8,.2,1)}.cashflow-transaction-review.is-detail{max-height:calc(100dvh - 48px)}@keyframes cashflow-transaction-popover-in{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.cashflow-transaction-review-header{display:flex;min-height:68px;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px 13px 18px;border-bottom:1px solid var(--line);background:transparent}.cashflow-transaction-review-header span{color:var(--text-muted);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.cashflow-transaction-review-header h2{margin:2px 0 0;color:var(--text);font-size:18px;line-height:1.15}.cashflow-transaction-review-header>button{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--text) 3%,transparent);color:var(--text-muted)}.cashflow-transaction-review-header>button:hover{border-color:var(--line-strong);background:color-mix(in srgb,var(--text) 7%,transparent);color:var(--text)}.cashflow-goal-context{display:flex;align-items:center;gap:10px;padding:13px 24px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--accent-soft) 72%,var(--surface));color:var(--text);font-size:12px;line-height:1.4}.cashflow-goal-context svg{flex:0 0 auto;color:var(--accent)}.cashflow-transaction-browser,.cashflow-transaction-detail{display:flex;min-height:0;flex-direction:column;overflow:auto;padding:14px 16px 16px}.cashflow-transaction-browser{min-height:320px}.cashflow-transaction-search{display:grid;grid-template-columns:auto minmax(0,1fr);min-height:46px;align-items:center;gap:9px;padding:0 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--text-muted)}.cashflow-transaction-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}.cashflow-transaction-search input{width:100%;border:0;outline:0;background:transparent;color:var(--text);font:inherit}.cashflow-transaction-browser-list{display:grid;gap:7px;margin-top:12px}.cashflow-transaction-browser-list>button{display:grid;width:100%;grid-template-columns:38px minmax(0,1fr) auto 16px;min-height:58px;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:15px;background:var(--surface);color:var(--text);text-align:left}.cashflow-transaction-browser-list>button:hover{border-color:var(--line-strong);background:color-mix(in srgb,var(--text) 4%,var(--surface))}.cashflow-transaction-browser-list>button>span{display:grid;width:36px;height:36px;place-items:center;border-radius:11px;background:var(--canvas);color:var(--text-muted)}.cashflow-transaction-browser-list>button>span.income,.cashflow-transaction-browser-list>button>strong.income,.cashflow-transaction-hero>strong.income{color:var(--positive)}.cashflow-transaction-browser-list>button>div{display:grid;min-width:0;gap:4px}.cashflow-transaction-browser-list strong,.cashflow-transaction-browser-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cashflow-transaction-browser-list strong{font-size:12px;font-variant-numeric:tabular-nums}.cashflow-transaction-browser-list small{color:var(--text-muted);font-size:10px}.cashflow-transaction-browser-list>button>svg{color:var(--text-muted)}.cashflow-transaction-empty{display:grid;min-height:220px;place-content:center;justify-items:center;gap:6px;color:var(--text-muted);text-align:center}.cashflow-transaction-empty strong{color:var(--text);font-size:13px}.cashflow-transaction-empty span{font-size:11px}.cashflow-transaction-back{display:inline-flex;width:max-content;min-height:32px;align-items:center;gap:7px;padding:0;border:0;background:transparent;color:var(--text-muted);font-weight:500}.cashflow-transaction-hero{position:relative;display:grid;overflow:hidden;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;margin-top:8px;padding:13px 14px 13px 16px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--canvas) 64%,var(--surface))}.cashflow-transaction-hero:before{position:absolute;inset:9px auto 9px 0;width:3px;border-radius:0 4px 4px 0;background:var(--negative);content:""}.cashflow-transaction-hero.income:before{background:var(--positive)}.cashflow-transaction-hero>span{display:grid;width:40px;height:40px;place-items:center;border-radius:12px;background:color-mix(in srgb,var(--text) 5%,transparent);color:var(--text-muted)}.cashflow-transaction-hero h3{margin:0;overflow:hidden;color:var(--text);font-size:14px;text-overflow:ellipsis;white-space:nowrap}.cashflow-transaction-hero p{margin:3px 0 0;color:var(--text-muted);font-size:10px}.cashflow-transaction-hero>strong{color:var(--text);font-size:15px;font-variant-numeric:tabular-nums;white-space:nowrap}.cashflow-transaction-current{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:9px 0 0;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--canvas) 42%,var(--surface))}.cashflow-transaction-current>div{min-width:0;padding:10px 12px}.cashflow-transaction-current>div+div{border-left:1px solid var(--line)}.cashflow-transaction-current dt{color:var(--text-muted);font-size:10px}.cashflow-transaction-current dd{margin:3px 0 0;color:var(--text);font-size:12px;font-weight:500}.cashflow-transaction-destination-group{margin-top:10px}.cashflow-transaction-destination{color:var(--text);font-size:12px;font-weight:500}.cashflow-transaction-destination select{width:100%;min-height:40px;padding:0 9px;border:0;border-radius:9px;outline:0;background:transparent;color:var(--text);font:inherit;font-weight:500}.cashflow-transaction-destination select:focus{box-shadow:none}.cashflow-transaction-detail-actions{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;margin-top:12px;padding-top:0}.cashflow-transaction-notice{margin:12px 0 0;padding:11px 13px;border-radius:12px;background:var(--positive-soft);color:var(--positive);font-size:11px;line-height:1.4}.cashflow-transaction-notice.error{background:var(--negative-soft);color:var(--negative)}@media(max-width:1100px){.flutter-dashboard-grid{grid-template-columns:minmax(0,1fr) minmax(300px,.9fr)}.flutter-budget-grid{grid-template-columns:1fr}}@container (max-width: 780px){.cashflow-page-header{align-items:flex-start;flex-direction:column;gap:12px}.cashflow-page-header .page-header-actions,.cashflow-title-controls{width:100%;flex-wrap:wrap}.cashflow-view-toggle{width:100%}.cashflow-plan-button{flex:1}.flutter-dashboard-grid,.flutter-kpi-row,.flutter-budget-grid{grid-template-columns:minmax(0,1fr)}}@container (max-width: 480px){.cashflow-title-controls{align-items:stretch;flex-direction:column}.cashflow-title-controls h1,.cashflow-header-month,.cashflow-year-stepper{width:100%}.cashflow-header-month{grid-template-columns:auto minmax(0,1fr)}}@media(max-width:780px){.flutter-dashboard-header{align-items:flex-start;flex-direction:column;gap:16px}.flutter-dashboard-title-row{width:100%;align-items:flex-start;flex-direction:column}.flutter-month-stepper,.flutter-ai-button{width:100%}.flutter-ai-button{justify-content:center}.flutter-month-stepper{grid-template-columns:44px minmax(0,1fr) 44px}.flutter-dashboard-grid,.flutter-kpi-row{grid-template-columns:1fr}.flutter-metric-card{min-height:150px}}@media(max-width:440px){.flutter-panel,.flutter-metric-card{padding:16px}.flutter-panel-header{align-items:flex-start}.flutter-panel-header>p{display:grid;justify-items:end}.flutter-budget-row-content{grid-template-columns:34px minmax(0,1fr) 15px}.flutter-budget-values{grid-column:2}.flutter-budget-row-content>svg{grid-column:3;grid-row:1 / span 2}.flutter-transaction-row,.flutter-transaction-row:has(>button){grid-template-columns:34px minmax(0,1fr) auto}.flutter-transaction-row>button{grid-column:3;grid-row:1 / span 2}.flutter-transaction-row.interactive{grid-template-columns:34px minmax(0,1fr) 16px}.flutter-transaction-row.interactive>svg{grid-column:3;grid-row:1 / span 2}.cashflow-transaction-review-header,.cashflow-transaction-browser,.cashflow-transaction-detail{padding-right:16px;padding-left:16px}.cashflow-transaction-current{grid-template-columns:1fr}.cashflow-transaction-hero{grid-template-columns:44px minmax(0,1fr)}.cashflow-transaction-hero>strong{grid-column:2}.cashflow-transaction-detail-actions{grid-template-columns:1fr}.cashflow-transaction-detail-actions .primary-button{grid-row:1}.flutter-transaction-meta{grid-column:2;justify-items:start}}@media(max-width:620px){.cashflow-transaction-backdrop{place-items:end center;padding:12px}.cashflow-transaction-review{width:100%;max-height:calc(100dvh - 24px);border-radius:22px}.cashflow-transaction-review-header,.cashflow-transaction-browser,.cashflow-transaction-detail{padding-right:14px;padding-left:14px}.cashflow-transaction-current{grid-template-columns:1fr}.cashflow-transaction-current>div+div{border-top:1px solid var(--line);border-left:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.modelling-page{--moolah-radius-control: 14px;--moolah-radius-panel: 20px;--moolah-radius-prominent: 26px;--moolah-radius-floating: 18px;display:grid;width:100%;max-width:1680px;gap:18px;margin:0 auto}.modelling-page-header{align-items:center;margin-bottom:2px}.modelling-page-header h1{letter-spacing:0}.modelling-scenario-select{display:grid;min-width:260px;gap:5px}.modelling-scenario-select span{color:var(--text-muted);font-size:11px;font-weight:500}.modelling-scenario-select select{min-height:44px;padding:0 36px 0 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text)}.modelling-gates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.modelling-gate{display:grid;min-height:76px;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.modelling-gate.reached{border-color:color-mix(in srgb,var(--positive) 38%,var(--line))}.modelling-gate-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:var(--positive-soft);color:var(--positive)}.modelling-gate.pending .modelling-gate-icon{background:var(--warning-soft);color:var(--warning)}.modelling-gate span:last-child{display:grid;min-width:0;gap:3px}.modelling-gate small{color:var(--text-muted);font-size:11px;font-weight:500}.modelling-gate strong{overflow-wrap:anywhere;font-size:16px;font-variant-numeric:tabular-nums}.modelling-toolbar{display:flex;min-height:48px;flex-wrap:wrap;align-items:center;gap:12px;padding:8px 0;border-block:1px solid var(--line)}.modelling-source,.modelling-checks{display:flex;align-items:center;gap:7px;color:var(--text-muted);font-size:12px}.modelling-source strong{color:var(--text);font-size:12px}.modelling-source>span{width:8px;height:8px;border-radius:50%;background:var(--positive)}.modelling-source>span.benchmark{background:var(--warning)}.modelling-year-controls{display:grid;grid-template-columns:40px minmax(108px,auto) 40px;min-height:40px;align-items:center;margin-left:auto;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.modelling-year-controls button{display:grid;min-height:38px;place-items:center;border:0;background:transparent;color:var(--text)}.modelling-year-controls button:disabled{opacity:.35}.modelling-year-controls span{text-align:center;font-size:12px;font-variant-numeric:tabular-nums;font-weight:500}.modelling-checks{min-height:40px;padding:0 10px;border:1px solid var(--line);border-radius:8px}.modelling-checks.passed{color:var(--positive)}.modelling-checks.failed{color:var(--negative)}.modelling-sections{position:relative;display:block;width:100%;min-width:0;max-width:100%;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--surface)}.modelling-table-scroll{width:100%;min-width:0;max-width:100%;overflow:auto;overscroll-behavior-inline:contain;scrollbar-gutter:stable}.modelling-table-scroll.unified{max-height:min(72vh,760px)}.modelling-timeline-table{width:100%;min-width:900px;border-collapse:separate;border-spacing:0;table-layout:fixed;background:var(--surface);font-variant-numeric:tabular-nums}.modelling-timeline-table th,.modelling-timeline-table td{height:40px;padding:8px 12px;border-right:0;border-bottom:1px solid color-mix(in srgb,var(--line) 58%,transparent);overflow-wrap:anywhere;text-align:center;font-size:12px;font-weight:300}.modelling-timeline-table strong,.modelling-timeline-table small,.modelling-timeline-table button{font-weight:300}.modelling-timeline-table thead th{position:sticky;z-index:6;top:0;height:56px;background:color-mix(in srgb,var(--surface-muted) 96%,var(--canvas));color:var(--text-muted);font-weight:300}.modelling-timeline-table thead th strong,.modelling-timeline-table thead th small{display:block}.modelling-timeline-table thead th strong{color:var(--text);font-size:12px}.modelling-timeline-table thead th small{margin-top:2px;font-size:10px;font-weight:300}.modelling-timeline-table th:first-child{position:sticky;left:0;z-index:3;width:250px;background:var(--surface);text-align:left;box-shadow:none}.modelling-timeline-table thead th:first-child{z-index:8;background:color-mix(in srgb,var(--surface-muted) 96%,var(--canvas))}.modelling-timeline-section-row>th,.modelling-timeline-section-row>td{position:sticky;z-index:4;top:56px;height:50px;padding:0;border-bottom-color:color-mix(in srgb,var(--line) 72%,transparent);background:color-mix(in srgb,var(--surface-raised) 88%,var(--surface))}.modelling-timeline-section-row>th:first-child{z-index:5;background:color-mix(in srgb,var(--surface-raised) 88%,var(--surface))}.modelling-timeline-section-row button{display:flex;width:100%;min-height:49px;align-items:center;gap:9px;padding:0 12px;border:0;background:transparent;color:var(--text);cursor:pointer;text-align:left}.modelling-timeline-section-row button>span{display:grid;width:24px;height:24px;flex:0 0 24px;place-items:center;color:var(--text-muted)}.modelling-timeline-section-row button strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.modelling-timeline-section-row button>svg{flex:0 0 auto;margin-left:auto;color:var(--text-muted);transition:transform .16s ease}.modelling-timeline-section-row button[aria-expanded=true]>svg{transform:rotate(180deg)}.modelling-timeline-section-row button:hover{color:var(--accent)}.modelling-timeline-section-row button:focus-visible{position:relative;z-index:1;outline:2px solid var(--accent);outline-offset:-3px}.modelling-timeline-group:last-child>tr:last-child>*{border-bottom:0}.modelling-timeline-table tr.tone-closing th,.modelling-timeline-table tr.tone-closing td{border-bottom-color:color-mix(in srgb,var(--line) 72%,transparent);background:var(--surface-muted);color:var(--text);font-weight:300}.modelling-timeline-table tr.tone-closing th:first-child{background:var(--surface-muted)}.modelling-timeline-table tr.tone-negative td{color:var(--negative)}.modelling-timeline-table tr.tone-event td{color:var(--warning);font-weight:300}.modelling-state{display:grid;min-height:180px;grid-template-columns:auto minmax(0,1fr);place-content:center;gap:12px;padding:24px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text-muted)}.modelling-state strong{color:var(--text)}.modelling-state p{margin:4px 0 0;font-size:13px;line-height:1.5}.modelling-loading-skeleton{display:grid;min-width:0;gap:16px}@media(min-width:801px){.modelling-page:has(>.modelling-loading-skeleton){min-height:calc(100dvh - 40px);grid-template-rows:auto minmax(0,1fr)}.modelling-loading-skeleton{min-height:0;grid-template-rows:auto minmax(0,1fr)}}.modelling-loading-kpis{display:grid;min-width:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.modelling-loading-card{position:relative;overflow:hidden;border:1px solid color-mix(in srgb,var(--line) 32%,transparent);background:color-mix(in srgb,var(--surface) 66%,transparent)}.modelling-loading-card:after{position:absolute;z-index:2;inset:0;background:linear-gradient(100deg,transparent 38%,color-mix(in srgb,var(--text) 1.4%,transparent) 50%,transparent 62%);content:"";opacity:.4;pointer-events:none;transform:translate(-100%);animation:shimmer 2.75s ease-in-out infinite}.modelling-loading-kpi{display:grid;min-height:92px;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;padding:10px 14px;border-radius:20px}.modelling-loading-kpi-icon{width:42px;height:42px;border-radius:50%;background:color-mix(in srgb,var(--text-muted) 4.5%,transparent)}.modelling-loading-kpi-copy{display:grid;gap:8px}.modelling-loading-kpi-copy i,.modelling-loading-chart-actions span,.modelling-loading-legend span{display:block;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 4.5%,transparent)}.modelling-loading-kpi-copy>i{width:45%;height:9px}.modelling-loading-kpi-value{display:flex;align-items:center;gap:8px}.modelling-loading-kpi-value i:first-child{width:34%;height:23px}.modelling-loading-kpi-value i:last-child{width:29%;height:9px}.modelling-loading-chart{display:grid;min-height:clamp(390px,48vw,560px);grid-template-rows:auto minmax(0,1fr) auto;gap:16px;padding:18px;border-radius:20px;background:color-mix(in srgb,var(--surface) 58%,transparent)}@media(min-width:801px){.modelling-loading-chart{min-height:0}}.modelling-loading-chart-actions,.modelling-loading-legend{display:flex;min-width:0;align-items:center;justify-content:flex-end;gap:8px}.modelling-loading-chart-actions span{width:104px;height:42px;border-radius:14px}.modelling-loading-chart-actions span:nth-child(2){width:158px}.modelling-loading-chart-actions span:nth-child(3){width:132px}.modelling-loading-plot{min-height:0;border-radius:14px;background:repeating-linear-gradient(to bottom,transparent 0,transparent calc(25% - 1px),color-mix(in srgb,var(--line) 22%,transparent) calc(25% - 1px),color-mix(in srgb,var(--line) 22%,transparent) 25%),color-mix(in srgb,var(--surface-muted) 8%,transparent)}.modelling-loading-legend span{width:146px;height:9px}.modelling-loading-legend span:last-child{width:112px}.modelling-error{color:var(--negative)}@media(max-width:800px){.modelling-loading-kpis{grid-template-columns:1fr}.modelling-loading-kpi{min-height:96px}.modelling-loading-chart{min-height:360px;padding:14px}.modelling-loading-chart-actions span{width:auto;min-width:0;flex:1 1 0}.modelling-loading-legend{justify-content:flex-start}}@media(prefers-reduced-motion:reduce){.modelling-loading-card:after{animation:none;opacity:.08;transform:none}}.modelling-command-bar,.modelling-command-actions,.modelling-view-switch,.scenario-builder footer{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.modelling-command-bar{justify-content:space-between;padding-block:10px;border-block:1px solid var(--line)}.modelling-view-switch{padding:3px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.modelling-view-switch button,.primary-command,.secondary-command,.shortfall-rule>button{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:7px;padding:0 12px;border:1px solid transparent;border-radius:6px;color:var(--text-muted);background:transparent;font-size:12px;font-weight:500}.modelling-view-switch button.active{border-color:var(--line);background:var(--surface);color:var(--text)}.primary-command{border-color:var(--accent);background:var(--accent);color:#fff}.secondary-command{border-color:var(--line);background:var(--surface);color:var(--text)}.primary-command:disabled,.secondary-command:disabled,.shortfall-rule>button:disabled{cursor:not-allowed;opacity:.45}.modelling-save-message{margin:-8px 0 0;color:var(--text-muted);font-size:11px}.retirement-overview,.retirement-chart-panel,.retirement-gate-journey,.retirement-milestones{min-width:0}.retirement-overview{display:grid;gap:16px}.modelling-overview-layout{display:grid;min-width:0;grid-template-columns:minmax(0,1fr);align-items:start;gap:16px}.modelling-overview-layout.strategy-open{grid-template-columns:minmax(0,3fr) minmax(240px,1fr)}.modelling-results-column{display:grid;min-width:0;gap:40px}.modelling-strategy-column{position:sticky;top:16px;min-width:0}.overview-cashflow-timeline{display:grid;min-width:0;scroll-margin-top:16px;gap:14px;padding-top:28px;border-top:1px solid var(--line)}.overview-cashflow-timeline>header>div{display:grid;gap:4px}.overview-cashflow-timeline h2{margin:0;color:var(--text);font-size:20px;letter-spacing:-.02em}.overview-cashflow-timeline p{max-width:620px;margin:0;color:var(--text-muted);font-size:12px;line-height:1.5}.modelling-workspace{display:grid;min-width:0;gap:16px}.modelling-workspace.embedded{gap:0}.modelling-workspace.embedded>.modelling-year-controls{justify-self:end;margin-bottom:8px;margin-left:0}.fi-gate-explorer{display:grid;min-width:0;gap:16px}.active-strategy-label{padding:5px 8px;border:1px solid color-mix(in srgb,var(--positive) 28%,var(--line));border-radius:6px;background:var(--positive-soft);color:var(--positive);font-size:10px;font-weight:500}.fi-gate-selector{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.fi-gate-selector>button{--fi-gate-tone: var(--income);--fi-gate-tone-soft: var(--income-soft);display:grid;min-height:92px;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--line);border-radius:20px;background:var(--surface-muted);color:var(--text);cursor:pointer;text-align:left;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease}.fi-gate-selector>button.incomeAndGrowth{--fi-gate-tone: var(--spending);--fi-gate-tone-soft: var(--spending-soft)}.fi-gate-selector>button.incomeOnly{--fi-gate-tone: var(--chart-saved);--fi-gate-tone-soft: color-mix(in srgb, var(--chart-saved) 15%, transparent)}.fi-gate-selector>button:hover{border-color:var(--line-strong);background:var(--surface-raised)}.fi-gate-selector>button:focus-visible{outline:2px solid var(--fi-gate-tone);outline-offset:3px}.fi-gate-selector>button[aria-pressed=true]{border-color:var(--fi-gate-tone);background:color-mix(in srgb,var(--fi-gate-tone) 7%,var(--surface));box-shadow:0 0 0 1px var(--fi-gate-tone-soft)}.fi-gate-card-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:50%;background:var(--fi-gate-tone-soft);color:var(--fi-gate-tone)}.fi-gate-card-copy{display:grid;min-width:0;gap:5px}.fi-gate-card-copy small,.fi-gate-card-metrics small{color:var(--text-muted);font-size:11px}.fi-gate-card-copy small{color:var(--fi-gate-tone);font-size:11px;font-weight:500}.fi-gate-card-copy strong{margin:0;color:var(--text);font-size:22px;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.fi-gate-card-value{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:8px}.fi-gate-card-date{display:inline-flex;min-height:22px;align-items:center;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 7%,transparent);color:var(--text-muted);font-size:10px;font-variant-numeric:tabular-nums;font-weight:500;line-height:1;white-space:nowrap}.fi-gate-card-metrics{display:grid;grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-top:7px;border-top:1px solid var(--line)}.fi-gate-card-metrics>span{display:grid;min-width:0;gap:2px}.fi-gate-card-metrics strong{overflow-wrap:anywhere;color:var(--text);font-size:10px;font-variant-numeric:tabular-nums}.gate-meaning-panel{--fi-gate-tone: var(--income);--fi-gate-tone-soft: var(--income-soft);display:grid;min-width:0;gap:14px;padding:18px;border:1px solid var(--line);border-radius:20px;background:var(--surface)}.gate-meaning-panel.incomeAndGrowth{--fi-gate-tone: var(--spending);--fi-gate-tone-soft: var(--spending-soft)}.gate-meaning-panel.incomeOnly{--fi-gate-tone: var(--chart-saved);--fi-gate-tone-soft: color-mix(in srgb, var(--chart-saved) 15%, transparent)}.lifetime-fi-heading{display:flex;min-width:0;align-items:center;justify-content:flex-end;gap:18px}.selected-retirement-path{display:grid;min-width:0;gap:3px}.selected-retirement-path h2{margin:0;color:var(--text);font-size:17px;letter-spacing:-.01em}.selected-retirement-path p{margin:0;color:var(--text-muted);font-size:11px;line-height:1.45}.life-map-callout{display:flex;width:min(100%,650px);min-width:0;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--warning) 30%,var(--line));border-radius:6px;background:color-mix(in srgb,var(--warning) 6%,var(--surface-muted))}.life-map-callout>span{flex:0 0 auto;font-family:"Apple Color Emoji","Segoe UI Emoji",sans-serif;font-size:18px;line-height:1.2}.life-map-callout>div{display:grid;min-width:0;gap:3px}.life-map-callout strong{color:var(--text);font-size:12px}.life-map-callout p{margin:0;color:var(--text-muted);font-size:10px;line-height:1.45}.lifetime-fi-chart-legend{justify-content:flex-end}.lifetime-fi-chart-footer{display:flex;min-width:0;align-items:center;justify-content:flex-end;gap:10px}.chart-zoom-controls{display:inline-flex;min-height:44px;flex:0 0 auto;align-items:center;gap:2px;padding:2px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface-muted) 82%,transparent)}.chart-zoom-controls button{display:inline-grid;width:38px;height:38px;padding:0;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--text-muted);cursor:pointer;place-items:center}.chart-zoom-controls button:hover:not(:disabled){border-color:var(--line);background:var(--surface);color:var(--text)}.chart-zoom-controls button:focus-visible{border-color:var(--accent);outline:2px solid color-mix(in srgb,var(--accent) 42%,transparent);outline-offset:1px}.chart-zoom-controls button:disabled{opacity:.35;cursor:default}.chart-zoom-controls output{min-width:36px;color:var(--text-muted);font-size:10px;font-variant-numeric:tabular-nums;text-align:center}.lifetime-fi-actions{display:grid;min-width:0;justify-items:end;gap:8px}.lifetime-fi-workspace-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.chart-life-event-add-wrap{position:relative;z-index:8}.chart-life-event-add,.chart-strategy-toggle{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:7px;padding:0 12px;border:1px solid var(--line);border-radius:14px;background:var(--surface-muted);color:var(--text-muted);font-size:11px;font-weight:500;transition:border-color .18s ease,background-color .18s ease,color .18s ease}.chart-compare-select{display:inline-grid;min-height:44px;grid-template-columns:15px minmax(0,1fr);align-items:center;gap:7px;padding:0 8px 0 10px;border:1px solid var(--line);border-radius:14px;background:transparent;color:var(--text-muted);transition:border-color .18s ease,background-color .18s ease,color .18s ease}.chart-compare-select select{width:min(168px,22vw);min-width:0;min-height:42px;padding:0 4px;overflow:hidden;border:0;outline:0;background:transparent;color:var(--text-muted);cursor:pointer;font:inherit;font-size:11px;font-weight:500;text-overflow:ellipsis}.chart-life-event-add,.chart-strategy-toggle{background:var(--surface);color:var(--text)}.chart-compare-select:hover,.chart-life-event-add:hover,.chart-strategy-toggle:hover{border-color:var(--line-strong);color:var(--text)}.chart-compare-select:focus-within{outline:var(--moolah-input-focus-width) solid var(--accent);outline-offset:0}.chart-life-event-add:focus-visible,.chart-strategy-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.chart-strategy-toggle[aria-expanded=true]{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:var(--accent-soft);color:var(--accent)}.chart-life-event-add[aria-expanded=true]{border-color:color-mix(in srgb,var(--accent) 34%,var(--line));background:var(--accent-soft);color:var(--accent)}.chart-life-events-dock{display:grid;min-width:0;gap:12px;padding-top:16px;border-top:1px solid var(--line)}.chart-life-events-heading{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:12px}.chart-life-events-heading>div{display:grid;min-width:0;gap:2px}.chart-life-events-heading strong{color:var(--text);font-size:13px}.chart-life-events-heading>span{min-width:28px;padding:3px 8px;border-radius:999px;background:var(--surface-muted);color:var(--text-muted);font-size:11px;font-variant-numeric:tabular-nums;font-weight:500;text-align:center}.chart-life-event-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.chart-life-event-row{display:grid;min-width:0;min-height:64px;grid-template-columns:minmax(0,1fr) 44px;align-items:center;border:1px solid var(--line);border-radius:14px;background:var(--surface-muted);color:var(--text-muted);overflow:hidden;transition:border-color .18s ease,background-color .18s ease,color .18s ease}.chart-life-event-row:hover{border-color:var(--line-strong);background:var(--surface-raised);color:var(--text)}.chart-life-event-row:focus-within{border-color:color-mix(in srgb,var(--accent) 42%,var(--line))}.chart-life-event-row.is-selected{border-color:color-mix(in srgb,var(--accent) 42%,var(--line));background:var(--accent-soft);color:var(--accent)}.chart-life-event-row.is-hidden{background:color-mix(in srgb,var(--surface-muted) 72%,transparent)}.chart-life-event-row-main{display:grid;min-width:0;min-height:62px;grid-template-columns:36px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:9px 10px;border:0;background:transparent;color:inherit;cursor:pointer;text-align:left}.chart-life-event-row-main:focus-visible,.chart-life-event-visibility:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.chart-life-event-visibility{display:grid;width:44px;height:44px;place-items:center;border:0;border-left:1px solid color-mix(in srgb,var(--line) 58%,transparent);background:transparent;color:var(--text-muted)}.chart-life-event-visibility:hover{background:var(--surface);color:var(--text)}.chart-life-event-row.is-hidden .chart-life-event-visibility{color:color-mix(in srgb,var(--text-muted) 72%,transparent)}.chart-life-event-row.is-hidden .chart-life-event-emoji{filter:grayscale(.45);opacity:.62}.chart-life-event-emoji{display:grid;width:36px;height:36px;place-items:center;border-radius:50%;background:var(--surface);font-family:"Apple Color Emoji","Segoe UI Emoji",sans-serif;font-size:18px}.chart-life-event-row-copy{display:grid;min-width:0;gap:2px}.chart-life-event-row-copy strong{overflow:hidden;color:var(--text);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.chart-life-event-row-copy small{overflow:hidden;color:var(--text-muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.chart-life-events-empty{margin:0;color:var(--text-muted);font-size:11px;line-height:1.5}.chart-life-event-card{display:grid;min-width:0;gap:14px;padding:16px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line));border-radius:20px;background:color-mix(in srgb,var(--accent) 4%,var(--surface-muted))}.chart-life-event-card>header{display:flex;min-width:0;align-items:flex-start;justify-content:space-between;gap:16px}.chart-life-event-card>header>div:not(.chart-life-event-title){display:grid;gap:3px}.chart-life-event-card h3{margin:0;color:var(--text);font-size:16px}.chart-life-event-card header p,.chart-life-event-detail{margin:0;color:var(--text-muted);font-size:11px;line-height:1.5}.chart-life-event-title{display:flex;min-width:0;align-items:center;gap:10px}.chart-life-event-title>span{display:grid;width:40px;height:40px;flex:0 0 auto;place-items:center;border-radius:50%;background:var(--surface-raised);font-family:"Apple Color Emoji","Segoe UI Emoji",sans-serif;font-size:19px}.chart-life-event-title>div{display:grid;min-width:0;gap:2px}.life-event-card-close{display:grid;width:44px;min-width:44px;height:44px;place-items:center;border:1px solid transparent;border-radius:14px;background:transparent;color:var(--text-muted)}.life-event-card-close:hover{border-color:var(--line);background:var(--surface-raised);color:var(--text)}.life-event-card-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.chart-life-event-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:0;overflow:hidden;border:.5px solid var(--display-shell-border);border-radius:var(--moolah-radius-control, 12px);background:color-mix(in srgb,var(--surface-muted) 32%,transparent)}.chart-life-event-fields label{display:grid;min-width:0;min-height:52px;grid-template-columns:minmax(104px,.48fr) minmax(0,1fr);align-items:center;gap:14px;padding:6px 12px 6px 14px}.chart-life-event-fields label+label{border-top:.5px solid color-mix(in srgb,var(--line) 66%,transparent)}.chart-life-event-fields label>span{color:var(--text-muted);font-size:10px;font-weight:500}.chart-life-event-fields input,.chart-life-event-fields select{width:100%;min-width:0;min-height:40px;padding:0 9px;border:0;border-radius:9px;background:transparent;color:var(--text);font:inherit;font-size:12px}.chart-life-event-fields input:focus,.chart-life-event-fields select:focus{border-color:var(--accent);outline:var(--moolah-input-focus-width) solid var(--accent-soft);outline-offset:0}.chart-life-event-card.editor .chart-life-event-fields input[type=checkbox]{width:18px;min-width:18px;min-height:18px;justify-self:end;margin:7px 0;accent-color:var(--accent)}.chart-life-event-card>footer{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.chart-life-event-card>footer .primary-command,.chart-life-event-card>footer .secondary-command{min-height:44px}.chart-life-event-card.composer{position:absolute;z-index:20;top:calc(100% + 8px);left:0;width:min(300px,calc(100vw - 48px));max-height:min(590px,calc(100dvh - 220px));overflow-y:auto;overscroll-behavior:contain;gap:12px;padding:12px;border-color:color-mix(in srgb,var(--text) 9%,transparent);border-radius:18px;background:color-mix(in srgb,var(--canvas) 92%,transparent);box-shadow:0 18px 38px color-mix(in srgb,black 24%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.chart-life-event-card.composer>header{align-items:center;gap:12px}.chart-life-event-card.composer>header>div{gap:0}.chart-life-event-card.composer h3{font-size:14px}.chart-life-event-card.composer .life-event-card-close{width:32px;min-width:32px;height:32px;border-radius:12px}.chart-life-event-card.composer .chart-life-event-fields{grid-template-columns:1fr;gap:0}.chart-life-event-card.composer .chart-life-event-fields label{min-height:52px;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:12px;padding-block:5px}.chart-life-event-card.composer .chart-life-event-fields label+label{border-top:1px solid color-mix(in srgb,var(--line) 52%,transparent)}.chart-life-event-card.composer .chart-life-event-fields label>span{font-size:11px}.chart-life-event-card.composer .chart-life-event-fields input,.chart-life-event-card.composer .chart-life-event-fields select{min-height:40px;border-radius:12px}.chart-life-event-card.composer .chart-life-event-fields input[type=checkbox]{width:18px;min-width:18px;min-height:18px;justify-self:end;margin:0;accent-color:var(--accent)}.chart-life-event-cadence-input{display:grid;min-width:0;grid-template-columns:minmax(58px,.62fr) minmax(0,1fr);gap:6px}.chart-life-event-cadence-input input,.chart-life-event-cadence-input select{min-width:0}.chart-life-event-card.composer .chart-life-event-fields input:focus,.chart-life-event-card.composer .chart-life-event-fields select:focus{border-color:color-mix(in srgb,var(--accent) 28%,var(--line));outline:var(--moolah-input-focus-width) solid color-mix(in srgb,var(--accent) 18%,transparent);outline-offset:0}.chart-life-event-composer-section{display:grid;gap:6px;padding-top:2px}.chart-life-event-composer-section-title{padding-inline:2px;color:var(--text-muted);font-size:9px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.chart-life-event-composer-effect{display:grid;gap:4px;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--line) 46%,transparent)}.chart-life-event-composer-effect>strong{padding-inline:2px;color:var(--text-secondary);font-size:11px;font-weight:500}.chart-life-event-card.composer>footer{display:block;position:sticky;z-index:2;bottom:-12px;margin:0 -12px -12px;padding:10px 12px 12px;background:color-mix(in srgb,var(--canvas) 94%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.chart-life-event-card.composer>footer .primary-command{width:100%;min-height:44px;padding-inline:12px;border-color:var(--moolah-color-accent-soft);border-radius:12px;background:var(--moolah-color-accent-soft);color:var(--moolah-color-on-accent-soft)}.life-event-delete-command{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:7px;padding:0 12px;border:1px solid color-mix(in srgb,var(--negative) 42%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--negative) 7%,var(--surface));color:var(--negative);font-size:11px;font-weight:500}.life-event-delete-confirm{display:flex;min-width:0;flex:1 1 100%;flex-wrap:wrap;align-items:center;gap:8px}.life-event-delete-confirm>span{margin-right:auto;color:var(--text);font-size:11px;font-weight:500}.life-map-chart-actions{display:grid;min-width:360px;justify-items:end;gap:9px}.life-map-mode-switch{display:inline-flex;min-width:0;gap:3px;padding:3px;border:1px solid var(--line);border-radius:14px;background:var(--surface-muted)}.life-map-mode-switch button{display:inline-flex;min-height:36px;align-items:center;justify-content:center;gap:6px;padding:0 10px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--text-muted);font-size:11px;font-weight:500}.life-map-mode-switch button[aria-pressed=true]{border-color:var(--line);background:var(--surface);color:var(--text)}.retirement-chart-legend i.fi-building,.retirement-chart-legend i.drawdown{background:var(--income)}.retirement-chart-legend i.incomeAndGrowth{background:var(--spending)}.retirement-chart-legend i.incomeOnly{background:var(--chart-saved)}.lifetime-fi-chart{position:relative;isolation:isolate;width:100%;min-width:0;aspect-ratio:1040 / 460}.lifetime-fi-chart>svg{display:block;width:100%;height:100%;overflow:visible}.lifetime-fi-chart>svg.zoomable{overflow:hidden}.interactive-life-chart{cursor:crosshair;outline:none;touch-action:pan-y}.interactive-life-chart.zoomable{touch-action:none}.interactive-life-chart.can-pan{cursor:grab}.interactive-life-chart.is-panning{cursor:grabbing}.interactive-life-chart:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.lifetime-phase-band{fill:color-mix(in srgb,var(--text-muted) 3%,transparent)}.lifetime-phase-band.drawdown{fill:color-mix(in srgb,var(--income) 5%,transparent)}.lifetime-phase-band.incomeAndGrowth{fill:color-mix(in srgb,var(--spending) 5%,transparent)}.lifetime-phase-band.incomeOnly{fill:color-mix(in srgb,var(--chart-saved) 5%,transparent)}.lifetime-phase-label{fill:var(--text-muted);font-size:8px;font-weight:500;letter-spacing:0}.lifetime-phase-label.drawdown{fill:var(--income)}.lifetime-phase-label.incomeAndGrowth{fill:var(--spending)}.lifetime-phase-label.incomeOnly{fill:var(--chart-saved)}.lifetime-plan-boundary-line{stroke:var(--line-strong);stroke-dasharray:2 4;stroke-width:1;vector-effect:non-scaling-stroke}.lifetime-plan-boundary-label{fill:var(--text-muted);font-size:7px;font-weight:500}.chart-crosshair-label{filter:drop-shadow(0 10px 14px color-mix(in srgb,black 22%,transparent));pointer-events:none}.chart-crosshair-label rect{fill:color-mix(in srgb,var(--canvas) 92%,transparent);stroke:color-mix(in srgb,var(--text) 8%,transparent);stroke-width:.5;vector-effect:non-scaling-stroke}.chart-crosshair-label text{fill:var(--text);font-family:var(--moolah-type-body-family);font-size:12px;font-variant-numeric:tabular-nums;font-weight:500}.chart-crosshair-label tspan.title{fill:var(--text);font-size:13px;font-weight:500}.chart-crosshair-label tspan.age{fill:var(--accent);font-size:15px;font-weight:500}.chart-crosshair-label tspan.title-detail{fill:var(--text);font-size:12px}.chart-crosshair-label tspan.description{fill:var(--text-muted);font-size:12px}.chart-crosshair-divider{stroke:color-mix(in srgb,var(--text) 7%,transparent);stroke-width:.5;vector-effect:non-scaling-stroke}.chart-crosshair-connector{stroke:color-mix(in srgb,var(--fi-gate-tone) 34%,transparent);stroke-dasharray:3 4;stroke-width:1;vector-effect:non-scaling-stroke}.funding-area{stroke:none;opacity:.82}.funding-area.employment,.funding-legend i.employment,.life-map-money-row i.employment{fill:var(--positive);background:var(--positive)}.funding-area.investment-income,.funding-legend i.investment-income,.life-map-money-row i.investment-income{fill:var(--income);background:var(--income)}.funding-area.cash-interest,.funding-legend i.cash-interest,.life-map-money-row i.cash-interest{fill:var(--spending);background:var(--spending)}.funding-area.goal-reserve,.funding-legend i.goal-reserve,.life-map-money-row i.goal-reserve{fill:var(--chart-saved);background:var(--chart-saved)}.funding-area.cash-drawdown,.funding-legend i.cash-drawdown,.life-map-money-row i.cash-drawdown{fill:var(--chart-forecast);background:var(--chart-forecast)}.funding-area.growth-used,.funding-legend i.growth-used,.life-map-money-row i.growth-used{fill:var(--accent);background:var(--accent)}.funding-area.capital-drawdown,.funding-legend i.capital-drawdown,.life-map-money-row i.capital-drawdown{fill:var(--warning);background:var(--warning)}.funding-area.super-drawdown,.funding-legend i.super-drawdown,.life-map-money-row i.super-drawdown{fill:color-mix(in srgb,var(--accent) 55%,var(--income));background:color-mix(in srgb,var(--accent) 55%,var(--income))}.funding-area.asset-sale,.funding-legend i.asset-sale,.life-map-money-row i.asset-sale,.funding-area.shortfall,.funding-legend i.shortfall,.life-map-money-row i.shortfall{fill:var(--negative);background:var(--negative)}.funding-selection-point{fill:var(--surface);stroke:var(--text);stroke-width:3;vector-effect:non-scaling-stroke}.svg-life-event-track{stroke:color-mix(in srgb,var(--text-muted) 70%,var(--line-strong));stroke-width:1.25;vector-effect:non-scaling-stroke}.svg-life-event-connector{fill:none;stroke:var(--line);stroke-width:1;vector-effect:non-scaling-stroke}.svg-life-event-caption{fill:var(--text-muted);font-size:8px;font-weight:500}.svg-life-event-marker{cursor:pointer;outline:none}.svg-life-event-marker circle{fill:var(--surface-raised);pointer-events:all;stroke:color-mix(in srgb,var(--line-strong) 55%,transparent);stroke-width:.75;vector-effect:non-scaling-stroke}.svg-life-event-marker text{font-family:"Apple Color Emoji","Segoe UI Emoji",sans-serif;font-size:19.5px;pointer-events:none}.svg-life-event-marker.selected circle,.svg-life-event-marker:focus-visible circle{stroke:var(--accent);stroke-width:2.5}.svg-life-event-marker .svg-life-event-hit,.svg-life-event-marker.selected .svg-life-event-hit,.svg-life-event-marker:focus-visible .svg-life-event-hit{fill:transparent;pointer-events:all;stroke:transparent;stroke-width:0}.chart-data-popover{position:absolute;z-index:60;display:grid;width:min(288px,calc(100% - 16px));padding:16px;border:1px solid color-mix(in srgb,var(--text) 6%,transparent);border-radius:18px;background:color-mix(in srgb,var(--canvas) 91%,transparent);box-shadow:0 22px 54px color-mix(in srgb,black 34%,transparent),0 1px color-mix(in srgb,white 4%,transparent) inset;backdrop-filter:blur(18px) saturate(110%);-webkit-backdrop-filter:blur(18px) saturate(110%);color:var(--text);font-variant-numeric:tabular-nums;pointer-events:none}.life-point-popover{transform:translate(-50%,calc(-100% - 24px))}.life-event-popover{bottom:auto;transform:translate(-50%,calc(-100% - 52px))}.chart-data-popover-header{display:flex;min-width:0;min-height:46px;align-items:flex-end;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid color-mix(in srgb,var(--text) 7%,transparent)}.chart-data-age-lockup{display:inline-flex;min-width:0;align-items:baseline;gap:7px;line-height:1}.chart-data-age-lockup small{color:var(--text-muted);font-size:10px;font-weight:500;letter-spacing:.11em;text-transform:uppercase}.chart-data-age-lockup strong{color:var(--accent);font-size:34px;font-weight:500;letter-spacing:-.045em;line-height:.95}.chart-data-date{max-width:120px;overflow:hidden;color:var(--text-muted);font-size:11px;font-weight:500;line-height:1.3;text-align:right;text-overflow:ellipsis;white-space:nowrap}.chart-data-popover-body{display:grid;min-width:0;gap:4px;padding-top:13px}.chart-data-eyebrow{color:var(--text-muted);font-size:9px;font-weight:500;letter-spacing:.11em;text-transform:uppercase}.chart-data-title{overflow-wrap:anywhere;color:var(--text);font-size:15px;font-weight:500;line-height:1.3}.chart-data-context{color:var(--text-muted);font-size:11px;line-height:1.4}.chart-data-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;padding-top:12px;border-top:1px solid color-mix(in srgb,var(--text) 7%,transparent)}.chart-data-metrics>span,.chart-data-single-metric{display:grid;min-width:0;gap:4px}.chart-data-metrics small,.chart-data-single-metric small{color:var(--text-muted);font-size:10px;font-weight:500}.chart-data-metrics strong,.chart-data-single-metric strong{overflow-wrap:anywhere;color:var(--text);font-size:14px;font-weight:500;line-height:1.25}.chart-data-single-metric{margin-top:14px;padding-top:12px;border-top:1px solid color-mix(in srgb,var(--text) 7%,transparent)}.life-year-popover{--popover-accent: var(--income);bottom:33%;width:min(320px,calc(100% - 16px));transform:translate(-50%,-10px);pointer-events:auto}.gate-meaning-panel.incomeAndGrowth .life-year-popover{--popover-accent: var(--spending)}.gate-meaning-panel.incomeOnly .life-year-popover{--popover-accent: var(--chart-saved)}.life-year-popover-label,.life-year-popover .life-map-money-row{color:var(--text-muted);font-size:10px}.life-year-popover .chart-data-popover-header{padding-right:34px}.chart-data-popover-dismiss{position:absolute;top:12px;right:12px;display:grid;width:28px;height:28px;place-items:center;padding:0;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text-muted)}.chart-data-popover-dismiss:hover{border-color:color-mix(in srgb,var(--accent) 24%,var(--line));color:var(--text)}.chart-data-popover-dismiss svg,.life-year-popover-action svg{width:14px;height:14px;flex:0 0 14px}.life-year-popover-totals{margin-bottom:12px}.life-year-popover-label{margin-top:2px;font-weight:500;letter-spacing:.09em;text-transform:uppercase}.life-year-popover .life-map-money-row{min-height:28px;font-size:11px}.life-year-popover .life-map-money-row strong{font-size:12px;font-weight:500}.life-year-popover-action{display:inline-flex;min-height:32px;align-items:center;justify-content:center;gap:6px;margin-top:4px;padding:0 9px;border:1px solid var(--line);border-radius:12px;background:var(--surface-muted);color:var(--text-muted);font-size:12px;font-weight:500}.life-year-popover-action:hover{border-color:color-mix(in srgb,var(--popover-accent) 24%,var(--line));background:var(--surface);color:var(--text)}.life-map-event-summary{display:grid;gap:6px}.life-map-event-summary>div{display:grid;min-width:0;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:9px;padding-block:7px;border-bottom:1px solid var(--line)}.life-map-event-summary>div>span{font-size:20px;text-align:center}.life-map-event-summary p{display:grid;min-width:0;gap:2px;margin:0}.life-map-event-summary p strong{color:var(--text);font-size:11px}.life-map-event-summary p small,.life-map-quiet-year{color:var(--text-muted);font-size:9px;line-height:1.45}.life-map-event-summary em{color:var(--positive);font-size:9px;font-style:normal;font-weight:500}.life-map-funding-breakdown{display:grid;width:min(100%,420px);min-width:0;align-content:start;gap:7px}.life-map-subheading{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:10px;color:var(--text-muted);font-size:9px;font-weight:500}.life-map-subheading strong{color:var(--text);font-size:10px;font-variant-numeric:tabular-nums}.life-map-money-row{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:10px;min-height:23px;color:var(--text-muted);font-size:10px}.life-map-money-row>span{display:inline-flex;min-width:0;align-items:center;gap:7px}.life-map-money-row i{width:10px;height:10px;flex:0 0 auto;border-radius:2px}.life-map-money-row strong{color:var(--text);font-size:10px;font-variant-numeric:tabular-nums}.life-map-money-row.shortfall strong{color:var(--negative)}.lifetime-fi-line{stroke:var(--positive);stroke-linecap:round;stroke-linejoin:round;stroke-width:3;vector-effect:non-scaling-stroke}.lifetime-fi-line.plan.drawdown{stroke:var(--income)}.lifetime-fi-line.plan.incomeAndGrowth{stroke:var(--spending)}.lifetime-fi-line.plan.incomeOnly{stroke:var(--chart-saved)}.lifetime-fi-line.plan.building{stroke-dasharray:7 7;stroke-width:2.25;opacity:.72}.lifetime-fi-line.plan.retired{stroke-width:3}.lifetime-fi-line.baseline{stroke:var(--text-muted);stroke-dasharray:7 7;stroke-width:2}.lifetime-fi-line.incomeAndGrowth{stroke:var(--spending)}.lifetime-fi-line.incomeOnly{stroke:var(--chart-saved)}.lifetime-gate-line{stroke:var(--income);stroke-dasharray:3 5;stroke-width:1.5;vector-effect:non-scaling-stroke}.lifetime-gate-line.incomeAndGrowth{stroke:var(--spending)}.lifetime-gate-line.incomeOnly{stroke:var(--chart-saved)}.lifetime-gate-label{fill:var(--income);font-size:10px;font-weight:500}.lifetime-gate-label.incomeAndGrowth{fill:var(--spending)}.lifetime-gate-label.incomeOnly{fill:var(--chart-saved)}.gate-meaning-panel .retirement-chart-readout{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.chart-selection-point.drawdown{stroke:var(--income)}.chart-selection-point.incomeAndGrowth{stroke:var(--spending)}.chart-selection-point.incomeOnly{stroke:var(--chart-saved)}.retirement-chart-panel{display:grid;gap:14px;padding:18px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.retirement-chart-panel>header,.retirement-gate-journey>header,.retirement-milestones>header{display:flex;min-width:0;align-items:flex-start;justify-content:space-between;gap:16px}.retirement-chart-panel h2,.retirement-gate-journey h2,.retirement-milestones h3{margin:3px 0 0;color:var(--text);font-size:17px;letter-spacing:0}.retirement-milestones h3{font-size:14px}.retirement-eyebrow{color:var(--text-muted);font-size:10px;font-weight:500;text-transform:uppercase}.retirement-metric-switch{display:flex;min-width:0;align-items:center;gap:3px;padding:3px;border:1px solid var(--line);border-radius:7px;background:var(--surface-muted)}.retirement-metric-switch button{display:inline-flex;min-height:36px;align-items:center;justify-content:center;gap:6px;padding:0 10px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--text-muted);font-size:11px;font-weight:500}.retirement-metric-switch button[aria-pressed=true]{border-color:var(--line);background:var(--surface);color:var(--text)}.retirement-chart-legend{display:flex;min-height:20px;flex-wrap:wrap;align-items:center;gap:14px}.retirement-chart-legend>span{display:inline-flex;align-items:center;gap:6px;color:var(--text-muted);font-size:10px}.retirement-chart-legend i{display:block;width:20px;height:3px;border-radius:2px;background:var(--positive)}.retirement-chart-legend i.baseline{height:0;border-top:2px dashed var(--text-muted);background:transparent}.retirement-chart-legend i.income-only{background:var(--income)}.retirement-chart-legend i.threshold{height:0;border-top:2px dotted var(--accent);background:transparent}.retirement-chart-canvas{width:100%;min-width:0;aspect-ratio:1040 / 300}.retirement-chart-canvas svg{display:block;width:100%;height:100%;overflow:visible}.chart-grid-line{stroke:var(--line);stroke-width:1}.chart-axis-label{fill:var(--text-muted);font-size:10px;font-variant-numeric:tabular-nums}.retirement-chart-line{stroke:var(--positive);stroke-linecap:round;stroke-linejoin:round;stroke-width:3;vector-effect:non-scaling-stroke}.retirement-chart-line.baseline{stroke:var(--text-muted);stroke-dasharray:7 7;stroke-width:2}.retirement-chart-line.income-only{stroke:var(--income);stroke-width:2.5}.chart-threshold-line{stroke:var(--accent);stroke-dasharray:3 5;stroke-width:1.5;vector-effect:non-scaling-stroke}.chart-selection-line{stroke:color-mix(in srgb,var(--fi-gate-tone, var(--line-strong)) 46%,transparent);stroke-dasharray:4 5;stroke-width:1;vector-effect:non-scaling-stroke}.chart-selection-band{fill:color-mix(in srgb,var(--fi-gate-tone, var(--accent)) 7%,transparent);pointer-events:none}.chart-selection-point{fill:var(--surface);stroke:var(--positive);stroke-width:3;vector-effect:non-scaling-stroke}.chart-selection-point.baseline{stroke:var(--text-muted);stroke-width:2}.chart-selection-point.income-only{stroke:var(--income)}.retirement-year-controls{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;align-items:center;gap:8px}.retirement-year-controls>button{display:grid;width:36px;height:36px;place-items:center;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text)}.retirement-year-controls>button:disabled{cursor:not-allowed;opacity:.35}.retirement-year-scrubber{display:grid;grid-template-columns:auto minmax(120px,1fr) 48px;align-items:center;gap:12px;color:var(--text-muted);font-size:10px;font-weight:500}.retirement-year-scrubber input{width:100%;accent-color:var(--positive)}.retirement-year-scrubber strong{color:var(--text);text-align:right;font-size:12px;font-variant-numeric:tabular-nums}.retirement-chart-readout{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line)}.retirement-chart-readout>div{display:grid;min-width:0;gap:4px;padding:12px 12px 0 0}.retirement-chart-readout span{color:var(--text-muted);font-size:9px}.retirement-chart-readout strong{overflow-wrap:anywhere;color:var(--text);font-size:13px;font-variant-numeric:tabular-nums}.retirement-chart-readout .scenario-delta strong{color:var(--positive)}.retirement-chart-panel.compact{padding:14px}.retirement-chart-panel.compact .retirement-chart-canvas{max-height:280px}.retirement-gate-journey{display:grid;gap:14px;padding-block:18px;border-block:1px solid var(--line)}.journey-horizon{color:var(--text-muted);font-size:11px;font-variant-numeric:tabular-nums}.retirement-gate-rows{display:grid}.retirement-gate-row{display:grid;min-height:72px;grid-template-columns:170px minmax(200px,1fr) 180px;align-items:center;gap:18px;border-top:1px solid var(--line)}.gate-row-label{display:grid;gap:2px}.gate-row-label>span,.gate-row-label small,.gate-row-difference{color:var(--text-muted);font-size:10px}.gate-row-label strong{color:var(--text);font-size:13px;font-variant-numeric:tabular-nums}.gate-track{position:relative;height:8px;border-radius:4px;background:var(--surface-muted);box-shadow:inset 0 0 0 1px var(--line)}.gate-track-fill{display:block;height:100%;border-radius:4px;background:var(--positive)}.gate-track>i{position:absolute;top:50%;width:16px;height:16px;border:4px solid var(--surface);border-radius:50%;background:var(--positive);box-shadow:0 0 0 1px var(--positive);transform:translate(-50%,-50%)}.retirement-gate-row.notReached .gate-track-fill,.retirement-gate-row.notReached .gate-track>i{background:var(--warning)}.retirement-gate-row.notReached .gate-track>i{box-shadow:0 0 0 1px var(--warning)}.gate-row-difference{line-height:1.4}.retirement-milestones{display:grid;align-content:start;gap:14px;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.retirement-milestones>header{justify-content:flex-start}.retirement-milestones>header>svg{margin-top:2px;color:var(--positive)}.milestone-list{display:grid}.milestone-list>div{display:grid;min-height:48px;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:10px;border-top:1px solid var(--line)}.milestone-icon{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:var(--positive-soft);color:var(--positive)}.milestone-icon.goal,.milestone-icon.sale{background:var(--warning-soft);color:var(--warning)}.milestone-icon.employment{background:var(--accent-soft);color:var(--accent)}.milestone-list p{display:grid;gap:2px;margin:0}.milestone-list strong{color:var(--text);font-size:11px}.milestone-list small{color:var(--text-muted);font-size:9px;font-variant-numeric:tabular-nums}.active-strategy-panel,.baseline-strategy-prompt,.scenario-builder{border:1px solid var(--line);border-radius:var(--moolah-radius-panel, 18px);background:var(--surface)}.active-strategy-panel{display:grid;gap:14px;padding:18px 20px}.active-strategy-panel.sidebar{gap:14px;padding:18px}.active-strategy-panel>header,.baseline-strategy-prompt,.scenario-builder-header,.active-strategy-actions,.strategy-builder-flow-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.active-strategy-panel h2,.scenario-builder h2,.strategy-builder-preview h2{margin:2px 0 0;color:var(--text);font-size:17px;letter-spacing:0}.active-strategy-panel p,.scenario-builder p,.scenario-comparison-view header p,.assumptions-view header p{margin:4px 0 0;color:var(--text-muted);font-size:12px;line-height:1.45}.active-strategy-actions{flex:0 0 auto;align-items:center;gap:8px}.active-strategy-panel.sidebar>header{align-items:center}.active-strategy-panel.sidebar .active-strategy-actions{display:block;width:auto}.active-strategy-panel.sidebar .active-strategy-actions>button{width:36px;min-height:36px}.active-strategy-panel.sidebar .strategy-adjustments{font-size:10px}.active-strategy-panel.sidebar .strategy-sequence.compact{grid-template-columns:1fr;gap:8px;border:0}.active-strategy-panel.sidebar .strategy-sequence.compact li{grid-template-columns:36px minmax(0,1fr);gap:10px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-radius:var(--moolah-radius-control, 12px);background:color-mix(in srgb,var(--surface-muted) 64%,transparent)}.active-strategy-panel.sidebar .strategy-sequence.compact li+li{border-top:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-left:0}.active-strategy-panel.sidebar .strategy-sequence-number{display:none}.active-strategy-panel.sidebar .strategy-sequence-icon{width:36px;height:36px;border-radius:50%;background:var(--surface-raised);color:var(--accent)}.active-strategy-panel.sidebar .strategy-sequence-copy{align-self:center;gap:3px}.active-strategy-panel.sidebar .strategy-sequence-copy strong{font-size:11px;line-height:1.35}.active-strategy-panel.sidebar .strategy-sequence.compact .strategy-sequence-copy small{display:block;font-size:9px;line-height:1.35}.strategy-inline-edit{display:inline-grid;width:36px;height:36px;place-items:center;padding:0;border:1px solid color-mix(in srgb,var(--line) 72%,transparent);border-radius:50%;background:color-mix(in srgb,var(--surface-muted) 72%,transparent);color:var(--text-secondary)}.strategy-inline-edit:hover{border-color:color-mix(in srgb,var(--accent) 24%,var(--line));color:var(--text)}.active-strategy-summary{margin:-6px 0 0!important}.active-strategy-outcomes{display:grid;gap:8px}.active-strategy-outcomes-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--text);font-size:11px}.active-strategy-outcomes-heading span{color:var(--text-muted);font-size:9px}.baseline-strategy-prompt.sidebar{display:grid;align-items:start;gap:16px;padding:16px}.baseline-strategy-prompt.sidebar .primary-command{width:100%}.strategy-adjustments{display:flex;align-items:flex-start;gap:8px;padding:9px 11px;border-radius:var(--moolah-radius-control, 12px);background:var(--surface-muted);color:var(--text-muted);font-size:11px;line-height:1.45}.strategy-adjustments>span{display:grid;gap:2px}.strategy-adjustments svg{flex:0 0 auto;margin-top:1px;color:var(--accent)}.strategy-adjustments strong{color:var(--text)}.strategy-sequence{display:grid;gap:0;margin:0;padding:0;list-style:none}.strategy-sequence.compact{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));border-block:1px solid var(--line)}.strategy-sequence li{display:grid;min-width:0;grid-template-columns:24px 28px minmax(0,1fr);align-items:start;gap:8px;padding:13px 10px}.strategy-sequence.compact li+li{border-left:1px solid var(--line)}.strategy-sequence-number,.strategy-sequence-icon{display:grid;place-items:center}.strategy-sequence-number{width:22px;height:22px;border-radius:50%;background:var(--surface-muted);color:var(--text-muted);font-size:10px;font-weight:500}.strategy-sequence-icon{width:26px;height:26px;color:var(--accent)}.strategy-sequence-copy{display:grid;gap:3px}.strategy-sequence-copy strong{color:var(--text);font-size:11px;line-height:1.35}.strategy-sequence-copy small{color:var(--text-muted);font-size:10px;line-height:1.4}.strategy-sequence.compact .strategy-sequence-copy small{display:none}.active-shortfall-summary{color:var(--text-muted);font-size:11px}.active-shortfall-summary summary{display:flex;justify-content:space-between;gap:12px;cursor:pointer;list-style:none}.active-shortfall-summary summary::-webkit-details-marker,.strategy-step-editor summary::-webkit-details-marker,.strategy-shortfall-editor summary::-webkit-details-marker{display:none}.active-shortfall-summary summary span{display:inline-flex;align-items:center;gap:4px}.active-shortfall-summary p{padding-top:8px}.baseline-strategy-prompt{align-items:center;padding:16px 20px}.baseline-strategy-prompt strong{display:block;color:var(--text);font-size:15px}.baseline-strategy-prompt p{max-width:680px;margin:4px 0 0;color:var(--text-muted);font-size:11px}.scenario-builder{display:grid;overflow:hidden;gap:0}.scenario-builder-header{padding:20px 22px 16px;border-bottom:1px solid var(--line)}.scenario-builder-header strong{display:block;color:var(--text);font-size:18px;letter-spacing:0}.strategy-builder-close{display:grid;width:36px;height:36px;flex:0 0 auto;place-items:center;padding:0;border:1px solid var(--line);border-radius:var(--moolah-radius-control, 12px);background:var(--surface-muted);color:var(--text-muted)}.scenario-identity-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0;overflow:hidden;margin:18px 22px;padding:0;border:.5px solid var(--display-shell-border);border-radius:var(--moolah-radius-control, 12px);background:color-mix(in srgb,var(--surface-muted) 32%,transparent)}.scenario-builder-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0;overflow:hidden;border:.5px solid var(--display-shell-border);border-radius:var(--moolah-radius-control, 12px);background:color-mix(in srgb,var(--surface-muted) 32%,transparent)}.scenario-builder-grid.two-column{grid-template-columns:minmax(0,1fr)}.scenario-builder label{display:grid;min-width:0;min-height:52px;grid-template-columns:minmax(132px,.46fr) minmax(0,1fr);align-items:center;gap:14px;padding:6px 12px 6px 14px;color:var(--text-muted);font-size:11px;font-weight:500}.scenario-identity-grid label+label,.scenario-builder-grid label+label{border-top:.5px solid color-mix(in srgb,var(--line) 66%,transparent)}.scenario-builder input:not([type=checkbox]),.scenario-builder select,.scenario-builder textarea{width:100%;min-height:40px;padding:9px 11px;border:0;border-radius:9px;background:transparent;color:var(--text);font:inherit}.scenario-builder select{appearance:auto}.scenario-input-prefix,.scenario-input-suffix{display:grid;overflow:hidden;min-width:0;align-items:center;border:0;border-radius:9px;background:transparent}.scenario-input-prefix{grid-template-columns:auto minmax(0,1fr)}.scenario-input-suffix{grid-template-columns:minmax(0,1fr) auto}.scenario-input-prefix>span,.scenario-input-suffix>span{padding:0 10px;color:var(--text-muted);font-size:10px}.scenario-input-prefix input:not([type=checkbox]),.scenario-input-suffix input:not([type=checkbox]){border:0;border-radius:0}.scenario-builder textarea{min-height:60px;resize:vertical}.scenario-builder .scenario-toggle{min-height:52px;grid-template-columns:minmax(132px,1fr) auto;align-items:center}.scenario-builder .scenario-toggle>span{grid-column:1;grid-row:1}.scenario-builder .scenario-toggle>input{grid-column:2;grid-row:1}.scenario-builder .scenario-toggle input,.shortfall-rule input{width:16px;height:16px;accent-color:var(--accent)}.strategy-builder-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);align-items:start;gap:22px;padding:20px 22px 24px}.strategy-builder-flow{display:grid;min-width:0;border-bottom:1px solid var(--line)}.strategy-builder-flow-heading{align-items:end;padding:0 4px 12px}.strategy-builder-flow-heading>span{color:var(--text-muted);font-size:10px}.strategy-step-editor,.strategy-shortfall-editor{border-top:1px solid var(--line)}.strategy-step-editor>summary{display:grid;min-height:78px;grid-template-columns:28px 34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 4px;cursor:pointer;list-style:none}.strategy-step-number,.strategy-step-icon{display:grid;place-items:center}.strategy-step-number{width:26px;height:26px;border-radius:50%;background:var(--surface-muted);color:var(--text-muted);font-size:10px;font-weight:500}.strategy-step-icon{width:32px;height:32px;border-radius:50%;background:var(--accent-soft);color:var(--accent)}.strategy-step-editor summary>span:nth-child(3){display:grid;gap:4px}.strategy-step-editor summary strong{color:var(--text);font-size:12px}.strategy-step-editor summary small{color:var(--text-muted);font-size:10px;font-weight:400;line-height:1.4}.strategy-step-edit{display:inline-flex;align-items:center;gap:5px;color:var(--text-muted);font-size:10px;font-weight:500}.strategy-step-editor[open] .strategy-step-edit>svg:last-child,.strategy-shortfall-editor[open] summary>span:last-child svg,.active-shortfall-summary[open] summary svg{transform:rotate(180deg)}.strategy-step-fields{display:grid;gap:12px;padding:2px 4px 18px 82px}.strategy-step-fields>label{max-width:420px;overflow:hidden;border:.5px solid var(--display-shell-border);border-radius:var(--moolah-radius-control, 12px);background:color-mix(in srgb,var(--surface-muted) 32%,transparent)}.strategy-shortfall-editor>summary{display:flex;min-height:58px;align-items:center;justify-content:space-between;gap:12px;padding:8px 4px;color:var(--text-muted);cursor:pointer;font-size:11px;list-style:none}.strategy-shortfall-editor summary>span{display:inline-flex;align-items:center;gap:7px}.strategy-shortfall-editor summary>span:first-child{color:var(--text);font-weight:500}.strategy-builder-preview{position:sticky;top:16px;display:grid;gap:10px;padding:18px;border:1px solid var(--line);border-radius:var(--moolah-radius-floating, 16px);background:var(--surface-muted)}.strategy-builder-preview-list{display:grid;margin-top:4px}.strategy-builder-preview-list>div{display:grid;min-height:42px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:8px;border-top:1px solid var(--line)}.strategy-builder-preview-list span{color:var(--accent);font-size:10px;font-weight:500}.strategy-builder-preview-list strong{color:var(--text);font-size:11px;line-height:1.35}.strategy-builder-preview .strategy-preview-note{padding-top:9px;border-top:1px solid var(--line);font-size:10px}.shortfall-order{display:grid;gap:0;margin:0;padding:0 4px 14px;border:0}.shortfall-order legend{margin-bottom:8px;color:var(--text);font-size:12px;font-weight:500}.shortfall-rule{display:grid;grid-template-columns:28px minmax(0,1fr) 38px 38px;min-height:46px;align-items:center;gap:6px;border-top:1px solid var(--line)}.shortfall-rule>span{color:var(--text-muted);text-align:center;font-size:11px;font-variant-numeric:tabular-nums}.shortfall-rule>label{display:flex;align-items:center;gap:9px;color:var(--text);font-size:12px}.shortfall-rule>button{width:36px;min-height:34px;padding:0;border-color:var(--line)}.scenario-builder footer{justify-content:flex-end;padding:16px 22px;border-top:1px solid var(--line);background:var(--surface-muted)}.strategy-builder-header-actions{display:flex;align-items:center;gap:8px}.strategy-position-bridge{display:grid;grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(140px,.7fr));border-bottom:1px solid var(--line);background:var(--surface-muted)}.strategy-position-bridge>span{display:grid;min-width:0;gap:3px;padding:14px 18px;border-right:1px solid var(--line)}.strategy-position-bridge>span:last-child{border-right:0}.strategy-position-bridge strong{overflow:hidden;color:var(--text);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.strategy-position-bridge small{color:var(--text-muted);font-size:10px;font-weight:350}.catalog-strategy-builder{container-type:inline-size}.catalog-policy-strip{display:grid;grid-template-columns:minmax(260px,1.5fr) repeat(3,minmax(150px,.7fr));align-items:end;gap:14px;padding:18px 22px;border-bottom:1px solid var(--line);background:var(--canvas)}.catalog-policy-strip>div:first-child{align-self:center}.catalog-policy-strip h2,.catalog-sequence h2{margin:2px 0 0;font-size:15px}.catalog-policy-strip p{max-width:520px;margin-top:5px;font-size:10px}.catalog-composer-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);align-items:start;gap:18px;padding:20px 22px 24px}.catalog-sequence{display:grid;min-width:0;gap:12px}.catalog-sequence>header{display:flex;min-height:42px;align-items:end;justify-content:space-between;gap:12px}.catalog-sequence>header>div{min-width:0}.catalog-sequence>header>span{flex:0 0 auto;color:var(--text-muted);font-size:10px;font-variant-numeric:tabular-nums}.catalog-step-list{display:grid;overflow:hidden;border:1px solid var(--line);border-radius:var(--moolah-radius-panel, 18px);background:var(--surface-muted)}.catalog-step+.catalog-step{border-top:1px solid var(--line)}.catalog-step>summary{display:grid;min-height:68px;grid-template-columns:18px 24px 34px minmax(0,1fr) auto auto;align-items:center;gap:9px;padding:9px 11px;cursor:pointer;list-style:none}.catalog-step>summary::-webkit-details-marker{display:none}.catalog-step.life-event>summary{grid-template-columns:34px minmax(0,1fr) auto auto}.catalog-drag-handle{color:var(--text-subtle, var(--text-muted));cursor:grab}.catalog-step-number,.catalog-step-emoji{display:grid;place-items:center;flex:0 0 auto}.catalog-step-number{width:23px;height:23px;border-radius:50%;background:var(--canvas);color:var(--text-muted);font-size:9px;font-weight:500}.catalog-step-emoji{width:34px;height:34px;border:1px solid var(--line);border-radius:var(--moolah-radius-control, 12px);background:var(--canvas);font-size:16px}.catalog-step-copy{display:grid;min-width:0;gap:3px}.catalog-step-copy strong{overflow:hidden;color:var(--text);font-size:12px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.catalog-step-copy small{overflow:hidden;color:var(--text-muted);font-size:9px;font-weight:350;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.catalog-step-state{padding:4px 7px;border:1px solid var(--line);border-radius:999px;color:var(--text-muted);font-size:8px;font-weight:500;text-transform:capitalize;white-space:nowrap}.catalog-step-state.active,.catalog-step-state.complete,.catalog-step-state.accepted{border-color:color-mix(in srgb,var(--positive) 42%,var(--line));background:color-mix(in srgb,var(--positive) 9%,transparent);color:var(--positive)}.catalog-step-state.blocked,.catalog-step-state.review{border-color:color-mix(in srgb,var(--warning) 42%,var(--line));background:color-mix(in srgb,var(--warning) 8%,transparent);color:var(--warning)}.catalog-row-actions{display:flex;align-items:center;gap:3px}.catalog-row-actions button{display:grid;width:28px;height:28px;place-items:center;padding:0;border:0;border-radius:9px;background:transparent;color:var(--text-muted)}.catalog-row-actions button:hover{background:var(--canvas);color:var(--text)}.catalog-row-actions button:disabled{opacity:.28}.catalog-step[open]>summary{background:color-mix(in srgb,var(--accent) 5%,transparent)}.catalog-editor-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px 14px 16px 86px;border-top:1px solid var(--line);background:var(--surface)}.life-event .catalog-editor-fields{padding-left:58px}.catalog-allocation-list,.life-event-effects{display:grid;grid-column:1 / -1;gap:10px}.catalog-allocation-list>div{display:grid;grid-template-columns:minmax(160px,1fr) repeat(2,minmax(110px,.6fr));gap:10px}.life-event-effects fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:12px;border:1px solid var(--line);border-radius:var(--moolah-radius-control, 12px);background:var(--canvas)}.life-event-effects legend{padding:0 5px;color:var(--text);font-size:10px;font-weight:500}.catalog-review-toggle{display:flex!important;grid-column:1 / -1;align-items:center;gap:8px!important;padding:10px 11px;border:1px solid var(--line);border-radius:var(--moolah-radius-control, 12px);background:var(--canvas);color:var(--text)!important}.catalog-review-toggle input{width:16px;height:16px;accent-color:var(--positive)}.catalog-add-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.catalog-add-row button{white-space:nowrap}.catalog-selection-help{min-height:30px;margin:-5px 2px 0!important;font-size:10px!important}.catalog-empty-state{display:grid;min-height:118px;align-content:center;gap:4px;padding:18px;border:1px dashed var(--line-strong);border-radius:var(--moolah-radius-panel, 18px);background:var(--surface-muted)}.catalog-empty-state strong{color:var(--text);font-size:12px}.catalog-empty-state p{max-width:420px;margin:0;font-size:10px}.strategy-warning{display:flex;align-items:flex-start;gap:6px;margin:0!important;padding:8px;border-radius:10px;background:color-mix(in srgb,var(--warning) 8%,transparent);color:var(--warning)!important;font-size:9px!important}.strategy-warning svg{flex:0 0 auto}.scenario-comparison-view,.assumptions-view{display:grid;min-width:0;gap:18px}.scenario-comparison-view>header,.assumptions-view>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid var(--line)}.comparison-impact-heading h2{margin-top:3px;font-size:18px}.scenario-comparison-view>header h2,.assumptions-view>header h2,.assumptions-view h3{margin:0}.scenario-comparison-view>header>span{color:var(--text-muted);font-size:11px}.comparison-table-scroll{width:100%;min-width:0;overflow-x:auto;border:1px solid var(--line);border-radius:8px}.comparison-table-scroll table{width:100%;min-width:680px;border-collapse:collapse;background:var(--surface);font-variant-numeric:tabular-nums}.comparison-table-scroll th,.comparison-table-scroll td{min-height:42px;padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;font-size:12px}.comparison-table-scroll thead th{background:var(--surface-muted);color:var(--text-muted);font-size:11px}.comparison-table-scroll tbody th{color:var(--text);font-weight:500}.comparison-differences{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid var(--line)}.comparison-differences>div{display:grid;min-height:78px;align-content:center;gap:5px;padding:12px;border-right:1px solid var(--line)}.comparison-differences>div:last-child{border-right:0}.comparison-differences span{color:var(--text-muted);font-size:10px}.comparison-differences strong{color:var(--text);font-size:14px}.assumptions-view h3{font-size:14px}.model-evidence{display:grid;border-bottom:1px solid var(--line)}.model-evidence details{border-top:1px solid var(--line)}.model-evidence summary{display:grid;min-height:50px;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;color:var(--text);cursor:pointer;list-style:none}.model-evidence summary::-webkit-details-marker{display:none}.model-evidence summary>span{color:var(--text-muted);font-size:11px}.evidence-list{display:grid;padding-bottom:8px}.evidence-list>div{display:grid;grid-template-columns:88px minmax(0,1fr);gap:12px;padding:9px 4px;border-top:1px solid var(--line)}.evidence-list>div>span{align-self:start;color:var(--text-muted);font-size:10px;font-variant-numeric:tabular-nums;text-transform:uppercase}.evidence-list p{display:grid;gap:3px;margin:0}.evidence-list strong{color:var(--text);font-size:11px}.evidence-list small,.empty-evidence{color:var(--text-muted);font-size:11px;line-height:1.45}.check-ok{color:var(--positive)!important}.check-check{color:var(--negative)!important}.check-review{color:var(--warning)!important}.spin{animation:modelling-spin .9s linear infinite}@keyframes modelling-spin{to{transform:rotate(360deg)}}@media(max-width:1100px){.modelling-overview-layout,.modelling-overview-layout.strategy-open{grid-template-columns:1fr}.modelling-strategy-column{position:static}.strategy-builder-layout{grid-template-columns:1fr}.catalog-policy-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-policy-strip>div:first-child{grid-column:1 / -1}.catalog-composer-grid{grid-template-columns:1fr}.strategy-builder-preview{position:static}}@media(max-width:800px){.strategy-position-bridge{grid-template-columns:repeat(2,minmax(0,1fr))}.strategy-position-bridge>span:nth-child(2){border-right:0}.strategy-position-bridge>span:nth-child(-n+2){border-bottom:1px solid var(--line)}.modelling-page-header{align-items:stretch;flex-direction:column}.modelling-scenario-select{width:100%;min-width:0}.modelling-gates{grid-template-columns:1fr}.modelling-year-controls{order:3;width:100%;margin-left:0}.modelling-checks{margin-left:auto}.modelling-timeline-table th:first-child{width:190px}.modelling-command-bar,.active-strategy-panel>header,.baseline-strategy-prompt,.scenario-builder-header,.scenario-comparison-view>header,.assumptions-view>header{align-items:stretch;flex-direction:column}.modelling-view-switch,.modelling-command-actions,.modelling-command-actions>button{width:100%}.modelling-view-switch{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.retirement-chart-panel>header,.retirement-gate-journey>header,.fi-gate-explorer>header{align-items:stretch;flex-direction:column}.fi-gate-selector{grid-template-columns:1fr}.fi-gate-selector>button{min-height:96px;grid-template-columns:42px minmax(0,1fr)}.lifetime-fi-heading{align-items:stretch;flex-direction:column}.lifetime-fi-actions,.lifetime-fi-chart-legend{justify-items:start;justify-content:flex-start}.lifetime-fi-chart-footer{align-items:flex-start;flex-wrap:wrap;justify-content:space-between}.lifetime-fi-workspace-actions{justify-content:flex-start}.chart-life-event-fields,.chart-life-event-card.composer .chart-life-event-fields,.chart-life-event-list{grid-template-columns:1fr}.chart-life-event-card>footer>button{flex:1 1 auto}.overview-cashflow-timeline{gap:10px;padding-top:20px}.life-map-chart-actions{min-width:0;justify-items:stretch}.life-map-mode-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.life-map-mode-switch button{min-height:44px}.lifetime-fi-chart{height:290px;aspect-ratio:auto}.chart-axis-label{font-size:20px}.lifetime-gate-label{font-size:18px}.lifetime-phase-label{font-size:15px}.lifetime-plan-boundary-label{font-size:13px}.svg-life-event-caption{font-size:16px}.svg-life-event-marker circle:not(.svg-life-event-hit){r:16px}.svg-life-event-marker text{font-size:33px}.chart-crosshair-label,.life-point-popover{display:none}.life-event-popover{bottom:auto;width:min(268px,calc(100% - 12px))}.life-year-popover{bottom:30%;width:min(280px,calc(100% - 12px))}.retirement-metric-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.retirement-chart-readout{grid-template-columns:repeat(2,minmax(0,1fr))}.retirement-gate-row{grid-template-columns:140px minmax(160px,1fr);gap:12px;padding-block:10px}.gate-row-difference{grid-column:1 / -1}.scenario-builder-grid,.scenario-builder-grid.two-column,.scenario-identity-grid,.comparison-differences{grid-template-columns:1fr}.catalog-editor-fields,.life-event-effects fieldset,.catalog-allocation-list>div{grid-template-columns:1fr}.catalog-editor-fields,.life-event .catalog-editor-fields{padding-left:14px}.active-strategy-actions,.active-strategy-actions>button,.baseline-strategy-prompt>button{width:100%}.strategy-sequence.compact{grid-template-columns:1fr}.strategy-sequence.compact li+li{border-top:1px solid var(--line);border-left:0}.strategy-step-fields{padding-left:4px}.comparison-differences>div{border-right:0;border-bottom:1px solid var(--line)}.comparison-differences>div:last-child{border-bottom:0}}@media(max-width:520px){.modelling-view-switch button{padding-inline:6px;font-size:10px}.scenario-builder{border-radius:var(--moolah-radius-floating, 16px)}.scenario-builder-header,.scenario-identity-grid,.strategy-builder-layout,.catalog-policy-strip,.catalog-composer-grid,.scenario-builder footer{padding-inline:14px}.catalog-policy-strip{grid-template-columns:1fr}.catalog-step>summary{grid-template-columns:24px 34px minmax(0,1fr) auto}.catalog-step.life-event>summary{grid-template-columns:34px minmax(0,1fr) auto}.catalog-drag-handle{display:none}.catalog-row-actions{grid-column:3 / 5;justify-self:end}.catalog-step.life-event .catalog-row-actions{grid-column:2 / 4}.catalog-step-copy small{white-space:normal}.catalog-add-row,.strategy-position-bridge{grid-template-columns:1fr}.strategy-position-bridge>span{border-right:0;border-bottom:1px solid var(--line)}.strategy-step-editor>summary{grid-template-columns:26px 30px minmax(0,1fr)}.strategy-step-edit{grid-column:3}.strategy-builder-flow-heading{align-items:flex-start;flex-direction:column}.shortfall-rule{grid-template-columns:24px minmax(0,1fr) 34px 34px}.evidence-list>div{grid-template-columns:72px minmax(0,1fr)}.retirement-chart-panel,.gate-meaning-panel{padding:14px 10px}.gate-meaning-chart,.retirement-chart-canvas{min-height:210px;aspect-ratio:auto}.retirement-chart-readout{grid-template-columns:1fr 1fr}.retirement-gate-row{grid-template-columns:116px minmax(120px,1fr)}.retirement-metric-switch button{padding-inline:4px;font-size:9px}}@media(prefers-reduced-motion:reduce){.spin{animation:none}}.plan-focus-stage{--focus-goal-series: var(--accent);position:relative;min-width:0;min-height:880px;padding:20px 0 346px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.plan-focus-heading{display:flex;min-width:0;align-items:flex-start;justify-content:space-between;gap:32px}.plan-focus-title-row{display:flex;align-items:center;gap:12px}.plan-focus-title-row h3{margin:0;color:var(--text);font-family:var(--moolah-font-body);font-size:30px;font-weight:500;letter-spacing:0;line-height:1.05}.plan-focus-stats{display:grid;min-width:min(100%,610px);grid-template-columns:repeat(4,minmax(92px,1fr));gap:24px;margin:0}.plan-focus-stats div{display:grid;min-width:0;gap:4px}.plan-focus-stats dt{color:var(--text-muted);font-size:10px;line-height:1.3}.plan-focus-stats dd{overflow:hidden;margin:0;color:var(--text);font-size:14px;font-variant-numeric:tabular-nums;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.focus-goal-chart{display:grid;min-width:0;gap:8px;margin:30px 0 0}.focus-goal-chart-heading{display:flex;min-width:0;align-items:flex-start;justify-content:space-between;gap:20px}.focus-goal-chart-heading>div{display:grid;gap:2px}.focus-goal-chart-heading strong{color:var(--text);font-size:13px;font-weight:500}.focus-goal-status{display:inline-flex;min-height:30px;align-items:center;gap:7px;padding:0 10px;border-radius:999px;background:var(--warning-soft);color:var(--warning);font-size:10px;font-weight:500;white-space:nowrap}.focus-goal-status:before{width:6px;height:6px;border-radius:999px;background:currentColor;content:""}.focus-goal-status.on-track{background:var(--positive-soft);color:var(--positive)}.focus-goal-chart-svg{display:block;width:100%;height:auto;max-height:470px;overflow:visible}.focus-chart-grid{stroke:var(--line);stroke-width:1}.focus-chart-axis,.focus-chart-target-label,.focus-chart-target-date-label{fill:var(--text-muted);font-family:var(--moolah-font-body);font-size:11px;font-variant-numeric:tabular-nums}.focus-chart-target{stroke:var(--warning);stroke-dasharray:5 7;stroke-width:1.5}.focus-chart-target-label{fill:var(--warning);font-weight:500}.focus-chart-target-date{stroke:var(--line-strong);stroke-dasharray:3 8;stroke-width:1}.focus-chart-target-date-label{fill:var(--text-muted);font-size:9px}.focus-chart-area{pointer-events:none;transition:opacity .22s ease}.focus-chart-forecast,.focus-chart-preview{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.focus-chart-forecast{stroke:var(--focus-goal-series);stroke-dasharray:7 6;stroke-width:4;animation:focus-chart-line-enter .48s ease-out both}.focus-chart-preview{stroke:var(--accent);stroke-dasharray:9 7;stroke-width:3;animation:focus-chart-line-enter .28s ease-out both}.focus-chart-now{fill:var(--positive);stroke:var(--canvas);stroke-width:5}.focus-chart-selection line{stroke:var(--line-strong);stroke-dasharray:4 5;stroke-width:1}.focus-chart-selection>circle{fill:var(--surface);stroke:var(--focus-goal-series);stroke-width:3}.focus-chart-selection rect{fill:var(--surface);stroke:var(--line-strong);stroke-width:1}.focus-chart-selection-date,.focus-chart-selection-allocation{fill:var(--text-muted);font-family:var(--moolah-font-body);font-size:9px}.focus-chart-selection-value{fill:var(--text);font-family:var(--moolah-font-body);font-size:13px;font-weight:500}.focus-chart-selection-allocation{font-size:8px}.focus-chart-completion circle{fill:var(--focus-goal-series);stroke:var(--canvas);stroke-width:5}.focus-chart-completion-icon{clip-path:circle(50%)}.focus-chart-completion text{fill:var(--text);font-family:var(--moolah-font-body);font-size:12px;font-weight:500}.focus-chart-legend{display:flex;flex-wrap:wrap;gap:8px 16px;color:var(--text-muted);font-size:10px}.focus-chart-legend span{display:inline-flex;align-items:center;gap:6px}.focus-chart-legend i{display:inline-block;width:20px;height:0;border-top:2px solid var(--focus-goal-series)}.focus-chart-legend i.preview{border-top-color:var(--accent);border-top-style:dashed}.focus-chart-legend i.target{border-top-color:var(--warning);border-top-style:dashed}.plan-month-tracking,.plan-goal-switcher,.plan-experiment-dock{border:1px solid var(--line-strong);border-radius:18px;background:var(--surface-glass);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.plan-month-tracking,.plan-goal-switcher{position:absolute;z-index:3;bottom:18px;width:min(370px,calc(50% - 12px))}.plan-month-tracking{left:0;padding:16px}.plan-month-tracking>header,.plan-goal-switcher>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.plan-month-tracking h3,.plan-goal-switcher h3{margin:0;color:var(--text);font-family:var(--moolah-font-body);font-size:15px;font-weight:500}.plan-live-indicator{display:inline-flex;align-items:center;gap:6px;color:var(--positive);font-size:9px;font-weight:500;white-space:nowrap}.plan-live-indicator i{width:6px;height:6px;border-radius:999px;background:currentColor;box-shadow:0 0 0 4px var(--positive-soft)}.plan-live-indicator.has-gap{color:var(--warning)}.plan-live-indicator.has-gap i{box-shadow:0 0 0 4px var(--warning-soft)}.plan-tracking-list{display:grid;gap:11px;margin-top:15px}.plan-tracking-row{--tracking-tone: var(--accent);display:grid;gap:6px}.plan-tracking-row.category-1{--tracking-tone: var(--income)}.plan-tracking-row.category-2{--tracking-tone: var(--positive)}.plan-tracking-row.category-3{--tracking-tone: var(--accent)}.plan-tracking-row>div{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:12px}.plan-tracking-row strong{color:var(--text);font-size:11px;font-weight:500}.plan-tracking-row span{color:var(--text-muted);font-size:10px;font-variant-numeric:tabular-nums;white-space:nowrap}.plan-tracking-row progress{width:100%;height:4px;overflow:hidden;border:0;border-radius:999px;accent-color:var(--tracking-tone);background:var(--line)}.plan-tracking-row progress::-webkit-progress-bar{border-radius:999px;background:var(--line)}.plan-tracking-row progress::-webkit-progress-value{border-radius:999px;background:var(--tracking-tone)}.plan-tracking-row progress::-moz-progress-bar{border-radius:999px;background:var(--tracking-tone)}.plan-month-tracking>footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:15px;padding-top:12px;border-top:1px solid var(--line)}.plan-month-tracking>footer span{display:grid;gap:3px;color:var(--text-muted);font-size:9px}.plan-month-tracking>footer strong{color:var(--text);font-size:13px;font-variant-numeric:tabular-nums}.plan-goal-switcher{right:0;padding:14px}.plan-goal-switcher>header{padding:2px 2px 11px}.plan-goal-switcher>header>span{color:var(--text-muted);font-size:9px;font-variant-numeric:tabular-nums}.plan-goal-switcher .goal-choice-list,.app-shell.ai-drawer-open .plan-goal-switcher .goal-choice-list{display:grid;max-height:276px;grid-template-columns:1fr;gap:4px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.plan-goal-switcher .goal-choice{min-height:58px;grid-template-columns:36px minmax(0,1fr) auto;gap:9px;padding:7px 8px;border-radius:13px}.plan-goal-switcher .goal-choice-icon{width:36px;height:36px;border-radius:12px}.plan-goal-switcher .goal-choice-percent{color:var(--text-muted);font-size:10px;font-variant-numeric:tabular-nums}.plan-goal-switcher .goal-choice progress{height:3px}.plan-experiment-dock{position:absolute;z-index:4;top:106px;right:0;display:grid;width:min(360px,38%);max-height:520px;align-content:start;gap:14px;overflow-y:auto;padding:18px;animation:plan-preview-enter .22s ease-out}.plan-experiment-dock .plan-sequential-guidance{min-height:280px}.plan-experiment-dock .plan-control-heading h3{font-size:16px}.plan-experiment-dock .plan-control-heading p{font-size:11px}.plan-explorer>.allocation-ribbon-block{padding:0;border-top:0}.app-shell.ai-drawer-open .plan-focus-stage{display:grid;min-height:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:20px 0}.app-shell.ai-drawer-open .plan-focus-heading,.app-shell.ai-drawer-open .focus-goal-chart,.app-shell.ai-drawer-open .plan-experiment-dock{grid-column:1 / -1}.app-shell.ai-drawer-open .plan-month-tracking,.app-shell.ai-drawer-open .plan-goal-switcher,.app-shell.ai-drawer-open .plan-experiment-dock{position:static;width:100%}.app-shell.ai-drawer-open .plan-experiment-dock{max-height:none}@keyframes focus-chart-line-enter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1240px){.plan-focus-stats{min-width:min(100%,470px);grid-template-columns:repeat(2,minmax(120px,1fr));gap:12px 24px}}@media(max-width:980px){.plan-focus-stage,.app-shell.ai-drawer-open .plan-focus-stage{display:grid;min-height:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:20px 0}.plan-focus-heading,.focus-goal-chart,.plan-experiment-dock{grid-column:1 / -1}.plan-month-tracking,.plan-goal-switcher,.plan-experiment-dock,.app-shell.ai-drawer-open .plan-month-tracking,.app-shell.ai-drawer-open .plan-goal-switcher,.app-shell.ai-drawer-open .plan-experiment-dock{position:static;width:100%}.plan-experiment-dock{max-height:none}.plan-goal-switcher .goal-choice-list{max-height:232px}}@media(max-width:720px){.plan-focus-stage,.app-shell.ai-drawer-open .plan-focus-stage{grid-template-columns:minmax(0,1fr)}.plan-focus-heading{flex-direction:column}.plan-focus-stats{width:100%;min-width:0}.focus-goal-chart-heading{align-items:flex-start;flex-direction:column}.focus-goal-chart-svg{min-height:320px}.plan-month-tracking,.plan-goal-switcher{grid-column:1 / -1}}@media(max-width:460px){.plan-focus-stats,.plan-month-tracking>footer{grid-template-columns:1fr}.plan-focus-title-row{align-items:flex-start;flex-direction:column}.plan-tracking-row>div{align-items:flex-start;flex-direction:column;gap:2px}}@media(prefers-reduced-motion:reduce){.focus-chart-area,.focus-chart-baseline,.focus-chart-preview{transition:none;animation:none}.plan-experiment-dock{animation:none}}.dream-dashboard{width:min(100%,1560px);height:100%;grid-template-rows:auto minmax(0,1fr);gap:12px;padding:0}.dream-dashboard-header{min-height:36px;margin:0;align-items:center}.dream-dashboard-header h1{margin:0}.plan-explorer-viewport{display:grid;min-width:0;min-height:0;height:100%;grid-template-rows:minmax(0,1fr) 250px;gap:12px}.plan-dashboard-top{display:grid;min-width:0;min-height:0;grid-template-columns:minmax(0,3fr) minmax(240px,1fr);gap:12px}.plan-chart-shell,.plan-explorer-viewport .plan-month-tracking,.plan-explorer-viewport .plan-goal-switcher,.plan-explorer-viewport .plan-net-worth{border:.5px solid var(--widget-shell-border);border-radius:20px;background:var(--widget-shell-fill);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.plan-chart-shell{min-width:0;min-height:0;overflow:hidden;padding:10px 0 0}.plan-chart-shell .focus-goal-chart{display:grid;min-width:0;min-height:0;height:100%;grid-template-rows:48px minmax(0,1fr);gap:0;margin:0}.focus-goal-context{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:20px;padding:0 20px 7px;border-bottom:.5px solid var(--widget-shell-border)}.focus-goal-identity{display:flex;min-width:0;align-items:center;gap:9px}.focus-goal-identity-icon{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;overflow:hidden;border-radius:10px;background:color-mix(in srgb,var(--focus-goal-series) 13%,transparent);color:var(--focus-goal-series)}.focus-goal-identity-icon img{width:24px;height:24px;object-fit:contain}.focus-goal-identity>div,.focus-goal-insights span{display:grid;min-width:0;gap:1px}.focus-goal-identity small,.focus-goal-insights small{overflow:hidden;color:var(--text-muted);font-size:9px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.focus-goal-identity strong{overflow:hidden;color:var(--text);font-family:var(--moolah-font-body);font-size:15px;font-weight:500;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.focus-goal-insights{display:grid;min-width:min(58%,510px);grid-template-columns:repeat(3,minmax(100px,1fr));gap:18px}.focus-goal-insights strong{overflow:hidden;color:var(--text);font-size:11px;font-variant-numeric:tabular-nums;font-weight:500;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.focus-goal-insights .timing-positive strong{color:var(--positive)}.focus-goal-insights .timing-warning strong{color:var(--warning)}.plan-chart-shell .focus-goal-chart-svg{width:100%;height:100%;min-height:0;max-height:none}.focus-chart-month-point{fill:var(--canvas);stroke:var(--focus-goal-series);stroke-width:2;vector-effect:non-scaling-stroke}.focus-chart-now-label{fill:var(--text);font-family:var(--moolah-font-body);font-size:11px;font-weight:500}.focus-chart-forecast-label{fill:var(--text-muted);font-family:var(--moolah-font-body);font-size:10px;font-weight:500}.focus-chart-hit{cursor:crosshair;outline:none}.focus-chart-hit:focus rect{stroke:var(--accent);stroke-width:2}.plan-dashboard-bottom{display:grid;min-width:0;min-height:0;grid-template-columns:repeat(2,minmax(0,1fr))}.plan-explorer-viewport .plan-month-tracking,.plan-explorer-viewport .plan-goal-switcher,.plan-explorer-viewport .plan-net-worth{position:static;width:100%;height:100%;min-height:0;overflow:hidden}.plan-explorer-viewport .plan-month-tracking{padding:12px}.plan-savings-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.plan-savings-toggle{display:inline-grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:2px;border:1px solid var(--line);border-radius:9px;background:var(--surface-translucent)}.plan-savings-toggle button{min-height:26px;padding:0 7px;border:0;border-radius:7px;background:transparent;color:var(--text-muted);font-size:9px;font-weight:500}.plan-savings-toggle button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:0 1px 4px #14181b1a}.plan-savings-chart{display:block;width:100%;height:92px;margin:5px 0 2px;overflow:visible}.plan-savings-zero{stroke:var(--line-strong);stroke-width:1}.plan-savings-chart rect{transition:opacity .18s ease}.plan-savings-chart rect.saved{fill:var(--chart-saved)}.plan-savings-chart rect.overspent{fill:var(--chart-deficit)}.plan-savings-chart rect.forecast{fill-opacity:.22;stroke-width:1}.plan-savings-chart rect.saved.forecast{stroke:var(--chart-saved)}.plan-savings-chart rect.overspent.forecast{stroke:var(--chart-deficit)}.plan-savings-chart text{fill:var(--text-muted);font-family:var(--moolah-font-body);font-size:9px;text-anchor:middle}.plan-savings-headline{margin:0;color:var(--text-muted);font-size:11px}.plan-savings-headline .animated-money{color:var(--text);font-size:15px;font-weight:500}.plan-explorer-viewport .plan-net-worth{display:grid;grid-template-columns:minmax(0,1fr) auto;align-content:center;gap:8px 22px;padding:14px 16px}.plan-net-worth header{display:grid;gap:1px}.plan-net-worth h3{margin:0;color:var(--text-muted);font-size:11px;font-weight:500}.plan-net-worth .plan-section-label{margin-bottom:2px}.plan-net-worth header strong{font-size:30px;letter-spacing:0}.plan-net-worth dl{display:grid;gap:6px;margin:0;font-size:11px;text-align:right}.plan-net-worth dl>div{display:flex;justify-content:space-between;gap:16px}.plan-net-worth dt{color:var(--text-muted)}.plan-net-worth dd{margin:0;color:var(--text);font-variant-numeric:tabular-nums;font-weight:500}.plan-net-worth-composition{display:flex;grid-column:1 / -1;height:7px;overflow:hidden;border-radius:999px;background:var(--line)}.plan-net-worth-composition span{min-width:0}.plan-net-worth-composition .assets{background:var(--positive)}.plan-net-worth-composition .liabilities{background:var(--warning)}.plan-net-worth-trend{display:grid;grid-column:1 / -1;gap:3px}.plan-net-worth-trend svg{display:block;width:100%;height:82px;overflow:visible}.plan-net-worth-area{fill:url(#net-worth-area)}.plan-net-worth-line{fill:none;stroke:var(--positive);stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.plan-net-worth-trend circle{fill:var(--positive);stroke:var(--surface);stroke-width:3}.plan-net-worth-trend>span{color:var(--text-muted);font-size:10px;font-variant-numeric:tabular-nums}.plan-net-worth-trend>span.positive{color:var(--positive)}.plan-net-worth-trend>span.negative{color:var(--negative)}.plan-explorer-viewport .plan-month-tracking h3,.plan-explorer-viewport .plan-goal-switcher h3{font-size:14px}.plan-explorer-viewport .plan-tracking-list{gap:7px;margin-top:9px}.plan-explorer-viewport .plan-tracking-row{gap:4px}.plan-explorer-viewport .plan-month-tracking>footer{gap:8px;margin-top:9px;padding-top:8px}.plan-explorer-viewport .plan-goal-switcher{padding:10px 12px}.plan-explorer-viewport .plan-goal-switcher>header{padding:0 0 7px}.plan-explorer-viewport .plan-goal-switcher .goal-choice-list,.app-shell.ai-drawer-open .plan-explorer-viewport .plan-goal-switcher .goal-choice-list{display:grid;max-height:none;grid-template-columns:1fr;gap:5px;padding-right:2px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.plan-explorer-viewport .plan-goal-switcher .goal-choice{min-height:54px;grid-template-columns:32px minmax(0,1fr) auto;gap:7px;padding:5px 7px;border-radius:13px}.plan-explorer-viewport .plan-goal-switcher .goal-choice-icon{width:32px;height:32px;border-radius:10px}.plan-explorer-viewport .plan-goal-switcher .goal-choice strong{font-size:12px}.plan-explorer-viewport .plan-goal-switcher .goal-choice small,.plan-explorer-viewport .plan-goal-switcher .goal-choice-percent{font-size:9px}@media(min-width:781px){.app-content:has(>.dream-dashboard){overflow:hidden;padding:20px 32px 16px}}@media(max-width:900px){.plan-explorer-viewport{grid-template-rows:minmax(0,1fr) 250px}.plan-explorer-viewport .plan-goal-switcher .goal-choice-list,.app-shell.ai-drawer-open .plan-explorer-viewport .plan-goal-switcher .goal-choice-list{grid-template-columns:1fr;max-height:136px;overflow-y:auto}}@media(max-width:1040px){.focus-goal-insights{min-width:min(62%,440px);gap:10px}}@media(max-width:780px){.dream-dashboard{height:auto}.plan-explorer-viewport{height:auto;grid-template-rows:auto auto}.plan-dashboard-top{grid-template-columns:1fr}.plan-chart-shell .focus-goal-chart{grid-template-rows:88px minmax(0,1fr)}.focus-goal-context{align-items:flex-start;flex-direction:column;gap:7px}.focus-goal-insights{width:100%;min-width:0}.plan-explorer-viewport .plan-month-tracking,.plan-explorer-viewport .plan-goal-switcher,.plan-explorer-viewport .plan-net-worth{height:auto}.plan-explorer-viewport .plan-goal-switcher .goal-choice-list,.app-shell.ai-drawer-open .plan-explorer-viewport .plan-goal-switcher .goal-choice-list{grid-template-columns:1fr;max-height:none;overflow:hidden}}@media(max-width:520px){.plan-dashboard-bottom{grid-template-columns:1fr}.plan-explorer-viewport .plan-net-worth{grid-template-columns:1fr;align-items:start}.plan-net-worth dl{text-align:left}.plan-explorer-viewport .plan-goal-switcher .goal-choice-list,.app-shell.ai-drawer-open .plan-explorer-viewport .plan-goal-switcher .goal-choice-list{grid-template-columns:1fr}}.goals-page,.goal-detail-page{min-width:0}.goals-page-header,.goal-detail-header{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.goals-page-header h1,.goal-detail-header h1{margin:0;font-size:28px;font-weight:500;letter-spacing:0;line-height:1.08}.goal-detail-header{justify-content:flex-start;gap:14px}.goals-title-cluster{display:flex;min-width:0;align-items:center;gap:22px}.goals-header-actions{display:flex;align-items:center;gap:10px}.goals-list-toggle{position:relative;display:grid;width:max-content;height:34px;grid-template-columns:repeat(2,minmax(78px,1fr));padding:3px;border:1px solid var(--line);border-radius:15px;background:var(--surface-translucent)}.goals-list-toggle:before{position:absolute;z-index:0;top:3px;bottom:3px;left:3px;width:calc(50% - 3px);border-radius:12px;background:var(--accent);content:"";transform:translate(0);transition:transform .18s ease-out}.goals-list-toggle[data-mode=completed]:before{transform:translate(100%)}.goals-list-toggle button{position:relative;z-index:1;min-height:26px;padding:0 8px;border:0;background:transparent;color:var(--text-muted);font-size:11px;font-weight:500;white-space:nowrap}.goals-list-toggle button[aria-pressed=true]{color:var(--selected-text)}.goals-round-button{display:inline-grid;width:36px;height:36px;min-height:36px;grid-auto-flow:column;place-content:center;gap:0;padding:0;border:1px solid var(--line);border-radius:14px;background:var(--surface-translucent);color:var(--text-muted);transition:border-color .16s ease,background .16s ease,color .16s ease}.goals-round-button:hover:not(:disabled),.goals-round-button.active,.goals-round-button[aria-pressed=true]{border-color:var(--sidebar-active-border);background:var(--sidebar-active);color:var(--accent)}.goals-round-button svg+svg{margin-left:-8px;transform:translateY(3px)}.goals-ai-button{display:inline-flex;min-height:38px;align-items:center;gap:9px;margin-left:auto;padding:5px 12px 5px 7px;border:1px solid var(--line);border-radius:16px;background:var(--surface-translucent);box-shadow:0 8px 24px #14181b0d;color:var(--text);font-size:11.5px;font-weight:500}.goals-ai-button:hover{border-color:var(--line-strong);background:var(--surface-raised)}.goals-ai-button .brand-mark-compact{width:25px;height:25px;border-radius:8px}.goals-status-message{display:flex;min-height:42px;align-items:center;gap:9px;margin:-8px 0 18px;padding:10px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-muted);color:var(--text-muted);font-size:12px}.goals-status-message.success{border-color:color-mix(in srgb,var(--positive) 34%,var(--line));background:var(--positive-soft);color:var(--positive)}.goals-status-message.error{border-color:color-mix(in srgb,var(--negative) 34%,var(--line));background:var(--negative-soft);color:var(--negative)}.goals-overview-workspace{position:relative;display:grid;min-height:calc(100dvh - 104px);grid-template-columns:324px minmax(0,1fr);gap:28px}.goals-list-pane{display:grid;min-width:0;max-height:calc(100dvh - 104px);grid-auto-rows:max-content;align-content:start;gap:10px;overflow-y:auto;padding:1px 4px 38px 1px;scroll-padding-block:32px;scrollbar-width:thin}.goals-list-viewport{position:relative;min-width:0;min-height:0}.goals-list-viewport:before,.goals-list-viewport:after{position:absolute;z-index:3;right:9px;left:0;height:34px;opacity:0;pointer-events:none;content:"";transition:opacity .16s ease}.goals-list-viewport:before{top:0;background:linear-gradient(to bottom,var(--canvas) 8%,color-mix(in srgb,var(--canvas) 78%,transparent) 52%,transparent)}.goals-list-viewport:after{bottom:0;height:40px;background:linear-gradient(to top,var(--canvas) 8%,color-mix(in srgb,var(--canvas) 78%,transparent) 52%,transparent)}.goals-list-viewport[data-fade-top=true]:before,.goals-list-viewport[data-fade-bottom=true]:after{opacity:1}@media(prefers-reduced-motion:reduce){.goals-list-viewport:before,.goals-list-viewport:after{transition:none}}.goals-list-card{position:relative;display:grid;min-width:0;height:max-content;align-self:start;grid-template-columns:minmax(0,1fr) auto;gap:0;padding:0;border:1px solid var(--line);border-radius:21px;background:var(--surface-translucent);overflow:hidden;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}.goals-list-card:hover{transform:translateY(-1px);border-color:var(--line-strong);background:var(--surface-raised);box-shadow:0 12px 28px #14181b0d}.goals-list-card:focus-within{border-color:var(--focus-ring);box-shadow:0 0 0 2px color-mix(in srgb,var(--focus-ring) 28%,transparent)}.goals-list-card[data-inspected=true]{border-color:color-mix(in srgb,var(--goal-color) 38%,var(--line));background:color-mix(in srgb,var(--goal-color) 6%,var(--surface-translucent));box-shadow:inset 3px 0 var(--goal-color)}.goal-card-main{display:grid;width:100%;min-width:0;gap:12px;padding:16px 16px 15px;border:0;background:transparent;color:var(--text);cursor:pointer;text-align:left}.goal-card-main:disabled{cursor:default;opacity:1}.goals-list-card-heading{display:grid;min-width:0;grid-template-columns:44px minmax(0,1fr) auto;align-items:start;gap:12px}.goal-card-icon{display:grid;overflow:hidden;place-items:center;border:1px solid var(--line);background:var(--surface-muted)}.goal-card-icon{width:44px;height:44px;border-radius:13px}.goal-card-icon img{display:block;width:100%;height:100%;padding:4px;object-fit:contain}.goal-card-title{display:grid;min-width:0;gap:5px;padding-top:1px}.goal-card-title strong{overflow:hidden;font-size:14.5px;font-weight:500;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.goal-card-date{display:flex;min-width:0;align-items:center;gap:5px;color:var(--text-muted)}.goal-card-date svg{flex:0 0 auto}.goal-card-date small{overflow:hidden;font-size:11px;font-weight:500;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.goal-card-percent{padding:5px 8px;border:1px solid color-mix(in srgb,var(--goal-color) 28%,transparent);border-radius:999px;background:color-mix(in srgb,var(--goal-color) 14%,transparent);color:var(--goal-color);font-size:10.5px;font-weight:500;font-variant-numeric:tabular-nums;line-height:1.1}.goal-card-metrics{display:grid;min-width:0;grid-template-columns:repeat(3,minmax(0,1fr));padding:10px 2px;border-radius:13px;background:color-mix(in srgb,var(--surface-muted) 76%,transparent)}.goal-card-metric{display:grid;min-width:0;gap:4px;padding:0 9px}.goal-card-metric+.goal-card-metric{border-left:1px solid var(--line)}.goal-card-metric small,.goal-card-monthly small{color:var(--text-muted);font-size:10px;font-weight:500;line-height:1.2}.goal-card-metric-value{display:block;overflow:hidden;color:var(--text);font-size:12px;font-weight:500;font-variant-numeric:tabular-nums;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.goal-card-monthly{display:flex;min-width:0;min-height:38px;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-radius:13px;background:color-mix(in srgb,var(--surface-muted) 62%,transparent)}.goal-card-monthly-value{overflow:hidden;color:var(--goal-color);font-size:11.5px;font-weight:500;font-variant-numeric:tabular-nums;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.goal-card-progress{position:relative;display:block;overflow:hidden;height:6px;grid-column:1 / -1;background:var(--surface-muted)}.goal-card-progress i{position:absolute;inset:0 auto 0 0;background:var(--goal-color);transition:width .38s ease-in-out}.goal-progress-track{position:relative;display:block;overflow:hidden;border-radius:999px;background:var(--surface-muted)}.goal-progress-track i{position:absolute;top:0;bottom:0;left:0;border-radius:inherit;transition:width .38s ease-in-out}.goal-progress-track i.projected{background:color-mix(in srgb,var(--goal-color) 25%,transparent)}.goal-progress-track i.actual{background:var(--goal-color)}.goal-card-reorder{display:grid;width:50px;align-content:center;gap:8px;padding:12px 8px;border-left:1px solid var(--line);background:var(--surface-muted)}.goal-card-reorder button{display:grid;width:34px;height:34px;min-height:34px;place-items:center;padding:0;border:1px solid var(--line);border-radius:11px;background:var(--surface-raised);color:var(--text-muted)}.goal-card-reorder button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.goals-list-empty,.goals-chart-empty{display:grid;place-items:center;align-content:center;gap:8px;color:var(--text-muted);text-align:center}.goals-list-empty{min-height:280px;padding:30px;border:1px dashed var(--line-strong);border-radius:22px}.goals-chart-empty{min-height:420px}.goals-list-empty strong,.goals-chart-empty strong{color:var(--text);font-size:13px}.goals-list-empty p,.goals-chart-empty p{max-width:260px;margin:0 0 6px;font-size:12px;line-height:1.5}.goals-chart-shell,.goal-detail-chart-shell{min-width:0;border:1px solid var(--line);background:var(--surface-translucent)}.goals-chart-shell{position:relative;min-height:0;align-self:start;padding:16px 18px 8px;border-radius:25px}.goal-summary-button{position:absolute;z-index:3;top:20px;right:20px;display:inline-flex;min-height:32px;align-items:center;justify-content:center;gap:7px;padding:0 4px;border:0;border-radius:10px;background:transparent;color:var(--accent);box-shadow:none;font-size:11px;font-weight:500;transition:border-color .16s ease,background .16s ease,color .16s ease}.goal-summary-button:hover:not(:disabled){background:var(--accent-soft)}.goal-summary-button:disabled{opacity:.52}.goal-summary-panel{position:relative;display:grid;gap:8px;margin-top:14px;padding:14px 46px 14px 15px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));border-radius:17px;background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.goal-summary-panel.error{border-color:color-mix(in srgb,var(--negative) 30%,var(--line));background:var(--negative-soft)}.goal-summary-panel>div{display:flex;align-items:center;gap:8px;color:var(--accent);font-size:12px}.goal-summary-panel.error>div{color:var(--negative)}.goal-summary-panel p{margin:0;color:var(--text-muted);font-size:12px;line-height:1.55}.goal-summary-panel>button{position:absolute;top:9px;right:9px;display:grid;width:34px;height:34px;min-height:34px;place-items:center;padding:0;border:0;border-radius:11px;background:transparent;color:var(--text-muted)}.goal-summary-panel>button:hover{background:var(--surface-muted);color:var(--text)}.goals-projection-chart{display:grid;width:100%;min-width:0;gap:0;margin:0}.goals-chart-plot{min-width:0;border-radius:18px;cursor:crosshair;outline:0;touch-action:none}.goals-chart-plot:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,var(--focus-ring) 34%,transparent)}.goals-projection-svg{display:block;width:100%;height:clamp(500px,calc(100dvh - 160px),660px);min-height:0;overflow:visible;-webkit-user-select:none;user-select:none}.goals-projection-chart.compact .goals-projection-svg{height:225px;min-height:225px}@media(min-width:981px){.goals-overview-workspace{height:calc(100dvh - 104px);min-height:0}.goals-list-viewport,.goals-chart-shell,.goals-list-pane{height:100%;max-height:none}.goals-chart-shell{display:grid;grid-template-rows:minmax(0,1fr) auto;align-self:stretch}.goals-projection-chart,.goals-chart-plot,.goals-projection-svg{height:100%;min-height:0}}.goals-chart-grid{stroke:var(--line);stroke-width:1;stroke-dasharray:2 4;opacity:.55;vector-effect:non-scaling-stroke}.goals-chart-axis{fill:var(--text-muted);font-family:inherit;font-size:11px;font-variant-numeric:tabular-nums}.goals-chart-year line{stroke:var(--line-strong);stroke-width:1;vector-effect:non-scaling-stroke}.goals-chart-year text{fill:var(--text-muted);font-family:inherit;font-size:11px;font-variant-numeric:tabular-nums}.goals-chart-today{stroke:var(--accent);stroke-dasharray:2 3;stroke-width:1;opacity:.28;vector-effect:non-scaling-stroke}.goals-chart-actual,.goals-chart-forecast{fill:none;stroke:var(--goal-series);stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.goals-chart-actual{stroke-width:4}.goals-chart-forecast{animation:goals-forecast-enter .5s ease-in-out both;stroke-dasharray:7 7;stroke-width:4;opacity:.3}.goals-chart-endpoint{animation:goals-endpoint-enter .18s .4s ease-out both;color:var(--goal-series)}.goals-chart-endpoint[data-target-met=false]{--goals-endpoint-opacity: .1}.goals-chart-point-icon{overflow:hidden;border-radius:7px}.goals-chart-point-fallback rect{fill:var(--goal-series)}.goals-chart-point-fallback text{fill:#fff;font-family:inherit;font-size:12px;font-weight:500}.goals-chart-crosshair{stroke:var(--chart-guide-color, var(--text-muted));stroke-dasharray:2 2;stroke-width:1;opacity:.7;pointer-events:none;vector-effect:non-scaling-stroke}.goals-chart-selected-point{fill:var(--goal-series);stroke:var(--surface);stroke-width:2;pointer-events:none;vector-effect:non-scaling-stroke}.goals-chart-inspection{pointer-events:none}.goals-chart-inspection rect{fill:color-mix(in srgb,var(--surface-raised) 90%,transparent);stroke:var(--line-strong);stroke-width:1;vector-effect:non-scaling-stroke}.goals-chart-inspection text{fill:var(--text);font-family:inherit;font-size:12px;font-variant-numeric:tabular-nums;font-weight:500}.goals-chart-series{transition:opacity .16s ease}.goals-chart-series[data-muted=true]{opacity:.16}@keyframes goals-forecast-enter{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}@keyframes goals-endpoint-enter{0%{transform:translateY(4px);opacity:0}to{transform:translateY(0);opacity:var(--goals-endpoint-opacity, 1)}}@media(prefers-reduced-motion:reduce){.goals-chart-forecast,.goals-chart-endpoint{animation:none}.goals-chart-series{transition:none}}.goal-create-panel{position:absolute;z-index:30;top:0;left:312px;display:grid;width:min(400px,calc(100% - 332px));height:min(680px,calc(100dvh - 124px));max-height:calc(100dvh - 124px);grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid var(--line-strong);border-radius:24px;background:var(--surface-glass);box-shadow:0 24px 64px #0c0e1238;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.goal-create-panel>header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 18px 14px;border-bottom:1px solid var(--line)}.goal-create-panel>header span{color:var(--text-muted);font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.goal-create-panel>header h2{margin:2px 0 0;font-size:18px}.goal-create-panel>form{display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:18px}.goal-create-panel>form>.goal-fields{min-height:0;overflow-y:auto;padding-right:4px}.goal-create-panel footer{display:grid;grid-template-columns:1fr 1.3fr;gap:10px;margin-top:16px}.goal-fields{display:grid;gap:12px}.goal-visual-picker{display:grid;grid-template-columns:82px minmax(0,1fr);align-items:center;gap:18px;padding:6px 4px 12px}.goal-visual-preview{display:grid;width:82px;height:82px;overflow:hidden;place-items:center;padding:14px;border:1px solid color-mix(in srgb,var(--goal-color) 28%,var(--line));border-radius:25px;background:color-mix(in srgb,var(--goal-color) 12%,var(--surface));color:var(--goal-color)}.goal-visual-preview img{display:block;width:100%;height:100%;object-fit:contain}.goal-visual-picker>div>span{display:block;margin-bottom:9px;color:var(--text-muted);font-size:11px;font-weight:500}.goal-color-options{display:flex;flex-wrap:wrap;gap:8px}.goal-color-options button{width:30px;height:30px;min-height:30px;padding:0;border:3px solid var(--surface);border-radius:11px;background:var(--swatch);box-shadow:0 0 0 1px var(--line)}.goal-color-options button[aria-pressed=true]{box-shadow:0 0 0 2px var(--text)}.goal-icon-picker{border:1px solid var(--line);border-radius:16px;background:var(--surface-muted)}.goal-icon-picker summary{min-height:44px;padding:13px 14px;color:var(--text-muted);cursor:pointer;font-size:12px;font-weight:500}.goal-icon-picker>.goal-icon-options,.goal-appearance-panel .goal-icon-options{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;padding:0 12px 12px}.goal-icon-options button{display:grid;min-width:0;height:42px;min-height:42px;place-items:center;padding:6px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.goal-icon-options button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.goal-icon-options img{display:block;width:100%;height:100%;object-fit:contain}.goal-field-group,.goal-notes-field,.goal-funding-plan,.goal-metric,.goal-progress-card,.goal-contribution-card,.goal-transactions-panel,.goal-detail-editor{border:1px solid var(--line);background:var(--surface-translucent)}.goal-field-group,.goal-notes-field{border-radius:var(--moolah-radius-control, 12px)}.goal-field-group.moolah-compact-form-group{border-width:.5px;border-color:var(--display-shell-border);background:color-mix(in srgb,var(--surface-muted) 32%,transparent)}.goal-field-group label{position:relative;display:grid;min-height:48px;grid-template-columns:86px auto minmax(0,1fr) 20px;align-items:center;gap:4px;padding:0 13px 0 15px}.goal-field-group label.goal-month-field{grid-template-columns:86px minmax(0,1fr)}.goal-field-group label+label{border-top:1px solid var(--line)}.goal-field-group label>span,.goal-notes-field>span{color:var(--text-muted);font-size:11px;font-weight:500}.goal-field-group label>i{color:var(--text);font-size:13px;font-style:normal}.goal-field-group input,.goal-field-group select,.goal-notes-field textarea{min-width:0;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:13px}.goal-field-group input,.goal-field-group select{width:100%;height:46px}.goal-field-group input[type=month],.goal-field-group select{cursor:pointer}.goal-field-group input:disabled{color:var(--text-muted);cursor:not-allowed}.goal-field-group label>svg{color:var(--text-muted)}.goal-field-group label:focus-within{box-shadow:inset var(--moolah-input-focus-width) 0 0 var(--accent)}.goal-notes-field{display:grid;grid-template-columns:86px minmax(0,1fr);min-height:108px;gap:4px;padding:15px}.goal-field-group>.goal-notes-field{border:0;border-radius:0;background:transparent}.goal-notes-field textarea{min-height:78px;resize:vertical;line-height:1.45}.goal-field-group select:focus-visible,.goal-notes-field textarea:focus-visible{outline:var(--moolah-input-focus-width) solid var(--focus-ring);outline-offset:0}.goal-icon-picker summary:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.goal-form-error{margin:12px 0 0;color:var(--negative);font-size:12px;line-height:1.45}.goals-load-error{display:grid;min-height:calc(100dvh - 64px);grid-template-columns:auto minmax(0,1fr) auto;place-content:center;align-items:center;gap:18px;color:var(--negative)}.goals-load-error h1{margin-bottom:4px;color:var(--text);font-size:22px}.goals-load-error p{margin:0;color:var(--text-muted);font-size:13px}.goals-skeleton{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--surface-muted)}.goals-skeleton:after{position:absolute;inset:0;background:linear-gradient(90deg,transparent,var(--skeleton-sheen),transparent);content:"";transform:translate(-100%);animation:shimmer 1.5s infinite}.goals-skeleton.title{width:120px;height:34px}.goals-skeleton.card{height:154px}.goals-skeleton.chart{min-height:580px}.goal-detail-grid{display:grid;min-width:0;grid-template-columns:286px minmax(0,1fr) 284px;align-items:start;gap:14px}.goal-detail-editor-column,.goal-detail-projection-column,.goal-detail-activity-column{display:grid;min-width:0;align-content:start;gap:10px}.goal-detail-editor{padding:0;border:0;border-radius:0;background:transparent}.goal-detail-editor .goal-fields{gap:10px}.goal-detail-editor .goal-field-group label{min-height:42px}.goal-detail-editor .goal-field-group input,.goal-detail-editor .goal-field-group select{height:40px}.goal-detail-editor .goal-notes-field{min-height:92px;padding:12px 15px}.goal-detail-editor .goal-notes-field textarea{min-height:64px}.goal-appearance-picker{position:relative;min-height:100px}.goal-appearance-picker>summary{position:relative;display:grid;width:82px;height:82px;margin:4px auto 14px;place-items:center;border-radius:25px;cursor:pointer;list-style:none}.goal-appearance-picker>summary::-webkit-details-marker{display:none}.goal-appearance-picker>summary .goal-visual-preview{width:82px;height:82px}.goal-appearance-picker>summary>i{position:absolute;right:-2px;bottom:-2px;width:21px;height:21px;border:4px solid var(--canvas);border-radius:999px;background:var(--swatch);box-shadow:0 0 0 1px var(--line)}.goal-appearance-panel{position:absolute;z-index:25;top:90px;left:0;display:grid;width:286px;max-height:360px;gap:10px;overflow-y:auto;padding:14px;border:1px solid var(--line-strong);border-radius:18px;background:var(--surface-glass);box-shadow:0 20px 48px #14181b29;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.goal-appearance-panel>span{color:var(--text-muted);font-size:10px;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.goal-appearance-panel .goal-icon-options{grid-template-columns:repeat(6,minmax(0,1fr));padding:0}.goal-save-button{width:100%;margin-top:14px}.goal-funding-plan,.goal-progress-card,.goal-contribution-card{padding:12px;border-radius:19px}.goal-funding-plan h2,.goal-contribution-card h2{margin:0 0 12px;color:var(--text-muted);font-size:11px;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.goal-funding-plan dl{display:grid;gap:9px;margin:0}.goal-funding-plan dl>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;font-size:11px}.goal-funding-plan dt{overflow:hidden;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap}.goal-funding-plan dd{margin:0;font-weight:500;text-align:right}.goal-funding-plan dd.positive{color:var(--positive)}.goal-funding-plan dd.negative{color:var(--negative)}.goal-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.goal-metric{display:grid;min-width:0;min-height:80px;align-content:space-between;gap:10px;padding:12px 13px;border-radius:17px}.goal-metric>span{display:flex;min-width:0;align-items:center;gap:8px;color:var(--text-muted);font-size:11px}.goal-metric>strong{overflow:hidden;font-size:20px;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.goal-progress-card{--goal-color: var(--accent);display:grid;gap:9px;min-height:86px}.goal-progress-card>header{display:flex;justify-content:space-between;color:var(--text-muted);font-size:12px}.goal-progress-card>header strong{color:var(--goal-color);font-size:10px;font-weight:500}.goal-progress-card .goal-progress-track{display:grid;height:9px;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;overflow:visible;border-radius:0;background:transparent}.goal-progress-card .goal-progress-segment{position:relative;display:block;height:9px;overflow:hidden;border-radius:999px;background:var(--surface-muted)}.goal-progress-card .goal-progress-segment i{position:absolute;inset:0 auto 0 0;border-radius:inherit}.goal-progress-milestones{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:8px;color:var(--text-muted);font-size:9px;text-align:center}.goal-progress-milestones span:first-child{text-align:center}.goal-detail-chart-shell{min-height:260px;padding:10px;border-radius:20px}.goal-contribution-card>p{margin:0;color:var(--text-muted);font-size:12px}.goal-contribution-card{min-height:174px}.goal-contribution-bars{display:flex;height:130px;align-items:stretch;gap:8px}.goal-contribution-bars>div{display:grid;min-width:0;flex:1;grid-template-rows:minmax(0,1fr) auto;gap:7px;text-align:center}.goal-contribution-bars>div>span{display:flex;min-height:0;align-items:flex-end;justify-content:center;border-bottom:1px solid var(--line)}.goal-contribution-bars i{display:block;width:min(18px,72%);min-height:6px;border-radius:5px 5px 1px 1px;background:var(--positive)}.goal-contribution-bars i.negative{background:var(--negative)}.goal-contribution-bars small{overflow:hidden;color:var(--text-muted);font-size:9px;text-overflow:ellipsis}.goal-transactions-panel{display:grid;min-height:584px;padding:14px;border-radius:24px}.goal-transactions-panel>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.goal-transactions-panel h2{margin:0;font-size:16px}.goal-transactions-panel>header span{color:var(--text-muted);font-size:12px}.goal-transactions-panel>header>div{display:flex;align-items:center;gap:9px}.goal-transactions-panel>header a{display:inline-flex;min-height:30px;align-items:center;gap:5px;padding:0 9px;border:1px solid var(--line);border-radius:10px;background:var(--surface-muted);color:var(--accent);font-size:10px;font-weight:500;text-decoration:none}.goal-transaction-list{display:grid;max-height:calc(100dvh - 230px);align-content:start;gap:9px;overflow-y:auto}.goal-transaction-row{display:grid;min-width:0;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px;border:1px solid var(--line);border-radius:15px;background:var(--surface-muted)}.goal-transaction-row>span{display:grid;width:34px;height:34px;place-items:center;border-radius:11px;background:var(--surface-raised);color:var(--text-muted)}.goal-transaction-row>div{display:grid;min-width:0;gap:3px}.goal-transaction-row>div strong,.goal-transaction-row>div small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.goal-transaction-row>div strong,.goal-transaction-row>strong{font-size:11px}.goal-transaction-row>div small{color:var(--text-muted);font-size:9px}.goal-transactions-empty{display:grid;place-items:center;align-content:center;gap:8px;color:var(--text-muted);text-align:center}.goal-transactions-empty strong{color:var(--text);font-size:13px}.goal-transactions-empty p{max-width:250px;margin:0;font-size:11px;line-height:1.45}.goal-transactions-empty a{display:inline-flex;min-height:40px;align-items:center;gap:7px;margin-top:5px;padding:0 13px;border:1px solid var(--line);border-radius:14px;background:var(--surface-muted);color:var(--accent);font-size:11px;font-weight:500;text-decoration:none}.goal-detail-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.goal-detail-actions button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:8px;padding:0 10px;border-radius:16px;font-size:11.5px;font-weight:500}.goal-delete-button{border:1px solid color-mix(in srgb,var(--negative) 24%,var(--line));background:color-mix(in srgb,var(--negative) 6%,var(--surface));color:var(--negative)}.goal-complete-button{border:1px solid var(--positive);background:var(--positive);color:#fff}@media(max-width:1100px){.goal-detail-grid{grid-template-columns:minmax(310px,.8fr) minmax(460px,1.35fr)}.goal-detail-activity-column{grid-column:1 / -1;grid-template-columns:minmax(0,1fr) 330px}.goal-transactions-panel{min-height:330px}.goal-detail-actions{align-content:end}}@media(max-width:980px){.goals-overview-workspace{grid-template-columns:1fr;gap:18px}.goals-list-pane{max-height:none;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;padding-right:1px}.goals-list-viewport:before,.goals-list-viewport:after{display:none}.goals-list-empty{grid-column:1 / -1}.goals-chart-shell{min-height:0}.goal-summary-button{top:12px;right:12px}.goal-create-panel{position:fixed;z-index:80;inset:76px 20px 20px auto;width:min(430px,calc(100vw - 40px));max-height:calc(100dvh - 96px)}.goal-detail-grid{grid-template-columns:minmax(290px,.8fr) minmax(0,1.2fr)}}@media(max-width:780px){.goals-page-header{align-items:flex-start;flex-direction:column;gap:16px}.goals-header-actions{width:100%}.goals-list-toggle{flex:1}.goals-list-pane{grid-template-columns:1fr}.goals-chart-shell{min-height:0;padding:12px}.goals-projection-svg{height:320px;min-height:320px}.goal-detail-grid{grid-template-columns:1fr}.goal-detail-activity-column{grid-column:auto;grid-template-columns:1fr}.goal-detail-projection-column{grid-row:2}.goal-detail-activity-column{grid-row:3}.goal-create-panel{inset:70px 8px 8px;width:auto;max-height:calc(100dvh - 78px)}}@media(max-width:520px){.goals-header-actions{flex-wrap:wrap}.goals-list-toggle{width:100%;flex-basis:100%}.goal-kpi-grid,.goal-progress-legend,.goal-detail-actions{grid-template-columns:1fr}.goal-metric{min-height:92px}.goal-visual-picker{grid-template-columns:70px minmax(0,1fr)}.goal-visual-preview{width:70px;height:70px;border-radius:21px}.goal-icon-picker>div{grid-template-columns:repeat(5,minmax(0,1fr))}.goal-field-group label,.goal-notes-field{grid-template-columns:72px auto minmax(0,1fr) 18px}.goal-field-group label.goal-month-field,.goal-notes-field{grid-template-columns:72px minmax(0,1fr)}.goal-create-panel footer{grid-template-columns:1fr}.goals-load-error{grid-template-columns:auto minmax(0,1fr)}.goals-load-error .secondary-button{grid-column:1 / -1}}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.shell-mobile-actions{display:flex;align-items:center;gap:8px}.moolah-ai-drawer{--ai-callout-background: rgba(255, 255, 255, .18);--ai-callout-border: rgba(20, 24, 27, .3);--ai-code-background: rgba(17, 17, 17, .06);--ai-composer-disabled: #e4e5ea;--ai-grid-line: rgba(20, 24, 27, .132);--ai-markdown-divider: rgba(20, 24, 27, .24);--ai-response-secondary: var(--text-muted);--ai-response-text: var(--text);--ai-table-head: rgba(20, 24, 27, .08);--ai-table-row: rgba(20, 24, 27, .035);--ai-user-bubble: rgba(17, 17, 17, .06);position:relative;z-index:1;grid-column:2;grid-row:1;min-width:0;min-height:0;overflow:hidden;border:1px solid transparent;border-radius:var(--moolah-radius-floating);background:var(--surface);box-shadow:none;opacity:0;pointer-events:none;transform:translate3d(-54px,0,0) scale(.985);transform-origin:left center;visibility:hidden;will-change:transform,opacity;font-family:var(--moolah-font-body);transition:opacity .18s ease-out,transform .22s ease-out,visibility 0s linear .22s,border-color .18s ease-out}:root[data-theme=dark] .moolah-ai-drawer{--ai-callout-background: rgba(255, 255, 255, .07);--ai-callout-border: rgba(170, 168, 177, .12);--ai-code-background: rgba(255, 255, 255, .12);--ai-composer-disabled: #34343a;--ai-grid-line: rgba(170, 168, 177, .198);--ai-markdown-divider: rgba(170, 168, 177, .36);--ai-response-secondary: #f0f2f5;--ai-response-text: rgba(255, 255, 255, .91);--ai-table-head: rgba(255, 255, 255, .14);--ai-table-row: rgba(255, 255, 255, .045);--ai-user-bubble: rgba(255, 255, 255, .1)}.moolah-ai-drawer.open{border-color:var(--line);box-shadow:var(--shadow);opacity:1;pointer-events:auto;transform:translateZ(0);visibility:visible;animation:moolah-ai-detached-reveal .26s cubic-bezier(.22,1,.36,1) both;transition-delay:0s}@keyframes moolah-ai-detached-reveal{0%{opacity:0;transform:translate3d(-54px,0,0) scale(.985)}to{opacity:1;transform:translateZ(0) scale(1)}}.moolah-ai-drawer-inner{position:relative;display:flex;width:var(--ai-drawer-width);height:100%;min-height:0;flex-direction:column;overflow:hidden;border-radius:inherit;background:var(--surface)}@media(min-width:781px){.moolah-rail.ai-open .moolah-ai-drawer-inner{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-raised) 18%,transparent),transparent 108px),var(--surface)}}.moolah-ai-header{position:absolute;z-index:7;top:7px;right:7px;display:flex;min-height:30px;flex:0 0 auto;align-items:center;justify-content:flex-end;padding:0;background:transparent;pointer-events:none}.moolah-ai-close{width:30px;height:30px;min-height:30px;border-color:color-mix(in srgb,var(--line) 74%,transparent);background:color-mix(in srgb,var(--surface-glass) 92%,transparent);box-shadow:0 4px 14px color-mix(in srgb,black 14%,transparent);pointer-events:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.moolah-ai-messages{min-height:0;flex:1;padding:42px 0 14px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:auto;scrollbar-width:none}.moolah-ai-messages::-webkit-scrollbar{display:none;width:0;height:0}.moolah-ai-thread{display:grid;align-items:start;gap:9px}.moolah-ai-load-older{display:flex;min-height:44px;align-items:center;justify-content:center;gap:8px;margin:0 auto 18px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:var(--text-muted);font-size:12px;font-weight:500}.moolah-ai-load-older:hover:not(:disabled){background:var(--surface-muted);color:var(--text)}.moolah-ai-history-loading{display:grid;gap:12px;padding:10px 20px 20px}.moolah-ai-message-skeleton{position:relative;display:block;width:88%;height:70px;overflow:hidden;border-radius:14px;background:var(--surface-muted)}.moolah-ai-message-skeleton:after{position:absolute;inset:0;background:linear-gradient(90deg,transparent,var(--skeleton-sheen),transparent);content:"";transform:translate(-100%);animation:shimmer 1.5s infinite}.moolah-ai-message-skeleton.short{width:58%;height:52px;margin-left:auto}.moolah-ai-message-skeleton.medium{width:72%}.moolah-ai-inline-error,.moolah-ai-send-error{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid var(--negative);border-radius:12px;background:var(--negative-soft);color:var(--negative);font-size:12px;line-height:1.45}.moolah-ai-inline-error{margin:0 20px 18px;padding:11px 12px}.moolah-ai-inline-error button,.moolah-ai-send-error button{min-height:44px;padding:0 9px;border:0;border-radius:9px;background:transparent;color:inherit;font-weight:500}.moolah-ai-inline-error button:hover,.moolah-ai-send-error button:hover:not(:disabled){background:var(--surface-translucent)}.moolah-ai-session-state{display:grid;width:min(100%,360px);min-height:100%;align-content:center;justify-items:center;gap:12px;margin:0 auto;padding:32px 22px 48px;color:var(--text);text-align:center}.moolah-ai-session-state h2,.moolah-ai-session-state p{margin:0}.moolah-ai-session-state h2{font-size:18px;letter-spacing:0}.moolah-ai-session-state p{color:var(--text-muted);font-size:13px;line-height:1.55}.moolah-ai-session-state>button,.moolah-ai-verification-form button{min-height:42px}.moolah-ai-verification-form{display:grid;width:100%;gap:9px}.moolah-ai-verification-form label{color:var(--text-muted);font-size:12px;font-weight:500;text-align:left}.moolah-ai-verification-form input{width:100%;min-height:46px;padding:0 14px;border:1px solid var(--line);border-radius:12px;outline:0;background:var(--surface-muted);color:var(--text);font:inherit;font-size:18px;letter-spacing:.28em;text-align:center}.moolah-ai-verification-form input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.moolah-ai-session-error{color:var(--negative)!important}.moolah-ai-empty{display:grid;min-height:100%;align-content:center;justify-items:center;padding:28px 20px 40px;text-align:center}.moolah-ai-empty-icon{display:grid;width:48px;height:48px;margin-bottom:15px;place-items:center;border:1px solid var(--sidebar-active-border);border-radius:16px;background:var(--accent-soft);color:var(--accent)}.moolah-ai-empty h2{margin:0 0 7px;color:var(--text);font-size:18px;letter-spacing:0}.moolah-ai-empty>p{max-width:300px;margin:0 0 22px;color:var(--text-muted);font-size:13px;line-height:1.55}.moolah-ai-starters{display:grid;width:100%;gap:9px}.moolah-ai-starters button{min-height:46px;padding:10px 13px;border:1px solid var(--line);border-radius:12px;background:var(--surface-muted);color:var(--text);font-size:12.5px;font-weight:500;line-height:1.35;text-align:left;transition:border-color .16s ease,background .16s ease,color .16s ease}.moolah-ai-starters button:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.moolah-ai-message{display:grid;width:100%;gap:0}.moolah-ai-message.user{padding:0 14px 2px}.moolah-ai-message-actions{display:flex;min-height:28px;align-items:center;gap:1px;padding:0 14px 0 11px;color:var(--text-muted)}.moolah-ai-message-actions button{display:grid;width:28px;height:28px;place-items:center;border:0;border-radius:17px;background:transparent;color:var(--text-muted)}.moolah-ai-message-actions button:hover:not(:disabled),.moolah-ai-message-actions button.selected{background:var(--surface-muted);color:var(--accent)}.moolah-ai-message-actions button:disabled{cursor:wait;opacity:.58}.moolah-ai-message-body{min-width:0;padding:0 14px;border:0;background:transparent;color:var(--ai-response-text);font-size:13px;font-weight:300;line-height:1.46;overflow-wrap:anywhere}.moolah-ai-message.user .moolah-ai-message-body{width:min(90%,300px);justify-self:end;padding:8px 12px;border-radius:16px;background:var(--ai-user-bubble);color:var(--text);font-size:13px;font-weight:300;line-height:1.35}.moolah-ai-message.user .moolah-ai-message-body p{margin:0;white-space:pre-wrap}.moolah-ai-message.assistant .moolah-ai-message-body{font-weight:200}.moolah-ai-message.assistant .moolah-ai-message-body>:first-child{margin-top:0}.moolah-ai-message.assistant .moolah-ai-message-body>:last-child{margin-bottom:0}.moolah-ai-message.assistant .moolah-ai-message-body p,.moolah-ai-message.assistant .moolah-ai-message-body ul,.moolah-ai-message.assistant .moolah-ai-message-body ol,.moolah-ai-message.assistant .moolah-ai-message-body pre,.moolah-ai-message.assistant .moolah-ai-message-body .moolah-ai-markdown-table,.moolah-ai-message.assistant .moolah-ai-message-body hr{margin:0 0 12px}.moolah-ai-message.assistant .moolah-ai-message-body h1,.moolah-ai-message.assistant .moolah-ai-message-body h2,.moolah-ai-message.assistant .moolah-ai-message-body h3,.moolah-ai-message.assistant .moolah-ai-message-body h4,.moolah-ai-message.assistant .moolah-ai-message-body h5,.moolah-ai-message.assistant .moolah-ai-message-body h6{margin:12px 0;font-family:inherit;color:var(--text);letter-spacing:0}.moolah-ai-message.assistant .moolah-ai-message-body h1{font-size:18px;font-weight:500;line-height:1.25}.moolah-ai-message.assistant .moolah-ai-message-body h2{font-size:15px;font-weight:500;line-height:1.3}.moolah-ai-message.assistant .moolah-ai-message-body h3,.moolah-ai-message.assistant .moolah-ai-message-body h4,.moolah-ai-message.assistant .moolah-ai-message-body h5,.moolah-ai-message.assistant .moolah-ai-message-body h6{color:var(--ai-response-secondary);font-size:13px;font-weight:500;line-height:1.35}.moolah-ai-message.assistant .moolah-ai-message-body strong{color:var(--text);font-weight:500}.moolah-ai-message.assistant .moolah-ai-message-body em{font-style:normal;font-weight:500}.moolah-ai-message.assistant .moolah-ai-message-body ul,.moolah-ai-message.assistant .moolah-ai-message-body ol{padding-left:18px}.moolah-ai-message.assistant .moolah-ai-message-body li{line-height:1.45}.moolah-ai-message.assistant .moolah-ai-message-body li::marker{color:var(--ai-response-text);font-size:1.2em}.moolah-ai-message.assistant .moolah-ai-message-body li+li{margin-top:4px}.moolah-ai-message.assistant .moolah-ai-message-body li>p{margin:0}.moolah-ai-message.assistant .moolah-ai-message-body a{color:var(--accent);text-decoration-thickness:1.5px;text-underline-offset:2px}.moolah-ai-message.assistant .moolah-ai-message-body pre,.moolah-ai-message.assistant .moolah-ai-message-body code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11.5px}.moolah-ai-message.assistant .moolah-ai-message-body code{padding:2px 4px;border-radius:5px;background:var(--ai-code-background)}.moolah-ai-message.assistant .moolah-ai-message-body pre{padding:10px;overflow-x:auto;border:1px solid var(--ai-markdown-divider);border-radius:10px;background:var(--ai-code-background)}.moolah-ai-message.assistant .moolah-ai-message-body pre code{padding:0;background:transparent}.moolah-ai-markdown-table{width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}.moolah-ai-message.assistant .moolah-ai-message-body table{width:max-content;min-width:100%;border-collapse:collapse;font-size:12px;line-height:1.28}.moolah-ai-message.assistant .moolah-ai-message-body th,.moolah-ai-message.assistant .moolah-ai-message-body td{min-width:92px;max-width:220px;padding:8px;border:.5px solid var(--ai-grid-line);overflow-wrap:normal;text-align:left;word-break:normal}.moolah-ai-message.assistant .moolah-ai-message-body th{background:var(--ai-table-head);color:var(--text);font-weight:500}.moolah-ai-message.assistant .moolah-ai-message-body td{background:var(--ai-table-row)}.moolah-ai-message.assistant .moolah-ai-message-body hr{height:0;border:0;border-top:.5px solid var(--ai-grid-line)}.moolah-ai-message.assistant .moolah-ai-message-body blockquote{margin:12px 30px 12px 0;padding:10px 12px;border:1px solid var(--ai-callout-border);border-radius:10px;background:var(--ai-callout-background);color:var(--ai-response-text);font-size:13px;font-weight:500;line-height:1.4}.moolah-ai-message.assistant .moolah-ai-message-body blockquote>:last-child{margin-bottom:0}.moolah-ai-markdown-collapse{margin:6px 0;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--surface-muted)}.moolah-ai-markdown-collapse summary{position:relative;min-height:36px;padding:8px 34px 8px 10px;color:var(--text);font-size:12.5px;font-weight:500;line-height:1.25;cursor:pointer;list-style:none}.moolah-ai-markdown-collapse summary::-webkit-details-marker{display:none}.moolah-ai-markdown-collapse summary:after{position:absolute;top:13px;right:14px;width:8px;height:8px;border-right:1.5px solid var(--text-muted);border-bottom:1.5px solid var(--text-muted);content:"";transform:rotate(45deg);transition:transform .16s ease-out,top .16s ease-out}.moolah-ai-markdown-collapse[open] summary:after{top:17px;transform:rotate(225deg)}.moolah-ai-markdown-collapse-body{padding:8px 12px 12px;border-top:1px solid var(--ai-markdown-divider)}.moolah-ai-action-notice{margin-top:10px;padding:9px 10px;border:1px solid var(--warning);border-radius:9px;background:var(--warning-soft);color:var(--warning);font-size:11.5px;line-height:1.45}.moolah-ai-token-count{color:var(--text-muted);font-size:10px;font-weight:300;line-height:1}.moolah-ai-feedback-error{margin-left:4px;color:var(--negative);font-size:9.5px;font-weight:400;line-height:1.2}.moolah-ai-working-text{position:relative;width:fit-content;padding:6px 14px;background:linear-gradient(90deg,var(--text-muted),var(--text),var(--text-muted));-webkit-background-clip:text;background-clip:text;background-size:220% 100%;color:transparent;font-size:12px;font-weight:500;animation:moolah-ai-working 1.4s ease-in-out infinite}@keyframes moolah-ai-working{0%{background-position:100% 0}to{background-position:-120% 0}}.moolah-ai-composer-wrap{display:grid;flex:0 0 auto;gap:0;padding:0;border-top:1px solid var(--line);background:var(--surface-glass);border-radius:0 0 16px 16px;transition:box-shadow .18s ease-out}.moolah-ai-drawer[data-listening=true] .moolah-ai-composer-wrap{box-shadow:inset 0 -1px color-mix(in srgb,var(--accent) 72%,transparent)}.moolah-ai-consent{display:grid;gap:8px;padding:14px;border-bottom:1px solid var(--line);background:var(--surface-muted)}.moolah-ai-consent strong{color:var(--text);font-size:13px}.moolah-ai-consent p{margin:0;color:var(--text-muted);font-size:12px;line-height:1.45}.moolah-ai-consent>div{display:flex;justify-content:flex-end;gap:8px}.moolah-ai-consent button{min-height:38px;padding:0 12px}.moolah-ai-send-error{margin:8px 12px;padding:8px 9px 8px 11px}.moolah-ai-composer{display:flex;min-height:74px;max-height:156px;flex-direction:column;padding:10px 8px 7px 12px;border:0;border-radius:0 0 16px 16px;background:var(--surface-glass)}.moolah-ai-composer textarea{width:100%;min-height:24px;max-height:76px;padding:0 12px 0 0;resize:none;overflow-y:auto;border:0;outline:0;background:transparent;color:var(--text);font-family:inherit;font-size:13px;font-weight:400;line-height:1.35;caret-color:var(--accent)}.moolah-ai-composer textarea::placeholder{color:var(--text-muted)}.moolah-ai-composer-controls,.moolah-ai-composer-tools,.moolah-ai-composer-submit{display:flex;align-items:center}.moolah-ai-composer-controls{min-height:28px;justify-content:space-between;margin-top:10px}.moolah-ai-composer-tools button,.moolah-ai-composer-submit button{display:grid;width:28px;height:28px;padding:0;place-items:center;border:0;border-radius:12px;background:transparent;color:var(--text-muted)}.moolah-ai-composer-tools button{margin-right:4px;cursor:pointer}.moolah-ai-composer-tools button:hover:not(:disabled),.moolah-ai-composer-submit button:not(.moolah-ai-send):hover:not(:disabled),.moolah-ai-composer-tools button[aria-expanded=true],.moolah-ai-composer-submit button.listening{background:var(--clickable-shell-hover-fill);color:var(--accent)}.moolah-ai-utility-wrap{position:relative;display:inline-flex}.moolah-ai-utility-popover{position:absolute;z-index:8;bottom:calc(100% + 10px);left:0;display:grid;width:246px;gap:8px;padding:12px;border:.5px solid var(--clickable-shell-border);border-radius:11px;background:var(--surface);box-shadow:0 14px 38px color-mix(in srgb,black 22%,transparent);color:var(--text-muted);font-size:10px;line-height:1.4}.moolah-ai-utility-popover strong{color:var(--text);font-size:11px;font-weight:500}.moolah-ai-utility-popover ul{display:grid;gap:4px;margin:0;padding-left:17px}.moolah-ai-utility-popover small{color:var(--text-muted);font-size:9.5px;line-height:1.4}.moolah-ai-utility-popover>span{display:flex;align-items:center;gap:6px}.moolah-ai-usage-mini-donut,.moolah-ai-usage-donut{--usage-progress: 0deg;position:relative;display:grid;flex:0 0 auto;place-items:center;border-radius:50%;background:conic-gradient(var(--accent) 0 var(--usage-progress),var(--ai-grid-line) var(--usage-progress) 360deg)}.moolah-ai-usage-mini-donut:before,.moolah-ai-usage-donut:before{position:absolute;border-radius:inherit;background:var(--surface);content:""}.moolah-ai-usage-mini-donut{width:18px;height:18px}.moolah-ai-usage-mini-donut:before{inset:3px}.moolah-ai-usage-overview{display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:11px}.moolah-ai-usage-donut{width:54px;height:54px}.moolah-ai-usage-donut:before{inset:6px}.moolah-ai-usage-donut>strong{z-index:1;color:var(--text);font-size:11px;font-weight:500}.moolah-ai-usage-overview>span:last-child{display:flex;align-items:center}.moolah-ai-usage-overview>span:last-child strong{color:var(--text);font-size:11px;font-weight:500}.moolah-ai-model-label{display:inline-flex;max-width:132px;align-items:center;overflow:hidden;color:var(--text-muted);font-size:9.5px;font-weight:400;line-height:1;text-overflow:ellipsis;white-space:nowrap}.moolah-ai-utility-popover .available{color:var(--positive)}.moolah-ai-utility-popover .unavailable,.moolah-ai-utility-popover .error{color:var(--negative)}.moolah-ai-composer-tools button:disabled,.moolah-ai-composer-submit button:not(.moolah-ai-send):disabled{color:var(--text-muted);cursor:not-allowed;opacity:.48}.moolah-ai-composer-submit{gap:4px}.moolah-ai-listening-strip{display:grid;min-height:28px;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:8px;margin:-2px 4px 8px 0;padding:4px 8px;border:1px solid color-mix(in srgb,var(--accent) 28%,transparent);border-radius:10px;background:color-mix(in srgb,var(--accent-soft) 72%,transparent);color:var(--accent)}.moolah-ai-listening-strip strong{font-size:11.5px;font-weight:600;line-height:1}.moolah-ai-listening-strip small{justify-self:end;color:var(--text-muted);font-size:9.5px;font-weight:500;line-height:1}.moolah-ai-waveform{display:inline-flex;height:18px;align-items:center;gap:2px}.moolah-ai-waveform>span{width:2px;height:16px;border-radius:99px;background:currentColor;opacity:.68;transform:scaleY(.22);transform-origin:center;will-change:transform,opacity;animation:moolah-ai-waveform-fallback .62s ease-in-out infinite alternate}.moolah-ai-waveform>span:nth-child(2n){animation-delay:-.18s}.moolah-ai-waveform>span:nth-child(3n){animation-delay:-.39s}.moolah-ai-waveform>span:nth-child(4n){animation-delay:-90ms}.moolah-ai-waveform[data-reactive=true]>span{animation:none;transform:scaleY(var(--voice-level, .18));transition:transform 65ms linear,opacity 65ms linear}@keyframes moolah-ai-waveform-fallback{0%{transform:scaleY(.2)}55%{transform:scaleY(.82)}to{transform:scaleY(.38)}}.moolah-ai-voice-wake{position:absolute;z-index:6;inset:0;overflow:hidden;opacity:0;pointer-events:none}.moolah-ai-drawer[data-push-to-talk-active=true] .moolah-ai-voice-wake{animation:moolah-ai-voice-wake-layer .9s ease-out both}.moolah-ai-voice-wake-ring{position:absolute;right:-118px;bottom:-118px;width:236px;height:236px;border:1px solid color-mix(in srgb,var(--accent) 66%,transparent);border-radius:50%;box-shadow:0 0 26px color-mix(in srgb,var(--accent) 18%,transparent),inset 0 0 22px color-mix(in srgb,var(--accent) 12%,transparent);opacity:0;transform:scale(.18);transform-origin:center;will-change:transform,opacity}.moolah-ai-drawer[data-push-to-talk-active=true] .moolah-ai-voice-wake-ring{animation:moolah-ai-voice-wake-ring .76s cubic-bezier(.2,.76,.24,1) both}.moolah-ai-drawer[data-push-to-talk-active=true] .moolah-ai-voice-wake-ring.ring-two{animation-delay:85ms}.moolah-ai-voice-wake-shimmer{position:absolute;right:-66%;bottom:-3%;width:156%;height:110px;background:linear-gradient(96deg,transparent 9%,color-mix(in srgb,var(--accent) 6%,transparent) 32%,color-mix(in srgb,var(--accent) 28%,transparent) 49%,rgba(255,255,255,.2) 53%,transparent 72%);filter:blur(10px);opacity:0;transform:translate3d(30%,18%,0) rotate(-13deg);transform-origin:right bottom;will-change:transform,opacity}.moolah-ai-drawer[data-push-to-talk-active=true] .moolah-ai-voice-wake-shimmer{animation:moolah-ai-voice-wake-shimmer .72s cubic-bezier(.18,.82,.24,1) 40ms both}@keyframes moolah-ai-voice-wake-layer{0%,82%{opacity:1}to{opacity:0}}@keyframes moolah-ai-voice-wake-ring{0%{opacity:0;transform:scale(.18)}18%{opacity:.85}to{opacity:0;transform:scale(3.8)}}@keyframes moolah-ai-voice-wake-shimmer{0%{opacity:0;transform:translate3d(30%,18%,0) rotate(-13deg)}24%{opacity:.8}to{opacity:0;transform:translate3d(-46%,-128%,0) rotate(-13deg)}}.moolah-ai-send{background:var(--accent)!important;color:#fff!important;transition:background .16s ease,filter .16s ease}.moolah-ai-send:hover:not(:disabled){filter:brightness(1.07)}.moolah-ai-send:disabled{background:var(--ai-composer-disabled)!important;color:var(--text-muted)!important;opacity:1!important}@media(max-width:1180px)and (min-width:781px){.app-shell{--ai-drawer-width: 340px}}@media(max-width:1100px)and (min-width:781px){.app-shell.ai-drawer-open{grid-template-columns:var(--sidebar-width) minmax(0,1fr)}.moolah-ai-drawer.open{box-shadow:0 24px 64px color-mix(in srgb,black 32%,transparent),0 0 0 1px color-mix(in srgb,var(--surface-raised) 14%,transparent) inset}}@media(prefers-reduced-motion:reduce){.app-shell,.moolah-rail,.moolah-ai-drawer{transition-duration:.01ms}.moolah-ai-drawer.open,.moolah-rail.listening .sidebar-ai-item .navigation-icon:after,.moolah-ai-drawer[data-push-to-talk-active=true] .moolah-ai-voice-wake,.moolah-ai-drawer[data-push-to-talk-active=true] .moolah-ai-voice-wake-ring,.moolah-ai-drawer[data-push-to-talk-active=true] .moolah-ai-voice-wake-shimmer,.moolah-ai-waveform>span{animation:none}.moolah-ai-drawer.open{transform:none}.moolah-ai-drawer[data-push-to-talk-active=true] .moolah-ai-voice-wake{opacity:0}.moolah-ai-waveform>span{opacity:.75;transform:scaleY(.52)}}@media(max-width:780px){.app-shell,.app-shell.ai-drawer-open{grid-template-columns:minmax(0,1fr);grid-template-rows:64px minmax(0,1fr)}.shell-mobile-ai{display:grid;width:42px;height:42px;min-height:42px;padding:0;border:1px solid var(--line);background:var(--surface-raised);color:var(--text);box-shadow:none}.shell-mobile-ai.active{border-color:var(--sidebar-active-border);background:var(--sidebar-active);color:var(--accent)}.moolah-rail,.moolah-rail.ai-open{display:contents}.moolah-ai-drawer{position:fixed;z-index:50;top:64px;right:0;bottom:0;width:min(100%,420px);border:0;border-left:1px solid var(--line);border-radius:0;box-shadow:var(--shadow);transform:translate(100%)}.moolah-ai-drawer.open{border:0;border-left:1px solid var(--line);animation:none;transform:translate(0)}.moolah-ai-drawer-inner{width:100%}}@media(max-width:520px){.moolah-ai-drawer{width:100%;border-left:0;box-shadow:none}}.dream-dashboard{display:grid;width:min(100%,1560px);height:auto;min-height:100%;gap:18px;margin:0 auto;padding-bottom:24px;overflow:visible}.dream-dashboard-header{margin-bottom:0}.dream-dashboard-header>div:first-child{max-width:680px}.dream-dashboard-header h1{margin-bottom:4px;font-size:30px;letter-spacing:0;line-height:1.08}.plan-explorer{display:grid;min-width:0;gap:18px}.plan-explorer-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.plan-explorer-header>div{max-width:720px}.plan-explorer-header h2{margin:5px 0 4px;color:var(--text);font-family:var(--moolah-font-body);font-size:20px;font-weight:500;letter-spacing:0;line-height:1.2}.plan-explorer-header h2 .animated-money{color:var(--accent)}.plan-explorer-header p:last-child{max-width:620px;margin:0;color:var(--text-muted);font-size:12px;line-height:1.5}.plan-mode-badge{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:transparent;color:var(--text-muted);font-size:11px;font-weight:500}.plan-mode-badge.live{color:var(--positive)}.plan-mode-badge.explore{color:var(--accent)}.plan-explore-button{position:relative;z-index:1;flex:0 0 auto}.plan-refresh-notice{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--warning);border-radius:13px;background:var(--warning-soft);color:var(--warning);font-size:12px}.plan-refresh-notice button{min-height:38px;padding:0 12px;border:1px solid currentColor;border-radius:10px;background:transparent;color:inherit;font-weight:500}.plan-summary-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.plan-summary-strip article{display:grid;min-width:0;min-height:104px;grid-template-columns:auto minmax(0,1fr);align-content:center;gap:3px 10px;padding:20px 22px;border:1px solid var(--flutter-border);border-radius:20px;background:var(--flutter-surface)}.plan-summary-strip svg{grid-row:1 / 4;align-self:center;color:var(--flutter-muted)}.plan-summary-strip span,.plan-summary-strip small{overflow:hidden;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap}.plan-summary-strip span{font-size:12px}.plan-summary-strip small{font-size:11px}.plan-summary-strip>article>strong{overflow:hidden;color:var(--text);font-size:21px;font-variant-numeric:tabular-nums;font-weight:500;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.plan-explorer-workspace{display:grid;min-width:0;grid-template-columns:minmax(0,1.65fr) minmax(300px,.7fr);gap:18px;align-items:start}.plan-journey-card,.plan-explore-panel{min-width:0;padding:20px;border:1px solid var(--flutter-border);border-radius:20px;background:var(--flutter-surface)}.plan-journey-card{display:grid;gap:16px}.plan-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.plan-card-heading h3,.plan-control-heading h3,.plan-explore-invitation h3{margin:0;color:var(--text);font-family:var(--moolah-font-body);font-size:18px;font-weight:500;letter-spacing:0}.plan-section-label{margin:0 0 5px;color:var(--text-muted);font-family:var(--moolah-font-body);font-size:11px;font-weight:500;letter-spacing:0;line-height:1.35}.plan-progress-pill{display:inline-flex;flex:0 0 auto;align-items:center;gap:6px;color:var(--positive);font-size:11px;font-weight:500}.plan-progress-pill:before{width:7px;height:7px;border-radius:999px;background:currentColor;content:""}.plan-journey{display:grid;gap:4px;margin:0}.plan-journey svg{display:block;width:100%;min-height:96px;overflow:visible}.plan-journey-track,.plan-journey-progress{fill:none;stroke-linecap:round;stroke-width:6}.plan-journey-track{stroke:var(--line-strong);stroke-dasharray:3 17}.plan-journey-progress{stroke:url(#plan-journey-line);opacity:.88;transition:d .28s ease-out}.plan-target-line{stroke:var(--warning);stroke-dasharray:4 6;stroke-width:2}.plan-now-marker{fill:var(--positive);stroke:var(--surface);stroke-width:4}.plan-baseline-marker{fill:var(--surface);stroke:var(--text-muted);stroke-width:3}.plan-preview-marker{fill:var(--accent);stroke:var(--surface);stroke-width:5;transform-box:fill-box;transform-origin:center;transition:transform .22s ease-out}.plan-journey figcaption{display:flex;flex-wrap:wrap;gap:12px;color:var(--text-muted);font-size:10px}.plan-journey figcaption span{display:inline-flex;align-items:center;gap:5px}.plan-dot,.allocation-legend i{display:inline-block;width:8px;height:8px;flex:0 0 auto;border-radius:999px}.plan-dot.now,.allocation-legend .tone-0{background:var(--positive)}.plan-dot.baseline,.allocation-legend .tone-4{border:1px solid var(--text-muted);background:var(--surface)}.plan-dot.preview,.allocation-legend .tone-1{background:var(--accent)}.plan-dot.target,.allocation-legend .tone-2{background:var(--warning)}.allocation-legend .tone-3{background:var(--spending)}.allocation-legend .tone-deficit{background:var(--negative)}.goal-choice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.goal-choice{--goal-tone: var(--accent);display:grid;min-width:0;min-height:68px;grid-template-columns:38px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:9px 10px;border:1px solid transparent;border-radius:14px;background:transparent;color:var(--text);text-align:left;transition:border-color .18s ease,background .18s ease,transform .18s ease}.goal-choice.tone-0{--goal-tone: var(--positive)}.goal-choice.tone-1{--goal-tone: var(--accent)}.goal-choice.tone-2{--goal-tone: var(--warning)}.goal-choice.tone-3{--goal-tone: var(--spending)}.goal-choice:hover,.goal-choice.selected{border-color:var(--flutter-border-strong);background:var(--flutter-row)}.goal-choice.selected{border-color:color-mix(in srgb,var(--goal-tone) 55%,var(--flutter-border))}.goal-choice:active{transform:scale(.985)}.goal-choice-icon{display:grid;width:38px;height:38px;overflow:hidden;place-items:center;border-radius:14px;background:color-mix(in srgb,var(--goal-tone) 15%,var(--surface));color:var(--goal-tone)}.goal-choice-icon img{display:block;width:100%;height:100%;object-fit:cover}.goal-choice>span:nth-child(2){display:grid;min-width:0;gap:3px}.goal-choice strong,.goal-choice small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.goal-choice strong{font-family:var(--moolah-font-body);font-size:14px;font-weight:500}.goal-choice small{color:var(--text-muted);font-size:12px;font-weight:400}.goal-choice-chevron{color:var(--text-muted)}.goal-choice progress{grid-column:1 / -1;width:100%;height:4px;overflow:hidden;border:0;border-radius:999px;accent-color:var(--goal-tone);background:var(--line)}.goal-choice progress::-webkit-progress-bar{border-radius:999px;background:var(--line)}.goal-choice progress::-webkit-progress-value{border-radius:999px;background:var(--goal-tone)}.goal-choice progress::-moz-progress-bar{border-radius:999px;background:var(--goal-tone)}.allocation-ribbon-block{display:grid;gap:10px;padding-top:16px;border-top:1px solid var(--line)}.allocation-ribbon-heading{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:12px}.allocation-ribbon-heading>div{display:grid;gap:2px}.allocation-ribbon-heading span,.allocation-ribbon-heading strong{color:var(--text-muted);font-size:11px}.allocation-ribbon-heading>.animated-money{color:var(--text);font-size:16px;font-weight:500}.allocation-ribbon{display:block;width:100%;height:34px;overflow:hidden;border-radius:999px;background:var(--line)}.allocation-segment{stroke:var(--surface);stroke-width:3;transition:opacity .18s ease}.allocation-segment.tone-0{fill:var(--positive)}.allocation-segment.tone-1{fill:var(--accent)}.allocation-segment.tone-2{fill:var(--warning)}.allocation-segment.tone-3{fill:var(--spending)}.allocation-segment.tone-4{fill:var(--text-muted)}.allocation-segment.deficit{fill:var(--negative)}.allocation-legend{display:flex;flex-wrap:wrap;gap:7px 14px;color:var(--text-muted);font-size:10px}.allocation-legend span{display:inline-flex;align-items:center;gap:5px}.plan-explore-panel{display:grid;align-content:start;gap:16px}.plan-control-heading{display:flex;align-items:flex-start;gap:10px}.plan-control-heading>svg{flex:0 0 auto;color:var(--accent)}.plan-control-heading h3{font-size:18px}.plan-control-heading p,.plan-explore-invitation p{margin:4px 0 0;color:var(--text-muted);font-size:12px;line-height:1.5}.plan-range-label{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;color:var(--text-muted);font-size:12px}.plan-range-label strong{color:var(--accent);font-size:23px;font-weight:500;letter-spacing:0}.plan-range-control{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px}.plan-range-control>button{display:grid;width:44px;height:44px;place-items:center;border:1px solid var(--line-strong);border-radius:12px;background:var(--surface);color:var(--text)}.plan-range-control>button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.plan-range-control>button:disabled{opacity:.4}.plan-explore-panel input[type=range],.plan-experiment-dock input[type=range]{width:100%;min-height:44px;margin:-8px 0;accent-color:var(--accent);cursor:grab}.plan-explore-panel input[type=range]:active,.plan-experiment-dock input[type=range]:active{cursor:grabbing}.plan-range-scale{display:flex;justify-content:space-between;color:var(--text-muted);font-size:9px;font-variant-numeric:tabular-nums}.plan-control-help{margin:-5px 0 0;color:var(--text-muted);font-size:11px;line-height:1.5}.plan-change-summary{display:grid;grid-template-columns:38px minmax(0,1fr);gap:11px;padding:14px;border:1px solid var(--accent);border-radius:16px;background:var(--accent-soft);animation:plan-preview-enter .24s ease-out}.plan-change-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:12px;background:var(--surface);color:var(--accent)}.plan-change-summary>div{display:grid;gap:3px}.plan-change-summary small{color:var(--text-muted);font-size:10px;font-weight:500;letter-spacing:0}.plan-change-summary strong{color:var(--text);font-size:16px}.plan-change-summary p{margin:0;color:var(--text-muted);font-size:10px;line-height:1.45}.plan-source-ledger{display:grid;gap:0;margin:0;border-top:1px solid var(--line)}.plan-source-ledger>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.plan-source-ledger dt{color:var(--text-muted);font-size:10px}.plan-source-ledger dd{margin:0;color:var(--text);font-size:11px;font-variant-numeric:tabular-nums;font-weight:500}.plan-donor-impact{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.plan-donor-impact>strong{color:var(--text);font-size:11px;font-weight:500;letter-spacing:0}.plan-donor-impact ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.plan-donor-impact li{display:grid;gap:2px}.plan-donor-impact li>span{color:var(--text);font-size:11px;font-weight:500}.plan-donor-impact li>small{color:var(--text-muted);font-size:9px;line-height:1.4}.plan-sequential-guidance{display:grid;min-height:100%;align-content:center;gap:10px}.plan-sequential-guidance>svg{color:var(--accent)}.plan-sequential-guidance h3{font-size:18px}.plan-sequential-guidance h3:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.plan-sequential-guidance>p:not(.plan-section-label){margin:0;color:var(--text-muted);font-size:11px;line-height:1.55}.plan-preview-actions{display:grid;gap:10px;margin-top:auto}.plan-preview-actions>span{display:inline-flex;align-items:center;justify-content:center;gap:6px;color:var(--text-muted);font-size:9px}.plan-explore-invitation{display:grid;min-height:100%;align-content:center;justify-items:start;gap:10px}.plan-explore-invitation>svg{color:var(--accent)}.plan-explore-invitation .primary-button{margin-top:6px}.plan-explorer-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0 0;border-top:1px solid var(--line);background:transparent}.plan-explorer-footer>div{display:flex;min-width:0;align-items:center;gap:10px}.plan-explorer-footer svg{flex:0 0 auto;color:var(--text-muted)}.plan-explorer-footer span{color:var(--text-muted);font-size:11px;line-height:1.5}.plan-explorer-footer strong{color:var(--text)}.plan-explorer-footer>a{display:inline-flex;min-height:44px;flex:0 0 auto;align-items:center;gap:6px;color:var(--accent);font-size:11px;font-weight:500;text-decoration:none}.plan-explorer-empty{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;padding:20px;border:1px solid var(--flutter-border);border-radius:20px;background:var(--flutter-surface)}.plan-explorer-empty>svg{color:var(--accent)}.plan-explorer-empty h2{margin:0 0 5px;color:var(--text)}.plan-explorer-empty p:last-child{margin:0;color:var(--text-muted);font-size:12px}.dashboard-math-note{max-width:960px;margin:0;color:var(--text-muted);font-size:10px;line-height:1.5;text-align:left}.dashboard-plan-error{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:22px;border:1px solid var(--negative);border-radius:20px;background:var(--negative-soft)}.dashboard-plan-error>svg{color:var(--negative)}.dashboard-plan-error h1{margin:0 0 4px;color:var(--text);font-size:20px}.dashboard-plan-error p{margin:0;color:var(--text-muted);font-size:12px}.dashboard-loading-spinner{display:grid;min-height:calc(100dvh - 64px);place-items:center;color:var(--text-muted)}@keyframes plan-preview-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1240px){.plan-explorer-workspace{grid-template-columns:minmax(0,1.35fr) minmax(280px,.75fr)}.goal-choice-list{grid-template-columns:1fr}}.app-shell.ai-drawer-open .plan-explorer-workspace{grid-template-columns:1fr}.app-shell.ai-drawer-open .goal-choice-list{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:980px){.plan-explorer-workspace{grid-template-columns:1fr}.goal-choice-list{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-explore-panel{min-height:280px}}@media(max-width:720px){.dream-dashboard-header,.plan-explorer-header,.plan-explorer-footer{align-items:stretch;flex-direction:column}.dream-dashboard-actions,.dream-dashboard-actions>a,.plan-explorer-header>button,.plan-explorer-footer>a{width:100%}.plan-summary-strip{grid-template-columns:1fr}.plan-summary-strip article{border:1px solid var(--flutter-border)}.plan-refresh-notice{grid-template-columns:auto minmax(0,1fr)}.plan-refresh-notice button{grid-column:1 / -1}}@media(max-width:520px){.plan-explorer{border-radius:22px}.plan-journey-card,.plan-explore-panel{padding:16px;border-radius:18px}.goal-choice-list{grid-template-columns:1fr}.plan-card-heading{align-items:flex-start;flex-direction:column}.plan-journey figcaption{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.plan-explorer-empty,.dashboard-plan-error{grid-template-columns:1fr}}.moolah-data-surface{border-color:var(--display-shell-border);background:var(--display-shell-fill);box-shadow:none}.moolah-action-surface{background-color:color-mix(in srgb,var(--surface-raised) 42%,var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--line) 82%,transparent);cursor:pointer;transition:background-color var(--moolah-motion-fast) ease,box-shadow var(--moolah-motion-fast) ease,color var(--moolah-motion-fast) ease}.moolah-action-surface:hover{background-color:color-mix(in srgb,var(--surface-raised) 72%,var(--surface));box-shadow:inset 0 0 0 1px var(--line-strong)}.moolah-action-surface:active{background-color:color-mix(in srgb,var(--accent) 10%,var(--surface-raised));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 48%,var(--line))}.moolah-action-surface:focus-visible{outline:3px solid var(--focus-ring);outline-offset:-3px}@media(prefers-reduced-motion:reduce){.plan-explorer,.goal-choice,.plan-journey-progress,.plan-preview-marker,.allocation-segment,.moolah-action-surface{transition:none}.plan-change-summary{animation:none}}.dashboard-briefing{container-type:inline-size;display:grid;min-width:0;min-height:0;height:100%;grid-template-rows:auto minmax(0,1fr);gap:12px}.dashboard-briefing-hero{--briefing-foreground: var(--moolah-color-brand-text-on-dark);--briefing-secondary: color-mix(in srgb, var(--briefing-foreground) 66%, transparent);position:relative;display:grid;min-width:0;gap:14px;padding:20px 22px 16px;overflow:hidden;border:.5px solid color-mix(in srgb,var(--moolah-color-milestone) 30%,transparent);border-radius:var(--moolah-radius-prominent);background:linear-gradient(118deg,color-mix(in srgb,var(--moolah-color-decision) 96%,black),color-mix(in srgb,var(--moolah-color-decision) 84%,var(--surface)) 72%,color-mix(in srgb,var(--moolah-color-milestone) 18%,var(--moolah-color-decision)) 125%);color:var(--briefing-foreground);box-shadow:inset 0 1px color-mix(in srgb,var(--briefing-foreground) 7%,transparent)}.dashboard-briefing-hero:after{position:absolute;top:-90px;right:18px;width:220px;height:220px;border:1px solid color-mix(in srgb,var(--moolah-color-milestone) 22%,transparent);border-radius:50%;content:"";pointer-events:none}.dashboard-briefing-hero>header{position:relative;z-index:1;display:flex;min-width:0;align-items:center;justify-content:space-between;gap:18px}.dashboard-briefing-hero>header>div{display:flex;min-width:0;align-items:center;gap:10px}.dashboard-briefing-date,.dashboard-briefing-status,.dashboard-plan-link{display:inline-flex;min-height:32px;align-items:center;gap:6px;margin:0;font-family:var(--moolah-type-label-family);font-size:11px;font-weight:var(--moolah-type-label-weight)}.dashboard-briefing-date{color:var(--briefing-secondary)}.dashboard-briefing-status{padding:0 10px;border:1px solid color-mix(in srgb,currentColor 34%,transparent);border-radius:var(--moolah-radius-pill);background:color-mix(in srgb,currentColor 10%,transparent);color:var(--briefing-foreground)}.dashboard-briefing-hero.tone-positive .dashboard-briefing-status svg{color:var(--positive)}.dashboard-briefing-hero.tone-warning .dashboard-briefing-status svg{color:var(--warning)}.dashboard-briefing-hero.tone-negative .dashboard-briefing-status svg{color:var(--negative)}.dashboard-briefing-hero.tone-info .dashboard-briefing-status svg{color:var(--moolah-color-accent-soft)}.dashboard-plan-link{position:relative;z-index:2;min-height:44px;flex:0 0 auto;padding:0 12px;border:1px solid color-mix(in srgb,var(--briefing-foreground) 18%,transparent);border-radius:var(--moolah-radius-control);background:color-mix(in srgb,var(--briefing-foreground) 6%,transparent);color:var(--briefing-foreground);text-decoration:none;transition:border-color var(--moolah-motion-fast) ease,background var(--moolah-motion-fast) ease}.dashboard-plan-link:hover{border-color:color-mix(in srgb,var(--briefing-foreground) 34%,transparent);background:color-mix(in srgb,var(--briefing-foreground) 11%,transparent)}.dashboard-plan-link:focus-visible{outline:3px solid var(--moolah-color-milestone);outline-offset:2px}.dashboard-briefing-copy{position:relative;z-index:1;display:grid;max-width:860px;gap:5px}.dashboard-briefing-copy>p:first-child{margin:0;color:var(--moolah-color-milestone);font-family:var(--moolah-type-label-family);font-size:11px;font-weight:var(--moolah-type-label-weight)}.dashboard-briefing-copy h2{max-width:820px;margin:0;color:var(--briefing-foreground);font-family:var(--moolah-type-section-title-family);font-size:clamp(24px,3vw,34px);font-weight:var(--moolah-type-section-title-weight);line-height:1.08;text-wrap:balance}.dashboard-briefing-copy>p:last-child{max-width:760px;margin:0;color:var(--briefing-secondary);font-size:12px;line-height:1.5}.dashboard-now-strip{position:relative;z-index:1;display:grid;grid-template-columns:minmax(140px,.72fr) minmax(140px,.72fr) minmax(240px,1.5fr);gap:0;margin:0;border:1px solid color-mix(in srgb,var(--briefing-foreground) 11%,transparent);border-radius:var(--moolah-radius-panel);background:color-mix(in srgb,black 11%,transparent)}.dashboard-now-strip>div{display:grid;min-width:0;align-content:center;gap:4px;padding:11px 14px}.dashboard-now-strip>div+div{border-left:1px solid color-mix(in srgb,var(--briefing-foreground) 10%,transparent)}.dashboard-now-strip dt{color:var(--briefing-secondary);font-size:9px;font-weight:var(--moolah-type-label-weight)}.dashboard-now-strip dd{display:grid;min-width:0;grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:5px;margin:0}.dashboard-now-strip dd strong{overflow:hidden;color:var(--briefing-foreground);font-family:var(--moolah-type-metric-family);font-size:15px;font-variant-numeric:tabular-nums;font-weight:var(--moolah-type-metric-weight);text-overflow:ellipsis;white-space:nowrap}.dashboard-now-strip dd span{overflow:hidden;color:var(--briefing-secondary);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.dashboard-now-strip>div:last-child dd{grid-template-columns:1fr;gap:2px}.dashboard-plan-source{position:relative;z-index:1;margin:-3px 0 0;color:color-mix(in srgb,var(--briefing-foreground) 48%,transparent);font-size:9px;line-height:1.4}.dashboard-briefing-lower{display:grid;min-width:0;min-height:0;grid-template-columns:minmax(0,2.35fr) minmax(270px,.85fr);gap:12px}.briefing-path,.briefing-evidence-stack>.briefing-momentum,.briefing-progress{min-width:0;min-height:0;border:.5px solid var(--widget-shell-border);border-radius:var(--moolah-radius-prominent);background:var(--widget-shell-fill)}.briefing-path{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;padding:16px}.briefing-path-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.briefing-path-heading h2,.briefing-progress h3,.briefing-momentum h3,.briefing-net-worth h3,.briefing-goal-horizon h3{margin:0;color:var(--text);font-family:var(--moolah-type-section-title-family);font-weight:var(--moolah-type-section-title-weight)}.briefing-path-heading h2{font-size:17px}.briefing-path-grid{display:grid;min-width:0;min-height:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0}.briefing-momentum,.briefing-goal-horizon{min-width:0;min-height:0}.briefing-momentum{display:grid;grid-template-rows:auto minmax(100px,1fr) auto;padding-right:16px}.briefing-evidence-stack{display:grid;min-width:0;min-height:0;grid-template-rows:minmax(210px,.9fr) minmax(250px,1.1fr);gap:12px}.briefing-evidence-stack>.briefing-momentum{padding:16px}.briefing-momentum>header,.briefing-goal-horizon>header{display:flex;min-width:0;align-items:flex-start;justify-content:space-between;gap:12px}.briefing-momentum h3,.briefing-goal-horizon h3,.briefing-progress h3{font-size:14px}.briefing-period-toggle{display:inline-grid;flex:0 0 auto;grid-template-columns:repeat(2,minmax(0,1fr));padding:2px;border:1px solid var(--line);border-radius:var(--moolah-radius-control);background:var(--surface-translucent)}.briefing-period-toggle button{min-height:32px;padding:0 8px;border:0;border-radius:calc(var(--moolah-radius-control) - 2px);background:transparent;color:var(--text-muted);font-size:9px;font-weight:var(--moolah-type-label-weight)}.briefing-period-toggle button:hover{color:var(--text)}.briefing-period-toggle button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:0 1px 4px color-mix(in srgb,black 12%,transparent)}.briefing-period-toggle button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.briefing-savings-chart{display:block;width:100%;height:100%;min-height:108px;overflow:visible}.briefing-savings-zero{stroke:var(--line-strong);stroke-width:1}.briefing-savings-chart rect{transition:opacity var(--moolah-motion-fast) ease}.briefing-savings-chart rect.saved{fill:var(--chart-saved)}.briefing-savings-chart rect.overspent{fill:var(--chart-deficit)}.briefing-savings-chart rect.forecast{fill-opacity:.16;stroke-width:1}.briefing-savings-chart rect.saved.forecast{stroke:var(--chart-saved)}.briefing-savings-chart rect.overspent.forecast{stroke:var(--chart-deficit)}.briefing-savings-cumulative-line{fill:none;stroke:var(--text);stroke-linecap:round;stroke-linejoin:round;stroke-width:2;vector-effect:non-scaling-stroke}.briefing-savings-cumulative-point{fill:var(--surface);stroke:var(--text);stroke-width:1.5;vector-effect:non-scaling-stroke}.briefing-savings-chart text{fill:var(--text-muted);font-family:var(--moolah-type-body-family);font-size:9px;text-anchor:middle}.briefing-savings-legend{display:flex;flex-wrap:wrap;align-items:center;gap:12px;color:var(--text-muted);font-size:8px}.briefing-savings-legend span{display:inline-flex;align-items:center;gap:5px}.briefing-savings-legend i{display:inline-block;flex:0 0 auto}.briefing-savings-legend i.monthly{width:8px;height:8px;border-radius:2px;background:var(--chart-saved)}.briefing-savings-legend i.cumulative{width:14px;height:0;border-top:2px solid var(--text)}.briefing-savings-result{display:flex;align-items:baseline;gap:5px;margin:0;color:var(--text-muted);font-size:10px}.briefing-savings-result strong{color:var(--text);font-family:var(--moolah-type-metric-family);font-size:16px;font-weight:var(--moolah-type-metric-weight)}.briefing-net-worth{display:grid;min-width:0;min-height:0;grid-template-rows:auto auto auto;gap:8px}.briefing-net-worth>header{display:flex;min-width:0;align-items:flex-end;justify-content:space-between;gap:18px}.briefing-net-worth>header>div{min-width:0}.briefing-net-worth h3{margin:0;color:var(--text);font-size:15px}.briefing-net-worth>header>div>p:last-child{margin:3px 0 0;color:var(--text-muted);font-size:9px}.briefing-net-worth>header dl{display:grid;flex:0 0 auto;grid-template-columns:repeat(3,auto);gap:16px;margin:0}.briefing-net-worth>header dl>div{display:grid;gap:2px}.briefing-net-worth>header dt{color:var(--text-muted);font-size:8px}.briefing-net-worth>header dd{margin:0;color:var(--text);font-family:var(--moolah-type-metric-family);font-size:12px;font-variant-numeric:tabular-nums;font-weight:var(--moolah-type-metric-weight)}.briefing-net-worth>header dd.positive{color:var(--positive)}.briefing-net-worth>header dd.negative{color:var(--negative)}.briefing-net-worth-chart{display:block;width:100%;height:auto;min-height:0;aspect-ratio:860 / 252;overflow:visible}.briefing-net-worth-chart-stage{position:relative;min-width:0}.briefing-net-worth-chart-kpis{position:absolute;inset:0;margin:0;pointer-events:none}.briefing-net-worth-chart-kpis>.current{position:absolute;top:0;left:var(--annotation-left);z-index:2;display:grid;width:150px;justify-items:center;gap:2px;padding:10px 14px;border:.5px solid color-mix(in srgb,var(--text) 10%,transparent);border-radius:var(--moolah-radius-control);background:color-mix(in srgb,var(--canvas) 92%,transparent);box-shadow:0 8px 20px color-mix(in srgb,black 9%,transparent);text-align:center;transform:translate(-50%)}.briefing-net-worth-chart-kpis>.current:after{position:absolute;top:100%;left:50%;width:1px;height:6px;background:color-mix(in srgb,var(--trajectory-tone, var(--moolah-color-milestone)) 22%,transparent);content:""}.briefing-net-worth-chart-kpis dt{color:var(--text-muted);font-size:8px}.briefing-net-worth-chart-kpis dd{margin:0;color:var(--text);font-family:var(--moolah-type-metric-family);font-size:17px;font-variant-numeric:tabular-nums;font-weight:var(--moolah-type-metric-weight);line-height:1.1}.briefing-net-worth-chart-kpis small{color:var(--text-muted);font-size:8px;line-height:1.25}.briefing-net-worth-chart-kpis small.positive,.briefing-net-worth-timeline small.positive{color:var(--positive)}.briefing-net-worth-chart-kpis small.negative,.briefing-net-worth-timeline small.negative{color:var(--negative)}.briefing-net-worth-grid line{stroke:color-mix(in srgb,var(--line) 56%,transparent);stroke-width:1}.briefing-net-worth-grid text,.briefing-net-worth-x-label{fill:var(--text-muted);font-family:var(--moolah-type-body-family);font-size:8px}.briefing-net-worth-projection-fill{fill:url(#briefing-projection-fill)}.briefing-net-worth-selection rect{fill:var(--chart-highlight)}.briefing-net-worth-selection line{stroke:color-mix(in srgb,var(--line-strong) 68%,transparent);stroke-width:1}.briefing-net-worth-hit{cursor:crosshair}.briefing-net-worth-hit:focus{outline:none}.briefing-net-worth-hover-callout{pointer-events:none}.briefing-net-worth-hover-callout rect{fill:color-mix(in srgb,var(--canvas) 94%,transparent);stroke:color-mix(in srgb,var(--text) 10%,transparent);stroke-width:.5}.briefing-net-worth-hover-callout text{fill:var(--text-muted);font-family:var(--moolah-type-body-family);font-size:7px}.briefing-net-worth-hover-callout tspan.value{fill:var(--text);font-family:var(--moolah-type-metric-family);font-size:12px;font-weight:var(--moolah-type-metric-weight)}.briefing-net-worth-today{stroke:color-mix(in srgb,var(--trajectory-tone, var(--moolah-color-milestone)) 24%,transparent);stroke-dasharray:3 4;stroke-width:1}.briefing-net-worth-actual-line,.briefing-net-worth-projected-line{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.briefing-net-worth-actual-line{stroke:var(--text);stroke-width:2.4}.briefing-net-worth-projected-line{stroke:var(--trajectory-tone, var(--moolah-color-milestone));stroke-dasharray:7 5;stroke-width:2.2}.briefing-net-worth-actual-point{fill:var(--surface);stroke:var(--text);stroke-width:2}.briefing-net-worth-goal{--goal-tone: var(--moolah-color-milestone);color:var(--goal-tone)}.briefing-net-worth-goal line{stroke:var(--goal-tone);stroke-width:1;opacity:.58}.briefing-net-worth-goal circle{fill:var(--goal-tone);stroke:var(--surface);stroke-width:2}.briefing-net-worth-goal text{fill:var(--text);font-family:var(--moolah-type-label-family);font-size:8px;font-weight:var(--moolah-type-label-weight)}.briefing-net-worth-goal tspan.date{fill:var(--text-muted);font-family:var(--moolah-type-body-family);font-size:7px;font-weight:var(--moolah-type-body-weight)}.briefing-net-worth-goal tspan.emoji{fill:var(--text);font-family:sans-serif;font-size:11px}.briefing-net-worth-goal tspan.name{fill:var(--text);font-family:var(--moolah-type-label-family);font-size:8px;font-weight:var(--moolah-type-label-weight)}.briefing-net-worth-chart a:hover .briefing-net-worth-goal circle,.briefing-net-worth-chart a:focus .briefing-net-worth-goal circle{stroke:var(--text);stroke-width:3}.briefing-net-worth-chart a:focus{outline:none}.briefing-net-worth-x-label.today{fill:var(--trajectory-tone, var(--moolah-color-milestone));font-weight:var(--moolah-type-label-weight)}.briefing-net-worth-timeline{--timeline-end: 98%;--timeline-line-color: color-mix(in srgb, var(--line) 56%, transparent);--timeline-now: 22%;--timeline-start: 6.7%;position:relative;min-width:0;min-height:54px;margin:-5px 0 0}.briefing-net-worth-timeline:before{position:absolute;top:24px;right:calc(100% - var(--timeline-end));left:var(--timeline-start);height:1px;background:var(--timeline-line-color);content:""}.briefing-net-worth-timeline>div{position:absolute;top:0;display:grid;min-width:0;grid-template-rows:16px 12px;justify-items:center;gap:15px;text-align:center}.briefing-net-worth-timeline .recorded{left:var(--timeline-start);width:calc(var(--timeline-now) - var(--timeline-start))}.briefing-net-worth-timeline .projected{right:calc(100% - var(--timeline-end));left:var(--timeline-now)}.briefing-net-worth-timeline .recorded:before,.briefing-net-worth-timeline .projected:before,.briefing-net-worth-timeline .projected:after{position:absolute;top:18px;width:1px;height:11px;background:var(--timeline-line-color);content:""}.briefing-net-worth-timeline .recorded:before{left:0;background:var(--timeline-line-color)}.briefing-net-worth-timeline .recorded:after{position:absolute;top:24px;right:0;left:0;height:1px;background:var(--timeline-line-color);content:""}.briefing-net-worth-timeline .projected:before{left:0}.briefing-net-worth-timeline .projected:after{right:0}.briefing-net-worth-timeline dt{grid-row:2;overflow:visible;color:color-mix(in srgb,var(--text-muted) 76%,transparent);font-size:10px;line-height:1;white-space:nowrap}.briefing-net-worth-timeline dd{grid-row:1;overflow:hidden;margin:0;color:color-mix(in srgb,var(--text) 58%,transparent);font-family:var(--moolah-type-metric-family);font-size:15px;font-variant-numeric:tabular-nums;font-weight:var(--moolah-type-metric-weight);line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.briefing-net-worth-timeline dd.positive{color:var(--positive)}.briefing-net-worth-timeline dd.negative{color:var(--negative)}.briefing-net-worth-timeline dd .estimate{color:var(--text-muted);font-family:var(--moolah-type-body-family);font-size:.68em;font-weight:500;letter-spacing:.01em}.briefing-net-worth-goal-list{display:none;margin:0;padding:0;list-style:none}.briefing-net-worth-goal-list a{display:grid;min-height:40px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;color:var(--text);text-decoration:none}.briefing-net-worth-goal-list i{--goal-tone: var(--moolah-color-milestone);width:8px;height:8px;border-radius:2px;background:var(--goal-tone);transform:rotate(45deg)}.briefing-net-worth-goal-list span{overflow:hidden;font-size:10px;font-weight:var(--moolah-type-label-weight);text-overflow:ellipsis;white-space:nowrap}.briefing-net-worth-goal-list small{color:var(--text-muted);font-size:9px}.briefing-net-worth-goal-list a:focus-visible{border-radius:var(--moolah-radius-control);outline:2px solid var(--accent);outline-offset:2px}.briefing-net-worth>footer{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:16px}.briefing-net-worth-legend{display:flex;min-width:0;flex-wrap:wrap;gap:12px}.briefing-net-worth-legend span{display:inline-flex;align-items:center;gap:5px;color:var(--text-muted);font-size:8px}.briefing-net-worth-legend i{display:inline-block;width:14px;height:0;border-top:2px solid var(--text)}.briefing-net-worth-legend i.projected{border-top-color:var(--trajectory-tone, var(--moolah-color-milestone));border-top-style:dashed}.briefing-net-worth-legend i.goal{width:7px;height:7px;border:0;border-radius:2px;background:var(--trajectory-tone, var(--moolah-color-milestone));transform:rotate(45deg)}.briefing-net-worth>footer>p{max-width:250px;margin:0;color:var(--text-muted);font-size:8px;line-height:1.35;text-align:right}.briefing-net-worth.empty{min-height:240px;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:1fr;align-items:center;gap:12px}.briefing-net-worth.empty>svg{color:var(--moolah-color-milestone)}.briefing-net-worth.empty a{display:inline-flex;min-height:40px;align-items:center;gap:5px;color:var(--accent);font-size:10px;font-weight:var(--moolah-type-label-weight);text-decoration:none}.briefing-goal-horizon{display:grid;grid-template-rows:auto minmax(134px,1fr);padding-left:16px;border-left:1px solid var(--line)}.briefing-goal-horizon>header>a,.briefing-goal-horizon.empty>a{display:inline-flex;min-height:36px;flex:0 0 auto;align-items:center;gap:5px;color:var(--accent);font-size:10px;font-weight:var(--moolah-type-label-weight);text-decoration:none}.briefing-goal-horizon>header>a:hover,.briefing-goal-horizon.empty>a:hover{text-decoration:underline;text-underline-offset:3px}.goal-horizon-chart{position:relative;min-width:0;min-height:138px;overflow:hidden}.goal-horizon-line{position:absolute;top:70px;right:4%;left:4%;height:1px;background:repeating-linear-gradient(90deg,var(--line-strong) 0,var(--line-strong) 5px,transparent 5px,transparent 10px)}.goal-horizon-now-dot{position:absolute;top:-4px;left:0;width:9px;height:9px;border:2px solid var(--surface);border-radius:50%;background:var(--moolah-color-milestone);box-shadow:0 0 0 1px var(--moolah-color-milestone)}.goal-horizon-now-label{position:absolute;top:80px;left:4%;color:var(--text-muted);font-size:9px;transform:translate(-12%)}.goal-horizon-chart ol{position:absolute;inset:0;margin:0;padding:0;list-style:none}.goal-horizon-chart li{--goal-position: 50%;--goal-tone: var(--moolah-color-milestone);position:absolute;top:70px;left:var(--goal-position);width:0}.goal-horizon-chart li>a{position:absolute;left:0;display:grid;min-width:126px;min-height:44px;justify-items:center;gap:1px;color:var(--text);text-align:center;text-decoration:none}.goal-horizon-chart li.above>a{padding-bottom:13px;transform:translate(-50%,-100%)}.goal-horizon-chart li.below>a{padding-top:13px;transform:translate(-50%)}.goal-horizon-chart li.above .goal-horizon-marker{grid-row:3}.goal-horizon-chart li.above strong{grid-row:1}.goal-horizon-chart li.above small{grid-row:2}.goal-horizon-chart li.is-start.above>a{transform:translate(-12%,-100%)}.goal-horizon-chart li.is-start.below>a{transform:translate(-12%)}.goal-horizon-chart li.is-end.above>a{transform:translate(-88%,-100%)}.goal-horizon-chart li.is-end.below>a{transform:translate(-88%)}.goal-horizon-marker{display:block;width:11px;height:11px;border:2px solid var(--surface);border-radius:3px;background:var(--goal-tone);box-shadow:0 0 0 1px var(--goal-tone);transform:rotate(45deg)}.goal-horizon-chart li>a:hover .goal-horizon-marker,.goal-horizon-chart li>a:focus-visible .goal-horizon-marker{transform:rotate(45deg) scale(1.2)}.goal-horizon-chart li>a:focus-visible{border-radius:var(--moolah-radius-control);outline:2px solid var(--accent);outline-offset:2px}.goal-horizon-chart li strong,.goal-horizon-chart li small{max-width:126px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.goal-horizon-chart li strong{font-size:10px;font-weight:var(--moolah-type-section-title-weight)}.goal-horizon-chart li small{color:var(--text-muted);font-size:8px}.goal-horizon-ticks{position:absolute;right:4%;bottom:0;left:4%;display:grid;grid-template-columns:repeat(4,1fr);color:var(--text-muted);font-size:8px;text-align:right}.briefing-goal-horizon.empty{grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:1fr;align-items:center;gap:10px}.briefing-goal-horizon.empty>svg{color:var(--moolah-color-milestone)}.briefing-fi-destination{display:grid;min-width:0;grid-template-columns:auto minmax(44px,1fr) auto minmax(160px,auto);align-items:center;gap:9px;padding-top:11px;border-top:1px solid var(--line)}.briefing-fi-now{display:inline-flex;align-items:center;gap:6px;color:var(--text);font-size:10px;font-weight:var(--moolah-type-label-weight)}.briefing-fi-now i{width:8px;height:8px;border-radius:50%;background:var(--moolah-color-milestone)}.briefing-fi-thread{height:1px;background:linear-gradient(90deg,var(--moolah-color-milestone),color-mix(in srgb,var(--moolah-color-milestone) 18%,var(--line)))}.briefing-fi-destination>svg{color:var(--moolah-color-milestone)}.briefing-fi-destination>span:last-child{display:grid;gap:1px}.briefing-fi-destination small{color:var(--text-muted);font-size:8px}.briefing-fi-destination strong{color:var(--text);font-size:11px;font-weight:var(--moolah-type-section-title-weight)}.briefing-progress{display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding:16px}.briefing-progress>header{padding-bottom:8px;border-bottom:1px solid var(--line)}.briefing-progress dl{display:grid;align-content:stretch;margin:0}.briefing-progress dl>div{display:grid;align-content:center;gap:6px;padding:10px 0}.briefing-progress dl>div+div{border-top:1px solid var(--line)}.briefing-progress dt{display:flex;align-items:center;gap:7px;color:var(--text-muted);font-size:9px}.briefing-progress dt svg{color:var(--moolah-color-milestone)}.briefing-progress dd{display:flex;min-width:0;flex-wrap:wrap;align-items:baseline;gap:5px;margin:0;color:var(--text);font-family:var(--moolah-type-metric-family);font-size:18px;font-variant-numeric:tabular-nums;font-weight:var(--moolah-type-metric-weight)}.briefing-progress dd.positive{color:var(--positive)}.briefing-progress dd.negative{color:var(--negative)}.briefing-progress dd small{color:var(--text-muted);font-family:var(--moolah-type-secondary-family);font-size:8px;font-weight:var(--moolah-type-secondary-weight)}.briefing-progress footer{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-top:10px;border-top:1px solid var(--line)}.briefing-progress footer span{color:var(--text-muted);font-size:9px}.briefing-progress footer strong{color:var(--text);font-family:var(--moolah-type-metric-family);font-size:12px;font-variant-numeric:tabular-nums;font-weight:var(--moolah-type-metric-weight)}@container (max-width: 900px){.dashboard-briefing-lower{grid-template-columns:1fr}.briefing-evidence-stack{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}.briefing-progress{grid-template-rows:auto auto auto}.briefing-evidence-stack .briefing-progress dl{grid-template-columns:1fr}.briefing-evidence-stack .briefing-progress dl>div{padding:10px 0}.briefing-evidence-stack .briefing-progress dl>div+div{border-top:1px solid var(--line);border-left:0}.briefing-progress dl>div{padding:10px}.briefing-progress dl>div+div{border-top:0;border-left:1px solid var(--line)}}@container (max-width: 680px){.dashboard-now-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-now-strip>div:last-child{grid-column:1 / -1;border-top:1px solid color-mix(in srgb,var(--briefing-foreground) 10%,transparent);border-left:0}.briefing-path-grid{grid-template-columns:1fr}.briefing-net-worth>header{align-items:flex-start;flex-direction:column}.briefing-net-worth>header dl{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}.briefing-net-worth>footer{align-items:flex-start;flex-direction:column}.briefing-net-worth>footer>p{max-width:none;text-align:left}.briefing-evidence-stack{grid-template-columns:1fr}.briefing-momentum{padding:0 0 14px}.briefing-evidence-stack>.briefing-momentum{padding:16px}.briefing-goal-horizon{padding:14px 0 0;border-top:1px solid var(--line);border-left:0}}@media(max-width:780px){.dashboard-briefing{height:auto}.dashboard-briefing-hero{padding:18px}.dashboard-briefing-hero>header,.dashboard-briefing-hero>header>div{align-items:flex-start;flex-direction:column}.dashboard-plan-link{width:100%;justify-content:center}.dashboard-now-strip,.briefing-progress dl{grid-template-columns:1fr}.briefing-net-worth-chart{min-height:0}.briefing-net-worth-grid text,.briefing-net-worth-x-label{font-size:23px}.briefing-net-worth-goal line,.briefing-net-worth-goal text{display:none}.briefing-net-worth-goal-list{display:grid;grid-template-columns:1fr}.briefing-net-worth-goal-list li+li{border-top:1px solid var(--line)}.dashboard-now-strip>div+div{border-top:1px solid color-mix(in srgb,var(--briefing-foreground) 10%,transparent);border-left:0}.briefing-progress dl>div+div{border-top:1px solid var(--line);border-left:0}.briefing-fi-destination{grid-template-columns:auto minmax(30px,1fr) auto}.briefing-fi-destination>span:last-child{grid-column:1 / -1}}@media(prefers-reduced-motion:reduce){.dashboard-plan-link,.briefing-savings-chart rect,.goal-horizon-marker{transition:none}}.dashboard-scan{display:grid;width:min(100%,1040px);min-height:calc(100dvh - 64px);min-width:0;align-content:center;margin:0 auto;padding:32px 16px}.dashboard-scan-greeting{display:grid;justify-items:center;padding:10px 0 9px;text-align:center;transform-origin:50% 50%;transition:transform .7s cubic-bezier(.22,1,.36,1)}.app-content .dashboard-scan-greeting h1{margin:0;color:var(--text-muted);font-family:var(--moolah-font-body);font-size:14px;font-weight:400;letter-spacing:0;line-height:1.4}.dashboard-scan-greeting h1 span{display:inline-block;min-height:1.4em}.dashboard-scan.is-arrival-typing .dashboard-scan-greeting{transform:translate3d(0,var(--dashboard-arrival-offset-y, 0),0) scale(1.12);transition:none;will-change:transform}.dashboard-scan.is-arrival-settling .dashboard-scan-greeting{will-change:transform}.dashboard-scan.is-arrival-typing .dashboard-scan-greeting h1 span:after{display:inline-block;width:1px;height:1em;margin-left:3px;background:currentColor;content:"";vertical-align:-.12em;animation:dashboard-scan-type-caret .7s steps(1,end) infinite}.dashboard-scan-status,.dashboard-scan-plan-action,.dashboard-scan-trajectory{transition:opacity .52s ease,transform .62s cubic-bezier(.2,.8,.2,1)}.dashboard-scan.is-arrival-typing .dashboard-scan-status,.dashboard-scan.is-arrival-typing .dashboard-scan-plan-action,.dashboard-scan.is-arrival-typing .dashboard-scan-trajectory,.dashboard-scan.is-arrival-settling .dashboard-scan-status,.dashboard-scan.is-arrival-settling .dashboard-scan-plan-action,.dashboard-scan.is-arrival-settling .dashboard-scan-trajectory{opacity:0;transform:translateY(18px);pointer-events:none}.dashboard-scan.is-arrival-revealing .dashboard-scan-status,.dashboard-scan.is-arrival-revealing .dashboard-scan-plan-action,.dashboard-scan.is-arrival-revealing .dashboard-scan-trajectory{will-change:opacity,transform}.dashboard-scan.is-arrival-revealing .dashboard-scan-status{transition-delay:0ms}.dashboard-scan.is-arrival-revealing .dashboard-scan-plan-action{transition-delay:70ms}.dashboard-scan.is-arrival-revealing .dashboard-scan-trajectory{transition-delay:.14s}@keyframes dashboard-scan-type-caret{0%,52%{opacity:1}53%,to{opacity:0}}.dashboard-scan-status{display:grid;width:min(100%,760px);justify-self:center;justify-items:center;gap:8px;text-align:center}.app-content .dashboard-scan-status h2{max-width:540px;margin:2px 0 0;color:var(--text);font-family:var(--moolah-font-display);font-size:clamp(24px,3.4vw,34px);font-weight:500;letter-spacing:-.03em;line-height:1.18;overflow:visible;text-wrap:balance}.dashboard-scan-gradient-insight{animation:dashboard-scan-gradient-wave 8s linear infinite;-webkit-background-clip:text;background-clip:text;background-image:linear-gradient(45deg,var(--moolah-color-milestone),#f2a18c,var(--moolah-color-accent),#cbd2ff,var(--moolah-color-milestone));background-position:100% 50%;background-size:400% 100%;color:transparent;display:inline-block;filter:drop-shadow(0 0 2px rgb(184 192 238 / 8%));padding-block:.06em;margin-block:-.06em;white-space:nowrap;will-change:background-position}@keyframes dashboard-scan-gradient-wave{0%{background-position:100% 50%}to{background-position:-300% 50%}}.dashboard-scan-status>p{max-width:570px;margin:0;color:var(--text-muted);font-size:13px;font-weight:300;line-height:1.5;text-wrap:balance}.dashboard-scan-plan-action{display:flex;width:min(100%,280px);min-height:46px;align-items:center;justify-content:space-between;gap:12px;margin:24px auto 0;padding:3px 12px;border:.5px solid var(--widget-shell-border);border-radius:var(--moolah-radius-control);background:var(--widget-shell-fill);text-align:left}.dashboard-scan-plan-action p{display:flex;min-width:0;align-items:center;gap:8px;margin:0}.dashboard-scan-plan-action p span{display:inline-flex;min-height:20px;align-items:center;padding:0 7px;border:.5px solid color-mix(in srgb,var(--income) 34%,transparent);border-radius:999px;background:var(--income-soft);color:var(--income);font-size:8px;line-height:1;white-space:nowrap}.dashboard-scan-plan-action p strong{min-width:0;overflow:hidden;color:var(--text-muted);font-family:var(--moolah-type-section-title-family);font-size:13px;font-weight:400;text-overflow:ellipsis;white-space:nowrap}.dashboard-scan-plan-action>a,.dashboard-scan-close>a{display:inline-flex;min-height:44px;align-items:center;gap:6px;padding:0 6px;color:var(--accent);font-size:11px;font-weight:var(--moolah-type-label-weight);text-decoration:none}.dashboard-scan-plan-action>a{width:36px;min-height:36px;justify-content:center;padding:0}.dashboard-scan-plan-action>a:hover,.dashboard-scan-close>a:hover{text-decoration:underline;text-underline-offset:4px}.dashboard-scan-plan-action>a:focus-visible,.dashboard-scan-close>a:focus-visible{border-radius:var(--moolah-radius-control);outline:2px solid var(--focus-ring);outline-offset:3px}.dashboard-scan-chapter,.dashboard-scan-close{margin-top:72px;padding-top:54px;border-top:1px solid var(--line)}.dashboard-scan-trajectory .briefing-net-worth{--trajectory-tone: var(--moolah-color-accent);gap:8px}.dashboard-scan-trajectory .briefing-net-worth-chart{aspect-ratio:860 / 336}.dashboard-scan-trajectory .briefing-net-worth-chart-kpis dd{color:var(--positive)}.dashboard-scan-trajectory .briefing-net-worth-goal tspan.emoji{font-size:22px}.dashboard-scan-trajectory .briefing-net-worth-goal tspan.name{font-size:12px}.dashboard-scan-trajectory .briefing-net-worth-goal tspan.date{font-size:8.5px}.dashboard-scan-trajectory{margin-top:68px;padding-top:0;border-top:0;translate:0 18px}.dashboard-scan-trajectory .briefing-net-worth>header{align-items:center;flex-direction:column;text-align:center}.dashboard-scan-trajectory .briefing-net-worth h3{font-size:clamp(23px,4vw,30px);letter-spacing:-.025em}.dashboard-scan-trajectory .briefing-net-worth>header>div>p:last-child{margin-top:6px;font-size:11px}.dashboard-scan-trajectory .briefing-net-worth>header dl{width:min(100%,560px);grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:10px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.dashboard-scan-trajectory .briefing-net-worth>header dl>div{padding:13px 10px}.dashboard-scan-trajectory .briefing-net-worth>header dl>div+div{border-left:1px solid var(--line)}.dashboard-scan-trajectory .briefing-net-worth>header dd{font-size:14px}.dashboard-scan-trajectory .briefing-net-worth>footer{align-items:center;flex-direction:column}.dashboard-scan-trajectory .briefing-net-worth>footer>p{max-width:430px;text-align:center}.dashboard-scan-saving{width:min(100%,680px);justify-self:center}.dashboard-scan-saving .briefing-momentum{grid-template-rows:auto 180px auto auto;padding:0}.dashboard-scan-saving .briefing-momentum>header{align-items:flex-end}.dashboard-scan-saving .briefing-momentum h3{font-size:21px;letter-spacing:-.025em}.dashboard-scan-saving .briefing-savings-result{justify-content:center;font-size:11px}.dashboard-scan-saving .briefing-savings-result strong{font-size:24px}.dashboard-scan-close{display:grid;justify-items:center;gap:5px;text-align:center}.dashboard-scan-close p{margin:0;color:var(--text-muted);font-size:10px}.dashboard-scan-close strong{max-width:520px;color:var(--text);font-family:var(--moolah-type-section-title-family);font-size:18px;font-weight:var(--moolah-type-section-title-weight)}@media(max-width:780px){.dashboard-scan{min-height:calc(100dvh - 64px);align-content:start;padding:34px 18px 48px}.dashboard-scan-greeting{padding-bottom:8px}.dashboard-scan-plan-action{align-items:center;flex-direction:row;gap:8px;text-align:left}.dashboard-scan-plan-action p{min-width:0;justify-items:start}.dashboard-scan-chapter,.dashboard-scan-close{margin-top:52px;padding-top:42px}.dashboard-scan-trajectory{margin-top:38px;padding-top:0;translate:none}.briefing-net-worth-chart-kpis>.current{top:-18px;width:118px;padding:7px 9px}.briefing-net-worth-chart-kpis dd{font-size:14px}.briefing-net-worth-chart-kpis small{font-size:7px}.briefing-net-worth-timeline{min-height:52px}.briefing-net-worth-timeline dd{width:72px;font-size:12px;overflow:visible}.briefing-net-worth-timeline dt{width:72px;overflow:visible;font-size:9px;white-space:nowrap}.dashboard-scan-trajectory .briefing-net-worth-goal-list a{min-height:44px}.dashboard-scan-trajectory .briefing-net-worth-goal-list span{font-size:12px}.dashboard-scan-saving .briefing-momentum{grid-template-rows:auto 132px auto auto}.dashboard-scan-saving .briefing-momentum>header{align-items:flex-start;flex-direction:column}}@media(max-height:760px)and (min-width:781px){.dashboard-scan-trajectory{translate:none}.dashboard-scan-trajectory .briefing-net-worth-chart{aspect-ratio:860 / 300}}@media(forced-colors:active){.dashboard-scan-gradient-insight{background:none;color:CanvasText;filter:none}}@media(prefers-reduced-motion:reduce){.dashboard-scan-greeting,.dashboard-scan-status,.dashboard-scan-plan-action,.dashboard-scan-trajectory{transition:none}.dashboard-scan.is-arrival-typing .dashboard-scan-greeting,.dashboard-scan.is-arrival-settling .dashboard-scan-greeting,.dashboard-scan.is-arrival-typing .dashboard-scan-status,.dashboard-scan.is-arrival-typing .dashboard-scan-plan-action,.dashboard-scan.is-arrival-typing .dashboard-scan-trajectory,.dashboard-scan.is-arrival-settling .dashboard-scan-status,.dashboard-scan.is-arrival-settling .dashboard-scan-plan-action,.dashboard-scan.is-arrival-settling .dashboard-scan-trajectory{opacity:1;transform:none}.dashboard-scan.is-arrival-typing .dashboard-scan-greeting h1 span:after{display:none}.dashboard-scan-gradient-insight{animation:none;background-position:50% 50%}}.moolah-panel{min-width:0;padding:var(--moolah-space-xl);border:.5px solid var(--display-shell-border);border-radius:var(--moolah-radius-panel);background:var(--display-shell-fill)}.moolah-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--moolah-space-lg)}.moolah-section-header h2{margin:3px 0 0;font-family:var(--moolah-type-section-title-family);font-size:18px;font-weight:var(--moolah-type-section-title-weight);letter-spacing:0;line-height:1.25}.moolah-section-header p{max-width:64ch;margin:6px 0 0;color:var(--text-muted);font-size:14px;font-weight:var(--moolah-type-secondary-weight);line-height:1.5}.moolah-eyebrow{font-family:var(--moolah-type-label-family);color:var(--text-muted);font-size:11px;font-weight:var(--moolah-type-label-weight);letter-spacing:0;text-transform:uppercase}.moolah-section-action{flex:0 0 auto}.moolah-metric{display:grid;min-width:0;gap:3px}.moolah-metric>span,.moolah-metric>small{color:var(--text-muted);font-family:var(--moolah-type-secondary-family);font-size:12px;font-weight:var(--moolah-type-secondary-weight)}.moolah-metric>strong{overflow-wrap:anywhere;font-family:var(--moolah-type-metric-family);font-size:22px;font-weight:var(--moolah-type-metric-weight);letter-spacing:0;line-height:1.15}.moolah-metric.tone-positive>strong,.moolah-metric.tone-positive>small{color:var(--positive)}.moolah-metric.tone-warning>strong,.moolah-metric.tone-warning>small{color:var(--warning)}.moolah-metric.tone-negative>strong,.moolah-metric.tone-negative>small{color:var(--negative)}.moolah-metric.tone-info>strong,.moolah-metric.tone-info>small{color:var(--accent)}.moolah-status-badge{display:inline-flex;width:fit-content;min-height:24px;align-items:center;padding:3px 8px;border:1px solid var(--line);border-radius:var(--moolah-radius-pill);background:var(--surface-muted);color:var(--text-muted);font-size:11px;font-family:var(--moolah-type-label-family);font-weight:var(--moolah-type-label-weight)}.moolah-status-badge.tone-positive{border-color:color-mix(in srgb,var(--positive) 36%,var(--line));background:var(--positive-soft);color:var(--positive)}.moolah-status-badge.tone-warning{border-color:color-mix(in srgb,var(--warning) 36%,var(--line));background:var(--warning-soft);color:var(--warning)}.moolah-status-badge.tone-negative{border-color:color-mix(in srgb,var(--negative) 36%,var(--line));background:var(--negative-soft);color:var(--negative)}.moolah-status-badge.tone-info{border-color:color-mix(in srgb,var(--accent) 36%,var(--line));background:var(--accent-soft);color:var(--accent)}.moolah-callout{display:flex;gap:var(--moolah-space-md);padding:var(--moolah-space-lg);border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));border-radius:var(--moolah-radius-panel);background:var(--accent-soft)}.moolah-callout-icon{display:grid;width:32px;height:32px;flex:0 0 32px;place-items:center;border-radius:50%;background:var(--surface-raised);color:var(--accent)}.moolah-callout strong{display:block;margin-bottom:3px;font-size:14px;font-weight:var(--moolah-type-section-title-weight)}.moolah-callout p{margin:0;color:var(--text-muted);font-size:13px;font-weight:var(--moolah-type-secondary-weight);line-height:1.45}.moolah-callout.tone-positive{border-color:color-mix(in srgb,var(--positive) 28%,var(--line));background:var(--positive-soft)}.moolah-callout.tone-positive .moolah-callout-icon{color:var(--positive)}.moolah-callout.tone-warning{border-color:color-mix(in srgb,var(--warning) 28%,var(--line));background:var(--warning-soft)}.moolah-callout.tone-warning .moolah-callout-icon{color:var(--warning)}.moolah-callout.tone-negative{border-color:color-mix(in srgb,var(--negative) 28%,var(--line));background:var(--negative-soft)}.moolah-callout.tone-negative .moolah-callout-icon{color:var(--negative)}.moolah-segmented{display:inline-flex;gap:2px;padding:3px;border:1px solid var(--clickable-shell-border);border-radius:var(--moolah-radius-control);background:var(--clickable-shell-fill)}.moolah-segmented button{min-height:34px;padding:0 12px;border:0;border-radius:calc(var(--moolah-radius-control) - 2px);background:transparent;color:var(--text-muted);font-family:var(--moolah-type-label-family);font-weight:var(--moolah-type-label-weight)}.moolah-segmented button.selected{background:var(--clickable-shell-selected-fill);box-shadow:inset 0 0 0 1px var(--clickable-shell-selected-border);color:var(--accent)}.moolah-segmented button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.ds-page{width:min(1240px,100%);margin:0 auto;padding-bottom:var(--moolah-space-section)}.ds-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--moolah-space-xl);padding:var(--moolah-space-sm) 0 var(--moolah-space-xxl);border-bottom:1px solid var(--line)}.ds-page-header h1{margin:4px 0 5px;font-family:var(--moolah-type-page-title-family);font-size:28px;font-weight:var(--moolah-type-page-title-weight);letter-spacing:0;line-height:1.2}.ds-page-header p{margin:0;color:var(--text-muted);font-size:14px;font-weight:var(--moolah-type-secondary-weight)}.ds-band{display:grid;gap:var(--moolah-space-xl);padding:var(--moolah-space-xxxl) 0;border-bottom:1px solid var(--line)}.ds-system-flow{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:var(--moolah-space-sm)}.ds-system-flow>div{display:grid;min-height:74px;grid-template-columns:28px minmax(0,1fr);align-content:center;gap:2px 10px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--moolah-radius-control);background:var(--surface-muted)}.ds-system-flow>div>span{display:grid;width:28px;height:28px;grid-row:1 / span 2;place-items:center;border-radius:50%;background:var(--surface-raised);color:var(--accent);font-size:12px;font-weight:var(--moolah-type-label-weight)}.ds-system-flow strong{align-self:end;font-size:13px;font-weight:var(--moolah-type-section-title-weight)}.ds-system-flow small{align-self:start;color:var(--text-muted);font-weight:var(--moolah-type-secondary-weight)}.ds-system-flow>svg{color:var(--text-muted)}.ds-anatomy-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);align-items:stretch;gap:var(--moolah-space-lg)}.ds-anatomy-panel{display:grid;align-content:start;gap:var(--moolah-space-lg);transition:padding var(--moolah-motion-fast) ease}.ds-specimen-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--moolah-space-lg)}.ds-specimen-header h3{margin:4px 0 2px;font-family:var(--moolah-type-section-title-family);font-size:18px;font-weight:var(--moolah-type-section-title-weight);letter-spacing:0}.ds-specimen-header p{margin:0;color:var(--text-muted);font-size:13px;font-weight:var(--moolah-type-secondary-weight)}.ds-specimen-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--moolah-space-lg);padding:var(--moolah-space-lg) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.ds-specimen-rows{overflow:hidden;border-radius:var(--moolah-radius-control);background:var(--surface-muted)}.ds-specimen-rows .ds-list-row{min-height:54px;transition:min-height var(--moolah-motion-fast) ease,padding var(--moolah-motion-fast) ease}.ds-anatomy-layout.density-touch .ds-anatomy-panel{padding:var(--moolah-space-xxl)}.ds-anatomy-layout.density-touch .ds-icon-button{width:44px;min-height:44px;flex-basis:44px}.ds-anatomy-layout.density-touch .ds-specimen-rows .ds-list-row{min-height:68px;padding:12px 14px}.ds-anatomy-key{display:grid;margin:0;padding:0;border-top:1px solid var(--line);list-style:none}.ds-anatomy-key li{display:grid;grid-template-columns:26px minmax(0,1fr);align-items:start;gap:var(--moolah-space-sm);padding:13px 0;border-bottom:1px solid var(--line)}.ds-anatomy-key li>span{display:grid;width:24px;height:24px;place-items:center;border:1px solid color-mix(in srgb,var(--accent) 38%,var(--line));border-radius:50%;background:var(--accent-soft);color:var(--accent);font-size:11px;font-weight:var(--moolah-type-label-weight)}.ds-anatomy-key li>div{display:grid;gap:3px}.ds-anatomy-key strong{font-size:13px;font-weight:var(--moolah-type-section-title-weight)}.ds-anatomy-key small{color:var(--text-muted);font-weight:var(--moolah-type-secondary-weight);line-height:1.4}.ds-type-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:var(--moolah-space-lg)}.ds-type-grid>div{padding-left:var(--moolah-space-lg);border-left:2px solid var(--line)}.ds-type-grid span{display:block;margin-bottom:8px;color:var(--text-muted);font-size:11px;font-weight:var(--moolah-type-label-weight);text-transform:uppercase}.ds-type-grid strong{font-family:var(--moolah-type-page-title-family);font-size:24px;font-weight:var(--moolah-type-page-title-weight);letter-spacing:0}.ds-type-grid b{font-family:var(--moolah-type-section-title-family);font-size:18px;font-weight:var(--moolah-type-section-title-weight)}.ds-type-grid p{margin:0;font-family:var(--moolah-type-secondary-family);font-size:16px;font-weight:var(--moolah-type-secondary-weight)}.ds-swatches{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr));gap:var(--moolah-space-sm)}.ds-swatch{display:grid;min-width:0;grid-template-columns:28px minmax(0,1fr);gap:2px 9px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:var(--moolah-radius-panel);background:var(--surface)}.ds-swatch>span{width:28px;height:28px;grid-row:1 / span 2;border:1px solid var(--line);border-radius:5px}.ds-swatch strong,.ds-swatch small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-swatch strong{font-size:12px;font-weight:var(--moolah-type-label-weight)}.ds-swatch small{color:var(--text-muted);font-size:10px;font-weight:var(--moolah-type-secondary-weight)}.ds-radius-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--moolah-space-sm)}.ds-radius-specimen{display:grid;min-width:0;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:var(--moolah-space-md);padding:9px;border:1px solid var(--line);border-radius:var(--moolah-radius-panel);background:var(--surface)}.ds-radius-specimen>span{width:48px;height:38px;border:1px solid color-mix(in srgb,var(--accent) 40%,var(--line));background:var(--accent-soft)}.ds-radius-specimen>div{display:grid;min-width:0;gap:2px}.ds-radius-specimen strong{font-size:12px;font-weight:var(--moolah-type-label-weight)}.ds-radius-specimen small{overflow:hidden;color:var(--text-muted);font-size:10px;font-weight:var(--moolah-type-secondary-weight);text-overflow:ellipsis;white-space:nowrap}.ds-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--moolah-space-md)}.ds-status-row,.ds-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--moolah-space-sm)}.ds-control-grid{display:grid;grid-template-columns:minmax(260px,380px) minmax(0,1fr);gap:var(--moolah-space-xl);align-items:end}.ds-field-stack{display:grid;gap:7px}.ds-field-stack>label{font-size:12px;font-weight:var(--moolah-type-label-weight)}.ds-money-input{display:grid;grid-template-columns:auto minmax(0,1fr) auto;min-height:40px;align-items:center;gap:6px;padding:0 11px;border:1px solid var(--line);border-radius:var(--moolah-radius-control);background:var(--surface)}.ds-money-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 var(--moolah-input-focus-width) var(--accent-soft)}.ds-money-input>span,.ds-money-input>small{color:var(--text-muted);font-weight:var(--moolah-type-secondary-weight)}.ds-money-input input{min-width:0;border:0;outline:0;background:transparent;color:var(--text);font-weight:var(--moolah-type-metric-weight)}.ds-primary-button,.ds-secondary-button,.ds-icon-button{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:7px;border:1px solid transparent;border-radius:var(--moolah-radius-control);font-weight:var(--moolah-type-label-weight)}.ds-primary-button,.ds-secondary-button{padding:0 13px}.ds-primary-button{background:var(--accent);color:var(--selected-text)}.ds-secondary-button,.ds-icon-button{border-color:var(--line);background:var(--surface);color:var(--text)}.ds-icon-button{width:38px;flex:0 0 38px;padding:0}.ds-primary-button:focus-visible,.ds-secondary-button:focus-visible,.ds-icon-button:focus-visible,.ds-list-row:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ds-list{overflow:hidden;border:1px solid var(--line);border-radius:var(--moolah-radius-panel);background:var(--surface)}.ds-list-row{display:grid;width:100%;min-height:58px;grid-template-columns:32px minmax(0,1fr) auto 18px;align-items:center;gap:var(--moolah-space-md);padding:8px 12px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left}.ds-list-row:last-child{border-bottom:0}.ds-list-row:hover{background:var(--surface-muted)}.ds-list-row>span:nth-child(2){display:grid;gap:2px}.ds-list-row small{color:var(--text-muted);font-weight:var(--moolah-type-secondary-weight)}.ds-list-icon{display:grid;width:32px;height:32px;place-items:center;border-radius:50%;background:var(--surface-muted)}.ds-list-icon.positive{background:var(--positive-soft);color:var(--positive)}.ds-list-icon.warning{background:var(--warning-soft);color:var(--warning)}.ds-callout-grid,.ds-state-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--moolah-space-md)}.ds-state-group{display:grid;min-width:0;align-content:start;gap:var(--moolah-space-lg);padding:var(--moolah-space-lg);border:1px solid var(--line);border-radius:var(--moolah-radius-panel);background:var(--surface)}.ds-state-group>header{display:grid;gap:3px;padding-bottom:var(--moolah-space-md);border-bottom:1px solid var(--line)}.ds-state-group>header strong{font-size:14px;font-weight:var(--moolah-type-section-title-weight)}.ds-state-group>header small,.ds-state-specimens span,.ds-field-states label>span{color:var(--text-muted);font-size:11px;font-weight:var(--moolah-type-secondary-weight)}.ds-state-specimens{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--moolah-space-md)}.ds-state-specimens>div{display:grid;min-width:0;gap:7px}.ds-state-specimens button{width:100%}.ds-primary-button.is-focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:2px solid var(--accent);outline-offset:2px}.ds-money-input.is-focus{border-color:var(--accent);box-shadow:0 0 0 var(--moolah-input-focus-width) var(--accent-soft);outline:var(--moolah-input-focus-width) solid var(--accent);outline-offset:0}.ds-primary-button:disabled{opacity:.45}.ds-spinner{animation:ds-spin .9s linear infinite}.ds-field-states{display:grid;gap:var(--moolah-space-md)}.ds-field-states label{display:grid;gap:7px}.ds-money-input.is-error{border-color:var(--negative);box-shadow:0 0 0 3px var(--negative-soft)}.ds-money-input.is-readonly{background:var(--surface-muted)}.ds-money-input.is-readonly input,.ds-money-input.is-readonly small{color:var(--text-muted)}.ds-field-error{color:var(--negative);font-size:11px;font-weight:var(--moolah-type-secondary-weight)}.ds-feedback-states{display:grid}.ds-feedback-states>div{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:var(--moolah-space-sm);padding:10px 0;border-bottom:1px solid var(--line);color:var(--accent)}.ds-feedback-states>div:first-child{padding-top:0}.ds-feedback-states>div:last-child{padding-bottom:0;border-bottom:0}.ds-feedback-states>div.is-negative{color:var(--negative)}.ds-feedback-states>div.is-positive{color:var(--positive)}.ds-feedback-states span{display:grid;gap:2px;color:var(--text)}.ds-feedback-states strong{font-size:12px;font-weight:var(--moolah-type-section-title-weight)}.ds-feedback-states small{color:var(--text-muted);font-weight:var(--moolah-type-secondary-weight);line-height:1.35}.ds-platform-table{overflow:hidden;border:1px solid var(--line);border-radius:var(--moolah-radius-panel);background:var(--surface)}.ds-platform-row{display:grid;grid-template-columns:minmax(150px,.75fr) repeat(3,minmax(180px,1fr));border-bottom:1px solid var(--line)}.ds-platform-row:last-child{border-bottom:0}.ds-platform-row>*{min-width:0;padding:13px 14px;border-right:1px solid var(--line);font-size:12px;line-height:1.45}.ds-platform-row>*:last-child{border-right:0}.ds-platform-row>strong{font-weight:var(--moolah-type-section-title-weight)}.ds-platform-row>span{color:var(--text-muted);font-weight:var(--moolah-type-secondary-weight)}.ds-platform-heading{background:var(--surface-muted)}.ds-platform-heading>span{display:flex;align-items:center;gap:6px;color:var(--text);font-size:11px;font-weight:var(--moolah-type-label-weight);text-transform:uppercase}.ds-platform-rule{display:flex;align-items:flex-start;gap:var(--moolah-space-sm);color:var(--accent)}.ds-platform-rule p{margin:0;color:var(--text-muted);font-size:12px;font-weight:var(--moolah-type-secondary-weight);line-height:1.45}.ds-platform-rule strong{color:var(--text);font-weight:var(--moolah-type-section-title-weight)}@keyframes ds-spin{to{transform:rotate(360deg)}}@media(max-width:980px){.ds-type-grid{grid-template-columns:1fr}.ds-swatches,.ds-metric-grid,.ds-radius-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ds-callout-grid,.ds-anatomy-layout,.ds-state-grid{grid-template-columns:1fr}.ds-platform-table{overflow-x:auto}.ds-platform-row{min-width:880px}}@media(max-width:680px){.ds-page-header,.moolah-section-header{align-items:flex-start;flex-direction:column}.ds-type-grid,.ds-swatches,.ds-metric-grid,.ds-radius-grid,.ds-control-grid,.ds-system-flow{grid-template-columns:1fr}.ds-system-flow>svg{justify-self:center;transform:rotate(90deg)}.ds-state-specimens{grid-template-columns:1fr}.moolah-section-action,.moolah-segmented{width:100%}.moolah-segmented button{flex:1}}@media(prefers-reduced-motion:reduce){.ds-page *,.ds-page *:before,.ds-page *:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}body{--moolah-input-focus-width: 1px;--moolah-placeholder-opacity: .56;font-family:var(--moolah-type-body-family);font-weight:var(--moolah-type-body-weight);letter-spacing:0}strong,b{font-weight:var(--moolah-type-label-weight)}.auth-canvas{background:var(--auth-background, var(--moolah-blue-lavender-dark, #b8c0ee))}button,input,select,textarea{font-family:var(--moolah-type-body-family);letter-spacing:0}input::placeholder,textarea::placeholder{opacity:var(--moolah-placeholder-opacity)}button{font-weight:var(--moolah-type-label-weight)}.app-content h1,.auth-canvas h1,.session-restoring h1{font-family:var(--moolah-type-page-title-family);font-weight:var(--moolah-type-page-title-weight);letter-spacing:0}.app-content h2,.app-content h3,.app-content h4,.auth-canvas h2,.auth-canvas h3{font-family:var(--moolah-type-section-title-family);font-weight:var(--moolah-type-section-title-weight);letter-spacing:0}.app-content p,.app-content small,.auth-canvas p,.auth-canvas small,.session-restoring p{font-family:var(--moolah-type-secondary-family);font-weight:var(--moolah-type-secondary-weight);letter-spacing:0}.auth-canvas .auth-description{font-size:14px;font-weight:var(--moolah-type-body-weight)}.page-header h1,.goals-page-header h1,.goal-detail-header h1,.cs7-heading h1{margin-bottom:4px;font-size:30px;line-height:1.15}.page-description,.surface-header p,.cs7-heading>p,.cs7-workspace-heading p,.fi-gate-explorer>header p,.life-map-callout p,.goal-summary-panel p{color:var(--text-muted);font-family:var(--moolah-type-secondary-family);font-weight:var(--moolah-type-secondary-weight);letter-spacing:0}.eyebrow,.plan-section-label,.cs7-eyebrow,.retirement-eyebrow,.moolah-eyebrow,.goal-create-panel>header span{font-family:var(--moolah-type-label-family);font-weight:var(--moolah-type-label-weight);letter-spacing:0}.animated-money,[data-animated-money=true],.tracking-metric-heading>strong,.cashflow-summary-card>strong,.flutter-metric-card>strong,.plan-net-worth header strong,.goal-card-percent,.goal-card-metric-value,.goal-card-monthly-value,.goal-metric>strong,.plan-summary-strip>article>strong,.cs7-hero-copy>strong,.cs7-summary-metric strong,.cs7-group-card header strong,.cs7-category-values,.cs7-reconciliation-card dd,.cs7-transaction-row>strong,.cs7-panel-summary>span:last-child,.cs7-rule-row>div:last-child>strong,.cs7-mini-transactions strong:last-child,.cs7-transaction-amount>strong{font-family:var(--moolah-type-metric-family);font-weight:var(--moolah-type-metric-weight);font-variant-numeric:tabular-nums;letter-spacing:0}.primary-button,.secondary-button,.text-button,.icon-button,.month-field input,.modelling-scenario-select select,.cs7-period-stepper,.cs7-segmented,.cs7-search,.cs7-field input,.cs7-field select,.cs7-money-input,.goal-field-group,.goal-notes-field,.goal-icon-picker>summary{border-radius:var(--moolah-radius-control)}.primary-button,.secondary-button,.text-button,.icon-button{font-weight:var(--moolah-type-label-weight)}.primary-button{background:var(--accent);color:var(--selected-text)}.primary-button:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 86%,var(--text))}.secondary-button,.icon-button{border-color:var(--clickable-shell-border);background:var(--clickable-shell-fill)}.secondary-button:hover:not(:disabled),.icon-button:hover:not(:disabled){border-color:var(--clickable-shell-border);background:var(--clickable-shell-hover-fill);color:var(--text)}.surface,.modelling-gate,.modelling-section,.fi-gate-selector>button,.gate-meaning-panel,.life-map-callout,.retirement-chart-panel,.retirement-gate-journey,.retirement-milestones,.goals-list-card,.goal-summary-panel,.goal-detail-chart-shell,.goal-funding-plan,.goal-metric,.goal-progress-card,.goal-contribution-card,.goal-transactions-panel,.goal-detail-editor,.cs7-period-bar,.cs7-trend-card,.cs7-category-section,.cs7-attention-card,.cs7-reconciliation-card,.cs7-workspace-card,.cs7-group-card,.cs7-category-tile{border-radius:var(--moolah-radius-panel)}.plan-chart-shell,.plan-goal-switcher,.plan-month-tracking,.plan-net-worth,.goals-chart-shell,.goal-create-panel,.goal-visual-preview,.cs7-hero-card{border-radius:var(--moolah-radius-prominent)}.moolah-panel,.moolah-data-surface,.surface,.cashflow-summary-card,.flutter-metric-card,.flutter-panel,.plan-chart-shell,.plan-explorer-viewport .plan-month-tracking,.plan-explorer-viewport .plan-goal-switcher,.plan-explorer-viewport .plan-net-worth,.goals-chart-shell,.goal-detail-chart-shell,.goal-funding-plan,.goal-metric,.goal-progress-card,.goal-contribution-card,.goal-transactions-panel,.cs7-period-bar,.cs7-view-switch,.cs7-trend-card,.cs7-category-section,.cs7-reconciliation-card,.cs7-workspace-card,.modelling-gate,.modelling-state,.gate-meaning-panel,.retirement-chart-panel,.retirement-milestones{border-width:.5px;border-color:var(--display-shell-border);background:var(--display-shell-fill);box-shadow:none}.cs7-hero-card{border-color:var(--display-shell-border);background:radial-gradient(circle at 12% 0%,var(--accent-soft),transparent 38%),var(--display-shell-fill)}.secondary-button,.icon-button,.cashflow-year-stepper,.cashflow-comparison-selector summary,.cashflow-header-month,.cashflow-view-toggle,.cashflow-plan-button,.cs7-period-stepper,.cs7-segmented,.cs7-search,.cs7-filter-row button,.cs7-category-tile,.modelling-scenario-select select,.modelling-year-controls,.modelling-view-switch,.secondary-command,.fi-gate-selector>button,.chart-life-event-add,.chart-strategy-toggle,.chart-compare-select,.chart-zoom-controls,.retirement-metric-switch,.retirement-year-controls>button,.plan-savings-toggle,.plan-range-control>button,.goals-round-button,.goals-ai-button,.goals-list-toggle,.goals-list-card,.goal-card-reorder button,.goal-icon-picker,.goal-icon-options button,.moolah-ai-starters button,.moolah-ai-markdown-collapse{border-color:var(--clickable-shell-border);background:var(--clickable-shell-fill)}.cashflow-year-stepper button:hover,.cashflow-comparison-selector summary:hover,.cashflow-plan-button:hover,.cs7-period-stepper button:hover,.cs7-filter-row button:hover,.cs7-category-tile:hover,.cs7-manager-row:hover,.cs7-transaction-row:hover,.modelling-year-controls button:hover:not(:disabled),.secondary-command:hover:not(:disabled),.fi-gate-selector>button:hover:not([aria-pressed=true]),.chart-life-event-add:hover,.chart-strategy-toggle:hover,.chart-compare-select:hover,.chart-zoom-controls button:hover:not(:disabled),.retirement-year-controls>button:hover:not(:disabled),.plan-range-control>button:hover:not(:disabled),.goals-round-button:hover:not(:disabled),.goals-ai-button:hover,.goals-list-card:hover,.goal-card-reorder button:hover:not(:disabled),.goal-icon-options button:hover:not(:disabled),.moolah-ai-starters button:hover:not(:disabled),.moolah-ai-markdown-collapse summary:hover{border-color:var(--clickable-shell-border);background:var(--clickable-shell-hover-fill);color:var(--text)}.moolah-segmented button.selected,.cs7-segmented button.selected,.cs7-view-switch button.selected,.modelling-view-switch button.active,.retirement-metric-switch button[aria-pressed=true],.plan-savings-toggle button[aria-pressed=true],.goal-icon-options button[aria-pressed=true],.goals-round-button.active,.goals-round-button[aria-pressed=true],.cashflow-comparison-menu button.selected,.cashflow-plan-button.selected,.chart-strategy-toggle[aria-expanded=true]{border-color:var(--clickable-shell-selected-border);background:var(--clickable-shell-selected-fill);box-shadow:none;color:var(--accent)}.cashflow-view-toggle:before,.goals-list-toggle:before{background:var(--clickable-shell-selected-fill);box-shadow:inset 0 0 0 1px var(--clickable-shell-selected-border)}.cashflow-view-toggle button.selected,.goals-list-toggle button[aria-pressed=true]{color:var(--accent)}.modelling-gate.reached{border-color:color-mix(in srgb,var(--positive) 38%,var(--display-shell-border))}.navigation-item,.sidebar-brand .brand-mark-compact,.sidebar-avatar,.account-avatar,.navigation-icon,.brand-mark-compact,.goals-round-button,.goals-ai-button,.goal-card-icon,.goal-card-reorder button,.goal-summary-panel>button,.goal-summary-button,.retirement-metric-switch,.life-map-mode-switch,.modelling-view-switch,.modelling-command-actions button,.modelling-view-switch button{border-radius:var(--moolah-radius-control)}.cs7-heading h1{font-family:var(--moolah-type-page-title-family);font-size:30px;font-weight:var(--moolah-type-page-title-weight)}.cs7-hero-copy>strong{font-size:40px}.monthly-review h2{font-size:26px}.auth-panel h1{font-size:32px}.phone-country-menu{border-radius:var(--moolah-radius-panel)}.phone-country-option{border-radius:var(--moolah-radius-control)}.tracking-metric-heading>strong,.cashflow-summary-card>strong{font-size:34px}.flutter-metric-card>strong{font-size:40px}.plan-focus-title-row h3,.plan-net-worth header strong{font-size:30px}.goal-metric>strong{font-size:20px}.plan-summary-strip>article>strong{font-size:21px}@media(max-width:760px){.page-header h1,.goals-page-header h1,.goal-detail-header h1,.cs7-heading h1{font-size:28px}}@media(prefers-reduced-motion:reduce){.app-shell *,.auth-canvas *{scroll-behavior:auto!important;transition-duration:.01ms!important}}
