:root{--red:#e31b23;--red-dark:#bb1017;--ink:#111827;--muted:#6b7280;--line:#e8ebef;--surface:#fff;--bg:#f6f7f9;--side:#171a1f;--green:#169c62;--blue:#1769e0;--shadow:0 10px 30px rgba(17,24,39,.06)}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--bg)}button,input,select{font:inherit}.hidden{display:none!important}.login-page{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;background:linear-gradient(135deg,#f8f8f8 0%,#fff 55%,#f7ecec 100%)}.login-brand{padding:70px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.login-brand img{width:360px;max-width:70%}.login-brand span{margin-top:22px;font-size:25px;color:#545b66;letter-spacing:.06em}.login-card{align-self:center;justify-self:start;width:min(460px,85%);background:#fff;border:1px solid var(--line);border-radius:24px;padding:42px;box-shadow:var(--shadow)}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.13em;color:var(--red);margin-bottom:9px}.login-card h1,.page-head h1{font-size:34px;line-height:1.08;margin:0 0 10px}.login-card p,.page-head p,.card-head p{color:var(--muted);line-height:1.5;margin:0}.login-card form{display:grid;gap:10px;margin-top:28px}.login-card label,.filter-card label{font-size:12px;font-weight:800;color:#525866}.login-card input,.filter-card select{width:100%;border:1px solid #d9dee5;border-radius:10px;padding:13px 14px;outline:none;background:#fff}.login-card input:focus,.filter-card select:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(227,27,35,.08)}.password-wrap{display:flex;border:1px solid #d9dee5;border-radius:10px;overflow:hidden}.password-wrap input{border:0;border-radius:0}.password-wrap button{border:0;background:#fff;color:var(--red);font-weight:700;padding:0 14px;cursor:pointer}.login-card small{display:block;margin-top:22px;color:#9aa1aa}.primary,.secondary{border:0;border-radius:10px;padding:12px 18px;font-weight:800;cursor:pointer}.primary{background:var(--red);color:#fff;box-shadow:0 6px 16px rgba(227,27,35,.18)}.primary:hover{background:var(--red-dark)}.secondary{background:#fff;border:1px solid #d9dee5;color:#313742}.full{width:100%;margin-top:8px}.app{display:grid;grid-template-columns:252px 1fr;min-height:100vh}.sidebar{background:var(--side);color:#fff;padding:20px 14px;display:flex;flex-direction:column;min-height:100vh;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:12px;padding:8px 10px 22px;border-bottom:1px solid #292d34}.brand img{width:116px;background:#fff;border-radius:8px;padding:3px}.brand span{font-size:12px;color:#b7bdc7}.sidebar nav{padding-top:16px;flex:1}.nav-label{font-size:10px;font-weight:800;letter-spacing:.12em;color:#747b86;margin:18px 10px 7px}.nav-item{width:100%;display:flex;align-items:center;gap:11px;padding:11px 12px;margin:3px 0;border:0;border-radius:9px;background:transparent;color:#c9ced6;text-align:left;cursor:pointer}.nav-item:hover{background:#22262d;color:#fff}.nav-item.active{background:linear-gradient(90deg,rgba(227,27,35,.95),rgba(227,27,35,.72));color:#fff;box-shadow:0 6px 20px rgba(227,27,35,.18)}.sidebar-footer{border-top:1px solid #292d34;padding:16px 10px 4px;display:flex;flex-direction:column;gap:4px}.sidebar-footer span{color:#7c838e;font-size:11px}.main{min-width:0}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:5}.breadcrumb{color:#8a919b;font-size:13px}.user{display:flex;align-items:center;gap:12px}.user>div:first-child{display:flex;flex-direction:column;text-align:right;font-size:12px}.user span{color:#8a919b}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#f2dfe1;color:var(--red);font-weight:900}.icon-btn{border:0;background:#f4f5f7;width:36px;height:36px;border-radius:9px;cursor:pointer}.mobile{display:none}.view{padding:30px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.page-head h1{font-size:29px}.filter-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px;display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:12px;align-items:end;box-shadow:var(--shadow);margin-bottom:18px}.filter-card>div{display:grid;gap:6px}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.kpi{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;gap:13px;align-items:center;box-shadow:var(--shadow)}.kpi-icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-size:20px;font-weight:900}.kpi-icon.green{background:#e8f7f0;color:var(--green)}.kpi-icon.red{background:#feecee;color:var(--red)}.kpi-icon.blue{background:#eaf2ff;color:var(--blue)}.kpi-icon.gray{background:#f0f1f3;color:#59616b}.kpi div{display:flex;flex-direction:column;min-width:0}.kpi small{font-size:10px;font-weight:900;letter-spacing:.08em;color:#7a828d}.kpi strong{font-size:23px;margin:4px 0 3px}.kpi em{font-size:11px;color:#89919b;font-style:normal}.kpi em.positive{color:var(--green)}.kpi em.negative{color:var(--red)}.grid-main{display:grid;grid-template-columns:1.55fr .85fr;gap:14px;margin-top:14px}.grid-bottom{display:grid;grid-template-columns:1.2fr .8fr;gap:14px;margin-top:14px}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:var(--shadow)}.card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px}.card h2{font-size:17px;margin:0 0 4px}.pill{font-size:10px;font-weight:800;background:#f3f4f6;color:#626a75;border-radius:999px;padding:6px 9px}.line-chart{height:248px;position:relative;border-left:1px solid #eef0f3;border-bottom:1px solid #eef0f3;display:flex;align-items:flex-end;gap:12px;padding:12px 14px 24px}.month-col{height:100%;flex:1;display:flex;align-items:flex-end;justify-content:center;gap:5px;position:relative}.bar{width:18%;min-width:10px;border-radius:5px 5px 0 0;transition:.25s}.bar.income{background:#90d7b9}.bar.expense{background:#ef9b9f}.month-label{position:absolute;bottom:-20px;font-size:10px;color:#7d858f}.category-list{display:grid;gap:16px}.category-row{display:grid;grid-template-columns:1fr auto;gap:8px}.category-row b{font-size:12px}.category-row span{font-size:12px;color:#4f5660}.track{grid-column:1/-1;height:8px;background:#f1f2f4;border-radius:99px;overflow:hidden}.fill{height:100%;background:var(--red);border-radius:99px}.insight{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#fff 30%,#fff7f7 100%)}.insight p{max-width:630px;color:var(--muted);line-height:1.55}.score{width:96px;height:96px;border-radius:50%;display:grid;place-items:center;background:#e9f8f0;color:var(--green);font-weight:900;font-size:24px}.score span{display:block;font-size:10px;font-weight:700;color:#78818b;margin-top:-26px}.tasks{list-style:none;padding:0;margin:0;display:grid;gap:13px;font-size:13px;color:#505762}.tasks span{color:var(--red);margin-right:7px}.empty-state{text-align:center;max-width:720px;margin:45px auto;padding:52px}.empty-icon{width:70px;height:70px;margin:0 auto 17px;border-radius:20px;display:grid;place-items:center;background:#feecee;color:var(--red);font-size:31px}.empty-state p{color:var(--muted);line-height:1.6;margin:0 auto 22px;max-width:520px}@media(max-width:1100px){.kpis{grid-template-columns:repeat(2,1fr)}.grid-main,.grid-bottom{grid-template-columns:1fr}.filter-card{grid-template-columns:1fr 1fr}.app{grid-template-columns:220px 1fr}}@media(max-width:760px){.login-page{grid-template-columns:1fr}.login-brand{display:none}.login-card{justify-self:center}.app{grid-template-columns:1fr}.sidebar{position:fixed;left:-270px;z-index:20;width:252px;transition:.2s}.sidebar.open{left:0}.mobile{display:inline-grid}.topbar{padding:0 14px}.user>div:first-child{display:none}.view{padding:18px}.page-head{align-items:flex-start;flex-direction:column}.filter-card{grid-template-columns:1fr}.kpis{grid-template-columns:1fr}.grid-main,.grid-bottom{grid-template-columns:1fr}}
.module-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}.module-kpis article{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:5px}.module-kpis small{font-weight:900;font-size:10px;letter-spacing:.08em;color:#7a828d}.module-kpis strong{font-size:24px}.module-kpis span{font-size:11px;color:var(--muted)}.positive-txt{color:var(--green)!important}.negative-txt{color:var(--red)!important}.date-kpi{font-size:15px!important}.data-card{padding:0;overflow:hidden}.table-tools{display:grid;grid-template-columns:1fr 220px;gap:12px;padding:16px;border-bottom:1px solid var(--line)}.table-tools input,.table-tools select,.form-field input,.form-field select{width:100%;padding:12px 13px;border:1px solid #d9dee5;border-radius:10px;background:#fff;outline:none}.table-tools input:focus,.form-field input:focus,.form-field select:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(227,27,35,.08)}.table-wrap{overflow:auto}.table-wrap table{width:100%;border-collapse:collapse;min-width:760px}.table-wrap th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#4c5561;background:#fbfbfc;text-align:left;padding:14px 16px;border-bottom:1px solid var(--line)}.table-wrap td{padding:14px 16px;border-bottom:1px solid var(--line);font-size:13px;color:#3f4752}.table-foot{padding:14px 16px;color:var(--muted);font-size:12px}.actions{white-space:nowrap}.actions button{border:0;border-radius:7px;padding:7px 9px;margin-right:5px;cursor:pointer}.view-btn{background:#eaf2ff;color:#155ebc}.delete-btn{background:#feecee;color:var(--red)}.status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800}.status.ok{background:#e8f7f0;color:var(--green)}.status.off{background:#f1f2f4;color:#68717d}.type-pill{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800}.income-pill{background:#e8f7f0;color:var(--green)}.expense-pill{background:#feecee;color:var(--red)}.table-empty{text-align:center!important;color:#8b929c!important;padding:34px!important}.mini-empty,.chart-empty{color:var(--muted);font-size:13px;padding:25px;text-align:center}.chart-empty{width:100%;align-self:center}.modal{position:fixed;inset:0;background:rgba(17,24,39,.48);display:grid;place-items:center;z-index:50;padding:20px}.modal-panel{width:min(880px,96vw);max-height:90vh;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.25);padding:24px}.modal-head{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:16px}.modal-head h2{margin:0 0 4px;font-size:24px}.modal-head p{margin:0;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:22px 0}.form-field{display:grid;gap:7px}.form-field span{font-size:12px;font-weight:800;color:#444b55}.span-2{grid-column:1/-1}.modal-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:16px}.dre-table{min-width:1450px!important}.dre-table td,.dre-table th{white-space:nowrap}@media(max-width:900px){.module-kpis{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.module-kpis{grid-template-columns:1fr}.table-tools{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}}

/* ===== V1.4 VISUAL • Dashboard executiva ===== */
.dashboard-pro{padding:26px 28px 18px;background:#f7f8fa;min-height:calc(100vh - 72px)}
.dash-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}.dash-title-row h1{margin:0 0 5px;font-size:31px;letter-spacing:-.02em}.dash-title-row p{margin:0;color:#6b7280;font-size:14px}.dash-period-card{display:flex;align-items:flex-end;gap:9px;background:#fff;border:1px solid #eaedf1;border-radius:14px;padding:10px;box-shadow:0 8px 24px rgba(17,24,39,.045)}.period-field{display:grid;gap:5px}.period-field>span{font-size:10px;color:#5f6670;font-weight:800}.ghost-label>span{opacity:0}.date-box{height:39px;min-width:142px;display:flex;align-items:center;gap:8px;border:1px solid #dfe3e8;border-radius:9px;padding:0 12px;color:#313741;font-size:12px;background:#fff}.period-sep{padding-bottom:12px;font-size:11px;color:#777f89}.filter-red,.clean-btn{height:39px;border-radius:9px;padding:0 18px}.clean-btn{background:#fff}.pro-kpis{gap:12px}.pro-card{min-height:140px;position:relative;display:block;padding:18px 18px 14px;overflow:hidden}.kpi-copy{display:flex;flex-direction:column;position:relative;z-index:2}.pro-card .kpi-copy small{font-size:10px}.pro-card .kpi-copy strong{font-size:23px;line-height:1.1;margin-top:9px}.pro-card .kpi-copy em{margin-top:8px}.round-icon{position:absolute;right:18px;top:17px;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font-size:22px;font-weight:800}.round-icon.green{background:#e6f7ed;color:#0e9f4f}.round-icon.red{background:#fde8e9;color:#df1c24}.round-icon.gray{background:#eff0f2;color:#2f343a}.round-icon.blue{background:#e9f2ff;color:#1769e0}.spark{position:absolute;left:18px;right:18px;bottom:12px;height:34px;opacity:.7}.spark:before{content:"";position:absolute;inset:0;background-size:100% 100%;background-repeat:no-repeat}.spark-green:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 40'%3E%3Cpath d='M0 30 L18 26 L34 31 L52 19 L70 25 L91 17 L112 20 L130 11 L151 24 L173 15 L194 18 L210 6 L220 14' fill='none' stroke='%230da54f' stroke-width='2'/%3E%3C/svg%3E")}.spark-red:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 40'%3E%3Cpath d='M0 28 L18 25 L34 30 L52 20 L70 24 L91 18 L112 21 L130 13 L151 25 L173 17 L194 20 L210 9 L220 15' fill='none' stroke='%23e31b23' stroke-width='2'/%3E%3C/svg%3E")}.spark-gray:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 40'%3E%3Cpath d='M0 30 L18 22 L34 27 L52 17 L70 21 L91 11 L112 16 L130 8 L151 22 L173 12 L194 17 L210 5 L220 12' fill='none' stroke='%2371777f' stroke-width='2'/%3E%3C/svg%3E")}.spark-blue:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 40'%3E%3Cpath d='M0 29 L18 26 L34 30 L52 19 L70 26 L91 16 L112 19 L130 10 L151 22 L173 14 L194 18 L210 7 L220 13' fill='none' stroke='%231769e0' stroke-width='2'/%3E%3C/svg%3E")}
.dash-grid-two{display:grid;grid-template-columns:1.02fr 1.38fr;gap:12px;margin-top:12px}.dash-grid-three{display:grid;grid-template-columns:1.35fr .72fr 1fr;gap:12px;margin-top:12px}.pro-panel{border-radius:14px;padding:17px;box-shadow:0 8px 22px rgba(17,24,39,.045)}.pro-panel .card-head{margin-bottom:13px}.pro-panel .card-head h2{font-size:16px;letter-spacing:-.01em}.pro-panel .card-head p{font-size:11px}.expense-layout{display:grid;grid-template-columns:45% 55%;align-items:center;min-height:245px}.donut-wrap{display:grid;place-items:center}.donut{width:190px;height:190px;border-radius:50%;position:relative;background:#eceef1}.donut:after{content:"";position:absolute;inset:44px;background:#fff;border-radius:50%;box-shadow:inset 0 0 0 1px #eef0f3}.donut-center{position:absolute;z-index:2;inset:0;display:grid;place-content:center;text-align:center}.donut-center span{font-size:10px;color:#7b818a}.donut-center b{font-size:15px;margin-top:6px}.legend-list{gap:9px}.legend-row{display:grid;grid-template-columns:10px 1fr auto;gap:8px;align-items:center}.legend-color{width:9px;height:9px;border-radius:50%}.legend-row div{display:flex;flex-direction:column;gap:2px}.legend-row div b{font-size:10px}.legend-row div small{font-size:10px;color:#555d67}.legend-row strong{font-size:10px;color:#59616b}.outline-red{background:#fff;color:#d91920;border:1px solid #e31b23;border-radius:7px;font-size:10px;font-weight:800;padding:8px 18px;cursor:pointer}.mini-action{display:block;margin:4px auto 0}.chart-legend{display:flex;gap:14px;font-size:10px;color:#444b55;white-space:nowrap}.chart-legend span{display:flex;gap:5px;align-items:center}.dot{width:8px;height:8px;border-radius:50%;display:inline-block}.green-dot{background:#21a33e}.red-dot{background:#e31b23}.dark-dot{background:#1f2937}.pro-chart{height:248px;padding:14px 12px 28px;gap:4px;border:0;background:linear-gradient(to bottom,transparent 24%,#eef0f3 25%,transparent 25.5%,transparent 49%,#eef0f3 50%,transparent 50.5%,transparent 74%,#eef0f3 75%,transparent 75.5%)}.pro-month{align-items:stretch}.bar-pair{height:100%;width:100%;display:flex;align-items:flex-end;justify-content:center;gap:5px}.pro-month .bar{width:18px;min-width:12px;border-radius:2px 2px 0 0}.pro-month .income{background:#36a93f}.pro-month .expense{background:#e8292f}.saldo-dot{position:absolute;left:50%;transform:translate(-50%,-50%);width:9px;height:9px;background:#1d2228;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #1d2228;z-index:3}.chart-grid-lines{display:none}.mini-table-wrap{overflow:auto}.mini-table{width:100%;border-collapse:collapse;min-width:540px}.mini-table th{font-size:9px;color:#e31b23;text-align:left;padding:7px 6px;border-bottom:1px solid #e9ecef}.mini-table td{font-size:10px;padding:7px 6px;border-bottom:1px solid #edf0f2;color:#3f4650}.bank-list{display:grid;gap:7px}.bank-row{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:7px;padding:7px 0;border-bottom:1px solid #eef0f2}.bank-icon{width:24px;height:24px;border-radius:6px;display:grid;place-items:center;color:#fff;font-size:11px}.bank-row b,.bank-row strong{font-size:10px}.bank-total{display:flex;justify-content:space-between;padding-top:8px;color:#e31b23;font-size:11px;font-weight:900}.revenue-bars{display:grid;gap:9px}.revenue-row{display:grid;grid-template-columns:100px 1fr auto 38px;gap:6px;align-items:center}.revenue-row span,.revenue-row b,.revenue-row small{font-size:9px}.revenue-track{height:10px;background:#eef0f2;border-radius:2px;overflow:hidden}.revenue-track i{display:block;height:100%;background:#32aa3e}.revenue-row small{text-align:right;color:#555d67}.insight-strip{display:grid;grid-template-columns:1.05fr 1fr 1fr;background:#fff;border:1px solid #e8ebef;border-radius:14px;margin-top:12px;overflow:hidden;box-shadow:0 8px 22px rgba(17,24,39,.04)}.insight-box{display:grid;grid-template-columns:44px 1fr;gap:12px;padding:15px 17px;align-items:center;border-right:1px solid #edf0f2}.insight-box:last-child{border-right:0}.insight-box b{font-size:11px}.insight-box p{font-size:10px;color:#4f5660;line-height:1.45;margin:5px 0 0}.insight-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-size:21px;font-weight:900}.target{background:#fee6e7;color:#d91c24}.growth{background:#fff0f0;color:#e31b23}.alert{background:#fce6e7;color:#e31b23}.dash-footer{text-align:center;font-size:11px;color:#505762;padding:15px 0 2px}.dash-footer b{color:#e31b23}
@media(max-width:1250px){.dash-title-row{align-items:flex-start;flex-direction:column}.dash-period-card{width:100%;flex-wrap:wrap}.dash-grid-two,.dash-grid-three{grid-template-columns:1fr}.expense-layout{grid-template-columns:320px 1fr}.insight-strip{grid-template-columns:1fr}.insight-box{border-right:0;border-bottom:1px solid #edf0f2}.insight-box:last-child{border-bottom:0}}
@media(max-width:760px){.dashboard-pro{padding:18px}.dash-period-card{display:grid;grid-template-columns:1fr 1fr}.period-sep{display:none}.period-field .date-box{min-width:0}.filter-red,.clean-btn{width:100%}.expense-layout{grid-template-columns:1fr}.donut{width:170px;height:170px}.chart-legend{display:none}}

/* DRE V1.5 — conteúdo central inspirado no mockup aprovado; sidebar preservada */
.dre-screen{max-width:100%;margin:0 auto;padding-bottom:12px}.dre-titlebar{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.dre-titlebar h1{font-size:30px;margin:2px 0 2px}.dre-titlebar p{margin:0;color:var(--muted);font-size:13px}.dre-top-grid{display:grid;grid-template-columns:280px 1fr;gap:18px;align-items:end;margin-bottom:18px}.dre-year-box label{display:block;font-weight:700;margin-bottom:8px}.dre-year-actions{display:grid;grid-template-columns:1fr auto;gap:9px}.dre-year-actions select{height:46px;border:1px solid var(--line);border-radius:9px;padding:0 14px;background:#fff}.dre-year-actions button{height:46px;box-shadow:none}.dre-acc-card{min-height:104px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:18px 22px;display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center}.dre-acc-icon,.insight-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;font-size:26px;font-weight:900}.dre-acc-icon{background:#e8f7f0;color:var(--green)}.dre-acc-card h3{margin:0 0 4px;font-size:18px}.dre-acc-card h3 span{font-weight:500}.dre-acc-card strong{font-size:28px}.dre-acc-card p{margin:6px 0 0;color:var(--muted);font-size:12px}.dre-acc-badge{text-align:center;display:grid;gap:5px}.dre-acc-badge b{background:#e8f7f0;color:var(--green);padding:7px 13px;border-radius:999px}.dre-acc-badge span{font-size:11px;color:var(--muted)}.dre-summary-table{background:#fff;border:1px solid var(--line);border-radius:9px;box-shadow:0 2px 8px rgba(17,24,39,.04);overflow:hidden;margin-bottom:16px}.dre-summary-table .table-wrap{overflow-x:auto}.dre-summary-table table{border-collapse:collapse;width:100%;min-width:1280px}.dre-summary-table th,.dre-summary-table td{border-right:1px solid #e7e9ed;border-bottom:1px solid #e7e9ed;text-align:center;padding:13px 10px;white-space:nowrap;font-size:11px}.dre-summary-table th:first-child,.dre-summary-table td:first-child{text-align:left;min-width:120px}.dre-summary-table th{background:#fbfbfc;color:#303742;font-weight:800}.dre-section-title{display:flex;align-items:center;gap:8px;margin:20px 0 9px;font-size:14px}.dre-section-title span{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;font-weight:900}.dre-section-title.income span{background:#e8f7f0;color:var(--green)}.dre-section-title.expense span{background:#feecee;color:var(--red)}.dre-section-title.result span{background:#eaf2ff;color:#2467c9}.dre-section-title em{font-style:normal;font-weight:500}.dre-insights{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);margin-top:20px;overflow:hidden}.dre-insights article{display:flex;gap:14px;padding:18px;border-right:1px solid var(--line);align-items:flex-start}.dre-insights article:last-child{border-right:0}.dre-insights article>div:last-child{display:grid;gap:5px}.dre-insights small{font-weight:900;font-size:10px;color:#4f5660}.dre-insights strong{font-size:19px}.dre-insights span{font-size:11px;color:#555e69}.insight-icon{width:44px;height:44px;font-size:20px;flex:0 0 auto}.insight-icon.green{background:#e8f7f0;color:var(--green)}.insight-icon.red{background:#feecee;color:var(--red)}.insight-icon.blue{background:#eaf2ff;color:#2467c9}.insight-icon.purple{background:#f2eafd;color:#7c3bd1}.dre-note{font-size:11px;color:#7b838e;margin:13px 2px 0}@media(max-width:1050px){.dre-top-grid{grid-template-columns:1fr}.dre-insights{grid-template-columns:1fr 1fr}.dre-insights article:nth-child(2){border-right:0}}@media(max-width:650px){.dre-insights{grid-template-columns:1fr}.dre-insights article{border-right:0;border-bottom:1px solid var(--line)}.dre-acc-card{grid-template-columns:auto 1fr}.dre-acc-badge{grid-column:1/-1;text-align:left}.dre-year-actions{grid-template-columns:1fr}}

/* V1.6 — Cadastro de despesas no padrão visual aprovado */
.expense-register-screen{max-width:1500px;margin:0 auto;padding:2px 0 26px}.expense-page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.expense-page-head h1{margin:0;font-size:31px;letter-spacing:-.03em}.expense-add{min-width:122px;height:44px;border-radius:9px;box-shadow:0 10px 20px rgba(227,27,35,.18)}
.expense-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.expense-kpis article{background:#fff;border:1px solid #e6e9ed;border-radius:12px;padding:22px 20px;display:flex;align-items:center;gap:17px;min-height:104px;box-shadow:0 3px 12px rgba(17,24,39,.035)}.expense-kpis article>div:last-child{display:flex;flex-direction:column;gap:2px}.expense-kpis small{font-size:11px;font-weight:800;color:#525a65}.expense-kpis strong{font-size:25px;line-height:1.05;color:#131820}.expense-kpis span{font-size:12px;color:#69717c}.expense-kpi-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-size:22px;font-weight:900;flex:0 0 auto}.expense-kpi-icon.red-soft{background:#fde8e9;color:#e21b23}.expense-kpi-icon.green-soft{background:#dff5e8;color:#11a453}.expense-kpi-icon.blue-soft{background:#e8efff;color:#2856d8}.expense-date{font-size:18px!important;white-space:nowrap}
.expense-table-card{background:#fff;border:1px solid #e6e9ed;border-radius:13px;box-shadow:0 4px 16px rgba(17,24,39,.04);overflow:hidden}.expense-toolbar{display:grid;grid-template-columns:minmax(330px,1.5fr) 200px 250px 46px 110px;gap:16px;align-items:end;padding:22px 22px 20px}.expense-toolbar label{display:grid;gap:7px}.expense-toolbar label>span{font-size:11px;color:#575f69}.expense-toolbar select,.expense-search{height:44px;border:1px solid #d9dee5;border-radius:8px;background:#fff}.expense-toolbar select{width:100%;padding:0 12px;color:#222b35}.expense-search{display:flex;align-items:center;gap:10px;padding:0 14px}.expense-search>span{font-size:24px;color:#1b2632;line-height:1}.expense-search input{border:0;outline:none;width:100%;font-size:13px}.expense-search input::placeholder{color:#8d959f}.expense-sort-btn,.expense-filter-btn{height:44px;border:1px solid #dfe3e8;border-radius:8px;background:#fff;cursor:pointer;font-weight:700;color:#202731}.expense-sort-btn{font-size:19px}.expense-filter-btn{font-size:13px}.expense-table-wrap{padding:0 20px}.expense-table{width:100%;border-collapse:collapse}.expense-table thead th{font-size:11px;letter-spacing:.015em;color:#1c2430;text-align:left;padding:16px 16px;border-top:1px solid #eceff2;border-bottom:1px solid #dfe3e7;background:#fff;white-space:nowrap}.expense-table thead th span{color:#8b939d;font-weight:400;margin-left:6px}.expense-table tbody td{padding:14px 16px;border-bottom:1px solid #e8ebee;font-size:13px;color:#333c47;height:58px}.expense-table tbody tr:hover{background:#fcfcfd}.expense-name-cell{display:flex;align-items:center;gap:11px}.expense-file-icon{color:#e31b23;font-size:17px}.expense-calendar{color:#7f8994;margin-right:9px}.expense-status{display:inline-flex;align-items:center;gap:6px;border-radius:6px;padding:7px 10px;font-size:11px;font-weight:700}.expense-status.on{background:#e9f8ef;color:#14984a;border:1px solid #d1f0dd}.expense-status.off{background:#f3f4f6;color:#727b86;border:1px solid #e5e7eb}.expense-actions{display:flex;gap:9px}.expense-actions button{width:36px;height:36px;border:0;border-radius:6px;color:#fff;display:grid;place-items:center;cursor:pointer;font-size:16px}.expense-delete{background:#e61c25}.expense-edit{background:#0d6db7}.expense-footer{display:flex;justify-content:space-between;align-items:center;padding:18px 21px 22px;color:#5f6771;font-size:12px}.expense-pagination{display:flex;align-items:center;gap:8px}.expense-pagination button{min-width:38px;height:38px;border:1px solid #dfe3e8;background:#fff;border-radius:7px;cursor:pointer;color:#303741}.expense-pagination button.active{background:#ef1d25;color:#fff;border-color:#ef1d25;box-shadow:0 6px 16px rgba(239,29,37,.15)}.expense-pagination button:disabled{opacity:.4;cursor:not-allowed}.expense-pagination span{color:#8c939c}
@media(max-width:1180px){.expense-kpis{grid-template-columns:repeat(2,1fr)}.expense-toolbar{grid-template-columns:1fr 1fr}.expense-sort-btn,.expense-filter-btn{width:100%}}@media(max-width:720px){.expense-kpis{grid-template-columns:1fr}.expense-page-head{align-items:flex-start;flex-direction:column;gap:14px}.expense-toolbar{grid-template-columns:1fr}.expense-footer{align-items:flex-start;flex-direction:column;gap:14px}}


/* V1.7 • Cadastro de Receitas */
.revenue-register-screen{padding:2px 0 28px}.revenue-page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.revenue-page-head h1{font-size:31px;line-height:1.1;margin:0;color:#16191d;letter-spacing:-.5px}.revenue-add{min-width:132px;height:44px;border-radius:7px;box-shadow:0 8px 18px rgba(231,25,32,.18)}
.revenue-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:28px}.revenue-kpis article{min-height:112px;border:1px solid #e4e7eb;border-radius:8px;background:#fff;box-shadow:0 3px 10px rgba(16,24,40,.04);display:flex;align-items:center;gap:18px;padding:18px 22px}.revenue-kpi-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;font-size:25px;font-weight:800;flex:0 0 auto}.revenue-kpi-icon.blue-soft{background:#eaf3ff;color:#2376c9}.revenue-kpi-icon.green-soft{background:#dcf8ea;color:#12a765}.revenue-kpi-icon.red-soft{background:#ffe7e9;color:#dc1821}.revenue-kpis small{display:block;font-size:11px;font-weight:800;color:#4c535c;letter-spacing:.2px}.revenue-kpis strong{display:block;font-size:25px;margin:4px 0 1px;color:#191d22}.revenue-kpis strong.blue-txt{color:#1872be}.revenue-kpis strong.green-txt{color:#0b9b5c}.revenue-kpis strong.red-txt{color:#cf161e}.revenue-kpis span{font-size:12px;color:#6a717a}.revenue-kpis .revenue-date{font-size:19px}
.revenue-table-card{background:#fff;border:1px solid #e4e7eb;border-radius:8px;box-shadow:0 3px 10px rgba(16,24,40,.04);padding:22px}.revenue-toolbar{display:grid;grid-template-columns:minmax(280px,1.7fr) minmax(180px,.7fr) minmax(210px,.85fr) 48px 118px;gap:16px;align-items:end;margin-bottom:22px}.revenue-search{height:48px;border:1px solid #dfe4ea;border-radius:7px;display:flex;align-items:center;padding:0 14px;gap:10px;background:#fff}.revenue-search span{font-size:24px;color:#36404b;transform:rotate(-15deg)}.revenue-search input{border:0;outline:0;width:100%;font-size:14px;color:#2b3138}.revenue-toolbar label>span{display:block;font-size:12px;color:#555d66;margin-bottom:7px}.revenue-toolbar select{width:100%;height:48px;border:1px solid #dfe4ea;border-radius:7px;background:#fff;padding:0 14px;font-size:14px;color:#2d333a}.revenue-sort-btn,.revenue-filter-btn{height:48px;border:1px solid #dfe4ea;border-radius:7px;background:#fff;color:#2d333a;font-size:16px;cursor:pointer}.revenue-filter-btn{font-weight:700}.revenue-table-wrap{border:1px solid #e4e7eb;border-radius:7px;overflow:hidden}.revenue-table{width:100%;border-collapse:collapse}.revenue-table th{background:#fbfbfc;padding:18px 26px;border-bottom:1px solid #e3e6ea;text-align:left;font-size:11px;color:#20262d;letter-spacing:.15px}.revenue-table th span{color:#d71a22;margin-left:8px}.revenue-table td{padding:20px 26px;border-bottom:1px solid #e7eaee;font-size:14px;color:#2f363e}.revenue-table tr:last-child td{border-bottom:0}.revenue-name-cell{display:flex;align-items:center;gap:14px;font-weight:500}.revenue-file-icon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#edf5ff;color:#2479c7}.revenue-calendar{margin-right:10px;color:#59636d}.revenue-status{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:700}.revenue-status.on{background:#e5f8ed;color:#119458}.revenue-status.off{background:#fff0f0;color:#c62a31}.revenue-actions{display:flex;gap:10px}.revenue-actions button{width:38px;height:38px;border:0;border-radius:5px;color:#fff;cursor:pointer;font-size:15px}.revenue-delete{background:#df161e}.revenue-edit{background:#1774b7}.revenue-footer{display:flex;align-items:center;justify-content:space-between;padding-top:20px;color:#606873;font-size:12px}.revenue-pagination{display:flex;align-items:center;gap:8px}.revenue-pagination button{min-width:38px;height:38px;border:1px solid #dfe3e8;background:#fff;border-radius:7px;cursor:pointer;color:#303741}.revenue-pagination button.active{background:#df171f;color:#fff;border-color:#df171f;box-shadow:0 6px 16px rgba(223,23,31,.15)}.revenue-pagination button:disabled{opacity:.4;cursor:not-allowed}.revenue-pagination span{color:#8c939c}
@media(max-width:1180px){.revenue-kpis{grid-template-columns:repeat(2,1fr)}.revenue-toolbar{grid-template-columns:1fr 1fr}.revenue-sort-btn,.revenue-filter-btn{width:100%}}@media(max-width:720px){.revenue-kpis{grid-template-columns:1fr}.revenue-page-head{align-items:flex-start;flex-direction:column;gap:14px}.revenue-toolbar{grid-template-columns:1fr}.revenue-footer{align-items:flex-start;flex-direction:column;gap:14px}}


/* V1.8 — Contas Bancárias */
.bank-register-screen{padding:4px 0 32px}.bank-page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.bank-page-head h1{font-size:34px;letter-spacing:-.8px;margin:0;color:#161a20}.bank-add{min-width:142px;height:48px;border-radius:8px;box-shadow:0 8px 20px rgba(223,23,31,.18)}
.bank-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:28px}.bank-kpis article{min-width:0;background:#fff;border:1px solid #e4e7eb;border-radius:12px;min-height:118px;display:flex;align-items:center;gap:18px;padding:22px;box-shadow:0 2px 8px rgba(20,28,40,.04)}.bank-kpi-icon{width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:25px;flex:0 0 auto}.bank-kpis small{display:block;font-size:12px;font-weight:800;letter-spacing:.4px;color:#555f6c;margin-bottom:4px}.bank-kpis article>div:last-child{min-width:0}.bank-kpis strong{display:block;font-size:26px;line-height:1.1;color:#15191f}.bank-kpis span{display:block;font-size:13px;color:#606975;margin-top:4px}.bank-date{font-size:19px!important;white-space:nowrap}.bank-kpi-icon.red-soft{background:#fdecee;color:#dc1e26}.bank-kpi-icon.green-soft{background:#e9f8ef;color:#16a05d}.bank-kpi-icon.blue-soft{background:#eef4ff;color:#1769d2}.red-txt{color:#df171f!important}.green-txt{color:#10a45e!important}
.bank-table-card{background:#fff;border:1px solid #e3e7eb;border-radius:12px;padding:24px 20px 18px;box-shadow:0 2px 9px rgba(20,28,40,.04)}.bank-toolbar{display:grid;grid-template-columns:minmax(280px,1.75fr) minmax(150px,.8fr) minmax(190px,1fr) 50px 112px;gap:14px;align-items:end;margin-bottom:22px}.bank-search{height:48px;border:1px solid #d9dee4;border-radius:8px;display:flex;align-items:center;padding:0 14px;background:#fff}.bank-search span{font-size:24px;margin-right:10px;color:#3b4552}.bank-search input{border:0;outline:0;width:100%;font-size:14px;color:#313942;background:transparent}.bank-toolbar label>span{display:block;font-size:12px;color:#4c5663;margin-bottom:6px}.bank-toolbar select{height:48px;width:100%;border:1px solid #d9dee4;border-radius:8px;background:#fff;padding:0 13px;font-size:14px;color:#232a33}.bank-sort-btn,.bank-filter-btn{height:48px;border:1px solid #d9dee4;background:#fff;border-radius:8px;color:#28313b;font-size:17px;cursor:pointer}.bank-filter-btn{font-size:14px}.bank-sort-btn:hover,.bank-filter-btn:hover{border-color:#c9ced5;background:#fafbfc}
.bank-table-wrap{overflow:auto;border:1px solid #e1e5e9;border-radius:9px}.bank-table{width:100%;border-collapse:collapse;min-width:760px}.bank-table thead th{height:58px;background:#fcfcfd;color:#1e252d;font-size:12px;text-align:left;padding:0 24px;border-bottom:1px solid #e1e5e9;white-space:nowrap}.bank-table thead th:nth-child(1){width:42%}.bank-table thead th:nth-child(2){width:30%}.bank-table thead th:nth-child(3){width:16%}.bank-table tbody td{height:84px;padding:0 24px;border-bottom:1px solid #e7eaee;font-size:14px;color:#262d35}.bank-table tbody tr:last-child td{border-bottom:0}.bank-name-cell{display:flex;align-items:center;gap:15px;font-weight:700}.bank-list-icon{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:19px}.bank-list-icon.bank-red{background:#fdecef;color:#dc1f28}.bank-list-icon.bank-blue{background:#eaf4ff;color:#1473b8}.bank-list-icon.bank-purple{background:#f2eaff;color:#7b38c8}.bank-list-icon.bank-green{background:#e9f8ef;color:#159b58}.bank-calendar{margin-right:10px;color:#48535e}.bank-status{display:inline-flex;align-items:center;justify-content:center;min-width:72px;height:31px;padding:0 11px;border-radius:6px;font-size:12px;font-weight:700}.bank-status.on{background:#e9f8ef;color:#159a57}.bank-status.off{background:#fdecee;color:#d72830}.bank-actions{display:flex;gap:10px}.bank-actions button{width:38px;height:38px;border:0;border-radius:6px;color:#fff;font-size:16px;cursor:pointer}.bank-delete{background:#df171f}.bank-edit{background:#0d6cad}.bank-actions button:hover{filter:brightness(.95);transform:translateY(-1px)}
.bank-footer{display:flex;justify-content:space-between;align-items:center;margin-top:20px;color:#606873;font-size:12px}.bank-pagination{display:flex;align-items:center;gap:8px}.bank-pagination button{min-width:38px;height:38px;border:1px solid #dfe3e8;background:#fff;border-radius:7px;cursor:pointer;color:#303741}.bank-pagination button.active{background:#df171f;color:#fff;border-color:#df171f;box-shadow:0 6px 16px rgba(223,23,31,.15)}.bank-pagination button:disabled{opacity:.4;cursor:not-allowed}.bank-pagination span{color:#8c939c}
@media(max-width:980px){.bank-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.bank-toolbar{grid-template-columns:1fr 1fr}.bank-sort-btn,.bank-filter-btn{width:100%}}@media(max-width:720px){.bank-kpis{grid-template-columns:1fr}.bank-page-head{align-items:flex-start;flex-direction:column;gap:14px}.bank-toolbar{grid-template-columns:1fr}.bank-footer{align-items:flex-start;flex-direction:column;gap:14px}}

/* V1.8.2 HOTFIX FORCE GRID */
.bank-register-screen .bank-kpis{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;width:100%!important;align-items:stretch!important}.bank-register-screen .bank-kpis>article{width:auto!important;max-width:none!important;margin:0!important}
@media(max-width:1050px){.bank-register-screen .bank-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:720px){.bank-register-screen .bank-kpis{grid-template-columns:1fr!important}}

/* V1.9 — Usuários, login e permissões */
.login-error{margin:12px 0 0;padding:10px 12px;border-radius:8px;background:#fff0f1;border:1px solid #ffd2d5;color:#b91c24;font-size:13px;font-weight:700}.login-error.hidden{display:none}
.users-access-screen{padding:6px 0 36px}.users-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.users-page-head h1{font-size:32px;line-height:1.05;margin:3px 0 7px;color:#15191f;letter-spacing:-.6px}.users-page-head p{margin:0;color:#66707d}.users-add{min-width:154px;height:46px;border-radius:8px;box-shadow:0 8px 20px rgba(223,23,31,.16)}
.users-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.users-kpis article{background:#fff;border:1px solid #e3e7eb;border-radius:12px;min-height:108px;padding:18px 20px;display:flex;align-items:center;gap:15px;box-shadow:0 2px 9px rgba(20,28,40,.04)}.users-kpi-icon{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;font-size:22px;font-weight:800;flex:0 0 auto}.users-kpi-icon.purple-soft{background:#f2ecff;color:#7546d7}.users-kpis small{display:block;font-size:11px;font-weight:800;color:#56606d;letter-spacing:.35px}.users-kpis strong{display:block;font-size:24px;line-height:1.05;margin:4px 0;color:#151a20}.users-kpis span{font-size:12px;color:#69727d}
.users-table-card{background:#fff;border:1px solid #e2e6ea;border-radius:12px;box-shadow:0 3px 12px rgba(18,25,34,.045);overflow:hidden;margin-bottom:28px}.users-toolbar{padding:18px;display:grid;grid-template-columns:minmax(280px,1.7fr) minmax(150px,.55fr) minmax(150px,.55fr);gap:12px;border-bottom:1px solid #e5e8ec}.users-search{height:46px;border:1px solid #d9dee5;border-radius:8px;display:flex;align-items:center;gap:10px;padding:0 14px;color:#48535e}.users-search input{border:0;outline:0;background:transparent;width:100%;font-size:14px}.users-toolbar select{height:46px;border:1px solid #d9dee5;border-radius:8px;background:#fff;padding:0 12px;font-size:14px;color:#2a3139}.users-table{width:100%;border-collapse:collapse;min-width:960px}.users-table th{background:#fbfcfd;padding:15px 16px;border-bottom:1px solid #e4e8ec;text-align:left;font-size:11px;color:#4b5562}.users-table td{padding:15px 16px;border-bottom:1px solid #e8ebef;font-size:13px;color:#2d353e}.users-table tr:last-child td{border-bottom:0}.user-name-cell{display:flex;align-items:center;gap:10px}.user-mini-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#feecee;color:#d91c25;font-weight:800;font-size:12px}.users-table code{font-family:inherit;background:#f5f7fa;border-radius:6px;padding:4px 7px;color:#364152}.level-chip{display:inline-flex;align-items:center;padding:6px 9px;border-radius:7px;font-size:11px;font-weight:800}.level-admin{background:#ffe9eb;color:#cf1620}.level-gestor{background:#e8f0ff;color:#275fbd}.level-normal{background:#eee9ff;color:#6647c2}.level-consulta{background:#eef1f4;color:#5a6572}
.permission-head{margin:8px 0 14px}.permission-head h2{margin:3px 0 6px;font-size:23px}.permission-head p{margin:0;color:#68727f}.profile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.profile-card{background:#fff;border:1px solid #e3e7eb;border-radius:12px;padding:18px;box-shadow:0 2px 8px rgba(20,28,40,.04)}.profile-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.profile-top strong{font-size:12px;color:#606a76}.profile-badge{display:inline-flex;padding:7px 10px;border-radius:8px;font-weight:800;font-size:12px}.profile-badge.admin{background:#ffe9eb;color:#ca1720}.profile-badge.gestor{background:#e9f1ff;color:#2c62bd}.profile-badge.normal{background:#f0ebff;color:#704bc7}.profile-badge.consulta{background:#eef1f4;color:#5c6671}.profile-card p{min-height:54px;margin:14px 0;color:#65707c;font-size:12px;line-height:1.5}.profile-card button{width:100%;height:38px;border:1px solid #d9dee4;border-radius:7px;background:#fff;color:#2d3640;font-weight:700;cursor:pointer}.profile-card button:hover:not(:disabled){border-color:#e71920;color:#d71820}.profile-card button:disabled{background:#f5f6f8;color:#9aa1aa;cursor:not-allowed}.security-note{display:flex;align-items:center;gap:14px;padding:15px 18px;border-radius:10px;background:#eef5ff;border:1px solid #d7e6ff;color:#365b98}.security-note b{white-space:nowrap}.security-note span{font-size:13px}
.permissions-grid{display:grid;grid-template-columns:1fr;gap:10px;width:100%}.permission-group{border:1px solid #e1e5e9;border-radius:9px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:18px}.permission-group>div:first-child b{display:block;color:#20262d}.permission-group>div:first-child small{display:block;margin-top:3px;color:#7a838d}.permission-checks{display:flex;flex-wrap:wrap;gap:8px}.permission-checks label{display:inline-flex;align-items:center;gap:6px;border:1px solid #dce1e6;border-radius:7px;padding:7px 9px;background:#fff;cursor:pointer;font-size:12px}.permission-checks input{accent-color:#e71920}.form-field small{display:block;color:#7a838d;margin-top:5px;font-size:11px}
@media(max-width:1150px){.users-kpis,.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.users-toolbar{grid-template-columns:1fr 1fr}.users-search{grid-column:1/-1}}
@media(max-width:720px){.users-page-head{flex-direction:column}.users-kpis,.profile-grid,.users-toolbar{grid-template-columns:1fr}.users-search{grid-column:auto}.permission-group{align-items:flex-start;flex-direction:column}.security-note{align-items:flex-start;flex-direction:column}}


/* V1.10 — Histórico de atividades / auditoria */
.audit-card{margin-top:22px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);overflow:hidden}
.audit-head{padding:20px 22px 14px;display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.audit-head h2{margin:0 0 5px;font-size:21px}.audit-head p{margin:0;color:var(--muted);font-size:13px}.audit-count{background:#f3f4f6;color:#59616b;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800;white-space:nowrap}
.audit-toolbar{display:grid;grid-template-columns:1fr 240px;gap:12px;padding:0 22px 16px}.audit-toolbar select{border:1px solid #d9dee5;border-radius:10px;padding:12px 13px;background:#fff;color:#303640}
.audit-table-wrap{overflow:auto;border-top:1px solid var(--line)}.audit-table{width:100%;border-collapse:collapse;min-width:920px}.audit-table th{font-size:10px;letter-spacing:.06em;color:#59616b;text-align:left;background:#fafbfc;padding:12px 14px;border-bottom:1px solid var(--line)}.audit-table td{padding:13px 14px;border-bottom:1px solid #eef0f3;font-size:12px;vertical-align:middle}.audit-table td:last-child small{display:block;color:#7a838d;margin-top:3px;max-width:460px}.audit-user{display:flex;align-items:center;gap:9px}.audit-user>div{display:flex;flex-direction:column}.audit-user small{color:#89919b;margin-top:2px}
.audit-action{display:inline-flex;align-items:center;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:900;background:#f1f3f5;color:#4b5563}.audit-action.login{background:#e8f7f0;color:#168454}.audit-action.logout{background:#f1f3f5;color:#59616b}.audit-action.create{background:#eaf2ff;color:#1769e0}.audit-action.edit{background:#fff4dc;color:#9a6500}.audit-action.delete{background:#feecee;color:#c21820}.audit-action.password{background:#f0ebff;color:#6d3cc8}.audit-action.permissions{background:#ede9fe;color:#5b3bb6}
.audit-foot{padding:12px 22px 15px;color:#7a838d;font-size:11px}
@media(max-width:900px){.audit-toolbar{grid-template-columns:1fr}.audit-head{flex-direction:column}.audit-count{white-space:normal}}

/* V1.12 — Parcelamentos e recorrências */
.installment-summary{border:1px solid #e1e5ea;background:#f8fafc;border-radius:12px;padding:14px 16px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.installment-summary.hidden{display:none}.installment-summary div{padding-right:12px;border-right:1px solid #e5e8ec}.installment-summary div:last-child{border-right:0}.installment-summary small{display:block;font-size:10px;font-weight:800;color:#737d89;letter-spacing:.04em}.installment-summary strong{display:block;margin-top:5px;font-size:15px;color:#17202a}.launch-installment{display:block;margin-top:4px;color:#e31b23;font-size:10px;font-weight:800}.form-field.hidden{display:none!important}@media(max-width:720px){.installment-summary{grid-template-columns:1fr}.installment-summary div{border-right:0;border-bottom:1px solid #e5e8ec;padding:0 0 10px}.installment-summary div:last-child{border-bottom:0}}

/* V1.12.2 - edição de lançamentos e status automático por vencimento */
.launch-status{display:inline-flex;align-items:center;justify-content:center;min-width:86px;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap;border:1px solid transparent}
.launch-status.upcoming{background:#eaf2ff;color:#2467c9;border-color:#d8e7ff}
.launch-status.due-today{background:#fff4df;color:#b66b00;border-color:#ffe1ad}
.launch-status.overdue{background:#feecee;color:#d91f2a;border-color:#ffd5d9}
.launch-status.paid{background:#e8f7f0;color:#159a57;border-color:#ccefdc}
.launch-status.cancelled{background:#f1f3f5;color:#6f7883;border-color:#e2e6ea}
.actions .view-btn,.actions .delete-btn{vertical-align:middle}

/* V1.12.3 - Menu lateral clean / fundo branco */
:root{--side:#ffffff}
.sidebar{background:#fff;color:#171a1f;border-right:1px solid #e5e7eb;box-shadow:4px 0 18px rgba(17,24,39,.025)}
.brand{border-bottom:1px solid #eceff2}
.brand img{background:#fff}
.brand span{color:#4b5563}
.nav-label{color:#e31b23;font-size:10px;letter-spacing:.08em}
.nav-item{color:#303741;font-weight:500}
.nav-item:hover{background:#f6f7f9;color:#111827}
.nav-item.active{background:#e31b23;color:#fff;box-shadow:0 6px 16px rgba(227,27,35,.15)}
.sidebar-footer{border-top:1px solid #eceff2;color:#171a1f}
.sidebar-footer strong{color:#171a1f}
.sidebar-footer span{color:#7a828d}


/* V1.13 - Configurações e personalização */
:root{--menu-bg:#ffffff;--menu-text:#303741}
.sidebar{background:var(--menu-bg)!important}.nav-item{color:var(--menu-text)!important}.nav-item.active{color:#fff!important;background:var(--red)!important}.nav-label{color:var(--red)!important}.sidebar-footer,.brand span{color:var(--menu-text)!important}
.settings-screen{padding:4px 0 34px}.settings-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:20px}.settings-head h1{font-size:31px;margin:3px 0 7px}.settings-head p{margin:0;color:var(--muted);max-width:760px}.settings-save-state{padding:7px 11px;border-radius:999px;background:#f1f3f5;color:#737b86;font-size:11px;font-weight:800;white-space:nowrap}.settings-save-state.saved{background:#e8f7f0;color:#168454}.settings-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:18px}.settings-tabs{background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px;align-self:start;position:sticky;top:92px;box-shadow:var(--shadow)}.settings-tabs button{width:100%;border:0;background:transparent;border-radius:9px;padding:12px 13px;display:flex;gap:10px;align-items:center;text-align:left;color:#48515d;cursor:pointer;font-weight:700}.settings-tabs button:hover{background:#f6f7f9}.settings-tabs button.active{background:#feecee;color:var(--red)}.settings-content{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);overflow:hidden}.settings-panel{padding:24px}.settings-panel-head{border-bottom:1px solid var(--line);padding-bottom:17px;margin-bottom:21px}.settings-panel-head h2{margin:0 0 5px;font-size:21px}.settings-panel-head p{margin:0;color:var(--muted);font-size:13px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.settings-field{display:grid;gap:7px}.settings-field>span{font-size:12px;font-weight:800;color:#464e59}.settings-field input,.settings-field select{width:100%;height:44px;border:1px solid #d9dee5;border-radius:9px;padding:0 12px;background:#fff;outline:none}.settings-field input:focus,.settings-field select:focus{border-color:var(--red);box-shadow:0 0 0 3px color-mix(in srgb,var(--red) 10%,transparent)}.settings-field.span-2{grid-column:1/-1}.colors-grid{grid-template-columns:repeat(2,1fr)}.color-field>div{display:grid;grid-template-columns:54px 1fr;gap:9px}.color-field input[type=color]{padding:4px;height:44px;cursor:pointer}.logo-config-card{display:grid;grid-template-columns:180px 1fr;gap:20px;align-items:center;padding:18px;border:1px solid var(--line);border-radius:12px;background:#fbfcfd;margin-bottom:20px}.logo-preview{height:110px;background:#fff;border:1px dashed #d9dee4;border-radius:10px;display:grid;place-items:center;padding:12px}.logo-preview img{max-width:100%;max-height:86px;object-fit:contain}.logo-config-card p{margin:5px 0 12px;color:var(--muted);font-size:12px}.upload-logo-btn{display:inline-flex;background:var(--red);color:#fff;border-radius:8px;padding:9px 12px;font-size:12px;font-weight:800;cursor:pointer;margin-right:8px}.secondary.tiny{padding:8px 10px;font-size:12px}.theme-preview{--preview-primary:#e31b23;--preview-bg:#f6f7f9;--preview-menu:#fff;--preview-menu-text:#303741;margin-top:20px;border:1px solid var(--line);border-radius:12px;overflow:hidden;height:210px;display:grid;grid-template-columns:170px 1fr;background:var(--preview-bg)}.theme-preview aside{background:var(--preview-menu);padding:15px;display:flex;flex-direction:column;gap:7px;border-right:1px solid #e5e7eb}.preview-logo{font-weight:900;color:var(--preview-menu-text);margin-bottom:8px}.theme-preview aside i{font-style:normal;color:var(--preview-menu-text);font-size:11px;padding:8px;border-radius:6px}.theme-preview aside i.active{background:var(--preview-primary);color:#fff}.theme-preview main{padding:18px}.theme-preview main>span{font-size:11px;font-weight:800}.preview-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:14px 0}.preview-cards b{height:65px;background:#fff;border:1px solid #e3e7eb;border-radius:9px}.theme-preview button{border:0;background:var(--preview-primary);color:#fff;border-radius:7px;padding:8px 12px;font-size:10px;font-weight:800}.settings-info,.settings-warning{margin-top:20px;border-radius:10px;padding:14px 16px;display:flex;gap:12px;align-items:center}.settings-info{background:#eef5ff;border:1px solid #d8e6ff;color:#315c99}.settings-warning{background:#fff5e8;border:1px solid #ffe2b5;color:#8c5b0e}.settings-info span,.settings-warning span{font-size:12px}.network-card{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}.network-card>div{border:1px solid var(--line);border-radius:10px;padding:16px;display:grid;gap:5px}.network-card small{font-size:10px;font-weight:900;color:#7b838e}.network-card strong{font-size:16px}.network-card span{font-size:11px;color:var(--muted)}.network-urls{border:1px solid var(--line);border-radius:10px;padding:16px;margin-bottom:16px}.network-urls>b{display:block;margin-bottom:10px}.network-urls>div{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#f7f8fa;border-radius:8px;padding:9px 10px;margin:6px 0}.network-urls code{font-size:12px}.network-urls button{border:0;background:#fff;border:1px solid #dce1e6;border-radius:6px;padding:6px 9px;cursor:pointer}.backup-box{border:1px solid var(--line);border-radius:10px;padding:16px;display:flex;align-items:center;justify-content:space-between;gap:16px}.backup-box p{margin:4px 0 0;color:var(--muted);font-size:12px}.settings-actions{border-top:1px solid var(--line);padding:18px 24px;display:flex;justify-content:flex-end}.settings-readonly{color:var(--muted);font-size:12px}.settings-content form{margin:0}
@media(max-width:980px){.settings-layout{grid-template-columns:1fr}.settings-tabs{position:static;display:flex;overflow:auto}.settings-tabs button{min-width:170px}.network-card{grid-template-columns:1fr}}@media(max-width:700px){.settings-grid,.colors-grid{grid-template-columns:1fr}.settings-field.span-2{grid-column:auto}.logo-config-card{grid-template-columns:1fr}.settings-head{flex-direction:column}.theme-preview{grid-template-columns:120px 1fr}.backup-box{align-items:flex-start;flex-direction:column}}

/* V1.14.1 performance: paginação dos lançamentos */
.launch-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-top:1px solid #eceff3;color:#68707c;font-size:13px;flex-wrap:wrap}
.launch-pagination>div{display:flex;align-items:center;gap:10px}
.launch-pagination .secondary{padding:8px 12px;border:1px solid #dfe3e8;background:#fff;border-radius:8px;cursor:pointer;color:#3a4048}
.launch-pagination .secondary:disabled{opacity:.45;cursor:not-allowed}
.launch-pagination b{font-size:12px;color:#555d68}
@media(max-width:760px){.launch-pagination{align-items:flex-start}.launch-pagination>div{width:100%;justify-content:space-between}}

/* V1.14.3 - códigos únicos */
.code-head-actions{display:flex;gap:10px;align-items:center}.code-list-btn{border:1px solid #dfe3e8;background:#fff;color:#303741;border-radius:10px;padding:11px 14px;font-weight:700;cursor:pointer}.code-list-btn:hover{border-color:var(--primary,#e31b23);color:var(--primary,#e31b23);background:#fffafa}.code-registry{width:100%}.code-registry-note{background:#f7f8fa;border:1px solid #e4e7eb;border-radius:10px;padding:12px 14px;color:#5b6470;font-size:13px;margin-bottom:12px}.code-registry-search input{width:100%;padding:11px 12px;border:1px solid #dce1e6;border-radius:9px;margin-bottom:10px}.code-registry-list{max-height:420px;overflow:auto;border:1px solid #e7e9ed;border-radius:10px}.code-registry-row{display:grid;grid-template-columns:100px 1fr 145px;gap:12px;align-items:center;padding:10px 12px;border-bottom:1px solid #eef0f2}.code-registry-row:last-child{border-bottom:0}.code-registry-row strong{color:#111827}.code-registry-row span{color:#4b5563}.code-registry-row em{font-style:normal;font-size:11px;font-weight:800;text-align:center;padding:5px 8px;border-radius:999px}.code-registry-row em.ok{background:#e9f8ef;color:#17864b}.code-registry-row em.dup{background:#fff0f1;color:#d71920}.code-validation-hint{display:block;margin-top:5px;color:#6b7280;font-size:11px}.code-validation-hint.valid{color:#17864b}.code-validation-hint.invalid{color:#d71920;font-weight:700}.form-field input:invalid{border-color:#e31b23}.revenue-table th:first-child,.revenue-table td:first-child{width:110px}@media(max-width:780px){.code-head-actions{flex-wrap:wrap;justify-content:flex-end}.code-registry-row{grid-template-columns:80px 1fr}.code-registry-row em{grid-column:1/-1;text-align:left;width:max-content}}

.launch-tools{grid-template-columns:minmax(280px,1fr) 220px 240px}.code-pill{display:inline-flex;align-items:center;padding:5px 9px;border-radius:8px;background:#f2f4f7;color:#273142;font-weight:800;font-size:11px;white-space:nowrap}@media(max-width:900px){.launch-tools{grid-template-columns:1fr 1fr}.launch-tools input{grid-column:1/-1}}@media(max-width:620px){.launch-tools{grid-template-columns:1fr}.launch-tools input{grid-column:auto}}

/* V1.14.7 - Lançamentos separados + filtros de vencimento */
.launch-card{overflow:hidden}.launch-section-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:16px 16px 0}.launch-section-tabs button{border:1px solid #e3e7eb;background:#fff;border-radius:12px;padding:13px 15px;display:flex;align-items:center;gap:12px;text-align:left;cursor:pointer;color:#4c5561;transition:.18s ease}.launch-section-tabs button>span{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:#f4f6f8;font-weight:900}.launch-section-tabs button div{display:grid;gap:2px}.launch-section-tabs button b{font-size:14px;color:#20262e}.launch-section-tabs button small{font-size:11px;color:#7a838f}.launch-section-tabs button:hover{border-color:#cfd5dc;background:#fafbfc}.launch-section-tabs button.active.expense{border-color:#f1b7bb;background:#fff7f7;box-shadow:inset 0 0 0 1px rgba(227,27,35,.05)}.launch-section-tabs button.active.expense>span{background:#feecee;color:#e31b23}.launch-section-tabs button.active.expense b{color:#d71920}.launch-section-tabs button.active.income{border-color:#b9e7ce;background:#f6fcf8;box-shadow:inset 0 0 0 1px rgba(18,155,86,.04)}.launch-section-tabs button.active.income>span{background:#e8f7f0;color:#159a57}.launch-section-tabs button.active.income b{color:#12864b}.launch-section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;padding:18px 16px 10px}.launch-section-head small{color:#e31b23;font-size:10px;font-weight:900;letter-spacing:.08em}.launch-section-head h2{font-size:18px;margin:3px 0 0}.launch-section-head>span{color:#7c8590;font-size:12px}.launch-status-filters{display:flex;gap:8px;flex-wrap:wrap;padding:0 16px 14px;border-bottom:1px solid #edf0f3}.launch-status-filters button{border:1px solid #e1e5ea;background:#fff;color:#59616c;border-radius:999px;padding:8px 11px;display:inline-flex;gap:7px;align-items:center;font-size:12px;font-weight:700;cursor:pointer}.launch-status-filters button b{min-width:22px;height:20px;padding:0 6px;border-radius:999px;background:#f2f4f6;display:grid;place-items:center;font-size:10px}.launch-status-filters button:hover,.launch-status-filters button.active{border-color:#9ca6b2;background:#f5f7f9;color:#1f2937}.launch-status-filters .status-upcoming.active{background:#edf5ff;border-color:#b9d4fb;color:#2467c9}.launch-status-filters .status-today.active{background:#fff5e5;border-color:#ffd69a;color:#a95f00}.launch-status-filters .status-overdue.active{background:#fff0f1;border-color:#f7b8bd;color:#d71920}.launch-status-filters .status-settled.active{background:#eaf8f0;border-color:#bde8d0;color:#168a4e}.launch-tools{grid-template-columns:minmax(320px,1fr) 260px;padding:14px 16px}.launch-card .table-wrap{border-top:1px solid #edf0f3}@media(max-width:760px){.launch-section-tabs{grid-template-columns:1fr}.launch-section-head{align-items:flex-start;flex-direction:column}.launch-tools{grid-template-columns:1fr}.launch-status-filters{overflow:auto;flex-wrap:nowrap;padding-bottom:12px}.launch-status-filters button{white-space:nowrap}}

/* V1.14.7 - Configurações integradas ao menu lateral */
.config-nav-item{padding-left:16px!important}.settings-content-single{max-width:1050px}.settings-single-screen{max-width:1100px}

/* V1.14.8 — sidebar rolável + marca limpa */
.sidebar{overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#c9ced6 transparent}
.sidebar::-webkit-scrollbar{width:7px}.sidebar::-webkit-scrollbar-track{background:transparent}.sidebar::-webkit-scrollbar-thumb{background:#c9ced6;border-radius:99px}.sidebar::-webkit-scrollbar-thumb:hover{background:#aeb5bf}
.sidebar nav{flex:0 0 auto;padding-bottom:12px}.sidebar-footer{margin-top:auto;flex:0 0 auto}.brand{justify-content:flex-start}.brand img{width:165px;max-width:100%;height:auto;object-fit:contain;background:transparent;border-radius:0;padding:0}.brand span{display:none!important}

/* V1.14.9 - cadastro consolidado de funcionários */
.employee-kpis{margin-bottom:18px}.employee-card{overflow:hidden}.employee-tools{grid-template-columns:minmax(320px,1fr) 170px 210px}.employee-table{min-width:1180px}.employee-table td{vertical-align:middle}.employee-table th{white-space:nowrap}.employee-table td:nth-child(2){min-width:220px}.employee-table td:nth-child(4){min-width:230px}.employee-table td:nth-child(7){min-width:190px}.employee-sub{display:block;margin-top:4px;color:#8a929f;font-size:10px;font-weight:600}.employee-register-screen .status{white-space:nowrap}
@media(max-width:900px){.employee-tools{grid-template-columns:1fr}.employee-table{min-width:1050px}}

/* V1.15.0 - privacidade de valores e centralização do donut */
.privacy-btn{font-size:18px;position:relative;transition:.2s ease}
.privacy-btn:before{content:"";position:absolute;width:18px;height:2px;background:#e31b23;transform:rotate(-42deg);opacity:0;transition:.2s ease}
.privacy-btn.values-hidden-active:before{opacity:1}
.donut-center{display:flex!important;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 30px}
.donut-center span,.donut-center b{width:100%;text-align:center}
.donut-center b{white-space:nowrap;font-size:14px!important}
.category-list{max-height:235px;overflow:auto;padding-right:4px}
.category-list::-webkit-scrollbar{width:5px}.category-list::-webkit-scrollbar-thumb{background:#d9dde3;border-radius:999px}
