body.customer-report { margin:0; background:#f3f5f8; color:#19263b; font:15px/1.65 system-ui,-apple-system,sans-serif; }
.customer-report main { max-width:860px; margin:32px auto; padding:0 24px; }
.customer-hero { padding:30px 34px; background:#142b45; color:#fff; border-radius:16px; }
.customer-hero h1 { font-size:32px; line-height:1.2; margin:12px 0 8px; letter-spacing:-1px; }
.customer-hero .eyebrow { color:#8ed8cd; font-size:11px; font-weight:700; letter-spacing:1.5px; }
.customer-hero .app-name { color:#c0cbd9; font-size:13px; overflow-wrap:anywhere; }
.customer-hero .verdict { margin:22px 0 0; max-width:650px; font-size:17px; }
.summary-tiles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:18px 0; }
.summary-tiles>div { padding:18px 20px; background:#fff; border:1px solid #dde3eb; border-radius:10px; }
.summary-tiles strong { display:block; font-size:26px; line-height:1.3; }
.summary-tiles span { font-size:12px; color:#58677a; }
.scope-intro,.secondary { color:#58677a; font-size:13px; margin:20px 0; }
.action { padding:22px 24px; margin:14px 0; background:#fff; border:1px solid #dde3eb; border-radius:12px; break-inside:avoid; }
.action-heading { display:flex; gap:15px; align-items:flex-start; }
.action-heading .number { display:block; color:#208272; background:#edf7f4; border-radius:8px; padding:5px 9px; font-size:13px; font-weight:800; }
.customer-report h2 { font-size:17px; line-height:1.4; margin:2px 0 6px; }
.action p { margin:12px 0 0; }
.action .meta { font-size:12px; color:#6b7280; margin:4px 0 0; }
.recommendation { padding:12px 14px; background:#f2f7f6; border-radius:8px; font-size:14px; }
.recommendation b { display:block; color:#17695d; margin-bottom:4px; }
.coverage-note { padding:18px 22px; margin:20px 0; background:#fff7e8; border:1px solid #f0dcaf; border-radius:10px; font-size:13px; }
.coverage-note ul { margin:8px 0 0; padding-left:20px; }
.technical-details { margin:24px 0; border-top:1px solid #dce2ea; padding-top:18px; font-size:12px; overflow-wrap:anywhere; }
.technical-details summary { cursor:pointer; color:#36627a; font-weight:600; }
.technical-details table { border-collapse:collapse; width:100%; margin:16px 0; }
.technical-details td { padding:8px; border-bottom:1px solid #dce2ea; vertical-align:top; }
.technical-details article { border-bottom:1px solid #dce2ea; margin:16px 0; padding-bottom:12px; }
.customer-report footer { font-size:11px; color:#718096; margin:24px 0; }
@media(max-width:560px) { .customer-report main { padding:0 14px; margin:14px auto; } .customer-hero { padding:24px; } .summary-tiles { grid-template-columns:1fr; gap:7px; } .summary-tiles>div { padding:12px; } .summary-tiles strong { font-size:21px; } .action { padding:18px; } }
@media print { body.customer-report { background:#fff; font-size:10pt; } .customer-report main { margin:0; padding:0; } .customer-hero { background:#142b45!important; color:#fff!important; padding:18px 22px; -webkit-print-color-adjust:exact; print-color-adjust:exact; } .customer-hero h1 { font-size:22pt; } .customer-hero .verdict { font-size:11pt; margin-top:12px; } .summary-tiles { margin:12px 0; } .summary-tiles>div { padding:10px 14px; } .action { padding:12px 16px; margin:10px 0; } .customer-report h2 { font-size:12pt; } .action p,.recommendation { font-size:9pt; } .technical-details { display:none!important; } .coverage-note { margin:12px 0; padding:12px 16px; } @page { size:A4; margin:14mm; } }

.enduser-report .action { box-shadow:none; padding:24px 26px; margin:16px 0; border-color:#d7dee8; }
.enduser-report h4 { font-size:18px; line-height:1.45; margin:0 0 8px; color:#142b45; }
.enduser-report .meta { color:#5b6b80; font-size:12.5px; margin:0 0 15px; letter-spacing:.2px; }
.enduser-report .meta .sev { font-weight:800; letter-spacing:.3px; }
.enduser-report .meta .sev-critical { color:#b42318; }
.enduser-report .meta .sev-high { color:#c4320a; }
.enduser-report .meta .sev-medium { color:#b25e09; }
.enduser-report .meta .sev-low { color:#3b6212; }
.enduser-report .obs { font-size:15px; line-height:1.68; color:#2f3b4d; margin:0 0 15px; }
.enduser-report .recommendation { margin:0; padding:14px 16px; background:#f0f7f5; border-left:3px solid #2bb79c; border-radius:8px; font-size:14.5px; line-height:1.62; color:#28483f; }
.enduser-report .recommendation b { display:block; color:#17695d; margin-bottom:5px; font-size:11.5px; font-weight:800; letter-spacing:.4px; text-transform:uppercase; }
.enduser-report .coverage-note { font-size:14px; line-height:1.6; }
.enduser-report .coverage-note h4 { font-size:15px; margin:0 0 8px; color:#8a5a00; }
.enduser-report .coverage-note li { margin:5px 0; color:#3f3320; }
