#console {
    font-family: 'Courier New', Courier, monospace;
    white-space: pre;
    transition: none !important;
}

.hidden {
    display: none !important;
}

#skip-hint {
    position: fixed;
    bottom: 20px;
    right: 20px;
    font-size: 0.875rem;
    opacity: 0.7;
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0%, 100% { opacity: 0.7; }
    50% { opacity: 1; }
}

/* Terminal cursor blink */
.terminal-cursor {
    animation: blink 1s infinite;
}

@keyframes blink {
    0%, 50% { opacity: 1; }
    51%, 100% { opacity: 0; }
}

/* Status indicator animations */
.status-indicator {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    display: inline-block;
    margin-right: 8px;
    flex-shrink: 0;
}

.status-online {
    background-color: #00ff66;
    box-shadow: 0 0 6px #00ff66;
    animation: pulse-green 2s infinite;
}

.status-internal {
    background-color: #ffa500;
    box-shadow: 0 0 6px #ffa500;
    animation: pulse-amber 2s infinite;
}

.status-external {
    background-color: #00bcd4;
    box-shadow: 0 0 6px #00bcd4;
    animation: pulse-cyan 2s infinite;
}

@keyframes pulse-green {
    0%, 100% { 
    opacity: 1; 
    box-shadow: 0 0 6px #00ff66;
    }
    50% { 
    opacity: 0.6; 
    box-shadow: 0 0 12px #00ff66;
    }
}

@keyframes pulse-amber {
    0%, 100% { 
    opacity: 1; 
    box-shadow: 0 0 6px #ffa500;
    }
    50% { 
    opacity: 0.6; 
    box-shadow: 0 0 12px #ffa500;
    }
}

@keyframes pulse-cyan {
    0%, 100% { 
    opacity: 1; 
    box-shadow: 0 0 6px #00bcd4;
    }
    50% { 
    opacity: 0.6; 
    box-shadow: 0 0 12px #00bcd4;
    }
}

@keyframes pulse-gray {
    0%, 100% { 
    opacity: 1; 
    box-shadow: 0 0 4px #666666;
    }
    50% { 
    opacity: 0.4; 
    box-shadow: 0 0 8px #666666;
    }
}

@keyframes glitch {
    0% { transform: translateX(0); }
    20% { transform: translateX(-1px); }
    40% { transform: translateX(1px); }
    60% { transform: translateX(-1px); }
    80% { transform: translateX(1px); }
    100% { transform: translateX(0); }
}

/* Ensure status indicators are visible */
.status-header {
    display: flex;
    align-items: center;
    margin-bottom: 12px;
}

.card-title {
    flex-grow: 1;
    text-align: center;
}