/* Parâmetros do sistema — visual v3. Não altera o ponto de quebra do hambúrguer (1180px). */
#t-parametros .pr-hero { margin-bottom: 18px; }
#t-parametros .pr-hero p { max-width: 44rem; }
#parametros-main { padding-bottom: 88px; }

.pr-abas { display: flex; gap: 4px; flex-wrap: wrap; margin: 0 0 18px; }
.pr-abas a {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 8px 14px; border-radius: 999px; text-decoration: none;
  font-weight: 700; font-size: 14px; color: #1B2A4A; background: #fff;
  border: 1px solid #ddd4c4;
}
.pr-abas a.on { background: #1B2A4A; color: #F6F1E8; border-color: #1B2A4A; }

.pr-layout { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 22px; align-items: start; }
.pr-menu { position: sticky; top: 16px; display: flex; flex-direction: column; gap: 4px; }
.pr-menu button {
  display: flex; align-items: center; justify-content: space-between; gap: 8px;
  text-align: left; width: 100%; padding: 10px 12px; border: 0; border-radius: 10px;
  background: transparent; color: #1B2A4A; font: inherit; font-weight: 700; cursor: pointer;
}
.pr-menu button:hover { background: #fff; }
.pr-menu button.on { background: #1B2A4A; color: #F6F1E8; }
.pr-menu button b { font-size: 12px; font-weight: 800; background: #f1e4c9; color: #7a5a20; border-radius: 999px; padding: 1px 7px; }
.pr-menu button.on b { background: #B8924A; color: #fff; }

.pr-grupo h2 { margin: 0 0 6px; font-size: 1.35rem; color: #1B2A4A; }
.pr-grupo .pr-intro { margin: 0 0 16px; color: #5c564c; font-size: 14px; }

.pr-card {
  background: #fff; border: 1px solid #e4dccf; border-radius: 16px;
  padding: 16px 18px 14px; margin-bottom: 12px;
}
.pr-card h3 { margin: 0 0 10px; font-size: 1.02rem; color: #1B2A4A; }
.pr-card .pr-ctrl { margin: 0 0 10px; }
.pr-card select.inp, .pr-card input.inp { width: 100%; max-width: 420px; }
.pr-bool { display: flex; align-items: center; gap: 10px; font-weight: 650; color: #1B2A4A; cursor: pointer; }
.pr-bool input { width: 18px; height: 18px; accent-color: #1B2A4A; }
.pr-meta { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 8px; }
.pr-pill {
  font-size: 11px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase;
  border-radius: 6px; padding: 3px 8px; background: #e9edf3; color: #1B2A4A;
}
.pr-pill.rec { background: #e7f3ea; color: #215c32; }
.pr-pill.diff { background: #f1e4c9; color: #7a5a20; }
.pr-pill.lock { background: #f3e6e6; color: #7a2e2e; }
.pr-just, .pr-legal { margin: 0 0 6px; font-size: 13px; color: #5c564c; line-height: 1.45; }
.pr-legal { color: #3d5a80; }

.pr-ck { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.pr-ck li { display: grid; grid-template-columns: 1fr auto auto; gap: 8px; align-items: center; }
.pr-ck li input[type="text"] { width: 100%; }
.pr-ck .pr-ob { font-size: 13px; font-weight: 650; white-space: nowrap; display: flex; align-items: center; gap: 6px; }
.pr-ck button { border: 0; background: #f3e6e6; color: #7a2e2e; border-radius: 8px; padding: 6px 10px; font-weight: 700; cursor: pointer; }
.pr-ck button:disabled { opacity: .4; cursor: not-allowed; }
.pr-ck-add { margin-top: 8px; }

.pr-feriados { margin-top: 8px; }
.pr-feriados a { font-weight: 700; color: #1B2A4A; }

.pr-save {
  position: sticky; bottom: 12px; display: flex; align-items: center; justify-content: space-between; gap: 12px;
  background: #1B2A4A; color: #F6F1E8; border-radius: 14px; padding: 12px 16px;
  box-shadow: 0 8px 24px rgba(27,42,74,.25); z-index: 5;
}
.pr-save[hidden] { display: none !important; }
.pr-save span { font-size: 14px; }
.pr-save .btn.primary { background: #B8924A; border-color: #B8924A; color: #fff; }

.pr-matriz { overflow: auto; background: #fff; border: 1px solid #e4dccf; border-radius: 16px; }
.pr-matriz table { width: 100%; border-collapse: collapse; font-size: 13px; }
.pr-matriz th, .pr-matriz td { padding: 8px 10px; border-bottom: 1px solid #efe8dc; text-align: center; vertical-align: middle; }
.pr-matriz th { background: #F6F1E8; color: #1B2A4A; font-weight: 800; position: sticky; top: 0; }
.pr-matriz td.pr-nome, .pr-matriz th.pr-nome { text-align: left; min-width: 220px; font-weight: 650; color: #1B2A4A; }
.pr-matriz .pr-g { background: #f3eee4; font-weight: 800; text-align: left; letter-spacing: .04em; text-transform: uppercase; font-size: 11px; }
.pr-matriz input { width: 16px; height: 16px; accent-color: #1B2A4A; }
.pr-matriz .pr-sub { color: #7a5a20; font-size: 11px; display: block; }

.pr-hist { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.pr-hist li { background: #fff; border: 1px solid #e4dccf; border-radius: 14px; padding: 12px 16px; }
.pr-hist b { color: #1B2A4A; }
.pr-hist small { display: block; color: #5c564c; margin-top: 4px; }
.pr-hist em { font-style: normal; font-weight: 700; color: #7a5a20; }

@media (max-width: 1180px) {
  /* o hambúrguer do portal já entra aqui; a tela de parâmetros só empilha o menu */
}
@media (max-width: 860px) {
  .pr-layout { grid-template-columns: 1fr; gap: 14px; }
  .pr-menu { position: static; flex-direction: row; overflow: auto; gap: 6px; padding-bottom: 4px; }
  .pr-menu button { flex: 0 0 auto; white-space: nowrap; padding: 8px 12px; background: #fff; border: 1px solid #ddd4c4; border-radius: 999px; }
  .pr-menu button.on { border-color: #1B2A4A; }
  .pr-ck li { grid-template-columns: 1fr auto; }
  .pr-ck li button { grid-column: 2; grid-row: 1; }
  .pr-save { bottom: 64px; flex-wrap: wrap; }
}
