/* Space is reserved for every slider-dependent value. Only an explicit disclosure changes height. */
.stable-editorial .editorial-copy{position:static!important;top:auto!important;align-self:start;transform:none!important}
.stable-editorial .editorial-grid{align-items:start}
.stable-editorial .editorial-promise{display:block}
.stable-editorial .editorial-promise>p{font-size:23px;line-height:1.35}
.stable-editorial .editorial-promise>small{max-width:380px;line-height:1.7}
.stable-editorial .editorial-promise>small+small{margin-top:16px}
.stable-editorial .coverage{height:60px;margin:18px 0;display:flex;align-items:center;flex-wrap:nowrap}
.stable-editorial .coverage>strong{display:flex;align-items:center;width:100%;height:60px;font-size:30px;line-height:1.15;max-width:none;white-space:normal}
.stable-editorial .editorial-controls{display:block;border-top:1px solid var(--lightline);padding:16px 0 18px}
.stable-editorial .editorial-controls label{display:grid;grid-template-columns:1fr auto;gap:8px 16px;font-size:12px;color:var(--muted);width:100%}
.stable-editorial .editorial-controls output{color:var(--green);font-variant-numeric:tabular-nums;min-width:3ch;text-align:right}
.stable-editorial .editorial-controls input{grid-column:1/-1;accent-color:var(--green);width:100%;height:28px;margin:0;cursor:pointer}
.stable-editorial .topic{height:74px;min-height:74px;max-height:74px;grid-template-columns:minmax(0,1fr) 100px;grid-template-rows:30px 16px;gap:2px 14px;align-content:center;padding:12px 8px 12px 0}
.stable-editorial .topic>span{line-height:1.3}
.stable-editorial .topic .amount{height:30px;display:flex;align-items:center;justify-content:flex-end;font-size:21px;line-height:1.2}
.stable-editorial .topic[data-state=band] .amount,.stable-editorial .topic[data-state=hidden] .amount{font-size:12px}
.stable-editorial .topic-detail{display:block!important;line-height:16px;height:16px;white-space:nowrap}
.stable-editorial .report-insight{display:grid;grid-template-rows:15px 52px 56px 108px auto;row-gap:8px;align-content:start;min-height:0;margin:20px 0;padding:20px}
.stable-editorial .report-insight>.label{line-height:15px}
.stable-editorial .report-insight h4{margin:0;align-self:center;line-height:1.2;font-size:21px}
.stable-editorial .report-insight .recurrence{margin:0;line-height:1.55;font-size:12px}
.stable-editorial .report-insight blockquote{margin:0;line-height:1.45;font-size:18px;align-self:start}
.stable-editorial .report-insight details{margin:0;padding-top:12px;align-self:start}
.stable-editorial .report-insight summary{min-height:20px;line-height:20px}
.stable-editorial .guidance-extra{height:320px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:16px 12px 4px 0}
.stable-editorial .guidance-extra>p{font-size:13px;line-height:1.7;margin:0}
@media(max-width:1050px){.stable-editorial .report-insight{grid-template-rows:15px 52px 70px 124px auto}.stable-editorial .editorial-controls{display:block}}
@media(max-width:720px){.stable-editorial .editorial-promise{margin-top:26px;padding-top:22px}.stable-editorial .editorial-promise>small{max-width:none}.stable-editorial .editorial-promise>p{font-size:24px}.stable-editorial .topic{height:78px;min-height:78px;max-height:78px;grid-template-rows:34px 16px}.stable-editorial .report-insight{grid-template-rows:15px 52px 64px 112px auto}}
@media(max-width:420px){.stable-editorial .coverage>strong{font-size:26px}.stable-editorial .topic{height:84px;min-height:84px;max-height:84px;grid-template-columns:minmax(0,1fr) 84px;grid-template-rows:38px 16px;gap:2px 10px}.stable-editorial .topic .amount{font-size:20px}.stable-editorial .topic-detail{font-size:10px}.stable-editorial .report-insight{padding:16px;grid-template-rows:15px 52px 78px 148px auto}.stable-editorial .report-insight blockquote{font-size:17px}.stable-editorial .editorial-promise>p{font-size:22px}}


/* ---------------------------------------------------------------------------
   A explicação de cada tema, aberta no clique da própria linha. É a única
   coisa que muda a altura da tabela, e só quando a pessoa pede.
   Linha aberta e painel são UM bloco: mesma cor, sem risco entre os dois, e o
   risco desce para o fim do painel. Textos do engine 034ca81.
   ------------------------------------------------------------------------- */
.stable-editorial .topic{grid-template-columns:minmax(0,1fr) 100px 16px}
.stable-editorial .topic>span{grid-column:1;grid-row:1;display:flex;align-items:center;gap:8px;min-width:0}
.stable-editorial .topic>span>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}
.stable-editorial .topic .amount{grid-column:2;grid-row:1}
.stable-editorial .topic .topic-caret{grid-column:3;grid-row:1}
.stable-editorial .topic .topic-detail{grid-column:1/-1;grid-row:2;overflow:hidden;text-overflow:ellipsis}

/* A pílula que diz que aquela linha carrega o alerta. */
.stable-editorial .topic-flag{flex:none;font-size:9.5px;letter-spacing:.11em;text-transform:uppercase;color:#42553d;border:1px solid #42553d59;border-radius:20px;padding:1px 7px;line-height:1.5}

/* A seta: diz que a área abre para baixo, e responde ao mouse. */
.stable-editorial .topic-caret{display:flex;align-items:center;justify-content:flex-end;color:#8d9186;transition:transform .32s var(--ease),color .2s var(--ease)}
.stable-editorial .topic-caret svg{display:block}
.stable-editorial .topic:hover .topic-caret{color:#42553d;transform:translateY(2px)}
.stable-editorial .topic:hover{background:#e7ece1;box-shadow:-9px 0 #e7ece1}
.stable-editorial .topic[aria-expanded=true] .topic-caret{color:#34482f;transform:rotate(180deg)}

/* O bloco aberto: a linha perde o risco de baixo e vira o topo do painel. */
.stable-editorial .topic[aria-expanded=true],
.stable-editorial .topic[aria-expanded=true]:hover{background:#e7ece1;box-shadow:-9px 0 #e7ece1;color:#34482f;border-bottom-color:transparent}
.stable-editorial .topic[aria-expanded=true] .topic-detail{color:#4c5b46}

.stable-editorial .topic-panel{height:0;overflow:hidden;transition:height .34s var(--ease)}
.stable-editorial .topic-panel[data-open=true]{background:#e7ece1;box-shadow:-9px 0 #e7ece1;border-bottom:1px solid var(--lightline)}
.stable-editorial .topic-panel .panel-body{padding:26px 8px 28px 0}

.stable-editorial .panel-note{margin:0 0 19px;font-size:12px;line-height:1.55;color:var(--muted)}
/* A moldura do estado: sai só quando o degrau retém recorrência ou comparação. */
.stable-editorial .panel-state{margin:0 0 20px;border:1px solid #42553d3d;border-radius:9px;padding:11px 13px;font-size:12px;line-height:1.55;color:#42553d}
/* Cada bloco abre com o rótulo em linha própria, e o texto começa embaixo. */
.stable-editorial .panel-block{margin-bottom:17px}
.stable-editorial .panel-block:last-child{margin-bottom:0}
.stable-editorial .panel-block>b{display:block;font-weight:500;font-size:13px;line-height:1.5;color:var(--ink);margin-bottom:3px}
.stable-editorial .panel-block>p{margin:0;font-size:13px;line-height:1.7;color:var(--ink)}

.stable-editorial .topic-alert{border-left:2px solid #42553d;padding:2px 0 2px 16px;margin-bottom:24px}
.stable-editorial .topic-alert .label{display:block;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#42553d;margin-bottom:8px}
.stable-editorial .topic-alert p{margin:0;font-size:13px;line-height:1.6;color:var(--ink)}
.stable-editorial .topic-alert p+p{margin-top:9px}
.stable-editorial .topic-alert .alert-steps-title{margin-top:14px;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#42553d}
.stable-editorial .topic-alert ol{margin:8px 0 0;padding-left:17px;font-size:12.5px;line-height:1.6;color:#4c5b46}
.stable-editorial .topic-alert ol li+li{margin-top:6px}
.stable-editorial .topic-alert .alert-deadline{margin-top:10px;font-size:12px;color:#42553d}
.stable-editorial .topic-alert .alert-mirror{margin-top:10px;padding-top:10px;border-top:1px solid #42553d29;font-size:12px;color:var(--muted)}



@media(max-width:420px){
 .stable-editorial .topic{grid-template-columns:minmax(0,1fr) 84px 16px}
 .stable-editorial .topic-panel .panel-body{padding:22px 0 24px}
  .stable-editorial .topic-alert{padding-left:13px}
}
@media(prefers-reduced-motion:reduce){.stable-editorial .topic-panel,.stable-editorial .topic-caret{transition:none}}

/* A pergunta de pulso, dentro do próximo passo. */
.stable-editorial .pulse-question{color:#42553d}

/* ---------------------------------------------------------------------------
   Cabeçalho do relatório: instrução à esquerda, total à direita, um bloco só.
   Sem filete, e sem o total repetido na ponta do rótulo.
   ------------------------------------------------------------------------- */
.stable-editorial .editorial-controls{display:block;border-top:0;padding:0}
.stable-editorial .editorial-controls label{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 18px;width:100%}
.stable-editorial .control-hint{font-size:12px;line-height:1.45;color:var(--muted);max-width:200px}
.stable-editorial .editorial-controls [data-coverage]{font-size:38px;line-height:1.05;letter-spacing:-.025em;color:var(--ink);white-space:nowrap;text-align:right}
/* "Abaixo do mínimo" é longo demais para o corpo cheio. */
.stable-editorial .editorial-controls [data-coverage].curto{font-size:26px;letter-spacing:-.01em}
.stable-editorial .editorial-controls input{grid-column:1/-1;accent-color:var(--green);width:100%;height:28px;margin:14px 0 0;cursor:pointer}
/* Respiro entre o controle e o começo da tabela. */
.stable-editorial .report-cols{margin-top:38px}
@media(max-width:420px){
 .stable-editorial .editorial-controls [data-coverage]{font-size:28px}
 .stable-editorial .editorial-controls [data-coverage].curto{font-size:20px}
 .stable-editorial .control-hint{max-width:none}
 .stable-editorial .report-cols{margin-top:30px}
}

/* Coluna de texto: corpo um pouco menor, e o título alinhado pelo topo da
   tabela. O recuo negativo compensa o espaço interno da fonte acima da maiúscula. */
.stable-editorial .editorial-copy .intro>h2{margin-top:-.375em}
.stable-editorial .editorial-prose .lead{font-size:15.5px;line-height:1.68}
@media(max-width:1050px){.stable-editorial .editorial-copy .intro>h2{margin-top:0}}

/* Cabeçalho do relatório: a dica e o número descem para respirar embaixo do
   rótulo do trimestre, em vez de encostar nele. */
.stable-editorial .editorial-controls{padding-top:15px}

/* O verde da linha aberta e do mouse em cima vai de ponta a ponta do cartão.
   O recuo de 40px cobre a maior margem interna do cartão (34px) e o excedente
   é cortado pelo overflow do próprio cartão, então vale em toda largura de tela.
   Feito com sombra, e não com margem negativa, para o filete divisor continuar
   recuado como está hoje. */
.stable-editorial .topic:hover,
.stable-editorial .topic[aria-expanded=true],
.stable-editorial .topic[aria-expanded=true]:hover,
.stable-editorial .topic-panel[data-open=true]{box-shadow:-40px 0 #e7ece1,40px 0 #e7ece1}

/* Os filetes acompanham o verde e também vão de ponta a ponta. Desenhados por
   um elemento à parte, e não pela borda, para a altura fixa das linhas não mudar.
   O filete do painel aberto sai no corpo dele, porque o painel corta o que passa
   da própria caixa durante a animação de abrir. */
.stable-editorial .report-cols,
.stable-editorial .topic{position:relative;border-bottom-color:transparent}
.stable-editorial .report-cols::after,
.stable-editorial .topic::after{content:'';position:absolute;left:-40px;right:-40px;bottom:-1px;height:1px;background:var(--lightline);pointer-events:none}
.stable-editorial .topic[aria-expanded=true]::after{display:none}
.stable-editorial .topic-panel[data-open=true]{border-bottom-color:transparent}
.stable-editorial .topic-panel .panel-body{position:relative}
.stable-editorial .topic-panel[data-open=true] .panel-body::after{content:'';position:absolute;left:-40px;right:-40px;bottom:0;height:1px;background:var(--lightline);pointer-events:none}

/* A moldura do estado ganha um verde um pouco mais claro que a faixa da linha
   aberta, para separar essa leitura do resto do painel. */
.stable-editorial .panel-state{background:#eff3ea}

/* Context and help stay beside the report that they explain. */
.stable-editorial .report-example-note{margin:12px 0 0;color:var(--muted);font-size:12px;line-height:1.5}
.stable-editorial .report-help{margin-top:20px;border-top:1px solid var(--line);color:#d0d6cc;scroll-margin-top:110px}
.stable-editorial .report-help summary{display:flex;justify-content:space-between;align-items:center;gap:18px;min-height:56px;padding-block:14px;font-size:14px;line-height:1.5;color:var(--cream)}
.stable-editorial .report-help summary>span{font-size:22px;font-weight:400;flex:none}
.stable-editorial .report-help[open] summary>span{transform:rotate(45deg)}
.stable-editorial .report-help>div{padding:2px 0 18px}
.stable-editorial .report-help p{margin:0;font-size:13px;line-height:1.7}
.stable-editorial .report-help p+p{margin-top:12px}
.stable-editorial .work-context{margin:28px 0;padding-block:20px;border-block:1px solid var(--line);color:#d0d6cc}
.stable-editorial .work-context-label{display:block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#b0bfa7;margin-bottom:10px}
.stable-editorial .work-context p{font-size:14px;line-height:1.65;max-width:400px}
.stable-editorial .work-context strong{display:block;font-size:42px;font-weight:400;letter-spacing:-.04em;line-height:1.1;margin-bottom:10px;color:var(--cream)}
.stable-editorial .work-context a{display:inline-block;margin-top:12px;font-size:11px;line-height:1.6;color:#b0bfa7;text-decoration:underline;text-underline-offset:3px}
