:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--color-primary:#4f46e5;--color-primary-light:#eef2ff;--color-text:#172033;--color-muted:#7b8498;--color-border:#e9ebf2;--color-surface:#fff;--color-background:#f7f8fc;background:#f7f8fc;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;margin:0}body,button,input,select,textarea{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button{cursor:pointer}button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #a5b4fc}a{color:inherit;text-decoration:none}#root{min-height:100vh}.dash-page{flex-direction:column;gap:18px;min-width:0;display:flex}.dash-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.dash-summary-card,.dash-panel{border:1px solid var(--color-border);background:var(--color-surface);border-radius:13px;min-width:0;box-shadow:0 2px 8px #1e293b06}.dash-summary-card{padding:19px}.dash-summary-card-top{color:var(--color-muted);justify-content:space-between;align-items:center;gap:9px;font-size:11px;font-weight:650;display:flex}.dash-summary-card>strong{color:var(--color-text);letter-spacing:-.6px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:17px 0 7px;font-size:clamp(19px,2vw,26px);font-weight:750;display:block}.dash-summary-card small{color:var(--color-muted);font-size:10px;line-height:1.55}.dash-summary-indicator{background:#64748b;border-radius:50%;flex:0 0 10px;width:10px;height:10px}.dash-summary-indicator.funds{background:#16804b}.dash-summary-indicator.credit{background:#d97757}.dash-summary-indicator.position{background:#3975c6}.dash-summary-indicator.savings{background:#a855a0}.dash-panel{padding:21px}.dash-panel-heading{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:17px;display:flex}.dash-panel-heading h2{color:var(--color-text);margin:0;font-size:14px;font-weight:750}.dash-panel-heading p{color:var(--color-muted);margin:6px 0 0;font-size:10px;line-height:1.6}.dash-period-label{border:1px solid var(--color-border);color:#697386;border-radius:7px;flex:none;padding:6px 9px;font-size:10px}.dash-chart{width:100%;min-width:0;height:300px}.dash-chart-tooltip{border:1px solid var(--color-border);min-width:160px;color:var(--color-text);background:#fff;border-radius:9px;padding:10px 12px;font-size:10px;box-shadow:0 6px 20px #0f172a1a}.dash-chart-tooltip>strong{margin-bottom:7px;display:block}.dash-chart-tooltip div{justify-content:space-between;gap:14px;margin-top:5px;display:flex}.dash-chart-tooltip div strong{font-variant-numeric:tabular-nums}.dash-empty-state,.dash-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:210px;padding:25px 14px;display:flex}.dash-empty-state>span{background:var(--color-primary-light);width:42px;height:42px;color:var(--color-primary);border-radius:12px;place-items:center;font-size:20px;display:grid}.dash-empty-state h3,.dash-state h2{color:var(--color-text);margin:13px 0 6px;font-size:13px}.dash-empty-state p,.dash-state p{max-width:380px;color:var(--color-muted);margin:0;font-size:10px;line-height:1.7}.dash-empty-compact{min-height:150px}.dash-category-legend,.dash-category-row{grid-template-columns:minmax(150px,1.5fr) repeat(3,minmax(100px,1fr));align-items:center;gap:12px;display:grid}.dash-category-legend{border-bottom:1px solid var(--color-border);color:var(--color-muted);text-transform:uppercase;letter-spacing:.35px;padding:0 0 9px;font-size:9px;font-weight:750}.dash-category-legend span:not(:first-child){text-align:right}.dash-category-row{color:var(--color-text);font-variant-numeric:tabular-nums;border-bottom:1px solid #f0f1f5;padding:12px 0;font-size:10px}.dash-category-row:last-child{border-bottom:0}.dash-category-row>strong,.dash-category-row>.dash-refund-value{text-align:right;white-space:nowrap}.dash-category-name{min-width:0}.dash-category-name strong{overflow-wrap:anywhere;font-size:11px;display:block}.dash-category-name>span{color:var(--color-muted);margin-top:4px;font-size:9px;display:block}.dash-category-track{background:#eef0f5;border-radius:99px;height:4px;margin-top:8px;overflow:hidden}.dash-category-track span{background:var(--color-primary);border-radius:99px;height:100%;display:block}.dash-refund-value{color:#3975c6}.dash-category-footnote,.dash-footnote{color:var(--color-muted);margin:12px 0 0;font-size:9px;line-height:1.6}.dash-recent-list{flex-direction:column;display:flex}.dash-recent-row{border-bottom:1px solid #f0f1f5;grid-template-columns:36px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 0;display:grid}.dash-recent-row:last-child{border-bottom:0}.dash-transaction-icon{color:#64748b;background:#f1f3f9;border-radius:10px;place-items:center;width:35px;height:35px;font-size:17px;display:grid}.dash-transaction-icon.income{color:#16804b;background:#e9f9f0}.dash-transaction-icon.expense{color:#c24136;background:#fff0ed}.dash-transaction-icon.refund{color:#3975c6;background:#eef5ff}.dash-transaction-description{min-width:0}.dash-transaction-description strong,.dash-transaction-description span,.dash-transaction-description small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.dash-transaction-description strong{color:var(--color-text);font-size:11px}.dash-transaction-description span{color:var(--color-muted);margin-top:4px;font-size:9px}.dash-transaction-description small{color:#8a93a2;margin-top:3px;font-size:9px}.dash-recent-row time{color:var(--color-muted);white-space:nowrap;font-size:9px}.dash-transaction-amount{color:var(--color-text);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:10px}.dash-transaction-amount.income,.dash-transaction-amount.refund{color:#16804b}.dash-transaction-amount.expense{color:#c24136}.dash-view-all,.dash-inline-link{color:var(--color-primary);white-space:nowrap;font-size:10px;font-weight:700}.dash-inline-link{margin-top:12px}.dash-footnote{margin:0}.dash-state{border:1px solid var(--color-border);background:#fff;border-radius:12px;min-height:260px}.dash-state-error{text-align:left;align-items:flex-start}.dash-retry-button{background:var(--color-primary);color:#fff;border:0;border-radius:7px;margin-top:14px;padding:8px 13px;font-size:11px;font-weight:700}.dash-inline-error{color:#a43f32;background:#fff6f4;border:1px solid #f0c4bd;border-radius:8px;padding:10px 12px;font-size:11px}@media (width<=1100px){.dash-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.dash-panel{padding:16px}.dash-category-legend,.dash-category-row{grid-template-columns:minmax(100px,1.2fr) repeat(3,minmax(76px,1fr));gap:7px}.dash-category-legend{font-size:8px}.dash-category-row{font-size:9px}.dash-recent-row{grid-template-columns:34px minmax(0,1fr) auto;gap:9px}.dash-recent-row time{grid-area:2/2}.dash-transaction-amount{grid-area:1/3/3}}@media (width<=480px){.dash-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.dash-summary-card{padding:13px}.dash-summary-card-top{font-size:9px}.dash-summary-card>strong{margin:13px 0 5px;font-size:18px}.dash-summary-card small{font-size:9px}.dash-panel-heading{gap:8px}.dash-panel-heading p{max-width:230px}.dash-period-label{padding:5px 6px;font-size:9px}.dash-category-legend,.dash-category-row{grid-template-columns:minmax(86px,1.15fr) repeat(3,minmax(62px,1fr));gap:5px}.dash-category-legend{letter-spacing:0;font-size:7px}.dash-category-row,.dash-category-row>strong,.dash-category-row>.dash-refund-value{font-size:8px}.dash-category-name strong{font-size:9px}.dash-category-name>span{font-size:8px}.dash-recent-row{gap:7px}.dash-transaction-description strong{font-size:10px}.dash-transaction-description span{font-size:8px}.dash-transaction-amount,.dash-view-all{font-size:9px}}.feature-page{flex-direction:column;gap:20px;display:flex}.feature-toolbar{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.feature-toolbar h2{color:var(--color-text);margin:0;font-size:18px;font-weight:700}.feature-toolbar p{color:var(--color-muted);margin:6px 0 0;font-size:12px;line-height:1.6}.toolbar-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.primary-button,.secondary-button{border:1px solid #0000;border-radius:8px;min-height:38px;padding:0 14px;font-size:12px;font-weight:650}.primary-button{background:var(--color-primary);color:#fff}.primary-button:hover{filter:brightness(.96)}.primary-button:disabled,.secondary-button:disabled,.danger-text-button:disabled{opacity:.55;cursor:not-allowed}.secondary-button{border-color:var(--color-border);color:#475166;background:#fff}.secondary-button:hover{background:#f8f9fc}.primary-button.small,.secondary-button.small{min-height:31px;padding:0 10px;font-size:11px}.danger-text-button,.text-button{color:#c24136;background:0 0;border:0;font-size:11px;font-weight:650}.text-button{color:var(--color-primary)}.toggle-label{color:#606b7d;white-space:nowrap;align-items:center;gap:7px;font-size:11px;display:flex}.toggle-label input,.checkbox-field input{accent-color:var(--color-primary)}.notice{border:1px solid;border-radius:8px;padding:11px 13px;font-size:12px;line-height:1.5}.notice-error{color:#a83232;background:#fff7f7;border-color:#fecaca}.notice-success{color:#187547;background:#f3fcf6;border-color:#bbf7d0}.notice.compact{margin-top:12px;padding:7px 9px;font-size:10px}.feature-form{border:1px solid var(--color-border);background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #1e293b06}.form-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:17px;display:flex}.form-heading h3{color:var(--color-text);margin:0;font-size:14px}.form-heading p{color:var(--color-muted);margin:5px 0 0;font-size:11px;line-height:1.5}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.form-grid label,.inline-edit-form label{color:#596477;flex-direction:column;gap:6px;font-size:11px;font-weight:600;display:flex}.form-grid input,.form-grid select,.inline-edit-form input,.category-edit-form input{width:100%;min-height:38px;color:var(--color-text);background:#fff;border:1px solid #dfe3ec;border-radius:7px;outline:none;padding:8px 10px;font-size:12px}.form-grid input:focus,.form-grid select:focus,.inline-edit-form input:focus,.category-edit-form input:focus{border-color:#8c86ef;box-shadow:0 0 0 3px #4f46e517}.checkbox-field{align-self:end;align-items:center;min-height:38px;flex-direction:row!important}.form-actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.loading-panel,.empty-panel{text-align:center;color:var(--color-muted);background:#ffffffa6;border:1px dashed #d9deea;border-radius:12px;padding:42px 20px;font-size:12px}.empty-panel h3{color:var(--color-text);margin:0 0 7px;font-size:14px}.empty-panel p{margin:0}.account-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.account-card{border:1px solid var(--color-border);background:#fff;border-radius:12px;min-width:0;padding:19px;box-shadow:0 2px 8px #1e293b06}.account-card.is-inactive,.category-row.is-inactive{opacity:.78;background:#fafbfc}.account-card-top,.account-name-row,.account-meta,.account-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.account-type-pill,.status-pill,.primary-tag,.default-tag{white-space:nowrap;border-radius:99px;align-items:center;padding:5px 9px;font-size:9px;font-weight:700;display:inline-flex}.account-type-pill{color:#5146c8;background:#eef2ff}.type-cash{color:#18734c;background:#ecfdf5}.type-credit_card{color:#a65c12;background:#fff4e8}.type-e_wallet{color:#7650a9;background:#f3eefe}.status-pill.active{color:#23754a;background:#eaf8ef}.status-pill.inactive{color:#727988;background:#f0f1f4}.account-name-row{justify-content:flex-start;margin-top:14px}.account-name-row h3{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:15px;overflow:hidden}.primary-tag{color:#4c55bb;background:#edf2ff}.account-balance-label{color:var(--color-muted);margin-top:18px;font-size:10px}.account-balance-value{color:var(--color-text);letter-spacing:-.6px;font-variant-numeric:tabular-nums;margin-top:4px;font-size:24px;font-weight:750}.account-meta{color:var(--color-muted);border-top:1px solid #f0f1f5;margin-top:13px;padding-top:10px;font-size:10px}.account-meta strong{color:#455064;text-align:right;font-size:10px;font-weight:650}.account-actions{border-top:1px solid #f0f1f5;flex-wrap:wrap;justify-content:flex-start;margin-top:17px;padding-top:13px}.inline-edit-form{border-top:1px solid #f0f1f5;flex-direction:column;gap:10px;margin-top:16px;padding-top:14px;display:flex}.form-hint{color:var(--color-muted);margin:0;font-size:10px}.account-footnote{color:var(--color-muted);margin:0;font-size:10px;line-height:1.6}@media (width<=850px){.account-grid{grid-template-columns:1fr}}@media (width<=600px){.feature-toolbar{flex-direction:column}.toolbar-actions{justify-content:space-between;width:100%}.form-grid{grid-template-columns:1fr}.feature-form{padding:15px}.account-card{padding:16px}}.field-hint{color:var(--color-muted);font-size:9px;font-weight:400;line-height:1.4}.category-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.category-summary>div{border:1px solid var(--color-border);background:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:15px 17px;display:flex}.category-summary span{color:var(--color-muted);font-size:10px}.category-summary strong{color:var(--color-text);font-size:19px;font-weight:750}.category-controls{justify-content:flex-start;display:flex}.segmented-filter{border:1px solid var(--color-border);background:#fff;border-radius:9px;gap:3px;padding:3px;display:inline-flex}.segmented-filter button{color:#6c7484;background:0 0;border:0;border-radius:6px;min-height:30px;padding:0 13px;font-size:10px;font-weight:650}.segmented-filter button.selected{background:var(--color-primary-light);color:var(--color-primary)}.category-list{flex-direction:column;gap:9px;display:flex}.category-row{border:1px solid var(--color-border);background:#fff;border-radius:10px;align-items:center;gap:13px;min-width:0;padding:13px 15px;display:flex}.category-kind-icon{color:#5146c8;background:#eef2ff;border-radius:9px;flex:0 0 36px;place-items:center;width:36px;height:36px;font-size:18px;font-weight:700;display:grid}.category-row:has(.category-main p:first-child) .category-kind-icon{color:#5146c8}.category-main{flex:1;min-width:0}.category-title-line{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.category-title-line h3{color:var(--color-text);margin:0;font-size:12px;font-weight:650}.category-main p{color:var(--color-muted);margin:4px 0 0;font-size:10px}.default-tag{color:#657084;background:#f1f3f7}.category-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.category-edit-form{align-items:center;gap:7px;width:min(420px,50%);display:flex}.category-edit-form input{flex:1;min-width:80px}@media (width<=650px){.category-summary{grid-template-columns:1fr}.category-summary>div{padding:12px 14px}.category-row{flex-wrap:wrap;align-items:flex-start}.category-main{padding-top:3px}.category-actions,.category-edit-form{width:100%;padding-left:49px}}.transactions-page{gap:18px}.transaction-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;display:grid}.transaction-summary{border:1px solid var(--color-border);background:#fff;border-radius:11px;min-width:0;padding:16px 17px}.transaction-summary span,.transaction-summary small{color:var(--color-muted);font-size:10px;display:block}.transaction-summary strong{color:var(--color-text);font-variant-numeric:tabular-nums;margin:8px 0 5px;font-size:21px;font-weight:750;display:block}.positive{color:#16804b!important}.negative{color:#c24136!important}.transaction-type-picker{flex-wrap:wrap;gap:7px;margin-bottom:18px;display:flex}.transaction-type-picker button{border:1px solid var(--color-border);color:#667085;background:#fff;border-radius:7px;min-height:34px;padding:0 13px;font-size:11px;font-weight:650}.transaction-type-picker button.selected{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary)}.transaction-type-picker button:disabled{opacity:.7;cursor:not-allowed}.transaction-form .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.transaction-form .form-grid input,.transaction-form .form-grid select{width:100%;min-height:38px;color:var(--color-text);background:#fff;border:1px solid #dfe3ec;border-radius:7px;outline:none;padding:8px 10px;font-size:12px}.transaction-form .form-grid input:focus,.transaction-form .form-grid select:focus{border-color:#8c86ef;box-shadow:0 0 0 3px #4f46e517}.transaction-form .full-width{grid-column:1/-1}.transaction-form .full-width input{width:100%}.transaction-form .field-hint{display:block}.notice-warning{color:#8a5810;background:#fffaf0;border-color:#f5d48b}.confirm-overlimit{align-items:center;gap:8px;margin-top:9px;font-weight:650;display:flex}.confirm-overlimit input{accent-color:var(--color-primary)}.transaction-filters{border:1px solid var(--color-border);background:#fff;border-radius:10px;grid-template-columns:minmax(180px,2fr) repeat(4,minmax(115px,1fr)) auto;align-items:end;gap:10px;padding:14px;display:grid}.transaction-filters label{color:#596477;flex-direction:column;gap:6px;min-width:0;font-size:10px;font-weight:650;display:flex}.transaction-filters input,.transaction-filters select{width:100%;min-width:0;min-height:35px;color:var(--color-text);background:#fff;border:1px solid #dfe3ec;border-radius:7px;padding:7px 9px;font-size:11px}.clear-filters{white-space:nowrap;min-height:35px}.transaction-table-wrap{border:1px solid var(--color-border);background:#fff;border-radius:11px;overflow:auto}.transaction-table{border-collapse:collapse;text-align:left;width:100%}.transaction-table th{color:#7a8495;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap;background:#fafbfe;padding:12px 13px;font-size:9px;font-weight:750}.transaction-table td{color:#536075;vertical-align:middle;border-top:1px solid #f0f1f5;padding:13px;font-size:11px}.transaction-table td strong,.transaction-table td span,.transaction-table td small{display:block}.transaction-table td strong{color:var(--color-text);font-size:11px;font-weight:700}.transaction-table td span{color:var(--color-muted);margin-top:4px;font-size:9px}.transaction-table td small{color:#8a93a2;margin-top:4px;font-size:9px}.transaction-table td.positive,.transaction-table td.negative{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:750}.classification-pill{text-transform:capitalize;background:#f1f3f9;border-radius:99px;width:max-content;padding:4px 7px;color:#5c6680!important;display:inline-flex!important}.transaction-actions{white-space:nowrap;align-items:center;gap:9px;display:flex}.transaction-actions button{font-size:10px}.transaction-footnote{color:var(--color-muted);margin:0;font-size:10px;line-height:1.6}@media (width<=1100px){.transaction-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.transaction-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.transaction-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.transaction-table-wrap{background:0 0;border:0;overflow:visible}.transaction-table,.transaction-table tbody{width:100%;display:block}.transaction-table thead{display:none}.transaction-table tr{border:1px solid var(--color-border);background:#fff;border-radius:10px;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:10px;padding:13px;display:grid}.transaction-table td{border:0;padding:3px 0;display:block}.transaction-table td:nth-child(2){grid-area:1/1/auto/-1}.transaction-table td:nth-child(2):before{content:"Transaction";color:#8a93a2;margin-bottom:4px;font-size:9px;display:block}.transaction-table td:not(:nth-child(2)):before{content:attr(data-label);color:#8a93a2;margin-bottom:4px;font-size:9px;display:block}.transaction-actions{justify-content:flex-end}}@media (width<=520px){.transaction-summary-grid{gap:8px}.transaction-summary{padding:12px}.transaction-summary strong{font-size:17px}.transaction-form .form-grid,.transaction-filters{grid-template-columns:1fr}.transaction-form .full-width{grid-column:auto}}.reports-page{flex-direction:column;gap:16px;min-width:0;display:flex}.reports-filters{border:1px solid var(--color-border);background:#fff;border-radius:11px;grid-template-columns:repeat(3,minmax(130px,1fr));gap:11px;padding:15px;display:grid}.reports-filters label{color:#596477;flex-direction:column;gap:6px;min-width:0;font-size:10px;font-weight:650;display:flex}.reports-filters input,.reports-filters select{width:100%;min-width:0;min-height:36px;color:var(--color-text);background:#fff;border:1px solid #dfe3ec;border-radius:7px;padding:7px 9px;font-size:11px}.reports-filters button,.reports-export-bar button,.reports-state button{min-height:35px;color:var(--color-text);cursor:pointer;background:#fff;border:1px solid #dfe3ec;border-radius:7px;padding:7px 12px;font-size:10px;font-weight:700}.reports-filters .reports-clear{color:var(--color-primary);align-self:end}.reports-export-bar{border:1px solid var(--color-border);background:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;display:flex}.reports-export-bar>div:first-child{flex-direction:column;gap:4px;display:flex}.reports-export-bar strong{font-size:12px}.reports-export-bar span{color:var(--color-muted);font-size:10px}.reports-export-bar>div:last-child{flex-wrap:wrap;gap:7px;display:flex}.reports-export-bar button{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.reports-export-bar button:disabled{opacity:.45;cursor:not-allowed}.reports-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.reports-summary article{border:1px solid var(--color-border);background:#fff;border-radius:10px;flex-direction:column;gap:12px;min-width:0;padding:15px;display:flex}.reports-summary span{color:var(--color-muted);font-size:10px}.reports-summary strong{color:var(--color-text);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:clamp(14px,1.5vw,20px);font-weight:750}.reports-panel{border:1px solid var(--color-border);background:#fff;border-radius:11px;min-width:0;padding:17px}.reports-panel header{justify-content:space-between;gap:12px;margin-bottom:14px;display:flex}.reports-panel h2{color:var(--color-text);margin:0;font-size:14px}.reports-panel header p{color:var(--color-muted);margin:5px 0 0;font-size:10px}.reports-chart{width:100%;min-width:0;height:290px}.reports-table-wrap{max-width:100%;overflow:auto}.reports-table-wrap table{border-collapse:collapse;text-align:left;white-space:nowrap;width:100%}.reports-table-wrap th{color:#7a8495;text-transform:uppercase;letter-spacing:.4px;background:#fafbfe;padding:10px 11px;font-size:9px}.reports-table-wrap td{color:#536075;border-top:1px solid #f0f1f5;padding:11px;font-size:10px}.reports-empty{text-align:center;color:var(--color-muted);padding:22px;font-size:11px}.reports-footnote{color:var(--color-muted);margin:0;font-size:10px;line-height:1.6}.reports-state{border:1px solid var(--color-border);color:var(--color-muted);background:#fff;border-radius:10px;padding:35px;font-size:12px}.reports-error{color:#a43f32}@media (width<=1050px){.reports-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=700px){.reports-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.reports-export-bar{flex-direction:column;align-items:flex-start}.reports-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=420px){.reports-filters{grid-template-columns:1fr}.reports-summary article{padding:12px}.reports-export-bar>div:last-child{width:100%}.reports-export-bar button{flex:1}}.audit-page{gap:18px}.audit-intro{border:1px solid var(--color-border);background:#fff;border-radius:11px;justify-content:space-between;align-items:flex-start;gap:18px;padding:19px 21px;display:flex}.audit-intro h2{color:var(--color-text);margin:0;font-size:17px}.audit-intro p{color:var(--color-muted);margin:7px 0 0;font-size:11px}.audit-retention-note{background:#f7f8fc;border-radius:8px;flex-direction:column;gap:5px;max-width:270px;padding:10px 13px;display:flex}.audit-retention-note strong{color:var(--color-text);font-size:11px}.audit-retention-note span{color:var(--color-muted);font-size:10px;line-height:1.5}.audit-filters{border:1px solid var(--color-border);background:#fff;border-radius:10px;grid-template-columns:repeat(4,minmax(130px,1fr)) auto;align-items:end;gap:10px;padding:14px;display:grid}.audit-filters label{color:#596477;flex-direction:column;gap:6px;min-width:0;font-size:10px;font-weight:650;display:flex}.audit-filters input,.audit-filters select{width:100%;min-width:0;min-height:36px;color:var(--color-text);background:#fff;border:1px solid #dfe3ec;border-radius:7px;padding:7px 9px;font-size:11px}.audit-results{border:1px solid var(--color-border);background:#fff;border-radius:11px;overflow:hidden}.audit-results-heading{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:17px 18px;display:flex}.audit-results-heading h3{color:var(--color-text);margin:0;font-size:13px}.audit-results-heading p{color:var(--color-muted);margin:5px 0 0;font-size:10px}.audit-table-wrap{overflow:auto}.audit-table{border-collapse:collapse;text-align:left;width:100%}.audit-table th{color:#7a8495;letter-spacing:.45px;text-transform:uppercase;white-space:nowrap;background:#fafbfe;padding:12px 14px;font-size:9px}.audit-table td{color:#536075;vertical-align:top;border-top:1px solid #f0f1f5;padding:13px 14px;font-size:10px}.audit-table td strong,.audit-table td small{display:block}.audit-table td strong{color:var(--color-text);font-size:10px}.audit-entity-id{overflow-wrap:anywhere;max-width:190px;color:var(--color-muted);margin-top:5px;font-size:9px}.audit-action{color:#586174;text-transform:capitalize;background:#f1f3f9;border-radius:20px;padding:4px 8px;font-size:9px;font-weight:700;display:inline-flex}.audit-action-deleted{color:#b83c31;background:#fff0ed}.audit-action-restored,.audit-action-created,.audit-action-reactivated{color:#187448;background:#eaf8f0}.audit-snapshots{flex-direction:column;gap:7px;min-width:230px;display:flex}.audit-snapshots details{border:1px solid #e8eaf0;border-radius:7px}.audit-snapshots summary{color:#4f46a5;cursor:pointer;padding:7px 9px;font-size:9px;font-weight:650}.audit-snapshots pre{color:#344054;white-space:pre-wrap;overflow-wrap:anywhere;background:#fafbfe;border-top:1px solid #e8eaf0;max-width:480px;max-height:260px;margin:0;padding:9px;font-size:9px;line-height:1.55;overflow:auto}.audit-pagination{border-top:1px solid var(--color-border);color:var(--color-muted);justify-content:space-between;align-items:center;gap:12px;padding:13px 16px;font-size:10px;display:flex}.audit-pagination>div{align-items:center;gap:10px;display:flex}.audit-pagination .secondary-button,.audit-results-heading .secondary-button{min-height:31px;padding:0 10px;font-size:10px}.audit-pagination button:disabled,.audit-results-heading button:disabled{opacity:.5;cursor:not-allowed}.audit-footnote{color:var(--color-muted);margin:0;font-size:10px;line-height:1.6}@media (width<=1000px){.audit-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=650px){.audit-intro{flex-direction:column}.audit-retention-note{max-width:none}.audit-filters{grid-template-columns:1fr 1fr}.audit-table-wrap{overflow:visible}.audit-table,.audit-table tbody{width:100%;display:block}.audit-table thead{display:none}.audit-table tr{border-top:1px solid #f0f1f5;flex-direction:column;gap:8px;padding:13px;display:flex}.audit-table td{border:0;padding:2px 0;display:block}.audit-table td:before{content:attr(data-label);color:#8a93a2;margin-bottom:4px;font-size:9px;display:block}.audit-snapshots{min-width:0}.audit-pagination{flex-direction:column;align-items:flex-start}.audit-pagination>div{justify-content:space-between;width:100%}}@media (width<=420px){.audit-filters{grid-template-columns:1fr}}.settings-page{flex-direction:column;gap:22px;display:flex}.settings-page .primary-button{background:var(--color-primary);color:#fff;cursor:pointer;border:1px solid #0000;border-radius:8px;min-height:38px;padding:0 14px;font-size:12px;font-weight:650}.settings-page .primary-button:disabled{opacity:.55;cursor:not-allowed}.settings-page .notice-error{color:#a83232;background:#fff7f7;border:1px solid #fecaca;border-radius:8px;padding:11px 13px;font-size:12px;line-height:1.5}.settings-intro,.settings-section{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;padding:22px;box-shadow:0 2px 8px #1e293b06}.settings-intro h2{color:var(--color-text);margin:0 0 7px;font-size:17px;font-weight:700}.settings-intro p,.settings-section-heading p{color:var(--color-muted);margin:0;font-size:12px;line-height:1.6}.settings-section-heading{margin-bottom:18px}.settings-section-heading h3{color:var(--color-text);margin:0 0 6px;font-size:14px;font-weight:700}.settings-profile-grid,.settings-app-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.settings-info-item,.settings-app-details>div{border:1px solid var(--color-border);background:#fbfcfe;border-radius:9px;flex-direction:column;gap:7px;min-width:0;padding:14px;display:flex}.settings-info-item span,.settings-app-details span{color:var(--color-muted);font-size:11px}.settings-info-item strong,.settings-app-details strong{overflow-wrap:anywhere;color:var(--color-text);font-size:13px;font-weight:650}.settings-readonly-note{color:var(--color-muted);margin:14px 0 0;font-size:11px}.settings-link-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.settings-link-card{border:1px solid var(--color-border);background:#fff;border-radius:10px;flex-direction:column;justify-content:space-between;gap:18px;min-width:0;padding:16px;display:flex}.settings-link-card h4{color:var(--color-text);margin:0 0 7px;font-size:13px;font-weight:700}.settings-link-card p{color:var(--color-muted);margin:0;font-size:11px;line-height:1.6}.settings-link-card a{width:fit-content;color:var(--color-primary);font-size:11px;font-weight:700;text-decoration:none}.settings-link-card a:hover{text-decoration:underline}.settings-password-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:560px;display:grid}.settings-field{min-width:0;color:var(--color-text);flex-direction:column;gap:7px;font-size:11px;font-weight:650;display:flex}.settings-field input{box-sizing:border-box;border:1px solid var(--color-border);width:100%;min-height:42px;color:var(--color-text);font:inherit;background:#fff;border-radius:8px;outline:none;padding:9px 11px;font-size:13px}.settings-field input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb1a}.settings-field input:disabled{cursor:not-allowed;background:#f1f5f9}.settings-feedback{border-radius:8px;grid-column:1/-1;margin:0;padding:10px 12px;font-size:12px}.settings-feedback--error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.settings-feedback--success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.settings-password-actions{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:12px;display:flex}.settings-password-actions span{color:var(--color-muted);font-size:10px}.settings-app-details{grid-template-columns:repeat(4,minmax(0,1fr))}@media (width<=850px){.settings-app-details{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.settings-intro,.settings-section{padding:17px}.settings-link-grid,.settings-profile-grid,.settings-password-form{grid-template-columns:1fr}.settings-app-details{grid-template-columns:1fr 1fr}.settings-password-actions{flex-direction:column;align-items:flex-start}}.auth-loading{color:#64748b;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:100vh;font-size:14px;display:flex}.auth-loading__spinner{border:3px solid #e2e8f0;border-top-color:#2563eb;border-radius:50%;width:32px;height:32px;animation:.8s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}.login-page{background:#f8fafc;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;width:100%;max-width:420px;padding:40px;box-shadow:0 12px 40px #0f172a0f}.login-brand{text-align:center;margin-bottom:36px}.login-brand__icon{color:#2563eb;background:#eff6ff;border-radius:12px;place-items:center;width:48px;height:48px;margin:0 auto 12px;font-size:25px;font-weight:700;display:grid}.login-brand h1{color:#0f172a;margin:0;font-size:22px;font-weight:700}.login-brand p{color:#64748b;margin:6px 0 0;font-size:13px}.login-heading{margin-bottom:24px}.login-heading h2{color:#0f172a;margin:0 0 6px;font-size:20px}.login-heading p{color:#64748b;margin:0;font-size:14px}.login-form{flex-direction:column;gap:18px;display:flex}.login-field{flex-direction:column;gap:8px;display:flex}.login-field label{color:#334155;font-size:13px;font-weight:600}.login-field input{box-sizing:border-box;color:#0f172a;width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:8px;outline:none;padding:10px 12px;font-size:14px;transition:border-color .15s,box-shadow .15s}.login-field input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.login-field input:disabled{cursor:not-allowed;background:#f1f5f9}.login-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin:0;padding:10px 12px;font-size:13px}.login-submit{color:#fff;cursor:pointer;background:#2563eb;border:0;border-radius:8px;min-height:46px;font-size:14px;font-weight:600;transition:background .15s}.login-submit:hover:not(:disabled){background:#1d4ed8}.login-submit:disabled{opacity:.65;cursor:not-allowed}.login-footer{color:#94a3b8;text-align:center;margin:24px 0 0;font-size:12px}@media (width<=480px){.login-page{padding:16px}.login-card{padding:28px 22px}}@media (prefers-reduced-motion:reduce){.auth-loading__spinner{animation:none}.login-field input,.login-submit{transition:none}}.setup-page{background:var(--color-background);justify-content:center;align-items:flex-start;min-height:100vh;padding:32px 16px;display:flex}.setup-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;width:100%;max-width:720px;padding:32px;box-shadow:0 8px 30px #1e293b0d}.setup-heading{text-align:center;margin-bottom:28px}.setup-brand-mark{background:var(--color-primary-light);width:46px;height:46px;color:var(--color-primary);border-radius:12px;place-items:center;margin:0 auto 12px;font-size:24px;font-weight:700;display:grid}.setup-heading h1{color:var(--color-text);margin:0;font-size:24px}.setup-heading p{color:var(--color-muted);margin:8px 0 0;font-size:13px}.setup-field{flex-direction:column;gap:7px;margin:14px 0;display:flex}.setup-field label{color:var(--color-text);font-size:13px;font-weight:600}.setup-field input{border:1px solid var(--color-border);width:100%;min-height:42px;color:var(--color-text);font:inherit;background:#fff;border-radius:8px;padding:9px 11px}.setup-field input:focus{outline:2px solid var(--color-primary-light);border-color:var(--color-primary)}.setup-field small,.setup-footnote{color:var(--color-muted);font-size:11px;line-height:1.6}.setup-accounts{margin-top:28px}.setup-section-heading,.setup-account-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.setup-section-heading h2{margin:0;font-size:17px}.setup-section-heading span{color:var(--color-muted);font-size:11px}.setup-account{border:1px solid var(--color-border);background:#fcfcfe;border-radius:11px;margin-top:14px;padding:17px}.setup-account-heading strong{font-size:13px}.setup-remove{color:#b42318;background:0 0;border:0;font-size:12px}.setup-checkbox{color:var(--color-text);align-items:center;gap:8px;font-size:12px;display:flex}.setup-add-actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.setup-add-actions button{border:1px solid var(--color-border);color:var(--color-primary);background:#fff;border-radius:8px;padding:9px 12px;font-size:12px}.setup-add-actions button:disabled{opacity:.45;cursor:not-allowed}.setup-primary{background:var(--color-primary);color:#fff;border:0;border-radius:8px;width:100%;min-height:46px;margin-top:20px;font-weight:650}.setup-primary:disabled{opacity:.6;cursor:wait}.setup-error{color:#b42318;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:11px;font-size:12px}.setup-footnote{text-align:center;margin:14px 0 0}@media (width<=560px){.setup-card{padding:22px 17px}.setup-heading h1{font-size:20px}}.app-shell{background:var(--color-background);min-height:100vh}.sidebar{z-index:10;background:var(--color-surface);border-right:1px solid var(--color-border);flex-direction:column;width:250px;padding:28px 18px 20px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar-brand{align-items:center;gap:12px;padding:0 8px 34px;display:flex}.brand-icon{background:var(--color-primary);color:#fff;border-radius:13px;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:23px;font-weight:750;display:grid}.brand-details h2{color:var(--color-text);letter-spacing:-.5px;margin:0;font-size:19px;font-weight:750}.brand-details span{color:var(--color-muted);margin-top:3px;font-size:11px;display:block}.sidebar-label{color:#a0a6b5;letter-spacing:1.2px;margin:0 0 13px 12px;font-size:10px;font-weight:700}.sidebar-navigation{flex-direction:column;gap:5px;display:flex}.nav-item{color:#697386;border-radius:9px;align-items:center;gap:13px;min-height:46px;padding:0 13px;font-size:13px;font-weight:550;transition:background .16s,color .16s;display:flex}.nav-item:hover{color:var(--color-primary);background:#f6f7fb}.nav-item.active{background:var(--color-primary-light);color:var(--color-primary);font-weight:650}.nav-icon{place-items:center;width:21px;font-size:19px;display:grid}.sidebar-footer{border:1px solid var(--color-border);background:#fbfbfe;border-radius:11px;align-items:center;gap:11px;margin-top:auto;padding:15px 10px;display:flex}.sidebar-footer-icon{width:34px;height:34px;color:var(--color-primary);background:#eef2ff;border-radius:9px;flex-shrink:0;place-items:center;font-size:18px;font-weight:700;display:grid}.sidebar-footer p{color:var(--color-text);margin:0;font-size:11px;font-weight:650}.sidebar-footer span{color:var(--color-muted);margin-top:4px;font-size:10px;display:block}.main-container{min-height:100vh;margin-left:250px}.app-header{z-index:5;border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;justify-content:space-between;align-items:center;gap:20px;min-height:88px;padding:18px 34px;display:flex;position:sticky;top:0}.header-heading h1{color:var(--color-text);letter-spacing:-.5px;margin:0;font-size:21px;font-weight:700}.header-heading p{color:var(--color-muted);margin:6px 0 0;font-size:12px}.header-actions{align-items:center;gap:17px;display:flex}.header-icon-button{border:1px solid var(--color-border);color:#697386;background:#fff;border-radius:10px;place-items:center;width:38px;height:38px;font-size:17px;display:grid}.header-icon-button:hover{background:#f7f8fc}.header-divider{background:var(--color-border);width:1px;height:34px}.user-profile{align-items:center;gap:10px;display:flex}.user-avatar{color:#5145cd;background:#e9e7ff;border-radius:50%;place-items:center;width:38px;height:38px;font-size:14px;font-weight:700;display:grid}.user-details span{display:block}.user-name{color:var(--color-text);font-size:12px;font-weight:650}.user-role{color:var(--color-muted);margin-top:3px;font-size:10px}.page-content{width:100%;max-width:1500px;margin:0 auto;padding:30px 34px}.page-placeholder{border:1px solid var(--color-border);background:var(--color-surface);border-radius:13px;min-height:230px;padding:30px;box-shadow:0 2px 8px #1e293b06}.page-placeholder h2{color:var(--color-text);margin:0 0 10px;font-size:18px;font-weight:650}.page-placeholder p{max-width:550px;color:var(--color-muted);margin:0;font-size:13px;line-height:1.7}@media (width<=900px){.sidebar{width:215px}.main-container{margin-left:215px}.app-header{padding-left:22px;padding-right:22px}.page-content{padding:24px 22px}}@media (width<=650px){.sidebar{border-right:none;border-bottom:1px solid var(--color-border);width:100%;padding:16px;position:static}.sidebar-brand{padding:0 4px 16px}.sidebar-section{overflow-x:auto}.sidebar-label,.sidebar-footer{display:none}.sidebar-navigation{flex-direction:row;gap:7px;width:max-content}.nav-item{gap:7px;min-height:38px;padding:0 10px;font-size:11px}.nav-icon{width:auto;font-size:15px}.main-container{margin-left:0}.app-header{min-height:76px;padding:15px 18px;position:static}.header-heading h1{font-size:18px}.header-heading p{max-width:210px;font-size:10px}.header-actions{gap:9px}.header-divider,.user-details{display:none}.page-content{padding:18px}.page-placeholder{min-height:190px;padding:22px}}.dashboard{flex-direction:column;gap:22px;display:flex}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.summary-card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;min-width:0;padding:21px;box-shadow:0 2px 8px #1e293b06}.summary-card-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.summary-card-title{color:var(--color-muted);font-size:12px;font-weight:550}.summary-icon{border-radius:10px;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:17px;display:grid}.summary-icon.balance{color:#4f46e5;background:#eef2ff}.summary-icon.income{color:#15945a;background:#e9f9f0}.summary-icon.expense{color:#e16b50;background:#fff0ed}.summary-icon.savings{color:#c58a20;background:#fff7e8}.summary-value{color:var(--color-text);letter-spacing:-.7px;margin:19px 0 7px;font-size:27px;font-weight:700}.summary-note{color:var(--color-muted);margin:0;font-size:10px;line-height:1.6}.dashboard-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:18px;display:grid}.dashboard-panel{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;min-width:0;padding:22px;box-shadow:0 2px 8px #1e293b06}.panel-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.panel-header h3{color:var(--color-text);margin:0;font-size:14px;font-weight:650}.panel-header p{color:var(--color-muted);margin:6px 0 0;font-size:11px}.panel-period{border:1px solid var(--color-border);color:#697386;border-radius:7px;padding:7px 10px;font-size:10px}.chart-empty-state,.transactions-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:225px;padding:25px 12px;display:flex}.empty-state-icon{background:var(--color-primary-light);width:43px;height:43px;color:var(--color-primary);border-radius:12px;place-items:center;font-size:21px;display:grid}.chart-empty-state h4,.transactions-empty-state h4{color:var(--color-text);margin:15px 0 7px;font-size:12px;font-weight:650}.chart-empty-state p,.transactions-empty-state p{max-width:280px;color:var(--color-muted);margin:0;font-size:11px;line-height:1.7}.recent-panel{min-height:250px}.transactions-empty-state{min-height:180px}@media (width<=1100px){.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}}@media (width<=650px){.summary-grid{grid-template-columns:1fr 1fr;gap:11px}.summary-card{padding:15px}.summary-card-title{font-size:10px}.summary-value{font-size:23px}.summary-note{font-size:9px}.dashboard-panel{padding:17px}}
