.vendor-research-dashboard{padding:0}.loading-message{text-align:center;padding:3rem;color:#6b7280;font-size:1rem}.error-message{background-color:#fef2f2;border:1px solid #fecaca;border-radius:.375rem;padding:1rem;margin:1rem 0;color:#991b1b}.start-research-container{text-align:center;max-width:800px;margin:2rem auto}.info-box{background-color:#f0f9ff;border:1px solid #3b82f6;border-radius:.5rem;padding:2rem;margin-bottom:2rem;text-align:left}.info-box h3{margin-top:0;color:#1e40af;font-size:1.5rem}.info-box p{color:#1e3a8a;line-height:1.6}.category-list{margin-top:1.5rem;font-size:.875rem;color:#475569}.category-list strong{display:block;margin-bottom:.5rem;color:#1e40af}.category-list ul{list-style-type:none;padding-left:0;display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.category-list li{padding:.25rem 0}.category-list li:before{content:"✓";margin-right:.5rem;color:#3b82f6;font-weight:700}.start-research-btn{padding:1rem 2rem;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border:none;border-radius:.5rem;font-size:1.125rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.start-research-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #2563eb4d}.start-research-btn:disabled{opacity:.6;cursor:not-allowed}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e5e7eb}.header-left h2{margin:0 0 .5rem;font-size:1.5rem;color:#1a1a1a}.vendor-info{color:#6b7280;font-size:1rem;margin:0}.session-metadata{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.metadata-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem;text-align:center}.metadata-label{font-size:.875rem;color:#6b7280;margin-bottom:.5rem}.metadata-value{font-size:1.75rem;font-weight:700;color:#1a1a1a}.progress-bar-container{width:100%;height:8px;background-color:#e5e7eb;border-radius:9999px;overflow:hidden;margin-top:.5rem}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#2563eb);transition:width .3s ease}.actions-bar{display:flex;gap:1rem;margin-bottom:2rem}.download-btn,.view-report-btn{flex:1;padding:.75rem 1.5rem;border:none;border-radius:.375rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.download-btn{background-color:#2563eb;color:#fff}.download-btn:hover{background-color:#1d4ed8}.view-report-btn{background-color:#f3f4f6;color:#1a1a1a;border:1px solid #d1d5db}.view-report-btn:hover{background-color:#e5e7eb}.categories-section h3{margin-bottom:1rem;font-size:1.25rem;color:#1a1a1a}.categories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1rem}.category-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem;transition:box-shadow .2s}.category-card:hover{box-shadow:0 4px 6px #0000001a}.category-card.completed{border-left:4px solid #10b981}.category-card.in_progress{border-left:4px solid #f59e0b}.category-card.failed{border-left:4px solid #ef4444}.category-card.pending{border-left:4px solid #9ca3af}.category-header{display:flex;justify-content:space-between;align-items:flex-start;cursor:pointer;margin-bottom:.75rem}.category-title{font-weight:600;color:#1a1a1a;font-size:1rem;display:flex;flex-direction:column;gap:.5rem}.category-stats{display:flex;align-items:center;gap:.5rem}.progress-indicator{font-weight:600;color:#6b7280;font-size:.875rem}.category-progress{margin-bottom:.5rem}.category-findings{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb;font-size:.875rem}.findings-section{margin-bottom:1rem}.findings-section:last-child{margin-bottom:0}.findings-section strong{display:block;margin-bottom:.5rem;color:#374151}.findings-section p{color:#6b7280;line-height:1.6;margin:0}.findings-section ul{margin:0;padding-left:1.25rem;color:#6b7280}.findings-section li{margin-bottom:.25rem;line-height:1.6}@keyframes shimmer{0%{left:-100%}to{left:100%}}@media(max-width:768px){.session-metadata{grid-template-columns:repeat(2,1fr)}.categories-grid,.category-list ul{grid-template-columns:1fr}.actions-bar{flex-direction:column}}
