:root{color:#202e40;background:#f3f6fa;font-family:Arial,Helvetica,sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #38c4a5}button{color:inherit;background:0 0;border:0}input,select{color:#233247;background:#fff;border:1px solid #dbe2e8;border-radius:7px;width:100%;min-height:42px;padding:10px 12px}label{flex-direction:column;gap:7px;font-size:14px;font-weight:600;display:flex}h1,h2,p{margin:0}h1{letter-spacing:-1px;font-size:32px;line-height:1.3}h2{font-size:18px;font-weight:600}p{color:#748193;margin-top:8px;font-size:14px;line-height:1.5}.shell{min-height:100vh;display:flex}.sidebar{color:#bbc5d4;background:#101c2e;flex-direction:column;flex-shrink:0;width:238px;padding:35px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{color:#fff;align-items:center;gap:11px;padding:0 9px;font-size:21px;font-weight:700;display:flex}.brand div span{letter-spacing:3px;color:#8393a8;margin-top:5px;font-size:12px;display:block}.monogram{color:#0f2435;background:#2bdbb1;border-radius:10px;place-items:center;width:41px;height:41px;font-size:28px;display:grid}.navlabel{letter-spacing:1.5px;color:#6b7c94;margin:52px 12px 18px;font-size:12px}nav{gap:9px;display:grid}nav button{text-align:left;border-radius:8px;align-items:center;gap:11px;padding:14px 12px;font-size:14px;display:flex}nav button.active{color:#53e5c5;background:#1d3745}nav button:hover{background:#203044}.side-bottom{align-items:center;gap:10px;margin-top:auto;padding-top:30px;font-size:14px;display:flex}.avatar{color:#fff;background:#26394d;border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.side-bottom small{color:#73859a;margin-top:5px;font-size:12px;display:block}.workspace{width:calc(100% - 238px);min-width:0;margin-left:238px}.topbar{background:#fff;border-bottom:1px solid #e4e9ee;justify-content:space-between;align-items:center;height:72px;padding:0 36px;font-size:14px;display:flex}.topbar>div{align-items:center;gap:15px;display:flex}.saved{color:#60778a;font-size:12px}.iconbtn{border-radius:6px;place-items:center;padding:8px;display:grid}.iconbtn:hover{background:#edf2f5}main{max-width:1580px;margin:auto;padding:32px 36px}.heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px;display:flex}.eyebrow{color:#788898;letter-spacing:1.6px;margin-bottom:8px;font-size:12px}.primary,.secondary,.danger{border-radius:7px;justify-content:center;align-items:center;gap:9px;padding:11px 17px;font-size:14px;font-weight:600;display:inline-flex}.primary{color:#fff;background:#10977c}.primary:hover{background:#097762}.secondary{background:#fff;border:1px solid #dce3ea}.danger{color:#fff;background:#bd354c}.bank-strip{color:#fff;background:#152a40;border-radius:12px;grid-template-columns:1.5fr 1fr 1fr 1.3fr;gap:25px;margin-bottom:25px;padding:23px 27px;display:grid}.bank-strip div{flex-direction:column;gap:9px;display:flex}.bank-strip span{color:#96acbf;letter-spacing:.5px;font-size:12px}.bank-strip strong{font-size:31px}.bank-strip b{font-size:17px;font-weight:500}.bank-strip small{color:#96acbf;font-size:12px}.bank-strip .positive{color:#45ddba}.bank-strip .negative{color:#ff8896}.tabs{border-bottom:1px solid #dce4ea;gap:26px;margin-bottom:24px;display:flex;overflow-x:auto}.tabs button{white-space:nowrap;color:#778495;border-bottom:3px solid #0000;padding:12px 0 15px;font-size:14px}.tabs button.selected{color:#108b73;border-color:#10977c;font-weight:600}.filters{flex-wrap:wrap;align-items:end;gap:14px;margin-bottom:22px;display:flex}.filters label{color:#778495;flex:1;min-width:130px;max-width:210px;font-size:12px}.textbtn{color:#108b73;padding:10px;font-size:14px}.kpis{grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:24px;display:grid}.kpis.three{grid-template-columns:repeat(3,1fr)}.kpi{background:#fff;border:1px solid #e1e7ec;border-radius:10px;flex-direction:column;gap:13px;min-width:0;padding:21px;display:flex}.kpi span{color:#768295;font-size:14px}.kpi strong{letter-spacing:-.6px;overflow-wrap:anywhere;font-size:27px}.kpi small{color:#8592a0;font-size:12px;line-height:1.4}.positive{color:#11947a}.negative{color:#d45364}.charts-grid{grid-template-columns:1.3fr 1fr;gap:22px;margin-bottom:22px;display:grid}.card{background:#fff;border:1px solid #e1e7ec;border-radius:10px;min-width:0;margin-bottom:22px;padding:24px}.charts-grid .card{margin-bottom:0}.card-head{justify-content:space-between;align-items:center;gap:15px;margin-bottom:12px;display:flex}.pill{color:#108b73;background:#e7f8f2;border-radius:7px;padding:8px 12px;font-size:14px}.chart{width:100%;height:245px;margin-top:25px;font-size:12px}.statlist{margin-top:23px}.statlist>div{border-bottom:1px solid #edf0f4;justify-content:space-between;align-items:center;gap:20px;padding:15px 0;font-size:14px;display:flex}.statlist span{color:#788494}.statlist strong{white-space:nowrap;font-size:16px}.table-wrap{margin-top:19px;overflow:auto}table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:14px}th{text-align:left;color:#7a8797;background:#f7f9fb;padding:13px;font-size:12px;font-weight:500}td{border-bottom:1px solid #edf1f4;padding:13px}tr:last-child td{border-bottom:0}.row-actions{gap:5px;display:flex}.row-actions button{color:#7c8b9c;padding:7px}.badge{border-radius:5px;padding:5px 9px;font-size:12px}.badge.buy{color:#108b73;background:#e5f5ef}.badge.sell{color:#cd5564;background:#fbecef}.notes{white-space:normal;overflow-wrap:anywhere;min-width:150px;max-width:300px}footer{color:#97a2af;margin-top:30px;font-size:12px}.overlay{z-index:10;background:#0b182ba8;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.dialog{background:#fff;border-radius:14px;width:580px;max-width:100%;max-height:90vh;padding:26px;overflow:auto;box-shadow:0 25px 80px #0003}.form-grid{grid-template-columns:1fr 1fr;gap:18px;margin-top:24px;display:grid}.dialog-actions{justify-content:end;gap:10px;margin-top:25px;display:flex}.error{color:#af3046;background:#fff0f2;border:1px solid #f2c3cc;border-radius:8px;margin:15px 0;padding:15px;font-size:14px;line-height:1.5}.empty,.loading{text-align:center;color:#778495;background:#fff;border:1px solid #e4e9ee;border-radius:10px;padding:60px 25px}.converter{gap:15px;margin-top:25px;display:flex}.convert-result{color:#108b73;margin-top:25px;font-size:32px;display:block}.goal-card svg{color:#11947a;margin-bottom:20px}.goal-card strong{overflow-wrap:anywhere;margin-top:20px;font-size:32px;display:block}@media (width>=1550px){.chart{height:285px}}@media (width<=1120px){.sidebar{width:205px;padding:30px 12px}.workspace{width:calc(100% - 205px);margin-left:205px}main{padding:25px 22px}.topbar{padding:0 22px}.bank-strip,.kpis{grid-template-columns:repeat(2,1fr)}.charts-grid{grid-template-columns:1fr}.kpis.three{grid-template-columns:repeat(3,1fr)}.kpi strong{font-size:24px}}@media (width<=720px){.shell{display:block}.sidebar{width:100%;padding:18px 16px;position:static}.brand{font-size:18px}.brand div span{font-size:10px}.monogram{width:34px;height:34px;font-size:23px}.navlabel,.side-bottom{display:none}nav{gap:5px;margin-top:18px;display:flex;overflow:auto}nav button{white-space:nowrap;padding:10px;font-size:14px}nav svg{display:none}.workspace{width:100%;margin:0}.topbar{height:54px;padding:0 16px}.topbar>span{display:none}.topbar>div{justify-content:end;width:100%}.saved{margin-right:auto}main{padding:23px 16px}.heading{align-items:start}.eyebrow{font-size:10px}h1{font-size:26px}.heading p{font-size:14px}.heading .primary{white-space:nowrap;padding:10px;font-size:12px}.bank-strip{gap:20px;padding:20px}.bank-strip strong{font-size:27px}.bank-strip b{font-size:15px}.tabs{gap:22px}.filters label{min-width:calc(50% - 14px);max-width:none}.kpis.three{grid-template-columns:1fr}.kpi{padding:17px}.kpi strong{font-size:23px}.card{padding:19px}.form-grid{grid-template-columns:1fr}.dialog{padding:20px}.statlist>div{align-items:start}.statlist strong{white-space:normal;text-align:right}.converter{flex-direction:column}}.vehicle-charts{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-bottom:22px;display:grid}.vehicle-charts .card{margin:0}.vehicle-progress-body{align-items:center;gap:20px;margin-top:20px;display:flex}.donut{flex-shrink:0;width:175px;height:175px;position:relative}.donut-label{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.donut-label strong{letter-spacing:-.5px;font-size:25px}.donut-label span{color:#7a8797;margin-top:5px;font-size:12px}.vehicle-chart-details{flex:1;min-width:0;font-size:14px}.vehicle-chart-details>div{flex-direction:column;gap:5px;margin-bottom:12px;display:flex}.vehicle-chart-details span{color:#7a8797}.vehicle-chart-details b{font-size:14px}.vehicle-chart-details i{border-radius:2px;width:9px;height:9px;margin-right:6px;display:inline-block}.legend-paid{background:#139d81}.legend-pending{background:#e5ebf2}.finance-sheet{padding:0;overflow:hidden}.sheet-title{color:#fff;background:#17365d;padding:22px 24px}.sheet-title p{color:#d3dfed}.sheet-help{padding:12px 24px 0}.finance-sheet .table-wrap{max-height:75vh;margin:14px 0 0}.annual-table{width:max-content;min-width:100%;font-size:14px}.annual-table th,.annual-table td{text-align:right;border:1px solid #d6dee6;min-width:112px;height:40px;padding:0}.annual-table thead th{color:#fff;text-align:center;z-index:2;background:#17365d;padding:12px;font-size:14px;position:sticky;top:0}.annual-table th:first-child{z-index:1;text-align:left;white-space:normal;background:#fff;min-width:260px;max-width:350px;padding:10px 14px;font-weight:500;position:sticky;left:0}.annual-table thead th:first-child{z-index:3;background:#17365d;font-weight:600}.annual-table td{font-variant-numeric:tabular-nums}.annual-table td:last-child{background:#edf3f9;padding:10px;font-weight:600}.sheet-cell{text-align:right;width:100%;height:100%;padding:10px 12px;font-size:14px}.sheet-cell:hover{background:#eaf5ff;box-shadow:inset 0 0 0 2px #418bbd}.annual-table .sheet-section th{text-align:left;color:#fff;letter-spacing:.5px;padding:10px 14px;font-size:14px;font-weight:600;position:static}.annual-table .income-heading th{background:#17365d}.annual-table .expense-heading th{background:#c55a11}.annual-table .sheet-income-total th,.annual-table .sheet-income-total td{background:#e2f0d9;padding:10px 12px;font-weight:600}.annual-table .sheet-subtotal th,.annual-table .sheet-subtotal td{background:#e4dfec;padding:10px 12px;font-weight:600}.annual-table .sheet-expenses-total th,.annual-table .sheet-expenses-total td{color:#fff;background:#c84829;padding:10px 12px;font-weight:600}.annual-table .sheet-accumulated th,.annual-table .sheet-accumulated td{background:#ddebf7;padding:10px 12px;font-weight:600}.annual-table .sheet-summary td{background:#f8fafc;padding:10px 12px}.annual-table .negative{color:#bd354c}@media (width<=1250px){.vehicle-charts{grid-template-columns:1fr}.vehicle-progress-body{gap:30px}.vehicle-chart-details{grid-template-columns:1fr 1fr;gap:12px;display:grid}}@media (width<=720px){.vehicle-progress-body{flex-direction:column;gap:12px}.vehicle-chart-details{width:100%}.annual-table th:first-child{min-width:190px;max-width:190px}.annual-table th,.annual-table td{min-width:104px}.sheet-title{padding:20px}.sheet-help{padding:12px 20px 0}.annual-table th:first-child{font-size:14px}}.auth-page{place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:#fff;border-radius:16px;width:100%;max-width:430px;padding:32px;box-shadow:0 12px 48px #10203815}.auth-card form{gap:18px;margin-top:24px;display:grid}.auth-card h1{margin-top:12px}.auth-card .primary{width:100%}.auth-card .error{margin-top:16px}.auth-card .secondary{width:100%;margin-top:12px}.account-email{overflow-wrap:anywhere;max-width:145px}
