/* FreeProTools — Facture / Devis (preview styles) */

.inv-page{
  width: 794px; height: 1123px; background:#ffffff; color:#1c2530;
  margin: 0 auto; box-shadow: 0 30px 70px -30px rgba(0,0,0,0.55);
  position: relative; overflow: hidden;
  font-family: "Inter","Segoe UI",sans-serif;
  padding: 56px 56px 50px; display:flex; flex-direction:column;
  box-sizing: border-box;
}
.inv-pages{ display:flex; flex-direction:column; align-items:center; gap: 28px; }
.inv-cont-header{
  padding-bottom: 14px; margin-bottom: 20px; border-bottom: 1px solid #e7e9ec;
  font-size:.82rem; color:#5c6b7a;
}
.inv-cont-header b{ color:#16324f; }

.inv-top{ display:flex; justify-content:space-between; gap: 24px; margin-bottom: 40px; }
.inv-issuer{ font-size:.83rem; line-height:1.55; color:#33404d; max-width: 280px; }
.inv-issuer .inv-issuer-name{ font-family: Georgia, serif; font-weight:700; color:#16324f; font-size:1.25rem; margin-bottom:6px; }
.inv-logo{ max-width:160px; max-height:70px; margin-bottom:12px; display:block; object-fit:contain; }

.inv-doc-meta{ text-align:right; }
.inv-doc-meta .inv-doc-type{
  font-family: Georgia, serif; font-size:1.5rem; font-weight:700; color:#16324f; margin:0 0 10px;
  text-transform: uppercase; letter-spacing:.03em;
}
.inv-doc-meta table{ font-size:.83rem; color:#33404d; border-collapse:collapse; margin-left:auto; }
.inv-doc-meta td{ padding: 2px 0 2px 14px; }
.inv-doc-meta td:first-child{ color:#5c6b7a; padding-left:0; }

.inv-client{ background:#f4f5f7; border-radius:10px; padding:16px 20px; margin-bottom: 34px; max-width: 300px; }
.inv-client .inv-client-label{ font-size:.72rem; text-transform:uppercase; letter-spacing:.05em; color:#5c6b7a; margin-bottom:6px; font-weight:700; }
.inv-client .inv-client-name{ font-weight:700; color:#16324f; font-size:.95rem; margin-bottom:4px; }
.inv-client div{ font-size:.83rem; color:#33404d; line-height:1.5; }

.inv-custom-fields{ display:flex; flex-wrap:wrap; gap: 10px 28px; margin-bottom: 24px; }
.inv-custom-field{ font-size:.83rem; color:#33404d; }
.inv-custom-field .icf-label{ display:block; font-size:.72rem; text-transform:uppercase; letter-spacing:.04em; color:#5c6b7a; margin-bottom:2px; }
.inv-custom-field .icf-value{ font-weight:600; color:#16324f; }

.inv-table{ width:100%; border-collapse:collapse; margin-bottom: 8px; }
.inv-table thead th{
  text-align:left; font-size:.72rem; text-transform:uppercase; letter-spacing:.05em; color:#ffffff;
  background:#16324f; padding: 10px 12px; font-weight:700;
}
.inv-table thead th.num{ text-align:right; }
.inv-table tbody td{ padding: 10px 12px; font-size:.85rem; color:#2a343e; border-bottom:1px solid #e7e9ec; vertical-align:top; }
.inv-table tbody td.num{ text-align:right; white-space:nowrap; }
.inv-table tbody tr:nth-child(even){ background:#fafbfc; }

.inv-totals{ margin-left:auto; width: 280px; margin-top: 18px; }
.inv-totals table{ width:100%; border-collapse:collapse; font-size:.87rem; }
.inv-totals td{ padding: 7px 0; color:#33404d; }
.inv-totals td.num{ text-align:right; font-variant-numeric: tabular-nums; }
.inv-totals tr.grand td{ border-top: 2px solid #16324f; padding-top:10px; font-weight:700; color:#16324f; font-size:1rem; }

.inv-notes{ margin-top: auto; padding-top: 40px; font-size:.78rem; color:#5c6b7a; line-height:1.6; border-top:1px solid #e7e9ec; margin-top:40px; }
.inv-notes .inv-notes-title{ font-weight:700; color:#33404d; margin-bottom:4px; }

@media (max-width: 860px){
  .inv-page{ padding: 34px 24px; }
}

@media print{
  body *{ visibility:hidden; }
  .inv-pages, .inv-pages *{ visibility:visible; }
  .inv-pages{ gap:0; }
  .inv-page{ box-shadow:none; margin:0; break-after: page; page-break-after: always; }
  .inv-page:last-child{ break-after: auto; page-break-after: auto; }
  .cv-page-number{ display:none; }
  @page{ size: A4; margin:0; }
}

.cv-page-number{ text-align:center; font-size:.72rem; color: var(--text-faint); margin-top:-14px; }
