/* Utilidades compartidas (basado en profesor/css/shared.css) */
.vista-previa-container { padding: 10px; }
.pregunta-preview { background: var(--color-white); border: 1px solid var(--color-gray-light); border-radius: 10px; padding: 14px; margin-bottom: 14px; }
.opciones-preview { list-style: none; padding: 0; margin: 6px 0 0 0; }
.opciones-preview li { background: var(--color-light); border: 1px solid var(--color-gray-light); border-radius: 10px; padding: 10px 12px; margin: 6px 0; }
.opciones-preview li.opcion-correcta { background: var(--color-success-opacity-20); border-color: var(--color-success); color: var(--color-success-dark); font-weight: 600; position: relative; }
.opciones-preview li.opcion-correcta::before { content: "\2713"; position: absolute; right: 12px; top: 50%; transform: translateY(-50%); color: var(--color-success); }
.chart { width: 100%; }
.chart-h-400 { height: 400px; }
.chart-h-360 { height: 360px; }
.chart-h-350 { height: 350px; }
.chart-h-320 { height: 320px; }
.img-cover { object-fit: cover; }
.img-contain { object-fit: contain; background-color: #fff; }
.series-swiper { width: 100%; }
.series-swiper .swiper-slide { width: 420px; }
@media (max-width: 1199.98px) { .series-swiper .swiper-slide { width: 360px; } }
@media (max-width: 767.98px) { .series-swiper .swiper-slide { width: 300px; } }
.banner-card { position: relative; border-radius: 12px; overflow: hidden; transition: box-shadow .25s ease; }
.banner-card:hover { box-shadow: 0 12px 28px rgba(0,0,0,.18); }
.banner-img { width: 100%; height: 240px; object-fit: cover; display: block; filter: brightness(0.98) saturate(1.05); transition: filter .2s ease; }
.banner-card:hover .banner-img { filter: brightness(1) saturate(1.08); }
.banner-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(255,255,255,0.0) 50%, rgba(0,0,0,0.15) 100%); }
.banner-content { position: absolute; left: 0; right: 0; bottom: 0; color: #fff; padding: 14px; opacity: 1; transform: none; }
.banner-title { font-weight: 600; margin: 0; font-size: 1rem; }
@media (max-width: 575.98px) {
  .series-swiper .swiper-slide { width: 260px; }
  .banner-content { opacity: 1; transform: none; }
}
.mh-190 { max-height: 190px; }
.mh-260 { max-height: 260px; }

