:root{--bg:#f5f7fb;--card:#fff;--text:#1c2940;--muted:#6c7a92;--line:#e2e8f1;--blue:#245be5;--navy:#14223b;--green:#0b946b;--red:#d3353b;--amber:#c17d15;--purple:#7c55bf}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 Inter,Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}button{border:0;border-radius:8px;cursor:pointer;font-weight:700;padding:10px 14px;transition:.15s}button:not(:disabled):hover{filter:brightness(.965)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #85a6ff;outline-offset:2px}button:disabled{opacity:.45;cursor:not-allowed}
[hidden]{display:none!important}.primary{background:var(--blue);color:#fff}.success{background:#ddf7ec;color:#08744d}.neutral{background:#eef2f8;color:#263b58}.outline{background:#fff;border:1px solid var(--line);color:#314560}.danger{background:#fff0f1;color:#b92536}.wide{width:100%;margin-top:12px}.button-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.button-row button{font-size:12px}.tag{padding:6px 10px;background:#ecf2fc;border-radius:99px;font-size:11px;color:#58739b;font-weight:750;white-space:nowrap}
label{display:block;font-weight:700;font-size:12px;color:#52647e;margin:0 0 14px}input:not([type=checkbox]),select,textarea{display:block;width:100%;background:#fff;color:var(--text);border:1px solid #d8e1ec;border-radius:8px;padding:10px 11px;margin-top:6px;min-height:41px;outline:0}input:focus,select:focus,textarea:focus{border-color:#8caefc!important;box-shadow:0 0 0 3px #245be514}textarea{resize:vertical;min-height:80px}.hint{color:var(--muted);font-size:12px;line-height:1.6;margin:4px 0 10px}.row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.14em;color:#5e81b5;margin:0 0 6px}
.auth-shell{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:#fff}.auth-brand{background:linear-gradient(145deg,#14243c,#1b3b6c);color:#fff;padding:clamp(36px,8vw,120px);display:flex;justify-content:center;flex-direction:column;align-items:flex-start}.brand-symbol,.top-logo{display:inline-grid;place-items:center;font-weight:900;letter-spacing:-.07em;color:#fff;background:#356ef4;border-radius:15px;width:65px;height:65px;font-size:24px}.auth-brand h1{font-size:clamp(28px,4vw,46px);letter-spacing:-.045em;margin:26px 0 12px}.auth-brand p{font-size:16px;max-width:440px;line-height:1.8;color:#d1dbeb}.brand-points{display:flex;gap:15px;flex-wrap:wrap;margin-top:25px;color:#b9cbeb;font-size:12px}.auth-card{width:min(430px,calc(100% - 48px));margin:auto;padding:45px 0}.auth-card h2{font-size:28px;letter-spacing:-.04em;margin:5px 0}.auth-card p{color:var(--muted);margin:0 0 26px}.auth-card label{margin-bottom:19px}.auth-card input{min-height:46px}.auth-card button{padding:13px}
.topbar{background:var(--navy);color:#fff}.topbar-inner{max-width:1480px;margin:auto;padding:18px 22px;display:flex;justify-content:space-between;gap:20px;align-items:center}.identity{display:flex;align-items:center;gap:14px}.top-logo{width:48px;height:48px;font-size:17px;border-radius:12px}.identity h1{font-size:22px;letter-spacing:-.04em;margin:0}.identity p{margin:2px 0 0;font-size:12px;color:#aab9ce}.profile{display:flex;align-items:center;gap:10px}.profile-name{text-align:right;display:flex;flex-direction:column;line-height:1.4}.profile-name b{font-size:13px}.profile-name small{color:#acbcd3}.header-button{border:1px solid #425775;background:transparent;color:#ecf1fc;padding:9px 12px;font-size:12px}.container{max-width:1480px;margin:auto;padding:0 18px 25px}.tabs{display:flex;gap:2px;overflow-x:auto;margin:0 0 24px;border-bottom:1px solid var(--line);scrollbar-width:thin}.tab{border:0;background:transparent;border-bottom:3px solid transparent;border-radius:0;color:#61708b;padding:17px 20px;white-space:nowrap}.tab.active{color:var(--blue);border-bottom-color:var(--blue)}.page{display:none}.page.active{display:block}.page-intro{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:20px}.page-intro h2{font-size:25px;letter-spacing:-.04em;margin:0}.page-intro p{margin:3px 0 0;font-size:13px;color:var(--muted)}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:19px;margin-bottom:18px;box-shadow:0 4px 18px #1a355908}.card h3{font-size:16px;letter-spacing:-.02em;margin:0 0 18px}.card-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:15px}.card-heading h3{margin:0}.filter-card{padding:18px}.filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px 15px;align-items:end}.filters label{margin:0}.filter-action{align-self:end}.filter-action button{width:100%}.summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric{padding:19px;background:#fff;border:1px solid var(--line);border-radius:12px;border-left:4px solid var(--blue);margin-bottom:18px;min-width:0}.metric.green{border-left-color:var(--green)}.metric.amber{border-left-color:var(--amber)}.metric.purple{border-left-color:var(--purple)}.metric small{font-size:11px;font-weight:800;color:var(--muted)}.metric strong{display:block;font-size:23px;letter-spacing:-.03em;margin-top:6px;color:var(--blue);white-space:nowrap}.metric.green strong{color:var(--green)}.metric.amber strong{color:var(--amber)}.metric.purple strong{color:var(--purple)}.chart-row{display:grid;grid-template-columns:minmax(80px,145px) 1fr minmax(100px,120px);align-items:center;gap:10px;margin:10px 0;font-size:12px}.chart-row b{text-align:right}.track{height:11px;background:#eff3f8;border-radius:20px;overflow:hidden}.bar{height:100%;background:var(--blue);border-radius:20px;min-width:2px}.work-grid{display:grid;grid-template-columns:340px minmax(0,1fr);gap:18px;align-items:start}.ledger-card{min-width:0}.export-actions{margin:0 0 14px}.table-wrap{overflow:auto;width:100%;scrollbar-width:thin}table{border-collapse:collapse;width:100%;min-width:600px}#linhasLancamentos{min-width:100%}th,td{padding:11px 10px;border-bottom:1px solid #edf1f7;text-align:left;white-space:nowrap;font-size:12px;vertical-align:middle}th{background:#f8fafd;color:#72819a;font-size:10px;letter-spacing:.055em;text-transform:uppercase}td .actions{display:flex;gap:6px}.actions button{font-size:11px;padding:7px 9px}.empty{text-align:center;color:var(--muted);padding:28px}.status-paid{font-weight:700;color:var(--green)}.status-unpaid{font-weight:700;color:var(--red)}.pill{background:#f0f4fa;border-radius:6px;padding:5px 8px;display:inline-block;line-height:1.4;font-size:11px;max-width:190px;white-space:normal}.alert{margin-bottom:18px;border-radius:9px;padding:12px 14px;font-weight:600;background:#e6f7ee;color:#186844;border:1px solid #badfca}.alert.error{background:#feeaec;color:#9f2531;border-color:#f6c2c8}.migration{background:#fff9ec;border:1px solid #eddbb2;padding:12px;border-radius:8px;margin:0 0 12px;color:#735422;font-size:12px;display:flex;flex-direction:column;align-items:flex-start;gap:7px}.migration button{font-size:12px}.modal-backdrop{position:fixed;inset:0;background:#0a1d39a8;z-index:100;display:flex;align-items:center;justify-content:center;padding:16px}.modal{background:#fff;width:min(460px,100%);max-height:92vh;overflow:auto;border-radius:15px;padding:24px;box-shadow:0 16px 70px #0004}.modal h2{margin:0 0 8px;font-size:21px}.modal .button-row{margin-top:20px}.admin-grid{display:grid;grid-template-columns:minmax(350px,1.15fr) minmax(0,1fr);gap:18px;align-items:start}.section-divider{font-size:13px;font-weight:800;border-top:1px solid var(--line);padding-top:15px;margin:18px 0 13px}.checkline{display:flex;align-items:center;gap:9px;margin-bottom:10px;cursor:pointer;color:#2f435f;font-size:12px}.checkline input{accent-color:var(--blue);width:16px;height:16px;margin:0}.checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px}.checks:empty:before{content:"Nenhuma empresa cadastrada.";color:var(--muted);font-size:12px}.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.permission-group{border:1px solid var(--line);background:#fbfcff;padding:13px;border-radius:10px}.permission-group strong{font-size:13px;display:block;margin-bottom:10px}.permission-group .checkline{margin-bottom:8px}footer{text-align:center;font-size:11px;color:#97a5bb;margin:36px 0 8px}
@media(max-width:1080px){.filters{grid-template-columns:repeat(3,minmax(0,1fr))}.work-grid,.admin-grid{grid-template-columns:1fr}.summary{grid-template-columns:repeat(2,1fr)}.auth-brand{padding:50px}}
@media(max-width:650px){.auth-shell{grid-template-columns:1fr}.auth-brand{min-height:220px;padding:35px}.auth-brand h1{font-size:27px;margin:10px 0}.auth-brand p{font-size:13px;margin:0}.brand-symbol{width:45px;height:45px;font-size:16px}.brand-points{display:none}.auth-card{padding:35px 0}.topbar-inner{padding:13px;flex-wrap:wrap}.identity h1{font-size:18px}.identity p{display:none}.top-logo{width:37px;height:37px;font-size:13px}.profile{width:100%;justify-content:space-between}.profile-name{text-align:left}.header-button{padding:7px 10px}.container{padding:0 10px 24px}.tabs{margin-bottom:18px}.tab{padding:12px 14px;font-size:12px}.filters,.row,.summary,.permission-grid,.checks{grid-template-columns:1fr}.summary{gap:8px}.metric{margin-bottom:0;padding:14px}.metric strong{font-size:20px}.summary{margin-bottom:18px}.card{padding:14px}.page-intro h2{font-size:21px}.chart-row{grid-template-columns:100px 1fr 105px;font-size:11px}.export-actions button{flex:1}.admin-grid{display:block}}

.document-fields{border:1px solid var(--line);border-radius:10px;padding:13px;background:#fafcff;margin:8px 0 14px}.document-fields .document-actions{margin:-8px 0 8px}.document-actions button{flex:1}.codigo-boleto{font-family:monospace;font-size:11px;color:#4b6384}.scanner-modal{width:min(570px,100%)}.scanner-viewport{min-height:220px;border:1px solid #cdd7e8;border-radius:9px;overflow:hidden;background:#0d1b2b}.scanner-viewport video{width:100%;height:auto;object-fit:cover}.scanner-modal p{margin:12px 0}.scanner-viewport button{font-size:12px}@media(max-width:650px){.scanner-viewport{min-height:200px}.document-actions{flex-direction:column}}


/* Gestor Financeiro • Modern UI 2026 – somente apresentação; preserva API e permissões */
:root{--bg:#f5f7fc;--card:#fff;--text:#1c2940;--muted:#77869b;--line:#e6ecf4;--blue:#3869e8;--navy:#111c35;--green:#0c996d;--red:#df4057;--amber:#e99b31;--purple:#8358d7}
body{background:linear-gradient(180deg,#f2f6ff 0,#f7f9fd 310px,#f5f7fb 100%);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
.topbar{background:linear-gradient(112deg,#111e39,#1a345d);box-shadow:0 5px 22px #10274c18}.topbar-inner{padding-top:18px;padding-bottom:18px}.top-logo{background:linear-gradient(145deg,#6f92f9,#3462e9);box-shadow:0 6px 20px #2356c65c}.identity h1{font-size:20px}.container{max-width:1540px}
.tabs{margin-top:12px;margin-bottom:27px;border:1px solid #e6edf7;border-radius:15px;background:#fff;padding:5px;box-shadow:0 4px 18px #10254409;gap:4px}.tab{border-radius:10px;border-bottom:0;font-size:13px;padding:12px 19px;transition:background .18s,color .18s}.tab.active{background:#e9f0ff;color:#2a57d2;box-shadow:inset 0 0 0 1px #d9e5ff}.tab:hover:not(.active){background:#f5f7fc}
.page-intro{margin-bottom:22px}.page-intro h2{font-size:29px;letter-spacing:-.045em}.page-intro p{font-size:13px}.eyebrow{color:#5476b9}.dashboard-cta{display:flex;align-items:center;gap:12px}.new-expense-button{padding:13px 19px;font-size:13px;box-shadow:0 8px 23px #3869e843;border-radius:12px}.new-expense-button span{font-size:19px;font-weight:400;margin-right:5px}
.card{border:1px solid #e7edf5;border-radius:16px;box-shadow:0 6px 28px #253e690a;padding:22px}.card-heading h3,.card h3{font-size:15px}.filter-card{padding:21px}.filters{gap:12px}.filters input,.filters select{background:#fbfcff}.filter-action button{min-height:41px}
.metric{border:1px solid #e7edf6;border-left:0!important;border-radius:16px;padding:21px;box-shadow:0 6px 24px #23375909;position:relative;overflow:hidden}.metric:after{content:"";position:absolute;right:-22px;top:-25px;width:88px;height:88px;border-radius:50%;background:#eaf0ff}.metric.green:after{background:#e0f7ed}.metric.amber:after{background:#fff1dc}.metric.purple:after{background:#f0e8ff}.metric strong{font-size:clamp(20px,2vw,28px);position:relative;z-index:1}.metric small{position:relative;z-index:1}
.modern-ledger-grid{display:block}.modern-ledger-grid>.ledger-card{width:100%}.ledger-card .table-wrap{border:1px solid #edf1f7;border-radius:12px}th{background:#f8faff;color:#71819a;padding:13px 12px}td{padding:13px 12px}tbody tr:hover{background:#f9fbff}.status-paid{color:#087d5b}.status-unpaid{color:#ce3e50}
button{transition:transform .15s,box-shadow .15s,filter .15s}button:not(:disabled):active{transform:translateY(1px)}.primary{background:#3467e8;color:#fff}.primary:hover{box-shadow:0 5px 16px #3267e83c}.success{background:#e0f7ed;color:#087a53}.success:hover{background:#c7efdf}.danger{background:#ffebed;color:#bf304b}.danger:hover{background:#ffdce2}.neutral{background:#edf1f8;color:#3c4f68}.neutral:hover{background:#e4ebf5}.outline{border-color:#dce5f1;color:#4b6080}.export-actions #exportarCSV{background:#def7ee;color:#087957}.export-actions #importarCSVBtn{background:#e7f0ff;color:#2d5bb4}.export-actions #exportarBackup{background:#f0eaff;color:#7552b5}.export-actions #importarBackupBtn{background:#fff1df;color:#9b671a}
.modal-open{overflow:hidden}.modal-backdrop{background:#111d35a8;backdrop-filter:blur(4px);padding:14px}.expense-modal{width:min(770px,100%);max-height:min(94dvh,930px);overflow:auto;border:0;border-radius:20px;padding:26px 29px 30px;box-shadow:0 30px 100px #0c193766}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:17px;margin-bottom:19px;border-bottom:1px solid #e9edf6}.modal-head h2{font-size:24px;letter-spacing:-.04em;margin:0 0 4px}.modal-head .hint{margin:0}.modal-close{width:36px;height:36px;flex:0 0 36px;border-radius:11px;background:#f0f3f8;color:#53637c;font-size:24px;font-weight:400;display:grid;place-items:center;padding:0}.expense-modal form>.row{gap:16px}.expense-modal label{font-size:12px;margin-bottom:15px}.expense-modal input,.expense-modal select,.expense-modal textarea{min-height:45px;border-radius:10px;background:#fbfcff}.expense-modal .document-fields{border-radius:14px;background:#f8faff;padding:17px}.expense-modal #salvarLancamento{background:#16876a}.expense-modal #limparLancamento{background:#eef2f8}.expense-modal .button-row{justify-content:flex-end}.modal:not(.expense-modal){border-radius:18px}
#linhasLancamentos .actions button[data-pay]{background:#e0f7ed;color:#087956}#linhasLancamentos .actions button[data-edit]{background:#e7f0ff;color:#2e5db9}#linhasLancamentos .actions button[data-delete]{background:#ffeaee;color:#bf304b}
@media(max-width:700px){.topbar-inner{gap:9px}.container{padding:0 11px 24px}.tabs{gap:1px;padding:4px;border-radius:12px;margin-top:10px;position:relative}.tab{padding:10px 13px;font-size:12px}.page-intro{align-items:flex-start;gap:12px}.dashboard-heading{flex-direction:column}.dashboard-cta{width:100%;justify-content:space-between}.new-expense-button{min-height:46px}.page-intro h2{font-size:25px}.filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.filters label{font-size:11px}.filters input,.filters select{min-width:0;font-size:12px}.filter-action{grid-column:1/-1}.summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.metric{padding:14px;margin-bottom:0;min-height:90px}.metric strong{font-size:19px;white-space:normal}.card{padding:15px;border-radius:14px}.expense-modal{width:100%;max-height:96dvh;border-radius:18px;padding:18px 16px}.expense-modal .row{grid-template-columns:1fr}.modal-head h2{font-size:21px}.expense-modal .button-row>button{flex:1}.expense-modal .document-actions{flex-direction:column}.export-actions{display:grid;grid-template-columns:1fr 1fr}.export-actions button{font-size:11px}.ledger-card .table-wrap{margin:0 -2px}.modal-backdrop{padding:8px}.profile .header-button{font-size:11px}}
@media(max-width:380px){.filters{grid-template-columns:1fr}.summary{grid-template-columns:1fr 1fr}.metric strong{font-size:17px}.export-actions{grid-template-columns:1fr}}

/* REDESIGN V2: cores expressivas, modal de despesa amplo, mobile real */
:root{--bg:#edf2fb;--text:#17243e;--muted:#64748b;--line:#e0e8f4;--blue:#4f46e5;--navy:#101a38;--green:#059669;--red:#e11d48;--amber:#f59e0b;--purple:#9333ea}
body{font-size:15px;background:radial-gradient(ellipse at 95% 0%,#e5dfff 0%,transparent 37%),linear-gradient(180deg,#edf4ff,#f6f8ff 450px)}
.topbar{background:linear-gradient(110deg,#151b48 0%,#34338e 58%,#6254d9 100%)}
.top-logo{background:linear-gradient(140deg,#26c6da,#6e52f5);box-shadow:0 8px 22px #111a5d66}
.identity h1{font-size:24px}.tabs{border:0;background:#ffffffdd;box-shadow:0 8px 30px #22285b10}.tab.active{background:linear-gradient(115deg,#554de5,#7663f2);color:white;box-shadow:0 4px 12px #5b4bdf42}
.page-intro h2{font-size:clamp(27px,3vw,39px)}.card{border-radius:20px;box-shadow:0 9px 35px #182b5e13;border:1px solid #e5eaf5}
.new-expense-button{min-height:60px;padding:15px 28px!important;font-size:17px!important;border-radius:16px!important;background:linear-gradient(110deg,#5a44ec,#7e54f5)!important;box-shadow:0 10px 25px #6954e868!important}
.new-expense-button:hover{transform:translateY(-2px)!important}.new-expense-button span{font-size:25px!important}
.metric{min-height:129px;padding:23px!important;border:0!important;box-shadow:0 10px 22px #19255713}.metric:nth-child(1){background:linear-gradient(125deg,#4338ca,#7469ed)!important}.metric:nth-child(2){background:linear-gradient(125deg,#047857,#20b995)!important}.metric:nth-child(3){background:linear-gradient(125deg,#d97706,#f5ac39)!important}.metric:nth-child(4){background:linear-gradient(125deg,#7e22ce,#b076ef)!important}
.metric small,.metric strong{color:#fff!important}.metric small{font-size:13px!important;opacity:.9}.metric strong{font-size:clamp(23px,2.4vw,34px)!important}.metric:after{width:145px;height:145px;right:-35px;top:-55px;background:#ffffff20!important}
.primary{background:#5145dd!important;color:#fff!important}.success{background:#07956d!important;color:#fff!important}.danger{background:#e34060!important;color:#fff!important}.neutral{background:#e7edfa!important;color:#33466d!important}.outline{background:#fff!important;color:#5145dd!important;border:1px solid #9b91ee!important}
.export-actions button{padding:12px 17px;font-weight:800}.export-actions #exportarCSV{background:#0d9d75!important;color:#fff!important}.export-actions #importarCSVBtn{background:#2f76d2!important;color:#fff!important}.export-actions #exportarBackup{background:#884ed6!important;color:#fff!important}.export-actions #importarBackupBtn{background:#e89b27!important;color:#231b15!important}
#linhasLancamentos .actions button[data-pay]{background:#06966f!important;color:white!important}#linhasLancamentos .actions button[data-edit]{background:#4578e1!important;color:white!important}#linhasLancamentos .actions button[data-delete]{background:#e44865!important;color:white!important}
#linhasLancamentos .actions button{min-height:34px;border-radius:9px}.filter-action button{background:#e0e7ff!important;color:#473cbd!important}.status-paid{background:#dbfce9;padding:6px 10px;border-radius:30px}.status-unpaid{background:#ffe3e9;padding:6px 10px;border-radius:30px}
/* Desktop: expense dialog genuinely wide, forms in two columns */
#modalDespesa{padding:30px;align-items:center}#modalDespesa .expense-modal{width:min(1120px,calc(100vw - 60px))!important;max-height:calc(100dvh - 60px);padding:0!important;border-radius:26px;box-shadow:0 38px 120px #101b4566;background:#fff}
#modalDespesa .modal-head{background:linear-gradient(108deg,#222661,#5948ca);color:#fff;padding:25px 34px;margin:0 0 26px;border:0;position:sticky;top:0;z-index:2}#modalDespesa .modal-head .eyebrow{color:#c5cdff}#modalDespesa .modal-head .hint{color:#e0dfff}#modalDespesa .modal-head h2{font-size:clamp(27px,2.5vw,36px);color:#fff}#modalDespesa .modal-close{background:#ffffff30;color:#fff;width:45px;height:45px;flex-basis:45px;font-size:28px}
#formLancamento{padding:0 34px 30px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}#formLancamento>input[type=hidden]{display:none}#formLancamento>.row{grid-column:1/-1;gap:24px}#formLancamento>.row>label{margin:0 0 20px}#formLancamento>label,#formLancamento>div:not(.row){min-width:0}#formLancamento>label{margin:0 0 20px}#formLancamento #grupoVencimento,#formLancamento #grupoMensal,#formLancamento #camposParcelamento,#formLancamento #blocoBoletoNota,#formLancamento>.button-row{grid-column:1/-1}
#formLancamento label{font-size:14px!important;font-weight:750;color:#374466;margin-bottom:20px}#formLancamento input:not([type=hidden]),#formLancamento select,#formLancamento textarea{font-size:15px;min-height:53px;border:1.5px solid #d9e2f3;border-radius:12px;padding:12px 15px;background:#fafbff}#formLancamento #valor{font-size:19px;font-weight:800;color:#30259b}#formLancamento .document-fields{border:1px solid #dfe8ff!important;background:linear-gradient(130deg,#f4f5ff,#eef8ff)!important;padding:23px!important;margin-bottom:18px}#formLancamento .document-actions button{min-height:45px}#formLancamento #abrirScannerBoleto{background:#0d91a7!important;color:#fff!important}#formLancamento #copiarCodigoFormulario{background:#ddd5fc!important;color:#5832ac!important}#formLancamento>.button-row{border-top:1px solid #e5eaf4;padding-top:22px;margin-top:5px}#formLancamento #salvarLancamento{background:#059669!important;color:white!important;padding:15px 30px;font-size:16px}#formLancamento #limparLancamento{padding:15px 26px;font-size:15px}
@media(max-width:740px){.identity h1{font-size:19px}.new-expense-button{width:100%;justify-content:center;min-height:56px!important;font-size:16px!important}.dashboard-cta{display:flex;flex-direction:column;align-items:stretch}.dashboard-cta .tag{align-self:flex-start}.summary{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{min-height:106px;padding:16px!important}.metric strong{font-size:clamp(18px,4.5vw,24px)!important}.metric small{font-size:11px!important}.page-intro h2{font-size:27px}.tab{padding:12px}.filters{grid-template-columns:repeat(2,minmax(0,1fr))}#modalDespesa{padding:0;align-items:stretch}#modalDespesa .expense-modal{width:100vw!important;max-height:100dvh;min-height:100dvh;border-radius:0!important}#modalDespesa .modal-head{padding:20px 18px;margin-bottom:20px}#modalDespesa .modal-head h2{font-size:27px}#formLancamento{display:block;padding:0 18px 32px}#formLancamento>.row{display:grid;grid-template-columns:1fr;gap:0}#formLancamento label{font-size:14px!important;margin-bottom:18px}#formLancamento input:not([type=hidden]),#formLancamento select{min-height:54px}#formLancamento .document-fields{padding:16px!important}#formLancamento>.button-row{display:grid;grid-template-columns:1fr;gap:10px}#formLancamento>.button-row button{width:100%}.export-actions{grid-template-columns:1fr 1fr}.export-actions button{padding:11px 9px;font-size:12px}}
@media(max-width:390px){.summary{grid-template-columns:1fr 1fr}.metric strong{font-size:18px!important}.filters{grid-template-columns:1fr}}

/* V3: corrigido o container de duas colunas que deixava tabela com 340px. */
#dashboard .ledger-fullwidth{display:block!important;width:100%!important;max-width:none!important;min-width:0!important;grid-template-columns:none!important;margin:0 0 24px}
#dashboard .ledger-fullwidth>.ledger-card{width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;display:block!important;padding:26px 28px!important}
#dashboard .ledger-fullwidth .table-wrap{width:100%!important;max-width:100%!important;overflow-x:auto!important;border-radius:16px;border:1px solid #e0e7f4;box-shadow:inset 0 1px 4px #16234b09}
#dashboard .ledger-fullwidth table{min-width:1600px!important;width:100%!important;border-collapse:separate;border-spacing:0}
#dashboard .ledger-fullwidth th{background:#edf2fe;color:#41517a;font-size:11px;font-weight:800;padding:16px 15px;letter-spacing:.07em}
#dashboard .ledger-fullwidth td{padding:17px 15px;font-size:13px;border-bottom:1px solid #e9edf5}
#dashboard .ledger-fullwidth tbody tr:nth-child(even){background:#f8faff}
#dashboard .ledger-fullwidth tbody tr:hover{background:#eef3ff}
#dashboard .ledger-fullwidth .card-heading h3{font-size:21px;font-weight:850}
#dashboard .ledger-fullwidth .export-actions{display:flex!important;flex-wrap:wrap!important;gap:11px;margin:18px 0 22px}
#dashboard .ledger-fullwidth .export-actions button{min-height:44px;border-radius:12px;padding:12px 17px;font-size:13px}
#dashboard .ledger-fullwidth .actions{display:flex;gap:7px;flex-wrap:nowrap}
#dashboard .ledger-fullwidth .actions button{font-size:12px!important;padding:10px 12px!important;white-space:nowrap}
#dashboard .filter-card{padding:25px 27px!important;border:1px solid #dce4f5!important}
#dashboard .filters{gap:17px;align-items:end}
#dashboard .filters label{font-size:13px!important;font-weight:750!important;color:#37456b}
#dashboard .filters input,#dashboard .filters select{height:48px!important;font-size:14px!important;border-radius:12px!important;background:#f9fbff}
#dashboard .summary{gap:16px!important;margin-top:18px;margin-bottom:24px}
#dashboard .metric{border-radius:20px!important;min-height:145px!important;display:flex;flex-direction:column;justify-content:center}
#dashboard .metric strong{font-size:clamp(25px,2.55vw,38px)!important;letter-spacing:-.045em}
#dashboard .metric small{font-size:13px!important;letter-spacing:.015em}
#dashboard>.card{padding:25px 27px!important}
#dashboard .chart-row{font-size:13px;gap:18px;margin:14px 0}
#dashboard .track{height:15px;border-radius:50px}
#dashboard .bar{background:linear-gradient(90deg,#4f46e5,#32a1f7);border-radius:50px}
#mensalidadesCard{margin-top:24px}
#dashboard .page-intro h2{font-size:38px;font-weight:850}
#dashboard .page-intro p{font-size:14px}
#dashboard .new-expense-button{font-size:18px!important;min-height:62px!important}
@media(max-width:750px){#dashboard .ledger-fullwidth>.ledger-card{padding:18px 13px!important}#dashboard .ledger-fullwidth .export-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#dashboard .ledger-fullwidth .export-actions button{font-size:12px;min-width:0;padding:11px 8px}#dashboard .filter-card{padding:17px!important}#dashboard>.card{padding:18px!important}#dashboard .metric{min-height:108px!important;padding:15px!important}#dashboard .metric strong{font-size:clamp(18px,5vw,26px)!important}#dashboard .page-intro h2{font-size:30px}#dashboard .ledger-fullwidth .card-heading h3{font-size:19px}#dashboard .ledger-fullwidth .table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}#dashboard .chart-row{grid-template-columns:90px minmax(60px,1fr) 90px;gap:8px;font-size:11px}#dashboard .summary{gap:9px!important}}
@media(max-width:390px){#dashboard .ledger-fullwidth .export-actions{grid-template-columns:1fr 1fr}}
/* Visual realmente mobile: tabela de despesas vira cartões legíveis. */
@media(max-width:750px){
#dashboard .ledger-fullwidth .table-wrap{overflow:visible!important;border:0!important;box-shadow:none!important}
#dashboard .ledger-fullwidth table{min-width:0!important;width:100%!important;display:block!important}
#dashboard .ledger-fullwidth thead{display:none!important}
#dashboard .ledger-fullwidth tbody{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important;width:100%!important}
#dashboard .ledger-fullwidth tbody tr{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:9px 13px!important;padding:17px!important;border:1px solid #dfe6f5!important;border-radius:18px!important;background:white!important;box-shadow:0 5px 19px #2132580a!important;width:100%!important}
#dashboard .ledger-fullwidth tbody td{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:5px!important;min-width:0!important;white-space:normal!important;overflow-wrap:anywhere!important;padding:0!important;border:0!important;font-size:13px!important}
#dashboard .ledger-fullwidth tbody td:before{color:#7985a0;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
#dashboard .ledger-fullwidth tbody td:nth-child(1):before{content:'Compra'}
#dashboard .ledger-fullwidth tbody td:nth-child(2):before{content:'Empresa'}
#dashboard .ledger-fullwidth tbody td:nth-child(3):before{content:'Fornecedor'}
#dashboard .ledger-fullwidth tbody td:nth-child(4):before{content:'Categoria'}
#dashboard .ledger-fullwidth tbody td:nth-child(5):before{content:'Condição'}
#dashboard .ledger-fullwidth tbody td:nth-child(6):before{content:'Parcela'}
#dashboard .ledger-fullwidth tbody td:nth-child(7):before{content:'Cartão'}
#dashboard .ledger-fullwidth tbody td:nth-child(8):before{content:'Valor'}
#dashboard .ledger-fullwidth tbody td:nth-child(9):before{content:'Vencimento'}
#dashboard .ledger-fullwidth tbody td:nth-child(10):before{content:'Situação'}
#dashboard .ledger-fullwidth tbody td:nth-child(11):before{content:'Pagamento'}
#dashboard .ledger-fullwidth tbody td:nth-child(12):before{content:'Banco'}
#dashboard .ledger-fullwidth tbody td:nth-child(13):before{content:'Nota fiscal'}
#dashboard .ledger-fullwidth tbody td:nth-child(14):before{content:'Boleto'}
#dashboard .ledger-fullwidth tbody td:nth-child(15){grid-column:1/-1!important;border-top:1px solid #e6ebf5!important;padding-top:12px!important;margin-top:3px}
#dashboard .ledger-fullwidth tbody td:nth-child(15):before{content:'Ações'}
#dashboard .ledger-fullwidth tbody td:nth-child(8){grid-column:1!important;font-size:19px!important;font-weight:850!important;color:#2458d4}
#dashboard .ledger-fullwidth tbody td:nth-child(10){grid-column:2!important}
#dashboard .ledger-fullwidth tbody td:nth-child(15) .actions{width:100%!important;display:flex!important;flex-wrap:wrap!important;gap:8px!important}
#dashboard .ledger-fullwidth tbody td:nth-child(15) button{flex:1 1 auto!important;min-height:42px!important}
#dashboard .ledger-fullwidth tbody td.empty{grid-column:1/-1!important;text-align:center!important;display:block!important}
#dashboard .ledger-fullwidth tbody td.empty:before{display:none}
#dashboard .ledger-fullwidth .export-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:380px){#dashboard .ledger-fullwidth tbody tr{padding:13px!important;gap:8px!important}}

/* ===== V4: NOVA IDENTIDADE: SIDEBAR ESCURA + PAINEL CLARO ===== */
:root{--bg:#f3f5f7;--card:#fff;--text:#182b34;--muted:#667c85;--line:#e1e8e9;--blue:#087d87;--navy:#10292f;--green:#008e68;--red:#d94757;--amber:#d58420;--purple:#7456c7}
body{background:#f3f5f7!important;color:#182b34!important;font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif!important;font-size:15px!important}
#appScreen{min-height:100dvh}
#appScreen .topbar{position:fixed;left:0;top:0;bottom:0;width:250px;z-index:40;background:#102b31!important;background-image:none!important;box-shadow:7px 0 34px #0e2a3012}
#appScreen .topbar-inner{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:30px 20px!important;gap:28px}
#appScreen .identity{align-items:center;gap:11px}
#appScreen .top-logo{width:51px;height:51px;border-radius:15px;background:#28c0b5!important;box-shadow:none;font-size:19px}
#appScreen .identity h1{font-size:17px!important;font-weight:850;white-space:normal;line-height:1.12;color:#fff}
#appScreen .identity p{display:none}
#appScreen .profile{display:flex;flex-direction:column;align-items:stretch;gap:9px;padding-top:20px;border-top:1px solid #ffffff20}
#appScreen .profile-name{text-align:left;margin-bottom:4px;color:#fff}
#appScreen .profile-name small{color:#b1d0cf}
#appScreen .header-button{background:#ffffff13;border:1px solid #ffffff20;color:#e6f6f6;border-radius:10px;text-align:left;padding:12px 14px}
#appScreen .container{margin:0 0 0 250px;max-width:none;width:auto;padding:26px clamp(16px,2.6vw,43px) 40px!important;min-width:0}
#appScreen .tabs{position:fixed;top:139px;left:0;width:250px;z-index:41;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;max-height:calc(100dvh - 365px);gap:5px;margin:0;padding:12px;background:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important}
#appScreen .tab{width:100%;text-align:left;white-space:normal;font-size:14px;line-height:1.3;font-weight:670;color:#b5d0d0!important;background:transparent!important;border:0!important;border-radius:12px!important;padding:13px 16px!important;box-shadow:none!important}
#appScreen .tab.active{color:#102b31!important;background:#59ddd0!important;box-shadow:none!important}
#appScreen .tab:not(.active):hover{background:#ffffff15!important;color:#fff!important}
#appScreen .page-intro{background:#fff;border:1px solid #e3e9e8;border-radius:22px;padding:26px 29px;margin-bottom:21px;box-shadow:none}
#appScreen .page-intro .eyebrow{color:#008d8e;font-weight:850;font-size:11px;letter-spacing:.15em}
#appScreen .page-intro h2{font-size:34px!important;font-weight:830;letter-spacing:-.045em;color:#172c34}
#appScreen .page-intro p{color:#657b85;font-size:14px}
#appScreen .card{border-radius:20px!important;border:1px solid #e1e9e9!important;background:#fff!important;box-shadow:0 7px 24px #1f43500a!important;padding:24px!important}
#appScreen .card h3{font-size:18px;font-weight:800;color:#1b323a}
#appScreen .tag{background:#e9f7f5!important;color:#127875!important;border-radius:99px;padding:8px 12px;font-size:11px}
#appScreen .new-expense-button{background:#f0764e!important;color:#fff!important;border-radius:14px!important;box-shadow:0 8px 18px #e56d4b35!important;min-height:56px!important;font-size:16px!important;padding:13px 24px!important}
#appScreen .new-expense-button:hover{background:#db633e!important}
#appScreen .filter-card{border-left:5px solid #20a99f!important}
#appScreen .filters{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
#appScreen .filters input,#appScreen .filters select{background:#f8faf9!important;border:1px solid #dce6e5!important;height:46px;border-radius:11px!important}
#appScreen .summary{gap:15px!important;margin:19px 0 21px}
#appScreen .metric,#appScreen .metric:nth-child(1),#appScreen .metric:nth-child(2),#appScreen .metric:nth-child(3),#appScreen .metric:nth-child(4){background:#fff!important;min-height:140px!important;padding:22px!important;border:1px solid #e1e9e9!important;border-left:0!important;border-radius:18px!important;box-shadow:0 6px 20px #173e4309!important;position:relative;overflow:hidden}
#appScreen .metric:before{content:'';position:absolute;top:0;left:0;bottom:0;width:6px;background:#0d8f98}
#appScreen .metric.green:before{background:#0eaa79}#appScreen .metric.amber:before{background:#efaa44}#appScreen .metric.purple:before{background:#8a6cdb}
#appScreen .metric:after{display:none!important}
#appScreen .metric small{font-size:12px!important;color:#6d8087!important;font-weight:760!important}
#appScreen .metric strong{color:#117c86!important;font-size:clamp(22px,2.4vw,34px)!important;font-weight:850;margin-top:16px;line-height:1.2}
#appScreen .metric.green strong{color:#06966c!important}#appScreen .metric.amber strong{color:#c98524!important}#appScreen .metric.purple strong{color:#7963bc!important}
#appScreen #grafico .bar{background:#20b5a9!important}
#appScreen .ledger-fullwidth{display:block!important;width:100%!important;margin:0 0 22px!important}
#appScreen .ledger-fullwidth .ledger-card{display:block!important;width:100%!important;max-width:none!important;padding:24px!important}
#appScreen .ledger-fullwidth .table-wrap{width:100%!important;overflow-x:auto!important;border:1px solid #e2ebea!important;border-radius:14px!important}
#appScreen .ledger-fullwidth table{min-width:1560px!important;width:100%!important}
#appScreen .ledger-fullwidth th{background:#eaf4f2!important;color:#43656b!important;padding:17px 12px!important}
#appScreen .ledger-fullwidth td{font-size:13px!important;padding:15px 12px!important}
#appScreen .ledger-fullwidth tbody tr:nth-child(even){background:#f8faf9!important}
#appScreen .export-actions #exportarCSV{background:#0c9d76!important;color:#fff!important}
#appScreen .export-actions #importarCSVBtn{background:#087fbd!important;color:#fff!important}
#appScreen .export-actions #exportarBackup{background:#7b5ac5!important;color:#fff!important}
#appScreen .export-actions #importarBackupBtn{background:#eea144!important;color:#29220c!important}
#appScreen button{transition:background .15s,transform .15s}
#appScreen .filter-action button{background:#e5eeec!important;color:#366364!important}
#appScreen .primary{background:#087d87!important;color:white!important}#appScreen .success{background:#078e6e!important;color:white!important}#appScreen .danger{background:#e24f60!important;color:white!important}#appScreen .neutral{background:#e8f0f0!important;color:#295762!important}#appScreen .outline{background:#fff!important;border:1px solid #c4dbd9!important;color:#18747b!important}
#appScreen #mensalidadesCard{margin-top:22px}
#modalDespesa{z-index:150!important;background:#102c31ae!important;backdrop-filter:blur(8px)}
#modalDespesa .expense-modal{width:min(1050px,calc(100vw - 50px))!important;max-height:calc(100dvh - 44px)!important;box-shadow:0 36px 110px #09212755!important;border-radius:24px!important}
#modalDespesa .modal-head{background:#12373d!important;padding:25px 32px!important}
#modalDespesa .modal-head h2{color:#fff!important}
#modalDespesa #formLancamento{padding:12px 32px 32px!important;gap:0 24px}
#modalDespesa #formLancamento input,#modalDespesa #formLancamento select,#modalDespesa #formLancamento textarea{background:#f8faf9!important;border:1px solid #d9e4e2!important;font-size:15px}
#modalDespesa #salvarLancamento{background:#078c6b!important}
#modalDespesa #abrirScannerBoleto{background:#078eaa!important}
@media(max-width:1050px){#appScreen .topbar{width:205px}#appScreen .tabs{width:205px}#appScreen .container{margin-left:205px}#appScreen .filters{grid-template-columns:repeat(2,minmax(0,1fr))}#appScreen .summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
#appScreen .topbar{position:relative;top:auto;left:auto;bottom:auto;width:100%;height:auto;box-shadow:none}
#appScreen .topbar-inner{flex-direction:row;align-items:center;justify-content:space-between;padding:16px!important;gap:10px}
#appScreen .top-logo{width:43px;height:43px;font-size:16px}
#appScreen .identity h1{font-size:16px!important}
#appScreen .profile{border:0;padding:0;flex-direction:row;align-items:center;gap:5px}
#appScreen .profile-name{display:none}
#appScreen .header-button{font-size:11px;padding:9px!important}
#appScreen .container{margin-left:0;width:100%;padding:12px 12px 35px!important}
#appScreen .tabs{position:relative;top:auto;left:auto;max-height:none;width:100%;display:flex;flex-direction:row;gap:7px;overflow-x:auto;padding:7px 0 12px;background:transparent!important;margin:0 0 8px}
#appScreen .tab{width:auto;flex:0 0 auto;white-space:nowrap;border:1px solid #dbe9e7!important;color:#355e62!important;background:#fff!important;padding:11px 14px!important;font-size:12px}
#appScreen .tab.active{color:#073d3f!important;background:#6ee3d8!important;border-color:#6ee3d8!important}
#appScreen .page-intro{padding:22px 18px!important;border-radius:18px;flex-direction:column;align-items:stretch}
#appScreen .page-intro h2{font-size:29px!important}
#appScreen .dashboard-cta{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:11px}
#appScreen .new-expense-button{width:100%!important;min-height:58px!important;font-size:17px!important}
#appScreen .filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#appScreen .filters label{font-size:12px!important}
#appScreen .filters input,#appScreen .filters select{min-width:0;font-size:13px!important}
#appScreen .card{padding:17px!important;border-radius:17px!important}
#appScreen .summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px!important}
#appScreen .metric,#appScreen .metric:nth-child(n){min-height:112px!important;padding:16px!important;border-radius:15px!important}
#appScreen .metric strong{font-size:clamp(18px,5vw,25px)!important;margin-top:13px!important;overflow-wrap:anywhere}
#appScreen .ledger-fullwidth .ledger-card{padding:16px!important}
#appScreen .ledger-fullwidth .table-wrap{overflow:visible!important;border:0!important;box-shadow:none!important}
#appScreen .ledger-fullwidth table{display:block!important;min-width:0!important;width:100%!important}
#appScreen .ledger-fullwidth thead{display:none!important}
#appScreen .ledger-fullwidth tbody{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;width:100%!important}
#appScreen .ledger-fullwidth tbody tr{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px!important;width:100%!important;background:#fff!important;border:1px solid #dce9e6!important;padding:18px!important;border-radius:17px!important;box-shadow:0 6px 17px #19443d0c!important}
#appScreen .ledger-fullwidth tbody td{display:flex!important;flex-direction:column;white-space:normal!important;overflow-wrap:anywhere!important;min-width:0!important;padding:0!important;border:0!important;font-size:13px!important;gap:4px}
#appScreen .ledger-fullwidth tbody td:nth-child(8){font-weight:850!important;color:#117e78!important;font-size:22px!important}
#appScreen .ledger-fullwidth tbody td:last-child{grid-column:1/-1;border-top:1px solid #e6eeeb!important;padding-top:12px!important}
#appScreen .ledger-fullwidth tbody .actions{display:flex!important;flex-wrap:wrap!important;gap:7px}
#appScreen .ledger-fullwidth tbody .actions button{min-height:42px!important;flex:1 1 auto;font-size:12px!important}
#appScreen .export-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
#appScreen .export-actions button{font-size:11px!important;padding:12px 8px!important;min-height:45px}
#modalDespesa{padding:0!important;align-items:stretch!important}
#modalDespesa .expense-modal{width:100%!important;min-height:100dvh!important;max-height:100dvh!important;border-radius:0!important}
#modalDespesa .modal-head{padding:20px 17px!important}
#modalDespesa #formLancamento{display:block!important;padding:6px 18px 34px!important}
#modalDespesa #formLancamento>.row{grid-template-columns:1fr!important;gap:0!important}
#modalDespesa #formLancamento input,#modalDespesa #formLancamento select{min-height:52px!important}
#modalDespesa #formLancamento>.button-row{display:grid!important;grid-template-columns:1fr!important}
#modalDespesa #formLancamento>.button-row button{width:100%!important;min-height:52px!important}
}
@media(max-width:390px){#appScreen .filters{grid-template-columns:1fr}#appScreen .profile .header-button{font-size:10px;padding:7px!important}}


/* Redesign V5: sidebar hamburger colorido */

:root{--sidebar-w:290px;--sidebar-mini:94px;--teal:#06b6d4;--pink:#ef476f;--yellow:#f59e0b;--violet:#8b5cf6;--lime:#10b981;--ink:#0f172a}
body{background:linear-gradient(180deg,#eef7f9 0%,#f8fafc 30%,#eef6ff 100%)}
#appScreen .topbar{width:var(--sidebar-w)!important;background:linear-gradient(180deg,#0f766e 0%,#155e75 38%,#1e293b 100%)!important;box-shadow:10px 0 40px rgba(2,8,23,.18)!important}
#appScreen .tabs{width:var(--sidebar-w)!important;top:168px!important;padding:12px 16px 18px!important;gap:10px!important}
#appScreen .container{margin-left:var(--sidebar-w)!important;padding-top:24px!important}
#appScreen .topbar-inner{padding:24px 18px 20px!important;gap:20px!important}
.identity{align-items:flex-start!important}.identity-copy h1{color:#fff!important;font-size:22px!important}.identity-copy p{color:#d3f3ef!important;display:block!important}
.top-logo{background:linear-gradient(135deg,#22d3ee,#38bdf8)!important;color:#083344!important;font-weight:900;min-width:52px;display:grid;place-items:center}
.menu-toggle{width:46px;height:46px;border-radius:14px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.12);display:grid;place-content:center;gap:5px;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.12)}
.menu-toggle span{display:block;width:22px;height:2.5px;border-radius:20px;background:#fff}
.profile{flex-direction:column;align-items:stretch!important;gap:10px!important}.profile-name{text-align:left!important;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.1)}.profile-name b,.profile-name small{color:#fff!important}
.header-button{min-height:44px;border-radius:14px!important;border:0!important;font-weight:700!important}
#changePassword{background:#fff!important;color:#0f766e!important}.danger-soft{background:#f43f5e!important;color:#fff!important}
#appScreen .tabs .tab{display:flex!important;align-items:center;gap:12px;border-radius:18px!important;padding:14px 15px!important;color:#dceef7!important;background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.06)!important;box-shadow:none!important;transition:transform .18s ease, background .18s ease, box-shadow .18s ease}
#appScreen .tabs .tab:hover{transform:translateX(3px);background:rgba(255,255,255,.15)!important}
#appScreen .tabs .tab.active{background:linear-gradient(90deg,#ffffff,#f8fbff)!important;color:#102a43!important;box-shadow:0 14px 30px rgba(15,23,42,.16)!important}
.nav-ico{width:38px;height:38px;border-radius:14px;display:grid;place-items:center;font-size:19px;flex:0 0 38px;box-shadow:inset 0 1px 0 rgba(255,255,255,.22)}
.nav-ico.dashboard{background:linear-gradient(135deg,#22c55e,#10b981)}
.nav-ico.empresas{background:linear-gradient(135deg,#38bdf8,#6366f1)}
.nav-ico.fornecedores{background:linear-gradient(135deg,#fb7185,#f43f5e)}
.nav-ico.bancos{background:linear-gradient(135deg,#f59e0b,#fb7185)}
.nav-ico.cartoes{background:linear-gradient(135deg,#8b5cf6,#d946ef)}
.nav-ico.usuarios{background:linear-gradient(135deg,#06b6d4,#14b8a6)}
.nav-label{font-size:14px;font-weight:800;letter-spacing:.01em}
#appScreen .tabs .tab.active .nav-label{color:#0f172a}.sidebar-overlay{display:none}
body.sidebar-collapsed #appScreen .topbar{width:var(--sidebar-mini)!important}body.sidebar-collapsed #appScreen .tabs{width:var(--sidebar-mini)!important}body.sidebar-collapsed #appScreen .container{margin-left:var(--sidebar-mini)!important}
body.sidebar-collapsed .identity-copy,body.sidebar-collapsed .profile-name,body.sidebar-collapsed #changePassword,body.sidebar-collapsed .nav-label{display:none!important}
body.sidebar-collapsed #appScreen .topbar-inner{padding-inline:15px!important}body.sidebar-collapsed #appScreen .tabs{padding-inline:10px!important}body.sidebar-collapsed #appScreen .tabs .tab{justify-content:center!important;padding-inline:0!important}
#appScreen .page-intro{background:linear-gradient(135deg,#ffffff 0%,#f0fdfa 100%)!important;border:1px solid #dbefed!important;box-shadow:0 14px 34px rgba(15,23,42,.05)!important}
#appScreen .page-intro .eyebrow{color:#0f766e!important}.tag{background:linear-gradient(135deg,#cffafe,#dbeafe)!important;color:#155e75!important;border:1px solid #b6e4ea!important}
.new-expense-button{background:linear-gradient(135deg,#14b8a6,#0ea5e9)!important;border:0!important;color:#fff!important;min-height:50px!important;padding:14px 20px!important;border-radius:16px!important}
.success{background:linear-gradient(135deg,#22c55e,#10b981)!important;color:#fff!important}.neutral{background:#eef2ff!important;color:#374151!important}.outline{background:#fff7ed!important;color:#9a3412!important;border:1px solid #fed7aa!important}.danger{background:linear-gradient(135deg,#fb7185,#ef4444)!important;color:#fff!important}.primary{background:linear-gradient(135deg,#06b6d4,#3b82f6)!important;color:#fff!important}
#dashboard .metric,#appScreen .metric:nth-child(n){border:0!important;box-shadow:0 18px 32px rgba(15,23,42,.08)!important}
#appScreen .metric:nth-child(1){background:linear-gradient(135deg,#0ea5e9,#2563eb)!important}#appScreen .metric:nth-child(2){background:linear-gradient(135deg,#10b981,#22c55e)!important}#appScreen .metric:nth-child(3){background:linear-gradient(135deg,#f59e0b,#fb7185)!important}#appScreen .metric:nth-child(4){background:linear-gradient(135deg,#8b5cf6,#a855f7)!important}
#appScreen .metric:before{display:none!important}#appScreen .metric small,#appScreen .metric strong{color:#fff!important}
#appScreen .card{border:1px solid #e3efee!important;box-shadow:0 10px 26px rgba(15,23,42,.04)!important}
#appScreen .ledger-fullwidth .table-wrap{border-radius:18px!important;border:1px solid #d9ece9!important}
@media(max-width:980px){
  #appScreen .topbar{position:sticky!important;top:0;left:0;right:0;width:100%!important;z-index:100!important;background:linear-gradient(90deg,#0f766e,#155e75)!important}
  #appScreen .topbar-inner{padding:14px 12px!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:10px!important}
  .identity{flex:1 1 auto!important;min-width:0}.identity-copy h1{font-size:18px!important}.identity-copy p{display:none!important}
  .profile{flex-direction:row!important;align-items:center!important;gap:8px!important}.profile-name small{display:none!important}
  #changePassword{display:none!important}
  #appScreen .container{margin-left:0!important;padding:14px 12px 40px!important}
  #appScreen .tabs{position:fixed!important;top:0!important;left:0!important;bottom:0!important;transform:translateX(-105%);width:min(86vw,310px)!important;max-height:none!important;padding:90px 14px 20px!important;background:linear-gradient(180deg,#0f766e 0%,#155e75 40%,#1e293b 100%)!important;box-shadow:16px 0 45px rgba(15,23,42,.24)!important;transition:transform .22s ease;z-index:120!important}
  body.sidebar-open #appScreen .tabs{transform:translateX(0)!important}
  .sidebar-overlay{position:fixed;inset:0;background:rgba(15,23,42,.48);backdrop-filter:blur(2px);display:block;z-index:110}
  body.sidebar-collapsed #appScreen .container{margin-left:0!important}
  body.sidebar-collapsed .identity-copy,body.sidebar-collapsed .profile-name,body.sidebar-collapsed #changePassword,body.sidebar-collapsed .nav-label{display:initial}
  #appScreen .summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .new-expense-button{width:100%}
}
@media(max-width:560px){
  .profile-name{display:none!important}.header-button{min-height:40px;padding:0 12px!important}.menu-toggle{width:42px;height:42px;border-radius:12px}.top-logo{min-width:44px;width:44px;height:44px}.nav-ico{width:36px;height:36px;border-radius:12px}
  #appScreen .page-intro h2{font-size:26px!important}
  #appScreen .summary{grid-template-columns:1fr 1fr!important}
}
