/* ==========================================================================
   Dossiê do imóvel — folha de estilo da versão para PDF.

   Carregada só na página do dossiê. Ela é clara (não escura como o site):
   o dossiê nasce para virar papel ou anexo de WhatsApp, e fundo preto
   gastaria tinta, ficaria ilegível impresso e pesaria na tela de quem abre
   o PDF no celular.

   Toda a medida é em milímetro e ancorada em A4, para o que o corretor vê
   na tela ser exatamente o que sai no arquivo.
   ========================================================================== */

@page {
  size: A4;
  margin: 14mm 14mm 16mm;
}

:root {
  --tinta: #14100b;
  --tinta-2: #4a4239;
  --tinta-3: #857b6d;
  --linha: #e2dbcd;
  --ouro: #8a6a2f;
  --ouro-claro: #c9a227;
  --creme: #faf8f4;
  --sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  font-family: var(--sans);
  font-size: 10.5pt;
  line-height: 1.55;
  color: var(--tinta);
  background: #6b6b6b;           /* fundo cinza só na tela, para a folha destacar */
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}

/* A "folha": na tela imita um A4; na impressão vira a própria página. */
.folha {
  width: 210mm;
  min-height: 297mm;
  margin: 18px auto;
  padding: 16mm 15mm;
  background: #fff;
  box-shadow: 0 10px 40px rgba(0, 0, 0, .35);
}

/* ---- Barra de ações: só existe na tela ---- */
.acoes-dossie {
  position: sticky; top: 0; z-index: 10;
  display: flex; align-items: center; justify-content: center; gap: 10px;
  padding: 12px; background: #14100b;
}
.acoes-dossie button, .acoes-dossie a {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 11px 22px; border: 1px solid transparent; border-radius: 9px;
  font: inherit; font-size: 13px; font-weight: 600; cursor: pointer;
  background: linear-gradient(135deg, #f2bc4a, #d59a1e); color: #1a1204;
  text-decoration: none;
}
.acoes-dossie .secundario { background: transparent; border-color: rgba(255,255,255,.25); color: #fff; }
.acoes-dossie > span { color: rgba(255,255,255,.55); font-size: 12px; margin-left: 6px; }

/* ---- Faixa de continuação (folhas 2 em diante) ----
   O PDF pode ser impresso e as folhas se separam. Sem isto, a página 3
   solta é um papel com números e nenhuma indicação de qual imóvel é. */
.d-corrida {
  display: flex; align-items: baseline; justify-content: space-between; gap: 8mm;
  padding-bottom: 3mm; margin-bottom: 2mm;
  border-bottom: 1px solid var(--linha);
  font-size: 8pt; color: var(--tinta-3);
}
.d-corrida b { flex: none; color: var(--ouro); font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
/* O título vem do CRM e chega a 120 caracteres. Aqui ele é só referência,
   então encolhe com reticência em vez de empurrar o código para fora da
   folha — que é o que acontecia com nowrap nos dois. */
.d-corrida .d-corrida__nome { flex: 1 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.d-corrida .d-corrida__cod { flex: none; white-space: nowrap; }

/* ---- Cabeçalho ---- */
.d-topo {
  display: flex; align-items: flex-start; justify-content: space-between; gap: 20px;
  padding-bottom: 7mm; border-bottom: 2px solid var(--ouro);
}
.d-topo img { height: 16mm; width: auto; }
.d-topo__dados { text-align: right; font-size: 8.5pt; color: var(--tinta-3); line-height: 1.5; }
.d-topo__dados b { color: var(--tinta); display: block; font-size: 9.5pt; }

.d-etiqueta {
  display: inline-block; margin: 6mm 0 2.5mm;
  font-size: 8pt; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: var(--ouro);
}
.d-titulo { font-size: 18pt; font-weight: 700; line-height: 1.15; letter-spacing: -.02em; margin: 0 0 2mm; }
.d-local { font-size: 10pt; color: var(--tinta-2); margin: 0; }

/* ---- Foto principal ---- */
.d-foto { margin: 5mm 0; border-radius: 3mm; overflow: hidden; background: var(--creme); }
.d-foto img { width: 100%; height: 66mm; object-fit: cover; display: block; }

/* ---- Preço + ficha ---- */
.d-preco {
  display: flex; align-items: flex-end; justify-content: space-between; gap: 10mm;
  padding: 4mm 6mm; margin-bottom: 4mm;
  background: var(--creme); border-left: 3px solid var(--ouro); border-radius: 0 2mm 2mm 0;
}
.d-preco span { display: block; margin-bottom: 1mm; font-size: 8.5pt; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--tinta-3); }
.d-preco b { font-size: 20pt; font-weight: 700; letter-spacing: -.02em; }
.d-preco i { font-style: normal; font-size: 9pt; color: var(--tinta-2); }

.d-ficha { display: grid; grid-template-columns: repeat(auto-fit, minmax(28mm, 1fr)); gap: 0; border: 1px solid var(--linha); border-radius: 2mm; overflow: hidden; }
.d-ficha div { padding: 3.2mm 3mm; text-align: center; border-right: 1px solid var(--linha); }
.d-ficha div:last-child { border-right: 0; }
.d-ficha b { display: block; font-size: 13pt; font-weight: 700; }
.d-ficha span { font-size: 7.5pt; letter-spacing: .1em; text-transform: uppercase; color: var(--tinta-3); }

/* ---- Blocos ---- */
.d-bloco { margin-top: 7mm; page-break-inside: avoid; }
.d-bloco h2 {
  font-size: 8.5pt; font-weight: 700; letter-spacing: .18em; text-transform: uppercase;
  color: var(--ouro); margin: 0 0 3mm; padding-bottom: 2mm; border-bottom: 1px solid var(--linha);
}
.d-texto { font-size: 9.5pt; color: var(--tinta-2); line-height: 1.6; white-space: pre-line; margin: 0; }

.d-tabela { width: 100%; border-collapse: collapse; font-size: 9.5pt; }
.d-tabela td { padding: 2.2mm 0; border-bottom: 1px solid var(--linha); }
.d-tabela td:first-child { color: var(--tinta-3); }
.d-tabela td:last-child { text-align: right; font-weight: 600; }
.d-tabela tr:last-child td { border-bottom: 0; }

/* Destaque de resultado (parcela, patrimônio projetado) */
.d-destaque {
  margin-top: 4mm; padding: 5mm; text-align: center;
  background: var(--creme); border: 1px solid var(--linha); border-radius: 2mm;
}
.d-destaque span { display: block; font-size: 8pt; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--tinta-3); }
.d-destaque b { display: block; font-size: 17pt; font-weight: 700; color: var(--ouro); letter-spacing: -.02em; margin-top: 1mm; }
.d-destaque i { display: block; font-style: normal; font-size: 8.5pt; color: var(--tinta-2); margin-top: 1.5mm; }

.d-duplo { display: grid; grid-template-columns: 1fr 1fr; gap: 8mm; }

/* ---- Galeria ---- */
.d-galeria { display: grid; grid-template-columns: repeat(3, 1fr); gap: 3mm; }
.d-galeria img { width: 100%; height: 32mm; object-fit: cover; border-radius: 2mm; display: block; }

/* ---- Rodapé ---- */
.d-rodape {
  margin-top: 9mm; padding-top: 4mm; border-top: 1px solid var(--linha);
  font-size: 7.5pt; color: var(--tinta-3); line-height: 1.6;
}
.d-rodape b { color: var(--tinta); }

.d-corretor {
  margin-top: 6mm; padding: 5mm 6mm;
  background: var(--tinta); color: #fff; border-radius: 2mm;
  display: flex; align-items: center; justify-content: space-between; gap: 8mm;
}
.d-corretor span { font-size: 8pt; letter-spacing: .14em; text-transform: uppercase; color: rgba(255,255,255,.55); }
.d-corretor b { display: block; font-size: 12pt; margin-top: 1mm; }
.d-corretor .zap { font-size: 11pt; font-weight: 700; color: var(--ouro-claro); }

/* ==========================================================================
   Impressão
   ========================================================================== */

@media print {
  body { background: #fff; }
  .acoes-dossie { display: none !important; }
  .folha { width: auto; min-height: 0; margin: 0; padding: 0; box-shadow: none; }
  /* Cada .folha é uma página. A primeira não leva quebra (senão o PDF sai
     com uma folha em branco na frente), as seguintes sim. */
  .folha + .folha { page-break-before: always; }
  .quebra { page-break-before: always; }
}

@media (max-width: 230mm) {
  .folha { width: auto; margin: 0; padding: 22px 18px; }
  .d-duplo { grid-template-columns: 1fr; gap: 6mm; }
  .d-topo { flex-direction: column; gap: 12px; }
  .d-topo__dados { text-align: left; }
  /* A dica de "salvar como PDF" é a primeira coisa a sair quando falta
     espaço: os três botões precisam caber numa linha só. */
  .acoes-dossie { gap: 8px; padding: 10px 8px; }
  .acoes-dossie button, .acoes-dossie a { padding: 10px 14px; font-size: 12.5px; }
  .acoes-dossie > span { display: none; }
}

@media (max-width: 420px) {
  .folha { padding: 18px 14px; }
  .d-titulo { font-size: 16pt; }
  .d-preco { flex-direction: column; gap: 2mm; align-items: flex-start; }
  .d-preco b { font-size: 17pt; }
  .d-ficha { grid-template-columns: repeat(2, 1fr); }
  .d-ficha div { border-bottom: 1px solid var(--linha); }
  .d-galeria { grid-template-columns: repeat(2, 1fr); }
  .d-corretor { flex-direction: column; align-items: flex-start; gap: 3mm; }
}

/* Aviso de que a descrição continua na página do imóvel. Fica discreto de
   propósito: é nota de rodapé do bloco, não conteúdo. */
.d-corte {
  margin: 2.5mm 0 0;
  font-size: 8pt; font-style: italic; color: var(--tinta-3);
}

/* No celular os três botões não cabem numa linha com o rótulo inteiro, e
   "Enviar no WhatsApp" quebrava em duas linhas dentro do botão. O verbo é a
   parte dispensável: o ícone da marca já diz que é envio. */
@media (max-width: 420px) {
  .acoes-dossie .verbo { display: none; }
  .acoes-dossie button, .acoes-dossie a { padding: 10px 12px; font-size: 12px; }
}
