/* roles.css - Diseños mejorados para roles */

/* Estilos base para todos los roles */
.role-badge {
    display: inline-block;
    padding: 8px 20px;
    border-radius: 25px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    font-size: 0.9rem;
    margin: 10px 0;
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    border: none;
}

.role-badge:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0,0,0,0.15);
}

/* Efecto brillo para todos los roles */
.role-badge::after {
    content: "";
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: linear-gradient(
        to bottom right, 
        rgba(255,255,255,0.3), 
        rgba(255,255,255,0)
    );
    transform: rotate(30deg);
    animation: shine 3s infinite;
}

/* roles.css - Todos los 19 roles con efectos especiales */

/* 1. Novato Digital */
.role-1 {
    background: linear-gradient(135deg, #e0e0e0 0%, #bdbdbd 100%);
    color: #333;
    border: 1px solid #9e9e9e;
    text-shadow: 0 1px 1px rgba(255,255,255,0.8);
}

/* 2. Explorador Web */
.role-2 {
    background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);
    color: white;
    border: 1px solid #00f2fe;
    animation: float 3s ease-in-out infinite;
}

/* 3. Cazador de Bugs */
.role-3 {
    background: linear-gradient(135deg, #a1c900 0%, #3a7d00 100%);
    color: white;
    border: 1px solid #a1c900;
    box-shadow: 0 0 10px rgba(161, 201, 0, 0.5);
}

/* 4. Analista de Seguridad */
.role-4 {
    background: linear-gradient(135deg, #5b86e5 0%, #36d1dc 100%);
    color: white;
    border: 1px solid #36d1dc;
    animation: pulse 2s infinite;
}

/* 5. Hacker Ético */
.role-5 {
    background: linear-gradient(135deg, #ff5e62 0%, #ff9966 100%);
    color: white;
    border: 1px solid #ff5e62;
    text-shadow: 0 0 5px rgba(255,94,98,0.5);
}

/* 6. Pentester Junior */
.role-6 {
    background: linear-gradient(135deg, #c471f5 0%, #fa71cd 100%);
    color: white;
    border: 1px solid #c471f5;
    animation: shake 0.5s infinite alternate;
}

/* 7. Especialista en Redes */
.role-7 {
    background: linear-gradient(135deg, #00c6ff 0%, #0072ff 100%);
    color: white;
    border: 1px solid #0072ff;
    position: relative;
    overflow: hidden;
}

.role-7::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 3px;
    bottom: 0;
    left: 0;
    background: white;
    animation: network 2s linear infinite;
}

/* 8. Ciberinvestigador */
.role-8 {
    background: linear-gradient(135deg, #2b5876 0%, #4e4376 100%);
    color: white;
    border: 1px solid #4e4376;
    box-shadow: 0 0 15px rgba(78, 67, 118, 0.7);
}

/* 9. Experto en OSINT */
.role-9 {
    background: linear-gradient(135deg, #614385 0%, #516395 100%);
    color: white;
    border: 1px solid #614385;
    animation: radar 4s linear infinite;
}

/* 10. Hacker Avanzado */
.role-10 {
    background: linear-gradient(135deg, #ff512f 0%, #dd2476 100%);
    color: white;
    border: 1px solid #dd2476;
    text-shadow: 0 0 8px rgba(221,36,118,0.7);
    animation: flame 1.5s ease-in-out infinite alternate;
}

/* 11. Ninja de la Red */
.role-11 {
    background: linear-gradient(135deg, #11998e 0%, #38ef7d 100%);
    color: black;
    border: 1px solid #38ef7d;
    position: relative;
}

.role-11::after {
    content: "⚔️";
    position: absolute;
    right: 10px;
    animation: shuriken 3s linear infinite;
}

/* 12. Arquitecto de Seguridad */
.role-12 {
    background: linear-gradient(135deg, #0f2027 0%, #203a43 50%, #2c5364 100%);
    color: white;
    border: 1px solid #2c5364;
    box-shadow: 0 0 20px rgba(44,83,100,0.8);
}

/* 13. Gurú de la Criptografía */
.role-13 {
    background: linear-gradient(135deg, #1a2980 0%, #26d0ce 100%);
    color: white;
    border: 1px solid #26d0ce;
    animation: encrypt 3s linear infinite;
}

/* 14. Ciberespía */
.role-14 {
    background: linear-gradient(135deg, #7b4397 0%, #dc2430 100%);
    color: white;
    border: 1px solid #dc2430;
    position: relative;
    overflow: hidden;
}

.role-14::before {
    content: "🕵️";
    position: absolute;
    left: -30px;
    animation: spy 4s linear infinite;
}

/* 15. Maestro del Pentesting */
.role-15 {
    background: linear-gradient(135deg, #f12711 0%, #f5af19 100%);
    color: white;
    border: 1px solid #f5af19;
    animation: fire 2s ease-in-out infinite;
}

/* 16. Experto en Exploits */
.role-16 {
    background: linear-gradient(135deg, #8E2DE2 0%, #4A00E0 100%);
    color: white;
    border: 1px solid #8E2DE2;
    box-shadow: 0 0 25px rgba(142,45,226,0.7);
    animation: electric 1s linear infinite;
}

/* 17. Hacker Elite */
.role-17 {
    background: linear-gradient(135deg, #fdc830 0%, #f37335 100%);
    color: black;
    border: 1px solid #f37335;
    position: relative;
}

.role-17::after {
    content: "";
    position: absolute;
    top: -5px;
    left: -5px;
    right: -5px;
    bottom: -5px;
    border: 2px solid #fdc830;
    border-radius: 30px;
    animation: borderPulse 2s linear infinite;
    z-index: -1;
}

/* 18. Maestro de la Dark Web */
.role-18 {
    background: linear-gradient(135deg, #000000 0%, #434343 100%);
    color: #00ff00;
    border: 1px solid #00ff00;
    text-shadow: 0 0 10px #00ff00;
    font-family: 'Courier New', monospace;
    animation: matrix 0.5s steps(1) infinite;
}

/* 19. Leyenda del Hacking */
.role-19 {
    background: linear-gradient(135deg, #12c2e9 0%, #c471ed 50%, #f64f59 100%);
    color: white;
    border: 1px solid #f64f59;
    position: relative;
    overflow: hidden;
    animation: rainbow 4s linear infinite;
    box-shadow: 0 0 30px rgba(246,79,89,0.7);
}

.role-19::before {
    content: "★ ★ ★";
    position: absolute;
    width: 100%;
    text-align: center;
    top: -15px;
    color: gold;
    animation: stars 3s linear infinite;
}

/* Animaciones personalizadas */
@keyframes float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-5px); }
}

@keyframes pulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.05); }
}

@keyframes shake {
    0% { transform: rotate(-2deg); }
    100% { transform: rotate(2deg); }
}

@keyframes network {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
}

@keyframes radar {
    0% { box-shadow: 0 0 0 0 rgba(97,67,133,0.7); }
    100% { box-shadow: 0 0 0 20px rgba(97,67,133,0); }
}

@keyframes flame {
    0% { text-shadow: 0 0 8px rgba(221,36,118,0.7); }
    100% { text-shadow: 0 0 15px rgba(221,36,118,0.9), 0 0 5px rgba(255,255,255,0.8); }
}

@keyframes shuriken {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

@keyframes encrypt {
    0% { background-position: 0% 50%; }
    100% { background-position: 100% 50%; }
}

@keyframes spy {
    0% { left: -30px; opacity: 0; }
    10% { opacity: 1; }
    90% { opacity: 1; }
    100% { left: calc(100% + 30px); opacity: 0; }
}

@keyframes fire {
    0%, 100% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
}

@keyframes electric {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.7; }
}

@keyframes borderPulse {
    0% { transform: scale(1); opacity: 1; }
    100% { transform: scale(1.1); opacity: 0; }
}

@keyframes matrix {
    0% { text-shadow: 0 0 10px #00ff00; }
    50% { text-shadow: 0 0 15px #00ff00, 0 0 5px white; }
}

@keyframes rainbow {
    0% { filter: hue-rotate(0deg); }
    100% { filter: hue-rotate(360deg); }
}

@keyframes stars {
    0% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.2); opacity: 0.7; }
    100% { transform: scale(1); opacity: 1; }
}