/* Custom SCP-294 Terminal Styles */

@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@400;700&display=swap');

body {
    font-family: 'Courier New', monospace;
    background: linear-gradient(135deg, #1a1a1a 0%, #0d1117 100%);
    overflow-x: hidden;
}

.font-condensed {
    font-family: 'Roboto Condensed', 'Arial Narrow', Arial, sans-serif;
}

/* Terminal animations */
@keyframes blink {
    0%, 50% { opacity: 1; }
    51%, 100% { opacity: 0; }
}

.terminal-cursor::after {
    content: '█';
    animation: blink 1s infinite;
    color: #00ff00;
}

/* Machine status lights */
.status-light {
    box-shadow: 0 0 10px currentColor;
}

/* Scrollbar styling for dark theme */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #1a1a1a;
}

::-webkit-scrollbar-thumb {
    background: #ff6600;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #ff8833;
}

/* Glitch effect for anomalous events */
@keyframes glitch {
    0% { transform: translate(0); }
    20% { transform: translate(-2px, 2px); }
    40% { transform: translate(-2px, -2px); }
    60% { transform: translate(2px, 2px); }
    80% { transform: translate(2px, -2px); }
    100% { transform: translate(0); }
}

.glitch {
    animation: glitch 0.3s infinite;
}

/* Button hover effects */
button:hover:not(:disabled) {
    transform: translateY(-1px);
    transition: transform 0.1s ease;
}

/* Loading animation for processing */
@keyframes pulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.5; }
}

/* SCP Foundation styling */
.scp-border {
    border-image: repeating-linear-gradient(
        45deg,
        #ff6600,
        #ff6600 10px,
        transparent 10px,
        transparent 20px
    ) 2;
}

/* Terminal glow effect */
.terminal-glow {
    box-shadow: inset 0 0 20px rgba(0, 255, 0, 0.1);
}

/* Danger warning stripes */
.danger-stripes {
    background: repeating-linear-gradient(
        45deg,
        #ff0000,
        #ff0000 10px,
        #ffff00 10px,
        #ffff00 20px
    );
    background-size: 28px 28px;
    animation: danger-scroll 2s linear infinite;
}

@keyframes danger-scroll {
    0% { background-position: 0 0; }
    100% { background-position: 28px 28px; }
}

/* Dispensed liquid animation */
@keyframes dispense {
    0% { transform: translateY(-20px); opacity: 0; }
    50% { opacity: 1; }
    100% { transform: translateY(0); opacity: 1; }
}

.dispensed-item {
    animation: dispense 1s ease-out;
}

/* Screen flicker effect for authentic terminal feel */
@keyframes flicker {
    0%, 100% { opacity: 1; }
    98%, 99% { opacity: 0.98; }
}

.screen-flicker {
    animation: flicker 0.15s infinite linear alternate;
}