/* Materiais locais. Controles nativos também selecionam versões sem JavaScript. */
.kit-advento { scroll-margin-top: 5rem; padding: 2rem 0; }
.kit-controles { margin-block: 1rem; }
.kit-controles label { display: inline-flex; align-items: center; gap: .5rem; min-height: 44px; padding: .4rem; }
.kit-controles input { width: 1.25rem; height: 1.25rem; }
.kit-pagina { background: #fff; color: #23203a; border: 1px solid #d5e4f5; padding: 1rem; margin: 1.5rem 0; border-radius: 12px; }
.kit-kicker, .kit-assinatura { font-size: .8rem; color: #4f5878; }
.kit-instrucoes h3 { font-size: 1.5rem; }
.kit-instrucoes li { margin-bottom: .8rem; }
.kit-endereco { overflow-wrap: anywhere; font-size: .85rem; }
.kit-cartoes { display: grid; gap: .6rem; }
.kit-cartao { padding: 1rem; border: 1px dashed #53647a; border-top: 5px solid #0b5c35; background: #f2f8f4; break-inside: avoid; }
.kit-cartao:nth-child(even) { border-top-color: #9e1328; background: #fff5f5; }
.kit-cartao h3 { font-size: 1.15rem; margin: .4rem 0; }
.kit-cartao p { font-size: .92rem; line-height: 1.4; margin: 0 0 .45rem; }
.kit-cartao .kit-dia { font: 600 1.8rem var(--titulo); color: #0b5c35; }
.kit-dia span { font: 700 .8rem var(--corpo); color: #23203a; }
.kit-cartao small { font-size: .75rem; }
.kit-advento:has(#kit-economico:checked) .kit-papel * { color: #000; background: #fff; border-color: #000; }
.para-conteudo { position: absolute; inset: 17cqw 12cqw 12cqw; display: flex; flex-direction: column; gap: 1.2cqw; color: #23203a; font: 400 2.8cqw/1.4 Lora, Georgia, serif; }
.para-conteudo p { margin: 0; }
.para-conteudo h2 { font: 400 6.6cqw/1.2 'Great Vibes', cursive; color: #9e1328; margin: 0 0 1cqw; }
.para-kicker { text-align: center; font: 700 2.4cqw var(--corpo); letter-spacing: .1em; text-transform: uppercase; }
.nome-manual { display: inline-block; min-width: 28cqw; max-width: 100%; border-bottom: 1px solid #53647a; overflow-wrap: anywhere; vertical-align: bottom; }
.para-linhas { height: 16cqw; flex-shrink: 0; background: repeating-linear-gradient(to bottom, transparent 0, transparent calc(8cqw - 1px), #53647a calc(8cqw - 1px), #53647a 8cqw); }
.para-desejo, .para-obrigado { height: 8cqw; }
.para-desenho { flex: 1; min-height: 18cqw; border: 1px dashed #53647a; border-radius: 2cqw; }
.para-assinar { display: inline-block; width: 40cqw; border-bottom: 1px solid #53647a; }
.para-conteudo small { text-align: center; font: 400 2cqw var(--corpo); }
.carta-para:has(input[value="neve"]:checked) .para-conteudo h2 { color: #22306b; }
.carta-para:has(input[value="livre"]:checked) .para-linhas { height: 8cqw; }
.carta-para:has(input[value="livre"]:checked) .para-conteudo { inset: 10cqw; }
.carta-para:has(input[value="livre"]:checked) .para-folha { border: 1px solid #53647a; }
.carta-para:has(input[value="livre"]:checked) .arte { display: none; }
.carta-para .previa { position: static; }
@media (min-width: 40rem) { .kit-cartoes { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@page { size: A4; margin: 0; }
@media print {
  html, body { margin: 0 !important; padding: 0 !important; background: #fff !important; }
  body:has(.kit-advento) > :not(main), body:has(.kit-advento) main > :not(article), body:has(.kit-advento) article.doc > :not(.kit-advento), .kit-advento > :not(.kit-papel) { display: none !important; }
  body:has(.kit-advento) main, body:has(.kit-advento) article.doc, .kit-advento, .kit-papel { display: block !important; width: auto !important; max-width: none !important; padding: 0 !important; margin: 0 !important; border: 0 !important; }
  .kit-pagina { width: 210mm; height: 296mm; padding: 12mm; border: 0; border-radius: 0; margin: 0; break-after: page; break-inside: avoid; font-size: 12pt; }
  .kit-pagina:last-child { break-after: auto; }
  .kit-cartoes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(3, 78mm); gap: 4mm; }
  .kit-cartao { padding: 4mm; }
  .kit-cartao h3 { font-size: 13pt; }
  .kit-cartao p { font-size: 10.5pt; line-height: 1.35; margin-bottom: 2mm; }
  .kit-cartao .kit-dia { font-size: 22pt; }
  .kit-cartao small, .kit-kicker, .kit-assinatura { font-size: 9pt; }
  .kit-instrucoes h3 { font-size: 22pt; }
  .kit-instrucoes li { margin-bottom: 5mm; }
  .carta-para #gerador h2.nao-imprimir { display: none !important; }
  .carta-para .folha-box { width: 210mm; height: 296mm; }
  .para-linhas { background: none; border-bottom: 1px solid #53647a; position: relative; }
  .para-linhas:not(.para-desejo):not(.para-obrigado)::before { content: ''; position: absolute; top: 50%; width: 100%; border-top: 1px solid #53647a; }
  .carta-para:has(input[value="livre"]:checked) .para-linhas::before { display: none; }
  * { print-color-adjust: exact; -webkit-print-color-adjust: exact; }
}

/* Sem JS, a moldura clássica já está no HTML; neve mantém a leitura em azul. */
.carta-para:has(input[value="neve"]:checked) .para-folha { outline: 1px solid #22306b; outline-offset: -2cqw; }
