/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

/* Cambiamos el color del background de los menús destacados de WP */
li#toplevel_page_learndash-lms,
#toplevel_page_eav-expedicion-activa,
#toplevel_page_membership,
#menu-posts-especiales,
#menu-media,
#menu-pages,
#menu-posts-product,
#menu-users,
#menu-settings {
    background: #F0E9DD !important;
}

/* LearnDash */
.ld-course-status.ld-course-status-enrolled {
    padding: 20px !important;
    background: #FFF !important;
    border-style: none;
    border-width: 1px;
    border-color: #092823;
    border-radius: 15px;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
}

.ld-progress-bar {
    background: #F0E9DD !important;
    border-style: solid;
    border-color: #C8A158;
    border-width: 1px;
}

.learndash-wrapper .ld-item-list .ld-item-list-item {   
    padding: 20px !important;
    background: #FFF !important;
    border-style: none;
    border-width: 1px;
    border-color: #092823;
    border-radius: 15px;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
}

/* Ocultar texto pasos en barra de progreso */
.ld-progress-steps{
    display:none;
}

/* Recolocar elementos botón "marcar como incompleto" */
input.learndash_mark_incomplete_button {
    box-sizing: border-box;
    padding-right: 1.7rem !important;
}

/* Botón "marcar como completado" sin el icono de LearnDash */
.learndash-wrapper:not(.ld-registration__outer-wrapper):not(.learndash-wrapper--modern) .sfwd-mark-complete::after {
    display: none !important;
}

input.learndash_mark_complete_button {
    box-sizing: border-box;
}

/* Añadir animación de texto a los botones de las secciones en la página principal */
.eav-custom-review-button a:hover {
    opacity: 1 !important;
    
}

.eav-custom-review-button a::after {
    display: inline-block;
    max-width: 0;
    opacity: 0;
    white-space: nowrap;
    transition: max-width 0.4s ease, opacity 0.4s ease;
}

.eav-custom-review-button a:hover::after {
    max-width: 30px;
    opacity: 1;
    background-color: white !important;
}

/* Inicio botones de pantalla principal */
.eav-custom-button .wp-block-button__link,
.learndash-wrapper a.eav-custom-button {
    display: block !important;
    position: relative;
    z-index: 1;
    overflow: hidden;
    box-sizing: border-box;
    width: 340px !important;
    max-width: 100% !important;
    text-align: center !important;
    padding: 0.75rem 1.25rem !important;
    border: none !important;
    border-radius: 10rem !important;
    background: transparent !important;
    color: var(--ast-global-color-4) !important;
    text-decoration: none;
    box-shadow: 0 4px 12px color-mix(in srgb, var(--ast-global-color-1) 25%, transparent) !important;
    transition: all 0.3s;
}

/* Botón de bloque: ocupa la tarjeta y se centra, igual que los de LearnDash */
.wp-block-button.eav-custom-button {
    width: 100%;
}

.eav-custom-button .wp-block-button__link {
    margin: 0 auto;
}

/* Centrado y misma tipografía que los botones de Astra */
.learndash-wrapper a.eav-custom-button {
    display: block !important;
    margin: 0 auto !important;
    font-family: inherit !important;
    font-size: 1.25rem !important;
    font-weight: 500 !important;
    line-height: 1em !important;
}

/* Tres tarjetas por fila aún estrechas: letra algo menor para que ningún botón se parta en dos líneas */
@media (min-width: 922px) and (max-width: 1220px) {
    .eav-custom-button .wp-block-button__link,
    .learndash-wrapper a.eav-custom-button {
        padding-left: 12px !important;
        padding-right: 12px !important;
        font-size: 15px !important;
        min-height: 44px;
        line-height: 20px !important;
    }
}

/* LearnDash quita la sombra a sus enlaces con !important */
.learndash-wrapper:not(.ld-registration__outer-wrapper):not(.learndash-wrapper--modern) a.eav-custom-button.ld-button {
    box-shadow: 0 4px 12px color-mix(in srgb, var(--ast-global-color-1) 25%, transparent) !important;
}

/* Fondo con el color de marca */
.eav-custom-button .wp-block-button__link::after,
.learndash-wrapper a.eav-custom-button::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--ast-global-color-0);
    border-radius: 10rem;
    z-index: -2;
}

/* Relleno más oscuro que avanza al pasar el ratón */
.eav-custom-button .wp-block-button__link::before,
.learndash-wrapper a.eav-custom-button::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 100%;
    background-color: color-mix(in srgb, var(--ast-global-color-0) 75%, #000);
    border-radius: 10rem;
    transition: all 0.3s;
    z-index: -1;
}

.eav-custom-button .wp-block-button__link:hover,
.learndash-wrapper a.eav-custom-button:hover {
    color: var(--ast-global-color-4) !important;
    opacity: 1 !important;
}

.eav-custom-button .wp-block-button__link:hover::before,
.learndash-wrapper a.eav-custom-button:hover::before {
    width: 100%;
}

/* Botones Anterior y Siguiente de lecciones: mismo estilo que los de la pantalla principal */
.learndash-wrapper:not(.ld-registration__outer-wrapper):not(.learndash-wrapper--modern) .ld-content-actions a.ld-button {
    position: relative;
    z-index: 1;
    overflow: hidden;
    border-radius: 10rem !important;
    color: var(--ast-global-color-4) !important;
    opacity: 1 !important;
    box-shadow: 0 4px 12px color-mix(in srgb, var(--ast-global-color-1) 25%, transparent) !important;
    transition: all 0.3s;
}

.learndash-wrapper .ld-content-actions a.ld-button::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--ast-global-color-0);
    border-radius: 10rem;
    z-index: -2;
}

.learndash-wrapper .ld-content-actions a.ld-button::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 100%;
    background-color: color-mix(in srgb, var(--ast-global-color-0) 75%, #000);
    border-radius: 10rem;
    transition: all 0.3s;
    z-index: -1;
}

.learndash-wrapper .ld-content-actions a.ld-button:hover::before {
    width: 100%;
}

/* Botones de lección: letra más grande y los tres centrados en vertical */
.learndash-wrapper:not(.ld-registration__outer-wrapper):not(.learndash-wrapper--modern) .ld-content-actions {
    align-items: center !important;
}

.learndash-wrapper:not(.ld-registration__outer-wrapper):not(.learndash-wrapper--modern) .ld-content-actions a.ld-button {
    font-size: 12px;
}

.learndash-wrapper:not(.ld-registration__outer-wrapper):not(.learndash-wrapper--modern) .ld-content-actions input[type="submit"] {
    font-size: 14px;
}
/* Cabecera y Contenido especial: mismo efecto, con su tamaño y color */
#masthead .ast-custom-button,
.eav-special-conten-button .uagb-buttons-repeater {
    position: relative;
    z-index: 1;
    overflow: hidden;
    border-radius: 10px !important;
    transition: all 0.3s;
}

#masthead .ast-custom-button::before,
.eav-special-conten-button .uagb-buttons-repeater::before,
.learndash-wrapper .eav-completar__boton::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background-color: color-mix(in srgb, var(--ast-global-color-0) 75%, #000);
    transition: all 0.3s;
    z-index: -1;
}

#masthead .ast-custom-button:hover::before,
.eav-special-conten-button .uagb-buttons-repeater:hover::before,
.learndash-wrapper .eav-completar__boton:hover::before {
    width: 100%;
}
/* Contenido especial: resplandor, pulsación y burbujas al hacer clic; el botón Completar comparte las burbujas (js/eav-boton-burbujas.js) */
.eav-special-conten-button .uagb-buttons-repeater {
    box-shadow: 0 2px 25px color-mix(in srgb, var(--ast-global-color-0) 50%, transparent) !important;
    transition: transform ease-in 0.1s, box-shadow ease-in 0.25s, color 0.3s !important;
}

.eav-special-conten-button .uagb-buttons-repeater:active {
    transform: scale(0.9);
    box-shadow: 0 2px 25px color-mix(in srgb, var(--ast-global-color-0) 20%, transparent) !important;
}

.eav-special-conten-button .uagb-button__wrapper,
.learndash-wrapper .eav-completar {
    position: relative;
    z-index: 0;
}

.eav-special-conten-button .uagb-button__wrapper::before,
.eav-special-conten-button .uagb-button__wrapper::after,
.learndash-wrapper .eav-completar::before,
.learndash-wrapper .eav-completar::after {
    content: "";
    position: absolute;
    display: none;
    left: -20%;
    width: 140%;
    height: 100%;
    z-index: -1;
    background-repeat: no-repeat;
    pointer-events: none;
}

.eav-special-conten-button .uagb-button__wrapper::before,
.learndash-wrapper .eav-completar::before {
    top: -75%;
    background-image:
        radial-gradient(circle, var(--ast-global-color-0) 20%, transparent 20%),
        radial-gradient(circle, transparent 20%, var(--ast-global-color-0) 20%, transparent 30%),
        radial-gradient(circle, var(--ast-global-color-0) 20%, transparent 20%),
        radial-gradient(circle, var(--ast-global-color-0) 20%, transparent 20%),
        radial-gradient(circle, transparent 10%, var(--ast-global-color-0) 15%, transparent 20%),
        radial-gradient(circle, var(--ast-global-color-0) 20%, transparent 20%),
        radial-gradient(circle, var(--ast-global-color-0) 20%, transparent 20%),
        radial-gradient(circle, var(--ast-global-color-0) 20%, transparent 20%),
        radial-gradient(circle, var(--ast-global-color-0) 20%, transparent 20%);
    background-size: 10% 10%, 20% 20%, 15% 15%, 20% 20%, 18% 18%, 10% 10%, 15% 15%, 10% 10%, 18% 18%;
}

.eav-special-conten-button .uagb-button__wrapper::after,
.learndash-wrapper .eav-completar::after {
    bottom: -75%;
    background-image:
        radial-gradient(circle, var(--ast-global-color-0) 20%, transparent 20%),
        radial-gradient(circle, var(--ast-global-color-0) 20%, transparent 20%),
        radial-gradient(circle, transparent 10%, var(--ast-global-color-0) 15%, transparent 20%),
        radial-gradient(circle, var(--ast-global-color-0) 20%, transparent 20%),
        radial-gradient(circle, var(--ast-global-color-0) 20%, transparent 20%),
        radial-gradient(circle, var(--ast-global-color-0) 20%, transparent 20%),
        radial-gradient(circle, var(--ast-global-color-0) 20%, transparent 20%);
    background-size: 15% 15%, 20% 20%, 18% 18%, 20% 20%, 15% 15%, 10% 10%, 20% 20%;
}

.eav-special-conten-button .uagb-button__wrapper.is-burbujas::before,
.learndash-wrapper .eav-completar.is-burbujas::before {
    display: block;
    animation: eav-burbujas-arriba ease-in-out 0.75s forwards;
}

.eav-special-conten-button .uagb-button__wrapper.is-burbujas::after,
.learndash-wrapper .eav-completar.is-burbujas::after {
    display: block;
    animation: eav-burbujas-abajo ease-in-out 0.75s forwards;
}

@keyframes eav-burbujas-arriba {
    0% {
        background-position: 5% 90%, 10% 90%, 10% 90%, 15% 90%, 25% 90%, 25% 90%, 40% 90%, 55% 90%, 70% 90%;
    }
    50% {
        background-position: 0% 80%, 0% 20%, 10% 40%, 20% 0%, 30% 30%, 22% 50%, 50% 50%, 65% 20%, 90% 30%;
    }
    100% {
        background-position: 0% 70%, 0% 10%, 10% 30%, 20% -10%, 30% 20%, 22% 40%, 50% 40%, 65% 10%, 90% 20%;
        background-size: 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%;
    }
}

@keyframes eav-burbujas-abajo {
    0% {
        background-position: 10% -10%, 30% 10%, 55% -10%, 70% -10%, 85% -10%, 70% -10%, 70% 0%;
    }
    50% {
        background-position: 0% 80%, 20% 80%, 45% 60%, 60% 100%, 75% 70%, 95% 60%, 105% 0%;
    }
    100% {
        background-position: 0% 90%, 20% 90%, 45% 70%, 60% 110%, 75% 80%, 95% 70%, 110% 10%;
        background-size: 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .eav-special-conten-button .uagb-button__wrapper.is-burbujas::before,
    .eav-special-conten-button .uagb-button__wrapper.is-burbujas::after,
    .learndash-wrapper .eav-completar.is-burbujas::before,
    .learndash-wrapper .eav-completar.is-burbujas::after {
        display: none;
    }
}

/* Botón Completar: conserva el tamaño de LearnDash; el resto, como «Contenido especial» */
.learndash-wrapper .eav-completar {
    display: block;
    max-width: 385px;
}

.learndash-wrapper .eav-completar__boton {
    position: relative;
    z-index: 0;
    display: block;
    overflow: hidden;
    border-radius: 10px;
    background-color: var(--ast-global-color-0);
    transition: transform ease-in 0.1s;
}

.learndash-wrapper .eav-completar__boton:active {
    transform: scale(0.9);
}

.learndash-wrapper:not(.ld-registration__outer-wrapper):not(.learndash-wrapper--modern) .eav-completar .learndash_mark_complete_button {
    max-width: 100%;
    border-radius: 10px;
}

.learndash-wrapper:not(.ld-registration__outer-wrapper):not(.learndash-wrapper--modern) .eav-completar .learndash_mark_complete_button:not([disabled]) {
    background: transparent !important;
    color: var(--ast-global-color-4) !important;
}

@media (max-width: 960px) {
    .learndash-wrapper .eav-completar {
        max-width: 100%;
    }
}
/* Botones dentro de lecciones y módulos: sombra de las tarjetas de la home y relleno al pasar el ratón (el radio viene de Astra) */
.single-sfwd-lessons .wp-block-button__link,
.single-sfwd-topic .wp-block-button__link {
    position: relative;
    z-index: 1;
    overflow: hidden;
    box-shadow: 0 4px 12px color-mix(in srgb, var(--ast-global-color-1) 25%, transparent) !important;
    transition: all 0.3s;
}

.single-sfwd-lessons .wp-block-button__link::before,
.single-sfwd-topic .wp-block-button__link::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background-color: color-mix(in srgb, var(--ast-global-color-0) 75%, #000);
    transition: all 0.3s;
    z-index: -1;
}

.single-sfwd-lessons .wp-block-button__link:hover::before,
.single-sfwd-topic .wp-block-button__link:hover::before {
    width: 100%;
}

/* Ningún botón de la plataforma lleva borde */
.wp-block-button__link,
.wp-element-button,
.uagb-buttons-repeater,
.ast-button,
.ast-outline-button,
.ast-custom-button,
.button,
button,
input[type="submit"],
input[type="button"],
input[type="reset"],
.ld-button {
    border: none !important;
}

/* Fin botones de pantalla principal */

.eav-ld-home-section .ld-progress-percentage {
    color: var(--ast-global-color-1) !important;
}

.eav-student-courses-item-list {
    display: flex;
}

.eav-ld-item-list-preview{
    flex: 0.35;
    padding: 0px !important;
}

.ld-item-list-item {
    padding: 20px 20px !important;
    border-style: solid !important;
    border-width: 1px !important;
    border-color: var(--ast-global-color-0) !important;
}

.eav-ld-item-list-item-expanded {
    flex: 0.65;
}

/* Móvil: las filas de secciones del Área privada se apilan */
@media (max-width: 600px) {
    .eav-student-courses-item-list {
        flex-direction: column;
    }

    .eav-ld-item-list-preview,
    .eav-ld-item-list-item-expanded {
        flex: none;
        width: 100%;
    }
}

/* Ocultamos el enlace "Volver al módulo/sección" de las lecciones/módulos */
a.ld-primary-color.ld-course-step-back {
    display: none !important;
}

/* Fin LearnDash */


/* Vista página lección */

.eav-ld-course-title h1{
    font-size: 48px;
    margin-top: 0px !important;
}

/* Título de la sección a la izquierda y buscador a la derecha (js/eav-barra-lateral.js) */
.eav-ld-course-title {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1rem 2rem;
    margin-bottom: 20px;
}

.eav-ld-course-title h1 {
    margin-bottom: 0;
}

.eav-ld-buscador {
    position: relative;
    flex: 0 1 320px;
}

.eav-ld-buscador .eav-ld-buscador-campo {
    box-sizing: border-box;
    width: 100%;
    height: 44px;
    padding: 0 1.25rem 0 2.75rem;
    border: 1px solid var(--ast-global-color-7);
    border-radius: 10rem;
    background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23092823' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E") no-repeat 1rem center / 18px;
    color: var(--ast-global-color-1);
    font-size: 16px;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.eav-ld-buscador .eav-ld-buscador-campo:focus {
    border-color: var(--ast-global-color-0);
    outline: none;
    box-shadow: 0 0 0 3px rgba(200, 161, 88, 0.25);
}

.eav-ld-buscador-resultados {
    position: absolute;
    top: calc(100% + 0.5rem);
    right: 0;
    z-index: 20;
    width: max(100%, 400px);
    max-width: calc(100vw - 40px);
    max-height: 360px;
    overflow-y: auto;
    margin: 0;
    padding: 0.4rem 0;
    list-style: none;
    background: #fff;
    border-radius: 6px;
    box-shadow: 0 4px 12px color-mix(in srgb, var(--ast-global-color-1) 25%, transparent);
}

.eav-ld-buscador-resultados[hidden] {
    display: none;
}

.eav-ld-buscador-enlace {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    min-height: 44px;
    padding: 0.5rem 1rem;
    color: var(--ast-global-color-1);
    text-decoration: none;
    transition: background-color 0.2s, box-shadow 0.2s;
}

/* Al pasar el ratón o con las flechas: fondo beige y franja dorada */
.eav-ld-buscador-enlace:hover,
.eav-ld-buscador-resultados .is-activo .eav-ld-buscador-enlace {
    background-color: var(--ast-global-color-5);
    box-shadow: inset 3px 0 0 var(--ast-global-color-0);
    color: var(--ast-global-color-1);
}

.eav-ld-buscador-textos {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.eav-ld-buscador-titulo {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3;
}

.eav-ld-buscador-titulo mark {
    padding: 0 1px;
    border-radius: 3px;
    background: color-mix(in srgb, var(--ast-global-color-0) 35%, transparent);
    color: inherit;
}

.eav-ld-buscador-tipo {
    font-size: 14px;
    line-height: 1.3;
    opacity: 0.7;
}

.eav-ld-buscador-vacio {
    padding: 0.75rem 1rem;
    font-size: 14px;
    color: var(--ast-global-color-1);
}

@media (max-width: 544px) {
    .eav-ld-buscador {
        flex-basis: 100%;
    }

    .eav-ld-buscador-resultados {
        left: 0;
        width: auto;
        max-width: none;
    }
}

.eav-ld-lesson-global {
    padding: 2rem 10rem;
}

.eav-ld-sidebar{
    width:285px;
    flex-shrink:0;
    background:var(--ast-global-color-5);
    border:1px solid #ddd;
    border-radius:6px;
    max-height: 700px;
    overflow-y: auto;

    /* Scroll personalizado con la paleta de Astra (Firefox) */
    scrollbar-width: thin;
    scrollbar-color: var(--ast-global-color-0) var(--ast-global-color-5);
}

/* Scroll personalizado con la paleta de Astra (Chrome, Edge, Safari) */
.eav-ld-sidebar::-webkit-scrollbar {
    width: 10px;
}

.eav-ld-sidebar::-webkit-scrollbar-track {
    background: var(--ast-global-color-5);
    border-radius: 6px;
}

.eav-ld-sidebar::-webkit-scrollbar-thumb {
    background-color: var(--ast-global-color-0);
    border-radius: 6px;
    border: 2px solid var(--ast-global-color-5);
}

.eav-ld-sidebar::-webkit-scrollbar-thumb:hover {
    background-color: var(--ast-global-color-1);
}

.eav-ld-sidebar::-webkit-scrollbar-button {
    display: none;
    width: 0;
    height: 0;
}

.eav-ld-sidebar-header{
    background-color: var(--ast-global-color-1);
    border-radius: 6px 6px 0px 0px;
    padding: 0.5rem 1.5rem;
}

.eav-ld-sidebar-header h2{
    font-size: 24px;
    color: #FFF;
}

.eav-ld-lesson-with-sidebar {
    display: flex;
    gap: 2rem;
    align-items: flex-start;
}

.ld-lesson-main-content {
    flex: 1;
    min-width: 0;
}

.eav-ld-sidebar-lessons {
    padding: 0rem 1rem !important;
}

.eav-ld-sidebar-individual-lesson {
    border-bottom: solid 1px var(--ast-global-color-0);
    list-style: none;
}

.eav-ld-lesson-row {
    display: flex;
    align-items: center;
    font-size: 14px;
    gap: 0.5rem;
    padding: 0.5rem 0.6rem;
    cursor: pointer;
}

.eav-ld-sidebar-individual-lesson:last-child{
    border-bottom: none;
}

.eav-ld-sidebar-individual-lesson.is-current > .eav-ld-lesson-row {
    background: var(--ast-global-color-0);
    border-radius: 5px;
}

.eav-ld-sidebar-individual-lesson.is-current > .eav-ld-lesson-row a {
    color: #fff;
    font-weight: bold;
}

.eav-ld-lesson-icon {
    width: 15px;
    height: 15px;
    border: 1px solid currentColor;
    border-radius: 50%;
    flex-shrink: 0;
    display: inline-block;
}

.eav-ld-lesson-icon.is-completed {
    background: var(--ast-global-color-0);
    border-color: var(--ast-global-color-1);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 6l3 3 5-5' stroke='%23fff' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
    background-size: 10px;
    background-repeat: no-repeat;
    background-position: center;    
    border: none;
}

.eav-ld-sidebar-topics-wrapper {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}


.eav-ld-sidebar-individual-lesson.is-open > .eav-ld-sidebar-topics-wrapper {
    /*max-height: 500px;*/
}

.eav-ld-accordion-arrow {
    margin-left: auto;
    font-size: 0.75em;
    transition: transform 0.2s;
    flex-shrink: 0;
}

.eav-ld-sidebar-individual-lesson.is-open > .eav-ld-lesson-row .eav-ld-accordion-arrow {
    transform: rotate(180deg);
}

.eav-ld-sidebar-topics{
    padding: 0rem 1.5rem !important;
    background: #F8F8F8;
}

.eav-ld-sidebar-individual-topic{
    display: flex;
    align-items: center;
    font-size: 12px;
    gap: 0.5rem;    
    padding: 0.5rem 0.6rem;
    border-radius: 0px;
    border-bottom: solid;
    border-width: 1px;
    border-color: var(--ast-global-color-0);
}

.eav-ld-sidebar-individual-topic:last-child{
    border-bottom: none;
}

.eav-ld-sidebar-individual-topic.is-current {
    background: #F0E9DD;
}


/* responsive */
@media (max-width: 1200px){
    .eav-ld-lesson-global {
        padding: 0;
    }
}
/* Botón del índice: solo en el móvil */
.eav-ld-sidebar-toggle {
    display: none;
}

/* Tableta: barra lateral algo más estrecha */
@media (max-width: 1024px) {
    .eav-ld-sidebar {
        width: 240px;
    }
}

/* Tableta y móvil: apila verticalmente, índice plegado y zonas táctiles más grandes */
@media (max-width: 921px) {
    .eav-ld-lesson-with-sidebar {
        flex-direction: column;
        align-items: stretch;
        gap: 1.5rem;
    }

    .eav-ld-sidebar {
        width: 100%;
        order: -1;
        max-height: none;
        overflow-y: visible;
    }

    .eav-ld-course-title h1 {
        font-size: 32px;
        line-height: 1.2;
    }

    .eav-ld-sidebar-header {
        padding: 0.75rem 1rem;
    }

    .eav-ld-sidebar-header h2 {
        font-size: 20px;
    }

    .eav-ld-sidebar-toggle {
        display: block;
        width: 100%;
        margin: 0.75rem 0 0.25rem;
        padding: 0.6rem 1rem;
        background: transparent;
        border: 1px solid var(--ast-global-color-0);
        border-radius: 6px;
        color: #fff;
        font-size: 15px;
        cursor: pointer;
    }

    .eav-ld-sidebar .eav-ld-sidebar-lessons {
        display: none;
    }

    .eav-ld-sidebar.is-indice-abierto .eav-ld-sidebar-lessons {
        display: block;
    }

    .eav-ld-lesson-row {
        font-size: 15px;
        padding: 0.75rem 0.6rem;
    }

    .eav-ld-sidebar-topics {
        padding: 0 0.75rem !important;
    }

    .eav-ld-sidebar-individual-topic {
        font-size: 14px;
        padding: 0.65rem 0.6rem;
    }

    .eav-ld-locked-message {
        padding: 24px 16px;
    }
}

@media (max-width: 480px) {
    .eav-ld-course-title h1 {
        font-size: 28px;
    }
}
/* Fin vista página lección */

.eav-ld-locked-message {
    align-items: center;
    text-align: center;
    padding: 50px;
}

/* P vacíos hijos directos del contenedor principal */
.eav-main-section-container > p,
.eav-ld-home-section > p,
.learndash-course-complete-message > p {
    display: none;
    margin: 0;
    padding: 0;
}

.eav-ld-home-section {
  transition: transform .2s; /* Animation */
}

/* El zoom solo con ratón: en el móvil el toque deja la tarjeta ampliada y se sale de la pantalla */
@media (hover: hover) {
    .eav-ld-home-section:hover {
        transform: scale(1.05);
    }
}

/* Personalizar aspecto del avatar del Área privada */
.custom-avatar {
    border-radius: 360px;
    border-style: solid;
    border-width: 2px;
    border-color: var(--ast-global-color-0);
}

/* Fin animación y texto botones */

/* Inicio: Modificaciones Profile Builder */

#pass-strength-result {
    width: auto !important;
}

p.form-submit {
    text-align: center !important;
}

#wppb-edit-user label {
    color: var(--ast-global-color-1);
}

#wppb-edit-user input.text-input {
    border-color: var(--ast-global-color-0);
}

/* Formulario de acceso: etiquetas más pequeñas encima de cada campo */
#wppb-login-wrap #wppb-loginform p.login-username label,
#wppb-login-wrap #wppb-loginform p.login-password label {
    float: none;
    display: block;
    width: auto;
    margin-bottom: 6px;
    font-size: 0.875em;
    font-weight: 600;
}

#wppb-login-wrap #wppb-loginform p.login-username input,
#wppb-login-wrap #wppb-loginform p.login-password .wppb-password-field-container {
    float: none;
    width: 100%;
}

#wppb-login-wrap p.login-submit {
    text-align: left !important;
}

/* Botón Acceder: relleno más oscuro que avanza al pasar el ratón, como el resto de botones.
   Es un input, que no admite ::before, así que el relleno es un degradado que se desplaza. */
#wppb-login-wrap .login-submit .button-primary {
    background: linear-gradient(to right, color-mix(in srgb, var(--ast-global-color-0) 75%, #000) 50%, var(--ast-global-color-0) 50%) right / 200% 100% no-repeat !important;
    color: var(--ast-global-color-4) !important;
    box-shadow: none !important;
    transition: background-position 0.3s;
}

#wppb-login-wrap .login-submit .button-primary:hover,
#wppb-login-wrap .login-submit .button-primary:focus-visible {
    background-position: left !important;
}

@media (prefers-reduced-motion: reduce) {
    #wppb-login-wrap .login-submit .button-primary {
        transition: none;
    }
}

/* Fin: Modificaciones Profile Builder */

/* Inicio: Modificaciones WooCommerce */
button[name="add-to-cart"] {
    display: none !important;
}
/* Inicio: Modificaciones WooCommerce */

/* Círculos de las lecciones que se pueden pulsar para marcarlas (inc/eav-marcar-paso.php) */
.eav-ld-lesson-icon[data-eav-paso],
.ld-status-icon[data-eav-paso] {
    position: relative;
    cursor: pointer;
    transition: box-shadow 0.15s ease, opacity 0.15s ease;
}

/* Zona táctil más grande que el círculo */
.eav-ld-lesson-icon[data-eav-paso]::after {
    content: "";
    position: absolute;
    inset: -10px;
}

.eav-ld-lesson-icon[data-eav-paso]:hover,
.ld-status-icon[data-eav-paso]:hover {
    box-shadow: 0 0 0 3px rgba(200, 161, 88, 0.45);
}

.eav-ld-lesson-icon[data-eav-paso]:focus-visible,
.ld-status-icon[data-eav-paso]:focus-visible {
    outline: 2px solid var(--ast-global-color-0);
    outline-offset: 2px;
}

.eav-ld-lesson-icon.is-cargando,
.ld-status-icon.is-cargando {
    opacity: 0.4;
    pointer-events: none;
}

.eav-marcar-aviso {
    position: fixed;
    left: 50%;
    bottom: 24px;
    transform: translateX(-50%);
    max-width: calc(100% - 32px);
    padding: 10px 16px;
    background: var(--ast-global-color-1);
    color: #fff;
    font-size: 14px;
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    z-index: 99999;
}

/* Tarjeta de la Home dentro del bloque LearnDash Student (Soporte Activo): mismo alto que las demás. En los contenedores de ancho completo, Spectra mete los bloques en .uagb-container-inner-blocks-wrap */
.wp-block-uagb-container > .learndash-wrapper:has(.eav-ld-home-section),
.uagb-container-inner-blocks-wrap > .learndash-wrapper:has(.eav-ld-home-section),
.learndash-wrapper:has(.eav-ld-home-section) > .learndash-course-student-message {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-self: stretch;
    width: 100%;
}

.learndash-course-student-message > .eav-ld-home-section,
.wp-block-uagb-container > .eav-ld-home-section:only-child {
    flex: 1;
    width: 100%;
}

/* Título página principal */
.eav-main-title p {
    text-shadow: 1px 1px 50px var(--ast-global-color-1);
}

/* Responsive: A – Home, Área privada y Panel del tutor */
@media (max-width: 921px) {
    /* Área privada: campos del formulario de 44 px y 16 px de letra */
    #wppb-edit-user input.text-input {
        box-sizing: border-box;
        min-height: 44px;
        padding: 8px 12px;
        font-size: 16px;
    }
}

/* Home: la tarjeta de Soporte Activo (dentro del bloque de LearnDash) mide en escritorio lo mismo que las demás */
@media (min-width: 922px) {
    .page-id-15 .wp-block-uagb-container.uagb-block-64fdfbd5 > .uagb-container-inner-blocks-wrap > .learndash-wrapper {
        max-width: 30%;
        width: 100%;
    }
}

/* Home: dos tarjetas por fila en tableta; por debajo de 768 px Spectra ya las pone a una columna */
@media (min-width: 768px) and (max-width: 921px) {
    .page-id-15 .wp-block-uagb-container.uagb-block-64fdfbd5 > .uagb-container-inner-blocks-wrap > * {
        flex: 0 1 calc(50% - 10px);
        max-width: calc(50% - 10px);
    }
}

@media (max-width: 544px) {
    /* Home: barra de progreso a todo el ancho */
    .page-id-15 .eav-progreso {
        max-width: 100%;
    }

    /* Área privada: «Actualizar mis datos» a ancho completo */
    #wppb-edit-user .form-submit .submit {
        width: 100%;
    }
}
/* Fin responsive: A – Home, Área privada y Panel del tutor */

/* Responsive: B – LearnDash */
@media (max-width: 921px) {
    /* Índice: botón y filas de 44 px de alto */
    .eav-ld-sidebar-toggle {
        min-height: 44px;
    }

    .eav-ld-lesson-row,
    .eav-ld-sidebar-individual-topic {
        padding-top: 0;
        padding-bottom: 0;
    }

    .eav-ld-lesson-row > a,
    .eav-ld-sidebar-individual-topic > a {
        display: flex;
        align-items: center;
        min-height: 44px;
    }

    .eav-ld-sidebar-individual-topic > a {
        flex: 1;
    }

    .eav-ld-accordion-arrow {
        display: flex;
        align-items: center;
        justify-content: center;
        min-width: 44px;
        min-height: 44px;
    }

    /* Círculos para marcar: zona táctil de unos 44 px */
    .eav-ld-lesson-icon[data-eav-paso]::after {
        inset: -15px -8px;
    }

    .ld-status-icon[data-eav-paso]::after {
        content: "";
        position: absolute;
        inset: -9px;
    }

    /* Anterior y Siguiente: 44 px de alto */
    .learndash-wrapper .ld-content-actions a.ld-button {
        min-height: 44px;
    }

    /* Completar centrado: LearnDash le pone margen y texto a la izquierda por debajo de 640 px */
    .learndash-wrapper:not(.ld-registration__outer-wrapper):not(.learndash-wrapper--modern) .ld-content-actions .learndash_mark_complete_button {
        margin-left: 0;
        text-align: center;
    }
}

@media (max-width: 544px) {
    /* Botones de la lección apilados con 12 px de separación */
    .learndash-wrapper:not(.ld-registration__outer-wrapper):not(.learndash-wrapper--modern) .ld-content-actions .ld-content-action {
        padding: 6px 0;
    }

    .learndash-wrapper .ld-content-actions .ld-content-action.ld-empty {
        display: none;
    }

    /* Correos y enlaces largos de las listas de Spectra sin salirse de la pantalla */
    .learndash-wrapper .uagb-icon-list__label {
        min-width: 0;
        overflow-wrap: anywhere;
    }
}
/* Fin responsive: B – LearnDash */

/* Responsive: C – Global y resto */
@media (max-width: 921px) {
    /* Interlineado de los títulos grandes */
    h1,
    h2,
    h3,
    .entry-content :where(h1, h2, h3) {
        line-height: 1.2em;
    }

    /* Cuenta de la cabecera: zona táctil de 44 px */
    #ast-mobile-header .ast-header-account-link {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        min-height: 44px;
    }

    /* Enlaces del pie: zona táctil de 44 px */
    .site-footer .ast-builder-html-element a {
        display: inline-flex;
        align-items: center;
        min-height: 44px;
    }

    /* Ficha de producto: la imagen no se estira por encima de su tamaño */
    .single-product div.product div.images {
        max-width: 500px;
        margin-left: auto;
        margin-right: auto;
    }

    /* Carrito: campo del cupón de 44 px */
    .woocommerce-cart table.cart td.actions .coupon .input-text {
        min-height: 44px;
    }
}

@media (max-width: 544px) {
    /* Finalizar compra: campos a ancho completo */
    body.ast-modern-checkout .woocommerce form.woocommerce-checkout .form-row.form-row-first,
    body.ast-modern-checkout .woocommerce form.woocommerce-checkout .form-row.form-row-last,
    body.ast-modern-checkout .woocommerce form.woocommerce-checkout .form-row.ast-column-50,
    body.ast-modern-checkout .woocommerce form.woocommerce-checkout .form-row.ast-column-33 {
        width: 100%;
    }

    /* Tabla de cookies con scroll dentro de su caja */
    .page-id-3400 .wp-block-table table.has-fixed-layout {
        min-width: 640px;
    }
}
/* Fin responsive: C – Global y resto */
