/* Controle Pleno v0.1.80 | relatório executivo multipágina A4, premium e consistente */
.cp-er-book{display:flex;flex-direction:column;align-items:center;gap:22px;width:max-content;margin:0 auto;color:#10294d;font-family:Inter,'Segoe UI',Arial,sans-serif;line-height:1.32}
.cp-er-page{position:relative;box-sizing:border-box;width:210mm;height:297mm;min-width:210mm;min-height:297mm;max-height:297mm;overflow:hidden;background:#fff;color:#10294d;box-shadow:0 14px 38px rgba(17,48,89,.17);font-size:11px;break-after:page;page-break-after:always}
.cp-er-page *{box-sizing:border-box}
.cp-er-page-inner{height:100%;padding:14mm 13mm 12mm;position:relative;display:flex;flex-direction:column}
.cp-er-header{height:51px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dae6f5;padding-bottom:10px;gap:20px;flex-shrink:0}
.cp-er-header img{display:block;width:200px;height:auto;max-height:38px;object-fit:contain;object-position:left center}
.cp-er-header span{font-size:8px;letter-spacing:1px;color:#6982a2;text-align:right;font-weight:800}
.cp-er-header span b,.cp-er-footer b{color:#2484f7}
.cp-er-footer{height:22px;position:absolute;left:13mm;right:13mm;bottom:9.5mm;border-top:1px solid #c4d7ef;display:flex;align-items:flex-end;justify-content:space-between;font-size:8px;color:#7085a1;letter-spacing:.15px}
.cp-er-page-title{padding:16px 0 17px;flex-shrink:0}
.cp-er-page-title>span{font-size:8px;letter-spacing:1.2px;color:#2879d8;font-weight:900}
.cp-er-page-title h2{font-family:Georgia,'Times New Roman',serif;font-size:28px;line-height:1.11;margin:6px 0;color:#10284c;letter-spacing:-.65px}
.cp-er-page-title p{color:#6b809d;font-size:11px;margin:0}
.cp-er-page-body{display:flex;flex-direction:column;gap:15px;min-height:0;flex:1;padding-bottom:18px}
.cp-er-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 9px}
.cp-er-section-head h3{font-size:13px;font-weight:850;color:#092a53;margin:0;letter-spacing:-.2px}
.cp-er-section-head p{font-size:9px;color:#7b92af;margin:0;text-align:right}
.cp-er-kpi-grid{display:grid;gap:9px}
.cp-er-kpi-grid.cols3{grid-template-columns:repeat(3,minmax(0,1fr))}
.cp-er-kpi-grid.cols4{grid-template-columns:repeat(4,minmax(0,1fr))}
.cp-er-kpi-grid.cols2{grid-template-columns:repeat(2,minmax(0,1fr))}
.cp-er-kpi{border:1px solid #dce8f6;border-radius:9px;background:linear-gradient(150deg,#fff,#f9fbff);padding:13px 12px;min-height:92px;min-width:0}
.cp-er-kpi-top{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:17px}
.cp-er-kpi-top>span:first-child{color:#627a9b;font-size:9px;font-weight:650}
.cp-er-kpi-tag{display:grid;place-items:center;width:21px;height:21px;flex-shrink:0;border-radius:6px;background:#eaf3ff;color:#1275f5;font-size:13px}
.cp-er-kpi strong{display:block;font-size:21px;letter-spacing:-.45px;line-height:1.15;color:#09264d;margin:7px 0 5px;overflow-wrap:anywhere}
.cp-er-kpi small{color:#8192ab;font-size:8.5px;line-height:1.32;display:block}
.cp-er-note{border-radius:9px;padding:12px 14px;display:flex;align-items:flex-start;gap:10px;line-height:1.5;background:#edf6ff;color:#315678;border:1px solid #e2efff}
.cp-er-note strong{font-size:10px;min-width:124px;color:#14578e}
.cp-er-note span{font-size:9.5px;flex:1}
.cp-er-note.amber{background:#fff7e8;border-color:#fae9cb;color:#79522e}
.cp-er-note.amber strong{color:#ae7027}
.cp-er-three-flags{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.cp-er-flag{padding:12px;border-radius:10px;border:1px solid transparent;min-height:155px}
.cp-er-flag.good{background:#ebf9f3;color:#287455;border-color:#e0f5e9}
.cp-er-flag.warn{background:#fff7e9;color:#8c6230;border-color:#f9ecda}
.cp-er-flag.info{background:#edf5ff;color:#235991;border-color:#e0ecfc}
.cp-er-flag h4{font-size:11px;margin:0 0 12px;color:inherit}
.cp-er-flag ul{padding-left:14px;margin:0;display:grid;gap:10px}
.cp-er-flag li{font-size:9.3px;line-height:1.35}
.cp-er-flag p{font-size:10px;margin:0}
.cp-er-summary-lines{display:flex;justify-content:space-between;margin-top:auto;color:#7b91ad;font-size:8px}
.cp-er-two-panels{display:grid;grid-template-columns:1fr 1fr;gap:11px;min-height:0;align-items:stretch}
.cp-er-panel{min-width:0;border:1px solid #e1eaf5;border-radius:10px;padding:14px 12px 12px;background:#fff}
.cp-er-panel>.cp-er-section-head{min-height:20px}
.cp-er-empty{min-height:135px;display:flex;justify-content:center;align-items:center;flex-direction:column;gap:8px;text-align:center;border:1px dashed #d5e2f1;background:#f9fbfe;border-radius:8px;color:#8699b1;padding:16px}
.cp-er-empty b{color:#607894;font-size:11px}
.cp-er-empty span{font-size:9px;line-height:1.5;max-width:255px}
.cp-er-bars{height:calc(var(--er-bars-height,150px) + 42px);display:flex;gap:8px;align-items:flex-end;padding:2px 7px 0;border-bottom:1px solid #c9d9ee;justify-content:space-around}
.cp-er-bar-col{width:100%;max-width:76px;height:100%;display:grid;grid-template-rows:15px 1fr 26px;gap:2px;align-items:end;text-align:center;min-width:0}
.cp-er-bar-value{font-size:8px;font-weight:750;color:#1d4f87;align-self:end;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cp-er-bar-rail{height:100%;width:100%;display:flex;align-items:flex-end;border-bottom:1px solid #e5edf6;background:repeating-linear-gradient(to top,#e9f0f9 0 1px,transparent 1px 30px)}
.cp-er-bar-rail i{width:72%;margin:0 auto;display:block;border-radius:4px 4px 0 0}
.cp-er-bar-col small{font-size:8px;color:#778ba6;line-height:1.12;height:24px;align-self:center;overflow:hidden;text-overflow:ellipsis}
.cp-er-line-chart svg{width:100%;height:159px;display:block}
.cp-er-line-labels{display:flex;gap:2px;justify-content:space-between;margin:0 7px}
.cp-er-line-labels span{text-align:center;font-size:8px;color:#637b99;min-width:0;flex:1}
.cp-er-line-labels b,.cp-er-line-labels small{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.cp-er-line-labels small{font-size:7px;color:#366caa;margin-top:4px}
.cp-er-ring-layout{display:flex;align-items:center;gap:14px;justify-content:center;padding:8px 1px}
.cp-er-ring{width:146px;height:146px;border-radius:50%;display:grid;place-items:center;flex-shrink:0}
.cp-er-ring>div{width:104px;height:104px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:6px}
.cp-er-ring b{font-size:13px;color:#113158;white-space:nowrap;letter-spacing:-.35px}
.cp-er-ring small{font-size:8px;color:#8698af;margin-top:4px}
.cp-er-ring-list{display:flex;flex-direction:column;gap:12px;min-width:0;width:100%}
.cp-er-ring-list>div{display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:6px;font-size:8.5px}
.cp-er-ring-list i{width:8px;height:8px;border-radius:3px}
.cp-er-ring-list span{color:#66809e;overflow-wrap:anywhere}
.cp-er-ring-list b{font-size:8px;color:#173d6d}
.cp-er-data-table{width:100%;border-collapse:collapse;text-align:left;table-layout:fixed;font-size:9px}
.cp-er-data-table thead{background:#edf4fc}
.cp-er-data-table th{padding:9px 7px;font-size:8px;text-transform:uppercase;letter-spacing:.3px;color:#3c659b}
.cp-er-data-table td{padding:9px 7px;border-bottom:1px solid #e5edf7;color:#395879;vertical-align:top;word-break:break-word}
.cp-er-data-table tr:last-child td{border-bottom:0}
.cp-er-margins{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.cp-er-margins div{background:#f3f8fe;border-radius:8px;padding:13px 10px}
.cp-er-margins span,.cp-er-margins b{display:block}
.cp-er-margins span{color:#617f9f;font-size:9px}.cp-er-margins b{margin-top:7px;font-size:17px}
.cp-er-actions{counter-reset:steps;list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}
.cp-er-actions li{border:1px solid #dce9f7;background:#f9fbff;border-radius:8px;padding:12px;font-size:9px;line-height:1.5;min-height:60px}
.cp-er-actions li:before{counter-increment:steps;content:counter(steps,decimal-leading-zero);display:inline-grid;place-items:center;width:25px;height:25px;background:#2378ec;color:white;border-radius:50%;font-size:9px;font-weight:800;margin-right:8px}
/* Capa universal: paisagem abstrata, sem elementos de segmentos específicos */
.cp-er-cover{background:linear-gradient(135deg,#ffffff 0%,#f7fbff 41%,#dceefa 100%)}
.cp-er-cover-top{height:105px;position:relative;z-index:4;padding:26px 28px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.cp-er-cover-top img{display:block;width:255px;height:auto;max-height:54px;object-fit:contain;object-position:left center}
.cp-er-cover-top span{font-size:8px;letter-spacing:3px;color:#285583;font-weight:900;margin-top:12px}
.cp-er-cover-shape{position:absolute;top:0;right:0;bottom:0;width:73%;pointer-events:none;overflow:hidden;background:linear-gradient(125deg,transparent 0 40%,#0d3b6b 40.1%,#0b2c54 65%,#061e3b 100%);clip-path:polygon(69% 0,100% 0,100% 100%,34% 100%,38% 84%,27% 68%,54% 48%,64% 31%,50% 19%)}
.cp-er-cover-shape:before{content:'';position:absolute;inset:0;background:linear-gradient(145deg,transparent 38%,rgba(68,177,247,.24) 42%,transparent 50%),linear-gradient(160deg,transparent 56%,rgba(0,6,29,.48) 76%,rgba(30,128,221,.4));opacity:.9}
.cp-er-cover-shape:after{content:'';position:absolute;left:20%;right:0;top:30%;height:1px;box-shadow:0 30px 0 #78a9cc,0 110px 0 #3e76af,0 190px 0 #5b97d2,0 260px 0 #7cc0eb;transform:rotate(-22deg);opacity:.5}
.cp-er-mountain{position:absolute;bottom:0;left:-120px;right:-200px;height:30%;background:linear-gradient(180deg,#7bafdc,#b4d5ef);clip-path:polygon(0 88%,8% 60%,14% 70%,26% 26%,34% 50%,42% 30%,52% 65%,63% 21%,77% 52%,90% 14%,100% 66%,100% 100%,0 100%);opacity:.55}
.cp-er-mountain.m2{height:21%;background:#e2f1fd;transform:scaleX(1.22);opacity:.72}
.cp-er-mountain.m3{height:11%;background:#f3faff;opacity:.93;transform:scaleX(1.32)}
.cp-er-cover-content{position:relative;z-index:3;padding:60px 0 0 43px;width:64%}
.cp-er-eyebrow{font-size:9px;letter-spacing:2.8px;color:#377bc3;font-weight:850}
.cp-er-cover h1{font-family:Georgia,'Times New Roman',serif;font-size:55px;line-height:1.04;letter-spacing:-1.2px;color:#0a2750;margin:20px 0 16px}
.cp-er-short-line{display:block;width:58px;height:4px;background:#0879eb;border-radius:5px;margin-bottom:17px}
.cp-er-cover h2{font-size:29px;line-height:1.15;margin:0 0 10px;color:#102d55;letter-spacing:-.5px;overflow-wrap:anywhere}
.cp-er-cover-content>p{font-size:18px;margin:0;color:#477096}
.cp-er-cover-period{margin-top:33px;display:flex;flex-direction:column;gap:7px;color:#536d89}
.cp-er-cover-period>span{font-size:9px;color:#2873b7;letter-spacing:1.5px;font-weight:900}
.cp-er-cover-period>strong{font-size:14px;color:#1c426f}
.cp-er-cover-period small{font-size:9px}
.cp-er-cover blockquote{border-left:3px solid #1f86ee;margin:42px 0 0;padding:5px 10px 5px 15px;width:76%;line-height:1.65;color:#2e5178;font-size:13px}
.cp-er-cover-bottom{position:absolute;bottom:30px;left:44px;right:35px;z-index:4;display:flex;justify-content:space-between;gap:12px;align-items:flex-end;font-size:8.5px;letter-spacing:1px;color:#356393}
.cp-er-cover-bottom strong{color:#0d2f5f;font-size:10px}
.cp-er-cover-bottom>span:last-child{max-width:195px;text-align:right;font-size:8px;letter-spacing:1.6px;font-weight:800}
/* Visualização na interface: zoom gerido pelo tamanho do contêiner */
.cp-exec-report{overflow:auto;padding:16px!important;background:#edf3fb!important;border-color:#e2eaf4!important}
.cp-er-preview{overflow:hidden;width:100%}
.cp-er-preview .cp-er-book{zoom:var(--cp-er-zoom,1)}
@media print{
 @page{size:A4 portrait;margin:0}
 html,body{margin:0!important;padding:0!important;background:white!important}
 .cp-er-book{display:block;width:210mm;margin:0;gap:0}
 .cp-er-page{margin:0;box-shadow:none;border:0;break-after:page;page-break-after:always;print-color-adjust:exact;-webkit-print-color-adjust:exact}
 .cp-er-page:last-child{break-after:auto;page-break-after:auto}
 .cp-er-preview .cp-er-book{zoom:1!important}
}

.cp-er-comments{display:grid;gap:8px}.cp-er-comments p{background:#f7faff;border-left:3px solid #3c90ed;padding:9px 10px;font-size:9px;color:#456381;line-height:1.45;margin:0}.cp-er-comments span{color:#266cbc;font-weight:800;display:inline-block;margin-right:6px}

/* v0.1.81 — leitura executiva mais densa, decisões priorizadas e transparência das fontes */
.cp-er-page-title{padding-bottom:13px}
.cp-er-page-title h2{font-size:29px}
.cp-er-page-title p{font-size:11.5px}
.cp-er-page-body{gap:11px}
.cp-er-section-head h3{font-size:13.5px}
.cp-er-kpi{min-height:88px;padding:12px 13px}
.cp-er-kpi-top>span:first-child{font-size:9.4px}
.cp-er-kpi strong{font-size:22px}
.cp-er-kpi small{font-size:9px}
.cp-er-panel{padding:14px}
.cp-er-note{padding:10px 13px}
.cp-er-note span{font-size:9.8px}
.cp-er-data-table td{font-size:9.4px}
.cp-er-three-flags{gap:9px}
.cp-er-flag{min-height:136px;padding:11px}
.cp-er-flag li{font-size:9.7px;line-height:1.4}
.cp-er-flag ul{gap:7px}
.cp-er-decision-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.cp-er-panel .cp-er-decision-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.cp-er-decision{display:grid;grid-template-columns:25px minmax(0,1fr);align-items:start;gap:8px;background:#f4f8ff;border:1px solid #dceafd;border-radius:9px;padding:10px;min-height:97px}
.cp-er-decision.good{background:#f1faf7;border-color:#ddf0e6}
.cp-er-decision.warn{background:#fff8ef;border-color:#f7e7cc}
.cp-er-decision-mark{border-radius:50%;display:grid;place-items:center;width:24px;height:24px;background:#e1eeff;color:#1369c8;font-size:13px;font-weight:900}
.cp-er-decision.warn .cp-er-decision-mark{background:#ffebd1;color:#b87317}
.cp-er-decision.good .cp-er-decision-mark{background:#d9f3e6;color:#18865d}
.cp-er-decision small{display:block;color:#6d86a3;font-weight:800;font-size:8px;text-transform:uppercase;letter-spacing:.4px}
.cp-er-decision b{display:block;font-size:11px;line-height:1.3;color:#12355b;margin:4px 0}
.cp-er-decision p{font-size:9px;line-height:1.4;margin:0;color:#5c7594}
.cp-er-readiness{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.cp-er-readiness>div{border:1px solid #e0eaf6;border-radius:9px;background:#f8fbff;padding:11px;min-height:73px}
.cp-er-readiness-bullet{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px;vertical-align:middle}
.cp-er-readiness-bullet.ready{background:#19a77f}.cp-er-readiness-bullet.pending{background:#c8a24a}
.cp-er-readiness b{color:#173b6b;font-size:9.8px}
.cp-er-readiness small{display:block;color:#7890ac;margin-top:7px;font-size:8.8px;line-height:1.35}

/* Não permitir que um gráfico flexível fique escondido atrás da próxima seção */
.cp-er-two-panels{flex-shrink:0}
.cp-er-page:nth-child(3) .cp-er-bars{height:150px}
.cp-er-page:nth-child(3) .cp-er-bar-col{grid-template-rows:13px 1fr 21px}
.cp-er-page:nth-child(3) .cp-er-bar-col small{height:19px}
.cp-er-page:nth-child(3) .cp-er-line-chart svg{height:120px}
.cp-er-page:nth-child(3) .cp-er-ring{width:112px;height:112px}
.cp-er-page:nth-child(3) .cp-er-ring>div{width:82px;height:82px}
.cp-er-page:nth-child(3) .cp-er-ring-layout{padding:0 1px}
.cp-er-page:nth-child(3) .cp-er-empty{min-height:68px}
.cp-er-page:nth-child(3) .cp-er-panel{padding:11px 12px}
.cp-er-page:nth-child(3) .cp-er-comments p{padding:8px}
.cp-er-page:nth-child(3) .cp-er-page-body{gap:9px}
.cp-er-summary-lines{margin-top:4px}
