:root{--navy:#122331;--navy-light:#1b3444;--teal:#1b705d;--mint:#67d5b6;--red:#bf634e;--text:#1c303c;--muted:#59666f;--border:#e7ebed;--surface:#fff;--background:#f5f6f8;--radius:14px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--primary:#22846e;--surface-subtle:#f5f8f8;--hover:#eff3f4;--positive-bg:#edf7f1;--positive-text:#386e5d;--negative-bg:#fbefeb;--negative-text:#945747;--warning-bg:#faf5e8;--warning-text:#79612c;--info-bg:#eef4fa;--info-text:#4d677d}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--text:#e8eff2;--muted:#b3c1c9;--border:#34434d;--surface:#18242d;--background:#10191f;--surface-subtle:#202f39;--hover:#293c47;--teal:#89dfbf;--positive-bg:#19392e;--positive-text:#98dfbc;--negative-bg:#412925;--negative-text:#ffc3b3;--warning-bg:#3b321e;--warning-text:#f4d58a;--info-bg:#1e334a;--info-text:#b1d5ff}*{box-sizing:border-box}body{background:var(--background);color:var(--text);margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button,a{color:inherit}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-1px;margin-bottom:9px;font-size:30px;font-weight:650;line-height:1.2}h2{letter-spacing:-.3px;margin-bottom:8px;font-size:16px;font-weight:650}h3{font-size:17px}p{line-height:1.6}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #59bba3}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.muted{color:var(--muted)}.eyebrow{letter-spacing:1.8px;color:var(--muted);margin-bottom:10px;font-size:10px;font-weight:700}.button{white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:11px 17px;font-size:13px;font-weight:600;transition:background .15s,transform .15s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button.primary{background:var(--primary);color:#fff;box-shadow:0 3px 6px #22846e0d}.button.primary:hover:not(:disabled){background:#1b705d}.button.secondary{background:var(--surface);border-color:var(--border);color:#4d616c}.button.secondary:hover:not(:disabled){background:var(--surface-subtle)}.button.small{min-height:36px;padding:7px 12px;font-size:12px}.button.danger{color:#fff;background:#b94f43}.button.full{width:100%}.text-button{color:var(--teal);background:0 0;border:0;align-items:center;gap:5px;min-height:32px;padding:8px 0;font-size:12px;font-weight:600;display:inline-flex}.text-button:hover{text-decoration:underline}.icon-button{width:34px;height:34px;color:var(--muted);background:0 0;border:0;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover{background:var(--hover);color:var(--text)}.spin{animation:1.2s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{min-height:100dvh;display:flex}.sidebar{background:var(--navy);color:#a3b1bb;z-index:20;flex-direction:column;width:234px;height:100dvh;padding:30px 20px 20px;display:flex;position:fixed;top:0;left:0;overflow-y:auto}.sidebar-brand{color:#fff;letter-spacing:-1.3px;align-items:center;gap:8px;margin-bottom:32px;padding:0 9px;font-size:25px;font-weight:550;line-height:1;text-decoration:none;display:flex}.brand-mark{letter-spacing:-3px;color:inherit;align-items:center;font-size:38px;font-weight:750;display:inline-flex}.brand-mark svg{color:var(--mint);margin-top:-16px;margin-left:2px}.brand-caption{letter-spacing:1.1px;color:#a4b4bf;margin-top:8px;font-size:7px;font-weight:600;display:block}.workspace-chip{background:#ffffff06;border:1px solid #ffffff0c;border-radius:9px;align-items:center;gap:10px;margin-bottom:29px;padding:13px 11px;display:flex}.workspace-avatar{color:#bde1d6;background:#294453;border:1px solid #53727b40;border-radius:7px;flex-shrink:0;place-items:center;width:33px;height:33px;font-size:11px;font-weight:700;display:grid}.workspace-chip>div:nth-child(2){flex:1;min-width:0}.workspace-chip strong{color:#e9eff1;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;display:block;overflow:hidden}.workspace-chip span{color:#7f96a5;margin-top:2px;font-size:10px;display:block}.nav-label{color:#91a8b6;letter-spacing:1.5px;margin-bottom:12px;padding-left:14px;font-size:9px}.nav-item{text-align:left;color:#9bafbd;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;width:100%;margin-bottom:5px;padding:13px;font-size:12px;font-weight:500;display:flex}.nav-item:hover{color:#fff;background:#ffffff08}.nav-item.active{color:#b8eddb;background:#25473f}.nav-dot{background:var(--mint);border-radius:50%;width:6px;height:6px;margin-left:auto}.sidebar-bottom{margin-top:auto;padding-top:25px}.sidebar-tip{background:linear-gradient(130deg,#22394a50,#0000);border:1px solid #ffffff0c;border-radius:12px;margin-bottom:20px;padding:16px}.tip-icon{color:#92d1bc;background:#29483f;border-radius:8px;place-items:center;width:34px;height:34px;margin-bottom:13px;display:grid}.sidebar-tip strong{color:#e0e8ec;font-size:13px;font-weight:500;line-height:1.6}.sidebar-tip p{color:#829baa;margin:8px 0 0;font-size:10px;line-height:1.7}.sidebar-version{color:#91a8b6;border-top:1px solid #ffffff0b;justify-content:space-between;margin:18px 14px 0;padding-top:14px;font-size:10px;display:flex}.main-shell{flex:1;min-width:0;margin-left:234px}.topbar{background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:73px;padding:0 36px;display:flex}.breadcrumbs{color:var(--muted);align-items:center;gap:12px;font-size:11px;display:flex}.breadcrumbs strong{color:var(--muted);font-weight:500}.topbar-right{align-items:center;gap:20px;display:flex}.connection-status{color:var(--muted);align-items:center;gap:7px;font-size:10px;display:flex}.connection-status>span{background:#48ab82;border-radius:50%;width:6px;height:6px}.connection-status.offline{color:#965d43}.connection-status.offline>span{background:#bf775b}.user-avatar{background:var(--positive-bg);color:var(--positive-text);border-radius:50%;place-items:center;width:32px;height:32px;font-size:10px;font-weight:700;display:grid}.refresh-button{width:26px}.main-content{max-width:1640px;margin:0 auto;padding:33px 36px 20px}.page-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px;display:flex}.page-description{color:var(--muted);margin-bottom:0;font-size:12px}.header-actions{align-items:center;gap:12px;display:flex}.period-control{background:var(--surface);border:1px solid var(--border);color:var(--muted);border-radius:8px;align-items:center;gap:8px;height:44px;padding:9px 11px;display:flex}.period-control input{color:var(--muted);background:0 0;border:0;min-width:0;max-width:155px;padding:0;font-size:12px}.period-control:has(>span){flex-wrap:wrap;height:auto}.period-control>span{flex-basis:100%;order:3;font-size:10px}.period-control button{border:0;border-left:1px solid var(--border);color:var(--muted);background:0 0;padding:4px;display:flex}.period-control button.selected{color:var(--teal)}.local-banner{background:var(--info-bg);border:1px solid var(--border);color:var(--muted);border-radius:8px;align-items:center;gap:9px;margin-bottom:20px;padding:10px 14px;font-size:11px;display:flex}.local-dot{background:#86a2b6;border-radius:50%;flex-shrink:0;width:6px;height:6px}.error-banner{background:var(--negative-bg);color:var(--negative-text);border:1px solid #f1d8c9;border-radius:8px;align-items:center;gap:12px;margin-bottom:20px;padding:12px 16px;font-size:12px;display:flex}.error-banner>span{flex:1}.error-banner .text-button{color:var(--negative-text);flex-shrink:0}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:22px;display:grid}.summary-card{background:var(--kpi-background);border:1px solid var(--kpi-border);color:var(--kpi-accent);border-radius:var(--radius);width:100%;min-height:152px;font:inherit;text-align:left;cursor:pointer;padding:19px 20px;box-shadow:0 3px 10px #16323c02}.summary-card.income{--kpi-background:#edf8f2;--kpi-border:#c4e6d8;--kpi-accent:#16724f;--kpi-label:#467461;--kpi-icon:#d7eee1}.summary-card.expense{--kpi-background:#fff0ef;--kpi-border:#f1d2ce;--kpi-accent:#a73735;--kpi-label:#925851;--kpi-icon:#f9dad5}.summary-card.pending{--kpi-background:#fff8e5;--kpi-border:#e9dcae;--kpi-accent:#8d640e;--kpi-label:#826a32;--kpi-icon:#f4e6bd}.summary-card.balance{--kpi-background:#edf4ff;--kpi-border:#c6d8ef;--kpi-accent:#245891;--kpi-label:#526d8d;--kpi-icon:#d8e6fa}.summary-card:hover{border-color:var(--kpi-accent);box-shadow:0 4px 12px #16323c12}.summary-card:focus-visible{outline:3px solid var(--kpi-accent);outline-offset:3px}.summary-card-top{justify-content:space-between;align-items:center;gap:5px;margin-bottom:16px;font-size:12px;font-weight:500;display:flex}.summary-icon{background:var(--kpi-icon);border-radius:9px;place-items:center;width:32px;height:32px;display:grid}.summary-value{letter-spacing:-1px;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:27px;font-weight:650;line-height:1.4;display:block}.summary-label{color:var(--kpi-label);justify-content:space-between;align-items:center;gap:4px;margin-top:10px;font-size:10px;display:flex}.summary-label svg{flex-shrink:0}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px;box-shadow:0 3px 10px #16323c02}.panel-title{justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.panel-title h2{margin:0 0 5px}.panel-title p{margin-bottom:0;font-size:10px}.dashboard-grid{grid-template-columns:1.35fr 1fr;gap:20px;margin-bottom:20px;display:grid}.cash-chart{min-height:270px;position:relative}.chart-legend{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:9px;display:flex}.chart-legend>span{border-radius:2px;width:7px;height:7px;margin-left:5px}.income-dot{background:#65b79e}.expense-dot{background:#efa994}.bar-chart{height:164px;color:var(--muted);gap:15px;margin-top:24px;font-size:9px;display:flex}.chart-axis{text-align:right;flex-direction:column;flex-shrink:0;justify-content:space-between;width:25px;padding-bottom:27px;display:flex}.chart-bars{flex:1;justify-content:space-around;align-items:flex-end;min-width:0;display:flex;position:relative}.chart-grid-lines{flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:0 0 27px}.chart-grid-lines i{border-top:1px dashed var(--border);display:block}.bar-group{z-index:1;flex-direction:column;flex:1;align-items:center;min-width:0;height:100%;display:flex}.bar-pair{justify-content:center;align-items:flex-end;gap:6px;width:100%;height:calc(100% - 27px);display:flex}.bar{border-radius:4px 4px 0 0;width:18px;max-width:29%;transition:height .3s}.income-bar{background:#7bc4ad}.expense-bar{background:#efb09c}.bar-group>span{text-transform:capitalize;height:27px;padding-top:10px}.chart-empty-note{text-align:center;color:var(--muted);font-size:11px;position:absolute;top:145px;left:50px;right:30px}.expense-chart-content{justify-content:center;align-items:center;gap:27px;min-height:179px;padding-top:16px;display:flex}.donut{border-radius:50%;flex-shrink:0;place-items:center;width:148px;height:148px;display:grid;transform:rotate(-90deg)}.donut>div{background:var(--surface);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:113px;height:113px;display:flex;transform:rotate(90deg)}.donut span{color:var(--muted);margin-bottom:6px;font-size:9px}.donut strong{letter-spacing:-.5px;font-size:18px;font-weight:650}.expense-legend{flex:1;min-width:0;max-width:190px;font-size:11px}.expense-legend>div{justify-content:space-between;align-items:center;gap:8px;margin-bottom:15px;display:flex}.legend-name{color:var(--muted);align-items:center;gap:8px;min-width:0;display:flex}.legend-name i{border-radius:50%;flex-shrink:0;width:7px;height:7px}.expense-legend strong{color:var(--muted);font-size:10px;font-weight:500}.expense-legend p{font-size:12px}.pending-strip{border:1px solid var(--border);background:var(--positive-bg);border-radius:10px;align-items:center;gap:15px;margin-bottom:22px;padding:17px 21px;display:flex}.pending-strip-icon{background:var(--positive-bg);width:36px;height:36px;color:var(--muted);border-radius:9px;flex-shrink:0;place-items:center;display:grid}.pending-strip>div:nth-child(2){flex:1}.pending-strip strong{font-size:12px;font-weight:600}.pending-strip p{color:var(--muted);margin:3px 0 0;font-size:10px}.payable-link{text-align:left;background:0 0;border:0;grid-template-columns:1fr 17px;column-gap:13px;display:grid}.payable-link>span,.projection>span{color:var(--muted);font-size:9px}.payable-link strong{letter-spacing:-.3px;grid-row:2;font-size:15px}.payable-link svg{color:var(--muted);grid-area:1/2/3;align-self:center}.projection{border-left:1px solid var(--border);flex-direction:column;min-width:118px;margin-left:10px;padding-left:25px;display:flex}.projection>strong{letter-spacing:-.3px;font-size:15px}.transaction-panel{padding:0;overflow:visible}.transaction-panel>.panel-title{margin-bottom:19px;padding:21px 22px 0}.transaction-panel h2{font-size:15px}.count-badge{min-width:21px;color:var(--muted);background:var(--surface-subtle);vertical-align:middle;border-radius:5px;justify-content:center;align-items:center;margin-left:5px;padding:2px 6px;font-size:9px;font-weight:600;display:inline-flex}.table-heading-actions{align-items:center;gap:16px;display:flex}.filter-toolbar{flex-wrap:wrap;align-items:center;gap:10px;padding:0 22px 19px;display:flex}.search-field{background:var(--surface-subtle);border:1px solid var(--border);color:var(--muted);border-radius:7px;flex:1;align-items:center;gap:9px;min-width:175px;max-width:380px;height:36px;padding:8px 10px;display:flex}.search-field input{width:100%;color:var(--text);background:0 0;border:0;outline:none;font-size:11px}.search-field input::placeholder{color:var(--muted)}.filter-selects{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;max-width:100%;display:flex}.filter-selects select{border:1px solid var(--border);background:var(--surface);height:36px;color:var(--muted);border-radius:7px;max-width:155px;padding:8px 25px 8px 10px;font-size:10px}.mobile-filter-toggle{display:none}.table-scroll{width:100%;overflow-x:auto}.transaction-table{border-collapse:collapse;text-align:left;width:100%;min-width:600px;font-size:11px}.transaction-table th{color:var(--muted);background:var(--surface-subtle);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:11px 15px;font-size:9px;font-weight:500}.transaction-table th:first-child{padding-left:22px}.transaction-table th:last-child{width:75px;padding-right:22px}.transaction-table td{border-bottom:1px solid var(--border);height:72px;padding:13px 15px}.transaction-table td:first-child{padding-left:22px}.transaction-table tr:last-child td{border-bottom:0}.transaction-table tbody tr:hover{background:var(--surface-subtle)}.description-cell{width:36%;max-width:min(400px,100%)}.description-wrap{align-items:center;gap:11px;display:flex}.transaction-icon{background:var(--positive-bg);width:34px;height:34px;color:var(--positive-text);border-radius:9px;flex-shrink:0;place-items:center;display:grid}.transaction-icon.expense{background:var(--negative-bg);color:var(--negative-text)}.description-wrap>div{min-width:0}.description-wrap strong{color:var(--text);overflow-wrap:anywhere;font-size:11px;font-weight:550;line-height:1.4;display:block}.description-wrap>div>span{color:var(--muted);margin-top:5px;font-size:9px;display:block}.category-pill{border:1px solid var(--border);background:var(--surface-subtle);color:var(--muted);white-space:nowrap;border-radius:5px;padding:4px 8px;font-size:9px}.date-cell{color:var(--muted);white-space:nowrap;font-size:10px}.status-badge{background:var(--warning-bg);color:var(--warning-text);white-space:nowrap;border-radius:5px;align-items:center;gap:5px;padding:4px 7px;font-size:9px;font-weight:500;display:inline-flex}.status-badge>span{background:currentColor;border-radius:50%;width:4px;height:4px}.status-badge.settled{background:var(--positive-bg);color:var(--positive-text)}.status-badge.partial{background:var(--info-bg);color:var(--muted)}.status-badge.overdue{background:var(--negative-bg);color:var(--negative-text)}.status-badge.cancelled{background:var(--surface-subtle);color:var(--muted)}.amount-cell{text-align:right;white-space:nowrap}.amount-cell strong{letter-spacing:-.1px;font-size:11px;font-weight:600}.amount-cell.income{color:var(--positive-text)}.amount-cell.expense{color:var(--negative-text)}.amount-cell small{color:var(--muted);margin-top:4px;font-size:9px;display:block}.row-actions{justify-content:flex-end;align-items:center;gap:3px;display:flex}.row-actions .icon-button{width:27px;height:28px;color:var(--muted)}.menu-container{position:relative}.menu-backdrop{z-index:40;cursor:default;background:0 0;border:0;position:fixed;inset:0}.action-menu{background:var(--surface);border:1px solid var(--border);z-index:41;border-radius:8px;min-width:147px;padding:5px;position:absolute;top:31px;right:0;box-shadow:0 10px 30px #12334420}.action-menu button{text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:5px;align-items:center;gap:9px;width:100%;padding:10px;font-size:12px;display:flex}.action-menu button:hover{background:var(--surface-subtle)}.danger-text{color:var(--negative-text)}.cancelled-row{opacity:.55}.table-footer{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;align-items:center;padding:15px 22px;font-size:9px;display:flex}.table-footer>span:last-child{align-items:center;gap:5px;display:flex}.empty-state{text-align:center;padding:38px 20px 45px}.empty-icon{background:var(--positive-bg);width:57px;height:57px;color:var(--muted);border-radius:15px;place-items:center;margin:0 auto 17px;display:grid}.empty-state h3{margin-bottom:7px;font-size:15px;font-weight:600}.empty-state p{color:var(--muted);max-width:340px;margin:0 auto 16px;font-size:11px}.dashboard-footnote{color:var(--muted);margin:15px 3px 0;font-size:9px;line-height:1.7}.page-footer{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;align-items:center;margin-top:28px;padding:14px 0 0;font-size:9px;display:flex}.page-footer .text-button{color:var(--muted);font-size:9px;font-weight:400}.mobile-nav{display:none}.custom-period{align-items:flex-end;gap:14px;margin:-10px 0 20px;display:flex}.custom-period .field{max-width:185px;margin-bottom:0}.custom-period input{height:37px}.loading-panel{min-height:320px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:15px;display:flex}.loading-panel h2{font-weight:500}.field{color:var(--muted);flex-direction:column;gap:7px;margin:0 0 17px;font-size:11px;font-weight:600;display:flex}.field input,.field select,.field textarea,.inline-create input,.import-row>input{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:7px;width:100%;min-width:0;padding:11px 12px;font-size:13px;font-weight:400}.field input::placeholder,.field textarea::placeholder{color:var(--muted)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--muted)}.field textarea{resize:vertical}.field-help{color:var(--muted);margin-top:-7px;margin-bottom:17px;font-size:11px;line-height:1.7}.form-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.modal{background:var(--surface);border:1px solid var(--border);width:min(600px,100% - 28px);max-height:90dvh;color:var(--text);border-radius:16px;padding:0;box-shadow:0 30px 100px #10283735}.modal::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#10233070}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:15px;padding:23px 25px 18px;display:flex}.modal-header h2{margin-bottom:4px;font-size:20px}.modal-header p{color:var(--muted);margin-bottom:0;font-size:11px}.modal-body{padding:23px 25px}.modal-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;margin-top:20px;padding-top:18px;display:flex}.segmented{background:var(--surface-subtle);border-radius:8px;gap:4px;margin-bottom:24px;padding:4px;display:flex}.segmented button{color:var(--muted);background:0 0;border:0;border-radius:6px;flex:1;padding:9px;font-size:12px;font-weight:500}.segmented button.active{background:var(--surface);box-shadow:0 1px 4px #12233110}.segmented button.income{color:var(--positive-text)}.segmented button.expense{color:var(--negative-text)}.inline-create{background:var(--surface-subtle);border-radius:8px;gap:10px;margin-bottom:20px;padding:12px;display:flex}.modal-body>.text-button,.modal-body>fieldset>.text-button{margin-top:-10px;margin-bottom:13px}.settlement-box{border:1px solid var(--border);background:var(--surface-subtle);border-radius:10px;margin-bottom:20px;padding:15px}.section-line{justify-content:space-between;gap:10px;margin-bottom:17px;font-size:12px;display:flex}.section-line strong{font-weight:600}.section-line span{color:var(--muted);font-size:11px}.settlement-row{grid-template-columns:1fr 1fr 28px;align-items:center;gap:10px;display:grid}.settlement-row .field{margin-bottom:11px}.settlement-row .icon-button{margin-top:10px}.checkbox-label{color:var(--muted);align-items:center;gap:8px;margin:10px 0;font-size:12px;display:flex}.checkbox-label input{accent-color:var(--teal);width:16px;height:16px}.balance-note{background:var(--positive-bg);color:var(--muted);border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:22px;padding:13px 15px;display:flex}.balance-note strong{color:var(--positive-text);letter-spacing:-.5px;font-size:20px}.error-text{color:var(--negative-text);background:var(--negative-bg);border-radius:7px;margin-top:10px;padding:10px 13px;font-size:12px}.toast{background:var(--navy);color:#d9eee4;z-index:100;border:1px solid #38614f;border-radius:10px;align-items:center;gap:10px;max-width:calc(100% - 25px);padding:14px 22px;font-size:12px;display:flex;position:fixed;bottom:25px;left:50%;transform:translate(-50%);box-shadow:0 10px 40px #12233130}.toast svg{color:var(--mint);flex-shrink:0}.category-create{margin-bottom:22px}.category-create>p{font-size:12px}.category-form{align-items:flex-end;gap:14px;margin-top:20px;display:flex}.category-form .field{flex:1;margin-bottom:0}.category-form>.field:nth-child(2){max-width:180px}.category-form .button{height:43px}.category-columns{grid-template-columns:1fr 1fr;gap:20px;display:grid}.category-row{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:16px 0;display:flex}.category-row strong{font-size:13px;font-weight:550}.category-row p{color:var(--muted);margin:4px 0 0;font-size:10px}.category-row .row-actions{gap:12px}.category-row.archived{color:var(--muted)}.hint{color:var(--muted);margin-top:16px;font-size:11px}.settings-grid{grid-template-columns:1.25fr 1fr;gap:20px;margin-bottom:22px;display:grid}.settings-grid>.panel>p{margin-bottom:22px;font-size:12px}.settings-form{margin-top:23px}.tip-box{background:var(--positive-bg);color:var(--muted);border-radius:10px;margin-top:27px;padding:18px}.tip-box strong{color:var(--muted);font-size:12px}.tip-box p{margin:8px 0 0;font-size:11px;line-height:1.8}.import-inputs{grid-template-columns:1fr 180px;gap:15px;display:grid}.import-warning{background:var(--warning-bg);color:var(--warning-text);border:1px solid #eee4c5;border-radius:8px;margin:20px 0;padding:14px 17px;font-size:11px}.import-warning strong{font-size:12px}.import-warning p{margin:7px 0 0}.import-preview{grid-template-columns:1fr 1fr;gap:13px;max-height:600px;margin-bottom:20px;padding:3px;display:grid;overflow-y:auto}.import-row{border:1px solid var(--border);background:var(--surface-subtle);border-radius:9px;padding:14px}.import-row .checkbox-label{margin:0 0 12px;font-size:11px}.import-row>input{margin-bottom:14px;font-size:11px}.import-row .field{margin-bottom:12px;font-size:10px}.import-row .field input,.import-row .field select{font-size:11px}.import-row small{color:var(--muted);font-size:10px}.help-content p{color:var(--muted);font-size:13px;line-height:1.8}.help-content strong{color:var(--text)}.login-page{background:var(--surface);grid-template-columns:1fr 1fr;min-height:100dvh;display:grid}.login-card{place-self:center;width:100%;max-width:440px;padding:45px}.login-card>.brand-mark{color:var(--navy);margin-bottom:45px}.login-card .eyebrow{margin-bottom:15px;font-size:9px}.login-card h1{letter-spacing:-1.5px;margin-bottom:19px;font-size:36px;line-height:1.2}.login-card>p:not(.eyebrow){color:var(--muted);margin-bottom:30px;font-size:13px}.login-card form{margin-top:30px}.password-field{border:1px solid var(--border);border-radius:7px;align-items:center;display:flex}.password-field input{background:0 0;border:0}.password-field button{color:var(--muted);background:0 0;border:0;padding:8px 12px;display:flex}.login-card>p.login-footer{text-align:center;color:var(--muted);margin-top:25px;margin-bottom:0;font-size:9px}.login-visual{background:var(--navy);justify-content:center;align-items:center;min-height:100dvh;display:flex;position:relative;overflow:hidden}.radar-ring{border:1px solid #5fb89d20;border-radius:50%;width:300px;height:300px;position:absolute}.ring-two{width:490px;height:490px}.ring-three{width:700px;height:700px}.radar-center{color:#c9f3e4;letter-spacing:-4px;z-index:1;background:#21423c;border-radius:50%;place-items:center;width:150px;height:150px;font-size:53px;font-weight:700;display:grid}.login-visual>p{text-align:center;color:#8fa99f;letter-spacing:-.6px;font-size:24px;line-height:1.5;position:absolute;bottom:80px}.login-visual strong{color:#d8ece3;font-weight:500}.setup-list{color:var(--muted);padding-left:18px;font-size:12px;line-height:1.9}.login-page:has(.setup-list){background:var(--background);padding:50px 0;display:block}.login-page:has(.setup-list) .login-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;max-width:570px;margin:auto}.login-page:has(.setup-list) h1{font-size:30px}@media (min-width:1550px){.main-content{padding:40px 50px}.topbar{padding:0 50px}.summary-value{font-size:32px}.dashboard-grid{grid-template-columns:1.45fr 1fr}.summary-card{padding:23px}.bar{width:25px}.cash-chart,.expense-chart{min-height:290px}.bar-chart{height:180px}.expense-chart-content{padding-top:25px}.donut{width:160px;height:160px}.donut>div{width:122px;height:122px}}@media (max-width:1200px){.sidebar{width:207px;padding-left:15px;padding-right:15px}.main-shell{margin-left:207px}.main-content{padding:28px 23px}.topbar{padding:0 23px}.summary-grid{gap:12px}.summary-card{padding:16px 15px}.summary-value{font-size:23px}.summary-card-top{font-size:11px}.summary-label{font-size:9px}.panel{padding:18px}.dashboard-grid{grid-template-columns:1.2fr 1fr;gap:15px}.chart-legend{gap:4px;font-size:8px}.chart-legend>span{margin-left:1px}.expense-chart-content{gap:15px}.donut{width:120px;height:120px}.donut>div{width:92px;height:92px}.donut strong{font-size:15px}.expense-legend{font-size:10px}.transaction-table td,.transaction-table th{padding-left:11px;padding-right:11px}.filter-selects{gap:5px}.filter-selects select{max-width:140px;font-size:9px}.search-field{max-width:260px}.filter-toolbar{gap:8px}.period-control input{max-width:125px}.new-transaction{padding:10px 12px;font-size:12px}.category-form{flex-wrap:wrap}.category-form .field{min-width:140px}}@media (max-width:1000px){.sidebar{width:185px;padding:26px 12px 15px}.main-shell{margin-left:185px}.sidebar-brand{padding:0 3px;font-size:23px}.brand-caption{font-size:6px}.workspace-chip{gap:7px;padding:11px 8px}.workspace-avatar{width:28px;height:28px}.workspace-chip span{font-size:9px}.nav-item{gap:9px;padding:12px 10px;font-size:11px}.sidebar-tip{padding:14px}.main-content{padding:26px 20px}.page-header{align-items:flex-start}.header-actions{flex-direction:column;align-items:flex-end;gap:8px}.period-control{height:37px;padding:6px 9px}.new-transaction{height:37px;min-height:37px;padding:6px 12px}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.summary-card{min-height:140px;padding:18px}.summary-value{font-size:28px}.summary-card-top{font-size:12px}.summary-label{font-size:10px}.dashboard-grid{grid-template-columns:1fr}.cash-chart{min-height:265px}.bar{width:28px}.expense-chart-content{justify-content:flex-start;gap:40px;padding:8px 0}.donut{width:138px;height:138px;margin-left:20px}.donut>div{width:105px;height:105px}.expense-legend{max-width:none;font-size:12px}.expense-legend>div{margin-bottom:10px}.expense-chart{min-height:225px}.chart-legend{font-size:10px}.pending-strip{gap:10px;padding:14px 16px}.pending-strip-icon{display:none}.projection{min-width:100px;padding-left:15px}.pending-strip>div:nth-child(2){max-width:260px}.filter-selects{flex:1}.filter-toolbar .search-field{flex-basis:100%;max-width:100%}.filter-selects select{flex:1;min-width:0;max-width:none;font-size:10px}.category-columns,.settings-grid{grid-template-columns:1fr}.transaction-table{min-width:590px}.page-footer{gap:10px}.page-footer>span{max-width:160px}.table-heading-actions{gap:10px}}@media (max-width:760px){.sidebar{display:none}.main-shell{margin-left:0}.topbar{height:60px;padding:0 20px}.breadcrumbs{gap:8px;font-size:10px}.topbar-right{gap:12px}.user-avatar{width:28px;height:28px}.connection-status{font-size:9px}.main-content{padding:26px 18px 99px}.page-header{margin-bottom:23px}.page-header h1{font-size:27px}.eyebrow{letter-spacing:1.4px;margin-bottom:9px;font-size:8px}.page-description{max-width:220px;font-size:11px}.header-actions{gap:9px}.period-control input{max-width:108px;font-size:10px}.period-control{gap:6px}.period-control>svg{width:14px}.new-transaction{min-height:36px;font-size:11px}.new-transaction svg{width:16px}.local-banner{align-items:flex-start;padding:9px 11px;font-size:10px}.local-dot{margin-top:6px}.summary-grid{gap:12px;margin-bottom:18px}.summary-card{min-height:136px;padding:16px}.summary-card-top{margin-bottom:14px;font-size:10px}.summary-icon{border-radius:8px;width:28px;height:28px}.summary-icon svg{width:18px;height:18px}.summary-value{font-size:25px}.summary-label{margin-top:12px;font-size:8px}.panel{padding:18px}.dashboard-grid{gap:16px;margin-bottom:18px}.cash-chart{min-height:254px}.panel-title h2{font-size:14px}.panel-title p{font-size:9px}.chart-legend{font-size:8px}.bar-chart{height:157px;margin-top:22px}.bar{width:22px}.expense-chart{min-height:218px}.expense-chart-content{gap:32px}.expense-legend{font-size:11px}.pending-strip{flex-wrap:wrap;gap:12px;margin-bottom:18px;padding:14px 16px}.pending-strip>div:nth-child(2){flex-basis:100%;max-width:none}.pending-strip strong{font-size:12px}.pending-strip p{font-size:10px}.payable-link{flex:1;margin-top:4px}.projection{flex:1;margin:4px 0 0;padding-left:18px}.transaction-panel{padding:0}.transaction-panel>.panel-title{margin-bottom:16px;padding:18px 16px 0}.transaction-panel h2{font-size:13px}.table-heading-actions{gap:8px}.table-heading-actions .text-button{font-size:10px}.export-button{padding:6px 9px!important}.export-button span{display:none}.filter-toolbar{gap:9px;padding:0 16px 15px}.filter-toolbar .search-field{flex-basis:0;min-width:0;max-width:none;height:37px}.search-field input{font-size:10px}.mobile-filter-toggle{min-height:37px!important;font-size:10px!important;display:flex!important}.filter-selects{flex-wrap:wrap;flex-basis:100%;gap:8px;display:none}.filter-selects.open{display:flex}.filter-selects select{flex:1;min-width:130px;font-size:10px}.clear-filters{margin-left:auto}.table-scroll{overflow:visible}.transaction-table{width:100%;min-width:0;display:block}.transaction-table thead{display:none}.transaction-table tbody{width:100%;display:block}.transaction-table tr{border-bottom:1px solid var(--border);grid-template-columns:1fr auto 30px;grid-template-areas:"description amount actions""category status status""date status status";gap:7px 9px;padding:15px 16px;display:grid;position:relative}.transaction-table tr:last-child{border-bottom:0}.transaction-table td{display:block;border:0!important;height:auto!important;padding:0!important}.description-cell{grid-area:description;width:auto;max-width:none}.description-wrap{align-items:flex-start;gap:9px}.description-wrap strong{max-width:240px;font-size:11px}.description-wrap>div>span{font-size:9px}.transaction-icon{border-radius:8px;width:30px;height:30px}.transaction-icon svg{width:17px}.category-cell{grid-area:category;margin-left:39px;padding-left:39px!important}.category-pill{padding:3px 6px;font-size:8px}.date-cell{grid-area:date;margin-left:39px;font-size:9px}.status-cell{grid-area:status;place-self:center end;margin-right:0}.amount-cell{grid-area:amount;align-self:start;margin-top:3px}.amount-cell strong{font-size:11px}.amount-cell small{font-size:8px}.actions-cell{grid-area:actions;align-self:start}.desktop-edit{display:none}.status-badge{font-size:8px}.table-footer{padding:13px 16px;font-size:8px}.dashboard-footnote{margin:12px 1px 0;font-size:8px;line-height:1.8}.page-footer{flex-wrap:wrap;gap:10px;margin-top:22px;font-size:8px}.page-footer>span{max-width:none}.page-footer .text-button{font-size:8px}.mobile-nav{border-top:1px solid var(--border);background:var(--surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:7px 9px max(9px, env(safe-area-inset-bottom));z-index:30;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -5px 25px #16313b04}.mobile-nav button{min-width:64px;min-height:50px;color:var(--muted);background:0 0;border:0;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:5px;font-size:9px;display:flex}.mobile-nav button.active{color:#287864;background:#edf6f2}.mobile-nav button svg{width:20px}.modal{border-radius:13px;width:calc(100% - 22px);max-height:94dvh}.modal-header{padding:18px}.modal-header h2{font-size:18px}.modal-header p{font-size:10px}.modal-body{padding:19px 18px}.field{font-size:11px}.field input,.field select,.field textarea{padding:10px 11px;font-size:16px}.form-grid{gap:11px}.modal-footer .button,.segmented button{font-size:12px}.settlement-box{padding:12px}.settlement-row{grid-template-columns:1fr 1fr 24px;gap:7px}.settlement-row .field{font-size:9px}.settlement-row .field input{padding:9px 6px;font-size:13px}.section-line{font-size:11px}.section-line span{font-size:10px}.toast{width:max-content;max-width:calc(100% - 24px);padding:13px 17px;font-size:11px;bottom:90px}.category-columns{gap:15px}.category-form{gap:12px}.category-form .field{min-width:120px}.category-form>.field:nth-child(2){max-width:130px}.category-form .button{flex:1;font-size:12px}.category-row{gap:5px;padding:14px 0}.category-row strong{font-size:12px}.category-row .row-actions{gap:10px}.category-row .text-button{font-size:10px}.settings-grid{gap:15px}.settings-grid .form-grid{grid-template-columns:1fr}.import-inputs{grid-template-columns:1fr 100px;gap:10px}.import-inputs input[type=file]{font-size:11px}.import-preview{grid-template-columns:1fr}.import-row>input,.import-row .field input,.import-row .field select{font-size:14px}.import-panel>.button{white-space:normal;max-width:100%;font-size:11px}.custom-period{gap:10px}.custom-period .field{flex:1;max-width:calc(50% - 5px)}.custom-period{flex-wrap:wrap}.custom-period>.text-button{flex-basis:100%;margin-top:-8px}.login-page{background:var(--surface-subtle);min-height:100dvh;padding:55px 15px;display:block}.login-card{max-width:430px;margin:auto;padding:30px 25px}.login-card h1{font-size:32px}.login-card>.brand-mark{margin-bottom:40px}.login-visual{display:none}.login-card .field input{font-size:16px}.login-card form{margin-top:35px}.login-page:has(.setup-list){padding:25px 12px}.login-page:has(.setup-list) .login-card{padding:25px}.login-page:has(.setup-list) h1{font-size:25px}.error-banner{padding:10px;font-size:11px}.help-content p{font-size:12px}.error-banner .text-button{font-size:10px}}@media (max-width:390px){.main-content{padding:23px 12px 95px}.page-header{gap:8px}.page-header h1{font-size:23px}.page-description{max-width:160px;font-size:10px}.summary-grid{gap:9px}.summary-card{padding:13px}.summary-value{font-size:22px}.summary-card-top{font-size:9px}.summary-label{font-size:7px}.new-transaction{gap:4px;padding:8px 9px;font-size:10px}.period-control{gap:4px;padding:7px}.period-control input{max-width:98px;font-size:9px}.expense-chart-content{gap:20px}.donut{width:125px;height:125px;margin-left:0}.donut>div{width:96px;height:96px}.chart-legend{font-size:7px}.panel-title p{font-size:8px}.description-wrap strong,.amount-cell strong{font-size:10px}.transaction-table tr{padding:14px}.form-grid,.import-inputs{grid-template-columns:1fr}.import-row .form-grid{grid-template-columns:1fr 1fr}.settlement-row .field input{font-size:12px}.topbar{padding:0 14px}.topbar-right{gap:7px}.user-avatar{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important}}.summary-card:disabled{cursor:default}.summary-card:disabled .summary-value{white-space:normal;letter-spacing:0;font-size:18px}.sidebar-brand{letter-spacing:-.4px;gap:11px;margin-bottom:25px;font-size:18px;font-weight:650;line-height:1.25}.app-symbol{color:#98dfbc;background:#19392e;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.workspace-chip{flex-direction:column;align-items:flex-start;gap:12px;padding:12px}.store-logo{background:#030803;border-radius:5px;width:100%;max-width:196px;height:auto;display:block;overflow:hidden}.store-banner{border-radius:var(--radius);background:#030803;height:clamp(130px,16vw,210px);margin-bottom:26px;overflow:hidden}.store-banner img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.theme-toggle{border:1px solid var(--border);background:var(--surface);width:44px;height:44px;color:var(--text)}.theme-toggle:hover{background:var(--surface-subtle)}.theme-sun,[data-theme=dark] .theme-moon{display:none}[data-theme=dark] .theme-sun{display:block}.login-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:36px;display:flex}.login-visual{background:#030803;flex-direction:column;gap:45px;padding:40px 0}.login-banner{border-radius:0;width:100%;height:auto;margin:0}.login-banner img{object-fit:contain;height:auto}.login-visual>p{color:#b3cbbd;margin:0 24px;font-size:22px;position:static}[data-theme=dark] .summary-card.income{--kpi-background:#19392e;--kpi-border:#35634e;--kpi-accent:#98dfbc;--kpi-label:#b1d7c2;--kpi-icon:#284f3e}[data-theme=dark] .summary-card.expense{--kpi-background:#412925;--kpi-border:#754b42;--kpi-accent:#ffc3b3;--kpi-label:#e2bab0;--kpi-icon:#613c35}[data-theme=dark] .summary-card.pending{--kpi-background:#3b321e;--kpi-border:#6e5d32;--kpi-accent:#f4d58a;--kpi-label:#ddc99d;--kpi-icon:#554728}[data-theme=dark] .summary-card.balance{--kpi-background:#1e334a;--kpi-border:#3d6084;--kpi-accent:#b1d5ff;--kpi-label:#bdcfe5;--kpi-icon:#2d4b69}[data-theme=dark] .connection-status,[data-theme=dark] .connection-status.offline{color:var(--muted)}[data-theme=dark] .button.secondary{color:var(--text)}[data-theme=dark] .mobile-nav button.active{color:var(--positive-text);background:var(--positive-bg)}@media (max-width:760px){.breadcrumbs>svg,.breadcrumbs>strong,.topbar .connection-status{display:none}.breadcrumbs>span{color:var(--text);font-size:12px;font-weight:650}.store-banner{height:auto;margin-bottom:22px}.store-banner img{object-fit:contain;height:auto}.login-page:not(:has(.setup-list)){flex-direction:column;padding:20px 16px 35px;display:flex}.login-visual{border-radius:12px;order:-1;align-self:center;width:100%;max-width:430px;min-height:0;padding:0;display:flex}.login-visual>p{display:none}.login-banner{margin-bottom:0}.login-card{margin:0 auto;padding:28px 15px}.login-card h1{font-size:30px}.login-heading{margin-bottom:25px}}.sidebar>*{flex-shrink:0}
