/*
 * MasterStudy LMS (free plugin, wordpress.org slug
 * masterstudy-lms-learning-management-system; the handoff doc specs
 * MasterStudy LMS Pro for production, same markup/classes for styling
 * purposes) compatibility overrides.
 *
 * CSS-only for everything below, on purpose: MasterStudy's own support team
 * has publicly confirmed their front-end architecture uses hardcoded
 * dimensions in places and isn't guaranteed stable across versions. A CSS
 * selector that stops matching after an update degrades silently (section
 * looks slightly off-brand); a stale PHP template override can outright
 * break a page. Prefer adding a selector here.
 *
 * Because this is now a real active theme (not a plugin), MasterStudy's
 * `locate_template()`-based override mechanism works natively: dropping a
 * file at stm-lms-templates/<same-subpath>.php in this theme's root
 * overrides that MasterStudy template automatically — see
 * stm-lms-templates/README.md before reaching for that, though; CSS should
 * still be the default tool.
 *
 * Class names verified against the shipped MasterStudy LMS v3.7.37 source
 * (assets/css + _core/lms/**\/*.php templates), current as of this file's
 * writing. If MasterStudy renames a class in a future version, these rules
 * just stop matching — they degrade silently, not destructively.
 *
 * Confidence note: `.ms_lms_courses_card_item*` selectors are a best-effort
 * fallback for the Elementor "Courses" widget, which uses a different markup
 * layer than the core shortcode/template grid. Verify against the actual
 * site if that widget is used (the handoff doc's stack uses Elementor for
 * landing/marketing pages, so this is a realistic path).
 */

/* Scope MasterStudy's own wrapper into our typography/utility layer.
   Entropica_Theme_Masterstudy_Compat hooks `stm_lms_wrapper_classes` to add
   "ent-scope" to `.stm-lms-wrapper` — harmless now that base.css applies
   site-wide, but kept as an extension point for scoped-only rules. */
.stm-lms-wrapper.ent-scope {
  font-family: var( --ent-font-body );
  color: var( --ent-ink );
}

/* ---------------------------------------------------------------------- */
/* Course card / grid                                                      */
/* ---------------------------------------------------------------------- */
.masterstudy-course-card,
.ms_lms_courses_card_item {
  background: var( --ent-surface );
  border: 1px solid var( --ent-line ) !important;
  border-radius: var( --ent-radius ) !important;
  overflow: hidden;
  transition: transform .18s ease, box-shadow .18s ease;
}
.masterstudy-course-card:hover,
.ms_lms_courses_card_item:hover {
  transform: translateY( -3px );
  box-shadow: var( --ent-shadow-card );
}
.masterstudy-course-card__info-title,
.ms_lms_courses_card_item .ms_lms_courses_card_item__title {
  font-family: var( --ent-font-head ) !important;
  font-weight: 600 !important;
  color: var( --ent-ink ) !important;
}
.masterstudy-course-card__meta {
  color: var( --ent-ink-2 ) !important;
}
.masterstudy-course-card__featured,
.masterstudy-course-card__status {
  background: var( --ent-accent-soft ) !important;
  color: var( --ent-accent ) !important;
  border-radius: var( --ent-radius-pill ) !important;
  font-weight: 700 !important;
}

/* ---------------------------------------------------------------------- */
/* Single course page                                                      */
/* ---------------------------------------------------------------------- */
.masterstudy-single-course__main,
.masterstudy-single-course__sidebar {
  background: var( --ent-surface );
  border: 1px solid var( --ent-line );
  border-radius: var( --ent-radius );
}
.masterstudy-single-course__heading {
  font-family: var( --ent-font-head ) !important;
  letter-spacing: -.01em;
  color: var( --ent-ink ) !important;
}
.masterstudy-single-course__topbar {
  border-bottom: 1px solid var( --ent-line );
}
.masterstudy-single-course__cta,
.masterstudy-buy-button,
.masterstudy-add-to-cart-subscription {
  background: var( --ent-accent ) !important;
  color: var( --ent-accent-ink ) !important;
  border: none !important;
  border-radius: var( --ent-radius-sm ) !important;
  font-family: var( --ent-font-body ) !important;
  font-weight: 600 !important;
}
.masterstudy-single-course__cta:hover,
.masterstudy-buy-button:hover {
  filter: brightness( 1.04 );
}

/* ---------------------------------------------------------------------- */
/* Curriculum / lesson list                                                */
/* ---------------------------------------------------------------------- */
.masterstudy-curriculum-accordion__section {
  background: var( --ent-surface );
  border: 1px solid var( --ent-line );
  border-radius: 14px;
}
.masterstudy-curriculum-accordion__item {
  border-top: 1px solid var( --ent-line );
}
.masterstudy-curriculum-accordion__link {
  color: var( --ent-ink ) !important;
}
.masterstudy-curriculum-accordion__link._current {
  background: var( --ent-accent-soft ) !important;
  color: var( --ent-accent ) !important;
  font-weight: 600;
}
.masterstudy-curriculum-accordion__link._disabled {
  color: var( --ent-ink-2 ) !important;
  opacity: .6;
}
.masterstudy-curriculum-accordion__check._completed {
  background: var( --ent-success ) !important;
  border-color: var( --ent-success ) !important;
}

/* ---------------------------------------------------------------------- */
/* Video lesson player                                                     */
/* ---------------------------------------------------------------------- */
.masterstudy-course-player-lesson-video__container {
  border-radius: var( --ent-radius );
  overflow: hidden;
  border: 1px solid var( --ent-line );
}
.masterstudy-course-player-lesson-video__progress-bar,
.masterstudy-plyr-video-player .plyr__progress input[type='range'] {
  accent-color: var( --ent-accent );
}

/* ---------------------------------------------------------------------- */
/* Quiz questions / answers                                                */
/* ---------------------------------------------------------------------- */
.masterstudy-course-player-quiz__content {
  background: var( --ent-surface );
  border: 1px solid var( --ent-line );
  border-radius: var( --ent-radius );
}
.masterstudy-course-player-answer {
  border: 1.5px solid var( --ent-line ) !important;
  border-radius: 11px !important;
  background: var( --ent-surface ) !important;
  transition: border-color .15s, background .15s, color .15s;
}
.masterstudy-course-player-answer__radio._checked,
.masterstudy-course-player-answer__checkbox._checked {
  border-color: var( --ent-accent ) !important;
}
.masterstudy-course-player-answer._correct {
  border-color: var( --ent-success ) !important;
  background: var( --ent-success-soft ) !important;
}
.masterstudy-course-player-answer._wrong {
  border-color: var( --ent-danger ) !important;
  background: var( --ent-danger-soft ) !important;
}
.masterstudy-course-player-quiz__pagination a {
  border-radius: var( --ent-radius-pill ) !important;
}

/* ---------------------------------------------------------------------- */
/* Student / instructor dashboard                                         */
/* ---------------------------------------------------------------------- */
.masterstudy-account-sidebar {
  background: var( --ent-surface );
  border: 1px solid var( --ent-line );
  border-radius: var( --ent-radius );
}
.masterstudy-account-menu__list-item-label {
  color: var( --ent-ink-2 ) !important;
  font-weight: 600 !important;
}
.masterstudy-account-menu__list-item-label.active,
.masterstudy-account-menu__list-item-label:hover {
  background: var( --ent-accent-soft ) !important;
  color: var( --ent-accent ) !important;
}
.masterstudy-account-menu__list-item-badge {
  background: var( --ent-warm ) !important;
  color: #fff !important;
  border-radius: var( --ent-radius-pill ) !important;
}

/* ---------------------------------------------------------------------- */
/* Pricing / membership (MasterStudy LMS Pro feature — the handoff doc's    */
/* production stack uses Pro, so this is expected to render for real)      */
/* ---------------------------------------------------------------------- */
.masterstudy_memberships__item {
  background: var( --ent-surface );
  border: 1px solid var( --ent-line );
  border-radius: var( --ent-radius );
}
.masterstudy_memberships__price {
  font-family: var( --ent-font-head ) !important;
  color: var( --ent-ink ) !important;
}

/* ---------------------------------------------------------------------- */
/* Subject/course-category accent colors (Matemáticas, Física, ...) — apply */
/* by adding the matching class to a course category term, or reference    */
/* --ent-subject-* directly from a template override if MasterStudy course  */
/* categories don't expose a class hook for this.                          */
/* ---------------------------------------------------------------------- */
.ent-subject-math       { --ent-subject-color: var(--ent-subject-math); }
.ent-subject-physics    { --ent-subject-color: var(--ent-subject-physics); }
.ent-subject-chemistry  { --ent-subject-color: var(--ent-subject-chemistry); }
.ent-subject-biology    { --ent-subject-color: var(--ent-subject-biology); }
.ent-subject-geography  { --ent-subject-color: var(--ent-subject-geography); }
.ent-subject-spanish    { --ent-subject-color: var(--ent-subject-spanish); }
