Spaces:
Running
Running
/* Data Viewer Styles */ | |
.data-viewer { | |
width: 100%; | |
} | |
.data-viewer.loading { | |
display: flex; | |
flex-direction: column; | |
align-items: center; | |
justify-content: center; | |
padding: 2rem; | |
min-height: 200px; | |
} | |
.data-viewer.loading p { | |
margin-top: 1rem; | |
color: var(--text-secondary); | |
} | |
.data-viewer-header { | |
display: flex; | |
justify-content: space-between; | |
align-items: flex-start; | |
margin-bottom: 1.5rem; | |
gap: 1rem; | |
} | |
.data-viewer-header .data-info h4 { | |
color: var(--text-primary); | |
font-size: 1.1rem; | |
font-weight: 600; | |
margin-bottom: 0.25rem; | |
} | |
.data-viewer-header .data-info p { | |
color: var(--text-secondary); | |
font-size: 0.875rem; | |
} | |
.download-btn { | |
display: flex; | |
align-items: center; | |
gap: 0.5rem; | |
padding: 0.75rem 1.5rem; | |
background: var(--success-color); | |
color: white; | |
border: none; | |
border-radius: 8px; | |
font-weight: 500; | |
cursor: pointer; | |
transition: all 0.2s ease; | |
text-decoration: none; | |
white-space: nowrap; | |
} | |
.download-btn:hover { | |
background: #059669; | |
transform: translateY(-1px); | |
box-shadow: var(--shadow-md); | |
} | |
.data-table-container { | |
background: var(--bg-card); | |
border: 1px solid var(--border-color); | |
border-radius: 12px; | |
overflow: hidden; | |
box-shadow: var(--shadow-md); | |
} | |
.data-table { | |
width: 100%; | |
border-collapse: collapse; | |
font-size: 0.875rem; | |
} | |
.data-table thead { | |
background: var(--bg-tertiary); | |
} | |
.data-table th { | |
padding: 1rem 0.75rem; | |
text-align: left; | |
font-weight: 600; | |
color: var(--text-primary); | |
border-bottom: 1px solid var(--border-color); | |
white-space: nowrap; | |
overflow: hidden; | |
text-overflow: ellipsis; | |
max-width: 200px; | |
} | |
.data-table td { | |
padding: 0.75rem; | |
color: var(--text-secondary); | |
border-bottom: 1px solid rgba(71, 85, 105, 0.3); | |
white-space: nowrap; | |
overflow: hidden; | |
text-overflow: ellipsis; | |
max-width: 200px; | |
} | |
.data-table tbody tr:hover { | |
background: rgba(59, 130, 246, 0.05); | |
} | |
.data-table tbody tr:last-child td { | |
border-bottom: none; | |
} | |
.pagination { | |
display: flex; | |
justify-content: center; | |
align-items: center; | |
gap: 1rem; | |
margin-top: 1.5rem; | |
padding: 1rem; | |
} | |
.pagination-info { | |
color: var(--text-secondary); | |
font-size: 0.875rem; | |
font-weight: 500; | |
} | |
.pagination .btn { | |
padding: 0.5rem 1rem; | |
min-width: auto; | |
} | |
.data-viewer.error, | |
.data-viewer.empty { | |
text-align: center; | |
} | |
.download-section { | |
text-align: center; | |
} | |
/* Additional styles for improved UI */ | |
.error-actions { | |
display: flex; | |
justify-content: center; | |
gap: 0.75rem; | |
flex-wrap: wrap; | |
} | |
.error-help ul { | |
color: var(--text-secondary); | |
opacity: 0.9; | |
} | |
.error-help li { | |
margin-bottom: 0.25rem; | |
} | |
.success-details { | |
display: flex; | |
gap: 1rem; | |
flex-wrap: wrap; | |
margin-top: 0.75rem; | |
} | |
.success-stat { | |
display: flex; | |
align-items: center; | |
gap: 0.5rem; | |
font-size: 0.875rem; | |
} | |
.success-label { | |
color: var(--text-secondary); | |
font-weight: 500; | |
} | |
.success-value { | |
color: var(--text-primary); | |
font-weight: 600; | |
padding: 0.25rem 0.5rem; | |
background: rgba(16, 185, 129, 0.1); | |
border-radius: 4px; | |
} | |
.download-actions { | |
display: flex; | |
justify-content: center; | |
gap: 1rem; | |
flex-wrap: wrap; | |
} | |
.download-btn-primary { | |
font-size: 1rem; | |
padding: 0.875rem 2rem; | |
font-weight: 600; | |
} | |
.btn-outline { | |
background: transparent; | |
border: 2px solid var(--border-color); | |
color: var(--text-secondary); | |
padding: 0.75rem 1.5rem; | |
border-radius: 8px; | |
font-weight: 500; | |
cursor: pointer; | |
transition: all 0.2s ease; | |
text-decoration: none; | |
} | |
.btn-outline:hover { | |
border-color: var(--primary-color); | |
color: var(--primary-color); | |
background: rgba(59, 130, 246, 0.05); | |
} | |
.preview-note { | |
border: 1px solid var(--border-color); | |
} | |
/* Enhanced error display styles */ | |
.btn-large { | |
padding: 12px 24px ; | |
font-size: 1rem ; | |
font-weight: 600 ; | |
} | |
.success-note { | |
animation: fadeIn 0.3s ease-in-out; | |
} | |
@keyframes fadeIn { | |
from { | |
opacity: 0; | |
transform: translateY(10px); | |
} | |
to { | |
opacity: 1; | |
transform: translateY(0); | |
} | |
} | |
.error-actions .btn { | |
min-width: 180px; | |
} | |
.status-message.error .status-message-content h4 { | |
color: var(--error-color, #dc3545); | |
} | |
.status-message.error .status-message-content p { | |
margin-bottom: 0.75rem; | |
} | |
/* Responsive data table */ | |
@media (max-width: 768px) { | |
.data-viewer-header { | |
flex-direction: column; | |
align-items: stretch; | |
gap: 1rem; | |
} | |
.data-table-container { | |
overflow-x: auto; | |
} | |
.data-table th, | |
.data-table td { | |
padding: 0.5rem; | |
min-width: 120px; | |
} | |
.pagination { | |
flex-direction: column; | |
gap: 0.5rem; | |
} | |
} | |
/* Responsive improvements */ | |
@media (max-width: 568px) { | |
.error-actions { | |
flex-direction: column; | |
align-items: center; | |
} | |
.download-actions { | |
flex-direction: column; | |
align-items: center; | |
} | |
.success-details { | |
flex-direction: column; | |
gap: 0.5rem; | |
} | |
} | |