/* login-page.css — extracted inline styles from login template */

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

.login-card {
    animation: fadeInUp 0.3s ease-out;
}

html,
body {
    background: var(--bs-body-bg, var(--vork-bg, #0f0f0f));
    color: var(--bs-body-color, var(--vork-text, #e9ecef));
}

.crt-tagline {
    position: relative;
    display: inline-block;
    font-family: ui-monospace, 'Courier New', monospace;
    font-size: 0.85rem;
    font-weight: 700;
    color: #fdaa02;
    text-shadow: 0 0 10px rgba(253, 170, 2, 0.4);
    letter-spacing: 0.04em;
}

.crt-tagline::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: repeating-linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0) 0,
        rgba(0, 0, 0, 0) 2px,
        rgba(0, 0, 0, 0.28) 2px,
        rgba(0, 0, 0, 0.28) 4px
    );
}

.terminal-cursor {
    display: inline-block;
    width: 0.55em;
    height: 1em;
    margin-left: 0.2em;
    background-color: #fdaa02;
    box-shadow: 0 0 8px rgba(253, 170, 2, 0.6);
    vertical-align: text-bottom;
    animation: cursorFlash 1s step-end infinite;
}

@keyframes cursorFlash {
    0%, 49% {
        opacity: 1;
    }
    50%, 100% {
        opacity: 0;
    }
}
