/* Custom styles */ @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap'); body { font-family: 'Inter', sans-serif; } /* File upload dropzone highlight */ .border-dashed.border-blue-500 { border-color: #3b82f6; background-color: #f0f7ff; } /* Loading spinner */ @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .loading-spinner { animation: spin 1s linear infinite; } /* Table styles */ #results-table tr:not(.hidden):hover { background-color: #f8fafc; } .details-btn { transition: transform 0.2s ease; } .details-btn:hover { transform: scale(1.1); } #results-table tr.hidden { display: none; } #results-table tr.hidden td { padding: 0; border-top: none; border-bottom: none; } #results-table th { white-space: nowrap; } #groups-summary div { transition: all 0.2s ease; } #groups-summary div:hover { transform: translateY(-2px); box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); } /* Responsive adjustments */ @media (max-width: 640px) { .grid-cols-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } } /* Documentation page styles */ .prose { max-width: 65ch; line-height: 1.6; } .prose h3 { font-size: 1.25rem; font-weight: 600; margin-top: 1.5rem; margin-bottom: 1rem; color: #1f2937; } .prose ul, .prose ol { padding-left: 1.5rem; margin-bottom: 1.25rem; } .prose li { margin-bottom: 0.5rem; }