/* ============================================
   LOCAPRO - STYLES IMPRESSION
   ============================================ */

@media print {
  body { background: #fff !important; }
  .sidebar, .topbar, .toast-container, .modal-overlay,
  .btn, .no-print { display: none !important; }
  .main-wrapper { margin: 0 !important; }
  .content { padding: 0 !important; overflow: visible !important; }

  .print-doc {
    padding: 20px;
    max-width: 210mm;
    margin: 0 auto;
    font-family: Arial, sans-serif;
    font-size: 12px;
    color: #000;
  }

  .print-doc table { page-break-inside: avoid; }
}

/* ============ APERÇU DOCUMENT (écran) ============ */
.print-doc {
  padding: 24px 30px;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 8px;
  max-width: 900px;
  margin: 0 auto;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 13px;
  color: #1a1a1a;
}

.doc-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 24px;
  border-bottom: 3px solid #1a3c5e;
  padding-bottom: 16px;
}

.doc-company h1 {
  font-size: 22px;
  font-weight: 900;
  color: #1a3c5e;
  letter-spacing: 1px;
}

.doc-company p { font-size: 11px; color: #555; line-height: 1.6; }

.doc-title-bloc {
  text-align: right;
}

.doc-type {
  font-size: 20px;
  font-weight: 800;
  color: #1a3c5e;
  text-transform: uppercase;
  letter-spacing: 1.5px;
}

.doc-numero-print {
  font-size: 14px;
  font-weight: 700;
  color: #e8a020;
  font-family: monospace;
}

.doc-date { font-size: 11px; color: #555; }

.doc-parties {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-bottom: 20px;
}

.doc-partie h4 {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  color: #888;
  margin-bottom: 6px;
  border-bottom: 1px solid #ddd;
  padding-bottom: 4px;
}

.doc-partie p { font-size: 12px; line-height: 1.7; }
.doc-partie .client-name { font-size: 14px; font-weight: 700; color: #1a3c5e; }

.doc-table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 16px;
  font-size: 12px;
}

.doc-table thead th {
  background: #1a3c5e;
  color: #fff;
  padding: 8px 10px;
  text-align: left;
  font-weight: 600;
}

.doc-table thead th:last-child,
.doc-table thead th:nth-last-child(2),
.doc-table thead th:nth-last-child(3) { text-align: right; }

.doc-table tbody td {
  padding: 7px 10px;
  border-bottom: 1px solid #eee;
}

.doc-table tbody td:last-child,
.doc-table tbody td:nth-last-child(2),
.doc-table tbody td:nth-last-child(3) { text-align: right; }

.doc-table tbody tr:nth-child(even) { background: #f9f9f9; }

.doc-totaux {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 16px;
}

.doc-totaux-inner {
  width: 280px;
  border: 1px solid #ddd;
  border-radius: 6px;
  overflow: hidden;
}

.doc-totaux-row {
  display: flex;
  justify-content: space-between;
  padding: 6px 12px;
  border-bottom: 1px solid #eee;
  font-size: 12px;
}

.doc-totaux-row:last-child { border-bottom: none; }

.doc-totaux-row.ttc {
  background: #1a3c5e;
  color: #fff;
  font-weight: 700;
  font-size: 14px;
}

.doc-totaux-row.tva-row { color: #555; }

.doc-footer {
  margin-top: 20px;
  border-top: 2px solid #1a3c5e;
  padding-top: 12px;
  font-size: 11px;
  color: #555;
  display: flex;
  justify-content: space-between;
}

.doc-signatures {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  margin-top: 30px;
}

.signature-bloc {
  text-align: center;
}

.signature-bloc h5 {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 40px;
  color: #333;
}

.signature-line {
  border-bottom: 1px solid #333;
  margin: 0 20px;
}

.doc-mention-avoir {
  background: #fee2e2;
  border: 2px solid #ef4444;
  border-radius: 6px;
  padding: 10px 14px;
  margin-bottom: 16px;
  font-weight: 700;
  color: #b91c1c;
  text-align: center;
}

.doc-location-info {
  background: #dbeafe;
  border: 1px solid #93c5fd;
  border-radius: 6px;
  padding: 10px 14px;
  margin-bottom: 16px;
  font-size: 12px;
}
