:root{--bg-deep:#03060e;--bg-base:#0b0f1a;--bg-elevated:#111827;--bg-card:#151d2e;--bg-hover:#1a2335;--border:#1e293b;--border-light:#334155;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-tertiary:#64748b;--accent-blue:#3b82f6;--accent-red:#ef4444;--accent-amber:#f59e0b;--accent-green:#10b981;--accent-purple:#8b5cf6;--radius-sm:8px;--radius-md:12px;--radius-lg:16px}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-base);color:var(--text-secondary);min-height:100vh;font-family:DM Sans,sans-serif;line-height:1.6}::selection{color:var(--text-primary);background:#3b82f64d}header{border-bottom:1px solid var(--border);background:linear-gradient(135deg,#0b0f1a 0%,#0f172a 50%,#1e1b4b 100%);padding:2rem}.header-inner{align-items:center;gap:1rem;max-width:1200px;margin:0 auto;display:flex}.back-btn{border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--text-secondary);background:#ffffff0d;align-items:center;gap:8px;padding:10px 18px;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.back-btn:hover{color:var(--text-primary);background:#ffffff14}.header-title{flex:1}.header-title h1{color:var(--text-primary);font-family:Playfair Display,serif;font-size:clamp(1.5rem,4vw,2.5rem);line-height:1.2}.header-title .subtitle{color:var(--text-tertiary);margin-top:4px;font-size:.9rem}.main,.container-max{max-width:1200px;margin:0 auto;padding:2rem}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:1.5rem;padding:1.5rem}.card h2{color:var(--text-primary);margin-bottom:1rem;font-family:Playfair Display,serif;font-size:1.5rem}.metric-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.metric{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);text-align:center;padding:1.2rem}.metric .val{color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:1.8rem;font-weight:600}.metric .lbl{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-top:.3rem;font-size:.8rem}.leaderboard-table{border-collapse:separate;border-spacing:0;width:100%}.leaderboard-table th{background:var(--bg-elevated);text-align:left;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);padding:.75rem 1rem;font-size:.75rem;font-weight:600}.leaderboard-table td{border-bottom:1px solid var(--border);padding:.75rem 1rem;font-size:.9rem}.leaderboard-table tbody tr:hover{background:var(--bg-hover)}.leaderboard-table .num{text-align:right;font-family:JetBrains Mono,monospace}.leaderboard-table .pct{text-align:right;color:var(--text-primary);font-family:JetBrains Mono,monospace;font-weight:600}.badge{text-transform:uppercase;letter-spacing:.03em;border-radius:100px;align-items:center;padding:4px 12px;font-size:.75rem;font-weight:700;display:inline-flex}.badge-high{color:var(--accent-red);background:#ef44441f;border:1px solid #ef444433}.badge-medium{color:var(--accent-amber);background:#f59e0b1f;border:1px solid #f59e0b33}.badge-low{color:var(--accent-green);background:#10b9811f;border:1px solid #10b98133}.badge-none{background:var(--bg-elevated);color:var(--text-tertiary);border:1px solid var(--border)}a{color:var(--accent-blue);text-decoration:none}a:hover{text-decoration:underline}.severity-pill{text-transform:uppercase;letter-spacing:.05em;border-radius:100px;align-items:center;padding:6px 14px;font-size:.8rem;font-weight:700;display:inline-flex}.chart-bar{background:var(--accent-blue);border-radius:4px;transition:width .3s}.chart-bar-red{background:var(--accent-red)}.chart-bar-amber{background:var(--accent-amber)}.chart-bar-green{background:var(--accent-green)}.dup-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:1rem;padding:1.25rem}.dup-card .dup-title{color:var(--text-primary);justify-content:space-between;margin-bottom:.5rem;font-weight:600;display:flex}.dup-card .dup-files{color:var(--text-tertiary);margin-bottom:.5rem;font-size:.8rem}.dup-card pre{background:var(--bg-deep);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);padding:1rem;font-family:JetBrains Mono,monospace;font-size:.8rem;overflow-x:auto}@media (width<=640px){.metric-row{grid-template-columns:repeat(2,1fr)}.container-max{padding:1rem}}
