.profile-manager{margin-top:2rem}.profile-manager__heading{color:var(--color-text,#111);margin:0 0 .25rem;font-size:1rem;font-weight:600}.profile-manager__desc{color:var(--color-text-muted,#666);margin:0 0 1rem;font-size:.82rem}.profile-manager__error{color:var(--color-danger,#c0392b);background:var(--color-danger-bg,#fdf0ef);border:1px solid var(--color-danger-border,#e8b4b0);border-radius:6px;margin-bottom:.75rem;padding:.5rem .75rem;font-size:.82rem}.profile-manager__loading{color:var(--color-text-muted,#666);font-size:.85rem}.profile-manager__grid{grid-template-columns:repeat(3,1fr);gap:.75rem;display:grid}@media (width<=600px){.profile-manager__grid{grid-template-columns:1fr}}.profile-card{border:1px solid var(--color-border,#ddd);background:var(--color-surface,#fff);border-radius:8px;flex-direction:column;gap:.5rem;min-height:140px;padding:.75rem;display:flex}.profile-card--empty{background:var(--color-surface-muted,#f8f9fa);border-style:dashed}.profile-card__header{flex-direction:column;gap:.15rem;display:flex}.profile-card__slot-label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted,#888);font-size:.72rem;font-weight:600}.profile-card__name{color:var(--color-text,#111);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:600;overflow:hidden}.profile-card__empty-msg{color:var(--color-text-muted,#aaa);flex:1;margin:0;font-size:.82rem}.profile-card__date{color:var(--color-text-muted,#888);flex:1;margin:0;font-size:.78rem}.profile-card__actions{flex-wrap:wrap;gap:.35rem;margin-top:auto;display:flex}.profile-card__btn{border:1px solid var(--color-border,#ccc);background:var(--color-surface,#fff);color:var(--color-text,#111);cursor:pointer;border-radius:5px;padding:.3rem .6rem;font-size:.78rem;line-height:1.3;transition:background .15s,border-color .15s}.profile-card__btn:hover:not(:disabled){background:var(--color-surface-hover,#f0f0f0);border-color:var(--color-border-hover,#aaa)}.profile-card__btn:disabled{opacity:.5;cursor:not-allowed}.profile-card__btn--primary{background:var(--color-accent,#2563eb);border-color:var(--color-accent,#2563eb);color:#fff}.profile-card__btn--primary:hover:not(:disabled){background:var(--color-accent-hover,#1d4ed8);border-color:var(--color-accent-hover,#1d4ed8)}.profile-card__btn--danger{border-color:var(--color-danger-border,#e8b4b0);color:var(--color-danger,#c0392b)}.profile-card__btn--danger:hover:not(:disabled){background:var(--color-danger-bg,#fdf0ef)}.profile-modal-backdrop{z-index:1000;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.profile-modal{background:var(--color-surface,#fff);border-radius:10px;flex-direction:column;gap:1rem;width:min(420px,92vw);padding:1.5rem;display:flex;box-shadow:0 8px 32px #0000002e}.profile-modal__title{margin:0;font-size:1rem;font-weight:600}.profile-modal__field{flex-direction:column;gap:.35rem;display:flex}.profile-modal__label{color:var(--color-text-muted,#555);font-size:.82rem;font-weight:500}.profile-modal__input,.profile-modal__select{border:1px solid var(--color-border,#ccc);color:var(--color-text,#111);background:var(--color-surface,#fff);border-radius:6px;padding:.45rem .6rem;font-size:.9rem}.profile-modal__input:focus,.profile-modal__select:focus{outline:2px solid var(--color-accent,#2563eb);outline-offset:1px}.profile-modal__error{color:var(--color-danger,#c0392b);margin:0;font-size:.82rem}.profile-modal__actions{justify-content:flex-end;gap:.5rem;display:flex}:root{color:#1f2937;background:linear-gradient(#f6f8fb 0%,#eef3f8 100%);font-family:Segoe UI Variable Text,Segoe UI,Aptos,sans-serif}*{box-sizing:border-box}html{min-height:100%;overflow-x:clip}body{color:#1f2937;background:0 0;min-height:100vh;margin:0}.app-layout{min-height:100vh;display:flex;position:relative}.app-mobile-topbar{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-mobile-topbar-copy{gap:.05rem;min-width:0;display:grid}.app-mobile-topbar-title{color:#163b66;font-size:.96rem;font-weight:700;line-height:1.1}.app-mobile-topbar-step{letter-spacing:.08em;text-transform:uppercase;color:#5f6f83;font-size:.7rem;font-weight:700}.mobile-nav-toggle{color:#163b66;font:inherit;cursor:pointer;background:#fffffff0;border:1px solid #163b6629;border-radius:8px;align-items:center;gap:.55rem;padding:.42rem .62rem;display:inline-flex}.mobile-nav-toggle:focus-visible{outline-offset:2px;outline:2px solid #0a5ea84d}.mobile-nav-toggle-lines{gap:3px;display:grid}.mobile-nav-toggle-lines span{background:currentColor;border-radius:999px;width:16px;height:2px;display:block}.mobile-nav-toggle-text{font-size:.8rem;font-weight:700}.mobile-nav-overlay{display:none}.app-sidebar{background:#163b66;flex-direction:column;flex-shrink:0;width:200px;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.app-sidebar-brand{border-bottom:1px solid #ffffff1a;padding:1.1rem 1rem .75rem}.app-sidebar-eyebrow{color:#bad6edcc;letter-spacing:.06em;text-transform:uppercase;margin-bottom:.2rem;font-size:.62rem;display:block}.app-sidebar-title{color:#fff;letter-spacing:-.01em;margin:0;font-size:1.05rem;font-weight:700;line-height:1.15}.app-sidebar-chips{border-bottom:1px solid #ffffff1a;flex-direction:column;gap:.18rem;margin:0;padding:.5rem 1rem .6rem;list-style:none;display:flex}.app-sidebar-chips li{color:#bad6eda6;letter-spacing:.03em;font-size:.63rem}.app-auth-shell{border-bottom:1px solid #ffffff1a;padding:.8rem 1rem .9rem}.app-auth-panel{background:#ffffff14;border:1px solid #ffffff1f;border-radius:10px;gap:.55rem;padding:.65rem .7rem;display:grid}.app-auth-summary{gap:.16rem;display:grid}.app-auth-name{color:#fff;font-size:.84rem;font-weight:700}.app-auth-email{color:#d1e2f1d1;word-break:break-word;font-size:.72rem}.app-auth-badge{color:#ffffffe0;letter-spacing:.03em;background:#ffffff24;border-radius:999px;justify-content:center;align-items:center;width:fit-content;padding:.22rem .52rem;font-size:.7rem;font-weight:700;display:inline-flex}.app-auth-badge.is-premium{color:#fde68a;background:#facc1533}.app-auth-hint{color:#d1e2f1d6;margin:0;font-size:.73rem;line-height:1.45}.app-auth-error{color:#ffd4d4;margin:0;font-size:.72rem;line-height:1.4}.app-auth-google-button-wrap{width:146px;overflow:hidden}.app-auth-google-button{transform-origin:0 0;width:200px;transform:scale(.73)}.app-auth-actions{display:flex}.app-auth-button{color:#fff;width:100%;font:inherit;cursor:pointer;background:#ffffff24;border:1px solid #ffffff2e;border-radius:8px;padding:.48rem .65rem;font-size:.78rem;font-weight:700}.app-auth-button:hover{background:#ffffff38}.app-auth-account-btn{color:#bad6ede6;width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #ffffff2e;border-radius:8px;margin-top:.5rem;padding:.38rem .65rem;font-size:.75rem;display:block}.app-auth-account-btn:hover{color:#fff;background:#ffffff1a}.app-auth-account-btn.is-active{color:#fff;background:#ffffff26;border-color:#ffffff4d}.app-sidebar-nav{flex-direction:column;flex:1;padding:.5rem 0;display:flex}.sidebar-nav-item{text-align:left;color:#ffffffad;font:inherit;cursor:pointer;background:0 0;border:none;border-radius:0;align-items:center;gap:.65rem;width:100%;padding:.6rem 1rem;font-size:.88rem;transition:background .12s,color .12s;display:flex}.sidebar-nav-item:hover{color:#fff;box-shadow:none;background:#ffffff1a;transform:none}.sidebar-nav-item.is-active{color:#fff;background:#ffffff24;font-weight:600}.sidebar-nav-number{color:#fffc;background:#ffffff24;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:1.4rem;height:1.4rem;font-size:.72rem;font-weight:700;display:inline-flex}.sidebar-nav-item.is-active .sidebar-nav-number{color:#163b66;background:#ffffffe6}.app-sidebar-footer{border-top:1px solid #ffffff1a;flex-wrap:wrap;gap:.5rem;padding:.75rem;display:flex}.sidebar-footer-btn{color:#fff;font:inherit;cursor:pointer;text-align:center;white-space:nowrap;background:#ffffff1f;border:1px solid #fff3;border-radius:6px;flex:1;padding:.42rem .6rem;font-size:.78rem;font-weight:600;transition:background .12s}.sidebar-footer-btn:hover{box-shadow:none;background:#ffffff38;transform:none}.sidebar-footer-btn--label{display:block}.app-import-error{color:#ffd5d5;background:#dc3c3c40;border-radius:6px;width:100%;margin:0;padding:.4rem .6rem;font-size:.75rem;line-height:1.35}.sidebar-footer-link{color:#bad6edb3;font:inherit;cursor:pointer;text-align:center;background:0 0;border:none;flex:1;padding:.36rem .5rem;font-size:.75rem;transition:color .12s}.sidebar-footer-link:hover{color:#fff}.sidebar-footer-link.is-active{color:#fff;font-weight:600}.static-page{max-width:640px;padding:.25rem 0}.static-page-title{color:#163b66;letter-spacing:-.02em;margin:0 0 .75rem;font-size:1.45rem;font-weight:700}.static-page-lead{color:#374151;margin:0 0 1.5rem;font-size:1rem;line-height:1.65}.static-page-section{margin-bottom:1.5rem}.static-page-section h3{text-transform:uppercase;letter-spacing:.05em;color:#163b66;margin:0 0 .45rem;font-size:.9rem;font-weight:700}.static-page-section p,.static-page-section ul{color:#374151;margin:0 0 .65rem;font-size:.92rem;line-height:1.65}.static-page-section ul{padding-left:1.4em}.static-page-section li{margin-bottom:.3rem}.static-page-link{color:#0a5ea8;text-underline-offset:2px;text-decoration:underline}.static-page-link:hover{color:#163b66}.app-main{flex:1;align-content:start;gap:.65rem;min-width:0;padding:1rem;display:grid}.panel{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff0;border:1px solid #0f172a14;border-radius:.75rem;padding:.75rem .9rem;box-shadow:0 4px 12px #0f172a0d}.budget-table{border-collapse:collapse;width:100%;font-size:.9rem}.budget-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:#566273;border-bottom:2px solid #e5e9ef;padding:.4rem .5rem;font-size:.75rem;font-weight:600}.budget-table td{vertical-align:middle;border-bottom:1px solid #f0f3f7;padding:.35rem .5rem}.budget-table-col--desc{width:60%}.budget-table-col--amount{width:30%}.budget-table-col--remove{text-align:right;width:10%}.budget-table-empty{color:#8a95a3;text-align:center;font-style:italic;padding:1rem .5rem!important}.budget-input{color:#163b66;background:#fff;border:1px solid #d0d8e4;border-radius:6px;outline:none;width:100%;padding:.3rem .5rem;font-family:inherit;font-size:.875rem}.budget-input:focus{border-color:#163b66;box-shadow:0 0 0 2px #163b661f}.budget-input--amount{text-align:right;max-width:120px}.budget-item-entry{align-items:center;gap:.45rem;display:flex}.budget-item-checkbox{accent-color:#163b66;flex-shrink:0;width:.95rem;height:.95rem;margin:0}.budget-item-checkbox:focus-visible{outline-offset:2px;outline:2px solid #0a5ea840}.budget-row--excluded .budget-input,.budget-row--excluded .retirement-currency-wrap{opacity:.58}.budget-remove-btn{opacity:.65;border-radius:4px;min-width:0;padding:.2rem .5rem;font-size:.75rem}.budget-remove-btn:hover{opacity:1}.budget-table-total-row td{border-top:2px solid #e5e9ef;border-bottom:none;padding-top:.6rem}.budget-total-label{color:#163b66;font-weight:600}.budget-total-value{color:#163b66;font-size:1rem;font-weight:700}.w2-section-label{text-transform:uppercase;letter-spacing:.07em;color:#566273;margin:.5rem 0 .15rem;font-size:.72rem;font-weight:700}.w2-box12-section{flex-direction:column;gap:.7rem;display:flex}.w2-box12-row{grid-template-columns:1fr auto auto;align-items:end;gap:.7rem;display:grid}.w2-box12-row--fixed{grid-template-columns:auto 1fr}.w2-box12-code-badge{color:#fff;letter-spacing:.04em;white-space:nowrap;background:#163b66;border-radius:4px;justify-content:center;align-items:center;min-width:2rem;padding:.15rem .4rem;font-size:.72rem;font-weight:700;display:inline-flex}.w2-box12-code-desc{color:#334155;font-size:.82rem}.w2-box12-code-select{width:100%;min-width:0;font:inherit;color:inherit;background:#fcfdfbf2;border:1px solid #16302b33;border-radius:6px;padding:.38rem .65rem;font-size:.875rem}.w2-box12-code-select:focus{border-color:#0a5ea8;outline:2px solid #0a5ea840}.w2-box12-amount-input{width:130px;font:inherit;color:inherit;text-align:right;background:#fcfdfbf2;border:1px solid #16302b33;border-radius:6px;flex-shrink:0;padding:.38rem .65rem;font-size:.875rem}.w2-box12-amount-input:focus{border-color:#0a5ea8;outline:2px solid #0a5ea840}.w2-box12-add-btn{align-self:flex-start;margin-top:.25rem}.w2-net-estimate{background:#f0f7ff;border:1px solid #bfdbfe;border-radius:8px;flex-wrap:wrap;align-items:baseline;gap:.5rem .75rem;margin-top:1rem;padding:.65rem .85rem;display:flex}.w2-net-estimate-label{text-transform:uppercase;letter-spacing:.05em;color:#1e40af;font-size:.78rem;font-weight:600}.w2-net-estimate-value{color:#163b66;font-size:1.15rem;font-weight:700}.w2-net-estimate-note{color:#4b5a6d;width:100%;font-size:.75rem;font-style:italic;line-height:1.4}.w2-net-estimate-hint{color:#8a95a3;margin-top:.65rem;font-size:.8rem;font-style:italic}.panel--compact{padding:1rem 1.1rem}.panel--placeholder{text-align:center;border-style:dashed}.step-panel{gap:.55rem;display:grid}.step-panel[hidden]{display:none}.top-grid,.input-grid,.results-grid,.summary-grid{gap:.65rem;display:grid}.top-grid,.summary-grid,.input-grid,.results-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.panel-heading{gap:.15rem;margin-bottom:.6rem;display:grid}.panel-heading--wide{margin-bottom:.75rem}.panel-heading h2,.panel-heading h3{letter-spacing:-.02em;margin:0;font-family:Iowan Old Style,Palatino Linotype,serif}.eyebrow{color:#28597e;text-transform:uppercase;letter-spacing:.14em;margin:0;font-size:.72rem;font-weight:700}.saved-session-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.panel-heading p,.supporting-copy,.callout,.action-bar p,.summary-card p,.panel--placeholder p{color:#566273;margin:0;line-height:1.5}.form-grid,.form-grid--dense,.import-export-grid,.metric-list{align-items:start;gap:.9rem;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid--dense{grid-template-columns:repeat(3,minmax(0,1fr))}.field{gap:.4rem;display:grid}.field span,.field>span{font-size:.92rem;font-weight:600}.field input,.field select,.import-export-grid input{width:100%;font:inherit;color:inherit;background:#fcfdfbf2;border:1px solid #16302b33;border-radius:6px;padding:.38rem .65rem;font-size:.875rem}.field input:focus,.field select:focus,.import-export-grid input:focus{border-color:#0a5ea8;outline:2px solid #0a5ea840}.field-error{color:#aa2c2c}.paystub-form-body{flex-direction:column;gap:.75rem;max-width:42rem;display:flex}.form-section-heading{text-transform:uppercase;letter-spacing:.07em;color:#566273;border-top:1px solid #163b661f;margin:.35rem 0 0;padding:.5rem 0 0;font-size:.72rem;font-weight:700}.import-export-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.import-export-grid section{background:#1b60530d;border-radius:1rem;gap:.6rem;padding:.85rem;display:grid}.button-row{gap:.9rem;display:grid}.w2-tabs{flex-wrap:wrap;align-items:center;gap:.35rem;margin:.4rem 0 .65rem;display:flex}.w2-tab{background:#ffffffeb;border:1px solid #94a3b866;border-radius:8px;align-items:stretch;display:flex;overflow:hidden}.w2-tab--active{background:#163b66;border-color:#163b66}.w2-tab-btn{font:inherit;cursor:pointer;color:#334155;white-space:nowrap;background:0 0;border:none;padding:.36rem .75rem;font-size:.84rem}.w2-tab--active .w2-tab-btn{color:#fff;font-weight:600}.w2-tab-remove{font:inherit;cursor:pointer;color:#8a95a3;background:0 0;border:none;border-left:1px solid #94a3b866;padding:.36rem .5rem;font-size:.75rem;line-height:1}.w2-tab-remove:hover{color:#7e2424;background:#aa2c2c12}.w2-tab--active .w2-tab-remove{color:#ffffffa6;border-left-color:#ffffff38}.w2-tab--active .w2-tab-remove:hover{color:#fff;background:#ffffff24}.w2-tab-add{font:inherit;cursor:pointer;color:#163b66;background:#ffffffe6;border:1px dashed #94a3b88c;border-radius:8px;padding:.36rem .8rem;font-size:.84rem}.w2-tab-add:hover{background:#f0f7ff;border-style:solid;border-color:#163b66}.w2-card{background:#f5f2eab8;border:1px solid #16302b1f;border-radius:1rem;min-inline-size:0;margin:0;padding:.65rem .85rem .85rem;position:relative}.w2-card .form-grid{align-items:end;gap:.7rem}.w2-section-note{color:#7a8694;margin:.1rem 0 0;font-size:.74rem;font-style:italic;line-height:1.35;display:block}.w2-card legend{padding:0 .45rem;font-weight:700}.button-row{flex-wrap:wrap;align-items:center;display:flex}.button-row--between{justify-content:space-between}.button-row--end{justify-content:flex-end}.app-main button:not(.w2-tab-btn):not(.w2-tab-remove):not(.w2-tab-add){color:#fff;font:inherit;cursor:pointer;background:#163b66;border:1px solid #163b66;border-radius:6px;padding:.42rem .9rem;font-size:.875rem;font-weight:600;transition:transform .14s,box-shadow .14s,background-color .14s,border-color .14s}.app-main button:not(.w2-tab-btn):not(.w2-tab-remove):not(.w2-tab-add):hover{background:#1d4c82;border-color:#1d4c82;transform:translateY(-1px);box-shadow:0 10px 18px #163b6629}.app-main button:not(.w2-tab-btn):not(.w2-tab-remove):not(.w2-tab-add):disabled{cursor:not-allowed;opacity:.6;box-shadow:none;transform:none}.app-main .button--secondary{color:#1f2937;box-shadow:none;background:#fffffff5;border-color:#94a3b880}.app-main .button--secondary:hover{background:#fffffff5;border-color:#163b664d;transform:translateY(-1px);box-shadow:0 8px 18px #0f172a14}.button--compact{padding:.25rem .55rem;font-size:.78rem;font-weight:600}.action-bar{justify-content:space-between;align-items:center;gap:1rem;display:flex}.callout{background:#163b660f;border-radius:.9rem;margin-top:.9rem;padding:.85rem 1rem}.callout--error{color:#7e2424;background:#aa2c2c17}.summary-card{background:#ffffffe6;border:1px solid #16302b1f;border-radius:.6rem;padding:.55rem .75rem}.summary-card h4{margin:0 0 .15rem;font-size:.8rem;font-weight:700}.summary-card p{margin:0;font-size:.82rem}.results-primary-row{grid-template-columns:minmax(0,1.8fr) minmax(200px,1fr);align-items:stretch;gap:.55rem;display:grid}.results-primary-stat{flex-direction:column;justify-content:center;gap:.2rem;display:flex}.primary-stat-secondaries{border-top:1px solid #fff3;grid-template-columns:1fr 1fr;gap:0;margin-top:.65rem;padding-top:.5rem;display:grid}.primary-stat-secondaries .secondary-stat{gap:.15rem;padding:.4rem .6rem}.primary-stat-secondaries .secondary-stat+.secondary-stat{border-left:1px solid #fff3}.primary-stat-secondaries .secondary-stat-label{color:#ffffffb3;font-size:.68rem}.primary-stat-secondaries .secondary-stat-value{color:#fff;font-size:.9rem}.primary-stat-secondaries .secondary-stat-detail{color:#ffffffa6;font-size:.72rem}.secondary-stat{gap:.15rem;display:grid}.secondary-stat-label{color:#566273;text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:700}.secondary-stat-value{color:#1f2937;font-family:Iowan Old Style,Palatino Linotype,serif;font-size:1.05rem;font-weight:700;line-height:1.1}.secondary-stat-detail{color:#566273;font-size:.76rem}.results-subview{gap:.55rem;display:grid}.results-subview>*{min-width:0}.results-toolbar{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.55rem;display:flex}.results-toolbar h2{color:#1f2937;letter-spacing:0;margin:0;font-size:.95rem;font-weight:700}.results-toolbar .button-row{gap:.4rem}.results-toolbar button{border-radius:.5rem!important;padding:.35rem .85rem!important;font-size:.85rem!important}.results-view-description{color:#6b7280;margin-bottom:.85rem;font-size:.8rem;line-height:1.5}.results-view-description strong{color:#374151}.paycheck-impact-note{color:#6b7280;border-left:3px solid #d1d5db;margin:.5rem 0 0;padding:.5rem .75rem;font-size:.78rem;font-style:italic;line-height:1.5}.results-slider-panel{gap:.6rem;display:grid}.results-slider-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.results-slider-label{gap:.1rem;min-width:0;font-weight:700;display:grid}.results-slider-label span{color:#4b615a;white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-weight:400;overflow:hidden}.results-slider-readout{font-family:Iowan Old Style,Palatino Linotype,serif;font-size:1.05rem;font-weight:700;line-height:1}.results-slider{accent-color:#0f6c74;width:100%}.results-slider-scale{color:#4b615a;justify-content:space-between;gap:1rem;font-size:.9rem;display:flex}.summary-card--warning{color:#fff;background:linear-gradient(135deg,#994500eb,#c47007e0)}.summary-card--warning p{color:#ffffffd1}.summary-card--accent{color:#fff;background:linear-gradient(135deg,#0a5ea8e6,#0f7a84e0)}.summary-card--accent p{color:#ffffffd1}.summary-value{margin:.1rem 0;font-family:Iowan Old Style,Palatino Linotype,serif;font-size:1.2rem;font-weight:700;line-height:1}.metric-list{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-list div{background:#f4f7fbf2;border-radius:.5rem;padding:.45rem .6rem}.metric-list dt{color:#4b615a;font-size:.86rem}.metric-list dd{margin:.3rem 0 0;font-weight:700}.table-wrap{overflow-x:auto}.scenario-table{border-collapse:collapse;width:100%}.scenario-table th,.scenario-table td{text-align:left;border-bottom:1px solid #16302b1a;padding:.45rem .6rem}.scenario-table thead th{color:#4b615a;font-size:.88rem}.scenario-table .is-highlighted{background:#ffe2c466}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=980px){.app-layout{display:block}.app-mobile-topbar{z-index:40;clip:auto;white-space:normal;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f6f8fbeb;border-bottom:1px solid #0f172a14;align-items:center;gap:.75rem;width:auto;height:auto;margin:0;padding:.7rem .75rem;display:flex;position:sticky;top:0;overflow:visible}.app-sidebar{z-index:50;width:min(280px,100vw - 2.5rem);height:100vh;transition:transform .18s,box-shadow .18s;position:fixed;inset:0 auto 0 0;transform:translate(-104%)}.app-layout.is-mobile-nav-open .app-sidebar{transform:translate(0);box-shadow:0 20px 44px #0f172a47}.app-layout.is-mobile-nav-open .mobile-nav-overlay{z-index:45;cursor:pointer;background:#0f172a5c;border:0;padding:0;display:block;position:fixed;inset:0}.app-main{padding:.75rem}.panel--hero,.top-grid,.input-grid,.results-grid,.summary-grid,.form-grid,.form-grid--dense,.paystub-form-body .form-grid,.import-export-grid,.metric-list,.results-primary-row{grid-template-columns:1fr}.step-tablist{grid-template-columns:repeat(2,minmax(0,1fr))}.app-masthead-chips{display:none}.button-row,.button-row--between,.button-row--end{justify-content:stretch}}@media (width<=640px){.app-mobile-topbar{gap:.6rem;padding:.6rem .65rem}.mobile-nav-toggle{padding:.38rem .55rem}.app-sidebar{width:min(264px,100vw - 1.5rem)}.app-shell{width:min(100% - 1rem,1120px);padding-top:.5rem}.app-masthead{border-radius:.6rem;padding:.6rem .75rem}.app-masthead-brand .eyebrow{display:none}.step-tablist{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem}.step-tab{padding:.4rem .55rem}.panel,.summary-card{border-radius:.6rem;padding:.6rem .75rem}}.retirement-source-banner{flex-wrap:wrap;align-items:baseline;gap:.35rem .75rem;display:flex}.retirement-source-label{color:#566273;font-size:.82rem}.retirement-source-label--warn{color:#7a4500}.retirement-source-value{color:#1f2937;font-family:Iowan Old Style,Palatino Linotype,serif;font-size:1.05rem}.retirement-source-note{color:#566273;font-size:.78rem}.retirement-input-grid{grid-template-columns:1fr 1fr;gap:.75rem 1rem;display:grid}.retirement-field{gap:.25rem;display:grid}.retirement-field--full{grid-column:1/-1}.retirement-field-label{color:#1f2937;font-size:.8rem;font-weight:700}.retirement-number-input{font:inherit;color:#1f2937;background:#fff;border:1px solid #94a3b880;border-radius:.5rem;width:100%;padding:.4rem .6rem;font-size:.95rem}.retirement-number-input:focus{outline-offset:1px;outline:2px solid #163b66}.retirement-currency-wrap{background:#fff;border:1px solid #94a3b880;border-radius:.5rem;align-items:center;display:flex;overflow:hidden}.retirement-currency-prefix{color:#566273;background:#f1f5f9cc;border-right:1px solid #94a3b859;flex-shrink:0;padding:.4rem .5rem .4rem .7rem;font-size:.9rem}.retirement-currency-input{font:inherit;color:#1f2937;background:0 0;border:none;width:100%;min-width:0;padding:.4rem .6rem;font-size:.95rem}.retirement-currency-input:focus{outline:none}.retirement-currency-wrap:focus-within{outline-offset:1px;outline:2px solid #163b66}.retirement-rmd-notice{color:#ffffffe6;background:#0000002e;border-radius:.5rem;gap:.2rem;margin-top:.75rem;padding:.5rem .65rem;font-size:.78rem;display:grid}.retirement-rmd-notice strong{color:#fff;font-size:.82rem}.retirement-tax-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem 1rem;margin-top:.75rem;display:grid}.retirement-grid-heading{text-transform:uppercase;letter-spacing:.05em;color:#566273;margin:0 0 .35rem;font-size:.75rem;font-weight:700}.retirement-stat-row{border-radius:.4rem;justify-content:space-between;align-items:baseline;gap:.5rem;padding:.3rem .45rem;font-size:.82rem;display:flex}.retirement-stat-row--accent{background:#0f6c7414}.retirement-stat-label{color:#566273;min-width:0}.retirement-stat-value{color:#1f2937;white-space:nowrap;font-family:Iowan Old Style,Palatino Linotype,serif;font-weight:700}.retirement-stat-note{color:#566273;font-family:inherit;font-size:.72rem;font-weight:400}.retirement-section-divider{background:#163b661a;height:1px;margin:.35rem .45rem}.retirement-disclaimer{color:#7a8a95;border-top:1px solid #0f172a12;margin:.75rem 0 0;padding-top:.55rem;font-size:.74rem}@media (width<=980px){.retirement-tax-grid{grid-template-columns:1fr}}@media (width<=640px){.retirement-input-grid{grid-template-columns:1fr}.retirement-field--full{grid-column:1}}.retirement-chart{background:#f9fafb8c;border:1px solid #163b6612;border-radius:.45rem;margin-top:.5rem;overflow:hidden}.retirement-chart-svg{width:100%;height:auto;display:block}.retirement-chart-callout{border-radius:.45rem;flex-wrap:wrap;gap:.2rem .35rem;margin-bottom:.65rem;padding:.5rem .65rem;font-size:.82rem;line-height:1.5;display:flex}.retirement-chart-callout--warn{color:#7a1f1f;background:#bf342612;border:1px solid #bf342633}.retirement-chart-callout--ok{color:#094e54;background:#0f6c7412;border:1px solid #0f6c7433}.retirement-chart-subtitle{letter-spacing:.06em;text-transform:uppercase;color:#8a9aab;margin:.75rem 0 .35rem;font-size:.78rem;font-weight:700}.withdrawal-table-wrap{border:1px solid #163b661a;border-radius:.5rem;margin-top:.25rem;margin-bottom:.75rem;overflow-x:auto}.withdrawal-table{border-collapse:collapse;width:100%;font-family:Segoe UI Variable Text,Segoe UI,sans-serif;font-size:.8rem}.withdrawal-table th{text-align:right;letter-spacing:.05em;text-transform:uppercase;color:#8a9aab;white-space:nowrap;background:#163b660a;border-bottom:1px solid #163b661a;padding:.45rem .75rem;font-size:.72rem;font-weight:700}.withdrawal-table th:first-child{text-align:left}.withdrawal-table td{text-align:right;color:#1f2937;border-bottom:1px solid #163b660f;padding:.35rem .75rem}.withdrawal-table td:first-child{text-align:left;color:#566273;font-weight:600}.withdrawal-table tbody tr:last-child td{border-bottom:none}.withdrawal-table tbody tr:hover{background:#163b6608}.withdrawal-table-row--warn{background:#bf34260a}.withdrawal-table-row--warn td:first-child{color:#bf3426}.withdrawal-table-cell--amount{font-variant-numeric:tabular-nums;font-weight:600}.withdrawal-table-cell--warn{color:#bf3426;font-variant-numeric:tabular-nums;font-weight:700}.withdrawal-table-cell--ok{color:#15803d;font-variant-numeric:tabular-nums;font-weight:600}.withdrawal-table-cell--purchase{color:#7c3aed;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.whatif-purchase-list{flex-direction:column;gap:.35rem;margin:0 0 1rem;padding:0;list-style:none;display:flex}.whatif-purchase-item{background:#f3f0ff;border:1px solid #ddd6fe;border-radius:6px;align-items:center;gap:.6rem;padding:.4rem .65rem;font-size:.85rem;display:flex}.whatif-purchase-age{color:#4c1d95;flex-shrink:0;min-width:4.5rem;font-weight:700}.whatif-purchase-label{color:#1f2937;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.whatif-purchase-amount{font-variant-numeric:tabular-nums;color:#7c3aed;white-space:nowrap;font-weight:700}.whatif-purchase-remove{cursor:pointer;color:#9ca3af;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:.1rem .25rem;font-size:.8rem;line-height:1}.whatif-purchase-remove:hover{color:#bf3426;background:#fee2e2}.whatif-add-row{flex-wrap:wrap;align-items:flex-end;gap:.65rem;display:flex}.whatif-add-field{flex-direction:column;flex:1;gap:.2rem;min-width:8rem;display:flex}.whatif-add-field--narrow{flex:0 0 7rem}.whatif-label-input{min-width:12rem}.whatif-add-btn{white-space:nowrap;align-self:flex-end;padding:.45rem 1rem}.retirement-checkbox-label{cursor:pointer;color:#1f2937;flex-wrap:wrap;align-items:baseline;gap:.45rem;font-size:.85rem;font-weight:700;display:flex}.retirement-checkbox{cursor:pointer;accent-color:#163b66;flex-shrink:0;width:1rem;height:1rem}.year-state-row{flex-wrap:wrap;align-items:flex-end;gap:.75rem 1.25rem;display:flex}.year-state-field{gap:.4rem;font-size:.92rem;font-weight:600;display:grid}.year-state-field select{font:inherit;color:inherit;background:#fcfdfbf2;border:1px solid #16302b33;border-radius:6px;width:6.5rem;padding:.38rem .65rem;font-size:.875rem}.year-state-field--state select{width:13rem}.year-state-field select:focus{border-color:#0a5ea8;outline:2px solid #0a5ea840}.num--negative{color:#bf3426}.summary-card--warning .num--negative,.summary-card--accent .num--negative{color:#fca5a5}.account-panel{gap:1.5rem;max-width:480px;display:grid}.account-panel__heading{color:#1f2937;margin:0;font-size:1.15rem;font-weight:700}.account-panel__card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;align-items:center;gap:1rem;padding:1rem 1.2rem;display:flex}.account-panel__avatar{color:#fff;background:#163b66;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.3rem;font-weight:700;display:flex;overflow:hidden}.account-panel__avatar-img{object-fit:cover;width:100%;height:100%}.account-panel__identity{flex-direction:column;gap:.15rem;min-width:0;display:flex}.account-panel__name{white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:600;overflow:hidden}.account-panel__email{color:#6b7280;white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.account-panel__dl{gap:.5rem;margin:0;display:grid}.account-panel__dl-row{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;justify-content:space-between;align-items:center;padding:.6rem .8rem;font-size:.85rem;display:flex}.account-panel__dl-row dt{color:#6b7280;font-weight:500}.account-panel__dl-row dd{margin:0;font-weight:600}.account-panel__badge{color:#374151;background:#f3f4f6;border-radius:20px;padding:.15rem .55rem;font-size:.78rem;font-weight:600;display:inline-block}.account-panel__badge--premium{color:#92400e;background:#fef3c7}.account-panel__actions{gap:.75rem;display:flex}.account-panel__upgrade{background:#f0f7ff;border:1px solid #bdd7f0;border-radius:12px;gap:.8rem;padding:1rem 1.2rem;display:grid}.account-panel__upgrade-heading{color:#163b66;margin:0;font-size:.95rem;font-weight:700}.account-panel__upgrade-desc{color:#4b5563;margin:0;font-size:.82rem}.account-panel__upgrade-plans{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.account-panel__plan-card{background:#fff;border:1px solid #d1e3f5;border-radius:10px;flex-direction:column;gap:.4rem;padding:.85rem .9rem;display:flex;position:relative}.account-panel__plan-card--featured{background:#eff6ff;border-color:#2563eb}.account-panel__plan-badge{color:#fff;letter-spacing:.02em;background:#2563eb;border-radius:20px;padding:.1rem .45rem;font-size:.65rem;font-weight:700;position:absolute;top:-.55rem;right:.6rem}.account-panel__plan-name{color:#374151;font-size:.8rem;font-weight:600}.account-panel__plan-price{color:#111827;font-size:1.25rem;font-weight:800;line-height:1}.account-panel__plan-price span{color:#6b7280;font-size:.75rem;font-weight:500}.account-panel__plan-btn{color:#2563eb;font:inherit;cursor:pointer;background:#fff;border:1px solid #2563eb;border-radius:7px;margin-top:.25rem;padding:.45rem .5rem;font-size:.75rem;font-weight:600;transition:background .15s,color .15s}.account-panel__plan-btn:hover:not(:disabled){color:#fff;background:#2563eb}.account-panel__plan-btn:disabled{opacity:.6;cursor:wait}.account-panel__plan-btn--featured{color:#fff;background:#2563eb}.account-panel__plan-btn--featured:hover:not(:disabled){background:#1d4ed8}.account-panel__upgrade-error{color:#dc2626;margin:0;font-size:.8rem}.app-mobile-tabs{display:none}@media (width<=980px){.app-mobile-tabs{z-index:60;-webkit-backdrop-filter:blur(12px);padding-bottom:env(safe-area-inset-bottom,0);background:#f6f8fbf5;border-top:1px solid #0f172a1a;display:flex;position:fixed;bottom:0;left:0;right:0}.app-main{padding-bottom:calc(3.75rem + env(safe-area-inset-bottom,0px))}.mobile-tab{cursor:pointer;font:inherit;color:#8a9aab;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.18rem;min-width:0;min-height:3.25rem;padding:.5rem .2rem;transition:color .12s;display:flex}.mobile-tab.is-active{color:#163b66}.mobile-tab-number{background:#163b6614;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.55rem;height:1.55rem;font-size:.75rem;font-weight:700;transition:background .12s,color .12s;display:flex}.mobile-tab.is-active .mobile-tab-number{color:#fff;background:#163b66}.mobile-tab-label{white-space:nowrap;text-overflow:ellipsis;letter-spacing:.01em;max-width:100%;font-size:.6rem;font-weight:500;overflow:hidden}.w2-box12-amount-input{width:clamp(90px,30vw,130px)}}
