@charset "UTF-8";@media screen and (max-width: 900px) and (min-width: 320px) {

.movie-details-wrap .movie-info-warpper, .celebrity-details-wrap .celebrity-info-warpper {
    float: inherit;
}
.user-reviews .review-box {
    background: #edf6fc;
    padding: 30px;
    margin-left: inherit;
    position: relative;
}
}

.trailer-image-wrap img {
    width: 100%;
    height: 230px !important;
}

.item .movie-poster img {
    -webkit-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}
#spmoviedb-movie .item {
    position: relative;
}

.item .movie-poster {
    overflow: hidden;
    position: relative;
    background-color: #000;
    -webkit-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}

.item:hover .movie-poster img {
    -webkit-transform: scale(1.3);
    -ms-transform: scale(1.3);
    -o-transform: scale(1.3);
    transform: scale(1.3);
    opacity: .5;
}
@media (max-width:1180px) {

/* Oculta menú escritorio */
#sp-header .sp-megamenu-wrapper{
    display:none !important;
}

/* Muestra hamburguesa */
#sp-header .burger-icon,
#sp-header #offcanvas-toggler,
#sp-header .sp-mobile-menu-toggler{
    display:block !important;
}

/* =========================================================
   FOTO SUPERIOR MOVIL + HERO
   AJUSTE ESPACIO PERFECTO
   ========================================================= */

/* CONTENEDOR FOTO SUPERIOR */
.hero-mobile-top,
.hero-mobile-top .sppb-row,
.hero-mobile-top .sppb-row-container,
.hero-mobile-top .sppb-column,
.hero-mobile-top .sppb-column-addons{
    margin:0 !important;
    padding:0 !important;
    line-height:0;
}

/* IMAGEN */
.hero-mobile-top img{
    display:block;
    width:100%;
    height:auto;
    margin:0 !important;
    padding:0 !important;
}

/* PEQUEÑA SEPARACIÓN ELEGANTE */
.hero-mobile-top{
    margin-bottom:10px !important;
}

/* HERO */
.hero-sonar,
.hero-sonar .sppb-row,
.hero-sonar .sppb-row-container,
.hero-sonar .sppb-column,
.hero-sonar .sppb-column-addons{
    margin-top:0 !important;
    padding-top:0 !important;
}

/* TITULOS HERO */
.hero-sonar h1,
.hero-sonar h2,
.hero-sonar h3{
    margin-top:0 !important;
}

} /* cierre de @media (max-width:1180px) del custom.css original */
/* =========================================================
   SONAR / EDULIF / SP LMS
   REDISEÑO "TODOS LOS CURSOS"
   Solo afecta a: com_splms -> view-courses
   ========================================================= */

.com-splms.view-courses {
    --sonar-green: #068538;
    --sonar-green-dark: #28542c;
    --sonar-title: #11212d;
    --sonar-text: #252525;
    --sonar-muted: #718390;
    --sonar-border: #e3eae6;
    --sonar-soft: #f7faf8;
}

/* ---------- Filtros superiores ---------- */
.com-splms.view-courses .splms-courses-filters-top {
    margin: 0 0 34px 0;
    padding: 18px 20px;
    background: #ffffff;
    border: 1px solid var(--sonar-border);
    border-radius: 14px;
    box-shadow: 0 8px 26px rgba(17, 33, 45, 0.06);
}

.com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form {
    margin: 0;
    padding: 0;
    gap: 12px;
    align-items: center;
}

.com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .splms-course-filter-categories .filter-toggler,
.com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .splms-course-filter-levels .filter-toggler,
.com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .splms-course-filter-types .filter-toggler {
    min-height: 46px;
    padding: 11px 18px;
    font-size: 14px;
    font-weight: 600;
    color: var(--sonar-text);
    background: #ffffff;
    border: 1px solid #dce5e0;
    border-radius: 10px;
    box-shadow: none;
    transition: border-color .2s ease, color .2s ease, box-shadow .2s ease;
}

.com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .filter-toggler:hover,
.com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .filter-toggler:focus {
    color: var(--sonar-green) !important;
    border-color: var(--sonar-green) !important;
    box-shadow: 0 0 0 3px rgba(6, 133, 56, 0.08);
}

.com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form ul.splms-filter-items {
    min-width: 220px;
    padding: 12px 14px;
    background: #ffffff;
    border: 1px solid var(--sonar-border);
    border-radius: 10px;
    box-shadow: 0 14px 34px rgba(17, 33, 45, 0.12);
}

/* Reemplaza el morado de Edulif en los checks por verde SONAR */
.com-splms.view-courses .splms-courses-filters-top .splms-course-filter-categories ul li .styled-checkbox:checked + label:before,
.com-splms.view-courses .splms-courses-filters-top .splms-course-filter-levels ul li .styled-checkbox:checked + label:before {
    background: var(--sonar-green) !important;
}

.com-splms.view-courses .splms-courses-filters-top .splms-course-filter-types > ul > li > .styled-checkbox:checked + label:after {
    background: var(--sonar-green) !important;
}

/* Botones del filtro */
.com-splms.view-courses .splms-courses-filters-top .splms-buttons-group {
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

.com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .splms-buttons-group .splms-submit-button {
    min-height: 46px;
    padding: 11px 24px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.3;
    color: #ffffff;
    background: var(--sonar-green) !important;
    border: 1px solid var(--sonar-green) !important;
    border-radius: 10px;
    text-transform: uppercase;
    box-shadow: none;
    transition: background-color .2s ease, border-color .2s ease, transform .2s ease;
}

.com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .splms-buttons-group .splms-submit-button:hover,
.com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .splms-buttons-group .splms-submit-button:focus,
.com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .splms-buttons-group .splms-submit-button:active {
    color: #ffffff !important;
    background: var(--sonar-green-dark) !important;
    border-color: var(--sonar-green-dark) !important;
    transform: translateY(-1px);
}

.com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .splms-buttons-group .splms-action-reset {
    min-height: 46px;
    padding: 11px 17px 11px 40px;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.3;
    color: var(--sonar-muted);
    background: var(--sonar-soft) !important;
    border: 1px solid var(--sonar-border) !important;
    border-radius: 10px;
}

.com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .splms-buttons-group .splms-action-reset:after {
    top: 12px;
    left: 16px;
    color: var(--sonar-muted);
}

.com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .splms-buttons-group .splms-action-reset:hover,
.com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .splms-buttons-group .splms-action-reset:focus,
.com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .splms-buttons-group .splms-action-reset:active {
    color: var(--sonar-green) !important;
    background: #ffffff !important;
    border-color: var(--sonar-green) !important;
}

/* ---------- Rejilla ---------- */
.com-splms.view-courses .splms-courses-list .splms-row > div {
    margin-bottom: 28px;
}

/* ---------- Tarjetas ---------- */
.com-splms.view-courses .splms-courses-list .splms-course {
    height: 100%;
    background: #ffffff;
    border: 1px solid var(--sonar-border);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 5px 18px rgba(17, 33, 45, 0.06);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.com-splms.view-courses .splms-courses-list .splms-course:hover {
    transform: translateY(-4px);
    border-color: #d6e2db;
    box-shadow: 0 14px 34px rgba(17, 33, 45, 0.11);
}

/* Imagen */
.com-splms.view-courses .splms-courses-list .splms-course .lassons-course-listing-img-wrapper {
    overflow: hidden;
    background: #f0f4f2;
}

.com-splms.view-courses .splms-courses-list .splms-course .lassons-course-listing-img-wrapper img {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    border-radius: 0;
    transition: transform .35s ease;
}

.com-splms.view-courses .splms-courses-list .splms-course:hover .lassons-course-listing-img-wrapper img {
    transform: scale(1.025);
}

/* Nivel */
.com-splms.view-courses .splms-courses-list .splms-course .lassons-course-listing-img-wrapper span.course-level {
    top: 12px;
    left: 12px;
    height: auto;
    line-height: 1.2;
    padding: 6px 11px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .20px;
    color: #1f7a3d !important;
    background: #dff4e7 !important;
    border: 1px solid #c7e9d3;
    border-radius: 999px;
    box-shadow: none;
}

.com-splms.view-courses .splms-courses-list .splms-course .splms-course-info-wrap {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    background: #ffffff;
}

.com-splms.view-courses .splms-courses-list .splms-course .splms-course-info {
    padding: 18px 18px 16px;
}

/* Precio */
.com-splms.view-courses .splms-courses-list .splms-course .splms-course-info .splms-course-meta {
    margin-bottom: 12px;
    align-items: center;
    gap: 8px;
}

.com-splms.view-courses .splms-courses-list .splms-course .splms-course-info .splms-course-meta span.lassons-course-price .splms-price-box ins {
    margin-right: 5px;
    font-size: 24px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: 0;
    color: #ff5248;
    text-decoration: none;
}

.com-splms.view-courses .splms-courses-list .splms-course .splms-course-info .splms-course-meta span.lassons-course-price .splms-price-box del {
    font-size: 15px;
    font-weight: 600;
    color: #46515b !important;
    opacity: 1 !important;
    text-decoration-color: #46515b !important;
    text-decoration-thickness: 1.5px;
}

.com-splms.view-courses .splms-courses-list .splms-course .splms-course-info .splms-course-meta .lassons-course-discount-price {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 26px;
    padding: 5px 10px;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: .15px;
    color: #d92d2d !important;
    background: #fed9d7 !important;
    border: 1px solid #fbc7c4;
    border-radius: 999px;
    white-space: nowrap;
    box-shadow: none;
}

/* Título */
.com-splms.view-courses .splms-courses-list .splms-course .splms-course-info .splms-courses-title {
    min-height: 48px;
    max-height: 48px;
    margin: 0;
    font-size: 18px;
    font-weight: 700;
    line-height: 24px;
    letter-spacing: 0;
    color: var(--sonar-title);
    -webkit-line-clamp: 2;
    line-clamp: 2;
}

.com-splms.view-courses .splms-courses-list .splms-course .splms-course-info .splms-courses-title a {
    color: var(--sonar-title);
}

.com-splms.view-courses .splms-courses-list .splms-course .splms-course-info .splms-courses-title a:hover,
.com-splms.view-courses .splms-courses-list .splms-course .splms-course-info .splms-courses-title a:focus {
    color: var(--sonar-green);
}

/* ---------- Botón VER CURSO ---------- */
.com-splms.view-courses .splms-courses-list .splms-course .lasons-course-listing-button-wrap {
    margin-top: auto;
    padding: 14px 16px 16px;
    background: #ffffff;
    border-top: 1px solid #edf1ef;
}

.com-splms.view-courses .splms-courses-list .splms-course .lasons-course-listing-button-wrap a {
    width: 100%;
    padding: 12px 18px !important;
    font-size: 15px !important;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: .15px;
    color: #ffffff !important;
    background: var(--sonar-green) !important;
    border: 1px solid var(--sonar-green) !important;
    border-radius: 10px !important;
    text-align: center;
    text-transform: none;
    box-shadow: none;
    transition: background-color .2s ease, border-color .2s ease, transform .2s ease;
}

.com-splms.view-courses .splms-courses-list .splms-course .lasons-course-listing-button-wrap a:hover,
.com-splms.view-courses .splms-courses-list .splms-course .lasons-course-listing-button-wrap a:focus,
.com-splms.view-courses .splms-courses-list .splms-course .lasons-course-listing-button-wrap a:active {
    color: #ffffff !important;
    background: var(--sonar-green-dark) !important;
    border-color: var(--sonar-green-dark) !important;
    outline: none;
    box-shadow: none;
    transform: translateY(-1px);
}

.com-splms.view-courses .splms-badge-free {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 26px;
    padding: 5px 10px;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: .15px;
    color: #1f7a3d !important;
    background: #dff4e7 !important;
    border: 1px solid #c7e9d3;
    border-radius: 999px;
    white-space: nowrap;
    box-shadow: none;
    transform: rotate(-3deg);
    transform-origin: center;
}

/* ---------- Paginación ---------- */
.com-splms.view-courses .pagination {
    gap: 6px;
    margin-top: 28px;
}

.com-splms.view-courses .pagination .page-item {
    padding: 0;
}

.com-splms.view-courses .pagination .page-item .page-link {
    display: inline-flex;
    min-width: 40px;
    height: 40px;
    padding: 0 12px;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 700;
    color: var(--sonar-muted);
    background: #ffffff;
    border: 1px solid var(--sonar-border);
    border-radius: 10px;
    box-shadow: none;
}

.com-splms.view-courses .pagination .page-item .page-link:hover,
.com-splms.view-courses .pagination .page-item .page-link:focus {
    color: var(--sonar-green);
    background: #ffffff;
    border-color: var(--sonar-green);
}

.com-splms.view-courses .pagination .page-item.active .page-link {
    width: auto;
    min-width: 40px;
    height: 40px;
    padding: 0 12px;
    color: #ffffff;
    background: var(--sonar-green);
    border: 1px solid var(--sonar-green);
    border-radius: 10px;
}

.com-splms.view-courses .pagination .page-item.active .page-link:hover,
.com-splms.view-courses .pagination .page-item.active .page-link:focus,
.com-splms.view-courses .pagination .page-item.active .page-link:active {
    color: #ffffff;
    background: var(--sonar-green-dark);
    border-color: var(--sonar-green-dark);
}

/* ---------- Responsive ---------- */
@media (max-width: 767px) {
    .com-splms.view-courses .splms-courses-filters-top {
        padding: 14px;
        margin-bottom: 24px;
        border-radius: 12px;
    }

    .com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form {
        gap: 8px;
    }

    .com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .splms-course-filter-categories,
    .com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .splms-course-filter-levels,
    .com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .splms-course-filter-types {
        width: 100%;
    }

    .com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .splms-course-filter-categories .filter-toggler,
    .com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .splms-course-filter-levels .filter-toggler,
    .com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .splms-course-filter-types .filter-toggler {
        width: 100%;
        margin-bottom: 0;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .com-splms.view-courses .splms-courses-filters-top .splms-buttons-group {
        width: 100%;
        margin: 4px 0 0;
        padding: 0;
    }

    .com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .splms-buttons-group .splms-submit-button,
    .com-splms.view-courses .splms-courses-filters-top #splms-courses-filters-form .splms-buttons-group .splms-action-reset {
        flex: 1 1 50%;
        font-size: 13px;
    }

    .com-splms.view-courses .splms-courses-list .splms-row > div {
        margin-bottom: 20px;
    }

    .com-splms.view-courses .splms-courses-list .splms-course .splms-course-info {
        padding: 16px;
    }

    .com-splms.view-courses .splms-courses-list .splms-course .splms-course-info .splms-course-meta span.lassons-course-price .splms-price-box ins {
        font-size: 22px;
    }

    .com-splms.view-courses .splms-courses-list .splms-course .splms-course-info .splms-courses-title {
        font-size: 17px;
        line-height: 23px;
        min-height: 46px;
        max-height: 46px;
    }
}


/* =========================================================
   SONAR / EDULIF / SP LMS
   MISMO DISEÑO PARA EL MÓDULO DE CURSOS
   Afecta solo a: .mod-splms-courses
   Conserva el número de columnas configurado en el módulo
   ========================================================= */

.mod-splms-courses {
    --sonar-green: #068538;
    --sonar-green-dark: #28542c;
    --sonar-title: #11212d;
    --sonar-text: #252525;
    --sonar-muted: #718390;
    --sonar-border: #e3eae6;
    --sonar-soft: #f7faf8;
}

/* Separación entre tarjetas */
.mod-splms-courses .splms-courses-list > div {
    margin-bottom: 28px;
}

/* Tarjeta */
.mod-splms-courses .splms-courses-list .splms-course {
    height: 100%;
    background: #ffffff;
    border: 1px solid var(--sonar-border);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 5px 18px rgba(17, 33, 45, 0.06);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.mod-splms-courses .splms-courses-list .splms-course:hover {
    transform: translateY(-4px);
    border-color: #d6e2db;
    box-shadow: 0 14px 34px rgba(17, 33, 45, 0.11);
}

/* Imagen */
.mod-splms-courses .splms-courses-list .splms-course .lassons-course-listing-img-wrapper {
    overflow: hidden;
    background: #f0f4f2;
}

.mod-splms-courses .splms-courses-list .splms-course .lassons-course-listing-img-wrapper img {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    border-radius: 0;
    transition: transform .35s ease;
}

.mod-splms-courses .splms-courses-list .splms-course:hover .lassons-course-listing-img-wrapper img {
    transform: scale(1.025);
}

/* Badge nivel */
.mod-splms-courses .splms-courses-list .splms-course .lassons-course-listing-img-wrapper span.course-level {
    top: 12px;
    left: 12px;
    height: auto;
    line-height: 1.2;
    padding: 6px 11px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .20px;
    color: #1f7a3d !important;
    background: #dff4e7 !important;
    border: 1px solid #c7e9d3;
    border-radius: 999px;
    box-shadow: none;
}

/* Contenido */
.mod-splms-courses .splms-courses-list .splms-course .splms-course-info-wrap {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    background: #ffffff;
}

.mod-splms-courses .splms-courses-list .splms-course .splms-course-info {
    padding: 18px 18px 16px;
}

/* Precio */
.mod-splms-courses .splms-courses-list .splms-course .splms-course-info .splms-course-meta {
    margin-bottom: 12px;
    align-items: center;
    gap: 8px;
}

.mod-splms-courses .splms-courses-list .splms-course .splms-course-info .splms-course-meta span.lassons-course-price .splms-price-box ins {
    margin-right: 5px;
    font-size: 24px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: 0;
    color: #ff5248;
    text-decoration: none;
}

.mod-splms-courses .splms-courses-list .splms-course .splms-course-info .splms-course-meta span.lassons-course-price .splms-price-box del {
    font-size: 15px;
    font-weight: 600;
    color: #46515b !important;
    opacity: 1 !important;
    text-decoration-color: #46515b !important;
    text-decoration-thickness: 1.5px;
}

/* Badge descuento pastel */
.mod-splms-courses .splms-courses-list .splms-course .splms-course-info .splms-course-meta .lassons-course-discount-price {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 26px;
    padding: 5px 10px;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: .15px;
    color: #d92d2d !important;
    background: #fed9d7 !important;
    border: 1px solid #fbc7c4;
    border-radius: 999px;
    white-space: nowrap;
    box-shadow: none;
}

/* Título */
.mod-splms-courses .splms-courses-list .splms-course .splms-course-info .splms-courses-title {
    min-height: 48px;
    max-height: 48px;
    margin: 0;
    font-size: 18px;
    font-weight: 700;
    line-height: 24px;
    letter-spacing: 0;
    color: var(--sonar-title);
    -webkit-line-clamp: 2;
    line-clamp: 2;
}

.mod-splms-courses .splms-courses-list .splms-course .splms-course-info .splms-courses-title a {
    color: var(--sonar-title);
}

.mod-splms-courses .splms-courses-list .splms-course .splms-course-info .splms-courses-title a:hover,
.mod-splms-courses .splms-courses-list .splms-course .splms-course-info .splms-courses-title a:focus {
    color: var(--sonar-green);
}

/* Botón VER CURSO */
.mod-splms-courses .splms-courses-list .splms-course .lasons-course-listing-button-wrap {
    margin-top: auto;
    padding: 14px 16px 16px;
    background: #ffffff;
    border-top: 1px solid #edf1ef;
}

.mod-splms-courses .splms-courses-list .splms-course .lasons-course-listing-button-wrap a {
    width: 100%;
    padding: 12px 18px !important;
    font-size: 15px !important;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: .15px;
    color: #ffffff !important;
    background: var(--sonar-green) !important;
    border: 1px solid var(--sonar-green) !important;
    border-radius: 10px !important;
    text-align: center;
    text-transform: none;
    box-shadow: none;
    transition: background-color .2s ease, border-color .2s ease, transform .2s ease;
}

.mod-splms-courses .splms-courses-list .splms-course .lasons-course-listing-button-wrap a:hover,
.mod-splms-courses .splms-courses-list .splms-course .lasons-course-listing-button-wrap a:focus,
.mod-splms-courses .splms-courses-list .splms-course .lasons-course-listing-button-wrap a:active {
    color: #ffffff !important;
    background: var(--sonar-green-dark) !important;
    border-color: var(--sonar-green-dark) !important;
    outline: none;
    box-shadow: none;
    transform: translateY(-1px);
}

/* GRATIS */
.mod-splms-courses .splms-badge-free {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 26px;
    padding: 5px 10px;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: .15px;
    color: #1f7a3d !important;
    background: #dff4e7 !important;
    border: 1px solid #c7e9d3;
    border-radius: 999px;
    white-space: nowrap;
    box-shadow: none;
    transform: rotate(-3deg);
    transform-origin: center;
}

@media (max-width: 767px) {
    .mod-splms-courses .splms-courses-list > div {
        margin-bottom: 20px;
    }

    .mod-splms-courses .splms-courses-list .splms-course .splms-course-info {
        padding: 16px;
    }

    .mod-splms-courses .splms-courses-list .splms-course .splms-course-info .splms-course-meta span.lassons-course-price .splms-price-box ins {
        font-size: 22px;
    }

    .mod-splms-courses .splms-courses-list .splms-course .splms-course-info .splms-courses-title {
        font-size: 17px;
        line-height: 23px;
        min-height: 46px;
        max-height: 46px;
    }
}


/* =========================================================
   ICONOS FONT AWESOME EN LA BARRA DE FILTROS
   Solo: Todos los Cursos
   ========================================================= */

/* Base para los iconos */
.com-splms.view-courses .splms-courses-filters-top
#splms-courses-filters-form .filter-toggler::before,
.com-splms.view-courses .splms-courses-filters-top
#splms-courses-filters-form .splms-buttons-group .splms-submit-button::before,
.com-splms.view-courses .splms-courses-filters-top
#splms-courses-filters-form .splms-buttons-group .splms-action-reset::before {
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-style: normal;
    font-size: 14px;
    line-height: 1;
    margin-right: 9px;
    vertical-align: -1px;
}

/* Categoría = tags */
.com-splms.view-courses .splms-courses-filters-top
#splms-courses-filters-form .splms-course-filter-categories .filter-toggler::before {
    content: "\f02c";
    color: var(--sonar-green);
}

/* Nivel = signal */
.com-splms.view-courses .splms-courses-filters-top
#splms-courses-filters-form .splms-course-filter-levels .filter-toggler::before {
    content: "\f012";
    color: var(--sonar-green);
}

/* Tipo = tag */
.com-splms.view-courses .splms-courses-filters-top
#splms-courses-filters-form .splms-course-filter-types .filter-toggler::before {
    content: "\f02b";
    color: var(--sonar-green);
}

/* Enviar = lupa */
.com-splms.view-courses .splms-courses-filters-top
#splms-courses-filters-form .splms-buttons-group .splms-submit-button::before {
    content: "\f002";
    color: #ffffff;
}

/* Restablecer = sincronizar */
.com-splms.view-courses .splms-courses-filters-top
#splms-courses-filters-form .splms-buttons-group .splms-action-reset::before {
    content: "\f2f1";
    color: var(--sonar-muted);
}

/* Anulamos el icono antiguo ::after para no duplicarlo */
.com-splms.view-courses .splms-courses-filters-top
#splms-courses-filters-form .splms-buttons-group .splms-action-reset::after {
    content: none !important;
}

/* Ajuste de padding ahora que el icono va dentro */
.com-splms.view-courses .splms-courses-filters-top
#splms-courses-filters-form .splms-buttons-group .splms-action-reset {
    padding-left: 17px !important;
}

/* En hover, el icono de reset también pasa a verde */
.com-splms.view-courses .splms-courses-filters-top
#splms-courses-filters-form .splms-buttons-group .splms-action-reset:hover::before,
.com-splms.view-courses .splms-courses-filters-top
#splms-courses-filters-form .splms-buttons-group .splms-action-reset:focus::before {
    color: var(--sonar-green);
}

/* Responsive */
@media (max-width: 767px) {
    .com-splms.view-courses .splms-courses-filters-top
    #splms-courses-filters-form .filter-toggler::before,
    .com-splms.view-courses .splms-courses-filters-top
    #splms-courses-filters-form .splms-buttons-group .splms-submit-button::before,
    .com-splms.view-courses .splms-courses-filters-top
    #splms-courses-filters-form .splms-buttons-group .splms-action-reset::before {
        font-size: 13px;
        margin-right: 7px;
    }
}


/* =========================================================
   FIX BADGE GRATIS - SP LMS
   SP LMS arrastra el badge antiguo tipo cinta con position:absolute,
   right negativo y rotación de 45deg. Lo neutralizamos.
   ========================================================= */

/* Base: cuando GRATIS aparece dentro de precio / información */
.com-splms.view-courses .splms-badge-free,
.mod-splms-courses .splms-badge-free {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    z-index: 3 !important;

    display: inline-flex !important;
    align-items: center;
    justify-content: center;

    width: auto !important;
    height: auto !important;
    min-height: 26px;
    margin: 0 !important;
    padding: 5px 10px !important;

    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
    letter-spacing: .15px !important;
    text-transform: uppercase;

    color: #1f7a3d !important;
    background: #dff4e7 !important;
    border: 1px solid #c7e9d3 !important;
    border-radius: 999px !important;

    white-space: nowrap;
    box-shadow: none !important;
    transform: rotate(-3deg) !important;
    transform-origin: center;
}

/* Si el PHP lo coloca encima de la imagen, lo fijamos arriba a la derecha */
.com-splms.view-courses .lassons-course-listing-img-wrapper .splms-badge-free,
.com-splms.view-courses .splms-common-overlay-wrapper .splms-badge-free,
.mod-splms-courses .lassons-course-listing-img-wrapper .splms-badge-free,
.mod-splms-courses .splms-common-overlay-wrapper .splms-badge-free {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    bottom: auto !important;
    left: auto !important;
    z-index: 5 !important;
}

/* =========================================================
   FICHA DE CURSO - PRECIO OFERTA ROJO / PRECIO ANTERIOR OSCURO
   ========================================================= */

/* Precio actual / precio de oferta */
.com-splms.view-course
.splms-course-banner-right
.apply-now
.price_info
.splms-price-box
.splms-sale-price span {
    color: #ff5248 !important;
    font-weight: 800 !important;
}

/* Precio anterior / original */
.com-splms.view-course
.splms-course-banner-right
.apply-now
.price_info
.splms-price-box
.splms-item-price span {
    color: #252525 !important;
    font-weight: 600 !important;
}

/* =========================================================
   SONAR - MODERNIZACION FICHA DE CURSO
   Imagen 16:9 + caja precio pastel + descuentos + acordeon
   ========================================================= */

:root {
    --sonar-green: #068538;
    --sonar-green-dark: #046a2d;
    --sonar-green-pastel: #f1f8f4;
    --sonar-green-pastel-strong: #dff4e7;
    --sonar-green-border: #d6e9dc;
    --sonar-text: #252525;
    --sonar-muted: #718390;
    --sonar-red: #ff5248;
    --sonar-red-pastel: #fed9d7;
    --sonar-red-border: #fbc7c4;
}

/* ---------------------------------------------------------
   FOTO / VIDEO DEL CURSO - MISMA PROPORCION SIEMPRE
   --------------------------------------------------------- */

.com-splms.view-course .course-details .course-thumbnail,
.com-splms.view-course .course-details .splms-course-video {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 16px;
    background: #f6f8f7;
    box-shadow: 0 8px 24px rgba(17, 33, 45, 0.06);
}

.com-splms.view-course .course-details .course-thumbnail img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover;
    object-position: center center;
    border-radius: 16px;
}

/* El reproductor mantiene la misma caja 16:9 */
.com-splms.view-course .course-details .splms-course-video .splms-video-player-window,
.com-splms.view-course .course-details .splms-course-video #splmsVideoPlayer {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    border-radius: 16px;
    overflow: hidden;
}

/* ---------------------------------------------------------
   BADGES SOBRE FOTO / VIDEO
   --------------------------------------------------------- */

.com-splms.view-course .course-details .course-thumbnail .splms-badge-free,
.com-splms.view-course .course-details .splms-course-video .splms-badge-free,
.com-splms.view-course .course-details .course-thumbnail .splms-course-discount-badge,
.com-splms.view-course .course-details .splms-course-video .splms-course-discount-badge {
    position: absolute !important;
    top: 16px !important;
    right: 16px !important;
    bottom: auto !important;
    left: auto !important;
    z-index: 20 !important;

    display: inline-flex !important;
    align-items: center;
    justify-content: center;

    width: auto !important;
    height: auto !important;
    min-height: 30px;
    padding: 7px 12px !important;
    margin: 0 !important;

    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: .2px;
    text-transform: uppercase;
    white-space: nowrap;

    box-shadow: 0 4px 12px rgba(17, 33, 45, 0.08) !important;
    transform: rotate(-3deg) !important;
    transform-origin: center;
}

.com-splms.view-course .course-details .course-thumbnail .splms-badge-free,
.com-splms.view-course .course-details .splms-course-video .splms-badge-free {
    color: #1f7a3d !important;
    background: var(--sonar-green-pastel-strong) !important;
    border: 1px solid #c7e9d3 !important;
}

.com-splms.view-course .course-details .course-thumbnail .splms-course-discount-badge,
.com-splms.view-course .course-details .splms-course-video .splms-course-discount-badge {
    color: #d92d2d !important;
    background: var(--sonar-red-pastel) !important;
    border: 1px solid var(--sonar-red-border) !important;
}

/* ---------------------------------------------------------
   CAJA DE PRECIO - VERDE CASI BLANCO
   Compatible con el layout Edulif y con el layout base SP LMS
   --------------------------------------------------------- */

.com-splms.view-course .course-details .splms-course-banner-right {
    background: var(--sonar-green-pastel) !important;
    border: 1px solid var(--sonar-green-border) !important;
    border-radius: 16px !important;
    box-shadow: 0 10px 28px rgba(17, 33, 45, 0.07) !important;
}

/* En el layout base, apply-now es hijo directo del encabezado */
.com-splms.view-course .course-details .course-header > .apply-now {
    background: var(--sonar-green-pastel) !important;
    border: 1px solid var(--sonar-green-border) !important;
    border-radius: 16px !important;
    box-shadow: 0 10px 28px rgba(17, 33, 45, 0.07) !important;
    padding: 22px 24px !important;
}

/* Si apply-now ya esta dentro de la caja lateral, no creamos una segunda caja */
.com-splms.view-course .course-details .splms-course-banner-right .apply-now {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Precio actual / oferta: rojo y protagonista */
.com-splms.view-course .course-details .price_info .splms-price-box .splms-sale-price span {
    color: var(--sonar-red) !important;
    font-weight: 800 !important;
}

/* Precio anterior: oscuro, secundario */
.com-splms.view-course .course-details .price_info .splms-price-box .splms-item-price span {
    color: var(--sonar-text) !important;
    font-weight: 600 !important;
}

/* Tachado rojo real sobre el precio anterior */
.com-splms.view-course .course-details .price_info .splms-price-box del {
    color: var(--sonar-text) !important;
    text-decoration-line: line-through !important;
    text-decoration-color: var(--sonar-red) !important;
    text-decoration-thickness: 2px !important;
    text-decoration-skip-ink: none !important;
}

/* Neutraliza el tachado artificial antiguo de Edulif */
.com-splms.view-course .course-details .price_info .splms-price-box del::after {
    display: none !important;
    content: none !important;
}

/* El precio de oferta nunca se subraya */
.com-splms.view-course .course-details .price_info .splms-price-box ins {
    text-decoration: none !important;
}

/* ---------------------------------------------------------
   ACORDEON DE CLASES - TARJETAS MODERNAS
   Conservamos los iconos interiores originales
   --------------------------------------------------------- */

.com-splms.view-course .course-details .course-lessons #topicAccordion .card {
    margin: 0 0 12px 0 !important;
    border: 1px solid #dce9e0 !important;
    border-radius: 14px !important;
    overflow: hidden;
    background: #ffffff;
    box-shadow: 0 5px 16px rgba(17, 33, 45, 0.045);
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.com-splms.view-course .course-details .course-lessons #topicAccordion .card:last-child {
    border-bottom: 1px solid #dce9e0 !important;
    margin-bottom: 0 !important;
}

.com-splms.view-course .course-details .course-lessons #topicAccordion .card:hover {
    border-color: #cfe3d6 !important;
    box-shadow: 0 9px 24px rgba(17, 33, 45, 0.07);
}

.com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-header {
    min-height: 62px;
    padding: 16px 20px !important;
    border: 0 !important;
    border-radius: 14px !important;
    background: #f8fcf9 !important;
    cursor: pointer;
    transition: background-color .2s ease, border-color .2s ease;
}

.com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-header:not(.collapsed) {
    background: var(--sonar-green-pastel) !important;
    border-bottom: 1px solid #dce9e0 !important;
    border-radius: 14px 14px 0 0 !important;
}

.com-splms.view-course .course-details .course-lessons #topicAccordion .splms-topic-title {
    color: #243044;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    padding-right: 12px;
}

/* Flecha mas pequena dentro de circulo verde pastel */
.com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-header::after {
    content: "\f078" !important;
    flex: 0 0 32px;
    width: 32px;
    height: 32px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;
    background: var(--sonar-green-pastel-strong);
    color: var(--sonar-green);

    font-family: "Font Awesome 6 Free", "Font Awesome 5 Free" !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1;

    transform: rotate(180deg);
    transition: transform .25s ease, background-color .2s ease;
}

.com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-header.collapsed::after {
    transform: rotate(0deg) !important;
}

.com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-header:hover::after {
    background: #cfeeda;
}

.com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-body {
    padding: 10px 18px 14px !important;
    background: #ffffff;
}

/* Filas de clases: mas limpias, sin el salto lateral antiguo */
.com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-body ul li {
    margin-left: 0 !important;
    padding: 11px 10px;
    border-bottom: 1px solid #edf2ef;
    border-radius: 8px;
    transition: background-color .2s ease;
}

.com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-body ul li:last-child {
    border-bottom: 0;
}

.com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-body ul li:hover {
    margin-left: 0 !important;
    background: #f7fbf8;
}

/* Se conservan los iconos interiores en verde SONAR */
.com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-body ul li i {
    color: var(--sonar-green) !important;
    font-size: 20px !important;
    margin-right: 10px !important;
}

/* ---------------------------------------------------------
   RESPONSIVE
   --------------------------------------------------------- */

@media (max-width: 991px) {
    .com-splms.view-course .course-details .splms-course-banner-right {
        padding: 22px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .com-splms.view-course .course-details .course-header > .apply-now {
        padding: 18px !important;
    }

    .com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-header {
        min-height: 56px;
        padding: 14px 16px !important;
    }

    .com-splms.view-course .course-details .course-lessons #topicAccordion .splms-topic-title {
        font-size: 16px;
    }

    .com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-body {
        padding: 8px 12px 12px !important;
    }
}

@media (max-width: 575px) {
    .com-splms.view-course .course-details .course-thumbnail,
    .com-splms.view-course .course-details .splms-course-video {
        border-radius: 12px;
    }

    .com-splms.view-course .course-details .course-thumbnail img {
        border-radius: 12px;
    }

    .com-splms.view-course .course-details .course-thumbnail .splms-badge-free,
    .com-splms.view-course .course-details .splms-course-video .splms-badge-free,
    .com-splms.view-course .course-details .course-thumbnail .splms-course-discount-badge,
    .com-splms.view-course .course-details .splms-course-video .splms-course-discount-badge {
        top: 10px !important;
        right: 10px !important;
        min-height: 27px;
        padding: 6px 9px !important;
        font-size: 11px !important;
    }
}

/* =========================================================
   SONAR - AJUSTE FINAL FICHA CURSO - 21/09/2026
   Mantiene lateral Edulif + imagen/video 16:9 + badge descuento
   + caja pastel + precio oferta rojo + precio antiguo con X roja
   + acordeon moderno
   ========================================================= */

/* ---------- FOTO / VIDEO ---------- */
.com-splms.view-course .course-details .splms-course-banner {
    position: relative !important;
    border-radius: 16px !important;
    overflow: visible !important;
}

.com-splms.view-course .course-details .splms-course-banner .course-thumbnail,
.com-splms.view-course .course-details .splms-course-banner .splms-course-video {
    position: relative !important;
    width: 100% !important;
    aspect-ratio: 16 / 9 !important;
    overflow: hidden !important;
    border-radius: 16px !important;
    background: #f6f8f7 !important;
    box-shadow: 0 8px 24px rgba(17, 33, 45, 0.06) !important;
}

.com-splms.view-course .course-details .splms-course-banner .course-thumbnail img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 16px !important;
}

.com-splms.view-course .course-details .splms-course-banner .splms-course-video iframe,
.com-splms.view-course .course-details .splms-course-banner .splms-course-video video,
.com-splms.view-course .course-details .splms-course-banner .splms-course-video object,
.com-splms.view-course .course-details .splms-course-banner .splms-course-video embed,
.com-splms.view-course .course-details .splms-course-banner .splms-course-video .splms-video-player-window,
.com-splms.view-course .course-details .splms-course-banner .splms-course-video #splmsVideoPlayer {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    border-radius: 16px !important;
    overflow: hidden !important;
}

/* ---------- BADGES SOBRE FOTO / VIDEO ---------- */
.com-splms.view-course .course-details .splms-course-banner > .splms-badge-free,
.com-splms.view-course .course-details .splms-course-banner > .splms-course-discount-badge {
    position: absolute !important;
    top: 16px !important;
    right: 16px !important;
    bottom: auto !important;
    left: auto !important;
    z-index: 30 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    height: auto !important;
    min-height: 30px !important;
    margin: 0 !important;
    padding: 7px 12px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: .2px !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    box-shadow: 0 4px 12px rgba(17, 33, 45, 0.08) !important;
    transform: rotate(-3deg) !important;
    transform-origin: center !important;
}

.com-splms.view-course .course-details .splms-course-banner > .splms-badge-free {
    color: #1f7a3d !important;
    background: #dff4e7 !important;
    border: 1px solid #c7e9d3 !important;
}

.com-splms.view-course .course-details .splms-course-banner > .splms-course-discount-badge {
    color: #d92d2d !important;
    background: #fed9d7 !important;
    border: 1px solid #fbc7c4 !important;
}

/* ---------- CAJA DERECHA: PRECIO + CHECKS + BOTON ---------- */
.com-splms.view-course .course-details .splms-course-banner-right {
    background: #f1f8f4 !important;
    border: 1px solid #d6e9dc !important;
    border-radius: 16px !important;
    box-shadow: 0 10px 28px rgba(17, 33, 45, 0.07) !important;
    overflow: hidden !important;
}

/* Conserva los checks originales y los hace un poco mas limpios */
.com-splms.view-course .course-details .splms-course-banner-right .splms-course-sessions-meta div span:before {
    color: #068538 !important;
    margin-right: 10px !important;
}

.com-splms.view-course .course-details .splms-course-banner-right .splms-course-sessions-meta div span {
    color: #667985 !important;
}

/* ---------- PRECIO ---------- */
.com-splms.view-course .course-details .splms-course-banner-right .price_info .splms-price-box {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
}

/* Precio actual / oferta */
.com-splms.view-course .course-details .splms-course-banner-right .price_info .splms-price-box .splms-sale-price span {
    color: #ff5248 !important;
    font-weight: 800 !important;
}

/* Precio antiguo */
.com-splms.view-course .course-details .splms-course-banner-right .price_info .splms-price-box .splms-item-price span {
    color: #252525 !important;
    font-size: 19px !important;
    font-weight: 600 !important;
    line-height: 1.1 !important;
}

.com-splms.view-course .course-details .splms-course-banner-right .price_info .splms-price-box ins {
    text-decoration: none !important;
}

/* Quitamos cualquier subrayado/tachado nativo o antiguo */
.com-splms.view-course .course-details .splms-course-banner-right .price_info .splms-price-box del {
    position: relative !important;
    display: inline-block !important;
    color: #252525 !important;
    text-decoration: none !important;
    overflow: visible !important;
}

/* X roja encima del precio antiguo */
.com-splms.view-course .course-details .splms-course-banner-right .price_info .splms-price-box del::before,
.com-splms.view-course .course-details .splms-course-banner-right .price_info .splms-price-box del::after {
    content: "" !important;
    position: absolute !important;
    left: -3px !important;
    top: 57% !important;
    width: calc(100% + 6px) !important;
    height: 2px !important;
    background: #ff5248 !important;
    border-radius: 2px !important;
    transform-origin: center !important;
    display: block !important;
    pointer-events: none !important;
}

.com-splms.view-course .course-details .splms-course-banner-right .price_info .splms-price-box del::before {
    transform: translateY(-50%) rotate(16deg) !important;
}

.com-splms.view-course .course-details .splms-course-banner-right .price_info .splms-price-box del::after {
    transform: translateY(-50%) rotate(-16deg) !important;
}

/* ---------- ACORDEON DE CLASES ---------- */
.com-splms.view-course .course-details .course-lessons #topicAccordion .card {
    margin: 0 0 12px 0 !important;
    border: 1px solid #dce9e0 !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    background: #ffffff !important;
    box-shadow: 0 5px 16px rgba(17, 33, 45, 0.045) !important;
}

.com-splms.view-course .course-details .course-lessons #topicAccordion .card:last-child {
    border-bottom: 1px solid #dce9e0 !important;
}

.com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-header {
    min-height: 62px !important;
    padding: 16px 20px !important;
    border: 0 !important;
    border-radius: 14px !important;
    background: #f8fcf9 !important;
    cursor: pointer !important;
}

.com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-header[aria-expanded="true"] {
    background: #f1f8f4 !important;
    border-bottom: 1px solid #dce9e0 !important;
    border-radius: 14px 14px 0 0 !important;
}

.com-splms.view-course .course-details .course-lessons #topicAccordion .splms-topic-title {
    color: #243044 !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    padding-right: 12px !important;
}

.com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-header::after {
    content: "\f078" !important;
    flex: 0 0 32px !important;
    width: 32px !important;
    height: 32px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
    background: #dff4e7 !important;
    color: #068538 !important;
    font-family: "Font Awesome 6 Free", "Font Awesome 5 Free" !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    transform: rotate(180deg) !important;
    transition: transform .25s ease, background-color .2s ease !important;
}

.com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-header[aria-expanded="false"]::after {
    transform: rotate(0deg) !important;
}

.com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-body {
    padding: 10px 18px 14px !important;
    background: #ffffff !important;
}

.com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-body ul li {
    margin-left: 0 !important;
    padding: 11px 10px !important;
    border-bottom: 1px solid #edf2ef !important;
    border-radius: 8px !important;
}

.com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-body ul li:last-child {
    border-bottom: 0 !important;
}

.com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-body ul li:hover {
    margin-left: 0 !important;
    background: #f7fbf8 !important;
}

/* Conservamos los iconos interiores en verde SONAR */
.com-splms.view-course .course-details .course-lessons #topicAccordion .card .card-body ul li i {
    color: #068538 !important;
    font-size: 20px !important;
    margin-right: 10px !important;
}

@media (max-width: 991px) {
    .com-splms.view-course .course-details .splms-course-banner-right {
        padding: 22px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}

@media (max-width: 575px) {
    .com-splms.view-course .course-details .splms-course-banner,
    .com-splms.view-course .course-details .splms-course-banner .course-thumbnail,
    .com-splms.view-course .course-details .splms-course-banner .splms-course-video,
    .com-splms.view-course .course-details .splms-course-banner .course-thumbnail img {
        border-radius: 12px !important;
    }

    .com-splms.view-course .course-details .splms-course-banner > .splms-badge-free,
    .com-splms.view-course .course-details .splms-course-banner > .splms-course-discount-badge {
        top: 10px !important;
        right: 10px !important;
        min-height: 27px !important;
        padding: 6px 9px !important;
        font-size: 11px !important;
    }
}

/* =========================================================
   BADGE GRATIS - EFECTO PENDULO SUAVE
   Balanceo desde la parte superior para llamar la atencion
   sin resultar molesto.
   ========================================================= */

.com-splms.view-courses .splms-badge-free,
.mod-splms-courses .splms-badge-free,
.com-splms.view-course .course-details .splms-course-banner > .splms-badge-free,
.com-splms.view-course .course-details .course-thumbnail .splms-badge-free,
.com-splms.view-course .course-details .splms-course-video .splms-badge-free {
    /* Neutraliza la inclinacion fija anterior */
    transform: rotate(0deg) !important;

    /* El badge "cuelga" desde el centro de su borde superior */
    transform-origin: 50% 0% !important;

    /* Usamos la propiedad rotate independiente para que no choque
       con reglas antiguas de transform !important de SP LMS/Edulif */
    animation: sonarPenduloGratis 2.8s ease-in-out infinite !important;
    will-change: rotate;
}

@keyframes sonarPenduloGratis {
    0%,
    100% {
        rotate: -4deg;
    }

    50% {
        rotate: 4deg;
    }
}

/* Respeta usuarios que tengan reduccion de movimiento activada */
@media (prefers-reduced-motion: reduce) {
    .com-splms.view-courses .splms-badge-free,
    .mod-splms-courses .splms-badge-free,
    .com-splms.view-course .course-details .splms-course-banner > .splms-badge-free,
    .com-splms.view-course .course-details .course-thumbnail .splms-badge-free,
    .com-splms.view-course .course-details .splms-course-video .splms-badge-free {
        animation: none !important;
        rotate: 2deg;
    }
}

/* =========================================================
   TABLA DE HORARIOS - SONAR
   Modernización visual de "Horarios de clase"
   ========================================================= */

.com-splms.view-course
.course-details
.splms-course-class-rotuines {
    margin-top: 70px;
}

.com-splms.view-course
.course-details
.splms-class-routines {
    width: 100%;
    margin-top: 20px;
    overflow-x: auto;
    overflow-y: hidden;
    border: 1px solid #d6e9dc;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 8px 24px rgba(17, 33, 45, 0.06);
    -webkit-overflow-scrolling: touch;
}

/* Título dentro del bloque */
.com-splms.view-course
.course-details
.splms-class-routines > .splms-title {
    margin: 0 !important;
    padding: 22px 24px 18px !important;
    font-size: 28px !important;
    line-height: 1.2 !important;
    color: #252525 !important;
    background: #ffffff;
    border-bottom: 1px solid #e4efe8;
}

/* Tabla */
.com-splms.view-course
.course-details
.splms-class-routines table.table {
    width: 100%;
    min-width: 760px;
    margin: 0 !important;
    border: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background: #ffffff;
}

/* Cabecera de días */
.com-splms.view-course
.course-details
.splms-class-routines table.table thead th {
    padding: 15px 12px !important;
    border: 0 !important;
    border-right: 1px solid #dcebe1 !important;
    border-bottom: 1px solid #d6e9dc !important;
    background: #f1f8f4 !important;
    color: #1f6f3c !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    letter-spacing: .35px !important;
    text-align: center !important;
    text-transform: uppercase;
    vertical-align: middle !important;
    white-space: nowrap;
}

.com-splms.view-course
.course-details
.splms-class-routines table.table thead th:last-child {
    border-right: 0 !important;
}

/* Celdas */
.com-splms.view-course
.course-details
.splms-class-routines table.table tbody td {
    min-width: 125px;
    padding: 16px 10px !important;
    border: 0 !important;
    border-right: 1px solid #e4efe8 !important;
    background: #ffffff !important;
    color: #46515b;
    text-align: center;
    vertical-align: top !important;
}

.com-splms.view-course
.course-details
.splms-class-routines table.table tbody td:last-child {
    border-right: 0 !important;
}

/* Cada horario disponible como pequeña tarjeta */
.com-splms.view-course
.course-details
.splms-class-routines
.splms-class-routines-text.has-schedule {
    display: block;
    width: 100%;
    margin: 0 0 8px 0 !important;
    padding: 9px 10px !important;
    border: 1px solid #cfe7d7;
    border-radius: 10px;
    background: #f1f8f4 !important;
    color: #1f6f3c !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    text-align: center;
    box-shadow: 0 2px 7px rgba(6, 133, 56, 0.05);
}

.com-splms.view-course
.course-details
.splms-class-routines
.splms-class-routines-text.has-schedule:last-child {
    margin-bottom: 0 !important;
}

/* Día sin horario */
.com-splms.view-course
.course-details
.splms-class-routines
.splms-class-routines-text.no-schedule {
    display: flex;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    color: #a4b0aa !important;
    font-size: 18px;
    line-height: 1;
}

.com-splms.view-course
.course-details
.splms-class-routines
.splms-class-routines-text.no-schedule:empty::before {
    content: "—";
}

/* Suaviza hover sin convertirlo en botón */
.com-splms.view-course
.course-details
.splms-class-routines
.splms-class-routines-text.has-schedule {
    transition:
        transform .18s ease,
        border-color .18s ease,
        box-shadow .18s ease,
        background-color .18s ease;
}

.com-splms.view-course
.course-details
.splms-class-routines
.splms-class-routines-text.has-schedule:hover {
    transform: translateY(-1px);
    border-color: #b9dcc6;
    background: #eaf6ee !important;
    box-shadow: 0 5px 12px rgba(6, 133, 56, 0.09);
}

/* Scroll horizontal discreto en pantallas pequeñas */
.com-splms.view-course
.course-details
.splms-class-routines::-webkit-scrollbar {
    height: 8px;
}

.com-splms.view-course
.course-details
.splms-class-routines::-webkit-scrollbar-track {
    background: #f3f6f4;
}

.com-splms.view-course
.course-details
.splms-class-routines::-webkit-scrollbar-thumb {
    background: #c7ddd0;
    border-radius: 999px;
}

@media (max-width: 767px) {
    .com-splms.view-course
    .course-details
    .splms-course-class-rotuines {
        margin-top: 45px;
    }

    .com-splms.view-course
    .course-details
    .splms-class-routines {
        border-radius: 13px;
    }

    .com-splms.view-course
    .course-details
    .splms-class-routines > .splms-title {
        padding: 18px 18px 15px !important;
        font-size: 24px !important;
    }

    .com-splms.view-course
    .course-details
    .splms-class-routines table.table thead th {
        padding: 12px 10px !important;
        font-size: 12px !important;
    }

    .com-splms.view-course
    .course-details
    .splms-class-routines table.table tbody td {
        min-width: 118px;
        padding: 12px 8px !important;
    }

    .com-splms.view-course
    .course-details
    .splms-class-routines
    .splms-class-routines-text.has-schedule {
        font-size: 13px !important;
        padding: 8px 9px !important;
    }
}


