AIstudioProxyAPI / static /frontend /src /components /settings /HealthStatus.module.css
peijun1's picture
Deploy AI Studio Proxy API to Hugging Face Spaces
a5784e9
Raw
History Blame Contribute Delete
2.86 kB
.healthStatus {
display: flex;
flex-direction: column;
gap: var(--space-4);
}
.statusCard {
padding: var(--space-4);
border-radius: var(--radius-lg);
border: 1px solid var(--border-subtle);
transition: all var(--transition-normal);
}
.statusCard.healthy {
background: linear-gradient(135deg, rgba(34, 197, 94, 0.1), rgba(34, 197, 94, 0.05));
border-color: rgba(34, 197, 94, 0.2);
}
.statusCard.unhealthy {
background: linear-gradient(135deg, rgba(239, 68, 68, 0.1), rgba(239, 68, 68, 0.05));
border-color: rgba(239, 68, 68, 0.2);
}
.statusHeader {
display: flex;
align-items: center;
gap: var(--space-3);
}
.statusInfo {
display: flex;
flex-direction: column;
}
.statusTitle {
font-size: var(--text-sm);
color: var(--text-secondary);
}
.statusValue {
font-size: var(--text-lg);
font-weight: 600;
color: var(--text-primary);
}
.statusMessage {
margin-top: var(--space-2);
font-size: var(--text-sm);
color: var(--text-muted);
}
.details {
display: flex;
flex-direction: column;
gap: var(--space-2);
padding: var(--space-3);
background-color: var(--bg-tertiary);
border-radius: var(--radius-md);
}
.detailsTitle {
font-size: var(--text-sm);
font-weight: 600;
color: var(--text-primary);
margin-bottom: var(--space-2);
}
.detailItem {
display: flex;
justify-content: space-between;
align-items: center;
padding: var(--space-2) 0;
border-bottom: 1px solid var(--border-subtle);
}
.detailItem:last-child {
border-bottom: none;
}
.detailLeft {
display: flex;
align-items: center;
gap: var(--space-2);
color: var(--text-secondary);
}
.detailLabel {
font-size: var(--text-sm);
}
.detailValue {
font-size: var(--text-sm);
font-weight: 500;
}
.success {
color: var(--accent-success);
}
.error {
color: var(--accent-error);
}
.spinning {
animation: spin 1s linear infinite;
}
@keyframes spin {
from { transform: rotate(0deg); }
to { transform: rotate(360deg); }
}
.errorBox {
display: flex;
align-items: center;
gap: var(--space-2);
padding: var(--space-3);
background-color: rgba(239, 68, 68, 0.1);
border: 1px solid rgba(239, 68, 68, 0.2);
border-radius: var(--radius-md);
font-size: var(--text-sm);
color: var(--accent-error);
}
.lastUpdate {
font-size: var(--text-xs);
color: var(--text-muted);
text-align: center;
}
.refreshButton {
display: flex;
align-items: center;
justify-content: center;
gap: var(--space-2);
width: 100%;
padding: var(--space-2) var(--space-4);
background-color: var(--bg-secondary);
color: var(--text-secondary);
border-radius: var(--radius-md);
font-size: var(--text-sm);
transition: all var(--transition-fast);
}
.refreshButton:hover:not(:disabled) {
background-color: var(--bg-elevated);
color: var(--text-primary);
}
.refreshButton:disabled {
opacity: 0.5;
}