/* ========== HEADER / NAV ========== */

.site-header {
    position: sticky;
    top: 0;
    z-index: 100;
    background: rgba(3, 5, 10, 0.98);
    border-bottom: 1px solid rgba(20, 70, 160, 0.5); /* azul bandera */
    backdrop-filter: blur(8px);
}

.header-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 0;
}

/* Logo and Title Group */
.logo-title {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 5px;
    border-radius: 8px;
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}

.logo-title:hover {
    transform: scale(1.08);
}

.logo-title img {
    width: 32px;
    height: 32px;
    object-fit: contain;
    animation: icon-pulse 3s infinite ease-in-out;
}

.logo-text {
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-size: 0.9rem;
    color: #ffffff;
    animation: text-glow-pulse 3s infinite ease-in-out;
}

/* Animations */
@keyframes icon-pulse {
    0%, 100% { filter: drop-shadow(0 0 2px rgba(255, 255, 255, 0.2)); }
    50% { filter: drop-shadow(0 0 12px rgba(255, 255, 255, 0.7)); }
}

@keyframes text-glow-pulse {
    0%, 100% {
        text-shadow: 0 0 10px rgba(255, 255, 255, 0.4), 0 0 20px rgba(255, 255, 255, 0.1), 2px 2px 0px #000000;
    }
    50% {
        text-shadow: 0 0 15px rgba(255, 255, 255, 0.8), 0 0 30px rgba(255, 255, 255, 0.5), 2px 2px 0px #000000;
    }
}

.logo-text span {
    color: var(--accent-red);
}

.user-login-btn {
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Responsive Mobile */
@media (max-width: 768px) {
    .header-inner {
        padding: 0.5rem 0;
    }
}