/* ==========================================================================
   templates.css - Folha de Estilos Modular para os Templates de Cards
   Liturgia Diária • Evangelho App
   ========================================================================== */

/* --------------------------------------------------------------------------
   Paleta Litúrgica dos Templates
   -------------------------------------------------------------------------- */
:root {
  /* Template 1: Paróquia Vila Arapuá (Cores fiéis extraídas das referências) */
  --arapua-blue: #326EA0;
  --arapua-text: #111111;
  --arapua-card-bg: #FFFFFF;

  /* Roxo (Quaresma / Semana Santa) */
  --arapua-roxo-frame: #8228A0;
  --arapua-roxo-badge: #5B1C70;

  /* Branco / Solenidades (Tom celeste/mariano suave de Ceia do Senhor) */
  --arapua-branco-frame: #96C8E6;
  --arapua-branco-badge: #698CA1;

  /* Vermelho (Paixão do Senhor / Mártires / Pentecostes) */
  --arapua-vermelho-frame: #A00000;
  --arapua-vermelho-badge: #700000;

  /* Verde (Tempo Comum) */
  --arapua-verde-frame: #1C7838;
  --arapua-verde-badge: #145527;

  /* Rosa (Gaudete / Laetare) */
  --arapua-rosa-frame: #C44078;
  --arapua-rosa-badge: #8E2E57;

  /* Preto (Finados) */
  --arapua-preto-frame: #333333;
  --arapua-preto-badge: #202020;
}

/* ==========================================================================
   Supressão Imediata de Transições Durante Exportação (Evita Captura em Animação)
   ========================================================================== */
body.is-exporting .liturgical-card,
body.is-exporting .liturgical-card *,
.liturgical-card.is-exporting,
.liturgical-card.is-exporting * {
  transition: none !important;
  animation: none !important;
}

body.is-exporting .liturgical-card,
.liturgical-card.is-exporting {
  zoom: 1 !important;
  transform: none !important;
}

/* ==========================================================================
   1. TEMPLATE: PARÓQUIA VILA ARAPUÁ (Quadrado 1:1)
   Especificações fiéis do InDesign (1080x1080px)
   ========================================================================== */

.liturgical-card.template-paroquia-arapua {
  width: 1080px;
  height: 1080px;
  min-width: 1080px;
  min-height: 1080px;
  flex-shrink: 0;
  aspect-ratio: 1 / 1;
  padding: 20px; /* 6. Margem externa de 20px entre todas as caixas e a borda */
  border-radius: 0; /* 5. Cantos externos retos, sem arredondamento */
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  overflow: hidden;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.55), 0 0 1px 1px rgba(255, 255, 255, 0.1);
  user-select: text;
  transition: background-color 0.25s ease;
  position: relative;
  zoom: 0.5; /* Escala 50% para caber suavemente na tela (540x540 visual) enquanto mantém 1080x1080 nativo */
}

/* Aplicação das Cores Litúrgicas do Template Arapuá (1:1 Quadrado e 9:16 Stories) */
.template-paroquia-arapua.theme-roxo,
.template-paroquia-stories.theme-roxo {
  background-color: var(--arapua-roxo-frame);
}
.template-paroquia-arapua.theme-roxo .arapua-header-badge,
.template-paroquia-stories.theme-roxo .arapua-header-badge {
  background-color: var(--arapua-roxo-badge);
}

.template-paroquia-arapua.theme-branco,
.template-paroquia-stories.theme-branco {
  background-color: var(--arapua-branco-frame);
}
.template-paroquia-arapua.theme-branco .arapua-header-badge,
.template-paroquia-stories.theme-branco .arapua-header-badge {
  background-color: var(--arapua-branco-badge);
}

.template-paroquia-arapua.theme-vermelho,
.template-paroquia-stories.theme-vermelho {
  background-color: var(--arapua-vermelho-frame);
}
.template-paroquia-arapua.theme-vermelho .arapua-header-badge,
.template-paroquia-stories.theme-vermelho .arapua-header-badge {
  background-color: var(--arapua-vermelho-badge);
}

.template-paroquia-arapua.theme-verde,
.template-paroquia-stories.theme-verde {
  background-color: var(--arapua-verde-frame);
}
.template-paroquia-arapua.theme-verde .arapua-header-badge,
.template-paroquia-stories.theme-verde .arapua-header-badge {
  background-color: var(--arapua-verde-badge);
}

.template-paroquia-arapua.theme-rosa,
.template-paroquia-stories.theme-rosa {
  background-color: var(--arapua-rosa-frame);
}
.template-paroquia-arapua.theme-rosa .arapua-header-badge,
.template-paroquia-stories.theme-rosa .arapua-header-badge {
  background-color: var(--arapua-rosa-badge);
}

.template-paroquia-arapua.theme-preto,
.template-paroquia-stories.theme-preto {
  background-color: var(--arapua-preto-frame);
}
.template-paroquia-arapua.theme-preto .arapua-header-badge,
.template-paroquia-stories.theme-preto .arapua-header-badge {
  background-color: var(--arapua-preto-badge);
}

/* ==========================================================================
   1B. TEMPLATE: PARÓQUIA VILA ARAPUÁ STORIES (Vertical 9:16 - 1080x1920px)
   Formato para Instagram / Facebook Stories e WhatsApp Status
   ========================================================================== */

.liturgical-card.template-paroquia-stories {
  width: 1080px;
  height: 1920px;
  min-width: 1080px;
  min-height: 1920px;
  flex-shrink: 0;
  aspect-ratio: 9 / 16;
  padding: 100px 30px 120px 30px; /* Safe zones: 100px no topo (status bar/perfil) e 120px na base (reply/reações) */
  border-radius: 0;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  overflow: hidden;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.55), 0 0 1px 1px rgba(255, 255, 255, 0.1);
  user-select: text;
  transition: background-color 0.25s ease;
  position: relative;
  zoom: 0.38; /* Escala para caber perfeitamente na visualização de tela */
}

/* Top Header Bar (Pills/Badges) */
.arapua-header-row {
  display: flex;
  align-items: stretch;
  gap: 10px; /* 8. Espaçamento entre as caixas de 10px */
  margin-bottom: 10px; /* 8. Espaçamento entre as caixas de 10px */
  min-height: 80px;
  flex-shrink: 0;
}

.arapua-header-badge {
  color: #FFFFFF;
  box-sizing: border-box;
  display: flex;
  align-items: center;
}

/* Badge de Data (Esquerda) */
.arapua-badge-date {
  padding: 10px 18px;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  min-width: 220px;
  flex-shrink: 0;
  border-radius: 8px 0 0 8px; /* 3. Rounded corners: 8px, 0, 0, 8px */
  white-space: nowrap;
}

.arapua-date-num {
  font-family: 'Rubik', sans-serif; /* 1. Única fonte: Rubik */
  font-size: 26px; /* 2. Data: 26/26pt */
  line-height: 26px;
  letter-spacing: -0.2px;
  white-space: nowrap;
}

.arapua-date-daymonth {
  font-weight: 700; /* bold no dia e mês */
  white-space: nowrap;
}

.arapua-date-year {
  font-weight: 400; /* regular no ano */
  opacity: 0.95;
  white-space: nowrap;
}

.arapua-date-weekday {
  font-family: 'Rubik', sans-serif; /* 1. Única fonte: Rubik */
  font-size: 18px; /* 2. Dia da semana: 18/22pt */
  line-height: 22px;
  font-weight: 400; /* regular */
  text-transform: uppercase; /* all caps */
  margin-top: 4px;
  opacity: 0.92;
  white-space: nowrap;
}

/* Badge de Celebração (Direita) */
.arapua-badge-celebration {
  flex: 1;
  padding: 10px 24px;
  font-family: 'Rubik', sans-serif; /* 1. Única fonte: Rubik */
  font-size: 34px; /* 2. Celebração equilibrada (calibrada para melhor hierarquia) */
  line-height: 38px;
  font-weight: 700; /* bold */
  white-space: normal; /* Deve quebrar a linha se for grande demais */
  word-break: normal;
  overflow-wrap: break-word;
  text-wrap: balance;
  display: flex;
  align-items: center;
  border-radius: 0 8px 8px 0; /* 3. Rounded corners: 0, 8px, 8px, 0 */
  letter-spacing: -0.2px;
}

/* Celebrações Longas (>55 caracteres): tipografia compacta que evita comprimir o card interno */
.arapua-badge-celebration.arapua-celebration-compact {
  font-size: 26px;
  line-height: 30px;
  padding: 8px 20px;
}

.arapua-celebration-text {
  display: inline-block;
  flex: 1;
  text-wrap: balance;
  outline: none;
  cursor: text;
  border-radius: 4px;
  border: 1px dashed transparent;
  padding: 2px 4px;
  transition: background-color 0.2s, border-color 0.2s;
}

.arapua-celebration-text:hover,
.arapua-celebration-text:focus {
  border-color: rgba(255, 255, 255, 0.6);
  background-color: rgba(255, 255, 255, 0.15);
}

.btn-celebration-dropdown {
  background: rgba(255, 255, 255, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: #FFFFFF;
  border-radius: 4px;
  padding: 2px 8px;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  margin-left: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
  user-select: none;
}

.btn-celebration-dropdown:hover {
  background: rgba(255, 255, 255, 0.3);
  border-color: rgba(255, 255, 255, 0.6);
}

/* Main White Card Canvas */
.arapua-white-card {
  background-color: var(--arapua-card-bg);
  border-radius: 8px 8px 8px 110px; /* 3. Rounded corners: 8px, 8px, 8px, 110px */
  padding: 30px; /* 7. Margem interna de 30px */
  flex: 1;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  overflow: hidden;
  position: relative;
  user-select: none;
  cursor: default;
}

/* Container de Título e Referência Bíblica Contíguos (Fluxo em Bloco Natural) */
.card-gospel-title-container.arapua-gospel-title-container {
  display: block;
  margin-bottom: 20px;
  flex-shrink: 0;
  user-select: none;
  cursor: default;
  font-size: 34px;
  line-height: 42px;
}

/* Título do Evangelho */
.arapua-gospel-title {
  color: var(--arapua-blue);
  font-family: 'Rubik', sans-serif; /* 1. Única fonte: Rubik */
  font-size: 34px; /* Calibrado com folga de segurança >160px para absorver variações de subpixel */
  line-height: 42px;
  font-weight: 700; /* bold */
  letter-spacing: -0.2px;
  display: inline;
  outline: none;
  cursor: text;
  border: 1px dashed transparent;
  border-radius: 4px;
  padding: 1px 2px;
  transition: border-color 0.2s, background-color 0.2s;
  overflow-wrap: break-word;
  word-break: normal;
}

.arapua-gospel-title:hover,
.arapua-gospel-title:focus {
  border-color: rgba(50, 110, 160, 0.5);
  background-color: rgba(50, 110, 160, 0.05);
}

/* Código bíblico que segue o título (mais discreto: regular, proporcional ao título) */
.arapua-gospel-ref {
  color: var(--arapua-blue);
  font-family: 'Rubik', sans-serif;
  font-weight: 400; /* regular */
  font-size: 23px; /* Proporcional e discreto */
  line-height: 42px;
  letter-spacing: -0.2px;
  opacity: 0.85;
  display: inline;
  white-space: nowrap;
  vertical-align: baseline;
  margin-left: 8px;
  outline: none;
  cursor: text;
  border: 1px dashed transparent;
  border-radius: 4px;
  padding: 1px 2px;
  transition: border-color 0.2s, background-color 0.2s;
}

.arapua-gospel-ref:hover,
.arapua-gospel-ref:focus {
  border-color: rgba(50, 110, 160, 0.5);
  background-color: rgba(50, 110, 160, 0.05);
  opacity: 1;
}

/* Corpo do Evangelho (Texto Justificado com Text Wrap) */
.arapua-gospel-body {
  font-family: 'Rubik', sans-serif; /* 1. Única fonte: Rubik */
  font-size: var(--card-font-size, 29px); /* 2. Texto principal: padrão 29px ou ajuste fino */
  line-height: var(--card-line-height, 36px); /* Entrelinha: padrão 36px ou ajuste fino */
  font-weight: 400; /* regular */
  color: var(--arapua-text);
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
  flex: 1;
  min-height: 0;
  overflow: hidden;
  white-space: pre-wrap;
  position: relative;
  user-select: none;
  cursor: default;
}

/* Espaçador vertical para empurrar a área de text-wrap do brasão para a base do card */
.arapua-seal-spacer {
  float: left;
  height: calc(100% - 240px);
  width: 0;
  pointer-events: none;
}

/* Área de contorno circular (text-wrap) que envolve o brasão oficial */
/* Garante espaço circular consistente de pelo menos 30px ao redor do logo de 200px (raio 100px + 35px = 135px) */
.arapua-seal-wrap {
  clear: left;
  float: left;
  width: 240px;
  height: 240px;
  shape-outside: circle(135px at 80px 160px);
  pointer-events: none;
  user-select: none;
}

/* Brasão Oficial da Paróquia: fixado exatamente a 10px da borda esquerda e 10px da borda inferior da caixa de texto */
.arapua-seal-badge {
  position: absolute;
  left: 10px;
  bottom: 10px;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  overflow: hidden;
  z-index: 10;
  pointer-events: none;
  user-select: none;
  box-sizing: border-box;
}

.arapua-seal-img {
  width: 200px;
  height: 200px;
  display: block;
  border-radius: 50%;
  object-fit: cover;
}

/* Conteúdo de Texto Editável WYSIWYG */
.arapua-text-content {
  display: inline;
  outline: none;
  cursor: text;
  border-radius: 3px;
  transition: background-color 0.2s;
  user-select: text;
  -webkit-user-select: text;
}

.arapua-text-content:hover,
.arapua-text-content:focus {
  background-color: rgba(50, 110, 160, 0.05);
}

/* Respostas Litúrgicas (Apenas na última parte, no fluxo do texto) */
.arapua-responses-wrap {
  margin-top: 14px;
  display: block;
}

.arapua-response-line {
  font-family: 'Rubik', sans-serif; /* 1. Única fonte: Rubik */
  font-size: calc(var(--card-font-size, 29px) * 0.96); /* 2. Resposta proporcional */
  line-height: var(--card-line-height, 36px);
  font-weight: 700; /* bold italic */
  font-style: italic;
  color: #000000;
}

.arapua-response-bold {
  font-family: 'Rubik', sans-serif; /* 1. Única fonte: Rubik */
  font-size: calc(var(--card-font-size, 29px) * 0.96); /* 2. Resposta proporcional */
  line-height: var(--card-line-height, 36px);
  font-weight: 700; /* bold italic */
  font-style: italic;
  color: #000000;
}

/* Indicador de Parte (ex: 1/2, 2/2, 1/8) fixado no canto inferior direito */
.arapua-part-badge {
  position: absolute;
  right: 30px;
  bottom: 20px;
  display: inline-flex;
  align-items: baseline;
  color: #000000;
  font-family: 'Rubik', sans-serif;
  user-select: none;
  background: rgba(255, 255, 255, 0.95);
  padding: 4px 8px;
  border-radius: 6px;
  z-index: 2;
}

.arapua-part-badge .part-current {
  font-size: 36px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.5px;
}

.arapua-part-badge .part-total {
  font-size: 24px;
  font-weight: 700;
  line-height: 1;
  opacity: 0.95;
}

/* ==========================================================================
   2. TEMPLATE: LITÚRGICO CLÁSSICO (Editorial com Moldura Ornamental)
   ========================================================================== */

.liturgical-card.template-liturgico-classico {
  width: 520px;
  min-height: 650px;
  border-radius: 12px;
  padding: 2.5rem 2.25rem 2rem;
  display: flex;
  flex-direction: column;
  position: relative;
  box-shadow: 0 20px 45px -10px rgba(0, 0, 0, 0.7), 0 0 1px 1px rgba(255, 255, 255, 0.1);
  transition: background 0.3s ease, color 0.3s ease;
  user-select: text;
}

/* Moldura Ornamental Interna */
.template-liturgico-classico .classic-inner-frame {
  position: absolute;
  top: 10px;
  left: 10px;
  right: 10px;
  bottom: 10px;
  border: 1px solid rgba(212, 175, 55, 0.4);
  border-radius: 8px;
  pointer-events: none;
}

.template-liturgico-classico .classic-inner-frame::before {
  content: '';
  position: absolute;
  top: 3px;
  left: 3px;
  right: 3px;
  bottom: 3px;
  border: 1px solid rgba(212, 175, 55, 0.2);
  border-radius: 6px;
}

/* Cabeçalho do Card Clássico */
.classic-header-block {
  text-align: center;
  margin-bottom: 1.25rem;
  position: relative;
  z-index: 2;
}

.classic-logo {
  width: 44px;
  height: 44px;
  margin: 0 auto 0.6rem;
  display: block;
}

.classic-pretitle {
  font-family: 'Cinzel', serif;
  font-size: 0.95rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  margin-bottom: 0.35rem;
}

.classic-date-line {
  font-family: 'Inter', sans-serif;
  font-size: 0.775rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  opacity: 0.85;
}

.classic-celebration-text {
  border: 1px dashed transparent;
  border-radius: 3px;
  padding: 1px 3px;
  outline: none;
  cursor: text;
  transition: all 0.2s;
}

.classic-celebration-text:hover,
.classic-celebration-text:focus {
  border-color: rgba(212, 175, 55, 0.5);
  background-color: rgba(0, 0, 0, 0.15);
}

.classic-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0.85rem 0;
  opacity: 0.6;
}

.classic-divider-line {
  height: 1px;
  flex: 1;
  background: currentColor;
  opacity: 0.35;
}

.classic-divider-emblem {
  margin: 0 0.6rem;
  font-size: 0.75rem;
}

/* Container de Título e Referência Clássico */
.card-gospel-title-container.classic-gospel-title-container {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: center;
  gap: 0 6px;
  text-align: center;
  margin-bottom: 1.15rem;
  position: relative;
  z-index: 2;
  line-height: 1.35;
}

/* Título do Evangelho Clássico */
.classic-gospel-title {
  font-family: 'Cinzel', serif;
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.35;
  display: inline-block;
  text-align: center;
  padding: 0.1rem 0.25rem;
  border-radius: 4px;
  border: 1px dashed transparent;
  outline: none;
  cursor: text;
  transition: all 0.2s;
  text-wrap: balance;
  overflow-wrap: break-word;
}

.classic-gospel-title:hover,
.classic-gospel-title:focus {
  border-color: rgba(212, 175, 55, 0.5);
  background-color: rgba(0, 0, 0, 0.15);
}

/* Referência Bíblica Clássica */
.classic-gospel-ref {
  font-family: 'Cinzel', serif;
  font-size: 0.95rem;
  font-weight: 400;
  line-height: 1.35;
  opacity: 0.85;
  display: inline-block;
  white-space: nowrap;
  vertical-align: baseline;
  padding: 0.1rem 0.25rem;
  border-radius: 4px;
  border: 1px dashed transparent;
  outline: none;
  cursor: text;
  transition: all 0.2s;
}

.classic-gospel-ref:hover,
.classic-gospel-ref:focus {
  border-color: rgba(212, 175, 55, 0.5);
  background-color: rgba(0, 0, 0, 0.15);
}

/* Corpo do Evangelho Clássico */
.classic-gospel-body {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.25rem;
  line-height: 1.55;
  text-align: justify;
  flex: 1;
  outline: none;
  padding: 0.3rem 0.4rem;
  border-radius: 4px;
  border: 1px dashed transparent;
  cursor: text;
  transition: all 0.2s;
  position: relative;
  z-index: 2;
  white-space: pre-wrap;
}

.classic-gospel-body:hover,
.classic-gospel-body:focus {
  border-color: rgba(212, 175, 55, 0.5);
  background-color: rgba(0, 0, 0, 0.15);
}

/* Respostas Litúrgicas Clássicas */
.classic-responses-block {
  margin-top: 1.25rem;
  padding-top: 0.75rem;
  border-top: 1px solid rgba(212, 175, 55, 0.25);
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.15rem;
  font-style: italic;
  position: relative;
  z-index: 2;
}

.classic-response-line {
  margin-bottom: 0.25rem;
}

.classic-response-line-bold {
  font-weight: 700;
  font-style: normal;
}

/* Rodapé Clássico */
.classic-footer-block {
  margin-top: 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 0.75rem;
  opacity: 0.8;
  position: relative;
  z-index: 2;
  font-family: 'Inter', sans-serif;
}

.classic-part-indicator {
  font-family: 'Cinzel', serif;
  font-weight: 700;
  letter-spacing: 0.1em;
  background-color: rgba(0, 0, 0, 0.25);
  padding: 0.15rem 0.5rem;
  border-radius: 4px;
  border: 1px solid rgba(212, 175, 55, 0.35);
}

/* Cores Litúrgicas do Template Clássico */
.template-liturgico-classico.theme-verde {
  background: var(--lit-verde-bg);
  color: var(--lit-verde-text);
}
.template-liturgico-classico.theme-verde .classic-inner-frame { border-color: rgba(226, 183, 68, 0.45); }
.template-liturgico-classico.theme-verde .classic-inner-frame::before { border-color: rgba(226, 183, 68, 0.2); }
.template-liturgico-classico.theme-verde .classic-logo,
.template-liturgico-classico.theme-verde .classic-pretitle { color: var(--lit-verde-accent); }

.template-liturgico-classico.theme-branco {
  background: var(--lit-branco-bg);
  color: var(--lit-branco-text);
}
.template-liturgico-classico.theme-branco .classic-inner-frame { border-color: rgba(146, 102, 21, 0.35); }
.template-liturgico-classico.theme-branco .classic-inner-frame::before { border-color: rgba(146, 102, 21, 0.15); }
.template-liturgico-classico.theme-branco .classic-logo,
.template-liturgico-classico.theme-branco .classic-pretitle { color: var(--lit-branco-accent); }
.template-liturgico-classico.theme-branco .classic-gospel-title:hover,
.template-liturgico-classico.theme-branco .classic-gospel-body:hover {
  background-color: rgba(0, 0, 0, 0.05);
}

.template-liturgico-classico.theme-vermelho {
  background: var(--lit-vermelho-bg);
  color: var(--lit-vermelho-text);
}
.template-liturgico-classico.theme-vermelho .classic-inner-frame { border-color: rgba(253, 224, 71, 0.4); }
.template-liturgico-classico.theme-vermelho .classic-inner-frame::before { border-color: rgba(253, 224, 71, 0.2); }
.template-liturgico-classico.theme-vermelho .classic-logo,
.template-liturgico-classico.theme-vermelho .classic-pretitle { color: var(--lit-vermelho-accent); }

.template-liturgico-classico.theme-roxo {
  background: var(--lit-roxo-bg);
  color: var(--lit-roxo-text);
}
.template-liturgico-classico.theme-roxo .classic-inner-frame { border-color: rgba(240, 171, 252, 0.35); }
.template-liturgico-classico.theme-roxo .classic-inner-frame::before { border-color: rgba(240, 171, 252, 0.15); }
.template-liturgico-classico.theme-roxo .classic-logo,
.template-liturgico-classico.theme-roxo .classic-pretitle { color: var(--lit-roxo-accent); }

.template-liturgico-classico.theme-rosa {
  background: var(--lit-rosa-bg);
  color: var(--lit-rosa-text);
}
.template-liturgico-classico.theme-rosa .classic-inner-frame { border-color: rgba(251, 207, 232, 0.35); }
.template-liturgico-classico.theme-rosa .classic-inner-frame::before { border-color: rgba(251, 207, 232, 0.15); }
.template-liturgico-classico.theme-rosa .classic-logo,
.template-liturgico-classico.theme-rosa .classic-pretitle { color: var(--lit-rosa-accent); }

/* ==========================================================================
   Auto-Fit Responsivo para Telas Pequenas (Mobile max-width: 768px)
   ========================================================================== */
@media (max-width: 768px) {
  .liturgical-card.template-paroquia-arapua {
    zoom: var(--card-mobile-zoom, 0.33);
  }
  .liturgical-card.template-paroquia-stories {
    zoom: var(--card-mobile-zoom, 0.28);
  }
  .liturgical-card.template-liturgico-classico {
    zoom: var(--card-mobile-zoom, 0.65);
    max-width: 100%;
  }
}

