/* Real-time Status Indicators */
.presence-indicator {
    position: absolute;
    width: 28%;
    height: 28%;
    border-radius: 50%;
    border: 3px solid #0f172a; /* Same as background/border */
    bottom: 0px;
    right: 0px;
    transition: background-color 0.3s ease;
    z-index: 20;
}

.status-online { background-color: #22c55e; box-shadow: 0 0 10px #22c55e66; }
.status-idle { background-color: #f59e0b; box-shadow: 0 0 10px #f59e0b66; }
.status-offline { background-color: #94a3b8; box-shadow: 0 0 10px #94a3b866; }

/* Pulse animation for online */
.status-online::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: inherit;
    animation: status-pulse 2s infinite;
    z-index: -1;
}

@keyframes status-pulse {
    0% { transform: scale(1); opacity: 0.8; }
    100% { transform: scale(1.6); opacity: 0; }
}
