@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./dm-sans-latin-400-normal-CW0RaeGs.woff2) format("woff2")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(./dm-sans-latin-500-normal-B9HHJjqV.woff2) format("woff2")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(./dm-sans-latin-600-normal-Aqo67rzb.woff2) format("woff2")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-latin-600-normal-Br8yIETf.woff2) format("woff2")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(./nunito-latin-700-normal-Dort48En.woff2) format("woff2")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-latin-800-normal-Dz8SOQK_.woff2) format("woff2")}:root{font-family:DM Sans,sans-serif;color:#183c35;background:#e8ece4;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--cream: #f7f5ef;--paper: #fffdf8;--paper-soft: #fbfaf5;--ink: #183c35;--muted: #5f7069;--faint: #7a8882;--line: rgba(24, 60, 53, .11);--line-strong: rgba(24, 60, 53, .2);--primary: #2d6a58;--primary-dark: #215344;--primary-soft: #e2ece5;--eucalyptus: #82a891;--apricot: #f2ba8b;--apricot-soft: #fae9d9;--positive: #22634a;--negative: #a44335;--danger-soft: #fae8e2;--shadow-sm: 0 2px 10px rgba(24, 60, 53, .045);--shadow-md: 0 12px 32px rgba(24, 60, 53, .09);--screen-pad: 20px;color-scheme:light}*{box-sizing:border-box}html{min-width:320px;height:100%;background:#e8ece4}body{margin:0;min-width:320px;height:100%;overflow:hidden;overscroll-behavior:none;background:radial-gradient(circle at 12% 8%,rgba(242,186,139,.22),transparent 28rem),radial-gradient(circle at 88% 88%,rgba(130,168,145,.24),transparent 32rem),#e8ece4}body.sheet-open{overflow:hidden}button,input,select,textarea{font:inherit}button,input,select{-webkit-tap-highlight-color:transparent}button{max-width:100%;border:0;color:inherit;cursor:pointer;touch-action:manipulation}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.55}input,select,textarea{max-width:100%;color:var(--ink);font-size:16px}input::placeholder,textarea::placeholder{color:#7b8983;opacity:1}h1,h2,h3,p{margin:0}h1,h2,h3,.brand,.primary-button,.secondary-button{font-family:Nunito,sans-serif}h1,h2,h3,strong{overflow-wrap:anywhere}svg{flex:0 0 auto;vertical-align:middle}::selection{color:var(--ink);background:var(--apricot)}:focus-visible{outline:3px solid #a85e2d;outline-offset:3px}#root{height:100%}.app-shell{position:relative;width:100%;display:flex;flex-direction:column;max-width:520px;height:var(--app-vh, 100%);margin:0 auto;overflow-x:clip;background:var(--cream);box-shadow:0 0 64px #183c351f}.app-main{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding-bottom:30px}.screen{width:100%;padding:calc(18px + env(safe-area-inset-top,0px)) var(--screen-pad) 30px}.now-screen,.activity-screen,.bills-screen,.accounts-screen{min-width:0}.eyebrow{color:var(--muted);font-size:11px;font-weight:600;line-height:1.35;letter-spacing:.105em;text-transform:uppercase}.positive{color:var(--positive)!important}.negative{color:var(--negative)!important}.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}.icon-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:0;border:1px solid var(--line);border-radius:15px;background:#fffdf8c7;transition:background-color .14s ease,border-color .14s ease}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:44px;padding:0;color:var(--primary);background:transparent;font-size:13px;font-weight:600;white-space:nowrap}.primary-button,.secondary-button,.danger-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:12px 18px;border-radius:16px;font-size:15px;font-weight:700;line-height:1.25;text-align:center}.primary-button{width:100%;color:#fff;background:var(--primary);box-shadow:0 7px 18px #2d6a582e}.secondary-button{border:1px solid var(--line-strong);background:var(--paper);color:var(--ink)}.danger-button{width:100%;border:1px solid rgba(164,67,53,.22);color:var(--negative);background:var(--danger-soft)}.danger-icon-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 50px;width:50px;min-height:50px;padding:0;border:1px solid rgba(164,67,53,.2);border-radius:16px;color:var(--negative);background:var(--danger-soft)}.home-header,.screen-header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;margin-bottom:22px}.brand{display:inline-flex;align-items:center;gap:10px;font-size:21px;font-weight:800;letter-spacing:-.025em}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:13px 13px 13px 5px;color:var(--ink);background:var(--apricot);transform:rotate(-3deg)}.brand-mark svg{transform:rotate(3deg)}.settings-button,.header-action{background:transparent}.hero-card{position:relative;isolation:isolate;overflow:hidden;padding:24px;border-radius:28px;color:#fff;background:radial-gradient(circle at 100% 0%,rgba(130,168,145,.44),transparent 48%),linear-gradient(145deg,#1b463d,var(--ink));box-shadow:0 18px 38px #183c352e}.hero-card:after{position:absolute;z-index:-1;right:-32px;bottom:64px;width:112px;height:112px;border:22px solid rgba(242,186,139,.12);border-radius:50%;content:""}.hero-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.hero-card .eyebrow{color:#ffffffb8}.local-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border:1px solid rgba(255,255,255,.13);border-radius:999px;color:#ffffffe0;background:#ffffff12;font-size:10px;font-weight:500;white-space:nowrap}.local-badge>span{width:6px;height:6px;border-radius:50%;background:#a8d4af;box-shadow:0 0 0 3px #a8d4af1f}.hero-card h1{margin:12px 0 20px;font-size:clamp(40px,11.5vw,54px);font-weight:700;line-height:1.05;letter-spacing:-.045em;font-variant-numeric:tabular-nums}.hero-breakdown{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:#ffffff13}.hero-breakdown>div{display:grid;gap:4px;min-width:0;padding:13px 14px}.hero-breakdown>div+div{border-left:1px solid rgba(255,255,255,.11)}.hero-breakdown span{color:#ffffffab;font-size:11px}.hero-breakdown strong{font-size:16px;font-weight:600;font-variant-numeric:tabular-nums}.hero-note{display:flex;align-items:center;gap:7px;margin-top:16px;color:#ffffffbf;font-size:12px;line-height:1.45}.account-glance{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;padding:15px 4px 0;color:var(--muted);font-size:12px}.account-glance>span{display:inline-flex;align-items:center;gap:5px}.account-glance strong{margin-left:2px;color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums}.section-block{margin-top:30px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:13px}.section-heading>div{min-width:0}.section-heading h2{margin-top:3px;font-size:21px;font-weight:700;line-height:1.2;letter-spacing:-.025em}.bill-stack,.bill-list-full,.account-card-list{display:grid;gap:12px}.upcoming-bill{display:flex;align-items:center;gap:8px;min-width:0;padding:8px 8px 8px 12px;border:1px solid var(--line);border-radius:20px;background:var(--paper);box-shadow:var(--shadow-sm)}.bill-main{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;flex:1;gap:10px;min-width:0;min-height:56px;padding:0;text-align:left;background:transparent}.bill-main>span:not(.category-icon),.bill-card-copy,.transaction-copy{min-width:0}.bill-main>span:not(.category-icon):not(.bill-amount){display:grid;gap:4px}.bill-main strong,.bill-card-copy>strong{overflow:hidden;font-size:14px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.bill-main small,.bill-card-copy small{overflow:hidden;color:var(--muted);font-size:11px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.bill-amount{display:grid;justify-items:end;gap:5px;font-variant-numeric:tabular-nums}.bill-amount>strong{font-size:14px}.pay-quick{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;gap:3px;min-width:58px;min-height:44px;padding:0 9px;border-radius:14px;color:var(--primary-dark);background:var(--primary-soft);font-size:12px;font-weight:600}.category-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:14px;color:var(--category-color);background:#e9eee9;background:color-mix(in srgb,var(--category-color) 14%,#fff)}.category-icon-medium{width:42px;height:42px}.category-icon-small{width:30px;height:30px;border-radius:10px}.status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:3px 7px;border-radius:999px;font-size:10px;font-weight:600;line-height:1.2;white-space:nowrap}.status-paid{color:#205c45;background:#dfeee4}.status-partial,.status-unpaid{color:#7b481f;background:var(--apricot-soft)}.status-overdue{color:#913b30;background:var(--danger-soft)}.status-upcoming{color:#52645d;background:#edf0eb}.all-clear{display:flex;align-items:center;gap:13px;padding:18px;border:1px solid rgba(45,106,88,.13);border-radius:20px;background:var(--primary-soft)}.all-clear>span{display:inline-flex;align-items:center;justify-content:center;flex:0 0 40px;width:40px;height:40px;border-radius:50%;color:#fff;background:var(--primary)}.all-clear strong{font-family:Nunito,sans-serif;font-size:15px}.all-clear p{margin-top:2px;color:var(--muted);font-size:12px}.account-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(132px,42%);gap:11px;margin-inline:calc(var(--screen-pad) * -1);padding:2px var(--screen-pad) 10px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-padding-inline:var(--screen-pad);scroll-snap-type:inline proximity;scrollbar-width:none}.account-strip::-webkit-scrollbar{display:none}.account-mini{display:flex;align-items:flex-start;flex-direction:column;min-width:0;min-height:148px;padding:15px;border:1px solid var(--line);border-radius:20px;text-align:left;background:var(--paper);box-shadow:var(--shadow-sm);scroll-snap-align:start}.account-mini-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;margin-bottom:12px;border-radius:12px;color:var(--account-color);background:#e9eee9;background:color-mix(in srgb,var(--account-color) 14%,#fff)}.account-mini>span:not(.account-mini-icon){overflow:hidden;width:100%;margin-bottom:4px;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.account-mini>strong{font-family:Nunito,sans-serif;font-size:18px;font-variant-numeric:tabular-nums;letter-spacing:-.35px;white-space:nowrap}.account-mini>small{margin-top:1px;color:var(--faint);font-size:10px}.recent-section{margin-top:24px}.transaction-list{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--paper);box-shadow:var(--shadow-sm)}.transaction-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;width:100%;min-height:70px;padding:12px 14px;text-align:left;background:transparent}.transaction-row+.transaction-row,.history-item+.history-item,.history-item+.transaction-row,.transaction-row+.history-item{border-top:1px solid var(--line)}.transaction-copy{display:grid;gap:4px}.transaction-copy strong,.transaction-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transaction-copy strong{font-size:14px;font-weight:600}.transaction-copy small{color:var(--muted);font-size:11px}.transaction-value{display:grid;justify-items:end;gap:3px;max-width:112px;font-variant-numeric:tabular-nums}.transaction-value strong{font-size:13px;font-weight:600;white-space:nowrap}.transaction-value small{color:var(--muted);font-size:10px;white-space:nowrap}.empty-state{display:flex;align-items:center;flex-direction:column;padding:32px 22px;color:var(--muted);text-align:center}.empty-state>svg{margin-bottom:12px;color:var(--eucalyptus)}.empty-state h3{color:var(--ink);font-size:17px;font-weight:700}.empty-state p{max-width:280px;margin-top:6px;font-size:13px;line-height:1.55}.screen-header h1{margin-top:3px;font-size:30px;font-weight:800;line-height:1.12;letter-spacing:-.035em}.header-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;border-radius:15px;color:var(--primary);background:var(--primary-soft)}.period-control{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.period-control>label{position:relative;display:inline-flex;align-items:center;flex:0 1 auto;min-width:0}.period-control select{width:100%;min-height:44px;padding:0 34px 0 13px;border:1px solid var(--line-strong);border-radius:14px;appearance:none;background:var(--paper);font-size:13px;font-weight:600;cursor:pointer}.period-control label>svg{position:absolute;right:11px;pointer-events:none}.period-control>span{flex:0 0 auto;color:var(--muted);font-size:11px;white-space:nowrap}.custom-dates,.two-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.custom-dates{margin-bottom:14px;padding:14px;border:1px solid var(--line);border-radius:18px;background:var(--paper-soft)}.custom-dates label{display:grid;gap:6px;min-width:0;color:var(--muted);font-size:12px;font-weight:500}.summary-card,.report-panel{border:1px solid var(--line);border-radius:22px;background:var(--paper);box-shadow:var(--shadow-sm)}.summary-card{padding:18px}.summary-grid,.account-detail-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.summary-grid>div,.account-detail-flow>div{display:grid;gap:5px;min-width:0;padding:0 12px}.summary-grid>div:first-child,.account-detail-flow>div:first-child{padding-left:0}.summary-grid>div:last-child,.account-detail-flow>div:last-child{padding-right:0}.summary-grid>div+div,.account-detail-flow>div+div{border-left:1px solid var(--line)}.summary-grid span,.account-detail-flow span{color:var(--muted);font-size:11px;line-height:1.35}.summary-grid strong,.account-detail-flow strong{font-size:15px;font-weight:600;font-variant-numeric:tabular-nums}.comparison-sentence{display:flex;align-items:flex-start;gap:8px;margin-top:17px;padding:12px;border-radius:14px;color:#455e53;background:var(--primary-soft);font-size:12px;line-height:1.5}.comparison-sentence svg{margin-top:1px;color:var(--primary)}.refund-note{margin-top:10px;color:var(--muted);font-size:11px;line-height:1.5}.segmented{display:flex;gap:3px;width:100%;min-height:48px;margin:18px 0;padding:3px;overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:#eeeee7;scrollbar-width:none}.segmented::-webkit-scrollbar{display:none}.segmented button{flex:1 0 auto;min-width:0;min-height:40px;padding:7px 9px;border-radius:12px;color:var(--muted);background:transparent;font-size:12px;font-weight:600;white-space:nowrap}.segmented button.active{color:var(--ink);background:var(--paper);box-shadow:0 2px 7px #183c3517}.report-panel{padding:18px 14px 14px}.report-panel>.section-heading{padding-inline:4px}.small-label{color:var(--faint);font-size:10px;white-space:nowrap}.category-report,.payee-list{display:grid}.category-report-row{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;padding:14px 4px}.category-report-row+.category-report-row,.payee-row+.payee-row{border-top:1px solid var(--line)}.category-bar-copy{display:grid;gap:7px;min-width:0}.category-bar-copy>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.category-bar-copy strong{font-size:13px;font-weight:600}.category-bar-copy>div:first-child>span{font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.bar-track{width:100%;height:7px;overflow:hidden;border-radius:999px;background:#e9ece6}.bar-track>span{display:block;height:100%;border-radius:inherit}.category-bar-copy small{font-size:10px;font-weight:500}.payee-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:64px;padding:10px 4px}.payee-rank{color:var(--eucalyptus);font-family:Nunito,sans-serif;font-size:14px;font-weight:700;font-variant-numeric:tabular-nums}.payee-row>span:nth-child(2){display:grid;gap:3px;min-width:0}.payee-row strong{font-size:13px;font-weight:600}.payee-row>strong{font-variant-numeric:tabular-nums;white-space:nowrap}.payee-row small{overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.transactions-panel{padding-top:14px}.search-box{display:flex;align-items:center;gap:9px;min-height:48px;margin-bottom:12px;padding:0 13px;border:1px solid var(--line-strong);border-radius:15px;color:var(--muted);background:var(--paper-soft)}.search-box:focus-within{outline:3px solid #a85e2d;outline-offset:2px}.search-box input{width:100%;min-width:0;min-height:46px;padding:0;border:0;outline:0;background:transparent}.search-box input:focus-visible{outline:0}.monthly-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:20px;border-radius:24px;color:#fff;background:var(--ink);box-shadow:var(--shadow-md)}.monthly-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:16px;color:var(--ink);background:var(--apricot)}.monthly-card>div{display:grid;gap:2px;min-width:0}.monthly-card>div>span,.monthly-card>div>small{color:#ffffffad;font-size:11px}.monthly-card>div>strong{font-family:Nunito,sans-serif;font-size:26px;font-variant-numeric:tabular-nums}.due-bubble{display:flex;align-items:center;justify-content:center;flex-direction:column;width:54px;height:54px;border:1px solid rgba(255,255,255,.13);border-radius:50%;background:#ffffff17;font-family:Nunito,sans-serif;font-size:20px;font-weight:700;line-height:1}.due-bubble small{margin-top:3px;color:#ffffffb3;font-family:DM Sans,sans-serif;font-size:9px;font-weight:400}.bill-explainer{display:flex;align-items:flex-start;gap:9px;margin:16px 2px 22px;color:var(--muted)}.bill-explainer svg{margin-top:2px;color:var(--primary)}.bill-explainer p{font-size:12px;line-height:1.55}.bill-card{overflow:hidden;border:1px solid var(--line);border-radius:22px;background:var(--paper);box-shadow:var(--shadow-sm)}.bill-card-main{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;width:100%;min-height:94px;padding:17px 16px;text-align:left;background:transparent}.bill-card-copy{display:grid;gap:5px}.bill-card-copy>span{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.bill-card-copy em{color:var(--faint);font-size:10px;font-style:normal}.bill-card-value{display:grid;justify-items:end;gap:4px;padding-top:2px}.bill-card-value strong{font-size:15px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.bill-card-value small{color:var(--muted);font-size:10px;white-space:nowrap}.bill-pay-button{display:flex;align-items:center;justify-content:center;gap:6px;width:calc(100% - 24px);min-height:44px;margin:0 12px 12px;border-radius:14px;color:var(--primary-dark);background:var(--primary-soft);font-size:13px;font-weight:600}.accounts-total{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:18px;margin-bottom:22px;padding:20px;border:1px solid var(--line);border-radius:22px;background:var(--paper)}.accounts-total>div{display:grid;gap:5px;min-width:0}.accounts-total>div>span{color:var(--muted);font-size:11px}.accounts-total strong{font-family:Nunito,sans-serif;font-size:23px;font-variant-numeric:tabular-nums}.vertical-rule{width:1px;height:40px;background:var(--line)}.account-card{display:block;width:100%;min-width:0;padding:18px;border:1px solid var(--line);border-radius:24px;text-align:left;background:var(--paper);box-shadow:var(--shadow-sm)}.account-card-top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px}.account-card-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:46px;height:46px;border-radius:15px;color:var(--account-color);background:#e9eee9;background:color-mix(in srgb,var(--account-color) 14%,#fff)}.account-card-top>span:nth-child(2){display:grid;gap:3px;min-width:0}.account-card-top strong{font-size:14px;font-weight:600}.account-card-top small,.account-balance small,.account-period{color:var(--muted);font-size:11px}.account-card-top>svg{color:var(--faint)}.account-balance{display:grid;gap:1px;margin:18px 0}.account-balance strong{font-family:Nunito,sans-serif;font-size:30px;line-height:1.15;letter-spacing:-.025em;font-variant-numeric:tabular-nums}.account-flow{display:flex;align-items:center;flex-wrap:wrap;gap:8px 13px;padding-top:13px;border-top:1px solid var(--line);color:var(--muted);font-size:10px;font-variant-numeric:tabular-nums}.account-flow>span{display:inline-flex;align-items:center;gap:3px}.account-period{display:block;margin-top:10px;color:var(--faint);font-size:10px}.footnote{display:flex;align-items:flex-start;justify-content:center;gap:6px;margin:18px auto 0;color:var(--muted);font-size:11px;line-height:1.5;text-align:center}.footnote svg{margin-top:1px}.bottom-nav{position:relative;z-index:30;flex:0 0 auto;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;width:100%;max-width:520px;min-height:calc(74px + env(safe-area-inset-bottom,0px));margin:0 auto;padding:7px 8px calc(7px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);background:#fffdf8f5;box-shadow:0 -10px 28px #183c3512;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.bottom-nav>button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;min-width:0;min-height:54px;padding:4px 2px;border-radius:14px;color:#66776f;background:transparent}.bottom-nav>button.active{color:var(--primary-dark)}.bottom-nav>button.active>svg{stroke-width:2.5}.bottom-nav small{font-size:10px;font-weight:500;line-height:1.2}.bottom-nav .add-nav{position:relative;gap:1px;color:var(--ink)}.add-nav>span{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;margin-top:-29px;border:5px solid var(--paper);border-radius:21px;color:var(--ink);background:var(--apricot);box-shadow:0 8px 20px #67472c33;transform:rotate(-3deg)}.add-nav>span>svg{transform:rotate(3deg)}.add-nav>small{font-weight:600}.sheet-layer{position:fixed;z-index:100;inset:0;display:flex;align-items:flex-end;justify-content:center;width:100%;min-width:320px;background:#0e27217a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.sheet{display:flex;flex-direction:column;width:100%;max-width:520px;max-height:92vh;max-height:min(92svh,900px);overflow:hidden;border:1px solid rgba(24,60,53,.1);border-bottom:0;border-radius:28px 28px 0 0;background:var(--cream);box-shadow:0 -18px 60px #0e272133;animation:sheet-enter .2s ease-out both}.sheet-wide{max-width:520px}.sheet-grabber{flex:0 0 auto;width:42px;height:5px;margin:9px auto 2px;border-radius:999px;background:#cbd1ca}.sheet-header{display:flex;align-items:center;justify-content:space-between;flex:0 0 auto;gap:16px;padding:14px 20px 16px;border-bottom:1px solid var(--line)}.sheet-header>div{min-width:0}.sheet-header h2{margin-top:4px;font-size:24px;font-weight:800;line-height:1.16;letter-spacing:-.03em}.sheet-header .icon-button{background:var(--paper)}.sheet-body{flex:1 1 auto;min-height:0;padding:20px 20px calc(24px + env(safe-area-inset-bottom,0px));overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.entry-form,.pay-form{display:grid;gap:18px}.entry-form>.segmented{margin:0}.locked-kind{display:inline-flex;align-items:center;justify-self:start;gap:6px;min-height:34px;padding:6px 11px;border-radius:999px;color:var(--primary-dark);background:var(--primary-soft);font-size:12px;font-weight:600;text-transform:capitalize}.amount-field{display:grid;gap:1px;padding:15px 18px 12px;border:1px solid rgba(45,106,88,.13);border-radius:22px;background:var(--primary-soft)}.amount-field>span{color:var(--muted);font-size:11px;font-weight:500}.amount-field>div{display:flex;align-items:center;gap:7px;min-width:0}.amount-field>div>span{color:var(--primary);font-family:Nunito,sans-serif;font-size:30px;font-weight:700}.amount-field input{width:100%;min-width:0;min-height:58px;padding:0;border:0;outline:0;color:var(--ink);background:transparent;font-family:Nunito,sans-serif;font-size:40px;font-weight:700;letter-spacing:-.035em;font-variant-numeric:tabular-nums}.amount-field:focus-within{outline:3px solid #a85e2d;outline-offset:3px}.amount-field input:focus-visible{outline:0}.field{display:grid;gap:7px;min-width:0;color:var(--ink);font-size:13px;font-weight:600}.field>input,.field>select,.custom-dates input,.split-row input,.split-row select{width:100%;min-width:0;min-height:48px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:14px;outline:0;background:var(--paper);font-weight:400}.field>small{color:var(--muted);font-size:11px;font-weight:400;line-height:1.5}.field>input:focus-visible,.field>select:focus-visible,.custom-dates input:focus-visible,.split-row input:focus-visible,.split-row select:focus-visible{outline:3px solid #a85e2d;outline-offset:2px}.choice-grid{display:grid;gap:8px}.category-choices{grid-template-columns:repeat(3,minmax(0,1fr))}.account-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.choice-grid button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;min-width:0;min-height:66px;padding:9px 5px;border:1px solid var(--line);border-radius:15px;color:var(--muted);background:var(--paper);font-size:11px;font-weight:500;line-height:1.2}.choice-grid button>svg{color:var(--choice-color, var(--primary))}.choice-grid button>span{overflow:hidden;width:100%;text-overflow:ellipsis;white-space:nowrap}.choice-grid button.selected{border-color:var(--primary);color:var(--primary-dark);background:var(--primary-soft);box-shadow:inset 0 0 0 1px var(--primary);font-weight:600}.advanced-toggle{display:inline-flex;align-items:center;justify-self:start;gap:5px;min-height:44px;margin-top:-10px;padding:0;color:var(--primary);background:transparent;font-size:12px;font-weight:600}.transfer-fields{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);align-items:center;gap:8px}.transfer-fields>span{display:inline-flex;align-items:center;justify-content:center;padding-top:23px;color:var(--muted)}.entry-details{display:grid;gap:15px;padding:16px;border:1px solid var(--line);border-radius:20px;background:var(--paper-soft)}.prefixed-input{display:flex;align-items:center;min-height:50px;padding-left:13px;border:1px solid var(--line-strong);border-radius:14px;background:var(--paper)}.prefixed-input>span{color:var(--muted);font-size:16px;font-weight:400}.prefixed-input input{width:100%;min-width:0;min-height:48px;padding:10px 12px 10px 7px;border:0;outline:0;background:transparent;font-weight:400;font-variant-numeric:tabular-nums}.prefixed-input:focus-within{outline:3px solid #a85e2d;outline-offset:2px}.prefixed-input input:focus-visible{outline:0}.split-editor{display:grid;gap:9px;margin-top:-8px;padding:12px;border:1px dashed var(--line-strong);border-radius:18px;background:var(--paper-soft)}.split-row{display:grid;grid-template-columns:minmax(0,1fr) 88px 44px;align-items:center;gap:7px}.split-row .icon-button{background:transparent}.split-row input{padding-inline:9px;font-variant-numeric:tabular-nums}.split-footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.split-footer>span{font-size:11px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.form-error{padding:12px 14px;border:1px solid rgba(164,67,53,.18);border-radius:14px;color:var(--negative);background:var(--danger-soft);font-size:12px;font-weight:500;line-height:1.5}.form-explainer{display:flex;align-items:flex-start;gap:8px;color:var(--muted);font-size:12px;font-weight:400;line-height:1.55}.form-explainer svg{margin-top:2px;color:var(--primary)}.save-entry{position:sticky;bottom:0;z-index:2}.pay-remaining{display:grid;gap:5px;padding:20px;border-radius:20px;color:#fff;background:var(--ink);text-align:center}.pay-remaining span{color:#ffffffb8;font-size:12px}.pay-remaining strong{font-family:Nunito,sans-serif;font-size:30px;font-variant-numeric:tabular-nums}.check-field{display:flex;align-items:center;gap:12px;min-height:64px;padding:11px 13px;border:1px solid var(--line);border-radius:16px;background:var(--paper);cursor:pointer}.check-field input{flex:0 0 22px;width:22px;height:22px;margin:0;accent-color:var(--primary);cursor:pointer}.check-field>span{display:grid;gap:3px}.check-field strong{font-size:13px}.check-field small{color:var(--muted);font-size:11px;font-weight:400;line-height:1.4}.privacy-card{display:flex;align-items:flex-start;gap:13px;padding:18px;border:1px solid rgba(45,106,88,.13);border-radius:20px;background:var(--primary-soft)}.privacy-card>span{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;border-radius:14px;color:var(--primary-dark);background:#ffffff7a}.privacy-card strong{font-family:Nunito,sans-serif;font-size:16px}.privacy-card p,.settings-section>p{margin-top:5px;color:var(--muted);font-size:12px;line-height:1.6}.settings-section{display:grid;gap:11px;margin-top:24px;padding-top:22px;border-top:1px solid var(--line)}.settings-section h3,.detail-section h3{font-size:16px;font-weight:700;letter-spacing:-.015em}.settings-section>p{margin-top:-4px}.settings-section .secondary-button{width:100%}.settings-message{padding:11px 13px;border-radius:13px;color:var(--primary-dark);background:var(--primary-soft);font-size:12px;line-height:1.5}.danger-zone{margin-inline:-4px;padding:20px 16px 16px;border:1px solid rgba(164,67,53,.15);border-radius:20px;background:#fae8e26b}.danger-zone h3{color:var(--negative)}.version-label{margin-top:24px;color:var(--faint);font-size:10px;line-height:1.5;text-align:center}.detail-amount{display:grid;justify-items:center;gap:4px;padding:8px 0 22px}.detail-amount>span{font-family:Nunito,sans-serif;font-size:38px;font-weight:700;line-height:1.1;letter-spacing:-.035em;font-variant-numeric:tabular-nums}.detail-amount small{color:var(--muted);font-size:11px}.detail-section{margin-top:23px;padding-top:20px;border-top:1px solid var(--line)}.detail-section>h3{margin-bottom:12px}.detail-section>p:not(.section-caption){color:var(--muted);font-size:13px;line-height:1.6;overflow-wrap:anywhere}.detail-line{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:6px 0}.detail-line+.detail-line{border-top:1px solid var(--line)}.detail-line>span{display:inline-flex;align-items:center;gap:9px;min-width:0;font-size:13px}.detail-line>strong{font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.account-chip{display:inline-flex;align-items:center;gap:7px;min-width:0;min-height:44px;padding:5px 11px 5px 6px;border:1px solid var(--line);border-radius:14px;background:var(--paper);font-size:12px;font-weight:500}.account-chip>span{display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;width:30px;height:30px;border-radius:10px;color:#fff}.transfer-detail{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;margin:4px 0 22px;padding:16px;border-radius:20px;background:var(--paper)}.transfer-detail .account-chip{justify-content:center;width:100%}.transfer-detail>svg{color:var(--muted)}.linked-record{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;width:100%;min-height:64px;padding:10px 12px;border:1px solid var(--line);border-radius:16px;text-align:left;background:var(--paper)}.linked-record+.linked-record{margin-top:8px}.linked-record>svg:first-child{color:var(--primary)}.linked-record>svg:last-child{color:var(--faint)}.linked-record>span{display:grid;gap:3px;min-width:0}.linked-record strong,.linked-record small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.linked-record strong{font-size:13px}.linked-record small{color:var(--muted);font-size:11px}.audit-section h3{display:flex;align-items:center;gap:7px}.audit-section details{margin:9px 0;padding:0 12px;border:1px solid var(--line);border-radius:13px;background:var(--paper)}.audit-section summary{min-height:44px;padding:12px 0;color:var(--muted);font-size:11px;line-height:1.6;cursor:pointer}.audit-section pre{margin:0 0 12px;color:var(--muted);font-family:DM Sans,sans-serif;font-size:11px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.audit-section>p+p{margin-top:7px}.detail-actions{display:flex;gap:9px;margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.detail-actions .secondary-button{flex:1;min-width:0;padding-inline:12px}.bill-detail-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);border-radius:20px;background:var(--paper)}.bill-detail-hero>div{display:grid;gap:3px}.bill-detail-hero>div>span{color:var(--muted);font-size:11px}.bill-detail-hero>div>strong{font-size:15px}.bill-progress{display:grid;gap:10px;margin:18px 0;padding:17px;border-radius:18px;background:var(--paper-soft)}.bill-progress>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px}.bill-progress>div:first-child>span{color:var(--muted)}.bill-progress strong{font-variant-numeric:tabular-nums}.bill-progress small,.section-caption{color:var(--muted);font-size:11px;line-height:1.5}.section-caption{margin:-5px 0 12px}.history-item{background:var(--paper)}.history-item>small{display:block;margin:-8px 14px 10px 67px;padding-bottom:8px;color:var(--faint);font-size:10px}.account-detail-balance{display:flex;align-items:center;gap:14px;padding:20px;border:1px solid var(--line);border-radius:22px;background:#eef1eb;background:color-mix(in srgb,var(--account-color) 8%,var(--paper))}.account-detail-balance>div{display:grid;gap:2px;min-width:0}.account-detail-balance>div>span,.account-detail-balance small{color:var(--muted);font-size:11px}.account-detail-balance strong{font-family:Nunito,sans-serif;font-size:30px;line-height:1.2;font-variant-numeric:tabular-nums}.account-detail-flow{padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--paper)}.toast{position:absolute;z-index:200;right:16px;bottom:calc(92px + env(safe-area-inset-bottom,0px));left:16px;display:flex;align-items:center;justify-content:center;gap:8px;width:fit-content;max-width:min(440px,calc(100% - 32px));min-height:48px;margin:0 auto;padding:11px 17px;border:1px solid rgba(255,255,255,.12);border-radius:16px;color:#fff;background:var(--ink);box-shadow:0 12px 32px #0e27213d;font-size:12px;font-weight:500;line-height:1.45;text-align:center;animation:toast-enter .18s ease-out both}.toast svg{color:#add3b6}@media(hover:hover){.icon-button:hover,.secondary-button:hover{border-color:var(--line-strong);background:#f2f3ed}.primary-button:hover{background:var(--primary-dark)}.text-button:hover,.advanced-toggle:hover{color:var(--primary-dark);text-decoration:underline;text-underline-offset:3px}.transaction-row:hover,.bill-card-main:hover,.bill-main:hover{background:#e2ece561}.account-card:hover,.account-mini:hover,.upcoming-bill:hover{border-color:#2d6a5842}.bottom-nav>button:hover{color:var(--primary-dark);background:#e2ece58c}.bottom-nav .add-nav:hover{background:transparent}.choice-grid button:hover{border-color:var(--eucalyptus)}.danger-button:hover,.danger-icon-button:hover{background:#f6dcd4}}@media(max-width:380px){:root{--screen-pad: 16px}.hero-card{padding:20px}.hero-card h1{font-size:39px}.hero-breakdown>div{padding-inline:11px}.hero-breakdown strong{font-size:14px}.upcoming-bill{padding-left:9px}.bill-main{gap:8px}.bill-main .status-pill{display:none}.transaction-row{gap:9px;padding-inline:11px}.transaction-value{max-width:92px}.summary-card{padding-inline:13px}.summary-grid>div,.account-detail-flow>div{padding-inline:8px}.summary-grid strong,.account-detail-flow strong{font-size:13px}.monthly-card{gap:10px;padding:17px 14px}.monthly-icon{width:42px;height:42px}.monthly-card>div>strong{font-size:23px}.due-bubble{width:48px;height:48px}.bill-card-main{gap:9px;padding-inline:12px}.accounts-total{gap:12px;padding-inline:15px}.accounts-total strong{font-size:20px}.sheet-header,.sheet-body{padding-inline:17px}.two-fields{grid-template-columns:1fr}.split-row{grid-template-columns:minmax(0,1fr) 76px 44px;gap:5px}.segmented button{padding-inline:7px;font-size:11px}.period-control>span{font-size:10px}.transfer-detail{padding-inline:10px}.transfer-detail .account-chip{flex-direction:column;gap:4px;padding:7px 5px}}@media(min-width:700px){:root{--screen-pad: 24px}.screen{padding-top:26px}.sheet-layer{align-items:center;padding:24px 16px}.sheet{max-height:min(88svh,860px);border-bottom:1px solid rgba(24,60,53,.1);border-radius:28px;box-shadow:0 26px 80px #0e272147}.sheet-grabber{display:none}.sheet-header{padding-top:22px}.bottom-nav{border-right:1px solid var(--line);border-left:1px solid var(--line)}.account-strip{grid-auto-columns:minmax(138px,40%)}}@keyframes sheet-enter{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:where(button,select,summary,input:not([type=checkbox]):not([type=radio]):not([type=file])){min-height:44px}.skip-link{position:absolute;top:-80px;left:12px;z-index:300;display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border-radius:12px;color:var(--primary-dark);background:var(--paper);box-shadow:var(--shadow-md);font-weight:600}.skip-link:focus{top:12px}main:focus{outline:0}.sheet-layer{padding-bottom:var(--kb, 0px)}.sheet{max-height:calc(min(92svh,900px) - var(--kb, 0px))}.sheet-body input,.sheet-body select,.sheet-body textarea,.sheet-body .form-error{scroll-margin-bottom:96px}.save-entry{box-shadow:0 0 0 10px var(--cream)}.form-error:empty{display:none}[aria-invalid=true]{border-color:var(--negative)!important}.app-banner{position:relative;flex:0 0 auto;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;color:#6b3a12;background:var(--apricot-soft);border-bottom:1px solid var(--line);font-size:13px;line-height:1.4}.app-banner .text-button{flex:0 0 auto;font-weight:700}.sample-banner{color:var(--ink);background:var(--primary-soft)}.sample-card{display:grid;gap:8px;margin-bottom:16px;padding:16px;border-radius:20px;background:var(--primary-soft)}.sample-card p{color:var(--muted);font-size:13px;line-height:1.5}.start-screen{display:flex;flex-direction:column;gap:16px;max-width:460px;height:var(--app-vh, 100%);overflow-y:auto;margin:0 auto;padding:calc(40px + env(safe-area-inset-top,0px)) 24px calc(32px + env(safe-area-inset-bottom,0px))}.start-screen h1{font-size:34px;font-weight:800;line-height:1.1;letter-spacing:-.04em}.start-lede{color:var(--muted);font-size:15px;line-height:1.55}.start-actions{display:grid;gap:10px;margin-top:8px}.recovery-errors{padding:12px 14px;border-radius:14px;background:var(--danger-soft);font-size:13px;line-height:1.5}.recovery-errors ul{margin:8px 0 0;padding-left:18px}ul.recovery-errors{margin:0;padding-left:32px}.start-question{margin:8px 0 0;font-size:18px}.form-note{color:var(--muted);font-size:12px;line-height:1.5}.swatches,.icon-choices{display:flex;flex-wrap:wrap;gap:8px}.swatch{width:44px;height:44px;border:3px solid transparent;border-radius:50%;background:var(--swatch);box-shadow:inset 0 0 0 2px #ffffffb3}.swatch.selected{border-color:var(--ink)}.icon-choice{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:14px;color:var(--muted);background:var(--paper)}.icon-choice.selected{color:#fff;border-color:transparent;background:var(--choice-color, var(--primary))}.category-manage-list{display:grid;margin:8px 0 12px;border:1px solid var(--line);border-radius:16px;background:var(--paper);overflow:hidden}.category-manage-row{display:flex;align-items:center;gap:12px;width:100%;padding:8px 14px;border:0;border-bottom:1px solid var(--line);background:none;text-align:left}.category-manage-row:last-child{border-bottom:0}.category-manage-row>span:nth-child(2){flex:1;font-weight:600}.remove-row{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.account-edit{width:100%;margin:12px 0 4px}.kept-list{display:grid;gap:4px;margin:8px 0 0;padding:0;list-style:none;font-size:13px}.kept-list li{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px}.kept-list li>span{flex:1 1 auto}.settings-message:empty{display:none}.recovery-errors summary{display:flex;align-items:center;gap:6px;cursor:pointer}.status-not-owed,.status-paused{color:var(--muted);background:transparent;box-shadow:inset 0 0 0 1px var(--line-strong)}.cycle-actions{display:grid;gap:4px;margin-top:4px}.cycle-actions .text-button{justify-self:start}.cycle-amount{display:grid;gap:10px;margin-top:6px}.cycle-amount-buttons{display:flex;gap:9px}.cycle-amount-buttons>button{flex:1;min-width:0}.cycle-list{display:grid;gap:6px}.cycle-row{display:grid;grid-template-columns:minmax(0,1fr) auto 104px;align-items:center;gap:10px;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:14px;background:var(--paper);color:var(--ink);font:inherit;font-size:13px;text-align:left;cursor:pointer}.cycle-row>strong{text-align:right;font-variant-numeric:tabular-nums}.cycle-row.selected{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}.hero-note+.hero-note{margin-top:6px}.hero-note-button{width:100%;min-height:44px;padding:0;border:0;background:none;color:#fff;font:inherit;font-size:12px;text-align:left;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.removed-note{display:flex;align-items:flex-start;gap:8px;margin:0 0 16px;padding:12px 14px;border-radius:14px;background:var(--apricot-soft);color:#7b481f;font-size:13px;line-height:1.45}.show-field{margin:10px 0 12px}.shortcut-row{display:grid;gap:8px}.shortcut-row-head{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px;font-weight:600}.shortcut-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.shortcut-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;height:84px;padding:8px 6px;border:1px solid var(--line);border-radius:15px;color:var(--ink);background:var(--paper);font-size:12px;line-height:1.2}.shortcut-tile strong{max-width:100%;overflow:hidden;font-weight:600;white-space:nowrap;text-overflow:ellipsis}.shortcut-tile span:last-child{color:var(--muted);font-size:11px}.shortcut-edit{display:grid;gap:10px;margin:0;padding:12px;border:1px solid var(--line);border-radius:15px}.shortcut-edit legend{padding:0 4px;color:var(--muted);font-size:12px;font-weight:600}.date-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.date-chips button{min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:var(--paper);font-size:12px}.date-chips button.selected{border-color:var(--ink);color:var(--ink);font-weight:600}.toast-action{min-height:44px;margin-left:4px;padding:0 10px;border:0;border-radius:10px;color:#fff;background:#ffffff24;font-weight:600}
