.viz-root{color-scheme:light;--page:#ffffff;--surface-1:#ffffff;--surface-2:#f7f8fa;--header:#0f1f3d;--header-ink:#ffffff;--header-muted:#aab6cc;--text-primary:#111827;--text-secondary:#4b5563;--text-muted:#6b7280;--grid:#eceef2;--axis:#c9ced6;--border:#e3e6eb;--wash:#f2f4f7;--accent:#1f4fbf;--notice-bg:#f7f8fa;--good-text:#067647;--bad-text:#b42318;--warn-icon:#b54708;--band:rgba(42,120,214,0.12);--budget:#4b5563;--s1:#2a78d6;--s2:#eb6834;--s3:#1baf7a;--s4:#eda100;--s5:#e87ba4;--s6:#008300;--s7:#6250d6;min-height:100vh;background:var(--page);color:var(--text-primary);font-family:var(--font-ui),system-ui,-apple-system,"Segoe UI",sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}.rp-bar{background:var(--header);color:var(--header-ink)}.rp-bar-inner{max-width:1200px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.rp-brand{font-weight:600;letter-spacing:.01em}.rp-brand span{color:var(--header-muted);font-weight:400;margin-left:8px}.rp-bar-meta{color:var(--header-muted);font-size:12px;display:flex;gap:16px;align-items:center;flex-wrap:wrap}.rp-btn{background:transparent;color:var(--header-ink);border:1px solid rgba(255,255,255,.35);border-radius:6px;padding:6px 12px;font:inherit;font-size:12px;font-weight:500;cursor:pointer}.rp-btn:hover{background:rgba(255,255,255,.08)}.rp-source{display:inline-flex;border:1px solid rgba(255,255,255,.3);border-radius:6px;overflow:hidden}.rp-source a{color:var(--header-muted);text-decoration:none;padding:5px 10px;font-size:12px;font-weight:500}.rp-source a+a{border-left:1px solid rgba(255,255,255,.3)}.rp-source a:hover{color:var(--header-ink);background:rgba(255,255,255,.08)}.rp-source a[aria-current=page]{background:#ffffff;color:var(--header)}.rp-wrap{max-width:1200px;margin:0 auto;padding:28px 24px 72px}@media (max-width:640px){.rp-bar-inner,.rp-wrap{padding-left:16px;padding-right:16px}}.rp-title{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.rp-eyebrow{color:var(--accent);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.rp-title h1{font-size:28px;font-weight:600;letter-spacing:-.01em;margin:4px 0 0}.rp-title p{margin:6px 0 0;max-width:720px}.rp-notice,.rp-title p{color:var(--text-secondary)}.rp-notice{margin-top:16px;background:var(--notice-bg);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:6px;padding:10px 14px;font-size:13px}.rp-filters{flex-wrap:wrap;gap:12px 20px;margin:20px 0 8px;padding:12px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.rp-filter,.rp-filters{display:flex;align-items:center}.rp-filter{gap:8px}.rp-filter>span{color:var(--text-muted);font-size:12px;font-weight:500}.rp-seg{display:inline-flex;border:1px solid var(--border);border-radius:6px;overflow:hidden}.rp-seg button{background:var(--surface-1);color:var(--text-secondary);border:0;padding:6px 12px;font:inherit;font-size:13px;cursor:pointer}.rp-seg button+button{border-left:1px solid var(--border)}.rp-seg button:hover{background:var(--wash)}.rp-seg button[aria-pressed=true]{background:var(--header);color:#fff;font-weight:500}.rp-select{background:var(--surface-1);color:var(--text-primary);border:1px solid var(--border);border-radius:6px;padding:6px 10px;font:inherit;font-size:13px}.rp-section{margin-top:36px}.rp-section-head{display:flex;align-items:baseline;gap:12px;margin-bottom:14px;flex-wrap:wrap}.rp-section-num{color:var(--text-muted);font-size:13px;font-weight:600;font-variant-numeric:tabular-nums}.rp-section-head h2{font-size:18px;font-weight:600;margin:0;letter-spacing:-.005em}.rp-section-head p{color:var(--text-muted);font-size:13px;margin:0}.rp-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.rp-kpi{border:1px solid var(--border);border-radius:8px;padding:16px 18px;background:var(--surface-1);min-width:0}.rp-kpi-lead{grid-column:span 2;background:var(--surface-2)}@media (max-width:520px){.rp-kpi-lead{grid-column:span 1}}@media (min-width:1000px){.rp-kpis-exec{grid-template-columns:minmax(0,2fr) repeat(4,minmax(0,1fr))}.rp-kpis-exec .rp-kpi-lead{grid-column:auto}}.rp-kpi-label{color:var(--text-secondary);font-size:12px;font-weight:500}.rp-kpi-value{font-size:26px;font-weight:600;margin-top:6px;letter-spacing:-.01em}.rp-kpi-lead .rp-kpi-value{font-size:40px;line-height:1.1}.rp-kpi-sub{color:var(--text-muted);font-size:12px;margin-top:4px}.rp-good{color:var(--good-text);font-weight:500}.rp-bad{color:var(--bad-text);font-weight:500}.rp-status{position:relative;display:inline-flex;align-items:center;gap:5px;font-variant-numeric:tabular-nums;white-space:nowrap}.rp-status-icon{display:inline-grid;place-items:center;width:15px;height:15px;border-radius:50%;font-size:10px;font-weight:700;color:#fff}.rp-status-good .rp-status-icon{background:var(--good-text)}.rp-status-warn .rp-status-icon{background:var(--warn-icon)}.rp-status-bad .rp-status-icon{background:var(--bad-text)}.rp-status-bad{color:var(--bad-text)}.rp-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.rp-link{color:var(--accent);text-decoration:none;font-weight:500}.rp-link:hover{text-decoration:underline}.rp-practice-list{list-style:none;margin:8px 0 0;padding:0}.rp-practice-list li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid var(--grid);font-size:13px}.rp-practice-list li:first-child{border-top:0}.rp-meter{height:6px;border-radius:3px;background:#dbe7f7;margin-top:12px;position:relative}.rp-meter>span{position:absolute;inset:0 auto 0 0;background:var(--accent);border-radius:3px}.rp-takeaways{margin:16px 0 0;padding:14px 18px;border:1px solid var(--border);border-radius:8px}.rp-takeaways h3{font-size:13px;font-weight:600;margin:0 0 6px}.rp-takeaways ul{margin:0;padding-left:20px;color:var(--text-secondary);list-style:disc}.rp-takeaways li::marker{color:var(--text-muted)}.rp-takeaways li{margin:3px 0}.rp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,520px),1fr));gap:16px}.rp-grid-wide{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:16px}@media (max-width:960px){.rp-grid-wide{grid-template-columns:minmax(0,1fr)}}.viz-card{border:1px solid var(--border);border-radius:8px;padding:18px 20px;background:var(--surface-1);min-width:0}.viz-card h2,.viz-card h3{font-size:14px;font-weight:600;margin:0}.viz-sub{color:var(--text-muted);font-size:12px;margin:2px 0 12px}.viz-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.viz-link{background:none;border:0;padding:0;color:var(--accent);font:inherit;font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap}.viz-link:hover{text-decoration:underline}.viz-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0 0 10px;padding:0;list-style:none}.viz-legend li{display:inline-flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:12px}.viz-swatch{width:10px;height:10px;border-radius:2px;flex:none}.viz-linekey{width:16px;height:0;border-top:2px solid;flex:none}.viz-linekey.dashed{border-top-style:dashed}.viz-bandkey{width:16px;height:10px;background:var(--band);flex:none}.viz-svg{display:block;overflow:visible}.viz-svg text{fill:var(--text-muted);font-size:11px;font-variant-numeric:tabular-nums}.viz-svg .viz-label{fill:var(--text-secondary);font-size:11px}.viz-svg .viz-mark{transition:opacity .12s;outline:none}.viz-svg .viz-mark:focus,.viz-svg .viz-mark:hover{opacity:.8}.viz-tooltip{position:fixed;pointer-events:none;z-index:50;background:#fff;border:1px solid var(--border);border-radius:6px;padding:8px 10px;box-shadow:0 6px 20px rgba(15,31,61,.12);font-size:12px;min-width:150px}.viz-tooltip strong{display:block;font-size:14px;color:var(--text-primary);font-variant-numeric:tabular-nums}.viz-tooltip span{color:var(--text-secondary)}.viz-tooltip .viz-key{display:inline-block;width:12px;height:2px;vertical-align:middle;margin-right:6px}.viz-tooltip .viz-row{display:flex;justify-content:space-between;align-items:center;gap:16px;color:var(--text-secondary)}.viz-tooltip .viz-row b{color:var(--text-primary);font-weight:600;font-variant-numeric:tabular-nums}.viz-tooltip .viz-tip-title{color:var(--text-muted);margin-bottom:4px}.viz-table-wrap{overflow-x:auto}.viz-table{width:100%;border-collapse:collapse;font-size:13px}.viz-table th{text-align:left;color:var(--text-muted);font-weight:500;font-size:12px;background:var(--surface-2);border-bottom:1px solid var(--border);padding:8px 10px;white-space:nowrap}.viz-table td{border-bottom:1px solid var(--grid);padding:8px 10px;vertical-align:middle}.viz-table td.num,.viz-table th.num{text-align:right;font-variant-numeric:tabular-nums}.viz-table tr.rp-total td{font-weight:600;border-top:1px solid var(--axis);border-bottom:0}.viz-mix{display:flex;gap:2px;height:8px;width:120px}.viz-mix>span{height:100%;border-radius:2px}.rp-method,.viz-muted{color:var(--text-muted)}.rp-method{margin-top:40px;padding-top:16px;border-top:1px solid var(--border);font-size:12px}.rp-method h3{font-size:12px;font-weight:600;color:var(--text-secondary);margin:0 0 6px;text-transform:uppercase;letter-spacing:.06em}.rp-method ul{margin:0;padding-left:18px}.rp-method li{margin:3px 0}@media print{@page{size:letter;margin:14mm}.viz-root{font-size:11px}.rp-bar{background:#fff;color:var(--text-primary);border-bottom:2px solid var(--header)}.rp-bar-meta,.rp-brand span{color:var(--text-muted)}.rp-no-print{display:none!important}.rp-wrap{padding:12px 0 0;max-width:none}.rp-kpis,.rp-section,.viz-card{break-inside:avoid}.viz-tooltip{display:none}}.rp-back{display:inline-block;margin-bottom:12px;font-size:13px}.rp-recs{list-style:none;margin:8px 0 0;padding:0;counter-reset:rec}.rp-recs li{padding:10px 0;border-top:1px solid var(--grid)}.rp-recs li:first-child{border-top:0;padding-top:4px}.rp-recs p{margin:2px 0 0;font-size:13px}.rp-rec-head{display:flex;justify-content:space-between;gap:12px;font-size:13px}.rp-rec-head span{font-weight:600;font-variant-numeric:tabular-nums}.rp-rec-cell{min-width:260px;white-space:normal;color:var(--text-secondary)}.rp-top{align-items:start}