:root{font-family:Inter,system-ui,Arial,sans-serif;color:#193338;background:#f4f7f4}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{border:0;border-radius:9px;background:#126c59;color:white;padding:10px 14px;cursor:pointer}button.secondary{background:#e8eee9;color:#193338}button:hover{filter:brightness(.93)}input,select{border:1px solid #b8c8c0;border-radius:8px;padding:9px;background:white;max-width:100%}label{display:grid;gap:4px;font-size:.87rem;font-weight:600}form{display:grid;gap:12px}h1,h2,h3{margin:0 0 12px}h1{font-size:1.55rem}h2{font-size:1.2rem}small,.muted{color:#607773}.shell{display:grid;grid-template-columns:210px 1fr;min-height:100vh}.sidebar{background:#123c35;color:white;padding:23px 16px}.sidebar h1{font-size:1.2rem}.sidebar button{display:block;width:100%;text-align:left;background:transparent;margin:3px 0}.sidebar button.active{background:#277461}.content{padding:27px;max-width:1350px;width:100%;margin:auto}.top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:25px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:13px}.card,.panel{background:white;border:1px solid #e3ebe5;border-radius:14px;padding:18px;box-shadow:0 2px 7px #153b2910}.card{cursor:pointer}.card strong{display:block;font-size:1.4rem;margin-top:8px}.card-breakdown{display:block;margin:4px 0}
.hero-balance{margin-bottom:13px}.hero-balance .card{max-width:420px}.hero-balance .card strong{font-size:2.3rem}.hero-balance .card small:first-child{font-size:.95rem}
.sidebar{display:flex;flex-direction:column}.sidebar-logout{margin-top:auto;background:transparent;border:1px solid #ffffff55;color:#fff}.sidebar-logout:hover{background:#ffffff1a}
.login-shell{display:grid;grid-template-columns:60% 40%;min-height:100vh}.login-brand-side{background:#00143B;display:flex;align-items:center;justify-content:center;padding:40px}.login-brand-side img{max-width:60%;max-height:220px;width:auto;height:auto;background:#fff;border-radius:20px;padding:28px 36px;box-shadow:0 10px 30px #00000030}.login-form-side{display:flex;align-items:center;justify-content:center;padding:24px}.login-panel{width:min(380px,100%)}
@media(max-width:800px){.login-shell{grid-template-columns:1fr;min-height:auto}.login-brand-side{padding:28px}.login-brand-side img{max-height:140px}}.card.warn strong{color:#ad5035}.card.good strong{color:#13705a}.panel{margin-top:16px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.split{display:grid;grid-template-columns:1fr 1fr;gap:16px}.tablewrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid #e7ece8;padding:10px 8px;font-size:.91rem}tr.click{cursor:pointer}tr.click:hover{background:#f4f8f5}.error{color:#a83d32}.success{color:#176851}.modalback{position:fixed;inset:0;background:#102c27a8;display:grid;place-items:center;padding:15px}.modal{background:white;border-radius:16px;padding:22px;width:min(530px,100%);max-height:90vh;overflow:auto}.modal .actions{display:flex;justify-content:flex-end;gap:8px;margin-top:15px}.bars{display:grid;gap:7px}.bar{height:12px;background:#e5ece7;border-radius:8px;overflow:hidden}.bar span{display:block;height:100%;background:#459b82}.tag{padding:3px 7px;border-radius:6px;background:#e8eee9;font-size:.78rem}@media(max-width:700px){.shell{display:block}.sidebar{padding:10px;position:sticky;top:0;z-index:2}.sidebar h1{display:none}.nav{display:flex;overflow-x:auto}.sidebar button{width:auto;white-space:nowrap}.content{padding:16px}.split{grid-template-columns:1fr}.top{align-items:flex-start}}
.matrix{min-width:620px}.matrix-row{display:grid;grid-template-columns:minmax(250px,2fr) repeat(3,minmax(120px,1fr));gap:0;align-items:center}.matrix-row>*{padding:10px 12px;text-align:right}.matrix-row>*:first-child{text-align:left}.matrix-head{background:#eef4ef;border-radius:9px;font-size:.85rem}.revenue-head{grid-template-columns:minmax(220px,2fr) repeat(2,minmax(120px,1fr))}.expense-group{margin-top:14px;border:1px solid #e3ebe5;border-radius:10px;padding:10px}.expense-group>summary,section.panel>details>summary{display:flex;justify-content:space-between;gap:14px;cursor:pointer;padding:8px}.matrix details{border-top:1px solid #e7ece8}.matrix-item{margin-left:18px;background:#fbfcfb}.num{text-align:right}.big{display:block;font-size:1.45rem;margin-top:5px}.mini{padding:4px 8px;font-size:.78rem}.dash-cards{grid-template-columns:repeat(3,minmax(210px,1fr))}@media(max-width:700px){.dash-cards{grid-template-columns:1fr}.matrix{min-width:650px}.panel{overflow-x:auto}}
.budget-scroll{overflow:auto;max-height:70vh;border:1px solid #e3ebe5;border-radius:10px}.budget-grid{width:max-content;min-width:100%}.budget-grid th,.budget-grid td{min-width:125px;text-align:right}.budget-grid .sticky-col{position:sticky;left:0;z-index:1;background:#fff;min-width:280px;text-align:left}.budget-grid thead th{position:sticky;top:0;z-index:2;background:#e8f0ea}.budget-grid thead .sticky-col{z-index:3}.budget-grid input.budget-cell{width:108px;text-align:right}.budget-grid input.saved{border-color:#168269;background:#edf8f3}.budget-grid .group-row td{background:#dce9e1;font-weight:700;text-align:left}.month-check{font-size:.7rem;font-weight:400;display:block;white-space:nowrap}
.matrix-five .matrix-row{grid-template-columns:minmax(250px,2fr) repeat(4,minmax(110px,1fr))}.consumed{display:inline-block;min-width:54px;padding:4px 8px;border-radius:999px;background:#e1f2e9;color:#126c59;text-align:center}.consumed.over{background:#fee7df;color:#a83d32}.due-highlight{border:2px solid #e2a746;background:linear-gradient(135deg,#fffdf8,#fff8e9);box-shadow:0 5px 18px #9b6b1824}.due-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.due-title>strong{font-size:1.45rem;color:#9b6416}.eyebrow{display:block;color:#9b6416;font-size:.72rem;font-weight:800;letter-spacing:.12em;margin-bottom:5px}.launch-toolbar{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin-bottom:16px}.danger{background:#a83d32}.cancelled{opacity:.55;text-decoration:line-through}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.transaction-editor{width:min(620px,100%)}@media(max-width:700px){.launch-toolbar,.form-grid{grid-template-columns:1fr}.matrix-five{min-width:780px}}
.tx-sort-head{display:inline-flex;align-items:center;gap:6px;padding:0;background:transparent;color:inherit;border:0;font:inherit;font-weight:800;white-space:nowrap}.tx-sort-head:hover,.tx-sort-head:focus-visible,.tx-sort-head.active{color:#002060;background:transparent}.tx-sort-head span{display:inline-block;min-width:12px;color:#60708a}.tx-sort-head.active span{color:#002060}
.dashboard-top{grid-template-columns:repeat(4,minmax(180px,1fr))}.dashboard-quadrants{display:grid;grid-template-columns:1.25fr 1.15fr .8fr;gap:16px;align-items:stretch}.dashboard-quadrants>.panel{min-width:0}.expense-summary details{border-top:1px solid #e7ece8;padding:5px 0}.expense-summary details:first-child{border-top:0}.expense-summary summary,.summary-line{display:flex;justify-content:space-between;gap:12px;padding:9px 4px}.summary-line{padding-left:18px;font-size:.88rem}.closing-value{padding:12px 0;border-bottom:1px solid #e7ece8}.closing-value strong{display:block;font-size:1.45rem;margin-top:5px}@media(max-width:1100px){.dashboard-quadrants{grid-template-columns:1fr 1fr}.closing-panel{grid-column:1/-1}}@media(max-width:700px){.dashboard-top,.dashboard-quadrants{grid-template-columns:1fr}.closing-panel{grid-column:auto}}
details>summary{list-style:none;position:relative;padding-left:30px!important}details>summary::-webkit-details-marker{display:none}details>summary:before{content:"▶";position:absolute;left:8px;top:50%;transform:translateY(-50%);width:18px;height:18px;display:grid;place-items:center;border-radius:50%;background:#dce9e1;color:#126c59;font-size:.68rem;font-weight:900}details[open]>summary:before{content:"▼"}.menu-toggle{width:38px!important;text-align:center!important;background:#ffffff20!important;font-size:1.1rem;margin-bottom:14px!important}.shell{transition:grid-template-columns .2s}.shell.menu-collapsed{grid-template-columns:64px 1fr}.menu-collapsed .sidebar h1,.menu-collapsed .sidebar .nav button{font-size:0}.menu-collapsed .sidebar .nav button{height:40px;padding:0}.menu-collapsed .sidebar .nav button:before{content:"•";font-size:1.5rem;display:block;text-align:center}.action-table th{position:sticky;top:0;background:#eef4ef;z-index:1}.action-table tbody tr:hover{background:#f5f9f6}.action-table input[type=checkbox]{width:17px;height:17px}.sort-head{background:transparent;color:#193338;padding:2px;font-weight:700}.card-sheet>summary,.financing-contract>summary{display:grid!important;grid-template-columns:auto 1fr auto;align-items:center;background:#eef4ef;border-radius:9px}.credit-matrix{width:max-content;min-width:100%}.credit-matrix th,.credit-matrix td{min-width:115px;text-align:right;white-space:nowrap}.credit-matrix .sticky-col{position:sticky;left:0;background:white;z-index:2;min-width:260px;text-align:left}.credit-matrix thead th,.credit-matrix tfoot th{background:#e5efe9}.credit-matrix thead .sticky-col,.credit-matrix tfoot .sticky-col{z-index:3}.budget-scroll{max-height:calc(100vh - 210px)}.budget-grid th,.budget-grid td{padding:7px 8px}.budget-grid input.budget-cell{height:34px}.panel:has(.budget-grid){padding:12px;max-width:calc(100vw - 250px)}.menu-collapsed .panel:has(.budget-grid){max-width:calc(100vw - 104px)}button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:700px){.shell.menu-collapsed{grid-template-columns:1fr}.panel:has(.budget-grid),.menu-collapsed .panel:has(.budget-grid){max-width:100%}}
.dashboard-quadrants .matrix{min-width:0}.dashboard-quadrants .matrix-row{grid-template-columns:minmax(120px,1.5fr) repeat(2,minmax(78px,1fr))}.dashboard-quadrants .matrix-row>*{padding:9px 6px}.dashboard-quadrants .panel{overflow:hidden}.dashboard-quadrants .expense-summary{font-size:.86rem}.dashboard-quadrants .expense-summary summary{padding-right:4px!important}.dashboard-quadrants .summary-line{padding-left:12px}
.expense-group>.class-summary{display:grid;grid-template-columns:minmax(250px,2fr) repeat(4,minmax(110px,1fr));align-items:center;padding:0!important;background:#f7faf8;border-radius:9px}.expense-group>.class-summary>*{padding:10px 12px;text-align:right}.expense-group>.class-summary>*:first-child{text-align:left;padding-left:34px}
:root{color:#002060;background:#f6f7fa}.sidebar{background:#002060;color:#fff}.sidebar h1{display:grid;gap:8px;margin-bottom:20px}.brand-logo{display:block;width:100%;max-width:180px;height:auto;object-fit:contain}.brand-name{font-size:1rem;color:#CDAC80;letter-spacing:.02em}.sidebar button.active{background:#CDAC80;color:#002060;font-weight:800}.sidebar .nav button:before{display:inline-grid;place-items:center;width:24px;margin-right:7px;color:#CDAC80;font-weight:800}.sidebar .nav button.active:before{color:#002060}.sidebar .nav button[data-page="Visão geral"]:before{content:"◫"}.sidebar .nav button[data-page="Orçamento"]:before{content:"▦"}.sidebar .nav button[data-page="Lançamentos"]:before{content:"⇄"}.sidebar .nav button[data-page="Financiamento"]:before{content:"%"}.sidebar .nav button[data-page="Investimentos"]:before{content:"↗"}.sidebar .nav button[data-page="Cartão de crédito"]:before{content:"▣"}.menu-collapsed .brand-logo,.menu-collapsed .brand-name{display:none}.menu-collapsed .sidebar .nav button:before{font-size:1.25rem;margin:0;width:100%;content:initial}.menu-collapsed .sidebar .nav button[data-page="Visão geral"]:before{content:"◫"}.menu-collapsed .sidebar .nav button[data-page="Orçamento"]:before{content:"▦"}.menu-collapsed .sidebar .nav button[data-page="Lançamentos"]:before{content:"⇄"}.menu-collapsed .sidebar .nav button[data-page="Financiamento"]:before{content:"%"}.menu-collapsed .sidebar .nav button[data-page="Investimentos"]:before{content:"↗"}.menu-collapsed .sidebar .nav button[data-page="Cartão de crédito"]:before{content:"▣"}button{background:#002060}.card.good strong,.consumed{color:#002060}.consumed{background:#f2e9dc}.bar span{background:#CDAC80}.tag{background:#f2e9dc;color:#002060}.group-row td,.budget-grid thead th,.credit-matrix thead th,.credit-matrix tfoot th,.action-table th{background:#eef1f7}.modalback{z-index:1000}.budget-item-name{display:flex;justify-content:space-between;gap:8px;align-items:center}.group-row .sticky-col{display:flex;align-items:center;gap:8px}.group-toggle{padding:3px 7px;background:#002060}.finance-cards{grid-template-columns:repeat(5,minmax(160px,1fr))}.finance-actions{margin-top:16px}.fin-summary{display:grid!important;grid-template-columns:minmax(220px,2fr) repeat(4,minmax(110px,1fr))!important;align-items:center}.fin-summary>span{display:grid;padding:8px 10px}.fin-summary small{font-size:.72rem}.fin-contract-name{font-weight:800;font-size:1rem}.finance-table th,.finance-table td{vertical-align:middle}.card-controls{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.card-controls fieldset{display:flex;gap:14px;border:1px solid #CDAC80;border-radius:10px;padding:8px 12px}.card-controls fieldset label{display:flex;align-items:center;gap:5px}.card-charts{display:grid;grid-template-columns:1fr 1.5fr;gap:16px}.pie-wrap{display:flex;align-items:center;gap:24px}.pie{width:170px;height:170px;border-radius:50%;flex:none}.legend{flex:1}.legend p{display:grid;grid-template-columns:12px 1fr auto;gap:8px;align-items:center}.legend i{width:12px;height:12px;border-radius:3px}.bar-chart{height:220px;display:flex;gap:10px;align-items:flex-end;padding-top:35px}.bar-chart>div{flex:1;height:180px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:5px;position:relative}.bar-chart i{display:block;width:min(34px,75%);background:#002060;border-radius:5px 5px 0 0}.bar-value{font-size:.68rem;transform:rotate(-45deg);white-space:nowrap;margin-bottom:8px}.unified-card-table th,.unified-card-table td{white-space:nowrap}.table-title{justify-content:space-between}.danger{background:#9c2d2d}@media(max-width:1000px){.finance-cards{grid-template-columns:repeat(2,1fr)}.card-charts{grid-template-columns:1fr}.fin-summary{grid-template-columns:1fr 1fr!important}}
.brand-logo{background:#FFFFFF;padding:7px;border-radius:9px;box-shadow:0 0 0 1px #CDAC80}
.card-controls fieldset{flex-wrap:wrap;max-width:100%}.card-charts .panel{min-width:0;overflow:auto}.bar-chart{min-width:620px}.content{min-width:0}.shell{max-width:100vw}.unified-card-table{min-width:1050px}
.content{margin:0 auto;align-self:start;min-height:100vh}.shell>main.content{padding-top:27px}
.card.blue{border-top:4px solid #2563a8}.card.blue strong{color:#2563a8}.card.red{border-top:4px solid #b23b3b}.card.red strong{color:#b23b3b}.finance-cards .card.good{border-top:4px solid #23865f}.finance-cards .card.good strong{color:#23865f}.finance-actions{margin:24px 0 14px;gap:14px}.finance-actions button{min-height:42px;padding:10px 18px}.financing-contract{padding:14px 18px;margin-top:20px}.financing-contract>.fin-summary{background:linear-gradient(90deg,#eef1f7,#f8f5ef);border:1px solid #dce2eb;border-radius:10px;margin-bottom:10px}.fin-summary:before{background:#CDAC80;color:#002060}.finance-table{border:1px solid #dfe4ec;border-radius:10px;overflow:hidden}.finance-table thead th{height:46px;background:#002060;color:#fff;border-color:#173872}.finance-table .sort-head{color:#fff}.finance-table tbody tr:nth-child(even){background:#f7f8fb}.finance-table tbody tr:hover{background:#f2e9dc}.finance-table td{height:46px;border-bottom:1px solid #e3e7ee}.finance-table th:nth-child(n+4):nth-child(-n+6),.finance-table td:nth-child(n+4):nth-child(-n+6){text-align:right}.finance-table td:nth-child(2){font-weight:700;color:#002060}.finance-table .tag{display:inline-block;min-width:92px;text-align:center;padding:5px 9px}.finance-table td:last-child{min-width:135px}.finance-table input[type=checkbox]{accent-color:#002060}
:root{font-family:"Segoe UI",Roboto,Arial,sans-serif;color:#202938;background:#f7f8fa}body{background:#f7f8fa;font-size:15px;-webkit-font-smoothing:antialiased}.sidebar{background:#00143B}.sidebar button{color:#fff}.sidebar button.active{background:#C7A574;color:#00143B}.sidebar .nav button:before{color:#C7A574}.sidebar .nav button.active:before{color:#00143B}.brand-name{color:#D3B786}.menu-toggle{background:#ffffff12!important;color:#fff}h1,h2,h3{color:#00143B;font-weight:700;letter-spacing:-.015em}.top small,.muted,small{color:#687386}.content{color:#202938}button{background:#00143B;color:#fff;font-weight:600}button.secondary{background:#eef0f3;color:#00143B}input,select{border-color:#cbd2dc;color:#202938}.card,.panel{border-color:#e2e6ec;box-shadow:0 2px 8px #00143b0b}.card strong{color:#00143B}.card.blue{border-top-color:#00143B}.card.blue strong{color:#00143B}.card.red{border-top-color:#A8483A}.card.red strong,.card.warn strong{color:#A8483A}.card.good,.finance-cards .card.good{border-top-color:#337B5B}.card.good strong,.finance-cards .card.good strong{color:#337B5B}.action-table th,.budget-grid thead th,.credit-matrix thead th,.credit-matrix tfoot th,.group-row td{background:#eef1f5;color:#00143B}.finance-table thead th{background:#00143B;color:#fff}.finance-table .sort-head{color:#fff}.financing-contract>.fin-summary{background:linear-gradient(90deg,#f4f1eb,#faf9f6);border-color:#ded5c7}.fin-summary:before{background:#C7A574;color:#00143B}.tag,.consumed{background:#f2ede5;color:#00143B}.bar-chart i{background:#00143B}.due-highlight{border-color:#C7A574;background:#fffdf9}.eyebrow,.due-title>strong{color:#8b672f}.sidebar .nav button:hover{background:#ffffff12}.sidebar .nav button.active:hover{background:#C7A574}.pie{box-shadow:inset 0 0 0 1px #ffffff}.card-charts .panel h2{font-weight:700}
.sidebar{padding:20px 14px}.sidebar h1{border-bottom:1px solid #ffffff24;padding-bottom:16px;margin-bottom:10px}.brand-logo{padding:5px;border-radius:6px}.brand-name{text-align:center;font-size:.78rem;color:#fff;font-weight:500}.sidebar .nav button{display:flex;align-items:center;gap:11px;padding:10px 11px;margin:2px 0;border-radius:8px;font-size:.9rem;font-weight:500}.sidebar .nav button:before,.menu-collapsed .sidebar .nav button:before{content:none!important;display:none!important}.menu-icon{width:19px;height:19px;display:grid;place-items:center;flex:none;color:#d5dde8}.menu-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.sidebar .nav button.active{background:#31506a;color:#fff;font-weight:600}.sidebar .nav button.active .menu-icon{color:#fff}.sidebar .nav button:hover{background:#ffffff10}.sidebar .nav button.active:hover{background:#31506a}.menu-section{color:#8ba9be;font-size:.62rem;font-weight:800;letter-spacing:.12em;margin:14px 7px 5px;border-top:1px solid #ffffff16;padding-top:12px}.menu-section:first-child{border-top:0;margin-top:6px;padding-top:4px}.menu-collapsed .menu-section{display:none}.menu-collapsed .sidebar .nav button{height:42px;padding:0;justify-content:center}.menu-collapsed .menu-label{display:none}.menu-collapsed .menu-icon{width:22px;height:22px}.menu-collapsed .menu-icon svg{width:20px;height:20px}.menu-collapsed .sidebar h1{display:none}.menu-toggle{border-radius:7px;width:36px!important;height:36px;padding:0!important}
.sidebar{position:relative;padding-top:18px}.sidebar h1{display:grid;justify-items:center;padding:0 8px 15px;margin:0 0 10px;border-bottom:1px solid #ffffff2c}.brand-logo{width:150px;max-width:calc(100% - 20px);background:transparent;padding:0;border:0;border-radius:0;box-shadow:none;filter:brightness(0) invert(1);margin-top:2px}.brand-name{font-size:.68rem;color:#fff;font-weight:600;text-align:center;margin-top:3px}.menu-toggle{position:absolute;top:16px;right:9px;z-index:3;background:transparent!important;color:#9fb0bf!important;width:27px!important;height:27px!important;font-size:0!important;margin:0!important}.menu-toggle:before{content:"☰";font-size:15px;font-weight:400}.menu-toggle:hover{background:#ffffff10!important;color:#fff!important}.menu-collapsed .menu-toggle{right:50%;transform:translateX(50%)}.menu-collapsed .sidebar{padding-top:58px}.menu-collapsed .sidebar h1{display:none}
.expand-all-controls{display:flex;justify-content:flex-end;gap:7px;margin:4px 0 10px}.expand-all-controls button{border:1px solid #d4dae3;background:#fff;color:#00143B;padding:5px 9px}.expand-all-controls button:hover{background:#eef1f5}.budget-expand-controls{padding:0 4px;margin-top:-4px;margin-bottom:8px}
.chart-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.chart-legend{display:flex;gap:16px;font-size:.82rem;white-space:nowrap}.chart-legend span{display:flex;align-items:center;gap:6px}.chart-legend i{width:11px;height:11px;border-radius:3px}.planned-dot,.planned-bar{background:#C7A574}.actual-dot,.actual-bar{background:#00143B}.horizontal-chart{display:grid;gap:10px;margin-top:16px}.expense-bar-row{display:grid;grid-template-columns:190px 1fr;gap:14px;align-items:center}.bar-label{display:flex;justify-content:space-between;align-items:center;gap:8px}.bar-label small{background:#eef1f5;color:#536173;border-radius:999px;padding:3px 7px;font-size:.68rem}.bar-pair{display:grid;gap:4px}.bar-track{height:17px;background:#f0f2f5;border-radius:4px;position:relative;overflow:visible}.bar-track span{display:block;height:100%;min-width:2px;border-radius:4px}.bar-track em{position:absolute;left:8px;top:50%;transform:translateY(-50%);font-size:.72rem;font-style:normal;font-weight:700;color:#202938;text-shadow:0 1px 2px #fff,0 0 3px #fff}.actual-bar+em{color:#fff;text-shadow:0 1px 2px #00143B}.expense-chart{padding:20px}@media(max-width:700px){.chart-heading{display:block}.chart-legend{margin-top:10px}.expense-bar-row{grid-template-columns:1fr}.bar-label{justify-content:flex-start}}
.actual-bar+em{color:#202938;text-shadow:0 1px 2px #fff,0 0 3px #fff}
.dashboard-top .card{border-top:4px solid #00143B}.dashboard-top .card:nth-child(1){border-top-color:#00143B}.dashboard-top .card:nth-child(1) strong{color:#00143B}.dashboard-top .card:nth-child(2),.dashboard-top .card:nth-child(3){border-top-color:#A8483A}.dashboard-top .card:nth-child(2) strong,.dashboard-top .card:nth-child(3) strong{color:#A8483A}.dashboard-top .card:nth-child(4){border-top-color:#337B5B}.dashboard-top .card:nth-child(4) strong{color:#337B5B}.dashboard-top .card:nth-child(4).warn{border-top-color:#A8483A}.dashboard-top .card:nth-child(4).warn strong{color:#A8483A}.investment-cards{grid-template-columns:repeat(3,minmax(210px,1fr))}.investment-cards .card.blue{border-top:4px solid #00143B}.investment-cards .card.good{border-top:4px solid #337B5B}.investment-cards .card.red{border-top:4px solid #A8483A}.investment-actions{margin:24px 0 14px;gap:14px}.investment-actions button{min-height:42px;padding:10px 18px}.investment-account{padding:14px 18px;margin-top:20px}.investment-account>.investment-summary{display:grid;grid-template-columns:minmax(240px,2fr) repeat(3,minmax(135px,1fr));align-items:center;background:linear-gradient(90deg,#f4f1eb,#faf9f6);border:1px solid #ded5c7;border-radius:10px;margin-bottom:10px}.investment-summary>span{display:grid;padding:9px 12px}.investment-summary small{font-size:.72rem}.investment-name{font-size:1rem;font-weight:800;color:#00143B}.investment-name small{font-weight:400;margin-top:3px}.investment-table{border:1px solid #dfe4ec}.investment-table thead th{height:46px;background:#00143B;color:#fff}.investment-table tbody tr:nth-child(even){background:#f7f8fb}.investment-table tbody tr:hover{background:#f2ede5}.investment-table td{height:46px}.positive-value{color:#337B5B;font-weight:700}.negative-value{color:#A8483A;font-weight:700}.investment-kind{min-width:100px;text-align:center}.investment-kind.rendimento{background:#e6f1eb;color:#266b4d}.investment-kind.aporte{background:#e8edf5;color:#00143B}.investment-kind.resgate,.investment-kind.taxa{background:#f6e9e6;color:#9a4035}@media(max-width:850px){.investment-cards{grid-template-columns:1fr}.investment-account>.investment-summary{grid-template-columns:1fr 1fr}}
.vertical-chart-scroll{overflow-x:auto;padding:10px 4px 5px;margin-top:8px}.vertical-chart{position:relative;display:grid;grid-template-columns:repeat(var(--chart-columns),minmax(105px,1fr));min-width:calc(var(--chart-columns) * 105px);height:310px;border-bottom:1px solid #cfd6e0;padding:34px 8px 0}.chart-grid-lines{position:absolute;inset:35px 8px 64px;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}.chart-grid-lines i{display:block;border-top:1px dashed #dfe4eb}.vertical-group{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;min-width:0}.vertical-bars{height:230px;display:flex;justify-content:center;align-items:flex-end;gap:7px;padding:0 7px}.vertical-bar-wrap{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;position:relative;width:38px}.vertical-bar-wrap>span{font-size:.62rem;font-weight:700;white-space:nowrap;margin-bottom:4px;color:#354153}.vertical-bar{display:block;width:30px;border-radius:5px 5px 0 0;box-shadow:inset 0 1px 0 #ffffff55}.vertical-bar.planned-bar{background:#C7A574}.vertical-bar.actual-bar{background:#00143B}.vertical-label{height:56px;text-align:center;padding:8px 3px 0;display:flex;flex-direction:column;align-items:center;gap:3px}.vertical-label b{font-size:.7rem;line-height:1.15;max-width:105px;overflow:hidden;text-overflow:ellipsis}.vertical-label small{font-size:.62rem;background:#eef1f5;border-radius:999px;padding:2px 6px}.vertical-expense-chart{padding-bottom:14px}@media(max-width:700px){.vertical-chart{grid-template-columns:repeat(var(--chart-columns),105px)}}
.vertical-chart-scroll{overflow-x:auto;overflow-y:hidden;padding-bottom:8px}
.budget-panel{padding:18px;max-width:calc(100vw - 250px)}.budget-toolbar{display:flex;justify-content:space-between!important;align-items:flex-start;gap:24px;margin-bottom:8px}.budget-toolbar>div{flex:1}.budget-toolbar>button{flex:none;margin-top:10px}.budget-expand-controls{justify-content:flex-end;margin:4px 0 8px;padding:0}.budget-scroll{border:1px solid #dfe4eb;border-radius:10px;background:#fff}.budget-grid thead th{background:#eef1f5;color:#00143B;height:58px;border-bottom:1px solid #d5dce5}.budget-grid .group-row td{background:#f8f9fb!important;border-bottom:1px solid #dfe4eb;height:44px;padding:6px 10px}.budget-grid .group-row:hover td{background:#f3f5f8!important}.budget-grid .group-row .sticky-col{display:flex;align-items:center;gap:10px;min-width:350px}.budget-grid .group-row .sticky-col b{font-size:.86rem;font-weight:700;letter-spacing:.015em}.budget-grid .group-row td[colspan]{background:#f8f9fb!important}.budget-grid .group-toggle{width:24px;height:24px;border-radius:5px;padding:0;background:transparent;color:#536173;border:1px solid #cbd3de;font-size:.7rem}.budget-grid .group-toggle:hover{background:#e8edf3}.budget-grid [data-addgroup]{margin-left:auto;background:#fff;color:#00143B;border:1px solid #cbd3de;padding:4px 9px;font-weight:600}.budget-grid [data-addgroup]:hover{border-color:#C7A574;background:#fbf8f3}.budget-grid tr[data-budget-group] td{background:#fff;height:48px}.budget-grid tr[data-budget-group]:hover td{background:#fafbfc}.budget-item-name{padding-left:34px!important}.budget-item-name>span:first-child{font-size:.84rem}.budget-item-name .mini{opacity:.78}.budget-grid input.budget-cell{height:32px;border-radius:6px;background:#fff}.budget-grid input.budget-cell:focus{outline:2px solid #C7A574;border-color:#C7A574}.month-check{color:#677386}.menu-collapsed .budget-panel{max-width:calc(100vw - 104px)}@media(max-width:700px){.budget-panel,.menu-collapsed .budget-panel{max-width:100%;padding:12px}.budget-toolbar{display:block}.budget-toolbar>button{margin:4px 0 8px}}
.budget-grid tfoot th,.budget-grid tfoot td{position:sticky;bottom:0;z-index:3;background:#00143B!important;color:#fff;border-top:2px solid #C7A574;height:46px;padding:9px 10px}.budget-grid tfoot .sticky-col{left:0;z-index:5;text-align:left;font-size:.9rem;letter-spacing:.04em}.budget-grid tfoot td{text-align:right;white-space:nowrap}
.budget-toolbar-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.budget-toolbar-actions button{margin:0}.budget-grid tfoot .budget-total-income th,.budget-grid tfoot .budget-total-income td{bottom:92px;background:#315879!important}.budget-grid tfoot .budget-total-expense th,.budget-grid tfoot .budget-total-expense td{bottom:46px;background:#17365f!important}.budget-grid tfoot .budget-grand-total th,.budget-grid tfoot .budget-grand-total td{bottom:0;background:#00143B!important}@media(max-width:800px){.budget-toolbar-actions{justify-content:flex-start;margin-top:10px}}

/* Cartões: barra de ações, filtros e gráfico de distribuição */
.menu-section{display:none!important}
.sidebar .nav{padding-top:4px}
.card-controls{background:#fff;border:1px solid #e2e6ec;border-radius:14px;padding:14px 16px;margin-bottom:14px;box-shadow:0 2px 8px #00143b0b;align-items:center}
.card-controls>.row{gap:10px}.card-controls>.row button{min-height:42px;padding:10px 17px}
.card-controls>.row button:first-child{background:#fff;color:#00143B;border:1px solid #00143B}.card-controls>.row button:first-child:hover{background:#f1f4f8}
.card-controls fieldset{margin:0;border:1px solid #d7dce4;background:#f7f8fa;border-radius:10px;padding:7px 9px;gap:7px}
.card-controls fieldset legend{padding:0 5px;color:#687386;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.card-controls fieldset label{display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #dfe3e9;border-radius:8px;background:#fff;color:#314052;font-size:.82rem;cursor:pointer;transition:.15s}
.card-controls fieldset label:has(input:checked){border-color:#C7A574;background:#faf6ef;color:#00143B}.card-controls fieldset input{margin:0;accent-color:#00143B}
.card-controls+.grid{margin-bottom:2px}.card-controls+.grid .card{border-top:3px solid #C7A574}
.pie{position:relative;display:grid;place-items:center;width:190px;height:190px;box-shadow:none}.pie:after{content:"";position:absolute;width:112px;height:112px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px #e3e7ed}.pie>span{position:relative;z-index:1;display:grid;gap:3px;text-align:center;max-width:98px}.pie>span small{font-size:.7rem;line-height:1.15;color:#687386}.pie>span b{font-size:1rem;color:#00143B}
.card-charts .legend p{margin:10px 0;padding-bottom:8px;border-bottom:1px solid #edf0f4}.card-charts .legend p:last-child{border-bottom:0}
@media(max-width:800px){.card-controls{align-items:stretch}.card-controls>.row,.card-controls fieldset{width:100%}.card-controls>.row button{flex:1}.pie-wrap{align-items:flex-start}.pie{width:160px;height:160px}.pie:after{width:96px;height:96px}}

/* Subtotais do orçamento e prevenção de sobreposição nos gráficos */
.budget-subtotal td{background:#f1f4f8;border-top:2px solid #cfd7e2;border-bottom:1px solid #cfd7e2;color:#00143B;text-align:right;height:42px}
.budget-subtotal .sticky-col{background:#f1f4f8!important;text-align:left;padding-left:34px;font-size:.82rem}
.budget-subtotal b{font-size:.82rem;white-space:nowrap}
.card-charts{grid-template-columns:minmax(430px,1.05fr) minmax(520px,1.45fr)}
.card-charts>.panel{overflow:hidden}
.pie-wrap{display:grid;grid-template-columns:160px minmax(0,1fr);gap:16px;align-items:center}
.pie{width:150px;height:150px}.pie:after{width:88px;height:88px}.pie>span{max-width:76px}.pie>span small{font-size:.62rem}.pie>span b{font-size:.88rem}
.card-charts .legend{min-width:0}.card-charts .legend p{grid-template-columns:11px minmax(0,1fr) auto;gap:7px}.card-charts .legend span{min-width:0;overflow-wrap:anywhere;font-size:.78rem}.card-charts .legend b{white-space:nowrap;font-size:.78rem}
.bar-chart{min-width:0;gap:7px}.bar-chart>div{min-width:0}.bar-value{font-size:.61rem}
@media(max-width:1150px){.card-charts{grid-template-columns:1fr}.card-charts>.panel{overflow-x:auto}.bar-chart{min-width:620px}}
@media(max-width:560px){.pie-wrap{grid-template-columns:1fr}.pie{margin:auto}.card-charts .legend{width:100%}}
.page-heading{display:flex;flex-direction:column;gap:5px}.page-heading h1{margin:0}.page-kicker{order:-1;color:#7a8492!important;font-size:.72rem;font-weight:500;letter-spacing:.015em}
.page-actions{margin-bottom:14px}.import-hero{border-left:4px solid #C7A574}.import-grid{grid-template-columns:repeat(2,minmax(280px,1fr));margin-top:16px}.import-card{cursor:default;border-top:4px solid #00143B;display:flex;flex-direction:column;gap:10px}.import-card h2,.import-card p{margin:0}.import-type{align-self:flex-start;background:#f1eadf;color:#765a2d;font-size:.68rem;font-weight:800;padding:4px 8px;border-radius:999px}.download-template{display:inline-flex;justify-content:center;border:1px solid #00143B;border-radius:8px;padding:9px 12px;color:#00143B;text-decoration:none;font-weight:700}.download-template:hover{background:#f1f4f8}.upload-label{border:1px dashed #aeb8c6;border-radius:9px;padding:10px;background:#fafbfc}.upload-label input{margin-top:7px;width:100%;padding:5px}.import-card small.success{color:#337B5B}.import-card small.error{color:#A8483A}@media(max-width:750px){.import-grid{grid-template-columns:1fr}}
.registry-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.registry-panel{margin-top:0}.registry-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:14px;border-bottom:1px solid #e5e8ed}.registry-heading h2,.registry-heading p{margin:0}.registry-heading p{margin-top:5px}.registry-heading button{white-space:nowrap}.registry-list{display:grid}.registry-list>div{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:13px 4px;border-bottom:1px solid #edf0f4}.registry-list>div:last-child{border-bottom:0}.registry-list span{display:grid;gap:3px}.registry-list small{font-size:.7rem;text-transform:capitalize}@media(max-width:800px){.registry-grid{grid-template-columns:1fr}.registry-heading{display:block}.registry-heading button{margin-top:12px}}
.registry-list>div>span{flex:1}.registry-list>div>strong{white-space:nowrap}.registry-actions{display:flex;gap:6px;justify-content:flex-end}.registry-actions button{white-space:nowrap}@media(max-width:560px){.registry-list>div{align-items:flex-start;flex-wrap:wrap}.registry-actions{width:100%;justify-content:flex-start}}
.investment-row-actions{display:flex;gap:6px;justify-content:flex-end;white-space:nowrap}.investment-actions{align-items:center;gap:10px;flex-wrap:wrap}.investment-actions>span{color:#667085;font-size:.86rem}.investment-table th:first-child,.investment-table td:first-child{width:34px;text-align:center}.investment-table th:last-child,.investment-table td:last-child{width:142px}.investment-table input[type="checkbox"]{width:16px;height:16px}
.credit-card-summaries{grid-template-columns:repeat(3,minmax(240px,1fr));margin:14px 0}.credit-card-summary{display:grid;gap:8px;border-top:3px solid #C7A574}.credit-card-summary>strong{font-size:1.45rem}.credit-card-actions,.card-row-actions{display:flex;gap:6px;align-items:center}.card-row-actions{white-space:nowrap}@media(max-width:900px){.credit-card-summaries{grid-template-columns:1fr}}

/* Tabela de cartões: todas as colunas visíveis sem rolagem horizontal */
.tablewrap:has(>.unified-card-table){overflow-x:hidden;width:100%}
.unified-card-table{width:100%;min-width:0!important;table-layout:fixed}
.unified-card-table th,.unified-card-table td{padding:8px 4px;font-size:.72rem;white-space:normal!important;overflow-wrap:anywhere;vertical-align:middle}
.unified-card-table .card-column-sort{display:flex;align-items:center;justify-content:flex-start;gap:2px;width:100%;padding:0;font-size:.71rem;line-height:1.12;white-space:normal;text-align:left}
.unified-card-table th.num .card-column-sort{justify-content:flex-end;text-align:right}
.unified-card-table th:nth-child(1){width:9%}.unified-card-table th:nth-child(2){width:8%}.unified-card-table th:nth-child(3){width:8%}.unified-card-table th:nth-child(4){width:6%}.unified-card-table th:nth-child(5){width:8%}.unified-card-table th:nth-child(6){width:13%}.unified-card-table th:nth-child(7){width:13%}.unified-card-table th:nth-child(8){width:11%}.unified-card-table th:nth-child(9){width:7%}.unified-card-table th:nth-child(10){width:8%}.unified-card-table th:nth-child(11){width:9%}
.unified-card-table td:nth-child(9),.unified-card-table td:nth-child(10){white-space:nowrap!important;text-align:right}
.unified-card-table .card-row-actions{display:grid;grid-template-columns:1fr;gap:4px;white-space:normal}
.unified-card-table .card-row-actions button{width:100%;padding:4px 3px;font-size:.66rem}
@media(max-width:900px){.unified-card-table th,.unified-card-table td{font-size:.64rem;padding:7px 2px}.unified-card-table .card-column-sort{font-size:.63rem}.unified-card-table .card-row-actions button{font-size:.6rem;padding:3px 1px}}
.unified-card-table tfoot th{position:static;background:#00143B;color:#fff;border-top:2px solid #C7A574;font-weight:700}
.unified-card-table .card-table-total th:first-child{text-align:left;font-size:.68rem;letter-spacing:.01em}
