@import"https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;600;700&family=Space+Grotesk:wght@500;700;800&display=swap";:root{--bg: #f2f2ef;--bg-accent: #e4ead8;--bg-accent-2: #d5dcc9;--surface: rgba(255, 255, 255, .92);--surface-strong: #ffffff;--surface-soft: rgba(246, 247, 242, .84);--text: #181a16;--muted: #64685f;--line: rgba(24, 26, 22, .12);--navy: #252923;--teal: #b8e64b;--cyan: #8e9587;--lime: #d7f487;--peach: #b7bcae;--danger: #c43b4b;--danger-soft: rgba(196, 59, 75, .13);--shadow: 0 24px 60px rgba(18, 20, 16, .14);--radius-xl: 28px;--radius-lg: 20px;--radius-md: 14px}body[data-theme=dark]{color-scheme:dark}*{box-sizing:border-box}html,body{max-width:100%;overflow-x:hidden}body{margin:0;min-height:100vh;font-family:"Source Sans 3",sans-serif;color:var(--text);background:radial-gradient(circle at top left,color-mix(in srgb,var(--teal) 18%,var(--bg-accent) 82%),transparent 30%),radial-gradient(circle at top right,color-mix(in srgb,var(--teal) 12%,transparent),transparent 24%),radial-gradient(circle at bottom left,color-mix(in srgb,var(--lime) 14%,transparent),transparent 24%),linear-gradient(180deg,color-mix(in srgb,var(--bg) 78%,white 22%) 0%,var(--bg) 100%);transition:background .25s ease,color .25s ease}button,input,select,textarea{font-size:16px}button,[role=button],input,select{touch-action:manipulation}.page-shell{width:min(1320px,calc(100% - 32px));margin:0 auto;padding:28px 0 56px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px}.brand-lockup{display:flex;align-items:center;gap:8px}.brand-logo{width:90px;height:90px;border-radius:18px;object-fit:cover;clip-path:inset(10% round 14px);transform:scale(1.12);box-shadow:0 18px 38px #0000003d}.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.theme-toggle{border:1px solid var(--line);background:var(--surface-soft);color:var(--text);padding:12px 16px;border-radius:999px;font:inherit;font-weight:700;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .18s ease,border-color .18s ease,background .18s ease}.theme-toggle:hover{transform:translateY(-1px)}.utility-button{border:1px solid var(--line);background:var(--card);color:var(--text);padding:10px 14px;border-radius:999px;font:inherit;font-weight:800;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}.utility-button:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--teal),var(--line) 45%);background:var(--surface-soft)}.visually-hidden-file{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.hero{position:relative;display:grid;grid-template-columns:1.4fr .8fr;gap:24px;padding:28px;border-radius:32px;background:linear-gradient(135deg,color-mix(in srgb,var(--navy) 38%,#343434 62%),color-mix(in srgb,var(--teal) 20%,#7a7a7a 80%)),linear-gradient(180deg,rgba(255,255,255,.1),transparent);color:#fff;box-shadow:var(--shadow)}.hero-copy{position:relative;min-height:210px;display:grid;align-content:center;gap:18px}.hero-expense-button{position:absolute;right:0;bottom:0;z-index:3;display:inline-flex;align-items:center;gap:8px;border:1px solid color-mix(in srgb,var(--lime) 58%,rgba(255,255,255,.22) 42%);background:color-mix(in srgb,var(--lime) 82%,white 18%);color:#11130f;border-radius:999px;padding:11px 14px;font:inherit;font-size:.86rem;font-weight:900;cursor:pointer;box-shadow:0 12px 26px #00000029}.hero-expense-button:hover{transform:translateY(-1px)}.hero-expense-icon{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:999px;background:#11130f1f;font-size:.95rem;line-height:1}.hero-meta{display:inline-flex;flex-wrap:wrap;align-items:center;gap:10px;width:fit-content;max-width:100%;padding:10px 12px;border-radius:999px;background:#ffffff1a;color:#ffffffd1;font-size:.94rem;font-weight:800;line-height:1}.hero-meta span+span{padding-left:10px;border-left:1px solid rgba(255,255,255,.22)}body[data-theme=dark] .hero{background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong) 90%,var(--bg-accent) 10%),color-mix(in srgb,var(--surface-soft) 76%,var(--teal) 24%)),linear-gradient(180deg,rgba(255,255,255,.05),transparent)}.eyebrow,.section-kicker{margin:0 0 8px;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:700}.hero h2,.section-heading h2{margin:0;font-family:Space Grotesk,sans-serif;line-height:1.02}.hero h2{max-width:12ch;font-size:clamp(2.2rem,4vw,4rem)}.hero-title{margin:0;font-family:Space Grotesk,sans-serif;font-size:clamp(1.9rem,3vw,3rem);line-height:1.05}.banker-card{min-height:280px;display:grid;align-content:start;gap:10px}.budget-workspace{display:grid;gap:22px}.budget-view-switch{width:fit-content;max-width:100%;display:inline-grid;grid-template-columns:repeat(2,minmax(118px,1fr));gap:4px;padding:5px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface-strong) 84%,transparent);box-shadow:0 10px 28px #00000014}.budget-view-switch button{min-height:42px;border:0;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-weight:900;padding:9px 18px;transition:background .18s ease,color .18s ease,transform .18s ease}.budget-view-switch button:hover{color:var(--text);transform:translateY(-1px)}.budget-view-switch button.is-active{background:linear-gradient(135deg,var(--teal),var(--lime));color:#11130f;box-shadow:0 8px 18px color-mix(in srgb,var(--teal) 22%,transparent)}.budget-planner-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);gap:22px;align-items:stretch}.budget-primary-grid{grid-template-columns:minmax(0,1fr)}.budget-wide-grid{display:grid;grid-template-columns:1fr;gap:22px}.budget-module-shell{display:grid;align-content:start;gap:12px}.analytics-module-heading{padding:0 2px}.budget-heading-row{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start}.budget-card-header{display:flex;align-items:start;justify-content:space-between;gap:18px;margin-bottom:8px}.budget-section-kicker{margin:0 0 4px;color:var(--muted)}.budget-section-title{margin:0;font-family:Space Grotesk,sans-serif;font-size:1.2rem}.budget-section-title-large{font-size:1.35rem}.budget-section-title-spaced{margin-bottom:14px}.budget-heading-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.budget-analytics-entry{display:flex;justify-content:flex-end;margin:0}.budget-analytics-button{min-height:40px;padding:9px 16px}.analytics-back-button{min-height:42px;white-space:nowrap}.budget-paycheck-field{margin:0;align-content:start}.budget-hero-card{display:grid;gap:18px;overflow:hidden}.budget-setup-card{display:grid;gap:16px;min-height:100%}.budget-hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.budget-card-subcopy{max-width:62ch;margin:8px 0 0;color:var(--muted);font-weight:650;line-height:1.5}.budget-balance-panel{display:grid;grid-template-columns:minmax(0,.9fr) minmax(260px,1.1fr);gap:14px;align-items:stretch}.budget-setup-grid{display:grid;grid-template-columns:1fr;gap:14px}.budget-balance-callout{display:grid;align-content:center;gap:8px;min-height:136px;padding:20px;border:1px solid color-mix(in srgb,var(--teal) 28%,var(--line) 72%);border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--teal) 18%,transparent),transparent 58%),var(--surface-strong)}.budget-balance-callout span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:850}.budget-balance-callout strong{font-family:Space Grotesk,sans-serif;font-size:clamp(2rem,4vw,3.1rem);line-height:.95}.budget-balance-callout small{color:var(--muted);font-weight:800}.budget-balance-callout.is-negative strong{color:var(--danger)}.budget-cash-meter{height:9px;margin-top:4px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--line) 72%,var(--surface) 28%)}.budget-cash-meter i{display:block;height:100%;min-width:5px;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--teal) 72%,var(--text) 28%),var(--lime))}.budget-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.savings-calculator-card{display:grid;gap:18px}.savings-calculator-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.savings-duration-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.savings-result-grid{display:grid;grid-template-columns:1fr;gap:12px}.budget-stat{min-height:96px;display:grid;align-content:start;gap:8px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface-strong)}.budget-stat span,.budget-stat small{color:var(--muted);font-weight:800}.budget-stat span{text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}.budget-stat strong{font-family:Space Grotesk,sans-serif;font-size:clamp(1.25rem,1.8vw,1.8rem);line-height:1}.budget-stat.is-negative strong{color:var(--danger)}.budget-daily-limit-card{display:grid;align-content:start;gap:16px;min-height:100%}.budget-daily-limit-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.budget-daily-limit-total{display:grid;justify-items:end;gap:5px}.budget-daily-limit-total>strong{font-family:Space Grotesk,sans-serif;font-size:clamp(1.85rem,3vw,2.65rem);line-height:.95;color:color-mix(in srgb,var(--teal) 58%,var(--text) 42%);text-align:right;white-space:nowrap;max-width:100%}.budget-daily-limit-total>strong.is-negative{color:var(--danger)}.budget-daily-limit-total>span{color:var(--muted);font-size:.78rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.budget-limit-breakdown{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.budget-limit-breakdown>div{min-height:76px;display:grid;align-content:start;gap:6px;padding:13px;border:1px solid var(--line);border-radius:13px;background:var(--surface-strong)}.budget-balance-edit-card{min-height:76px;display:grid;align-content:start;gap:7px;padding:13px;border:1px solid var(--line);border-radius:13px;background:var(--surface-strong)}.money-edit-control{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;min-height:44px;padding:0 10px;border:1px solid color-mix(in srgb,var(--line) 82%,var(--teal) 18%);border-radius:10px;background:color-mix(in srgb,var(--surface) 68%,transparent)}.money-edit-control>span{color:var(--text);font-family:Space Grotesk,sans-serif;font-size:1.2rem;font-weight:900;line-height:1;letter-spacing:0;text-transform:none}.money-edit-control input,.budget-balance-edit-card input{width:100%;min-height:40px;border:none;border-radius:9px;background:transparent;color:var(--text);padding:0;font:inherit;font-family:Space Grotesk,sans-serif;font-size:1.2rem;font-weight:900;line-height:1}.money-edit-control input:focus,.budget-balance-edit-card input:focus{outline:none}.money-edit-control:focus-within{border-color:color-mix(in srgb,var(--teal) 64%,var(--line) 36%);box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 18%,transparent)}.analytics-money-edit-control{min-height:48px;padding:0 12px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.budget-limit-breakdown span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;font-weight:850}.budget-limit-breakdown .money-edit-control>span{color:var(--text);text-transform:none;letter-spacing:0;font-size:1.2rem}.budget-limit-breakdown strong{font-family:Space Grotesk,sans-serif;font-size:1.2rem;line-height:1}.budget-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.8fr);gap:22px;align-items:start}.budget-action-grid{grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr)}.budget-support-grid{grid-template-columns:minmax(360px,.88fr) minmax(0,1.12fr)}.budget-bills-card{grid-row:span 2}.budget-bill-list,.budget-activity-list{display:grid;gap:10px;margin-top:16px}.budget-bill-row,.budget-activity-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,150px) auto;gap:12px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-strong)}.budget-bill-row:nth-child(2n),.budget-activity-item:nth-child(2n){background:color-mix(in srgb,var(--line) 42%,var(--surface) 58%)}.budget-bill-row.is-paid{opacity:.72}.budget-bill-row strong,.budget-activity-item strong{display:block}.budget-bill-row span,.budget-activity-item span{display:block;margin-top:3px;color:var(--muted);font-size:.86rem;font-weight:700}.budget-bill-row input{width:100%;min-width:0;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);font-weight:800}.budget-expense-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.budget-expense-form .full,.budget-expense-form .primary-button{grid-column:1 / -1}.budget-expense-actions{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:10px}.budget-money-button{min-height:52px;font-weight:800}.budget-log-header{display:flex;align-items:end;justify-content:space-between;gap:16px}.budget-log-controls{display:grid;grid-template-columns:repeat(2,minmax(145px,1fr));align-items:end;justify-content:flex-end;gap:12px}.budget-log-filter{display:grid;gap:5px;min-width:160px}.budget-log-filter span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;font-weight:850}.budget-log-filter select,.budget-log-filter input{width:100%;min-height:40px;border:1px solid var(--line);border-radius:12px;background:var(--surface-strong);color:var(--text);padding:8px 12px;font:inherit;font-weight:800}.analytics-account-card{display:grid;gap:16px}.analytics-account-grid{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(320px,1fr);gap:14px;align-items:stretch}.analytics-account-grid .budget-balance-callout{min-height:0}.budget-recurring-card{display:grid;gap:16px}.budget-recurring-card .budget-card-header{margin-bottom:0}.budget-recurring-card .budget-card-header>strong{font-family:Space Grotesk,sans-serif;font-size:1.4rem}.budget-recurring-total{display:grid;justify-items:end;gap:3px}.budget-recurring-total span,.budget-recurring-estimate span{color:var(--muted);font-size:.68rem;font-weight:900;letter-spacing:.07em;line-height:1.15;text-transform:uppercase}.budget-recurring-total strong,.budget-recurring-estimate strong{font-family:Space Grotesk,sans-serif}.budget-recurring-total strong{font-size:1.4rem}.budget-recurring-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,.65fr) minmax(150px,.8fr) auto;gap:10px;align-items:end}.budget-recurring-form .full,.budget-recurring-form .primary-button{grid-column:1 / -1}.budget-recurring-form .primary-button{min-height:50px;white-space:nowrap}.budget-recurring-list{display:grid;gap:10px}.budget-recurring-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--surface-strong)}.budget-recurring-item:nth-child(2n){background:color-mix(in srgb,var(--line) 42%,var(--surface) 58%)}.budget-recurring-item strong{display:block}.budget-recurring-item>strong{font-family:Space Grotesk,sans-serif}.budget-recurring-item span{display:block;margin-top:3px;color:var(--muted);font-size:.86rem;font-weight:750}.budget-recurring-estimate{display:grid;justify-items:end;gap:3px;min-width:132px}.budget-recurring-estimate strong{font-size:1.1rem}.budget-activity-item{grid-template-columns:minmax(0,1fr) auto}.budget-activity-item>strong,.budget-activity-actions>strong{font-family:Space Grotesk,sans-serif}.money-positive{color:color-mix(in srgb,var(--teal) 72%,var(--text) 28%)}.budget-activity-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.mini-action-group{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--line);border-radius:999px;background:var(--surface-soft)}.mini-action{min-width:0;padding:7px 12px;font-size:.78rem;border-radius:999px}.mini-action-edit,.mini-action-delete{border-color:transparent}.hero-panel,.card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.22)}.hero-panel{display:grid;gap:14px;align-content:start;padding:18px;border-radius:24px;background:color-mix(in srgb,rgba(255,255,255,.14) 70%,var(--teal) 30%)}.stat-chip{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:16px 18px;border-radius:18px;background:#ffffff1f}.stat-chip span,.hero-note{color:#fffc}.stat-chip strong{font-family:Space Grotesk,sans-serif;font-size:1.3rem}.tab-bar{display:inline-flex;gap:10px;margin:22px 0 18px;padding:8px;border:1px solid var(--line);border-radius:999px;background:var(--surface-soft);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.tab-button{border:none;background:transparent;color:var(--muted);padding:12px 18px;border-radius:999px;font:inherit;font-weight:700;cursor:pointer;transition:background .18s ease,color .18s ease,transform .18s ease}.tab-button:hover{transform:translateY(-1px)}.tab-button.is-active{background:linear-gradient(135deg,color-mix(in srgb,var(--lime) 52%,white 48%),color-mix(in srgb,var(--teal) 66%,white 34%));color:#121212;box-shadow:inset 0 0 0 1px #ffffff47}.tab-panel{display:none}.tab-panel.is-active{display:block}.layout{display:grid;grid-template-columns:1.1fr .9fr;gap:22px}.card{background:var(--surface);border-radius:var(--radius-xl);box-shadow:var(--shadow);padding:24px;border:1px solid var(--line)}.overview-layout{align-items:start}.look-ahead-card{grid-column:1 / 2}.due-card{grid-column:2 / 3;grid-row:1 / span 2}.section-heading-row{display:flex;align-items:end;justify-content:space-between;gap:16px}.action-button-row{display:inline-flex;flex-wrap:wrap;align-items:center;gap:10px}.controls-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:18px}.field,.table-input,.primary-button,.ghost-button{font:inherit}.field{display:grid;gap:8px}.field span{font-weight:700}.field input,.field select,.table-input{width:100%;border:1px solid var(--line);border-radius:14px;background:var(--surface-strong);color:var(--text);padding:13px 14px;font-weight:700;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.field input:focus,.field select:focus,.table-input:focus{outline:none;border-color:#5a5a5a8c;box-shadow:0 0 0 5px #5a5a5a1f;transform:translateY(-1px)}.field .select-shell+input{display:none}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top left,color-mix(in srgb,var(--teal) 18%,transparent),transparent 34%),linear-gradient(135deg,var(--bg),color-mix(in srgb,var(--teal) 12%,var(--bg)))}.auth-card{width:min(500px,100%);background:var(--surface);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);padding:32px}.auth-loading-card{min-height:160px}.auth-brand{display:flex;align-items:center;gap:20px;margin-bottom:22px}.auth-logo{width:96px;height:96px;border-radius:20px;object-fit:cover;clip-path:inset(10% round 15px);transform:scale(1.12);box-shadow:0 16px 34px #0000003d}.auth-brand span{display:block;margin-bottom:3px;color:color-mix(in srgb,var(--lime) 62%,var(--text) 38%);font-family:Space Grotesk,sans-serif;font-size:1.05rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.auth-brand h1{margin:0;font-family:Space Grotesk,sans-serif;font-size:clamp(2.45rem,5vw,3.25rem);line-height:.95}.auth-copy{margin:0 0 20px;color:var(--muted);line-height:1.55;font-weight:700}.auth-form{display:grid;gap:16px}.password-field{position:relative;display:flex;align-items:center}.field .password-field input{padding-right:78px}.password-toggle{position:absolute;right:7px;min-width:58px;min-height:34px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--surface) 72%,var(--surface-strong));color:var(--text);cursor:pointer;font:inherit;font-size:.78rem;font-weight:900}.password-toggle:hover,.password-toggle:focus{border-color:color-mix(in srgb,var(--teal) 45%,var(--line));outline:none}.auth-submit{width:100%;min-height:48px}.auth-submit:disabled{cursor:wait;opacity:.72}.auth-switch{width:100%;margin-top:16px;border:none;background:transparent;color:var(--text);cursor:pointer;font:inherit;font-weight:800}.auth-link-button{width:100%;margin-top:12px;border:none;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-size:.92rem;font-weight:800}.auth-link-button:hover,.auth-link-button:focus,.auth-switch:hover,.auth-switch:focus{color:var(--text);outline:none}.auth-version{margin-top:14px;color:var(--muted);font-size:.78rem;font-weight:900;text-align:center}.auth-alert{border:1px solid color-mix(in srgb,var(--teal) 38%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--teal) 12%,transparent);color:var(--text);padding:11px 12px;font-weight:800}.auth-alert.is-error{border-color:color-mix(in srgb,var(--danger) 45%,var(--line));background:var(--danger-soft);color:var(--danger)}.toast-stack{position:fixed;top:max(34px,calc(env(safe-area-inset-top) + 34px));right:max(14px,env(safe-area-inset-right));z-index:220;display:grid;gap:10px;width:min(360px,calc(100vw - 28px));pointer-events:none}.toast{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;padding:13px 14px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--surface) 94%,var(--surface-strong));color:var(--text);box-shadow:0 18px 42px #0000003d;pointer-events:auto}.toast strong{display:block;font-size:.92rem;line-height:1.2}.toast p{margin:4px 0 0;color:var(--muted);font-size:.84rem;font-weight:700;line-height:1.35}.toast button{width:28px;height:28px;border:none;border-radius:999px;background:color-mix(in srgb,var(--surface-strong) 78%,var(--line));color:var(--muted);cursor:pointer;font:inherit;font-weight:900;line-height:1}.toast-success{border-color:color-mix(in srgb,var(--teal) 45%,var(--line))}.toast-warning{border-color:color-mix(in srgb,var(--lime) 52%,var(--line))}.toast-error{border-color:color-mix(in srgb,var(--danger) 45%,var(--line));background:color-mix(in srgb,var(--danger-soft) 38%,var(--surface))}.pwa-update-banner{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:5000;display:flex;align-items:center;gap:16px;max-width:min(420px,calc(100vw - 36px));padding:14px;border:1px solid var(--line);border-radius:18px;background:var(--surface-strong);color:var(--text);box-shadow:var(--shadow)}.pwa-update-banner strong{display:block;font-family:Space Grotesk,sans-serif;font-size:.98rem}.pwa-update-banner p{margin:3px 0 0;color:var(--muted);font-size:.86rem;font-weight:700}.pwa-update-banner button{flex:0 0 auto;border:0;border-radius:999px;padding:10px 16px;background:var(--teal);color:var(--navy);font-weight:900;cursor:pointer}.pwa-update-banner.is-refreshing button{opacity:.7;pointer-events:none}.select-shell{position:relative}.select-shell:after{content:"";position:absolute;top:50%;right:18px;width:10px;height:10px;border-right:2px solid color-mix(in srgb,var(--text) 72%,transparent);border-bottom:2px solid color-mix(in srgb,var(--text) 72%,transparent);transform:translateY(-58%) rotate(45deg);pointer-events:none}.select-shell select{-moz-appearance:none;appearance:none;-webkit-appearance:none;min-height:48px;line-height:1.2;padding-right:44px}.helper-text{margin:14px 0 0;color:var(--muted)}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:16px;margin-top:22px}.summary-card{min-height:0;display:grid;align-content:start;gap:14px;padding:18px;border-radius:22px;overflow:hidden;min-width:0}.summary-card span{font-weight:700}.summary-card strong{font-family:Space Grotesk,sans-serif;font-size:clamp(1.35rem,2.1vw,2.35rem);line-height:1;white-space:nowrap;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.summary-detail{color:var(--muted);font-size:.88rem;font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-card.due{background:linear-gradient(180deg,color-mix(in srgb,var(--teal) 18%,white 82%),color-mix(in srgb,var(--cyan) 12%,white 88%))}.summary-card.remaining{background:linear-gradient(180deg,color-mix(in srgb,var(--navy) 12%,white 88%),color-mix(in srgb,var(--cyan) 10%,white 90%))}.summary-card.count{background:linear-gradient(180deg,color-mix(in srgb,var(--peach) 44%,white 56%),color-mix(in srgb,var(--bg-accent-2) 44%,white 56%))}body[data-theme=dark] .summary-card.due{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-soft) 82%,var(--lime) 18%),color-mix(in srgb,var(--surface-strong) 86%,var(--surface-soft) 14%))}body[data-theme=dark] .summary-card.remaining{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-soft) 84%,var(--cyan) 16%),color-mix(in srgb,var(--surface-strong) 86%,var(--surface-soft) 14%))}body[data-theme=dark] .summary-card.count{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-soft) 86%,var(--teal) 14%),color-mix(in srgb,var(--surface-strong) 88%,var(--surface-soft) 12%))}.period-paydown-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.period-paydown-card{min-width:0;padding:14px 16px;border-radius:14px;border:1px solid var(--line);background:color-mix(in srgb,var(--surface-strong) 92%,var(--navy) 8%)}.period-paydown-card p{margin:0 0 6px;color:var(--muted);font-size:.79rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.period-paydown-card strong{display:block;font-family:Space Grotesk,sans-serif;font-size:1.28rem;font-variant-numeric:tabular-nums;line-height:1}.period-paydown-card span{display:block;margin-top:7px;color:var(--muted);font-size:.84rem;font-weight:700}.period-paydown-card.is-paid-down{background:color-mix(in srgb,var(--teal) 14%,var(--surface-strong) 86%)}.pay-period-clean{margin-top:16px;display:grid;gap:12px}.pay-period-clean-header{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 16px;border-radius:14px;border:1px solid var(--line);background:var(--surface-strong)}.pay-period-clean-header span{color:var(--muted);font-size:.88rem;font-weight:800}.pay-period-clean-header strong{color:var(--text);font-size:.88rem;white-space:nowrap}.pay-period-clean-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pay-period-clean-card{min-width:0;padding:15px 16px;border-radius:14px;border:1px solid var(--line);background:color-mix(in srgb,var(--surface-strong) 92%,var(--navy) 8%)}.pay-period-clean-card p{margin:0 0 8px;color:var(--muted);font-size:.74rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.pay-period-clean-card strong{display:block;font-family:Space Grotesk,sans-serif;font-size:1.35rem;line-height:1;font-variant-numeric:tabular-nums}.pay-period-clean-card span{display:block;margin-top:8px;color:var(--muted);font-size:.82rem;font-weight:700}.pay-period-clean-card.is-paid{background:color-mix(in srgb,var(--teal) 14%,var(--surface-strong) 86%)}.pay-period-clean-card.is-still-due{background:var(--danger-soft);border-color:color-mix(in srgb,var(--danger) 22%,transparent)}.pay-period-clean-card.is-still-due strong{color:var(--danger)}.pay-period-clean-card.is-still-due.is-clear{background:color-mix(in srgb,var(--teal) 16%,var(--surface-strong) 84%);border-color:color-mix(in srgb,var(--teal) 32%,transparent)}.pay-period-clean-card.is-still-due.is-clear strong{color:color-mix(in srgb,var(--teal) 58%,var(--text) 42%)}.pay-period-clean-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 16px;border-radius:14px;border:1px solid var(--line);background:color-mix(in srgb,var(--surface-strong) 96%,var(--teal) 4%)}.pay-period-clean-footer span{color:var(--muted);font-size:.86rem;font-weight:800}.pay-period-clean-footer strong{font-family:Space Grotesk,sans-serif;font-size:1.05rem;font-variant-numeric:tabular-nums}.pay-period-clean-footer.is-negative strong{color:var(--danger)}.summary-period-grid{margin-top:14px}.look-ahead{padding:0}.calendar-card{grid-column:1 / -1}.calendar-header-row{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:16px;padding:24px 24px 0}.calendar-section-kicker{margin:0 0 4px;color:var(--muted)}.calendar-section-title{margin:0;font-family:Space Grotesk,sans-serif;font-size:1.25rem}.calendar-filter-row{display:flex;flex-wrap:wrap;align-items:end;gap:10px}.calendar-month-select{min-width:130px}.calendar-year-select{min-width:90px}.calendar-select-control{padding:10px 36px 10px 14px;border:1px solid var(--line);border-radius:14px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--surface-strong);color:var(--text);font-family:inherit;font-size:.9rem;font-weight:700}.calendar-payday-legend{display:flex;align-items:center;gap:8px;padding:10px 24px 0}.calendar-payday-swatch{width:14px;height:14px;border-radius:4px;background:var(--lime);opacity:.9}.calendar-payday-legend span{color:var(--muted);font-size:.82rem;font-weight:600}.calendar-body{padding:14px 24px 24px}.calendar-day-header{display:flex;align-items:center;justify-content:space-between}.look-ahead-header{display:flex;align-items:start;justify-content:space-between;gap:16px;margin-bottom:14px}.look-ahead-title-group{min-width:0}.look-ahead-tools{display:grid;gap:12px;justify-items:end}.look-ahead-header h3{margin:4px 0 0;font-family:Space Grotesk,sans-serif;font-size:1.25rem}.calendar-nav{display:inline-flex;gap:8px}.calendar-nav-button{padding:10px 14px}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:8px}.calendar-weekday{color:var(--muted);font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-align:center}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.calendar-day{min-height:106px;padding:10px;border-radius:18px;border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 82%,transparent);display:grid;align-content:start;gap:8px}.calendar-day.is-outside{opacity:.4}.calendar-day.is-today{border:2px solid color-mix(in srgb,var(--navy) 78%,var(--cyan) 22%);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--surface-strong) 88%,transparent),0 0 0 2px color-mix(in srgb,var(--navy) 20%,transparent);background:color-mix(in srgb,var(--cyan) 10%,var(--surface-strong) 90%)}.calendar-today-badge{margin-left:auto;padding:4px 8px;border-radius:999px;background:linear-gradient(135deg,color-mix(in srgb,var(--teal) 78%,white 22%),color-mix(in srgb,var(--lime) 82%,white 18%));color:#151713;font-size:.72rem;font-weight:900;line-height:1}.calendar-day-number{font-weight:800;font-variant-numeric:tabular-nums}.calendar-day-bills{display:grid;gap:6px}.calendar-bill-name,.calendar-bill-chip{display:flex;align-items:center;justify-content:flex-start;gap:8px;min-width:0;max-width:100%;padding:6px 8px;border-radius:12px;background:color-mix(in srgb,var(--surface-strong) 92%,transparent);color:var(--text);font-size:.76rem;line-height:1.2}.calendar-bill-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:900}.calendar-bill-chip span{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-bill-chip.is-auto{border:1px solid color-mix(in srgb,var(--teal) 26%,transparent)}.calendar-empty{color:var(--muted);font-size:.85rem;padding:14px 4px 4px}.calendar-day.is-payday{border-color:color-mix(in srgb,var(--lime) 70%,transparent);background:linear-gradient(160deg,color-mix(in srgb,var(--lime) 50%,var(--surface-strong) 50%),color-mix(in srgb,var(--teal) 22%,var(--surface-strong) 78%));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--lime) 50%,transparent)}body[data-theme=dark] .calendar-day.is-payday{background:linear-gradient(160deg,color-mix(in srgb,var(--surface-soft) 68%,var(--lime) 32%),color-mix(in srgb,var(--surface-strong) 78%,var(--cyan) 22%));border-color:color-mix(in srgb,var(--lime) 44%,var(--line) 56%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--lime) 26%,transparent)}.calendar-payday-badge{display:inline-flex;align-items:center;justify-content:center;padding:3px 8px;border-radius:999px;background:color-mix(in srgb,var(--lime) 40%,transparent);color:color-mix(in srgb,var(--text) 86%,#123a24 14%);font-size:.72rem;font-weight:800;letter-spacing:.03em}.due-list{display:grid;gap:9px;margin-top:14px}.due-item,.empty-state{border-radius:14px;background:var(--surface-strong);border:1px solid var(--line)}.due-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 12px}.due-item.is-paid{background:color-mix(in srgb,var(--line) 70%,transparent)}.due-item.is-overdue{border-color:color-mix(in srgb,var(--danger) 58%,var(--line) 42%);background:color-mix(in srgb,var(--danger) 9%,var(--surface-strong) 91%);box-shadow:inset 4px 0 color-mix(in srgb,var(--danger) 82%,transparent)}.due-item.is-paid h3,.due-item.is-paid p{opacity:.7}.due-item h3{margin:0;font-size:.98rem}.due-item p,.empty-state{margin:0;color:var(--muted);font-size:.82rem}.due-item strong{font-family:Space Grotesk,sans-serif;font-size:1.02rem}.due-item .expense-amount{color:var(--danger)}.due-item .expense-amount.is-paid{color:var(--muted);opacity:.82}.due-item-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;position:relative;z-index:2}.due-button-stack{display:grid;gap:5px;justify-items:stretch}.paid-prior-action-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 24px;align-items:center;gap:5px}.paid-prior-info-button{display:inline-grid;width:26px;height:26px;place-items:center;border:1px solid color-mix(in srgb,var(--teal) 28%,var(--line) 72%);border-radius:999px;background:#fff;color:color-mix(in srgb,var(--green-dark) 72%,var(--text) 28%);font:800 .88rem/1 Arial,Helvetica,sans-serif;line-height:1;cursor:help;position:relative;z-index:4}.paid-prior-info-button:after{content:attr(data-tooltip);position:absolute;right:0;bottom:calc(100% + 8px);width:min(250px,72vw);padding:9px 11px;border:1px solid color-mix(in srgb,var(--teal) 26%,var(--line) 74%);border-radius:12px;background:var(--surface);color:var(--text);box-shadow:0 14px 34px #0f172a29;font-family:inherit;font-size:.74rem;font-weight:800;line-height:1.35;text-align:left;white-space:normal;opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .16s ease,transform .16s ease}.paid-prior-info-button:hover:after,.paid-prior-info-button:focus-visible:after{opacity:1;transform:translateY(0)}.paid-toggle{border:1px solid var(--line);background:var(--surface);color:var(--text);padding:6px 10px;border-radius:999px;font:inherit;font-size:.74rem;font-weight:800;cursor:pointer;position:relative;z-index:3;pointer-events:auto;transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease}.paid-toggle:hover{transform:translateY(-1px)}.paid-toggle.is-paid{background:linear-gradient(135deg,color-mix(in srgb,var(--lime) 60%,white 40%),color-mix(in srgb,var(--teal) 58%,white 42%));color:#101010;border-color:#fff3;box-shadow:inset 0 0 0 1px #ffffff24}.paid-pill{display:inline-flex;align-items:center;padding:3px 8px;margin-left:8px;border-radius:999px;background:color-mix(in srgb,var(--navy) 18%,var(--surface-strong) 82%);color:var(--navy);border:1px solid color-mix(in srgb,var(--navy) 20%,transparent);font-size:.72rem;font-weight:800;vertical-align:middle}.paid-pill{background:linear-gradient(135deg,color-mix(in srgb,var(--teal) 68%,white 32%),color-mix(in srgb,var(--lime) 58%,white 42%));color:#151713;border-color:color-mix(in srgb,var(--teal) 55%,var(--line) 45%)}.empty-state{padding:18px}.primary-button,.ghost-button{border:none;cursor:pointer;transition:transform .18s ease,opacity .18s ease,background .18s ease}.primary-button:hover,.ghost-button:hover{transform:translateY(-1px)}.primary-button{padding:12px 16px;border-radius:999px;background:linear-gradient(135deg,color-mix(in srgb,var(--teal) 78%,white 22%),color-mix(in srgb,var(--lime) 82%,white 18%));color:#151713;border:1px solid color-mix(in srgb,var(--navy) 18%,transparent);font-weight:800}.ghost-button{padding:10px 14px;border-radius:999px;background:color-mix(in srgb,var(--navy) 10%,transparent);color:var(--navy);font-weight:700}.toggle{display:inline-flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none}.toggle input{position:absolute;opacity:0;pointer-events:none}.toggle-track{position:relative;width:46px;height:28px;border-radius:999px;background:#12344a24;transition:background .2s ease;flex-shrink:0}.toggle-track:after{content:"";position:absolute;top:4px;left:4px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #1126312e;transition:transform .2s ease}.toggle-label{font-weight:700;color:var(--muted)}.toggle input:checked+.toggle-track{background:linear-gradient(135deg,var(--navy),var(--teal))}.toggle input:checked+.toggle-track:after{transform:translate(18px)}.toggle input:checked~.toggle-label{color:var(--navy)}.table-wrap{overflow-x:hidden;margin-top:18px}.bills-table{width:100%;border-collapse:collapse;table-layout:fixed;min-width:0}.bills-table th{text-align:left;padding:0 12px 14px;color:var(--muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}.bills-table td{padding:10px 12px;border-top:1px solid var(--line)}.bills-table th:nth-child(1){width:22%}.bills-table th:nth-child(2){width:14%}.bills-table th:nth-child(3){width:13%}.bills-table th:nth-child(4){width:10%}.bills-table th:nth-child(5){width:8%;text-align:center}.bills-table th:nth-child(6){width:25%}.bills-table th:nth-child(7){width:8%;text-align:center}.bills-table td:nth-child(1){width:22%}.bills-table td:nth-child(2){width:14%}.bills-table td:nth-child(3){width:13%}.bills-table td:nth-child(4){width:10%}.bills-table td:nth-child(5){width:8%;text-align:center}.bills-table td:nth-child(6){width:25%}.bills-table td:nth-child(7){width:8%;text-align:center}.debt-table{table-layout:fixed;min-width:0}.debt-table th,.debt-table td{padding-inline:8px}.debt-table td:nth-child(1){width:23%}.debt-table td:nth-child(2){width:18%}.debt-table td:nth-child(3){width:11%}.debt-table td:nth-child(4){width:17%}.debt-table td:nth-child(5),.debt-table th:nth-child(5){width:19%;min-width:96px}.debt-table td:nth-child(6),.debt-table th:nth-child(6){width:10%;min-width:66px}.bills-table tr{animation:rise-in .32s ease both}.bills-table td,.bills-table th{vertical-align:middle}.bills-table tbody tr:nth-child(2n){background:color-mix(in srgb,var(--navy) 6%,transparent)}.bills-table tbody tr:nth-child(odd){background:color-mix(in srgb,var(--surface-strong) 42%,transparent)}.bills-table tbody tr{border-radius:14px}.table-section-kicker{margin:0 0 4px;color:var(--muted)}.table-section-title{margin:0;font-family:Space Grotesk,sans-serif;font-size:1.2rem}.cell-view{min-height:48px;min-width:0;display:flex;align-items:center;padding:10px 14px;border-radius:14px;border:1px solid var(--line);background:color-mix(in srgb,var(--surface-strong) 92%,transparent);font-weight:700;font-size:.92rem;overflow-wrap:anywhere;word-break:normal}.debt-table .cell-view{min-width:0;padding:10px;font-size:.86rem}.debt-table td:first-child .cell-view{min-width:0;white-space:normal}.debt-table .money-input{white-space:nowrap}.debt-table td:nth-child(5) .cell-view{justify-content:center;min-width:86px;padding-inline:8px;white-space:nowrap}.debt-table td:nth-child(6) .ghost-button{min-width:50px;padding-inline:10px!important}.cell-view.is-empty,.cell-view.is-muted{color:var(--muted)}.cell-view.is-empty{font-style:italic;font-weight:400}.bills-date-cell{font-size:.88rem}.bills-date-offset{margin-left:6px;font-size:.76rem;opacity:.7}.bills-note-cell{font-size:.86rem}.cell-view-note{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-edit-button{padding:8px 14px;font-size:.84rem}.auto-pay-pill,.freq-tag{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;font-size:.84rem;line-height:1;font-weight:700}.auto-pay-pill{min-width:42px;padding:7px 10px;font-size:.8rem}.auto-pay-pill.is-on{background:linear-gradient(135deg,color-mix(in srgb,var(--teal) 72%,white 28%),color-mix(in srgb,var(--lime) 74%,white 26%));color:#151713;border:1px solid color-mix(in srgb,var(--teal) 34%,transparent)}.auto-pay-pill.is-off{background:color-mix(in srgb,var(--line) 72%,var(--surface-strong) 28%);color:var(--muted);border:1px solid color-mix(in srgb,var(--line) 84%,transparent)}.freq-tag{background:color-mix(in srgb,var(--navy) 14%,transparent);color:var(--navy);font-size:.8rem}.category-filter{display:inline-flex;flex-wrap:nowrap;gap:4px;padding:5px;border:1px solid var(--line);border-radius:999px;background:var(--surface-soft);max-width:100%;white-space:nowrap}.debt-category-filter{width:fit-content;max-width:100%;margin:16px 0 4px}.add-debt-button{flex:0 0 auto;min-width:118px}.category-filter-button{border:none;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-size:.74rem;font-weight:800;padding:7px 8px;transition:background .18s ease,color .18s ease,transform .18s ease}.category-filter-button:hover{transform:translateY(-1px);color:var(--text)}.category-filter-button.is-active{background:linear-gradient(135deg,color-mix(in srgb,var(--teal) 78%,white 22%),color-mix(in srgb,var(--lime) 82%,white 18%));color:#151713}.payoff-card{padding:18px 18px 16px;border-radius:16px;border:1px solid var(--line);background:var(--surface-strong);box-shadow:0 10px 24px #1214100d}.payoff-card:nth-child(2n){background:color-mix(in srgb,var(--navy) 7%,var(--surface-strong) 93%)}.payoff-card:nth-child(odd){background:color-mix(in srgb,var(--surface-strong) 96%,var(--teal) 4%)}.debt-layout .section-heading-row{align-items:start}.debt-layout .action-button-row{flex:1;flex-wrap:nowrap;justify-content:flex-end}@media(max-width:1180px){.debt-layout{grid-template-columns:1fr}.debt-table .cell-view{font-size:.92rem}.budget-planner-grid,.budget-grid{grid-template-columns:1fr}.budget-bills-card{grid-row:auto}}@media(max-width:760px){.budget-heading-row,.budget-card-header,.budget-stat-grid,.savings-calculator-grid,.savings-result-grid,.settings-section-grid,.settings-pay-grid,.budget-expense-form{grid-template-columns:1fr}.budget-card-header{flex-direction:column}.pay-setup-summary-card,.pay-check-grid,.budget-bill-row{grid-template-columns:1fr}.budget-bill-row .paid-toggle{width:100%}}:root{--bg: #f6f7f9;--bg-accent: #eef2f6;--bg-accent-2: #e6ebf1;--surface: rgba(255, 255, 255, .9);--surface-strong: #ffffff;--surface-soft: #f8fafc;--text: #18202a;--muted: #697586;--line: rgba(24, 32, 42, .1);--navy: #1f2937;--teal: #2f7df6;--cyan: #18a0a6;--lime: #84cc16;--peach: #f59e0b;--shadow: 0 16px 38px rgba(15, 23, 42, .08);--radius-xl: 22px;--radius-lg: 18px;--radius-md: 12px;--sidebar-collapsed: 76px;--sidebar-expanded: 226px}body{background:linear-gradient(180deg,#fff,#f6f7f9 42%,#f3f5f8)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(90deg,rgba(47,125,246,.05),transparent 28%),linear-gradient(180deg,rgba(24,160,166,.04),transparent 34%);z-index:-1}.page-shell{width:min(1480px,calc(100% - 44px));min-height:100vh;margin:0 auto;padding:18px 0 44px;padding-left:calc(var(--sidebar-collapsed) + 18px);transition:padding-left .22s ease}.app-sidebar{position:fixed;top:18px;bottom:18px;left:18px;z-index:100;width:var(--sidebar-collapsed);display:grid;grid-template-rows:auto 1fr auto;gap:18px;padding:12px;border:1px solid rgba(15,23,42,.08);border-radius:26px;background:#ffffffe6;box-shadow:0 18px 44px #0f172a1f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);overflow:hidden;transition:width .22s ease,box-shadow .22s ease}.app-sidebar:hover,.app-sidebar:focus-within{width:var(--sidebar-expanded);box-shadow:0 22px 54px #0f172a29}.sidebar-brand{display:flex;align-items:center;gap:12px;min-height:52px;white-space:nowrap}.sidebar-logo{flex:0 0 auto;width:52px;height:52px;border-radius:18px;object-fit:cover;clip-path:inset(10% round 15px);box-shadow:0 10px 20px #0f172a29}.sidebar-brand span,.side-nav-label{opacity:0;transform:translate(-6px);transition:opacity .18s ease,transform .18s ease}.sidebar-brand span{font-family:Space Grotesk,sans-serif;font-weight:800;color:var(--text)}.app-sidebar:hover .sidebar-brand span,.app-sidebar:focus-within .sidebar-brand span,.app-sidebar:hover .side-nav-label,.app-sidebar:focus-within .side-nav-label{opacity:1;transform:translate(0)}.sidebar-nav,.sidebar-bottom{display:grid;gap:8px;align-content:start}.side-nav-button{position:relative;min-height:52px;display:grid;grid-template-columns:52px 1fr;align-items:center;gap:10px;border:0;border-radius:18px;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-size:.96rem;font-weight:800;text-align:left;transition:background .18s ease,color .18s ease,transform .18s ease}.side-nav-button:hover{background:#f3f6fa;color:var(--text)}.side-nav-button.is-active{background:#e8f0fe;color:#185abc}.side-nav-button.is-active:before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:4px;border-radius:999px;background:#2f7df6}.side-nav-icon{position:relative;width:40px;height:40px;margin:0 auto;display:inline-grid;place-items:center;border-radius:14px;color:currentColor}.side-nav-button.is-active .side-nav-icon{background:#dbeafe}.side-nav-icon:before,.side-nav-icon:after,.settings-glyph:before,.settings-glyph:after{content:"";position:absolute;box-sizing:border-box}.side-nav-button[data-icon=grid] .side-nav-icon:before{width:18px;height:18px;border-radius:5px;background:linear-gradient(currentColor 0 0) left top / 7px 7px no-repeat,linear-gradient(currentColor 0 0) right top / 7px 7px no-repeat,linear-gradient(currentColor 0 0) left bottom / 7px 7px no-repeat,linear-gradient(currentColor 0 0) right bottom / 7px 7px no-repeat}.side-nav-button[data-icon=calendar] .side-nav-icon:before{width:20px;height:18px;border:2px solid currentColor;border-radius:6px}.side-nav-button[data-icon=calendar] .side-nav-icon:after{width:14px;height:2px;top:14px;background:currentColor;border-radius:99px}.side-nav-button[data-icon=receipt] .side-nav-icon:before{width:18px;height:22px;border:2px solid currentColor;border-radius:5px}.side-nav-button[data-icon=receipt] .side-nav-icon:after{width:10px;height:8px;border-top:2px solid currentColor;border-bottom:2px solid currentColor}.side-nav-button[data-icon=debt] .side-nav-icon:before{width:22px;height:15px;border:2px solid currentColor;border-radius:6px}.side-nav-button[data-icon=debt] .side-nav-icon:after{width:5px;height:5px;right:11px;border-radius:99px;background:currentColor}.side-nav-button[data-icon=wallet] .side-nav-icon:before{width:22px;height:18px;border:2px solid currentColor;border-radius:7px}.side-nav-button[data-icon=wallet] .side-nav-icon:after{width:8px;height:6px;right:8px;border:2px solid currentColor;border-radius:4px}.side-nav-button[data-icon=settings] .side-nav-icon:before,.settings-glyph:before{width:18px;height:18px;border:2px solid currentColor;border-radius:99px}.side-nav-button[data-icon=settings] .side-nav-icon:after,.settings-glyph:after{width:6px;height:6px;border-radius:99px;background:currentColor}.topbar{min-height:64px;margin-bottom:16px;padding:8px 4px 8px 0}.topbar-title{display:grid;gap:0}.topbar-title strong{font-family:Space Grotesk,sans-serif;font-size:1.36rem;line-height:1.05}.topbar-kicker{color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase}.topbar-actions{gap:8px}.cloud-status-pill,.account-pill{border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);padding:9px 12px;font-size:.84rem;font-weight:800;box-shadow:0 8px 22px #0f172a0d}.top-icon-button{width:42px;height:42px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--text);box-shadow:0 8px 22px #0f172a0f;cursor:pointer;text-decoration:none;font:inherit;font-weight:900}.top-icon-button:hover,.top-icon-button.is-active{background:#e8f0fe;color:#185abc;border-color:#c7d8fb}.settings-glyph{position:relative;width:22px;height:22px;display:inline-grid;place-items:center}.user-menu-button{background:#18202a;color:#fff}.hero.hero-compact{grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);margin-bottom:18px;padding:22px;border:1px solid rgba(15,23,42,.08);border-radius:26px;background:#fff;color:var(--text);box-shadow:var(--shadow)}.hero-kicker{color:var(--muted)}.hero-meta{background:#f4f7fb;color:var(--muted)}.hero-meta span+span{border-left-color:#0f172a1f}.hero-compact .hero-expense-button{background:#2f7df6;color:#fff;border:0;box-shadow:0 12px 24px #2f7df633}.hero-expense-icon{background:#ffffff2e}.hero-panel{background:#f8fafc;border:1px solid var(--line);border-radius:22px}.stat-chip{background:#fff;border:1px solid var(--line)}.stat-chip span,.hero-note{color:var(--muted)}.stat-chip strong{color:var(--text)}.tab-bar{display:none}.dashboard-workspace{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);grid-auto-flow:dense;gap:18px;align-items:start}.dashboard-card-frame{position:relative;min-width:0;cursor:grab}.dashboard-card-frame:active{cursor:grabbing}.dashboard-card-frame.is-dragging{opacity:.58}.dashboard-card-frame .card{min-height:100%}.dashboard-upcoming-frame{grid-column:2;grid-row:span 2}.dashboard-card-handle{position:absolute;top:16px;right:16px;z-index:5;width:28px;height:28px;display:grid;place-content:center;gap:3px;border:1px solid var(--line);border-radius:10px;background:#ffffffdb;color:var(--muted);opacity:0;transition:opacity .18s ease,transform .18s ease}.dashboard-card-frame:hover .dashboard-card-handle,.dashboard-card-frame:focus-within .dashboard-card-handle{opacity:1}.dashboard-card-handle span{display:block;width:12px;height:2px;border-radius:99px;background:currentColor}.card{background:#fff;border-color:#0f172a14;border-radius:22px;box-shadow:0 12px 30px #0f172a12}.summary-card,.pay-period-clean-card,.due-item,.pay-setup-summary-card,.field input,.field select,.table-input{border-radius:16px}.primary-button,.ghost-button,.settings-button,.paid-toggle,.count-pill,.auto-pill,.paid-pill,.freq-pill{border-radius:999px}body[data-theme=dark]{color-scheme:light}body[data-theme=dark] .hero,body[data-theme=dark] .hero.hero-compact,body[data-theme=dark] .card,body[data-theme=dark] .hero-panel,body[data-theme=dark] .stat-chip,body[data-theme=dark] .top-icon-button,body[data-theme=dark] .cloud-status-pill,body[data-theme=dark] .account-pill,body[data-theme=dark] .app-sidebar{background:#fff;color:var(--text);border-color:#0f172a14}body[data-theme=dark] .stat-chip span,body[data-theme=dark] .hero-meta,body[data-theme=dark] .hero-kicker{color:var(--muted)}@media(max-width:920px){.page-shell{width:min(100% - 24px,760px);padding-left:0;padding-bottom:92px}.app-sidebar{top:auto;left:12px;right:12px;bottom:12px;width:auto;height:72px;grid-template-columns:1fr;grid-template-rows:1fr;padding:8px;border-radius:24px}.app-sidebar:hover,.app-sidebar:focus-within{width:auto}.sidebar-brand,.sidebar-bottom{display:none}.sidebar-nav{grid-auto-flow:column;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.side-nav-button{min-height:54px;grid-template-columns:1fr;justify-items:center;gap:0;border-radius:18px}.side-nav-label{display:none}.side-nav-button.is-active:before{left:50%;top:auto;bottom:4px;width:18px;height:3px;transform:translate(-50%)}.hero.hero-compact,.dashboard-workspace{grid-template-columns:1fr}.dashboard-upcoming-frame{grid-column:auto;grid-row:auto}}@media(max-width:640px){.topbar{align-items:center;flex-direction:row}.topbar-actions{width:auto}.account-pill{display:none}.hero.hero-compact{padding:18px}}.inline-empty-state{margin:18px 0 0;padding:16px 18px;border-radius:18px;border:1px dashed var(--line);background:color-mix(in srgb,var(--surface-strong) 92%,transparent);color:var(--muted);font-weight:600}.auto-pill{display:inline-flex;align-items:center;padding:4px 10px;margin-left:8px;border-radius:999px;background:color-mix(in srgb,var(--navy) 16%,var(--surface-strong) 84%);color:var(--navy);border:1px solid color-mix(in srgb,var(--navy) 24%,transparent);font-size:.78rem;font-weight:700;vertical-align:middle}.freq-pill{display:inline-flex;align-items:center;padding:3px 8px;margin-left:8px;border-radius:999px;background:color-mix(in srgb,var(--peach) 28%,transparent);color:color-mix(in srgb,var(--text) 88%,#5f5f5f 12%);font-size:.74rem;font-weight:700;vertical-align:middle}.count-pill{display:inline-flex;align-items:center;justify-content:center;padding:0;border-radius:0;background:transparent;color:color-mix(in srgb,var(--navy) 76%,var(--muted) 24%);border:none;font-size:.94rem;font-weight:800;white-space:nowrap}.extra-payment-box{display:grid;gap:8px;margin:-4px 0 16px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-strong)}.extra-payment-box p{margin:0;color:var(--muted);font-size:.84rem;font-weight:700}.extra-pill{display:inline-flex;align-items:center;padding:4px 8px;margin-left:8px;border-radius:999px;background:color-mix(in srgb,var(--lime) 26%,transparent);color:color-mix(in srgb,var(--teal) 75%,var(--text) 25%);font-size:.72rem;font-weight:800;vertical-align:middle}.extra-payment-row{display:grid;grid-template-columns:auto minmax(120px,150px);justify-content:end;gap:10px;align-items:center;margin:2px 0 12px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.extra-payment-row span{color:var(--muted);font-size:.82rem;font-weight:800}.extra-payment-row .min-payment-note{display:inline-flex;margin:0 8px 0 0;padding:3px 7px;border-radius:999px;background:color-mix(in srgb,var(--navy) 10%,var(--surface-strong) 90%);color:var(--text);font-size:.74rem;font-weight:800;vertical-align:middle}.interest-bar{height:5px;border-radius:999px;background:var(--line);overflow:hidden}.interest-bar>div{height:100%;border-radius:999px;transition:width .5s ease}.interest-bar.is-alert>div{background:var(--danger);opacity:.72}.interest-bar.is-ok>div{background:color-mix(in srgb,var(--teal) 78%,var(--navy) 22%);opacity:.82}.extra-payment-row input{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--surface-strong);color:var(--text);padding:9px 10px;font:inherit;font-weight:800}.money-negative{color:var(--danger)!important}.money-input{font-variant-numeric:tabular-nums}.dti-card{margin-top:18px}.dti-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:14px;margin-top:16px}.dti-pill{align-self:start;padding:8px 12px;border-radius:999px;font-size:.78rem;font-weight:800;background:color-mix(in srgb,var(--line) 65%,transparent);color:var(--muted)}.dti-pill.is-good{background:color-mix(in srgb,var(--lime) 28%,transparent);color:color-mix(in srgb,var(--teal) 70%,var(--text) 30%)}.dti-pill.is-watch{background:color-mix(in srgb,var(--peach) 34%,transparent);color:color-mix(in srgb,var(--text) 86%,#6a6a6a 14%)}.dti-pill.is-high{background:var(--danger-soft);color:var(--danger)}.dti-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.dti-summary div{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-strong)}.dti-summary span{color:var(--muted);font-weight:700}.dti-summary strong{font-family:Space Grotesk,sans-serif;font-variant-numeric:tabular-nums}.dti-note{margin:12px 0 0;color:var(--muted);font-size:.84rem;font-weight:600}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .18s ease}.modal-panel{width:min(520px,100%);background:var(--surface-strong);border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:0 40px 100px #00000073;animation:slideUp .22s ease;max-height:90vh;overflow-y:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:22px 24px 16px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--surface-strong);z-index:1}.modal-title{margin:0;font-family:Space Grotesk,sans-serif;font-size:1.25rem;font-weight:700}.modal-close{border:none;background:none;color:var(--muted);cursor:pointer;font-size:1rem;padding:8px;border-radius:10px;line-height:1;transition:color .15s,background .15s}.modal-close:hover{color:var(--text);background:var(--line)}.modal-body{padding:20px 24px}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 24px 22px;border-top:1px solid var(--line)}.modal-footer.is-end{justify-content:flex-end}.modal-footer.is-spread{justify-content:space-between}.modal-action-row{display:flex;gap:10px}.modal-action-row.is-wrapping{flex-wrap:wrap}.modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.modal-grid .full{grid-column:1 / -1}.day-picker-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-top:8px}.day-picker-button{padding:9px 0;border:1px solid var(--line);border-radius:10px;background:var(--surface-strong);color:var(--text);cursor:pointer;font-size:.86rem;font-weight:700}.day-picker-button.is-active{border:none;background:linear-gradient(135deg,var(--navy),var(--teal));color:#fff}.tweaks-panel{position:fixed;bottom:24px;right:24px;width:230px;background:var(--surface-strong);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);z-index:200;overflow:hidden;animation:slideUp .2s ease}.tweaks-header{padding:14px 16px 12px;border-bottom:1px solid var(--line);font-family:Space Grotesk,sans-serif;font-size:.92rem;font-weight:700}.tweaks-body{padding:14px 16px;display:grid;gap:14px}.tweaks-row{display:flex;align-items:center;justify-content:space-between;font-size:.88rem;font-weight:600;color:var(--text)}.tweak-toggle{width:auto;padding:0;border:none;background:none}.tweak-accent-row{display:flex;gap:6px}.tweak-accent-swatch{width:22px;height:22px;border:2px solid transparent;border-radius:6px;cursor:pointer}.tweak-accent-swatch.is-active{border-color:var(--text)}.tweak-accent-null{background:#b8e64b}.tweak-accent-bright{background:#c2f25a}.tweak-accent-deep{background:#7f9b3f}input[type=date]{color-scheme:light;background:var(--surface-strong);color:var(--text);border:1px solid var(--line);border-radius:14px;padding:13px 14px;font-family:inherit;font-weight:700;font-size:inherit;width:100%;transition:border-color .2s ease,box-shadow .2s ease;-webkit-appearance:none}body[data-theme=dark] input[type=date]{color-scheme:dark}input[type=date]:focus{outline:none;border-color:#5a5a5a8c;box-shadow:0 0 0 5px #5a5a5a1f}.search-input{padding:10px 16px;border-radius:999px;border:1px solid var(--line);background:var(--surface-strong);color:var(--text);font-family:inherit;font-weight:600;font-size:.9rem;width:190px;transition:border-color .2s,box-shadow .2s}.search-input:focus{outline:none;border-color:#5a5a5a8c;box-shadow:0 0 0 4px #5a5a5a1a}.search-input::placeholder{color:var(--muted);font-weight:400}.cat-bar{display:grid;gap:10px;margin-top:18px}.cat-bar-row{display:grid;gap:6px}.cat-bar-meta{display:flex;justify-content:space-between;font-size:.88rem;font-weight:700}.cat-bar-track{height:7px;border-radius:999px;background:var(--line);overflow:hidden}.cat-bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--navy),var(--teal));transition:width .5s ease}.danger-ghost{padding:8px 12px;border-radius:999px;background:var(--danger-soft);color:var(--danger);font-weight:700;font-size:.85rem;border:none;cursor:pointer;font-family:inherit;transition:transform .15s,opacity .15s}.danger-ghost:hover{transform:translateY(-1px);opacity:.85}.danger-ghost:disabled{cursor:not-allowed;opacity:.48;transform:none}@media(max-width:920px){.hero,.layout{grid-template-columns:1fr}.hero h2{max-width:none}.hero-expense-button{position:static;width:fit-content}.look-ahead-card,.due-card{grid-column:auto;grid-row:auto}.table-wrap{overflow-x:auto}.bills-table:not(.debt-table){min-width:780px}}@media(max-width:640px){.page-shell{width:calc(100% - 16px);padding-top:10px}.topbar{align-items:start;flex-direction:column}.topbar-actions{justify-content:flex-start;width:100%}.brand-logo{width:64px;height:64px;border-radius:16px}.hero,.card{padding:16px;border-radius:20px}.hero{grid-template-columns:1fr}.hero-copy{min-height:0}.hero-expense-button{width:100%}.hero-meta{border-radius:14px;line-height:1.25}.hero-meta span+span{padding-left:0;border-left:none}.hero h2{max-width:none;font-size:clamp(1.75rem,8vw,2.35rem)}.tab-bar{width:100%;display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}.tab-button{flex:0 0 auto;scroll-snap-align:start}.summary-grid{grid-template-columns:1fr}.due-item{grid-template-columns:1fr;gap:10px}.section-heading-row{flex-direction:column;align-items:start}.action-button-row,.search-input{width:100%}.modal-grid{grid-template-columns:1fr}.modal-grid .full{grid-column:1}.budget-expense-actions{grid-template-columns:1fr}.table-wrap{overflow-x:auto}.bills-table:not(.debt-table){min-width:700px}.dti-grid,.dti-summary{grid-template-columns:1fr}}.bills-table td:last-child .ghost-button{padding:7px 12px!important;font-size:.8rem!important}.bills-table th:nth-child(5),.bills-table th:nth-child(7){text-align:center}.settings-menu-wrap{position:relative;display:inline-flex;justify-content:flex-end}.settings-button{border:1px solid var(--line);background:var(--surface-soft);color:var(--text);padding:12px 18px;border-radius:999px;font:inherit;font-weight:900;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .18s ease,border-color .18s ease,background .18s ease}.settings-button:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--lime) 45%,var(--line) 55%)}.settings-button.is-active{background:linear-gradient(135deg,color-mix(in srgb,var(--lime) 52%,white 48%),color-mix(in srgb,var(--teal) 66%,white 34%));color:#121212;border-color:color-mix(in srgb,var(--teal) 62%,var(--line) 38%)}.account-pill{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid var(--line);border-radius:999px;background:var(--surface-soft);color:var(--muted);padding:10px 14px;font-size:.78rem;font-weight:900}.cloud-status-pill{position:fixed;top:max(8px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right));z-index:120;max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:none;border-radius:999px;background:color-mix(in srgb,var(--bg) 72%,transparent);color:color-mix(in srgb,var(--muted) 84%,var(--text));padding:5px 8px;font-size:.72rem;font-weight:900;line-height:1;pointer-events:none}.logout-button{padding-inline:16px}.settings-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:20;display:grid;gap:10px;min-width:250px;padding:10px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--surface-strong) 94%,var(--bg-accent) 6%);box-shadow:0 18px 45px #0000002e}.settings-menu button{width:100%;border:0;border-radius:10px;background:transparent;color:var(--text);padding:10px 12px;text-align:left;font:inherit;font-size:.9rem;font-weight:800;cursor:pointer}.settings-menu button:hover{background:color-mix(in srgb,var(--lime) 22%,var(--surface-strong) 78%)}.settings-menu-section{display:grid;gap:8px;padding-top:4px;border-top:1px solid color-mix(in srgb,var(--line) 82%,transparent)}.settings-subtitle{color:var(--muted);font-size:.73rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.settings-option-grid{display:flex;flex-wrap:wrap;gap:8px}.settings-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.settings-theme-grid .settings-chip{flex:1 1 calc(50% - 4px)}.settings-chip{border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface-strong) 88%,var(--bg-accent) 12%);color:var(--text);padding:10px 12px;text-align:center;font:inherit;font-size:.84rem;font-weight:900;line-height:1.1;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease}.settings-chip:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--lime) 52%,var(--line) 48%);background:color-mix(in srgb,var(--lime) 18%,var(--surface-strong) 82%)}.settings-chip.is-active{border-color:color-mix(in srgb,var(--lime) 60%,var(--line) 40%);background:linear-gradient(135deg,color-mix(in srgb,var(--lime) 72%,white 28%),color-mix(in srgb,var(--teal) 38%,var(--surface-strong) 62%));color:#151712;box-shadow:0 10px 24px #0000001f}.settings-page{max-width:1120px}.settings-page-card{display:grid;gap:22px}.settings-section-kicker{margin:0 0 4px;color:var(--muted)}.settings-section-title{margin:0;font-family:Space Grotesk,sans-serif;font-size:1.35rem}.settings-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.settings-block{display:grid;gap:12px;align-content:start;padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--surface-strong)}.settings-block-copy{max-width:56ch;margin:-4px 0 0;color:var(--muted);font-size:.88rem;font-weight:750;line-height:1.45}.settings-theme-block{gap:8px;padding:14px 18px}.settings-block.full{grid-column:1 / -1}.settings-action-row{display:flex;flex-wrap:wrap;gap:10px}.settings-muted{margin:0;color:var(--muted);font-size:.9rem;font-weight:700}.settings-danger-block{border-color:color-mix(in srgb,var(--danger) 30%,var(--line));background:color-mix(in srgb,var(--danger) 7%,var(--surface-strong))}.settings-danger-button{min-height:44px;padding:11px 16px}.settings-account-actions{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:12px}.settings-account-button-row{display:flex;flex-wrap:wrap;gap:10px}.settings-reset-password-button{min-height:44px;padding:11px 16px}.settings-support-link{color:var(--muted);font-size:.9rem;font-weight:800;text-align:right;text-decoration:none}.settings-support-link:hover,.settings-support-link:focus{color:var(--text);outline:none;text-decoration:underline}.settings-pay-block{order:-1;gap:14px;background:color-mix(in srgb,var(--teal) 9%,var(--surface-strong) 91%)}.settings-pay-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.settings-pay-summary,.pay-setup-summary-card,.calendar-pay-setup-pill{display:grid;gap:4px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--teal) 10%,var(--surface-strong) 90%)}.settings-pay-summary span,.pay-setup-summary-card span,.calendar-pay-setup-pill span{color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.settings-pay-summary strong,.pay-setup-summary-card strong,.calendar-pay-setup-pill strong{font-family:Space Grotesk,sans-serif}.pay-setup-summary-card{grid-template-columns:minmax(0,1fr) minmax(210px,250px);align-items:start;gap:12px 16px;margin-bottom:12px}.pay-setup-summary-card small{color:var(--muted);font-weight:800}.paycheck-log-button{min-height:42px;justify-self:start;padding-inline:16px}.paycheck-log-confirm{display:grid;gap:12px;max-width:360px;padding:14px;border:1px solid color-mix(in srgb,var(--lime) 42%,var(--line) 58%);border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--lime) 18%,transparent),transparent 58%),var(--surface);box-shadow:0 14px 30px #1c22141f}.paycheck-log-confirm>div:first-child{display:grid;gap:4px}.paycheck-log-confirm strong{font-family:Space Grotesk,sans-serif}.paycheck-log-confirm span{color:var(--muted);font-size:.84rem;font-weight:800;line-height:1.35}.paycheck-log-confirm-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.paycheck-log-confirm-actions .ghost-button,.paycheck-log-confirm-actions .primary-button{min-height:42px}.calendar-pay-setup-pill{min-width:190px;padding:9px 12px}.pay-period-view-field{display:grid;gap:5px}.pay-period-view-field span{color:var(--muted);font-size:.76rem;font-weight:900;text-transform:uppercase}.pay-period-view-field small{color:var(--muted);font-size:.72rem;font-weight:800}.pay-period-view-field select,.pay-period-view-field input{width:100%;border:1px solid var(--line);border-radius:12px;background:var(--surface-strong);color:var(--text);padding:10px 12px;font:inherit;font-weight:800}.pay-period-card-main{display:grid;gap:4px;min-width:0}.pay-period-card-main strong{font-size:1.08rem}.paycheck-amount-field{grid-column:auto}.pay-check-grid{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,250px);gap:12px 16px;align-items:end}.pay-check-card{display:grid;gap:4px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-strong)}.pay-check-card span{color:var(--muted);font-size:.76rem;font-weight:900;text-transform:uppercase}.pay-check-card strong{font-family:Space Grotesk,sans-serif}.settings-page-theme-grid .settings-chip{flex:1 1 130px;padding:8px 10px;font-size:.8rem}.settings-page-theme-grid{gap:7px}.settings-toggle{justify-content:start;width:fit-content}.calendar-day{overflow:visible}.calendar-day-count-wrap{position:relative;align-self:start}.calendar-bill-count{display:inline-flex;align-items:center;justify-content:center;min-width:58px;padding:7px 10px;border-radius:999px;background:color-mix(in srgb,var(--lime) 28%,var(--surface-strong) 72%);border:1px solid color-mix(in srgb,var(--lime) 42%,var(--line) 58%);color:var(--text);font-size:.76rem;font-weight:900;line-height:1}.calendar-bill-tooltip{position:absolute;left:0;top:calc(100% + 8px);z-index:30;display:none;min-width:210px;max-width:280px;padding:10px;border:1px solid var(--line);border-radius:12px;background:#f9faf4;box-shadow:0 16px 38px #0000002e}body[data-theme=dark] .settings-menu,body[data-theme=dark] .calendar-bill-tooltip{background:color-mix(in srgb,var(--surface-strong) 90%,var(--bg-accent) 10%)}body[data-theme=dark] .settings-chip{background:color-mix(in srgb,var(--surface-strong) 92%,var(--bg-accent) 8%)}body[data-theme=dark] .settings-chip.is-active{border-color:color-mix(in srgb,var(--lime) 72%,var(--line) 28%);background:linear-gradient(135deg,color-mix(in srgb,var(--lime) 78%,white 22%),color-mix(in srgb,var(--teal) 54%,var(--surface-strong) 46%));color:#141711;box-shadow:0 14px 28px #0000003d}.calendar-day-count-wrap:hover .calendar-bill-tooltip,.calendar-day-count-wrap:focus .calendar-bill-tooltip,.calendar-day-count-wrap:focus-within .calendar-bill-tooltip,.calendar-day-count-wrap.is-visible .calendar-bill-tooltip{display:grid;gap:8px}.calendar-bill-tooltip-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;color:var(--text);font-size:.82rem}.calendar-bill-tooltip-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-bill-tooltip-row strong{font-variant-numeric:tabular-nums}.payment-modal-panel{max-width:420px}.confirm-modal-panel{max-width:440px;background:var(--surface);border-color:color-mix(in srgb,var(--line) 72%,var(--lime) 28%)}.confirm-modal-copy{display:grid;gap:8px;padding:4px 0 2px}.confirm-modal-copy p{margin:0;color:var(--muted);line-height:1.55;font-size:.98rem}.confirm-phrase-field{margin-top:16px}.confirm-modal-panel .modal-footer{border-top:1px solid var(--line)}.payment-modal-summary{display:grid;gap:4px;padding:14px;border-radius:14px;border:1px solid var(--line);background:var(--surface-strong);margin-bottom:14px}.payment-modal-summary strong{font-family:Space Grotesk,sans-serif}.payment-modal-summary span{color:var(--muted);font-size:.9rem;font-weight:700}.due-item-actions{min-width:190px}.paid-toggle.prepaid-toggle{background:var(--surface);border-color:var(--line);color:var(--text)}.paid-toggle.prepaid-toggle.is-paid{background:linear-gradient(135deg,color-mix(in srgb,var(--lime) 68%,white 32%),color-mix(in srgb,var(--teal) 42%,var(--lime) 58%));border-color:color-mix(in srgb,var(--lime) 62%,var(--line) 38%);color:#151713}.prepaid-pill{color:color-mix(in srgb,var(--text) 78%,var(--lime) 22%);border-color:color-mix(in srgb,var(--lime) 32%,transparent)}.app-footer{margin-top:36px;text-align:right;color:var(--muted);font-size:.78rem;font-weight:700}@media(max-width:720px){.settings-menu-wrap,.settings-button{width:100%}.settings-menu{left:0;right:auto;width:100%}.settings-theme-grid .settings-chip{flex-basis:100%}.app-footer{text-align:center}}body[data-theme=dark]{--surface: color-mix(in srgb, var(--surface-strong) 84%, white 10%);--surface-soft: color-mix(in srgb, var(--surface-strong) 74%, white 7%);--muted: color-mix(in srgb, var(--text) 76%, var(--bg) 24%);--line: color-mix(in srgb, var(--text) 20%, transparent)}body[data-theme=dark] .tab-button,body[data-theme=dark] .section-kicker,body[data-theme=dark] .bills-table th,body[data-theme=dark] .field span,body[data-theme=dark] .toggle-label,body[data-theme=dark] .summary-detail,body[data-theme=dark] .dti-note,body[data-theme=dark] .min-payment-note{color:color-mix(in srgb,var(--text) 82%,var(--bg) 18%)}body[data-theme=dark] .tab-button.is-active{color:#11130f}body[data-theme=dark] .card,body[data-theme=dark] .hero-panel,body[data-theme=dark] .cell-view,body[data-theme=dark] .payoff-card,body[data-theme=dark] .budget-bill-row,body[data-theme=dark] .budget-activity-item,body[data-theme=dark] .calendar-day{border-color:color-mix(in srgb,var(--text) 19%,transparent)}body[data-theme=dark] .cell-view,body[data-theme=dark] .field input,body[data-theme=dark] .field select,body[data-theme=dark] .search-input,body[data-theme=dark] .extra-payment-row input,body[data-theme=dark] .custom-priority-field input{background:color-mix(in srgb,var(--surface-strong) 82%,white 8%);color:var(--text)}body[data-theme=dark] .bills-table tbody tr:nth-child(2n),body[data-theme=dark] .bills-table tbody tr:nth-child(odd){background:color-mix(in srgb,var(--surface-strong) 82%,white 5%)}.save-status{display:inline-flex;align-items:center;gap:8px;max-width:100%;min-width:0;padding:8px;border:1px solid var(--line);border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:.78rem;font-weight:800}.save-status span{min-width:0;padding:5px 8px;border-radius:999px;background:color-mix(in srgb,var(--surface-strong) 82%,transparent);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hero.hero-compact{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:stretch;padding:24px;overflow:hidden}.hero.hero-compact *{min-width:0}.hero-compact .hero-copy{min-height:0;align-content:start;gap:14px}.hero-kicker{color:color-mix(in srgb,white 72%,var(--lime) 28%)}.hero-action-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:2px}.hero-compact .hero-expense-button{position:static;width:auto}.hero-secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:10px 14px;background:#ffffff1f;color:#fff;font:inherit;font-weight:900;cursor:pointer}.hero-secondary-button:hover{transform:translateY(-1px);background:#ffffff2e}.hero-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-content:stretch}.hero-metrics-grid .stat-chip{min-height:70px;align-items:start;flex-direction:column}.hero-metrics-grid .stat-chip strong{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hero-metrics-grid .stat-chip.is-negative strong{color:var(--danger)}.budget-analytics-card,.analytics-page{display:grid;gap:18px}.analytics-page-heading{margin-bottom:0}.budget-analytics-page-card{width:100%}.analytics-report-toggle{display:inline-grid;grid-template-columns:repeat(3,1fr);gap:4px;min-height:42px;padding:4px;border:1px solid var(--line);border-radius:999px;background:var(--surface-soft)}.analytics-report-toggle button{min-width:96px;border:none;border-radius:999px;background:transparent;color:var(--muted);font:inherit;font-weight:900;cursor:pointer}.analytics-report-toggle button.is-active{background:var(--lime);color:#12140f;box-shadow:0 10px 24px #b5f15338}.analytics-report-controls{display:flex;justify-content:flex-end;margin:12px 0 14px}.analytics-month-field{width:min(220px,100%)}.analytics-month-field input{min-height:42px}.analytics-report-summary{display:grid;grid-template-columns:minmax(260px,1.4fr) repeat(3,minmax(160px,1fr));gap:12px}.analytics-report-summary>div{display:grid;align-content:center;gap:5px;min-height:112px;padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.analytics-report-summary span,.analytics-report-summary small{color:var(--muted);font-size:.76rem;font-weight:850}.analytics-report-summary span{text-transform:uppercase;letter-spacing:.08em}.analytics-report-summary strong{font-family:Space Grotesk,sans-serif;font-size:clamp(1.35rem,2.5vw,2rem);line-height:1}.analytics-report-summary .analytics-report-hero{border-color:color-mix(in srgb,var(--teal) 30%,var(--line) 70%);background:radial-gradient(circle at 100% 0,color-mix(in srgb,var(--lime) 28%,transparent),transparent 44%),color-mix(in srgb,var(--surface-strong) 82%,transparent)}.analytics-report-summary .analytics-report-hero strong{font-size:clamp(2rem,4vw,3.2rem);color:color-mix(in srgb,var(--teal) 58%,var(--text) 42%)}.analytics-report-summary .analytics-report-hero.is-negative{border-color:color-mix(in srgb,var(--danger) 42%,var(--line) 58%);background:radial-gradient(circle at 100% 0,color-mix(in srgb,var(--danger) 16%,transparent),transparent 46%),var(--surface)}.analytics-report-summary .analytics-report-hero.is-negative strong{color:var(--danger)}.analytics-saved-pill{display:inline-flex;align-items:center;min-height:38px;padding:8px 12px;border-radius:999px;background:color-mix(in srgb,var(--lime) 44%,var(--surface-strong) 56%);color:#12140f;font-weight:900}.analytics-saved-pill.is-negative{background:var(--danger-soft);color:var(--danger)}.analytics-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.9fr);gap:16px}.analytics-panel{display:grid;align-content:start;gap:14px;min-height:220px;padding:16px;border:1px solid var(--line);border-radius:20px;background:color-mix(in srgb,var(--surface-strong) 88%,transparent)}.analytics-panel-heading{display:flex;justify-content:space-between;gap:12px;align-items:center}.analytics-panel-heading span{color:var(--muted);font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.analytics-panel-heading strong{font-family:Space Grotesk,sans-serif;font-size:1.05rem}.category-analytics-list{display:grid;gap:12px}.category-analytics-row{display:grid;gap:8px}.category-analytics-row>div:first-child{display:flex;justify-content:space-between;gap:12px;font-weight:800}.category-analytics-row>div:first-child span{display:grid;gap:2px}.category-analytics-row small{color:var(--muted);font-size:.72rem;font-weight:800}.analytics-bar{height:9px;border-radius:999px;overflow:hidden;background:var(--line)}.analytics-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal),var(--lime))}.bill-progress-ring{width:148px;height:148px;justify-self:center;display:grid;place-items:center;align-content:center;border-radius:50%;background:radial-gradient(circle at center,var(--surface-strong) 0 55%,transparent 56%),conic-gradient(var(--lime) var(--progress),var(--line) 0)}.bill-progress-ring strong{font-family:Space Grotesk,sans-serif;font-size:1.25rem}.bill-progress-ring span{color:var(--muted);font-weight:800}.analytics-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.analytics-mini-grid div{padding:10px;border-radius:14px;border:1px solid var(--line);background:var(--surface)}.analytics-mini-grid span{display:block;color:var(--muted);font-size:.74rem;font-weight:800}.bill-average-list,.analytics-watch-list{display:grid;gap:10px}.bill-average-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 12px;align-items:center}.bill-average-row>div{display:grid;gap:2px;min-width:0}.bill-average-row>div strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bill-average-row>div span{color:var(--muted);font-size:.72rem;font-weight:800}.bill-average-row>.analytics-bar{grid-column:1 / -1}.analytics-watch-panel{background:linear-gradient(135deg,color-mix(in srgb,var(--lime) 12%,transparent),transparent 46%),color-mix(in srgb,var(--surface-strong) 88%,transparent)}.analytics-trend-panel{grid-column:1 / -1}.calculator-page{display:grid;gap:20px;max-width:none;width:100%}.calculator-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:start}.calculator-card,.calculator-tool-card{display:grid;gap:16px}.calculator-display{min-height:118px;display:grid;align-content:end;gap:8px;padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--surface-strong);text-align:right}.calculator-display span{min-height:1.15em;color:var(--muted);font-size:.78rem;font-weight:850;letter-spacing:.08em;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.calculator-display strong{color:var(--text);font-family:Space Grotesk,sans-serif;font-size:clamp(2rem,7vw,3.2rem);line-height:1;overflow-wrap:anywhere}.calculator-keypad{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.calculator-key{min-height:58px;border:1px solid var(--line);border-radius:16px;background:var(--surface-strong);color:var(--text);cursor:pointer;font:inherit;font-size:1.05rem;font-weight:900;transition:transform .16s ease,border-color .16s ease,background .16s ease}.calculator-key:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.calculator-key.is-muted{background:color-mix(in srgb,var(--line) 48%,var(--surface) 52%)}.calculator-key.is-operator{background:color-mix(in srgb,var(--accent) 14%,var(--surface-strong));color:var(--accent)}.calculator-key.is-equals{border-color:transparent;background:var(--accent);color:#fff}.calculator-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.calculator-tool-stack{display:grid;gap:20px;align-content:start}.calculator-field-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.calculator-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.calculator-result-grid.one{grid-template-columns:1fr}.calculator-result-grid div{display:grid;gap:5px;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface-strong)}.calculator-result-grid span{color:var(--muted);font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.calculator-result-grid strong{font-family:Space Grotesk,sans-serif;font-size:1.45rem;line-height:1.05}@media(max-width:920px){.calculator-layout,.calculator-tools,.calculator-tool-stack,.calculator-field-grid,.savings-calculator-grid,.savings-duration-fields,.calculator-result-grid{grid-template-columns:1fr}.calculator-display{min-height:104px}.calculator-key{min-height:54px;border-radius:14px}}.analytics-watch-item{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:start;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.analytics-watch-item>span{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:color-mix(in srgb,var(--lime) 48%,var(--surface-strong) 52%);color:#12140f;font-weight:900}.analytics-watch-item p{margin:0;color:var(--text);font-weight:800;line-height:1.35}.monthly-trend-chart{display:grid;grid-template-columns:repeat(auto-fit,minmax(54px,1fr));gap:10px;min-height:156px;align-items:end}.monthly-trend-column{display:grid;gap:6px;min-width:0;text-align:center}.monthly-trend-bars{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:4px;height:96px;padding:8px;border-radius:14px;background:color-mix(in srgb,var(--surface) 86%,transparent);border:1px solid var(--line)}.monthly-trend-bars span{display:block;min-height:4px;border-radius:999px 999px 3px 3px}.monthly-trend-bars .is-inflow,.trend-legend .is-inflow:before{background:var(--lime)}.monthly-trend-bars .is-outflow,.trend-legend .is-outflow:before{background:var(--danger)}.monthly-trend-column strong{font-size:.8rem}.monthly-trend-column small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800}.trend-legend{display:flex;flex-wrap:wrap;gap:10px;color:var(--muted);font-size:.78rem;font-weight:800}.trend-legend span{display:inline-flex;align-items:center;gap:6px}.trend-legend span:before{content:"";width:9px;height:9px;border-radius:999px}.monthly-report-table{display:grid;gap:8px}.monthly-report-head,.monthly-report-row{display:grid;grid-template-columns:minmax(150px,1.35fr) repeat(4,minmax(76px,1fr));gap:10px;align-items:center}.monthly-report-head{padding:0 12px 4px;color:var(--muted);font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.monthly-report-row{padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--surface);font-size:.86rem;font-weight:800}.monthly-report-row.is-empty{color:var(--muted);background:color-mix(in srgb,var(--surface) 70%,var(--surface-soft) 30%)}.monthly-report-row>div{display:grid;gap:3px;min-width:0}.monthly-report-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem}.monthly-report-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.74rem;font-weight:800}.monthly-report-row span,.monthly-report-row em{text-align:right}.monthly-report-row em{font-style:normal;font-weight:900}.payoff-strategy-controls,.payoff-comparison-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}.strategy-button,.comparison-card{border:1px solid var(--line);border-radius:14px;background:var(--surface-strong);color:var(--text);font:inherit;cursor:pointer}.strategy-button{padding:10px 12px;font-weight:900}.strategy-button.is-active,.comparison-card.is-active{border-color:color-mix(in srgb,var(--lime) 55%,var(--line) 45%);background:color-mix(in srgb,var(--lime) 25%,var(--surface-strong) 75%)}.comparison-card{display:grid;gap:4px;padding:12px;text-align:left}.comparison-card span,.comparison-card small{color:var(--muted);font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.comparison-card strong{font-family:Space Grotesk,sans-serif;font-size:1.04rem}.payoff-method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}.payoff-method-card{display:grid;align-content:start;gap:8px;min-height:172px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--surface-strong);color:var(--text);text-align:left;font:inherit;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background .2s ease}.payoff-method-card:hover{transform:translateY(-1px)}.payoff-method-card.is-active{border-color:color-mix(in srgb,var(--lime) 56%,var(--line) 44%);background:color-mix(in srgb,var(--lime) 19%,var(--surface-strong) 81%)}.payoff-method-card span,.payoff-method-card small{color:var(--muted);font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.payoff-method-card p{margin:0;color:var(--text);font-size:.84rem;line-height:1.45}.payoff-method-card strong{align-self:end;font-family:Space Grotesk,sans-serif;font-size:1.12rem}.custom-priority-field{display:grid;grid-template-columns:minmax(0,1fr) 96px;align-items:center;gap:12px;margin:10px 0;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface-strong) 84%,transparent);font-weight:800}.custom-priority-field span{color:var(--muted)}.custom-priority-field input{width:100%;border:1px solid var(--line);border-radius:10px;padding:9px 10px;background:var(--surface-strong);color:var(--text);font:inherit;font-weight:900}.import-preview-panel{max-width:640px}.import-preview-summary{display:grid;gap:4px;padding:14px;border-radius:16px;border:1px solid var(--line);background:var(--surface-soft)}.import-preview-summary span{color:var(--muted);font-weight:700}.import-preview-grid{display:grid;grid-template-columns:minmax(0,1fr) 90px 90px;gap:1px;overflow:hidden;margin-top:14px;border:1px solid var(--line);border-radius:16px;background:var(--line)}.import-preview-grid>*{padding:11px 12px;background:var(--surface-strong)}.import-preview-head{color:var(--muted);font-size:.74rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.import-preview-warning{margin:14px 0 0;color:var(--muted);line-height:1.45;font-weight:700}@media(max-width:1100px){.analytics-grid{grid-template-columns:1fr}}@media(max-width:920px){.hero.hero-compact{grid-template-columns:1fr}.hero-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.save-status{width:100%;display:grid;grid-template-columns:1fr;border-radius:18px}.save-status span{text-align:center}.hero.hero-compact{padding:18px}.hero-action-row{display:grid;grid-template-columns:1fr}.hero-compact .hero-expense-button,.hero-secondary-button{width:100%}.hero-metrics-grid{grid-template-columns:1fr}.hero-metrics-grid .stat-chip{min-height:0}.hero-meta{display:grid;width:100%;gap:6px;border-radius:16px}.hero-meta span+span{padding-left:0;border-left:none}.payoff-strategy-controls,.payoff-comparison-grid,.payoff-method-grid,.analytics-mini-grid,.analytics-report-summary{grid-template-columns:1fr}.analytics-report-toggle{width:100%}.analytics-report-controls{justify-content:stretch}.analytics-month-field{width:100%}.analytics-report-toggle button{min-width:0}.monthly-trend-chart{grid-template-columns:repeat(3,minmax(0,1fr))}.monthly-report-head{display:none}.monthly-report-row{grid-template-columns:1fr;gap:6px}.monthly-report-row span,.monthly-report-row em{display:flex;justify-content:space-between;text-align:left}.monthly-report-row span:nth-of-type(1):before{content:"Money in";color:var(--muted)}.monthly-report-row span:nth-of-type(2):before{content:"Bills";color:var(--muted)}.monthly-report-row span:nth-of-type(3):before{content:"Expenses";color:var(--muted)}.monthly-report-row em:before{content:"Net";color:var(--muted)}}@media(max-width:460px){.page-shell{width:calc(100% - 16px)}.hero-meta{display:grid;width:100%}.stat-chip{padding:14px}.import-preview-grid{grid-template-columns:minmax(0,1fr) 72px 72px}}@media(max-width:640px){body{padding-bottom:calc(78px + env(safe-area-inset-bottom))}.page-shell{padding-bottom:24px}.topbar-actions{display:grid;grid-template-columns:1fr;gap:8px}.account-pill,.cloud-status-pill,.settings-button,.logout-button,.primary-button,.ghost-button,.theme-toggle,.utility-button{min-height:44px}.tab-bar{position:fixed;left:max(10px,env(safe-area-inset-left));right:max(10px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom));z-index:80;display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;gap:6px;margin:0;padding:8px;border-radius:20px;box-shadow:0 18px 45px #00000038}.tab-button{flex:0 0 auto;min-width:92px;min-height:42px;padding:9px 12px;font-size:.86rem;line-height:1.1;white-space:nowrap;scroll-snap-align:start}.auth-shell{min-height:100svh;align-items:start;padding:14px 8px}.auth-card{width:100%;padding:18px;border-radius:20px}.auth-brand{gap:12px;margin-bottom:14px}.auth-logo{width:78px;height:78px;border-radius:14px;clip-path:inset(10% round 12px);transform:scale(1.12)}.auth-brand h1{font-size:clamp(2.1rem,10vw,2.65rem)}.auth-copy{margin-bottom:16px;line-height:1.4}.field input,.field select,.table-input,input[type=date]{min-height:46px;padding:11px 12px}.hero.hero-compact{gap:14px}.hero-panel{padding:12px;border-radius:18px}.stat-chip,.summary-card,.budget-stat,.pay-period-clean-card,.due-item,.budget-bill-row,.budget-activity-item{padding:13px;border-radius:16px}.stat-chip strong,.summary-card strong,.budget-stat strong{font-size:1.08rem;white-space:normal}.due-item-actions{min-width:0;width:100%}.due-button-stack{width:100%}.due-button-stack .paid-toggle,.paid-toggle{width:100%;min-height:42px}.modal-overlay{align-items:end;padding:10px;padding-bottom:max(10px,env(safe-area-inset-bottom))}.modal-panel{width:100%;max-height:calc(100vh - 20px - env(safe-area-inset-top));border-radius:22px}.modal-body{padding:16px}.modal-header,.modal-footer{padding-left:16px;padding-right:16px}.modal-footer{display:grid;grid-template-columns:1fr}.modal-footer .ghost-button,.modal-footer .primary-button{width:100%}}.tab-icon,.tab-mobile-label,.mobile-section-toggle{display:none}.mobile-section,.mobile-section-body{display:contents}.mobile-list-toggle{display:none}@media(hover:none)and (pointer:coarse){.theme-toggle:hover,.utility-button:hover,.hero-expense-button:hover,.tab-button:hover,.primary-button:hover,.ghost-button:hover,.settings-button:hover,.settings-chip:hover,.paid-toggle:hover,.category-filter-button:hover,.payoff-method-card:hover{transform:none}}@media(max-width:640px){:root{--shadow: 0 12px 28px rgba(18, 20, 16, .12);--radius-xl: 20px;--radius-lg: 16px;--radius-md: 12px}body{background:linear-gradient(180deg,color-mix(in srgb,var(--bg) 90%,white 10%) 0%,var(--bg) 100%)}.page-shell{width:100%;padding:0 10px calc(96px + env(safe-area-inset-bottom))}.topbar{position:sticky;top:0;z-index:70;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;margin:0 -10px 10px;padding:calc(8px + env(safe-area-inset-top)) 10px 8px;border-bottom:1px solid color-mix(in srgb,var(--line) 74%,transparent);background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.brand-lockup{min-width:0;gap:8px}.brand-logo{width:42px;height:42px;border-radius:12px;box-shadow:0 8px 18px #00000029;transform:none;clip-path:inset(8% round 10px)}.brand-lockup span{font-size:1rem!important}.topbar-actions{display:flex;justify-content:end;align-items:center;gap:6px;width:auto}.account-pill,.cloud-status-pill{display:none}.settings-button,.logout-button{width:auto;min-height:38px;padding:9px 11px;border-radius:999px;font-size:.78rem}.hero.hero-compact{display:grid;gap:12px;margin:0 0 12px;padding:16px;border-radius:22px;color:#fff}.hero-kicker{margin-bottom:0;font-size:.7rem;letter-spacing:.1em}.hero-copy{gap:10px}.hero-copy h2{font-size:1.75rem!important;line-height:1.05!important}.hero-meta{display:grid;gap:4px;padding:10px;border-radius:14px;font-size:.84rem;line-height:1.25}.hero-action-row{margin-top:0}.hero-expense-button{min-height:46px;justify-content:center;padding:11px 14px;border-radius:14px;font-size:.92rem}.hero-panel{margin:0 -2px;padding:0;border:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.hero-metrics-grid{display:flex;grid-template-columns:none;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.hero-metrics-grid::-webkit-scrollbar{display:none}.hero-metrics-grid .stat-chip{flex:0 0 min(78vw,280px);min-height:88px;scroll-snap-align:start;padding:14px;border-radius:18px;background:#ffffff24}.hero-metrics-grid .stat-chip strong{font-size:1.25rem;white-space:normal}.card{padding:16px;border-radius:18px;box-shadow:0 10px 24px #00000014}.layout,.overview-layout,.budget-planner-grid,.budget-grid,.debt-layout,.analytics-grid,.settings-section-grid{display:grid;grid-template-columns:1fr!important;gap:12px}.look-ahead-card,.due-card,.budget-bills-card,.settings-block.full{grid-column:auto;grid-row:auto}.section-heading-row,.budget-heading-row,.budget-hero-top,.budget-card-header,.analytics-panel-heading,.pay-period-clean-header{display:grid;grid-template-columns:1fr;align-items:start;gap:10px}.section-heading-row h3,.look-ahead-header h3,.analytics-panel-heading strong{font-size:1.06rem!important;line-height:1.18}.section-kicker{font-size:.68rem;letter-spacing:.1em}.action-button-row,.budget-heading-actions,.settings-action-row,.hero-action-row,.budget-expense-actions,.budget-recurring-form{display:grid;grid-template-columns:1fr;width:100%;gap:8px}.search-input,.primary-button,.ghost-button,.budget-money-button,.add-debt-button{width:100%;min-height:46px;justify-content:center;text-align:center}.budget-balance-panel{grid-template-columns:1fr}.budget-view-switch{width:100%;grid-template-columns:1fr 1fr}.budget-view-switch button{min-width:0;padding:9px 10px}.analytics-account-grid,.budget-log-header,.budget-log-controls,.budget-log-filter{display:grid;grid-template-columns:1fr;width:100%}.budget-log-header{align-items:stretch}.budget-balance-callout{min-height:118px;padding:16px;border-radius:16px}.budget-balance-callout strong{font-size:2rem}.budget-daily-limit-top{display:grid;grid-template-columns:1fr}.budget-daily-limit-total{justify-items:start}.budget-daily-limit-total>strong{text-align:left;font-size:2rem}.budget-limit-breakdown,.budget-recurring-item{grid-template-columns:1fr}.budget-recurring-item .mini-action{width:100%;min-height:42px}.field{gap:6px}.field input,.field select,.table-input,.search-input,input[type=date],.pay-period-view-field select,.pay-period-view-field input,.extra-payment-row input,.custom-priority-field input{min-height:48px;border-radius:13px;padding:12px 13px;font-size:16px}.summary-grid,.budget-stat-grid,.savings-calculator-grid,.savings-duration-fields,.savings-result-grid,.pay-period-clean-grid,.dti-grid,.dti-summary,.analytics-mini-grid,.payoff-strategy-controls,.payoff-comparison-grid,.payoff-method-grid,.settings-pay-grid,.pay-check-grid,.modal-grid{grid-template-columns:1fr!important}.summary-card,.budget-stat,.budget-limit-breakdown>div,.budget-recurring-item,.pay-period-clean-card,.due-item,.budget-bill-row,.budget-activity-item,.analytics-panel,.settings-block,.extra-payment-row,.custom-priority-field{padding:14px;border-radius:16px}.summary-card strong,.budget-stat strong,.pay-period-clean-card strong,.due-item strong,.analytics-saved-pill{font-size:1.12rem;white-space:normal}.due-list,.budget-bill-list,.budget-activity-list{gap:10px}.due-item{display:grid;grid-template-columns:1fr}.due-item-actions{min-width:0;width:100%;align-items:stretch;text-align:left}.due-button-stack,.mini-action-group{width:100%}.due-button-stack .paid-toggle,.paid-toggle,.budget-bill-row .paid-toggle{width:100%;min-height:44px}.category-filter{display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;padding-bottom:3px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.category-filter::-webkit-scrollbar{display:none}.category-filter-button{flex:0 0 auto;min-height:40px}.calendar-weekdays,.calendar-grid{min-width:560px}.look-ahead{overflow:hidden}.look-ahead>div:last-child{overflow-x:auto;-webkit-overflow-scrolling:touch;padding:12px 16px 18px!important;scrollbar-width:none}.look-ahead>div:last-child::-webkit-scrollbar{display:none}.look-ahead>div:first-child{padding:16px 16px 0!important;display:grid!important;grid-template-columns:1fr!important;align-items:start!important}.look-ahead>div:first-child>div:last-child{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;width:100%}.look-ahead .select-shell{min-width:0!important}.look-ahead select{width:100%;min-height:44px}.calendar-pay-setup-pill{grid-column:1 / -1;min-width:0}.calendar-day{min-height:92px;padding:9px;border-radius:14px}.calendar-bill-count{min-width:0;width:fit-content;padding:6px 8px;font-size:.7rem}.calendar-bill-tooltip{position:fixed;left:12px;right:12px;top:auto;bottom:calc(86px + env(safe-area-inset-bottom));max-width:none}.monthly-trend-chart{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.settings-page{max-width:none}.settings-menu-wrap,.settings-button{width:auto}.settings-theme-grid .settings-chip,.settings-page-theme-grid .settings-chip{flex:1 1 calc(50% - 6px);min-height:42px}.modal-overlay{align-items:end;padding:8px;padding-bottom:max(8px,env(safe-area-inset-bottom))}.modal-panel{width:100%;max-height:calc(100svh - 16px - env(safe-area-inset-top));border-radius:22px 22px 18px 18px}.modal-header,.modal-body{padding:16px}.modal-footer{display:grid;grid-template-columns:1fr;gap:8px;padding:12px 16px 16px}.modal-footer .ghost-button,.modal-footer .primary-button{width:100%}.auth-shell{min-height:100svh;align-items:start;padding:max(14px,env(safe-area-inset-top)) 10px 18px}.auth-card{width:100%;margin-top:min(8vh,36px);padding:20px;border-radius:22px}.auth-brand{align-items:start;gap:12px}.auth-logo{width:78px;height:78px;border-radius:14px;clip-path:inset(10% round 12px);transform:scale(1.12)}.auth-brand h1{font-size:clamp(2.05rem,9vw,2.6rem)}.auth-copy{margin-bottom:16px;line-height:1.42}.auth-form{gap:12px}.toast-stack{top:max(18px,env(safe-area-inset-top));right:10px;left:10px;width:auto}.page-shell:not([data-active-tab=dashboard]) .hero{display:none}.tab-bar{position:fixed;left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));bottom:max(8px,env(safe-area-inset-bottom));z-index:100;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin:0;padding:7px;border-radius:24px;background:color-mix(in srgb,var(--surface-strong) 88%,transparent);box-shadow:0 16px 42px #00000038;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);overflow:visible}.tab-button{display:grid;justify-items:center;align-content:center;gap:4px;min-width:0;min-height:54px;padding:6px 3px;border-radius:18px;font-size:.68rem;line-height:1;white-space:nowrap}.tab-label{display:none}.tab-icon,.tab-mobile-label{display:block}.tab-icon{position:relative;width:22px;height:22px;color:currentColor;opacity:.92}.tab-mobile-label{max-width:100%;overflow:hidden;text-overflow:ellipsis;font-size:.68rem;font-weight:900}.tab-button[data-tab=dashboard] .tab-icon{display:grid;grid-template-columns:repeat(2,7px);grid-template-rows:repeat(2,7px);gap:4px;place-content:center}.tab-button[data-tab=dashboard] .tab-icon:before{content:"";width:7px;height:7px;border-radius:3px;background:currentColor;box-shadow:11px 0 0 currentColor,0 11px 0 currentColor,11px 11px 0 currentColor}.tab-button[data-tab=calendar] .tab-icon:before{content:"";position:absolute;top:3px;right:2px;bottom:2px;left:2px;border:2px solid currentColor;border-radius:6px}.tab-button[data-tab=calendar] .tab-icon:after{content:"";position:absolute;left:6px;right:6px;top:8px;height:2px;background:currentColor;box-shadow:0 5px color-mix(in srgb,currentColor 70%,transparent)}.tab-button[data-tab=bills] .tab-icon:before{content:"";position:absolute;top:2px;right:4px;bottom:2px;left:4px;border:2px solid currentColor;border-radius:5px}.tab-button[data-tab=bills] .tab-icon:after{content:"";position:absolute;left:8px;right:7px;top:8px;height:2px;background:currentColor;box-shadow:0 5px 0 currentColor}.tab-button[data-tab=debt] .tab-icon:before{content:"$";position:absolute;top:2px;right:2px;bottom:2px;left:2px;display:grid;place-items:center;border:2px solid currentColor;border-radius:999px;font-size:.78rem;font-weight:900;line-height:1}.tab-button[data-tab=banker] .tab-icon:before{content:"";position:absolute;left:2px;right:2px;bottom:3px;height:13px;border:2px solid currentColor;border-radius:5px}.tab-button[data-tab=banker] .tab-icon:after{content:"";position:absolute;left:5px;right:5px;top:3px;height:9px;border:2px solid currentColor;border-bottom:0;border-radius:5px 5px 0 0}.tab-button.is-active{color:#11130f}.app-footer{margin:20px 0 0;text-align:center}}@media(max-width:760px){body{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.page-shell{width:100%;padding:0 10px calc(96px + env(safe-area-inset-bottom))}.topbar{position:sticky;top:0;z-index:70;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;margin:0 -10px 10px;padding:calc(8px + env(safe-area-inset-top)) 10px 8px;border-bottom:1px solid color-mix(in srgb,var(--line) 74%,transparent);background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.brand-lockup{min-width:0;gap:8px}.brand-logo{width:42px;height:42px;border-radius:12px;box-shadow:0 8px 18px #00000029;transform:none;clip-path:inset(8% round 10px)}.brand-lockup span{font-size:1rem!important}.topbar-actions{display:flex;justify-content:end;align-items:center;gap:6px;width:auto}.account-pill,.cloud-status-pill{display:none}.settings-button,.logout-button{width:auto;min-height:38px;padding:9px 11px;border-radius:999px;font-size:.78rem}.page-shell:not([data-active-tab=dashboard]) .hero{display:none}.tab-bar{position:fixed;left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));bottom:max(8px,env(safe-area-inset-bottom));z-index:100;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin:0;padding:7px;border-radius:24px;background:color-mix(in srgb,var(--surface-strong) 88%,transparent);box-shadow:0 16px 42px #00000038;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);overflow:visible}.tab-button{display:grid;justify-items:center;align-content:center;gap:4px;min-width:0;min-height:54px;padding:6px 3px;border-radius:18px;font-size:.68rem;line-height:1;white-space:nowrap}.tab-label{display:none}.tab-mobile-label{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;font-size:.68rem;font-weight:900}.mobile-section{display:grid;gap:8px}.mobile-section+.mobile-section{margin-top:2px}.mobile-section-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:58px;padding:12px 14px;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--surface-strong) 88%,var(--lime) 12%);color:var(--text);box-shadow:0 8px 18px #0000000f;text-align:left;font:inherit;cursor:pointer}.mobile-section-toggle:focus{outline:none}.mobile-section-toggle:focus-visible{border-color:color-mix(in srgb,var(--lime) 62%,var(--line) 38%);box-shadow:0 0 0 4px color-mix(in srgb,var(--lime) 28%,transparent),0 8px 18px #0000000f}.mobile-section-toggle>span:first-child{display:grid;gap:2px;min-width:0}.mobile-section-toggle strong{font-family:Space Grotesk,sans-serif;font-size:1rem;line-height:1.1}.mobile-section-toggle small{color:var(--muted);font-size:.78rem;font-weight:800;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-section-chevron{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:999px;background:color-mix(in srgb,var(--surface-strong) 70%,var(--line) 30%);color:var(--muted);font-size:1rem;font-weight:900;transition:transform .18s ease}.mobile-section.is-open .mobile-section-chevron{transform:rotate(180deg)}.mobile-section-body{display:block}.mobile-section.is-collapsed .mobile-section-body{display:none}.mobile-section-body>.card,.mobile-section-body>.due-card,.mobile-section-body>.budget-module-shell{margin:0}.mobile-list-toggle{display:inline-flex;width:100%;min-height:44px;margin-top:12px;justify-content:center;border:1px solid color-mix(in srgb,var(--lime) 38%,var(--line) 62%);background:color-mix(in srgb,var(--lime) 16%,var(--surface-strong) 84%);color:var(--text);font-weight:900}}@media(min-width:761px){.tab-bar .tab-icon,.tab-bar .tab-mobile-label,.mobile-section-toggle,.mobile-section-chevron,.mobile-list-toggle{display:none!important}.tab-bar .tab-label{display:inline!important}.mobile-section,.mobile-section-body,.mobile-section.is-collapsed .mobile-section-body{display:contents!important}}@media(max-width:430px){html,body,#root{width:100%;max-width:100%;overflow-x:clip}.page-shell,.hero,.card,.budget-module-shell,.modal-panel,.auth-card,.settings-menu{max-width:100%}.page-shell{padding-inline:8px}.topbar{grid-template-columns:minmax(0,1fr) max-content}.brand-lockup,.hero-copy,.stat-chip,.summary-card,.budget-card-header,.section-heading-row,.budget-recurring-item,.budget-activity-item,.due-item{min-width:0}.brand-lockup span,.hero-meta span,.stat-chip span,.stat-chip strong,.summary-card span,.summary-card strong,.budget-card-header strong,.budget-recurring-item strong,.budget-recurring-item span,.budget-activity-item strong,.budget-activity-item span,.due-item h3,.due-item p,.cell-view{overflow-wrap:anywhere}.topbar-actions{min-width:0}.settings-button,.logout-button,.primary-button,.ghost-button,.danger-ghost,.theme-toggle,.utility-button,.paid-toggle,.category-filter-button,.calendar-nav-button,.mobile-list-toggle,.auth-link-button,.auth-switch{min-height:44px}.settings-button,.logout-button{padding-block:10px}.field input,.field select,.table-input,.pay-period-view-field select,.pay-period-view-field input,.budget-bill-row input,.budget-log-filter select,.budget-log-filter input,.extra-payment-row input{min-height:48px}.password-toggle,.modal-close,.toast button,.mini-action{min-width:44px;min-height:44px}.auth-shell{min-height:100svh;place-items:start center;padding:10px 8px max(14px,env(safe-area-inset-bottom))}.auth-card{max-height:calc(100svh - 20px);overflow-y:auto;-webkit-overflow-scrolling:touch}.auth-brand{align-items:center}.auth-form{gap:12px}.auth-submit{position:sticky;bottom:0;z-index:2}.tab-bar{grid-template-columns:repeat(5,minmax(0,1fr));left:max(6px,env(safe-area-inset-left));right:max(6px,env(safe-area-inset-right));bottom:max(6px,env(safe-area-inset-bottom));max-width:calc(100vw - 12px - env(safe-area-inset-left) - env(safe-area-inset-right))}.tab-button{min-height:56px;padding-inline:2px;white-space:normal}.tab-mobile-label{white-space:nowrap}.hero,.card{padding:14px}.hero-panel,.hero-metrics-grid,.summary-grid,.period-paydown-grid,.pay-period-clean-grid,.controls-grid,.budget-planner-grid,.budget-grid,.budget-action-grid,.budget-support-grid,.analytics-account-grid,.budget-recurring-form,.budget-recurring-item,.budget-activity-item,.budget-log-header,.budget-log-controls,.extra-payment-row,.calendar-pay-setup-row,.settings-account-actions,.settings-account-button-row{grid-template-columns:minmax(0,1fr)!important}.budget-log-header,.settings-account-actions{display:grid;align-items:stretch}.budget-log-filter,.calendar-pay-setup-pill{min-width:0;width:100%}.budget-expense-actions,.budget-activity-actions,.action-button-row,.settings-action-row,.settings-account-button-row{width:100%}.budget-expense-actions,.settings-account-button-row{display:grid}.budget-expense-actions>*,.settings-action-row>*,.settings-account-button-row>*,.budget-activity-actions>*,.action-button-row>*{width:100%}.budget-recurring-item .mini-action-group,.budget-activity-actions .mini-action-group{justify-content:stretch;width:100%}.budget-recurring-item .mini-action,.budget-activity-actions .mini-action{flex:1 1 0}.category-filter{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:18px;scrollbar-width:thin}.category-filter-button{flex:0 0 auto}.calendar-weekdays,.calendar-grid{gap:4px}.calendar-weekday{font-size:.62rem;letter-spacing:.04em}.calendar-day{min-height:72px;padding:6px;border-radius:12px;gap:5px}.calendar-bill-chip,.calendar-empty{font-size:.68rem}.calendar-nav,.look-ahead-tools{width:100%}.calendar-nav{display:grid;grid-template-columns:1fr 1fr}.modal-overlay{align-items:stretch;padding:max(8px,env(safe-area-inset-top)) 8px max(8px,env(safe-area-inset-bottom))}.modal-panel{align-self:end;max-height:calc(100svh - 16px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;border-radius:20px}.modal-header{padding:14px 14px 12px}.modal-title{min-width:0;font-size:1.12rem;overflow-wrap:anywhere}.modal-body{padding:14px}.modal-footer{position:sticky;bottom:0;z-index:2;display:grid;grid-template-columns:minmax(0,1fr);gap:8px;padding:12px 14px max(14px,env(safe-area-inset-bottom));background:var(--surface-strong)}.modal-footer .ghost-button,.modal-footer .primary-button,.modal-footer .danger-ghost{width:100%;min-height:44px}.import-preview-grid{grid-template-columns:minmax(0,1fr) 64px 64px;font-size:.9rem}.import-preview-grid>*{padding:9px 8px;min-width:0;overflow-wrap:anywhere}.toast-stack{left:8px;right:8px;bottom:calc(82px + env(safe-area-inset-bottom))}.toast{width:100%;max-width:none}}@media(max-width:760px){.mobile-section{gap:6px}.mobile-section+.mobile-section{margin-top:8px}.mobile-section-toggle{position:relative;min-height:52px;padding:10px 12px 10px 16px;overflow:hidden;border-radius:16px;border:1px solid color-mix(in srgb,var(--line) 72%,var(--lime) 28%);background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong) 90%,var(--lime) 10%),color-mix(in srgb,var(--surface-strong) 84%,var(--cyan) 16%));box-shadow:0 8px 20px #00000014}.mobile-section-toggle:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,var(--lime),var(--teal))}.mobile-section-toggle strong{font-size:.98rem}.mobile-section-toggle small{max-width:28ch;color:color-mix(in srgb,var(--muted) 82%,var(--text) 18%);font-size:.76rem}.mobile-section-chevron{flex-basis:32px;width:32px;height:32px;background:color-mix(in srgb,var(--lime) 24%,var(--surface-strong) 76%);color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--line) 70%,transparent)}.mobile-section.is-open .mobile-section-toggle{background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong) 78%,var(--lime) 22%),color-mix(in srgb,var(--surface-strong) 86%,var(--teal) 14%))}.mobile-section-body>.card,.mobile-section-body>.due-card,.mobile-section-body>.budget-module-shell{border-top-left-radius:14px;border-top-right-radius:14px}.table-wrap{margin-top:12px}input[data-mobile-armed=true],textarea[data-mobile-armed=true]{border-color:color-mix(in srgb,var(--lime) 64%,var(--line) 36%);box-shadow:0 0 0 4px color-mix(in srgb,var(--lime) 22%,transparent)}input[data-mobile-armed=true]::placeholder,textarea[data-mobile-armed=true]::placeholder{color:color-mix(in srgb,var(--muted) 78%,var(--text) 22%)}.look-ahead{overflow:hidden}.look-ahead>div:last-child{overflow-x:visible;padding-inline:12px!important}.calendar-weekdays,.calendar-grid{min-width:0!important;width:100%;gap:3px}.calendar-weekday{font-size:clamp(.52rem,1.8vw,.66rem);letter-spacing:.02em}.calendar-day{min-height:clamp(54px,12vw,78px);padding:5px;border-radius:10px;gap:4px}.calendar-day-number{font-size:.82rem;line-height:1}.calendar-day-bills{gap:3px}.calendar-bill-name,.calendar-bill-count,.calendar-today-badge,.calendar-payday-badge{padding:3px 5px;font-size:clamp(.52rem,1.7vw,.64rem);line-height:1.05}.calendar-bill-count{max-width:100%}.calendar-day.is-today{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--surface-strong) 90%,transparent)}}@media(max-width:760px){.modal-overlay{align-items:flex-start!important;justify-content:center;padding:max(10px,env(safe-area-inset-top)) 8px max(10px,env(safe-area-inset-bottom))!important;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-panel{align-self:flex-start!important;width:min(100%,520px);max-height:calc(100svh - 20px - env(safe-area-inset-top) - env(safe-area-inset-bottom))!important;margin:0 auto;border-radius:20px!important}}body{background:linear-gradient(180deg,#fff,#f6f7f9 44%,#f3f5f8)!important}.page-shell{width:min(1480px,calc(100% - 44px))!important;padding-top:18px!important;padding-left:calc(var(--sidebar-collapsed) + 18px)!important}.app-sidebar{display:grid!important}.tab-bar{display:none!important}.topbar{min-height:64px!important;margin-bottom:16px!important;padding:8px 4px 8px 0!important;flex-direction:row!important;align-items:center!important}.hero.hero-compact{grid-template-columns:minmax(0,1fr) minmax(360px,.82fr)!important;margin-bottom:18px!important;padding:22px!important;border:1px solid rgba(15,23,42,.08)!important;border-radius:26px!important;background:#fff!important;color:var(--text)!important;box-shadow:0 16px 38px #0f172a14!important}.hero-panel,.hero-metrics-grid{background:#f8fafc!important;border:1px solid rgba(15,23,42,.1)!important;border-radius:22px!important}.hero-meta{background:#f4f7fb!important;color:var(--muted)!important}.stat-chip{background:#fff!important;border:1px solid rgba(15,23,42,.1)!important}.stat-chip span,.hero-note{color:var(--muted)!important}.stat-chip strong{color:var(--text)!important}.hero-compact .hero-expense-button,.hero-expense-button{position:static!important;width:fit-content!important;background:#2f7df6!important;color:#fff!important;border:0!important;box-shadow:0 12px 24px #2f7df633!important}.dashboard-workspace{display:grid!important;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr)!important;gap:18px!important;align-items:start!important}.card{background:#fff!important;border-color:#0f172a14!important;border-radius:22px!important;box-shadow:0 12px 30px #0f172a12!important}@media(max-width:920px){.page-shell{width:min(100% - 24px,760px)!important;padding-left:0!important;padding-bottom:92px!important}.app-sidebar{top:auto!important;left:12px!important;right:12px!important;bottom:12px!important;width:auto!important;height:72px!important;border-radius:24px!important}.hero.hero-compact,.dashboard-workspace{grid-template-columns:1fr!important}.dashboard-upcoming-frame{grid-column:auto!important;grid-row:auto!important}}.hero-kicker,.section-kicker.hero-kicker{color:#6b7280!important;letter-spacing:.12em!important}.side-nav-icon:before,.side-nav-icon:after{display:none!important}.side-svg-icon,.top-svg-icon{width:22px;height:22px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.top-svg-icon{width:21px;height:21px}.user-menu-button{width:auto!important;min-width:68px;padding:0 16px;background:#18202a!important;color:#fff!important}.user-menu-button span{font-size:.86rem;font-weight:900}.account-pill{display:none!important}@media(max-width:920px){.sidebar-nav{grid-template-columns:repeat(6,minmax(0,1fr))!important}.user-menu-button{min-width:62px;padding:0 12px}}.app-sidebar{grid-template-rows:1fr auto!important;width:78px!important;padding:12px!important}.app-sidebar:hover,.app-sidebar:focus-within{width:226px!important}.sidebar-brand,.sidebar-logo{display:none!important}.sidebar-nav{align-content:start!important;justify-items:center!important}.side-nav-button{width:54px!important;min-height:54px!important;display:grid!important;grid-template-columns:1fr!important;place-items:center!important;padding:0!important}.app-sidebar:hover .side-nav-button,.app-sidebar:focus-within .side-nav-button{width:100%!important;grid-template-columns:54px 1fr!important;justify-items:start!important}.side-nav-icon{width:48px!important;height:48px!important;margin:0!important}.side-svg-icon{width:27px!important;height:27px!important;stroke-width:1.75!important}.side-nav-label{justify-self:start!important}.topbar-title{display:flex!important;align-items:center!important;gap:12px!important}.topbar-logo{width:44px;height:44px;border-radius:14px;object-fit:cover;clip-path:inset(10% round 12px);box-shadow:0 10px 20px #0f172a1f}.topbar-kicker{display:none!important}.settings-button{display:inline-grid!important;place-items:center!important}.settings-button .top-svg-icon{width:25px!important;height:25px!important;margin:0!important;stroke-width:1.7!important}.user-menu-wrap{position:relative}.user-account-menu{position:absolute;top:calc(100% + 10px);right:0;z-index:260;width:260px;display:grid;gap:4px;padding:10px;border:1px solid rgba(15,23,42,.1);border-radius:18px;background:#fff;box-shadow:0 24px 60px #0f172a29}.user-account-menu-head{display:grid;gap:3px;padding:8px 10px 10px;border-bottom:1px solid rgba(15,23,42,.08);margin-bottom:4px}.user-account-menu-head span{color:var(--muted);font-size:.74rem;font-weight:900;text-transform:uppercase}.user-account-menu-head strong{overflow:hidden;text-overflow:ellipsis;color:var(--text);font-size:.86rem;white-space:nowrap}.user-account-menu button,.user-account-menu a{width:100%;min-height:38px;display:flex;align-items:center;border:0;border-radius:12px;background:transparent;color:var(--text);padding:0 10px;cursor:pointer;font:inherit;font-size:.9rem;font-weight:800;text-align:left;text-decoration:none}.user-account-menu button:hover,.user-account-menu a:hover{background:#f3f6fa}.support-menu{width:160px}body[data-theme=dark]{color-scheme:dark!important;color:#e5edf7!important;background:linear-gradient(180deg,#0c111d,#101827)!important}body[data-theme=dark]:before{background:linear-gradient(90deg,rgba(47,125,246,.12),transparent 28%),linear-gradient(180deg,rgba(24,160,166,.08),transparent 34%)!important}body[data-theme=dark] .topbar-title strong,body[data-theme=dark] .hero h2,body[data-theme=dark] .card h3,body[data-theme=dark] .section-heading-row h3,body[data-theme=dark] .settings-page-card h3{color:#f8fafc!important}body[data-theme=dark] .app-sidebar,body[data-theme=dark] .top-icon-button,body[data-theme=dark] .hero.hero-compact,body[data-theme=dark] .card,body[data-theme=dark] .hero-panel,body[data-theme=dark] .hero-metrics-grid,body[data-theme=dark] .stat-chip,body[data-theme=dark] .summary-card,body[data-theme=dark] .pay-setup-summary-card,body[data-theme=dark] .pay-period-clean-card,body[data-theme=dark] .pay-period-clean-footer,body[data-theme=dark] .due-item,body[data-theme=dark] .settings-block,body[data-theme=dark] .user-account-menu{background:#111827!important;border-color:#94a3b838!important;color:#e5edf7!important;box-shadow:0 18px 42px #00000047!important}body[data-theme=dark] .hero-panel,body[data-theme=dark] .hero-metrics-grid,body[data-theme=dark] .summary-card,body[data-theme=dark] .pay-setup-summary-card{background:#172033!important}body[data-theme=dark] .hero-meta,body[data-theme=dark] .cloud-status-pill,body[data-theme=dark] .count-pill,body[data-theme=dark] .freq-pill,body[data-theme=dark] .auto-pill{background:#1f2937!important;color:#cbd5e1!important;border-color:#94a3b82e!important}body[data-theme=dark] .side-nav-button{color:#94a3b8!important}body[data-theme=dark] .side-nav-button:hover{background:#1f2937!important;color:#f8fafc!important}body[data-theme=dark] .side-nav-button.is-active,body[data-theme=dark] .side-nav-button.is-active .side-nav-icon,body[data-theme=dark] .top-icon-button:hover,body[data-theme=dark] .top-icon-button.is-active{background:#1d4ed8!important;color:#fff!important}body[data-theme=dark] .user-menu-button{background:#2563eb!important;color:#fff!important}body[data-theme=dark] .field input,body[data-theme=dark] .field select,body[data-theme=dark] .table-input,body[data-theme=dark] .money-edit-control,body[data-theme=dark] .pay-period-view-field input,body[data-theme=dark] .pay-period-view-field select{background:#0f172a!important;border-color:#94a3b842!important;color:#f8fafc!important}body[data-theme=dark] .section-kicker,body[data-theme=dark] .hero-kicker,body[data-theme=dark] .summary-detail,body[data-theme=dark] .stat-chip span,body[data-theme=dark] .settings-subtitle,body[data-theme=dark] .settings-muted,body[data-theme=dark] .settings-block-copy,body[data-theme=dark] .field span,body[data-theme=dark] .toggle-label,body[data-theme=dark] .user-account-menu-head span{color:#94a3b8!important}body[data-theme=dark] .stat-chip strong,body[data-theme=dark] .summary-card strong,body[data-theme=dark] .pay-period-clean-card strong,body[data-theme=dark] .due-item h3,body[data-theme=dark] .expense-amount,body[data-theme=dark] .user-account-menu-head strong{color:#f8fafc!important}body[data-theme=dark] .settings-chip{background:#0f172a!important;color:#cbd5e1!important;border-color:#94a3b842!important}body[data-theme=dark] .settings-chip.is-active,body[data-theme=dark] .primary-button{background:#3b82f6!important;color:#fff!important;border-color:#3b82f6!important}body[data-theme=dark] .ghost-button,body[data-theme=dark] .user-account-menu button:hover,body[data-theme=dark] .user-account-menu a:hover{background:#1f2937!important;color:#e5edf7!important}@media(max-width:920px){.app-sidebar,.app-sidebar:hover,.app-sidebar:focus-within{width:auto!important}.side-nav-button,.app-sidebar:hover .side-nav-button,.app-sidebar:focus-within .side-nav-button{width:100%!important;grid-template-columns:1fr!important;place-items:center!important}}.topbar{min-height:82px!important}.topbar-logo{width:72px!important;height:72px!important;border-radius:22px!important;clip-path:inset(10% round 18px)!important;transform:scale(1.08);box-shadow:0 16px 34px #0f172a29!important}.topbar-title{gap:16px!important}.topbar-title strong{font-size:1.48rem!important}.app-sidebar{grid-template-rows:1fr auto!important;align-items:stretch!important}.sidebar-nav{align-self:start!important}.side-nav-button.is-active{background:transparent!important;color:#185abc!important;box-shadow:none!important}.side-nav-button.is-active:before{left:-8px!important;top:17px!important;bottom:17px!important;width:4px!important}.side-nav-button.is-active .side-nav-icon{background:#e8f0fe!important}.side-nav-button:hover{background:transparent!important}.side-nav-button:hover .side-nav-icon{background:#f3f6fa!important}.app-sidebar:hover .side-nav-button.is-active,.app-sidebar:focus-within .side-nav-button.is-active{background:#f8fafc!important}.settings-button{padding:0!important;line-height:0!important}.settings-button .top-svg-icon{width:28px!important;height:28px!important;transform:translate(0)!important}body[data-theme=dark]{--dark-bg: color-mix(in srgb, var(--bg) 80%, #020617 20%);--dark-panel: color-mix(in srgb, var(--surface-strong) 18%, #0f172a 82%);--dark-panel-2: color-mix(in srgb, var(--surface-soft) 22%, #111827 78%);--dark-line: color-mix(in srgb, var(--teal) 24%, rgba(148, 163, 184, .22) 76%);--dark-accent: color-mix(in srgb, var(--teal) 72%, #60a5fa 28%);--dark-accent-soft: color-mix(in srgb, var(--teal) 22%, #111827 78%);background:radial-gradient(circle at 14% 0%,color-mix(in srgb,var(--teal) 16%,transparent),transparent 34%),linear-gradient(180deg,#09111f,#0d1626)!important}body[data-theme=dark] .app-sidebar,body[data-theme=dark] .top-icon-button,body[data-theme=dark] .hero.hero-compact,body[data-theme=dark] .card,body[data-theme=dark] .hero-panel,body[data-theme=dark] .hero-metrics-grid,body[data-theme=dark] .stat-chip,body[data-theme=dark] .summary-card,body[data-theme=dark] .pay-setup-summary-card,body[data-theme=dark] .pay-period-clean-card,body[data-theme=dark] .pay-period-clean-footer,body[data-theme=dark] .due-item,body[data-theme=dark] .settings-block,body[data-theme=dark] .user-account-menu{background:var(--dark-panel)!important;border-color:var(--dark-line)!important}body[data-theme=dark] .hero-panel,body[data-theme=dark] .hero-metrics-grid,body[data-theme=dark] .summary-card,body[data-theme=dark] .pay-setup-summary-card,body[data-theme=dark] .hero-meta,body[data-theme=dark] .cloud-status-pill,body[data-theme=dark] .count-pill,body[data-theme=dark] .freq-pill,body[data-theme=dark] .auto-pill{background:var(--dark-panel-2)!important}body[data-theme=dark] .side-nav-button.is-active{background:transparent!important;color:var(--dark-accent)!important}body[data-theme=dark] .side-nav-button.is-active .side-nav-icon,body[data-theme=dark] .side-nav-button:hover .side-nav-icon{background:var(--dark-accent-soft)!important;color:#f8fafc!important}body[data-theme=dark] .app-sidebar:hover .side-nav-button.is-active,body[data-theme=dark] .app-sidebar:focus-within .side-nav-button.is-active{background:transparent!important}body[data-theme=dark] .side-nav-button.is-active:before,body[data-theme=dark] .settings-chip.is-active,body[data-theme=dark] .primary-button,body[data-theme=dark] .user-menu-button,body[data-theme=dark] .top-icon-button.is-active,body[data-theme=dark] .top-icon-button:hover{background:var(--dark-accent)!important;border-color:var(--dark-accent)!important}body[data-theme=dark] .settings-chip.is-active,body[data-theme=dark] .primary-button,body[data-theme=dark] .user-menu-button,body[data-theme=dark] .top-icon-button.is-active,body[data-theme=dark] .top-icon-button:hover{color:#06101f!important}body[data-theme=dark] .settings-pay-summary,body[data-theme=dark] .money-positive,body[data-theme=dark] .paid-pill{background:var(--dark-accent-soft)!important;border-color:var(--dark-line)!important}@media(max-width:640px){.topbar-logo{width:58px!important;height:58px!important}}.hero-kicker,.section-kicker.hero-kicker{display:none!important}.app-sidebar{align-content:start!important;overflow:hidden!important}.sidebar-nav{display:flex!important;flex-direction:column!important;align-items:center!important;gap:12px!important}.app-sidebar:hover .sidebar-nav,.app-sidebar:focus-within .sidebar-nav{align-items:stretch!important}.side-nav-button,.app-sidebar:hover .side-nav-button,.app-sidebar:focus-within .side-nav-button{min-height:56px!important;height:56px!important;align-items:center!important}.side-nav-button{width:56px!important;grid-template-columns:56px!important;justify-items:center!important;color:color-mix(in srgb,var(--teal) 48%,var(--text) 52%)!important}.app-sidebar:hover .side-nav-button,.app-sidebar:focus-within .side-nav-button{width:100%!important;grid-template-columns:56px minmax(0,1fr)!important;justify-items:stretch!important}.side-nav-icon{justify-self:center!important}.side-nav-button.is-active{color:color-mix(in srgb,var(--teal) 70%,var(--text) 30%)!important}.side-nav-button.is-active:before{left:0!important;top:10px!important;bottom:10px!important;width:4px!important;background:var(--teal)!important}.side-nav-button.is-active .side-nav-icon,.side-nav-button:hover .side-nav-icon{background:color-mix(in srgb,var(--teal) 14%,var(--surface-strong) 86%)!important}.app-sidebar:hover .side-nav-button.is-active,.app-sidebar:focus-within .side-nav-button.is-active{background:transparent!important}.top-icon-button.is-active,.settings-button.is-active,.settings-button:hover{background:color-mix(in srgb,var(--teal) 14%,var(--surface-strong) 86%)!important;border-color:color-mix(in srgb,var(--teal) 32%,var(--line) 68%)!important;color:color-mix(in srgb,var(--teal) 66%,var(--text) 34%)!important}.hero-compact .hero-expense-button,.primary-button,.budget-recurring-card .primary-button,.budget-expense-card .primary-button{background:linear-gradient(135deg,var(--teal),color-mix(in srgb,var(--lime) 72%,var(--teal) 28%))!important;color:#111713!important;border-color:color-mix(in srgb,var(--teal) 55%,var(--line) 45%)!important;box-shadow:0 12px 24px color-mix(in srgb,var(--teal) 22%,transparent)!important}.hero-action-row{display:grid!important;justify-items:start!important;gap:10px!important}.hero-calculator-button{display:inline-flex;align-items:center;gap:8px;min-height:42px;width:fit-content;border:1px solid rgba(15,23,42,.1);border-radius:999px;background:#fff;color:var(--text);cursor:pointer;font:inherit;font-size:.86rem;font-weight:900;padding:10px 14px;box-shadow:0 12px 24px #0f172a14;transition:transform .16s ease,box-shadow .16s ease}.hero-calculator-button:hover{transform:translateY(-1px);box-shadow:0 16px 28px #0f172a1f}.hero-calculator-icon{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:999px;background:color-mix(in srgb,var(--teal) 18%,var(--surface-strong));color:color-mix(in srgb,var(--teal) 70%,var(--text) 30%);font-size:.76rem;line-height:1}.calculator-modal-panel{width:min(420px,calc(100vw - 32px))}.calculator-modal-body{padding:16px}.calculator-modal-card{box-shadow:none!important}.dashboard-card-controls{position:absolute;top:14px;right:14px;z-index:6;display:inline-flex;align-items:center;gap:6px;padding:4px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface-strong) 94%,var(--teal) 6%);color:color-mix(in srgb,var(--teal) 58%,var(--text) 42%);box-shadow:0 10px 24px #0f172a14;opacity:.72;transition:opacity .18s ease,transform .18s ease,border-color .18s ease}.dashboard-card-frame:hover .dashboard-card-controls,.dashboard-card-frame:focus-within .dashboard-card-controls{opacity:1}.dashboard-upcoming-frame{grid-column:1 / -1!important;grid-row:auto!important}.dashboard-workspace{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px!important;align-items:stretch!important}.dashboard-card-frame[data-dashboard-card=summary],.dashboard-card-frame[data-dashboard-card=tracker]{align-self:stretch!important}.dashboard-card-frame[data-dashboard-card=summary] .card,.dashboard-card-frame[data-dashboard-card=tracker] .card{height:100%;min-height:0}.dashboard-card-frame[data-dashboard-card=summary] .card{display:grid;grid-template-rows:auto minmax(0,1fr) minmax(0,1fr);gap:14px}.dashboard-card-frame[data-dashboard-card=summary] .summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;height:100%;align-items:stretch;margin-top:0}.dashboard-card-frame[data-dashboard-card=summary] .summary-card{min-height:0;height:100%}.dashboard-card-frame[data-dashboard-card=summary] .summary-period-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;height:100%;margin-top:0}.dashboard-card-frame[data-dashboard-card=summary] .pay-period-clean-card{min-height:0;height:100%}.dashboard-card-frame[data-dashboard-card=tracker] .pay-period-clean{gap:14px}.dashboard-card-frame[data-dashboard-card=tracker] .pay-setup-summary-card{grid-template-columns:minmax(230px,1.32fr) minmax(150px,.68fr);align-items:stretch;gap:14px;min-height:138px}.dashboard-card-frame[data-dashboard-card=tracker] .pay-period-view-field{min-width:0}.dashboard-card-frame[data-dashboard-card=tracker] .pay-period-view-field select,.dashboard-card-frame[data-dashboard-card=tracker] .pay-period-view-field input{min-height:46px;padding-inline:14px 36px;font-size:.94rem}.dashboard-card-frame[data-dashboard-card=tracker] .paycheck-amount-field{display:grid;grid-template-columns:minmax(0,1fr);align-content:start}.dashboard-card-frame[data-dashboard-card=tracker] .paycheck-log-button{justify-self:center;margin-top:5px}.dashboard-card-frame[data-dashboard-card=tracker] .pay-period-clean-footer{min-height:160px;align-items:end;padding:22px;background:linear-gradient(135deg,color-mix(in srgb,var(--teal) 10%,transparent),transparent 58%),color-mix(in srgb,var(--surface-strong) 96%,var(--teal) 4%)}.dashboard-card-frame[data-dashboard-card=tracker] .pay-period-clean-footer span{align-self:start;max-width:20ch;text-transform:uppercase;letter-spacing:.06em;font-size:.74rem}.dashboard-card-frame[data-dashboard-card=tracker] .pay-period-clean-footer strong{font-size:clamp(2rem,3.4vw,3.25rem);line-height:.95}.dashboard-upcoming-frame .due-item p{font-size:.94rem;font-weight:850;color:color-mix(in srgb,var(--muted) 82%,var(--text) 18%)}.dashboard-upcoming-frame .due-card{grid-column:auto!important;grid-row:auto!important}.dashboard-upcoming-frame .due-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.calendar-pay-setup-pill{min-width:230px}.calendar-pay-setup-pill strong{line-height:1.2}@media(max-width:920px){.dashboard-workspace{grid-template-columns:1fr!important}.dashboard-card-frame[data-dashboard-card=summary] .card,.dashboard-card-frame[data-dashboard-card=tracker] .card{height:auto}.dashboard-upcoming-frame{grid-column:auto!important}.dashboard-upcoming-frame .due-list{grid-template-columns:1fr}.dashboard-card-frame[data-dashboard-card=tracker] .pay-setup-summary-card,.dashboard-card-frame[data-dashboard-card=summary] .summary-grid,.dashboard-card-frame[data-dashboard-card=summary] .summary-period-grid{grid-template-columns:1fr!important}}.dashboard-card-controls button{width:28px;height:28px;display:inline-grid;place-items:center;border:0;border-radius:999px;background:transparent;color:inherit;font-size:1rem;font-weight:900;cursor:pointer}.dashboard-card-controls button:hover,.dashboard-card-controls button:focus-visible{background:color-mix(in srgb,var(--teal) 18%,var(--surface-strong) 82%);outline:none}.dashboard-card-controls .dashboard-card-handle{position:static;width:26px;height:28px;opacity:1;background:transparent;border:0;box-shadow:none;cursor:grab}.dashboard-card-controls .dashboard-card-handle span{background:currentColor}body[data-theme=dark] .side-nav-button{color:color-mix(in srgb,var(--dark-accent) 58%,#cbd5e1 42%)!important}body[data-theme=dark] .side-nav-button.is-active{color:var(--dark-accent)!important}body[data-theme=dark] .side-nav-button.is-active:before{background:var(--dark-accent)!important}body[data-theme=dark] .top-icon-button.is-active,body[data-theme=dark] .settings-button.is-active,body[data-theme=dark] .settings-button:hover,body[data-theme=dark] .side-nav-button.is-active .side-nav-icon,body[data-theme=dark] .side-nav-button:hover .side-nav-icon,body[data-theme=dark] .dashboard-card-controls button:hover,body[data-theme=dark] .dashboard-card-controls button:focus-visible{background:var(--dark-accent-soft)!important;color:#f8fafc!important}body[data-theme=dark] .dashboard-card-controls{background:var(--dark-panel-2);border-color:var(--dark-line);color:var(--dark-accent)}.side-asset-icon{width:37px;height:37px;display:block;background:currentColor;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}.side-nav-icon{width:52px!important;height:52px!important}.side-svg-icon{width:30px!important;height:30px!important}.side-asset-grid{-webkit-mask-image:url(/assets/Dashboard-C_Hueu5T.png);mask-image:url(/assets/Dashboard-C_Hueu5T.png)}.side-asset-calendar{-webkit-mask-image:url(/assets/Calendar-DNSYKzI5.png);mask-image:url(/assets/Calendar-DNSYKzI5.png)}.side-asset-receipt{-webkit-mask-image:url(/assets/Bills-BcnGb7n1.png);mask-image:url(/assets/Bills-BcnGb7n1.png)}.side-asset-debt{-webkit-mask-image:url(/assets/Debt-J_ud5LMK.png);mask-image:url(/assets/Debt-J_ud5LMK.png)}.side-asset-wallet{-webkit-mask-image:url(/assets/Budget-_tHhefjA.png);mask-image:url(/assets/Budget-_tHhefjA.png)}.side-asset-analytics{-webkit-mask-image:url(/assets/Analytics-B6hvjYtJ.png);mask-image:url(/assets/Analytics-B6hvjYtJ.png)}.side-asset-settings{-webkit-mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAjVJREFUeJztm0FuwyAQRSU9SbZX6Ck6Q4/qWXqM7lG6Q+/aZ/QWXXIdN68QkK0pVduNAzNfZCIRLAwGJgYwwk8lSZIkSZIkSf4AePbNf/ApAOS9N5+nKa+qaoK6rrGua1zXBWitYRiG2HOtBaiqiqIorOuaRVEQRRHGGGuttQAAeZ7jOC4DgOM4boKBIGis/edJ5O12+8zlcgF83yf9ds+df6bgbpskSQIAQJIkmM/nWGuNMAwDURTBNE1cc611hm3b9s3z3K+EYYjjOMb7vvtznud5GccxpmnCNE1orSGlhNZa7rvGtm2Ypgm73c57brdbLMuCbdto2xbzPMfj8YjH4xFVVVX0DnRdF4Zh4HkeqqqipQzDgGEY0DTNuLv9nc/nWJaFtm1xXdc4932P41iGYYjnediyDdu2oaoqDMPAcRx4ngfLssDzPCiKAs/zcBwHkiRB0zQcxwFZlsEwDGiahnVdMcY0TXNfL4oiGIYBRVHgeR5Ya6UUgiBAFEUQBAHXdeF5HlyvV5qmwe/3CMMQ3/fh+z4cx4HneTiOQ1VVJEnCNE2IoghVVfH7/UImSRKGYcB1XQghwDAM6LqO53k4joNt29B1HYqiQFVVGIYB0zThui5M04ThGDBNE7quQ1VVGIYB13UhiiJEUQS/3y+qqgqllGCMwTAMOI4D0zQhiiKM44AkSbiuC9u2YbvdYlkWRFEEx3GgbRscx4HneTiOw3EcPij1/3lfB39VVRHHMRzHgW3bsN1uuK4L27bhuq7v+S+TSCQSiUQi8X8B4GRGxYBfJtYAAAAASUVORK5CYII=);mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAjVJREFUeJztm0FuwyAQRSU9SbZX6Ck6Q4/qWXqM7lG6Q+/aZ/QWXXIdN68QkK0pVduNAzNfZCIRLAwGJgYwwk8lSZIkSZIkSf4AePbNf/ApAOS9N5+nKa+qaoK6rrGua1zXBWitYRiG2HOtBaiqiqIorOuaRVEQRRHGGGuttQAAeZ7jOC4DgOM4boKBIGis/edJ5O12+8zlcgF83yf9ds+df6bgbpskSQIAQJIkmM/nWGuNMAwDURTBNE1cc611hm3b9s3z3K+EYYjjOMb7vvtznud5GccxpmnCNE1orSGlhNZa7rvGtm2Ypgm73c57brdbLMuCbdto2xbzPMfj8YjH4xFVVVX0DnRdF4Zh4HkeqqqipQzDgGEY0DTNuLv9nc/nWJaFtm1xXdc4932P41iGYYjnediyDdu2oaoqDMPAcRx4ngfLssDzPCiKAs/zcBwHkiRB0zQcxwFZlsEwDGiahnVdMcY0TXNfL4oiGIYBRVHgeR5Ya6UUgiBAFEUQBAHXdeF5HlyvV5qmwe/3CMMQ3/fh+z4cx4HneTiOQ1VVJEnCNE2IoghVVfH7/UImSRKGYcB1XQghwDAM6LqO53k4joNt29B1HYqiQFVVGIYB0zThui5M04ThGDBNE7quQ1VVGIYB13UhiiJEUQS/3y+qqgqllGCMwTAMOI4D0zQhiiKM44AkSbiuC9u2YbvdYlkWRFEEx3GgbRscx4HneTiOw3EcPij1/3lfB39VVRHHMRzHgW3bsN1uuK4L27bhuq7v+S+TSCQSiUQi8X8B4GRGxYBfJtYAAAAASUVORK5CYII=)}.dashboard-card-frame{cursor:default!important}.dashboard-card-kicker{margin:0 0 4px;color:var(--muted)}.dashboard-card-title{margin:0;font-family:Space Grotesk,sans-serif;font-size:1.2rem}.dashboard-card-title-spaced{margin-bottom:16px}.dashboard-card-header-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.pay-period-manual-grid{gap:12px}.pay-period-empty-note{margin:14px 0 0;color:var(--muted);font-size:.9rem}.due-item-date-note{margin:4px 0 0;color:var(--muted);font-size:.86rem}.dashboard-card-controls,.dashboard-card-handle{display:none!important}.debt-layout{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr)!important;align-items:start!important}.debt-layout>.debt-payoff-section{grid-column:1 / -1!important}.debt-layout>.debt-list-section{grid-column:1 / -1!important}.debt-layout>.debt-list-section>.mobile-section-body{grid-column:1 / -1!important}.debt-layout .debt-list-section .card{grid-column:1 / -1!important}.debt-payoff-card{grid-column:1 / -1!important;min-height:420px}.payoff-section-kicker{margin:0 0 4px;color:var(--muted)}.payoff-section-title{margin:0 0 4px;font-family:Space Grotesk,sans-serif;font-size:1.2rem}.payoff-section-copy{margin:0 0 16px;color:var(--muted);font-size:.84rem}.payoff-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:16px}.payoff-extra-budget{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,260px);gap:12px;align-items:center;margin:0 0 16px;padding:14px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--surface-strong) 94%,var(--teal) 6%)}.payoff-extra-budget span{color:var(--text);font-weight:800}.payoff-extra-money-input{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;min-height:48px;padding:0 14px;border:1px solid color-mix(in srgb,var(--line) 82%,var(--teal) 18%);border-radius:12px;background:var(--surface-strong);box-shadow:inset 0 1px #ffffffbf}.payoff-extra-money-input>span{color:var(--muted);font-family:Space Grotesk,sans-serif;font-size:1rem}.payoff-extra-money-input input{width:100%;min-height:44px;padding:0;border:0;background:transparent;color:var(--text);font:inherit;font-family:Space Grotesk,sans-serif;font-size:1.05rem;font-weight:700;outline:none}.payoff-extra-money-input:focus-within{border-color:color-mix(in srgb,var(--teal) 62%,var(--line) 38%);box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 18%,transparent)}.payoff-summary-stat{padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-strong);text-align:center}.payoff-summary-label,.payoff-stat-label{margin-bottom:6px;color:var(--muted);font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.payoff-summary-value,.payoff-stat-value{color:var(--text);font-family:Space Grotesk,sans-serif;font-size:1rem;font-weight:700}.payoff-summary-value.is-danger,.payoff-stat-value.is-danger{color:var(--danger)}.payoff-empty-state{margin:0;color:var(--muted)}.debt-payoff-card .payoff-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}.debt-payoff-card .payoff-card{min-width:0;padding:16px!important}.payoff-card-header{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start!important;margin-bottom:10px}.payoff-card-title-block{min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:7px}.payoff-order-pill{display:inline-flex;align-items:center;min-height:24px;padding:4px 9px;border-radius:999px;background:color-mix(in srgb,var(--teal) 18%,var(--surface-strong) 82%);color:color-mix(in srgb,var(--teal) 72%,var(--text) 28%);font-size:.72rem;font-weight:900;letter-spacing:.02em;white-space:nowrap}.payoff-card-name{min-width:0;font-weight:700;overflow-wrap:anywhere}.payoff-apr-pill,.payoff-card-title-block .extra-pill{margin-left:0!important}.payoff-apr-pill{font-size:.78rem}.payoff-card-balance{color:var(--danger);font-family:Space Grotesk,sans-serif;font-size:1.05rem;font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}.debt-payoff-card .extra-payment-row{grid-template-columns:minmax(0,1fr) minmax(92px,130px)!important;justify-content:stretch!important;align-items:center!important}.debt-payoff-card .extra-payment-row>span{min-width:0}.debt-payoff-card .extra-payment-row input{min-width:0}.payoff-rollover-row strong{justify-self:end;color:var(--text);font-size:.86rem}.debt-payoff-card .payoff-card-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}.debt-payoff-card .payoff-card-stat-grid>div{min-width:0;padding:8px!important}.payoff-stat-card{border:1px solid var(--line);border-radius:10px;background:var(--surface);text-align:center}.payoff-stat-label{margin-bottom:4px;font-size:.72rem;letter-spacing:.05em}.payoff-stat-value{font-size:.92rem}.payoff-interest-summary{margin-top:10px}.payoff-interest-row{display:flex;justify-content:space-between;margin-bottom:4px;color:var(--muted);font-size:.75rem;font-weight:700}.debt-layout .dti-card{margin-top:0!important;min-height:100%}.debt-layout .action-button-row{flex:0 1 420px!important;display:flex!important;align-items:center!important;gap:10px!important}.debt-search-input{min-width:0;width:min(250px,100%)}.budget-primary-grid{grid-template-columns:minmax(0,1fr) minmax(360px,.92fr)!important;gap:22px!important;align-items:stretch!important}.budget-daily-limit-card,.budget-expense-card{min-height:100%!important}.budget-daily-limit-card{gap:12px!important}.budget-daily-limit-top{align-items:start!important}.budget-daily-limit-total strong{font-size:clamp(2rem,3.2vw,3rem)!important}.budget-limit-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))!important}.budget-limit-breakdown>div,.budget-balance-edit-card{min-height:76px!important;padding:14px!important}.budget-action-grid{grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr)!important}.budget-support-grid{grid-template-columns:minmax(360px,.88fr) minmax(0,1.12fr)!important}.budget-support-grid>.mobile-section:last-child{grid-column:1 / -1!important}.budget-support-grid .budget-log-card{grid-column:1 / -1!important;min-height:560px}.budget-support-grid .budget-activity-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.budget-support-grid .budget-activity-item{margin:0!important}@media(max-width:1180px){.budget-primary-grid,.budget-action-grid,.budget-support-grid,.debt-layout{grid-template-columns:1fr!important}.debt-layout>.debt-payoff-section,.budget-support-grid>.mobile-section:last-child{grid-column:auto!important}.debt-payoff-card .payoff-list{grid-template-columns:1fr!important}.budget-support-grid .budget-activity-list{grid-template-columns:1fr}}.auth-shell{min-height:100svh!important;position:relative;overflow:hidden;place-items:center!important;padding:clamp(18px,4vw,42px)!important;background:linear-gradient(115deg,#ffffffeb,#f6faf8f5 42%,#eef7f3f5),repeating-linear-gradient(90deg,rgba(56,96,82,.035) 0 1px,transparent 1px 92px),repeating-linear-gradient(0deg,rgba(56,96,82,.026) 0 1px,transparent 1px 92px)!important}.auth-shell:before{content:"";position:absolute;inset:auto 0 0;height:42%;pointer-events:none;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--teal) 8%,transparent))}.auth-card{position:relative;z-index:1;width:min(560px,100%)!important;display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:stretch;padding:clamp(22px,3.6vw,38px)!important;border-radius:30px!important;border-color:color-mix(in srgb,var(--teal) 20%,var(--line) 80%)!important;background:color-mix(in srgb,var(--surface-strong) 94%,white 6%)!important;box-shadow:0 28px 70px #121f1b21!important}.auth-card:after{content:"";position:absolute;top:14px;right:14px;bottom:14px;left:14px;z-index:-1;border-radius:24px;border:1px solid rgba(255,255,255,.72);pointer-events:none}.auth-brand{grid-column:1!important;grid-row:auto;min-height:auto;align-self:auto;display:flex!important;flex-direction:row;align-items:center!important;justify-content:flex-start;gap:16px!important;margin:0!important;padding:0 0 10px;border:0;border-bottom:1px solid color-mix(in srgb,var(--line) 82%,var(--teal) 18%);border-radius:0;background:transparent}.auth-logo{width:clamp(72px,9vw,92px)!important;height:clamp(72px,9vw,92px)!important;border-radius:18px!important;clip-path:inset(10% round 14px)!important;transform:scale(1.06)!important;box-shadow:0 16px 30px #192c242e!important}.auth-brand>div{display:grid;gap:8px}.auth-brand span{margin:0!important;color:color-mix(in srgb,var(--teal) 72%,var(--text) 28%)!important;font-size:.9rem!important;letter-spacing:.12em!important}.auth-brand h1{max-width:none;color:var(--text);font-size:clamp(2.55rem,7vw,3.5rem)!important;line-height:.92!important;letter-spacing:0!important}.auth-copy,.auth-form,.auth-link-button,.auth-switch,.auth-version,.auth-alert{grid-column:1}.auth-copy{max-width:46ch;margin:0 0 4px!important;color:color-mix(in srgb,var(--muted) 82%,var(--text) 18%)!important;font-size:1rem}.auth-form{gap:14px!important}.auth-card .field>span{color:color-mix(in srgb,var(--text) 84%,var(--muted) 16%);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.auth-card .field input{min-height:54px;border-radius:16px;background:color-mix(in srgb,var(--surface) 78%,white 22%)}.password-toggle{right:9px!important;border-radius:12px!important;background:color-mix(in srgb,var(--teal) 10%,var(--surface-strong) 90%)!important;color:color-mix(in srgb,var(--teal) 70%,var(--text) 30%)!important}.auth-submit{min-height:54px!important;border-radius:18px!important;background:linear-gradient(135deg,var(--teal),color-mix(in srgb,var(--lime) 72%,var(--teal) 28%))!important;border:1px solid color-mix(in srgb,var(--teal) 55%,var(--line) 45%)!important;color:#111713!important;box-shadow:0 12px 24px color-mix(in srgb,var(--teal) 18%,transparent)!important}.auth-link-button,.auth-switch{width:auto!important;justify-self:center;margin-top:0!important;color:color-mix(in srgb,var(--teal) 70%,var(--text) 30%)!important}.auth-link-button:hover,.auth-link-button:focus,.auth-switch:hover,.auth-switch:focus{color:color-mix(in srgb,var(--teal) 44%,var(--text) 56%)!important}.auth-version{margin-top:0!important}body[data-theme=dark] .auth-shell{background:linear-gradient(115deg,#07120f,#0f1b17,#13231d),repeating-linear-gradient(90deg,rgba(167,243,208,.05) 0 1px,transparent 1px 92px),repeating-linear-gradient(0deg,rgba(167,243,208,.04) 0 1px,transparent 1px 92px)!important}body[data-theme=dark] .auth-card{background:color-mix(in srgb,var(--surface-strong) 94%,#111827 6%)!important;border-color:color-mix(in srgb,var(--dark-accent) 24%,var(--line) 76%)!important;box-shadow:0 32px 80px #00000057!important}body[data-theme=dark] .auth-brand{background:linear-gradient(145deg,color-mix(in srgb,var(--dark-accent) 18%,var(--surface-strong) 82%),color-mix(in srgb,var(--teal) 11%,var(--surface) 89%));border-color:color-mix(in srgb,var(--dark-accent) 24%,var(--line) 76%)}body[data-theme=dark] .auth-submit{color:#f8fafc!important;background:linear-gradient(135deg,var(--dark-accent),color-mix(in srgb,var(--dark-accent) 58%,var(--teal) 42%))!important}@media(max-width:760px){.auth-shell{place-items:start center!important;overflow-y:auto}.auth-card{grid-template-columns:1fr;gap:14px;max-height:none!important}.auth-brand,.auth-copy,.auth-form,.auth-link-button,.auth-switch,.auth-version,.auth-alert{grid-column:1}.auth-brand{grid-row:auto;min-height:auto;flex-direction:row;align-items:center!important;justify-content:flex-start;padding:16px}.auth-logo{width:82px!important;height:82px!important}.auth-brand h1{max-width:none;font-size:clamp(2rem,11vw,2.85rem)!important}}.app-sidebar:focus-within:not(:hover){width:78px!important;box-shadow:0 18px 42px #0f172a14!important}.app-sidebar:focus-within:not(:hover) .sidebar-nav{align-items:center!important}.app-sidebar:focus-within:not(:hover) .side-nav-button{width:56px!important;grid-template-columns:56px!important;justify-items:center!important;background:transparent!important}.app-sidebar:focus-within:not(:hover) .side-nav-label{opacity:0!important;transform:translate(-6px)!important;pointer-events:none!important}.budget-support-grid .savings-calculator-card{grid-column:1 / -1!important;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr)!important;align-items:start!important;gap:22px!important}.savings-calculator-card>div:first-child{grid-column:1 / -1}.savings-calculator-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:end!important}.savings-calculator-grid>.field{min-width:0}.savings-calculator-grid>.field:nth-child(1),.savings-calculator-grid>.field:nth-child(2){grid-column:span 2}.savings-calculator-grid>.field:nth-child(3),.savings-calculator-grid>.field:nth-child(5),.savings-duration-fields{grid-column:span 2}.savings-duration-fields{grid-template-columns:repeat(2,minmax(0,1fr))!important}.savings-result-grid{grid-template-columns:1fr!important;gap:12px!important}.savings-result-grid .budget-stat{min-height:0!important;padding:18px!important}.savings-result-grid .budget-stat strong{font-size:clamp(1.35rem,2vw,2rem)!important}@media(max-width:1280px){.budget-support-grid .savings-calculator-card{grid-template-columns:minmax(0,1fr) minmax(240px,.48fr)!important}}@media(max-width:980px){.budget-support-grid .savings-calculator-card,.savings-calculator-grid,.savings-result-grid{grid-template-columns:1fr!important}.savings-calculator-grid>.field,.savings-duration-fields{grid-column:auto!important}}@media(max-width:760px){html,body{overflow-x:hidden}.page-shell{width:100%!important;max-width:100%!important;padding:0 12px calc(126px + env(safe-area-inset-bottom))!important;overflow-x:hidden!important}body{padding-bottom:0!important}.topbar{position:sticky;top:0;z-index:120;min-height:82px!important;margin:0 -12px 16px!important;padding:10px 12px!important;border-bottom:1px solid rgba(15,23,42,.08);background:color-mix(in srgb,var(--surface-strong) 92%,transparent)!important;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.topbar-title{min-width:0;gap:10px!important}.topbar-logo{width:48px!important;height:48px!important;border-radius:14px!important}.topbar-title strong{font-size:1.36rem!important}.topbar-actions{gap:7px!important;flex-wrap:nowrap!important}.top-icon-button,.account-pill{width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;padding:0!important}.account-pill{width:auto!important;min-width:60px!important;padding-inline:13px!important}.app-sidebar,.app-sidebar:hover,.app-sidebar:focus-within{position:fixed!important;top:auto!important;left:12px!important;right:12px!important;bottom:max(10px,env(safe-area-inset-bottom))!important;z-index:1000!important;width:auto!important;height:72px!important;padding:8px!important;border-radius:24px!important;display:block!important;overflow:hidden!important;background:color-mix(in srgb,var(--surface-strong) 94%,transparent)!important;box-shadow:0 18px 40px #0f172a29!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-sizing:border-box!important;isolation:isolate;transform:translateZ(0);contain:layout paint;pointer-events:auto}.tab-bar{display:none!important;pointer-events:none!important}.sidebar-nav,.app-sidebar:hover .sidebar-nav,.app-sidebar:focus-within .sidebar-nav{width:100%!important;height:100%!important;display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;align-items:center!important;gap:4px!important;overflow:hidden!important}.sidebar-bottom{display:none!important}.side-nav-button,.app-sidebar:hover .side-nav-button,.app-sidebar:focus-within .side-nav-button{width:100%!important;min-width:0!important;height:56px!important;min-height:56px!important;padding:0!important;display:grid!important;grid-template-columns:1fr!important;place-items:center!important;border-radius:18px!important;background:transparent!important;overflow:hidden!important;pointer-events:auto!important;touch-action:manipulation}.side-nav-label{display:none!important}.side-nav-icon{width:46px!important;height:46px!important;pointer-events:none}.side-nav-icon svg{width:25px!important;height:25px!important}.side-nav-button.is-active{background:color-mix(in srgb,var(--teal) 15%,var(--surface-strong) 85%)!important}.side-nav-button.is-active:before{left:50%!important;top:auto!important;bottom:4px!important;width:18px!important;height:3px!important;border-radius:999px!important;transform:translate(-50%)!important}.app-sidebar:focus-within:not(:hover){left:12px!important;right:12px!important;bottom:max(10px,env(safe-area-inset-bottom))!important;width:auto!important;height:72px!important;padding:8px!important;border-radius:24px!important;box-shadow:0 18px 40px #0f172a29!important}.app-sidebar:focus-within:not(:hover) .sidebar-nav{width:100%!important;height:100%!important;display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;align-items:center!important;gap:4px!important}.app-sidebar:focus-within:not(:hover) .side-nav-button{width:100%!important;min-width:0!important;height:56px!important;min-height:56px!important;grid-template-columns:1fr!important;place-items:center!important}.app-sidebar:focus-within:not(:hover) .side-nav-label{display:none!important;opacity:0!important;transform:none!important}.app-sidebar,.app-sidebar:hover,.app-sidebar:focus-within,.app-sidebar:focus-within:not(:hover){display:none!important;pointer-events:none!important}.tab-bar{position:fixed!important;left:12px!important;right:12px!important;bottom:max(10px,env(safe-area-inset-bottom))!important;z-index:1000!important;width:auto!important;height:72px!important;display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;align-items:center!important;gap:4px!important;margin:0!important;padding:8px!important;border:1px solid color-mix(in srgb,var(--line) 72%,transparent)!important;border-radius:24px!important;background:color-mix(in srgb,var(--surface-strong) 94%,transparent)!important;box-shadow:0 18px 40px #0f172a29!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);overflow:hidden!important;box-sizing:border-box!important;isolation:isolate;pointer-events:auto!important}.tab-button{width:100%!important;min-width:0!important;height:56px!important;min-height:56px!important;padding:0!important;display:grid!important;grid-template-columns:1fr!important;place-items:center!important;border-radius:18px!important;background:transparent!important;color:var(--muted)!important;overflow:hidden!important;touch-action:manipulation}.tab-button.is-active{background:color-mix(in srgb,var(--teal) 15%,var(--surface-strong) 85%)!important;color:var(--green-dark)!important}.tab-button:focus{outline:none!important}.tab-button:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 28%,transparent)!important}.tab-button.is-active:before{left:50%!important;top:auto!important;bottom:4px!important;width:18px!important;height:3px!important;border-radius:999px!important;transform:translate(-50%)!important;background:var(--teal)!important}.tab-label,.tab-mobile-label{display:none!important}.tab-icon{display:grid!important;place-items:center!important;position:static!important;width:46px!important;height:46px!important;color:currentColor!important;opacity:1!important;pointer-events:none}.tab-icon:before,.tab-icon:after{content:none!important}.tab-icon svg{width:25px!important;height:25px!important}.hero.hero-compact{grid-template-columns:minmax(0,1fr)!important;gap:16px!important;padding:20px!important;border-radius:24px!important;margin-bottom:18px!important}.hero-compact .hero-copy{min-height:0!important;align-content:start!important;gap:14px!important}.hero h2{max-width:none!important;font-size:1.85rem!important}.hero-meta{display:grid!important;width:100%!important;gap:6px!important;padding:10px 12px!important;border-radius:16px!important;line-height:1.25!important}.hero-meta span+span{padding-left:0!important;border-left:0!important}.hero-compact .hero-expense-button{width:100%!important;min-height:48px!important;justify-content:center!important}.hero-panel,.hero-metrics-grid{width:100%!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;padding:0!important;border:0!important;background:transparent!important}.stat-chip{min-height:92px!important;padding:14px!important;border-radius:16px!important;align-items:start!important}.stat-chip strong{font-size:1.25rem!important;white-space:normal!important}.dashboard-workspace{gap:12px!important}.mobile-section{display:grid!important;gap:0!important;min-width:0!important;overflow:hidden!important;border:1px solid color-mix(in srgb,var(--line) 78%,var(--lime) 22%)!important;border-radius:20px!important;background:var(--surface-strong)!important;box-shadow:0 12px 28px #0f172a14!important}.mobile-section+.mobile-section{margin-top:12px!important}.mobile-section-toggle{min-height:54px!important;padding:10px 14px!important;position:relative;z-index:2;margin:0!important;border:0!important;border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent)!important;border-radius:0!important;background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong) 82%,var(--lime) 18%),color-mix(in srgb,var(--surface-strong) 90%,var(--teal) 10%))!important;box-shadow:none!important}.mobile-section-body>.card,.mobile-section-body>.due-card,.mobile-section-body>.budget-module-shell{border:0!important;border-radius:0!important;box-shadow:none!important;background:var(--surface-strong)!important;max-width:100%!important}.mobile-section-body{min-width:0!important}.mobile-section.is-collapsed{overflow:visible!important;border:0!important;background:transparent!important;box-shadow:none!important}.mobile-section.is-collapsed .mobile-section-toggle{border:1px solid color-mix(in srgb,var(--line) 78%,var(--lime) 22%)!important;border-radius:18px!important}.dashboard-card-frame[data-dashboard-card=summary] .card{height:auto!important;display:grid!important;grid-template-rows:auto auto auto!important;gap:12px!important}.dashboard-card-frame[data-dashboard-card=summary] .summary-grid,.dashboard-card-frame[data-dashboard-card=summary] .summary-period-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.dashboard-card-frame[data-dashboard-card=summary] .summary-card,.dashboard-card-frame[data-dashboard-card=summary] .pay-period-clean-card{min-height:124px!important;padding:14px!important}.dashboard-card-frame[data-dashboard-card=summary] .summary-card.count,.dashboard-card-frame[data-dashboard-card=summary] .pay-period-clean-card.is-still-due{grid-column:1 / -1!important;min-height:104px!important}.summary-card strong,.pay-period-clean-card strong{font-size:1.35rem!important}.dashboard-card-frame[data-dashboard-card=tracker] .pay-setup-summary-card{grid-template-columns:1fr!important;min-height:0!important}.dashboard-card-frame[data-dashboard-card=tracker] .pay-period-clean-footer{min-height:128px!important;padding:18px!important}.dashboard-card-frame[data-dashboard-card=tracker] .pay-period-clean-footer strong{font-size:2.25rem!important}.due-item{grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;padding:12px!important}.due-item-actions{gap:8px!important}.paid-toggle{min-height:34px!important;padding:7px 10px!important}.budget-recurring-card .budget-card-header,.budget-recurring-item{grid-template-columns:minmax(0,1fr)!important;justify-items:stretch!important}.budget-recurring-total,.budget-recurring-estimate{justify-items:start!important;min-width:0!important}.budget-recurring-item .mini-action{justify-self:stretch!important}.debt-layout{width:100%!important;max-width:100%!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important}.debt-layout .card{padding:14px!important;overflow:hidden!important;max-width:100%!important}.debt-layout .section-heading-row{display:grid!important;grid-template-columns:minmax(0,1fr)!important;align-items:stretch!important;gap:12px!important}.debt-layout .action-button-row{width:100%!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important}.debt-search-input,.add-debt-button{width:100%!important;min-width:0!important}.debt-category-filter{width:100%!important;max-width:100%!important;overflow-x:auto!important;display:flex!important;flex-wrap:nowrap!important;gap:6px!important;padding:4px!important;scrollbar-width:none}.debt-category-filter::-webkit-scrollbar{display:none}.debt-category-filter .category-filter-button{flex:0 0 auto!important;min-height:40px!important;padding-inline:12px!important;white-space:nowrap!important;font-size:.76rem!important}}@media(max-width:360px){.dashboard-card-frame[data-dashboard-card=summary] .summary-grid,.dashboard-card-frame[data-dashboard-card=summary] .summary-period-grid,.hero-panel,.hero-metrics-grid{grid-template-columns:1fr!important}}.page-shell{padding-left:0!important}.tab-bar{position:sticky!important;top:10px!important;z-index:90!important;width:100%!important;display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:8px!important;margin:14px 0 18px!important;padding:10px!important;border:1px solid var(--line)!important;border-radius:24px!important;background:color-mix(in srgb,var(--surface-soft) 92%,var(--bg) 8%)!important;box-shadow:0 16px 36px #0f172a1a!important;-webkit-backdrop-filter:blur(18px)!important;backdrop-filter:blur(18px)!important;box-sizing:border-box!important}.tab-button{width:100%!important;min-width:0!important;min-height:58px!important;display:grid!important;grid-template-columns:auto minmax(0,auto)!important;justify-content:center!important;align-items:center!important;gap:8px!important;padding:10px 12px!important;border:0!important;border-radius:16px!important;background:transparent!important;color:var(--muted)!important;font:inherit!important;font-size:.9rem!important;font-weight:900!important;overflow:hidden!important}.tab-button:hover,.tab-button.is-active{transform:none!important;background:color-mix(in srgb,var(--teal) 16%,var(--surface-strong) 84%)!important;color:var(--green-dark)!important}.tab-button.is-active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--teal) 36%,transparent)!important}.tab-button:before,.tab-button:after,.tab-button.is-active:before{content:none!important}.tab-icon{display:grid!important;place-items:center!important;position:static!important;width:28px!important;height:28px!important;color:currentColor!important;opacity:1!important;pointer-events:none!important}.tab-icon:before,.tab-icon:after{content:none!important}.tab-icon .side-asset-icon{width:26px!important;height:26px!important}.tab-label{display:inline!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.tab-mobile-label{display:none!important}@media(max-width:1280px){.bills-table tr{animation:none!important;opacity:1!important;transform:none!important}.bills-table .cell-view,.bills-table .freq-tag,.bills-table .auto-pay-pill,.debt-table .cell-view,.debt-table .freq-tag{color:var(--text)!important;max-width:100%!important;min-width:0!important;overflow-wrap:anywhere}.bills-table .money-negative,.debt-table .money-negative{color:var(--danger)!important}.debt-table{display:block!important}.debt-table thead{display:none!important}.debt-table tbody{display:grid!important;gap:14px!important}.debt-table tr{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(150px,.34fr)!important;gap:12px 14px!important;padding:16px!important;border:1px solid color-mix(in srgb,var(--teal) 18%,var(--line) 82%)!important;border-radius:18px!important;background:linear-gradient(135deg,color-mix(in srgb,var(--teal) 8%,transparent),transparent 58%),color-mix(in srgb,var(--surface-strong) 96%,var(--surface-soft) 4%)!important;box-shadow:0 14px 34px #0f172a14!important}.debt-table td,.debt-table td:nth-child(n){display:grid!important;width:auto!important;min-width:0!important;padding:0!important;border-top:0!important}.debt-table td:before{content:attr(data-label);display:block;margin:0 0 5px;color:var(--muted);font-size:.64rem;font-weight:900;letter-spacing:.07em;line-height:1.15;text-transform:uppercase}.debt-table td:first-child{grid-column:1 / 2!important}.debt-table td[data-label=Balance]{grid-column:2 / 3!important;grid-row:1!important}.debt-table td[data-label="Min. Payment"]{grid-column:2 / 3!important;grid-row:3!important}.debt-table td[data-label=Actions]{grid-column:1 / 2!important;grid-row:3!important;align-self:end!important;justify-items:start!important}.debt-table td:first-child .cell-view{min-height:44px!important;padding:0!important;border:0!important;background:transparent!important;font-size:1.05rem!important;font-weight:900!important}.debt-table .cell-view,.debt-table .freq-tag{min-height:42px!important;padding:9px 10px!important;border-radius:14px!important;background:color-mix(in srgb,var(--surface-strong) 92%,white 8%)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--line) 82%,transparent);font-size:.82rem!important;line-height:1.18!important;white-space:normal!important}.debt-table td[data-label=Balance] .cell-view,.debt-table td[data-label="Min. Payment"] .cell-view{justify-content:flex-end!important;font-family:Space Grotesk,sans-serif;font-size:.98rem!important}.debt-table td[data-label=APR] .freq-tag,.debt-table td[data-label=Category] .freq-tag{width:100%;justify-content:center;font-weight:900}.debt-table td[data-label=Actions] .ghost-button{width:min(180px,100%)!important;justify-self:start!important;min-height:42px!important;padding:9px 10px!important;background:color-mix(in srgb,var(--surface-strong) 84%,var(--teal) 16%)!important}.bills-table:not(.debt-table) td[data-label="Due Date"] .cell-view{flex-direction:column;gap:3px;min-height:54px;padding:8px 6px;font-size:.82rem!important}.bills-table:not(.debt-table) td[data-label="Due Date"] .cell-view span{display:block;margin-left:0!important;font-size:.68rem!important;line-height:1.05;max-width:100%}}@media(max-width:760px){.table-wrap,.debt-layout .table-wrap{max-width:100%;overflow-x:hidden!important;margin-top:12px}.bills-table,.bills-table thead,.bills-table tbody,.bills-table tr,.bills-table th,.bills-table td,.debt-table,.debt-table thead,.debt-table tbody,.debt-table tr,.debt-table th,.debt-table td{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}.bills-table,.debt-table{display:block!important;min-width:0!important}.bills-table thead,.debt-table thead{display:none!important}.bills-table tbody,.debt-table tbody{display:grid!important;gap:10px!important}.bills-table tr,.debt-table tr{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px 10px!important;padding:12px!important;border:1px solid var(--line)!important;border-radius:16px!important;box-shadow:0 6px 16px #0000000b!important}.bills-table tr:nth-child(odd),.debt-table tr:nth-child(odd){background:color-mix(in srgb,var(--surface-strong) 92%,var(--lime) 8%)!important}.bills-table tr:nth-child(2n),.debt-table tr:nth-child(2n){background:color-mix(in srgb,var(--surface-strong) 90%,var(--cyan) 10%)!important}.bills-table td,.debt-table td,.debt-table td:nth-child(n),.debt-table td:first-child,.debt-table td[data-label=Balance],.debt-table td[data-label=APR],.debt-table td[data-label=Category],.debt-table td[data-label="Min. Payment"],.debt-table td[data-label=Actions]{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-column:auto!important;grid-row:auto!important;align-content:start;gap:3px!important;padding:0!important;border-top:0!important}.bills-table td:before,.debt-table td:before{content:attr(data-label);display:block;margin:0;color:var(--muted);font-size:.64rem;font-weight:900;letter-spacing:.07em;line-height:1.2;text-align:left;text-transform:uppercase}.bills-table td:first-child,.bills-table td[data-label=Notes],.bills-table td:last-child,.debt-table td:first-child,.debt-table td[data-label=Balance],.debt-table td[data-label=APR],.debt-table td[data-label=Category],.debt-table td[data-label="Min. Payment"],.debt-table td[data-label=Actions]{grid-column:1 / -1!important}.cell-view,.debt-table .cell-view,.freq-tag,.auto-pay-pill{min-height:0;display:flex;align-items:center;justify-content:flex-start;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;font-size:.88rem;line-height:1.2}.bills-table td:first-child .cell-view,.debt-table td:first-child .cell-view{min-height:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;font-family:Space Grotesk,sans-serif;font-size:1.06rem!important}.bills-table td[data-label=Notes] .cell-view{color:var(--muted)}.cell-view-note{white-space:normal}.freq-tag,.auto-pay-pill.is-on,.auto-pay-pill.is-off,.debt-table td[data-label=APR] .freq-tag,.debt-table td[data-label=Category] .freq-tag{justify-self:start;width:fit-content!important;min-width:0;min-height:0!important;padding:4px 8px!important;border-radius:999px!important;font-size:.74rem!important}.auto-pay-pill.is-off{background:color-mix(in srgb,var(--line) 62%,var(--surface-strong) 38%);border:1px solid color-mix(in srgb,var(--line) 84%,transparent)}.auto-pay-pill.is-on{background:color-mix(in srgb,var(--lime) 45%,var(--surface-strong) 55%);border:1px solid color-mix(in srgb,var(--lime) 48%,var(--line) 52%)}.bills-table td[data-label="Due Date"] .cell-view,.bills-table:not(.debt-table) td[data-label="Due Date"] .cell-view,.debt-table td[data-label=Balance] .cell-view,.debt-table td[data-label="Min. Payment"] .cell-view{justify-content:flex-start!important;min-height:0!important;padding:0!important;text-align:left;font-size:.88rem!important}.bills-table td[data-label="Due Date"] .cell-view span{margin-left:4px!important}.bills-table td:last-child,.debt-table td:last-child{margin-top:2px}.bills-table td:last-child .ghost-button,.debt-table td:last-child .ghost-button,.debt-table td[data-label=Actions] .ghost-button{width:100%!important;min-height:44px!important;justify-self:stretch!important;padding:10px 14px!important;font-size:.9rem!important}}@media(max-width:900px){.pwa-update-banner{right:12px;bottom:12px;left:12px;max-width:none;align-items:stretch;flex-direction:column}.pwa-update-banner button{width:100%}.tab-bar{grid-template-columns:repeat(6,minmax(48px,1fr))!important;overflow-x:auto!important;scrollbar-width:none!important}.tab-bar::-webkit-scrollbar{display:none!important}.tab-button{min-height:54px!important;grid-template-columns:1fr!important;gap:0!important;padding:8px!important}.tab-label,.tab-mobile-label{display:none!important}}.u-width-0{width:0%;--progress: 0%}.u-width-1{width:1%;--progress: 1%}.u-width-2{width:2%;--progress: 2%}.u-width-3{width:3%;--progress: 3%}.u-width-4{width:4%;--progress: 4%}.u-width-5{width:5%;--progress: 5%}.u-width-6{width:6%;--progress: 6%}.u-width-7{width:7%;--progress: 7%}.u-width-8{width:8%;--progress: 8%}.u-width-9{width:9%;--progress: 9%}.u-width-10{width:10%;--progress: 10%}.u-width-11{width:11%;--progress: 11%}.u-width-12{width:12%;--progress: 12%}.u-width-13{width:13%;--progress: 13%}.u-width-14{width:14%;--progress: 14%}.u-width-15{width:15%;--progress: 15%}.u-width-16{width:16%;--progress: 16%}.u-width-17{width:17%;--progress: 17%}.u-width-18{width:18%;--progress: 18%}.u-width-19{width:19%;--progress: 19%}.u-width-20{width:20%;--progress: 20%}.u-width-21{width:21%;--progress: 21%}.u-width-22{width:22%;--progress: 22%}.u-width-23{width:23%;--progress: 23%}.u-width-24{width:24%;--progress: 24%}.u-width-25{width:25%;--progress: 25%}.u-width-26{width:26%;--progress: 26%}.u-width-27{width:27%;--progress: 27%}.u-width-28{width:28%;--progress: 28%}.u-width-29{width:29%;--progress: 29%}.u-width-30{width:30%;--progress: 30%}.u-width-31{width:31%;--progress: 31%}.u-width-32{width:32%;--progress: 32%}.u-width-33{width:33%;--progress: 33%}.u-width-34{width:34%;--progress: 34%}.u-width-35{width:35%;--progress: 35%}.u-width-36{width:36%;--progress: 36%}.u-width-37{width:37%;--progress: 37%}.u-width-38{width:38%;--progress: 38%}.u-width-39{width:39%;--progress: 39%}.u-width-40{width:40%;--progress: 40%}.u-width-41{width:41%;--progress: 41%}.u-width-42{width:42%;--progress: 42%}.u-width-43{width:43%;--progress: 43%}.u-width-44{width:44%;--progress: 44%}.u-width-45{width:45%;--progress: 45%}.u-width-46{width:46%;--progress: 46%}.u-width-47{width:47%;--progress: 47%}.u-width-48{width:48%;--progress: 48%}.u-width-49{width:49%;--progress: 49%}.u-width-50{width:50%;--progress: 50%}.u-width-51{width:51%;--progress: 51%}.u-width-52{width:52%;--progress: 52%}.u-width-53{width:53%;--progress: 53%}.u-width-54{width:54%;--progress: 54%}.u-width-55{width:55%;--progress: 55%}.u-width-56{width:56%;--progress: 56%}.u-width-57{width:57%;--progress: 57%}.u-width-58{width:58%;--progress: 58%}.u-width-59{width:59%;--progress: 59%}.u-width-60{width:60%;--progress: 60%}.u-width-61{width:61%;--progress: 61%}.u-width-62{width:62%;--progress: 62%}.u-width-63{width:63%;--progress: 63%}.u-width-64{width:64%;--progress: 64%}.u-width-65{width:65%;--progress: 65%}.u-width-66{width:66%;--progress: 66%}.u-width-67{width:67%;--progress: 67%}.u-width-68{width:68%;--progress: 68%}.u-width-69{width:69%;--progress: 69%}.u-width-70{width:70%;--progress: 70%}.u-width-71{width:71%;--progress: 71%}.u-width-72{width:72%;--progress: 72%}.u-width-73{width:73%;--progress: 73%}.u-width-74{width:74%;--progress: 74%}.u-width-75{width:75%;--progress: 75%}.u-width-76{width:76%;--progress: 76%}.u-width-77{width:77%;--progress: 77%}.u-width-78{width:78%;--progress: 78%}.u-width-79{width:79%;--progress: 79%}.u-width-80{width:80%;--progress: 80%}.u-width-81{width:81%;--progress: 81%}.u-width-82{width:82%;--progress: 82%}.u-width-83{width:83%;--progress: 83%}.u-width-84{width:84%;--progress: 84%}.u-width-85{width:85%;--progress: 85%}.u-width-86{width:86%;--progress: 86%}.u-width-87{width:87%;--progress: 87%}.u-width-88{width:88%;--progress: 88%}.u-width-89{width:89%;--progress: 89%}.u-width-90{width:90%;--progress: 90%}.u-width-91{width:91%;--progress: 91%}.u-width-92{width:92%;--progress: 92%}.u-width-93{width:93%;--progress: 93%}.u-width-94{width:94%;--progress: 94%}.u-width-95{width:95%;--progress: 95%}.u-width-96{width:96%;--progress: 96%}.u-width-97{width:97%;--progress: 97%}.u-width-98{width:98%;--progress: 98%}.u-width-99{width:99%;--progress: 99%}.u-width-100{width:100%;--progress: 100%}@media(max-width:760px){.page-shell{padding-bottom:calc(112px + env(safe-area-inset-bottom))!important}.tab-bar{position:fixed!important;top:auto!important;right:12px!important;bottom:max(10px,env(safe-area-inset-bottom))!important;left:12px!important;z-index:120!important;width:auto!important;margin:0!important;padding:8px!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:4px!important;overflow:visible!important;border-radius:22px!important;background:color-mix(in srgb,var(--surface-strong) 88%,transparent)!important;box-shadow:0 18px 46px #0f172a33,inset 0 0 0 1px color-mix(in srgb,white 64%,transparent)!important;-webkit-backdrop-filter:blur(18px) saturate(1.25)!important;backdrop-filter:blur(18px) saturate(1.25)!important}.tab-button{display:grid!important;grid-template-columns:1fr!important;min-height:48px!important;padding:6px!important;border-radius:16px!important;align-items:center!important;justify-items:center!important;place-items:center!important}.tab-icon,.tab-icon .side-asset-icon,.tab-icon svg{width:30px!important;height:30px!important}.tab-icon{width:100%!important;height:100%!important;margin:0!important;transform:none!important;display:grid!important;place-items:center!important;justify-self:stretch!important;align-self:stretch!important}.tab-button[data-tab=dashboard] .tab-icon{transform:none!important}.tab-button[data-tab=calendar] .tab-icon .side-asset-icon,.tab-button[data-tab=bills] .tab-icon .side-asset-icon,.tab-button[data-tab=debt] .tab-icon .side-asset-icon,.tab-button[data-tab=banker] .tab-icon .side-asset-icon{width:34px!important;height:34px!important}.tab-button[data-tab=calculator] .tab-icon svg{width:32px!important;height:32px!important}.tab-button.is-active:before{bottom:3px!important}.mobile-section{gap:0!important;overflow:hidden!important;border:1px solid color-mix(in srgb,var(--line) 78%,var(--lime) 22%)!important;border-radius:22px!important;background:var(--surface-strong)!important;box-shadow:0 12px 30px #0f172a14!important}.mobile-section-body{display:grid!important;min-width:0!important;background:var(--surface-strong)!important}.mobile-section-toggle{width:auto!important;min-height:52px!important;margin:12px 12px 0!important;padding:8px 12px!important;border:0!important;border-radius:16px!important;background:color-mix(in srgb,var(--surface-strong) 92%,var(--lime) 8%)!important;box-shadow:none!important;display:grid!important;grid-template-columns:minmax(0,1fr) 32px!important;align-items:center!important;gap:12px!important;box-sizing:border-box!important}.mobile-section-toggle:before{content:none!important}.mobile-section-toggle strong{font-size:.98rem!important}.mobile-section-toggle small{font-size:.76rem!important}.mobile-section-chevron{width:32px!important;height:32px!important;flex-basis:32px!important;justify-self:center!important;align-self:center!important;margin:0!important}.mobile-section-body>.card,.mobile-section-body>.due-card,.mobile-section-body>.budget-module-shell,.mobile-section-content>.card,.mobile-section-content>.due-card,.mobile-section-content>.budget-module-shell{border:0!important;border-radius:0!important;box-shadow:none!important;background:var(--surface-strong)!important}.mobile-section-content{display:block!important;min-width:0!important}.mobile-section.is-collapsed{border:1px solid color-mix(in srgb,var(--line) 78%,var(--lime) 22%)!important;background:var(--surface-strong)!important;box-shadow:0 8px 20px #0f172a0f!important}.mobile-section.is-collapsed .mobile-section-toggle{margin:12px!important;border-radius:16px!important}.mobile-section.is-open .mobile-section-toggle{margin:12px 12px 0!important}.mobile-section.is-collapsed .mobile-section-body{display:grid!important}.mobile-section.is-collapsed .mobile-section-content{display:none!important}.calendar-day{position:relative;min-height:58px!important;padding:6px!important;gap:3px!important}.calendar-day-bills{display:flex!important;align-items:flex-start!important;justify-content:flex-start!important;min-width:0!important;outline:none}.calendar-day-bills .calendar-bill-name{display:none!important}.calendar-day-bills .calendar-bill-count{display:inline-flex!important;min-width:0!important;max-width:100%!important;padding:3px 5px!important;font-size:.58rem!important;line-height:1!important;white-space:nowrap!important}.calendar-bill-tooltip{position:absolute!important;right:auto!important;bottom:auto!important;left:50%!important;top:calc(100% + 6px)!important;transform:translate(-50%)!important;min-width:min(230px,calc(100vw - 28px))!important;max-width:calc(100vw - 28px)!important}.calendar-day.is-today{padding:5px!important}.calendar-day.is-today .calendar-day-header{display:grid!important;align-items:start!important;gap:2px!important}.calendar-day.is-today .calendar-today-badge{position:static!important;min-width:0!important;max-width:none!important;margin-left:0!important;padding:2px 4px!important;font-size:.46rem!important;line-height:1!important;overflow:visible!important;white-space:nowrap!important;justify-self:start!important}.calendar-day.is-today .calendar-day-bills{margin-top:1px!important}.calendar-day.is-today .calendar-bill-count{font-size:.54rem!important;padding:2px 4px!important}#bills-list-table tbody,#debts-list-table tbody{gap:12px!important}#bills-list-table tr,#debts-list-table tr{border-radius:18px!important;padding:14px!important;gap:12px!important;background:color-mix(in srgb,var(--surface-strong) 94%,var(--lime) 6%)!important}#bills-list-table tr{grid-template-columns:repeat(2,minmax(0,1fr))!important}#bills-list-table td,#debts-list-table td{gap:5px!important}#bills-list-table td:before,#debts-list-table td:before{font-size:.6rem!important;letter-spacing:.08em!important}#bills-list-table td[data-label=Name],#bills-list-table td[data-label=Notes],#bills-list-table td[data-label=Actions]{grid-column:1 / -1!important}#bills-list-table td[data-label=Name] .cell-view,#debts-list-table td[data-label=Name] .cell-view{font-size:1.08rem!important;line-height:1.15!important}#bills-list-table .cell-view,#bills-list-table .freq-tag,#bills-list-table .auto-pay-pill,#debts-list-table .cell-view,#debts-list-table .freq-tag{min-height:0!important;padding:0!important;background:transparent!important;box-shadow:none!important}#bills-list-table td[data-label="Due Date"] .cell-view,#bills-list-table td[data-label=Auto-pay] .auto-pay-pill{justify-self:start!important;text-align:left!important}#bills-list-table td[data-label=Notes]{padding-top:2px!important;border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent)!important}#bills-list-table td[data-label=Actions] .ghost-button,#debts-list-table td[data-label=Actions] .ghost-button{min-height:44px!important;border-radius:999px!important}#debts-list-table tr{grid-template-columns:minmax(0,1fr) auto!important;align-items:start!important}#debts-list-table td[data-label=Name]{grid-column:1 / 2!important;grid-row:1!important}#debts-list-table td[data-label=APR]{grid-column:2 / 3!important;grid-row:1!important;justify-items:end!important;align-content:start!important}#debts-list-table td[data-label=APR]:before{text-align:right!important}#debts-list-table td[data-label=APR] .freq-tag{width:auto!important;padding:4px 8px!important;border-radius:999px!important;background:color-mix(in srgb,var(--surface-strong) 86%,var(--line) 14%)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--line) 72%,transparent)!important}#debts-list-table td[data-label=Balance]{grid-column:1 / -1!important;grid-row:2!important}#debts-list-table td[data-label=Category]{grid-column:1 / 2!important;grid-row:3!important}#debts-list-table td[data-label="Min. Payment"]{grid-column:2 / 3!important;grid-row:3!important;justify-items:end!important}#debts-list-table td[data-label=Actions]{grid-column:1 / -1!important;grid-row:4!important}.dashboard-upcoming-frame .mobile-section-content>.due-card,.dashboard-upcoming-frame .mobile-section-content>.due-card>.card{border-radius:0!important;background:var(--surface-strong)!important}.dashboard-upcoming-frame .due-list{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important}.dashboard-upcoming-frame .due-item{height:150px!important;min-height:150px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important;padding:12px!important;border-radius:16px!important;box-shadow:none!important}.dashboard-upcoming-frame .due-item>div:first-child{display:grid!important;grid-template-rows:38px 52px 22px!important;align-content:center!important;gap:4px!important;min-width:0!important;height:118px!important}.dashboard-upcoming-frame .due-item h3{display:-webkit-box!important;margin:0!important;min-width:0!important;overflow:hidden!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;text-overflow:ellipsis!important;font-size:.96rem!important;line-height:1.15!important}.dashboard-upcoming-frame .due-item-meta{display:flex!important;align-items:center!important;gap:6px!important;flex-wrap:wrap!important;margin:0!important;min-width:0!important;min-height:52px!important;align-content:start!important;align-self:start!important}.dashboard-upcoming-frame .auto-pill,.dashboard-upcoming-frame .freq-pill,.dashboard-upcoming-frame .paid-pill{flex:0 0 auto!important;margin:0!important;padding:5px 9px!important;font-size:.68rem!important;line-height:1!important}.dashboard-upcoming-frame .due-item-date-note{margin:0!important;min-height:20px!important;font-size:.88rem!important;line-height:1.15!important;align-self:end!important;padding-top:1px!important}.dashboard-upcoming-frame .due-item-actions{display:grid!important;grid-template-columns:auto minmax(74px,86px)!important;align-items:center!important;gap:8px!important;min-width:0!important;height:118px!important}.dashboard-upcoming-frame .due-item .expense-amount{min-width:74px!important;text-align:right!important;font-size:1.05rem!important}.dashboard-upcoming-frame .due-button-stack{display:grid!important;gap:6px!important}.dashboard-upcoming-frame .paid-prior-action-row{grid-template-columns:minmax(0,1fr) 26px!important;gap:4px!important}.dashboard-upcoming-frame .paid-toggle{min-height:36px!important;padding:7px 8px!important;border-radius:999px!important;white-space:nowrap!important;font-size:.68rem!important}.dashboard-upcoming-frame .prepaid-toggle{font-size:0!important}.dashboard-upcoming-frame .prepaid-toggle:after{content:"Prior"!important;font-size:.68rem!important}.dashboard-upcoming-frame .prepaid-toggle.is-paid:after{content:"Undo"!important}.dashboard-upcoming-frame .paid-prior-info-button{width:26px!important;height:26px!important;min-width:26px!important}.debt-category-filter{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;overflow:visible!important;padding:4px!important;scrollbar-width:none!important}.debt-category-filter::-webkit-scrollbar{display:none!important}.debt-category-filter .category-filter-button{width:100%!important;min-width:0!important;padding-inline:8px!important;justify-content:center!important;white-space:nowrap!important}.debt-category-filter .category-filter-button:last-child{margin-right:0!important}.analytics-page-heading{padding-inline:16px!important}}@media(min-width:761px){.mobile-section-content,.mobile-section.is-collapsed .mobile-section-content{display:contents!important}.calendar-day-bills:not(.has-many) .calendar-bill-count{display:none!important}.calendar-day-bills.has-many .calendar-bill-name{display:none!important}}@media(min-width:761px){.tab-bar{border-color:color-mix(in srgb,var(--teal) 18%,var(--line) 82%)!important;background:#fff!important;box-shadow:0 16px 36px #0f172a14,inset 0 1px #ffffffe6!important}.tab-button{color:color-mix(in srgb,var(--text) 66%,var(--muted) 34%)!important}.tab-button:hover{background:color-mix(in srgb,var(--surface-strong) 74%,var(--lime) 26%)!important;color:var(--text)!important}.tab-button.is-active{background:linear-gradient(135deg,color-mix(in srgb,var(--lime) 28%,#ffffff 72%),color-mix(in srgb,var(--teal) 14%,#ffffff 86%))!important;color:color-mix(in srgb,var(--green-dark) 86%,var(--text) 14%)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--teal) 42%,transparent),0 10px 24px #10b9811f!important}.dashboard-card-frame[data-dashboard-card=tracker] .pay-setup-summary-card{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:start!important;gap:16px!important;min-height:138px!important;margin-bottom:16px!important}.dashboard-card-frame[data-dashboard-card=tracker] .pay-period-view-field,.dashboard-card-frame[data-dashboard-card=tracker] .paycheck-amount-field{display:grid!important;grid-template-rows:18px 56px 46px!important;align-content:start!important;gap:8px!important;min-width:0!important;height:auto!important}.dashboard-card-frame[data-dashboard-card=tracker] .pay-period-view-field select,.dashboard-card-frame[data-dashboard-card=tracker] .pay-period-view-field input{min-height:56px!important;height:56px!important}.dashboard-card-frame[data-dashboard-card=tracker] .paycheck-log-button{width:100%!important;min-height:46px!important;height:46px!important;justify-self:stretch!important;margin-top:0!important}.dashboard-card-frame[data-dashboard-card=tracker] .pay-period-view-field:not(.paycheck-amount-field):after{content:""!important;display:block!important;min-height:46px!important}}@media(max-width:760px){.page-shell{width:100%!important;max-width:100%!important;padding-right:12px!important;padding-left:12px!important;box-sizing:border-box!important}.hero.hero-compact,.tab-panel.is-active,.dashboard-workspace,.budget-workspace,.debt-layout,.settings-page{width:100%!important;max-width:100%!important;margin-right:auto!important;margin-left:auto!important;box-sizing:border-box!important}}@media(max-width:760px){.tab-bar{height:72px!important;display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;align-items:center!important;justify-items:stretch!important;gap:4px!important;overflow:hidden!important}.tab-button{width:100%!important;height:56px!important;min-height:56px!important;display:grid!important;grid-template:1fr / 1fr!important;place-items:center!important;padding:0!important;line-height:1!important}.tab-icon{grid-area:1 / 1!important;width:100%!important;height:100%!important;display:grid!important;grid-template:1fr / 1fr!important;gap:0!important;place-items:center!important;place-content:center!important;margin:0!important;transform:none!important}.tab-icon .side-asset-icon,.tab-icon svg{display:block!important;margin:0!important;justify-self:center!important;align-self:center!important;transform:none!important}.tab-button[data-tab=dashboard] .tab-icon .side-asset-icon{width:34px!important;height:34px!important;transform:none!important}}

/* v0.5.0 deploy dark theme readability patch */
body[data-theme="dark"] .tab-bar {
  border-color: color-mix(in srgb, var(--teal) 24%, var(--line) 76%) !important;
  background: color-mix(in srgb, var(--surface-strong) 88%, var(--bg) 12%) !important;
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.28), inset 0 1px 0 color-mix(in srgb, var(--text) 10%, transparent) !important;
}
body[data-theme="dark"] .tab-button {
  color: color-mix(in srgb, var(--text) 78%, var(--muted) 22%) !important;
}
body[data-theme="dark"] .tab-button:hover,
body[data-theme="dark"] .tab-button.is-active {
  background: color-mix(in srgb, var(--teal) 20%, var(--surface-strong) 80%) !important;
  color: color-mix(in srgb, var(--text) 92%, var(--teal) 8%) !important;
}
body[data-theme="dark"] .hero-calculator-button {
  border-color: color-mix(in srgb, var(--teal) 26%, var(--line) 74%) !important;
  background: color-mix(in srgb, var(--surface-strong) 86%, var(--bg) 14%) !important;
  color: color-mix(in srgb, var(--text) 90%, var(--teal) 10%) !important;
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.26) !important;
}
body[data-theme="dark"] .hero-calculator-button:hover {
  background: color-mix(in srgb, var(--teal) 16%, var(--surface-strong) 84%) !important;
}

/* iPhone Home Screen safe-area hotfix */
@supports (padding: max(0px)) {
  html {
    scroll-padding-top: calc(env(safe-area-inset-top) + 18px);
  }

  .page-shell {
    padding-top: max(28px, calc(env(safe-area-inset-top) + 18px)) !important;
  }

  @media (display-mode: standalone) {
    .page-shell {
      padding-top: max(30px, calc(env(safe-area-inset-top) + 18px)) !important;
    }
  }

  @media (max-width: 760px) {
    .page-shell {
      padding-top: max(14px, calc(env(safe-area-inset-top) + 12px)) !important;
    }

    .topbar {
      margin-top: 0 !important;
      padding-top: max(10px, env(safe-area-inset-top)) !important;
    }
  }

  @media (display-mode: standalone) and (max-width: 760px) {
    .page-shell {
      padding-top: max(18px, calc(env(safe-area-inset-top) + 14px)) !important;
    }

    .topbar {
      padding-top: max(12px, env(safe-area-inset-top)) !important;
    }
  }
}
