@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.fixed{position:fixed}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.min-h-screen{min-height:100vh}.flex-shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--text:#4d5563;--ink:#7386a8;--cream:#faf6f4;--gold:#c4a86e;--gold-light:#ebe1d0;--sage:#8fb0a0;--sage-light:#e2efe8;--red:#d9a3a3;--red-light:#f5eaea;--blue:#8aa3c2;--blue-light:#e8eef6;--purple:#ada0c2;--purple-light:#ede8f4;--paper:#fffcfa;--balances-editor-transition-ms:.38s;--md-elevation-1:0 1px 2px #525a6c1f, 0 1px 3px 1px #525a6c14;--md-elevation-2:0 2px 6px #525a6c1a, 0 1px 2px #525a6c0f;--md-surface-tint:#4d55630d;--md-on-surface:#3c424ee0;--md-on-surface-variant:#3c424e94}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--cream);color:var(--text);font-family:DM Sans,sans-serif;font-size:15px;line-height:1.6}.site-header{z-index:100;background:var(--ink);color:#faf6f4eb;border-bottom:1px solid #c4a86e47;align-items:stretch;font-family:DM Sans,sans-serif;display:flex;position:sticky;top:0;box-shadow:0 2px 14px #5a64781f}.site-header-sticky-shell{z-index:100;position:sticky;top:0}.site-header-sticky-shell .site-header{position:static}.site-header .site-nav{flex:1;min-width:0}.site-header__settings{border-left:1px solid #c4a86e38;flex-shrink:0;align-items:stretch;display:flex;position:relative}.site-settings-btn{color:#faf6f4d1;cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;min-height:48px;padding:0 18px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:700;transition:background .15s,color .15s;display:flex}.site-settings-btn:hover,.site-settings-btn[aria-expanded=true]{color:var(--gold);background:#c4b0801a}.site-settings-btn__icon{font-size:18px;line-height:1}.site-settings-btn__label{display:none}@media (min-width:520px){.site-settings-btn__label{display:inline}}.site-settings-menu>li{margin:0;padding:0;list-style:none}.site-settings-menu{background:var(--ink);z-index:200;opacity:0;visibility:hidden;pointer-events:none;border:1px solid #c4a86e52;border-top:none;border-radius:0 0 14px 14px;min-width:280px;max-width:min(320px,100vw - 24px);margin:0;padding:10px 0;list-style:none;transition:opacity .2s,transform .2s,visibility .2s;position:absolute;top:100%;right:0;transform:translateY(-8px);box-shadow:0 12px 32px #00000059}.site-settings-menu.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.site-settings-menu-section{border-bottom:1px solid #ffffff0f;padding:8px 14px 10px}.site-settings-menu-section:last-child{border-bottom:none}.site-settings-menu-label{letter-spacing:.14em;text-transform:uppercase;color:#f5f0e866;margin-bottom:8px;font-size:10px;font-weight:800;display:block}.site-settings-dev-hint{color:#f5f0e873;margin:8px 0 0;font-size:11px;font-weight:500;line-height:1.45}.site-settings-item{text-align:left;width:100%;color:var(--gold);cursor:pointer;background:#c4b0801f;border:1px solid #c4b0804d;border-radius:10px;margin-bottom:6px;padding:10px 12px;font-family:DM Sans,sans-serif;font-size:14px;font-weight:600;transition:background .15s;display:block}.site-settings-item:last-child{margin-bottom:0}.site-settings-item:hover{background:#c4b08038}.site-settings-item--danger{color:#f0c4c4;background:#b85c5c1f;border-color:#b85c5c73}.site-settings-item--danger:hover{background:#b85c5c38}.site-settings-item--muted{color:#c8d7ebf2;background:#3a5f8a1f;border-color:#3a5f8a66}.site-settings-item--muted:hover{background:#3a5f8a38}:root[data-theme=dark] .site-header{background:#1e2433;border-bottom-color:#d4c89647}:root[data-theme=dark] .site-settings-menu{background:#1e2433;border-color:#d4c89647}:root[data-theme=dark] .site-header__settings{border-left-color:#d4c89647}:root[data-theme=dark] .site-settings-menu-section{border-bottom-color:#ffffff14}.dev-mode-toast{z-index:100500;color:#3c4452f2;opacity:0;pointer-events:none;background:linear-gradient(135deg,#fffffffa,#ebe1d0fa);border:1px solid #c4b0808c;border-radius:14px;align-items:center;gap:12px;max-width:min(92vw,420px);padding:14px 18px;font-family:DM Sans,sans-serif;font-size:14px;font-weight:600;line-height:1.35;transition:opacity .35s,transform .42s cubic-bezier(.22,1,.36,1);display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%,20px);box-shadow:0 10px 40px #3c44522e,0 2px 8px #0000000f}.dev-mode-toast--visible{opacity:1;pointer-events:auto;transform:translate(-50%)}.dev-mode-toast__icon{background:#8fb0a059;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;display:flex}:root[data-theme=dark] .dev-mode-toast{color:#e9e9f6f2;background:linear-gradient(135deg,#1e2433fa,#283040fa);border-color:#e1c36a59}@media (prefers-reduced-motion:reduce){.dev-mode-toast{transition:opacity .2s}.dev-mode-toast--visible{transform:translate(-50%)}}.dev-mode-reminder[hidden]{display:none!important}.dev-mode-reminder{color:#3c4452eb;text-align:center;background:linear-gradient(90deg,#8fb0a047,#c4b08038);border-bottom:1px solid #5a7a6a40;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 18px;padding:10px 20px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:600;line-height:1.4;display:flex}.dev-mode-reminder__text{max-width:52rem}.dev-mode-reminder__lock{appearance:none;letter-spacing:.04em;text-transform:uppercase;color:#3c4452e6;cursor:pointer;background:#ffffffbf;border:1px solid #3c445233;border-radius:999px;flex-shrink:0;padding:8px 16px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:800;transition:background .15s,border-color .15s}.dev-mode-reminder__lock:hover{background:#fffffff2;border-color:#3c445259}.dev-mode-reminder__lock:focus-visible{outline-offset:2px;outline:2px solid #c4b080a6}:root[data-theme=dark] .dev-mode-reminder{color:#e9e9f6eb;background:linear-gradient(90deg,#5a7a6a59,#c4b08026);border-bottom-color:#8fb9a840}:root[data-theme=dark] .dev-mode-reminder__lock{color:#e9e9f6eb;background:#1e2433d9;border-color:#fff3}:root[data-theme=dark] .dev-mode-reminder__lock:hover{background:#283040f2}.site-settings-demo-toggle{color:#c8d7ebf2;cursor:pointer;-webkit-user-select:none;user-select:none;background:#3a5f8a1a;border:1px solid #3a5f8a59;border-radius:10px;align-items:flex-start;gap:10px;margin:0;padding:10px 12px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:600;display:flex}.site-settings-demo-toggle input{width:18px;height:18px;accent-color:var(--gold);flex-shrink:0;margin-top:3px}:root[data-theme=dark] .site-settings-demo-toggle{background:#79a6d81f;border-color:#79a6d873}body.financial-plan-demo-mode #checkin-form{pointer-events:none;opacity:.68}.site-nav{color:inherit;box-shadow:none;background:0 0;border:none;align-items:stretch;gap:0;font-family:inherit;display:flex}.site-nav__tab{text-align:center;letter-spacing:.02em;color:#faf6f4b8;border-bottom:3px solid #0000;flex:1;padding:14px 16px;font-size:13px;font-weight:700;text-decoration:none;transition:color .15s,background .15s,border-color .15s}.site-nav__tab:hover{color:var(--cream);background:#c4b08014}.site-nav__tab--active{color:var(--gold);border-bottom-color:var(--gold);background:#c4b0801f}:root[data-theme=dark] .site-nav{background:#1e2433;border-bottom-color:#d4c89647}:root[data-theme=dark] .site-nav__tab{color:#e9e9f68c}:root[data-theme=dark] .site-nav__tab:hover{color:#e9e9f6eb}:root[data-theme=dark] .site-nav__tab--active{color:var(--gold)}.btn-save,.btn-undo,.btn-reset{cursor:pointer;border:none;border-radius:10px;padding:10px 18px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:600}:root[data-theme=dark]{--text:#e4e6f0;--ink:#c9d0e4;--cream:#141820;--paper:#1a202c;--gold:#d4c896;--gold-light:#3d3428;--sage:#8fb9a8;--sage-light:#8fb9a829;--red:#e0a8a8;--red-light:#e0a8a829;--blue:#9bb4d8;--blue-light:#9bb4d82e;--purple:#c4b4dc;--purple-light:#c4b4dc2e;--md-surface-tint:#e4e6f00f;--md-on-surface:#e4e6f0e6;--md-on-surface-variant:#e4e6f0a6}:root[data-theme=dark] .balance-field input{color:var(--text);background:#ffffff0f;border-color:#ffffff1f}:root[data-theme=dark] .toggle-goal-editor-btn{color:var(--gold);background:#e1c36a24;border-color:#e1c36a59}:root[data-theme=dark] .toggle-goal-editor-btn:hover{background:#e1c36a33}:root[data-theme=dark] .balance-editor-note,:root[data-theme=dark] .section-sub,:root[data-theme=dark] .checkin-note,:root[data-theme=dark] .goal2-debt-meta,:root[data-theme=dark] .status-note,:root[data-theme=dark] .networth-legend,:root[data-theme=dark] .balance-saved-hint{color:#e9e9f6c7}:root[data-theme=dark] .balance-field label,:root[data-theme=dark] .section-eyebrow,:root[data-theme=dark] .status-label,:root[data-theme=dark] .networth-label,:root[data-theme=dark] .efund-item-note,:root[data-theme=dark] .progress-label-row,:root[data-theme=dark] .phase-row .label,:root[data-theme=dark] .budget-pct,:root[data-theme=dark] .checkin-meta,:root[data-theme=dark] .badge-date,:root[data-theme=dark] .badge-locked-note{color:#e9e9f6b3}:root[data-theme=dark] .balance-field-hint{color:#e9e9f68c}:root[data-theme=dark] .balance-editor,:root[data-theme=dark] .status-card,:root[data-theme=dark] .networth-wrap,:root[data-theme=dark] .budget-wrap,:root[data-theme=dark] .timeline-wrap,:root[data-theme=dark] .phase-card,:root[data-theme=dark] .goal2-debt,:root[data-theme=dark] .checkin-wrap,:root[data-theme=dark] .checkin-item,:root[data-theme=dark] .badge-card{border-color:#ffffff1a}:root[data-theme=dark] .networth-bar-track,:root[data-theme=dark] .progress-track{background:#ffffff1a}:root[data-theme=dark] .budget-row,:root[data-theme=dark] .timeline-table td{border-bottom-color:#ffffff14}:root[data-theme=dark] .editor-table thead th{background:var(--paper);color:#e9e9f69e;border-bottom-color:#ffffff1a}:root[data-theme=dark] .editor-table tbody tr.debt-row td,:root[data-theme=dark] .editor-table tbody tr.savings-row td,:root[data-theme=dark] .editor-table tbody tr.savings-goal-target-row td{border-bottom-color:#ffffff14}:root[data-theme=dark] .editor-table tbody tr.debt-row:hover,:root[data-theme=dark] .editor-table tbody tr.savings-row:hover,:root[data-theme=dark] .editor-table tbody tr.savings-goal-target-row:hover{background:#ffffff0a}:root[data-theme=dark] .editor-table td input[type=text],:root[data-theme=dark] .editor-table td input[type=date]{color:var(--text);background:#ffffff0f;border-color:#ffffff1f}:root[data-theme=dark] .debts-editor-list{background:#ffffff08;border-color:#ffffff1a}:root[data-theme=dark] #btn-save-balances:not(:disabled){color:#e9e9f6eb}:root[data-theme=dark] .balance-field input:focus{box-shadow:0 0 0 3px #e1c36a38}.cover{background:var(--ink);color:var(--cream);padding:64px 48px 56px;position:relative;overflow:hidden}.cover-actions{z-index:2;align-items:center;gap:10px;display:flex;position:absolute;top:18px;right:18px}.cover-action-btn{letter-spacing:.2px;color:var(--gold);cursor:pointer;white-space:nowrap;background:#c4b0802e;border:1px solid #c4b08059;border-radius:999px;padding:10px 14px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:800}.cover-action-btn:hover{background:#c4b08040}:root[data-theme=dark] .cover-action-btn{color:var(--gold);background:#e1c36a24;border-color:#e1c36a59}:root[data-theme=dark] .cover-action-btn:hover{background:#e1c36a33}.cover-action-btn--dev{color:var(--blue);background:#3a5f8a1f;border-color:#3a5f8a66}.cover-action-btn--dev:hover{background:#3a5f8a33}:root[data-theme=dark] .cover-action-btn--dev{color:var(--blue);background:#79a6d81f;border-color:#79a6d873}:root[data-theme=dark] .cover-action-btn--dev:hover{background:#79a6d833}.cover-action-btn--danger{color:var(--red);background:#b85c5c1f;border-color:#b85c5c73}.cover-action-btn--danger:hover{background:#b85c5c38}:root[data-theme=dark] .cover-action-btn--danger{color:var(--red);background:#e07a7a1f;border-color:#e07a7a73}:root[data-theme=dark] .cover-action-btn--danger:hover{background:#e07a7a33}.cover:before{content:"";background:radial-gradient(circle,#c4b08026 0%,#0000 70%);border-radius:50%;width:450px;height:450px;position:absolute;top:-100px;right:-100px}.cover:after{content:"";background:radial-gradient(circle,#8fb0a038 0%,#0000 70%);border-radius:50%;width:280px;height:280px;position:absolute;bottom:-60px;left:-60px}.cover-label{letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:20px;font-size:11px;font-weight:500}.cover h1{margin-bottom:14px;font-family:Playfair Display,serif;font-size:clamp(36px,6vw,60px);font-weight:900;line-height:1.08}.cover-sub{color:#faf6f4c7;max-width:480px;margin-bottom:48px;font-size:15px}:root[data-theme=dark] .cover-sub{color:#e9e9f6b3}.cover-stats{border-top:1px solid #c4b08040;grid-template-columns:repeat(3,1fr);gap:0;padding-top:36px;display:grid}.cover-stat{border-right:1px solid #ffffff14;margin-right:24px;padding-right:24px}.cover-stat:last-child{border-right:none;margin-right:0}.cover-stat-label{letter-spacing:2px;text-transform:uppercase;color:var(--gold);opacity:.8;margin-bottom:6px;font-size:10px}.cover-stat-val{font-family:Playfair Display,serif;font-size:28px;font-weight:700}.cover-stat-note{color:#faf6f49e;margin-top:2px;font-size:12px}.content{max-width:1040px;margin:0 auto;padding:56px 32px 80px}.section{margin-bottom:56px}.page-tabs{background:#ffffff59;border:1px solid #3c44521a;border-radius:999px;flex-wrap:wrap;gap:10px;margin:0 0 18px;padding:8px;display:inline-flex;box-shadow:0 1px 10px #3c44520f}.page-tab-btn{appearance:none;color:#3c4452bf;letter-spacing:.02em;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;padding:10px 16px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:800;transition:background .15s,border-color .15s,color .15s}.page-tab-btn:hover{color:#3c4452eb;background:#c4b08024}.page-tab-btn[aria-selected=true]{color:#3c4452eb;background:#c4b08038;border-color:#c4b08061}:root[data-theme=dark] .page-tabs{background:#ffffff0a;border-color:#ffffff1a}:root[data-theme=dark] .page-tab-btn{color:#e9e9f6b8}:root[data-theme=dark] .page-tab-btn:hover{color:#e9e9f6eb;background:#e1c36a24}:root[data-theme=dark] .page-tab-btn[aria-selected=true]{color:#e9e9f6eb;background:#e1c36a2e;border-color:#e1c36a47}.page-tab-panel[hidden]{display:none}.how-we-get-there__tabs-row{flex-wrap:wrap;align-items:center;gap:10px 14px;margin:0 0 18px;display:flex}.how-we-get-there__tabs-row .page-tabs{margin:0}.how-we-get-there__generate-wrap{flex-wrap:wrap;align-items:center;gap:8px 12px;display:inline-flex}.ai-payoff-generate-btn{appearance:none;letter-spacing:.02em;color:#3c4452e0;cursor:pointer;white-space:nowrap;background:#c4b08033;border:1px solid #c4b0806b;border-radius:999px;padding:10px 16px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:800;transition:background .15s,border-color .15s,color .15s,opacity .15s}.ai-payoff-generate-btn:hover:not(:disabled){color:#3c4452f2;background:#c4b0804d;border-color:#c4b0808c}.ai-payoff-generate-btn:focus-visible{outline-offset:2px;outline:2px solid #c4b0808c}.ai-payoff-generate-btn:disabled{opacity:.5;cursor:not-allowed}:root[data-theme=dark] .ai-payoff-generate-btn{color:#e9e9f6e6;background:#e1c36a24;border-color:#e1c36a52}:root[data-theme=dark] .ai-payoff-generate-btn:hover:not(:disabled){color:#e9e9f6f5;background:#e1c36a38;border-color:#e1c36a73}#panel-how-ai{margin-top:4px}.ai-payoff-intro{color:#3c4452c7;max-width:640px;margin:0 0 14px;font-size:13px;line-height:1.5}:root[data-theme=dark] .ai-payoff-intro{color:#e9e9f6b8}.ai-payoff-code{background:#3c445214;border:1px solid #3c44521f;border-radius:6px;padding:1px 6px;font-family:ui-monospace,monospace;font-size:.92em}:root[data-theme=dark] .ai-payoff-code{background:#ffffff14;border-color:#ffffff1f}.ai-payoff-intro--technical{border-top:1px dashed #3c445226;margin-top:10px;padding-top:12px}.ai-payoff-dev-label{letter-spacing:.12em;text-transform:uppercase;color:#3c44528c;margin-bottom:6px;font-size:10px;display:block}:root[data-theme=dark] .ai-payoff-intro--technical{border-top-color:#ffffff1f}:root[data-theme=dark] .ai-payoff-dev-label{color:#e9e9f680}.ai-payoff-refine{max-width:640px;margin-top:18px;margin-bottom:4px}.ai-payoff-refine__label{letter-spacing:.06em;text-transform:uppercase;color:#3c4452a6;margin-bottom:6px;font-size:12px;font-weight:700;display:block}:root[data-theme=dark] .ai-payoff-refine__label{color:#e9e9f68c}.ai-payoff-refine__hint{color:#3c44529e;margin:0 0 10px;font-size:12px;line-height:1.45}:root[data-theme=dark] .ai-payoff-refine__hint{color:#e9e9f694}.ai-payoff-refine__input{color:#3c4452eb;resize:vertical;background:#ffffffb8;border:1px solid #3c44522e;border-radius:10px;width:100%;min-height:72px;margin:0 0 10px;padding:10px 12px;font-family:DM Sans,sans-serif;font-size:13px;line-height:1.45;display:block}.ai-payoff-refine__input::placeholder{color:#3c44526b}.ai-payoff-refine__input:disabled{opacity:.55;cursor:not-allowed;resize:none}.ai-payoff-refine__input:focus-visible{outline-offset:2px;outline:2px solid #c4b0808c}:root[data-theme=dark] .ai-payoff-refine__input{color:#e9e9f6eb;background:#1e2028a6;border-color:#ffffff24}:root[data-theme=dark] .ai-payoff-refine__input::placeholder{color:#e9e9f661}.ai-payoff-refine-btn{appearance:none;letter-spacing:.02em;color:#3c4452e0;cursor:pointer;background:#8fb0a02e;border:1px solid #8fb0a073;border-radius:999px;padding:9px 14px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:700;transition:background .15s,border-color .15s,opacity .15s}.ai-payoff-refine-btn:hover:not(:disabled){background:#8fb0a047;border-color:#8fb0a08c}.ai-payoff-refine-btn:focus-visible{outline-offset:2px;outline:2px solid #8fb0a080}.ai-payoff-refine-btn:disabled{opacity:.45;cursor:not-allowed}:root[data-theme=dark] .ai-payoff-refine-btn{color:#e9e9f6e0;background:#8fb0a01f;border-color:#8fb0a059}:root[data-theme=dark] .ai-payoff-refine-btn:hover:not(:disabled){background:#8fb0a033}.ai-payoff-status{color:#3c4452b8;font-size:13px;line-height:1.4}:root[data-theme=dark] .ai-payoff-status{color:#e9e9f6b3}.ai-payoff-output{background:linear-gradient(165deg,#c4b08017 0%,#3c44520a 42%,#8fb0a014 100%);border:1px solid #c4b08047;border-radius:14px;flex-direction:column;min-height:120px;margin-top:16px;padding:0;display:flex;overflow:hidden;box-shadow:0 4px 22px #3c44520f}:root[data-theme=dark] .ai-payoff-output{background:linear-gradient(165deg,#e1c36a14 0%,#ffffff0a 45%,#8fb9a81a 100%);border-color:#e1c36a38;box-shadow:0 4px 24px #0003}.ai-payoff-output__toolbar{flex-shrink:0;justify-content:flex-end;padding:10px 12px 0;display:flex}.ai-payoff-expand-btn{appearance:none;letter-spacing:.04em;text-transform:uppercase;color:#3c4452d9;cursor:pointer;background:#ffffff8c;border:1px solid #c4b08073;border-radius:999px;padding:8px 14px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:700;transition:background .15s,border-color .15s}.ai-payoff-expand-btn:hover{background:#c4b0802e;border-color:#c4b080a6}:root[data-theme=dark] .ai-payoff-expand-btn{color:#e9e9f6e0;background:#ffffff0f;border-color:#e1c36a59}:root[data-theme=dark] .ai-payoff-expand-btn:hover{background:#e1c36a1f}.ai-payoff-scroll{-webkit-overflow-scrolling:touch;scrollbar-color:#c4b0808c #3c44520f;scrollbar-width:thin;flex:1;min-height:0;max-height:min(58vh,520px);padding:16px 18px 20px;overflow:hidden auto}.ai-payoff-output--expanded .ai-payoff-scroll{max-height:none}.ai-payoff-scroll::-webkit-scrollbar{width:8px}.ai-payoff-scroll::-webkit-scrollbar-thumb{background:#c4b08073;border-radius:99px}.ai-payoff-scroll::-webkit-scrollbar-track{background:#3c44520f;border-radius:99px}.ai-payoff-timeline{z-index:0;margin:10px 0 0;padding:16px 0 8px;position:relative}.ai-payoff-timeline:before{content:"";z-index:0;pointer-events:none;background:linear-gradient(#4a6fa8e0 0%,#8fb0a0b8 48%,#c4b080d1 100%);border-radius:999px;width:5px;margin-left:-2.5px;position:absolute;top:0;bottom:0;left:50%}.ai-payoff-timeline__row{z-index:1;grid-template-columns:minmax(120px,1fr) 52px minmax(120px,1fr);align-items:start;margin-bottom:28px;display:grid;position:relative}.ai-payoff-timeline__row:last-child{margin-bottom:0}.ai-payoff-timeline__cell{min-width:0}.ai-payoff-timeline__row--left .ai-payoff-timeline__cell:first-child{justify-content:flex-end;display:flex}.ai-payoff-timeline__row--right .ai-payoff-timeline__cell:last-child{justify-content:flex-start;display:flex}.ai-payoff-timeline__rail{justify-content:center;padding-top:16px;display:flex}.ai-payoff-timeline__dot{background:var(--paper);border:4px solid var(--blue);border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;display:flex}@supports (color:color-mix(in lab, red, red)){.ai-payoff-timeline__dot{border:4px solid color-mix(in srgb, var(--blue) 42%, transparent)}}.ai-payoff-timeline__dot{box-shadow:0 3px 12px var(--md-on-surface)}@supports (color:color-mix(in lab, red, red)){.ai-payoff-timeline__dot{box-shadow:0 3px 12px color-mix(in srgb, var(--md-on-surface) 12%, transparent)}}.ai-payoff-timeline__dot{color:var(--md-on-surface);flex-shrink:0;font-size:13px;font-weight:800}.ai-payoff-timeline__card{box-sizing:border-box;border:1px solid #3c44521a;border-radius:14px;flex-shrink:0;width:min(100%,400px);min-width:0;max-width:400px;overflow:hidden;box-shadow:0 8px 26px #3c44521a}.ai-payoff-timeline__card-head{color:#fff;letter-spacing:.01em;overflow-wrap:anywhere;flex-wrap:nowrap;align-items:center;gap:10px;padding:12px 14px;font-size:14px;font-weight:800;line-height:1.3;display:flex}.ai-payoff-timeline__card-emoji{filter:drop-shadow(0 1px 2px #0003);flex-shrink:0;font-size:1.2em;line-height:1}.ai-payoff-timeline__card-title{flex:1;min-width:3em}.ai-payoff-timeline__row:nth-child(6n+1) .ai-payoff-timeline__card-head{background:linear-gradient(135deg,#2a5244 0%,#3d7360 100%)}.ai-payoff-timeline__row:nth-child(6n+2) .ai-payoff-timeline__card-head{background:linear-gradient(135deg,#354f8f 0%,#4a6bb8 100%)}.ai-payoff-timeline__row:nth-child(6n+3) .ai-payoff-timeline__card-head{background:linear-gradient(135deg,#5c4a7a 0%,#7a6499 100%)}.ai-payoff-timeline__row:nth-child(6n+4) .ai-payoff-timeline__card-head{background:linear-gradient(135deg,#6b5340 0%,#8b6f52 100%)}.ai-payoff-timeline__row:nth-child(6n+5) .ai-payoff-timeline__card-head{background:linear-gradient(135deg,#2f6b63 0%,#4a9e8f 100%)}.ai-payoff-timeline__row:nth-child(6n+6) .ai-payoff-timeline__card-head{background:linear-gradient(135deg,#8a6230 0%,#b8893d 100%)}.ai-payoff-timeline__card-body{background:#fffffff7;padding:14px 16px 16px}.ai-payoff-timeline__card-body .ai-payoff-p{margin:0 0 12px}.ai-payoff-timeline__card-body .ai-payoff-ul{margin:0 0 10px}:root[data-theme=dark] .ai-payoff-timeline__dot{background:var(--paper)}@supports (color:color-mix(in lab, red, red)){:root[data-theme=dark] .ai-payoff-timeline__dot{background:color-mix(in srgb, var(--paper) 6%, #12141a)}}:root[data-theme=dark] .ai-payoff-timeline__dot{border-color:var(--sage)}@supports (color:color-mix(in lab, red, red)){:root[data-theme=dark] .ai-payoff-timeline__dot{border-color:color-mix(in srgb, var(--sage) 45%, transparent)}}:root[data-theme=dark] .ai-payoff-timeline__dot{color:var(--cream)}@supports (color:color-mix(in lab, red, red)){:root[data-theme=dark] .ai-payoff-timeline__dot{color:color-mix(in srgb, var(--cream) 90%, var(--text))}}:root[data-theme=dark] .ai-payoff-timeline__dot{box-shadow:0 3px 14px var(--text)}@supports (color:color-mix(in lab, red, red)){:root[data-theme=dark] .ai-payoff-timeline__dot{box-shadow:0 3px 14px color-mix(in srgb, var(--text) 35%, transparent)}}:root[data-theme=dark] .ai-payoff-timeline__card{border-color:#ffffff1a;box-shadow:0 8px 28px #00000059}:root[data-theme=dark] .ai-payoff-timeline__card-body{background:#1c1e26eb}:root[data-theme=dark] .ai-payoff-timeline:before{opacity:.85}@media (max-width:700px){.ai-payoff-timeline:before{display:none}.ai-payoff-timeline__row{flex-direction:column;align-items:stretch;margin-bottom:22px;display:flex}.ai-payoff-timeline__rail{order:-1;margin-bottom:10px;padding-top:0}.ai-payoff-timeline__row--left .ai-payoff-timeline__cell:first-child,.ai-payoff-timeline__row--right .ai-payoff-timeline__cell:last-child{justify-content:stretch}.ai-payoff-timeline__card{max-width:none}}.ai-payoff-intro-block{margin-bottom:16px}.ai-payoff-intro-block--lead{background:#8fb0a01f;border:1px solid #8fb0a038;border-radius:12px;margin-bottom:20px;padding:14px 16px}:root[data-theme=dark] .ai-payoff-intro-block--lead{background:#8fb0a01a;border-color:#8fb0a02e}.ai-payoff-intro-block:last-child{margin-bottom:0}.ai-payoff-p{color:#3c4452e0;margin:0 0 12px;font-size:14px;line-height:1.6}.ai-payoff-p:last-child{margin-bottom:0}:root[data-theme=dark] .ai-payoff-p{color:#e9e9f6db}.ai-payoff-ul{color:#3c4452e0;margin:0 0 12px;padding-left:1.35rem}:root[data-theme=dark] .ai-payoff-ul{color:#e9e9f6db}.ai-payoff-li{margin-bottom:8px;line-height:1.55}.ai-payoff-li::marker{color:var(--sage);font-weight:700}.ai-bill-cal{border-top:1px dashed #c4b08059;max-width:920px;margin-top:28px;padding-top:22px}.ai-bill-cal__heading{letter-spacing:.02em;color:#3c4452eb;margin:0 0 10px;font-size:15px;font-weight:800}:root[data-theme=dark] .ai-bill-cal__heading{color:#e9e9f6f0}.ai-bill-cal__intro,.ai-bill-cal__format{color:#3c4452c2;max-width:640px;margin:0 0 10px;font-size:13px;line-height:1.5}.ai-bill-cal__format{color:#3c4452a6;margin-bottom:12px;font-size:12px}:root[data-theme=dark] .ai-bill-cal__intro,:root[data-theme=dark] .ai-bill-cal__format{color:#e9e9f6b8}.ai-bill-cal__columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 14px;max-width:720px;margin-bottom:14px;display:grid}@media (max-width:640px){.ai-bill-cal__columns{grid-template-columns:1fr}}.ai-bill-cal__col-field{flex-direction:column;gap:4px;min-width:0;display:flex}.ai-bill-cal__col-label{letter-spacing:.04em;text-transform:uppercase;color:#3c44528c;font-size:11px;font-weight:700}:root[data-theme=dark] .ai-bill-cal__col-label{color:#e9e9f68c}.ai-bill-cal__col-input{color:#3c4452eb;box-sizing:border-box;background:#ffffffd9;border:1px solid #3c44522e;border-radius:8px;width:100%;padding:8px 10px;font-family:DM Sans,ui-monospace,monospace;font-size:13px}.ai-bill-cal__col-input:focus{outline-offset:1px;outline:2px solid #8fb0a080}:root[data-theme=dark] .ai-bill-cal__col-input{color:#e9e9f6eb;background:#ffffff0f;border-color:#ffffff1f}.ai-bill-cal__row{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:16px;display:flex}.ai-bill-cal__file-label{cursor:pointer;position:relative}.ai-bill-cal__file-input{opacity:0;z-index:-1;width:.1px;height:.1px;position:absolute;overflow:hidden}.ai-bill-cal__file-btn{color:#3c4452e0;background:#ffffffbf;border:1px solid #3c44522e;border-radius:999px;padding:9px 16px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:700;transition:background .15s,border-color .15s;display:inline-block}.ai-bill-cal__file-label:hover .ai-bill-cal__file-btn{background:#8fb0a033;border-color:#8fb0a073}:root[data-theme=dark] .ai-bill-cal__file-btn{color:#e9e9f6e6;background:#ffffff0f;border-color:#ffffff24}.ai-bill-cal-generate-btn{appearance:none;letter-spacing:.02em;color:#3c4452e6;cursor:pointer;background:#c4b08038;border:1px solid #c4b0806b;border-radius:999px;padding:10px 18px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:800;transition:background .15s,opacity .15s}.ai-bill-cal-generate-btn:hover:not(:disabled){background:#c4b08052}.ai-bill-cal-generate-btn:disabled{opacity:.45;cursor:not-allowed}:root[data-theme=dark] .ai-bill-cal-generate-btn{color:#e9e9f6eb;background:#e1c36a24;border-color:#e1c36a4d}.ai-bill-cal__status{color:#3c4452b3;flex:200px;font-size:13px}:root[data-theme=dark] .ai-bill-cal__status{color:#e9e9f6ad}.ai-bill-cal-host{min-height:40px}.ai-bill-cal-prompt-btn{appearance:none;letter-spacing:.02em;color:#3c4452e0;cursor:pointer;background:#ffffffa6;border:1px solid #3c445238;border-radius:999px;padding:10px 16px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:700;transition:background .15s,border-color .15s,opacity .15s}.ai-bill-cal-prompt-btn:hover:not(:disabled){background:#8fb0a024;border-color:#8fb0a061}.ai-bill-cal-prompt-btn:disabled{opacity:.45;cursor:not-allowed}:root[data-theme=dark] .ai-bill-cal-prompt-btn{color:#e9e9f6e0;background:#ffffff0d;border-color:#ffffff24}.ai-bill-cal-ics-bar{max-width:640px;margin:0 0 14px}.ai-bill-cal-ics-btn{appearance:none;letter-spacing:.02em;color:#3c4452e6;cursor:pointer;background:#8fb0a02e;border:1px solid #8fb0a073;border-radius:999px;padding:9px 16px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:700;transition:background .15s,border-color .15s}.ai-bill-cal-ics-btn:hover{background:#8fb0a047;border-color:#8fb0a08c}:root[data-theme=dark] .ai-bill-cal-ics-btn{color:#e9e9f6eb;background:#8fb0a01f;border-color:#8fb0a059}:root[data-theme=dark] .ai-bill-cal-ics-btn:hover{background:#8fb0a033}.ai-bill-cal-prompt-dialog{width:min(640px,100vw - 32px);height:fit-content;max-height:min(90vh,880px);box-shadow:none;background:0 0;border:none;border-radius:16px;margin:auto;padding:0;position:fixed;inset:0}.ai-bill-cal-prompt-dialog::backdrop{background:#0a0c148c}.ai-bill-cal-prompt-dialog__chrome{background:var(--paper,#f9f7f2);border:1px solid #3c44521a;border-radius:16px;flex-direction:column;width:100%;max-height:min(90vh,880px);display:flex;overflow:hidden;box-shadow:0 24px 48px #00000047}:root[data-theme=dark] .ai-bill-cal-prompt-dialog__chrome{background:var(--paper,#1c1e26);border-color:#ffffff1a;box-shadow:0 24px 56px #00000080}.ai-bill-cal-prompt-dialog__header{background:var(--ink,#2c3140);color:var(--cream,#f5f0e6);border-bottom:1px solid #3c445214;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}:root[data-theme=dark] .ai-bill-cal-prompt-dialog__header{border-bottom-color:#ffffff14}.ai-bill-cal-prompt-dialog__title{margin:0;font-family:Playfair Display,Georgia,serif;font-size:18px;font-weight:700}.ai-bill-cal-prompt-dialog__close{width:40px;height:40px;color:inherit;cursor:pointer;background:#ffffff14;border:none;border-radius:10px;flex-shrink:0;font-size:24px;line-height:1;transition:background .15s}.ai-bill-cal-prompt-dialog__close:hover{background:#ffffff24}.ai-bill-cal-prompt-dialog__close:focus-visible{outline-offset:2px;outline:2px solid #c4b0808c}.ai-bill-cal-prompt-dialog__body{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:10px;min-height:0;padding:14px 16px 18px;display:flex;overflow-y:auto}.ai-bill-cal-prompt-dialog__hint{color:#3c4452bf;margin:0;font-size:13px;line-height:1.45}:root[data-theme=dark] .ai-bill-cal-prompt-dialog__hint{color:#e9e9f6b8}.ai-bill-cal-prompt-dialog__label{letter-spacing:.04em;text-transform:uppercase;color:#3c44528c;font-size:11px;font-weight:700}:root[data-theme=dark] .ai-bill-cal-prompt-dialog__label{color:#e9e9f68c}.ai-bill-cal-prompt-dialog__textarea{box-sizing:border-box;color:#282c34f2;resize:vertical;background:#ffffffe6;border:1px solid #3c445229;border-radius:10px;width:100%;min-height:220px;max-height:min(48vh,420px);padding:10px 12px;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:11px;line-height:1.45}:root[data-theme=dark] .ai-bill-cal-prompt-dialog__textarea{color:#e9e9f6eb;background:#00000040;border-color:#ffffff1f}.ai-bill-cal-prompt-dialog__feedback{color:#8fb0a0f2;min-height:1.2em;margin:0;font-size:12px;font-weight:600}.ai-bill-cal-prompt-dialog__feedback:empty{display:none}.ai-bill-cal-prompt-dialog__actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.ai-bill-cal-prompt-dialog__action{appearance:none;color:#3c4452eb;cursor:pointer;background:#c4b08033;border:1px solid #c4b0806b;border-radius:999px;padding:9px 16px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:700;transition:background .15s}.ai-bill-cal-prompt-dialog__action:hover{background:#c4b08052}:root[data-theme=dark] .ai-bill-cal-prompt-dialog__action{color:#e9e9f6eb;background:#e1c36a24;border-color:#e1c36a4d}.ai-bill-cal-prompt-dialog__action[hidden]{display:none!important}.ai-bill-cal__notes{color:#3c4452c7;background:#8fb0a01f;border:1px solid #8fb0a038;border-radius:10px;margin:0 0 18px;padding:12px 14px;font-size:13px;line-height:1.5}:root[data-theme=dark] .ai-bill-cal__notes{color:#e9e9f6d1;background:#8fb0a01a}.ai-bill-cal__empty,.ai-bill-cal__error{color:#3c4452bf;margin:0;font-size:13px}.ai-bill-cal__error{color:#b43c3cf2}.ai-bill-cal-month{margin-bottom:28px}.ai-bill-cal-month:last-child{margin-bottom:0}.ai-bill-cal-month__title{color:#3c4452e0;margin:0 0 12px;font-size:14px;font-weight:800}:root[data-theme=dark] .ai-bill-cal-month__title{color:#e9e9f6e6}.ai-bill-cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;font-size:11px;display:grid}.ai-bill-cal-grid__dow{text-align:center;text-transform:uppercase;letter-spacing:.06em;color:#3c44528c;padding:6px 2px;font-weight:700}:root[data-theme=dark] .ai-bill-cal-grid__dow{color:#e9e9f680}.ai-bill-cal-grid__cell{background:#ffffffa6;border:1px solid #3c44521a;border-radius:8px;flex-direction:column;gap:4px;min-height:72px;padding:4px 5px 6px;display:flex}.ai-bill-cal-grid__cell--pad{background:0 0;border:none;min-height:0}:root[data-theme=dark] .ai-bill-cal-grid__cell{background:#1c1e268c;border-color:#ffffff1a}.ai-bill-cal-grid__daynum{color:#3c44528c;font-size:11px;font-weight:800}:root[data-theme=dark] .ai-bill-cal-grid__daynum{color:#e9e9f673}.ai-bill-cal-grid__stack{flex-direction:column;gap:3px;min-height:0;display:flex}.ai-bill-cal-chip{text-overflow:ellipsis;white-space:nowrap;border-radius:5px;padding:3px 5px;font-size:10px;font-weight:600;line-height:1.25;display:block;overflow:hidden}.ai-bill-cal-chip--bill{color:#28375ff2;background:#4a6fa833;border:1px solid #4a6fa859}.ai-bill-cal-chip--debt{color:#3c3728f2;background:#c4b08059;border:1px solid #c4b08080}:root[data-theme=dark] .ai-bill-cal-chip--bill{color:#dce6ffeb;background:#78a0dc2e;border-color:#78a0dc59}:root[data-theme=dark] .ai-bill-cal-chip--debt{color:#fff5dceb;background:#e1c36a2e;border-color:#e1c36a59}@media (max-width:640px){.ai-bill-cal-grid__cell{min-height:64px;padding:3px 3px 5px}.ai-bill-cal-chip{white-space:normal;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:9px;display:-webkit-box;overflow:hidden}}.ai-payoff-loading{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:32px 16px 40px;display:flex}.ai-payoff-loading__spinner{border:3px solid #c4b08040;border-top-color:var(--gold);border-radius:50%;width:40px;height:40px;animation:.85s linear infinite ai-payoff-spin}.ai-payoff-loading__label{color:#3c4452c7;letter-spacing:.02em;margin:0;font-size:14px;font-weight:700}:root[data-theme=dark] .ai-payoff-loading__label{color:#e9e9f6bf}@keyframes ai-payoff-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.ai-payoff-loading__spinner{border-color:#c4b08073;border-top-color:var(--gold);animation:none}}.ai-payoff-output .ai-payoff-placeholder{margin:0}.ai-payoff-error{color:var(--red);margin:0;font-size:14px;font-weight:600;line-height:1.5}:root[data-theme=dark] .ai-payoff-error{color:var(--red)}.ai-payoff-truncation-note{color:#3c4452d1;background:#d9a3a32e;border:1px solid #d9a3a359;border-radius:10px;margin:18px 0 0;padding:12px 14px;font-size:13px;font-weight:600;line-height:1.45}:root[data-theme=dark] .ai-payoff-truncation-note{color:#e9e9f6d1;background:#e0a8a81f;border-color:#e0a8a847}@media print{.ai-payoff-output__toolbar{display:none!important}.ai-payoff-scroll{max-height:none!important;overflow:visible!important}}.plan-inline-hint{color:#3c4452b8;background:#3c445208;border:1px dashed #3c44522e;border-radius:12px;margin-top:14px;padding:12px 14px;font-size:13px;line-height:1.45}:root[data-theme=dark] .plan-inline-hint{color:#e9e9f6b8;background:#ffffff0a;border-color:#ffffff24}.plan-inline-hint--cta{padding:8px 10px}.plan-dash-nav-btn{appearance:none;box-sizing:border-box;width:100%;font:inherit;text-align:left;color:var(--text);cursor:pointer;background:#c4b08024;border:1px solid #c4b08066;border-radius:10px;margin:0;padding:10px 12px;font-size:13px;font-weight:600;line-height:1.45;transition:background .15s,border-color .15s,box-shadow .15s;display:block}.plan-dash-nav-btn:hover{background:#c4b08038;border-color:#c4b08080}.plan-dash-nav-btn:focus-visible{outline-offset:2px;outline:2px solid #c4b0808c}.plan-dash-nav-btn--inline{width:auto;max-width:720px;display:inline-block}:root[data-theme=dark] .plan-dash-nav-btn{color:#e9e9f6eb;background:#e1c36a1a;border-color:#e1c36a47}:root[data-theme=dark] .plan-dash-nav-btn:hover{background:#e1c36a2e;border-color:#e1c36a61}.plan-goals-editor{margin:0 0 22px}.plan-goals-editor__panel.balance-editor{padding:26px 28px 28px}.plan-goals-editor__header.debts-editor-header{margin-top:0;margin-bottom:14px}.plan-goals-editor__hint{color:#3c445294;text-align:right;max-width:28rem;font-size:13px;font-weight:600;line-height:1.4}.plan-goals-editor__section{margin-bottom:20px}.plan-goals-editor__subheader.debts-editor-header{margin-top:0;margin-bottom:8px}.plan-goals-editor__targets-note.balance-editor-note{margin-top:0;margin-bottom:12px}.goals-targets-editor-list.debts-editor-list{max-height:min(50vh,420px);margin-top:0}.balance-editor-actions--goal-targets-add{justify-content:flex-end;margin-top:10px}.editor-table tbody tr.savings-goal-target-row{background:0 0}.editor-table tbody tr.savings-goal-target-row td{vertical-align:middle;white-space:nowrap;border-bottom:1px solid #3c445212;padding:8px 10px}.editor-table tbody tr.savings-goal-target-row:hover{background:#3c445208}.editor-table--goal-targets .editor-table__cell--name input{min-width:10rem}.editor-table--goal-targets .editor-table__cell--goal-by input[type=month]{min-width:10.5rem;font-size:13px}.savings-goal-block__when{letter-spacing:.04em;text-transform:uppercase;color:#3c44528c;margin:-4px 0 8px;font-size:12px;font-weight:600}:root[data-theme=dark] .savings-goal-block__when{color:#e9e9f68c}:root[data-theme=dark] .plan-goals-editor__hint{color:#e9e9f69e}.editor-table__cell--goals{vertical-align:top;min-width:120px;max-width:220px}.editor-savings-goal-check{cursor:pointer;align-items:flex-start;gap:6px;margin-bottom:6px;font-size:11px;line-height:1.35;display:flex}.editor-savings-goal-check__text{flex:1;min-width:0}.savings-goals-stack{flex-direction:column;gap:4px;display:flex}.savings-goal-block{border-top:1px solid #3c44521a;margin-top:12px;padding-top:12px}.savings-goal-block:first-child{border-top:none;margin-top:0;padding-top:0}.savings-goal-block__title{color:var(--purple);margin-bottom:8px;font-family:Playfair Display,serif;font-size:17px;font-weight:800}.savings-goals-stack__empty{color:#3c4452b3;margin:8px 0 0;font-size:13px}.goal3-savings-goals{margin-top:8px}.goal3-savings-goal-line{margin-bottom:10px}.goal3-savings-goal-caption{letter-spacing:.06em;text-transform:uppercase;color:#3c44528c;margin-bottom:4px;font-size:11px;font-weight:700}.goal3-savings-goal-when{color:#3c4452a6;margin:-2px 0 6px;font-size:11px}:root[data-theme=dark] .goal3-savings-goal-when{color:#e9e9f68c}:root[data-theme=dark] .savings-goal-block{border-top-color:#ffffff14}.dashboard-hero{margin:6px 0 14px}.dashboard-hero__title{margin-bottom:6px;font-family:Playfair Display,serif;font-size:28px;font-weight:900;line-height:1.1}.dashboard-hero__sub{color:#3c4452b3;font-size:14px;line-height:1.5}:root[data-theme=dark] .dashboard-hero__sub{color:#e9e9f6a6}.dashboard-month-wrap{background:var(--paper);border:1px solid #3c44521a;border-radius:14px;margin:0 0 18px;padding:14px 16px;box-shadow:0 2px 10px #3c44520a}.dashboard-month-wrap__row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 16px;display:flex}.dashboard-month-wrap__eyebrow{letter-spacing:.14em;text-transform:uppercase;color:#3c445280;margin-bottom:4px;font-size:10px;font-weight:800;display:block}.dashboard-month-wrap__title{color:var(--text);font-family:Playfair Display,serif;font-size:22px;font-weight:800;line-height:1.2}.dashboard-month-wrap__picker-row{flex-wrap:wrap;align-items:center;gap:10px 12px;margin-top:2px;display:flex}.dashboard-month-wrap__picker-label{color:#3c4452bf;font-size:13px;font-weight:600}.dashboard-view-month-select{background:var(--paper);min-width:min(100%,240px);max-width:420px;color:var(--text);cursor:pointer;appearance:auto;border:1px solid #3c44522e;border-radius:8px;flex:220px;padding:6px 10px;font-family:DM Sans,system-ui,sans-serif;font-size:14px;font-weight:600;line-height:1.35}.dashboard-month-wrap__working-note{color:#3c4452b8;margin:8px 0 0;font-size:12px;line-height:1.45}:root[data-theme=dark] .dashboard-month-wrap__picker-label{color:#e9e9f6b8}:root[data-theme=dark] .dashboard-view-month-select{color:#e9e9f6f0;background:#ffffff0f;border-color:#ffffff24}:root[data-theme=dark] .dashboard-month-wrap__working-note{color:#e9e9f6a6}.dashboard-month-wrap__actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dashboard-month-wrap__hint{color:#3c4452a6;margin:12px 0 0;font-size:12px;line-height:1.45}:root[data-theme=dark] .dashboard-month-wrap{background:#ffffff0a;border-color:#ffffff1a}:root[data-theme=dark] .dashboard-month-wrap__eyebrow{color:#e9e9f680}:root[data-theme=dark] .dashboard-month-wrap__title{color:#e9e9f6eb}:root[data-theme=dark] .dashboard-month-wrap__hint{color:#e9e9f69e}.dashboard-goals-details{margin:0 0 22px}.dashboard-goals-summary{appearance:none;text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;align-items:center;gap:10px;padding:4px 0 12px;font-size:10px;line-height:1.1;display:flex}.dashboard-goals-summary:focus-visible{outline-offset:3px;border-radius:4px;outline:2px solid #3a5f8a73}.dashboard-goals-summary-chevron{border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);flex-shrink:0;width:10px;height:10px;transition:transform .3s;display:inline-block;transform:rotate(-45deg)}.dashboard-goals-details--open .dashboard-goals-summary-chevron{transform:rotate(45deg)}.dashboard-goals-summary-eyebrow{margin-bottom:0}.dashboard-goals-anim{opacity:0;will-change:grid-template-rows, opacity;grid-template-rows:0fr;transition:grid-template-rows 1s cubic-bezier(.2,.8,.2,1),opacity .45s;display:grid}.dashboard-goals-details--open .dashboard-goals-anim{opacity:1;grid-template-rows:1fr;transition:grid-template-rows .8s cubic-bezier(.2,.8,.2,1),opacity .25s}.dashboard-goals-inner{padding-bottom:2px;overflow:hidden}:root[data-theme=dark] .dashboard-goals-summary-chevron{border-bottom-color:#d4af37d9;border-right-color:#d4af37d9}@media (prefers-reduced-motion:reduce){.dashboard-goals-summary-chevron,.dashboard-goals-anim,.dashboard-goals-details--open .dashboard-goals-anim{transition:none}}.goals-grid.goals-grid--dashboard{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px}.goals-grid--dashboard .goal-card.secondary-a,.goals-grid--dashboard .goal-card.secondary-b{grid-column:auto}@media (max-width:900px){.goals-grid.goals-grid--dashboard{grid-template-columns:1fr}}.dashboard-tabs{background:#ffffff47;border:1px solid #3c44521a;border-radius:999px;flex-wrap:wrap;gap:10px;margin:0 0 18px;padding:8px;display:inline-flex}.page-tab-panel--dashboard .dashboard-tabs{display:none}.dashboard-tab-btn{appearance:none;color:#3c4452bf;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;padding:10px 16px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:800;transition:background .15s,border-color .15s,color .15s}.dashboard-tab-btn:hover{color:#3c4452eb;background:#3a5f8a1f}.dashboard-tab-btn[aria-selected=true]{color:#3c4452eb;background:#3a5f8a29;border-color:#3a5f8a40}.dashboard-edge-editors{z-index:320;pointer-events:none;flex-direction:column;gap:10px;padding:8px 0;display:flex;position:fixed;top:50%;right:0;transform:translateY(-50%)}.edge-editor[data-edge-editor=debts]{--edge-accent:var(--sage);--edge-bg:#8fb0a038}.edge-editor[data-edge-editor=savings]{--edge-accent:var(--purple);--edge-bg:#ada0c23d}.edge-editor{--edge-accent:#3a5f8ae6;--edge-bg:#3a5f8a24}.edge-editor__tab{pointer-events:auto;appearance:none;background:var(--edge-bg);color:#3c4452db;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:1px solid #3c44521f;border-right:none;border-top-left-radius:14px;border-bottom-left-radius:14px;padding:14px 10px;font-family:DM Sans,sans-serif;font-weight:900;transition:transform .18s,box-shadow .18s,background .15s,border-color .15s,color .15s;box-shadow:0 10px 26px #3c44521f}.edge-editor__tab-label{writing-mode:vertical-rl;text-shadow:0 1px #ffffff8c,0 0 2px #00000047;font-size:11px;line-height:1;transition:color .18s;display:inline-block;transform:rotate(180deg)}.edge-editor__tab:hover{color:#3c4452f0;background:#ffffffd9;transform:translate(-2px)}.edge-editor__tab[aria-selected=true]{color:#3c4452f0;box-shadow:0 14px 34px #3c44522e, 0 0 0 1px var(--edge-accent) inset;background:#ffffffeb;border-color:#3c445229;transform:translate(-6px)}.edge-editor{pointer-events:none}.edge-editor.is-open{pointer-events:auto}.edge-editor__panel{z-index:315;pointer-events:auto;width:min(660px,100vw - 72px);max-height:calc(100vh - 160px);padding:0;transition:transform .24s cubic-bezier(.33,1,.68,1);position:fixed;top:50%;right:56px;overflow:auto;transform:translate(100%,-50%)}.edge-editor.is-open .edge-editor__panel{transform:translateY(-50%)}.edge-editor__panel .toolwin{resize:none;width:100%;min-width:0;max-width:none;height:auto;max-height:none;position:static;top:auto;right:auto}.edge-editor__panel .toolwin__body{max-height:none}.edge-editor.is-open .edge-editor__tab{transform:translate(-18px);box-shadow:0 16px 36px #3c445233}:root[data-theme=dark] .edge-editor.is-open .edge-editor__tab{box-shadow:0 18px 42px #00000073}:root[data-theme=dark] .edge-editor[data-edge-editor=debts]{--edge-bg:#8fb0a033}:root[data-theme=dark] .edge-editor[data-edge-editor=savings]{--edge-bg:#ada0c238}:root[data-theme=dark] .edge-editor__tab{color:#e9e9f6db;background:#ffffff0f;border-color:#ffffff1f;box-shadow:0 12px 30px #00000059}:root[data-theme=dark] .edge-editor__tab:hover{color:#e9e9f6eb;background:#ffffff1a}:root[data-theme=dark] .edge-editor__tab[aria-selected=true]{color:#e9e9f6eb;box-shadow:0 16px 38px #00000073, 0 0 0 1px var(--edge-accent) inset;background:#ffffff1f;border-color:#ffffff29}:root[data-theme=dark] .edge-editor__tab-label{text-shadow:0 1px #00000073,0 0 2px #00000073}@media (prefers-reduced-motion:reduce){.edge-editor__tab,.edge-editor__tab:hover,.edge-editor__tab[aria-selected=true]{transition:none;transform:none}.edge-editor__panel{transition:none;transform:translateY(-50%)}}@media (max-width:900px){.dashboard-edge-editors{display:none}.page-tab-panel--dashboard .dashboard-tabs{display:inline-flex}}:root[data-theme=dark] .dashboard-tabs{background:#ffffff0a;border-color:#ffffff1a}:root[data-theme=dark] .dashboard-tab-btn{color:#e9e9f6b8}:root[data-theme=dark] .dashboard-tab-btn:hover{color:#e9e9f6eb;background:#79a6d81f}:root[data-theme=dark] .dashboard-tab-btn[aria-selected=true]{color:#e9e9f6eb;background:#79a6d829;border-color:#79a6d838}.dashboard-tab-panel[hidden]{display:none}.dashboard-card{background:var(--paper);border:1px solid #3c44521a;border-radius:16px;padding:18px 18px 16px;box-shadow:0 2px 12px #3c44520a}.dashboard-card__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 12px;margin-bottom:8px;display:flex}.dashboard-card__title{letter-spacing:.12em;text-transform:uppercase;color:#3c44528c;font-size:12px;font-weight:900}.dashboard-card__meta{color:#3c4452b8;font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}:root[data-theme=dark] .dashboard-card{background:#ffffff0a;border-color:#ffffff1a}:root[data-theme=dark] .dashboard-card__title{color:#e9e9f68c}:root[data-theme=dark] .dashboard-card__meta{color:#e9e9f6b8}.dashboard-split{min-height:0;display:block;position:relative}.dashboard-main{min-width:0}.toolwin{z-index:300;box-sizing:border-box;background:var(--paper);resize:horizontal;border:1px solid #3c44521a;border-radius:16px;flex-direction:column;width:fit-content;min-width:0;max-width:min(1240px,100vw - 36px);height:fit-content;max-height:calc(100vh - 144px);transition:width .32s cubic-bezier(.33,1,.68,1),max-width .32s cubic-bezier(.33,1,.68,1),min-width .32s cubic-bezier(.33,1,.68,1),box-shadow .22s,transform .32s cubic-bezier(.33,1,.68,1),border-radius .32s cubic-bezier(.33,1,.68,1);display:flex;position:fixed;top:118px;right:18px;overflow:hidden;transform:translate(0);box-shadow:0 2px 12px #3c44520a}.toolwin__head{background:var(--toolwin-bg,#3c445205);border-bottom:1px solid #3c445214;flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;transition:background-color .32s,border-bottom-color .32s;display:flex}.toolwin__title{letter-spacing:.12em;text-transform:uppercase;color:#3c44529e;min-width:0;font-size:12px;font-weight:900}.toolwin__meta{letter-spacing:.02em;text-transform:none;color:#3c4452b3;font-variant-numeric:tabular-nums;margin-left:8px;font-size:12px;font-weight:800;transition:opacity .26s}.toolwin__btn{appearance:none;color:#3c4452d9;cursor:pointer;background:#fff9;border:1px solid #3c44521f;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:36px;padding:0;font-weight:900;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.toolwin__btn-icon{display:block}.toolwin__btn:hover{background:#c4b08029;border-color:#c4b08047}.toolwin__body{flex-direction:column;flex:auto;min-height:0;max-height:min(72vh,2000px);padding:14px 14px 16px;transition:opacity .28s,transform .28s,max-height .34s cubic-bezier(.33,1,.68,1),padding .34s cubic-bezier(.33,1,.68,1);display:flex;overflow:hidden}.toolwin__body .balance-editor{box-shadow:none;background:0 0;border:none;padding:0}.toolwin.is-collapsed{resize:none;width:52px;min-width:52px;max-width:52px;transform:translate(0)}.toolwin.is-collapsed .toolwin__body{opacity:0;pointer-events:none;max-height:0;margin:0;padding-top:0;padding-bottom:0;overflow:hidden;transform:translate(12px)}.toolwin.is-collapsed .toolwin__meta{opacity:0;pointer-events:none}.toolwin.is-collapsed .toolwin__title{writing-mode:vertical-rl;white-space:nowrap;transform:rotate(180deg)}.toolwin.is-collapsed .toolwin__btn{display:none}.toolwin[data-toolwin=debts]{--toolwin-accent:var(--sage);--toolwin-bg:#8fb0a01f}.toolwin[data-toolwin=savings]{--toolwin-accent:var(--purple);--toolwin-bg:#ada0c224}.toolwin[data-toolwin]{border-color:#3c44521a;box-shadow:0 12px 36px #3c44522e}.toolwin[data-toolwin] .toolwin__head{border-bottom-color:#3c445214}.toolwin[data-toolwin].is-collapsed{border-color:#3c44521f}.toolwin[data-toolwin].is-collapsed .toolwin__head{background:var(--toolwin-accent);border-bottom-color:#0000}.toolwin[data-toolwin].is-collapsed .toolwin__title,.toolwin[data-toolwin].is-collapsed .toolwin__meta{color:#ffffffeb}:root[data-theme=dark] .toolwin[data-toolwin].is-collapsed .toolwin__title,:root[data-theme=dark] .toolwin[data-toolwin].is-collapsed .toolwin__meta{color:#141820eb}:root[data-theme=dark] .toolwin{background:#ffffff0a;border-color:#ffffff1a}:root[data-theme=dark] .toolwin__head{background:#ffffff08;border-bottom-color:#ffffff14}:root[data-theme=dark] .toolwin__title{color:#e9e9f69e}:root[data-theme=dark] .toolwin__meta{color:#e9e9f6b8}:root[data-theme=dark] .toolwin__btn{color:#e9e9f6d9;background:#ffffff0d;border-color:#ffffff1f}:root[data-theme=dark] .toolwin__btn:hover{background:#e1c36a24;border-color:#e1c36a38}@media (max-width:900px){.toolwin{resize:none;width:100%;min-width:0;max-width:none;max-height:none;position:static}.toolwin.is-collapsed{width:100%;min-width:0;max-width:none}.toolwin.is-collapsed .toolwin__title{writing-mode:horizontal-tb;transform:none}.toolwin.is-collapsed .toolwin__btn{transform:none}}.field-inline-action{grid-template-columns:1fr auto;align-items:center;gap:8px;display:grid}.btn-icon{color:#3c4452e6;cursor:pointer;background:#c4b0802e;border:1px solid #c4b08059;border-radius:12px;width:40px;height:40px;font-size:18px;font-weight:900;line-height:1}.btn-icon:hover{background:#c4b08042}.btn-icon:disabled{opacity:.45;cursor:default}:root[data-theme=dark] .btn-icon{color:#e9e9f6eb;background:#e1c36a24;border-color:#e1c36a59}:root[data-theme=dark] .btn-icon:hover{background:#e1c36a38}.editor-table__cell--goal{text-align:center;vertical-align:middle}.editor-table__cell--goal input[type=checkbox]{width:18px;height:18px;accent-color:var(--purple);cursor:pointer}.balance-editor{background:var(--paper);border:1px solid #3c44521a;border-radius:16px;padding:26px 28px 28px;box-shadow:0 2px 12px #3c44520a}.balance-editor-note{color:#666;margin-bottom:22px;font-size:14px;line-height:1.5}.balance-editor-grid{grid-template-columns:1fr 1fr;gap:16px 24px;margin-bottom:20px;display:grid}.balance-field label{letter-spacing:1.5px;text-transform:uppercase;color:#888;margin-bottom:6px;font-size:10px;font-weight:600;display:block}.balance-field input{width:100%;color:var(--text);background:#fff;border:1px solid #3c44521f;border-radius:10px;padding:10px 12px;font-family:DM Sans,sans-serif;font-size:16px}.balance-field input:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px #c4b08033}.balance-field-hint{color:#aaa;margin-top:4px;font-size:11px;line-height:1.35}.balance-editor-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}.balance-editor-actions-primary{flex-wrap:wrap;flex:1;align-items:center;gap:10px;min-width:0;display:flex}.balance-editor-actions-add{flex-shrink:0;margin-left:auto}.btn-hide-editor{margin-left:auto}.balance-editor-actions button{cursor:pointer;border:none;border-radius:10px;padding:10px 18px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:600}.btn-reset{color:var(--text);background:#3c445214}.btn-reset:hover{background:#3c44521f}.btn-save{color:var(--text);background:#c4b08038;border:1px solid #c4b08059;transition:background .15s,border-color .15s,color .15s,opacity .15s}.btn-save:hover{background:#c4b0804d}#btn-save-balances{cursor:pointer;opacity:1}#btn-save-balances:disabled{opacity:.45;cursor:default}#btn-save-balances:not(:disabled):hover{background:#c4b0804d}.btn-undo{color:var(--text);background:#3c445214}.btn-undo:hover{background:#3c44521f}.balance-saved-hint{color:#888;font-size:12px}.debts-editor-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 14px;margin-top:4px;display:flex}.debts-editor-header--sort-only{justify-content:flex-end}.debts-editor-title{letter-spacing:1.5px;text-transform:uppercase;color:#888;font-size:10px;font-weight:700}.debts-editor-sort{align-items:center;gap:8px;display:flex}.debts-editor-sort-label{color:#666;white-space:nowrap;font-size:11px;font-weight:600}.debts-editor-sort-select{color:var(--text);cursor:pointer;background:#ffffffe6;border:1px solid #3c445226;border-radius:10px;max-width:100%;padding:6px 28px 6px 10px;font-size:12px;font-weight:600}.debts-editor-sort-select:focus{outline-offset:1px;outline:2px solid #6b8e6b73}.goal-editor-dialog .debts-editor-sort-select:focus{outline-offset:1px;outline:2px solid #1a73e866}:root[data-theme=dark] .debts-editor-sort-label{color:#aaa}:root[data-theme=dark] .debts-editor-sort-select{color:var(--text);background:#ffffff14;border-color:#ffffff1f}.btn-add-debt{color:var(--text);cursor:pointer;background:#3c445214;border:none;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700}.btn-add-debt:hover{background:#3c44521f}.debts-editor-list{-webkit-overflow-scrolling:touch;background:#3c445205;border:1px solid #3c445214;border-radius:12px;min-height:0;max-height:min(60vh,560px);margin-top:10px;padding:6px 10px 8px 8px;display:block;overflow:auto}.editor-table{border-collapse:separate;border-spacing:0;table-layout:auto;width:max-content;min-width:0;font-size:14px}.editor-table thead th{z-index:2;text-align:left;letter-spacing:.12em;text-transform:uppercase;color:#3c44528c;background:var(--paper);white-space:nowrap;border-bottom:1px solid #3c44521f;padding:8px 10px;font-size:10px;font-weight:800;position:sticky;top:0}.editor-table .editor-table__th--action{width:1%}.editor-table tbody tr.debt-row,.editor-table tbody tr.savings-row{background:0 0}.editor-table tbody tr.debt-row td,.editor-table tbody tr.savings-row td{vertical-align:middle;white-space:nowrap;border-bottom:1px solid #3c445212;padding:8px 10px}.editor-table tbody tr.debt-row:hover,.editor-table tbody tr.savings-row:hover{background:#3c445208}.editor-table__cell--name input{min-width:12.5rem}.editor-table td input[type=text],.editor-table td input[type=date]{color:var(--text);background:#fff;border:1px solid #3c44521f;border-radius:10px;min-width:5.5rem;padding:8px 10px;font-size:14px}.editor-table td input:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px #c4b08033}.editor-table__cell--pay .field-inline-action input{min-width:6rem}.debt-row .balance-field{margin:0}.debt-row .balance-field input{border-radius:10px;padding:9px 10px;font-size:14px}.debt-row .balance-field input[readonly]{background:#ffffffa6}.goal-editor-dialog .debts-editor-list,.goal-editor-dialog .savings-editor-list{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:0 0;border:none;flex:auto;gap:12px;min-height:0;max-height:min(52vh,520px);padding:4px 2px 8px;overflow:auto}.goal-editor-dialog .debt-row,.goal-editor-dialog .savings-row{background:var(--paper);box-shadow:var(--md-elevation-1);border:none;border-radius:12px;padding:16px;transition:box-shadow .2s}.goal-editor-dialog .debt-row:hover,.goal-editor-dialog .savings-row:hover{box-shadow:var(--md-elevation-2)}.goal-editor-dialog .debt-row .balance-field input,.goal-editor-dialog .savings-row .balance-field input{background:var(--md-surface-tint);border:none;border-radius:8px;padding:12px 14px;font-size:14px;transition:background .15s,box-shadow .15s}.goal-editor-dialog .debt-row .balance-field input:focus,.goal-editor-dialog .savings-row .balance-field input:focus{background:#3c44520f;outline:none;box-shadow:inset 0 0 0 2px #1a73e873}.goal-editor-dialog .debt-row .balance-field input[readonly],.goal-editor-dialog .savings-row .balance-field input[readonly]{cursor:default;color:var(--text);background:#ffffffa6}.goal-editor-dialog .debt-row .balance-field input[readonly]:focus,.goal-editor-dialog .savings-row .balance-field input[readonly]:focus{box-shadow:none;background:#ffffffa6;outline:none}.goal-editor-dialog .debts-editor-header{flex-shrink:0;margin-top:0;margin-bottom:4px}.goal-editor-dialog .debts-editor-sort-select{background:var(--md-surface-tint);box-shadow:none;border:none;border-radius:8px;padding:10px 32px 10px 14px}.goal-editor-dialog .btn-remove-debt,.goal-editor-dialog .btn-remove-savings{letter-spacing:.02em;text-transform:none;border-radius:20px;padding:10px 16px;font-weight:600}.goal-editor-dialog .balance-editor-actions{border-top:none;flex-shrink:0;margin-top:16px;padding-top:8px}.goal-editor-dialog .btn-add-debt{color:var(--text);background:#c4b08033;font-weight:700}.goal-editor-dialog .btn-add-debt:hover{background:#c4b0804d}:root[data-theme=dark] .goal-editor-dialog .btn-add-debt{color:var(--text);background:#c4b08038}:root[data-theme=dark] .goal-editor-dialog .btn-add-debt:hover{background:#c4b08052}.editor-empty-state{text-align:center;background:linear-gradient(180deg, #1a73e80f 0%, var(--md-surface-tint) 100%);min-height:200px;max-height:min(50vh,420px);box-shadow:none;border:none;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;padding:40px 28px 48px;display:flex}.editor-empty-state--savings{background:linear-gradient(#6b5b8a1a 0%,#6b5b8a0a 100%)}.editor-empty-state__icon{opacity:.9;margin-bottom:16px;font-size:40px;line-height:1}.editor-empty-state__title{color:var(--md-on-surface);letter-spacing:.01em;margin:0 0 10px;font-family:DM Sans,sans-serif;font-size:18px;font-weight:700}.editor-empty-state__text{color:var(--md-on-surface-variant);max-width:400px;margin:0;font-size:14px;line-height:1.55}.editor-empty-state__text strong{color:var(--md-on-surface);font-weight:700}:root[data-theme=dark] .editor-empty-state{background:linear-gradient(#1a73e81f 0%,#ffffff0a 100%)}:root[data-theme=dark] .editor-empty-state--savings{background:linear-gradient(#6b5b8a33 0%,#ffffff0a 100%)}:root[data-theme=dark] .editor-empty-state__title{color:#f5f0e8eb}:root[data-theme=dark] .editor-empty-state__text{color:#f5f0e8a6}:root[data-theme=dark] .editor-empty-state__text strong{color:#f5f0e8e6}.btn-remove-debt{color:var(--red);cursor:pointer;background:#b85c5c29;border:none;border-radius:10px;padding:9px 10px;font-size:12px;font-weight:800}.btn-remove-debt:hover{background:#b85c5c38}.savings-editor-list{-webkit-overflow-scrolling:touch;background:#6b5b8a0a;border:1px solid #6b5b8a1f;border-radius:12px;min-height:0;max-height:min(60vh,560px);margin-top:10px;padding:6px 10px 8px 8px;display:block;overflow:auto}.savings-row .balance-field{margin:0}.savings-row .balance-field input{border-radius:10px;padding:9px 10px;font-size:14px}.btn-remove-savings{color:var(--red);cursor:pointer;background:#b85c5c29;border:none;border-radius:10px;padding:9px 10px;font-size:12px;font-weight:800}.btn-remove-savings:hover{background:#b85c5c38}:root[data-theme=dark] .savings-editor-list{background:#ffffff08;border-color:#ffffff1a}:root[data-theme=dark] .goal-editor-dialog .debts-editor-list,:root[data-theme=dark] .goal-editor-dialog .savings-editor-list{background:0 0}.goal3-savings{grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;display:grid}.goal3-savings-account{background:#6b5b8a1a;border:1px solid #6b5b8a2e;border-radius:12px;padding:12px}.goal3-savings-head{margin-bottom:8px}.goal3-savings-title-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;width:100%;margin-bottom:4px;display:flex}.goal3-savings-name{color:var(--purple);flex:1;min-width:0;font-size:13px;font-weight:800}.goal3-savings-balance{color:#3c4452f2;white-space:nowrap;font-size:14px;font-weight:800}.goal3-savings-meta{color:#666;width:100%;font-size:12px}.goal3-savings-goals-details{margin-top:2px}.goal3-savings-goals-summary{cursor:pointer;color:var(--purple);-webkit-user-select:none;user-select:none;border-top:1px solid #6b5b8a26;align-items:center;gap:8px;padding:8px 0 6px;font-size:12px;font-weight:700;list-style:none;display:flex}.goal3-savings-goals-summary::-webkit-details-marker{display:none}.goal3-savings-goals-chevron{border-right:2px solid var(--purple);border-bottom:2px solid var(--purple);flex-shrink:0;width:.5em;height:.5em;transition:transform .3s;display:inline-block;transform:rotate(-45deg)}.goal3-savings-goals-details[open] .goal3-savings-goals-chevron{transform:rotate(45deg)}.goal3-savings-goals-summary-title{flex:1;min-width:0}.goal3-savings-goals-summary-meta{color:#3c44528c;font-size:11px;font-weight:600}.goal3-savings-goals-anim{opacity:0;max-height:0;transition:max-height .45s ease-in-out,opacity .3s;overflow:hidden}.goal3-savings-goals-details[open] .goal3-savings-goals-anim{opacity:1;max-height:1200px}:root[data-theme=dark] .goal3-savings-balance{color:#e9e9f6eb}:root[data-theme=dark] .goal3-savings-goals-summary-meta{color:#e9e9f680}.goal3-savings-progress{margin-top:8px}.goal3-savings-not-goal{color:#888;font-size:12px;font-weight:600}.goal3-savings-deposits{color:#555;margin-top:10px;font-size:12px}.goal3-savings-deposits-summary{cursor:pointer;color:var(--sage);font-weight:700;list-style:none}.goal3-savings-deposits-summary::-webkit-details-marker{display:none}.goal3-savings-deposits-empty{color:#888;padding:6px 0 2px;font-size:12px}.goal3-savings-deposits-list{flex-direction:column;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.goal3-savings-deposit-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.goal3-savings-deposit-meta{color:#444}:root[data-theme=dark] .goal3-savings-meta{color:#ffffff8c}:root[data-theme=dark] .goal3-savings-not-goal{color:#ffffff73}:root[data-theme=dark] .goal3-savings-deposits{color:#ffffffb8}:root[data-theme=dark] .goal3-savings-deposits-empty{color:#ffffff73}:root[data-theme=dark] .goal3-savings-deposit-meta{color:#ffffffc7}.monthly-debt-goal-wrap{border-top:1px solid #5a7a6a26;margin-top:14px;padding-top:12px}.monthly-debt-goal-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:8px;display:flex}.monthly-debt-goal-title{letter-spacing:1.2px;text-transform:uppercase;color:var(--sage);font-size:11px;font-weight:700}.monthly-debt-goal-meta{color:#777;font-size:11px}.monthly-debt-goal-bar.progress-wrap{margin-top:0}.monthly-debt-goal-hint{color:#777;margin:8px 0 0;font-size:11px;line-height:1.4}:root[data-theme=dark] .monthly-debt-goal-meta,:root[data-theme=dark] .monthly-debt-goal-hint{color:#ffffff8c}.goal2-debts-wrap{margin-top:14px;margin-bottom:14px}.goal2-debts-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 14px;margin-bottom:10px;display:flex}.goal2-debts-toolbar-title{letter-spacing:1.5px;text-transform:uppercase;color:#888;font-size:10px;font-weight:700}:root[data-theme=dark] .goal2-debts-toolbar-title{color:#aaa}.debts-progress-sort{align-items:center;gap:8px;display:flex}.goal2-debts{grid-template-columns:1fr 1fr;gap:12px;display:grid}.goal2-debt{background:#5a7a6a1a;border:1px solid #5a7a6a2e;border-radius:12px;padding:12px}.goal2-debt-head{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:8px;display:flex}.goal2-debt-name{color:var(--sage);font-size:13px;font-weight:800}.goal2-debt-meta{color:#666;font-size:12px}.goal2-debt-payments{color:#555;margin-top:10px;font-size:12px}.goal2-debt-payments-summary{cursor:pointer;color:var(--sage);font-weight:700;list-style:none}.goal2-debt-payments-summary::-webkit-details-marker{display:none}.goal2-debt-payments-empty{color:#888;padding:6px 0 2px;font-size:12px}.goal2-debt-payments-list{flex-direction:column;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.goal2-debt-payment-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.goal2-debt-payment-meta{color:#444}.goal2-remove-payment,.goal3-remove-deposit{color:var(--red);cursor:pointer;background:#b85c5c1f;border:1px solid #b85c5c59;border-radius:8px;padding:4px 10px;font-family:inherit;font-size:11px;font-weight:700}.goal2-remove-payment:hover,.goal3-remove-deposit:hover{background:#b85c5c33}:root[data-theme=dark] .goal2-debt-payments{color:#ffffffb8}:root[data-theme=dark] .goal2-debt-payments-empty{color:#ffffff73}:root[data-theme=dark] .goal2-debt-payment-meta{color:#ffffffc7}.section-eyebrow{letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:8px;font-size:10px;font-weight:600}.section-title{margin-bottom:28px;font-family:Playfair Display,serif;font-size:30px;font-weight:800;line-height:1.15}.section-title-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:28px;display:flex}.section-title-row .section-title{margin-bottom:0}.top-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.top-actions-hint{color:#666;max-width:720px;font-size:13px;line-height:1.45}:root[data-theme=dark] .top-actions-hint{color:#ffffffa6}.goal-card-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.goal-card-head .goal-tag{margin-bottom:0}.toggle-goal-editor-btn{letter-spacing:.2px;color:var(--gold);cursor:pointer;white-space:nowrap;background:#c4b0802e;border:1px solid #c4b08059;border-radius:999px;padding:10px 14px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:800}.toggle-goal-editor-btn:hover{background:#c4b08040}.goal-editor-inner{padding:0}.goal-editor-dialog .balance-editor--dialog{box-shadow:none;background:0 0;border:none;flex-direction:column;flex:auto;min-height:0;margin:0;padding:0;display:flex}.section-sub{color:#666;margin-top:-14px;margin-bottom:18px;font-size:14px;line-height:1.5}.timeline-wrap{background:var(--paper);-webkit-overflow-scrolling:touch;border:1px solid #3c445212;border-radius:14px;overflow:auto hidden}.timeline-table{border-collapse:collapse;width:100%;min-width:980px}.timeline-table th,.timeline-table td{border-bottom:1px solid #3c44520f;padding:10px 12px;font-size:13px}.timeline-table th{background:var(--ink);color:var(--cream);letter-spacing:2px;text-transform:uppercase;text-align:left;font-size:10px;font-weight:500}.timeline-table td.num{text-align:right;font-variant-numeric:tabular-nums}.timeline-table tr:last-child td{border-bottom:none}.checkin-wrap{background:var(--paper);border:1px solid #3c445212;border-radius:14px;margin-bottom:14px;padding:16px}.checkin-form{grid-template-columns:180px 1fr auto;align-items:end;gap:12px;display:grid}.checkin-actions{justify-content:flex-end;display:flex}.checkin-list{gap:10px;display:grid}.checkin-item{background:var(--paper);border:1px solid #3c445212;border-radius:14px;grid-template-columns:1fr auto;gap:10px;padding:14px 16px;display:grid}.checkin-meta{color:#888;letter-spacing:1px;text-transform:uppercase;font-size:11px;font-weight:700}.checkin-note{color:#666;margin-top:6px;font-size:14px}.checkin-delete{color:var(--red);cursor:pointer;background:#b85c5c29;border:none;border-radius:10px;height:fit-content;padding:9px 10px;font-size:12px;font-weight:800}.checkin-delete:hover{background:#b85c5c38}.checkin-list.checkin-log{display:block}.checkin-log__inner{flex-direction:column;gap:12px;display:flex}.checkin-log__head{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:10px 12px;display:flex}.checkin-log__hint{letter-spacing:.06em;text-transform:uppercase;color:#3c445273;flex:0 auto;max-width:100%;margin:0;font-size:12px;font-weight:700}.checkin-log-empty{color:#888;padding:8px 0;font-size:13px}.checkin-log__preview{gap:10px;display:grid}.checkin-log__more-wrap{grid-template-rows:0fr;transition:grid-template-rows .75s cubic-bezier(.33,1,.68,1);display:grid}.checkin-log__more-wrap.is-expanded{grid-template-rows:1fr}.checkin-log__more-inner{gap:10px;min-height:0;display:grid;overflow:hidden}@media (prefers-reduced-motion:reduce){.checkin-log__more-wrap{transition:none}}.checkin-log__toolbar{flex-wrap:wrap;flex:none;justify-content:flex-start;align-items:center;gap:8px 10px;margin-top:0;display:inline-flex}@media (max-width:520px){.checkin-log__head{flex-direction:column;align-items:stretch}}.checkin-log__toggle,.checkin-log__show-all{color:var(--blue);cursor:pointer;background:#3a5f8a1a;border:1px solid #3a5f8a66;border-radius:10px;padding:10px 16px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:700;transition:background .15s,border-color .15s}.checkin-log__toggle:hover,.checkin-log__show-all:hover{background:#3a5f8a2e}.checkin-log__toggle{scroll-margin-top:72px;scroll-margin-bottom:24px}.checkin-log__show-all{color:var(--gold);background:#c4b0801f;border-color:#c4b08073}.checkin-log__show-all:hover{background:#c4b08033}.checkin-log-dialog{width:min(520px,100vw - 32px);height:fit-content;max-height:min(85vh,720px);box-shadow:none;background:0 0;border:none;border-radius:16px;margin:auto;padding:0;position:fixed;inset:0}.checkin-log-dialog::backdrop{background:#0a0c148c}.checkin-log-dialog__chrome{background:var(--paper);border:1px solid #3c44521a;border-radius:16px;flex-direction:column;width:100%;max-height:min(85vh,720px);display:flex;overflow:hidden;box-shadow:0 24px 48px #00000047}.checkin-log-dialog__header{background:var(--ink);color:var(--cream);border-bottom:1px solid #3c445214;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.checkin-log-dialog__title{margin:0;font-family:Playfair Display,Georgia,serif;font-size:20px;font-weight:700}.checkin-log-dialog__close{width:40px;height:40px;color:var(--cream);cursor:pointer;background:#ffffff14;border:none;border-radius:10px;flex-shrink:0;font-size:24px;line-height:1;transition:background .15s}.checkin-log-dialog__close:hover{background:#ffffff24}.checkin-log-dialog__body{-webkit-overflow-scrolling:touch;flex:1;gap:10px;min-height:0;padding:14px 16px 18px;display:grid;overflow-y:auto}.checkin-dialog-empty{color:#888;margin:0;font-size:14px}:root[data-theme=dark] .checkin-log__hint{color:#e9e9f673}:root[data-theme=dark] .checkin-log-dialog__chrome{border-color:#ffffff1a;box-shadow:0 24px 56px #00000080}:root[data-theme=dark] .checkin-log-dialog__header{border-bottom-color:#ffffff14}.goal-editor-dialog{width:min(960px,100vw - 24px);height:fit-content;max-height:min(92vh,920px);box-shadow:none;background:0 0;border:none;border-radius:16px;margin:auto;padding:0;position:fixed;inset:0}.goal-editor-dialog[open]{flex-direction:column;min-height:0;display:flex}.goal-editor-dialog::backdrop{background:#0a0c148c}.goal-editor-dialog__chrome{background:var(--paper);border:none;border-radius:16px;flex-direction:column;flex:auto;width:100%;min-height:0;max-height:min(92vh,920px);display:flex;overflow:hidden;box-shadow:0 8px 10px #0000001f,0 3px 14px #00000014,0 24px 48px #0003}.goal-editor-dialog__header{background:var(--ink);color:var(--cream);border-bottom:none;flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 22px;display:flex;box-shadow:0 1px #ffffff0f}.goal-editor-dialog__header-main{flex-wrap:wrap;align-items:baseline;gap:8px 14px;min-width:0;display:flex}.goal-editor-dialog__title{margin:0;font-family:Playfair Display,Georgia,serif;font-size:20px;font-weight:700}.goal-editor-dialog__total{font-variant-numeric:tabular-nums;color:#f5f0e8e0;letter-spacing:.02em;font-family:DM Sans,sans-serif;font-size:14px;font-weight:600}.goal-editor-dialog__close{width:40px;height:40px;color:var(--cream);cursor:pointer;background:#ffffff14;border:none;border-radius:10px;flex-shrink:0;font-size:24px;line-height:1;transition:background .15s}.goal-editor-dialog__close:hover{background:#ffffff24}.goal-editor-dialog__body{flex-direction:column;flex:auto;min-height:0;padding:18px 22px 24px;display:flex;overflow:hidden}:root[data-theme=dark] .goal-editor-dialog__chrome{box-shadow:0 8px 10px #00000059,0 12px 40px #0000008c}:root[data-theme=dark] .goal-editor-dialog__header{box-shadow:0 1px #ffffff0f}:root[data-theme=dark] .goal-editor-dialog .debt-row,:root[data-theme=dark] .goal-editor-dialog .savings-row{background:#ffffff0f;box-shadow:0 1px 3px #00000059}:root[data-theme=dark] .goal-editor-dialog .debt-row:hover,:root[data-theme=dark] .goal-editor-dialog .savings-row:hover{box-shadow:0 2px 8px #00000073}:root[data-theme=dark] .goal-editor-dialog .debt-row .balance-field input:not([readonly]),:root[data-theme=dark] .goal-editor-dialog .savings-row .balance-field input:not([readonly]){color:var(--text);background:#ffffff14}:root[data-theme=dark] .goal-editor-dialog .debt-row .balance-field input:focus:not([readonly]),:root[data-theme=dark] .goal-editor-dialog .savings-row .balance-field input:focus:not([readonly]){background:#ffffff1a;box-shadow:inset 0 0 0 2px #8ab4f88c}:root[data-theme=dark] .goal-editor-dialog .debt-row .balance-field input[readonly],:root[data-theme=dark] .goal-editor-dialog .savings-row .balance-field input[readonly]{color:var(--text);opacity:.92;cursor:default;background:#ffffff1f}:root[data-theme=dark] .goal-editor-dialog .debt-row .balance-field input[readonly]:focus,:root[data-theme=dark] .goal-editor-dialog .savings-row .balance-field input[readonly]:focus{box-shadow:none;background:#ffffff1f;outline:none}:root[data-theme=dark] .goal-editor-dialog .debts-editor-sort-select{color:var(--text);background:#ffffff1a;border:none}.status-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.status-card{background:var(--paper);border:1px solid #3c445212;border-radius:14px;padding:22px 24px;position:relative;overflow:hidden}.status-card:before{content:"";border-radius:14px 14px 0 0;height:3px;position:absolute;top:0;left:0;right:0}.status-card.positive:before{background:var(--sage)}.status-card.negative:before{background:var(--red)}.status-card.neutral:before{background:var(--blue)}.status-card.income:before{background:var(--gold)}.status-label{letter-spacing:1.5px;text-transform:uppercase;color:#999;margin-bottom:8px;font-size:11px}.status-value{margin-bottom:4px;font-family:Playfair Display,serif;font-size:32px;font-weight:800}.status-card.positive .status-value{color:var(--sage)}.status-card.negative .status-value{color:var(--red)}.status-card.neutral .status-value{color:var(--blue)}.status-card.income .status-value{color:var(--gold)}.status-note{color:#888;font-size:12px}.networth-wrap{background:var(--paper);border:1px solid #3c445212;border-radius:14px;margin-top:14px;padding:22px 24px}.networth-label{letter-spacing:1.5px;text-transform:uppercase;color:#999;margin-bottom:12px;font-size:11px}.networth-bar-track{background:#3c445214;border-radius:99px;height:14px;margin-bottom:10px;position:relative;overflow:hidden}.networth-bar-fill{background:linear-gradient(90deg, var(--sage), #9bc4a8);border-radius:99px;height:100%}.networth-bar-fill.debt{background:linear-gradient(90deg, var(--red), #e0b0b0);position:absolute;top:0;right:0}.networth-legend{color:#777;gap:20px;font-size:12px;display:flex}.networth-legend span{align-items:center;gap:6px;display:flex}.dot-sage{background:var(--sage);border-radius:50%;width:8px;height:8px}.dot-red{background:var(--red);border-radius:50%;width:8px;height:8px}.networth-total{color:var(--text);margin-top:12px;font-family:Playfair Display,serif;font-size:20px;font-weight:700}.networth-total span{color:#888;font-family:DM Sans,sans-serif;font-size:13px;font-weight:400}.goals-grid{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px;display:grid}.goal-card{border-radius:14px;padding:26px 24px;position:relative;overflow:hidden}.goal-card.primary{background:var(--ink);color:var(--cream);grid-column:1/-1}.goal-card.secondary-a{background:var(--sage-light);grid-column:1/-1}.goal-card.secondary-b{background:var(--purple-light);grid-column:1/-1}.goal-tag{letter-spacing:2px;text-transform:uppercase;opacity:.6;margin-bottom:10px;font-size:10px;font-weight:600}.goal-card.primary .goal-tag{color:var(--gold);opacity:1}.goal-card.secondary-a .goal-tag{color:var(--sage)}.goal-card.secondary-b .goal-tag{color:var(--purple)}.goal-value{margin-bottom:6px;font-family:Playfair Display,serif;font-size:42px;font-weight:900;line-height:1}.goal-card.primary .goal-value{color:var(--gold)}.goal-card.secondary-a .goal-value{color:var(--sage);font-size:32px}.goal-card.secondary-b .goal-value{color:var(--purple);font-size:32px}.goal-desc{opacity:.75;font-size:13px;line-height:1.5}.goal-card.primary .goal-desc{color:var(--cream)}.goal-when{color:var(--gold);letter-spacing:1.5px;text-transform:uppercase;background:#c4b08033;border-radius:99px;margin-top:12px;padding:4px 12px;font-size:11px;font-weight:600;display:inline-block}.goal-card.secondary-a .goal-when{color:var(--sage);background:#5a7a6a26}.goal-card.secondary-b .goal-when{color:var(--purple);background:#6b5b8a26}.efund-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px;display:grid}.efund-item{background:#6b5b8a14;border:1px solid #6b5b8a1f;border-radius:10px;padding:14px 16px}.efund-item-label{letter-spacing:1.5px;text-transform:uppercase;color:var(--purple);opacity:.8;margin-bottom:6px;font-size:10px}.efund-item-val{color:var(--purple);font-family:Playfair Display,serif;font-size:20px;font-weight:800}.efund-item-note{color:#888;margin-top:3px;font-size:11px}.progress-wrap{margin-top:16px}.progress-label-row{color:#888;justify-content:space-between;margin-bottom:6px;font-size:12px;display:flex}.progress-label-row strong{color:var(--purple);font-family:Playfair Display,serif}.progress-track{background:#3c445214;border-radius:99px;height:10px;overflow:hidden}.progress-fill-purple{background:linear-gradient(90deg, var(--purple), #b8a8cc);border-radius:99px;height:100%}.progress-label-row.debt strong{color:var(--sage)}.progress-fill-debt{background:linear-gradient(90deg, var(--sage), #9bc4a8);border-radius:99px;height:100%}.plan-phases{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px;display:grid}.phase-card{border:1px solid #3c445212;border-radius:14px;padding:24px}.phase-card.p1{background:var(--red-light);border-color:#b85c5c26}.phase-card.p2{background:var(--sage-light);border-color:#5a7a6a26}.phase-num{letter-spacing:2px;text-transform:uppercase;margin-bottom:8px;font-size:10px;font-weight:700}.phase-card.p1 .phase-num{color:var(--red)}.phase-card.p2 .phase-num{color:var(--sage)}.phase-name{margin-bottom:16px;font-family:Playfair Display,serif;font-size:20px;font-weight:800}.phase-row{border-bottom:1px solid #3c445212;justify-content:space-between;align-items:baseline;padding:7px 0;font-size:13px;display:flex}.phase-row:last-child{border-bottom:none}.phase-row .label{color:#666}.phase-row .val{font-family:Playfair Display,serif;font-size:15px;font-weight:700}.phase-card.p1 .val{color:var(--red)}.phase-card.p2 .val{color:var(--sage)}.budget-wrap{background:var(--paper);border:1px solid #3c445212;border-radius:14px;margin-bottom:14px;overflow:hidden}.budget-header{background:var(--ink);color:var(--cream);letter-spacing:2px;text-transform:uppercase;grid-template-columns:1fr auto auto;gap:16px;padding:12px 20px;font-size:10px;font-weight:500;display:grid}.budget-row{border-bottom:1px solid #3c44520f;grid-template-columns:1fr auto auto;align-items:center;gap:16px;padding:13px 20px;font-size:14px;display:grid}.budget-row:last-child{border-bottom:none}.budget-row.total{border-top:2px solid var(--gold-light);background:#faf2e8;font-weight:700}.budget-amount{text-align:right;font-family:Playfair Display,serif;font-weight:700}.budget-pct{color:#aaa;text-align:right;min-width:40px;font-size:12px}.chip{letter-spacing:1px;text-transform:uppercase;border-radius:99px;margin-left:6px;padding:2px 8px;font-size:10px;font-weight:600;display:inline-block}.chip.red{background:var(--red-light);color:var(--red)}.chip.green{background:var(--sage-light);color:var(--sage)}.callout{border-left:4px solid var(--gold);background:#faf2e8;border-radius:0 12px 12px 0;margin:20px 0;padding:16px 20px;font-size:14px}.callout strong{margin-bottom:4px;font-family:Playfair Display,serif;font-size:17px;display:block}.callout.sage{border-color:var(--sage);background:var(--sage-light)}.callout.red{border-color:var(--red);background:var(--red-light)}.callout.blue{border-color:var(--blue);background:var(--blue-light)}.callout.purple{border-color:var(--purple);background:var(--purple-light)}.footer{text-align:center;background:var(--ink);color:#faf6f48c;padding:48px 24px;font-size:13px}.footer strong{color:var(--gold);margin-bottom:6px;font-family:Playfair Display,serif;font-size:22px;display:block}.footer-meta{cursor:pointer;border-top:1px solid #faf6f414;border-radius:12px;justify-content:center;max-width:min(100%,420px);margin-top:14px;margin-left:auto;margin-right:auto;padding:10px 16px 8px;transition:background .15s;display:flex}.footer-meta:hover{background:#faf6f40d}.footer-version{appearance:none;font:inherit;letter-spacing:.06em;text-transform:uppercase;color:#faf6f473;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;min-width:min(100%,300px);min-height:44px;margin:0;padding:10px 16px;font-size:11px;transition:color .15s,background .15s;display:inline-flex}.footer-version:hover{color:#faf6f4bf;background:#faf6f414}.footer-version:focus-visible{outline-offset:2px;outline:2px solid #c4b0808c}@media (max-width:580px){.cover{padding:40px 24px 44px}.cover-stats{grid-template-columns:1fr 1fr}.cover-stat:last-child{border-right:none;grid-column:1/-1}.status-grid,.plan-phases,.goals-grid{grid-template-columns:1fr}.goal-card.primary,.goal-card.secondary-b{grid-column:1}.efund-grid{grid-template-columns:1fr 1fr}.plan-goals-editor__hysa-grid{grid-template-columns:1fr}.plan-goals-editor__header.debts-editor-header{flex-direction:column;align-items:flex-start}.plan-goals-editor__hint{text-align:left;max-width:none}.balance-editor-grid,.goal2-debts,.goal3-savings,.checkin-form{grid-template-columns:1fr}}.badges-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.badge-card{background:var(--paper);cursor:default;border:1px solid #3c445212;border-radius:14px;padding:16px 16px 14px;position:relative;overflow:hidden}.badge-emoji{margin-bottom:10px;font-size:28px;line-height:1;display:inline-block}.badge-name{margin-bottom:4px;font-family:Playfair Display,serif;font-size:16px;font-weight:800}.badge-desc{color:#666;font-family:DM Sans,sans-serif;font-size:13px;line-height:1.45}.badge-date{letter-spacing:1px;text-transform:uppercase;color:#3c44528c;margin-top:10px;font-size:11px;font-weight:800}.badge-locked-note{color:#3c44528c;margin-top:10px;font-size:12px;font-weight:700}.badge-note{color:#666;background:#3c44520a;border:1px solid #3c44520f;border-radius:12px;margin-top:10px;padding:10px 12px;font-size:12px}.badge-card.is-locked{opacity:.45}.badge-card.is-locked .badge-emoji{filter:grayscale()}.badge-card.is-earned{cursor:pointer}.badge-card.is-earned.badge-sage{border-color:#5a7a6a59;box-shadow:0 0 0 3px #5a7a6a1a,0 12px 28px #5a7a6a14}.badge-card.is-earned.badge-gold{border-color:#c4b08059;box-shadow:0 0 0 3px #c4b0801f,0 12px 28px #c4b08014}.badge-card.is-earned.badge-blue{border-color:#3a5f8a59;box-shadow:0 0 0 3px #3a5f8a1a,0 12px 28px #3a5f8a14}@keyframes badge-unlock{0%{transform:scale(.85)}60%{transform:scale(1.05)}to{transform:scale(1)}}.badge-card.just-unlocked{animation:.4s ease-out badge-unlock}:root[data-theme=dark] .badge-desc,:root[data-theme=dark] .badge-note{color:#e9e9f6c7}:root[data-theme=dark] .badge-date,:root[data-theme=dark] .badge-locked-note{color:#e9e9f6a6}:root[data-theme=dark] .badge-note{background:#ffffff0f;border-color:#ffffff1a}.checkin-collapsible{background:0 0;border:none;margin:0;padding:0}.checkin-collapsible__summary{cursor:pointer;flex-wrap:wrap;align-items:baseline;gap:8px 20px;padding:0 0 4px;list-style:none;display:flex}.checkin-collapsible__summary::-webkit-details-marker{display:none}.checkin-collapsible .section-title{margin-bottom:0}.checkin-collapsible__title{margin:0}.checkin-collapsible__body{padding-top:8px}.timeline-empty-msg{color:#3c44529e;background:#3c445208;border:1px dashed #3c445226;border-radius:12px;padding:16px 18px;font-size:14px;line-height:1.55}:root[data-theme=dark] .timeline-empty-msg{color:#e9e9f6b8;background:#ffffff0a;border-color:#ffffff1f}@media (max-width:580px){.badges-grid{grid-template-columns:1fr 1fr}}.history-page .history-hero{max-width:920px;margin:0 auto;padding:48px 24px 40px;position:relative}.history-hero-actions{position:absolute;top:20px;right:20px}.history-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:#3c445273;margin-bottom:10px;font-size:11px;font-weight:800}.history-title{margin-bottom:14px;font-family:Playfair Display,Georgia,serif;font-size:clamp(28px,5vw,40px);font-weight:900;line-height:1.15}.history-lead{color:#3c4452b8;max-width:640px;font-size:15px;line-height:1.65}.history-content{padding-top:8px;padding-bottom:48px}.history-controls{flex-wrap:wrap;align-items:flex-end;gap:16px 24px;margin-bottom:12px;display:flex}.history-control label{letter-spacing:.12em;text-transform:uppercase;color:#3c445280;margin-bottom:6px;font-size:11px;font-weight:800;display:block}.history-control input[type=month]{background:var(--paper);color:var(--text);border:1px solid #3c44521f;border-radius:10px;padding:10px 12px;font-family:DM Sans,sans-serif;font-size:15px;font-weight:600}.history-swap-btn{color:var(--text);cursor:pointer;background:#c4b0801f;border:1px solid #c4b08073;border-radius:10px;align-self:flex-end;margin-bottom:2px;padding:10px 16px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:700}.history-swap-btn:hover{background:#c4b08038}.history-hint{color:#3c44528c;margin-bottom:22px;font-size:13px;line-height:1.5}.history-delta{background:var(--paper);border:1px solid #3c445214;border-radius:16px;margin-bottom:24px;padding:20px 22px}.history-delta-title{margin-bottom:14px;font-family:Playfair Display,Georgia,serif;font-size:20px;font-weight:700}.history-delta-sub{color:#3c445280;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500}.history-delta-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px 20px;display:grid}.history-delta-item{flex-direction:column;gap:4px;display:flex}.history-delta-label{letter-spacing:.08em;text-transform:uppercase;color:#3c445273;font-size:11px;font-weight:800}.history-delta-val{color:var(--sage);font-variant-numeric:tabular-nums;font-size:18px;font-weight:800}.history-columns{grid-template-columns:1fr 1fr;align-items:start;gap:20px;display:grid}.history-card{background:var(--paper);border:1px solid #3c445214;border-radius:16px;padding:22px 20px 20px}.history-card-title{border-bottom:1px solid #3c445214;margin-bottom:18px;padding-bottom:12px;font-family:Playfair Display,Georgia,serif;font-size:22px;font-weight:700}.history-card-block{margin-bottom:20px}.history-card-block:last-child{margin-bottom:0}.history-card-block-head{letter-spacing:.12em;text-transform:uppercase;color:#3c445280;margin-bottom:6px;font-size:11px;font-weight:800}.history-card-lead{color:#3c4452d9;margin-bottom:10px;font-size:14px;font-weight:600}.history-muted{color:#3c445273;font-size:13px;font-style:italic}.history-line-items{margin:0;padding:0;list-style:none}.history-line-items li{border-bottom:1px solid #3c44520d;justify-content:space-between;gap:12px;padding:6px 0;font-size:13px;display:flex}.history-line-items li:last-child{border-bottom:none}.history-line-name{color:#3c4452bf}.history-line-amt{font-variant-numeric:tabular-nums;color:var(--text);font-weight:700}.history-checkin-list{margin:0;padding:0;list-style:none}.history-checkin-list li{border-bottom:1px solid #3c44520d;padding:8px 0;font-size:13px;line-height:1.45}.history-checkin-list li:last-child{border-bottom:none}.history-checkin-date{color:#3c44528c;font-weight:700}:root[data-theme=dark] .history-eyebrow,:root[data-theme=dark] .history-lead,:root[data-theme=dark] .history-hint{color:#e9e9f6a6}:root[data-theme=dark] .history-control input[type=month]{color:var(--text);background:#ffffff0f;border-color:#ffffff1f}:root[data-theme=dark] .history-delta,:root[data-theme=dark] .history-card{background:#ffffff0a;border-color:#ffffff14}:root[data-theme=dark] .history-card-title{border-bottom-color:#ffffff14}:root[data-theme=dark] .history-delta-val{color:var(--sage)}@media (max-width:768px){.history-columns{grid-template-columns:1fr}.history-hero-actions{margin-bottom:16px;position:static}}.history-demo-banner{color:#3c4452d9;background:#3a5f8a1f;border:1px solid #3a5f8a47;border-radius:12px;max-width:920px;margin:0 auto;padding:12px 18px;font-size:14px;line-height:1.5}.history-demo-banner strong{color:var(--blue)}#financial-plan-demo-banner{margin-bottom:28px}.history-demo-toggle{cursor:pointer;color:#3c4452cc;align-items:center;gap:10px;margin-bottom:18px;font-size:14px;font-weight:600;display:flex}.history-demo-toggle input{width:18px;height:18px;accent-color:var(--gold)}.history-insights{margin-bottom:28px}.history-pill-row{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-bottom:22px;display:grid}.history-pill{background:var(--paper);border:1px solid #3c445214;border-radius:14px;padding:14px 16px}.history-pill-k{letter-spacing:.1em;text-transform:uppercase;color:#3c445273;margin-bottom:6px;font-size:10px;font-weight:800}.history-pill-v{font-variant-numeric:tabular-nums;font-size:20px;font-weight:800;line-height:1.2}.history-pill-sub{color:#3c445280;margin-top:6px;font-size:11px;line-height:1.35}.history-pill--debt .history-pill-v{color:var(--red)}.history-pill--sav .history-pill-v{color:var(--sage)}.history-pill--flow .history-pill-v{color:var(--gold)}.history-pill--eng .history-pill-v{color:var(--blue)}.history-bars-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-bottom:28px;display:grid}.history-bar-block{background:var(--paper);border:1px solid #3c445214;border-radius:14px;padding:16px 16px 14px}.history-bar-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:12px;display:flex}.history-bar-title{letter-spacing:.08em;text-transform:uppercase;color:#3c445280;font-size:12px;font-weight:800}.history-bar-ref{color:#3c44528c;font-size:12px}.history-bar-ref strong{color:var(--text);font-weight:800}.history-bar-row{grid-template-columns:52px 1fr auto;align-items:center;gap:10px;margin-bottom:8px;display:grid}.history-bar-row:last-child{margin-bottom:0}.history-bar-tag{text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:800}.history-bar-tag--a{color:var(--blue)}.history-bar-tag--b{color:var(--gold)}.history-bar-track{background:#3c445214;border-radius:999px;height:12px;overflow:hidden}.history-bar-fill{border-radius:999px;height:100%;transition:width .35s}.history-bar-fill--a{background:linear-gradient(90deg,#3a5f8ad9,#3a5f8a8c)}.history-bar-fill--b{background:linear-gradient(90deg,#c4b080f2,#c4b080a6)}.history-bar-amt{font-variant-numeric:tabular-nums;color:#3c4452bf;text-align:right;min-width:72px;font-size:12px;font-weight:700}.history-chart-section{margin-top:8px}.history-chart-title{margin-bottom:12px;font-family:Playfair Display,Georgia,serif;font-size:20px;font-weight:700}.history-chart-sub{color:#3c445273;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500}.history-chart-svg-wrap{background:var(--paper);border:1px solid #3c445214;border-radius:16px;width:100%;padding:8px 0 4px;overflow:hidden}.history-chart-svg{width:100%;height:auto;max-height:280px;display:block}.history-chart-grid{stroke:#3c445214;stroke-width:1px}.history-chart-axis{fill:#3c445273;font-family:DM Sans,sans-serif;font-size:11px}.history-chart-x{fill:#3c445280;font-family:DM Sans,sans-serif;font-size:11px}.history-chart-line{fill:none;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.history-chart-line--debt{stroke:var(--red);opacity:.9}.history-chart-line--savings{stroke:var(--sage);opacity:.95}.history-chart-legend{color:#3c4452a6;flex-wrap:wrap;justify-content:center;gap:16px 22px;padding:10px 16px 14px;font-size:12px;font-weight:600;display:flex}.history-leg{align-items:center;gap:8px;display:inline-flex}.history-leg i{border-radius:999px;width:22px;height:4px;display:inline-block}.history-leg--debt i{background:var(--red)}.history-leg--savings i{background:var(--sage)}.history-chart-empty{text-align:center;color:#3c445280;border:1px dashed #3c445226;border-radius:16px;padding:28px 20px;font-size:14px}:root[data-theme=dark] .history-demo-banner{color:#e9e9f6e0;background:#79a6d81f;border-color:#79a6d847}:root[data-theme=dark] .history-demo-banner strong{color:var(--blue)}:root[data-theme=dark] .history-pill,:root[data-theme=dark] .history-bar-block,:root[data-theme=dark] .history-chart-svg-wrap{background:#ffffff0a;border-color:#ffffff14}:root[data-theme=dark] .history-bar-track{background:#ffffff14}:root[data-theme=dark] .history-chart-grid{stroke:#ffffff14}:root[data-theme=dark] .history-chart-axis,:root[data-theme=dark] .history-chart-x{fill:#e9e9f68c}.appearance-dialog{width:min(440px,100vw - 24px);max-height:min(88vh,720px);box-shadow:none;background:0 0;border:none;border-radius:16px;margin:auto;padding:0;position:fixed;inset:0}.appearance-dialog::backdrop{background:#0a0c1473}.appearance-dialog[open]{flex-direction:column;min-height:0;display:flex}.appearance-dialog__chrome{background:var(--paper);border-radius:16px;flex-direction:column;max-height:min(88vh,720px);display:flex;overflow:hidden;box-shadow:0 8px 10px #3c44521a,0 24px 48px #3c445224}.appearance-dialog__header{background:var(--paper);border-bottom:1px solid #3c44521a;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.appearance-dialog__title{color:var(--text);margin:0;font-family:Playfair Display,Georgia,serif;font-size:20px;font-weight:700}.appearance-dialog__close{width:40px;height:40px;color:var(--text);cursor:pointer;background:#3c44520f;border:none;border-radius:10px;flex-shrink:0;font-size:24px;line-height:1;transition:background .15s}.appearance-dialog__close:hover{background:#3c44521a}.appearance-dialog__body{-webkit-overflow-scrolling:touch;padding:14px 18px 20px;overflow-y:auto}.appearance-dialog__intro{color:#3c4452b8;margin:0 0 14px;font-size:13px;line-height:1.45}.appearance-dialog__section{border-top:1px solid #3c44521f;margin-top:18px;padding-top:16px}.appearance-dialog__section-label{letter-spacing:.14em;text-transform:uppercase;color:#3c44528c;margin:0 0 8px;font-size:11px;font-weight:700}.appearance-dialog__dev-hint{color:#3c4452a6;margin:0 0 12px;font-size:12px;line-height:1.45}.appearance-dev-toggle{color:#3c4452e0;cursor:pointer;align-items:flex-start;gap:10px;font-size:13px;line-height:1.4;display:flex}.appearance-dev-toggle input{accent-color:var(--gold);margin-top:3px}:root[data-theme=dark] .appearance-dialog__section{border-top-color:#ffffff1a}:root[data-theme=dark] .appearance-dialog__section-label{color:#e4e6f08c}:root[data-theme=dark] .appearance-dialog__dev-hint{color:#e4e6f09e}:root[data-theme=dark] .appearance-dev-toggle{color:#e4e6f0e0}.palette-options{flex-direction:column;gap:0;display:flex}.palette-option{text-align:left;cursor:pointer;background:#3c445208;border:2px solid #3c44521a;border-radius:12px;align-items:center;gap:12px;width:100%;margin-bottom:8px;padding:10px 12px;font-family:DM Sans,sans-serif;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.palette-option:last-child{margin-bottom:0}.palette-option:hover{background:#3c44520d;border-color:#3c445224}.palette-option--current{border-color:var(--gold);background:#c4b08014;box-shadow:0 0 0 1px #c4b08059}.palette-option__preview{border-radius:8px;flex-shrink:0;width:52px;height:34px;box-shadow:inset 0 0 0 1px #3c44521f}.palette-option[data-palette=pastel] .palette-option__preview{background:linear-gradient(135deg,#7386a8 0%,#c4a86e 45%,#8fb0a0 100%)}.palette-option[data-palette=classic] .palette-option__preview{background:linear-gradient(135deg,#1a1a2e 0%,#c9a84c 50%,#5a7a6a 100%)}.palette-option[data-palette=ocean] .palette-option__preview{background:linear-gradient(135deg,#3d6d86 0%,#c9a575 50%,#5a9b8a 100%)}.palette-option[data-palette=forest] .palette-option__preview{background:linear-gradient(135deg,#3d5a45 0%,#b8942d 50%,#5f8f6a 100%)}.palette-option[data-palette=sunset] .palette-option__preview{background:linear-gradient(135deg,#a85d6b 0%,#e09050 50%,#b89fc9 100%)}.palette-option__text{flex-direction:column;gap:2px;min-width:0;display:flex}.palette-option__name{color:var(--text);font-size:14px;font-weight:700}.palette-option__blurb{color:#3c44529e;font-size:12px;font-weight:500}:root[data-theme=dark] .appearance-dialog__intro{color:#e4e6f0b8}:root[data-theme=dark] .palette-option__blurb{color:#e4e6f094}:root[data-theme=dark] .appearance-dialog__close{color:var(--text);background:#ffffff0f}:root[data-theme=dark] .appearance-dialog__close:hover{background:#ffffff1a}:root[data-theme=dark] .palette-option{background:#ffffff0a;border-color:#ffffff1a}:root[data-theme=dark] .palette-option:hover{background:#ffffff12}:root[data-theme=dark] .palette-option--current{background:#d4c8961a;box-shadow:0 0 0 1px #d4c89659}:root[data-color-palette=classic]{--text:#222830;--ink:#1a1a2e;--cream:#f5f0e8;--gold:#c9a84c;--gold-light:#e8d5a3;--sage:#5a7a6a;--sage-light:#d4e8dd;--red:#b85c5c;--red-light:#f2dada;--blue:#3a5f8a;--blue-light:#d0dfee;--purple:#6b5b8a;--purple-light:#e4dff2;--paper:#faf7f2;--md-elevation-1:0 1px 2px #1a1a2e33, 0 1px 3px 1px #1a1a2e1f;--md-elevation-2:0 2px 6px #1a1a2e29, 0 1px 2px #1a1a2e1a;--md-surface-tint:#1a1a2e0d;--md-on-surface:#1a1a2ee0;--md-on-surface-variant:#1a1a2e94}:root[data-theme=dark][data-color-palette=classic]{--text:#e8eaf2;--ink:#c8ccd8;--cream:#0c0e14;--paper:#12151e;--gold:#d4b056;--gold-light:#352a14;--sage:#7fb79b;--sage-light:#7fb79b29;--red:#e08888;--red-light:#e0888824;--blue:#7a9fd4;--blue-light:#7a9fd42e;--purple:#b8a8d4;--purple-light:#b8a8d429;--md-surface-tint:#e8eaf20f;--md-on-surface:#e8eaf2e6;--md-on-surface-variant:#e8eaf2a3}:root[data-color-palette=ocean]{--text:#2a4556;--ink:#3d6d86;--cream:#f0f7fa;--gold:#c9a575;--gold-light:#e2dfd0;--sage:#5a9b8a;--sage-light:#d4ebe4;--red:#c97a7a;--red-light:#f0e0e0;--blue:#4a8fb8;--blue-light:#d4e8f4;--purple:#7a88b8;--purple-light:#e4e6f4;--paper:#fbfdff;--md-elevation-1:0 1px 2px #2d556e1f, 0 1px 3px 1px #2d556e14;--md-elevation-2:0 2px 6px #2d556e1a, 0 1px 2px #2d556e0f;--md-surface-tint:#2a45560d;--md-on-surface:#233744e0;--md-on-surface-variant:#23374494}:root[data-theme=dark][data-color-palette=ocean]{--text:#e2eef4;--ink:#b8d4e4;--cream:#0f161c;--paper:#141c24;--gold:#d4b882;--gold-light:#2a2820;--sage:#7ec4b0;--sage-light:#7ec4b024;--red:#e0a0a0;--red-light:#e0a0a01f;--blue:#8ab8e0;--blue-light:#8ab8e029;--purple:#a8b0d8;--purple-light:#a8b0d824;--md-surface-tint:#e2eef40f;--md-on-surface:#e2eef4e6;--md-on-surface-variant:#e2eef4a3}:root[data-color-palette=forest]{--text:#2c382f;--ink:#3d5a45;--cream:#f4f6f2;--gold:#b8942d;--gold-light:#e8e4d4;--sage:#5f8f6a;--sage-light:#dde8df;--red:#b07060;--red-light:#f0e0dc;--blue:#4a6b78;--blue-light:#dce8ec;--purple:#7a6b88;--purple-light:#e8e4ec;--paper:#fafbf8;--md-elevation-1:0 1px 2px #283c301f, 0 1px 3px 1px #283c3014;--md-elevation-2:0 2px 6px #283c301a, 0 1px 2px #283c300f;--md-surface-tint:#2c382f0d;--md-on-surface:#243028e0;--md-on-surface-variant:#24302894}:root[data-theme=dark][data-color-palette=forest]{--text:#e6ede8;--ink:#a8c4b0;--cream:#101612;--paper:#161e18;--gold:#d4bc60;--gold-light:#2c2818;--sage:#8fbc9a;--sage-light:#8fbc9a24;--red:#d89888;--red-light:#d898881f;--blue:#8aa8b0;--blue-light:#8aa8b024;--purple:#b0a0c0;--purple-light:#b0a0c01f;--md-surface-tint:#e6ede80f;--md-on-surface:#e6ede8e6;--md-on-surface-variant:#e6ede8a3}:root[data-color-palette=sunset]{--text:#4a3a40;--ink:#a85d6b;--cream:#fff5f2;--gold:#e09050;--gold-light:#f5e0d4;--sage:#a89888;--sage-light:#efe8e4;--red:#d97a7a;--red-light:#fce8e8;--blue:#8fa8c9;--blue-light:#e8eef8;--purple:#b89fc9;--purple-light:#f0eaf4;--paper:#fffaf8;--md-elevation-1:0 1px 2px #7846501a, 0 1px 3px 1px #7846500f;--md-elevation-2:0 2px 6px #78465014, 0 1px 2px #7846500d;--md-surface-tint:#5a3c440d;--md-on-surface:#372830e0;--md-on-surface-variant:#37283094}:root[data-theme=dark][data-color-palette=sunset]{--text:#f2e8ea;--ink:#e0a8b4;--cream:#181214;--paper:#221a1c;--gold:#f0b070;--gold-light:#3a2820;--sage:#c8b0a8;--sage-light:#c8b0a81f;--red:#f0a0a0;--red-light:#f0a0a01f;--blue:#a8c0e0;--blue-light:#a8c0e024;--purple:#d0b8e0;--purple-light:#d0b8e01f;--md-surface-tint:#f2e8ea0f;--md-on-surface:#f2e8eae6;--md-on-surface-variant:#f2e8eaa3}@media print{.no-print,button,input,.balance-editor,.goal-editor-dialog{display:none!important}body{color:#000!important;background:#fff!important}.content{max-width:none!important;padding:0!important}.section{-moz-column-break-inside:avoid;break-inside:avoid;margin-bottom:28px!important}.status-card,.networth-wrap,.budget-wrap,.phase-card,.goal-card,.callout{box-shadow:none!important}.cover{padding:28px 24px 24px!important}.footer{page-break-before:avoid}}html,body{height:100%}.auth-page{background:var(--cream);min-height:100%;color:var(--text);flex-direction:column;display:flex}.auth-page__header{background:var(--ink);color:#faf6f4eb;border-bottom:1px solid #c4a86e47;flex-shrink:0;align-items:stretch;font-family:DM Sans,sans-serif;display:flex;box-shadow:0 2px 14px #5a64781f}.auth-page__brand{letter-spacing:.01em;color:#faf6f4f5;border-right:1px solid #c4a86e38;align-items:center;min-height:48px;padding:0 18px;font-family:Playfair Display,Georgia,Times New Roman,serif;font-size:1.35rem;font-weight:700;text-decoration:none;transition:color .15s,background .15s;display:flex}.auth-page__brand:hover{color:var(--gold);background:#c4b08014}.auth-page__header-nav{align-items:stretch;margin-left:auto;display:flex}.auth-page__header-link{letter-spacing:.02em;color:#faf6f4b8;border-bottom:3px solid #0000;align-items:center;padding:14px 18px;font-size:13px;font-weight:700;text-decoration:none;transition:color .15s,background .15s,border-color .15s;display:flex}.auth-page__header-link:hover{color:var(--cream);background:#c4b08014}.auth-page__main{flex:1;justify-content:center;align-items:center;padding:32px 20px 48px;display:flex}.auth-page__inner{width:100%;max-width:420px}.auth-page__eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--ink);opacity:.85;margin-bottom:8px;font-size:11px;font-weight:800}.auth-page__title{color:var(--ink);margin:0 0 10px;font-family:Playfair Display,Georgia,Times New Roman,serif;font-size:clamp(1.75rem,4vw,2.125rem);font-weight:700;line-height:1.2}.auth-page__lede{color:var(--md-on-surface-variant);margin:0 0 24px;font-size:15px;line-height:1.55}.auth-page__card{background:var(--paper);box-shadow:var(--md-elevation-2);border:1px solid #c4a86e52;border-radius:16px;padding:26px 28px 24px}.auth-page__field{margin-bottom:18px}.auth-page__field:last-of-type{margin-bottom:0}.auth-page__label{letter-spacing:.08em;text-transform:uppercase;color:var(--md-on-surface-variant);margin-bottom:8px;font-size:12px;font-weight:800;display:block}.auth-page__input{box-sizing:border-box;width:100%;color:var(--md-on-surface);background:var(--blue-light);border:1px solid #3c44521f;border-radius:12px;outline:none;padding:12px 14px;font-family:DM Sans,sans-serif;font-size:15px;line-height:1.4;transition:border-color .15s,box-shadow .15s;display:block}.auth-page__input::placeholder{color:#3c424e61}.auth-page__input:focus{border-color:#7386a8a6;box-shadow:0 0 0 3px #7386a82e}.auth-page__hint{color:var(--md-on-surface-variant);margin-top:8px;font-size:12px;line-height:1.45}.auth-page__error{color:#9a3d3d;background:var(--red-light);border:1px solid #b85c5c40;border-radius:10px;margin:0 0 16px;padding:10px 12px;font-size:14px;font-weight:600}.auth-page__submit{color:#faf6f4f5;background:var(--ink);cursor:pointer;border:1px solid #c4a86e59;border-radius:12px;justify-content:center;align-items:center;width:100%;margin-top:22px;padding:12px 18px;font-family:DM Sans,sans-serif;font-size:15px;font-weight:700;transition:background .15s,color .15s,opacity .15s;display:inline-flex;box-shadow:0 1px 2px #525a6c1f}.auth-page__submit:hover:not(:disabled){color:var(--cream);background:#657899}.auth-page__submit:disabled{opacity:.55;cursor:not-allowed}.auth-page__footer{text-align:center;color:var(--md-on-surface-variant);margin-top:20px;font-size:14px;line-height:1.5}.auth-page__footer a{color:var(--ink);border-bottom:1px solid #7386a859;font-weight:700;text-decoration:none;transition:color .15s,border-color .15s}.auth-page__footer a:hover{color:var(--gold);border-bottom-color:#c4a86e8c}:root[data-theme=dark] .auth-page{color:#e6e8f0e0;background:#141820}:root[data-theme=dark] .auth-page__title{color:#e9e9f6f2}:root[data-theme=dark] .auth-page__lede,:root[data-theme=dark] .auth-page__footer,:root[data-theme=dark] .auth-page__hint{color:#c8cddcb8}:root[data-theme=dark] .auth-page__card{background:#1c202cf5;border-color:#d4c89638}:root[data-theme=dark] .auth-page__input{color:#e9e9f6eb;background:#141822f2;border-color:#c8cddc1f}.home-page{background:var(--cream);min-height:100%;color:var(--text);flex-direction:column;display:flex}.home-page__header-aside{border-left:1px solid #c4a86e38;flex-shrink:0;align-items:stretch;display:flex;position:relative}.home-page__header-aside-link{letter-spacing:.02em;color:#faf6f4d1;align-items:center;padding:14px 20px;font-size:13px;font-weight:700;text-decoration:none;transition:color .15s,background .15s;display:flex}.home-page__header-aside-link:hover{color:var(--gold);background:#c4b0801a}.home-page__main{flex:1;width:100%;max-width:720px;margin:0 auto;padding:40px 20px 64px}.home-page__hero-title{color:var(--ink);margin:0 0 12px;font-size:clamp(2.25rem,5vw,2.75rem);font-weight:700;line-height:1.15}.home-page__section-label{letter-spacing:.08em;text-transform:uppercase;color:var(--md-on-surface-variant);margin:0 0 16px;font-size:12px;font-weight:800}.home-page__actions{flex-wrap:wrap;gap:12px;display:flex}.home-page__btn{cursor:pointer;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;min-height:44px;padding:10px 20px;font-family:DM Sans,sans-serif;font-size:14px;font-weight:700;text-decoration:none;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.home-page__btn--primary{color:#faf6f4f5;background:var(--ink);border-color:#c4a86e59;box-shadow:0 1px 2px #525a6c1f}.home-page__btn--primary:hover{color:var(--cream);background:#657899}.home-page__btn--secondary{color:var(--ink);background:var(--sage-light);border:1px solid #8fb0a066}.home-page__btn--secondary:hover{background:#8fb0a047;border-color:#8fb0a08c}.home-page__h2{color:var(--ink);margin:0 0 14px;font-family:Playfair Display,Georgia,Times New Roman,serif;font-size:1.35rem;font-weight:700;line-height:1.3}.home-page__list{color:var(--md-on-surface);margin:0;padding-left:1.2rem;font-size:15px;line-height:1.65}.home-page__list li{margin-bottom:10px}.home-page__list li:last-child{margin-bottom:0}.home-page__list code{color:var(--ink);background:var(--blue-light);border-radius:6px;padding:2px 6px;font-size:.9em}.home-page__card--spaced{margin-top:22px}:root[data-theme=dark] .home-page{color:#e6e8f0e0;background:#141820}:root[data-theme=dark] .home-page__hero-title,:root[data-theme=dark] .home-page__h2{color:#e9e9f6f2}:root[data-theme=dark] .home-page__btn--secondary{color:#dce1f0eb;background:#283040d9;border-color:#788caa59}:root[data-theme=dark] .home-page__list{color:#c8cddce0}:root[data-theme=dark] .home-page__list code{color:#c8d2f0f2;background:#1e2430f2}.re-page h1,.re-page h2,.re-page .re-hero-title,.re-page .section-title.re-heading{font-family:Cormorant Garamond,Playfair Display,Georgia,serif}.re-hero-title{margin-bottom:14px;font-size:clamp(32px,5vw,48px);font-weight:700;line-height:1.1}.re-hero-sub{color:#f5f0e8a6;max-width:560px;margin-bottom:32px;font-size:16px;line-height:1.55}.re-stat-pills{flex-wrap:wrap;gap:10px;display:flex}.re-pill{color:var(--cream);background:#c4b0801f;border:1px solid #c4b08047;border-radius:999px;padding:10px 16px;font-size:13px;font-weight:600}.re-pill strong{color:var(--gold);font-weight:800}.re-calculator-panel{background:var(--paper);border:1px solid #3c44521a;border-radius:16px;margin-bottom:20px;padding:24px 28px}.re-calculator-grid{grid-template-columns:repeat(3,1fr);gap:16px 20px;margin-bottom:16px;display:grid}.re-compare-grid{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px;display:grid}.re-path-card{background:var(--paper);border:1px solid #3c445214;border-radius:14px;padding:20px 22px}.re-path-card.fha{border-top:3px solid var(--sage)}.re-path-card.llc{border-top:3px solid var(--blue)}.re-path-card h3{color:var(--text);margin-bottom:12px;font-family:Cormorant Garamond,Georgia,serif;font-size:22px}.re-kv{border-bottom:1px solid #3c44520f;justify-content:space-between;padding:6px 0;font-size:13px;display:flex}.re-kv span:first-child{color:#666}.re-cf-table-wrap{-webkit-overflow-scrolling:touch;margin-top:8px;overflow-x:auto}.re-cf-table{border-collapse:collapse;width:100%;min-width:640px;font-size:13px}.re-cf-table th,.re-cf-table td{text-align:right;border-bottom:1px solid #3c445214;padding:10px 12px}.re-cf-table th:first-child,.re-cf-table td:first-child{text-align:left}.re-cf-table thead th{background:var(--ink);color:var(--cream);letter-spacing:1.5px;text-transform:uppercase;font-size:10px;font-weight:600}.acct-pos{color:var(--sage);font-weight:700}.acct-neg{color:var(--red);font-weight:700}.re-market-table{border-collapse:collapse;width:100%;font-size:14px}.re-market-table th,.re-market-table td{text-align:left;border-bottom:1px solid #3c445214;padding:12px 14px}.re-market-table thead th{background:var(--ink);color:var(--cream);letter-spacing:2px;text-transform:uppercase;font-size:10px}.re-star{color:var(--gold);font-weight:800}.re-stat-row{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px;display:grid}.re-stat-card{background:var(--paper);text-align:center;border:1px solid #3c445212;border-radius:14px;padding:18px 20px}.re-stat-card .val{color:var(--gold);margin-top:6px;font-family:Cormorant Garamond,Georgia,serif;font-size:28px;font-weight:700}.re-timeline{margin-top:16px;padding-left:24px;position:relative}.re-timeline:before{content:"";background:#c4b08059;border-radius:2px;width:2px;position:absolute;top:0;bottom:0;left:6px}.re-milestone{padding-bottom:22px;padding-left:16px;position:relative}.re-milestone:before{content:"";background:var(--gold);border:2px solid var(--cream);border-radius:50%;width:12px;height:12px;position:absolute;top:4px;left:-21px;box-shadow:0 0 0 2px #c4b0804d}.re-milestone-title{color:var(--text);font-family:Cormorant Garamond,Georgia,serif;font-size:18px;font-weight:700}.re-milestone-body{color:#666;margin-top:4px;font-size:14px;line-height:1.5}.re-footer-sub{color:#f5f0e880;margin-top:8px;font-size:13px}.re-disclaimer{color:#f5f0e861;max-width:640px;margin-top:16px;margin-left:auto;margin-right:auto;font-size:11px;line-height:1.5}:root[data-theme=dark] .re-kv span:first-child,:root[data-theme=dark] .re-milestone-body{color:#e9e9f6b8}:root[data-theme=dark] .re-path-card h3{color:var(--text)}@media (max-width:900px){.re-calculator-grid{grid-template-columns:1fr 1fr}.re-compare-grid,.re-stat-row{grid-template-columns:1fr}}@media (max-width:580px){.re-calculator-grid{grid-template-columns:1fr}}.re-market-search-wrap{position:relative}.re-search-row{flex-wrap:wrap;align-items:flex-end;gap:14px;margin-bottom:8px;display:flex}.re-search-field{flex:260px}.re-search-actions{flex-wrap:wrap;gap:10px;display:flex}.re-search-dropdown{background:var(--paper);z-index:20;border:1px solid #3c44521f;border-radius:12px;max-height:220px;margin-top:-4px;position:absolute;top:auto;left:28px;right:28px;overflow-y:auto;box-shadow:0 8px 24px #3c44521f}.re-search-dropdown button{text-align:left;width:100%;color:var(--text);cursor:pointer;background:0 0;border:none;border-bottom:1px solid #3c44520f;padding:10px 14px;font-family:DM Sans,sans-serif;font-size:14px;display:block}.re-search-dropdown button:hover{background:#c4b0801f}.re-search-dropdown button:last-child{border-bottom:none}.re-search-status{color:#666;min-height:1.2em;margin-top:8px;font-size:13px}.re-current-market{color:var(--text);margin-top:12px;font-size:14px}.re-recent-list{gap:8px;margin-top:10px;list-style:none;display:grid}.re-recent-list li{background:#3c445208;border:1px solid #3c445214;border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;font-size:13px;display:flex}.re-recent-list button.linkish{color:var(--blue);cursor:pointer;background:0 0;border:none;padding:0;font-family:DM Sans,sans-serif;font-size:13px;font-weight:700}.re-recent-list .re-recent-meta{color:#888;font-size:12px}:root[data-theme=dark] .re-search-dropdown{border-color:#ffffff1f;box-shadow:0 8px 28px #00000059}:root[data-theme=dark] .re-search-status{color:#e9e9f6b8}:root[data-theme=dark] .re-recent-list li{background:#ffffff0a;border-color:#ffffff14}.re-pm-toggle{color:var(--text);background:#3c44520a;border:1px solid #3c445214;border-radius:12px;margin-top:4px;padding:12px 14px;font-size:14px;line-height:1.45}.re-pm-toggle label{cursor:pointer;align-items:flex-start;gap:10px;margin:0;font-weight:500;display:flex}.re-pm-toggle input{width:18px;height:18px;accent-color:var(--gold);flex-shrink:0;margin-top:3px}.re-pm-toggle .re-pm-toggle-hint{color:#666;margin-top:6px;padding-left:28px;font-size:12px;font-weight:400;display:block}:root[data-theme=dark] .re-pm-toggle .re-pm-toggle-hint{color:#e9e9f6a6}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
