/* ============================================================
   print.css — Print / PDF layout for Site Selection Package
   Designed for letter-size paper, suitable for binding
   ============================================================ */

#print-container { display: none; }

@media print {
  @page { size: letter portrait; margin: 0.6in 0.75in; }

  .toolbar, #map-container, .legend, #legend-container,
  #card-container, .cover, #cover-panel, .loading,
  .carousel__prev, .carousel__next, .carousel__dots,
  .carousel__counter, .error-banner { display: none !important; }

  body {
    overflow: visible; background: #fff; color: #000;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 11px; line-height: 1.5;
  }

  #app { width: auto; height: auto; position: static; overflow: visible; }
  #print-container { display: block !important; }

  /* === COVER PAGE === */
  .print-cover {
    page-break-after: always;
    text-align: center;
    padding: 100px 40px 40px;
    min-height: 85vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
  .print-cover__client-logo { height: 70px; width: auto; margin-bottom: 12px; }
  .print-cover__client-name { font-size: 18px; font-weight: 600; text-transform: uppercase; letter-spacing: 2px; color: #173152; margin-bottom: 24px; }
  .print-cover__title { font-size: 28px; font-weight: 700; margin-bottom: 8px; color: #173152; }
  .print-cover__subtitle { font-size: 14px; color: #555; margin-bottom: 32px; }
  .print-cover__meta { font-size: 11px; color: #666; line-height: 1.8; margin-bottom: 24px; }
  .print-cover__broker { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 40px; }
  .print-cover__logo { height: 30px; width: auto; }
  .print-cover__company { font-size: 10px; text-transform: uppercase; letter-spacing: 2px; color: #999; }

  /* === TABLE OF CONTENTS === */
  .print-toc { page-break-after: always; padding: 20px 0; }
  .print-toc__title { font-size: 20px; font-weight: 700; color: #173152; margin-bottom: 16px; padding-bottom: 8px; border-bottom: 2px solid #173152; }
  .print-toc__subtitle { font-size: 14px; font-weight: 600; color: #6B7280; margin: 16px 0 8px; }
  .print-toc__list { padding-left: 20px; margin: 0; }
  .print-toc__item { padding: 6px 0; border-bottom: 1px dotted #ddd; font-size: 12px; }
  .print-toc__item strong { display: block; font-size: 13px; }
  .print-toc__detail { display: block; font-size: 10px; color: #888; margin-top: 2px; }

  /* === PROPERTY CARD (one per page) === */
  .print-card { page-break-before: always; page-break-inside: avoid; padding: 0; }
  .print-card--comp { border-left: 4px solid #9CA3AF; padding-left: 12px; }
  .print-card__header { display: flex; align-items: center; gap: 8px; margin-bottom: 4px; }
  .print-card__number {
    display: inline-flex; align-items: center; justify-content: center;
    width: 24px; height: 24px; border-radius: 50%;
    background: #173152; color: #fff; font-size: 11px; font-weight: 700;
  }
  .print-card__type { font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; color: #6B7280; }
  .print-card__name { font-size: 20px; font-weight: 700; margin-bottom: 2px; color: #173152; }
  .print-card__address { font-size: 11px; color: #666; margin-bottom: 12px; }
  .print-card__row { display: flex; gap: 16px; margin-bottom: 12px; }
  .print-card__photo { width: 280px; height: 190px; object-fit: cover; border-radius: 4px; flex-shrink: 0; border: 1px solid #eee; }
  .print-card__table { flex: 1; border-collapse: collapse; font-size: 11px; }
  .print-card__table tr { border-bottom: 1px solid #f0f0f0; }
  .print-card__td-label { padding: 4px 8px 4px 0; font-weight: 600; color: #6B7280; white-space: nowrap; width: 100px; vertical-align: top; }
  .print-card__td-value { padding: 4px 0; font-weight: 500; color: #1E293B; }
  .print-card__description { font-size: 11px; line-height: 1.6; color: #333; margin-bottom: 8px; }
  .print-card__highlights { font-size: 11px; margin-bottom: 8px; }
  .print-card__highlights strong { display: block; font-size: 10px; text-transform: uppercase; letter-spacing: 0.5px; color: #6B7280; margin-bottom: 4px; }
  .print-card__highlights ul { padding-left: 16px; margin: 0; }
  .print-card__highlights li { margin-bottom: 2px; }
  .print-card__link { font-size: 9px; color: #999; word-break: break-all; }

  /* === FOOTER === */
  .print-footer { text-align: center; font-size: 8px; color: #999; padding-top: 16px; border-top: 1px solid #ddd; margin-top: 24px; line-height: 1.6; }
}
