/* ==========================================================================
   Folhas de atividade cognitiva.

   As escolhas aqui não são estéticas — são de acessibilidade para vista
   idosa e para percepção visual alterada pela demência:

   - corpo em 13pt e instrução em 15pt (o miolo dos outros produtos é 10pt);
   - preto sobre branco puro no miolo: contraste máximo, sem fundo creme;
   - zero textura, sombra ou gradiente atrás de qualquer texto;
   - cor só onde a cor É a tarefa, nunca como enfeite;
   - a paleta evita distinguir azul de verde — o cristalino amarelado do
     idoso confunde esse par. Onde a cor informa, o contraste é
     laranja/azul-petróleo, que sobrevive inclusive à impressão cinza.
   ========================================================================== */

.pagina-atividade {
  display: flex;
  flex-direction: column;
  padding: 13mm 14mm 22mm;
  font-size: 13pt;
  line-height: 1.45;
}

.atv-topo {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 0.5mm solid var(--linha);
  padding-bottom: 2.5mm;
  margin-bottom: 5mm;
}

.atv-numero {
  font-size: 10pt;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--primaria);
}

.atv-nivel {
  font-size: 8.5pt;
  font-weight: 600;
  letter-spacing: 0.03em;
  padding: 1.2mm 3mm;
  border-radius: 8mm;
  border: 0.4mm solid;
}

/* três níveis, três marcas distinguíveis mesmo impressas em preto e branco */
.atv-nivel.n1 { color: #1F5F6B; border-color: #9FC4CC; background: #EAF3F5; }
.atv-nivel.n2 { color: #8A4A12; border-color: #E0BC93; background: #FBF1E4; }
.atv-nivel.n3 { color: #4A3B6B; border-color: #BDB0D6; background: #F1EEF7; }

.atv-titulo {
  font-family: Lora, serif;
  font-size: 21pt;
  font-weight: 600;
  line-height: 1.15;
  color: var(--escura);
  margin-bottom: 4mm;
}

.atv-instrucao {
  font-size: 15pt;
  font-weight: 500;
  line-height: 1.35;
  border-left: 1.6mm solid var(--primaria);
  padding: 2.5mm 0 2.5mm 5mm;
  margin-bottom: 5mm;
}

.atv-legenda {
  font-size: 12pt;
  margin-bottom: 5mm;
}

/*
 * O desenho ocupa o que sobrar da folha e encolhe sozinho quando a lista de
 * dicas cresce. É o que impede a grade de estourar a página em tema de
 * palavra comprida — sem que nenhum gerador precise adivinhar altura.
 */
.atv-corpo {
  display: flex;
  flex: 1 1 auto;
  min-height: 0;
  justify-content: center;
  align-items: center;
  margin-bottom: 5mm;
}

.atv-corpo svg {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
}

.atv-corpo > * { max-width: 100%; }
.atv-corpo .gab-grade { flex: 1; }

.atv-nivel.n-neutro { color: #5A544B; border-color: #D6CFC3; background: #F5F2EC; }

/* o tamanho impresso vem do atributo width/height do próprio SVG;
   aqui só o caso especial do gabarito, que é HTML e não desenho */
.atv-corpo.dev-cheio { display: block; }

/* ---------- lista de palavras a procurar ---------- */

.atv-lista { margin-bottom: 4mm; }

.lista-palavras {
  list-style: none;
  column-gap: 6mm;
  font-size: 13.5pt;
  font-weight: 600;
  letter-spacing: 0.02em;
}

.lista-palavras.col-2 { column-count: 2; }
.lista-palavras.col-3 { column-count: 3; }
.lista-palavras.col-4 { column-count: 4; }

.lista-palavras li {
  break-inside: avoid;
  padding: 0.9mm 0 0.9mm 5mm;
  position: relative;
}

/* quadradinho para marcar a palavra já encontrada — dá senso de progresso */
.lista-palavras li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 2.1mm;
  width: 3mm;
  height: 3mm;
  border: 0.4mm solid var(--suave);
  border-radius: 0.6mm;
}

/* ---------- nota do acompanhante ---------- */

.atv-apoio {
  font-size: 10pt;
  line-height: 1.5;
  background: #F7F4EE;
  border-left: 1.2mm solid var(--destaque);
  padding: 3.5mm 4mm;
  color: #4A443C;
}

.atv-apoio b { color: var(--destaque); }

/* ---------- linhas para escrever ---------- */

.atv-respostas {
  display: grid;
  gap: 4mm 8mm;
  font-size: 14pt;
}

.atv-respostas.col-1 { grid-template-columns: 1fr; }
.atv-respostas.col-2 { grid-template-columns: 1fr 1fr; }

.atv-item-resposta {
  display: flex;
  align-items: baseline;
  gap: 3mm;
}

.atv-item-resposta .rot { font-weight: 600; white-space: nowrap; }

.atv-item-resposta .linha-escrita {
  flex: 1;
  border-bottom: 0.4mm solid var(--escura);
  height: 8mm;
}

/* ---------- gabarito ---------- */

.pagina-gabarito { padding: 14mm 14mm 14mm; }

.gab-grade {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6mm 8mm;
}

.gab-caixa { break-inside: avoid; }

.gab-caixa h3 {
  font-family: Inter, sans-serif;
  font-size: 9.5pt;
  font-weight: 700;
  color: var(--primaria);
  margin-bottom: 1.5mm;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

/* No gabarito quem manda é o tamanho pedido pelo gerador (o atributo mm do
   próprio SVG); a coluna só serve de teto. Esticar para 100% da coluna faria
   a grade crescer em altura e derrubar a terceira fileira para fora. */
.gab-caixa svg {
  display: block;
  max-width: 100%;
  width: auto;
  height: auto;
}

.gab-texto { font-size: 9.5pt; line-height: 1.5; }

/* ---------- cruzadinha ---------- */

.cz-banco {
  font-size: 11pt;
  border: 0.4mm solid var(--linha);
  border-radius: 1.5mm;
  padding: 3mm 4mm;
  margin-bottom: 4mm;
}

.cz-banco > b { color: var(--primaria); }

.cz-banco-lista {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5mm 4mm;
  margin-top: 1.5mm;
  font-weight: 600;
  letter-spacing: 0.02em;
}

.cz-dicas {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3mm 7mm;
  font-size: 9.5pt;
  line-height: 1.38;
}

.cz-bloco h4 {
  font-family: Inter, sans-serif;
  font-size: 9.5pt;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--primaria);
  border-bottom: 0.4mm solid var(--linha);
  padding-bottom: 1mm;
  margin-bottom: 1.8mm;
}

.cz-bloco ul { list-style: none; }

.cz-bloco li {
  padding: 0.7mm 0 0.7mm 0;
  break-inside: avoid;
}

.cz-bloco li b { color: var(--escura); }

.cz-letras { color: var(--suave); white-space: nowrap; }

/* ---------- sequências numéricas ---------- */

.sq-lista { list-style: none; width: 100%; }

.sq-lista li {
  display: flex;
  align-items: center;
  gap: 3mm;
  padding: 1.6mm 0;
}

.sq-rot {
  font-weight: 700;
  color: var(--primaria);
  width: 7mm;
  flex: none;
  font-size: 13pt;
}

.sq-linha {
  display: flex;
  align-items: center;
  gap: 1mm;
  flex: 1;
}

.sq-cel {
  min-width: 15mm;
  height: 10mm;
  border-radius: 1.2mm;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15pt;
  font-weight: 600;
  padding: 0 1.5mm;
}

/* a casa a preencher é a única com borda: o olho vai direto nela */
.sq-cel.sq-vazia,
.sq-cel.sq-resp {
  border: 0.5mm solid var(--escura);
  background: #fff;
}

.sq-cel.sq-resp { color: var(--destaque); }

.sq-seta { color: var(--suave); font-size: 11pt; }

/* ---------- relógios ---------- */

.rl-grade {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 7mm 5mm;
  width: 100%;
}

.rl-caixa { text-align: center; }

.rl-caixa svg { margin: 0 auto; }

.rl-rot {
  font-weight: 700;
  color: var(--primaria);
  font-size: 12pt;
  margin-bottom: 1mm;
}

.rl-linha {
  border-bottom: 0.5mm solid var(--escura);
  height: 9mm;
  margin: 2mm 4mm 0;
}

.rl-resp {
  margin-top: 2mm;
  font-size: 11pt;
  font-weight: 600;
  color: var(--destaque);
}

.rl-pedido {
  margin-top: 2mm;
  font-size: 13pt;
  font-weight: 700;
}

/* ---------- dinheiro ---------- */

.dn-lista { width: 100%; }

.dn-caixa {
  display: flex;
  gap: 3mm;
  padding: 2.6mm 0;
  border-bottom: 0.3mm dashed var(--linha);
}

.dn-caixa:last-child { border-bottom: 0; }

.dn-rot {
  font-weight: 700;
  color: var(--primaria);
  font-size: 13pt;
  width: 7mm;
  flex: none;
}

.dn-corpo { flex: 1; }

.dn-pergunta { font-size: 12pt; margin-top: 1.5mm; }

.dn-linha {
  border-bottom: 0.5mm solid var(--escura);
  height: 9mm;
  width: 55mm;
  margin-top: 1mm;
}

.dn-resp {
  margin-top: 2mm;
  font-size: 13pt;
  font-weight: 700;
  color: var(--destaque);
}

/* ---------- código de símbolos ---------- */

.cd-lista { width: 100%; }

.cd-linha {
  display: flex;
  align-items: center;
  gap: 3mm;
  padding: 2mm 0;
}

.cd-rot {
  font-weight: 700;
  color: var(--primaria);
  font-size: 13pt;
  width: 7mm;
  flex: none;
}

/* ---------- padrões de figuras ---------- */

.pd-lista { width: 100%; }

.pd-linha {
  display: flex;
  align-items: center;
  gap: 3mm;
  padding: 3mm 0;
  border-bottom: 0.3mm dashed var(--linha);
}

.pd-linha:last-child { border-bottom: 0; }

.pd-rot {
  font-weight: 700;
  color: var(--primaria);
  font-size: 13pt;
  width: 7mm;
  flex: none;
}

.pd-seq { flex: 1; }

.pd-op {
  flex: none;
  text-align: center;
  border-left: 0.3mm solid var(--linha);
  padding-left: 3mm;
}

.pd-op > span {
  display: block;
  font-size: 8pt;
  color: var(--suave);
  margin-bottom: 1mm;
}

.gab-sep { color: var(--linha); padding: 0 2mm; }
.gab-texto b { color: var(--primaria); }

/* ---------- jogo dos erros ---------- */

.er-par {
  display: flex;
  gap: 6mm;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
}

.er-lado { text-align: center; }

.er-rot {
  font-size: 11pt;
  font-weight: 700;
  color: var(--primaria);
  margin-bottom: 2mm;
}

.er-lado svg { margin: 0 auto; }

/* ---------- ligue os pontos e simetria ---------- */

.dev-pontos,
.dev-simetria,
.dev-labirinto { overflow: visible; }

/* ---------- linguagem: ditados e frases ---------- */

.lg-num {
  font-weight: 700;
  color: var(--primaria);
  min-width: 6mm;
  flex: none;
}

.lg-frases { list-style: none; width: 100%; }

.lg-frases li {
  display: flex;
  gap: 2mm;
  align-items: baseline;
  padding: 2.6mm 0;
  border-bottom: 0.3mm dashed var(--linha);
}

.lg-frases li:last-child { border-bottom: 0; }

.lg-frase { flex: 1; font-size: 13.5pt; line-height: 1.45; }

.lg-linha {
  display: inline-block;
  border-bottom: 0.5mm solid var(--escura);
  min-width: 60mm;
  height: 5mm;
  vertical-align: bottom;
}

.lg-resp { color: var(--destaque); font-weight: 700; }

.lg-banco {
  border: 0.4mm solid var(--linha);
  border-radius: 1.5mm;
  padding: 3mm 4mm;
  margin-bottom: 4mm;
  font-size: 11pt;
  width: 100%;
}

.lg-banco > b { color: var(--primaria); }

.lg-banco-lista {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5mm 5mm;
  margin-top: 1.5mm;
  font-weight: 600;
}

/* ---------- ligar as colunas ---------- */

.lg-colunas {
  display: flex;
  gap: 14mm;
  width: 100%;
  align-items: flex-start;
}

.lg-esq, .lg-dir { list-style: none; flex: 1; }

.lg-esq li, .lg-dir li {
  display: flex;
  align-items: center;
  gap: 2mm;
  padding: 3mm 0;
  font-size: 11.5pt;
  line-height: 1.3;
}

.lg-dir li { justify-content: flex-start; }

.lg-txt { flex: 1; }

.lg-letra {
  font-weight: 700;
  color: var(--primaria);
  min-width: 5mm;
  text-align: right;
  flex: none;
}

/* o ponto é onde o lápis encosta para traçar a ligação */
.lg-ponto {
  width: 2.4mm;
  height: 2.4mm;
  border-radius: 50%;
  background: var(--escura);
  flex: none;
}

/* ---------- o intruso ---------- */

.in-lista { list-style: none; width: 100%; }

.in-lista li {
  display: flex;
  gap: 2mm;
  align-items: center;
  padding: 3mm 0;
  border-bottom: 0.3mm dashed var(--linha);
}

.in-lista li:last-child { border-bottom: 0; }

.in-linha {
  display: flex;
  flex-wrap: wrap;
  gap: 2mm 6mm;
  flex: 1;
  font-size: 13pt;
  font-weight: 600;
  align-items: baseline;
}

.in-erro {
  color: var(--destaque);
  text-decoration: underline;
  text-underline-offset: 1mm;
}

.in-tema {
  font-size: 9.5pt;
  font-weight: 400;
  color: var(--suave);
}

/* ---------- palavras embaralhadas e completar ---------- */

.eb-lista { list-style: none; width: 100%; }

.eb-lista li {
  display: flex;
  gap: 2mm;
  align-items: center;
  padding: 2.4mm 0;
}

.eb-linha {
  display: flex;
  align-items: center;
  gap: 1.4mm;
  flex-wrap: wrap;
  flex: 1;
}

.eb-letra {
  width: 9mm;
  height: 9mm;
  border-radius: 1.2mm;
  background: #EFEAE1;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13pt;
  font-weight: 700;
}

.eb-letra.fixa { background: none; border: 0; }

.eb-caixa {
  width: 9mm;
  height: 9mm;
  border: 0.5mm solid var(--escura);
  border-radius: 1.2mm;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13pt;
  font-weight: 700;
}

.eb-caixa i { color: var(--destaque); font-style: normal; }

.eb-vazios { display: flex; gap: 1.4mm; }

.eb-seta { color: var(--suave); padding: 0 2mm; font-size: 12pt; }

/* ---------- classificar em colunas ---------- */

.cl-banco {
  border: 0.4mm solid var(--linha);
  border-radius: 1.5mm;
  padding: 3mm 4mm;
  margin-bottom: 5mm;
  font-size: 11.5pt;
  width: 100%;
}

.cl-banco > b { color: var(--primaria); }

.cl-banco-lista {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5mm 5mm;
  margin-top: 1.5mm;
  font-weight: 600;
}

.cl-colunas { display: flex; gap: 8mm; width: 100%; }

.cl-coluna { flex: 1; }

.cl-coluna h4 {
  font-family: Inter, sans-serif;
  font-size: 11pt;
  font-weight: 700;
  color: var(--primaria);
  text-align: center;
  border-bottom: 0.6mm solid var(--primaria);
  padding-bottom: 1.5mm;
  margin-bottom: 2mm;
}

.cl-linha {
  border-bottom: 0.4mm solid var(--linha);
  height: 9mm;
}

.cl-linha.cl-resp {
  font-size: 12pt;
  font-weight: 600;
  color: var(--destaque);
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ---------- pinte pelo código ---------- */

.pc-legenda {
  border: 0.4mm solid var(--linha);
  border-radius: 1.5mm;
  padding: 3mm 4mm;
  width: 100%;
}

.pc-legenda > b { color: var(--primaria); font-size: 11pt; }

.pc-lista {
  display: flex;
  flex-wrap: wrap;
  gap: 2mm 7mm;
  margin-top: 2mm;
}

.pc-item {
  display: flex;
  align-items: center;
  gap: 2mm;
  font-size: 11.5pt;
  font-weight: 700;
}

/* ---------- reminiscência ---------- */

.rm-lista { list-style: none; width: 100%; }

.rm-item { padding: 1.8mm 0 2.6mm; }

/* as duas primeiras perguntas de cada roteiro são as concretas: em fase
   avançada só elas são usadas, e a marca lateral diz isso sem texto */
.rm-item.rm-inicio { border-left: 1.4mm solid var(--destaque); padding-left: 4mm; }

.rm-cabeca { display: flex; gap: 2.5mm; align-items: baseline; }

.rm-num {
  font-weight: 700;
  color: var(--primaria);
  font-size: 12pt;
  flex: none;
}

.rm-cabeca p { font-size: 13pt; line-height: 1.35; font-weight: 500; }

.rm-linhas { margin-top: 2mm; }

.rm-linha {
  border-bottom: 0.4mm solid var(--linha);
  height: 7.4mm;
}

.rm-aviso {
  font-size: 10.5pt;
  background: #F7F4EE;
  border-radius: 1.5mm;
  padding: 3mm 4mm;
  width: 100%;
}

.rm-foto {
  border: 0.5mm dashed var(--suave);
  border-radius: 2mm;
  height: 38mm;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 4mm;
  margin-top: 3mm;
}

.rm-foto span { font-size: 10pt; color: var(--suave); max-width: 70mm; }

/* ---------- cartões de conversa ---------- */

.cc-grade {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4mm;
  width: 100%;
}

.cc-cartao {
  border: 0.5mm dashed var(--suave);
  border-radius: 2mm;
  padding: 4mm;
  min-height: 26mm;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.cc-cartao p { font-size: 12pt; line-height: 1.32; font-weight: 500; }

.cc-fonte {
  font-size: 8pt;
  color: var(--suave);
  margin-top: 2mm;
}

/* ---------- fichas ---------- */

.fp-form {
  display: flex;
  flex-wrap: wrap;
  gap: 4mm 5mm;
  width: 100%;
}

.fp-inteiro { width: 100%; }
.fp-meio { width: calc(50% - 2.5mm); }

.fp-rotulo {
  display: block;
  font-size: 9.5pt;
  font-weight: 700;
  color: var(--primaria);
  text-transform: uppercase;
  letter-spacing: 0.03em;
  margin-bottom: 1.5mm;
}

.fp-linha {
  border-bottom: 0.4mm solid var(--linha);
  height: 8mm;
}

.rg-tabela {
  width: 100%;
  border-collapse: collapse;
  font-size: 10pt;
}

.rg-tabela th {
  background: #F2EEE6;
  border: 0.3mm solid var(--linha);
  padding: 2.5mm 2mm;
  text-align: left;
  font-size: 9pt;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: var(--primaria);
}

.rg-tabela td {
  border: 0.3mm solid var(--linha);
  height: 11mm;
}

.rg-tabela td:first-child { width: 20mm; }
.rg-tabela td:nth-child(2) { width: 45mm; }

/* ==========================================================================
   MANUAL DO CUIDADOR
   ========================================================================== */

.pagina-guia {
  display: flex;
  flex-direction: column;
  padding: 13mm 15mm 22mm;
  font-size: 10.5pt;
  line-height: 1.52;
}

.gu-titulo {
  font-family: Lora, serif;
  font-size: 21pt;
  font-weight: 600;
  line-height: 1.15;
  margin-bottom: 3mm;
}

.gu-resumo {
  font-size: 12.5pt;
  line-height: 1.4;
  color: var(--primaria);
  font-weight: 500;
  margin-bottom: 4mm;
  border-bottom: 0.4mm solid var(--linha);
  padding-bottom: 3.5mm;
}

.gu-texto p { margin-bottom: 3mm; }

.gu-texto p:last-child { margin-bottom: 0; }

.gu-lista {
  margin: 3mm 0 0 5mm;
  padding-left: 0;
}

.gu-lista li {
  margin-bottom: 2mm;
  padding-left: 1mm;
}

/* ---------- tirinha ---------- */

.gu-tirinha { margin: 5mm 0 0; }

.tirinha {
  display: flex;
  gap: 5mm;
  width: 100%;
}

.tira-quadro { flex: 1; min-width: 0; }

.tira-quadro svg {
  display: block;
  width: 100%;
  height: auto;
}

/* ---------- a regra ---------- */

.gu-regra {
  background: var(--primaria);
  color: #fff;
  border-radius: 2mm;
  padding: 4mm 5mm;
  font-size: 12pt;
  font-weight: 600;
  line-height: 1.4;
}

.gu-regra span {
  display: block;
  font-size: 8pt;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  opacity: 0.7;
  margin-bottom: 1.5mm;
}

/* ==========================================================================
   MATERIAL DE ORIENTAÇÃO

   Lido de pé, de longe e de relance — não sentado à mesa. Por isso o corpo
   aqui é muito maior que no resto da coleção.
   ========================================================================== */

.cal {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

.cal th {
  font-size: 12pt;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: var(--primaria);
  padding: 2mm 0 3mm;
  border-bottom: 0.8mm solid var(--primaria);
}

.cal td {
  border: 0.4mm solid var(--linha);
  /* 28mm é o teto: mês que precisa de SEIS semanas (janeiro de 2027, por
     exemplo) tem seis fileiras, e a folha só comporta 172mm de tabela. */
  height: 28mm;
  vertical-align: top;
  padding: 1.5mm;
}

.cal td span {
  font-size: 22pt;
  font-weight: 700;
  line-height: 1;
}

.cal td.cal-vazio { background: #F7F4EE; border-color: #EFEAE1; }

/* ---------- quadro do dia ---------- */

.qd-grade { width: 100%; }

.qd-bloco { margin-bottom: 6mm; }

.qd-bloco h3 {
  font-family: Inter, sans-serif;
  font-size: 15pt;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--primaria);
  border-bottom: 0.8mm solid var(--primaria);
  padding-bottom: 1.5mm;
  margin-bottom: 2mm;
}

.qd-linha {
  border-bottom: 0.4mm solid var(--linha);
  height: 11mm;
}

/* ---------- hoje é ---------- */

.he-quadro { width: 100%; }

.he-campo {
  border: 0.6mm solid var(--escura);
  border-radius: 2mm;
  margin-bottom: 4mm;
  padding: 2mm 4mm 3mm;
}

.he-campo > span {
  display: block;
  font-size: 11pt;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: var(--primaria);
}

/* ---------- plaquinhas ---------- */

.pl-grade {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 5mm;
  width: 100%;
}

.pl-etiqueta {
  border: 0.6mm dashed var(--suave);
  border-radius: 2mm;
  padding: 3mm;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 2mm;
}

.pl-foto {
  border: 0.4mm solid var(--linha);
  border-radius: 1.5mm;
  height: 26mm;
  background: #FBF9F5;
}

.pl-etiqueta span {
  font-size: 20pt;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.1;
}

/* ---------- tabelas de rotina ---------- */

.rt-tabela {
  width: 100%;
  border-collapse: collapse;
  font-size: 12pt;
}

.rt-tabela th {
  background: #F2EEE6;
  border: 0.4mm solid var(--linha);
  padding: 3mm 2mm;
  text-align: left;
  font-size: 10.5pt;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--primaria);
}

.rt-tabela td {
  border: 0.4mm solid var(--linha);
  height: 14mm;
}

.rt-remedios td:nth-child(n + 3) { width: 22mm; }
.rt-telefones td:last-child { width: 70mm; }
