@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap";.budget-page,.expense-page{color:#17231d;width:min(100% - 32px,1120px);margin:0 auto;padding:32px 0 60px}.budget-header,.section-heading,.week-toolbar,.expense-list li,.category-list li,.expense-page-heading,.budget-header-actions{align-items:center;display:flex}.budget-header,.section-heading{justify-content:space-between;gap:16px}.budget-header-actions{gap:9px}.budget-signout{color:#637268;min-height:44px;font:inherit;cursor:pointer;background:0 0;border:0;padding:0 12px}.expense-list .expense-edit-link,.category-create-form button,.manage-category-list button{min-height:40px}.expense-edit-link{color:#176c4b;font-size:14px;font-weight:650}.categories-page>section{margin-top:28px}.category-create-form,.manage-category-list li{background:#fff;border:1px solid #5b616c24;border-radius:12px;padding:18px}.category-create-form>form,.manage-category-list li,.manage-category-list li>div,.manage-category-list form{justify-content:space-between;align-items:center;gap:12px;display:flex}.category-create-form input,.manage-category-list input{min-height:44px;font:inherit;border:1px solid #cbd5ce;border-radius:8px;padding:8px 12px}.category-create-form>form{grid-template-columns:1fr auto;margin-top:8px;display:grid}.category-create-form label{grid-column:1/-1}.category-create-form input{width:100%}.manage-category-list{gap:8px;padding:0;list-style:none;display:grid}.manage-category-list li{min-height:64px}.manage-category-list li>div:first-child{flex-direction:column;align-items:flex-start}.manage-category-list small{color:#637268}.expense-conflict,.confirm-dialog{background:#fff;border:1px solid #5b616c24;border-radius:14px;padding:22px;box-shadow:0 12px 32px -8px #00281b1f}.expense-conflict{margin:20px 0}.conflict-comparison{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0;display:grid}.conflict-comparison article{background:#f4f7f5;border-radius:10px;padding:14px}.conflict-comparison h3{margin-top:0;font-size:14px}.dialog-backdrop{z-index:20;background:#0e191370;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.confirm-dialog{width:min(100%,480px)}.danger-link{color:#a3342a;font:inherit;cursor:pointer;background:0 0;border:0;margin-top:24px;padding:12px 0;text-decoration:underline}.danger-button{color:#fff;min-height:44px;font:inherit;cursor:pointer;background:#a3342a;border:0;border-radius:8px;padding:0 16px;font-weight:650}.app-feedback{color:#25352c;background:#fff;border:1px solid #cbd5ce;border-radius:10px;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:13px 16px;display:flex}.app-feedback-success{border-color:#8ac5a6}.app-feedback-error,.app-feedback-conflict,.app-feedback-access{border-color:#c98078}.app-feedback-empty{border-style:dashed}.app-feedback button{min-height:40px}@media (width<=640px){.category-create-form>form,.manage-category-list li,.manage-category-list li>div,.manage-category-list form{flex-direction:column;align-items:stretch}.conflict-comparison{grid-template-columns:1fr}.expense-list .expense-edit-link{font-size:12px}}.budget-eyebrow{color:#27805b;letter-spacing:.12em;margin:0 0 6px;font-size:11px;font-weight:700}.budget-page h1,.expense-page h1{color:#19261f;letter-spacing:-.035em;font-size:clamp(25px,4vw,34px)}.budget-subtitle{color:#718078;margin:7px 0 0}.budget-primary,.budget-error button{color:#fff;min-height:46px;font:inherit;cursor:pointer;background:#08734f;border:0;border-radius:13px;padding:0 20px;font-weight:700}.budget-primary:hover,.budget-error button:hover{background:#065f42}.budget-primary:disabled{cursor:wait;opacity:.65}.week-toolbar{gap:9px;width:fit-content;min-height:50px;margin:24px 0 16px auto}.week-toolbar>button:not(.current-week-button){color:#26392f;cursor:pointer;background:#fff;border:1px solid #e4e9e5;border-radius:50%;place-items:center;width:40px;height:40px;font-size:24px;display:grid}.week-toolbar button:disabled{opacity:.35;cursor:default}.week-label{align-items:center;gap:10px;display:flex}.week-label>span,.section-heading>span{color:#18714e;background:#e7f5ec;border-radius:20px;padding:5px 10px;font-size:12px;font-weight:700}.current-week-button{color:#18714e;font:inherit;cursor:pointer;background:#fff;border:1px solid #dbe9df;border-radius:20px;padding:9px 12px}.spending-summary,.category-summary,.expense-summary{background:#fff;border:1px solid #edf0ed;border-radius:19px;box-shadow:0 8px 28px #1c3a2809}.spending-summary{justify-content:space-between;align-items:center;padding:24px 28px;display:flex}.spending-summary>div{gap:5px;display:grid}.spending-summary span,.spending-summary small,.spending-summary>p{color:#738078;font-size:13px}.spending-summary strong{color:#08734f;letter-spacing:-.035em;font-size:clamp(30px,5vw,40px);line-height:1.1}.spending-summary>p{margin:0}.budget-columns{grid-template-columns:minmax(270px,.8fr) minmax(0,1.5fr);align-items:start;gap:18px;margin-top:18px;display:grid}.category-summary,.expense-summary{min-height:250px;padding:21px}.section-heading{margin-bottom:14px}.section-heading h2{margin:0;font-size:18px}.section-heading p{color:#7d8881;margin:4px 0 0;font-size:12px}.category-list,.expense-list{margin:0;padding:0;list-style:none}.category-list li{border-top:1px solid #f0f2f0;gap:10px;min-height:51px}.category-list li strong{white-space:nowrap;margin-left:auto;font-size:14px}.category-dot{background:#21a473;border-radius:50%;width:9px;height:9px}.category-name{font-size:14px}.overall-limit-panel{border-top:1px solid #e9eee9;width:min(100%,490px);padding-top:17px}.overall-limit-panel h2{color:#283a30;margin:0 0 8px;font-size:16px}.category-limit-list>li.category-limit-row{border-top:1px solid #f0f2f0;gap:8px;padding:13px 0;display:grid}.category-spend-row{align-items:center;gap:10px;min-height:28px;display:flex}.limit-editor-card{justify-items:start;gap:8px;width:100%;display:grid}.limit-status{color:#56645b;gap:7px;width:100%;font-size:12px;display:grid}.limit-status-copy{flex-wrap:wrap;align-items:baseline;gap:5px 10px;display:flex}.limit-status-label{color:#246448;font-weight:700}.limit-status--exceeded .limit-status-label,.limit-status--exceeded .limit-status-copy strong{color:#963e38}.limit-status--at_limit .limit-status-label{color:#73551d}.limit-status-copy strong{color:#315f48;letter-spacing:normal;font-size:12px}.limit-status progress{accent-color:#14805b;background:#e8eee9;border:0;border-radius:999px;width:100%;height:8px;overflow:hidden}.limit-status--exceeded progress{accent-color:#b6544a}.limit-edit-button{color:#176344;min-height:38px;font:inherit;cursor:pointer;background:#f5fbf7;border:1px solid #d8e9de;border-radius:999px;padding:0 12px;font-size:12px;font-weight:700}.limit-edit-button:hover{background:#e8f6ee}.limit-history-note{color:#707d74;margin:0;font-size:11px}.limit-edit-form{background:#f8fbf9;border:1px solid #e4ebe5;border-radius:15px;gap:11px;width:min(100%,420px);padding:16px;display:grid}.limit-edit-form>p:first-child{color:#65746a;margin:0;font-size:12px;line-height:1.45}.limit-edit-form .form-field{color:#394a40;gap:6px;font-size:12px;font-weight:700;display:grid}.limit-edit-form input{min-height:48px}.limit-save-error{color:#765319;background:#fff4e1;border-radius:10px;margin:0;padding:10px 12px;font-size:12px;line-height:1.45}.limit-edit-actions{flex-wrap:wrap;gap:8px;display:flex}.limit-edit-actions .budget-primary,.budget-secondary{min-height:42px;font:inherit;cursor:pointer;border-radius:12px;padding:0 14px;font-size:12px;font-weight:700}.budget-secondary{color:#4d5d53;background:#fff;border:1px solid #dfe7e1}.limit-edit-actions button:disabled{opacity:.65;cursor:wait}.category-filter{color:#607168;align-items:center;gap:8px;font-size:12px;display:flex}.category-filter select,.form-field select,.form-field input{color:#202d25;width:100%;min-height:46px;font:inherit;background:#fff;border:1px solid #e1e8e3;border-radius:12px;padding:0 13px}.category-filter select{width:auto;min-width:122px}.expense-list li{border-top:1px solid #f0f2f0;gap:12px;min-height:65px}.expense-date{color:#18714e;background:#eaf6ef;border-radius:12px;place-items:center;width:39px;height:39px;font-size:11px;font-weight:700;display:grid}.expense-description{gap:4px;min-width:0;display:grid}.expense-description strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.expense-description span{color:#78847c;font-size:12px}.expense-amount{white-space:nowrap;margin-left:auto;font-size:14px}.budget-empty{text-align:center;padding:24px 14px}.budget-empty h3{margin:0;font-size:16px}.budget-empty p{color:#738078;margin:7px auto 15px;font-size:13px;line-height:1.5}.budget-feedback,.server-date-note{color:#718078;font-size:13px}.server-date-note{text-align:right;margin-top:16px}.budget-error,.save-error{color:#8d3632;background:#fff7f6;border:1px solid #f1d7d5;border-radius:14px;padding:14px 16px}.budget-error p,.save-error p{margin:0 0 9px;font-size:13px;line-height:1.5}.budget-error button{min-height:39px;padding:0 14px}.expense-page{max-width:600px;padding-top:26px}.expense-page-heading{gap:16px;margin-bottom:20px}.expense-page-heading h1{margin:0;font-size:25px}.text-back{color:#31694f;min-height:42px;font:inherit;cursor:pointer;background:#fff;border:1px solid #e4e9e5;border-radius:11px;padding:0 12px}.expense-form,.no-categories{background:#fff;border:1px solid #edf0ed;border-radius:20px;gap:16px;padding:23px;display:grid;box-shadow:0 10px 30px #1c3a280b}.form-field{gap:8px;display:grid}.form-field>label,.quick-category-form>label{color:#394a40;font-size:13px;font-weight:700}.form-field>label span{color:#758078;font-weight:400}.amount-input-wrap{position:relative}.amount-input-wrap input{min-height:78px;padding:0 58px 0 17px;font-size:29px;font-weight:700}.amount-input-wrap>span{color:#758078;font-size:12px;position:absolute;top:50%;right:15px;transform:translateY(-50%)}.field-invalid input,.form-field input[aria-invalid=true],.form-field select[aria-invalid=true]{border-color:#cb5c58}.field-error{color:#a73d38;margin:-2px 0 0;font-size:12px}.expense-form-actions{gap:10px;padding-top:4px;display:grid}.expense-form-actions .budget-primary{width:100%}.no-categories h2{margin:0;font-size:19px}.no-categories>p{color:#738078;margin:-8px 0 4px;font-size:13px}.quick-category-form{gap:10px;display:grid}.quick-category-form input{min-height:46px;font:inherit;border:1px solid #e1e8e3;border-radius:12px;padding:0 12px}.quick-category-form>p{color:#a73d38;margin:0;font-size:12px}@media (width<=720px){.budget-page,.expense-page{width:min(100% - 30px,560px);padding-top:22px}.budget-header{flex-direction:column;align-items:flex-start;gap:14px}.budget-header-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.budget-header-actions .budget-primary{min-height:44px}.budget-header>.budget-primary{min-width:44px;padding:0 12px;font-size:13px}.week-toolbar{justify-content:center;width:100%;margin-top:18px}.week-label{font-size:13px}.week-label>span{display:none}.spending-summary{padding:19px}.spending-summary>p{text-align:right;max-width:100px}.budget-columns{grid-template-columns:minmax(0,1fr);gap:13px;margin-top:13px}.category-summary,.expense-summary{padding:17px}.category-filter{justify-items:end;gap:3px;display:grid}.expense-list li{gap:9px}}.sharing-page,.sharing-invitation{color:#17231d;width:min(100% - 32px,920px);margin:0 auto;padding:32px 0 60px}.sharing-header{justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;display:flex}.sharing-header h1,.sharing-invitation h1{color:#19261f;letter-spacing:-.035em;margin:0;font-size:clamp(27px,4vw,36px)}.sharing-header p:not(.budget-eyebrow){color:#718078}.sharing-card{background:#fff;border:1px solid #e4e9e5;border-radius:20px;margin:18px 0;padding:26px;box-shadow:0 8px 30px #18372a08}.sharing-card h2{color:#19261f;margin:4px 0 8px;font-size:21px}.sharing-card>p:not(.budget-eyebrow),.sharing-dialog>p:not(.budget-eyebrow){color:#637268;line-height:1.55}.sharing-members{margin:20px 0 0;padding:0;list-style:none}.sharing-members li{border-top:1px solid #edf0ed;align-items:center;gap:14px;padding:14px 0;display:flex}.sharing-members li>span:nth-child(2){overflow-wrap:anywhere;flex:1;gap:4px;min-width:0;display:grid}.sharing-members small,.sharing-note{color:#718078;font-size:14px}.sharing-avatar,.sharing-icon{color:#08734f;background:#e7f3ec;border-radius:50%;flex:none;place-items:center;width:44px;height:44px;font-weight:700;display:grid}.sharing-label{color:#34453a;margin:18px 0 7px;font-size:14px;font-weight:650;display:block}.sharing-card input{width:100%;min-height:48px;font:inherit;border:1px solid #ccd7cf;border-radius:11px;padding:0 13px}.sharing-primary,.sharing-secondary,.sharing-danger{min-height:44px;font:inherit;cursor:pointer;border:0;border-radius:11px;justify-content:center;align-items:center;padding:0 17px;font-weight:650;text-decoration:none;display:inline-flex}.sharing-primary{color:#fff;background:#08734f;margin-top:12px}.sharing-secondary{color:#26392f;background:#f0f4f1}.sharing-danger{color:#fff;background:#a5342d}.sharing-primary:disabled,.sharing-secondary:disabled,.sharing-danger:disabled{opacity:.55;cursor:wait}.sharing-text-danger{color:#a5342d;font:inherit;cursor:pointer;background:0 0;border:0;font-weight:650}.sharing-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sharing-feedback{color:#08734f;margin:12px 0 0;font-size:14px}.sharing-error{color:#8c2c25;background:#fff0ed;border-radius:12px;padding:15px}.sharing-backdrop{z-index:5;background:#14251dcc;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.sharing-dialog{background:#fff;border-radius:20px;width:min(100%,480px);padding:28px;box-shadow:0 20px 70px #0003}.sharing-invitation{place-items:center;min-height:100vh;display:grid}.sharing-invitation .sharing-card{width:min(100%,500px);padding:clamp(24px,6vw,44px)}.sharing-icon{width:56px;height:56px;margin-bottom:22px;font-size:24px}.sharing-back-link{color:#08734f;width:fit-content;margin:18px auto 0;display:block}.sharing-invitation .sharing-primary{width:100%;min-height:50px}@media (width<=640px){.sharing-header{flex-direction:column;align-items:flex-start}.sharing-header .sharing-actions{width:100%}.sharing-header .sharing-actions>*{flex:1}.sharing-card{padding:21px}.sharing-members li{flex-wrap:wrap;align-items:flex-start}.sharing-text-danger{margin-left:58px}}:root{color:#202a25;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;background:#f6f5fb;font-family:DM Sans,sans-serif;font-weight:400}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,a{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline-offset:3px;outline:3px solid #006948}.account-page{background:radial-gradient(at 50% 44%,#fff 0%,#fbfaff 43%,#f3f1fa 100%);place-items:center;min-height:100vh;padding:32px 20px;display:grid}.account-card{text-align:center;background:#fffffff2;border:1px solid #eeedf2;border-radius:26px;width:min(100%,430px);padding:38px 36px 30px;box-shadow:0 18px 55px #352c5317}.brand-mark{color:#fff;background:#078557;border-radius:15px;place-items:center;width:48px;height:48px;margin:2px auto 15px;font-size:22px;display:grid;box-shadow:0 6px 15px #0785572e}.eyebrow{color:#658174;letter-spacing:.16em;margin:0 0 8px;font-size:10px;font-weight:700}h1{letter-spacing:-.035em;margin:0;font-family:Manrope,sans-serif;font-size:clamp(25px,6vw,30px);line-height:1.2}.account-lead{margin:19px 0 7px;font-family:Manrope,sans-serif;font-size:19px;font-weight:700}.account-copy{color:#727a75;margin:11px 0 23px;font-size:14px;line-height:1.6}.google-button{color:#2e3732;cursor:pointer;background:#fff;border:1px solid #dfe3e0;border-radius:13px;justify-content:center;align-items:center;gap:12px;width:100%;min-height:52px;padding:0 18px;font-weight:600;transition:border-color .15s,background .15s;display:flex}.google-button:hover:not(:disabled){background:#fbfdfc;border-color:#a9c5b6}.google-button:disabled,.primary-button:disabled{cursor:wait;opacity:.7}.google-g{color:#4285f4;font-family:Arial,sans-serif;font-size:19px;font-weight:700}.account-note{color:#8a928d;margin:18px 0 0;font-size:11px;line-height:1.55}.text-link,.account-footer a{color:#29795d;font-size:12px;text-decoration:none}.text-link{margin-top:15px;display:inline-block}.text-link:hover,.account-footer a:hover{text-decoration:underline}.account-footer{color:#98a09a;border-top:1px solid #f0f1ef;justify-content:center;gap:9px;margin-top:25px;padding-top:18px;font-size:11px;display:flex}.account-footer a{font-size:inherit}.form-message{color:#a53636;margin:13px 0 0;font-size:13px;line-height:1.5}.account-divider{color:#727a75;margin:20px 0;font-size:13px}.account-form{text-align:left;gap:10px;display:grid}.account-form label{font-size:13px;font-weight:700}.account-form input{color:#202a25;width:100%;min-height:48px;font:inherit;background:#fff;border:1px solid #dfe3e0;border-radius:13px;padding:12px 14px}.account-form .primary-button{width:100%;margin-top:8px}.account-method-links{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:17px;display:flex}.account-method-links a{color:#006948;font-size:13px}.callback-card{padding-top:48px}.callback-card h1{font-size:25px}.callback-card>p:not(.account-note){color:#727a75;font-size:14px;line-height:1.6}.primary-link,.primary-button{color:#fff;cursor:pointer;background:#078557;border:0;border-radius:13px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:0 20px;font-weight:700;text-decoration:none;display:inline-flex}.primary-link{width:100%;margin:7px 0}.setup-card{width:min(100%,455px);padding:24px 30px 28px}.account-topline{color:#77827b;justify-content:space-between;align-items:center;margin-bottom:18px;font-size:10px;display:flex}.quiet-button{color:#68756d;cursor:pointer;background:0 0;border:0;padding:5px 0;font-size:11px}.setup-card .brand-mark{margin-bottom:13px}.setup-card h1{font-size:25px}.setup-card .account-copy{margin:11px 0 20px}.benefits{text-align:left;background:#fbfcfb;border:1px solid #edf0ee;border-radius:16px;padding:5px 13px}.benefits>div{align-items:flex-start;gap:12px;padding:11px 2px;display:flex}.benefits>div+div{border-top:1px solid #edf0ee}.benefits>div>span{color:#168258;background:#eaf5ef;border-radius:9px;flex:0 0 28px;place-items:center;height:28px;display:grid}.benefits p{color:#78817b;margin:0;font-size:11px;line-height:1.45}.benefits strong{color:#35433b;font-size:12px}.primary-button{width:100%;margin:17px 0 0}.success-message{color:#17764f;background:#eef8f2;border-radius:12px;padding:14px;font-size:13px}.setup-card>.account-note{margin-top:14px}@media (width<=480px){.account-page{padding:18px 16px}.account-card{border-radius:23px;padding:31px 23px 24px}.setup-card{padding:21px 19px 24px}.account-footer{font-size:10px}}@media (width>=900px){.account-page{padding:48px}.setup-card{padding:26px 34px 31px}}
