/**
 * LOWEELUXURY — verify.html print / Save as PDF only.
 * Page = pure white. Ivory + gold live only on .verify-card.
 */

@page {
  size: A4 portrait;
  margin: 0;
}

@media print {
  html,
  body {
    margin: 0 !important;
    padding: 0 !important;
    width: 100%;
    height: auto !important;
    min-height: 297mm !important;
    max-height: none !important;
    background: #ffffff !important;
    color: #1a1814 !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  body::before,
  body::after {
    display: none !important;
    content: none !important;
  }

  .no-print,
  nav,
  footer {
    display: none !important;
  }

  #verifyCertSection {
    padding: 0 !important;
    margin: 0 !important;
    background: #ffffff !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    min-height: 297mm !important;
    height: auto !important;
    max-height: none !important;
    break-inside: auto !important;
    page-break-inside: auto !important;
    page-break-before: avoid !important;
    page-break-after: auto !important;
  }

  #verifyCertSection .verify-shell {
    max-width: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #ffffff !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: center !important;
    flex: 1 1 auto !important;
    align-self: stretch !important;
    min-height: 0 !important;
  }

  .section {
    padding: 0 !important;
    margin: 0 !important;
    background: #ffffff !important;
  }

  /* Mount: full A4 white canvas; centers the ivory card */
  #printCert {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: center !important;
    padding: 8mm 0 10mm !important;
    visibility: visible !important;
    width: 210mm !important;
    max-width: 210mm !important;
    min-height: 0 !important;
    flex: 1 1 auto !important;
    margin: 0 !important;
    background: #ffffff !important;
    box-shadow: none !important;
    break-inside: auto !important;
    page-break-inside: auto !important;
    page-break-before: auto !important;
    page-break-after: auto !important;
    break-before: auto !important;
    break-after: auto !important;
  }

  #printCert.hidden {
    display: none !important;
  }

  .a4-cert {
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    flex: 0 0 auto !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
  }

  .cert-appear {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }

  /* Ivory certificate: grows with record + legal terms; may span multiple PDF pages */
  .verify-card {
    position: relative !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    width: 200mm !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 8mm 9mm 7mm !important;
    overflow: visible !important;
    border-radius: 0 !important;
    background: linear-gradient(168deg, #fdfbf6 0%, #f9f5ec 42%, #f4efe4 100%) !important;
    border: 0.35pt solid #9a7b3a !important;
    box-shadow: inset 0 0 0 0.35pt rgba(201, 168, 76, 0.45) !important;
    flex: 0 0 auto !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    break-inside: auto !important;
    page-break-inside: auto !important;
    page-break-before: auto !important;
    page-break-after: auto !important;
    break-before: auto !important;
    break-after: auto !important;
  }
    display: block !important;
    content: "" !important;
    position: absolute !important;
    top: 3.5mm !important;
    left: 3.5mm !important;
    right: 3.5mm !important;
    bottom: 3.5mm !important;
    border: 0.25pt solid rgba(154, 123, 58, 0.22) !important;
    pointer-events: none !important;
  }

  .verify-card::after {
    display: none !important;
  }

  /* Header */
  .a4-top {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 5mm !important;
    padding-bottom: 3.5mm !important;
    margin-bottom: 3mm !important;
    border-bottom: 0.25pt solid rgba(122, 98, 56, 0.35) !important;
    flex-shrink: 0 !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  .a4-top h2 {
    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-weight: 600 !important;
    font-size: 20pt !important;
    line-height: 1.12 !important;
    letter-spacing: 0.06em !important;
    color: #4a3d24 !important;
    margin: 0 !important;
  }

  .a4-top .muted {
    font-family: Montserrat, system-ui, sans-serif !important;
    font-size: 6.5pt !important;
    letter-spacing: 0.2em !important;
    text-transform: uppercase !important;
    color: #6b614c !important;
    margin-top: 1.5mm !important;
  }

  .a4-top .mono {
    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 12pt !important;
    font-weight: 600 !important;
    letter-spacing: 0.1em !important;
    color: #3d3220 !important;
  }

  #printCert #cId {
    color: #3d3220 !important;
  }

  /* Status */
  #statusRow,
  .badge-ok,
  .badge-ng {
    font-family: Montserrat, system-ui, sans-serif !important;
    font-size: 7pt !important;
    letter-spacing: 0.22em !important;
    text-transform: uppercase !important;
    padding: 2.2mm 3mm !important;
    margin: 0 0 3mm !important;
    border-radius: 0 !important;
    border: 0.25pt solid rgba(122, 98, 56, 0.3) !important;
    background: rgba(255, 252, 248, 0.65) !important;
    flex-shrink: 0 !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  .badge-ok {
    color: #2f4a2d !important;
    border-color: rgba(74, 112, 72, 0.35) !important;
    background: rgba(248, 252, 247, 0.9) !important;
  }

  .badge-ng {
    color: #6a3030 !important;
    border-color: rgba(140, 72, 72, 0.35) !important;
    background: rgba(255, 250, 250, 0.92) !important;
  }

  /* Main: image | details — balanced archive layout (moderate photo, Entrupy-style) */
  .cert-body {
    display: grid !important;
    grid-template-columns: 72mm 1fr !important;
    gap: 7mm !important;
    align-items: stretch !important;
    margin: 0 !important;
    flex: 0 1 auto !important;
    min-height: 0 !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  .cert-image-col {
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  /* Ivory band under photo; column stretches with details so both rows align */
  .cert-image-col::after {
    content: "" !important;
    flex: 1 1 auto !important;
    min-height: 2mm !important;
  }

  #printCert #cImage,
  #cImage {
    display: block !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    height: 95mm !important;
    max-height: 95mm !important;
    min-height: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
    margin: 0 auto !important;
    border-radius: 0 !important;
    border: 0.25pt solid rgba(122, 98, 56, 0.28) !important;
    box-shadow: none !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  #cImage.hidden {
    display: none !important;
  }

  .cert-details {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    padding: 0 0 0 1mm !important;
    min-height: 0 !important;
    justify-content: flex-start !important;
    align-self: stretch !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  .line {
    border-bottom: 0.25pt solid rgba(122, 98, 56, 0.14) !important;
    padding: 1.8mm 0 !important;
    margin: 0 !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  .k {
    font-family: Montserrat, system-ui, sans-serif !important;
    font-size: 5.8pt !important;
    font-weight: 500 !important;
    letter-spacing: 0.22em !important;
    text-transform: uppercase !important;
    color: #7a663d !important;
  }

  .v {
    font-family: Montserrat, system-ui, sans-serif !important;
    font-size: 8.5pt !important;
    font-weight: 400 !important;
    line-height: 1.32 !important;
    color: #14120f !important;
    margin-top: 0.6mm !important;
  }

  .notes-compact .v {
    max-height: 24mm !important;
    overflow: hidden !important;
    line-height: 1.3 !important;
  }

  /* Archive strip + single QR */
  .cert-print-strip {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: flex-end !important;
    gap: 5mm !important;
    margin: 4mm 0 0 !important;
    padding: 4mm 0 0 !important;
    border-top: 0.25pt solid rgba(122, 98, 56, 0.22) !important;
    flex-shrink: 0 !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  .cert-signature-block {
    flex: 1 !important;
    min-width: 0 !important;
    padding-right: 4mm !important;
  }

  .cert-seal-line {
    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 9pt !important;
    letter-spacing: 0.16em !important;
    text-transform: uppercase !important;
    color: #5c4a28 !important;
    margin: 0 0 1.5mm !important;
  }

  .cert-archive-micro {
    font-family: Montserrat, system-ui, sans-serif !important;
    font-size: 5.5pt !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    color: #6b6458 !important;
    margin: 0 !important;
    line-height: 1.4 !important;
  }

  .cert-qr-cluster {
    flex-shrink: 0 !important;
    text-align: right !important;
  }

  .cert-qr-cluster .k {
    font-size: 5pt !important;
    letter-spacing: 0.2em !important;
    margin: 0 0 1.2mm !important;
    color: #7a663d !important;
  }

  /* One QR graphic: img is kept after makeQr(); hide stray canvas/table if any */
  #qrBox,
  .qr-panel {
    min-width: 0 !important;
    min-height: 0 !important;
    width: 18mm !important;
    height: 18mm !important;
    padding: 1mm !important;
    margin: 0 !important;
    margin-left: auto !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 0.25pt solid rgba(122, 98, 56, 0.35) !important;
    background: #ffffff !important;
    box-shadow: none !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  #qrBox canvas {
    display: none !important;
  }

  #qrBox img {
    display: block !important;
    width: 14mm !important;
    height: 14mm !important;
    max-width: 14mm !important;
    max-height: 14mm !important;
    object-fit: contain !important;
    transform: none !important;
  }

  #qrBox table {
    display: none !important;
  }

  .print-box {
    padding: 1mm !important;
  }

  #qrUrl {
    display: none !important;
  }

  .muted {
    color: #5c5648 !important;
  }

  /* Terms & Conditions — archival legal panel (print) */
  .cert-terms {
    margin-top: 5mm !important;
    padding: 5mm 5.5mm 4.5mm !important;
    border: 0.25pt solid rgba(122, 98, 56, 0.32) !important;
    border-radius: 0 !important;
    background: rgba(255, 252, 247, 0.55) !important;
    box-shadow: inset 0 0 0 0.25pt rgba(255, 255, 255, 0.5) !important;
    flex-shrink: 0 !important;
    break-inside: auto !important;
    page-break-inside: auto !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  .cert-terms__head {
    text-align: center !important;
    margin: 0 0 4.5mm !important;
    padding: 0 2mm 4mm !important;
    border-bottom: 0.25pt solid rgba(122, 98, 56, 0.22) !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  .cert-terms__eyebrow {
    font-family: Montserrat, system-ui, sans-serif !important;
    font-size: 5.2pt !important;
    font-weight: 500 !important;
    letter-spacing: 0.26em !important;
    text-transform: uppercase !important;
    color: #7a663d !important;
    margin: 0 0 1.8mm !important;
  }

  .cert-terms__title {
    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 13pt !important;
    font-weight: 600 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    color: #4a3d24 !important;
    margin: 0 !important;
    line-height: 1.15 !important;
  }

  .cert-terms__sub {
    font-family: Montserrat, system-ui, sans-serif !important;
    font-size: 5.5pt !important;
    font-weight: 400 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    color: #6b6458 !important;
    margin: 2.2mm 0 0 !important;
    line-height: 1.45 !important;
    max-width: 52em !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .cert-terms__list {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    counter-reset: cert-term !important;
  }

  .cert-terms__list li {
    counter-increment: cert-term !important;
    position: relative !important;
    margin: 0 0 3.2mm !important;
    padding-left: 7mm !important;
    font-family: Montserrat, system-ui, sans-serif !important;
    font-size: 5.6pt !important;
    font-weight: 400 !important;
    line-height: 1.38 !important;
    letter-spacing: 0.01em !important;
    color: #1f1c17 !important;
    text-align: justify !important;
    hyphens: auto !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  .cert-terms__list li:last-child {
    margin-bottom: 0 !important;
  }

  .cert-terms__list li::before {
    content: counter(cert-term) !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 5.5mm !important;
    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 8.5pt !important;
    font-weight: 600 !important;
    color: #6b5428 !important;
    line-height: 1.35 !important;
    text-align: left !important;
  }
}
