/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Aug 13 2026 | 02:17:00 */
/*
 * Matriz de Risco da Decisao — prefixo cp-mtz-
 *
 * Peca-ancora da vertente de apoio a decisao. O vocabulario visual daqui e
 * herdado pelas irmas da familia matriz- (Matriz GUT, SWOT do Caso Penal):
 * as quatro faixas de risco, a grade de composicao, o chip de cenario e o
 * bloco de premissa a vista.
 *
 * Paleta das faixas: sobria de proposito. Semaforo saturado transforma leitura
 * em veredito, e esta peca nao decreta nada — ela mostra o quadro. O contraste
 * vive no texto escuro sobre fundo claro, nao na cor do fundo.
 *
 * Regras de BuddyBoss: color, margin, padding, line-height, font-weight,
 * text-decoration e font-size sempre com !important (o tema tem especificidade
 * global alta dentro de .cp-ds).
 *
 * Doc: doc/planejamento/matriz-de-risco.md
 */

/* ═══════════════════════════════════════════════════════════
   Tokens das faixas (o vocabulario da familia)
   ═══════════════════════════════════════════════════════════ */

.cp-ds {
  --cp-mtz-baixo-bg: #e9f0ea;
  --cp-mtz-baixo-bd: #bacfbf;
  --cp-mtz-baixo-tx: #2c5c39;

  --cp-mtz-moderado-bg: #fbf1d8;
  --cp-mtz-moderado-bd: #e8d193;
  --cp-mtz-moderado-tx: #7d6111;

  --cp-mtz-alto-bg: #f8e7dc;
  --cp-mtz-alto-bd: #e5bfa2;
  --cp-mtz-alto-tx: #94491c;

  --cp-mtz-critico-bg: #f5dcdc;
  --cp-mtz-critico-bd: #dfacac;
  --cp-mtz-critico-tx: #8d2226;
}

/* ═══════════════════════════════════════════════════════════
   Capa
   ═══════════════════════════════════════════════════════════ */

.cp-mtz-cover {
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  background: linear-gradient(160deg, #1A1A1A 0%, #2b2b33 100%);
  padding: 56px 20px 48px !important;
}

.cp-mtz-cover-inner {
  max-width: var(--cp-page-max, 1100px);
  margin: 0 auto !important;
}

.cp-mtz-cover-eyebrow {
  color: #F7D44A !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin: 0 0 10px !important;
}

.cp-mtz-cover-title {
  color: #fff !important;
  font-size: 40px !important;
  font-weight: 800 !important;
  line-height: 1.12 !important;
  margin: 0 0 14px !important;
}

.cp-mtz-cover-deck {
  color: #d6d6de !important;
  font-size: 17px !important;
  line-height: 1.55 !important;
  margin: 0 0 20px !important;
  max-width: 800px;
}

.cp-mtz-cover-badges { display: flex; flex-wrap: wrap; gap: 8px; }

.cp-mtz-cover-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 999px;
  color: #e8e8ee !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  padding: 6px 13px !important;
}

.cp-mtz-cover-badge i { color: #F7D44A !important; }

/* ═══════════════════════════════════════════════════════════
   Secoes
   ═══════════════════════════════════════════════════════════ */

.cp-mtz-sec {
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  padding: 40px 20px !important;
}

.cp-mtz-sec-alt { background: #ececf1; }

.cp-mtz-inner {
  max-width: var(--cp-page-max, 1100px);
  margin: 0 auto !important;
}

.cp-mtz-sec-kicker {
  color: #6d6d77 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: .09em;
  text-transform: uppercase;
  margin: 0 0 8px !important;
}

.cp-mtz-sec-title {
  color: #1A1A1A !important;
  font-size: 27px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  margin: 0 0 12px !important;
}

.cp-mtz-sec-deck {
  color: #4a4a55 !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
  margin: 0 0 24px !important;
  max-width: 820px;
}

/* ═══════════════════════════════════════════════════════════
   Passos do metodo (inferencia reversa)
   ═══════════════════════════════════════════════════════════ */

.cp-mtz-passos {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

.cp-mtz-passo {
  background: #fff;
  border: 1px solid #e2e2e9;
  border-radius: 12px;
  padding: 18px 18px 20px !important;
}

.cp-mtz-passo-n {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  background: #1A1A1A;
  color: #F7D44A !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  margin: 0 0 10px !important;
}

.cp-mtz-passo-t {
  color: #1A1A1A !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  margin: 0 0 6px !important;
}

.cp-mtz-passo-d {
  color: #55555f !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  margin: 0 !important;
}

/* ═══════════════════════════════════════════════════════════
   Cards do formulario
   ═══════════════════════════════════════════════════════════ */

.cp-mtz-card {
  background: #fff;
  border: 1px solid #e2e2e9;
  border-radius: 12px;
  padding: 20px !important;
  margin: 0 0 16px !important;
}

.cp-mtz-card-t {
  color: #1A1A1A !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  margin: 0 0 6px !important;
}

.cp-mtz-card-t i { color: #b08d10 !important; margin-right: 7px !important; }

.cp-mtz-card-hint {
  color: #63636d !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  margin: 0 0 16px !important;
}

/* ⚠️ Respiro de bloco SEMPRE por classe, nunca por style="margin-top:..." no
   HTML: `.cp-mtz-card` declara margin com !important (exigência do reset do
   BuddyBoss), e !important vence estilo inline sem !important. O inline não
   dá erro nenhum, só não acontece, e o resultado é card colado no botão. */
.cp-mtz-card-solto { margin-top: 24px !important; }

/* Hint que separa dois grupos DENTRO do mesmo card (mesma razão da classe
   acima: o inline não venceria o !important). */
.cp-mtz-card-hint-sep { margin: 18px 0 10px !important; }

.cp-mtz-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
}

.cp-mtz-field { display: flex; flex-direction: column; }

/* Rotulo que existe so pro leitor de tela: o campo do desfecho e identificado
   visualmente pelo numero do cenario e pelo placeholder, mas sem nome
   acessivel ele nao e anunciado. */
.cp-mtz-sr {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

.cp-mtz-field label {
  color: #3d3d47 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  margin: 0 0 5px !important;
}

.cp-mtz-field input,
.cp-mtz-field select,
.cp-mtz-field textarea {
  border: 1px solid #d3d3db;
  border-radius: 8px;
  background: #fff;
  color: #1A1A1A !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
  padding: 9px 11px !important;
  width: 100%;
}

.cp-mtz-field textarea { min-height: 62px; resize: vertical; }

.cp-mtz-field input:focus,
.cp-mtz-field select:focus,
.cp-mtz-field textarea:focus { border-color: #1A1A1A; outline: none; }

/* Escala sem valor escolhido: a peca NAO sugere estimativa (ancoragem e uma
   das armadilhas que o proprio metodo manda vigiar). O estado vazio e
   assumido no visual em vez de disfarcado. */
.cp-mtz-field select.cp-mtz-vazio { color: #85858f !important; border-style: dashed; }

.cp-mtz-hint {
  color: #6d6d77 !important;
  font-size: 12.5px !important;
  line-height: 1.45 !important;
  margin: 6px 0 0 !important;
  min-height: 18px;
}

/* ═══════════════════════════════════════════════════════════
   Linhas de cenario
   ═══════════════════════════════════════════════════════════ */

.cp-mtz-cen {
  border: 1px solid #e2e2e9;
  border-left: 4px solid #d8d8e0;
  border-radius: 10px;
  background: #fbfbfd;
  padding: 14px !important;
  margin: 0 0 12px !important;
}

.cp-mtz-cen.cp-mtz-cen-baixo { border-left-color: var(--cp-mtz-baixo-bd); }
.cp-mtz-cen.cp-mtz-cen-moderado { border-left-color: var(--cp-mtz-moderado-bd); }
.cp-mtz-cen.cp-mtz-cen-alto { border-left-color: var(--cp-mtz-alto-bd); }
.cp-mtz-cen.cp-mtz-cen-critico { border-left-color: var(--cp-mtz-critico-bd); }

.cp-mtz-cen-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 12px !important;
}

.cp-mtz-cen-n {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: #ececf1;
  color: #4a4a55 !important;
  font-size: 12px !important;
  font-weight: 800 !important;
}

.cp-mtz-cen-rot { flex: 1 1 auto; }

.cp-mtz-cen-body {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin: 0 0 12px !important;
}

/* ═══════════════════════════════════════════════════════════
   Selo de faixa
   ═══════════════════════════════════════════════════════════ */

.cp-mtz-selo {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border-radius: 999px;
  border: 1px solid #d8d8e0;
  background: #f2f2f6;
  color: #55555f !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: .02em;
  padding: 4px 11px !important;
  white-space: nowrap;
}

.cp-mtz-selo-baixo { background: var(--cp-mtz-baixo-bg); border-color: var(--cp-mtz-baixo-bd); color: var(--cp-mtz-baixo-tx) !important; }
.cp-mtz-selo-moderado { background: var(--cp-mtz-moderado-bg); border-color: var(--cp-mtz-moderado-bd); color: var(--cp-mtz-moderado-tx) !important; }
.cp-mtz-selo-alto { background: var(--cp-mtz-alto-bg); border-color: var(--cp-mtz-alto-bd); color: var(--cp-mtz-alto-tx) !important; }
.cp-mtz-selo-critico { background: var(--cp-mtz-critico-bg); border-color: var(--cp-mtz-critico-bd); color: var(--cp-mtz-critico-tx) !important; }

.cp-mtz-selo-vazio { border-style: dashed; background: #fff; color: #85858f !important; }

/* ═══════════════════════════════════════════════════════════
   Botoes
   ═══════════════════════════════════════════════════════════ */

.cp-mtz-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }

/* A dupla montar/limpar fica solta entre dois cards e precisa de ar dos dois
   lados; as demais `cp-mtz-actions` vivem dentro de card e não levam margem. */
.cp-mtz-actions-main { margin: 22px 0 !important; }

.cp-mtz-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #1A1A1A;
  border-radius: 8px;
  background: #1A1A1A;
  color: #F7D44A !important;
  cursor: pointer;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  padding: 11px 18px !important;
}

.cp-mtz-btn:hover { background: #000; }

.cp-mtz-btn-ghost { background: #fff; color: #1A1A1A !important; }
.cp-mtz-btn-ghost:hover { background: #f2f2f6; }

.cp-mtz-btn-sm { font-size: 13px !important; padding: 8px 13px !important; }

.cp-mtz-btn-del {
  border: 1px solid #e2e2e9;
  border-radius: 8px;
  background: #fff;
  color: #8a3a3a !important;
  cursor: pointer;
  font-size: 13px !important;
  line-height: 1 !important;
  padding: 7px 10px !important;
}

.cp-mtz-btn-del:hover { border-color: #8a3a3a; }

/* ═══════════════════════════════════════════════════════════
   Resultado: a grade de composicao
   ═══════════════════════════════════════════════════════════ */

.cp-mtz-res { margin: 26px 0 0 !important; }

.cp-mtz-res-t {
  color: #1A1A1A !important;
  font-size: 21px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  margin: 0 0 6px !important;
}

.cp-mtz-res-sub {
  color: #55555f !important;
  font-size: 14.5px !important;
  line-height: 1.55 !important;
  margin: 0 0 18px !important;
}

.cp-mtz-aviso {
  border: 1px solid var(--cp-mtz-moderado-bd);
  border-left: 4px solid var(--cp-mtz-moderado-bd);
  background: var(--cp-mtz-moderado-bg);
  border-radius: 8px;
  color: #5f4a0d !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  padding: 11px 14px !important;
  margin: 0 0 12px !important;
}

.cp-mtz-bloqueio {
  border: 1px solid var(--cp-mtz-critico-bd);
  border-left: 4px solid var(--cp-mtz-critico-bd);
  background: var(--cp-mtz-critico-bg);
  border-radius: 8px;
  color: var(--cp-mtz-critico-tx) !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
  padding: 13px 16px !important;
  margin: 0 0 12px !important;
}

.cp-mtz-grade-wrap { overflow-x: auto; margin: 0 0 22px !important; }

.cp-mtz-grade {
  width: 100%;
  min-width: 640px;
  border-collapse: separate;
  border-spacing: 6px;
}

.cp-mtz-grade th {
  color: #4a4a55 !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  padding: 6px 8px !important;
  text-align: center;
  vertical-align: bottom;
}

.cp-mtz-grade th.cp-mtz-th-lin {
  text-align: right;
  vertical-align: middle;
  width: 150px;
}

.cp-mtz-grade th small {
  color: #7d7d87 !important;
  display: block;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
  margin: 2px 0 0 !important;
}

/* ⚠️ A borda da celula precisa de !important E de especificidade maior que
   `.cp-ds td:not(.cp-bb-zone *)` do cp-pages-base.css, que zera border-top,
   border-left e border-right de TODO td dentro de .cp-ds (reset das tabelas do
   BuddyBoss) — com !important, o que faz a disputa ser decidida por
   especificidade: a regra do base vale (0,2,1) e `.cp-mtz-cel` sozinha vale
   (0,1,0), então perde. Daí a cadeia `.cp-ds .cp-mtz-grade .cp-mtz-cel`
   (0,3,0). Sem isso a grade sai com uma borda só, e o defeito aparece na
   página publicada e não em harness que não carregue o base. */
.cp-ds .cp-mtz-grade .cp-mtz-cel {
  border: 1px solid #e4e4ea !important;
  border-radius: 9px;
  min-height: 78px;
  padding: 8px !important;
  vertical-align: top;
}

.cp-ds .cp-mtz-grade .cp-mtz-cel-baixo { background: var(--cp-mtz-baixo-bg); border-color: var(--cp-mtz-baixo-bd) !important; }
.cp-ds .cp-mtz-grade .cp-mtz-cel-moderado { background: var(--cp-mtz-moderado-bg); border-color: var(--cp-mtz-moderado-bd) !important; }
.cp-ds .cp-mtz-grade .cp-mtz-cel-alto { background: var(--cp-mtz-alto-bg); border-color: var(--cp-mtz-alto-bd) !important; }
.cp-ds .cp-mtz-grade .cp-mtz-cel-critico { background: var(--cp-mtz-critico-bg); border-color: var(--cp-mtz-critico-bd) !important; }

/* Celula sem cenario fica atenuada, mas NUNCA some: e a grade inteira que
   mostra a assimetria (catastrofica e improvavel nao chega a Baixo; leve e
   quase certo nao chega a Alto). */
.cp-mtz-cel-vazia { opacity: .42; }

.cp-mtz-cel-faixa {
  color: #55555f !important;
  font-size: 10.5px !important;
  font-weight: 800 !important;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin: 0 0 6px !important;
}

.cp-mtz-cel-baixo .cp-mtz-cel-faixa { color: var(--cp-mtz-baixo-tx) !important; }
.cp-mtz-cel-moderado .cp-mtz-cel-faixa { color: var(--cp-mtz-moderado-tx) !important; }
.cp-mtz-cel-alto .cp-mtz-cel-faixa { color: var(--cp-mtz-alto-tx) !important; }
.cp-mtz-cel-critico .cp-mtz-cel-faixa { color: var(--cp-mtz-critico-tx) !important; }

.cp-mtz-chip {
  display: block;
  background: rgba(255, 255, 255, .82);
  border: 1px solid rgba(0, 0, 0, .09);
  border-radius: 7px;
  color: #2b2b33 !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  padding: 6px 8px !important;
  margin: 0 0 5px !important;
}

.cp-mtz-chip-n {
  color: #6d6d77 !important;
  font-weight: 800 !important;
  margin-right: 5px !important;
}

/* ═══════════════════════════════════════════════════════════
   Resultado: a leitura
   ═══════════════════════════════════════════════════════════ */

.cp-mtz-leitura {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 14px;
  margin: 0 0 22px !important;
}

.cp-mtz-lt {
  background: #fff;
  border: 1px solid #e2e2e9;
  border-radius: 11px;
  padding: 16px !important;
}

.cp-mtz-lt-k {
  color: #6d6d77 !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: .07em;
  text-transform: uppercase;
  margin: 0 0 7px !important;
}

.cp-mtz-lt-v {
  color: #1A1A1A !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  margin: 0 0 6px !important;
}

.cp-mtz-lt-d {
  color: #55555f !important;
  font-size: 13.5px !important;
  line-height: 1.5 !important;
  margin: 6px 0 0 !important;
}

.cp-mtz-dist { display: flex; flex-wrap: wrap; gap: 7px; margin: 4px 0 0 !important; }

/* ═══════════════════════════════════════════════════════════
   Resultado: premissas e robustez
   ═══════════════════════════════════════════════════════════ */

.cp-mtz-bloco { margin: 0 0 22px !important; }

.cp-mtz-bloco-t {
  color: #1A1A1A !important;
  font-size: 17px !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
  margin: 0 0 4px !important;
}

.cp-mtz-bloco-d {
  color: #55555f !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  margin: 0 0 12px !important;
}

.cp-mtz-prem {
  background: #fff;
  border: 1px solid #e2e2e9;
  border-radius: 10px;
  padding: 13px 15px !important;
  margin: 0 0 9px !important;
}

.cp-mtz-prem-h {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;
  margin: 0 0 6px !important;
}

.cp-mtz-prem-t {
  color: #1A1A1A !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  margin: 0 !important;
}

.cp-mtz-prem-esc {
  color: #6d6d77 !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  margin: 0 0 4px !important;
}

.cp-mtz-prem-p {
  color: #3d3d47 !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  margin: 0 !important;
}

.cp-mtz-prem-p.cp-mtz-prem-sem { color: #8a3a3a !important; font-style: italic; }

.cp-mtz-rob {
  border-top: 1px solid #e6e6ec;
  color: #3d3d47 !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  padding: 9px 0 !important;
  margin: 0 !important;
}

.cp-mtz-rob:first-of-type { border-top: none; }

.cp-mtz-rob-tag {
  display: inline-block;
  border-radius: 5px;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .05em;
  text-transform: uppercase;
  padding: 3px 7px !important;
  margin-right: 8px !important;
}

.cp-mtz-rob-vira { background: var(--cp-mtz-alto-bg); border: 1px solid var(--cp-mtz-alto-bd); color: var(--cp-mtz-alto-tx) !important; }
.cp-mtz-rob-muda { background: #f0f0f4; border: 1px solid #dcdce4; color: #55555f !important; }
.cp-mtz-rob-teto { background: var(--cp-mtz-critico-bg); border: 1px solid var(--cp-mtz-critico-bd); color: var(--cp-mtz-critico-tx) !important; }

.cp-mtz-saida {
  width: 100%;
  min-height: 260px;
  border: 1px solid #d3d3db;
  border-radius: 8px;
  background: #fbfbfd;
  color: #2b2b33 !important;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 12.5px !important;
  line-height: 1.5 !important;
  padding: 12px !important;
  margin: 0 0 12px !important;
  resize: vertical;
}

/* ═══════════════════════════════════════════════════════════
   Limites e credito
   ═══════════════════════════════════════════════════════════ */

.cp-mtz-nota {
  background: #fff;
  border: 1px solid #e2e2e9;
  border-left: 4px solid #F7D44A;
  border-radius: 10px;
  padding: 15px 17px !important;
  margin: 0 0 12px !important;
}

.cp-mtz-nota-t {
  color: #1A1A1A !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  margin: 0 0 5px !important;
}

.cp-mtz-nota-d {
  color: #4a4a55 !important;
  font-size: 14.5px !important;
  line-height: 1.6 !important;
  margin: 0 !important;
}

.cp-mtz-credito {
  background: #1A1A1A;
}

.cp-mtz-credito .cp-mtz-sec-kicker { color: #F7D44A !important; }

.cp-mtz-credito-t {
  color: #fff !important;
  font-size: 21px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  margin: 0 0 10px !important;
}

.cp-mtz-credito-d {
  color: #c9c9d2 !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
  margin: 0 0 16px !important;
  max-width: 820px;
}

a.cp-mtz-credito-link,
a.cp-mtz-credito-link:visited {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(255, 255, 255, .28);
  border-radius: 8px;
  color: #F7D44A !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  padding: 10px 16px !important;
  text-decoration: none !important;
}

a.cp-mtz-credito-link:hover { background: rgba(255, 255, 255, .08); }

/* ═══════════════════════════════════════════════════════════
   Responsivo
   ═══════════════════════════════════════════════════════════ */

@media (max-width: 900px) {
  .cp-mtz-passos { grid-template-columns: 1fr; }
  .cp-mtz-cover-title { font-size: 32px !important; }
}

@media (max-width: 768px) {
  .cp-mtz-cen-body { grid-template-columns: 1fr; }
  .cp-mtz-sec { padding: 30px 16px !important; }
  .cp-mtz-cover { padding: 40px 16px 34px !important; }
  .cp-mtz-sec-title { font-size: 23px !important; }
}

@media (max-width: 480px) {
  .cp-mtz-cover-title { font-size: 27px !important; }
  .cp-mtz-cover-deck { font-size: 15.5px !important; }
  .cp-mtz-card { padding: 15px !important; }
  .cp-mtz-btn { font-size: 14px !important; padding: 10px 15px !important; width: 100%; justify-content: center; }
  .cp-mtz-actions { gap: 8px; }
}

@media print {
  .cp-mtz-cover, .cp-mtz-sec-alt, .cp-mtz-credito { background: none !important; }
  .cp-mtz-actions, .cp-mtz-btn, .cp-mtz-btn-del { display: none !important; }
  .cp-mtz-cover-title, .cp-mtz-credito-t, .cp-mtz-credito-d { color: #1A1A1A !important; }
  .cp-mtz-grade { min-width: 0; }
}
