/* ═══════════════════════════════════════════════════════════════
   PDF PRINT STYLES V2  ·  Estilos de Impresión para PDF
   Hacienda San Miguel · Cotizador de Bodas
   ─────────────────────────────────────────────────────────────────
   Estilos optimizados para generación de PDF vía window.print()
   Diseño A4 portrait, márgenes profesionales, tipografía elegante
   ═══════════════════════════════════════════════════════════════ */

/* ── CONFIGURACIÓN GENERAL DE IMPRESIÓN ────────────────────────── */
@media print {
  @page {
    size: A4 portrait;
    margin: 15mm 15mm 20mm 15mm;
  }

  * {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    color-adjust: exact !important;
  }

  body {
    margin: 0;
    padding: 0;
    font-family: 'Inter', 'Helvetica Neue', sans-serif;
    font-size: 10pt;
    line-height: 1.5;
    color: #2E2C28;
  }

  /* Ocultar elementos no imprimibles */
  .sidebar, .topbar, .page-header, .btn, button, 
  .modal-overlay, .modal-close, .pdf-toolbar,
  nav, header, footer:not(.pdf-footer-v2),
  .no-print {
    display: none !important;
  }

  /* Mostrar solo contenido del PDF */
  .pdf-document-v2 {
    display: block !important;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
    background: white;
  }
}

/* ── ESTILOS PARA VISTA PREVIA (PANTALLA) ──────────────────────── */
.pdf-document-v2 {
  background: white;
  width: 210mm;
  min-height: 297mm;
  margin: 0 auto;
  padding: 15mm;
  box-shadow: 0 0 10px rgba(0,0,0,0.1);
  font-family: 'Inter', 'Helvetica Neue', sans-serif;
  font-size: 10pt;
  line-height: 1.6;
  color: #2E2C28;
  position: relative;
}

/* ── ENCABEZADO DEL PDF ────────────────────────────────────────── */
.pdf-header-v2 {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 20pt;
  padding-bottom: 12pt;
  border-bottom: 2pt solid #C8691A;
  page-break-after: avoid;
}

.pdf-header-left {
  display: flex;
  gap: 12pt;
  align-items: flex-start;
}

.pdf-logo-img {
  max-height: 60pt;
  max-width: 120pt;
  object-fit: contain;
}

.pdf-logo-fallback {
  width: 60pt;
  height: 60pt;
  background: #C8691A;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 24pt;
}

.pdf-header-company {
  display: flex;
  flex-direction: column;
  gap: 2pt;
}

.pdf-company-name {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 16pt;
  font-weight: 600;
  color: #6B3F1E;
  line-height: 1.2;
}

.pdf-company-slogan {
  font-size: 9pt;
  color: #8B8780;
  font-style: italic;
  text-transform: uppercase;
  letter-spacing: 0.5pt;
}

.pdf-company-address {
  font-size: 8pt;
  color: #B0ADA6;
}

.pdf-header-right {
  text-align: right;
  display: flex;
  flex-direction: column;
  gap: 6pt;
  align-items: flex-end;
}

.pdf-folio-badge {
  background: linear-gradient(135deg, #C8691A 0%, #A5530F 100%);
  color: white;
  padding: 8pt 16pt;
  border-radius: 8pt;
  text-align: center;
}

.pdf-folio-label {
  font-size: 8pt;
  text-transform: uppercase;
  letter-spacing: 1pt;
  opacity: 0.9;
  margin-bottom: 2pt;
}

.pdf-folio-number {
  font-size: 14pt;
  font-weight: 700;
  letter-spacing: 0.5pt;
}

.pdf-meta-line {
  font-size: 8pt;
  color: #6B6760;
  display: flex;
  align-items: center;
  gap: 4pt;
}

.pdf-meta-line i {
  color: #C8691A;
  font-size: 8pt;
}

.pdf-status-badge {
  padding: 4pt 12pt;
  border-radius: 12pt;
  font-size: 7pt;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5pt;
  margin-top: 4pt;
}

.pdf-status-borrador {
  background: #F5F4F2;
  color: #8B8780;
  border: 1pt solid #E5E3DF;
}

.pdf-status-aprobada {
  background: #EEF7F2;
  color: #2E7D52;
  border: 1pt solid #A8D5B9;
}

.pdf-status-pendiente_aprobacion {
  background: #FFF8EE;
  color: #D97706;
  border: 1pt solid #F5C47A;
}

.pdf-status-rechazada, .pdf-status-cancelada {
  background: #FEF2F2;
  color: #B91C1C;
  border: 1pt solid #FECACA;
}

.pdf-status-descargada, .pdf-status-finalizada {
  background: #FAF3E0;
  color: #6B3F1E;
  border: 1pt solid #C9A84C;
}

/* ── SECCIONES DEL PDF ─────────────────────────────────────────── */
.pdf-section-v2 {
  margin-bottom: 16pt;
  page-break-inside: avoid;
}

.pdf-section-title {
  font-size: 11pt;
  font-weight: 700;
  color: #C8691A;
  text-transform: uppercase;
  letter-spacing: 0.5pt;
  margin-bottom: 8pt;
  padding-bottom: 4pt;
  border-bottom: 1pt solid #EDECEA;
  display: flex;
  align-items: center;
  gap: 6pt;
}

.pdf-section-title i {
  font-size: 10pt;
}

/* ── GRID DE INFORMACIÓN ───────────────────────────────────────── */
.pdf-info-grid-v2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10pt;
  margin-bottom: 12pt;
}

.pdf-info-item-v2 {
  display: flex;
  flex-direction: column;
  gap: 3pt;
}

.pdf-info-label-v2 {
  font-size: 8pt;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5pt;
  color: #8B8780;
}

.pdf-info-value-v2 {
  font-size: 10pt;
  color: #2E2C28;
  font-weight: 500;
}

/* ── TABLA DE CONCEPTOS ────────────────────────────────────────── */
.pdf-table-v2 {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 12pt;
  font-size: 9pt;
  page-break-inside: auto;
}

.pdf-table-v2 thead {
  background: linear-gradient(to bottom, #6B3F1E, #4A2C14);
  color: white;
}

.pdf-table-v2 th {
  padding: 6pt 8pt;
  text-align: left;
  font-size: 8pt;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.3pt;
  border: none;
}

.pdf-table-v2 tbody tr {
  border-bottom: 0.5pt solid #EDECEA;
}

.pdf-table-v2 tbody tr:nth-child(even) {
  background: #FAFAF9;
}

.pdf-table-v2 td {
  padding: 8pt;
  vertical-align: top;
}

.pdf-concept-name {
  font-weight: 600;
  color: #2E2C28;
  font-size: 9pt;
}

.pdf-concept-desc {
  font-size: 7.5pt;
  color: #8B8780;
  margin-top: 2pt;
  line-height: 1.4;
}

.pdf-empty-concepts {
  text-align: center;
  padding: 20pt;
  background: #F5F4F2;
  border: 1pt dashed #D0CEC9;
  border-radius: 4pt;
  color: #8B8780;
  font-size: 9pt;
  font-style: italic;
}

/* ── SECCIÓN DE TOTALES ────────────────────────────────────────── */
.pdf-totals-section-v2 {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 16pt;
  page-break-inside: avoid;
}

.pdf-totals-box-v2 {
  width: 60%;
  min-width: 200pt;
  background: #FAFAF9;
  border: 1.5pt solid #EDECEA;
  border-radius: 6pt;
  padding: 12pt;
}

.pdf-total-row-v2 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 6pt 0;
  border-bottom: 0.5pt solid #E5E3DF;
  font-size: 9pt;
}

.pdf-total-row-v2:last-child {
  border-bottom: none;
}

.pdf-total-label-v2 {
  color: #6B6760;
  font-weight: 500;
}

.pdf-total-value-v2 {
  font-weight: 600;
  color: #2E2C28;
  font-family: 'Inter', monospace;
  font-size: 10pt;
}

.pdf-total-discount {
  color: #B91C1C !important;
}

.pdf-total-discount .pdf-total-value-v2 {
  color: #B91C1C;
}

.pdf-total-grand {
  margin-top: 6pt;
  padding-top: 8pt;
  border-top: 2pt solid #C8691A !important;
  border-bottom: none;
  font-size: 11pt;
}

.pdf-total-grand .pdf-total-label-v2 {
  color: #6B3F1E;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5pt;
  font-size: 11pt;
}

.pdf-total-grand .pdf-total-value-v2 {
  color: #C8691A;
  font-weight: 700;
  font-size: 14pt;
}

/* ── OBSERVACIONES ─────────────────────────────────────────────── */
.pdf-observations-text-v2 {
  background: #FFF8EE;
  border-left: 3pt solid #D97706;
  padding: 10pt 12pt;
  border-radius: 4pt;
  font-size: 9pt;
  line-height: 1.6;
  color: #4A4740;
}

/* ── CARD DEL VENDEDOR ─────────────────────────────────────────── */
.pdf-seller-card-v2 {
  display: flex;
  gap: 12pt;
  align-items: center;
  background: linear-gradient(135deg, #FAF3E0 0%, #FAFAF9 100%);
  border: 1.5pt solid #C9A84C;
  border-radius: 8pt;
  padding: 12pt;
  page-break-inside: avoid;
}

.pdf-seller-avatar-v2 {
  width: 48pt;
  height: 48pt;
  border-radius: 50%;
  background: linear-gradient(135deg, #C8691A 0%, #A5530F 100%);
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16pt;
  font-weight: 700;
  flex-shrink: 0;
}

.pdf-seller-info-v2 {
  flex: 1;
}

.pdf-seller-name-v2 {
  font-size: 12pt;
  font-weight: 700;
  color: #6B3F1E;
  margin-bottom: 2pt;
}

.pdf-seller-role-v2 {
  font-size: 8pt;
  color: #8B8780;
  text-transform: uppercase;
  letter-spacing: 0.5pt;
  margin-bottom: 6pt;
}

.pdf-seller-contact-v2 {
  display: flex;
  gap: 12pt;
  flex-wrap: wrap;
  font-size: 8.5pt;
  color: #4A4740;
}

.pdf-seller-contact-v2 span {
  display: flex;
  align-items: center;
  gap: 4pt;
}

.pdf-seller-contact-v2 i {
  color: #C8691A;
  font-size: 8pt;
}

/* ── CONDICIONES GENERALES ─────────────────────────────────────── */
.pdf-conditions-text-v2 {
  font-size: 8pt;
  line-height: 1.6;
  color: #6B6760;
  background: #FAFAF9;
  border: 1pt solid #EDECEA;
  border-radius: 6pt;
  padding: 12pt;
}

.pdf-conditions-text-v2 p {
  margin: 0 0 8pt 0;
}

.pdf-conditions-text-v2 p:last-child {
  margin-bottom: 0;
}

.pdf-conditions-text-v2 strong {
  color: #4A4740;
  font-weight: 600;
}

/* ── ESPACIO PARA FIRMA ────────────────────────────────────────── */
.pdf-signature-area-v2 {
  margin-top: 40pt;
  text-align: center;
  page-break-inside: avoid;
}

.pdf-signature-line-v2 {
  width: 60%;
  margin: 0 auto 8pt;
  border-top: 1.5pt solid #2E2C28;
}

.pdf-signature-label-v2 {
  font-size: 9pt;
  font-weight: 600;
  color: #6B6760;
  text-transform: uppercase;
  letter-spacing: 0.5pt;
  margin-bottom: 4pt;
}

.pdf-signature-name-v2 {
  font-size: 10pt;
  color: #2E2C28;
}

/* ── PIE DE PÁGINA ─────────────────────────────────────────────── */
.pdf-footer-v2 {
  margin-top: 24pt;
  padding-top: 12pt;
  border-top: 1.5pt solid #EDECEA;
  text-align: center;
  font-size: 8pt;
  color: #8B8780;
  line-height: 1.6;
  page-break-inside: avoid;
}

.pdf-footer-ornament {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 10pt;
  color: #6B3F1E;
  margin-bottom: 6pt;
  font-weight: 500;
}

.pdf-footer-contact {
  margin-bottom: 4pt;
}

.pdf-footer-address {
  font-size: 7.5pt;
  color: #B0ADA6;
}

/* ── CONTROL DE SALTOS DE PÁGINA ───────────────────────────────── */
@media print {
  .pdf-section-v2 {
    page-break-inside: avoid;
  }

  .pdf-header-v2 {
    page-break-after: avoid;
  }

  .pdf-table-v2 {
    page-break-inside: auto;
  }

  .pdf-table-v2 tr {
    page-break-inside: avoid;
    page-break-after: auto;
  }

  .pdf-table-v2 thead {
    display: table-header-group;
  }

  .pdf-totals-section-v2,
  .pdf-seller-card-v2,
  .pdf-signature-area-v2,
  .pdf-footer-v2 {
    page-break-inside: avoid;
  }
}

/* ── UTILIDADES ────────────────────────────────────────────────── */
.pdf-break-before {
  page-break-before: always;
}

.pdf-break-after {
  page-break-after: always;
}

.pdf-no-break {
  page-break-inside: avoid;
}

/* ── ANIMACIONES (SOLO PANTALLA) ───────────────────────────────── */
@media screen {
  .pdf-document-v2 {
    animation: fadeIn 0.3s ease-in-out;
  }

  @keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
  }
}

/* ── FIN DE ESTILOS PDF PRINT V2 ───────────────────────────────── */
