/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Jun 14 2026 | 04:03:34 */
/* cp-pages-observatorio.css — Observatório de Decisões (STF criminal).
   Prefixo cp-obs-. Tier C: o JS (cp-mod-observatorio) popula os containers.
   Regras !important onde o BuddyBoss tem alta especificidade (ver memory
   reference_css_buddyboss): color, margin, padding, line-height, font-weight,
   text-decoration, font-size. */

.cp-obs {
  max-width: var(--cp-page-max, 1100px) !important;
  margin: 0 auto !important;
  padding: 0 16px 48px !important;
}

/* ── Hero — full-width, família das superfícies de decisão ── */
.cp-obs-hero {
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  background: var(--cp-preto, #1A1A1A) !important;
  padding: 40px 16px !important;
}
.cp-obs-hero-inner {
  max-width: var(--cp-page-max, 1100px);
  margin: 0 auto;
}
.cp-obs-hero-crumb {
  display: inline-block !important;
  color: var(--cp-amarelo, #F7D44A) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: 8px !important;
}
.cp-obs-hero-title {
  color: #fff !important;
  font-size: 30px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  margin: 0 0 10px !important;
}
.cp-obs-hero-sub {
  color: #d6d6d6 !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
  margin: 0 !important;
  max-width: 760px;
}

.cp-obs-loading { color: #777 !important; padding: 24px 0 !important; font-size: 15px !important; }
.cp-obs-error {
  background: #fdecea !important; color: #8a1c12 !important;
  border-radius: 8px !important; padding: 12px 16px !important;
  margin: 16px 0 !important; font-size: 14px !important;
}

/* ── KPIs ── */
.cp-obs-kpis {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px;
  margin: 24px 0 !important;
}
.cp-obs-kpi {
  background: #fff !important; border: 1px solid #ececf0 !important;
  border-radius: 12px !important; padding: 16px 18px !important;
}
.cp-obs-kpi-value { color: var(--cp-preto, #1A1A1A) !important; font-size: 28px !important; font-weight: 700 !important; line-height: 1.1 !important; }
.cp-obs-kpi-label { color: #6a6a72 !important; font-size: 13px !important; margin-top: 2px !important; }

/* ── Blocos (as 5 perguntas) ── */
.cp-obs-block { margin: 32px 0 0 !important; }
.cp-obs-block-title { color: var(--cp-preto, #1A1A1A) !important; font-size: 20px !important; font-weight: 700 !important; margin: 0 0 4px !important; }
.cp-obs-block-lead { color: #6a6a72 !important; font-size: 14px !important; line-height: 1.5 !important; margin: 0 0 14px !important; }

/* ── Barras horizontais ── */
.cp-obs-bars { margin-top: 12px !important; }
.cp-obs-bar { display: flex; align-items: center; gap: 10px; margin-bottom: 7px !important; }
.cp-obs-bar-label {
  width: 190px; flex-shrink: 0; text-align: right;
  color: #4a4a52 !important; font-size: 13px !important; line-height: 1.3 !important;
}
.cp-obs-bar-track { flex: 1; height: 18px; background: #ececed; border-radius: 4px; overflow: hidden; }
.cp-obs-bar-fill { display: block; height: 100%; border-radius: 4px; }
.cp-obs-bar-val { width: 92px; flex-shrink: 0; color: var(--cp-preto, #1A1A1A) !important; font-size: 13px !important; font-weight: 600 !important; }
.cp-obs-bar-n { color: #9a9aa2 !important; font-size: 11px !important; font-weight: 400 !important; margin-left: 6px !important; }

/* ── Heatmap matéria × ministro ── */
.cp-obs-heat-grid { display: grid; grid-template-columns: 140px repeat(6, 1fr); gap: 3px; margin-top: 12px; }
.cp-obs-heat-corner { }
.cp-obs-heat-colh { text-align: center; color: #6a6a72 !important; font-size: 11px !important; padding-bottom: 4px !important; }
.cp-obs-heat-rowh { display: flex; align-items: center; justify-content: flex-end; padding-right: 8px !important; color: #4a4a52 !important; font-size: 12px !important; }
.cp-obs-heat-cell {
  height: 32px; display: flex; align-items: center; justify-content: center;
  border-radius: 4px; color: var(--cp-preto, #1A1A1A) !important; font-size: 13px !important; font-weight: 400 !important;
}
.cp-obs-heat-cell.cp-obs-heat-hot { color: #fff !important; font-weight: 600 !important; }
.cp-obs-heat-na { color: #c4c4cc !important; background: #f6f6f8; }

/* ── Recomendador "meu caso" ── */
.cp-obs-rec {
  background: #fff !important; border: 1px solid #ececf0 !important;
  border-radius: 14px !important; padding: 24px !important; margin: 24px 0 8px !important;
}
.cp-obs-rec-title { color: var(--cp-preto, #1A1A1A) !important; font-size: 22px !important; font-weight: 700 !important; margin: 0 0 4px !important; }
.cp-obs-rec-lead { color: #6a6a72 !important; font-size: 14px !important; line-height: 1.5 !important; margin: 0 0 16px !important; }
.cp-obs-rec-label { display: block !important; color: #4a4a52 !important; font-size: 13px !important; font-weight: 600 !important; margin-bottom: 6px !important; }
.cp-obs-rec-select {
  width: 100% !important; max-width: 380px !important; padding: 9px 12px !important;
  font-size: 15px !important; border: 1px solid #d4d4dc !important; border-radius: 8px !important;
  background: #fff !important; color: var(--cp-preto, #1A1A1A) !important; margin-bottom: 20px !important;
}
.cp-obs-rec-stat { margin-bottom: 16px !important; }
.cp-obs-rec-stat-val { color: var(--cp-preto, #1A1A1A) !important; font-size: 32px !important; font-weight: 700 !important; line-height: 1 !important; }
.cp-obs-rec-stat-lbl { color: #6a6a72 !important; font-size: 13px !important; margin-top: 2px !important; }
.cp-obs-rec-stat-base { color: #9a9aa2 !important; font-size: 12px !important; }
.cp-obs-rec-box {
  border: 2px solid var(--cp-amarelo, #F7D44A) !important; border-radius: 12px !important;
  padding: 14px 16px !important; margin-bottom: 20px !important; background: #fffdf4 !important;
}
.cp-obs-rec-box-tag { color: #8a6d00 !important; font-size: 12px !important; font-weight: 600 !important; text-transform: uppercase; letter-spacing: 0.04em; margin-bottom: 4px !important; }
.cp-obs-rec-box-head { color: var(--cp-preto, #1A1A1A) !important; font-size: 17px !important; font-weight: 700 !important; margin-bottom: 2px !important; }
.cp-obs-rec-box-sub { color: #555 !important; font-size: 14px !important; line-height: 1.5 !important; }
.cp-obs-rec-subtitle { color: #6a6a72 !important; font-size: 13px !important; font-weight: 600 !important; margin: 18px 0 8px !important; }

@media (max-width: 768px) {
  .cp-obs-kpis { grid-template-columns: 1fr 1fr !important; }
  .cp-obs-bar-label { width: 120px !important; font-size: 12px !important; }
  .cp-obs-bar-val { width: 70px !important; }
  .cp-obs-heat-grid { grid-template-columns: 96px repeat(6, 1fr) !important; }
  .cp-obs-heat-rowh { font-size: 11px !important; }
  .cp-obs-hero-title { font-size: 24px !important; }
}
