*{box-sizing:border-box}
body{margin:0;padding:18px;font-family:Arial,Helvetica,sans-serif;color:#111827;background:#f6f7f8}
a{color:#2563eb;text-decoration:none}a:hover{text-decoration:underline}
h1{font-size:26px;margin:0 0 12px 0}h2{font-size:16px;margin:0 0 10px 0}p{margin:0 0 8px 0}
.mono{font-family:Consolas,Menlo,Monaco,monospace}.muted{color:#6b7280}
.card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:12px;margin:0 0 12px 0}
.btn{display:inline-block;padding:10px 14px;border-radius:10px;border:1px solid #e5e7eb;background:#fff;cursor:pointer}
.btn:hover{background:#f1f5f9}
table{width:100%;border-collapse:collapse;border:1px solid #e5e7eb}
th,td{border-bottom:1px solid #e5e7eb;padding:7px;vertical-align:top}
th{background:#f1f5f9;text-align:left}tr:last-child td{border-bottom:none}
.badge{display:inline-block;padding:3px 10px;border-radius:999px;border:1px solid #e5e7eb;font-size:12px}
.badge.ok{border-color:#16a34a;color:#16a34a}
.badge.warn{border-color:#f59e0b;color:#b45309}
.badge.bad{border-color:#dc2626;color:#dc2626}
.sir{display:inline-block;width:22px;height:22px;line-height:20px;text-align:center;border-radius:999px;border:2px solid #111827;font-weight:bold;font-size:12px}
.sir.S{background-color:#c8f7c5}.sir.I{background-color:#fff3b0}.sir.R{background-color:#ffc9c9}.sir.na{background-color:#fff}
.pagebreak{page-break-before:always}
@media print{body{background:#fff;padding:0}.card{page-break-inside:avoid}table,tr,td,th{page-break-inside:avoid}}
/* Two-column layout that wkhtmltopdf handles reliably (use table, not flex/grid) */
.cols2{width:100%;border:0;border-collapse:separate;border-spacing:12px 0;}
.cols2 td{width:50%;vertical-align:top;padding:0;border:0;}
@media print{
  .cols2{border-spacing:8px 0;}
  /* Slightly tighter tables in print to avoid page breaks */
  table th, table td{padding:6px;font-size:12px;}
  h2{font-size:15px}
}
