:root{--bg:#030914;--base:#06121f;--panel:#0a1a2b;--panel2:#0d2234;--border:#193a50;--cyan:#12d9ff;--blue:#338dff;--green:#30dfb6;--amber:#ffd07a;--red:#ff7b91;--text:#ebf7ff;--muted:#8aaabc;--shadow:0 20px 55px #0008;--thin:1px solid var(--border)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:radial-gradient(ellipse 60% 40% at 78% 0,#0e63872b,transparent 70%),linear-gradient(180deg,#040b16,#020813);font:14px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}a{color:var(--cyan)}a:hover{opacity:.85}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(23px,2.8vw,34px);letter-spacing:-.045em;margin-bottom:2px;font-weight:820}h2{font-size:17px;letter-spacing:-.025em;margin:0;font-weight:780}h3{font-size:14px;margin:0 0 12px;font-weight:770}.muted{color:var(--muted)}.micro{font-size:11px;color:var(--muted)}.eyebrow{font:800 10px/1.5 Inter,system-ui,sans-serif;letter-spacing:.15em;color:#69c3dc}.eyebrow b{color:var(--amber)}.shell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh}.nav{background:linear-gradient(180deg,#061626,#06111e 48%,#030e18);border-right:1px solid #0f3b53;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;padding:23px 15px 14px;z-index:3;box-shadow:9px 0 35px #0004;overflow:hidden}.nav:before{content:"";position:absolute;width:150px;height:150px;top:-95px;left:60px;background:#00cfff33;filter:blur(60px);pointer-events:none}.nav-brand{text-align:center;border-bottom:1px solid var(--border);padding:0 10px 20px}.nav-brand img{display:block;width:100%;height:103px;object-fit:contain;filter:drop-shadow(0 6px 14px #0009)}.nav-scroller{overflow:auto;scrollbar-width:thin;scrollbar-color:#1d4c60 transparent;padding:12px 0;flex:1}.nav-label{font-weight:800;color:#577c96;font-size:9px;letter-spacing:.18em;margin:18px 13px 10px}.nav-btn{display:flex;align-items:center;width:100%;gap:10px;text-align:left;border:1px solid transparent;padding:12px 12px;background:none;color:#abc7d8;border-radius:12px;margin-bottom:4px;font-size:13px;font-weight:650;transition:.15s}.nav-btn:hover,.nav-btn.active{border-color:#14617e;background:linear-gradient(100deg,#0b405c,#0b2134);color:#f1fbff;box-shadow:inset 0 0 20px #06c4ff0e}.nav-btn.active{border-left:3px solid var(--cyan);box-shadow:0 0 18px #00bbff12,inset 0 0 20px #00c6ff12}.nav-icon{width:24px;font-size:19px;color:#32cfff;text-align:center}.nav-counter{margin-left:auto;border-radius:20px;background:#154256;color:var(--cyan);padding:1px 8px;font-size:10px}.nav-bottom{border-top:var(--thin);padding:15px 2px 4px}.connection{color:#9abcbd;font-size:11px;margin-bottom:13px;display:flex;gap:8px;align-items:center}.connection i,.status-dot,.blip{display:inline-block;width:6px;height:6px;background:#2df7be;border-radius:50%;box-shadow:0 0 12px #2df7be}.user-mini{display:flex;align-items:center;gap:10px}.avatar{display:grid;place-items:center;border:1px solid #277b9a;border-radius:12px;width:35px;height:35px;background:#0a344a;color:var(--cyan);font-size:12px;font-weight:800}.user-mini strong,.user-mini small{display:block;max-width:133px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-mini strong{font-size:12px}.user-mini small{font-size:10px;color:var(--muted)}.exit{margin-left:auto;font-size:22px;text-decoration:none}.main{padding:26px clamp(15px,2.2vw,34px) 20px;min-width:0;overflow:hidden}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap}.toolbar h1{margin-top:5px}.toolbar h1 .light{color:#7797aa;font-weight:400}.toolbar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.month-wrap{display:flex;align-items:center;gap:8px;color:var(--cyan);background:#0b2335;border:1px solid #255773;padding:8px 11px;border-radius:11px}.month-wrap input{background:none;border:0;color:#e4f7ff;min-height:28px;color-scheme:dark;outline:none}.clock{color:#98bad1;font-size:12px}.btn{border-radius:10px;padding:11px 17px;border:1px solid #1e7091;font-weight:780;color:#e4f7ff;background:#0b3047;white-space:nowrap;transition:.2s}.btn:hover{filter:brightness(1.17);transform:translateY(-1px)}.btn.primary{background:linear-gradient(110deg,#10dcf5,#2487ef);color:#00152a;border:0;box-shadow:0 0 19px #00ceff2c}.btn.secondary{background:#0c2c40}.btn.ghost{background:transparent;border:1px solid #254c60;color:#aacfe0}.btn.danger{border-color:#944258;color:#ffb8c5;background:#3c1926}.btn.small{padding:6px 10px;font-size:11px}.btn.block{width:100%}.link-btn{background:none;color:var(--cyan);border:0;font-size:12px;font-weight:750}.ticker{border:1px solid #144055;background:linear-gradient(90deg,#08192a,#071a27);display:flex;align-items:center;gap:15px;padding:8px 14px;border-radius:12px;color:#8bb7cc;font:680 10px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.03em;overflow:hidden;white-space:nowrap;margin-bottom:20px}.ticker-tag{color:#021624;background:var(--cyan);padding:5px 9px;border-radius:5px;font-weight:900}.ticker-run{margin-left:auto;color:var(--green);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.page{display:none;animation:show .3s ease}.page.active{display:block}@keyframes show{from{opacity:.25;transform:translateY(5px)}to{opacity:1;transform:none}}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:16px}.metric{position:relative;border:1px solid #205773;box-shadow:var(--shadow),inset 0 1px #ffffff10;background:radial-gradient(ellipse at 100% 0,#115b812f,transparent 50%),linear-gradient(155deg,#0d2b41,#091827 78%);border-radius:15px;min-height:124px;padding:17px 18px;overflow:hidden}.metric:before{content:"";height:2px;position:absolute;top:0;left:15px;right:15px;background:linear-gradient(90deg,transparent,#0ceaff,transparent)}.metric-label{display:flex;align-items:center;gap:8px;color:#a7cce0;font-size:11px;font-weight:700;letter-spacing:.03em}.metric-icon{color:var(--cyan);font-size:19px}.metric-value{font-size:clamp(18px,2.1vw,29px);font-weight:850;letter-spacing:-.05em;margin:9px 0 6px;line-height:1.1;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.metric-foot{color:var(--muted);font-size:11px}.metric-foot b{color:var(--green)}.metric.green .metric-value{color:var(--green)}.metric.amber .metric-value{color:var(--amber)}.metric.red .metric-value{color:var(--red)}.metric.skeleton{opacity:.45}.mini-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.mini-kpis .metric{min-height:110px}.grid{display:grid;gap:15px;margin-bottom:15px;min-width:0}.grid.two{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.form-side{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}.panel{background:linear-gradient(145deg,#0b2337,#071521 90%);border:1px solid #1c4861;border-radius:16px;padding:19px;box-shadow:var(--shadow),inset 0 1px #ffffff08;min-width:0;margin-bottom:15px}.grid>.panel{margin-bottom:0}.panel.deep{border-color:#197a9a;box-shadow:0 0 28px #00cdff10,inset 0 1px #ffffff10,var(--shadow)}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px;flex-wrap:wrap}.panel-head .sup{margin:0 0 4px;font-size:9px;letter-spacing:.18em;font-weight:860;color:#5f97b1}.panel-head .ico{color:var(--cyan)}.chip{color:#a4d9ec;border:1px solid #245870;background:#123245;padding:5px 9px;font-size:9px;letter-spacing:.07em;font-weight:800;border-radius:7px;white-space:nowrap}.chip.green{color:var(--green);border-color:#20645b;background:#12332f}.chip.cyan{color:var(--cyan)}.chip.red{color:var(--red);border-color:#673b53;background:#301d2d}.plot{height:250px;position:relative}.plot svg{width:100%;height:100%;overflow:visible}.plot text{font-size:11px;font-weight:600;fill:#87aac0}.plot .gridline{stroke:#2a536a;stroke-dasharray:3 7;stroke-width:1}.plot .gridzero{stroke:#38647d;stroke-width:1}.chart-foot{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:10px;margin-top:7px}.chart-foot span:last-child{color:#8ce4fb}.donut-area{display:flex;gap:20px;align-items:center;flex-wrap:wrap;min-height:194px}.donut{width:166px;height:166px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#0ba9e4 0 40%,#17dba8 40% 70%,#826cf3 70% 90%,#ffa94d 90%);box-shadow:0 0 25px #00d6ff19;flex-shrink:0}.donut-hole{background:#09192a;width:116px;height:116px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #15445f;text-align:center}.donut-hole small{color:var(--muted);font-size:10px}.donut-hole b{font-size:16px}.donut-key{flex:1;min-width:115px}.legend-row{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid #143648;font-size:11px}.legend-row:last-child{border:0}.legend-name{color:#bed6e2}.legend-name i{display:inline-block;width:8px;height:8px;border-radius:3px;margin-right:7px}.legend-row strong{font-size:11px}.slim-row{display:flex;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid #163748;align-items:center}.slim-row:last-child{border-bottom:0}.slim-row span{color:#9ebccd;font-size:12px}.slim-row strong{font-variant-numeric:tabular-nums;white-space:nowrap}.slim-row .subnote{font-size:10px;color:var(--muted);margin-top:3px}.progress{height:7px;border-radius:8px;background:#183246;overflow:hidden;margin:8px 0}.progress>div{height:100%;border-radius:inherit;background:linear-gradient(90deg,#00d9f6,#338aff)}.progress.green>div{background:linear-gradient(90deg,#15caa5,#72ffcb)}.split-stat{padding:10px 13px;border-radius:11px;background:#0d2c3d;border:1px solid #17445b;display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:8px}.split-stat strong{font-size:19px;color:#dffaff}.split-stat small{font-size:11px;color:var(--muted)}.split-stat.alt strong{color:var(--green)}.table-scroll{width:100%;overflow:auto;border:1px solid #1a3d51;border-radius:12px;scrollbar-color:#1a4b65 transparent}table{border-collapse:collapse;width:100%;min-width:560px;font-size:11px}th{background:#0e2c40;color:#8cb9cc;text-align:left;font-size:9px;letter-spacing:.065em;font-weight:900;padding:11px 12px;white-space:nowrap}td{padding:11px 12px;border-top:1px solid #163549;color:#c9deeb;vertical-align:middle}tbody tr:hover td{background:#102b3a}td.amount{color:#f3fdff;font-weight:790;white-space:nowrap}td .subvalue{display:block;color:var(--muted);font-size:10px}.right{text-align:right}.empty{color:#7e9eb3;padding:24px;text-align:center}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:3px 0 18px;flex-wrap:wrap}.section-head h2{font-size:24px}.section-head p{margin:3px 0 0;font-size:12px}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.formgrid>.span2{grid-column:span 2}.form-actions{display:flex;gap:8px;justify-content:flex-end;align-items:center;margin-top:4px;flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:14px}.formgrid label,.stack label,.field-stack label,.settings-highlight label{display:flex;flex-direction:column;gap:5px;color:#a9cada;font-size:12px;font-weight:700}input,select{width:100%;padding:11px 12px;border:1px solid #26546a;background:#081d2d;border-radius:9px;color:var(--text);min-height:44px;outline:0}input:focus,select:focus{border-color:#0dceff;box-shadow:0 0 0 2px #00daff19}input[type=date],input[type=month]{color-scheme:dark}input::placeholder{color:#62849a}.search{max-width:230px;min-height:37px}.field-stack{display:grid;gap:12px}.settings-highlight{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:15px 0;border:1px solid #22596a;background:#0c3041;border-radius:12px;padding:17px}.settings-highlight p{font-size:11px;margin:0}.settings-highlight label{min-width:150px}.info-slim{margin-top:12px;padding:11px 13px;border:1px solid #1e5265;background:#0b283b;border-radius:10px;font-size:11px;color:#aacbda}.info-wide{border:1px solid #2a5f74;color:#aed7e4;background:#0b283a;padding:16px;border-radius:12px;margin:18px 0;font-size:12px}.tag{display:inline-block;color:#92dff2;background:#0e3549;border:1px solid #22677f;padding:3px 8px;border-radius:50px;font-size:10px;font-weight:750;white-space:nowrap}.tag.gold{color:#ffcf81;background:#332514;border-color:#83613a}.tag.red{color:#ff9cb0;background:#331e2b;border-color:#7b4052}.tag.green{color:#63eebf;background:#11382f;border-color:#2b7361}.small-btn{padding:5px 8px;background:#103247;border:1px solid #27576d;color:#bdeeff;border-radius:7px;margin:2px;font-size:11px}.small-btn:hover{background:#144c61}.small-btn.warn{background:#321c2a;border-color:#794355;color:#ffacb7}.expense-line{margin-bottom:14px}.expense-line .labels{display:flex;justify-content:space-between;gap:15px;font-size:11px;margin-bottom:6px}.expense-line .labels span{color:#a9c4d6}.expense-line .labels strong{color:#ebfcff}.expense-track{height:8px;background:#102e42;border-radius:10px;overflow:hidden}.expense-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#0bc4db,#6a7eff)}.footer{font-size:10px;color:#5a8398;display:flex;justify-content:space-between;gap:16px;margin-top:35px;border-top:1px solid #173548;padding-top:19px;flex-wrap:wrap}.footer .status-dot{margin-right:7px}.notice{border:1px solid #ae7b39;background:#332714;color:#ffe1a8;padding:13px 15px;margin-bottom:15px;border-radius:10px;font-size:12px}.hidden{display:none!important}.owner-only{display:none}.owner-only.enabled{display:flex}.toast{position:fixed;bottom:24px;right:24px;z-index:20;padding:13px 16px;border:1px solid #1a9ab5;background:#11364a;border-radius:11px;box-shadow:0 15px 45px #000b;max-width:360px;color:white;display:none}.toast.visible{display:block}.toast.bad{background:#4a1c2d;border-color:#bc5876}.loading-layer{position:fixed;inset:0;display:grid;place-items:center;background:#020914b9;z-index:19;color:#b6f2ff;font-size:16px;font-weight:800}.install,.login-scene{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(ellipse at center 8%,#12668d36,transparent 55%),#030916}.install-card,.login-box{background:linear-gradient(165deg,#0d2c40,#081725 80%);border:1px solid #21627e;border-radius:22px;box-shadow:0 20px 80px #000b,0 0 35px #00ceff16;padding:32px;width:min(650px,100%);position:relative}.login-box{width:min(460px,100%);padding:40px}.login-logo,.install-logo{display:block;height:140px;width:100%;object-fit:contain;margin-bottom:16px}.login-box h1{font-size:26px}.login-box .muted{font-size:12px}.login-light{height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);position:absolute;left:10%;right:10%;top:0}.install-card .formgrid{margin:8px 0}.alert{border:1px solid #a64158;background:#431a2b;padding:12px;color:#ffb9c5;border-radius:10px}.install-card h3{margin-top:7px}.sub-list{font-size:11px;color:#96bdd2}.tally{font-size:10px;color:#a7c5d8;margin:7px 0}.hero-note{font-size:11px;color:#719fb7}.dial{display:flex;align-items:center;gap:14px}.dial-inner{flex:1}.no-data{display:grid;place-items:center;height:185px;color:#789fb4;text-align:center}.row-highlight{color:var(--green)}
@media(max-width:1250px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:1fr 1fr}.grid.three>:last-child{grid-column:1/-1}.nav{width:225px}.shell{grid-template-columns:225px minmax(0,1fr)}}
@media(max-width:900px){.grid.two,.grid.form-side,.grid.three{grid-template-columns:1fr}.grid.three>:last-child{grid-column:auto}.plot{height:220px}.main{padding:20px 15px}}
@media(max-width:700px){.shell{display:block}.nav{width:100%;height:auto;position:sticky;top:0;padding:6px 10px 5px;border-right:0;border-bottom:1px solid #17546b;box-shadow:0 5px 25px #0009}.nav-brand{display:flex;align-items:center;justify-content:space-between;padding:0 5px 3px;border:0}.nav-brand img{width:128px;height:62px}.nav-brand .eyebrow{font-size:9px;text-align:right}.nav-scroller{display:flex;gap:5px;overflow:auto;padding:3px 0 5px;flex:none;scrollbar-width:none}.nav-label,.nav-bottom{display:none}.nav-btn{padding:8px 10px;white-space:nowrap;flex-shrink:0;font-size:11px;margin:0}.nav-icon{font-size:15px;width:18px}.nav-counter{font-size:9px}.main{padding:16px 12px}.toolbar{gap:9px}.toolbar h1{font-size:23px}.toolbar-actions{width:100%}.clock{display:none}.month-wrap{flex:1}.ticker{margin-bottom:14px}.ticker-phrase{display:none}.ticker-run{font-size:9px}.metric{padding:12px;min-height:109px}.metric-value{font-size:21px}.metric-label{font-size:10px}.metric-foot{font-size:10px}.panel{padding:15px}.plot{height:210px}.donut{height:140px;width:140px}.donut-hole{height:96px;width:96px}.donut-hole b{font-size:13px}.footer{font-size:9px}}
@media(max-width:480px){.kpis{gap:8px}.metric{padding:11px 10px;min-height:111px}.metric-value{font-size:18px;letter-spacing:-.055em}.metric-icon{font-size:13px}.formgrid{grid-template-columns:1fr}.formgrid>.span2{grid-column:auto}.settings-highlight{display:block}.settings-highlight label{margin-top:14px}.search{width:100%;max-width:none}.section-head h2{font-size:21px}.login-box{padding:24px}.install-card{padding:20px}}
/* Reservar o espaço da legenda sem sobrepor o rodapé do gráfico mensal. */
#monthlyChart svg{height:calc(100% - 25px)}
#monthlyChart .legend-row{height:23px;align-items:center;margin-top:0;padding:0;font-size:10px}
