/* * ───────────────────────────────────────────── * Global PDF Report Stylesheet * Applied to ALL reports via pdf.layouts.app * ───────────────────────────────────────────── */ /* ── Base ── */ body { font-family: 'Inter', 'Cairo', sans-serif; background-color: #f8f9fa; padding: 20px; color: #1E293B; font-size: 13px; } .container, .pdf-body { max-width: 100%; margin: auto; background: white; border-radius: 8px; padding: 20px; } /* ── Section headers (account titles etc.) ── */ .account-header, .cost-center-title { display: flex; justify-content: space-between; align-items: center; background-color: #EFF4FC; border-right: 4px solid #195FBB; border-left: 4px solid #195FBB; padding: 8px 14px; margin-top: 18px; margin-bottom: 6px; border-radius: 4px; } .account-title, h3.account-title, h3.cost-center-title { font-size: 15px; font-weight: bold; color: #195FBB; margin: 0; } .account-serial { font-size: 11px; color: #64748B; } /* ── All tables shared base ── */ table { width: 100%; border-collapse: collapse; text-align: center; font-size: 13px; margin-bottom: 10px; } th, td { border: 1px solid #D1D9E6; padding: 9px 11px; } /* Blue header row */ thead tr th { background-color: #195FBB; color: #ffffff; font-weight: bold; font-size: 12px; } /* All body rows white */ tbody tr td { background-color: #ffffff; color: #1E293B; } /* Hover effect (web/html view only) */ tbody tr:hover td { background-color: #EFF4FC; } /* ── Level rows (hierarchical reports) ── */ tr.level-1 td { font-weight: bold; background-color: #f8fafc; } tr.level-2 td { background-color: #ffffff; } tr.level-3 td { background-color: #fafafa; color: #475569; } tr.level-4 td, tr.level-5 td, tr.level-6 td { color: #64748B; } /* ── Group / category rows ── */ tbody tr.group-row td { background-color: #dce8fa; font-weight: bold; color: #195FBB; font-size: 13px; } /* ── Subtotal rows ── */ tr.subtotal-row td, tr.subtotal-row th { background-color: #EFF4FC; font-weight: bold; color: #195FBB; border-top: 2px solid #195FBB; } /* ── Total rows (tfoot) ── */ tfoot tr.total-row td, tfoot tr.total-row th, tbody tr.total-row td, tbody tr.total-row th { background-color: #195FBB; color: #ffffff; font-weight: bold; border-top: 2px solid #0f4a99; } /* ── Section header rows (echoed inline) ── */ tr.section-header th { background-color: #195FBB; color: #ffffff; font-weight: bold; padding: 9px 11px; } tr.section-spacer td { background-color: #f8f9fa; padding: 6px; border: none; } /* ── Debit / Credit colored cells ── */ td.debit { color: #dc2626; } td.credit { color: #16a34a; } .negative-value { color: #dc2626; } /* ── Summary / totals section ── */ .summary, .totals-section { margin-top: 20px; text-align: center; } .summary table { width: 40%; margin: auto; border: 1px solid #D1D9E6; } .totals-section table { width: 100%; } /* ── No data message ── */ .no-data, .no-transactions p { text-align: center; color: #b71c1c; background: #fff3cd; padding: 15px; border-radius: 6px; border: 1px solid #ffc107; } /* ── H1 / h3 titles ── */ h1 { text-align: center; background-color: #195FBB; color: white; padding: 10px 0; border-radius: 5px; margin-bottom: 20px; font-size: 18px; } /* ── Text alignment helpers ── */ .text-right { text-align: right; } .text-left { text-align: left; } .text-center { text-align: center; } /* ── Account section spacing ── */ .account-section { margin-bottom: 24px; page-break-inside: avoid; } .cost-center-section { margin-bottom: 24px; page-break-inside: avoid; }