64 lines
1.2 KiB
CSS
64 lines
1.2 KiB
CSS
.network-status-chip {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: 0.35rem;
|
|
padding: 0.2rem 0.55rem;
|
|
border-radius: 9999px;
|
|
font-size: 0.75rem;
|
|
font-weight: 600;
|
|
letter-spacing: 0.02em;
|
|
user-select: none;
|
|
transition: all 0.25s ease-in-out;
|
|
border: 1px solid transparent;
|
|
}
|
|
|
|
.network-status-chip.online {
|
|
background-color: rgba(16, 185, 129, 0.15);
|
|
border-color: rgba(16, 185, 129, 0.35);
|
|
color: #34d399;
|
|
}
|
|
|
|
.network-status-chip.offline {
|
|
background-color: rgba(245, 158, 11, 0.18);
|
|
border-color: rgba(245, 158, 11, 0.45);
|
|
color: #fbbf24;
|
|
}
|
|
|
|
.status-dot {
|
|
width: 7px;
|
|
height: 7px;
|
|
border-radius: 50%;
|
|
display: inline-block;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.network-status-chip.online .status-dot {
|
|
background-color: #10b981;
|
|
box-shadow: 0 0 6px rgba(16, 185, 129, 0.8);
|
|
}
|
|
|
|
.network-status-chip.offline .status-dot {
|
|
background-color: #f59e0b;
|
|
box-shadow: 0 0 6px rgba(245, 158, 11, 0.8);
|
|
animation: pulse 2s infinite ease-in-out;
|
|
}
|
|
|
|
.status-icon {
|
|
font-size: 0.8rem;
|
|
}
|
|
|
|
.status-text {
|
|
line-height: 1;
|
|
}
|
|
|
|
@keyframes pulse {
|
|
0%, 100% {
|
|
opacity: 1;
|
|
transform: scale(1);
|
|
}
|
|
50% {
|
|
opacity: 0.4;
|
|
transform: scale(0.85);
|
|
}
|
|
}
|