.ws{background:var(--white,#fff);color:#1a1a1a;grid-template-columns:246px minmax(0,1fr) 264px;min-height:100vh;display:grid}.ws .category-title,.ws .category-header:hover .category-title{color:#111418}.ws-rail{--r-ink:#20304a;--r-ink2:#43536b;--r-ink3:#71809a;--r-hover:#e2ecf7;--r-active:#d5e6f6;--r-line:#dde7f2;--r-sky:#0369a1;--r-danger:#dc2626;--r-menu:#fff;--r-menu-line:#d3deec;--r-menu-shadow:0 10px 28px #102a4a29;--r-lock:#b45309;--r-lockbg:#f5a6232e;background:#eef4fb;border-right:1px solid #d8e4f1;flex-direction:column;align-self:start;gap:16px;height:100vh;padding:18px 12px;display:flex;position:sticky;top:0;overflow-y:auto}.ws-brand{padding:4px 2px 2px}a.ws-brand{text-decoration:none;display:block}.ws-brand svg{width:100%;height:auto;display:block}.ws-group{flex-direction:column;gap:1px;display:flex}.ws-group-label{letter-spacing:.9px;text-transform:uppercase;color:var(--r-ink3);margin:0 8px 5px;font-size:10.5px;font-weight:700}.ws-group-label-budget{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ws-row{cursor:pointer;text-align:left;width:100%;font:inherit;color:var(--r-ink2);background:0 0;border:0;border-radius:7px;align-items:center;gap:9px;padding:6px 8px;font-size:13px;font-weight:500;line-height:1.25;transition:background .12s,color .12s;display:flex}.ws-row:hover{background:var(--r-hover);color:var(--r-ink)}.ws-row:focus-visible{outline:2px solid var(--r-sky);outline-offset:-2px}.ws-row-ic{width:17px;height:17px;color:var(--r-ink3);flex:none;justify-content:center;align-items:center;font-size:13px;line-height:1;transition:color .12s;display:inline-flex}.ws-row-ic svg{width:15px;height:15px}.ws-row:hover .ws-row-ic{color:var(--r-ink2)}.ws-row-grow{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.ws-row-amt{color:var(--r-ink3);font-variant-numeric:tabular-nums;flex:none;font-size:11px;font-weight:600}.ws-row.is-locked{opacity:.85}.ws-row-alert{box-sizing:border-box;color:#dc2626;text-align:center;background:#fef2f2;border-radius:999px;flex:none;min-width:16px;padding:1px 5px;font-size:10px;font-weight:700}.ws-row-count{box-sizing:border-box;background:var(--r-hover);min-width:16px;color:var(--r-ink3);text-align:center;border-radius:999px;flex:none;padding:1px 5px;font-size:10px;font-weight:700}.ws-row:hover .ws-row-count{background:var(--r-active)}.ws-pro-chip{letter-spacing:.4px;background:var(--r-lockbg);color:var(--r-lock);border-radius:4px;flex:none;padding:2px 5px;font-size:9px;font-weight:800}.ws-row-primary{color:var(--r-sky);font-weight:600}.ws-row-primary .ws-row-ic,.ws-row-primary .ws-row-arrow,.ws-row-primary:hover,.ws-row-primary:hover .ws-row-ic{color:var(--r-sky)}.ws-row-arrow{flex:none;display:inline-flex}.ws-row-arrow svg{width:13px;height:13px}.ws-row-danger,.ws-row-danger .ws-row-ic{color:var(--r-danger)}.ws-row-danger:hover{color:var(--r-danger);background:#dc262614}.ws-row-danger:hover .ws-row-ic{color:var(--r-danger)}.ws-sep{border:0;border-top:1px solid var(--r-line);width:auto;margin:8px 6px}.ws-budget-list{flex-direction:column;gap:1px;margin:0;padding:0;list-style:none;display:flex}.ws-budget-li{align-items:center;display:flex;position:relative}.ws-dot{background:var(--cat-accent,var(--r-ink3));border-radius:50%;flex:none;width:7px;height:7px;margin:0 5px}.ws-budget.is-active{background:var(--r-active);color:var(--r-ink);box-shadow:inset 3px 0 0 var(--cat-accent,var(--module-accent,#3b82f6));font-weight:600}.ws-budget.is-active .ws-row-amt{color:var(--r-ink2)}.ws-kebab{cursor:pointer;width:22px;height:22px;color:var(--r-ink3);background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;padding:0;display:none;position:absolute;top:50%;right:5px;transform:translateY(-50%)}.ws-budget-li:hover .ws-kebab,.ws-budget-li:focus-within .ws-kebab,.ws-budget-li.menu-open .ws-kebab{display:inline-flex}.ws-budget-li:hover .ws-row-amt,.ws-budget-li:focus-within .ws-row-amt,.ws-budget-li.menu-open .ws-row-amt,.ws-budget-li:hover .ws-budget-vaulted,.ws-budget-li:focus-within .ws-budget-vaulted,.ws-budget-li.menu-open .ws-budget-vaulted{display:none}.ws-budget-li:hover .ws-budget,.ws-budget-li:focus-within .ws-budget,.ws-budget-li.menu-open .ws-budget{padding-right:30px}.ws-kebab:hover,.ws-budget-li.menu-open .ws-kebab{background:var(--r-active);color:var(--r-ink)}.ws-bmenu{z-index:40;background:var(--r-menu);border:1px solid var(--r-menu-line);min-width:132px;box-shadow:var(--r-menu-shadow);border-radius:9px;flex-direction:column;padding:4px;display:flex;position:absolute;top:calc(100% + 2px);right:2px}.ws-bmenu button{cursor:pointer;text-align:left;font:inherit;color:var(--r-ink2);background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;padding:6px 8px;font-size:12.5px;font-weight:500;display:flex}.ws-bmenu button svg{color:var(--r-ink3);flex:none}.ws-bmenu button:hover{background:var(--r-hover);color:var(--r-ink)}.ws-bmenu button.danger,.ws-bmenu button.danger svg{color:var(--r-danger)}.ws-bmenu button.danger:hover{color:var(--r-danger);background:#dc26261a}.ws-budget-rename{box-sizing:border-box;border:1.5px solid var(--r-sky,var(--bf-sky,#0284c7));background:var(--r-menu,#fff);width:100%;font:inherit;color:var(--r-ink,#1a1f29);border-radius:7px;outline:none;padding:6px 8px;font-size:13px;font-weight:600}.ws-budget-ic{background:var(--cat-tint);width:30px;height:30px;color:var(--cat-accent);border-radius:9px;flex:none;justify-content:center;align-items:center;display:flex}.ws-newbudget{color:var(--r-sky);font-weight:600}.ws-newbudget .ws-row-ic{color:var(--r-sky)}.ws-newbudget:hover{color:var(--r-sky);background:var(--r-hover)}.ws-newbudget:hover .ws-row-ic{color:var(--r-sky)}.ws-newbudget-plus{color:var(--bf-sky,#0284c7);flex:none;justify-content:center;align-items:center;display:inline-flex}.ws-fold-chev{width:17px;height:17px;color:var(--r-ink3);flex:none;justify-content:center;align-items:center;transition:transform .15s;display:inline-flex}.ws-fold-chev svg{width:13px;height:13px}.ws-fold-chev.is-open{transform:rotate(90deg)}.ws-fold-body{flex-direction:column;gap:1px;display:flex}.ws-sub{padding-left:27px}.ws-sub .ws-row-ic{display:none}.ws-install{cursor:pointer;width:100%;font:inherit;border:1px solid color-mix(in srgb, var(--r-sky,#0284c7) 26%, transparent);background:color-mix(in srgb, var(--r-sky,#0284c7) 8%, transparent);color:var(--r-sky,#0284c7);border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:7px 10px;font-size:12.5px;font-weight:600;transition:background .12s,border-color .12s;display:flex}.ws-install:hover{background:color-mix(in srgb, var(--r-sky,#0284c7) 14%, transparent);border-color:color-mix(in srgb, var(--r-sky,#0284c7) 45%, transparent)}.ws-install-ic{align-items:center;display:inline-flex}.ws-rail-foot{flex-direction:column;gap:6px;margin-top:auto;display:flex}.ws-rail-account{flex-direction:column;gap:6px;display:flex}@media (width>=1320px){.ws-rail-account{display:none}}.ws-utility{align-items:center;gap:6px;display:flex}.ws-theme{cursor:pointer;background:#fff;border:1px solid #e4e9f0;border-radius:9px;flex:none;gap:2px;padding:2px;display:inline-flex}.ws-theme-opt{color:#98a1b2;border-radius:7px;justify-content:center;align-items:center;width:30px;height:28px;transition:background .12s,color .12s;display:flex}.ws-theme-opt.is-on{color:var(--module-accent,var(--bf-sky,#0284c7));background:#eef4fb}.ws-currency{cursor:pointer;height:34px;font:inherit;color:#5f6b7d;background:#fff;border:1px solid #e4e9f0;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:6px;font-size:12px;font-weight:600;transition:border-color .12s,color .12s,box-shadow .12s;display:inline-flex}.ws-currency:hover{border-color:color-mix(in srgb, var(--bf-sky,#0284c7) 45%, #e4e9f0);color:var(--bf-sky,#0284c7);box-shadow:0 2px 7px #141e320f}.ws-help{cursor:pointer;color:#5f6b7d;background:#fff;border:1px solid #e4e9f0;border-radius:9px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;transition:border-color .12s,color .12s,box-shadow .12s;display:inline-flex}.ws-help svg{color:#97a0b2;transition:color .12s}.ws-help:hover{border-color:color-mix(in srgb, var(--bf-sky,#0284c7) 45%, #e4e9f0);color:var(--bf-sky,#0284c7);box-shadow:0 2px 7px #141e320f}.ws-help:hover svg{color:var(--bf-sky,#0284c7)}.ws-bell-wrap{display:inline-flex;position:relative}.ws-bell{cursor:pointer;background:#fff;border:1px solid #e4e9f0;border-radius:9px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;transition:border-color .12s,box-shadow .12s;display:inline-flex;position:relative}.ws-bell .ws-bell-icon{color:#97a0b2;transform-origin:50% 4px;transition:color .12s}.ws-bell:hover,.ws-bell.is-open{border-color:color-mix(in srgb, var(--bf-sky,#0284c7) 45%, #e4e9f0);box-shadow:0 2px 7px #141e320f}.ws-bell:hover .ws-bell-icon,.ws-bell.is-open .ws-bell-icon{color:var(--bf-sky,#0284c7)}@keyframes ws-bell-ring{0%,to{transform:rotate(0)}15%{transform:rotate(14deg)}30%{transform:rotate(-12deg)}45%{transform:rotate(9deg)}60%{transform:rotate(-6deg)}75%{transform:rotate(3deg)}}.ws-bell:hover .ws-bell-icon{animation:.8s ws-bell-ring}.ws-bell.is-attn .ws-bell-icon{animation:.9s 1.2s backwards ws-bell-ring}.ws-bell-dot{background:var(--bf-sky,#0284c7);box-sizing:content-box;border:2px solid #fff;border-radius:50%;width:8px;height:8px;position:absolute;top:5px;right:6px}@media (prefers-reduced-motion:reduce){.ws-bell .ws-bell-icon{animation:none!important}}.ws-bell-pop{z-index:120;text-align:left;background:#fff;border:1px solid #e4e9f0;border-radius:12px;flex-direction:column;gap:9px;width:252px;padding:12px;font-size:12.5px;display:flex;position:fixed;box-shadow:0 10px 28px #141e3224}.ws-bell-pop-title{letter-spacing:.06em;text-transform:uppercase;color:#8b94a5;font-size:11px;font-weight:800}.ws-bell-opt{align-items:flex-start;gap:10px;display:flex}.ws-bell-opt-text{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.ws-bell-opt-title{color:#1f2733;font-weight:700}.ws-bell-opt-sub{color:#5f6b7d;font-size:11.5px;line-height:1.45}.ws-bell-foot{color:#8b94a5;border-top:1px solid #eef1f5;padding-top:8px;font-size:11px}.ws-bell-cta{color:#fff;background:var(--bf-sky,#0284c7);border-radius:99px;align-self:flex-start;padding:7px 16px;font-size:12.5px;font-weight:700;text-decoration:none}.ws-bell-switch{cursor:pointer;flex:none;margin-top:1px;display:inline-flex}.ws-bell-switch input{opacity:0;width:1px;height:1px;position:absolute}.ws-bell-track{background:#d5dbe4;border-radius:99px;width:34px;height:20px;transition:background .15s;position:relative}.ws-bell-knob{background:#fff;border-radius:50%;width:16px;height:16px;transition:left .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #141e3240}.ws-bell-switch.is-on .ws-bell-track{background:var(--bf-sky,#0284c7)}.ws-bell-switch.is-on .ws-bell-knob{left:16px}.ws-bell-switch.is-busy{opacity:.55;cursor:default}.ws-bell-switch input:focus-visible+.ws-bell-track{outline:2px solid var(--bf-sky,#0284c7);outline-offset:2px}.ws-bell-row{background:#fff;border:1px solid #e4e9f0;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;display:flex}.ws-bell-row-icon{background:color-mix(in srgb, var(--bf-sky,#0284c7) 12%, #fff);width:30px;height:30px;color:var(--bf-sky,#0284c7);border-radius:8px;flex:none;justify-content:center;align-items:center;display:inline-flex}.ws-bell-row-icon .ws-bell-icon{color:inherit}.ws-bell-row-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.ws-bell-row-title{color:#1f2733;font-size:13px;font-weight:700}.ws-bell-row-sub{color:#5f6b7d;font-size:11px;line-height:1.4}.ws-bell-signin{color:var(--bf-sky,#0284c7);font-size:12.5px;font-weight:700;text-decoration:none}.ws-plan{flex-direction:column;gap:5px;display:flex}.ws-plan-chip{letter-spacing:.05em;text-transform:uppercase;border-radius:999px;align-self:flex-start;padding:2px 8px;font-size:10px;font-weight:800}.ws-plan-free{color:#6b7686;background:#eef1f5}.ws-plan-pro{color:#4a3204;background:linear-gradient(135deg,#f6c454,#e0a93a);box-shadow:0 1px 4px #e0a93a66}.ws-plan-trial{background:linear-gradient(135deg, var(--bf-sky,#0284c7), var(--bf-sky-deep,#075985));color:#fff;box-shadow:0 1px 4px color-mix(in srgb, var(--bf-sky,#0284c7) 38%, transparent)}.ws-plan-upgrade{cursor:pointer;background:linear-gradient(135deg, var(--bf-sky,#0284c7), var(--bf-sky-deep,#075985));color:#fff;box-shadow:0 4px 12px color-mix(in srgb, var(--bf-sky,#0284c7) 28%, transparent);border:none;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:8px 10px;font-family:inherit;font-size:13px;font-weight:700;text-decoration:none;transition:filter .12s,transform .12s;display:inline-flex}.ws-plan-upgrade:hover{filter:brightness(1.08);transform:translateY(-1px)}.ws-plan-billing-err{color:#b91c1c;font-size:11.5px;line-height:1.35}.ws-plan-sheet{flex-direction:row;justify-content:space-between;align-items:center;gap:8px;margin:2px 0 12px}.ws-plan-sheet .ws-plan-upgrade{padding:7px 12px}.ws-plan-panel{align-items:stretch;gap:7px;width:100%}.ws-plan-panel .ws-plan-chip{align-self:center}.ws-plan-panel .ws-plan-upgrade{width:100%}.ws-profile-meta{flex-direction:column;align-items:stretch;gap:12px;width:100%;margin-top:14px;display:flex}.ws-ai-meter{flex-direction:column;gap:4px;display:flex}.ws-ai-meter-top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.ws-ai-meter-label{letter-spacing:.05em;text-transform:uppercase;color:#7a8696;font-size:10px;font-weight:800}.ws-ai-meter-count{color:#5f6b7d;white-space:nowrap;font-size:11px;font-weight:600}.ws-ai-meter-bar{background:#e6e9ef;border-radius:999px;height:5px;overflow:hidden}.ws-ai-meter-fill{background:var(--bf-sky,#0284c7);border-radius:999px;height:100%;transition:width .2s;display:block}.ws-ai-meter-reset{color:#9aa3b2;font-size:10px}.ws-ai-meter.is-low .ws-ai-meter-fill{background:#e0892f}.ws-ai-meter.is-low .ws-ai-meter-count{color:#b45309}.ws-ai-meter-sheet{margin:0 0 12px}.ws-main-col{flex-direction:column;min-width:0;display:flex}.ws-head{border-bottom:1px solid #e9edf3;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 14px;padding:22px 28px 16px;display:flex}.ws-head-text{flex:300px;min-width:0}.ws-head-eyebrow{letter-spacing:.2px;color:var(--cat-accent);background:var(--cat-tint);border-radius:99px;align-items:center;gap:6px;padding:4px 11px 4px 8px;font-size:11.5px;font-weight:700;display:inline-flex}.ws-head-title{letter-spacing:-.5px;color:#111418;margin:9px 0 0;font-size:26px;font-weight:800}.ws-head-sub{color:#7a8395;margin:4px 0 0;font-size:12.5px;font-weight:500}.ws-head-actions{flex:0 auto;align-items:center;gap:10px;min-width:0;display:flex}.ws-search{color:#9aa3b2;border:1px solid #e4e9f0;border-radius:10px;align-items:center;gap:7px;min-width:0;height:38px;padding:0 12px;display:inline-flex}.ws-search:focus-within{border-color:var(--module-accent,#3b82f6);color:var(--module-accent,#3b82f6)}.ws-search-input{font:inherit;color:#1a1f29;background:0 0;border:0;outline:none;width:150px;max-width:100%;font-size:13px}.ws-search-input::placeholder{color:#9aa3b2}.ws-content{flex:1;min-width:0;padding:10px 20px 24px}.ws .main-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:12px;max-width:none;display:grid}.ws .main-inner>.welcome-block,.ws .main-inner>.overdue-nudge,.ws .main-inner>.plan-tools,.ws .main-inner>.install-note,.ws .main-inner>.main-summary-cta,.ws .main-inner>.footer-note,.ws .main-inner>.search-empty,.ws .main-inner>.category-section:not(.collapsed){grid-column:1/-1}.ws .search-empty{color:#6b7686;padding:28px 4px;font-size:14px}.ws .main-inner>.category-section{margin:0}.ws .category-section.collapsed{background:#fff;border:1px solid #e9edf3;border-radius:12px;transition:border-color .15s,box-shadow .15s}.ws .category-section.collapsed:hover{border-color:var(--cat-accent,#c9d3e0);box-shadow:0 2px 12px #1114180f}.ws .category-section.collapsed .category-header{border:0;margin:0;padding:13px 15px}.ws th.th-notes,.ws td.cell-notes{vertical-align:middle;display:table-cell}.ws col.c-notes{width:230px}@media (width>=1025px){.ws .component-table th,.ws .component-table td{padding-left:8px;padding-right:8px}.ws .component-table thead th{letter-spacing:.3px;white-space:normal;font-size:10px;line-height:1.15}.ws col.c-name{width:160px}.ws .component-table .cell-name{overflow-wrap:anywhere}.ws col.c-life{width:114px}.ws col.c-qty{width:86px}.ws col.c-price{width:82px}.ws col.c-recurring{width:58px}.ws col.c-custom{width:54px}.ws col.c-notes{width:auto;min-width:100px}.ws td.cell-notes .note-input{min-width:88px}}.note-input{box-sizing:border-box;color:#1a1f29;background:#fff;border:1px solid #e4e9f0;border-radius:7px;width:100%;padding:6px 9px;font-family:inherit;font-size:12.5px}.note-input::placeholder{color:#b3bac7}.note-input:focus{outline:2px solid var(--module-accent,#3b82f6);outline-offset:-1px;border-color:#0000}.ws-foot{color:#9aa3b2;background:#fbfcfe;border-top:1px solid #e9edf3;justify-content:space-between;gap:12px;padding:14px 28px;font-size:11.5px;font-weight:500;display:flex}.ws-foot-links{align-items:center;gap:16px;display:flex}.ws-foot-links a{color:inherit;text-decoration:none}.ws-foot-links a:hover{color:var(--module-accent,var(--bf-sky))}.ws-context{background:#f7f9fc;border-left:1px solid #e5eaf1;flex-direction:column;align-self:start;gap:20px;height:100vh;padding:22px 16px;display:flex;position:sticky;top:0;overflow-y:auto}.ws-profile{text-align:center;flex-direction:column;align-items:center;gap:2px;display:flex}.ws-avatar{background:var(--bf-sky-tint,#e0f2fe);width:60px;height:60px;color:var(--bf-sky,#0284c7);border-radius:50%;justify-content:center;align-items:center;margin-bottom:8px;display:flex;overflow:hidden}.ws-avatar-img{object-fit:cover;width:100%;height:100%;display:block}.ws-profile-name{color:#111418;font-size:16px;font-weight:700}.ws-profile-handle{color:#9aa3b2;font-size:12px;font-weight:500}.ws-profile-actions{gap:8px;margin-top:10px;display:flex}.ws-profile-actions button,.ws-profile-actions a{cursor:pointer;color:#5f6b7d;background:#fff;border:1px solid #e4e9f0;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;text-decoration:none;display:flex}.ws-profile-actions button:hover,.ws-profile-actions a:hover{color:var(--module-accent,var(--bf-sky));border-color:var(--module-accent,var(--bf-sky))}.ws-ctx-block{border-top:1px solid #d8e4f1;padding-top:16px}.ws-ctx-label,.ws-ctx-sub{letter-spacing:.6px;text-transform:uppercase;color:#98a1b2;margin-bottom:9px;font-size:11px;font-weight:700}.ws-ctx-value{letter-spacing:-.6px;color:var(--module-accent,#1e40af);font-size:26px;font-weight:800;line-height:1}.ws-ctx-split{color:#7a8395;margin-top:6px;font-size:11.5px;font-weight:600}.ws-ctx-holds{color:var(--module-accent,#3b82f6);margin-top:3px;font-size:11.5px;font-weight:600}.ws-ctx-due-row{justify-content:space-between;align-items:center;display:flex}.ws-ctx-due-label{letter-spacing:.6px;text-transform:uppercase;color:#98a1b2;font-size:11px;font-weight:700}.ws-ctx-due{color:#111418;font-size:20px;font-weight:800}.ws-ctx-empty{color:#9aa3b2;font-size:12px}.ws-up{flex-direction:column;gap:11px;margin:0;padding:0;list-style:none;display:flex}.ws-up li{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:2px 8px;display:grid}.ws-up-when{letter-spacing:.4px;text-transform:uppercase;color:#98a1b2;grid-column:1/-1;font-size:10px;font-weight:700}.ws-up li.is-overdue .ws-up-when{color:var(--cat-clay,#ef4444)}.ws-up-name{color:#1a1f29;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.ws-up-amt{color:#111418;font-size:13px;font-weight:700}.ws-mtop,.ws-mstats,.ws-msearch,.ws-bottombar{display:none}.ws-mtop{z-index:20;background:#fff;border-bottom:1px solid #e9edf3;align-items:center;gap:10px;padding:11px 14px;position:sticky;top:0}.ws-mtop-logo{flex:none;width:104px;display:flex}a.ws-mtop-logo{text-decoration:none}.ws-mtop-logo svg{width:100%;height:auto;display:block}.ws-mswitch{flex:1;justify-content:center;align-items:center;gap:6px;min-width:0;display:flex}.ws-mswitch-arrow{cursor:pointer;color:#5f6b7d;background:#fff;border:1px solid #e4e9f0;border-radius:8px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.ws-mswitch-main{flex-direction:column;align-items:center;min-width:0;display:flex}.ws-mswitch-name{color:#111418;white-space:nowrap;text-overflow:ellipsis;max-width:160px;font-size:15px;font-weight:800;overflow:hidden}.ws-mswitch-mod{color:#98a1b2;font-size:11px;font-weight:600}.ws-mtop-acct{background:var(--bf-sky-tint,#e0f2fe);width:34px;height:34px;color:var(--bf-sky,#0284c7);cursor:pointer;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;text-decoration:none;display:flex;overflow:hidden}.ws-mtop-acct:active{filter:brightness(.94)}.ws-acct-img{object-fit:cover;width:100%;height:100%;display:block}.ws-mstats{flex-wrap:nowrap;align-items:stretch;gap:8px;padding:12px 14px 2px}.ws-mstat{background:#f4f6fa;border-radius:12px;flex-direction:column;flex:1 1 0;gap:2px;min-width:0;padding:8px 10px;display:flex}.ws-mstat-primary{background:var(--module-tint,#eff6ff);flex:2 1 0}.ws-mstat-label{letter-spacing:.4px;text-transform:uppercase;color:#98a1b2;white-space:nowrap;text-overflow:ellipsis;font-size:9.5px;font-weight:700;overflow:hidden}.ws-mstat-primary .ws-mstat-label{color:var(--module-accent,#1e40af)}.ws-mstat-value{color:#111418;white-space:nowrap;font-size:17px;font-weight:800;line-height:1.1}.ws-mstat-primary .ws-mstat-value{color:var(--module-accent,#1e40af);font-size:20px}.ws-mstat-sub{color:var(--module-accent,#3b82f6);white-space:nowrap;text-overflow:ellipsis;font-size:9.5px;font-weight:600;overflow:hidden}.ws-msearch{color:#9aa3b2;background:#fff;border:1px solid #e4e9f0;border-radius:11px;align-items:center;gap:8px;height:42px;margin:10px 14px 2px;padding:0 12px}.ws-msearch:focus-within{border-color:var(--module-accent,#3b82f6);color:var(--module-accent,#3b82f6)}.ws-msearch-input{min-width:0;font:inherit;color:#1a1f29;background:0 0;border:0;outline:none;flex:1;font-size:15px}.ws-msearch-input::placeholder{color:#9aa3b2}.ws-bottombar{z-index:90;padding:8px 6px calc(8px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid #e9edf3;justify-content:space-around;align-items:center;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 16px #11141812}.ws-bb{cursor:pointer;color:#9aa3b2;background:0 0;border:0;flex-direction:column;flex:1;align-items:center;gap:3px;min-width:0;padding:4px 0;font-size:10.5px;font-weight:600;display:flex}.ws-bb.is-active,.ws-bb-accent{color:var(--module-accent,#3b82f6)}.ws-bb-household,.ws-bb-household.is-active{color:var(--bf-sky,#0284c7)}.ws-bb-util{color:#5f6b85}.ws-bb-util.is-active{color:#3f4a63}.ws-bb-ecal.is-active{color:var(--bf-sky,#0284c7)}.ws-bb-ic{display:inline-flex;position:relative}.ws-bb-badge{color:#fff;background:#dc2626;border-radius:999px;justify-content:center;align-items:center;min-width:15px;height:15px;padding:0 4px;font-size:9.5px;font-weight:800;line-height:1;display:flex;position:absolute;top:-5px;right:-9px}a.ws-bb{text-decoration:none}.ws-bb-fab{cursor:pointer;color:#fff;background:#0369a1;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;width:52px;height:52px;margin-top:-22px;display:flex;box-shadow:0 6px 16px #0369a166}.ws-sheet-backdrop{z-index:135;background:#11141873;position:fixed;inset:0}.ws-sheet{z-index:140;padding:0 14px calc(18px + env(safe-area-inset-bottom,0px));-webkit-overflow-scrolling:touch;background:#fff;border-radius:18px 18px 0 0;flex-direction:column;gap:6px;max-height:88vh;animation:.18s ws-sheet-up;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -8px 30px #11141838}.ws-sheet>*{flex-shrink:0}.ws-sheet-grip{background:#d4dae3;border-radius:99px;flex:none;width:38px;height:4px;margin:4px auto 2px}.ws-sheet-account{margin:2px 0}.ws-sheet-account .acct-as-row .acct-menu{width:auto;max-width:none;box-shadow:none;margin-top:8px;position:static;inset:auto}.ws-srow-ic{color:#97a0b2;background:#f2f4f8;border-radius:8px;flex:none;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;display:flex}.ws-srow-ic svg{color:inherit}.ws-srow-ai{color:#9333ea;background:#f3e8fb}.ws-srow-log{color:#b45309;background:#fbf1dc}.ws-srow-budgets{color:#0369a1;background:#e0f2fe}.ws-srow-grow{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.ws-srow-count{box-sizing:border-box;color:#6b7686;text-align:center;background:#eef1f5;border-radius:999px;flex:none;min-width:18px;padding:1px 7px;font-size:11px;font-weight:700}.ws-sheet-close{cursor:pointer;z-index:2;background:#fff;border:0;border-radius:18px 18px 0 0;flex:none;justify-content:center;width:100%;margin:0;padding:12px 0 6px;display:flex;position:sticky;top:0}.ws-sheet-close .ws-sheet-grip{margin:0}.ws-mb-list{flex-direction:column;gap:6px;max-height:50vh;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.ws-mb-li{background:#fff;border:1px solid #e4e9f0;border-radius:12px;align-items:center;gap:6px;padding:4px 6px 4px 4px;display:flex}.ws-mb-li.is-active{background:#f3f9fe;border-color:#7dc4ea}.ws-mb-main{text-align:left;cursor:pointer;min-width:0;font:inherit;background:0 0;border:0;flex:1;align-items:center;gap:10px;padding:8px 4px;display:flex}.ws-mb-info{flex-direction:column;gap:1px;min-width:0;display:flex}.ws-mb-name{color:#2b3344;white-space:nowrap;text-overflow:ellipsis;font-size:14.5px;font-weight:700;overflow:hidden}.ws-mb-amt{color:#8b94a3;font-size:12px;font-weight:600}.ws-mb-act{color:#6b7686;cursor:pointer;background:#fff;border:1px solid #e4e9f0;border-radius:10px;flex:none;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.ws-mb-act.danger{color:#dc2626;border-color:#f3d5d5}.ws-mb-new{font:inherit;color:#0369a1;cursor:pointer;background:0 0;border:1px dashed #9fc9e8;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:14px;font-weight:700;display:flex}.ws-sheet-list{flex-direction:column;gap:2px;display:flex}.ws-sheet-row{text-align:left;cursor:pointer;width:100%;font:inherit;color:#2b3344;background:0 0;border:0;border-radius:9px;align-items:center;gap:11px;padding:8px;font-size:14px;font-weight:600;transition:background .12s;display:flex}.ws-sheet-row svg{color:#97a0b2;flex:none}.ws-sheet-row:active{background:#f0f3f8}.ws-sheet-row.is-locked{opacity:.85}.ws-sheet-row-danger,.ws-sheet-row-danger svg{color:#dc2626}.ws-sheet-row-danger .ws-srow-ic{color:#dc2626;background:#fdeeee}.ws-sheet-row-danger:active{background:#dc262614}.ws-sheet-section{letter-spacing:.8px;text-transform:uppercase;color:#98a1b2;margin-top:4px;padding:2px 4px 0;font-size:10.5px;font-weight:700}.ws-sheet-appearance{align-items:center;gap:8px;display:flex}.ws-sheet-appearance .ws-theme{padding:3px}.ws-sheet-appearance .ws-theme-opt{width:36px;height:34px}.ws-sheet-appearance .ws-currency{border-radius:11px;height:42px;font-size:13px}@keyframes ws-sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (width<=1319px){.ws{grid-template-columns:230px minmax(0,1fr)}.ws-context{display:none}}@media (width<=1024px){.ws .component-table tbody tr.is-included,.ws .component-table tbody tr.custom-row{grid-template-areas:"inc name name info"".life qty price"".diy rec custom""notes notes notes notes"}.ws td.cell-notes{grid-area:notes;display:block}.ws .cell-notes:before{content:"Notes";letter-spacing:.4px;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px;font-family:Montserrat,sans-serif;font-size:10px;font-weight:600;display:block}.ws td.cell-notes .note-input{width:100%}}@media (width<=980px){.ws .main-inner{grid-template-columns:minmax(0,1fr)}}@media (width<=680px){.ws{grid-template-columns:1fr}.ws-rail,.ws-head,.ws-foot{display:none}.ws-mtop,.ws-mstats,.ws-msearch,.ws-bottombar{display:flex}.ws-content{padding:12px 14px 92px}}@media (prefers-reduced-motion:reduce){.ws .category-section.collapsed,.ws-row,.ws-fold-chev{transition:none}.ws-sheet{animation:none}}:root[data-theme=dark] .ws-rail,:root[data-theme=dark] .ws-context,:root[data-theme=dark] .ws-foot{background:#141a24}:root[data-theme=dark] .ws-rail{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--brand-ink:#fff;--r-ink:#e7eaef;--r-ink2:#b6c1d4;--r-ink3:#7f8ca3;--r-hover:#ffffff0f;--r-active:#ffffff1c;--r-line:#ffffff1f;--r-sky:#7dd3fc;--r-danger:#f0a59a;--r-menu:#1b2536;--r-menu-line:#2a3a56;--r-menu-shadow:0 10px 28px #00000073;--r-lock:#f5c063;--r-lockbg:#f5a62329;background:linear-gradient(#172033 0%,#0f1a30 58%,#0c2b46 140%);border-right-color:#0b1526}:root[data-theme=dark] .ws-rail .ws-brand svg text:nth-of-type(2){fill:#7dd3fc}:root[data-theme=dark] .ws-row-alert{color:#f0a59a;background:#3a2022}:root[data-theme=dark] .ws-row-danger:hover,:root[data-theme=dark] .ws-bmenu button.danger:hover{background:#f0a59a1f}:root[data-theme=dark] .ws-context{border-left-color:#2a3441}:root[data-theme=dark] .ws-foot,:root[data-theme=dark] .ws-head{border-color:#2a3441}:root[data-theme=dark] .ws-head{border-bottom-color:#2a3441}:root[data-theme=dark] .ws-ctx-block{border-top-color:#2a3441}:root[data-theme=dark] .ws-profile-actions button,:root[data-theme=dark] .ws-profile-actions a,:root[data-theme=dark] .note-input,:root[data-theme=dark] .ws-mtop,:root[data-theme=dark] .ws-mswitch-arrow,:root[data-theme=dark] .ws-msearch,:root[data-theme=dark] .ws-bottombar,:root[data-theme=dark] .ws-sheet,:root[data-theme=dark] .ws-sheet-appearance button,:root[data-theme=dark] .ws .category-section.collapsed,:root[data-theme=dark] .ws-utility button,:root[data-theme=dark] .acct-row,:root[data-theme=dark] .ws-mstat{color:#d6dce4;background:#1c2431;border-color:#2c3645}:root[data-theme=dark] .ws-sheet,:root[data-theme=dark] .ws-sheet-close{background:#141a24}:root[data-theme=dark] .ws-sheet-row{color:#d6dce4}:root[data-theme=dark] .ws-sheet-row:active,:root[data-theme=dark] .ws-sheet-appearance button:active{background:#232c3a}:root[data-theme=dark] .ws-sheet .ws-sheet-row-danger,:root[data-theme=dark] .ws-sheet .ws-sheet-row-danger svg{color:#f0a59a}:root[data-theme=dark] .ws-sheet .ws-sheet-row-danger .ws-srow-ic{color:#f0a59a;background:#382226}:root[data-theme=dark] .ws-srow-ic{color:#8b94a3;background:#232c3a}:root[data-theme=dark] .ws-srow-ai{color:#c99af0;background:#2b2436}:root[data-theme=dark] .ws-srow-log{color:#e3b866;background:#322a1a}:root[data-theme=dark] .ws-srow-budgets{color:#7dc4ea;background:#16324a}:root[data-theme=dark] .ws-srow-count{color:#aeb6c2;background:#232c3a}:root[data-theme=dark] .ws-sheet-grip{background:#3a4554}:root[data-theme=dark] .ws-plan-free{color:#aeb6c2;background:#232c3a}:root[data-theme=dark] .ws-plan-billing-err{color:#f87171}:root[data-theme=dark] .ws-ai-meter-bar{background:#232c3a}:root[data-theme=dark] .ws-ai-meter-label{color:#8b94a3}:root[data-theme=dark] .ws-ai-meter-count{color:#aeb6c2}:root[data-theme=dark] .ws-ai-meter-reset{color:#707b8a}:root[data-theme=dark] .ws-bb-util{color:#9aa6c4}:root[data-theme=dark] .ws-bb-util.is-active{color:#c3cbe0}:root[data-theme=dark] .ws-search{border-color:#2c3645}:root[data-theme=dark] .ws-mtop{border-bottom-color:#2a3441}:root[data-theme=dark] .ws-bottombar{border-top-color:#2a3441}:root[data-theme=dark] .ws-sheet button:active{background:#232c3a}:root[data-theme=dark] .ws-head-title,:root[data-theme=dark] .ws .category-title,:root[data-theme=dark] .ws-profile-name,:root[data-theme=dark] .ws-ctx-due,:root[data-theme=dark] .ws-up-name,:root[data-theme=dark] .ws-up-amt,:root[data-theme=dark] .ws-mswitch-name,:root[data-theme=dark] .ws-mstat-value{color:#e7eaef}:root[data-theme=dark] .ws-sheet button{color:#c4ccd6}:root[data-theme=dark] .ws-search-input,:root[data-theme=dark] .ws-msearch-input,:root[data-theme=dark] .note-input{color:#e7eaef}:root[data-theme=dark] .ws-theme,:root[data-theme=dark] .ws-currency,:root[data-theme=dark] .ws-help{color:#c4ccd6;background:#1c2431;border-color:#2c3645}:root[data-theme=dark] .ws-help svg,:root[data-theme=dark] .ws-theme-opt{color:#8b94a3}:root[data-theme=dark] .ws-bell{background:#1c2431;border-color:#2c3645}:root[data-theme=dark] .ws-bell .ws-bell-icon{color:#8b94a3}:root[data-theme=dark] .ws-bell:hover .ws-bell-icon,:root[data-theme=dark] .ws-bell.is-open .ws-bell-icon{color:#7dd3fc}:root[data-theme=dark] .ws-bell-dot{background:#38bdf8;border-color:#141a24}:root[data-theme=dark] .ws-bell-pop{background:#1c2431;border-color:#2c3645;box-shadow:0 10px 28px #00000073}:root[data-theme=dark] .ws-bell-pop-title{color:#8b94a3}:root[data-theme=dark] .ws-bell-opt-title{color:#e7eaef}:root[data-theme=dark] .ws-bell-opt-sub{color:#aeb6c2}:root[data-theme=dark] .ws-bell-foot{color:#8b94a3;border-top-color:#2c3645}:root[data-theme=dark] .ws-bell-track{background:#3a4557}:root[data-theme=dark] .ws-bell-switch.is-on .ws-bell-track{background:#0284c7}:root[data-theme=dark] .ws-bell-row{background:#1c2431;border-color:#2c3645}:root[data-theme=dark] .ws-bell-row-title{color:#e7eaef}:root[data-theme=dark] .ws-bell-row-sub{color:#aeb6c2}:root[data-theme=dark] .ws-bell-row-icon{color:#7dd3fc;background:#38bdf829}:root[data-theme=dark] .ws-theme-opt.is-on{color:var(--module-accent,var(--bf-sky));background:#232c3a}:root[data-theme=dark] .ws-newbudget-plus{color:#38bdf8}:root[data-theme=dark] .ws-mb-li{background:#1a2230;border-color:#2c3645}:root[data-theme=dark] .ws-mb-li.is-active{background:#16324a;border-color:#2f5f84}:root[data-theme=dark] .ws-mb-name{color:#e7eaef}:root[data-theme=dark] .ws-mb-act{color:#aeb6c2;background:#1a2230;border-color:#2c3645}:root[data-theme=dark] .ws-mb-act.danger{color:#f0a59a;border-color:#4a2a2a}.ws-budget-vaulted{vertical-align:middle;opacity:.85;margin-left:6px;display:inline-flex}:root{--bf-sky:#0284c7;--bf-sky-deep:#075985;--bf-sky-tint:#e0f2fe;--bf-sky-tint-2:#f0f9ff;--bf-amber:#f59e0b;--bf-amber-deep:#b45309;--bf-amber-tint:#fef3c7;--bf-ink:#172033;--bf-ink-2:#3f4a5e;--bf-ink-3:#6b7686;--bf-line:#e4e9f0;--green:#23a23a;--green-dark:#1b7d2d;--green-light:#eaf5ec;--copper:#b87333;--blue:#2c7cbe;--blue-dark:#1c5a8a;--blue-light:#e8f1f8;--white:#fff;--off-white:#f7f6f3;--card-bg:#fff;--border:#e4e2dc;--text-primary:#1a1a1a;--text-secondary:#555551;--text-muted:#888883;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--shadow:0 1px 3px #00000014, 0 4px 16px #0000000a;--shadow-hover:0 2px 8px #0000001a, 0 8px 24px #0000000f;--danger:#e53e3e;--danger-dark:#b91c1c;--warn:#d4a017;--cat-green:#10b981;--cat-green-bg:color-mix(in srgb, var(--cat-green) 13%, #fff);--cat-clay:#ef4444;--cat-clay-bg:color-mix(in srgb, var(--cat-clay) 13%, #fff);--cat-amber:#f5a623;--cat-amber-bg:color-mix(in srgb, var(--cat-amber) 13%, #fff);--cat-teal:#14b8a6;--cat-teal-bg:color-mix(in srgb, var(--cat-teal) 13%, #fff);--cat-blue:#3b82f6;--cat-blue-bg:color-mix(in srgb, var(--cat-blue) 13%, #fff);--cat-plum:#a855f7;--cat-plum-bg:color-mix(in srgb, var(--cat-plum) 13%, #fff);--ongoing:#1a1a1a;--ongoing-soft:#e8e8e8;--ongoing-text:#1a1a1a;--cat-home-1:#1d4ed8;--cat-home-1-bg:color-mix(in srgb, var(--cat-home-1) 13%, #fff);--cat-home-2:#3b82f6;--cat-home-2-bg:color-mix(in srgb, var(--cat-home-2) 13%, #fff);--cat-home-3:#60a5fa;--cat-home-3-bg:color-mix(in srgb, var(--cat-home-3) 14%, #fff);--cat-home-4:#93c5fd;--cat-home-4-bg:color-mix(in srgb, var(--cat-home-4) 16%, #fff);--cat-home-5:#bfdbfe;--cat-home-5-bg:color-mix(in srgb, var(--cat-home-5) 20%, #fff);--cat-vehicle-1:#b91c1c;--cat-vehicle-1-bg:color-mix(in srgb, var(--cat-vehicle-1) 13%, #fff);--cat-vehicle-2:#ef4444;--cat-vehicle-2-bg:color-mix(in srgb, var(--cat-vehicle-2) 13%, #fff);--cat-vehicle-3:#f87171;--cat-vehicle-3-bg:color-mix(in srgb, var(--cat-vehicle-3) 14%, #fff);--cat-vehicle-4:#fca5a5;--cat-vehicle-4-bg:color-mix(in srgb, var(--cat-vehicle-4) 16%, #fff);--cat-vehicle-5:#fecaca;--cat-vehicle-5-bg:color-mix(in srgb, var(--cat-vehicle-5) 20%, #fff);--cat-tech-1:#7e22ce;--cat-tech-1-bg:color-mix(in srgb, var(--cat-tech-1) 13%, #fff);--cat-tech-2:#a855f7;--cat-tech-2-bg:color-mix(in srgb, var(--cat-tech-2) 13%, #fff);--cat-tech-3:#c084fc;--cat-tech-3-bg:color-mix(in srgb, var(--cat-tech-3) 14%, #fff);--cat-tech-4:#d8b4fe;--cat-tech-4-bg:color-mix(in srgb, var(--cat-tech-4) 16%, #fff);--cat-tech-5:#e9d5ff;--cat-tech-5-bg:color-mix(in srgb, var(--cat-tech-5) 20%, #fff);--cat-pet-1:#047857;--cat-pet-1-bg:color-mix(in srgb, var(--cat-pet-1) 13%, #fff);--cat-pet-2:#10b981;--cat-pet-2-bg:color-mix(in srgb, var(--cat-pet-2) 13%, #fff);--cat-pet-3:#34d399;--cat-pet-3-bg:color-mix(in srgb, var(--cat-pet-3) 14%, #fff);--cat-pet-4:#6ee7b7;--cat-pet-4-bg:color-mix(in srgb, var(--cat-pet-4) 16%, #fff);--cat-pet-5:#a7f3d0;--cat-pet-5-bg:color-mix(in srgb, var(--cat-pet-5) 20%, #fff);--cat-travel-1:#b45309;--cat-travel-1-bg:color-mix(in srgb, var(--cat-travel-1) 13%, #fff);--cat-travel-2:#f5a623;--cat-travel-2-bg:color-mix(in srgb, var(--cat-travel-2) 13%, #fff);--cat-travel-3:#f8bb55;--cat-travel-3-bg:color-mix(in srgb, var(--cat-travel-3) 14%, #fff);--cat-travel-4:#fbd28a;--cat-travel-4-bg:color-mix(in srgb, var(--cat-travel-4) 16%, #fff);--cat-travel-5:#fde6bd;--cat-travel-5-bg:color-mix(in srgb, var(--cat-travel-5) 20%, #fff)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}button,a,label,[role=button],summary{-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth}body{background:var(--off-white);color:var(--text-primary);font-family:Montserrat,sans-serif;font-size:15px;line-height:1.6}.app{--green:var(--module-header-cta-bg,#23a23a);--green-dark:var(--module-header-control-text,#1b7d2d);--green-light:color-mix(in srgb, var(--module-header-cta-bg,#23a23a) 14%, #fff);--blue:var(--module-accent,#2c7cbe);--blue-dark:var(--module-header-control-text,#1c5a8a);--blue-light:color-mix(in srgb, var(--module-accent,#2c7cbe) 12%, #fff);--copper:var(--module-header-cta-border,#b87333);flex-direction:column;min-height:100vh;display:flex}.main-inner{max-width:1100px}.footer-note{color:var(--text-muted);text-align:center;margin-top:2rem;font-size:12px;font-style:italic}.install-note{color:#5a6472;background:#f3f7fc;border:1px solid #dfe8f3;border-radius:9px;align-items:flex-start;gap:8px;margin:0 0 12px;padding:9px 12px;font-size:12.5px;line-height:1.45;display:flex}.install-note-icon{color:var(--bf-sky,#0284c7);flex:none;font-size:14px;line-height:1.3}.install-note strong{color:#3a4452;font-weight:700}:root[data-theme=dark] .app .install-note{color:#aeb6c2;background:#1b2430;border-color:#2a3441}:root[data-theme=dark] .app .install-note strong{color:#d6dbe3}.modal-backdrop.household-backdrop{align-items:flex-start;padding:2rem 1rem;overflow-y:auto}.modal.household-modal{background:#fff;width:100%;max-width:1120px;max-height:none;padding:0;overflow:visible}.hh-dash{color:var(--bf-ink);padding:26px 26px 32px}.modal-backdrop.guide-backdrop{align-items:flex-start;padding:2rem 1rem;overflow-y:auto}.modal.guide-modal{--green:var(--bf-sky);--green-dark:var(--bf-sky-deep);--green-light:var(--bf-sky-tint);--copper:#c2674a;--summary-accent-light:#fbe9e3;--summary-accent-text:#8a3a22;background:#fff;width:100%;max-width:860px;max-height:none;padding:2.5rem 2.5rem 2rem;overflow:visible}.guide-header{margin-bottom:1.25rem;padding-right:2rem}.guide-eyebrow{letter-spacing:.7px;text-transform:uppercase;color:var(--bf-sky-deep,#075985);font-family:Montserrat,sans-serif;font-size:11px;font-weight:700;display:inline-block}.guide-title{letter-spacing:-.5px;color:var(--bf-ink);margin:2px 0 6px;font-family:IBM Plex Sans,sans-serif;font-size:28px;font-weight:800;line-height:1.08}.guide-lead{color:var(--bf-ink-3);margin:0;font-size:14px;line-height:1.5}.guide-section{color:var(--text-primary)}.guide-h3{color:var(--bf-ink);letter-spacing:-.2px;margin:1.7rem 0 .6rem;font-family:IBM Plex Sans,sans-serif;font-size:17px;font-weight:700}.guide-section>.guide-h3:first-child,.guide-section>.guide-p:first-child{margin-top:0}.guide-p{color:var(--text-secondary);margin:0 0 .8rem;font-size:14.5px;line-height:1.65}.guide-p em,.guide-defs dd em,.guide-list em{color:var(--bf-ink);font-style:normal;font-weight:600}.guide-defs{grid-template-columns:minmax(130px,max-content) 1fr;align-items:start;gap:13px 22px;margin:.4rem 0 1.2rem;display:grid}.guide-defs dt{color:var(--bf-ink);padding-top:1px;font-size:14.5px;font-weight:700}.guide-defs dt .due-cue,.guide-defs dt .aged-hint,.guide-defs dt .reset-timeline-btn{margin-top:0}.guide-defs dt .reset-timeline-btn{cursor:default}.guide-defs dd{color:var(--text-secondary);margin:0;font-size:14.5px;line-height:1.6}.guide-figure{margin:.5rem 0 1.2rem}.guide-figure .hh-sav-fund.guide-fund{margin:0}.guide-figure .due-now-banner{margin-bottom:0}.guide-figure-cap{color:var(--bf-ink-3);margin:8px 0 0;font-size:12px;line-height:1.4}.guide-list{margin:.5rem 0;padding-left:1.15rem}.guide-list li{color:var(--text-secondary);margin-bottom:9px;font-size:14.5px;line-height:1.6}.guide-list li:last-child{margin-bottom:0}@media (width<=680px){.modal-backdrop.guide-backdrop{z-index:80;padding-bottom:96px}.modal.guide-modal{padding:1.5rem 1.25rem}.guide-title{font-size:22px}.guide-defs{grid-template-columns:1fr;gap:3px 0}.guide-defs dt{padding-top:12px}.guide-defs dt:first-child{padding-top:0}.summary-tabs.guide-tabs{flex-wrap:wrap}.summary-tabs.guide-tabs .summary-tab{flex:calc(50% - 3px)}}.hh-topbar{align-items:center;gap:12px;margin-bottom:20px;padding-right:44px;display:flex}.hh-brand-mark{flex:none;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.hh-title{letter-spacing:-.5px;color:var(--bf-ink);margin:0;font-family:IBM Plex Sans,sans-serif;font-size:24px;font-weight:800;line-height:1.1}.hh-sub{color:var(--bf-ink-3);margin-top:1px;font-size:12.5px}.hh-layout{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:18px;display:grid}.hh-section{border:1px solid var(--bf-line);background:#fff;border-radius:16px;margin-bottom:16px;padding:16px 18px}.hh-cpy{margin-bottom:16px}.hh-cpy-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:0 0 6px;display:flex}.hh-cpy-zoom{background:var(--off-white);border:1px solid var(--bf-line);border-radius:99px;padding:2px;display:inline-flex}.hh-cpy-zbtn{cursor:pointer;font:inherit;color:var(--bf-ink-3);background:0 0;border:0;border-radius:99px;padding:5px 14px;font-size:12px;font-weight:700}.hh-cpy-zbtn.on{background:var(--bf-sky);color:#fff;box-shadow:0 1px 2px #0000001f}.hh-cpy-hint{color:var(--bf-ink-3);font-size:11.5px}.hh-cpy-ynav{align-items:center;gap:6px;display:inline-flex}.hh-cpy-step{border:1px solid var(--bf-line);cursor:pointer;width:26px;height:26px;color:var(--bf-ink);background:#fff;border-radius:50%;justify-content:center;align-items:center;font-size:15px;line-height:1;display:inline-flex}.hh-cpy-step:hover:not(:disabled){border-color:var(--bf-sky);color:var(--bf-sky-deep)}.hh-cpy-step:disabled{opacity:.4;cursor:default}.hh-cpy-yr{color:var(--bf-ink);text-align:center;font-variant-numeric:tabular-nums;min-width:44px;font-size:14px;font-weight:800}.hh-cpy-foot{border-top:1px solid var(--bf-line);margin-top:12px;padding-top:12px}.hh-cpy-mhead{color:var(--bf-ink);flex-wrap:wrap;align-items:baseline;gap:9px;margin-bottom:9px;font-size:13px;font-weight:800;display:flex}.hh-cpy-mhead-cap{color:var(--bf-ink-3);font-size:11px;font-weight:600}.hh-cpy-empty{color:var(--bf-ink-3);margin:4px 0;font-size:12.5px}.hh-cpy-chips{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:9px;display:grid}.hh-cpy-chip{text-align:left;cursor:pointer;border:1px solid var(--bf-line);border-left:4px solid var(--seg,var(--bf-line));background:#fff;border-radius:11px;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;gap:1px 10px;padding:9px 12px;transition:border-color .15s,transform .15s,background .15s;display:grid}.hh-cpy-chip:hover{border-color:var(--bf-sky);transform:translateY(-1px)}.hh-cpy-chip.on{border-color:var(--bf-sky);background:var(--bf-sky-tint)}.hh-cpy-chip-name{color:var(--bf-ink);text-overflow:ellipsis;white-space:nowrap;grid-area:1/1;font-size:13px;font-weight:700;overflow:hidden}.hh-cpy-chip-amt{color:var(--bf-ink);white-space:nowrap;font-variant-numeric:tabular-nums;grid-area:1/2/3;align-self:center;font-size:15px;font-weight:800}.hh-cpy-chip-bud{color:var(--bf-ink-3);text-overflow:ellipsis;white-space:nowrap;grid-area:2/1;font-size:11px;font-weight:600;overflow:hidden}.hh-cpy-detail{border:1px solid var(--cat-accent,var(--bf-line));background:var(--cat-tint,var(--bf-sky-tint));border-radius:13px;margin-bottom:12px;padding:13px 15px;position:relative}.hh-cpy-detail-x{cursor:pointer;width:24px;height:24px;color:var(--bf-ink);background:#0000000f;border:0;border-radius:50%;justify-content:center;align-items:center;font-size:18px;line-height:1;display:inline-flex;position:absolute;top:8px;right:9px}.hh-cpy-detail-x:hover{background:#0000001f}.hh-cpy-detail-name{color:var(--bf-ink);padding-right:28px;font-size:15px;font-weight:800}.hh-cpy-detail-meta{color:var(--bf-ink);flex-wrap:wrap;align-items:center;gap:4px 14px;margin:5px 0 11px;font-size:12.5px;display:flex}.hh-cpy-detail-bud{color:var(--cat-accent,var(--bf-ink));align-items:center;gap:6px;font-weight:700;display:inline-flex}.hh-cpy-detail-cost{font-variant-numeric:tabular-nums;font-weight:800}.hh-cpy-detail-open{cursor:pointer;font:inherit;color:#fff;background:var(--cat-accent,var(--bf-sky));border:0;border-radius:99px;padding:7px 15px;font-size:12.5px;font-weight:700}.hh-cpy-detail-open:hover{filter:brightness(.94)}.hh-sec-head{flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:13px;display:flex}.hh-sec-title{color:var(--bf-ink);font-size:14px;font-weight:800}.hh-sec-cap{color:var(--bf-ink-3);font-size:11.5px}.hh-coming{background:var(--bf-sky-tint);border-color:#cfe8fb;margin-bottom:0}.hh-railsec{margin-top:16px}.hh-railsec .hh-sec-head{margin-bottom:10px}.hh-side-title{letter-spacing:.6px;text-transform:uppercase;color:var(--bf-ink-3);margin:4px 2px 10px;font-size:11px;font-weight:700}.hh-banner{background:var(--bf-amber-tint);color:var(--bf-amber-deep);border:1px solid #fbe2ab;border-radius:11px;margin-bottom:10px;padding:9px 12px;font-size:12.5px;font-weight:600}.hh-banner.all-in{background:var(--bf-sky-tint);color:var(--bf-sky-deep);border-color:#bee3f8}.hh-budget-list{flex-direction:column;gap:8px;margin:0 0 10px;padding:0;list-style:none;display:flex}.hh-budget{border:1px solid var(--bf-line);background:#fff;border-radius:13px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;padding:9px 11px;display:grid;position:relative}.hh-budget.is-active{border-color:color-mix(in srgb, var(--cat-accent) 50%, transparent);background:color-mix(in srgb, var(--cat-tint) 70%, #fff)}.hh-budget.is-out{background:#f7f9fc}.hh-budget.is-out .hh-budget-name,.hh-budget.is-out .hh-budget-amt{color:var(--bf-ink-3)}.hh-budget-icon{background:var(--cat-tint);width:34px;height:34px;color:var(--cat-accent);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.hh-budget-main{min-width:0;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;gap:1px;padding:0;display:flex}.hh-budget-main:disabled{cursor:default}.hh-budget-name{color:var(--bf-ink);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;font-size:14px;font-weight:700;display:flex;overflow:hidden}.hh-budget-current{text-transform:uppercase;letter-spacing:.4px;color:var(--cat-accent);background:var(--cat-tint);border-radius:4px;padding:1px 5px;font-size:9.5px;font-weight:700}.hh-budget-meta{color:var(--bf-ink-3);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.hh-budget-amt{white-space:nowrap;font-size:13px;font-weight:700}.hh-switch{cursor:pointer;background:#cdd5e0;border:none;border-radius:999px;flex:none;width:38px;height:22px;transition:background .15s;position:relative}.hh-switch.on{background:var(--bf-sky)}.hh-switch:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:left .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000040}.hh-switch.on:after{left:18px}.hh-budget-actions{opacity:0;grid-column:1/-1;justify-content:flex-end;gap:4px;max-height:0;transition:max-height .15s,opacity .15s;display:flex;overflow:hidden}.hh-budget:hover .hh-budget-actions,.hh-budget:focus-within .hh-budget-actions{opacity:1;max-height:30px}.hh-budget-action{font:inherit;cursor:pointer;color:var(--bf-ink-3);background:0 0;border:none;border-radius:6px;padding:3px 7px;font-size:11.5px;font-weight:600}.hh-budget-action:hover{color:var(--bf-ink);background:#0000000d}.hh-budget-action.danger:hover{color:#b00000}.hh-rename-input{min-width:0;font:inherit;border:1px solid var(--bf-sky);border-radius:6px;grid-column:2/4;padding:6px 8px;font-size:14px;font-weight:700}.hh-create{gap:8px;display:flex}.hh-create-input{min-width:0;font:inherit;border:1px solid var(--bf-line);border-radius:10px;flex:1;padding:8px 10px;font-size:13.5px}.btn-pill.hh-add{background:var(--bf-sky);border:1px solid var(--bf-sky);color:#fff}.btn-pill.hh-add:hover{background:var(--bf-sky-deep);border-color:var(--bf-sky-deep)}.hh-hero{background:linear-gradient(135deg, var(--bf-sky) 0%, var(--bf-sky-deep) 100%);color:#fff;border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:16px;padding:20px 22px;display:flex}.hh-hero-label{color:#d6ecfb;margin-bottom:3px;font-size:13px}.hh-hero-big{letter-spacing:-1.2px;font-size:40px;font-weight:800;line-height:1}.hh-hero-big .u{color:#bfe0f6;margin-left:2px;font-size:16px;font-weight:600}.hh-hero-chips{flex-wrap:wrap;align-items:center;gap:8px;margin-top:11px;display:flex}.hh-hero-breakdown{color:#d6ecfb;font-size:12px}.hh-hero-chip{color:#fff;background:#ffffff29;border-radius:999px;align-items:center;gap:5px;padding:4px 11px;font-size:12px;font-weight:600;display:inline-flex}.hh-hero-stats{gap:22px;display:flex}.hh-hero-stat .v{font-size:19px;font-weight:800}.hh-hero-stat .l{color:#d6ecfb;font-size:11px}.hh-hero-wide{margin-bottom:18px}.hh-pinned{border:1px solid var(--bf-line);border-top:3px solid var(--bf-sky);background:#fff;border-radius:16px;margin-bottom:16px;padding:15px 18px}.hh-pinned-head{margin-bottom:8px}.hh-pinned-titlerow{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:9px;display:flex}.hh-pinned-title{color:var(--bf-ink);font-size:15px;font-weight:800}.hh-pinned-pin{color:var(--bf-sky-deep);background:var(--bf-sky-tint);border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:10.5px;font-weight:600;display:inline-flex}.hh-pinned-cap{color:var(--bf-ink-3);margin-left:auto;font-size:11.5px}.hh-pinned-figs{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:18px;display:flex}.hh-pinned-big{letter-spacing:-.8px;color:var(--bf-ink);font-size:32px;font-weight:800;line-height:1.05}.hh-pinned-big .u{color:var(--bf-ink-3);margin-left:2px;font-size:14px;font-weight:600}.hh-pinned-biglabel{color:var(--bf-ink-3);font-size:12px;font-weight:500}.hh-pinned-figrow{flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:2px;display:flex}.hh-pinned-holds{color:var(--bf-sky-deep);background:var(--bf-sky-tint);border-radius:999px;align-items:center;gap:4px;margin-left:auto;padding:2px 9px;font-size:11px;font-weight:600;display:inline-flex}.hh-pinned-set{color:var(--bf-amber-deep);background:var(--bf-amber-tint);border-radius:999px;align-items:center;gap:4px;margin-left:auto;padding:2px 9px;font-size:11px;font-weight:700;display:inline-flex}.hh-panel-sep{align-items:center;gap:10px;margin:16px 0 13px;display:flex}.hh-panel-sep:before,.hh-panel-sep:after{content:"";background:var(--bf-line);flex:1;height:1px}.hh-panel-sep span{letter-spacing:.06em;text-transform:uppercase;color:var(--bf-ink-3);font-size:11px;font-weight:700}.hh-chart{grid-template-columns:auto auto minmax(0,1fr);grid-template-rows:var(--hh-chart-h,96px) auto auto;grid-template-areas:"ytitle yaxis plot"". .xaxis"". .xtitle";column-gap:6px;margin-top:10px;display:grid}.hh-chart-ytitle{writing-mode:vertical-rl;letter-spacing:.03em;color:var(--bf-ink-3);grid-area:ytitle;place-self:center;font-size:9.5px;font-weight:600;transform:rotate(180deg)}.hh-chart-yaxis{text-align:right;color:var(--bf-ink-3);flex-direction:column;grid-area:yaxis;justify-content:space-between;padding:1px 0;font-size:9.5px;display:flex}.hh-chart-plot{height:var(--hh-chart-h,96px);border-left:1px solid var(--bf-line);border-bottom:1px solid var(--bf-line);grid-area:plot;position:relative}.hh-chart-xaxis{color:var(--bf-ink-3);grid-area:xaxis;justify-content:space-between;margin-top:3px;font-size:9.5px;display:flex}.hh-chart-xtitle{text-align:center;letter-spacing:.03em;color:var(--bf-ink-3);grid-area:xtitle;margin-top:2px;font-size:9.5px;font-weight:600}.hh-spark{width:100%;height:100%;display:block}.hh-spark-area{fill:var(--bf-sky-tint);opacity:.55}.hh-spark-line{fill:none;stroke:var(--bf-sky-deep);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0;animation:1.25s both hh-draw}@keyframes hh-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.hh-spark-dot{box-sizing:border-box;background:var(--bf-amber);border:1.5px solid #fff;border-radius:50%;width:7px;height:7px;animation:.3s both hh-dot-pop;position:absolute;transform:translate(-50%,-50%)}@keyframes hh-dot-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(0)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.hh-sav-repl{color:var(--bf-sky-deep);white-space:nowrap;flex:none;font-size:13px;font-weight:700}.hh-tabs{background:var(--bf-sky-tint-2);border-radius:12px;flex-wrap:wrap;gap:4px;margin-bottom:14px;padding:4px;display:flex}.hh-tab{font:inherit;color:var(--bf-ink-2);cursor:pointer;background:0 0;border:none;border-radius:9px;padding:8px 14px;font-size:13px;font-weight:600}.hh-tab:hover{color:var(--bf-sky-deep)}.hh-tab.is-on{color:var(--bf-ink);background:#fff;box-shadow:0 1px 2px #00000012}.hh-mtabs{display:none}@keyframes hh-fade{0%{opacity:0;transform:translateY(6px)}}.hh-fadein{animation:.3s both hh-fade}.hh-rise{animation:.45s both hh-fade}@media (prefers-reduced-motion:reduce){.hh-spark-line{stroke-dashoffset:0;animation:none}.hh-spark-dot,.hh-fadein,.hh-rise{animation:none}}.hh-empty{color:var(--bf-ink-3);text-align:center;padding:1rem;font-size:14px}.hh-card-empty{color:var(--bf-ink-3);margin:0;font-size:13px}.hh-strip{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.hh-day{text-align:center;border:1px solid var(--bf-line);background:var(--bf-sky-tint-2);border-radius:12px;padding:12px 6px}.hh-day.wet{background:var(--bf-amber-tint);border-color:#fbe2ab}.hh-day-mon{color:var(--bf-ink-3);font-size:11.5px;font-weight:600}.hh-day-icon{color:var(--bf-sky);margin:6px 0 5px}.hh-day.wet .hh-day-icon{color:var(--bf-amber-deep)}.hh-day-amt{font-size:12.5px;font-weight:800}.hh-day-amt.calm{color:var(--bf-ink-3);font-weight:600}.hh-dot{background:var(--cat-accent);border-radius:50%;flex:none;width:9px;height:9px}.hh-coming-list{flex-direction:column;display:flex}.hh-coming-list>li{list-style:none}.hh-coming-list>li+li .hh-coming-row{border-top:1px solid #cfe8fb}.hh-coming-row{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;width:100%;padding:11px 12px;transition:background .12s;display:flex}.hh-coming-row:hover{background:#ffffffbf}.hh-coming-when{width:74px;color:var(--bf-ink-3);font-variant-numeric:tabular-nums;flex:none;font-size:11px;font-weight:700}.hh-coming-main{flex-direction:column;flex:auto;gap:1px;min-width:0;display:flex}.hh-coming-name{color:var(--bf-ink);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600;overflow:hidden}.hh-coming-bud{color:var(--bf-ink-3);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;font-size:11.5px;font-weight:600;display:inline-flex;overflow:hidden}.hh-coming-amt{letter-spacing:-.3px;color:var(--bf-ink);white-space:nowrap;font-variant-numeric:tabular-nums;flex:none;font-size:15px;font-weight:800}.hh-coming-recur{color:var(--bf-amber-deep);font-weight:700}.hh-coming-row.overdue{background:#fef2f2;box-shadow:inset 3px 0 #dc2626}.hh-coming-row.overdue:hover{background:#fde8e8}.hh-coming-row.overdue .hh-coming-when,.hh-coming-row.overdue .hh-coming-amt{color:#dc2626}.hh-coming-note{color:#9a2a1e;background:#fef2f2;border:1px solid #fbcaca;border-radius:11px;align-items:flex-start;gap:9px;margin:0 0 13px;padding:10px 13px;font-size:12px;line-height:1.45;display:flex}.hh-coming-note strong{color:#b42318}.hh-coming-note-icon{color:#fff;background:#dc2626;border-radius:50%;flex:none;justify-content:center;align-items:center;width:17px;height:17px;margin-top:1px;font-size:12px;font-weight:800;display:inline-flex}.hh-windows{flex-direction:column;gap:8px;display:flex}.hh-window{background:var(--bf-sky-tint-2);border:1px solid var(--bf-line);border-radius:11px;padding:9px 12px}.hh-window.current{background:var(--bf-sky-tint);border-color:var(--bf-sky)}.hh-window-range{color:var(--bf-ink-3);margin-bottom:3px;font-size:11px}.hh-window.current .hh-window-range{color:var(--bf-sky-deep)}.hh-window-amt{letter-spacing:-.3px;align-items:baseline;gap:7px;font-size:15px;font-weight:800;display:flex}.hh-window-now{text-transform:uppercase;letter-spacing:.05em;color:#fff;background:var(--bf-sky);border-radius:999px;padding:1px 7px;font-size:9.5px;font-weight:700}.hh-window-warn{color:var(--bf-amber-deep);background:var(--bf-amber-tint);cursor:pointer;border:1px solid #fbe2ab;border-radius:6px;justify-content:center;align-items:center;padding:1px 4px;line-height:0;display:inline-flex}.hh-window-warn:hover{background:var(--bf-amber);color:#fff;border-color:var(--bf-amber)}.hh-sav-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.hh-sav-row{border:1px solid var(--bf-line);border-left:3px solid var(--cat-accent);background:#fff;border-radius:12px;padding:12px 14px}.hh-sav-row.is-out{opacity:.6}.hh-sav-top{align-items:center;gap:9px;display:flex}.hh-sav-name{min-width:0;color:var(--bf-ink);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13.5px;font-weight:700;overflow:hidden}.hh-sav-tag{color:var(--bf-ink-3);font-size:12px}.hh-sav-input-wrap{border:1px solid var(--bf-line);background:#fff;border-radius:9px;flex:none;align-items:center;gap:2px;padding:4px 9px;display:inline-flex}.hh-sav-input-wrap:focus-within{border-color:var(--bf-sky);box-shadow:0 0 0 3px var(--bf-sky-tint)}.hh-sav-dollar{color:var(--bf-ink-3);font-size:13px}.hh-sav-input-wrap .hh-sav-input{width:84px;font:inherit;color:var(--bf-ink);text-align:right;background:0 0;border:none;padding:0;font-size:14px;font-weight:700}.hh-sav-input:focus{outline:none}.hh-sav-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.hh-sav-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.hh-sav-input{appearance:textfield}.hh-sav-fund{margin:7px 0 0 18px}.hh-sav-bar{background:#eef2f7;border-radius:999px;height:5px;display:flex;overflow:hidden}.hh-sav-bar-fill{background:var(--bf-sky);height:100%;transition:width .2s}.hh-sav-bar-overdue{background:#dc2626;height:100%;transition:width .2s}.hh-sav-fund-text{color:var(--bf-ink-3);margin-top:4px;font-size:11.5px;display:block}.hh-sav-overdue-text{color:#dc2626;font-weight:600}.hh-sav-fund-total{margin-top:8px;margin-left:0}.hh-sav-fund-total .hh-sav-bar-fill{background:var(--bf-sky-deep)}.hh-sav-total{background:var(--bf-sky-tint-2);border:1px solid var(--bf-line);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;padding:12px 14px;display:flex}.hh-sav-total-label{color:var(--bf-ink-2);font-size:13px;font-weight:600}.hh-sav-total-amt{letter-spacing:-.4px;color:var(--bf-ink);font-size:19px;font-weight:800}.hh-sav-undo{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:10px;display:flex}.hh-sav-undo-text{color:var(--bf-ink-3);font-size:12px}.hh-sav-undo-btn{font:inherit;cursor:pointer;border:1px solid var(--bf-line);color:var(--bf-ink-2);background:#fff;border-radius:8px;padding:5px 11px;font-size:12.5px;font-weight:600}.hh-sav-undo-btn:hover{border-color:var(--bf-sky);color:var(--bf-sky-deep)}.hh-sav-plan{margin:8px 0 2px 18px}.hh-sav-plan-toggle{font:inherit;cursor:pointer;color:var(--bf-ink-2);background:0 0;border:none;align-items:center;gap:6px;padding:4px 0;font-size:12px;font-weight:600;display:inline-flex}.hh-sav-plan-toggle:hover{color:var(--bf-sky-deep)}.hh-sav-chev{color:var(--bf-ink-3);transition:transform .15s;display:inline-block}.hh-sav-chev.is-open{transform:rotate(90deg)}.mplan{margin-top:4px}.mplan-table{border-collapse:collapse;width:100%;font-size:12px}.mplan-table th{letter-spacing:.03em;text-transform:uppercase;color:var(--bf-ink-3);text-align:left;padding:4px 8px 4px 0;font-size:10.5px;font-weight:600}.mplan-table th.num,.mplan-table td.num{text-align:right}.mplan-table td{border-top:1px solid var(--bf-line);color:var(--bf-ink-2);padding:5px 8px 5px 0}.mplan-add{color:var(--green-dark);font-weight:700}.mplan-more{font:inherit;cursor:pointer;border:1px solid var(--bf-line);color:var(--bf-ink-2);background:#fff;border-radius:8px;margin-top:7px;padding:4px 10px;font-size:12px;font-weight:600}.mplan-more:hover{border-color:var(--bf-sky);color:var(--bf-sky-deep)}.hh-upk-intro{color:var(--bf-ink-3);margin:0 0 13px;font-size:12px;line-height:1.5}.hh-upk-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.hh-upk-row{border:1px solid var(--bf-line);border-left:3px solid var(--cat-accent,var(--bf-amber));background:#fff;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.hh-upk-row.is-out{opacity:.6}.hh-upk-info{flex-direction:column;gap:2px;min-width:0;display:flex}.hh-upk-name{color:var(--bf-ink);font-size:13.5px;font-weight:600}.hh-upk-budget{color:var(--bf-amber-deep);font-size:11.5px;font-weight:600}.hh-upk-controls{align-items:center;gap:12px;display:flex}.hh-upk-gauge{flex-basis:100%;align-items:center;gap:10px;margin-top:2px;display:flex}.hh-upk-bar{background:var(--bf-amber-tint);border-radius:99px;flex:auto;height:7px;overflow:hidden}.hh-upk-bar-fill{background:var(--bf-amber);border-radius:99px;height:100%;transition:width .25s;display:block}.hh-upk-buffered{color:var(--bf-ink-2);white-space:nowrap;flex:none;font-size:11.5px;font-weight:600}.hh-upk-target{color:var(--bf-ink-3);font-weight:500}.hh-sav-meta{color:var(--bf-ink-3);flex-wrap:wrap;gap:4px 14px;margin-top:8px;font-size:11px;display:flex}.hh-sav-meta-item{align-items:baseline;gap:4px;display:inline-flex}.hh-sav-meta-item strong{color:var(--bf-ink-2);font-weight:700}.hh-upk-meta{flex-basis:100%;margin-top:6px}.hh-sav-readonly{color:var(--bf-ink);white-space:nowrap;font-size:14px;font-weight:700}.hh-funds{flex-direction:column;gap:18px;display:flex}.hh-funds-recon{background:var(--bf-sky-tint);border:1px solid var(--bf-line);border-radius:12px;padding:13px 15px}.hh-funds-recon-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.hh-funds-saved{flex-direction:column;display:flex}.hh-funds-saved-amt{color:var(--bf-ink);font-size:26px;font-weight:800;line-height:1.1}.hh-funds-saved-lab{color:var(--bf-ink-3);margin-top:2px;font-size:12px}.hh-funds-gap{text-align:right;flex-direction:column;align-items:flex-end;display:flex}.hh-funds-gap-amt{color:var(--bf-ink);font-size:18px;font-weight:800;line-height:1.1}.hh-funds-gap-lab{color:var(--bf-ink-3);text-transform:uppercase;letter-spacing:.5px;margin-top:2px;font-size:10.5px;font-weight:700}.hh-funds-gap.over .hh-funds-gap-amt{color:#dc2626}.hh-funds-bar{height:12px;margin:13px 0 9px;position:relative}.hh-funds-track{background:color-mix(in srgb, var(--bf-ink) 9%, transparent);border-radius:99px;display:flex;position:absolute;inset:0;overflow:hidden}.hh-funds-seg{height:100%;transition:width .25s}.hh-funds-seg.repl{background:var(--bf-sky)}.hh-funds-seg.recur{background:var(--bf-amber)}.hh-funds-mark{background:var(--bf-ink);width:2px;box-shadow:0 0 0 2px color-mix(in srgb, var(--bf-ink) 18%, transparent);border-radius:2px;position:absolute;top:-3px;bottom:-3px}.hh-funds-legend{color:var(--bf-ink-2);flex-wrap:wrap;gap:4px 14px;font-size:11.5px;display:flex}.hh-funds-key{align-items:center;gap:5px;display:inline-flex}.hh-funds-key .sw{border-radius:3px;flex:none;width:10px;height:10px}.hh-funds-key .sw.repl{background:var(--bf-sky)}.hh-funds-key .sw.recur{background:var(--bf-amber)}.hh-funds-key .sw.mark{background:var(--bf-ink);border-radius:2px;width:3px;height:12px}.hh-funds-warn{color:#b91c1c;margin:10px 0 0;font-size:12.5px;line-height:1.45}.hh-funds-prompt{color:var(--bf-ink-2);margin:12px 0 0;font-size:12.5px;line-height:1.45}.hh-funds-sec{border:1px solid var(--bf-line);background:color-mix(in srgb, var(--bf-ink) 3%, transparent);border-radius:12px;flex-direction:column;padding:14px 15px;display:flex}.hh-funds-list{flex-direction:column;gap:8px;margin:0 0 10px;padding:0;list-style:none;display:flex}.hh-funds-row{align-items:center;gap:10px;display:flex}.hh-funds-name{min-width:0;font:inherit;color:var(--bf-ink);border:none;border-bottom:1.5px solid var(--bf-line);background:0 0;flex:auto;padding:4px 2px;font-size:14px;font-weight:600}.hh-funds-name:focus{border-bottom-color:var(--bf-sky);outline:none}.hh-funds-name::placeholder{color:var(--bf-ink-3);font-weight:500}.hh-funds-del{border:1px solid var(--bf-line);width:26px;height:26px;color:var(--bf-ink-3);cursor:pointer;background:0 0;border-radius:7px;flex:none;font-size:17px;line-height:1}.hh-funds-del:hover{color:#dc2626;border-color:#dc2626}.hh-funds-add{align-self:flex-start}.hh-funds-assign{flex-direction:column;gap:8px;margin:0 0 10px;padding:0;list-style:none;display:flex}.hh-funds-arow{border:1px solid var(--bf-line);border-left:3px solid var(--cat-accent,var(--bf-sky));border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:9px 11px;display:flex}.hh-funds-arow.is-out{opacity:.6}.hh-funds-aname{color:var(--bf-ink);align-items:center;gap:7px;font-size:13.5px;font-weight:700;display:inline-flex}.hh-funds-afields{flex-wrap:wrap;align-items:flex-end;gap:12px;display:inline-flex}.hh-funds-afield{flex-direction:column;gap:3px;display:inline-flex}.hh-funds-aflab{letter-spacing:.4px;text-transform:uppercase;color:var(--bf-ink-3);font-size:10.5px;font-weight:700}.hh-funds-assign-total{border-top:1px solid var(--bf-line);color:var(--bf-ink-2);justify-content:space-between;align-items:baseline;gap:10px;padding-top:9px;font-size:13px;display:flex}.hh-funds-assign-total strong{color:var(--bf-ink);font-size:16px}.hh-funds-foot{color:var(--bf-ink-3);margin:2px 0 0;font-size:11.5px;line-height:1.5}.hh-funds-seg.em,.hh-funds-key .sw.em{background:var(--bf-em,#0d9488)}.hh-em{--bf-em:#0d9488;border-left:3px solid var(--bf-em)}.hh-acct{--bf-money:#16a34a;border-left:3px solid var(--bf-money)}.hh-em-fields{flex-wrap:wrap;gap:14px;margin:11px 0 2px;display:flex}.hh-em-field{flex-direction:column;gap:4px;display:flex}.hh-em-flab{letter-spacing:.4px;text-transform:uppercase;color:var(--bf-ink-3);align-items:center;gap:6px;font-size:10.5px;font-weight:700;display:inline-flex}.hh-em-opt{text-transform:none;letter-spacing:0;opacity:.85;font-size:10px;font-weight:600}.hh-em .hh-sav-input-wrap:focus-within{border-color:var(--bf-em);box-shadow:0 0 0 3px color-mix(in srgb, var(--bf-em) 26%, transparent)}.hh-em-anchor-wrap{margin-top:11px}.hh-em-anchor-toggle{font:inherit;color:var(--bf-em);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:2px 0;font-size:12px;font-weight:700;display:inline-flex}.hh-em-anchor-toggle:hover{text-decoration:underline}.hh-em-anchor{color:var(--bf-ink-2);background:color-mix(in srgb, var(--bf-em) 13%, transparent);border:1px solid color-mix(in srgb, var(--bf-em) 28%, transparent);border-radius:10px;margin:9px 0 0;padding:9px 11px;font-size:12.5px;line-height:1.5}.hh-em-anchor strong{color:var(--bf-ink)}.hh-em-useanchor{font:inherit;color:var(--bf-em);cursor:pointer;background:0 0;border:none;margin-left:6px;padding:0;font-size:12px;font-weight:700;text-decoration:underline;display:inline}.hh-em-gauge{margin-top:11px}.hh-em-bar{background:color-mix(in srgb, var(--bf-ink) 9%, transparent);border-radius:99px;height:9px;overflow:hidden}.hh-em-fill{background:var(--bf-em);border-radius:99px;height:100%;transition:width .25s;display:block}.hh-em-gauge-text{color:var(--bf-ink-2);margin-top:5px;font-size:12px}.hh-em-soft{color:var(--bf-ink-3)}.hh-em-eta{color:var(--bf-em);margin-top:4px;font-size:12px;font-weight:700}.hh-em-contrib{flex-direction:column;gap:5px;margin-top:13px;display:flex}.hh-em-contrib-row{align-items:center;gap:6px;display:inline-flex}.hh-em-contrib-unit{color:var(--bf-ink-3);font-size:12px;font-weight:600}.hh-em-contrib-note{color:var(--bf-ink-3);font-size:11.5px;line-height:1.45}.hh-room{flex-direction:column;gap:14px;display:flex}.hh-room-verdict{background:var(--bf-sky-tint);border:1px solid var(--bf-line);border-radius:12px;padding:13px 15px}.hh-room-verdict.gap{background:var(--bf-amber-tint);border-color:#fbe2ab}.hh-room-figrow{flex-wrap:wrap;align-items:baseline;gap:9px;display:flex}.hh-room-big{color:var(--bf-ink);font-size:26px;font-weight:800;line-height:1.1}.hh-room-big .u{color:var(--bf-ink-3);font-size:13px;font-weight:600}.hh-room-biglab{color:var(--bf-ink-3);font-size:12px}.hh-room-math{color:var(--bf-ink-3);margin-top:3px;font-size:11.5px}.hh-room-line{color:var(--bf-ink-2);margin:9px 0 0;font-size:13px;line-height:1.5}.hh-room-line strong{color:var(--bf-ink)}.hh-room-verdict.gap .hh-room-line strong{color:var(--bf-amber-deep)}.hh-room-hints{color:var(--bf-ink-2);flex-direction:column;gap:4px;margin:8px 0 0;padding-left:18px;font-size:12.5px;line-height:1.55;display:flex}.hh-room-prompt{color:var(--bf-ink-2);margin:0;font-size:12.5px;line-height:1.5}.hh-room-amt{flex:none;align-items:center;gap:5px;display:inline-flex}.hh-room-permo{color:var(--bf-ink-3);font-size:11.5px;font-weight:600}.hh-room-cap{color:var(--bf-ink-3);margin:8px 0 0;font-size:11.5px;line-height:1.45}.hh-room-chips{flex-wrap:wrap;gap:7px;margin:0 0 10px;display:flex}.hh-room-chip{font:inherit;color:var(--bf-ink-2);border:1px dashed var(--bf-line);cursor:pointer;background:0 0;border-radius:999px;padding:4px 11px;font-size:12px;font-weight:600}.hh-room-chip:hover{border-color:var(--bf-sky);color:var(--bf-sky);border-style:solid}.hh-hero-warn{font:inherit;cursor:pointer;color:#7a3d00;background:var(--bf-amber);border:none;border-radius:999px;align-items:center;gap:6px;margin-top:10px;padding:4px 12px;font-size:12px;font-weight:700;display:inline-flex}.hh-hero-warn:hover{filter:brightness(1.07)}.hh-topbar-text{flex:1;min-width:0}@media (width<=860px){.hh-layout{grid-template-columns:minmax(0,1fr)}.hh-strip{grid-template-columns:repeat(3,1fr)}}@media (width<=680px){.modal-backdrop.household-backdrop{z-index:80;padding:1rem .6rem 96px}.hh-dash{padding:18px 16px 24px}.hh-hero-big{font-size:32px}.hh-topbar{gap:9px}.hh-brand-mark{width:34px;height:34px}.hh-title{font-size:18px}.hh-sav-input-wrap .hh-sav-input{width:64px}.hh-em-fields{gap:10px}.hh-em-field{flex:calc(50% - 5px);min-width:0}.hh-em-field .hh-sav-input-wrap{flex:auto;align-self:stretch}.hh-em-field .hh-sav-input-wrap .hh-sav-input,.hh-em-contrib-row .hh-sav-input-wrap .hh-sav-input{flex:auto;width:auto;min-width:0}.hh-em-contrib-row{align-items:center;display:flex}.hh-em-contrib-row .hh-sav-input-wrap{flex:0 calc(50% - 5px)}.hh-sav-fund{margin-left:0}.hh-chart{--hh-chart-h:84px}.hh-pinned-big{font-size:26px}.hh-pinned-cap{flex-basis:100%;margin-left:0}.hh-sav-plan-hint{display:none}.hh-mtabs{background:var(--bf-sky-tint-2);border-radius:12px;gap:4px;margin:2px 0 14px;padding:4px;display:flex}.hh-mtab{min-width:0;font:inherit;color:var(--bf-ink-2);cursor:pointer;text-align:center;background:0 0;border:none;border-radius:9px;flex:1 1 0;padding:9px 8px;font-size:13px;font-weight:700}.hh-mtab.is-on{color:var(--bf-ink);background:#fff;box-shadow:0 1px 2px #00000014}.hh-layout{flex-direction:column;align-items:stretch;gap:14px;display:flex}.hh-main{order:1;min-width:0}.hh-side{order:2;min-width:0}.hh-dash.hh-mtab-savings .hh-outlook,.hh-dash.hh-mtab-savings .hh-cpy,.hh-dash.hh-mtab-savings .hh-coming,.hh-dash.hh-mtab-savings .hh-side .hh-railsec,.hh-dash.hh-mtab-plan .hh-main,.hh-dash.hh-mtab-plan .hh-side .hh-banner,.hh-dash.hh-mtab-plan .hh-side .hh-budget-list,.hh-dash.hh-mtab-plan .hh-side .hh-create{display:none}.hh-dash.hh-mtab-plan .hh-railsec{margin-top:22px}.hh-dash.hh-mtab-plan .hh-cpy,.hh-dash.hh-mtab-plan .hh-coming{margin-top:24px}.hh-tabs{flex-wrap:wrap;gap:4px}.hh-tab{text-align:center;flex:calc(50% - 2px);min-width:0;padding:9px 6px;font-size:12px;line-height:1.2}.hh-funds-arow{flex-direction:column;align-items:stretch;gap:8px}.hh-funds-afields{justify-content:flex-start;width:100%}}.modal-backdrop.ecal-backdrop{align-items:flex-start;padding:2rem 1rem;overflow-y:auto}.modal.ecal-modal{background:#fff;width:100%;max-width:760px;max-height:none;padding:2.2rem 2.4rem 2.5rem;overflow:visible}.ecal-head{margin-bottom:.9rem;padding-right:2rem}.ecal-eyebrow{letter-spacing:.7px;text-transform:uppercase;color:var(--bf-sky-deep,#075985);font-family:Montserrat,sans-serif;font-size:11px;font-weight:700;display:inline-block}.ecal-title{letter-spacing:-.5px;color:var(--bf-ink);margin:2px 0 6px;font-family:IBM Plex Sans,sans-serif;font-size:28px;font-weight:800;line-height:1.08}.ecal-sub{color:var(--bf-ink-3);margin:0;font-size:13.5px}.ecal-sub strong{color:var(--bf-ink);font-weight:700}.ecal-chips{flex-wrap:wrap;gap:6px;margin:0 0 14px;display:flex}.ecal-chip{color:var(--bf-ink-2);cursor:pointer;background:#fff;border:1px solid #d8e4f1;border-radius:999px;align-items:center;gap:6px;padding:4px 11px;font-size:12px;font-weight:600;transition:background .12s;display:inline-flex}.ecal-chip:hover{background:var(--bf-sky-tint-2)}.ecal-chip-dot{background:var(--cat-accent,var(--bf-sky));border-radius:50%;flex:none;width:7px;height:7px}.ecal-chip.is-on{background:var(--cat-accent,var(--bf-sky));border-color:var(--cat-accent,var(--bf-sky));color:#fff}.ecal-chip.is-on .ecal-chip-dot{background:#fff}.ecal-overdue{background:#fef2f2;border:1px solid #fbcaca;border-radius:11px;margin:0 0 6px}.ecal-overdue-banner{cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:9px;width:100%;padding:9px 12px;display:flex}.ecal-overdue-ic{color:#fff;background:#dc2626;border-radius:50%;flex:none;justify-content:center;align-items:center;width:17px;height:17px;font-size:11.5px;font-weight:800;display:flex}.ecal-overdue-text{color:#9a2a1e;min-width:0;font-size:12.5px;line-height:1.4}.ecal-overdue-text strong{color:#dc2626;font-weight:800}.ecal-overdue-toggle{color:#dc2626;flex:none;margin-left:auto;font-size:11.5px;font-weight:700}.ecal-overdue-note{color:#9a2a1e;margin:0;padding:0 13px 9px;font-size:12px;line-height:1.45}.ecal-overdue-note em{font-style:normal;font-weight:700}.ecal-overdue>.ecal-list{padding:0 6px 6px}.ecal-overdue .ecal-row{background:#fff;border-radius:8px;box-shadow:inset 3px 0 #dc2626}.ecal-overdue .ecal-item+.ecal-item{margin-top:4px}.ecal-overdue .ecal-row .ecal-amt{color:#dc2626}.ecal-overdue .ecal-detail{background:#fff;border:1px solid #f4d6d6;border-radius:8px;margin:4px 0 2px;padding:10px 12px}.ecal-mhead{border-bottom:2px solid var(--bf-sky-tint);align-items:baseline;gap:8px;margin-top:10px;padding:7px 2px 5px;display:flex}.ecal-mname{color:var(--bf-sky-deep);font-size:13px;font-weight:700}.ecal-now{color:var(--bf-sky);background:var(--bf-sky-tint);border-radius:999px;padding:1px 7px;font-size:10px;font-weight:700}.ecal-mtot{color:var(--bf-ink-2);font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px;font-weight:700}.ecal-month.is-quiet .ecal-mhead{border-bottom-color:#eef2f7}.ecal-month.is-quiet .ecal-mname{color:#9aa4b2;font-weight:600}.ecal-month.is-quiet .ecal-mtot{color:#9aa4b2;font-weight:400}.ecal-list{margin:0;padding:0;list-style:none}.ecal-list>.ecal-item+.ecal-item .ecal-row{border-top:1px solid #eef2f7}.ecal-row{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;width:100%;padding:9px 10px;transition:background .12s;display:flex}.ecal-row:hover{background:var(--bf-sky-tint-2)}.ecal-row:focus,.ecal-chip:focus,.ecal-overdue-banner:focus,.ecal-open-budget:focus,.ecal-later-toggle:focus{outline:none}.ecal-row:focus-visible,.ecal-chip:focus-visible,.ecal-overdue-banner:focus-visible,.ecal-open-budget:focus-visible,.ecal-later-toggle:focus-visible{outline:2px solid var(--bf-sky);outline-offset:-2px;border-radius:8px}.ecal-dot{background:var(--cat-accent,var(--bf-sky));border-radius:50%;flex:none;width:9px;height:9px}.ecal-main{flex-direction:column;flex:auto;gap:1px;min-width:0;display:flex}.ecal-name{color:var(--bf-ink);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600;overflow:hidden}.ecal-recur{color:var(--bf-amber-deep);font-weight:700}.ecal-count{color:var(--bf-ink-3);font-size:12px;font-weight:700}.ecal-bud{color:var(--bf-ink-3);font-size:11.5px}.ecal-amt{color:var(--bf-ink);font-variant-numeric:tabular-nums;flex:none;font-size:13px;font-weight:700}.ecal-chev{color:var(--bf-ink-3);flex:none;font-size:10px}.ecal-detail{background:color-mix(in srgb, var(--cat-accent,var(--bf-sky)) 6%, #fff);border:1px solid color-mix(in srgb, var(--cat-accent,var(--bf-sky)) 28%, #fff);border-left:3px solid var(--cat-accent,var(--bf-sky));border-radius:0 10px 10px 0;margin:2px 6px 10px 29px;padding:11px 13px}.ecal-facts{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px 16px;margin:0;display:grid}.ecal-facts dt{letter-spacing:.5px;text-transform:uppercase;color:var(--bf-ink-3);margin:0 0 1px;font-size:10px;font-weight:700}.ecal-facts dd{color:var(--bf-ink);margin:0;font-size:12.5px;font-weight:600}.ecal-facts .ecal-fact-overdue{color:#dc2626}.ecal-open-budget{color:var(--cat-accent,var(--bf-sky));border:1px solid var(--cat-accent,var(--bf-sky));cursor:pointer;background:#fff;border-radius:999px;margin-top:10px;padding:5px 12px;font-size:12px;font-weight:700;transition:background .12s;display:inline-block}.ecal-open-budget:hover{background:color-mix(in srgb, var(--cat-accent,var(--bf-sky)) 10%, #fff)}.ecal-later{margin-top:16px}.ecal-later-toggle{color:var(--bf-sky-deep);cursor:pointer;background:0 0;border:0;border-radius:999px;margin:0 auto;padding:7px 14px;font-size:12.5px;font-weight:700;display:block}.ecal-later-toggle:hover{background:var(--bf-sky-tint-2)}.ecal-empty{padding:1.4rem 0 .6rem}.ecal-empty p{color:var(--bf-ink);margin:0 0 6px;font-size:15px;font-weight:600}.ecal-empty .ecal-empty-sub{color:var(--bf-ink-3);max-width:46ch;font-size:13px;font-weight:400;line-height:1.55}.hh-coming-full{color:var(--bf-sky-deep);cursor:pointer;background:#fff;border:1px solid #bae0f7;border-radius:999px;flex:none;margin-left:auto;padding:4px 11px;font-size:12px;font-weight:700;transition:background .12s}.hh-coming-full:hover{background:var(--bf-sky-tint-2)}@media (width<=680px){.modal-backdrop.ecal-backdrop{z-index:80;padding:1rem .6rem 96px}.modal.ecal-modal{padding:1.5rem 1.1rem 1.6rem}.ecal-title{font-size:22px}.ecal-detail{margin-left:10px}}.module-picker{max-width:440px}.module-picker-sub{color:var(--text-secondary);margin:0 0 1rem;font-size:13px}.module-picker-grid{flex-direction:column;gap:8px;margin-bottom:1rem;display:flex}.module-card{text-align:left;background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;font:inherit;cursor:pointer;align-items:center;gap:12px;padding:12px 14px;transition:border-color .15s,background .15s;display:flex}.module-card:hover,.module-card:focus-visible{border-color:var(--cat-accent);background:var(--cat-tint)}.module-card-icon{background:var(--cat-tint);width:38px;height:38px;color:var(--cat-accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.module-card:hover .module-card-icon,.module-card:focus-visible .module-card-icon{background:var(--white)}.module-card-body{flex-direction:column;gap:2px;min-width:0;display:flex}.module-card-name{color:var(--text-primary);font-size:14px;font-weight:700}.module-card-tagline{color:var(--text-secondary);font-size:12px}.module-card-custom{border-style:dashed}.module-card-custom .module-card-icon{background:var(--surface-2,#f3f4f6);color:var(--text-secondary)}.cm-editor{max-width:540px;max-height:86vh;overflow-y:auto}.cm-field{margin-bottom:1.1rem}.cm-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin-bottom:6px;font-size:12px;font-weight:700;display:block}.cm-name-row{align-items:center;gap:8px;display:flex}.cm-text{border:1px solid var(--border);border-radius:var(--radius-sm,8px);min-width:0;font:inherit;flex:1;padding:8px 10px;font-size:14px}.cm-text:focus-visible{outline:2px solid var(--module-accent,var(--cat-blue));outline-offset:1px}.cm-icon-btn{border:1px solid var(--border);background:var(--white);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.cm-module-icon{background:color-mix(in srgb, currentColor 12%, #fff)}.cm-swatch-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cm-swatch{width:30px;height:30px;box-shadow:0 0 0 1px var(--border);cursor:pointer;border:2px solid #0000;border-radius:50%;padding:0}.cm-swatch.is-active{border-color:var(--white);box-shadow:0 0 0 2px var(--text-primary)}.cm-swatch-custom{background:var(--white);color:var(--text-secondary);justify-content:center;align-items:center;font-size:18px;font-weight:700;display:inline-flex;position:relative}.cm-swatch-custom input[type=color]{opacity:0;cursor:pointer;position:absolute;inset:0}.cm-family-preview{align-items:center;gap:8px;margin-top:10px;display:flex}.cm-family-label{color:var(--text-secondary);font-size:11px}.cm-family-shades{gap:3px;display:flex}.cm-family-shade{border-radius:3px;width:22px;height:14px;box-shadow:0 0 0 1px #0000000d}.cm-cat-list{flex-direction:column;gap:8px;margin:0 0 8px;padding:0;list-style:none;display:flex}.cm-cat-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cm-color-btn{cursor:pointer;border:1px solid #0000001f;border-radius:7px;flex-shrink:0;width:28px;height:28px;padding:0}.cm-color-btn.has-override{box-shadow:0 0 0 2px var(--white), 0 0 0 3px var(--text-primary)}.cm-row-remove{border:1px solid var(--border);background:var(--white);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;border-radius:50%;flex-shrink:0;font-size:18px;line-height:1}.cm-row-remove:disabled{opacity:.4;cursor:not-allowed}.cm-add-cat{border:1px dashed var(--border);border-radius:var(--radius-sm,8px);font:inherit;color:var(--module-accent,var(--cat-blue));cursor:pointer;background:0 0;padding:8px 12px;font-size:13px}.cm-add-cat:hover{background:var(--module-tint,var(--cat-blue-bg))}.cm-icon-grid{border:1px solid var(--border);border-radius:var(--radius-sm,8px);background:var(--surface-2,#f9fafb);flex-basis:100%;grid-template-columns:repeat(auto-fill,minmax(36px,1fr));gap:4px;max-height:160px;margin-top:4px;padding:8px;display:grid;overflow-y:auto}.cm-icon-opt{background:var(--white);height:34px;color:var(--text-secondary);cursor:pointer;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.cm-icon-opt.is-active{border-color:var(--module-accent,var(--cat-blue));color:var(--module-accent,var(--cat-blue))}.cm-color-pop{border:1px solid var(--border);border-radius:var(--radius-sm,8px);background:var(--surface-2,#f9fafb);flex-basis:100%;align-items:center;gap:6px;margin-top:4px;padding:6px 8px;display:flex}.cm-color-auto{border:1px solid var(--border);background:var(--white);cursor:pointer;border-radius:6px;padding:4px 8px;font-size:12px}.cm-color-auto.is-active{border-color:var(--module-accent,var(--cat-blue));color:var(--module-accent,var(--cat-blue))}.cm-color-dot{cursor:pointer;border:1px solid #0000001f;border-radius:50%;width:22px;height:22px;padding:0}.cm-empty{text-align:center;border:1px dashed var(--border);border-radius:var(--radius-md);background:var(--module-tint,var(--cat-blue-bg));margin-bottom:1rem;padding:2rem 1.25rem}.cm-empty-title{color:var(--text-primary);margin:0 0 6px;font-size:18px}.cm-empty-sub{color:var(--text-secondary);margin:0 0 14px;font-size:13px}.cm-edit-bar{border:1px solid var(--border);border-left:3px solid var(--module-accent,var(--cat-blue));border-radius:var(--radius-md);background:var(--white);justify-content:space-between;align-items:center;gap:10px;margin-bottom:1rem;padding:8px 12px;display:flex}.cm-edit-bar-label{color:var(--text-secondary);font-size:13px;font-weight:600}.budgets-rename-input,.budgets-create-input{min-width:0;font:inherit;border:1px solid var(--border);border-radius:8px;flex:1;padding:6px 8px;font-size:14px}.budgets-rename-input:focus,.budgets-create-input:focus{outline:2px solid var(--green);outline-offset:-1px;border-color:var(--green)}.acct{display:inline-flex;position:relative}.acct-btn{border:1px solid var(--border);background:var(--white);width:38px;height:38px;color:var(--text-secondary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:border-color .15s,color .15s;display:inline-flex;position:relative}.acct-btn:hover{border-color:var(--text-muted);color:var(--text-primary)}.acct-img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.acct-dot{border:2px solid var(--white);background:var(--text-muted);border-radius:50%;width:9px;height:9px;position:absolute;bottom:2px;right:2px}.acct-dot-ok{background:var(--green)}.acct-dot-warn{background:var(--warn)}.acct-dot-err{background:var(--danger)}.acct-dot-neutral{background:var(--text-muted)}.acct.acct-as-row{width:100%;display:block}.acct-row{width:100%;font:inherit;color:#5f6b7d;cursor:pointer;text-align:left;background:#fff;border:1px solid #e4e9f0;border-radius:9px;align-items:center;gap:9px;padding:8px 11px;font-size:12px;font-weight:600;transition:border-color .12s,color .12s,box-shadow .12s;display:inline-flex}.acct-row:hover{border-color:color-mix(in srgb, var(--bf-sky,#0284c7) 45%, #e4e9f0);color:var(--bf-sky,#0284c7);box-shadow:0 2px 7px #141e320f}.acct-row-av{background:var(--bf-sky-tint,#e0f2fe);width:22px;height:22px;color:var(--bf-sky,#0284c7);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.acct-row-av svg{width:14px;height:14px}.acct-row-label{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.acct-row-dot{border-radius:50%;flex:none;width:8px;height:8px}.acct-row-chev{color:#97a0b2;flex:none;display:inline-flex}.acct-as-row .acct-menu{width:auto;max-width:none;inset:auto 0 calc(100% + 8px)}.acct-menu{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);width:264px;max-width:84vw;box-shadow:var(--shadow);z-index:60;text-align:left;flex-direction:column;gap:8px;padding:12px;font-family:Montserrat,sans-serif;font-size:13px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.acct-who{color:var(--text-primary)}.acct-blurb{color:var(--text-secondary);line-height:1.45}.acct-status{color:var(--text-secondary);font-size:12px}.acct-status-ok{color:var(--green-dark)}.acct-status-warn{color:#8a6d12}.acct-status-err{color:var(--danger-dark)}.acct-action{text-align:center;border:1px solid var(--border);color:var(--text-secondary);border-radius:99px;padding:8px 12px;font-weight:600;text-decoration:none;display:block}.acct-action.primary{background:var(--green);border-color:var(--green);color:#fff}.acct-action:hover{border-color:var(--text-muted)}.acct-action.primary:hover{background:var(--green-dark);border-color:var(--green-dark)}.acct-link{color:var(--blue-dark);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.acct-privacy-toggle{font:inherit;color:var(--blue-dark);cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-size:12px;font-weight:600}.acct-privacy{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.5}.btn-pill{cursor:pointer;border:1px solid var(--border);color:var(--text-secondary);background:0 0;border-radius:99px;align-items:center;gap:6px;padding:7px 16px;font-family:Montserrat,sans-serif;font-size:13px;font-weight:600;transition:border-color .15s,background .15s,color .15s;display:inline-flex}.btn-pill:hover{border-color:var(--text-muted);color:var(--text-primary);background:#f2f1ee}.btn-pill.primary{background:var(--green);border-color:var(--green);color:#fff}.btn-pill.primary:hover{background:var(--green-dark);border-color:var(--green-dark);color:#fff}.btn-pill.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn-pill.danger:hover{background:#c92e2e;border-color:#c92e2e}.welcome-block{opacity:1;max-height:320px;margin-bottom:1.75rem;transition:max-height .38s,opacity .26s,margin .38s;overflow:hidden}.welcome-block.collapsed{opacity:0;pointer-events:none;max-height:0;margin-bottom:0}.welcome-inner{border-radius:var(--radius-lg);background:linear-gradient(135deg, var(--module-tint,var(--cat-clay-bg)) 0%, color-mix(in srgb, var(--module-accent,var(--cat-amber)) 9%, var(--white)) 100%);border:1px solid color-mix(in srgb, var(--module-accent,var(--cat-clay)) 18%, transparent);align-items:center;gap:18px;padding:22px 24px;display:flex}.welcome-icon{background:var(--white);width:54px;height:54px;color:var(--module-accent,var(--cat-clay));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;box-shadow:0 1px 3px #0000000f}.welcome-title{letter-spacing:-.3px;color:color-mix(in srgb, var(--module-accent,#8a4a33) 82%, #000);margin-bottom:4px;font-family:IBM Plex Sans,sans-serif;font-size:20px;font-weight:700}.welcome-sub{color:var(--text-secondary);max-width:56ch;font-size:14px;line-height:1.5}@media (prefers-reduced-motion:reduce){.welcome-block{transition:none}.added-cue,.component-table tbody tr.is-included{animation:none}}.category-section{margin-bottom:2.5rem;scroll-margin-top:80px}.plan-summary{background:var(--cat-tint,var(--bf-sky-tint));border:1px solid color-mix(in srgb, var(--cat-accent) 35%, var(--border));border-top:3px solid var(--cat-accent);border-radius:14px;padding:4px 14px 14px}.plan-summary .category-header{border-bottom-color:color-mix(in srgb, var(--cat-accent) 28%, var(--border))}.plan-summary .component-table tbody tr{border-bottom:2px solid color-mix(in srgb, var(--cat-accent,var(--green)) 45%, var(--card-bg))}.plan-summary .component-table tbody tr:last-child{border-bottom:none}.category-header{cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:1px solid var(--border);align-items:center;gap:14px;margin-bottom:1rem;padding:.75rem .25rem 1rem;display:flex}.category-header:hover .category-title{color:var(--cat-accent,var(--green-dark))}.category-select-all{flex-shrink:0}.category-title{letter-spacing:-.4px;min-width:0;color:color-mix(in srgb, var(--cat-accent,var(--text-primary)) 82%, #000);flex:1;font-family:IBM Plex Sans,sans-serif;font-size:22px;font-weight:700;transition:color .15s}th.th-notes,td.cell-notes{display:none}.category-count{color:var(--text-muted);white-space:nowrap;flex-shrink:0;font-family:Montserrat,sans-serif;font-size:12px;font-weight:600}.category-collapse-icon{color:var(--text-muted);text-align:center;-webkit-user-select:none;user-select:none;flex-shrink:0;width:16px;font-size:20px;transition:transform .2s}.category-section.collapsed .category-collapse-icon{transform:rotate(-90deg)}.category-icon{background:var(--cat-tint,var(--green-light));width:38px;height:38px;color:var(--cat-accent,var(--green));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.category-header:hover .category-icon{filter:brightness(.97)}.category-added-badge{background:var(--cat-tint,var(--green-light));color:var(--cat-accent,var(--green-dark));border:1px solid color-mix(in srgb, var(--cat-accent,var(--green)) 30%, transparent);letter-spacing:.2px;white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:99px;flex-shrink:0;align-items:center;gap:3px;padding:2px 9px;font-family:Montserrat,sans-serif;font-size:12px;font-weight:700;display:inline-flex}.category-section.collapsed .table-card,.category-section.collapsed .add-custom-btn{display:none}.category-section.collapsed .category-header{border-bottom:none;margin-bottom:0}.table-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.component-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:14px}.component-table th,.component-table td{text-align:left;vertical-align:middle;padding:5px 12px}.component-table thead th{letter-spacing:1px;text-transform:uppercase;color:var(--text-muted);background:var(--off-white);border-bottom:1px solid var(--border);white-space:nowrap;font-family:Montserrat,sans-serif;font-size:11px;font-weight:700}.component-table tbody tr{border-bottom:1px solid var(--border);transition:background .1s}.component-table tbody tr:last-child{border-bottom:none}.component-table tbody tr:hover{background:#f9f9f7}.component-table tbody tr.row-included{background:0 0}.component-table tbody tr.row-included:hover{background:color-mix(in srgb, var(--cat-accent,var(--green)) 7%, transparent)}.component-table tbody tr.row-included>td:first-child{box-shadow:inset 4px 0 0 var(--cat-accent,var(--green))}.component-table tbody tr.row-warning{background:#fff8f8}.component-table tbody tr.row-warning:hover{background:#fff0f0}.added-cue{background:color-mix(in srgb, var(--cat-accent,var(--green)) 15%, var(--white));width:fit-content;color:var(--cat-accent,var(--green-dark));letter-spacing:.3px;border-radius:99px;align-items:center;margin-top:5px;padding:1px 9px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:700;animation:.18s ease-out added-cue-in;display:flex}@keyframes added-cue-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}.devtime{z-index:200;color:#fff;box-shadow:var(--shadow-hover);background:#1a1a1a;border-radius:99px;align-items:center;gap:8px;padding:6px 10px;font-family:Montserrat,sans-serif;font-size:12px;display:inline-flex;position:fixed;bottom:12px;left:12px}.devtime.devtime--firstrun{bottom:56px}.devtime-tag{letter-spacing:.5px;color:#ffd27a;font-weight:800}.devtime-active{color:#ddd}.devtime-active strong{color:#fff}.devtime-input{color:#fff;background:#2a2a2a;border:1px solid #555;border-radius:6px;padding:2px 6px;font-family:Montserrat,sans-serif;font-size:12px}.devtime-btn{cursor:pointer;background:var(--green);color:#fff;border:none;border-radius:99px;padding:4px 12px;font-size:12px;font-weight:700}.devtime-btn:hover{background:var(--green-dark)}.devtime-reset{background:#555}.devtime-reset:hover{background:#6b6b6b}@media print{.devtime{display:none!important}}.overdue-nudge{border-radius:var(--radius-md);border:1px solid color-mix(in srgb, var(--copper) 45%, transparent);color:#8a3a22;background:#fbe9e3;align-items:center;gap:12px;margin-bottom:1.25rem;padding:11px 14px;display:flex}.overdue-nudge-icon{background:var(--copper);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-family:IBM Plex Sans,sans-serif;font-weight:800;line-height:1;display:inline-flex}.overdue-nudge-text{flex:1;min-width:0;font-size:13px;line-height:1.4}.overdue-nudge-cta{background:var(--copper);border-color:var(--copper);color:#fff;flex-shrink:0}.overdue-nudge-cta:hover{color:#fff;background:#a85432;border-color:#a85432}.overdue-nudge-close{color:#8a3a22;cursor:pointer;opacity:.7;background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:20px;line-height:1}.overdue-nudge-close:hover{opacity:1}@media (width<=680px){.overdue-nudge{flex-wrap:wrap}.overdue-nudge-text{flex-basis:calc(100% - 36px)}.overdue-nudge-cta{margin-left:36px}}.due-cue{color:#8a3a22;border:1px solid color-mix(in srgb, var(--copper) 40%, transparent);letter-spacing:.3px;background:#fbe9e3;border-radius:99px;align-items:center;width:fit-content;margin-top:5px;padding:1px 9px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:700;display:inline-flex}.aged-hint{color:var(--text-muted);margin-top:3px;font-family:Montserrat,sans-serif;font-size:11px;font-style:italic;display:block}.reset-timeline-btn{border:1px solid var(--border);background:var(--white);color:var(--text-secondary);cursor:pointer;border-radius:99px;align-items:center;gap:3px;margin-top:4px;padding:2px 8px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:600;display:inline-flex}.reset-timeline-btn:hover{border-color:var(--copper);color:var(--copper)}.row-collapse-toggle{display:none}col.c-include{width:36px}col.c-name{width:220px}col.c-info{width:32px}col.c-life{width:128px}col.c-qty{width:110px}col.c-diy{width:50px}col.c-recurring{width:70px}col.c-price{width:100px}col.c-custom{width:60px}td.cell-name{width:20%}.cell-include,.cell-info,.cell-diy,.cell-custom,.cell-recurring{text-align:center}.cell-price{text-align:right;white-space:nowrap}.cell-life input,.cell-qty input,.cell-price input{text-align:right}.cell-name{color:var(--text-primary);font-family:Montserrat,sans-serif;font-size:14px;font-weight:500;line-height:1.4}.cell-price-display{color:var(--text-secondary);font-weight:500}.cell-qty-unit{color:var(--text-muted);white-space:normal;max-width:100%;margin-top:3px;font-size:10px;font-weight:500;line-height:1.2;display:block}input[type=number],input[type=text]{background:var(--off-white);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);outline:none;width:100%;padding:5px 8px;font-family:Montserrat,sans-serif;font-size:13px;transition:border-color .15s,box-shadow .15s}input[type=number]:focus,input[type=text]:focus{border-color:var(--green);box-shadow:0 0 0 3px #23a23a1f}input[type=number].invalid,input[type=text].invalid{border-color:var(--danger)}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{appearance:textfield}.ym-field{align-items:center;gap:6px;display:inline-flex}.ym-part{align-items:center;gap:3px;display:inline-flex}.ym-field .ym-input{text-align:right;width:36px;padding:5px}.ym-unit{color:var(--text-muted);font-size:10px;font-weight:600;line-height:1}input[type=checkbox]{accent-color:var(--green);cursor:pointer;width:16px;height:16px}.component-table input[type=checkbox]{accent-color:var(--ongoing)}textarea.custom-name-input{box-sizing:border-box;resize:none;background:var(--off-white);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;min-height:0;color:var(--text-primary);outline:none;padding:5px 8px;font-family:Montserrat,sans-serif;font-size:13px;font-weight:500;line-height:1.35;transition:border-color .15s,box-shadow .15s;display:block;overflow:hidden}textarea.custom-name-input:focus{border-color:var(--green);box-shadow:0 0 0 3px #23a23a1f}.info-btn{background:var(--module-tint,var(--ongoing-soft));border:1px solid color-mix(in srgb, var(--module-accent,var(--ongoing-text)) 45%, transparent);width:24px;height:24px;color:var(--module-accent,var(--ongoing-text));cursor:pointer;box-shadow:0 0 0 3px color-mix(in srgb, var(--module-accent,transparent) 10%, transparent), 0 0 6px color-mix(in srgb, var(--module-accent,transparent) 28%, transparent);border-radius:50%;justify-content:center;align-items:center;font-family:IBM Plex Sans,serif;font-size:14px;font-style:italic;font-weight:700;transition:box-shadow .15s,transform .1s,background .15s;display:inline-flex}.info-btn:hover{background:color-mix(in srgb, var(--module-accent,var(--ongoing-text)) 14%, var(--white));box-shadow:0 0 0 3px color-mix(in srgb, var(--module-accent,transparent) 18%, transparent), 0 0 10px color-mix(in srgb, var(--module-accent,transparent) 45%, transparent);transform:translateY(-1px)}.delete-btn{border:1px solid var(--border);width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;font-size:16px;line-height:1;transition:color .15s,border-color .15s,background .15s;display:inline-flex}.delete-btn:hover{color:var(--danger);border-color:var(--danger);background:#fdecea}.warning-icon{color:var(--warn);cursor:help;justify-content:center;align-items:center;font-size:15px;display:inline-flex}.skill-badge{letter-spacing:.5px;text-transform:uppercase;border-radius:99px;padding:4px 12px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:700;display:inline-block}.skill-green{color:#1b7d2d;background:#e0f2e3;border:1px solid #c8eacf}.skill-yellow{color:#9a6200;background:#fdf3e0;border:1px solid #f5d98a}.skill-red{color:#b91c1c;background:#fdecea;border:1px solid #f5b8b5}.add-custom-btn{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:99px;align-items:center;gap:6px;margin-top:1rem;padding:7px 18px;font-family:Montserrat,sans-serif;font-size:12px;font-weight:600;transition:border-color .15s,background .15s,color .15s;display:inline-flex}.add-custom-btn:hover{border-color:var(--text-muted);color:var(--text-primary);background:#f2f1ee}.vault-banner{border:1px solid #d8e4f1;border-left:4px solid var(--bf-sky,#0284c7);background:#eef4fb;border-radius:12px;flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;margin:0 0 4px;padding:14px 16px;display:flex}.vault-banner-text{flex-direction:column;flex:240px;gap:4px;min-width:0;display:flex}.vault-banner-title{color:#0f2740;align-items:center;gap:8px;font-size:15px;font-weight:700;display:inline-flex}.vault-banner-title .lock-badge{background:var(--bf-sky,#0284c7);color:#fff}.vault-banner-sub{color:#475569;font-size:13.5px;line-height:1.45}.vault-banner-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.vault-banner-upgrade{background:var(--bf-sky,#0284c7);color:#fff;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.vault-banner-upgrade:hover{filter:brightness(1.08)}.vault-banner-swap{cursor:pointer;border:1px solid var(--bf-sky,#0284c7);color:var(--bf-sky-deep,#075985);background:0 0;border-radius:999px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:600}.vault-banner-swap:hover{background:#e2eef8}.vault-fieldset{border:0;min-width:0;margin:0;padding:0;display:block}.vault-fieldset .component-table{opacity:.8}.modal-backdrop{z-index:100;background:#00000059;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-backdrop.currency-confirm-backdrop{z-index:150}:root[data-theme=dark] .currency-confirm-backdrop .modal{background:#1c2431;border:1px solid #2c3645}:root[data-theme=dark] .currency-confirm-backdrop .confirm-title{color:#e7eaef}:root[data-theme=dark] .currency-confirm-backdrop .confirm-body{color:#aeb6c2}:root[data-theme=dark] .currency-confirm-backdrop .btn-pill:not(.danger){color:#c4ccd6;border-color:#3a4554}.modal-backdrop.conflict-backdrop{z-index:150}:root[data-theme=dark] .conflict-backdrop .modal{background:#1c2431;border:1px solid #2c3645}:root[data-theme=dark] .conflict-backdrop .confirm-title{color:#e7eaef}:root[data-theme=dark] .conflict-backdrop .confirm-body{color:#aeb6c2}:root[data-theme=dark] .conflict-backdrop .btn-pill:not(.primary){color:#c4ccd6;border-color:#3a4554}.modal{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-hover);width:100%;max-width:520px;max-height:85vh;padding:2rem;position:relative;overflow-y:auto}.modal-close{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:20px;line-height:1;transition:color .15s,background .15s;display:inline-flex;position:absolute;top:14px;right:14px}.modal-close:hover{color:var(--text-primary);background:var(--off-white)}.modal-title{color:var(--text-primary);letter-spacing:-.3px;margin-bottom:4px;padding-right:2rem;font-family:IBM Plex Sans,sans-serif;font-size:20px;font-weight:700}.modal-divider{border:none;border-top:1px solid var(--border);margin:1rem 0}.modal-note{color:var(--text-secondary);font-family:Montserrat,sans-serif;font-size:14px;line-height:1.8}.modal-section-label{letter-spacing:2px;text-transform:uppercase;color:var(--copper);margin:1.5rem 0 .5rem;font-family:IBM Plex Sans,sans-serif;font-size:11px;font-weight:700}.cost-grid{grid-template-columns:1fr auto;gap:6px 1rem;font-size:13px;display:grid}.cost-grid-note{color:var(--text-muted);margin:-2px 0 8px;font-size:12px;font-style:italic;line-height:1.5}.cost-grid dt{color:var(--text-muted);font-weight:500}.cost-grid dd{color:var(--text-primary);text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.rebate-card{background:var(--green-light);border-radius:var(--radius-md);border:1px solid #c8eacf;margin-top:.5rem;padding:.75rem 1rem;font-size:13px}.rebate-card-label{letter-spacing:1px;text-transform:uppercase;color:var(--green-dark);margin-bottom:4px;font-family:IBM Plex Sans,sans-serif;font-size:11px;font-weight:700}.rebate-card-amount{color:var(--green-dark);font-weight:700}.rebate-card-notes{color:var(--text-secondary);margin-top:6px;font-size:12px;line-height:1.5}.modal-disclaimer{color:var(--text-muted);margin-top:1.5rem;font-size:12px;font-style:italic;line-height:1.5}.modal.confirm-modal{max-width:400px;padding:1.75rem}.confirm-title{color:var(--text-primary);margin-bottom:.5rem;font-family:IBM Plex Sans,sans-serif;font-size:18px;font-weight:700}.confirm-body{color:var(--text-secondary);margin-bottom:1.25rem;font-size:14px;line-height:1.6}.confirm-actions{justify-content:flex-end;gap:8px;margin-top:.75rem;display:flex}.modal-backdrop.install-guide-backdrop{z-index:150}:root[data-theme=dark] .install-guide-backdrop{--white:#1c2431;--off-white:#0f141d;--border:#2c3645;--text-primary:#e7eaef;--text-secondary:#aeb6c2;--text-muted:#828c9a}.modal.install-guide{text-align:center;max-width:440px;padding:1.75rem}.install-guide-hero{flex-direction:column;align-items:center;gap:8px;display:flex}.install-guide-badge{background:color-mix(in srgb, var(--bf-sky,#0284c7) 12%, var(--white));width:52px;height:52px;color:var(--bf-sky,#0284c7);border:1px solid color-mix(in srgb, var(--bf-sky,#0284c7) 26%, transparent);border-radius:14px;justify-content:center;align-items:center;margin-bottom:2px;display:inline-flex}.install-guide-title{color:var(--text-primary);letter-spacing:-.3px;font-family:IBM Plex Sans,sans-serif;font-size:20px;font-weight:700}.install-guide-lead{color:var(--text-secondary);max-width:34ch;margin:0 auto;font-size:13.5px;line-height:1.55}.install-guide-cta{width:100%;font:inherit;cursor:pointer;color:#fff;background:var(--bf-sky,#0284c7);border:none;border-radius:10px;margin:1.1rem 0 .25rem;padding:11px 16px;font-size:15px;font-weight:600;transition:background .12s,opacity .12s;display:block}.install-guide-cta:hover{background:color-mix(in srgb, var(--bf-sky,#0284c7) 88%, #000)}.install-guide-cta:disabled{opacity:.65;cursor:default}.install-guide-steps{text-align:left;background:var(--off-white);border:1px solid var(--border);border-radius:12px;margin-top:1.1rem;padding:.9rem 1rem .9rem .5rem}.install-guide-steps-head{letter-spacing:.02em;text-transform:uppercase;color:var(--text-muted);margin:0 0 .5rem .9rem;font-size:12px;font-weight:700}.install-guide-steps ol{margin:0;padding-left:1.6rem}.install-guide-steps li{color:var(--text-secondary);margin-bottom:.45rem;font-size:13.5px;line-height:1.5}.install-guide-steps li:last-child{margin-bottom:0}.install-guide-foot{color:var(--text-muted);margin-top:.9rem;font-size:12px}@media (width<=680px),(width<=1024px) and (height<=520px) and (orientation:landscape){.welcome-block{margin-bottom:1rem}.welcome-inner{gap:14px;padding:16px}.welcome-icon{width:44px;height:44px}.welcome-icon svg{width:22px;height:22px}.welcome-title{font-size:17px}.welcome-sub{font-size:13px}.category-section{margin-bottom:0;scroll-margin-top:64px}.category-section:not(.collapsed){margin-bottom:10px}.category-header{border-bottom:1px solid var(--border);gap:10px;margin-bottom:0;padding:.6rem .4rem}.category-title{line-height:1.25}.category-section.collapsed .category-header{border-bottom:1px solid var(--border);margin-bottom:0}.category-title{font-size:16px}.category-collapse-icon{width:14px;font-size:16px}.category-icon{width:32px;height:32px}.category-icon svg{width:18px;height:18px}.category-added-badge{padding:2px 8px;font-size:11px}}@media (width<=1024px){.table-card{box-shadow:none;background:0 0;border:none}.table-wrap{overflow:visible}.component-table,.component-table tbody{min-width:0;display:block}.component-table thead,.component-table colgroup{display:none}.component-table tbody tr{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);grid-template-columns:min-content 1fr 1fr 1fr;grid-template-areas:"inc name name info"".life qty price"".diy rec custom";align-items:center;gap:7px 10px;margin-bottom:8px;padding:10px 12px;display:grid}.component-table tbody tr.row-included{background:var(--white);border-color:color-mix(in srgb, var(--cat-accent,var(--green)) 28%, transparent);box-shadow:none}.component-table tbody tr.row-included>td:first-child{box-shadow:none}.component-table tbody tr.row-warning{background:#fff8f8}.component-table td{text-align:left;white-space:normal;border:none;padding:0}.cell-include{grid-area:inc}td.cell-name{grid-area:name;align-self:center;width:auto;font-size:15px;font-weight:600;line-height:1.3}.cell-name .custom-name-input{width:100%}.cell-name .added-cue,.cell-name .due-cue,.cell-name .aged-hint,.cell-name .reset-timeline-btn{vertical-align:middle;margin-top:6px;margin-right:6px;display:inline-flex}.cell-info{grid-area:info;place-self:start end}.cell-life{grid-area:life;align-self:start}.cell-qty{grid-area:qty;align-self:start}.cell-price{grid-area:price;align-self:start}.cell-diy{grid-area:diy}.cell-recurring{grid-area:rec}.cell-custom{grid-area:custom}.cell-life:before,.cell-qty:before,.cell-price:before{content:attr(data-label);letter-spacing:.4px;text-transform:uppercase;min-height:26px;color:var(--text-muted);align-items:flex-end;margin-bottom:3px;font-family:Montserrat,sans-serif;font-size:10px;font-weight:600;line-height:1.15;display:flex}.cell-life input,.cell-qty input,.cell-price input{text-align:left}.cell-price .cell-price-display{padding:5px 0;display:inline-block}.cell-diy,.cell-recurring,.cell-custom{align-items:center;gap:6px;display:flex}.cell-diy:after,.cell-recurring:after,.cell-custom:after{content:attr(data-label);color:var(--text-secondary);font-family:Montserrat,sans-serif;font-size:12px;font-weight:500}.custom-row .cell-diy,.custom-row .cell-custom{display:none}.component-table tbody tr:not(.is-included):not(.custom-row){border:none;border-bottom:1px solid var(--border);background:0 0;border-radius:0;grid-template-areas:none;align-items:center;gap:10px;margin-bottom:0;padding:9px 6px;display:flex}.component-table tbody tr:not(.is-included):not(.custom-row)>td:not(.cell-include):not(.cell-name):not(.cell-info){display:none}.component-table tbody tr:not(.is-included):not(.custom-row) .cell-include{flex:none}.component-table tbody tr:not(.is-included):not(.custom-row) .cell-name{flex:1;font-size:14px;font-weight:500}.component-table tbody tr:not(.is-included):not(.custom-row) .cell-info{flex:none;margin-left:auto}.component-table tbody tr.is-included{border-left:4px solid var(--cat-accent,var(--green));box-shadow:none;margin-top:10px;animation:.18s ease-out add-card-in}@keyframes add-card-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.component-table tbody tr.is-included,.component-table tbody tr.custom-row.is-included{position:relative}.component-table tbody tr.is-included .row-collapse-toggle{z-index:1;cursor:pointer;border:1px solid var(--border);background:var(--white);width:30px;height:30px;color:var(--text-muted);border-radius:8px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:8px;right:8px}.component-table tbody tr.is-included .row-collapse-toggle svg{transition:transform .15s}.component-table tbody tr.is-included .row-collapse-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.component-table tbody tr.is-included:not(.is-collapsed) .cell-info{padding-right:36px}.component-table tbody tr.is-included.is-collapsed{grid-template-areas:none;align-items:center;gap:10px;margin-top:8px;padding:10px 46px 10px 12px;display:flex}.component-table tbody tr.is-included.is-collapsed>td:not(.cell-include):not(.cell-name){display:none}.component-table tbody tr.is-included.is-collapsed .cell-include{flex:none}.component-table tbody tr.is-included.is-collapsed .cell-name{flex:1;align-self:center;min-width:0}.component-table tbody tr.is-included.is-collapsed .cell-name .added-cue,.component-table tbody tr.is-included.is-collapsed .cell-name .due-cue,.component-table tbody tr.is-included.is-collapsed .cell-name .aged-hint{margin-top:2px}.component-table tbody tr.is-included.is-collapsed .reset-timeline-btn{display:none}.component-table tbody tr.custom-row.is-included.is-collapsed .custom-name-input{width:100%}}.summary-backdrop{--green:var(--module-header-cta-bg,#3f8f57);--green-dark:var(--module-header-control-text,#2f6e42);--green-light:color-mix(in srgb, var(--module-header-cta-bg,#3f8f57) 14%, #fff);--blue:var(--module-accent,#5b82ad);--blue-dark:var(--module-header-control-text,#41618a);--blue-light:var(--module-tint,#e6edf5);--copper:var(--module-header-cta-border,#c2674a);--summary-accent-light:color-mix(in srgb, var(--copper) 13%, #fff);--summary-accent-text:var(--module-header-control-text,#8a3a22);--summary-overview-bg:linear-gradient(135deg, var(--module-tint,var(--cat-green-bg)) 0%, color-mix(in srgb, var(--module-header-cta-bg,#3f8f57) 7%, #fff) 100%);--summary-chart-top:var(--module-header-top,#265239);--summary-chart-bottom:var(--module-header-bottom,#1b3d2a);--summary-chart-border:var(--module-header-border,#16331f);--summary-chart-line:color-mix(in srgb, var(--module-header-cta-bg,#3f8f57) 45%, #fff);--summary-chart-event:var(--module-header-wordmark,#e2906a);--summary-chart-slider:var(--module-header-wordmark-hover,#f0c987);--summary-chart-text:color-mix(in srgb, var(--module-header-wordmark,#f1c98b) 48%, #fff);align-items:flex-start;padding:2rem 1rem;overflow-y:auto}.summary-modal{background:var(--white);width:100%;max-width:880px;max-height:none;padding:2.5rem 2.5rem 2rem;overflow:visible}.summary-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-bottom:1.5rem;display:flex}.print-dropdown{display:inline-flex;position:relative}.print-menu{z-index:30;background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);min-width:200px;box-shadow:var(--shadow);flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0}.print-menu-item{text-align:left;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:8px 12px;font-family:Montserrat,sans-serif;font-size:13px;font-weight:600}.print-menu-item:hover{background:var(--off-white);color:var(--text-primary)}.summary-header{margin-bottom:2rem}.summary-title{letter-spacing:-.9px;color:var(--green-dark);background:linear-gradient(98deg, var(--green-dark) 0%, var(--green) 62%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:12px;font-family:IBM Plex Sans,sans-serif;font-size:33px;font-weight:800;line-height:1.06;display:inline-block}.summary-title:after{content:"";background:linear-gradient(90deg, var(--green) 0%, var(--copper) 115%);border-radius:99px;width:56px;height:4px;margin-top:11px;display:block}.summary-date{color:var(--text-muted);margin-bottom:1rem;font-family:Montserrat,sans-serif;font-size:14px}.due-now-banner{border-radius:var(--radius-md);background:var(--summary-accent-light);border:1px solid color-mix(in srgb, var(--copper) 45%, transparent);color:var(--summary-accent-text);align-items:center;gap:12px;margin-bottom:1rem;padding:11px 16px;display:flex}.due-now-icon{background:var(--copper);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-family:IBM Plex Sans,sans-serif;font-weight:800;line-height:1;display:inline-flex}.due-now-text{font-size:13px;line-height:1.4}.due-now-text strong{font-weight:700}.summary-overview{border-radius:var(--radius-lg);background:var(--summary-overview-bg);border:1px solid color-mix(in srgb, var(--green) 26%, transparent);align-items:stretch;margin-bottom:1.25rem;display:flex;overflow:hidden}.overview-card-primary{flex-direction:column;flex:1.05 1 0;justify-content:center;padding:18px 22px;display:flex}.overview-card-secondary{flex-direction:column;flex:.95 1 0;justify-content:center;gap:4px;padding:18px 22px;display:flex}.overview-card-divider{background:color-mix(in srgb, var(--green) 22%, transparent);flex:0 0 1px;align-self:stretch;margin:16px 0}.overview-hero-label{letter-spacing:1px;text-transform:uppercase;color:var(--green-dark);font-family:Montserrat,sans-serif;font-size:11px;font-weight:700}.overview-hero-value{letter-spacing:-1px;color:var(--green-dark);font-variant-numeric:tabular-nums;margin:4px 0 2px;font-family:IBM Plex Sans,sans-serif;font-size:40px;font-weight:700;line-height:1.05}.overview-hero-unit{opacity:.6;margin-left:2px;font-size:18px;font-weight:600}.overview-hero-sub{color:var(--text-secondary);font-size:12px;line-height:1.4}.overview-hero-breakdown{color:var(--text-secondary);flex-wrap:wrap;align-items:baseline;gap:2px 8px;font-size:12px;line-height:1.5;display:flex}.overview-breakdown-amt{color:var(--green-dark);font-variant-numeric:tabular-nums;font-weight:700}.overview-breakdown-sep{opacity:.45}.overview-breakdown-ongoing{color:var(--ongoing-text);align-items:baseline;gap:5px;display:inline-flex}.overview-breakdown-ongoing .overview-breakdown-amt{color:var(--ongoing-text)}.overview-breakdown-dot{background:var(--ongoing);border-radius:50%;flex:none;align-self:center;width:7px;height:7px}.overview-hero-window{max-width:100%;color:var(--blue-dark);background:var(--blue-light);border:1px solid color-mix(in srgb, var(--blue) 24%, transparent);border-radius:12px;align-items:center;gap:6px;margin-top:8px;padding:4px 11px;font-size:11.5px;font-weight:600;line-height:1.3;display:inline-flex}.overview-hero-window-text{min-width:0}.overview-hero-window strong{white-space:nowrap;font-weight:800}.overview-hero-window-icon{border:1.5px solid;border-radius:2px;flex:none;width:9px;height:9px;position:relative}.overview-hero-window-icon:before{content:"";background:currentColor;height:1.5px;position:absolute;top:-.5px;left:1px;right:1px}.overview-stat-label{letter-spacing:.8px;text-transform:uppercase;color:var(--text-muted);font-family:Montserrat,sans-serif;font-size:10px;font-weight:700}.overview-stat-value{color:var(--text-primary);letter-spacing:-.4px;font-variant-numeric:tabular-nums;font-family:IBM Plex Sans,sans-serif;font-size:24px;font-weight:700;line-height:1.05}.overview-stat-value.muted{color:var(--text-muted)}.overview-stat-unit{opacity:.6;margin-left:1px;font-size:15px;font-weight:600}.overview-stat-sub{color:var(--text-muted);font-size:11px;line-height:1.35}.coverage-bar{background:var(--border);border-radius:99px;height:7px;margin:1px 0 2px;overflow:hidden}.coverage-bar-fill{background:var(--green);border-radius:99px;height:100%;transition:width .3s}@media (width<=680px){.summary-overview{flex-direction:column}.overview-card-divider{flex-basis:1px;height:1px;margin:0 18px}.overview-card-primary{padding-bottom:14px}.overview-card-secondary{padding-top:14px}.overview-hero-value{font-size:34px}.overview-hero-sub{font-size:11px}}.summary-empty{text-align:center;color:var(--text-secondary);padding:2.5rem 1rem}.summary-empty-help{color:var(--text-muted);margin-top:8px;font-size:13px}.summary-category{break-inside:avoid;page-break-inside:avoid;margin-bottom:1.75rem}.summary-category-header{border-bottom:1px solid var(--border);align-items:center;gap:10px;margin-bottom:6px;padding-bottom:8px;display:flex}.summary-category-icon{background:var(--cat-tint,var(--green-light));width:30px;height:30px;color:var(--cat-accent,var(--green));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.summary-category-name{min-width:0;color:var(--text-primary);letter-spacing:-.2px;flex:1;font-family:IBM Plex Sans,sans-serif;font-size:17px;font-weight:700}.summary-cat-toggle{display:none}.summary-category-meta{flex-shrink:0;align-items:center;gap:12px;display:flex}.summary-category-subtotal{color:var(--green);font-variant-numeric:tabular-nums;font-family:IBM Plex Sans,sans-serif;font-size:16px;font-weight:700}.scm-repl{color:var(--green)}.scm-ongoing{color:var(--ongoing-text)}.summary-category-subtotal .muted{opacity:.65;font-size:12px;font-weight:600}.scm-sep{color:var(--text-muted);font-weight:600}.summary-category-share{align-items:center;gap:6px;display:flex}.summary-category-share-bar{background:var(--border);border-radius:99px;width:56px;height:6px;overflow:hidden}.summary-category-share-fill{border-radius:99px;height:100%;display:flex;overflow:hidden}.scs-repl{background:var(--cat-accent,var(--green));height:100%}.scs-ongoing{background:var(--ongoing);height:100%}.summary-category-share-pct{color:var(--text-muted);text-align:right;font-variant-numeric:tabular-nums;min-width:26px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:700}@media (width<=680px){.summary-category-header{flex-wrap:wrap}.summary-category-meta{flex:1 0 100%;justify-content:space-between;gap:8px;min-width:0;margin-top:2px}.summary-category-subtotal{min-width:0;font-size:13.5px}.summary-category-share{flex-shrink:0}.summary-category-share-bar{display:none}.summary-cat-toggle{cursor:pointer;border:1px solid var(--border);background:var(--white);width:30px;height:30px;color:var(--text-muted);border-radius:8px;flex:none;order:2;justify-content:center;align-items:center;padding:0;display:inline-flex}.summary-category-meta{order:3}.summary-cat-toggle svg{transition:transform .15s}.summary-cat-toggle[aria-expanded=false] svg{transform:rotate(-90deg)}.summary-category.is-collapsed .summary-table{display:none}.summary-category.is-collapsed .summary-category-header{border-bottom:none;margin-bottom:0}}.summary-table{border-collapse:collapse;table-layout:fixed;font-variant-numeric:tabular-nums;width:100%;font-size:13px}.summary-table col.sc-component{width:28%}.summary-table col.sc-unit{width:18%}.summary-table col.sc-qty{width:10%}.summary-table col.sc-life,.summary-table col.sc-price{width:14%}.summary-table col.sc-reserve{width:16%}.summary-table.has-projected-col col.sc-component{width:24%}.summary-table.has-projected-col col.sc-unit{width:14%}.summary-table.has-projected-col col.sc-qty{width:8%}.summary-table.has-projected-col col.sc-life{width:13%}.summary-table col.sc-projected{width:12%}.summary-table.has-projected-col col.sc-price{width:13%}.summary-table.has-projected-col col.sc-reserve{width:16%}.summary-table th,.summary-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;word-wrap:break-word;overflow-wrap:break-word;padding:8px 10px}.summary-table thead th{letter-spacing:1px;text-transform:uppercase;color:var(--text-muted);background:var(--off-white);font-size:10px;font-weight:700}.summary-table tbody tr:last-child td{border-bottom:none}.summary-table .num{text-align:right}.summary-table td.num{white-space:nowrap}.summary-table thead th{white-space:normal;line-height:1.3}.summary-table .num.strong{color:var(--text-primary);font-family:IBM Plex Sans,sans-serif;font-weight:700}.summary-item-name{color:var(--text-primary);font-weight:500}.summary-item-unit{display:none}.summary-item-cat{color:var(--text-muted);margin-top:2px;font-size:11.5px;display:block}.summary-unit{color:var(--text-muted);max-width:220px;font-size:12px}.badge-mini{letter-spacing:.6px;text-transform:uppercase;vertical-align:middle;border-radius:99px;margin-left:6px;padding:2px 7px;font-size:9px;font-weight:700;display:inline-block}.badge-custom{background:color-mix(in srgb, var(--copper) 13%, #fff);color:var(--summary-accent-text);border:1px solid color-mix(in srgb, var(--copper) 32%, transparent)}.badge-diy{background:var(--green-light);color:var(--green-dark);border:1px solid color-mix(in srgb, var(--green) 28%, transparent)}.skill-mini{padding:3px 8px;font-size:10px}.summary-grand{border-top:1px solid var(--border);break-inside:avoid;margin-top:1.5rem;padding-top:1rem}.summary-monthly{text-align:right}.summary-monthly-value{color:var(--green-dark);font-family:IBM Plex Sans,sans-serif;font-size:22px;font-weight:700}.summary-monthly-value .muted{color:var(--green-dark);opacity:.6;font-size:14px;font-weight:500}.summary-projections{grid-template-columns:1fr 1fr;gap:10px;margin-top:1rem;display:grid}.projection-card{background:var(--white);border:1px solid color-mix(in srgb, var(--green) 28%, transparent);border-radius:var(--radius-md);padding:.85rem 1rem}.projection-label{letter-spacing:1px;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:700}.projection-value{color:var(--text-primary);font-variant-numeric:tabular-nums;font-family:IBM Plex Sans,sans-serif;font-size:20px;font-weight:700}.summary-footnote{color:var(--green-dark);opacity:.85;margin-top:1rem;font-size:12px;font-style:italic}@media (width<=680px){.summary-backdrop{z-index:80;padding:1rem .6rem 96px}.summary-modal{border-radius:var(--radius-lg);min-height:0;max-height:none;padding:1rem 1rem 1.5rem}.summary-modal .modal-close,.household-modal .modal-close{z-index:2;background:var(--white);border:1px solid var(--border);box-shadow:0 1px 3px #00000014}.summary-actions{justify-content:flex-start;margin-bottom:1.25rem;padding-right:44px}.summary-title{letter-spacing:-.5px;font-size:24px}.summary-title:after{width:46px;height:3px;margin-top:9px}.summary-grand-value{font-size:28px}.summary-projections{grid-template-columns:1fr}.summary-category{overflow-x:visible}.summary-table,.summary-table tbody{min-width:0;display:block}.summary-table thead,.summary-table colgroup{display:none}.summary-table tbody tr:not(.item-status-row){border:1px solid var(--border);border-radius:var(--radius-md) var(--radius-md) 0 0;background:var(--white);border-bottom:none;margin-top:12px;padding:10px 12px 6px;display:block}.summary-table tbody tr:not(.item-status-row) td{text-align:right;white-space:normal;border:none;justify-content:space-between;align-items:baseline;gap:12px;padding:2px 0;display:flex}.summary-table tbody tr:not(.item-status-row) td[data-label]:before{content:attr(data-label);letter-spacing:.4px;text-transform:uppercase;color:var(--text-muted);text-align:left;flex:none;font-family:Montserrat,sans-serif;font-size:10px;font-weight:600}.summary-table tbody tr:not(.item-status-row) td:first-child{text-align:left;border-bottom:1px dashed var(--border);margin-bottom:4px;padding-bottom:6px;font-size:14px;font-weight:600;display:block}.summary-table tbody tr:not(.item-status-row) td.summary-unit{display:none}.summary-item-unit{color:var(--text-muted);margin-top:2px;font-size:11px;font-weight:400;display:block}.summary-table tbody tr:not(.item-status-row) td.strong{color:var(--green-dark);font-weight:700}.summary-table tbody tr.item-status-row{border:1px solid var(--border);border-top:1px dashed var(--border);border-radius:0 0 var(--radius-md) var(--radius-md);background:var(--off-white);padding:7px 12px 9px;display:block}.summary-table tbody tr.item-status-row td{white-space:normal;border:none;padding:0;display:block}}@media print{@page{margin:.6in}body{font-size:11pt;background:#fff!important}.summary-backdrop,.summary-backdrop *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important}.ws,.main-summary-cta{display:none!important}.modal-backdrop.summary-backdrop{z-index:auto!important;background:#fff!important;padding:0!important;display:block!important;position:static!important;overflow:visible!important}.summary-modal{max-width:100%!important;min-height:0!important;max-height:none!important;box-shadow:none!important;background:#fff!important;border-radius:0!important;padding:0!important;overflow:visible!important}.summary-modal .modal-close,.summary-modal .summary-actions,.summary-tabs,.projection-bar,.savings-input-bar,.summary-sort,.summary-recurring{display:none!important}.badge-mini{opacity:1!important}.summary-grand{break-inside:avoid;page-break-inside:avoid}.summary-table thead{display:table-header-group}.summary-table tr{break-inside:avoid;page-break-inside:avoid}.summary-category-header{break-after:avoid;page-break-after:avoid}.summary-footnote,.reserve-fund-footnote,.summary-monthly-value .muted{opacity:1!important}.reserve-fund-input-wrap{background:0 0!important;border:none!important;padding:0!important}.reserve-fund-input{background:0 0!important;border:none!important;width:auto!important;padding:0!important}.viz-card,.reserve-fund-panel,.savings-plan-section,.summary-overview{break-inside:avoid;page-break-inside:avoid}.coverage-chart-card{box-shadow:none!important;background:#fff!important;border-color:#ddd!important}.chart-line{stroke:var(--summary-chart-line)!important}.balance-grad-top,.balance-grad-bottom{stop-color:var(--summary-chart-line)}.chart-grid{stroke:#ddd!important}.chart-baseline{stroke:#888!important}.chart-ytick{fill:#777!important}.chart-event,.chart-event.is-selected{fill:var(--summary-chart-event)!important}.chart-slider{stroke:var(--summary-chart-slider)!important}.chart-slider-dot{fill:var(--summary-chart-event)!important;stroke:#fff!important}.balance-chart-scale{color:#777!important}.chart-zoom-bar{display:none!important}.summary-tab-panel{display:block!important}body.print-plan .reserve-fund-panel,body.print-plan .viz-grid,body.print-plan .summary-category,body.print-plan .summary-grand,body.print-visuals .savings-plan-section,body.print-visuals .summary-category,body.print-visuals .summary-grand,body.print-details .summary-overview,body.print-details .summary-funded,body.print-details .reserve-fund-panel,body.print-details .viz-grid,body.print-details .savings-plan-section,body.print-details .summary-grand{display:none!important}}.savings-input-bar{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;align-items:stretch;gap:12px;margin-bottom:.75rem;padding:12px 14px;display:flex;box-shadow:0 1px 3px #0000000a}.savings-input-bar .reserve-fund-input-field{grid-template-columns:1fr 170px;align-items:center;gap:3px 14px;display:grid}.savings-input-bar .reserve-fund-input-field+.reserve-fund-input-field{border-top:1px solid var(--border);padding-top:12px}.savings-input-bar .reserve-fund-input-label{font-size:11px}.savings-input-bar .reserve-fund-input-wrap{box-sizing:border-box;width:100%;padding:4px 10px}.savings-input-bar .reserve-fund-input-dollar{font-size:15px}.savings-input-bar .reserve-fund-input{text-align:left;flex:auto;width:auto;min-width:0;font-size:16px}.savings-input-bar .reserve-fund-input-suffix{font-size:12px}.savings-input-bar .reserve-fund-horizon{gap:8px;display:flex}.savings-input-bar .reserve-fund-horizon .reserve-fund-input-wrap{flex:1 1 0;min-width:0;padding:4px 8px}.savings-input-bar .reserve-fund-readonly{color:var(--green-dark);text-align:left;padding:4px 2px;font-size:16px;font-weight:700}.savings-manage-link{font:inherit;color:var(--green-dark);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-weight:700;text-decoration:underline}.savings-manage-link:hover{color:var(--green)}.savings-horizon-input{width:60px}.savings-field-note{color:var(--text-muted);grid-column:1/-1;margin:0;font-family:Montserrat,sans-serif;font-size:10.5px;font-style:italic;line-height:1.4}.onplan-suggestion{border-radius:var(--radius-sm,6px);background:var(--blue-light,#e6edf5);border:1px solid color-mix(in srgb, var(--blue,#5b82ad) 30%, transparent);flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px;margin-top:8px;padding:8px 10px;display:flex}.onplan-text{color:var(--text-secondary);font-size:12px}.onplan-text strong{color:var(--blue-dark,#41618a);font-weight:700}.onplan-apply{font:inherit;cursor:pointer;border:1px solid var(--blue,#5b82ad);background:var(--white);color:var(--blue-dark,#41618a);border-radius:999px;padding:4px 12px;font-size:12px;font-weight:700}.onplan-apply:hover{background:var(--blue,#5b82ad);color:#fff}.onplan-note{color:var(--text-muted);flex-basis:100%;font-size:10.5px;font-style:italic}.savings-undo-row{justify-content:flex-end;align-items:center;gap:10px;margin-bottom:4px;display:flex}.savings-undo-text{color:var(--text-muted);font-size:11.5px}.savings-undo-btn{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--white);color:var(--text-secondary);border-radius:999px;padding:4px 12px;font-size:12px;font-weight:700}.savings-undo-btn:hover{border-color:var(--copper);color:var(--copper)}.reserve-fund-input-wrap.accent-green{border-color:var(--green);background:var(--white)}.reserve-fund-input-wrap.accent-green .reserve-fund-input-dollar,.reserve-fund-input-wrap.accent-green .reserve-fund-input{color:var(--green-dark)}.reserve-fund-input-wrap.accent-green .reserve-fund-input::placeholder{color:var(--green)}.reserve-fund-input-wrap.accent-blue{border-color:var(--blue);background:var(--white)}.reserve-fund-input-wrap.accent-blue .reserve-fund-input{color:var(--blue-dark)}.reserve-fund-input-wrap.accent-blue .reserve-fund-input::placeholder{color:var(--blue)}.reserve-fund-input-wrap.accent-blue .reserve-fund-input-suffix{color:var(--blue-dark)}.reserve-fund-input-suffix{color:var(--green-dark);margin-left:2px;font-family:Montserrat,sans-serif;font-size:13px;font-weight:500}@media (width<=540px){.savings-input-bar .reserve-fund-input-field{grid-template-columns:minmax(0,1fr)}}.reserve-fund-panel{background:linear-gradient(135deg, var(--module-tint,var(--green-light)) 0%, color-mix(in srgb, var(--module-header-cta-bg,var(--green)) 8%, #fff) 100%);border:1px solid color-mix(in srgb, var(--module-header-cta-bg,var(--green)) 34%, transparent);border-radius:var(--radius-md);margin-bottom:1.75rem;padding:.85rem 1.25rem 1rem;box-shadow:0 4px 12px #3f8f571a}.summary-modal .modal-close{z-index:20}@media print{.reserve-fund-panel{box-shadow:none!important}}.reserve-fund-input-row{flex-wrap:wrap;align-items:center;gap:12px;margin:6px 0 10px;display:flex}.reserve-fund-input-label{color:var(--green-dark);text-transform:uppercase;letter-spacing:.8px;font-family:Montserrat,sans-serif;font-size:12px;font-weight:600}.reserve-fund-input-label.accent-blue-label{color:var(--blue-dark)}.reserve-fund-input-wrap{background:var(--white);border:1px solid var(--green);border-radius:var(--radius-sm);align-items:baseline;gap:6px;padding:6px 12px;display:inline-flex}.reserve-fund-input-dollar{color:var(--green-dark);font-family:IBM Plex Sans,sans-serif;font-size:18px;font-weight:700}.reserve-fund-input{color:var(--green-dark);text-align:right;font-variant-numeric:tabular-nums;letter-spacing:-.3px;background:0 0;border:none;outline:none;width:120px;font-family:IBM Plex Sans,sans-serif;font-size:20px;font-weight:700}.reserve-fund-input::placeholder{color:var(--green);opacity:.55;font-weight:600}.reserve-fund-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.reserve-fund-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.reserve-fund-input{appearance:textfield}.reserve-fund-subtitle{color:var(--text-secondary);margin-bottom:4px;font-size:13px}.reserve-fund-caption{color:var(--text-muted);max-width:60ch;margin:0 0 10px;font-size:11.5px}.reserve-bar-wrap{align-items:center;gap:10px;margin-bottom:8px;display:flex}.reserve-bar-track{background:var(--border);border-radius:99px;flex:1;height:8px;overflow:hidden}.reserve-bar-fill{border-radius:99px;height:100%;transition:width .3s}.reserve-bar-label{white-space:nowrap;color:var(--text-primary);text-align:right;min-width:90px;font-family:IBM Plex Sans,sans-serif;font-size:14px;font-weight:700}.reserve-fund-footnote{color:var(--text-muted);font-size:11px;font-style:italic}.savings-plan-section{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);margin:0 0 2rem;padding:1.25rem 1.25rem 1rem;box-shadow:0 1px 3px #0000000a}.savings-plan-header{margin-bottom:.75rem}.savings-plan-title{color:var(--text-primary);letter-spacing:-.2px;font-family:IBM Plex Sans,sans-serif;font-size:16px;font-weight:700}.savings-plan-sub{color:var(--text-muted);margin-top:2px;font-family:Montserrat,sans-serif;font-size:12px;line-height:1.45}.savings-plan-table{border-collapse:collapse;width:100%;font-family:Montserrat,sans-serif;font-size:13px}.savings-plan-table thead th{text-align:left;letter-spacing:1px;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border);padding:6px 10px 8px;font-family:IBM Plex Sans,sans-serif;font-size:10px;font-weight:700}.savings-plan-table tbody td{border-bottom:1px solid var(--border);color:var(--text-primary);vertical-align:middle;padding:8px 10px}.savings-plan-table tbody tr:last-child td{border-bottom:none}.savings-plan-table td.num,.savings-plan-table th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.savings-plan-table tbody td:first-child,.savings-plan-table tbody td:nth-child(2){color:var(--blue-dark);font-weight:600}.savings-plan-table td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.savings-plan-table .sp-save{color:var(--green-dark);font-family:IBM Plex Sans,sans-serif;font-weight:700}.savings-plan-table .sp-pay{color:var(--text-secondary);font-family:IBM Plex Sans,sans-serif;font-weight:600}.savings-plan-table .period-next{color:var(--text-secondary);font-size:12px}.savings-plan-table tr.period-zero td:nth-child(3){color:var(--text-muted);font-weight:500}.savings-plan-table tr.period-zero{background:var(--off-white)}.savings-plan-table tr.period-active{background:var(--blue-light);position:relative}.savings-plan-table tr.period-active td:first-child{box-shadow:inset 3px 0 0 var(--blue)}.sp-monthly{margin-top:14px}.sp-monthly-toggle{font:inherit;cursor:pointer;color:var(--green-dark);background:0 0;border:none;align-items:center;gap:6px;padding:4px 0;font-size:13px;font-weight:600;display:inline-flex}.sp-monthly-toggle:hover{text-decoration:underline}@media (width<=680px){.savings-plan-table,.savings-plan-table tbody{display:block}.savings-plan-table thead{display:none}.savings-plan-table tbody tr{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);margin-bottom:10px;padding:8px 12px;display:block}.savings-plan-table tbody td{text-align:right;white-space:normal;border:none;justify-content:space-between;align-items:baseline;gap:12px;padding:3px 0;display:flex}.savings-plan-table tbody td:before{content:attr(data-label);letter-spacing:.4px;text-transform:uppercase;color:var(--text-muted);text-align:left;flex:none;font-family:Montserrat,sans-serif;font-size:11px;font-weight:600}.savings-plan-table tbody td.num{color:var(--green-dark);font-family:IBM Plex Sans,sans-serif;font-size:16px;font-weight:700}.savings-plan-table tr.period-zero td.num{color:var(--text-muted)}.savings-plan-table tr.period-active{border-left:3px solid var(--blue)}.savings-plan-table tr.period-active td:first-child{box-shadow:none}}.coverage-chart-card{background:linear-gradient(180deg, var(--summary-chart-top) 0%, var(--summary-chart-bottom) 100%);border:1px solid var(--summary-chart-border);border-radius:var(--radius-md);margin-top:10px;padding:10px 14px;box-shadow:inset 0 1px #ffffff0f}.balance-chart-wrap{margin-top:0;position:relative}.balance-chart{width:100%;height:auto;display:block}.chart-baseline{stroke:#f5efe2;stroke-width:1px;stroke-dasharray:2 3;opacity:.35}.chart-line{fill:none;stroke:var(--summary-chart-line);stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.chart-area{fill:url(#balance-area-grad);stroke:none}.balance-grad-top{stop-color:var(--summary-chart-line);stop-opacity:.3}.balance-grad-bottom{stop-color:var(--summary-chart-line);stop-opacity:.02}.chart-grid{stroke:#ffffff1a;stroke-width:1px;vector-effect:non-scaling-stroke}.chart-ytick{fill:var(--summary-chart-text);font-variant-numeric:tabular-nums;font-family:Montserrat,sans-serif;font-size:9px}.chart-event{fill:var(--summary-chart-event);opacity:.95}.chart-event.is-selected{fill:var(--summary-chart-event);opacity:1;stroke:#f5efe2;stroke-width:1.5px;vector-effect:non-scaling-stroke}.chart-event-hit{fill:#0000}.chart-tooltip{color:var(--green-dark);box-shadow:var(--shadow-hover);white-space:nowrap;z-index:5;background:#faf6ec;border-radius:8px;padding:6px 22px 6px 10px;font-family:Montserrat,sans-serif;position:absolute;transform:translate(-50%,calc(-100% - 10px))}.chart-tooltip-label{letter-spacing:.06em;text-transform:uppercase;opacity:.65;font-size:9px}.chart-tooltip-names{font-size:12px;font-weight:600}.chart-tooltip-close{color:var(--green-dark);cursor:pointer;opacity:.7;background:0 0;border:none;padding:0;font-size:14px;line-height:1;position:absolute;top:2px;right:4px}.chart-tooltip-close:hover{opacity:1}.chart-slider{stroke:var(--summary-chart-slider);stroke-width:1.5px;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.chart-slider-dot{fill:var(--summary-chart-event);stroke:#f5efe2;stroke-width:2px;vector-effect:non-scaling-stroke}.balance-chart-scale{color:var(--summary-chart-text);justify-content:space-between;margin-top:2px;font-family:Montserrat,sans-serif;font-size:11px;display:flex}.chart-zoom-bar{justify-content:flex-end;align-items:center;gap:4px;margin-bottom:4px;display:flex}.chart-zoom-btn,.chart-zoom-level{color:var(--summary-chart-text);font:inherit;cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:6px;padding:0;font-size:13px;line-height:1}.chart-zoom-btn{width:22px;height:22px}.chart-zoom-level{min-width:30px;height:22px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:600}.chart-zoom-btn:hover:not(:disabled),.chart-zoom-level:hover:not(:disabled){background:#ffffff2e}.chart-zoom-btn:disabled,.chart-zoom-level:disabled{opacity:.35;cursor:default}.viz-grid{flex-direction:column;gap:14px;margin-bottom:1.25rem;display:flex}.viz-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);break-inside:avoid;padding:16px 18px;box-shadow:0 1px 3px #0000000a}.viz-title{color:var(--text-primary);letter-spacing:-.2px;font-family:IBM Plex Sans,sans-serif;font-size:15px;font-weight:700}.viz-sub{color:var(--text-muted);margin:2px 0 10px;font-family:Montserrat,sans-serif;font-size:12px;line-height:1.4}.mbc-list{flex-direction:column;gap:9px;margin-top:12px;list-style:none;display:flex}.mbc-row{grid-template-columns:26px minmax(72px,200px) minmax(60px,1fr) auto auto;align-items:center;gap:10px;display:grid}.mbc-icon{background:var(--tint);width:26px;height:26px;color:var(--bar);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.mbc-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-family:Montserrat,sans-serif;font-size:13px;font-weight:600;overflow:hidden}.mbc-track{background:var(--off-white);border-radius:99px;height:10px;overflow:hidden}.mbc-fill{border-radius:99px;gap:3px;height:100%;transition:width .3s;display:flex;overflow:hidden}.mbc-seg{height:100%}.mbc-seg-repl{background:var(--bar)}.mbc-seg-ongoing{background:var(--ongoing)}.mbc-legend{color:var(--text-muted);flex-wrap:wrap;gap:6px 14px;margin:0 0 8px;font-size:11px;display:flex}.mbc-legend-key{align-items:center;gap:5px;display:inline-flex}.mbc-legend-swatch{border-radius:3px;width:10px;height:10px;display:inline-block}.mbc-legend-swatch.repl{background:var(--module-accent,var(--cat-green))}.mbc-legend-swatch.ongoing{background:var(--ongoing)}.mbc-val{color:var(--text-primary);font-variant-numeric:tabular-nums;white-space:nowrap;font-family:IBM Plex Sans,sans-serif;font-size:13px;font-weight:700}.mbc-pct{color:var(--text-muted);font-variant-numeric:tabular-nums;text-align:right;min-width:30px;font-family:Montserrat,sans-serif;font-size:12px;font-weight:700}.cpy-chart{width:100%;height:auto;margin-top:6px;display:block}.cpy-grid{stroke:var(--border);stroke-width:1px;opacity:.6;vector-effect:non-scaling-stroke}.cpy-axis{stroke:var(--text-muted);stroke-width:1px;vector-effect:non-scaling-stroke}.cpy-seg{stroke:var(--white);stroke-width:1px}.cpy-ytick{fill:var(--text-muted);font-variant-numeric:tabular-nums;font-family:Montserrat,sans-serif;font-size:9px}.cpy-xtick{fill:var(--text-secondary);font-variant-numeric:tabular-nums;font-family:Montserrat,sans-serif;font-size:9px}.cpy-xtick.is-overflow{fill:var(--text-muted);font-style:italic}.cpy-total{fill:var(--text-muted);font-family:Montserrat,sans-serif;font-size:9px;font-weight:700}.cpy-col.is-clickable{cursor:pointer}.cpy-col-hit{fill:#0000}.cpy-col.is-clickable:hover .cpy-col-hit{fill:#1428500d}.cpy-col.is-clickable:focus{outline:none}.cpy-col.is-clickable:focus-visible .cpy-col-hit{fill:#14285017}.cpy-col-sel{fill:var(--bf-sky-tint,#eaf4fb)}@media (width<=680px){.mbc-row{grid-template-columns:24px minmax(56px,150px) minmax(50px,1fr) auto auto;gap:7px}.mbc-name,.mbc-val{font-size:12px}}.item-status-row td{border-bottom:1px solid var(--border);padding:0 10px 8px}.item-status-wrap{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.item-status-meta{color:var(--text-muted);font-family:Montserrat,sans-serif;font-size:11px;font-weight:500}.status-badge{letter-spacing:.4px;text-transform:uppercase;border:1px solid #0000;border-radius:99px;align-items:center;gap:5px;padding:3px 10px;font-family:IBM Plex Sans,sans-serif;font-size:11px;font-weight:700;display:inline-flex}.status-badge:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.status-funded{background:var(--green-light);color:var(--green-dark);border-color:color-mix(in srgb, var(--green) 28%, transparent)}.status-recurring{background:var(--blue-light);color:var(--blue-dark);border-color:color-mix(in srgb, var(--blue) 28%, transparent)}.status-ongoing{background:var(--ongoing-soft);color:var(--ongoing-text);border-color:color-mix(in srgb, var(--ongoing) 45%, transparent)}.item-status-ongoing .item-status-meta{color:var(--ongoing-text);opacity:.85}.sc-ongoing-amt{color:var(--ongoing-text)}.sc-repl-amt{color:color-mix(in srgb, var(--module-accent,var(--cat-green)) 80%, #000)}tr.row-ongoing .summary-item-name{color:var(--text-primary)}.status-upcoming{background:var(--off-white);color:var(--text-secondary);border-color:var(--border)}.item-status-upcoming .item-status-meta{font-style:italic}.status-overdue{color:#dc2626;background:#fef2f2;border-color:#dc262659}.summary-table tr.item-overdue td{background:#fdf2f2}.summary-funded{margin:2px 0 14px}.summary-funded-label{letter-spacing:.6px;text-transform:uppercase;color:var(--text-muted);margin-bottom:5px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:700;display:block}.summary-funded .hh-sav-fund{margin:0}.summary-recurring{border:1px solid var(--border);border-left:3px solid var(--bf-amber);border-radius:var(--radius-md);background:color-mix(in srgb, var(--bf-amber) 6%, var(--white));margin:0 0 16px;padding:12px 14px;box-shadow:0 1px 3px #0000000a}.summary-recurring-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.summary-recurring-label{letter-spacing:.6px;text-transform:uppercase;color:var(--text-muted);font-family:Montserrat,sans-serif;font-size:11px;font-weight:700}.summary-recurring-monthly{color:var(--text-secondary);font-size:12.5px}.summary-recurring-controls{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.summary-recurring-input-wrap{border:1px solid var(--bf-amber);background:color-mix(in srgb, var(--bf-amber) 8%, var(--white));border-radius:9px;flex:none;align-items:center;gap:2px;padding:4px 10px;display:inline-flex}.summary-recurring-input-wrap:focus-within{box-shadow:0 0 0 3px color-mix(in srgb, var(--bf-amber) 24%, transparent)}.summary-recurring-dollar{color:var(--text-muted);font-size:14px}.summary-recurring-input-wrap .summary-recurring-input{width:92px;font:inherit;color:var(--text-primary);text-align:right;background:0 0;border:none;padding:0;font-size:15px;font-weight:700}.summary-recurring-input:focus{outline:none}.summary-recurring-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.summary-recurring-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.summary-recurring-input{appearance:textfield}.summary-recurring-gauge{flex-direction:column;flex:200px;gap:4px;min-width:0;display:flex}.summary-recurring-bar{background:color-mix(in srgb, var(--bf-amber) 20%, transparent);border-radius:99px;height:7px;overflow:hidden}.summary-recurring-bar-fill{background:var(--bf-amber);border-radius:99px;height:100%;transition:width .25s;display:block}.summary-recurring-buffered{color:var(--text-secondary);white-space:nowrap;font-size:11.5px;font-weight:600}.summary-recurring-target{color:var(--text-muted);font-weight:500}.summary-recurring .savings-field-note{margin-top:10px}.status-on-track{background:var(--green-light);color:var(--green-dark);border-color:color-mix(in srgb, var(--green) 28%, transparent)}.status-catch-up{background:color-mix(in srgb, var(--copper) 13%, #fff);color:var(--summary-accent-text);border-color:color-mix(in srgb, var(--copper) 32%, transparent)}.status-behind{background:color-mix(in srgb, var(--copper) 18%, #fff);color:var(--summary-accent-text);border-color:color-mix(in srgb, var(--copper) 38%, transparent)}.main-summary-cta{background:linear-gradient(135deg, var(--module-tint,var(--green-light)) 0%, color-mix(in srgb, var(--module-header-cta-bg,var(--green)) 8%, #fff) 100%);border:1px solid color-mix(in srgb, var(--module-header-cta-bg,var(--green)) 34%, transparent);border-radius:var(--radius-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;margin:2rem 0 1rem;padding:1.25rem 1.5rem;display:flex}.main-summary-cta-text{flex:280px}.main-summary-cta-eyebrow{color:var(--module-header-control-text,var(--green-dark));text-transform:uppercase;letter-spacing:.8px;margin-bottom:4px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:700}.main-summary-cta-title{color:var(--text-primary);letter-spacing:-.3px;font-family:IBM Plex Sans,sans-serif;font-size:18px;font-weight:700}.main-summary-cta-sub{color:var(--text-secondary);margin-top:2px;font-family:Montserrat,sans-serif;font-size:13px}.btn-pill.primary.main-summary-cta-btn{background:var(--module-header-cta-bg,var(--green));border-color:var(--module-header-cta-border,var(--green));color:#fff;box-shadow:0 3px 12px color-mix(in srgb, var(--module-header-cta-bg,var(--green)) 24%, transparent);flex-shrink:0;padding:10px 22px;font-size:14px}.btn-pill.primary.main-summary-cta-btn:hover{background:var(--module-header-cta-hover-bg,var(--green-dark));border-color:var(--module-header-cta-hover-border,var(--green-dark));color:#fff}@media (width<=680px){.main-summary-cta{padding:1rem}.main-summary-cta-title{font-size:16px}.main-summary-cta-btn{justify-content:center;width:100%}}@media print{.main-summary-cta{display:none!important}}.projection-controls{margin:8px 0 4px}.projection-slider-wrap{margin-top:4px}.projection-slider-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:4px;display:flex}.projection-slider-label{color:var(--blue-dark);text-transform:uppercase;letter-spacing:.8px;font-family:Montserrat,sans-serif;font-size:12px;font-weight:600}.projection-slider-value{color:var(--text-primary);font-variant-numeric:tabular-nums;font-family:IBM Plex Sans,sans-serif;font-size:13px}.projection-slider-value strong{color:var(--blue-dark)}.projection-slider{appearance:none;background:var(--border);border-radius:99px;outline:none;width:100%;height:6px;margin:2px 0}.projection-slider::-webkit-slider-thumb{appearance:none;background:var(--blue);border:2px solid var(--white);cursor:pointer;width:20px;height:20px;box-shadow:0 1px 4px color-mix(in srgb, var(--blue) 35%, transparent);border-radius:50%;transition:background .15s,transform .15s}.projection-slider::-webkit-slider-thumb:hover{background:var(--blue-dark);transform:scale(1.08)}.projection-slider::-moz-range-thumb{background:var(--blue);border:2px solid var(--white);cursor:pointer;width:20px;height:20px;box-shadow:0 1px 4px color-mix(in srgb, var(--blue) 35%, transparent);border-radius:50%}.projection-slider::-moz-range-thumb:hover{background:var(--blue-dark)}.projection-slider:focus::-webkit-slider-thumb{box-shadow:0 0 0 4px color-mix(in srgb, var(--blue) 18%, transparent)}.projection-slider-scale{color:var(--text-muted);justify-content:space-between;margin-top:4px;font-family:Montserrat,sans-serif;font-size:11px;display:flex}.projection-bar{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);margin:0 0 1.25rem;padding:.7rem 1rem .55rem}.projection-bar-note{text-align:center;letter-spacing:.3px;color:var(--text-muted);margin-top:8px;font-family:Montserrat,sans-serif;font-size:11px}.summary-tabs{background:color-mix(in srgb, var(--green) 10%, #fff);border:1px solid color-mix(in srgb, var(--green) 22%, transparent);border-radius:14px;gap:6px;margin:0 0 1.5rem;padding:6px;display:flex}.summary-tab{appearance:none;letter-spacing:.2px;color:var(--green-dark);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;flex:1;padding:12px 10px;font-family:Montserrat,sans-serif;font-size:14px;font-weight:700;transition:background .15s,color .15s,box-shadow .15s,border-color .15s}.summary-tab:hover{border-color:color-mix(in srgb, var(--green) 22%, transparent);background:#fff}.summary-tab.is-active{background:var(--green);color:#fff;box-shadow:0 2px 8px color-mix(in srgb, var(--green) 32%, transparent);border-color:#0000}.summary-tab.is-active:hover{background:var(--green)}@media (width<=680px){.summary-tab{letter-spacing:0;padding:11px 6px;font-size:13px}}.summary-tab-panel{display:none}.summary-tab-panel.is-active{display:block}.summary-sort{align-items:center;gap:10px;margin:0 0 1rem;display:flex}.summary-sort-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:11.5px;font-weight:700}.summary-sort-btns{background:color-mix(in srgb, var(--green) 10%, #fff);border:1px solid color-mix(in srgb, var(--green) 22%, transparent);border-radius:10px;gap:4px;padding:4px;display:inline-flex}.summary-sort-btn{appearance:none;color:var(--green-dark);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;padding:6px 12px;font-family:Montserrat,sans-serif;font-size:12.5px;font-weight:700;transition:background .15s,color .15s,box-shadow .15s}.summary-sort-btn:hover{background:#fff}.summary-sort-btn.is-active{background:var(--green);color:#fff;box-shadow:0 1px 5px color-mix(in srgb, var(--green) 32%, transparent)}.summary-sort-btn.is-active:hover{background:var(--green)}@media (width<=680px){.summary-tabs.household-report-tabs{flex-wrap:wrap}.summary-tabs.household-report-tabs .summary-tab{flex:calc(50% - 3px)}}.household-tab-placeholder{text-align:center;color:var(--text-muted);margin:2rem 0;font-size:14px}.household-manual-room{border:1px dashed var(--border);border-radius:var(--radius-md);text-align:center;color:var(--text-muted);margin:14px 0 0;padding:10px 14px;font-size:12px}.hsp-windows{flex-direction:column;gap:8px;display:flex}.hsp-window{border:1px solid var(--border);border-radius:var(--radius-md);padding:11px 14px}.hsp-window.is-current{border-left:3px solid var(--green-dark);background:color-mix(in srgb, var(--green) 7%, #fff)}.hsp-window-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.hsp-range{color:var(--text-secondary);font-family:Montserrat,sans-serif;font-size:12px}.hsp-total{color:var(--green-dark);font-variant-numeric:tabular-nums;font-family:IBM Plex Sans,sans-serif;font-size:16px;font-weight:700}.hsp-split{margin-top:5px;font-size:12px;line-height:1.6}.hsp-split-part{color:var(--cat-accent,var(--text-secondary));font-weight:600}.hsp-split-part strong{color:var(--cat-accent,var(--text-secondary));font-weight:700}.hsp-split-sep{color:var(--border);font-weight:400}.badge-completed{background:var(--green-light);color:var(--green-dark);border:1px solid color-mix(in srgb, var(--green) 28%, transparent)}.summary-table tr.item-completed td{background:color-mix(in srgb, var(--green) 8%, #fff)}.summary-table td.projected-life{color:var(--copper);font-weight:600}.wp-sync-status{color:var(--blue-dark,#1f5e94);background:var(--blue-light);text-align:center;border-bottom:1px solid #cfe1f0;padding:8px 16px;font-family:Montserrat,sans-serif;font-size:13px}.wp-sync-status.is-signed-in{color:var(--green-dark);background:var(--green-light);border-bottom-color:#c8eacf}.wp-sync-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 14px;display:flex}.wp-sync-actions{gap:8px;display:inline-flex}.wp-sync-btn{padding:5px 14px;font-size:12px}.wp-sync-btn:disabled{opacity:.6;cursor:default}.wp-sync-msg{font-size:12px;font-weight:600}.wp-sync-msg.is-ok{color:var(--green-dark)}.wp-sync-msg.is-err{color:var(--danger-dark)}.wp-sync-msg.is-warn{color:#8a6d12}.wp-sync-relink{color:var(--danger-dark);font-weight:700;text-decoration:underline}.wp-sync-privacy-toggle{color:var(--blue-dark,#1f5e94);cursor:pointer;text-align:center;background:0 0;border:none;flex-basis:100%;margin-top:2px;padding:0;font-family:Montserrat,sans-serif;font-size:12px;font-weight:600}.wp-sync-privacy{max-width:640px;color:var(--text-secondary);text-align:center;flex-basis:100%;margin:2px auto 0;font-size:12px;font-weight:400;line-height:1.5}a.wp-sync-btn{text-decoration:none}.wp-sync-retry{font:inherit;color:var(--danger-dark);cursor:pointer;background:0 0;border:none;padding:0;font-weight:700;text-decoration:underline}.wp-sync-signout{color:var(--green-dark);align-self:center;font-size:12px;font-weight:600;text-decoration:underline}.wp-sync-signout:hover{color:var(--green)}.site-main:has(#bf-app){width:auto;max-width:none;margin:0;padding:0}.site-main:has(#bf-app)>article{width:auto;max-width:none;margin:0;padding:0}.entry-content:has(#bf-app){width:auto;max-width:none;margin:0;padding:0}#bf-app{max-width:100%}.entry-content:has(#bf-app)>*{margin-top:0!important;margin-bottom:0!important}#bf-app h1,#bf-app h2,#bf-app h3,#bf-app h4,#bf-app p{line-height:1.3;font-weight:inherit;letter-spacing:inherit;margin:0;padding:0}#bf-app .category-title{letter-spacing:-.4px;font-family:IBM Plex Sans,sans-serif;font-size:22px;font-weight:700;line-height:1.2}#bf-app .welcome-title{font-family:IBM Plex Sans,sans-serif;font-size:20px;font-weight:700}#bf-app .summary-title{font-family:IBM Plex Sans,sans-serif;font-size:33px;font-weight:800}#bf-app .ws-head-title{font-family:IBM Plex Sans,sans-serif;font-size:26px;font-weight:800;line-height:1.1}#bf-app .ws-head-sub{font-size:12.5px;line-height:1.4}#bf-app .ai-fill-life-unit{font-size:12px;line-height:1.3}#bf-app .install-note{font-size:12.5px;line-height:1.45}#bf-app .info-dot{font-size:13px}#bf-app .info-dot-labeled,#bf-app .list-toggle{font-size:12.5px}@media (width<=680px){#bf-app .category-title{font-size:16px;line-height:1.25}#bf-app .welcome-title{font-size:17px}#bf-app .summary-title{font-size:24px}}#bf-app .app{min-height:0}#bf-app{overflow-x:clip}@media screen and (width>=783px){body.admin-bar #bf-app .ws-rail,body.admin-bar #bf-app .ws-context{height:calc(100vh - 32px);top:32px}body.admin-bar #bf-app .ws{min-height:calc(100vh - 32px)}}.plan-tools{flex-wrap:wrap;justify-content:flex-start;align-items:stretch;gap:8px;margin:0 0 12px;display:flex}.list-toggle{cursor:pointer;height:36px;font:inherit;border:1px solid var(--border,#e4e2dc);background:var(--card-bg,#fff);color:var(--text-secondary,#555);border-radius:10px;align-items:center;gap:6px;padding:0 12px;font-size:12.5px;font-weight:600;transition:border-color .12s,color .12s,box-shadow .12s;display:inline-flex}.list-toggle svg{color:var(--text-muted,#97a0b2);flex:none;transition:color .12s}.list-toggle:hover{border-color:var(--module-accent,var(--bf-sky,#0284c7));color:var(--module-accent,var(--bf-sky,#0284c7));box-shadow:0 2px 7px #141e320f}.list-toggle:hover svg{color:var(--module-accent,var(--bf-sky,#0284c7))}:root[data-theme=dark] .app .list-toggle{color:#aeb6c2;background:#1b2430;border-color:#2a3441}:root[data-theme=dark] .app .list-toggle svg{color:#8b94a3}.info-dot{width:36px;font:inherit;color:var(--bf-sky,#0284c7);cursor:pointer;background:#f3f7fc;border:1px solid #dfe8f3;border-radius:10px;flex:none;justify-content:center;align-items:center;gap:5px;padding:0;font-size:13px;font-weight:700;line-height:1;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.info-dot:hover{background:#e7f0fb;border-color:#c9dcf0}.info-dot.is-open,.info-dot[aria-expanded=true]{background:#e0ecf8;border-color:#bcd4ed}.info-dot-labeled{color:#5a6472;width:auto;padding:0 13px;font-size:12.5px;font-weight:600}.info-dot-labeled .info-dot-i{color:var(--bf-sky,#0284c7);font-size:13px}:root[data-theme=dark] .app .info-dot{color:var(--bf-sky,#4ba3e0);background:#1b2430;border-color:#2a3441}:root[data-theme=dark] .app .info-dot:hover,:root[data-theme=dark] .app .info-dot[aria-expanded=true]{background:#232c3a;border-color:#34404f}:root[data-theme=dark] .app .info-dot-labeled{color:#aeb6c2}.ai-spark{transform-origin:50%;animation:2.4s ease-in-out infinite ai-spark-twinkle;display:inline-block}.module-card-generate .module-card-icon{transform-origin:50%;animation:2.4s ease-in-out infinite ai-spark-twinkle}.ai-spark{animation-delay:.4s}.module-card-generate .module-card-icon{animation-delay:.8s}@keyframes ai-spark-twinkle{0%,to{opacity:.82;transform:scale(1)rotate(0)}45%{opacity:1;transform:scale(1.22)rotate(11deg)}70%{opacity:.92;transform:scale(.97)rotate(-5deg)}}@media (prefers-reduced-motion:reduce){.ai-spark,.module-card-generate .module-card-icon{animation:none}}.modal.ai-fill{text-align:left;width:100%;max-width:560px}@media (width<=680px){.modal-backdrop.ai-fill-backdrop{z-index:80;padding:16px 9.6px calc(84px + env(safe-area-inset-bottom,0px));align-items:flex-start;overflow-y:auto}.modal.ai-fill{max-width:100%;max-height:none;padding:1.5rem 1.25rem;overflow:visible}}.ai-fill-lead{color:#555;margin:6px 0 12px;font-size:13.5px;line-height:1.55}.ai-fill-textarea{box-sizing:border-box;resize:vertical;width:100%;min-height:110px;font:inherit;border:1px solid #ccc;border-radius:8px;padding:10px 12px;font-size:14px;line-height:1.5}.ai-fill-textarea:focus{outline:2px solid var(--module-accent,#3f8f57);border-color:#0000}.ai-fill-privacy{color:#8a8f99;margin:12px 0 0;font-size:11.5px;line-height:1.5}.ai-examples{margin:12px 0 0}.ai-examples-label{text-transform:uppercase;letter-spacing:.04em;color:#999;margin-bottom:6px;font-size:11.5px;font-weight:600;display:block}.ai-example-chips{flex-wrap:wrap;gap:6px;display:flex}.ai-example-chip{font:inherit;cursor:pointer;color:var(--module-accent,#3f8f57);background:color-mix(in srgb, var(--module-accent,#3f8f57) 8%, #fff);border:1px solid color-mix(in srgb, var(--module-accent,#3f8f57) 35%, #ddd);border-radius:999px;padding:5px 11px;font-size:12.5px;line-height:1.3;transition:background .12s,border-color .12s}.ai-example-chip:hover{background:color-mix(in srgb, var(--module-accent,#3f8f57) 16%, #fff);border-color:var(--module-accent,#3f8f57)}.ai-example-chip-block{text-align:left;color:#555;border-radius:8px;width:100%;font-style:italic;display:block}.ai-fill-questions{margin:14px 0 0}.ai-fill-questions-label{text-transform:uppercase;letter-spacing:.04em;color:#999;margin-bottom:8px;font-size:11.5px;font-weight:600;display:block}.ai-fill-q-grid{grid-template-columns:1fr 1fr;align-items:end;gap:10px 14px;display:grid}.ai-fill-q{flex-direction:column;gap:4px;min-width:0;display:flex}.ai-fill-q-label{color:#555;font-size:12px;font-weight:600}.ai-fill-q-inputwrap{align-items:center;gap:6px;display:flex}.ai-fill-q-input,.ai-fill-q-select{font:inherit;box-sizing:border-box;color:#1a1a1a;background:#fff;border:1px solid #ccc;border-radius:7px;width:100%;padding:7px 9px;font-size:13px}.ai-fill-q-input:focus,.ai-fill-q-select:focus{outline:2px solid var(--module-accent,#3f8f57);border-color:#0000}.ai-fill-q-unit{color:#888;flex:none;font-size:12px}.ai-fill-q-checks{grid-column:1/-1}.ai-fill-q-checkrow{flex-wrap:wrap;gap:6px 14px;display:flex}.ai-fill-q-check{color:#444;cursor:pointer;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.ai-fill-q-check input{margin:0}@media (width<=680px){.ai-fill-q-grid{grid-template-columns:1fr}}.ai-fill-horizon{flex-wrap:wrap;align-items:center;gap:6px 10px;margin:14px 0 0;display:flex}.ai-fill-horizon-label{color:#555;font-size:13px;font-weight:600}.ai-fill-horizon-field{flex:none}.ai-fill-horizon-input{width:74px}.ai-fill-horizon-hint{color:#8a8f99;flex:100%;font-size:11.5px;line-height:1.5}.ai-fill-horizon-note{font-weight:600}.ai-fill-attach{margin:12px 0 0}.ai-fill-file-input{display:none}.ai-fill-attach-btn{font:inherit;cursor:pointer;color:var(--module-accent,#3f8f57);background:color-mix(in srgb, var(--module-accent,#3f8f57) 7%, #fff);border:1px dashed color-mix(in srgb, var(--module-accent,#3f8f57) 45%, #ccc);border-radius:8px;align-items:center;gap:7px;padding:9px 13px;font-size:13px;font-weight:600;transition:background .12s,border-color .12s;display:inline-flex}.ai-fill-attach-btn:hover{background:color-mix(in srgb, var(--module-accent,#3f8f57) 14%, #fff);border-color:var(--module-accent,#3f8f57)}.ai-fill-doc-chip{background:color-mix(in srgb, var(--module-accent,#3f8f57) 8%, #fff);border:1px solid color-mix(in srgb, var(--module-accent,#3f8f57) 25%, #ddd);border-radius:8px;align-items:center;gap:8px;padding:8px 10px;display:flex}.ai-fill-doc-icon{flex:none;font-size:15px}.ai-fill-doc-name{color:#1a1a1a;white-space:nowrap;text-overflow:ellipsis;max-width:45%;font-size:13px;font-weight:600;overflow:hidden}.ai-fill-doc-meta{color:#777;flex:auto;font-size:12px}.ai-fill-doc-remove{cursor:pointer;color:#999;background:0 0;border:none;flex:none;padding:0 2px;font-size:18px;line-height:1}.ai-fill-doc-remove:hover{color:#b4231f}.ai-fill-doc-note{margin:8px 0 0;font-size:12.5px;line-height:1.45}.ai-fill-doc-warn{color:#8a5a00;background:#fdf5e6;border:1px solid #f0d9a8;border-radius:8px;padding:8px 10px}.ai-fill-doc-remove-inline{cursor:pointer;font:inherit;color:#8a5a00;background:0 0;border:none;padding:0 0 0 6px;font-size:12.5px;font-weight:600;text-decoration:underline}.ai-fill-spinner-sm{border-width:2px;width:16px;height:16px}.ai-fill-note{color:#6a5a3a;background:#fdf8ec;border:1px solid #f0e2c0;border-radius:8px;margin:2px 0 10px;padding:8px 10px;font-size:12.5px;line-height:1.45}.ai-fill-note strong{color:#5a4a2a}.ai-fill-custom-lead{margin-top:14px}.ai-fill-row-custom{align-items:flex-start}.ai-fill-custom-name{font:inherit;color:#1a1a1a;box-sizing:border-box;background:#fff;border:1px solid #ddd;border-radius:6px;width:100%;padding:5px 8px;font-size:14px;font-weight:600}.ai-fill-custom-name:focus{outline:2px solid var(--module-accent,#3f8f57);border-color:#0000}.ai-fill-custom-fields{flex-wrap:wrap;flex:1 0 100%;align-items:center;gap:8px 14px;padding-left:26px;display:flex}.ai-fill-custom-cost{align-items:center;gap:2px;display:inline-flex}.ai-fill-cost-prefix{color:#666;font-size:13px}.ai-fill-custom-cost .ai-fill-cost-input{width:72px;font:inherit;text-align:right;box-sizing:border-box;border:1px solid #ccc;border-radius:6px;padding:5px 7px;font-size:13px}.ai-intent-row{flex-wrap:wrap;gap:8px;margin:2px 0 14px;display:flex}.ai-intent-card{text-align:left;cursor:pointer;min-width:0;font:inherit;background:#fff;border:1px solid #ddd;border-radius:10px;flex-direction:column;flex:140px;gap:3px;padding:9px 11px;display:flex}.ai-intent-card:hover{border-color:var(--module-accent,#3f8f57)}.ai-intent-card.is-active{border-color:var(--module-accent,#3f8f57);background:var(--module-tint,#eef6f0);box-shadow:inset 0 0 0 1px var(--module-accent,#3f8f57)}.ai-intent-label{color:#1a1a1a;font-size:13px;font-weight:700}.ai-intent-hint{color:#777;font-size:11.5px;line-height:1.35}.ai-goal-newsubject{color:#777;margin:10px 0 0;font-size:12.5px;line-height:1.5}.ai-goal-newsubject-btn{font:inherit;color:var(--module-accent,#3f8f57);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline}.ai-fill-loading{text-align:center;color:#555;flex-direction:column;align-items:center;gap:14px;padding:28px 8px;display:flex}.ai-fill-spinner{border:3px solid color-mix(in srgb, var(--module-accent,#3f8f57) 30%, #e6e6e6);border-top-color:var(--module-accent,#3f8f57);border-radius:50%;width:30px;height:30px;animation:.8s linear infinite ai-fill-spin}@keyframes ai-fill-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.ai-fill-spinner{animation:none}}.ai-fill-state{padding:6px 0 0}.ai-fill-error-msg{color:#b4231f;margin:0 0 8px;font-size:14px}.ai-fill-list{flex-direction:column;gap:6px;max-height:42vh;margin:4px 0 10px;padding-right:2px;display:flex;overflow-y:auto}.ai-fill-row{cursor:pointer;border:1px solid #e6e6e6;border-radius:8px;flex-wrap:wrap;align-items:flex-start;gap:8px 10px;padding:10px 12px;display:flex}.ai-fill-row.is-off{opacity:.55}.ai-fill-row>input[type=checkbox]{width:16px;height:16px;accent-color:var(--module-accent,#3f8f57);flex:none;margin-top:2px}.ai-fill-row-main{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.ai-fill-row-name{color:#1a1a1a;overflow-wrap:break-word;font-size:14px;font-weight:600;line-height:1.35}.ai-fill-row-cat{color:#888;font-size:11.5px}.ai-fill-row-guess{background:var(--bf-amber-tint,#fef3c7);color:var(--bf-amber-deep,#b45309);letter-spacing:.3px;text-transform:uppercase;vertical-align:middle;border-radius:99px;margin-left:6px;padding:0 7px;font-size:10.5px;font-weight:700;display:inline-block}.ai-fill-row-life{flex:none;align-items:center;gap:5px;display:flex}.ai-fill-row-recur{white-space:nowrap;color:var(--bf-amber-deep,#b45309);cursor:pointer;flex:none;align-items:center;gap:5px;font-size:11.5px;font-weight:600;line-height:1.3;display:inline-flex}.ai-fill-row-recur input[type=checkbox]{width:13px;height:13px;accent-color:var(--bf-amber-deep,#b45309);margin:0}.ai-fill-row-recur input[type=checkbox]:disabled+span{opacity:.55}.ai-fill-life-unit{color:#666;white-space:nowrap;font-size:12px;line-height:1.3}.ai-fill-dropped{color:#999;margin:2px 0 0;font-size:12px}.ai-fill-row-fields{flex-wrap:wrap;flex:1 0 100%;align-items:center;gap:8px 16px;padding-left:26px;display:flex}.ai-fill-row-qty{flex:none;align-items:center;gap:4px;display:inline-flex}.ai-fill-row-qty .ai-fill-qty-input{width:60px;font:inherit;text-align:right;box-sizing:border-box;border:1px solid #ccc;border-radius:6px;padding:5px 7px;font-size:13px}.ai-fill-row-qty .ai-fill-qty-input:focus{outline:2px solid var(--module-accent,#3f8f57);border-color:#0000}.ai-fill-qty-unit{color:#888;white-space:nowrap;text-overflow:ellipsis;max-width:120px;font-size:11px;line-height:1.2;overflow:hidden}.ai-fill-row-update{border-left:3px solid var(--module-accent,#3f8f57)}.ai-fill-row-guess.ai-fill-row-was{color:#4a5a6d;text-transform:none;letter-spacing:0;background:#eef2f7}.ai-submit-cost{opacity:.85;font-size:12px;font-weight:500}.ai-submit-note{border-top:1px solid #eceff3;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 16px;margin-top:14px;padding-top:10px;display:flex}.ai-submit-caption{color:#8a8f99;text-align:left;flex:240px;min-width:0;margin:0;font-size:11.5px;line-height:1.5}.ws-ai-meter-modal{flex:0 200px;min-width:160px}.ai-gen-name{flex-direction:column;gap:4px;margin:0 0 12px;display:flex}.ai-gen-name-label{color:#555;font-size:12px;font-weight:600}.ai-gen-name input{box-sizing:border-box;width:100%;font:inherit;border:1px solid #ccc;border-radius:8px;padding:8px 10px;font-size:15px;font-weight:600}.ai-gen-name input:focus{outline:2px solid var(--module-accent,#3f8f57);border-color:#0000}.ai-gen-group{flex-direction:column;gap:6px;display:flex}.ai-gen-group+.ai-gen-group{margin-top:10px}.ai-gen-cat{letter-spacing:.04em;text-transform:uppercase;color:#888;padding:2px 2px 0;font-size:11.5px;font-weight:700}.module-card-generate .module-card-icon{font-size:20px;line-height:1}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=dark] body{background:#0f141d}:root[data-theme=dark] .app{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text-primary);--off-white:#0f141d;--white:#1c2431;--card-bg:#1c2431;--border:#2c3645;--text-primary:#e7eaef;--text-secondary:#aeb6c2;--text-muted:#828c9a;--shadow:0 1px 3px #00000080, 0 6px 18px #0006;--shadow-hover:0 2px 8px #0000008c, 0 10px 26px #00000073;--ongoing:#c3ccd8;--ongoing-soft:#2c3645;--ongoing-text:#e7eaef;--brand-ink:#e9edf3;--cm-surface:#161d28;--green-light:color-mix(in srgb, var(--green) 18%, #151c27);--blue-light:color-mix(in srgb, var(--blue) 18%, #151c27);--cat-green-bg:color-mix(in srgb, var(--cat-green) 26%, #151c27);--cat-clay-bg:color-mix(in srgb, var(--cat-clay) 26%, #151c27);--cat-amber-bg:color-mix(in srgb, var(--cat-amber) 26%, #151c27);--cat-teal-bg:color-mix(in srgb, var(--cat-teal) 26%, #151c27);--cat-blue-bg:color-mix(in srgb, var(--cat-blue) 26%, #151c27);--cat-plum-bg:color-mix(in srgb, var(--cat-plum) 26%, #151c27);--cat-home-1-bg:color-mix(in srgb, var(--cat-home-1) 28%, #151c27);--cat-home-2-bg:color-mix(in srgb, var(--cat-home-2) 26%, #151c27);--cat-home-3-bg:color-mix(in srgb, var(--cat-home-3) 24%, #151c27);--cat-home-4-bg:color-mix(in srgb, var(--cat-home-4) 22%, #151c27);--cat-home-5-bg:color-mix(in srgb, var(--cat-home-5) 20%, #151c27);--cat-vehicle-1-bg:color-mix(in srgb, var(--cat-vehicle-1) 28%, #151c27);--cat-vehicle-2-bg:color-mix(in srgb, var(--cat-vehicle-2) 26%, #151c27);--cat-vehicle-3-bg:color-mix(in srgb, var(--cat-vehicle-3) 24%, #151c27);--cat-vehicle-4-bg:color-mix(in srgb, var(--cat-vehicle-4) 22%, #151c27);--cat-vehicle-5-bg:color-mix(in srgb, var(--cat-vehicle-5) 20%, #151c27);--cat-tech-1-bg:color-mix(in srgb, var(--cat-tech-1) 28%, #151c27);--cat-tech-2-bg:color-mix(in srgb, var(--cat-tech-2) 26%, #151c27);--cat-tech-3-bg:color-mix(in srgb, var(--cat-tech-3) 24%, #151c27);--cat-tech-4-bg:color-mix(in srgb, var(--cat-tech-4) 22%, #151c27);--cat-tech-5-bg:color-mix(in srgb, var(--cat-tech-5) 20%, #151c27);--cat-pet-1-bg:color-mix(in srgb, var(--cat-pet-1) 28%, #151c27);--cat-pet-2-bg:color-mix(in srgb, var(--cat-pet-2) 26%, #151c27);--cat-pet-3-bg:color-mix(in srgb, var(--cat-pet-3) 24%, #151c27);--cat-pet-4-bg:color-mix(in srgb, var(--cat-pet-4) 22%, #151c27);--cat-pet-5-bg:color-mix(in srgb, var(--cat-pet-5) 20%, #151c27);--cat-travel-1-bg:color-mix(in srgb, var(--cat-travel-1) 28%, #151c27);--cat-travel-2-bg:color-mix(in srgb, var(--cat-travel-2) 26%, #151c27);--cat-travel-3-bg:color-mix(in srgb, var(--cat-travel-3) 24%, #151c27);--cat-travel-4-bg:color-mix(in srgb, var(--cat-travel-4) 22%, #151c27);--cat-travel-5-bg:color-mix(in srgb, var(--cat-travel-5) 20%, #151c27)}:root[data-theme=dark] .app .component-table tbody tr:hover{background:#222b39}:root[data-theme=dark] .app .component-table tbody tr.row-warning{background:#2a1c1e}:root[data-theme=dark] .app .component-table tbody tr.row-warning:hover{background:#321f22}:root[data-theme=dark] .app .main-summary-cta{background:linear-gradient(135deg, var(--module-tint,var(--green-light)) 0%, color-mix(in srgb, var(--module-header-cta-bg,var(--green)) 16%, #1c2431) 100%)}:root[data-theme=dark] .app .ai-fill-lead,:root[data-theme=dark] .app .ai-fill-loading,:root[data-theme=dark] .app .ai-example-chip-block{color:var(--text-secondary)}:root[data-theme=dark] .app .ai-submit-caption{color:var(--text-muted)}:root[data-theme=dark] .app .ai-submit-note{border-top-color:#2c3648}:root[data-theme=dark] .app .ai-fill-row-guess.ai-fill-row-was{background:color-mix(in srgb, var(--module-accent,#3f8f57) 12%, #1c2431);color:var(--text-secondary)}:root[data-theme=dark] .app .ai-fill-row-recur{color:var(--bf-amber)}:root[data-theme=dark] .app .ai-fill-row-recur input[type=checkbox]{accent-color:var(--bf-amber)}:root[data-theme=dark] .app .ai-intent-card{background:#1c2431;border-color:#2c3648}:root[data-theme=dark] .app .ai-intent-card.is-active{background:color-mix(in srgb, var(--module-accent,#3f8f57) 16%, #1c2431)}:root[data-theme=dark] .app .ai-intent-label{color:var(--text-primary,#e7eaef)}:root[data-theme=dark] .app .ai-intent-hint,:root[data-theme=dark] .app .ai-goal-newsubject,:root[data-theme=dark] .app .ai-fill-privacy,:root[data-theme=dark] .app .ai-examples-label,:root[data-theme=dark] .app .ai-fill-questions-label,:root[data-theme=dark] .app .ai-fill-horizon-label,:root[data-theme=dark] .app .ai-fill-horizon-hint,:root[data-theme=dark] .app .ai-fill-q-unit,:root[data-theme=dark] .app .ai-fill-doc-meta,:root[data-theme=dark] .app .ai-fill-dropped,:root[data-theme=dark] .app .ai-fill-row-cat,:root[data-theme=dark] .app .ai-fill-life-unit,:root[data-theme=dark] .app .ai-fill-qty-unit,:root[data-theme=dark] .app .ai-fill-cost-prefix,:root[data-theme=dark] .app .ai-gen-cat,:root[data-theme=dark] .app .ai-gen-name-label{color:var(--text-muted)}:root[data-theme=dark] .app .ai-fill-row-name,:root[data-theme=dark] .app .ai-fill-doc-name,:root[data-theme=dark] .app .ai-fill-q-label,:root[data-theme=dark] .app .ai-fill-q-check{color:var(--text-primary)}:root[data-theme=dark] .app .ai-fill-textarea,:root[data-theme=dark] .app .ai-fill-custom-name,:root[data-theme=dark] .app .ai-fill-cost-input,:root[data-theme=dark] .app .ai-fill-qty-input,:root[data-theme=dark] .app .ai-fill-q-input,:root[data-theme=dark] .app .ai-fill-q-select,:root[data-theme=dark] .app .ai-gen-name input{color:var(--text-primary);border-color:var(--border);background:#141a24}:root[data-theme=dark] .app .ai-fill-textarea::placeholder,:root[data-theme=dark] .app .ai-fill-custom-name::placeholder,:root[data-theme=dark] .app .ai-fill-cost-input::placeholder{color:var(--text-muted)}:root[data-theme=dark] .app .ai-example-chip,:root[data-theme=dark] .app .ai-fill-doc-chip{background:color-mix(in srgb, var(--module-accent,#3f8f57) 14%, #1c2431);border-color:color-mix(in srgb, var(--module-accent,#3f8f57) 38%, transparent)}:root[data-theme=dark] .app .ai-example-chip:hover{background:color-mix(in srgb, var(--module-accent,#3f8f57) 24%, #1c2431)}:root[data-theme=dark] .app .ai-fill-attach-btn{background:color-mix(in srgb, var(--module-accent,#3f8f57) 12%, #1c2431);border-color:color-mix(in srgb, var(--module-accent,#3f8f57) 45%, transparent)}:root[data-theme=dark] .app .ai-fill-attach-btn:hover{background:color-mix(in srgb, var(--module-accent,#3f8f57) 20%, #1c2431)}:root[data-theme=dark] .app .ai-fill-row{border-color:var(--border)}:root[data-theme=dark] .app .ai-fill-doc-warn{background:color-mix(in srgb, var(--bf-amber,#f5a623) 16%, #161d28);border:1px solid color-mix(in srgb, var(--bf-amber,#f5a623) 32%, transparent);color:#f0c987}:root[data-theme=dark] .app .ai-fill-doc-remove-inline{color:#f0c987}:root[data-theme=dark] .btn-pill:not(.primary):not(.danger):hover,:root[data-theme=dark] .btn-pill:not(.primary):not(.danger):active{color:#e7eaef;background:#232c3a;border-color:#3a4554}:root[data-theme=dark] .summary-backdrop{--summary-accent-light:color-mix(in srgb, var(--copper) 18%, #1c2431);--summary-overview-bg:linear-gradient(135deg, var(--module-tint,var(--green-light)) 0%, color-mix(in srgb, var(--module-header-cta-bg,var(--green)) 16%, #1c2431) 100%)}:root[data-theme=dark] .summary-tabs{background:color-mix(in srgb, var(--green) 16%, #161d28);border-color:color-mix(in srgb, var(--green) 30%, transparent)}:root[data-theme=dark] .summary-tab{color:#c4ccd6}:root[data-theme=dark] .summary-tab.is-active{color:#fff}:root[data-theme=dark] .summary-tab:hover{background:#232c3a}:root[data-theme=dark] .summary-sort-btns{background:color-mix(in srgb, var(--green) 16%, #161d28);border-color:color-mix(in srgb, var(--green) 30%, transparent)}:root[data-theme=dark] .summary-sort-btn{color:#c4ccd6}:root[data-theme=dark] .summary-sort-btn.is-active{color:#fff}:root[data-theme=dark] .summary-sort-btn:hover{background:#232c3a}:root[data-theme=dark] .summary-sort-btn.is-active:hover{background:var(--green)}:root[data-theme=dark] .overview-hero-value,:root[data-theme=dark] .overview-stat-value,:root[data-theme=dark] .overview-breakdown-amt{color:#f2f4f7}:root[data-theme=dark] .overview-hero-label,:root[data-theme=dark] .overview-stat-label{color:#b9c3d2}:root[data-theme=dark] .overview-stat-value.muted{color:#aeb6c2}:root[data-theme=dark] .reserve-fund-panel{background:linear-gradient(135deg, var(--module-tint,var(--green-light)) 0%, color-mix(in srgb, var(--module-header-cta-bg,var(--green)) 12%, #161d28) 100%)}:root[data-theme=dark] .summary-table tr.item-completed td{background:color-mix(in srgb, var(--green) 16%, #1c2431)}:root[data-theme=dark] .summary-table tr.item-overdue td{background:#3b242f}@media (width<=680px){.summary-table tbody tr.item-completed td,.summary-table tbody tr.item-overdue td,:root[data-theme=dark] .summary-table tbody tr.item-completed td,:root[data-theme=dark] .summary-table tbody tr.item-overdue td{background:0 0}.summary-table tbody tr.item-completed:not(.item-status-row),.summary-table tbody tr.item-status-funded{background:color-mix(in srgb, var(--green) 9%, var(--white))}.summary-table tbody tr.item-overdue:not(.item-status-row),.summary-table tbody tr.item-status-overdue{background:color-mix(in srgb, #dc2626 9%, var(--white))}}:root[data-theme=dark] .household-modal,:root[data-theme=dark] .guide-modal,:root[data-theme=dark] .ecal-modal{--bf-ink:#e7eaef;--bf-ink-2:#c4ccd6;--bf-ink-3:#9aa3b2;--bf-line:#2c3645;--bf-sky-tint:color-mix(in srgb, var(--bf-sky) 24%, #161d28);--bf-sky-tint-2:color-mix(in srgb, var(--bf-sky) 14%, #161d28);--bf-amber-tint:color-mix(in srgb, var(--bf-amber) 22%, #161d28);background:#141a24}:root[data-theme=dark] .hh-em{--bf-em:#2dd4bf}:root[data-theme=dark] .hh-acct{--bf-money:#4ade80}:root[data-theme=dark] .hh-section,:root[data-theme=dark] .hh-pinned,:root[data-theme=dark] .hh-budget,:root[data-theme=dark] .hh-sav-row,:root[data-theme=dark] .hh-upk-row,:root[data-theme=dark] .hh-sav-input-wrap,:root[data-theme=dark] .hh-cpy-chip,:root[data-theme=dark] .hh-cpy-step,:root[data-theme=dark] .hh-tab.is-on,:root[data-theme=dark] .hh-mtab.is-on{background:#1c2431}:root[data-theme=dark] .hh-coming-list>li+li .hh-coming-row{border-top-color:#2c3645}:root[data-theme=dark] .hh-coming{border-color:#2c3645}:root[data-theme=dark] .hh-coming-row:hover{background:#232c3a}:root[data-theme=dark] .hh-coming-row.overdue{background:#2a1c1e}:root[data-theme=dark] .hh-coming-row.overdue:hover{background:#321f22}:root[data-theme=dark] .hh-coming-note{color:#f0a59a;background:#2a1c1e;border-color:#5a2e2e}:root[data-theme=dark] .hh-coming-note strong{color:#f4b7ad}:root[data-theme=dark] .hh-day.wet{border-color:color-mix(in srgb, var(--bf-amber) 32%, #161d28)}:root[data-theme=dark] .hh-room-verdict.gap{border-color:color-mix(in srgb, var(--bf-amber) 34%, #161d28)}:root[data-theme=dark] .hh-room-verdict.gap .hh-room-line strong{color:#fbbf24}:root[data-theme=dark] .hh-window-warn{border-color:color-mix(in srgb, var(--bf-amber) 34%, #161d28);color:#fbbf24}:root[data-theme=dark] .hh-window-warn:hover{color:#161d28}:root[data-theme=dark] .hh-room-chip:hover{color:#7dd3fc;border-color:#7dd3fc}:root[data-theme=dark] .ecal-eyebrow{color:#7dd3fc}:root[data-theme=dark] .ecal-chip{background:#1c2431;border-color:#2c3645}:root[data-theme=dark] .ecal-chip:hover{background:#232c3a}:root[data-theme=dark] .ecal-chip.is-on{color:#fff}:root[data-theme=dark] .ecal-overdue{background:#2a1c1e;border-color:#5a2e2e}:root[data-theme=dark] .ecal-overdue-text{color:#f0a59a}:root[data-theme=dark] .ecal-overdue-text strong,:root[data-theme=dark] .ecal-overdue-toggle{color:#f4b7ad}:root[data-theme=dark] .ecal-overdue-note{color:#f0a59a}:root[data-theme=dark] .ecal-overdue .ecal-row{background:#1c2431;box-shadow:inset 3px 0 #e06a6a}:root[data-theme=dark] .ecal-overdue .ecal-row .ecal-amt{color:#f4b7ad}:root[data-theme=dark] .ecal-mname,:root[data-theme=dark] .ecal-now{color:#7dd3fc}:root[data-theme=dark] .ecal-month.is-quiet .ecal-mhead{border-bottom-color:#232c3a}:root[data-theme=dark] .ecal-month.is-quiet .ecal-mname,:root[data-theme=dark] .ecal-month.is-quiet .ecal-mtot{color:#707b8a}:root[data-theme=dark] .ecal-list>.ecal-item+.ecal-item .ecal-row{border-top-color:#2c3645}:root[data-theme=dark] .ecal-facts .ecal-fact-overdue{color:#f4b7ad}:root[data-theme=dark] .ecal-detail{background:color-mix(in srgb, var(--cat-accent,var(--bf-sky)) 12%, #161d28);border-color:color-mix(in srgb, var(--cat-accent,var(--bf-sky)) 34%, #161d28)}:root[data-theme=dark] .ecal-overdue .ecal-detail{background:#1c2431;border-color:#4a2c2c}:root[data-theme=dark] .ecal-open-budget{background:0 0}:root[data-theme=dark] .ecal-open-budget:hover{background:color-mix(in srgb, var(--cat-accent,var(--bf-sky)) 18%, #161d28)}:root[data-theme=dark] .ecal-later-toggle{color:#7dd3fc}:root[data-theme=dark] .hh-coming-full{color:#7dd3fc;background:#1c2431;border-color:#2c4358}:root[data-theme=dark] .hh-coming-full:hover{background:#232c3a}.is-locked{opacity:.72;position:relative}.is-locked:hover{opacity:.85}.lock-badge{background:var(--module-accent,#3f8f57);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex;position:absolute;top:6px;right:6px;box-shadow:0 1px 3px #00000040}.module-card .lock-badge{background:var(--bf-ink-3,#6b7686)}.btn-pill .lock-badge,.ws-newbudget .lock-badge,.hh-add .lock-badge{color:currentColor;width:15px;height:15px;box-shadow:none;background:0 0;margin-left:6px;position:static}.upgrade-dialog{text-align:center;max-width:420px}.upgrade-dialog-icon{margin:2px 0 4px;font-size:30px;line-height:1;display:block}.upgrade-dialog-body{color:var(--text-secondary,#555);margin:0 0 1.25rem;font-size:14px;line-height:1.5}.upgrade-dialog .confirm-actions{justify-content:center}.upgrade-dialog-cta{align-items:center;text-decoration:none;display:inline-flex}.upgrade-dialog-trial{color:var(--bf-sky,#0284c7);margin:-.5rem 0 1rem;font-size:13px;font-weight:600;line-height:1.45}.upgrade-dialog-error{color:#dc2626;margin:-.25rem 0 .75rem;font-size:13px}:root[data-theme=dark] .upgrade-dialog{background:#1c2431}:root[data-theme=dark] .upgrade-dialog .confirm-title{color:#e7eaef}:root[data-theme=dark] .upgrade-dialog-body{color:#aeb6c2}:root[data-theme=dark] .upgrade-dialog-trial{color:#5cc0f0}.replog-capture{text-align:left;max-width:430px}.replog-fields{flex-direction:column;gap:.7rem;margin:.9rem 0 .2rem;display:flex}.replog-field{flex-direction:column;gap:.25rem;display:flex}.replog-field>span{color:var(--text-secondary);font-size:.8rem;font-weight:600}.replog-field input{box-sizing:border-box;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);width:100%;color:var(--text-primary);padding:.5rem .6rem;font-size:.95rem}.replog-field input:focus{border-color:var(--module-accent,var(--green));box-shadow:0 0 0 2px color-mix(in srgb, var(--module-accent,var(--green)) 22%, transparent);outline:none}.replog-head{margin-bottom:1rem;padding-right:2rem}.replog-eyebrow{letter-spacing:.7px;text-transform:uppercase;color:var(--module-accent,var(--green));margin-bottom:2px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:700;display:block}.replog-title{letter-spacing:-.5px;color:var(--text-primary);margin:0 0 6px;font-family:IBM Plex Sans,sans-serif;font-size:28px;font-weight:800;line-height:1.08}.replog-lead{color:var(--text-secondary);max-width:62ch;margin:.5rem 0 0;font-size:.95rem}.replog-stat{color:var(--text-muted);margin:.5rem 0 0;font-size:.9rem}.replog-empty{text-align:center;color:var(--text-secondary);padding:2.4rem 1rem}.replog-empty-sub{color:var(--text-muted);max-width:48ch;margin:.4rem auto 0;font-size:.9rem}.replog-year{margin-top:1.3rem}.replog-year-title{color:var(--text-primary);border-bottom:2px solid color-mix(in srgb, var(--module-accent,var(--green)) 30%, var(--border));margin:0 0 .6rem;padding-bottom:.3rem;font-size:1.05rem;font-weight:700}.replog-list{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.replog-entry{border:1px solid var(--border);border-radius:var(--radius-md);border-left:3px solid var(--module-accent,var(--green));background:var(--card-bg);padding:.7rem .85rem}.replog-entry-head{align-items:center;gap:.5rem;display:flex}.replog-entry-name{color:var(--text-primary);flex-wrap:wrap;align-items:center;gap:.4rem;font-size:1rem;font-weight:600;display:inline-flex}.replog-entry-cat{color:var(--text-muted);font-size:.82rem}.replog-tag{text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:.08rem .42rem;font-size:.66rem;font-weight:700}.replog-tag-recur{background:color-mix(in srgb, var(--ongoing,#1a1a1a) 12%, transparent);color:var(--ongoing,#1a1a1a)}.replog-tag-count{background:color-mix(in srgb, var(--module-accent,var(--green)) 16%, transparent);color:var(--module-accent,var(--green))}.replog-del{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;margin-left:auto;padding:.25rem;display:inline-flex}.replog-del:hover{color:var(--danger);background:color-mix(in srgb, var(--danger) 10%, transparent)}.replog-entry-fields{flex-wrap:wrap;align-items:flex-end;gap:.7rem;margin-top:.55rem;display:flex}.replog-f{flex-direction:column;gap:.2rem;display:flex}.replog-f>span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.68rem;font-weight:700}.replog-f input{box-sizing:border-box;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);color:var(--text-primary);padding:.35rem .5rem;font-size:.9rem}.replog-f input:focus{border-color:var(--module-accent,var(--green));outline:none}.replog-f-note{flex:12rem}.replog-f-note input{width:100%}.replog-budgeted{color:var(--text-muted);align-items:center;gap:.35rem;margin-top:.12rem;font-size:.72rem;display:inline-flex}.replog-var{font-weight:700}.replog-var.over{color:var(--danger)}.replog-var.under{color:var(--cat-green,#10b981)}@media (width<=680px){.replog-title{font-size:22px}.replog-entry-fields{flex-direction:column;align-items:stretch;gap:.5rem}.replog-f,.replog-f input{width:100%}.replog-f-note{flex:none}}:root[data-theme=dark] .vault-banner{border-color:#2a3648;border-left-color:var(--bf-sky,#38bdf8);background:#16202d}:root[data-theme=dark] .vault-banner-title{color:#e7eaef}:root[data-theme=dark] .vault-banner-sub{color:#9aa6b5}:root[data-theme=dark] .vault-banner-swap{color:#9bd0ee;border-color:#67b3dd}:root[data-theme=dark] .vault-banner-swap:hover{background:#1d2a3a}
