@charset "UTF-8";
/* ============================================================================
 * cedar_report_rules_central.css — CEDAR · Central de Regras do Laudo (§6)
 * ----------------------------------------------------------------------------
 * Estilo da tela desenhada por cedar_report_rules_central_addon.js. Namespace
 * PRÓPRIO `.rrc-*` (não colide com .cds-*, .mc-*, .cfgv2-*, .ag-*).
 *
 * REGRAS DE OURO DESTA FOLHA (iPad Pro paisagem, ≥ 1024 px, dedo):
 *   · SEM :hover — no iPad o "hover" fica GRUDADO depois do toque e vira estado
 *     falso. O retorno visual é :active e :focus-visible.
 *   · ALVO ≥ 44 px em tudo que se toca (aba, botão, select, input).
 *   · Cores SÓ dos tokens do design system (cedar_design_system_v0.css, --cds-*),
 *     com fallback fiel embutido para o caso de a folha do DS não estar carregada.
 *   · Tabela larga rola DENTRO do próprio contêiner (.rrc-scroll) — a tela de
 *     Configurações nunca ganha barra horizontal.
 * Versão: 1.0.0 · 2026-09-05
 * ========================================================================= */

.rrc-wrap {
  --rrc-bg: var(--cds-bg, #FBFAF8);
  --rrc-surface: var(--cds-surface, #FFFFFF);
  --rrc-surface-2: var(--cds-surface-2, #F6F0EA);
  --rrc-ink: var(--cds-ink, #2B211B);
  --rrc-ink-soft: var(--cds-ink-soft, #6F6258);
  --rrc-muted: var(--cds-muted, #B0A79D);
  --rrc-line: var(--cds-line, #E6D8C8);
  --rrc-line-soft: var(--cds-line-soft, #EFE6DB);
  --rrc-brand: var(--cds-brand, #785533);
  --rrc-brand-light: var(--cds-brand-light, #F4EADF);
  --rrc-accent: var(--cds-accent, #B3864F);
  --rrc-amber-bg: var(--cds-amber-bg, #FEF6E7);
  --rrc-amber-tx: var(--cds-amber-tx, #92610C);
  --rrc-amber-bd: var(--cds-amber-bd, #F3E0BD);
  --rrc-green-bg: var(--cds-green-bg, #EDF7F1);
  --rrc-green-tx: var(--cds-green-tx, #177245);
  --rrc-red-bg: var(--cds-red-bg, #FBEDEC);
  --rrc-red-tx: var(--cds-red-tx, #B3261E);
  --rrc-slate-bg: var(--cds-slate-bg, #F3F0EC);
  --rrc-slate-tx: var(--cds-slate-tx, #6F6258);
  --rrc-mono: var(--cds-mono, ui-monospace, SFMono-Regular, Menlo, monospace);
  color: var(--rrc-ink);
  font-size: 13px;
}
.rrc-wrap * { box-sizing: border-box; }

/* ── barra de estado da camada ─────────────────────────────────────────────── */
.rrc-status {
  display: flex; flex-wrap: wrap; gap: 10px 26px; align-items: flex-end;
  padding: 12px 14px; border: 1px solid var(--rrc-line); border-radius: var(--cds-r-card, 10px);
  background: var(--rrc-surface-2);
}
.rrc-status--off { background: var(--rrc-amber-bg); border-color: var(--rrc-amber-bd); color: var(--rrc-amber-tx); }
.rrc-status__l { display: flex; flex-direction: column; gap: 2px; min-width: 130px; }
.rrc-status__modo { flex-direction: row; align-items: center; gap: 8px; flex-wrap: wrap; margin-left: auto; }
.rrc-k { font: 700 10.5px/1.3 var(--cds-font, inherit); text-transform: uppercase; letter-spacing: .04em; color: var(--rrc-ink-soft); }
.rrc-sub { font-size: 11.5px; color: var(--rrc-ink-soft); }
.rrc-modo { font-weight: 800; text-transform: uppercase; }
.rrc-modo--on { color: var(--rrc-green-tx); }
.rrc-modo--shadow { color: var(--rrc-amber-tx); }
.rrc-modo--off { color: var(--rrc-muted); }

/* ── abas (alvo ≥ 44 px, sem hover) ────────────────────────────────────────── */
.rrc-tabs { display: flex; gap: 8px; flex-wrap: wrap; margin: 14px 0 12px; }
.rrc-tab {
  min-height: 44px; min-width: 44px; padding: 0 18px;
  border: 1px solid var(--rrc-line); border-radius: var(--cds-r-btn, 8px);
  background: var(--rrc-surface); color: var(--rrc-ink);
  font: 700 13px/1 var(--cds-font, inherit); cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.rrc-tab[aria-selected="true"] { background: var(--rrc-brand-light); border-color: var(--rrc-brand); color: var(--rrc-brand); }
.rrc-tab:active { filter: brightness(.94); }
.rrc-tab:focus-visible { outline: none; box-shadow: var(--cds-focus, 0 0 0 3px rgba(179,134,79,.40)); }

/* ── cartões ───────────────────────────────────────────────────────────────── */
.rrc-card {
  border: 1px solid var(--rrc-line); border-radius: var(--cds-r-card, 10px);
  background: var(--rrc-surface); padding: 12px 14px; margin: 0 0 14px;
}
.rrc-h { font: 800 14px/1.3 var(--cds-font, inherit); margin: 0 0 8px; }
.rrc-h2 { font: 800 12px/1.3 var(--cds-font, inherit); margin: 14px 0 6px; color: var(--rrc-ink-soft); text-transform: uppercase; letter-spacing: .04em; }
.rrc-vazio { padding: 12px; color: var(--rrc-ink-soft); background: var(--rrc-slate-bg); border-radius: 8px; }
.rrc-aviso {
  padding: 10px 12px; margin: 0 0 12px; border-radius: 8px;
  background: var(--rrc-amber-bg); border: 1px solid var(--rrc-amber-bd); color: var(--rrc-amber-tx);
  font-weight: 600;
}

/* ── filtros e formulários (tudo ≥ 44 px) ──────────────────────────────────── */
.rrc-filtros { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; margin: 8px 0 10px; }
.rrc-inp {
  min-height: 44px; padding: 8px 12px; font-size: 13px;
  border: 1px solid var(--rrc-line); border-radius: 8px;
  background: var(--rrc-surface); color: var(--rrc-ink); max-width: 100%;
}
.rrc-inp:focus-visible { outline: none; box-shadow: var(--cds-focus, 0 0 0 3px rgba(179,134,79,.40)); }
.rrc-ta { min-height: 66px; resize: vertical; width: 100%; }
.rrc-code { font-family: var(--rrc-mono); font-size: 12px; width: 100%; min-height: 140px; resize: vertical; }
.rrc-form { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 10px 14px; }
.rrc-c { display: flex; flex-direction: column; gap: 4px; }
.rrc-c .rrc-inp { width: 100%; }
.rrc-chk { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-size: 12.5px; color: var(--rrc-ink-soft); }
.rrc-chk input { width: 20px; height: 20px; }
.rrc-acoes { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; margin-top: 12px; }
.rrc-acoes-td { white-space: normal; }
.rrc-acoes-td .rrc-btn { margin: 2px 4px 2px 0; }
/* alvo do dedo mesmo nos botões pequenos da casa (.ag-btn--sm tem 5px de padding) */
.rrc-btn { min-height: 44px; }
.rrc-btn.ag-btn--sm { min-height: 40px; padding: 8px 12px; }

/* ── tabelas ───────────────────────────────────────────────────────────────── */
.rrc-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.rrc-tab { width: 100%; border-collapse: collapse; margin: 6px 0; font-size: 12.5px; }
.rrc-tab th {
  font: 700 10.5px/1.4 var(--cds-font, inherit); text-transform: uppercase; letter-spacing: .04em;
  color: var(--rrc-ink-soft); text-align: left; padding: 6px 8px; border-bottom: 1px solid var(--rrc-line);
  white-space: nowrap;
}
.rrc-tab td { padding: 8px; border-bottom: 1px solid var(--rrc-line-soft); vertical-align: top; }
.rrc-tab code { font-family: var(--rrc-mono); font-size: 11.5px; }
.rrc-lista { margin: 6px 0; padding-left: 18px; }
.rrc-lista li { margin: 4px 0; }
.rrc-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 8px 16px; margin: 6px 0; }
.rrc-l { display: flex; flex-direction: column; gap: 2px; }

/* ── pílulas de status ─────────────────────────────────────────────────────── */
.rrc-pill { display: inline-block; border-radius: 99px; padding: 2px 9px; font: 700 10.5px/1.6 var(--cds-font, inherit); }
.rrc-p-cinza { background: var(--rrc-slate-bg); color: var(--rrc-slate-tx); }
.rrc-p-ambar { background: var(--rrc-amber-bg); color: var(--rrc-amber-tx); }
.rrc-p-verde { background: var(--rrc-green-bg); color: var(--rrc-green-tx); }
.rrc-p-verm { background: var(--rrc-red-bg); color: var(--rrc-red-tx); }
.rrc-p-brand { background: var(--rrc-brand); color: #fff; }

/* ── paginação ─────────────────────────────────────────────────────────────── */
.rrc-pag { display: flex; gap: 10px; align-items: center; margin: 8px 0 2px; }

/* iPad paisagem: a barra de estado ganha o modo na mesma linha; abaixo disso empilha. */
@media (max-width: 1023px) {
  .rrc-status__modo { margin-left: 0; }
  .rrc-form { grid-template-columns: 1fr; }
}
