*{box-sizing:border-box}body{color:#1f2937;background:#f5f7fa;margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button{font:inherit}.app{min-height:100vh}.header{background:#fff;border-bottom:1px solid #e5e7eb;padding:24px 32px}.header h1{color:#111827;margin:0;font-size:24px;font-weight:650}.header p{color:#6b7280;margin:5px 0 0;font-size:14px}.tabs{background:#fff;border-bottom:1px solid #e5e7eb;gap:4px;padding:0 32px;display:flex}.tab{color:#6b7280;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:14px 18px;font-size:14px;font-weight:500}.tab:hover{color:#111827}.tab.active{color:#2563eb;border-bottom-color:#2563eb}.content{max-width:1600px;margin:0 auto;padding:32px}.content h2{margin:0 0 8px;font-size:20px}.content p{color:#6b7280}.responses-page,.metrics-page{width:100%}.page-header{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex}.page-header h2{margin:0;font-size:20px}.page-header p{color:#6b7280;margin:5px 0 0;font-size:14px}.refresh-button{color:#374151;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d1d5db;border-radius:7px;height:36px;padding:0 16px;font-size:14px}.refresh-button:hover:not(:disabled){background:#f9fafb}.refresh-button:disabled{opacity:.5;cursor:not-allowed}.response-table-container{background:#fff;border:1px solid #e5e7eb;border-radius:10px;overflow-x:auto}.response-table{border-collapse:collapse;width:100%;font-size:14px}.response-table th{text-align:left;color:#6b7280;white-space:nowrap;background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:13px 16px;font-weight:600}.response-table td{color:#374151;white-space:nowrap;border-bottom:1px solid #f1f5f9;padding:14px 16px}.response-table tbody tr:last-child td{border-bottom:none}.response-table tbody tr:hover{background:#f9fafb}.clickable-row{cursor:pointer}.clickable-row:hover{background:#eff6ff!important}.pagination{justify-content:center;align-items:center;gap:16px;margin-top:16px;display:flex}.page-button{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:7px;height:36px;padding:0 14px;font-size:14px}.page-button:disabled{opacity:.5;cursor:not-allowed}.page-button:hover:not(:disabled){background:#f9fafb}.page-status{color:#6b7280;font-size:14px}.detail-overlay{z-index:100;background:#0f172a59;position:fixed;inset:0}.detail-panel{background:#fff;width:min(560px,100%);height:100%;position:absolute;top:0;right:0;overflow-y:auto;box-shadow:-8px 0 30px #0f172a26}.detail-header{z-index:1;background:#fff;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:flex-start;padding:24px;display:flex;position:sticky;top:0}.detail-header h2{color:#111827;margin:0;font-size:20px}.detail-header p{color:#6b7280;margin:4px 0 0;font-size:13px}.close-button{color:#6b7280;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:28px;line-height:1}.close-button:hover{color:#111827}.detail-content{padding:24px}.detail-panel{scrollbar-width:none;-ms-overflow-style:none}.detail-panel::-webkit-scrollbar{display:none}.qa-field{border-bottom:1px solid #f1f5f9;padding:14px 0}.qa-field:last-child{border-bottom:none}.qa-question{color:#6b7280;margin-bottom:6px;font-size:13px;font-weight:600;line-height:1.4}.qa-answer{color:#111827;font-size:15px;line-height:1.5}.qa-empty{color:#9ca3af}.response-filters{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.response-filters input,.response-filters select{color:#374151;background:#fff;border:1px solid #d1d5db;border-radius:7px;outline:none;height:40px;padding:0 12px;font-size:14px}.response-filters input{width:280px}.response-filters select{min-width:160px}.response-filters input:focus,.response-filters select:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1a}.clear-filters{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:7px;height:40px;padding:0 14px;font-size:14px}.clear-filters:hover{background:#f9fafb}.no-results{text-align:center;color:#6b7280;padding:48px 24px}.no-results p{margin:0 0 16px}.confidence-stars{color:#f59e0b;letter-spacing:1.5px;white-space:nowrap;font-size:18px}.metrics-filters{flex-wrap:wrap;gap:8px;margin-bottom:24px;display:flex}.quick-filter{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:999px;height:36px;padding:0 14px;font-size:13px}.quick-filter:hover{background:#f9fafb}.quick-filter.active{color:#fff;background:#2563eb;border-color:#2563eb}.metrics-inline-loading{padding:20px 0}.kpi-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:24px;display:grid}.kpi-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:18px 20px}.kpi-value{color:#111827;font-size:26px;font-weight:650}.kpi-label{color:#6b7280;margin-top:4px;font-size:13px}.chart-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px;margin-bottom:16px;display:grid}.chart-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;margin-bottom:16px;padding:18px 20px}.chart-card-wide{grid-column:1/-1}.chart-card h3{color:#111827;margin:0 0 12px;font-size:14px;font-weight:650}.chart-empty{color:#9ca3af;text-align:center;padding:40px 0;font-size:13px}.section-title{color:#111827;margin:28px 0 12px;font-size:15px;font-weight:650}.kpi-warn .kpi-value{color:#dc2626}.kpi-highlight{background:linear-gradient(135deg,#2563eb,#7c3aed);border-color:#0000}.kpi-highlight .kpi-value,.kpi-highlight .kpi-label{color:#fff}.spotlight-card{background:linear-gradient(#fff 0%,#f8fafc 100%)}.spotlight-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.spotlight-stat{text-align:right;flex-direction:column;align-items:flex-end;display:flex}.spotlight-value{color:#2563eb;font-size:36px;font-weight:750;line-height:1}.spotlight-caption{color:#6b7280;max-width:200px;margin-top:4px;font-size:12px}.gauge-wrapper{position:relative}.gauge-center-label{color:#111827;font-size:22px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.chart-grid-2col{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}@media (width<=720px){.chart-grid-2col{grid-template-columns:1fr}}.chart-legend{flex-wrap:wrap;justify-content:center;gap:8px 16px;margin:12px 0 0;padding:0;list-style:none;display:flex}.chart-legend li{color:#374151;align-items:center;gap:6px;font-size:12px;display:flex}.legend-swatch{border-radius:3px;flex-shrink:0;width:10px;height:10px}.spotlight-body{flex-direction:column;display:flex}.spotlight-subtitle{color:#6b7280;text-transform:uppercase;letter-spacing:.03em;margin:0 0 8px;font-size:12px;font-weight:600}.chart-insight{color:#374151;margin:0 0 12px;font-size:13px}.chart-insight strong{color:#111827}.colorful-horizontal-layout{align-items:flex-start;gap:16px;display:flex}.colorful-horizontal-layout>div:first-child{flex:58%;min-width:0}.side-legend{flex-direction:column;flex:42%;gap:8px;margin:0;padding:0;list-style:none;display:flex}.side-legend li{color:#374151;align-items:flex-start;gap:6px;font-size:12px;line-height:1.4;display:flex}.side-legend-text{word-break:break-word}html,body,#root{height:100%}.app{flex-direction:column;height:100vh;display:flex}.header,.tabs{flex-shrink:0}.content{flex-direction:column;flex:1;width:100%;max-width:1600px;min-height:0;margin:0 auto;padding:32px 32px 0;display:flex;overflow:hidden}.tab-panel{flex-direction:column;width:100%;height:100%;min-height:0}.metrics-page,.responses-page{flex-direction:column;height:100%;min-height:0;display:flex}.metrics-fixed,.responses-fixed{flex-shrink:0}.metrics-scroll,.responses-scroll{scrollbar-width:none;-ms-overflow-style:none;flex:1;min-height:0;padding-bottom:32px;overflow-y:auto}.metrics-scroll::-webkit-scrollbar{display:none}.responses-scroll::-webkit-scrollbar{display:none}.spinner-container{flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:60px 24px;display:flex}.spinner{border:3px solid #e5e7eb;border-top-color:#2563eb;border-radius:50%;width:32px;height:32px;animation:.7s linear infinite spin}.spinner-label{color:#6b7280;margin:0;font-size:13px}@keyframes spin{to{transform:rotate(360deg)}}
