/* Estilos Mike */
/* .header{
    z-index:1;
} */

h1 {
    font-size:2.8rem;          
    margin-bottom: 0;   
    /* line-height: 1.2;       */
}

h3 {
    margin-top:1.2rem;
}

.hero-description {
    color: var(--terminal-green)
}

.profile-header-flex {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem; /* 30px */
    align-items: center;
    justify-content: center;
}

.profile-data-box {
    border-left: 1px solid var(--terminal-green); /* 2px */
    padding-left: 1.25rem; /* 20px */
    font-size: 1.3rem;
}

.profile-data-box p {
    margin: 0.3rem 0;
    font-weight: bold;
}

.profile-image img {  /* imagen a color sin filtro de grises */
    filter: none;
    border: none;
}

/* Barra de navegación del perfil */
.profile-local-nav {
    position: sticky;
    top: 0;
    width: 100%;
    /* Fondo con transparencia usando RGBA (negro al 80%) */
    background-color: rgba(0, 0, 0, 0.8);
    border-bottom: 0.0625rem solid var(--terminal-green);
    /* z-index: 1000; */
    padding: 0.75rem 0;
    margin-bottom: 2rem;
    overflow-x: auto;
}

.nav-path {
    display: flex;
    align-items: center;
    justify-content: space-evenly;  /* se puede usar space-evenly para verlo más separado */
    gap: 0.5rem;
    white-space: nowrap;
    padding: 0 0.5rem;
}

.nav-root {
    color: var(--terminal-green);
    opacity: 0.5;
    font-size: 0.85rem;
}

.nav-sep {
    color: var(--terminal-green);
    opacity: 0.3;
}

.profile-local-nav a {
    color: var(--terminal-green);
    text-decoration: none;
    font-size: 1rem;
}

.profile-local-nav a:hover {
    text-shadow: 0 0 0.5rem var(--terminal-green);
}

/* Formación & Certificaciones */
.formacion-stack { display: flex; flex-direction: column; gap: 1.5rem; }

.formacion-card {
    background: transparent;
    border: none;
    padding: 0;
}


.formacion-card:not(:last-child) {
    border-bottom: 1px solid rgba(0, 255, 136, 0.15);
    padding-bottom: 1.5rem;
}

.formacion-label {
    font-size: 1.2rem;
    color: var(--text-accent);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: 0.75rem;
    font-weight: normal;
}
.formacion-label span { color: var(--terminal-green); margin-right: 0.3rem; }

/* Tecnicaturas */
.tec-item { margin-bottom: 0.75rem; }

.tec-header {
    display: flex;
    align-items: baseline;
    gap: 0.75rem;
    margin-bottom: 0.4rem;
}

.tec-nombre {
    font-size: 1.1rem;
    color: var(--text-accent);
    font-weight: bold;
}

.tec-inst {
    font-size: 0.9rem;
    color: var(--text-accent);
    opacity: 0.5;
}

/* Tags */
.tag-list { display: flex; flex-wrap: wrap; gap: 0.35rem; list-style: none; padding: 0; margin: 0; }
.tag {
    font-size: 0.9rem;
    border: 1px solid var(--terminal-green);
    color: var(--terminal-green);
    padding: 0.15rem 0.5rem;
    border-radius: 3px;
}

/* Certificaciones */
.cert-grid { display: flex; flex-direction: column; }

.cert-item {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 0.6rem;
    padding: 0.5rem 0;
    border-bottom: 1px solid rgba(0, 255, 136, 0.1);
}
.cert-item:last-child { border-bottom: none; }

.cert-name { color: var(--text-accent); font-size: 1.05rem; }
.cert-org  { font-size: 1.05rem; color: var(--text-accent); opacity: 0.55; margin: 0; }

.cert-status {
    font-size: 0.85rem;
    padding: 0.2rem 0.55rem;
    border-radius: 3px;
    white-space: nowrap;
    text-align: center;
    min-width: 80px;
}
.status-done { border: 1px solid var(--terminal-green); color: var(--terminal-green); }
.status-wip  { border: 1px solid #886600; color: #ffcc44; }

/* --- SECCIÓN DE HABILIDADES (BARRAS XP) --- */

#habilidades {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: stretch; /* Esto obliga a los hijos a ocupar todo el ancho */
}

.habilidades-layout {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 1.5rem 2rem;
    list-style: none;
    padding: 0;
    width: 100%; /* Ocupa todo el espacio del padre */
    margin: 0 auto;
}

.skill-item {
    width: 100%; /* Cada item ocupa el 100% de su celda en la grilla */
    display: block;
}

.skill-info {
    display: flex;
    justify-content: space-between;
    margin-bottom: 5px;
    font-size: 1.1rem;
    color: var(--text-accent);
}

.xp-bar {
    width: 100%;
    height: 10px;
    background: rgba(0, 255, 65, 0.1);
    border: 1px solid var(--terminal-green);
    border-radius: 5px;
    overflow: hidden;
}

.xp-fill {
    height: 100%;
    background: var(--terminal-green);
    width: var(--pct); /* Usa la variable --pct definida en el HTML */
    box-shadow: 0 0 10px var(--terminal-green);
    transition: width 1s ease-in-out;
}

.ds-note {
    margin-top: 2rem;
    border-left: 3px solid var(--terminal-green);
    padding: 1.2rem;
    background: rgba(0, 255, 65, 0.05);
    font-size: 1rem;
}

/* Contenedores Multimedia (al estilo de Mario) */
/* Grid películas */
.contenedor-peliculas {
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-radius: 10px;
    border: 1px solid whitesmoke;
    margin: 1.25rem 0;
    align-items: center;
    overflow: hidden;
}

.contenedor-peliculas:hover {
    background-color: rgb(19, 19, 19);
}

iframe {
    width: 100%;
    height: 13.75rem;
    display: block;
    margin: 0;
    border-radius: 0;
}

.tarjeta {
    padding: 1.25rem;
}

.tarjeta h4 {
    margin-top: 0;
    color: var(--text-accent);
    text-shadow: 0 0 0.3rem var(--terminal-green);
}

.description-peliculas {
    color: var(--text-accent);
    font-size: 0.9rem;
    text-indent: 1.25rem;
    text-align: justify;
    margin-top: 0.75rem;
}

.parrafo-resumido {
    max-height: calc(1.6em * 3); /* para q no se corte el texto*/
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.parrafo-completo {
    max-height: 62.5rem;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.btn-leer {
    background-color: var(--surface-color);
    height: 2.5rem;
    width: 100%;
    color: var(--terminal-green);
    text-transform: uppercase;
    font-size: 1.1rem;
    border: 2px solid var(--terminal-green);
    border-radius: 10px;
    cursor: pointer;
    font-family: inherit;
    margin-top: 0.5rem;
}

.btn-leer:hover {
    background: var(--text-accent);
    color: var(--terminal-green);
    font-weight: bold;
}

/*Redes Sociales*/

 .social-links {
     width: 100%;
     display: flex;
     justify-content: center;
     gap: 0.75rem;
 }

/* Discos Favoritos */

.discos-favoritos {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    gap: 0.9375rem;
}

.disco-item {
    margin: 0;
    text-align: center;
}

.disco-item img {
    width: 12.5rem;
    height: 12.5rem;
    display: block;
    object-fit: cover;
}

.disco-item figcaption {
    margin-top: 1.2rem;
    font-size: 1rem;
    color: var(--text-accent);
}

.disco-item figcaption a {
    color: var(--terminal-green);
    text-decoration: none;
    margin-left: 0.4rem;
    border: 1px solid var(--terminal-green);
    padding: 0.1rem 0.3rem;
    border-radius: 3px;
    font-size: 0.85rem;
    vertical-align: top;
}

.disco-item figcaption a:hover {
    background: var(--terminal-green);
    color: var(--bg-color);
}

@media (max-width: 768px) {

    .habilidades-layout {
    
    grid-template-columns: 1fr 1fr;
 
    
}
/* Esto evita que el menú tape los títulos al navegar */


}

section[id], h2[id] {

    scroll-margin-top: 3rem; 

}


/* Responsive: en móvil video arriba, descripción abajo */

@media (max-width: 600px) {

    /* Mobile: la tarjeta ocupa todo el ancho disponible,
   borde a borde, compensando el padding del body */
    .profile-card {
        max-width: 100%;
        border-radius: 0;
        border-left: none;
        border-right: none;
    }

    .profile-content {
        padding: 1rem;
    }


    .contenedor-peliculas {
        grid-template-columns: 1fr;
    }

    .contenedor-peliculas iframe {
        order: -1;
    }

    iframe {
        height: 12rem;
    }
        
    .habilidades-layout { grid-template-columns: 1fr; }

    .formacion-label,
    .tec-header,
    .tag-list,
    .cert-item { justify-content: center; }

    .tec-header { flex-wrap: wrap; }

    .cert-item {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .cert-status { margin: 0 auto; }

    /* navegador de perfil en mobile */

    .profile-local-nav {        
        backdrop-filter: blur(4px); /* Efecto de desenfoque opcional para legibilidad */
        margin-bottom: 1.5rem;
    }

    .nav-path {
        display: grid;
        grid-template-columns: auto auto;
        justify-content: center;     
        justify-items: start;      /* para hacerlo coincidir con el borde inicial */
        padding: 0.3rem 1.5rem; 
        gap: 0.6rem 6rem;
    }

    .nav-root {
        grid-column: 1 / -1;
        /* Alineado con el resto de los links */
        padding-left: 0; 
        margin-bottom: 0.2rem;
    }

    .nav-sep {
        display: none;
    }

    section[id], h2[id] {
        scroll-margin-top: 8.5rem; /* Ajustá este valor según la altura real de tu nav */
    }
}



