@import "https://fonts.googleapis.com/css2?family=Saira+Semi+Condensed:wght@400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Gidole&display=swap";:root{color:#213047;background:#f5f7fb;font-family:Saira Semi Condensed,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.setup,.auth{place-items:center;min-height:100vh;padding:24px;display:grid}.auth{background:#f5f8fd}.card{background:#fff;border:1px solid #e2eaf3;border-radius:15px;gap:12px;padding:20px;display:grid}.auth .card{width:390px;max-width:100%}h1{font-weight:500}h2{margin:0;font-size:19px;font-weight:500}label{color:#62738b;gap:5px;font-size:14px;display:grid}input,select,textarea{border:1px solid #dce4ee;border-radius:8px;padding:9px}.primary{color:#fff;background:#196dc9;border:0;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:10px;display:flex}.link{color:#196dc9;background:0 0;border:0}.err{color:#ad3041}.online,.offline{color:#277a59;align-items:center;gap:6px;display:flex}.offline{color:#ad5360}.desktop{grid-template-columns:220px 1fr;min-height:100vh;display:grid}.desktop>aside{background:#fff;border-right:1px solid #e2eaf3;flex-direction:column;gap:30px;padding:25px 16px;display:flex}.desktop aside button{background:0 0;border:0;gap:6px;margin-top:auto;display:flex}.desktop section{width:100%;max-width:1200px;margin:auto;padding:30px}.desktop header,.mobile header{justify-content:space-between;align-items:start;display:flex}.desktop header h1{margin:4px 0 25px}.kpis{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px;display:grid}.kpi{background:#fff;border:1px solid #e2eaf3;border-radius:14px;padding:18px}.kpi strong{color:#246d57;font-family:Gidole,Saira Semi Condensed,sans-serif;font-size:27px;font-weight:400;display:block}.columns{grid-template-columns:340px 1fr;gap:18px;display:grid}.columns p{border-top:1px solid #eef2f6;align-items:center;gap:8px;margin:0;padding:10px 0;display:flex}.columns p strong{margin-left:auto}.muted{opacity:.5}.mobile{background:#f6f8fc;max-width:560px;min-height:100svh;margin:auto;padding:20px 17px}.mobile>small{color:#72829a;margin:12px 0;display:block}.mobile label{margin-bottom:14px}.toggle{grid-template-columns:1fr 1fr;gap:8px;display:grid}.toggle button{background:#fff;border:1px solid #e0e7ef;border-radius:8px;padding:10px}.toggle .on.income{color:#257b59;background:#e9f8f1}.toggle .on.expense{color:#ae5361;background:#fff0f1}.mobile h2{margin:22px 0 10px}.grid{grid-template-columns:1fr 1fr;gap:10px;max-height:55vh;display:grid;overflow:auto}.grid button{text-align:left;background:#fff;border:1px solid #dfe8f2;border-radius:12px;min-height:85px;padding:12px;display:grid}.grid button strong{font-family:Gidole,Saira Semi Condensed,sans-serif;font-size:21px;font-weight:400}.toast{color:#fff;background:#173b67;border-radius:9px;gap:6px;padding:10px 13px;display:flex;position:fixed;bottom:70px;left:50%;transform:translate(-50%)}.cancel{color:#a54d5a;background:#fff;border:1px solid #e4cad0;border-radius:8px;justify-content:center;gap:6px;width:100%;margin-top:18px;padding:10px;display:flex}@media (width<=700px){.desktop{grid-template-columns:1fr}.desktop>aside{flex-direction:row;padding:13px}.desktop>aside nav{display:none}.desktop>aside button{margin:0 0 0 auto}.desktop section{padding:18px 14px}.kpis,.columns{grid-template-columns:1fr}}.charts{min-width:0}.chart-toolbar{background:#eef3fa;border:1px solid #e1e9f2;border-radius:12px;flex-wrap:wrap;align-items:end;gap:14px;padding:16px;display:flex}.chart-toolbar label{min-width:140px}.chart-toolbar input,.chart-toolbar select,.chart-donut-heading select{color:#29415e;background:#fff;min-width:0}.chart-period-nav{color:#476583;flex-wrap:wrap;align-items:center;gap:9px;font-size:14px;display:flex}.chart-period-nav button{justify-content:center;align-items:center;min-height:38px;display:flex}.chart-caption,.chart-donut-heading p{color:#6b7e94;margin:10px 0 18px;font-size:13px;line-height:1.5}.chart-donut-heading{justify-content:space-between;align-items:center;gap:18px;margin:24px 0 14px;display:flex}.chart-donut-heading h2{font-size:18px;font-weight:500}.chart-donut-heading p{margin:4px 0 0}.chart-donut-heading label{min-width:200px}.chart-donuts{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.chart-card{background:#fff;border:1px solid #dce5ef;border-radius:15px;min-width:0;margin-bottom:18px;padding:22px}.chart-card h2,.chart-card h3{margin:0;font-size:18px;font-weight:500}.chart-card>.chart-donut-heading{margin-top:0}.donut-content{align-items:center;gap:14px;display:flex}.donut-content svg{flex-shrink:0;width:48%;min-width:140px;max-width:220px}.donut-label{fill:#677e97;font:13px Saira Semi Condensed,sans-serif}.donut-value{fill:#29496b;font:23px Gidole,sans-serif}.donut-details{flex:1;min-width:0}.donut-details>strong{font-size:19px;font-weight:400}.chart-legend{max-height:240px;margin:14px 0 0;padding:0;list-style:none;overflow:auto}.chart-legend li{align-items:flex-start;gap:8px;margin:10px 0;font-size:14px;display:flex}.chart-legend li>div{overflow-wrap:anywhere;min-width:0}.chart-legend small{color:#62758c;font-size:12px;display:block}.chart-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px;margin-top:6px}.chart-empty{color:#708199;padding:14px 0;font-size:14px}.chart-loading{text-align:center;color:#607b97;background:#fff;border:1px solid #e2e9f1;border-radius:12px;padding:50px}.chart-key{color:#536c86;flex-wrap:wrap;gap:10px 20px;margin:12px 0 20px;font-size:13px;display:flex}.chart-key span{align-items:center;gap:7px;display:inline-flex}.chart-key i{border-radius:3px;width:10px;height:10px;display:block}.bar-list{gap:22px;display:grid}.bar-point{grid-template-columns:minmax(80px,140px) minmax(0,1fr);align-items:center;gap:16px;display:grid}.bar-name{overflow-wrap:anywhere;font-size:14px}.bar-name small{color:#7d8c9e;display:block}.bar-pair{gap:7px;display:grid}.bar-row{grid-template-columns:minmax(0,1fr) 130px;align-items:center;gap:14px;display:grid}.bar-row>.amount{text-align:right;font-size:15px}.bar-track{background:#f4f7fb;border-radius:5px;height:19px;display:block;overflow:hidden}.bar-fill{background:#308c79;border-radius:5px;height:100%;display:block}.bar-track.expense .bar-fill{background:#d3788e}.line-chart{width:100%;min-width:600px;display:block;overflow:visible}.line-scroll{padding-top:8px;overflow-x:auto}.chart-tick{fill:#647a93;font:12px Gidole,sans-serif}.line-chart rect:focus{outline-offset:-1px;fill:#368adb0b;outline:1px solid #417fc2}.chart-readout{background:#edf4fc;border-radius:8px;flex-wrap:wrap;gap:12px;margin:8px 0;padding:10px 14px;font-size:13px;display:flex}.chart-readout strong{font-weight:500}.chart-data{color:#526d8a;margin-top:16px;font-size:13px}.chart-data summary{cursor:pointer;padding:8px 0}@media (width<=1100px){.chart-donuts{grid-template-columns:1fr}.donut-content svg{max-width:210px}.chart-legend{max-height:200px}}@media (width<=700px){.chart-toolbar{padding:12px}.chart-toolbar label{flex:1;min-width:0}.chart-donut-heading{flex-direction:column;align-items:stretch;gap:12px}.chart-card{padding:16px}.bar-point{grid-template-columns:1fr;gap:7px}.bar-row{grid-template-columns:minmax(0,1fr) 105px}.donut-content{gap:8px}.donut-content svg{min-width:120px}.chart-period-nav{font-size:12px}.desktop>aside .app-nav{flex-wrap:wrap}}.configuration{width:100%}.cfg-intro{color:#62738b;margin:0 0 18px}.cfg-tabs{background:#e9eff7;border-radius:11px;flex-wrap:wrap;gap:6px;margin-bottom:20px;padding:5px;display:flex}.cfg-tabs button{color:#4b607a;white-space:nowrap;background:0 0;border:0;border-radius:8px;flex:1;padding:10px 14px}.cfg-tabs button[aria-selected=true]{color:#145fae;background:#fff;box-shadow:0 2px 8px #183c6812}.cfg-layout{grid-template-columns:minmax(240px,340px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.cfg-panel{background:#fff;border:1px solid #dce5ef;border-radius:14px;min-width:0;padding:20px}.cfg-panel h2{margin-bottom:16px;font-size:18px}.cfg-panel fieldset{border:0;gap:14px;min-width:0;margin:0;padding:0;display:grid}.cfg-panel input,.cfg-panel select{color:#263d57;background:#fff;width:100%;min-width:0}.cfg-panel .cfg-check{color:#334e6b;align-items:center;gap:8px;display:flex}.cfg-check input{accent-color:#196dc9;width:17px;height:17px}.cfg-points{border:1px solid #e0e7ef;border-radius:8px;gap:9px;padding:12px;display:grid}.cfg-actions{flex-wrap:wrap;gap:8px;display:flex}.secondary{color:#245280;background:#f8fafd;border:1px solid #cad8e8;border-radius:8px;padding:7px 12px}.cfg-row{border-bottom:1px solid #edf1f6;justify-content:space-between;align-items:center;gap:12px;padding:13px 0;display:flex}.cfg-row:last-child{border:0}.cfg-row>div{overflow-wrap:anywhere;min-width:0}.cfg-row strong{font-weight:500}.cfg-row small{color:#60748d;display:block}.cfg-empty{color:#657b95;font-size:15px;line-height:1.5}.cfg-success,.cfg-error,.cfg-warning{border-radius:9px;margin:12px 0;padding:11px 14px}.cfg-success{color:#246946;background:#e6f6ee}.cfg-error{color:#a42e44;background:#ffedf0}.cfg-warning{color:#765316;background:#fff5d9}button:disabled{opacity:.55;cursor:not-allowed}input:focus-visible,select:focus-visible,button:focus-visible{outline-offset:2px;outline:2px solid #3986d7}.desktop .app-nav{gap:6px;display:grid}.desktop .app-nav button{color:#506783;border-radius:8px;margin:0;padding:10px 12px;font-size:15px}.desktop .app-nav button.selected{color:#135eae;background:#e6f0fd}.desktop>section{align-self:start}.amount{font-family:Gidole,Saira Semi Condensed,sans-serif}@media (width<=900px){.cfg-layout{grid-template-columns:1fr}.desktop{grid-template-columns:170px 1fr}}@media (width<=700px){.desktop{grid-template-columns:1fr}.desktop>aside{flex-wrap:wrap;gap:12px}.desktop>aside .app-nav{order:3;gap:6px;width:100%;display:flex}.cfg-tabs button{padding:8px;font-size:14px}.cfg-panel{padding:16px}.cfg-row{align-items:flex-start}}.desk-shell{align-items:stretch}.desk-shell>.desk-content{align-self:start;min-width:0;max-width:1500px;margin:0 auto;padding:28px 30px}.desk-shell>aside{align-self:start;height:100svh;position:sticky;top:0}.desk-brand{color:#173b66;letter-spacing:.04em;font-size:21px;font-weight:500}.desk-brand span{color:#647f9f;font-size:13px;font-weight:400}.desk-account{color:#29415e;overflow-wrap:anywhere;min-width:0;margin-top:auto;padding:14px 8px 4px;font-size:14px}.desk-account small{color:#647790;margin-bottom:4px;font-size:12px;display:block}.desk-shell .desk-logout{color:#62738b;align-items:center;margin-top:8px}.desk-header{align-items:flex-start;gap:20px;margin-bottom:24px}.desk-header small,.desk-caption{color:#647790;font-size:14px}.desk-header p{color:#62738b;margin:0}.desk-shell .desk-header h1{margin:5px 0 4px;font-size:26px}.desk-connection{justify-items:end;gap:10px;font-size:13px;display:grid}.desk-connection button{align-items:center;gap:7px;display:flex}.desk-shell .kpi{border-top:3px solid #8daed3;padding:20px}.desk-shell .kpi.income{border-top-color:#74b69a}.desk-shell .kpi.expense{border-top-color:#d597a0}.desk-shell .kpi strong{color:#244e72;margin-top:8px;font:400 26px Gidole,sans-serif}.desk-shell .kpi.income strong{color:#23744f}.desk-shell .kpi.expense strong{color:#aa4055}.desk-caption{margin:0 0 24px}.desk-panel{background:#fff;border:1px solid #dce5ef;border-radius:14px;min-width:0;margin-bottom:18px;padding:20px}.desk-panel h2{margin:0;font-size:18px;font-weight:500}.desk-panel-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.desk-add{width:max-content}.desk-table-wrap{overflow-x:auto}.desk-table{border-collapse:collapse;text-align:left;width:100%;font-size:14px}.desk-table th{color:#63788f;white-space:nowrap;background:#f7f9fc;border-bottom:1px solid #e1e8f1;padding:11px;font-size:12px;font-weight:500}.desk-table td{vertical-align:top;border-bottom:1px solid #edf1f6;padding:13px 11px}.desk-table tr:last-child td{border:0}.desk-table small{color:#6c7c90;margin-top:3px;font-size:12px;display:block}.desk-table .numeric{text-align:right;white-space:nowrap}.desk-table .amount{font:400 16px Gidole,sans-serif}.desk-table .note-cell{overflow-wrap:anywhere;min-width:140px;max-width:270px}.kind{white-space:nowrap;align-items:center;gap:2px;display:inline-flex}.kind.income{color:#247452}.kind.expense{color:#a34155}.desk-status{color:#2d6c49;white-space:nowrap;background:#eaf6ee;border-radius:5px;padding:3px 7px;font-size:12px}.desk-status.canceled{color:#904258;background:#f4e9ec}.desk-table .is-canceled .amount{color:#7a7f8a;text-decoration:line-through}.desk-empty{text-align:center;color:#687e96;padding:32px 12px}.desk-danger{color:#9e354c;white-space:nowrap;background:#fff6f7;border:1px solid #e5c0c8;border-radius:8px;padding:7px 10px}.desk-manual{border:0;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:14px;min-width:0;margin:16px 0 0;padding:0;display:grid}.desk-manual input,.desk-manual select,.desk-filters input,.desk-filters select{color:#29415e;background:#fff;width:100%;min-width:0}.desk-manual .primary{width:max-content}.desk-filters{background:#f7f9fc;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0 22px;padding:14px;display:grid}.desk-filter-actions{grid-column:1/-1;gap:8px;display:flex}.desk-pagination{color:#637891;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;font-size:13px;display:flex}.desk-pagination>div{gap:7px;display:flex}.desk-modal-backdrop{z-index:100;background:#182d4b66;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.desk-modal{background:#fff;border:1px solid #d6e1ed;border-radius:15px;width:min(100%,440px);max-height:90svh;padding:24px;overflow:auto;box-shadow:0 20px 70px #17325040}.desk-modal h2{font-size:21px;font-weight:500}.desk-modal p{color:#5e718a}.desk-modal textarea{resize:vertical;min-height:75px}.desk-modal .cfg-actions{margin-top:18px}@media (width<=1000px){.desk-manual,.desk-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.desk-shell>.desk-content{padding:22px 18px}}@media (width<=700px){.desk-shell>aside{height:auto;position:static}.desk-header{flex-wrap:wrap}.desk-connection{align-items:center;gap:12px;display:flex}.desk-shell>.desk-content{padding:18px 14px}.desk-panel{padding:15px}.desk-panel-heading{flex-wrap:wrap}.desk-table{min-width:620px}.desk-manual,.desk-filters{grid-template-columns:1fr}.desk-pagination{flex-wrap:wrap}.desk-shell .kpi strong{font-size:24px}}
