/* Printable documents: GST invoice, quotation. Shared by the admin and the customer site. */
.doc-sheet { background: #fff; color: #111; max-width: 900px; margin: 0 auto; padding: 1.5rem; border: 1px solid #ddd; font-size: .88rem; }
.doc-sheet table { width: 100%; border-collapse: collapse; }
.doc-sheet .items th, .doc-sheet .items td { border: 1px solid #999; padding: .3rem .45rem; vertical-align: top; }
.doc-sheet .items th { background: #f1f1f1; font-size: .78rem; }
.doc-sheet .num { text-align: right; white-space: nowrap; }
.doc-head { display: flex; justify-content: space-between; gap: 1rem; border-bottom: 2px solid #111; padding-bottom: .6rem; margin-bottom: .8rem; }
.doc-head img { max-height: 64px; }
.doc-title { font-size: 1.25rem; font-weight: 800; letter-spacing: .04em; }
.doc-meta td { padding: .1rem .5rem .1rem 0; }
.doc-box { border: 1px solid #999; padding: .5rem .7rem; }
.paid-stamp { color: #0c831f; border: 3px solid #0c831f; font-weight: 800; padding: .1rem .7rem; transform: rotate(-8deg); display: inline-block; letter-spacing: .1em; }
@media (max-width: 767.98px) { .doc-sheet { padding: .75rem; font-size: .8rem; overflow-x: auto; } .doc-head { flex-direction: column; } }
@media print {
    body { background: #fff !important; padding: 0 !important; }
    .site-header, .site-footer, .whatsapp-float, .cart-bar, .buybar, .no-print, #loc-chip, .admin-sidebar, .admin-topbar, header.sticky-top, aside, .toast-lite, .alert { display: none !important; }
    .admin-shell { display: block !important; }
    .admin-main { margin: 0 !important; padding: 0 !important; }
    .doc-sheet { border: 0; padding: 0; max-width: none; }
    main, .container { max-width: none !important; padding: 0 !important; }
}
/* ---- v4: three bill copies, small terms */
.copy-label { text-align: right; font-size: .68rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #555; margin-bottom: .3rem; }
.doc-terms { font-size: .6rem; line-height: 1.25; color: #555; white-space: pre-line; }
.copy-extra { display: none; }
@media print {
    .copy-extra { display: block; page-break-before: always; break-before: page; }
    body.print-one .copy-extra { display: none !important; }
    .doc-terms { font-size: 7pt; }
}