/**
 * animations.css
 * Keyframes and classes for UI transitions and effects.
 */

.fade-in {
    animation: fadeIn 0.8s ease-out forwards;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* --- Scanning Progress Bar --- */

.progress-bar {
    width: 100%;
    max-width: 400px;
    height: 6px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 1rem;
}

.progress-fill {
    height: 100%;
    width: 0%;
    background: var(--accent);
    box-shadow: 0 0 10px var(--accent);
    animation: progressLoop 3s infinite ease-in-out;
}

@keyframes progressLoop {
    0% { width: 0%; transform: translateX(-100%); }
    50% { width: 70%; transform: translateX(0%); }
    100% { width: 100%; transform: translateX(100%); }
}

/* --- Typewriter Effect for AI --- */

.typewriter {
    border-right: 2px solid var(--accent);
    animation: blink 0.75s step-end infinite;
}

@keyframes blink {
    from, to { border-color: transparent; }
    50% { border-color: var(--accent); }
}

/* --- Scanning Status Text --- */

#scan-status {
    font-family: var(--font-mono);
    color: var(--muted);
    font-size: 0.9rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}
