/* ==========================================================================
   print.css (media="print")
   • book.php prints only the «قسيمة طلب كتاب» (A5; also fits A6 when the
     printer scales to the page).
   • other pages print a clean, ink-friendly version of the content.
   ========================================================================== */

@page { size: A5 portrait; margin: 9mm; }

html, body {
  background: #fff !important;
  background-image: none !important;
  color: #000 !important;
  font-size: 10.5pt;
}
body { display: block; min-height: 0; }
* { box-shadow: none !important; text-shadow: none !important; animation: none !important; transition: none !important; }

.site-header, .ticker, .site-footer, .skip-link, .bk, .spine-tip, .stamp-press, .toast, .page-busy,
.filters-panel, .filters-backdrop, .filters-toggle, .view-toggle, .pagination, .search-box,
.search-top form, .bk__actions, .book-actions, .hero__types, .stats, .empty__actions, .group-index,
.subject-tools, template { display: none !important; }

a { color: #000; text-decoration: none; }
.reveal, .shelf__slot { opacity: 1 !important; transform: none !important; }

/* ---------------------------------------------------------------------------
   Book page → only the slip
   --------------------------------------------------------------------------- */
.page-book main > :not(.print-slip),
main:has(> .print-slip) > :not(.print-slip) { display: none !important; }

.print-slip {
  display: block !important;
  position: relative;
  max-width: 128mm;
  margin: 0 auto;
  padding: 5mm 6mm 6mm;
  border: 1.2pt solid #000;
  font-family: var(--font-ui);
  line-height: 1.5;
  page-break-inside: avoid;
  break-inside: avoid;
}
.slip__head {
  display: flex;
  align-items: center;
  gap: 4mm;
  padding-bottom: 3mm;
  border-bottom: 1.8pt double #0E0583;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}
.slip__logo { flex: none; line-height: 0; }
.slip__logo img { height: 15mm; width: auto; }
.slip__names { flex: 1; min-width: 0; }
.slip__org { margin: 0; font-size: 8.5pt; }
.slip__name { margin: 0; font-family: var(--font-title); font-weight: 700; font-size: 13pt; line-height: 1.3; color: #0E0583 !important; }
.slip__date { font-size: 8.5pt; text-align: left; white-space: nowrap; }
.slip__date b { font-weight: 700; }

.slip__title {
  margin: 3mm 0 2mm;
  text-align: center;
  font-family: var(--font-title);
  font-size: 15pt;
  letter-spacing: .02em;
}
.slip__reg {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4mm;
  margin: 0 auto 3mm;
  padding: 1.5mm 4mm;
  width: fit-content;
  border: 1.5pt solid #000;
  border-radius: 2mm;
}
.slip__reg span { font-size: 9pt; }
.slip__reg strong { font-size: 22pt; line-height: 1.1; letter-spacing: .04em; font-variant-numeric: tabular-nums; }

.slip__table { width: 100%; border-collapse: collapse; font-size: 9.5pt; }
.slip__table th, .slip__table td { padding: 1.3mm 2mm; border: .6pt solid #555; text-align: start; vertical-align: top; }
.slip__table th { width: 22mm; font-weight: 700; background: #f1f1f1 !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; white-space: nowrap; }
.slip__table td { font-weight: 500; }
.slip__table .slip__book-title { font-family: var(--font-title); font-weight: 700; font-size: 11pt; }

.slip__fields { display: grid; gap: 4mm; margin: 5mm 0 4mm; font-size: 9.5pt; }
.slip__line { display: flex; align-items: flex-end; gap: 2mm; }
.slip__line span { white-space: nowrap; font-weight: 600; }
.slip__line i { flex: 1; border-bottom: .8pt dotted #000; height: 4mm; }
.slip__line-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 5mm; }

.slip__admin {
  position: relative;
  margin-top: 3mm;
  padding: 2.5mm 3mm 3mm;
  padding-left: 32mm;
  border: .8pt dashed #000;
  font-size: 8.5pt;
  min-height: 30mm;
}
.slip__admin h3 { margin: 0 0 2mm; font-family: var(--font-ui); font-size: 9pt; }
.slip__admin .slip__line { margin-top: 2.5mm; }
.slip__stamp {
  position: absolute;
  left: 3mm;
  top: 50%;
  width: 26mm;
  height: 26mm;
  transform: translateY(-50%) rotate(-8deg);
  color: #555;
}
.slip__stamp svg { width: 100%; height: 100%; }
.slip__foot { margin: 2.5mm 0 0; font-size: 7.5pt; text-align: center; color: #333; }

/* ---------------------------------------------------------------------------
   Other pages
   --------------------------------------------------------------------------- */
@page :first { margin-top: 10mm; }
.search-layout { display: block; }
.book-row { break-inside: avoid; border: .5pt solid #999; }
.mini-cover { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.bookcase { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
