/*
 * Print / PDF stil (gelistirme-plani §4.2). Ekranda kağıt önizlemesi (gri zemin
 * + ortalanmış beyaz sayfa); yazdırmada araç çubuğu gizli, tam sayfa. Renkler
 * baskı için açık zemin-koyu metin sabit (tema modundan bağımsız).
 */
@page { margin: 18mm; }

.print-body { background: #eef2f6; margin: 0; padding: 0; color: #111827; font-family: Inter, system-ui, sans-serif; }
.print-toolbar {
    max-width: 820px; margin: 0 auto; padding: 16px 0;
    display: flex; justify-content: space-between; align-items: center; gap: 12px;
}
.print-sheet {
    max-width: 820px; margin: 0 auto 40px; background: #fff; color: #111827;
    padding: 44px 48px; box-shadow: 0 2px 16px rgba(15,23,42,.12); border-radius: 4px;
}

/* Fatura kağıdı */
.pinv-head { display: flex; justify-content: space-between; gap: 32px; flex-wrap: wrap; padding-bottom: 22px; border-bottom: 2px solid #111827; margin-bottom: 22px; }
.pinv-brand { font-size: 22px; font-weight: 700; color: #111827; letter-spacing: -.01em; }
.pinv-meta { font-size: 12.5px; color: #4b5563; margin-top: 3px; line-height: 1.5; }
.pinv-right { text-align: right; }
.pinv-title { font-size: 26px; font-weight: 700; color: #111827; letter-spacing: -.02em; }
.pinv-number { font-size: 13px; color: #4b5563; margin-top: 4px; }
.pinv-status { display: inline-block; margin-top: 8px; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; padding: 3px 10px; border-radius: 99px; border: 1px solid #cbd5e1; color: #334155; }
.pinv-billto-label { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: #6b7280; margin-bottom: 4px; }
.pinv-parties { display: flex; justify-content: space-between; gap: 32px; flex-wrap: wrap; margin-bottom: 24px; }
.pinv-client { font-size: 15px; font-weight: 600; color: #111827; }

table.pinv-table { width: 100%; border-collapse: collapse; margin-bottom: 18px; }
table.pinv-table th { text-align: left; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: #6b7280; padding: 8px 10px; border-bottom: 1.5px solid #111827; }
table.pinv-table td { padding: 9px 10px; font-size: 13px; color: #1f2937; border-bottom: 1px solid #e5e7eb; }
table.pinv-table td.num, table.pinv-table th.num { text-align: right; white-space: nowrap; }
.pinv-detail { color: #6b7280; font-size: 12px; }

.pinv-totals { width: 100%; max-width: 280px; margin-left: auto; }
.pinv-totals .row { display: flex; justify-content: space-between; padding: 6px 10px; font-size: 13px; color: #1f2937; }
.pinv-totals .row--due { border-top: 1.5px solid #111827; margin-top: 4px; font-weight: 700; font-size: 15px; color: #111827; }
.pinv-notes { margin-top: 26px; font-size: 12.5px; color: #4b5563; line-height: 1.55; border-top: 1px solid #e5e7eb; padding-top: 14px; }
.pinv-foot { margin-top: 30px; text-align: center; font-size: 12px; color: #9ca3af; }
.pinv-void { color: #b91c1c; border-color: #fecaca; }

@media print {
    .print-toolbar { display: none !important; }
    .print-body { background: #fff; }
    .print-sheet { max-width: none; margin: 0; padding: 0; box-shadow: none; border-radius: 0; }
}

/* Mobil ekran önizlemesi (yazdırmayı etkilemez) — dar ekranda kâğıt dolgusu küçülür, tablo kaydırılır */
@media screen and (max-width: 640px) {
    .print-toolbar { padding: 12px 16px; flex-wrap: wrap; }
    .print-sheet { padding: 20px 16px; margin-bottom: 16px; border-radius: 0; }
    .pinv-head, .pinv-meta { flex-wrap: wrap; gap: 12px; }
    table.pinv-table { display: block; overflow-x: auto; }
}
