/* Gestor: espaço de trabalho claro, hierarquia forte e densidade controlada. */
:root{--bg:#F3F4F1;--lin:#E0E5DF;--lin2:#C8D2C9;--tx:#172B31;--tx2:#596B6F;--tx3:#798A8D;--r:13px;--sb:0 12px 28px -25px #17302f55;--ff:"Hanken",system-ui,Arial,sans-serif}
main{min-width:0;padding:34px 36px 50px}
aside{background:#152D34;padding:28px 16px 22px;border-right:1px solid #ffffff0a}
.marca{padding:4px 9px 27px}
.marca b{font-size:17px;font-weight:700;letter-spacing:-.025em}
.marca .ic{border-radius:9px;width:38px;height:38px}
aside nav button,aside .nav button{border-radius:7px;min-height:45px}
.cab{margin-bottom:28px;align-items:center;gap:20px}
.cab h1{font-size:36px;letter-spacing:-.045em;font-weight:700;line-height:1.1}
.cab p{margin-top:10px;font-size:13px;color:var(--tx2)}
.kpis{gap:16px;margin-bottom:22px}
.kpi{border-radius:12px;padding:22px 23px;border:1px solid #E0E5DF;box-shadow:none;position:relative;overflow:hidden}
.kpi::before{content:"";position:absolute;left:0;top:21px;bottom:21px;width:3px;background:var(--ac);opacity:.8}
.kpi b{font-size:29px;letter-spacing:-.045em;line-height:1.25}
.kpi small{letter-spacing:.09em}
.card,.cx{box-shadow:none;border-color:#E0E5DF;border-radius:12px}
.card-h,.cx-h{padding:20px 22px}
.card-h h2,.card-h b{font-size:16px;font-weight:700;letter-spacing:-.02em}
.pl{padding:17px 21px}
.gm{padding:0}
.gm-res{padding-left:24px}
.gm-svg{width:100%;height:auto;min-width:0}
.b{border-radius:6px;min-height:39px}
.b-p{min-height:44px;padding-left:20px;padding-right:20px}
.tb-rol{border-radius:10px}
.tb-rol th{letter-spacing:.06em;font-size:10px;padding-top:15px;padding-bottom:15px}
.tb-rol td{padding-top:17px;padding-bottom:17px}
@media(min-width:1000px){.app{grid-template-columns:246px minmax(0,1fr)}.pn2{grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:20px;align-items:start}}
@media(max-width:900px){aside{padding:12px 10px;gap:8px}.marca{padding:0 8px 0 2px}main{padding:24px 18px 96px}.cab h1{font-size:30px}.kpi{padding:18px}.kpi b{font-size:25px}.cab{gap:12px;margin-bottom:22px}}
@media(max-width:700px){
 .orc-lista tbody tr{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px 12px;padding:18px;border:1px solid #DDE3DC;border-radius:11px;background:#fff;margin-bottom:12px}
 .orc-lista tbody td{display:block;min-width:0;padding:0!important;border:0!important;text-align:left!important;font-size:12px;overflow-wrap:anywhere}
 .orc-lista tbody td::before{display:none!important}
 .orc-lista tbody td:nth-child(1){grid-column:1;grid-row:1;align-self:center;color:var(--ac);font-size:11px}
 .orc-lista tbody td:nth-child(2){grid-column:2/-1;grid-row:1;font-size:16px;font-weight:700;line-height:1.3}
 .orc-lista tbody td:nth-child(3){grid-column:1/3;grid-row:2;color:var(--tx2);align-self:center}
 .orc-lista tbody td:nth-child(4){grid-column:1/-1;grid-row:3;line-height:1.6}
 .orc-lista tbody td:nth-child(5){grid-column:3;grid-row:2;text-align:right!important;font-size:17px;font-weight:700;white-space:nowrap}
 .orc-lista tbody td:nth-child(6){grid-column:1/-1;grid-row:4;display:flex;flex-wrap:wrap;gap:7px;padding-top:12px!important;margin-top:2px;border-top:1px solid #EEF0EB!important}
 .orc-lista .acoes{flex-wrap:wrap;gap:6px}
 .orc-lista tbody td:nth-child(6) .ib{width:44px;height:44px;min-width:44px;margin:0}
 .orc-lista tbody td small{white-space:normal;display:block;font-size:10.5px}
}
@media print{.kpi::before{display:none}main{padding:0}}
