/* Eight Gates Grading — print styles: slab label + intake sheet. */
@media print {
  #topbar, #sideNav, .no-print, .page-head, .btn { display: none !important; }
  body { background: #fff; color: #000; font-size: 11px; }
  main { padding: 0; max-width: none; }
  section.page { display: none; }
  section.page.active { display: block; }
  .card { border: 1px solid #000; break-inside: avoid; }

  /* Slab label: 65 x 20 mm folded-stock target. */
  .slab-label {
    width: 65mm;
    height: 20mm;
    border: 1.5px solid #000;
    display: grid;
    grid-template-columns: 12mm 1fr 16mm;
    font-family: Arial, Helvetica, sans-serif;
    overflow: hidden;
    page-break-inside: avoid;
    margin: 4mm;
  }
  .slab-label .sl-brand {
    writing-mode: vertical-rl;
    text-orientation: mixed;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 11pt;
    letter-spacing: 2px;
    border-right: 1px solid #000;
  }
  .slab-label .sl-mid { padding: 1mm 2mm; text-align: center; }
  .slab-label .sl-name { font-size: 7pt; font-weight: 700; white-space: nowrap; overflow: hidden; }
  .slab-label .sl-grade { font-size: 20pt; font-weight: 900; line-height: 1; }
  .slab-label .sl-tier { font-size: 6.5pt; font-weight: 700; }
  .slab-label .sl-cert { font-size: 5.5pt; }
  .slab-label .sl-qr {
    border-left: 1px solid #000;
    display: flex; align-items: center; justify-content: center;
    padding: 1mm;
  }
  .slab-label .sl-qr img { width: 13mm; height: 13mm; }
  .slab-label .sl-stars { font-size: 5pt; letter-spacing: 1px; }
  /* Premium variants get gold accents. */
  .slab-label.variant-black { background: #111; color: #ffd23f; border-color: #ffd23f; }
  .slab-label.variant-platinum { background: #f2f2f2; }
  .slab-label.variant-silver { background: #dcdcdc; }
  .slab-label.variant-emerald { background: #0d3b2e; color: #ffd23f; }

  /* Intake sheet. */
  .intake-sheet { font-family: Arial, Helvetica, sans-serif; color: #000; }
  .intake-sheet table { width: 100%; border-collapse: collapse; font-size: 10px; }
  .intake-sheet th, .intake-sheet td { border: 1px solid #000; padding: 4px 6px; text-align: left; }
  .intake-sheet h1 { font-size: 16px; }
}

@media screen {
  .print-only { display: none; }
  /* On-screen preview of the slab label keeps the 65:20 ratio. */
  .slab-label {
    width: 650px;
    max-width: 100%;
    aspect-ratio: 65 / 20;
    border: 2px solid var(--line);
    border-radius: 6px;
    display: grid;
    grid-template-columns: 90px 1fr 110px;
    overflow: hidden;
    margin: 12px 0;
    background: #0d1420;
  }
  .slab-label .sl-brand {
    writing-mode: vertical-rl;
    display: flex; align-items: center; justify-content: center;
    font-weight: 800; font-size: 22px; letter-spacing: 4px;
    border-right: 1px solid var(--line);
    background: linear-gradient(180deg, rgba(53,244,154,.12), rgba(164,108,255,.12));
  }
  .slab-label .sl-mid { padding: 8px 14px; text-align: center; }
  .slab-label .sl-grade { font-size: 56px; font-weight: 900; color: var(--green); line-height: 1; }
  .slab-label .sl-tier { color: var(--gold); font-weight: 700; font-size: 13px; }
  .slab-label .sl-cert { font-size: 11px; color: var(--muted); }
  .slab-label .sl-name { font-weight: 700; }
  .slab-label .sl-stars { color: var(--gold); font-size: 11px; letter-spacing: 2px; }
  .slab-label .sl-qr { border-left: 1px solid var(--line); display: flex; align-items: center; justify-content: center; padding: 8px; }
}

/* ---------- perfected grading report (Oct 12) ---------- */
@media print {
  .report-full { max-width: none; border: none; color: #000; }
  .report-full .card, .cat-detail, .gate-cell { border-color: #000; background: #fff; break-inside: avoid; }
  .rf-head { border-bottom: 2px solid #000; }
  .rf-cert { color: #000; }
  .gate-verdict { color: #000; }
  .pill, .pill-gold, .pill-amber, .pill-red { border: 1px solid #000; color: #000; background: #fff; }
  .qr-slot { border: 1px solid #000; }
  .expert-opinion { border-left-color: #000; }
  .notice, .btn-row, .btn { display: none !important; }
  .track-stepper { break-inside: avoid; }
  .ts-dot { border-color: #000; color: #000; }
  .ts-step.done .ts-dot { background: #000; color: #fff; }
}
