.col-doc { max-width: 900px; margin: 0 auto; background: #fff; color: #111; font-size: 14px; line-height: 1.55; }
.col-doc .col-head { display: flex; justify-content: space-between; gap: 20px; }
.col-doc .col-status { color: #b45309; margin: 0 0 6px; }
.col-doc .col-photo, .col-doc .col-logo { max-width: 130px; height: auto; display: block; margin-bottom: 10px; }
.col-doc table.col-terms, .col-doc table.col-invoice { width: 100%; border-collapse: collapse; margin: 16px 0; }
.col-doc table.col-terms th, .col-doc table.col-terms td,
.col-doc table.col-invoice th, .col-doc table.col-invoice td { border: 1px solid #d8d8d8; padding: 8px 10px; text-align: left; vertical-align: top; }
.col-doc table.col-terms th { width: 32%; font-weight: 600; background: #fafafa; }
.col-doc table.col-invoice thead th { background: #fafafa; }
.col-doc .col-right { text-align: right; }
.col-doc tr.col-grand td { font-weight: 700; }
.col-doc .col-description { white-space: normal; margin: 18px 0; text-align: justify; }
.col-doc .col-copy { margin: 4px 0 18px 22px; }
.col-doc .col-inv-title { margin-top: 26px; font-size: 16px; font-weight: 700; }
.col-doc .col-inv-meta { display: flex; justify-content: space-between; gap: 24px; margin-bottom: 14px; }
.col-doc .col-email { display: inline-block; border-bottom: 1px solid #333; }
.col-doc .col-badge { font-weight: 700; }
.col-doc .col-badge.col-paid { color: #15803d; }
.col-doc .col-badge.col-unpaid { color: #b91c1c; }
.col-doc .col-note { margin: 14px 0 18px; }
.col-doc .col-print-btn { display: inline-block; background: #f0a500; color: #fff; text-decoration: none; padding: 8px 16px; border-radius: 3px; font-weight: 600; }
.col-search { margin-bottom: 20px; }
.col-search label { display: block; font-weight: 600; margin-bottom: 6px; }
.col-search input { width: 100%; max-width: 100%; padding: 8px; border: 1px solid #ccc; }
.col-search button { margin-top: 10px; background: #f0a500; color: #fff; border: 0; padding: 8px 18px; font-weight: 600; cursor: pointer; }
.col-notfound { color: #b91c1c; font-weight: 600; }

@media print {
  body * { visibility: hidden !important; }
  .col-doc, .col-doc * { visibility: visible !important; }
  .col-doc { position: absolute; left: 0; top: 0; width: 100%; max-width: 100%; }
  .no-print, .col-print-btn { display: none !important; }
  .col-doc table, .col-doc tr, .col-doc img { page-break-inside: avoid; }
}
