
.cursos_list > ul           { display: flex; flex-wrap: wrap; overflow: hidden; margin: 0 -10px; }
.cursos_list > ul > li      { width: 100%; padding: 8px; }

.cursos_list a              { color: #000; }
.cursos_list a:link,
.cursos_list a:hover        { text-decoration: none; }

.cursos_list article            { position: relative; display: flex; flex-wrap: wrap; align-content: space-between; min-height: 100%; border-bottom-style: solid; border-bottom-width: 6px; background-color: #fff; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.25); transition-duration: .3s; }
.cursos_list .main              { position: relative; width: 100%; }
.cursos_list .avance            { position: absolute; right: -5px; top: -5px; z-index: 1; }
.cursos_list .fecha             { bottom: 0; left: 0; margin-left: auto; margin-right: auto; z-index: 1; padding: 5px 10px; color: #fff; text-align: center; background-color: rgb(var(--bs-warning-rgb)); }
.cursos_list .fecha.vencido     { background-color: rgb(var(--bs-danger-rgb)); }
.cursos_list .estado            { position: absolute; top: 0; left: 0; margin-left: auto; margin-right: auto; z-index: 1; padding: 5px 10px; color: #fff; text-align: center; background-color: rgb(var(--bs-secondary-rgb)); }
.cursos_list .estado.cursando   { background-color: rgb(var(--bs-info-rgb)); }
.cursos_list .estado.aprobado   { background-color: rgb(var(--bs-success-rgb)); }
.cursos_list .estado.pendiente   { background-color: rgb(var(--bs-warning-rgb)); }
.cursos_list .estado.no_aprobado{ background-color: rgb(var(--bs-danger-rgb)); }
.cursos_list .main a            { display: block; }
.cursos_list .main a:hover h4   { padding: 0px 10px 10px; }
.cursos_list .main a:hover img  { opacity: .7; }
.cursos_list img                { display: block; max-width: 100%; height: auto; transition-duration: .4s; }
.cursos_list .pre_title         { padding: 5px 10px 0; }
.cursos_list h4                 { padding: 5px 10px; line-height: 2.4rem; transition-duration: .4s; }

.cursos_list footer             { width: 100%; }
.cursos_list footer .back       { display: flex; justify-content: space-between; flex-direction: row-reverse; align-items: center; background-color: rgba(255, 255, 255, 0.85); }
.cursos_list footer .back.normal{ flex-direction: row; }
.cursos_list footer button,
.cursos_list footer a           { border: none; padding: 8px 8px; color: #87878e; transition-duration: .4s; background: transparent; outline: none; }
.cursos_list footer button:hover,
.cursos_list footer a:hover     { padding: 8px 5px 8px 11px; color: #000; }

.cursos_list .opciones          { display: none; position: absolute; bottom:0; left: 0; width: 100%; background-color: #f4f4f9; box-shadow: 0 0px 2px rgba(0, 0, 0, 0.25); }
.cursos_list .opciones button,
.cursos_list .opciones a        { display: block; width: 100%; text-align: left; }
.cursos_list .opciones button:hover,
.cursos_list .opciones a:hover  { background-color: #fff; }

/* colores segun estado */
.cursos_list li article                 { border-bottom-color: #797788; } /* default */
.cursos_list li.cursando article        { border-bottom-color: rgb(var(--bs-info-rgb)); }
.cursos_list li.pendiente article       { border-bottom-color: rgb(var(--bs-warning-rgb)); }
.cursos_list li.finalizado article      { border-bottom-color: rgb(var(--bs-success-rgb)); }
.cursos_list li.no_aprobado article      { border-bottom-color: rgb(var(--bs-danger-rgb)); }


.cursos_list li footer                  { background-color: #797788; } /* default */
.cursos_list li.cursando footer         { background-color: rgb(var(--bs-info-rgb)); }
.cursos_list li.pendiente footer        { background-color: rgb(var(--bs-warning-rgb)); }
.cursos_list li.finalizado footer       { background-color: rgb(var(--bs-success-rgb)); }
.cursos_list li.no_aprobado footer      { background-color: rgb(var(--bs-danger-rgb)); }

/* recuadro para el avance */
.cursos_list .doughnut_container {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 65px;
    height: 65px;
}
.cursos_list .avance_doughnut {
    background-color: rgba(255,255,255,0.9);
    border-radius: 100%;
    box-shadow: 1px 1px 1px 0px rgba(0,0,0,0.2);
}
.ajax-save-ok {
    color: green;
    margin-left: 0.5em;
}
.ajax-save-error {
    color: red;
    margin-left: 0.5em;
}
.spinner {
    position: relative;
    margin-left: 0.5em;
}
/*************************
******** Media Query ******
**************************/

@media screen and (min-width: 520px){
    .cursos_list > ul > li { width: 50%; }
}

@media screen and (min-width: 770px){
    .cursos_list > ul > li { width: 33.33%; width: calc(100%/3); }
}

@media screen and (min-width: 770px){
    .cursos_list > ul > li { width: 33.33%; width: calc(100%/3); }
}

@media screen and (min-width: 1300px){
    body:not(.portal) .cursos_list > ul > li { width: 25%; }
}

@media screen and (min-width: 1500px){
    body:not(.portal) .cursos_list > ul > li { width: 20%; }
}
