:root{color:#17201d;background:#f4f7f6;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}html{-webkit-text-size-adjust:100%}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;overflow-x:hidden;background:linear-gradient(180deg,rgba(15,118,110,.08),transparent 340px),#f4f7f6}button,input,select{font:inherit}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;padding:0;margin:-1px}button{cursor:pointer}button:disabled{cursor:not-allowed}.app-shell{width:min(1600px,calc(100% - 24px));margin:0 auto;padding:24px 0 28px}.calculator-shell{padding-top:10px}.app-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.calculator-shell .app-header{margin-bottom:8px}.brand-lockup{display:flex;align-items:center;min-width:0;gap:13px}.brand-mark{display:grid;width:48px;height:48px;flex:0 0 auto;place-items:center;border:1px solid rgba(17,73,66,.16);border-radius:8px;color:#0f766e;background:#fff;box-shadow:0 16px 36px #1c2d2914}.calculator-shell .brand-mark{width:40px;height:40px}.app-header h1{margin:0;color:#101816;font-size:clamp(1.6rem,2vw,2.25rem);line-height:1.02;letter-spacing:0}.calculator-shell .app-header h1{font-size:clamp(1.35rem,1.6vw,1.9rem)}.app-header p,.app-footer{margin:5px 0 0;color:#61706b;font-size:.95rem}.calculator-shell .app-header p{display:none}.header-stat{min-width:230px;padding:12px 14px;border:1px solid rgba(28,45,41,.12);border-radius:8px;background:#fff;text-align:right;box-shadow:0 16px 36px #1c2d2912}.calculator-shell .header-stat{min-width:190px;padding:8px 12px}.header-stat span{display:block;color:#68756f;font-size:.78rem}.header-stat strong{display:block;margin-top:3px;color:#12211d;font-size:1.18rem;overflow-wrap:anywhere}.calculator-shell .header-stat strong{font-size:1.06rem}.scenario-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0}.calculator-shell .scenario-bar{grid-column:1 / -1;min-height:34px}.calculator-nav{display:grid;grid-template-columns:auto minmax(240px,420px) auto;align-items:center;gap:8px;margin-bottom:16px;padding:7px;border:1px solid rgba(28,45,41,.13);border-radius:8px;background:#fff;box-shadow:0 16px 36px #1c2d2912}.calculator-shell .calculator-nav{grid-template-columns:auto minmax(250px,440px) auto;margin-bottom:10px;padding:5px}.nav-home-button,.home-action-button,.home-settings-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;gap:8px;padding:0 12px;border:1px solid rgba(28,45,41,.1);border-radius:8px;color:#53635d;background:#fff;font-weight:850;white-space:nowrap}.calculator-shell .nav-home-button{min-height:34px;padding:0 10px}.nav-home-button svg,.home-action-button svg,.home-settings-actions button svg{flex:0 0 auto}.nav-home-button.active{color:#0f5e59;background:#eef8f6;box-shadow:inset 0 0 0 1px #0f766e2e}.calculator-select-control,.scenario-select-control{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;min-width:0;min-height:40px;padding:0 8px;border:1px solid rgba(28,45,41,.1);border-radius:8px;background:#f8fbfa}.calculator-shell .calculator-select-control,.calculator-shell .scenario-select-control{min-height:34px;padding:0 7px}.calculator-select-control span,.scenario-select-control span{display:inline-flex;align-items:center;gap:7px;color:#60706a;font-size:.82rem;font-weight:850}.calculator-select-control select,.scenario-select-control select{width:100%;min-width:0;min-height:34px;border:0;color:#17231f;background:transparent;font-weight:850;outline:0}.calculator-shell .calculator-select-control select,.calculator-shell .scenario-select-control select{min-height:30px}.nav-share-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;gap:7px;padding:0 11px;border:1px solid rgba(15,118,110,.16);border-radius:8px;color:#0f5e59;background:#eef8f6;font-weight:900;white-space:nowrap}.calculator-shell .nav-share-button{min-height:34px;padding:0 10px}.nav-share-button.copied{color:#0d4c47;background:#dff4ef;box-shadow:inset 0 0 0 1px #0f766e2e}.home-dashboard{display:grid;gap:16px}.home-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-items:center;gap:16px;padding:20px;border:1px solid rgba(28,45,41,.13);border-radius:8px;background:#fff;box-shadow:0 18px 42px #1c2d2914}.home-hero-copy{display:grid;gap:10px;min-width:0}.home-kicker,.home-settings-copy span,.directory-heading span{width:fit-content;padding:6px 9px;border:1px solid rgba(15,118,110,.18);border-radius:8px;color:#0f5e59;background:#fff;font-size:.78rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.home-hero-copy h2,.home-settings-copy h2,.directory-heading h2{margin:0;color:#101816;letter-spacing:0}.home-hero-copy h2{max-width:18ch;font-size:clamp(2rem,4vw,3.45rem);line-height:1;letter-spacing:0}.home-hero-copy p,.home-settings-copy p,.directory-heading p{max-width:70ch;margin:0;color:#53635d;line-height:1.55}.home-hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.home-action-button{min-height:48px;color:#0f5e59;background:#f8fbfa}.home-action-button:first-child{color:#fff;border-color:#0f766e;background:#0f766e}.home-settings-panel{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);align-items:start;gap:14px;padding:16px}.home-settings-copy{display:grid;gap:8px;min-width:0}.home-settings-copy h2,.directory-heading h2{font-size:1.18rem}.home-settings-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}.home-settings-controls .profile-drawer,.home-custom-tax,.home-settings-actions{grid-column:1 / -1}.home-custom-tax{min-width:0}.home-settings-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.home-settings-actions button{width:100%}.home-settings-actions button:first-child,.home-settings-actions button:last-of-type{color:#713f12;border-color:#d19b294d;background:#fff8e8}.calculator-directory{display:grid;gap:14px;padding:16px}.directory-heading{display:flex;align-items:end;justify-content:space-between;gap:14px}.directory-heading>div{display:grid;gap:7px;min-width:0}.directory-search-panel{display:grid;gap:10px}.directory-search-control{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;min-height:48px;gap:9px;border:1px solid rgba(28,45,41,.13);border-radius:8px;background:#f8fbfa;padding:0 12px}.directory-search-control svg{color:#0f766e}.directory-search-control input{width:100%;min-width:0;border:0;outline:0;color:#16231f;background:transparent;font-weight:760}.directory-search-control input::placeholder{color:#7a8782;font-weight:700}.directory-search-control button{display:inline-grid;width:30px;height:30px;place-items:center;border-color:#0f766e2e;color:#0f5e59;background:#eef8f6;padding:0}.directory-filter-chips{display:flex;flex-wrap:wrap;gap:8px}.directory-filter-chips button{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 11px;border:1px solid rgba(28,45,41,.11);border-radius:8px;color:#53635d;background:#f8fbfa;font-size:.84rem;font-weight:850;box-shadow:inset 0 0 0 1px #ffffff8c}.directory-filter-chips button.active{color:#0f5e59;border-color:#0f766e3d;background:#eef8f6}.home-settings-panel,.calculator-directory,.calculator-tile,.directory-empty-state,.ad-panel,.loading-panel{border:1px solid rgba(28,45,41,.13);border-radius:8px;background:#fffffff0;box-shadow:0 18px 42px #1c2d2914}.loading-panel{padding:18px;color:#53635d;font-weight:820}.dashboard-stat{min-width:0;padding:12px;border:1px solid rgba(28,45,41,.1);border-radius:8px;background:#f8fbfa}.dashboard-stat span{display:block;color:#60706a;font-size:.8rem}.dashboard-stat strong{display:block;margin-top:5px;color:#17231f;overflow-wrap:anywhere}.dashboard-control{display:grid;gap:7px}.dashboard-control select{width:100%;min-height:38px;border:1px solid rgba(28,45,41,.13);border-radius:8px;color:#17201d;background:#fff;font-weight:760}.reset-feedback{grid-column:1 / -1;margin:0;color:#0f5e59;font-size:.82rem;font-weight:800}.calculator-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}.calculator-tile{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;min-width:0;min-height:116px;gap:12px;padding:16px;color:#17231f;text-align:left}button.calculator-tile{cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}button.calculator-tile:hover{transform:translateY(-2px);border-color:#0f766e57;box-shadow:0 22px 48px #1c2d291c}.calculator-tile.primary{background:#fff}.calculator-tile.muted{color:#60706a;background:#f8fbfa}.tile-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:8px;color:#0f766e;background:#eef8f6}.calculator-tile.muted .tile-icon{color:#60706a;background:#eef2f1}.calculator-tile strong{display:block;color:#16231f;font-size:1.14rem;overflow-wrap:anywhere}.calculator-tile small{display:block;max-width:48ch;margin-top:5px;color:#60706a;font-size:.86rem;line-height:1.35}.calculator-tile em{align-self:end;padding:7px 9px;border-radius:8px;color:#263f76;background:#eef3ff;font-size:.85rem;font-style:normal;font-weight:820;text-align:center;overflow-wrap:anywhere}.calculator-tile.muted em{color:#60706a;background:#eef2f1}.directory-empty-state{display:grid;justify-items:start;gap:8px;padding:18px;background:#f8fbfa}.directory-empty-state strong{color:#16231f;font-size:1.05rem}.directory-empty-state p{max-width:62ch;margin:0;color:#60706a;line-height:1.45}.directory-empty-state button{min-height:36px;color:#0f5e59;border-color:#0f766e38;background:#eef8f6;font-weight:900}.ad-panel{display:grid;min-width:0;min-height:96px;gap:8px;padding:10px;background:#fff}.dashboard-ad{min-height:110px}.calculator-ad{min-height:96px}.ad-label{color:#7a8782;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.adsbygoogle{display:block;min-width:0;min-height:72px}.scenario-actions{display:flex;align-items:center;gap:8px}.scenario-actions{justify-content:flex-end;flex-wrap:nowrap}.icon-button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;border:1px solid rgba(28,45,41,.14);border-radius:8px;color:#21312d;background:#f7faf9;transition:transform .16s ease,border-color .16s ease,background .16s ease}.calculator-shell .icon-button{min-height:34px}.icon-button{width:36px;color:#0f766e}.icon-button:hover:not(:disabled){transform:translateY(-1px);border-color:#0f766e61;background:#eef8f6}.icon-button:disabled{color:#a0aaa6;background:#f0f3f2}.workspace-grid{--control-panel-width: 360px;--control-rail-width: 56px;--control-sheet-width: 360px;--control-sticky-top: 8px;--control-footer-clearance: 76px;--control-available-height: calc( 100vh - var(--control-sticky-top) - var(--control-footer-clearance) );display:grid;grid-template-areas:"controls result" "controls graph" "controls insight" "controls ad";grid-template-columns:var(--control-rail-width) minmax(0,1fr);align-items:start;gap:18px}.workspace-grid:has(.control-center.is-pinned){grid-template-columns:var(--control-panel-width) minmax(0,1fr)}.workspace-grid>*{min-width:0;max-width:100%}.control-center{--control-accent-surface: #eef8f6;--control-border: rgba(28, 45, 41, .13);--control-muted-surface: #f8fbfa;--control-surface: #ffffff;grid-area:controls;position:sticky;top:var(--control-sticky-top);z-index:35;width:var(--control-rail-width);min-height:min(620px,var(--control-available-height));max-height:var(--control-available-height)}.control-center.is-pinned{width:var(--control-panel-width)}.workspace-grid>.insight-panel{grid-area:insight}.result-panel,.graph-panel,.insight-panel{min-width:0;max-width:100%;border:1px solid rgba(28,45,41,.13);border-radius:8px;background:#fffffff0;box-shadow:0 16px 34px #1c2d2912}.insight-panel{padding:16px}.main-column{display:contents;min-width:0;gap:16px}.main-column>.result-panel{grid-area:result}.main-column>.graph-panel{grid-area:graph}.main-column>.calculator-ad{grid-area:ad}.workspace-grid .result-panel .metric-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.mobile-control-trigger{display:none}.control-rail{display:grid;align-content:start;gap:10px;width:var(--control-rail-width);min-height:min(620px,var(--control-available-height));max-height:var(--control-available-height);padding:8px;border:1px solid var(--control-border);border-radius:8px;background:var(--control-surface);box-shadow:0 16px 34px #1c2d2912}.control-center.is-pinned .control-rail{opacity:0;pointer-events:none}.control-rail-brand,.control-rail-sections button,.control-pin-button,.control-close-button{border:1px solid var(--control-border);border-radius:8px;color:#0f766e;background:var(--control-surface)}.control-rail-brand{display:grid;width:40px;height:40px;place-items:center;background:var(--control-accent-surface)}.control-rail-sections{display:grid;gap:6px}.control-rail-sections button{position:relative;display:grid;width:40px;height:40px;place-items:center;transition:border-color .16s ease,background .16s ease,transform .16s ease}.control-rail-sections button.active{border-color:#0f766e6b;color:#0d5f58;background:var(--control-accent-surface)}.control-rail-sections button:hover{transform:translateY(-1px);border-color:#0f766e61;background:var(--control-accent-surface)}.control-rail-sections button span{position:absolute;z-index:4;top:50%;left:calc(100% + 10px);max-width:220px;padding:7px 9px;overflow:hidden;border:1px solid rgba(28,45,41,.13);border-radius:8px;color:#17231f;background:#fff;box-shadow:0 14px 28px #1c2d291f;font-size:.78rem;font-weight:850;opacity:0;pointer-events:none;text-overflow:ellipsis;transform:translate(-4px,-50%);transition:opacity .14s ease,transform .14s ease;white-space:nowrap}@media(hover:hover){.control-rail-sections button:hover span,.control-rail-sections button:focus-visible span{opacity:1;transform:translateY(-50%)}}.control-sheet{position:absolute;top:0;left:calc(var(--control-rail-width) + 10px);display:grid;grid-template-rows:auto minmax(0,1fr);width:var(--control-sheet-width);min-height:min(520px,var(--control-available-height));max-height:var(--control-available-height);overflow:hidden;border:1px solid rgba(28,45,41,.13);border-radius:8px;background:var(--control-surface);box-shadow:0 22px 46px #1c2d2929;opacity:0;pointer-events:none;transform:translate(-8px);transition:opacity .16s ease,transform .16s ease,visibility .16s ease;visibility:hidden}.control-sheet[data-visible=true]{opacity:1;pointer-events:auto;transform:translate(0);visibility:visible}.control-center.is-pinned .control-sheet{left:0;grid-template-rows:auto auto minmax(0,1fr);width:var(--control-panel-width);box-shadow:0 16px 34px #1c2d2912}.control-sheet-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0;padding:14px;border-bottom:1px solid rgba(28,45,41,.09);background:var(--control-surface)}.control-sheet-header>div:first-child{min-width:0}.control-sheet-kicker{display:block;color:#0f766e;font-size:.75rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.control-sheet-header h2{margin:4px 0 0;color:#17231f;font-size:1.02rem;letter-spacing:0;overflow-wrap:anywhere}.control-sheet-header p{margin:6px 0 0;color:#60706a;font-size:.82rem;line-height:1.35}.control-sheet-actions{display:inline-flex;flex:0 0 auto;gap:6px}.control-pin-button,.control-close-button{display:inline-flex;align-items:center;justify-content:center;min-height:34px;color:#0f766e;font-weight:850;transition:border-color .16s ease,background .16s ease,transform .16s ease}.control-pin-button{gap:6px;padding:0 10px}.control-pin-button[aria-pressed=true]{border-color:#0f766e57;color:#0d5f58;background:var(--control-accent-surface)}.control-close-button{width:34px}.control-pin-button:hover,.control-close-button:hover,.control-rail-brand:hover{transform:translateY(-1px);border-color:#0f766e61;background:var(--control-accent-surface)}.control-sheet-body{display:grid;align-content:start;gap:14px;min-width:0;overflow:auto;padding:14px;background:var(--control-surface);overscroll-behavior:contain;scrollbar-gutter:stable}.control-sheet-footer{display:none}.control-active-section{display:grid;align-content:start;gap:14px;min-width:0}.control-section-drawers,.control-center.is-pinned .control-active-section{display:none}.control-center.is-pinned .control-section-drawers{display:grid;gap:10px}.control-drawer-tools{display:none;gap:8px;padding:10px 14px;border-bottom:1px solid rgba(28,45,41,.08);background:var(--control-surface)}.control-center.is-pinned .control-drawer-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.control-drawer-tools button{min-width:0;min-height:32px;border:1px solid rgba(28,45,41,.12);border-radius:8px;color:#0f5e59;background:var(--control-accent-surface);font-size:.78rem;font-weight:900}.control-drawer-tools button:disabled{color:#8a9691;background:var(--control-muted-surface)}.control-section-drawer{min-width:0;overflow:hidden;border:1px solid rgba(28,45,41,.12);border-radius:8px;background:var(--control-surface)}.control-section-drawer.active{border-color:#0f766e3d;background:var(--control-surface)}.control-section-drawer-toggle{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:46px;min-width:0;padding:10px 12px;border:0;color:#42514c;background:var(--control-surface);text-align:left}.control-section-drawer-toggle:after{display:grid;grid-column:2;grid-row:1;align-self:center;justify-self:end;width:24px;height:24px;place-items:center;border:1px solid rgba(28,45,41,.12);border-radius:6px;color:#0f766e;background:var(--control-surface);content:"+";font-size:1rem;font-weight:900;line-height:1}.control-section-drawer-toggle[aria-expanded=true]:after{content:"-"}.control-section-drawer-title{display:inline-flex;grid-column:1;grid-row:1;align-items:center;gap:8px;min-width:0;color:#33423d;font-size:.85rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.control-section-drawer-title svg{flex:0 0 auto;color:#0f766e}.control-section-drawer-summary{display:flex;grid-column:1 / -1;grid-row:2;flex-wrap:wrap;gap:6px;min-width:0}.control-section-drawer-summary em{max-width:100%;padding:4px 7px;overflow:hidden;border-radius:6px;background:#eef2f1;color:#53635d;font-size:.74rem;font-style:normal;font-weight:820;text-overflow:ellipsis;white-space:nowrap}.control-section-drawer-body{display:grid;gap:14px;min-width:0;padding:12px;border-top:1px solid rgba(28,45,41,.08);background:var(--control-surface)}@media(min-width:1320px){.workspace-grid{grid-template-areas:"controls result result" "controls graph insight" "controls ad ad";grid-template-columns:var(--control-rail-width) minmax(0,1.35fr) minmax(320px,.48fr)}.workspace-grid:has(.control-center.is-pinned){grid-template-columns:var(--control-panel-width) minmax(0,1.2fr) minmax(300px,.42fr)}}.panel-heading{display:flex;align-items:center;gap:9px;margin-bottom:14px;color:#0f766e}.panel-heading h2{margin:0;color:#16231f;font-size:1.02rem;letter-spacing:0}.input-group+.input-group{margin-top:17px;padding-top:17px;border-top:1px solid rgba(28,45,41,.1)}.input-group h3{margin:0 0 12px;color:#42514c;font-size:.82rem;letter-spacing:.04em;text-transform:uppercase}.profile-drawer{min-width:0;overflow:hidden;border:1px solid rgba(28,45,41,.12);border-radius:8px;background:#f8fbfa}.profile-drawer summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:10px 12px;cursor:pointer;list-style:none}.profile-drawer summary::-webkit-details-marker{display:none}.profile-drawer[open] summary{border-bottom:1px solid rgba(28,45,41,.08)}.profile-drawer-title{display:inline-flex;align-items:center;gap:8px;min-width:0;color:#17231f;font-weight:850}.profile-drawer-title svg{flex:0 0 auto;color:#0f766e}.profile-drawer-summary{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;min-width:0}.profile-drawer-summary em{max-width:100%;padding:4px 7px;overflow:hidden;border-radius:6px;background:#eef8f6;color:#53635d;font-size:.78rem;font-style:normal;font-weight:820;text-overflow:ellipsis;white-space:nowrap}.profile-drawer-controls{display:grid;gap:12px;padding:12px}.profile-inline-controls{display:grid;gap:14px;min-width:0}.profile-drawer summary:after{display:grid;width:24px;height:24px;place-items:center;border:1px solid rgba(28,45,41,.12);border-radius:6px;color:#0f766e;background:#fff;content:"+";font-size:1rem;font-weight:900;line-height:1}.profile-drawer[open] summary:after{content:"-"}.debt-account-list{display:grid;gap:10px}.debt-account-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:10px;min-width:0;padding:12px;border:1px solid rgba(28,45,41,.1);border-radius:8px;background:#f8fbfa}.debt-account-title{display:flex;grid-column:1 / -1;align-items:center;gap:8px;min-width:0;color:#0f766e}.debt-account-title strong{min-width:0;color:#17231f;font-size:.91rem;overflow-wrap:anywhere}.mini-number-control{display:grid;gap:5px;min-width:0}.mini-number-control span{color:#60706a;font-size:.75rem;font-weight:820}.mini-number-field{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-width:0;min-height:38px;overflow:hidden;border:1px solid rgba(28,45,41,.14);border-radius:8px;background:#fff}.mini-number-field input{width:100%;min-width:0;border:0;background:transparent;padding:9px 10px;color:#16231f;font:inherit;font-weight:780;outline:0}.mini-number-field em{padding:0 10px 0 0;color:#60706a;font-style:normal;font-weight:780}.slider-control,.select-control{display:grid;gap:8px}.slider-control+.slider-control,.slider-control+.select-control,.select-control+.slider-control,.select-control+.segmented-control,.select-control+.profile-drawer,.select-control+.profile-inline-controls,.segmented-control+.segmented-control,.segmented-control+.slider-control,.segmented-control+.profile-inline-controls,.toggle-switch+.slider-control,.toggle-switch+.segmented-control,.slider-control+.toggle-switch,.segmented-control+.toggle-switch,.profile-drawer+.slider-control,.profile-drawer+.segmented-control,.profile-inline-controls+.slider-control,.profile-inline-controls+.segmented-control,.toggle-switch+.advanced-tax,.select-control+.toggle-switch{margin-top:14px}.control-topline,.control-label{display:flex;align-items:center;gap:7px}.control-topline{justify-content:space-between;min-width:0}.control-label{min-width:0;color:#33423d;font-size:.93rem;font-weight:760}.control-label svg{flex:0 0 auto;color:#23756d}output{color:#0f1f1a;font-size:.9rem;font-weight:800;max-width:52%;overflow-wrap:anywhere;text-align:right}.control-hint{color:#697772;font-size:.78rem;line-height:1.35}input[type=range]{width:100%;height:7px;margin:0;border-radius:999px;accent-color:#0f766e}.slider-range-toggle{display:inline-flex;justify-self:end;overflow:hidden;border:1px solid rgba(15,118,110,.18);border-radius:999px;background:#f8fbfae6}.slider-range-toggle button{min-height:25px;border:0;border-left:1px solid rgba(15,118,110,.12);background:transparent;color:#53635e;padding:0 10px;font:inherit;font-size:.72rem;font-weight:820;cursor:pointer}.slider-range-toggle button:first-child{border-left:0}.slider-range-toggle button.active{background:#0f766e1f;color:#0f5f59}.number-entry{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;min-height:38px;overflow:hidden;border:1px solid rgba(28,45,41,.13);border-radius:8px;background:#f8fbfa}.number-entry span{min-width:10px;padding:0 8px;color:#6a7772;font-size:.88rem}.number-entry input{width:100%;min-width:0;height:36px;border:0;outline:0;color:#17201d;background:transparent;font-weight:700}.select-control select{width:100%;min-height:40px;border:1px solid rgba(28,45,41,.13);border-radius:8px;color:#17201d;background:#f8fbfa;font-weight:700}.segmented-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;border:1px solid rgba(28,45,41,.13);border-radius:8px;background:#eef4f2}.segmented-control button{min-width:0;min-height:34px;border:0;border-radius:6px;color:#53635d;background:transparent;font-weight:800;overflow-wrap:anywhere}.segmented-control button.active{color:#0f5e59;background:#fff;box-shadow:0 6px 14px #1c2d291a}.payoff-presets{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:6px;margin-bottom:14px}.select-control+.payoff-presets{margin-top:14px}.payoff-presets button{min-width:0;min-height:34px;padding:0 8px;border:1px solid rgba(28,45,41,.13);border-radius:8px;color:#29413b;background:#f8fbfa;font-size:.82rem;font-weight:820;overflow-wrap:anywhere}.payoff-presets button:hover{border-color:#0f766e59;background:#eef8f6}.toggle-switch{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#33423d;font-size:.93rem;font-weight:760}.toggle-switch input{position:absolute;opacity:0;pointer-events:none}.toggle-track{position:relative;display:inline-flex;width:48px;height:28px;flex:0 0 auto;align-items:center;border-radius:999px;background:#d6dedb;transition:background .16s ease}.toggle-thumb{width:22px;height:22px;margin-left:3px;border-radius:999px;background:#fff;box-shadow:0 4px 10px #1c2d2933;transition:transform .16s ease}.toggle-switch input:checked+.toggle-track{background:#0f766e}.toggle-switch input:checked+.toggle-track .toggle-thumb{transform:translate(20px)}.advanced-tax{padding-top:2px}.advanced-tax p{margin:9px 0 0;color:#697772;font-size:.84rem;line-height:1.45}.tax-note{margin:8px 0 0;color:#697772;font-size:.82rem;line-height:1.42}.result-panel{position:relative;overflow:hidden;padding:22px}.result-panel:before{position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,#0f766e,#2f5aa8 48%,#d45b49);content:""}.result-kicker{display:flex;align-items:center;gap:8px;color:#60706a;font-weight:800}.result-kicker svg{color:#0f766e}.hero-number{margin-top:12px;color:#101816;font-size:clamp(2.35rem,5vw,4.6rem);font-weight:860;line-height:.96;letter-spacing:0;overflow-wrap:anywhere;transition:color .16s ease}.compound-result-panel .hero-number{font-size:clamp(2rem,3.2vw,3.35rem)}.risk-pill{display:inline-flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:16px;padding:7px 10px;border-radius:8px;font-weight:850}.risk-pill.low{color:#0f5e44;background:#e4f5ec}.risk-pill.medium{color:#745100;background:#fff1c7}.risk-pill.high{color:#9b2f23;background:#ffe5e1}.recommendation{max-width:58ch;margin:14px 0 0;color:#465650;font-size:1.02rem;line-height:1.5}.scenario-alert{display:grid;gap:8px;margin-top:14px;padding:13px;border:1px solid rgba(190,76,48,.42);border-left:5px solid #d45b49;border-radius:8px;color:#53261f;background:#fff0ed;box-shadow:0 12px 24px #842f1f1c}.scenario-alert>div{display:flex;align-items:center;gap:8px;font-weight:900}.scenario-alert svg{flex:0 0 auto;color:#b83f30}.scenario-alert p{margin:0;color:#6d3a31;line-height:1.42}.scenario-alert>span{display:flex;justify-content:space-between;gap:12px;padding-top:8px;border-top:1px solid rgba(190,76,48,.22);color:#6d3a31;font-weight:850}.scenario-alert>span strong{color:#3d1813;text-align:right;overflow-wrap:anywhere}.metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px}.metric{min-width:0;min-height:86px;padding:12px;border:1px solid rgba(28,45,41,.1);border-radius:8px;background:#f8fbfa}.metric span{display:block;color:#6a7772;font-size:.82rem}.metric strong{display:block;margin-top:6px;color:#15221e;font-size:1.2rem;line-height:1.15;overflow-wrap:anywhere}.cost-strip,.tax-strip,.rate-shock{display:grid;grid-template-columns:auto 1fr auto;align-items:center;min-width:0;gap:9px;margin-top:14px;padding:12px;border-radius:8px;color:#1e302b;background:#eef6f4}.cost-strip svg,.tax-strip svg,.rate-shock svg{color:#0f766e}.cost-strip strong,.tax-strip strong,.rate-shock strong{overflow-wrap:anywhere;text-align:right}.cost-strip{background:#eef3ff}.cost-strip svg{color:#2f5aa8}.graph-panel{padding:18px}.risk-dial-row{display:grid;grid-template-columns:104px minmax(0,1fr);align-items:center;gap:16px}.risk-dial{display:grid;width:104px;height:104px;place-items:center;border-radius:50%;background:radial-gradient(circle at center,#ffffff 0 55%,transparent 56%),conic-gradient(#d45b49 var(--risk-deg),#dbe4e1 var(--risk-deg))}.risk-dial span{color:#15221e;font-size:1.45rem;font-weight:900}.graph-heading{display:flex;align-items:center;gap:8px;color:#17231f;font-weight:850}.graph-heading svg{color:#2f5aa8}.risk-dial-row p{margin:7px 0 0;color:#60706a;line-height:1.45}.compound-chart-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.compound-chart-summary article{min-width:0;padding:12px;border:1px solid rgba(28,45,41,.1);border-radius:8px;background:#f8fbfa}.compound-chart-summary span{display:flex;align-items:center;gap:7px;color:#60706a;font-size:.8rem;font-weight:780}.compound-chart-summary span svg{flex:0 0 auto;color:#2f5aa8}.compound-chart-summary strong{display:block;margin-top:6px;color:#17231f;font-size:1.14rem;line-height:1.15;overflow-wrap:anywhere}.scenario-comparison-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-top:14px}.scenario-comparison-card{display:grid;min-width:0;gap:8px;padding:12px;border:1px solid rgba(28,45,41,.1);border-radius:8px;background:#fff}.scenario-comparison-card span,.scenario-comparison-card small,.scenario-comparison-card strong,.scenario-comparison-card em{display:block;min-width:0;overflow-wrap:anywhere}.scenario-comparison-card span{color:#17231f;font-size:.9rem;font-weight:900}.scenario-comparison-card small{margin-top:2px;color:#60706a;font-size:.76rem;font-weight:760}.scenario-comparison-card strong{color:#17231f;font-size:1.04rem;line-height:1.12}.scenario-comparison-card em{width:fit-content;padding:4px 7px;border-radius:6px;color:#53635d;background:#eef2f1;font-size:.78rem;font-style:normal;font-weight:900}.scenario-comparison-card em.positive{color:#0f5e44;background:#e4f5ec}.scenario-comparison-card em.negative{color:#9b2f23;background:#ffe5e1}.bar-stack{display:grid;gap:12px;margin-top:20px}.bar-row{display:grid;grid-template-columns:82px minmax(88px,1fr) minmax(88px,auto);align-items:center;gap:10px;color:#53635d;font-size:.86rem}.bar-row strong{color:#17201d;font-size:.88rem;text-align:right;overflow-wrap:anywhere}.bar-track,.split-track{height:12px;overflow:hidden;border-radius:999px;background:#dfe8e5}.bar-fill{display:block;height:100%;min-width:4px;border-radius:inherit;transition:width .18s ease}.bar-fill.income{background:#0f766e}.bar-fill.expense{background:#d19b29}.bar-fill.housing{background:#d45b49}.bar-fill.saving{background:#0f766e}.bar-fill.purchase{background:#2f5aa8}.debt-compare-panel .balance-chart-header{margin-bottom:14px}.debt-bars .bar-row{grid-template-columns:minmax(118px,.75fr) minmax(120px,1.25fr) minmax(110px,auto)}.life-meter{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:16px}.life-meter p{margin:7px 0 0;color:#60706a;line-height:1.45}.life-meter strong{color:#17231f;font-size:1.6rem;line-height:1;white-space:nowrap}.day-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:6px;margin-top:18px}.day-grid span{display:block;aspect-ratio:1;border-radius:5px;background:#dfe8e5}.day-grid span.filled{background:#2f5aa8}.life-bars{margin-top:18px}.life-cost-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.life-cost-summary article{min-width:0;padding:12px;border:1px solid rgba(28,45,41,.1);border-radius:8px;background:#f8fbfa}.life-cost-summary span{display:block;color:#60706a;font-size:.82rem}.life-cost-summary strong{display:block;margin-top:5px;color:#17231f;font-size:1.1rem;overflow-wrap:anywhere}.loan-split{margin-top:20px}.split-track{display:flex;margin-top:10px}.split-deposit,.split-loan{display:block;height:100%;transition:width .18s ease}.split-deposit{background:#2f5aa8}.split-loan{background:#d45b49}.split-labels{display:flex;justify-content:space-between;gap:10px;margin-top:8px;color:#60706a;font-size:.84rem}.payoff-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.payoff-summary article{min-width:0;padding:12px;border:1px solid rgba(28,45,41,.1);border-radius:8px;background:#f8fbfa}.payoff-summary span,.payoff-summary small{display:block;color:#60706a;font-size:.82rem}.payoff-summary strong{display:block;margin-top:5px;color:#17231f;font-size:1.1rem;overflow-wrap:anywhere}.payoff-summary small{margin-top:5px;line-height:1.35}.balance-chart{margin-top:20px}.balance-chart-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.compound-graph-panel .balance-chart-header,.debt-vs-invest-panel .balance-chart-header,.savings-goal-panel .balance-chart-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(112px,auto)}.compound-graph-panel .balance-chart-header p,.debt-vs-invest-panel .balance-chart-header p,.savings-goal-panel .balance-chart-header p{margin:6px 0 0;color:#60706a;font-size:.9rem;line-height:1.38}.chart-total{min-width:0;text-align:right}.chart-total span{display:block;color:#60706a;font-size:.74rem;font-weight:760}.chart-total strong{display:block;margin-top:2px;color:#17231f;font-size:.98rem;overflow-wrap:anywhere}.balance-chart .balance-svg{display:block;width:100%;height:auto;margin-top:10px;overflow:visible}.chart-grid{stroke:#dce6e3;stroke-width:1}.chart-axis{stroke:#aebfba;stroke-width:1.2}.chart-line{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:4}.chart-band{fill:#2f5aa821;stroke:none}.chart-area{stroke:none}.chart-area.interest{fill:#0f766e29}.chart-area.contribution{fill:#d19b2938}.chart-line.baseline{stroke:#2f5aa8}.chart-line.range-bound{stroke:#2f5aa86b;stroke-dasharray:4 6;stroke-width:2}.chart-line.extra{stroke:#0f766e}.chart-line.deposit{stroke:#d19b29}.chart-dot{fill:#d45b49}.chart-marker line{stroke:#17201d59;stroke-dasharray:3 5;stroke-width:1.3}.chart-marker text{fill:#26342f;font-size:8.5px;font-weight:850}.chart-marker.stop line{stroke:#d19b29b8}.chart-marker.interest line{stroke:#0f766eb8}.chart-marker.double line{stroke:#2f5aa8b8}.chart-hit-area{cursor:crosshair;fill:transparent;pointer-events:all}.chart-hover-line{stroke:#0f766eb3;stroke-dasharray:4 5;stroke-width:1.7}.chart-hover-dot{fill:#fff;stroke:#0f766e;stroke-width:3}.chart-tooltip rect{fill:#fff;stroke:#1c2d292e;stroke-width:1}.chart-tooltip text{fill:#42514c;font-size:10px;font-weight:760}.chart-tooltip .tooltip-title{fill:#17231f;font-size:11px;font-weight:900}.chart-label{fill:#60706a;font-size:9px;font-weight:750}.y-label{text-anchor:start}.x-label{text-anchor:middle}.x-label.start{text-anchor:start}.x-label.end{text-anchor:end}.balance-heading-icon{width:15px;height:15px;flex:0 0 auto}.chart-legend{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:8px;margin-top:8px;color:#60706a;font-size:.84rem}.chart-legend span,.chart-legend strong{display:inline-flex;align-items:center;gap:6px}.chart-legend strong{color:#17231f}.legend-key{display:inline-block;width:18px;height:4px;border-radius:999px}.legend-key.baseline{background:#2f5aa8}.legend-key.range{background:#2f5aa847}.legend-key.interest{background:#0f766e6b}.legend-key.extra{background:#0f766e}.legend-key.deposit{background:#d19b29}.compound-table-wrap{width:100%;margin-top:18px;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;border:1px solid rgba(28,45,41,.1);border-radius:8px;background:#fff}.compound-table{width:100%;min-width:1120px;border-collapse:collapse;color:#26342f;font-size:.8rem}.compound-table th,.compound-table td{padding:10px 12px;border-bottom:1px solid rgba(28,45,41,.08);text-align:right;white-space:nowrap}.compound-table th:first-child,.compound-table td:first-child{text-align:left}.compound-table thead th{color:#60706a;background:#f8fbfa;font-size:.76rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.compound-table tbody tr:last-child td{border-bottom:0}.compound-table tbody tr:hover td{background:#f8fbfa}.compound-table tbody tr.milestone-row td{background:#fff8e8;font-weight:850}.compound-table tbody tr.milestone-row:hover td{background:#fff4d7}.detail-table{min-width:760px}.detail-table-wide{min-width:940px}.detail-table caption{padding:11px 12px;color:#34443f;font-size:.84rem;font-weight:850;text-align:left;background:#fff;border-bottom:1px solid rgba(28,45,41,.08)}.annual-table-wrap{overflow:visible}.annual-detail-table{min-width:0;table-layout:fixed}.annual-detail-table th,.annual-detail-table td{padding:9px 8px;white-space:normal;overflow-wrap:anywhere}.annual-detail-table th:nth-child(1),.annual-detail-table td:nth-child(1){width:7%}.annual-detail-table th:nth-child(2),.annual-detail-table td:nth-child(2){width:17%}.insight-list{display:grid;gap:10px}.insight-item{min-height:82px;padding:13px;border:1px solid rgba(28,45,41,.1);border-radius:8px;background:#f8fbfa}.insight-item strong{display:block;color:#17231f;font-size:.94rem}.insight-item p{margin:6px 0 0;color:#53635d;font-size:.92rem;line-height:1.45}.quick-recommendation-list{display:grid;gap:6px;margin:8px 0 0;padding-left:18px;color:#53635d;font-size:.9rem;line-height:1.38}.insight-item.accent{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;border-color:#2f5aa838;background:#eef3ff}.insight-item.accent svg{margin-top:2px;color:#2f5aa8}.insight-item.accent p{margin:0;color:#263f76;font-weight:700}.app-footer{margin-top:16px;text-align:center}.app-footer a{color:#0f766e;font-weight:850}@media(max-width:1240px){.home-settings-panel{grid-template-columns:1fr}.insight-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1099px){.control-pin-button{display:none}.control-sheet{width:min(var(--control-sheet-width),calc(100vw - 92px))}}@media(max-width:960px){.app-header,.scenario-bar{align-items:stretch;flex-direction:column}.header-stat{width:100%;min-width:0;text-align:left}.calculator-nav,.calculator-shell .calculator-nav{grid-template-columns:auto minmax(0,1fr)}.calculator-shell .scenario-bar{grid-column:1 / -1}.calculator-grid,.home-hero{grid-template-columns:1fr}.home-hero-copy h2{max-width:16ch}}@media(max-width:820px){.app-shell{width:min(100% - 20px,720px);padding-top:14px;padding-bottom:92px}.scenario-actions{justify-content:flex-start}.workspace-grid{grid-template-areas:"result" "graph" "insight" "ad";grid-template-columns:1fr}.workspace-grid:has(.control-center.is-pinned){grid-template-columns:1fr}.control-center{position:fixed;z-index:70;top:auto;right:0;bottom:0;left:0;grid-area:auto;width:0;min-height:0}.control-rail{display:none}.mobile-control-trigger{position:fixed;right:14px;bottom:14px;left:14px;z-index:72;display:inline-flex;align-items:center;justify-content:center;min-height:48px;gap:8px;border:1px solid rgba(15,118,110,.24);border-radius:8px;color:#fff;background:#0f766e;box-shadow:0 18px 34px #1c2d2938;font-weight:900}.control-center.is-open .mobile-control-trigger{opacity:0;pointer-events:none;transform:translateY(12px)}.control-sheet{position:fixed;inset:auto 10px max(10px,env(safe-area-inset-bottom));left:10px;grid-template-rows:auto auto minmax(0,1fr) auto;width:auto;min-height:0;max-height:min(82dvh,680px);border-radius:10px;opacity:1;transform:translateY(calc(100% + 24px));visibility:hidden}.control-sheet[data-visible=true]{transform:translateY(0);visibility:visible}.control-sheet[data-visible=false]{pointer-events:none;visibility:hidden}.control-sheet-header{padding:13px}.control-drawer-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:10px 13px}.control-sheet-body{padding:13px 13px 18px}.control-sheet-footer{display:grid;padding:10px 13px calc(10px + env(safe-area-inset-bottom));border-top:1px solid rgba(28,45,41,.09);background:var(--control-surface)}.control-sheet-footer button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;gap:8px;border:1px solid rgba(15,118,110,.24);border-radius:8px;color:#fff;background:#0f766e;box-shadow:0 14px 28px #1c2d2924;font-weight:900}.control-active-section{display:none}.control-section-drawers{display:grid;gap:10px}.insight-list,.calculator-grid,.payoff-summary,.life-cost-summary,.home-settings-controls,.home-settings-actions,.metric-grid,.workspace-grid .result-panel .metric-grid,.compound-chart-summary,.scenario-comparison-grid,.compound-graph-panel .balance-chart-header,.debt-vs-invest-panel .balance-chart-header,.savings-goal-panel .balance-chart-header{grid-template-columns:1fr}.compound-graph-panel .chart-total,.debt-vs-invest-panel .chart-total,.savings-goal-panel .chart-total{text-align:left}}@media(max-width:640px){.app-shell{width:min(100% - 16px,620px)}.app-header p,.app-footer{font-size:.86rem}.brand-lockup{gap:10px}.calculator-nav,.calculator-shell .calculator-nav{grid-template-columns:1fr}.nav-home-button,.calculator-select-control,.scenario-bar,.nav-share-button,.scenario-select-control{width:100%}.calculator-select-control,.scenario-select-control{grid-template-columns:1fr;padding:8px}.calculator-shell .calculator-select-control,.calculator-shell .scenario-select-control{min-height:42px;padding:8px}.nav-share-button{width:100%;min-height:42px}.scenario-bar{grid-template-columns:1fr;gap:10px}.scenario-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.scenario-actions .icon-button{width:100%}.home-hero,.insight-list,.payoff-summary,.life-cost-summary,.compound-chart-summary,.scenario-comparison-grid{grid-template-columns:1fr}.calculator-tile{grid-template-columns:auto minmax(0,1fr);min-height:0;padding:14px}.home-hero,.home-settings-panel,.calculator-directory{padding:16px}.home-hero-actions{grid-template-columns:1fr}.calculator-tile em{grid-column:1 / -1;justify-self:start}.tile-icon{width:42px;height:42px}.insight-panel,.graph-panel,.ad-panel{padding:14px}.debt-account-row{grid-template-columns:1fr;align-items:stretch}.debt-account-title{padding-bottom:0}.result-panel{padding:18px}.control-topline{display:grid;gap:5px}.profile-drawer summary{grid-template-columns:minmax(0,1fr) auto}.profile-drawer-summary{grid-column:1 / -1;justify-content:flex-start}output{max-width:100%;text-align:left}.cost-strip,.tax-strip,.rate-shock{grid-template-columns:auto minmax(0,1fr)}.cost-strip strong,.tax-strip strong,.rate-shock strong{grid-column:1 / -1;text-align:left}.risk-dial-row,.life-meter,.balance-chart-header,.bar-row{grid-template-columns:1fr}.balance-chart-header,.life-meter{display:grid}.chart-total,.bar-row strong{text-align:left}.life-meter strong{white-space:normal}.split-labels{flex-direction:column}.hero-number{font-size:2.2rem}.compound-result-panel .hero-number{font-size:2rem}.compound-table-wrap{overflow:visible}.compound-table,.compound-table tbody,.compound-table tr,.compound-table td{display:block;width:100%;min-width:0}.compound-table{font-size:.86rem}.compound-table caption{display:block;width:100%;box-sizing:border-box}.compound-table thead{display:none}.compound-table tr{padding:10px 12px;border-bottom:1px solid rgba(28,45,41,.08)}.compound-table tr:last-child{border-bottom:0}.compound-table td{display:grid;grid-template-columns:minmax(92px,.8fr) minmax(0,1.2fr);gap:10px;padding:6px 0;border-bottom:0;text-align:right;white-space:normal;overflow-wrap:anywhere}.compound-table td:before{color:#60706a;font-weight:800;text-align:left;content:attr(data-label)}}@media(max-width:480px){.app-shell{width:min(100% - 14px,420px)}.brand-mark{width:42px;height:42px}.app-header h1{font-size:1.55rem}.hero-number{font-size:2rem}}
