/* Reuse the existing statistics layout and design-system tokens. */
.survey-controls { grid-template-columns: minmax(190px,1fr) minmax(260px,1.3fr) minmax(180px,1fr) minmax(180px,1fr); }
.survey-filter { display: grid; gap: 6px; min-width: 0; }
.survey-controls .statistics-range { align-self: end; min-width: 0; }
.survey-controls .statistics-range label { font-weight: 400; font-size: 13px; }
.survey-controls input, .survey-controls select { min-width: 0; }
.survey-filter-foot { grid-column: 1/-1; display:flex; align-items:center; justify-content:space-between; gap:12px; }
.survey-filter-foot p { margin:0; color:var(--muted); font-size:13px; }
.survey-filter-foot button { padding:10px 18px; }
.survey-selection { font-size:14px; color:var(--muted); margin:-6px 0 18px; }
.survey-metrics { grid-template-columns:repeat(6,minmax(0,1fr)); }
.survey-metrics article { padding:18px; min-width:0; }
.survey-metrics small { color:var(--muted); font-size:12px; line-height:1.4; }
.survey-metrics .survey-caption { color:var(--ink); font-size:14px; font-weight:600; }
.survey-metrics .survey-denominator { font-size:18px; color:var(--brand-blue); }
.survey-summary { margin:-7px 0 22px; color:var(--muted); font-size:14px; }
.survey-grid { display:grid; grid-template-columns:minmax(270px,.75fr) minmax(0,1.8fr); gap:18px; margin-bottom:22px; }
.survey-grid .statistics-card { min-height:0; padding:22px; }
.survey-distribution { display:grid; gap:14px; margin-top:20px; }
.survey-bar { display:grid; grid-template-columns:25px 1fr 34px; gap:12px; align-items:center; font-size:14px; }
.survey-track { display:block; width:100%; height:14px; background:var(--surface-selected); border-radius:4px; }
.survey-track rect { fill:var(--brand-primary); }
.survey-table-wrap { overflow-x:auto; margin-top:14px; }
.survey-table { width:100%; border-collapse:collapse; font-size:14px; }
.survey-table th, .survey-table td { padding:13px 10px; border-bottom:1px solid var(--line); text-align:left; vertical-align:top; }
.survey-table th { color:var(--muted); font-size:12px; font-weight:600; }
.survey-table th:first-child, .survey-table td:first-child { padding-left:0; }
.survey-table tr:last-child td { border-bottom:0; }
.survey-table .survey-num { text-align:right; white-space:nowrap; }
.survey-table small { display:block; color:var(--muted); font-size:12px; margin-top:4px; }
.survey-details { padding:22px; border:1px solid var(--line); border-radius:var(--radius-lg); background:var(--surface); min-width:0; }
.survey-details h2 { margin:0 0 6px; font-size:22px; }
.survey-details .card-note { margin:0; font-size:14px; }
.survey-details .survey-table { min-width:1000px; }
.survey-details .survey-table td { max-width:360px; overflow-wrap:anywhere; }
.survey-state { display:inline-block; padding:3px 8px; border-radius:6px; background:var(--success-bg); color:var(--success-text); font-size:12px; }
.survey-state--partial { background:var(--warning-bg); color:var(--warning-text); }
.survey-score { font-weight:700; color:var(--brand-deep-blue); }
.survey-conflict { color:var(--danger-text); }
.survey-time + .survey-time { margin-top:10px; }
.survey-time { min-width:180px; }
.survey-comment { margin:0 0 10px; white-space:pre-wrap; overflow-wrap:anywhere; }
.survey-muted { color:var(--muted); }
.survey-pager { display:flex; justify-content:space-between; gap:12px; align-items:center; border-top:1px solid var(--line); padding-top:16px; color:var(--muted); font-size:13px; }
.survey-pager form { display:flex; align-items:center; gap:8px; }
.survey-pager button { padding:8px 12px; font-size:13px; }
.survey-pager button:disabled { opacity:.5; cursor:default; }
.survey-help { font-size:12px; color:var(--muted); margin:14px 0 0; }
.survey-table-hint { display:none; }
@media(max-width:1100px) {
 .survey-controls { grid-template-columns:1fr 1fr; }
 .survey-metrics { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .survey-grid { grid-template-columns:1fr; }
}
@media(max-width:640px) {
 .survey-controls { grid-template-columns:1fr; padding:16px; }
 .survey-controls .statistics-range { grid-template-columns:1fr 1fr; }
 .survey-metrics { grid-template-columns:1fr 1fr; gap:10px; }
 .survey-metrics article { padding:15px; min-height:125px; }
 .survey-metrics strong { font-size:28px; }
 .survey-grid .statistics-card, .survey-details { padding:16px; }
 .survey-filter-foot, .survey-pager { align-items:start; flex-direction:column; }
 .survey-grid { gap:14px; }
 .survey-summary { line-height:1.5; }
 .survey-grid .survey-table { min-width:560px; }
 .survey-table-hint { display:block; color:var(--muted); font-size:12px; }
}
