.rp { font: 14px/1.5 system-ui, "Segoe UI", Arial, sans-serif; color: #1f2933; max-width: 1000px; }
.rp h2 { font-size: 20px; margin: 0 0 4px; }
.rp h3 { font-size: 15px; margin: 22px 0 6px; padding-bottom: 4px; border-bottom: 1px solid #d9dee4; }
.rp p { margin: 4px 0 8px; }
.rp .rp-meta { color: #52606d; font-size: 13px; }
.rp .rp-help { color: #52606d; font-size: 13px; margin: 2px 0 8px; }
.rp .rp-muted { color: #7b8794; }
.rp .rp-pill { display: inline-block; padding: 1px 9px; border-radius: 10px; font-size: 12px; font-weight: 600; white-space: nowrap; }
.rp .rp-ok { background: #d8f3e0; color: #0b5c2b; }
.rp .rp-warn { background: #fff0c2; color: #7a5300; }
.rp .rp-bad { background: #fbdcdc; color: #9b1c1c; }
.rp .rp-info { background: #e2e8f0; color: #334155; }
.rp .rp-act { background: #ffe1c8; color: #8a3b00; }
.rp .rp-banner { padding: 10px 14px; border-radius: 6px; margin: 10px 0; }
.rp .rp-banner.rp-ok { background: #eaf7ee; border-left: 5px solid #2f9e57; }
.rp .rp-banner.rp-warn { background: #fff8e1; border-left: 5px solid #e0a100; }
.rp .rp-banner.rp-bad { background: #fdecec; border-left: 5px solid #d64545; }
.rp .rp-banner.rp-info { background: #f1f5f9; border-left: 5px solid #94a3b8; }
.rp ul { margin: 4px 0 4px 20px; padding: 0; }
.rp .rp-kpis { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0; }
.rp .rp-kpi { border: 1px solid #d9dee4; border-radius: 8px; padding: 8px 12px; min-width: 130px; background: #fff; }
.rp .rp-kpi b { display: block; font-size: 20px; }
.rp .rp-kpi span { color: #52606d; font-size: 12px; }
.rp table { border-collapse: collapse; width: 100%; margin: 6px 0 10px; background: #fff; }
.rp th, .rp td { border: 1px solid #d9dee4; padding: 5px 8px; text-align: left; vertical-align: top; font-size: 13px; }
.rp th { background: #f1f5f9; font-weight: 600; }
.rp td.rp-num { text-align: right; white-space: nowrap; }
.rp svg.rp-bar { width: 140px; height: 10px; display: block; }
.rp svg.rp-hist { width: 100%; max-width: 560px; height: 110px; }
.rp .rp-bg { fill: #e5e9ee; }
.rp .rp-fill { fill: #3b82c4; }
.rp .rp-base { fill: #b8c2cc; }
.rp .rp-axis { stroke: #94a3b8; stroke-width: 0.5; }
.rp .rp-legend span { display: inline-block; margin-right: 14px; font-size: 12px; color: #52606d; }
.rp .rp-sw { display: inline-block; width: 10px; height: 10px; margin-right: 4px; vertical-align: middle; }
.rp .rp-sw.rp-fill { background: #3b82c4; }
.rp .rp-sw.rp-base { background: #b8c2cc; }
.rp details { margin: 8px 0; }
.rp summary { cursor: pointer; font-weight: 600; }
.rp code { background: #f1f5f9; padding: 0 4px; border-radius: 3px; font-size: 12px; }
