.analysis-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:21px 0}
.analysis-title h1{font-size:34px;margin:0}
.icon-button{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--border);border-radius:4px;background:#fff;color:var(--green);flex-shrink:0}
.icon-button svg{width:16px;height:16px}
.analysis-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-bottom:25px;border-bottom:1px solid var(--border);margin-bottom:25px}
.analysis-stats strong{font-size:25px;display:block;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.analysis-stats span{font-size:10px;color:var(--muted)}
#cluster-controls{padding:0;margin:0;border:0;min-width:0}
#cluster-controls legend{font-size:9px;font-weight:800;margin-bottom:17px}
.radius-label,.minimum-label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;font-weight:600}
.radius-label output{font-size:11px;background:var(--green-light);color:var(--green);padding:5px 8px;border-radius:4px;min-width:64px;text-align:center;font-variant-numeric:tabular-nums}
#cluster-radius{width:100%;margin:16px 0 20px;accent-color:var(--green)}
.minimum-label input{width:64px;min-height:34px;font-size:12px;padding:5px 8px;border:1px solid var(--border);border-radius:4px;background:#fafbf9;color:var(--ink)}
.analysis-checkbox{display:flex;align-items:center;gap:9px;margin-top:18px;font-size:11px;cursor:pointer}
.analysis-checkbox input{width:16px;height:16px;margin:0;accent-color:var(--green)}
.test-summary{font-size:10px;color:#946436;line-height:1.6;margin:16px 0 0}
.candidates-heading{margin-top:25px;padding-top:22px;border-top:1px solid var(--border)}
.analysis-status{font-size:12px;color:var(--muted);line-height:1.7;margin:16px 0}
.candidate-list{list-style:none;padding:0;margin:14px 0 0}
.candidate-row{display:flex;align-items:center;gap:10px;width:100%;border:0;border-bottom:1px solid var(--border);background:transparent;color:var(--ink);text-align:left;padding:15px 0}
.candidate-row:hover,.candidate-row[aria-pressed=true]{background:#f1f5f0}
.candidate-rank{width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--cluster-color);color:var(--cluster-color);border-radius:50%;font-size:11px;font-weight:800;flex-shrink:0}
.candidate-detail{min-width:0;flex:1}
.candidate-detail strong{display:block;font-size:12px}
.candidate-detail small{display:block;font-size:9px;color:var(--muted);margin-top:5px;overflow-wrap:anywhere;line-height:1.5}
.candidate-row>svg{width:14px;height:14px;color:var(--muted)}
.cluster-center{background:none;border:0}
.cluster-center span{display:grid;place-items:center;width:40px;height:40px;background:var(--cluster-color);color:#fff;border:3px solid #fff;border-radius:50%;box-shadow:0 2px 10px #18291e30;font:800 13px var(--font)}
.noise-dot{background:#7f8985}
.analysis-workspace .map-key{gap:15px}
@media(max-width:760px){.analysis-title h1{font-size:30px}.analysis-stats{padding-bottom:20px;margin-bottom:20px}.analysis-workspace .map-heading{padding:12px}.analysis-workspace .map-key{font-size:9px;padding:10px}}