:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#26352d;background:#f5f3ed;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(300px,.9fr) 1.1fr;background:#f7f5ef}.auth-brand{background:#183d32;color:#f5f0e6;padding:clamp(32px,7vw,100px);display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.auth-brand:after{content:"";position:absolute;width:420px;height:420px;border:1px solid #ffffff18;border-radius:50%;right:-190px;bottom:-180px;box-shadow:0 0 0 45px #ffffff08,0 0 0 90px #ffffff05}.brand-mark{width:42px;height:42px;border-radius:14px;background:#d5b88b;color:#183d32;display:inline-flex;align-items:center;justify-content:center}.wordmark{font-size:28px;letter-spacing:.23em;font-weight:600;margin-top:22px}.brand-kicker{font-size:10px;letter-spacing:.22em;color:#cbd8ce;margin-top:5px}.auth-brand h1{font-size:clamp(42px,5vw,68px);line-height:1.08;font-weight:500;margin:72px 0 18px;letter-spacing:-.04em}.auth-brand h1 em{font-family:Georgia,Times New Roman,serif;color:#d5b88b;font-weight:500}.auth-brand p{color:#d8e1d9;max-width:340px;line-height:1.7}.auth-foot{position:absolute;bottom:38px;display:flex;gap:9px;align-items:center;color:#d5e0d7;font-size:12px}.auth-panel{display:grid;place-items:center;padding:36px}.auth-card{width:min(100%,420px)}.mobile-brand{display:none;align-items:center;gap:10px;letter-spacing:.2em;margin-bottom:42px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.16em;color:#879187}.auth-card h2{font-family:Georgia,Times New Roman,serif;font-size:34px;font-weight:500;margin:12px 0 7px;color:#26382f}.muted{color:#858b83;font-size:13px;line-height:1.6}.form-stack{display:flex;flex-direction:column;gap:17px;margin-top:28px}.form-stack label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:600;color:#465349}.form-stack input,.form-stack select{height:48px;border:1px solid #e2e2d9;border-radius:11px;padding:0 14px;background:#fff;color:#26352d;outline:none}.form-stack input:focus,.form-stack select:focus{border-color:#78927c;box-shadow:0 0 0 3px #78927c20}.primary-button{height:49px;padding:0 18px;border:0;border-radius:11px;background:#183d32;color:#fff;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:.2s}.primary-button:hover{background:#245342;transform:translateY(-1px)}.primary-button:disabled{opacity:.6;cursor:not-allowed}.text-button,.switch-auth button{border:0;background:none;color:#52765f;font-size:12px;font-weight:600}.align-right{align-self:flex-end;margin-top:-8px}.switch-auth{text-align:center;color:#81877f;font-size:12px;margin-top:24px}.security-note{display:flex;justify-content:center;align-items:center;gap:7px;color:#969b93;font-size:11px;margin-top:35px}.notice,.setup-warning{margin-top:15px;background:#edf2eb;border:1px solid #dce7d9;padding:12px;border-radius:10px;color:#46624d;font-size:12px;line-height:1.5}.setup-warning{background:#fbf3e5;border-color:#f0dfbd;color:#795f31}.setup-warning code{font-size:11px}.app-shell{min-height:100vh;display:flex;background:#f7f6f1}.sidebar{width:245px;background:#fff;border-right:1px solid #eeeee7;padding:28px 18px;display:flex;flex-direction:column;flex-shrink:0}.side-logo{display:flex;align-items:center;gap:11px;font-weight:700;letter-spacing:.2em;font-size:16px;margin:0 8px 54px}.side-logo .brand-mark{width:35px;height:35px;border-radius:11px}.side-label{font-size:9px;letter-spacing:.15em;color:#a0a69d;font-weight:700;margin:0 10px 15px}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 11px;border-radius:10px;color:#7c857b;font-size:12px;margin-bottom:5px}.nav-item.active{background:#edf2eb;color:#244b39;font-weight:700}.soon{margin-left:auto;font-size:9px;color:#a4a99f}.sidebar-bottom{margin-top:auto;border-top:1px solid #eee;padding:20px 3px 0;display:flex;align-items:center;gap:10px}.user-avatar{width:35px;height:35px;border-radius:50%;background:#e7e9dc;color:#345441;display:grid;place-items:center;font-weight:700}.user-avatar.small{width:32px;height:32px}.user-meta{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.user-meta b{font-size:11px;overflow:hidden;text-overflow:ellipsis}.user-meta small{font-size:10px;color:#969b93}.main-area{max-width:1450px;width:100%;margin:0 auto;padding:35px clamp(22px,4vw,60px) 25px}.topbar,.welcome-row,.card-top,.panel-heading{display:flex;align-items:center;justify-content:space-between}.topbar h1{font-family:Georgia,Times New Roman,serif;font-weight:500;font-size:29px;margin:7px 0 0}.top-actions{display:flex;align-items:center;gap:16px}.date-label{font-size:11px;color:#7e887d;background:#fff;border:1px solid #ecece4;padding:9px 13px;border-radius:9px}.icon-button,.light-icon{border:0;background:transparent;color:#69766c;display:grid;place-items:center;padding:8px;border-radius:9px}.icon-button:hover{background:#eef1eb}.welcome-row{margin:35px 0 20px}.welcome-row h2{font-size:18px;margin:0 0 4px}.welcome-row h2 span{color:#c6a879}.welcome-row p{margin:0}.compact{height:42px;font-size:11px}.summary-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:15px}.balance-card,.metric-card,.panel{border:1px solid #ecece5;border-radius:16px;background:#fff}.balance-card{position:relative;overflow:hidden;background:#183d32;color:#fff;padding:22px 24px;min-height:155px}.card-top{font-size:11px;color:#dbe5dc;position:relative;z-index:1}.light-icon{color:#e4e9e2}.balance-value{font-size:31px;font-weight:600;letter-spacing:-.04em;margin-top:19px;position:relative;z-index:1}.balance-caption{font-size:10px;color:#c6d5c9;margin-top:5px;position:relative;z-index:1}.balance-decoration{position:absolute;width:180px;height:180px;border:1px solid #ffffff18;border-radius:50%;right:-55px;bottom:-120px;box-shadow:0 0 0 25px #ffffff08,0 0 0 50px #ffffff05}.metric-card{padding:20px;display:flex;flex-direction:column;align-items:flex-start;gap:9px}.metric-icon{width:31px;height:31px;border-radius:10px;display:grid;place-items:center}.metric-icon.income{background:#edf3eb;color:#557c5b}.metric-icon.expense{background:#f5eeea;color:#a47762}.metric-card span{font-size:11px;color:#818980}.metric-card strong{font-size:20px;letter-spacing:-.03em}.metric-card small{font-size:10px;color:#a0a69e}.content-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:15px;margin-top:17px}.panel{padding:22px}.panel-heading h3,.insight-panel h3{font-family:Georgia,Times New Roman,serif;font-weight:500;font-size:19px;margin:0 0 5px}.panel-heading p{font-size:11px;color:#92988f;margin:0}.soft-tag{background:#f2f3ed;color:#778273;border-radius:20px;padding:7px 10px;font-size:10px}.empty-state{min-height:230px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:20px}.empty-icon{width:49px;height:49px;border-radius:15px;background:#edf1e9;color:#66816a;display:grid;place-items:center;margin-bottom:13px}.empty-state b{font-size:13px}.empty-state p{max-width:260px;color:#92988f;font-size:11px;line-height:1.6}.secondary-button{border:1px solid #dce4d8;background:#f8faf6;color:#45664b;border-radius:9px;padding:10px 13px;display:flex;align-items:center;gap:7px;font-size:11px;font-weight:600}.transaction-list{margin-top:16px}.transaction-row{display:flex;align-items:center;gap:11px;padding:13px 0;border-top:1px solid #f0f0ea}.transaction-icon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center}.transaction-icon.income{background:#edf3eb;color:#608064}.transaction-icon.expense{background:#f5efea;color:#a67d66}.transaction-info{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.transaction-info b{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.transaction-info small{font-size:9px;color:#999f96}.transaction-row strong{font-size:11px;white-space:nowrap}.positive{color:#5d8263}.negative{color:#9c725e}.delete-button{border:0;background:transparent;color:#a9ada6;padding:5px}.insight-panel{background:#f0f1e9;border-color:#e9eadf;display:flex;flex-direction:column;align-items:flex-start}.insight-symbol{width:38px;height:38px;background:#fff;border-radius:12px;color:#9b895f;display:grid;place-items:center;margin-bottom:19px}.insight-panel h3{font-size:23px;line-height:1.2;max-width:240px;margin:12px 0}.insight-panel p{font-size:11px;color:#778075;line-height:1.8}.insight-bottom{display:flex;align-items:center;gap:7px;color:#66806a;font-size:10px;margin-top:auto;padding-top:22px}.privacy-strip{display:flex;align-items:center;gap:8px;color:#92998f;font-size:10px;margin-top:22px}.privacy-spacer{flex:1}.toast{position:fixed;bottom:22px;right:22px;background:#183d32;color:#fff;border-radius:10px;padding:13px 18px;font-size:12px;box-shadow:0 8px 30px #0002}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#17231dcc;display:grid;place-items:center;padding:20px;z-index:10}.modal{width:min(100%,440px);background:#fbfaf6;border-radius:18px;padding:25px;box-shadow:0 25px 80px #0003}.modal-heading{display:flex;justify-content:space-between;align-items:center}.modal-heading h2{font-family:Georgia,Times New Roman,serif;font-size:25px;font-weight:500;margin:7px 0}.segmented{display:grid;grid-template-columns:1fr 1fr;padding:4px;background:#eeefe8;border-radius:10px}.segmented button{border:0;background:transparent;padding:10px;border-radius:8px;color:#7f887e;font-size:12px}.segmented button.selected{background:#fff;color:#315640;box-shadow:0 1px 4px #0001;font-weight:700}@media(max-width:900px){.sidebar{width:205px}.summary-grid{grid-template-columns:1fr 1fr}.balance-card{grid-column:span 2}.content-grid{grid-template-columns:1fr}.insight-panel{min-height:220px}}@media(max-width:650px){.auth-shell{grid-template-columns:1fr}.auth-brand{display:none}.auth-panel{padding:28px 22px}.mobile-brand{display:flex}.auth-card{max-width:430px}.app-shell{display:block;padding-bottom:65px}.sidebar{position:fixed;z-index:5;bottom:0;left:0;right:0;width:100%;height:62px;padding:7px 12px;background:#fff;border-right:0;border-top:1px solid #e9eae2;display:flex;flex-direction:row;justify-content:space-around}.side-logo,.side-label,.sidebar-bottom{display:none}.nav-item{font-size:0;margin:0;padding:11px;border-radius:12px}.nav-item svg{width:21px;height:21px}.nav-item .soon{display:none}.main-area{padding:24px 16px}.topbar h1{font-size:25px}.date-label{display:none}.welcome-row{align-items:flex-start;gap:10px;margin:27px 0 17px}.welcome-row h2{font-size:16px}.welcome-row .primary-button{font-size:0;width:42px;padding:0}.welcome-row .primary-button svg{width:19px;height:19px}.summary-grid{gap:9px}.balance-card{padding:18px;min-height:145px}.balance-value{font-size:27px}.metric-card{padding:14px;gap:7px}.metric-card strong{font-size:16px}.content-grid{gap:10px;margin-top:10px}.panel{padding:17px}.panel-heading h3{font-size:17px}.privacy-strip{flex-wrap:wrap;line-height:1.5}.privacy-spacer{display:none}.toast{left:15px;right:15px;bottom:75px;text-align:center}}.month-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:0 0 16px;flex-wrap:wrap}.month-switch,.month-tools{display:flex;align-items:center;gap:9px}.month-switch{background:#fff;border:1px solid #ecece5;border-radius:12px;padding:4px}.month-switch strong{font-size:12px;min-width:125px;text-align:center;text-transform:capitalize}.month-switch button{border:0;background:transparent;padding:7px;color:#41624c;display:grid;place-items:center;border-radius:8px}.month-switch button:hover{background:#edf2eb}.search-field{height:37px;border:1px solid #e3e7de;border-radius:9px;background:#fff;display:flex;align-items:center;gap:7px;padding:0 10px;color:#8a948a}.search-field input{border:0;outline:0;width:165px;min-width:0;font-size:11px;background:transparent}.month-tools .secondary-button{height:37px}.month-tools .secondary-button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:650px){.month-toolbar{align-items:stretch}.month-switch{width:100%;justify-content:space-between}.month-tools{width:100%}.search-field{flex:1}.search-field input{width:100%}.month-tools .secondary-button{white-space:nowrap}}.category-badge{display:inline-flex;align-items:center;gap:8px;max-width:100%;vertical-align:middle}.category-badge>span:last-child{overflow-wrap:anywhere}.category-symbol{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:none;width:29px;height:29px;border:2px solid;border-radius:9px;background:#fff;color:#243f34}.category-color-mark{position:absolute;right:-3px;bottom:-3px;width:11px;height:11px;border:1px solid #e0e3dd;border-radius:50%}.category-selection{display:block;margin-top:6px;font-size:12px;font-weight:400}.category-fieldset{min-width:0;margin:0;padding:0;border:0}.category-fieldset legend{margin-bottom:10px;font-size:13px;font-weight:600}.category-icons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.category-icons button{min-height:66px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px solid #d9ded6;border-radius:12px;background:#fff;color:#243f34;cursor:pointer}.category-icons button span{font-size:11px}.category-icons button[aria-pressed=true]{border:2px solid #174638;background:#edf4ee}.category-colors{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.category-colors>button{display:grid;place-items:center;width:44px;height:44px;padding:5px;border:2px solid transparent;border-radius:50%;background:transparent;cursor:pointer}.category-colors>button span{width:30px;height:30px;border-radius:50%;border:1px solid #b7c0b4}.category-colors>button[aria-pressed=true]{border-color:#243f34}.custom-color{display:flex;align-items:center;gap:6px;font-size:12px}.custom-color input{width:48px;height:44px;padding:4px;cursor:pointer}.category-preview{display:flex;align-items:center;gap:14px;padding:18px;border-radius:14px;background:#f3f3ed}.category-preview-icon{position:relative;display:grid;place-items:center;flex:none;width:52px;height:52px;border:3px solid;border-radius:16px;background:#fff;color:#243f34}.category-preview-icon>span{position:absolute;width:15px;height:15px;border:1px solid #b7c0b4;border-radius:50%;right:-5px;bottom:-5px}.category-preview small{display:block;color:#64756b;font-size:10px;letter-spacing:1.5px;margin-bottom:6px}.category-preview b{display:block;overflow-wrap:anywhere}.category-record{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 0;border-bottom:1px solid #e6e7df}.category-actions{display:flex;flex:none;gap:4px}.category-actions .icon-button{min-width:44px;min-height:44px}.default-categories{display:flex;flex-wrap:wrap;gap:10px;font-size:12px}.archived-categories{margin:20px 0}.archived-categories summary{cursor:pointer;font-weight:600}.stage4-category{display:block;margin-top:6px}.transaction-info .category-symbol{width:22px;height:22px;border-radius:6px}.transaction-info .category-symbol svg{width:13px;height:13px}.category-icons button:focus-visible,.category-colors>button:focus-visible{outline:3px solid #3569b2;outline-offset:3px}@media(max-width:420px){.category-icons{grid-template-columns:repeat(2,minmax(0,1fr))}.category-record{align-items:flex-start}}.category-select-field>label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600;color:#53624f}.category-create-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;margin-top:5px;padding:7px 0;border:0;background:transparent;color:#174638;font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:3px}.category-dialog{width:min(1100px,calc(100% - 24px));max-height:calc(100dvh - 32px);padding:22px;border:1px solid #d9ded6;border-radius:20px;background:#f7f6f1;color:#26352d;overflow-y:auto}.category-dialog::backdrop{background:#142c24a6}.category-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.category-dialog-header h2{margin:0;font-size:23px}.category-dialog-header .icon-button{min-width:44px;min-height:44px;flex:none}.category-dialog-footer{display:flex;justify-content:flex-end;margin-top:18px}@media(max-width:650px){.app-shell{padding-bottom:86px}.sidebar{height:80px;justify-content:flex-start;gap:5px;overflow-x:auto;overflow-y:hidden;padding:6px 8px}.nav-item{flex:0 0 auto;min-width:75px;max-width:110px;min-height:61px;display:flex;flex-direction:column;justify-content:center;gap:5px;padding:7px 9px;font-size:9px;line-height:1.2;text-align:center}.nav-item span{display:block}.category-dialog{padding:14px;width:calc(100% - 16px);max-height:calc(100dvh - 16px)}.category-dialog-header h2{font-size:20px}.category-dialog-footer .primary-button{width:100%;justify-content:center}}.stage5-stack{display:flex;flex-direction:column;gap:20px}.insights-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.insights-intro h2{display:flex;align-items:center;gap:9px;margin:5px 0;font-size:23px}.insights-tabs{display:flex;gap:7px;flex-wrap:wrap;padding:6px;border:1px solid #e0e5dc;border-radius:14px;background:#fff;width:fit-content}.insights-tabs button{min-height:43px;padding:10px 18px;border:0;border-radius:10px;background:transparent;color:#53624f;font-size:13px}.insights-tabs button[aria-pressed=true]{background:#174638;color:#fff;font-weight:600}.insight-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.insight-metrics .panel{display:flex;flex-direction:column;gap:12px}.insight-metrics span{font-size:12px;color:#647167}.insight-metrics strong{font-size:clamp(21px,2.8vw,30px);overflow-wrap:anywhere;font-weight:600}.monthly-comparison h4{margin-bottom:12px;font-size:13px}.comparison-row{display:grid;grid-template-columns:60px minmax(25px,1fr) auto;align-items:center;gap:8px;margin-bottom:12px;font-size:12px}.chart-track{height:9px;border-radius:8px;background:#eeeee7;overflow:hidden}.chart-track>span{display:block;height:100%;border-radius:8px;min-width:0}.income-bar{background:#287e70}.expense-bar{background:#c98d52}.comparison-caption{display:flex;align-items:flex-start;gap:8px;font-size:13px;line-height:1.6;margin-top:22px;color:#53624f}.comparison-caption svg{flex:none;margin-top:3px}.spending-category{padding:12px 0;border-bottom:1px solid #eeeeE7}.spending-category>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;margin-bottom:9px}.spending-category small{display:block;font-size:11px;color:#647167;margin-top:7px}.insights-alerts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.insight-alert{display:flex;align-items:flex-start;gap:10px;padding:15px;border:1px solid #dce5df;background:#f3f6f1;border-radius:12px;color:#345441}.insight-alert svg{flex:none;margin-top:1px}.insight-alert b{font-size:13px}.insight-alert p{font-size:12px;line-height:1.7;margin:7px 0 0}.insight-alert.warning{background:#fff3e8;border-color:#ead1ba;color:#88512e}.insight-alert.success{background:#eaf4ec;border-color:#bdd6c2}.forecast-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:15px}.forecast-grid>div{padding:14px;border:1px solid #e4e8df;border-radius:12px;display:flex;flex-direction:column;gap:12px}.forecast-grid span{font-size:12px;line-height:1.5;color:#647167}.forecast-grid b{font-size:20px;overflow-wrap:anywhere}.chart-legend{display:flex;gap:18px;font-size:12px;margin:18px 0}.chart-legend>span{display:flex;align-items:center;gap:7px}.chart-legend i{display:block;width:11px;height:11px;border-radius:3px}.annual-chart-scroll,.report-table-scroll{overflow-x:auto;max-width:100%}.annual-chart{display:grid;grid-template-columns:repeat(12,minmax(35px,1fr));gap:10px;min-width:600px;padding:10px 2px 20px}.annual-bars{height:180px;display:flex;align-items:flex-end;justify-content:center;gap:4px;border-bottom:1px solid #d8dfd4}.annual-bars span{display:block;width:16px;max-width:38%;border-radius:4px 4px 0 0}.annual-chart-month small{display:block;text-align:center;color:#647167;font-size:11px;margin-top:9px}.report-table{width:100%;border-collapse:collapse;font-size:12px;margin-top:15px;min-width:430px}.report-table caption{text-align:left;font-weight:600;font-size:14px;padding:12px 0;color:#345441}.report-table th,.report-table td{text-align:right;padding:12px 8px;border-bottom:1px solid #e6e9e0;white-space:nowrap}.report-table th:first-child{text-align:left}.report-table thead{background:#f2f5ee}.report-table tfoot{font-weight:700;background:#edf3eb}.debt-card h3{margin:0;overflow-wrap:anywhere}.debt-remaining{font-size:27px;font-weight:600;margin:22px 0 8px}.debt-remaining small{font-size:12px;font-weight:400;color:#647167}.debt-history{margin-top:18px;font-size:12px}.debt-history summary{cursor:pointer;color:#345441;font-weight:600}.debt-payment-row{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #e5e8df}.debt-payment-row small{display:block;font-size:10px;color:#647167;margin-top:5px}.form-stack .expense-checkbox{display:flex;flex-direction:row;align-items:flex-start;gap:10px;font-size:12px;line-height:1.6}.expense-checkbox input{flex:none;width:18px!important;height:18px;accent-color:#174638;margin:1px 0}.insight-scope{padding:0 4px;margin:0}@media(max-width:800px){.insights-alerts,.forecast-grid{grid-template-columns:1fr}.insight-metrics{gap:8px}.insight-metrics .panel{padding:14px}}@media(max-width:520px){.insight-metrics{grid-template-columns:1fr}.insight-metrics .panel{flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.insight-metrics strong{font-size:22px;text-align:right}.insight-metrics span{max-width:48%;line-height:1.5}.insights-intro{flex-direction:column}.insights-intro h2{font-size:20px}.insights-tabs{width:100%;gap:3px}.insights-tabs button{flex:1;padding:9px 6px;font-size:12px}.comparison-row{grid-template-columns:54px minmax(15px,1fr) auto;font-size:11px}.debt-remaining{font-size:23px}}.wa-status{display:inline-flex;padding:6px 10px;border-radius:20px;font-size:11px;font-weight:600;white-space:nowrap}.wa-status.connected{background:#e5f2e8;color:#28553c}.wa-status.pending{background:#fff0da;color:#805728}.wa-consent{display:flex;align-items:flex-start;gap:10px;margin:16px 0;font-size:12px;line-height:1.7}.wa-consent input{flex:none;min-width:18px;width:18px;height:18px;accent-color:#174638;margin-top:3px}.wa-link-code{margin-top:20px;padding:16px;border:1px solid #dce4d6;border-radius:14px;background:#f4f6ef}.wa-link-code>b{display:block;font-size:13px}.wa-link-code code{display:block;padding:14px 0;overflow-wrap:anywhere;font-size:13px;-webkit-user-select:all;user-select:all}.wa-actions{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.wa-chat-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;margin:8px 8px 8px 0}.wa-examples{display:flex;flex-direction:column;gap:12px;margin:18px 0}.wa-examples code{display:block;padding:12px;background:#f0f4ed;border-radius:10px;font-size:12px;overflow-wrap:anywhere}.wa-review blockquote{margin:15px 0;padding:12px 14px;border-left:3px solid #9ab7a2;border-radius:0 10px 10px 0;background:#f3f6ef;font-size:13px;line-height:1.7;overflow-wrap:anywhere;white-space:pre-wrap}.wa-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.wa-form-row>label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#53624f}.wa-history-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 0;border-bottom:1px solid #e3e7dc;font-size:13px}.wa-history-row>div{min-width:0}.wa-history-row b{overflow-wrap:anywhere}.wa-history-row small{display:block;color:#647167;font-size:11px;margin-top:7px}@media(max-width:480px){.wa-form-row{grid-template-columns:1fr}.wa-actions>.primary-button,.wa-actions>.secondary-button{width:100%;justify-content:center}.wa-review .panel-heading,.wa-history-row{align-items:flex-start}.wa-history-row strong{white-space:nowrap}}.conversation-panel{max-width:960px;margin:0 auto;padding:0;overflow:hidden}.conversation-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:24px;border-bottom:1px solid #e5e8df;background:#f5f7f0}.conversation-header h2{display:flex;align-items:center;gap:10px;font-size:22px;margin:0}.conversation-header p{margin-bottom:0}.conversation-thread{height:clamp(330px,58vh,650px);overflow-y:auto;padding:22px;background:#faf9f5;scrollbar-gutter:stable}.conversation-entry{margin:0 0 24px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}.conversation-user{align-self:flex-end;max-width:85%;padding:13px 17px;border-radius:17px 17px 4px;background:#174638;color:#fff;overflow-wrap:anywhere}.conversation-user>span{display:block;font-size:10px;color:#dce7dd;font-weight:600}.conversation-user p{margin:7px 0;font-size:14px;line-height:1.7;white-space:pre-wrap}.conversation-user time{display:block;text-align:right;font-size:10px;color:#d7e5da}.conversation-reply{max-width:90%;min-width:min(100%,270px);padding:17px;border:1px solid #e3e7dc;border-radius:4px 17px 17px;background:#fff;overflow-wrap:anywhere}.conversation-author{display:flex;align-items:center;gap:6px;font-size:10px;letter-spacing:.12em;font-weight:700;color:#506b55}.conversation-reply>p{font-size:13px;line-height:1.7;margin:11px 0}.conversation-entry-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.conversation-entry-actions .secondary-button{min-height:42px}.conversation-review{margin-top:17px;padding-top:17px;border-top:1px solid #e4e9df}.conversation-success{display:flex;align-items:flex-start;gap:8px;color:#28553c}.conversation-success svg{flex:none;margin-top:2px}.conversation-empty{max-width:480px;margin:35px auto;text-align:center;color:#3c5c47}.conversation-empty h3{font-size:20px}.conversation-empty p{font-size:14px;line-height:1.9}.conversation-empty>svg{color:#77987c}.conversation-load{margin:0 auto 24px;display:flex}.conversation-composer{padding:19px 22px;border-top:1px solid #e4e8de;background:#fff}.conversation-composer>label{display:block;font-size:12px;color:#53624f;font-weight:600;margin-bottom:8px}.conversation-composer>div{display:flex;gap:10px;align-items:stretch}.conversation-composer textarea{flex:1;min-width:0;resize:vertical;padding:13px;border:1px solid #d8dfd2;border-radius:12px;background:#fafbf7;color:#26352d;font-size:14px;line-height:1.6}.conversation-composer button{align-self:flex-end;min-height:48px}.conversation-composer small{display:block;color:#647167;font-size:11px;line-height:1.7;margin-top:9px}@media(max-width:650px){.conversation-header{padding:17px}.conversation-header h2{font-size:18px}.conversation-thread{padding:14px;height:55vh;min-height:300px}.conversation-user{max-width:92%}.conversation-reply{max-width:100%;width:auto;padding:14px}.conversation-composer{padding:15px}.conversation-composer button span{display:none}.conversation-composer button{width:47px;padding:10px;justify-content:center}.conversation-entry-actions{flex-direction:column}.conversation-entry-actions button{width:100%;justify-content:center}}.conversation-installments{padding:0;list-style:none;margin:15px 0;border:1px solid #e2e8dc;border-radius:11px;overflow:hidden}.conversation-installments li{display:flex;justify-content:space-between;gap:12px;padding:11px 12px;border-bottom:1px solid #e5e9df;font-size:12px;line-height:1.6}.conversation-installments li:last-child{border-bottom:0}.conversation-installments b{white-space:nowrap}.conversation-undo{margin-top:13px;min-height:42px}.bank-stage{display:grid;gap:20px}.bank-stage h2,.bank-stage h3{display:flex;align-items:center;gap:9px}.bank-optional{border-left:3px solid var(--green,#174638);padding:12px 16px;background:#f0f4ef;border-radius:10px;margin:18px 0}.bank-optional p{margin-bottom:0}.bank-account-form{display:flex;flex-wrap:wrap;align-items:end;gap:12px}.bank-account-form label{flex:1;min-width:200px}.bank-accounts{display:grid;gap:10px}.bank-account{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #ddd8ce;padding:14px 0}.bank-account span,.bank-account small{display:block}.bank-account small{color:#69746e;margin-top:5px}.bank-fields{border:0;padding:0;display:grid;gap:16px;min-width:0}.bank-mapping{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.bank-preview{display:grid;max-height:580px;overflow:auto;margin:16px 0}.bank-preview-row{padding:14px 0;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;border-top:1px solid #ddd8ce}.bank-checkbox{display:flex;align-items:center;gap:12px;flex:1;min-width:180px}.bank-checkbox input{width:20px;height:20px;flex-shrink:0}.bank-checkbox b,.bank-checkbox small{display:block;margin-top:4px;overflow-wrap:anywhere}.bank-category{width:200px;max-width:100%}.bank-invalid{color:#93442d}.bank-notice{position:sticky;bottom:16px;z-index:3;box-shadow:0 4px 18px #0002}@media(max-width:700px){.bank-notice{bottom:90px}.bank-account{flex-wrap:wrap}.bank-account span{min-width:0;overflow-wrap:anywhere}}.savings-page{display:grid;gap:20px}.savings-intro h2{display:flex;align-items:center;gap:10px}.savings-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.savings-summary strong{display:block;font-size:27px;margin:12px 0 6px;overflow-wrap:anywhere}.savings-summary small{color:#66756b}.savings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.savings-card h3{overflow-wrap:anywhere;margin:18px 0}.savings-card-top,.savings-progress-label{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.savings-kind{display:inline-flex;align-items:center;gap:8px;border-radius:24px;padding:8px 12px;color:#174638;background:#edf3e9;font-size:12px}.savings-kind.emergency{color:#845e20;background:#fff2dc}.savings-balance{display:block;font-size:32px;margin:8px 0 24px;color:#174638;overflow-wrap:anywhere}.savings-progress-label{font-size:12px;margin:10px 0}.savings-progress-label span{display:inline-flex;gap:5px;align-items:center}.savings-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.savings-card-actions button{font-size:12px}.savings-edit{border-top:1px solid #ddd8ce;margin-top:16px;padding-top:16px}.savings-fieldset{display:grid;gap:16px;border:0;padding:0;margin:0;min-width:0}.savings-fieldset:disabled{opacity:.65}.savings-month{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:20px 0}.savings-month span,.savings-month b{display:block}.savings-month span{color:#66756b;font-size:12px;margin-bottom:8px}.savings-month b{font-size:18px;overflow-wrap:anywhere}.savings-archived{background:#f7f5f0;border:1px dashed #b8c1b7}.savings-history-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0}.savings-history-row{display:flex;gap:12px;align-items:center;padding:16px 0;border-top:1px solid #ddd8ce}.savings-history-row>div{min-width:0;flex:1}.savings-history-row b,.savings-history-row small{display:block;overflow-wrap:anywhere}.savings-history-row small{color:#66756b;margin-top:6px}.savings-history-row>strong{flex-shrink:0}.savings-history-icon{display:flex;align-items:center;padding:9px;border-radius:12px;color:#174638;background:#edf3e9}.savings-notice{position:sticky;bottom:16px;z-index:3;box-shadow:0 4px 18px #0002}@media(max-width:700px){.savings-summary,.savings-grid{grid-template-columns:1fr}.savings-month{grid-template-columns:repeat(2,minmax(0,1fr))}.savings-history-filters{grid-template-columns:1fr}.savings-notice{bottom:90px}.savings-history-row{flex-wrap:wrap}.savings-history-row>strong{margin-left:48px}}.planning-assistant{margin-bottom:24px}.planning-assistant h2,.planning-assistant h3{display:flex;align-items:center;gap:9px}.planning-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin:20px 0}.planning-ai{margin-top:24px;border-top:1px solid #d8dfd6;padding-top:18px}.planning-consent{display:flex;align-items:flex-start;gap:12px;line-height:1.6}.planning-consent input{flex:0 0 20px;width:20px;margin-top:5px}.planning-analysis{padding:16px;border-radius:14px;background:#eef3e9;margin-top:18px}.planning-analysis p{white-space:pre-wrap;overflow-wrap:anywhere}.transaction-edit{position:relative}.transaction-edit form{position:absolute;right:0;top:44px;width:min(320px,80vw);padding:20px;background:#fffef9;z-index:8;border:1px solid #cad4c8;border-radius:16px;box-shadow:0 10px 40px #0003}.bill-tracker h3{display:flex;gap:8px;align-items:center}.savings-card details{margin-top:16px}@media(max-width:650px){.transaction-edit form{position:fixed;right:16px;left:16px;width:auto;top:12vh;max-height:70vh;overflow:auto}}.install-entry{position:fixed;right:20px;bottom:18px;z-index:7;display:flex;align-items:center;gap:8px;border:1px solid #c6a879;border-radius:24px;background:#183d32;color:#f7f6f0;padding:11px 16px;box-shadow:0 4px 18px #183d3226;font:inherit;font-size:12px;cursor:pointer}.install-entry:focus-visible{outline:3px solid #c6a879;outline-offset:3px}.install-dialog{max-width:480px;width:calc(100% - 40px);max-height:85dvh;overflow:auto;box-sizing:border-box;padding:26px;border:1px solid #e4e7db;border-radius:20px;background:#f7f6f0;color:#183d32;box-shadow:0 20px 70px #0003}.install-dialog::backdrop{background:#14291f88}.install-dialog p{line-height:1.6}.install-dialog h2{font-family:Georgia,serif;font-size:25px;font-weight:500}.install-dialog h3{margin-top:24px}@media(max-width:650px){.install-entry{bottom:calc(78px + env(safe-area-inset-bottom));right:14px;padding:10px 13px}.install-dialog{padding:22px}}.finance-workspace{min-width:0;line-height:1.55}.finance-workspace .finance-heading{display:flex;align-items:flex-start;gap:13px;min-width:0}.finance-heading-icon{width:46px;height:46px;flex:0 0 46px;display:grid;place-items:center;border-radius:14px;background:#edf2eb;color:#315841}.finance-workspace .finance-heading h2{display:block;font-family:Georgia,Times New Roman,serif;font-size:27px;line-height:1.2;font-weight:500;letter-spacing:-.02em;margin:3px 0 8px}.finance-heading p{font-size:14px;color:#657166;line-height:1.6;margin:0;max-width:560px}.finance-kicker{display:block;font-size:10px;font-weight:700;letter-spacing:.12em;color:#61765f;margin-bottom:5px}.finance-section{padding:26px 0;border-bottom:1px solid #e7e9e1}.finance-section-heading{display:flex;align-items:flex-start;gap:11px;margin-bottom:18px}.finance-step{width:27px;height:27px;display:grid;place-items:center;flex:none;border:1px solid #d9e1d4;border-radius:50%;color:#3c6049;background:#f2f5ef;font-size:12px;font-weight:700}.finance-workspace .finance-section-heading h3{display:block;font-size:16px;font-weight:650;margin:0 0 3px;line-height:1.5}.finance-section-heading p{margin:0;font-size:13px;color:#687467;line-height:1.5}.finance-workspace .planning-fields{grid-template-columns:repeat(2,minmax(0,1fr));margin:0;gap:20px}.finance-fields label,.bank-account-form label{display:flex;flex-direction:column;align-items:stretch;gap:8px;min-width:0;font-size:13px;font-weight:600;color:#405444}.finance-fields input:not([type=checkbox]),.finance-fields select,.bank-account-form input{display:block;width:100%;min-width:0;max-width:100%;height:48px;border:1px solid #dce2d7;border-radius:11px;background:#fff;color:#26382f;padding:10px 12px;font:inherit;font-size:16px;line-height:1.3;box-sizing:border-box}.finance-fields input:not([type=checkbox]):focus,.finance-fields select:focus,.bank-account-form input:focus{outline:2px solid #90a78b;outline-offset:2px;border-color:#617d64}.finance-fields small{font-weight:400;font-size:12px;line-height:1.6;color:#667164;overflow-wrap:anywhere}.finance-workspace button{max-width:100%;white-space:normal;height:auto;min-height:44px;padding-top:11px;padding-bottom:11px;line-height:1.45}.finance-workspace .finance-caption{font-size:12px;line-height:1.7;color:#697367;margin:12px 0 0}.finance-use-recorded{margin-top:16px;font-size:12px}.planning-recorded{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:15px;border:1px solid #e1e8dc;border-radius:12px;background:#f7f9f4;margin-bottom:20px}.planning-recorded span,.planning-recorded b{display:block}.planning-recorded span{font-size:11px;color:#687565;margin-bottom:5px}.planning-recorded b{font-size:17px;font-variant-numeric:tabular-nums}.finance-inline-note{padding:14px 16px;border-radius:12px;background:#f0f4ee;border:1px solid #e1e8dc;margin:20px 0;font-size:13px;line-height:1.6;color:#425c47}.finance-inline-note p{margin:5px 0 0;font-size:12px;line-height:1.7}.finance-section .finance-inline-note{margin-top:0}.planning-card-check{margin-top:20px;padding:16px;background:#faf8f1;border:1px solid #ebe5d6;border-radius:12px}.finance-details{margin-top:16px;border:1px solid #e1e6da;border-radius:12px;background:#fafbf8;overflow:hidden;font-size:13px}.finance-details>summary{padding:14px 16px;cursor:pointer;font-weight:600;color:#41604a;line-height:1.5;overflow-wrap:anywhere}.finance-details>div{padding:0 16px 16px;color:#64705f;line-height:1.7}.finance-details>div>p:first-child{margin-top:0}.finance-details[open]>summary{border-bottom:1px solid #e5eadf;margin-bottom:14px}.planning-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.planning-result-grid>div{border:1px solid #e3e9dc;border-radius:12px;padding:16px;min-width:0;background:#f6f8f2}.planning-result-grid span,.planning-result-grid strong,.planning-result-grid small{display:block}.planning-result-grid span{font-size:11px;color:#697567}.planning-result-grid strong{font-size:22px;margin-top:7px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.planning-result-grid small{font-size:11px;color:#71806b;margin-top:5px}.planning-period-label{font-size:12px;font-weight:600;color:#66755e}.planning-result>p{font-size:13px;line-height:1.7}.finance-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.finance-actions button{font-size:13px}.planning-assistant .planning-ai{padding:0;margin-top:24px;border:1px solid #e1e6da}.planning-ai>summary>span:first-child{display:inline-flex;gap:8px;align-items:center;margin-right:8px}.finance-optional{display:inline-block;font-size:10px;letter-spacing:.02em;font-weight:600;border-radius:20px;padding:4px 9px;background:#edf2e7;color:#607454;white-space:nowrap}.planning-ai .planning-consent{font-size:12px;color:#50614d;margin:18px 0}.planning-ai .planning-consent input{margin-top:3px;accent-color:#315841}.planning-ai button{margin-top:16px}.planning-ai .finance-caption svg{vertical-align:middle}.finance-empty{padding:18px;border:1px dashed #d9e1d2;background:#fafbf7;border-radius:12px;color:#6b7665;font-size:13px;line-height:1.7}.bank-page-heading{align-items:flex-start;gap:12px}.bank-page-heading>button{flex:none;padding:10px}.bank-create-section{margin:24px 0}.bank-create-section h3,.bank-list-heading h3{font-size:16px;margin:0 0 15px}.bank-account-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;margin:0}.bank-account-form label{min-width:0}.bank-account-form button{font-size:13px}.bank-list-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:24px}.bank-list-heading h3{margin:0}.bank-stage .bank-account{padding:16px 0;border-color:#e8ebe2}.bank-account b{font-size:14px}.bank-account small{font-size:12px;line-height:1.6}.bank-account button{font-size:12px}.bank-import-steps{list-style:none;display:flex;flex-wrap:wrap;gap:10px 18px;padding:0;margin:22px 0;color:#6a7965;font-size:12px}.bank-import-steps li{display:flex;align-items:center;gap:7px}.bank-import-steps li>span{background:#edf3e8;border-radius:50%;width:23px;height:23px;display:grid;place-items:center;color:#4d6b42;font-weight:700}.bank-stage .bank-fields{gap:20px}.bank-file-field{border:1px dashed #bdcdb4;background:#f8faf5;padding:16px;border-radius:12px}.finance-fields input[type=file]{height:auto;min-height:48px;padding:8px;overflow:hidden;font-size:12px;background:#fff}.finance-fields input[type=file]::file-selector-button{font:inherit;font-weight:600;color:#36563c;border:0;background:#edf3e7;padding:10px 12px;border-radius:8px;margin-right:10px;cursor:pointer}.bank-file-requirements{display:flex;flex-wrap:wrap;gap:8px;font-size:11px;color:#6d7866}.bank-file-requirements>span{border:1px solid #e4e8dc;padding:4px 9px;border-radius:6px}.bank-fields>.finance-details{margin-top:0}.bank-review-title{font-size:15px;margin:8px 0 0}.bank-mapping{grid-template-columns:repeat(2,minmax(0,1fr))}.bank-stage .bank-history-panel h3{font-size:17px}@media(max-width:650px){.finance-workspace .finance-heading h2{font-size:24px}.finance-heading-icon{width:38px;height:38px;flex-basis:38px;border-radius:11px}.finance-heading p{font-size:13px}.finance-workspace .planning-fields,.bank-mapping{grid-template-columns:minmax(0,1fr);gap:18px}.finance-section{padding:23px 0}.planning-recorded{padding:12px;gap:10px}.planning-recorded b{font-size:16px}.planning-result-grid{grid-template-columns:minmax(0,1fr)}.planning-result-grid>div{padding:14px 16px}.planning-result-grid strong{font-size:24px}.finance-actions{flex-direction:column}.finance-actions>button,.finance-use-recorded{width:100%}.bank-account-form{grid-template-columns:minmax(0,1fr)}.bank-account-form button{width:100%}.bank-page-heading>.finance-heading{gap:9px}.bank-page-heading .finance-heading-icon{display:none}.bank-stage .bank-import-panel .finance-heading-icon{flex-basis:36px;width:36px;height:36px}.bank-file-field{padding:13px}.finance-details>summary{padding:13px}.finance-details>div{padding:0 13px 13px}.bank-stage{gap:16px}.bank-import-steps{gap:9px 13px;font-size:11px}}.bank-fields>.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.top-signout{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 11px;border:1px solid #d9e3d8;border-radius:10px;background:#fff;color:#244b39;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.top-signout:hover,.top-signout:focus-visible{background:#edf2eb}@media(max-width:650px){.top-actions{gap:9px}.top-signout{padding:9px 10px;font-size:11px}.top-signout span{display:inline;font-size:0}.top-signout span:after{content:"Sair";font-size:11px}.top-signout{min-width:40px;min-height:40px}.topbar .user-avatar.small{display:none}}.conversation-filters{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-inline:contain;padding:12px 2px 14px;margin:4px 0 10px;scrollbar-width:thin}.conversation-filter{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;border:1px solid #d5dfd4;border-radius:999px;padding:10px 13px;background:#f8faf6;color:#284a3b;font:inherit;font-size:13px;font-weight:650;cursor:pointer;min-height:42px}.conversation-filter span{font-size:11px;font-variant-numeric:tabular-nums;opacity:.7}.conversation-filter.active{background:#164735;color:#fff;border-color:#164735}.conversation-filter:focus-visible{outline:3px solid #b6d3bb;outline-offset:2px}.conversation-filter-tip{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:9px;padding:10px 12px;margin:0 0 12px;background:#f6f8f3;border:1px solid #e1e7de;border-radius:12px;color:#3e594c;font-size:13px}.conversation-filter-tip .secondary-button{font-size:12px;padding:8px 11px}@media(max-width:650px){.conversation-filters{margin-right:-12px}.conversation-filter{font-size:12px;padding:9px 11px}.conversation-filter-tip{align-items:stretch}}
