/* Neon text glow */
.neon-text {
    color: #ff8c00;
    text-shadow:
        0 0 7px #ff8c00,
        0 0 10px #ff8c00,
        0 0 21px #ff8c00,
        0 0 42px #cc7000;
}

.neon-text-subtle {
    color: #ff8c00;
    text-shadow:
        0 0 5px rgba(255, 140, 0, 0.5),
        0 0 10px rgba(255, 140, 0, 0.3);
}

/* Logo X letter - animated neon glow */
.logo-x {
    color: #ff8c00;
    display: inline-block;
    animation: x-glow 2.5s ease-in-out infinite;
    filter: brightness(1.2);
}

@keyframes x-glow {
    0%, 100% {
        text-shadow:
            0 0 5px #ff8c00,
            0 0 15px #ff8c00,
            0 0 30px rgba(255, 140, 0, 0.4);
        filter: brightness(1.2);
    }
    50% {
        text-shadow:
            0 0 10px #ff8c00,
            0 0 25px #ff8c00,
            0 0 50px rgba(255, 140, 0, 0.6),
            0 0 80px rgba(255, 140, 0, 0.3);
        filter: brightness(1.5);
    }
}

/* Hero logo X - bigger glow */
.logo-x-hero {
    color: #ff8c00;
    display: inline-block;
    animation: x-glow-hero 2.5s ease-in-out infinite;
}

@keyframes x-glow-hero {
    0%, 100% {
        text-shadow:
            0 0 7px #ff8c00,
            0 0 20px #ff8c00,
            0 0 40px rgba(255, 140, 0, 0.5);
        filter: brightness(1.2);
    }
    50% {
        text-shadow:
            0 0 15px #ff8c00,
            0 0 40px #ff8c00,
            0 0 80px rgba(255, 140, 0, 0.6),
            0 0 120px rgba(255, 140, 0, 0.3);
        filter: brightness(1.6);
    }
}

/* Neon border pulse */
@keyframes neon-pulse {
    0%, 100% { box-shadow: 0 0 5px #ff8c00, 0 0 20px rgba(255, 140, 0, 0.3); }
    50%      { box-shadow: 0 0 10px #ff8c00, 0 0 40px rgba(255, 140, 0, 0.5), 0 0 80px rgba(255, 140, 0, 0.2); }
}

.neon-border-pulse {
    animation: neon-pulse 2s ease-in-out infinite;
}

/* Neon line */
.neon-line {
    height: 2px;
    background: linear-gradient(90deg, transparent, #ff8c00, transparent);
    box-shadow: 0 0 8px #ff8c00, 0 0 15px rgba(255, 140, 0, 0.3);
}

/* Neon card */
.neon-card {
    background: #111111;
    border: 1px solid rgba(255, 140, 0, 0.15);
    border-radius: 12px;
    transition: border-color 0.3s, box-shadow 0.3s;
}

.neon-card:hover {
    border-color: rgba(255, 140, 0, 0.4);
    box-shadow: 0 0 15px rgba(255, 140, 0, 0.15);
}

/* Neon button */
.neon-btn {
    background: linear-gradient(135deg, #ff8c00, #cc7000);
    color: #fff;
    padding: 12px 32px;
    border-radius: 8px;
    font-weight: 600;
    transition: all 0.3s;
    box-shadow: 0 0 10px rgba(255, 140, 0, 0.3);
}

.neon-btn:hover {
    box-shadow: 0 0 20px rgba(255, 140, 0, 0.5), 0 0 40px rgba(255, 140, 0, 0.2);
    transform: translateY(-1px);
}

/* Grid background effect */
.grid-bg {
    background-image:
        linear-gradient(rgba(255, 140, 0, 0.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 140, 0, 0.03) 1px, transparent 1px);
    background-size: 50px 50px;
}

/* Scrollbar styling */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #0a0a0a; }
::-webkit-scrollbar-thumb { background: #1a1a1a; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #ff8c00; }

/* Form styling for dark theme */
.dark-input {
    background: #1a1a1a;
    border: 1px solid #2a2a2a;
    color: #e5e7eb;
    border-radius: 8px;
    padding: 10px 14px;
    width: 100%;
    transition: border-color 0.3s;
}

.dark-input:focus {
    outline: none;
    border-color: #ff8c00;
    box-shadow: 0 0 0 2px rgba(255, 140, 0, 0.2);
}

.dark-input::placeholder {
    color: #555;
}

/* Portrait frame with neon ring */
.portrait-frame {
    width: 230px;
    height: 230px;
    border-radius: 50%;
    padding: 5px;
    background: linear-gradient(135deg, #ff8c00, #cc7000, #ff8c00);
    box-shadow: 0 0 20px rgba(255, 140, 0, 0.3), 0 0 40px rgba(255, 140, 0, 0.1);
    animation: portrait-ring 3s ease-in-out infinite;
}

@keyframes portrait-ring {
    0%, 100% { box-shadow: 0 0 20px rgba(255, 140, 0, 0.3), 0 0 40px rgba(255, 140, 0, 0.1); }
    50% { box-shadow: 0 0 30px rgba(255, 140, 0, 0.5), 0 0 60px rgba(255, 140, 0, 0.2); }
}
