/* ============================================================================
   cards-print.css — Το φύλλο των καρτών επιβράβευσης, μόνο για εκτύπωση.

   Ζει κάτω από `.escardsheet`, όπως το voucher ζει κάτω από `.esvsheet`, ώστε
   τα στυλ της εφαρμογής να μη διαρρέουν πάνω του και το αντίστροφο.

   Α4 κατακόρυφο, 2 στήλες × 4 σειρές ανά σελίδα. Η αναλογία 1.585:1 είναι η
   αναλογία πιστωτικής κάρτας — η ίδια που χρησιμοποιεί το esdocs στην οθόνη.
   ========================================================================== */

.escardsheet {
  --cs-ink: #0C2230;
  --cs-gold: #B08D2F;
  --cs-line: #E7DFCF;
  --cs-muted: #5C6A6E;
  --cs-paper: #FBF9F4;

  display: none;                 /* Υπάρχει μόνο για την εκτύπωση. */
  width: 210mm; box-sizing: border-box; padding: 12mm 12mm 10mm;
  background: var(--cs-paper); color: var(--cs-ink);
  font-family: Georgia, 'Times New Roman', serif;
  -webkit-print-color-adjust: exact; print-color-adjust: exact;
}

.escardsheet .cs-head {
  display: flex; align-items: baseline; justify-content: space-between;
  gap: 12px; border-bottom: 2px solid var(--cs-gold);
  padding-bottom: 8px; margin-bottom: 12px;
}
.escardsheet .cs-brand { font-size: 15px; letter-spacing: .04em; }
.escardsheet .cs-meta { font-size: 10.5px; color: var(--cs-muted); }

.escardsheet .cs-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 10mm 8mm;
}

.escardsheet .ptile {
  margin: 0; break-inside: avoid; page-break-inside: avoid;
}
.escardsheet .ptile img,
.escardsheet .ptile .pfallback {
  display: block; width: 100%; aspect-ratio: 1.585 / 1;
  object-fit: contain; border: 1px solid var(--cs-line); border-radius: 8px;
  background: #fff;
}
/* Κάρτα χωρίς εικόνα (PDF ή καθόλου αρχείο): τυπώνεται ούτως ή άλλως, ώστε
   να μη χαθεί ο κωδικός — αυτό είναι το χρήσιμο κομμάτι. */
.escardsheet .ptile .pfallback {
  display: flex; align-items: center; justify-content: center; text-align: center;
  background: linear-gradient(135deg, #F3E7C9 0%, #E4CF9C 55%, #D8BD80 100%);
  color: rgba(12,34,48,.55); font-size: 12px; letter-spacing: .12em; padding: 8px;
}
.escardsheet .ptile figcaption {
  display: flex; flex-direction: column; gap: 1px; margin-top: 5px;
  font-family: system-ui, -apple-system, 'Segoe UI', Helvetica, Arial, sans-serif;
}
.escardsheet .ptile figcaption b { font-size: 11.5px; }
.escardsheet .ptile figcaption span { font-size: 10.5px; color: var(--cs-muted); }
.escardsheet .ptile figcaption .code {
  font-family: ui-monospace, Menlo, Consolas, monospace;
  letter-spacing: .05em; color: var(--cs-ink);
}

@media print {
  /* ⚠ ΤΟ `@page` ΕΦΥΓΕ (10.09.2026) — είναι ΚΑΘΟΛΙΚΟ και μηδένιζε το
     περιθώριο σε ΚΑΘΕ εκτύπωση. Μπαίνει δυναμικά από τον `printSheet()`
     (views/voucher.js) μόνο όση ώρα τυπώνεται φύλλο. ΜΗΝ ΤΟ ΞΑΝΑΒΑΛΕΙΣ. */
  .escardsheet.printing {
    display: block !important;
    width: 210mm !important; margin: 0 !important; box-shadow: none !important;
  }
  .escardsheet.printing, .escardsheet.printing * {
    -webkit-print-color-adjust: exact; print-color-adjust: exact;
  }
  .escardsheet.printing ~ *, .no-print { display: none !important; }
}
