@charset "UTF-8";
/*
 * REALMED INSTITUTE · LearnDash · 1.0 · 29/09/2026
 * Personalización centralizada para GeneratePress y LearnDash 3.0 (LMS 5.2).
 * Referencias: CSS DISSENSIA, lección y tema autenticados, Excel de Focus
 * y DOSSIER TIPOGRAFIA Y COLORIMETRIA del proyecto CLONAR_WEB.
 *
 * INSTALACIÓN
 * Guardar en el tema hijo, por ejemplo assets/css/learndash-custom.css,
 * y encolarlo DESPUÉS de learndash-front, estilos Modern y GeneratePress.
 * Sustituye la personalización anterior, no el CSS/JS funcional de LearnDash.
 * No hace falta Visual Customizer ni su apariencia Minimal para este diseño.
 * Mantener una única copia activa; retirar los ajustes CSS duplicados del
 * personalizador cuando se instale. No editar los archivos del plugin.
 *
 * Las fuentes usan las rutas locales comprobadas en la nueva instalación.
 * Al migrar, conservar wp-content/uploads/generatepress/fonts/.
 * No hay dominios, identificadores de cursos ni URLs de alumnos codificados.
 *
 * CSS no activa Focus, no añade «Mis cursos», no traduce textos ni configura
 * matrículas, finalización, vídeo o menús. Esas funciones pertenecen al LMS
 * o al código que genera su HTML. Aquí se estilizan cuando están presentes.
 * No se fuerzan display/max-height de contenidos bloqueados por el LMS.
 *
 * ÍNDICE
 * 01 Fuentes y variables       02 Base e integración
 * 03 Cabecera                 04 Barra lateral y desplegables sin franjas
 * 05 Contenido y tipografía    06 Componentes, estados y formularios
 * 07 Modern y Presenter       08 Adaptación y accesibilidad
 * 09 Tarjetas de cursos del área privada
 */

/* 01 · Fuentes propias. Las rutas relativas al sitio sobreviven al dominio. */
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("/wp-content/uploads/generatepress/fonts/inter/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7W0I5nvwU.woff2") format("woff2");
}
@font-face {
  font-family: "Inter";
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("/wp-content/uploads/generatepress/fonts/inter/UcCM3FwrK3iLTcvneQg7Ca725JhhKnNqk4j1ebLhAm8SrXTc2dtRipWF.woff2") format("woff2");
}
@font-face {
  font-family: "Source Serif Pro";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/wp-content/uploads/generatepress/fonts/source-serif-pro/SourceSerifPro-Regular.ttf_.woff2") format("woff2");
}
@font-face {
  font-family: "Source Serif Pro";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("/wp-content/uploads/generatepress/fonts/source-serif-pro/SourceSerifPro-It.ttf_.woff2") format("woff2");
}
@font-face {
  font-family: "Source Serif Pro";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/wp-content/uploads/generatepress/fonts/source-serif-pro/SourceSerifPro-Semibold.ttf_.woff2") format("woff2");
}
@font-face {
  font-family: "Source Serif Pro";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/wp-content/uploads/generatepress/fonts/source-serif-pro/SourceSerifPro-Bold.ttf_.woff2") format("woff2");
}

:root {
  --rmi-ld-ink: #1a2a4c;
  --rmi-ld-deep: #121e36;
  --rmi-ld-muted: #5a6782;
  --rmi-ld-pale: #e8ebf0;
  --rmi-ld-amber: #ffb81c;
  --rmi-ld-amber-hover: #d99b11;
  --rmi-ld-amber-light: #ffd46b;
  --rmi-ld-amber-pale: #fff2d4;
  --rmi-ld-text: #2d3748;
  --rmi-ld-meta: #718096;
  --rmi-ld-border: #cbd5e0;
  --rmi-ld-paper: #f9f9f9;
  --rmi-ld-white: #fff;
  --rmi-ld-success: #38a169;
  --rmi-ld-error: #c53030;
  --rmi-ld-sans: "Inter", Arial, sans-serif;
  --rmi-ld-serif: "Source Serif Pro", Georgia, serif;
  --rmi-ld-ui-size: 17px;
  --rmi-ld-body-size: 20px;
  --rmi-ld-body-leading: 1.7;
  --rmi-ld-h1: 52px;
  --rmi-ld-h2: 40px;
  --rmi-ld-h3: 28px;
  --rmi-ld-button-size: 18px;
  --rmi-ld-lesson-size: 16px;
  --rmi-ld-topic-size: 14px;
  --rmi-ld-small: 13px;
  --rmi-ld-header-height: 80px;
  --rmi-ld-logo-height: 60px;
  --rmi-ld-sidebar-width: 350px;
  --rmi-ld-sidebar-closed: 50px;
  --rmi-ld-admin-offset: 0px;
  --rmi-ld-content-max: none; /* Ancho completo como en la referencia. */
  --rmi-ld-content-top: 40px;
  --rmi-ld-content-side: 85px;
  --rmi-ld-content-bottom: 85px;
  --rmi-ld-title-gap: 50px;
  --rmi-ld-paragraph-gap: 1.1em;
  --rmi-ld-radius: 5px;
  --rmi-ld-card-radius: 12px;
  --rmi-ld-progress-height: 8px;
  --rmi-ld-focus-ring: 3px solid var(--rmi-ld-ink);
  --rmi-ld-header-shadow: 0 0 20px rgb(18 30 54 / 5%);
}

/* 02 · Ámbito LMS: no se cambia la fuente de iconos ni el resto de la web. */
body .learndash-wrapper {
  font-family: var(--rmi-ld-sans);
  font-size: var(--rmi-ld-ui-size) !important;
  font-weight: 400;
  line-height: 1.6;
  color: var(--rmi-ld-text);
  --ld-typography-font-family: var(--rmi-ld-sans);
  --ld-color-brand-primary: var(--rmi-ld-ink);
  --ld-color-brand-secondary: var(--rmi-ld-muted);
  --ld-color-brand-tertiary: var(--rmi-ld-amber-hover);
  --ld-color-system-body-text: var(--rmi-ld-text);
  --ld-color-system-dark: var(--rmi-ld-deep);
  --ld-color-system-text-dark: var(--rmi-ld-ink);
  --ld-color-system-subtle: var(--rmi-ld-muted);
  --ld-color-system-subtle-text: var(--rmi-ld-muted);
  --ld-color-system-border: var(--rmi-ld-border);
  --ld-color-system-light-1: var(--rmi-ld-pale);
  --ld-color-system-light-2: var(--rmi-ld-paper);
  --ld-color-system-white: var(--rmi-ld-white);
  --ld-color-button: var(--rmi-ld-ink);
  --ld-color-button-bg: var(--rmi-ld-amber);
  --ld-color-button-bg-hover: var(--rmi-ld-amber-hover);
  --ld-color-button-secondary-border: var(--rmi-ld-ink);
  --ld-color-semantic-success: var(--rmi-ld-success);
  --ld-color-semantic-error: var(--rmi-ld-error);
}
body.ld-in-focus-mode {
  margin: 0;
  padding: 0 !important;
  background: var(--rmi-ld-paper);
  color: var(--rmi-ld-text);
  font-family: var(--rmi-ld-sans);
}
body.ld-in-focus-mode.admin-bar { --rmi-ld-admin-offset: 32px; }
html:has(body.ld-in-focus-mode.admin-bar) { margin-top: 0 !important; }
body.ld-in-focus-mode .learndash-wrapper { margin-top: 0; }
body .learndash-wrapper .ld-focus,
body .learndash-wrapper .ld-focus * { box-sizing: border-box; }
body .learndash-wrapper .ld-focus {
  min-height: 100vh;
  background: var(--rmi-ld-paper);
  padding-top: var(--rmi-ld-admin-offset);
}
/* Neutraliza la etiqueta global de enlaces de GeneratePress en la UI LMS. */
body .learndash-wrapper :is(.ld-breadcrumbs,.ld-course-navigation,.ld-focus-header,.ld-content-actions,.ld-table-list,.ld-item-list,.ld-accordion) a {
  background-color: transparent;
  border-radius: 0;
  padding: 0;
  text-decoration: none !important;
  text-shadow: none !important;
}

/* 03 · Cabecera: el logo y las acciones participan en el reparto de espacio. */
body .learndash-wrapper .ld-focus .ld-focus-header {
  position: fixed;
  inset: var(--rmi-ld-admin-offset) 0 auto;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 16px;
  width: 100%;
  height: var(--rmi-ld-header-height);
  padding: 0 20px;
  border: 0;
  background: var(--rmi-ld-white);
  box-shadow: var(--rmi-ld-header-shadow);
  z-index: 100;
}
body .learndash-wrapper .ld-focus .ld-focus-header > * { min-width: 0; }
body .learndash-wrapper .ld-focus .ld-focus-header .ld-brand-logo {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  order: 0;
  width: auto;
  height: 100%;
  max-width: 210px;
  padding: 8px 0;
  margin: 0;
  background: transparent;
}
body .learndash-wrapper .ld-focus .ld-focus-header .ld-brand-logo img {
  display: block;
  height: var(--rmi-ld-logo-height);
  width: auto;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
body .learndash-wrapper .ld-focus .ld-focus-header .ld-progress {
  display: flex;
  flex: 1 1 240px;
  align-items: center;
  order: 1;
  max-width: none;
  height: auto;
  padding: 0 12px;
  margin: 0;
  border: 0;
}
body .learndash-wrapper .ld-focus-header .ld-progress-wrap { width: 100%; }
body .learndash-wrapper .ld-focus-header .ld-progress-heading { margin-bottom: 5px; }
body .learndash-wrapper .ld-focus-header .ld-progress-stats {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 12px;
  line-height: 1.4;
}
body .learndash-wrapper .ld-focus .ld-focus-header .mi-boton-personalizado-cursos {
  flex: 0 0 auto;
  order: 2;
  padding: 0 12px;
  border-left: 1px solid var(--rmi-ld-border);
}
body .learndash-wrapper .ld-focus .ld-focus-header .mi-boton-personalizado-cursos .ld-button {
  width: auto;
  margin: 0;
  padding: 10px 0;
  font-size: 14px;
  font-weight: 600;
  color: var(--rmi-ld-ink) !important;
}
body .learndash-wrapper .ld-focus .ld-focus-header > .sfwd-mark-complete {
  flex: 0 1 auto;
  order: 3;
  margin: 0;
}
/* La navegación nativa se conserva si no existe el enlace personalizado. */
body .learndash-wrapper .ld-focus .ld-focus-header .ld-content-actions {
  flex: 0 1 auto;
  order: 2;
  height: auto;
  border: 0;
  padding: 0;
}
body .learndash-wrapper .ld-focus .ld-focus-header:has(.mi-boton-personalizado-cursos) .ld-content-actions { display: none; }
body .learndash-wrapper .ld-focus .ld-focus-header .ld-content-action {
  height: auto;
  padding: 0;
  border: 0;
}
body .learndash-wrapper .ld-focus .ld-focus-header .ld-user-menu {
  flex: 0 1 220px;
  order: 4;
  height: auto;
  min-height: 44px;
  padding: 0 0 0 12px;
  border: 0;
  border-left: 1px solid var(--rmi-ld-border);
  font-size: var(--rmi-ld-small);
}
body .learndash-wrapper .ld-focus-header .ld-user-welcome-text {
  min-width: 0;
  overflow-wrap: anywhere;
  line-height: 1.4;
}
body .learndash-wrapper .ld-focus-header .ld-profile-avatar { flex-shrink: 0; }
body .learndash-wrapper .ld-focus-header .ld-user-menu-items {
  width: max-content;
  min-width: 190px;
  max-width: min(320px, calc(100vw - 32px));
}
body .learndash-wrapper .ld-focus .ld-focus-header .ld-user-menu .ld-user-menu-items a:not([disabled]) {
  background: var(--rmi-ld-ink) !important;
  color: var(--rmi-ld-white) !important;
  padding: 12px 20px;
  font-size: 14px;
  white-space: normal;
}
body .learndash-wrapper .ld-focus .ld-focus-header .ld-user-menu .ld-user-menu-items::before { border-bottom-color: var(--rmi-ld-ink) !important; }
body .learndash-wrapper .ld-focus .ld-focus-header .ld-user-menu:focus-within .ld-user-menu-items { opacity: 1; visibility: visible; }
body .learndash-wrapper .ld-focus .ld-focus-header .sfwd-mark-complete :is(.learndash_mark_complete_button,.learndash_mark_incomplete_button) {
  background: transparent !important;
  color: var(--rmi-ld-ink) !important;
  border: 1px solid var(--rmi-ld-border);
  border-radius: var(--rmi-ld-radius);
  padding: 10px 42px 10px 14px;
  font-family: var(--rmi-ld-sans);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
  text-transform: uppercase;
  white-space: normal;
  height: auto;
}
body .learndash-wrapper .ld-focus .ld-focus-header .sfwd-mark-complete::after { color: var(--rmi-ld-ink) !important; }
body .learndash-wrapper .ld-focus .ld-focus-header .sfwd-mark-complete :is(.learndash_mark_complete_button,.learndash_mark_incomplete_button):hover:not(:disabled) {
  background: var(--rmi-ld-amber-pale) !important;
  border-color: var(--rmi-ld-amber-hover);
}

/* 04 · Barra lateral. Se conservan las clases y las alturas de LearnDash. */
body .learndash-wrapper .ld-focus .ld-focus-sidebar {
  position: fixed;
  top: calc(var(--rmi-ld-admin-offset) + var(--rmi-ld-header-height));
  bottom: 0;
  height: calc(100vh - var(--rmi-ld-admin-offset) - var(--rmi-ld-header-height));
  height: calc(100dvh - var(--rmi-ld-admin-offset) - var(--rmi-ld-header-height));
  width: var(--rmi-ld-sidebar-width);
  padding: 20px 0 0;
  border: 0;
  background: var(--rmi-ld-pale) !important;
  box-shadow: none;
  display: flex;
  flex-direction: column;
}
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-focus-sidebar-wrapper {
  flex: 1 1 auto;
  min-height: 0;
  height: auto;
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
  padding-bottom: 32px;
  scrollbar-width: thin;
  scrollbar-color: var(--rmi-ld-muted) var(--rmi-ld-pale);
}
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation-heading {
  width: 100%;
  flex: 0 0 auto;
  padding: 20px 38px 20px 17px;
  min-height: 76px;
  background: var(--rmi-ld-ink) !important;
  color: var(--rmi-ld-white) !important;
  border: 0;
}
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation-heading :is(h3,.ld-focus-mode-course-heading-wrapper,a) {
  color: var(--rmi-ld-white) !important;
  font-family: var(--rmi-ld-sans);
  font-size: 17px !important;
  font-weight: 700;
  line-height: 1.35;
  background: transparent;
  text-decoration: none;
}
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-focus-sidebar-trigger { height: auto; }
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-focus-sidebar-trigger .ld-icon {
  background: var(--rmi-ld-ink) !important;
  color: var(--rmi-ld-white) !important;
  border: 2px solid var(--rmi-ld-pale);
}
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-focus-sidebar-trigger:is(:hover,:focus-visible) .ld-icon {
  background: var(--rmi-ld-amber) !important;
  color: var(--rmi-ld-ink) !important;
}
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-progress { padding: 24px 17px; margin: 0 0 8px; }
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-progress-bar { background: var(--rmi-ld-white); }
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation .ld-lesson-item {
  background: transparent !important;
  border: 0;
}
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-lesson-item .ld-lesson-item-preview { padding: 17px 17px 8px; }
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-lesson-item .ld-lesson-title {
  color: var(--rmi-ld-ink) !important;
  font-size: var(--rmi-ld-lesson-size) !important;
  line-height: 1.4;
}
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-lesson-item-preview-heading { line-height: 1.4; }
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-expand-button.ld-button-alternate {
  background: transparent !important;
  color: var(--rmi-ld-muted) !important;
  font-size: 14px !important;
  font-weight: 700;
  line-height: 1.4;
  border: 0;
  border-radius: var(--rmi-ld-radius);
  box-shadow: none;
  margin-top: 5px;
  padding: 7px 28px;
}
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-expand-button .ld-expand-text { color: var(--rmi-ld-muted) !important; }
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-expand-button.ld-button-alternate .ld-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 15px;
  width: 15px;
  height: 15px;
  padding: 0;
  font-size: 8px;
  border-radius: 50%;
  background: var(--rmi-ld-ink) !important;
  color: var(--rmi-ld-white) !important;
}
/* Las franjas eran el fondo del contenedor bajo padding:10px 0 5px.
 * Se eliminan fondo, relleno vertical y adornos SOLO en las listas laterales.
 * No se borran los círculos de estado ni la barra de progreso. */
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation .ld-lesson-item .ld-table-list {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 17px 12px;
}
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-lesson-item-expanded .ld-table-list-items {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 7px;
}
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation .ld-topic-list.ld-table-list::before,
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation .ld-topic-list.ld-table-list::after,
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-lesson-item-expanded::before {
  content: none !important;
  display: none !important;
}
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-table-list .ld-table-list-item { border: 0 !important; }
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation .ld-topic-list .ld-table-list-item-preview {
  padding: 8px 8px 8px 20px;
  border-radius: var(--rmi-ld-radius);
  line-height: 1.45;
  color: var(--rmi-ld-ink);
}
body .learndash-wrapper .ld-focus .ld-focus-sidebar a.ld-table-list-item-preview .ld-topic-title {
  font-size: var(--rmi-ld-topic-size) !important;
  line-height: 1.45;
  color: var(--rmi-ld-ink);
  overflow-wrap: anywhere;
}
body .learndash-wrapper .ld-focus .ld-focus-sidebar :is(.ld-is-current-lesson > .ld-lesson-item-preview .ld-lesson-title,.ld-is-current-item .ld-topic-title) { font-weight: 700; }
body .learndash-wrapper .ld-focus .ld-focus-sidebar :is(.ld-lesson-item-preview-heading,.ld-table-list-item-preview):hover { background-color: rgb(255 255 255 / 45%); }
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation .ld-lesson-item-section-heading {
  padding: 10px 17px;
  background: var(--rmi-ld-muted) !important;
}
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation .ld-lesson-item-section-heading .ld-lesson-section-heading {
  color: var(--rmi-ld-white) !important;
  font-size: 20px !important;
  line-height: 1.4;
}

/* 05 · Contenido. Separar el tamaño de lectura del tamaño de interfaz. */
body .learndash-wrapper .ld-focus .ld-focus-main {
  min-width: 0;
  width: calc(100% - var(--rmi-ld-sidebar-width));
  margin-left: var(--rmi-ld-sidebar-width);
  padding-top: var(--rmi-ld-header-height);
}
body .learndash-wrapper .ld-focus .ld-focus-main .ld-focus-content {
  max-width: var(--rmi-ld-content-max);
  margin: 0 auto;
  padding: var(--rmi-ld-content-top) var(--rmi-ld-content-side) var(--rmi-ld-content-bottom);
  font-family: var(--rmi-ld-sans);
  font-size: var(--rmi-ld-body-size);
  line-height: var(--rmi-ld-body-leading);
  color: var(--rmi-ld-text);
}
body .learndash-wrapper .ld-focus .ld-focus-main .ld-focus-content > h1 {
  font-family: var(--rmi-ld-serif);
  font-size: var(--rmi-ld-h1);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
  color: var(--rmi-ld-text);
  margin: 0 0 var(--rmi-ld-title-gap);
  padding: 0;
  overflow-wrap: anywhere;
}
body .learndash-wrapper .ld-focus-content :is(.ld-tab-content,.realmed-lesson-body) {
  font-size: var(--rmi-ld-body-size);
  line-height: var(--rmi-ld-body-leading);
}
/* realmed-lesson-body es opcional para limitar solo el texto largo a 70ch. */
body .learndash-wrapper .ld-focus-content .realmed-lesson-body { max-width: 70ch; margin-inline: auto; }
body .learndash-wrapper .ld-focus-content :is(.ld-tab-content,.realmed-lesson-body) :is(h1,h2,h3,h4,h5,h6) {
  font-family: var(--rmi-ld-serif);
  color: var(--rmi-ld-ink);
  font-weight: 700;
  line-height: 1.25;
  margin: 1.5em 0 .6em;
  padding: 0;
}
body .learndash-wrapper .ld-focus-content :is(.ld-tab-content,.realmed-lesson-body) h1 { font-size: var(--rmi-ld-h1); }
body .learndash-wrapper .ld-focus-content :is(.ld-tab-content,.realmed-lesson-body) h2 { font-size: var(--rmi-ld-h2); }
body .learndash-wrapper .ld-focus-content :is(.ld-tab-content,.realmed-lesson-body) h3 { font-size: var(--rmi-ld-h3); font-weight: 600; }
body .learndash-wrapper .ld-focus-content :is(.ld-tab-content,.realmed-lesson-body) h4 { font-size: 24px; }
body .learndash-wrapper .ld-focus-content :is(.ld-tab-content,.realmed-lesson-body) :is(h5,h6) { font-size: 20px; }
body .learndash-wrapper .ld-focus-content :is(.ld-tab-content,.realmed-lesson-body) p { margin: 0 0 var(--rmi-ld-paragraph-gap); padding: 0; }
body .learndash-wrapper .ld-focus-content :is(.ld-tab-content,.realmed-lesson-body) :is(ul,ol):not([class*="wpProQuiz"]):not([role]) { margin-block: 0 1.1em; padding-inline-start: 1.5em; }
body .learndash-wrapper .ld-focus-content .realmed-lesson-body li + li { margin-top: .4em; }
body .learndash-wrapper .ld-focus-content :is(.ld-tab-content,.realmed-lesson-body) blockquote {
  font-family: var(--rmi-ld-serif);
  margin: 1.5em 0;
  padding: 1em 1.25em;
  border-inline-start: 4px solid var(--rmi-ld-amber);
  background: var(--rmi-ld-amber-pale);
  color: var(--rmi-ld-ink);
}
/* Decisión de marca: enlace editorial ámbar, fondo gris y esquinas suaves. */
body .learndash-wrapper .ld-focus-content :is(p,blockquote,figcaption,.realmed-lesson-body li) a:not(.ld-button):not(.button):not(.wp-block-button__link) {
  color: var(--rmi-ld-amber);
  background: var(--rmi-ld-pale);
  border: 0;
  border-radius: .3em;
  padding: .08em .28em;
  font-weight: 600;
  text-decoration: none;
  text-shadow: none;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  overflow-wrap: anywhere;
}
body .learndash-wrapper .ld-focus-content :is(p,blockquote,figcaption,.realmed-lesson-body li) a:hover { color: var(--rmi-ld-amber-hover); }
body .learndash-wrapper .ld-focus-content :is(img,video,iframe) { max-width: 100%; }
body .learndash-wrapper .ld-focus-content :is(.wp-block-image,.realmed-lesson-body) img { height: auto; }
body .learndash-wrapper .ld-focus-content .wp-block-table { max-width: 100%; overflow-x: auto; }
body .learndash-wrapper .ld-focus-content .realmed-lesson-body :is(th,td) { padding: .65em .8em; border: 1px solid var(--rmi-ld-border); }
body .learndash-wrapper .ld-focus-content .realmed-lesson-body th { background: var(--rmi-ld-pale); color: var(--rmi-ld-ink); }

/* 06 · Componentes del LMS. !important solo para vencer colores inline LD. */
body .learndash-wrapper :is(.ld-topic-title,.ld-lesson-title,.ld-item-title) { color: var(--rmi-ld-ink); font-size: 17px; }
body .learndash-wrapper :is(.ld-breadcrumbs,.ld-table-list,.ld-content-actions,.ld-item-list,.ld-tabs-navigation,.ld-alert,.ld-focus-comments) { font-size: var(--rmi-ld-ui-size); }
body .learndash-wrapper .ld-breadcrumbs {
  background: var(--rmi-ld-pale);
  border-radius: var(--rmi-ld-radius);
  gap: 8px 16px;
  padding: 10px 17px;
  margin-bottom: 17px;
  line-height: 1.5;
}
body .learndash-wrapper .ld-breadcrumbs a { color: var(--rmi-ld-ink) !important; font-size: 13px; font-weight: 600; overflow-wrap: anywhere; }
body .learndash-wrapper .ld-breadcrumbs a:hover { color: var(--rmi-ld-muted) !important; }
body .learndash-wrapper .ld-breadcrumbs .ld-breadcrumbs-segments {
  flex: 1 1 auto;
  min-width: 0;
  text-align: start;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  line-height: 1.5;
}
/* El contenedor opcional de Visual Customizer puede llegar vacío al migrar. */
body .learndash-wrapper .ld-breadcrumbs .lds-breadcrumb-meta { display: contents; }
body .learndash-wrapper .ld-focus-content :is(.ld-topic-status,.ld-lesson-status) { background: transparent; }
body .learndash-wrapper .ld-table-list { border-radius: var(--rmi-ld-radius); }
body .learndash-wrapper .ld-table-list .ld-table-list-header { background: var(--rmi-ld-ink) !important; color: var(--rmi-ld-white); padding: 18px 24px; }
body .learndash-wrapper .ld-table-list .ld-table-list-items { background: var(--rmi-ld-pale); border-color: var(--rmi-ld-border); }
body .learndash-wrapper .ld-table-list .ld-table-list-item { border-color: var(--rmi-ld-border); }
body .learndash-wrapper .ld-table-list .ld-table-list-item-preview { padding: 16px 24px; color: var(--rmi-ld-ink); }
body .learndash-wrapper .ld-table-list .ld-table-list-footer { background: var(--rmi-ld-pale); border-color: var(--rmi-ld-border); }
body .learndash-wrapper .ld-item-list .ld-item-list-item { background: var(--rmi-ld-paper); border-color: var(--rmi-ld-border); border-radius: var(--rmi-ld-radius); margin-bottom: 25px; }
body .learndash-wrapper .ld-item-list .ld-item-list-item .ld-item-list-item-preview { padding: 25px; }
body .learndash-wrapper .ld-item-list .ld-item-list-item .ld-item-list-item-expanded { background: var(--rmi-ld-pale); }
body .learndash-wrapper .ld-primary-color,
body .learndash-wrapper .ld-primary-color-hover:hover,
body .learndash-wrapper .ld-lesson-item.ld-is-current-lesson .ld-lesson-item-preview-heading,
body .learndash-wrapper .ld-lesson-item.ld-is-current-lesson .ld-lesson-title { color: var(--rmi-ld-ink) !important; }
body .learndash-wrapper .ld-primary-background { background-color: var(--rmi-ld-ink) !important; }
body .learndash-wrapper .ld-secondary-color { color: var(--rmi-ld-muted) !important; }
body .learndash-wrapper .ld-secondary-background { background-color: var(--rmi-ld-muted) !important; }
body .learndash-wrapper .ld-progress .ld-progress-bar { height: var(--rmi-ld-progress-height); border-radius: 999px; background: var(--rmi-ld-pale); }
body .learndash-wrapper .ld-progress .ld-progress-bar-percentage { height: 100%; border-radius: inherit; background: var(--rmi-ld-muted) !important; }
body .learndash-wrapper .ld-progress .ld-progress-percentage { color: var(--rmi-ld-muted) !important; font-size: 13px; font-weight: 700; }
body .learndash-wrapper .ld-progress .ld-progress-steps { font-size: 13px; color: var(--rmi-ld-text); }
body .learndash-wrapper .ld-status { font-size: 12px; line-height: 1.3; border-radius: 999px; }
body .learndash-wrapper .ld-status.ld-status-progress { background: var(--rmi-ld-ink) !important; color: var(--rmi-ld-white) !important; }
body .learndash-wrapper .ld-status.ld-status-complete { background: var(--rmi-ld-success) !important; color: var(--rmi-ld-white) !important; }
body .learndash-wrapper .ld-status-icon.ld-status-complete { background: var(--rmi-ld-muted) !important; color: var(--rmi-ld-white) !important; }
body .learndash-wrapper .ld-course-navigation .ld-lesson-item.ld-is-current-lesson .ld-status-incomplete,
body .learndash-wrapper .ld-status-icon.ld-status-incomplete { border-color: var(--rmi-ld-ink) !important; }
body .learndash-wrapper .ld-status-icon.ld-status-in-progress { border-color: var(--rmi-ld-muted); }
body .learndash-wrapper .ld-status.ld-status-waiting { background: var(--rmi-ld-amber-pale); color: var(--rmi-ld-ink); }
body .learndash-wrapper .ld-button,
body .learndash-wrapper .ld-expand-button,
body .learndash-wrapper .wpProQuiz_content :is(.wpProQuiz_button,.wpProQuiz_button2),
body .learndash-wrapper :is(.learndash_mark_complete_button,.learndash_mark_incomplete_button) {
  font-family: var(--rmi-ld-sans);
  font-size: var(--rmi-ld-button-size);
  font-weight: 700;
  line-height: 1.35;
  border-radius: var(--rmi-ld-radius);
  text-shadow: none;
  text-decoration: none;
}
body .learndash-wrapper .ld-button:not([disabled]):not(.ld-button-reverse):not(.ld-button-transparent):not(.ld--ignore-inline-css),
body .learndash-wrapper .wpProQuiz_content .wpProQuiz_button:not([disabled]):not(.wpProQuiz_button_reShowQuestion):not(.wpProQuiz_button_restartQuiz),
body .learndash-wrapper .wpProQuiz_content .wpProQuiz_button2:not([disabled]),
body .learndash-wrapper .ld-expand-button:not([disabled]):not(.ld-button-alternate),
body .learndash-wrapper .learndash_mark_complete_button:not(.ld--ignore-inline-css),
body .learndash-wrapper .learndash_mark_incomplete_button {
  background: var(--rmi-ld-amber) !important;
  color: var(--rmi-ld-ink) !important;
  padding: 12px 20px;
  border: 0;
}
body .learndash-wrapper .ld-button:hover:not([disabled]):not(.ld-button-transparent):not(.ld--ignore-inline-css),
body .learndash-wrapper .learndash_mark_complete_button:hover:not([disabled]),
body .learndash-wrapper .wpProQuiz_content .wpProQuiz_button:hover:not([disabled]) {
  background: var(--rmi-ld-amber-hover) !important;
  color: var(--rmi-ld-ink) !important;
  opacity: 1;
}
body .learndash-wrapper .ld-button.ld-button-transparent,
body .learndash-wrapper .ld-button.ld-button-reverse,
body .learndash-wrapper .ld-expand-button.ld-button-alternate { background: transparent !important; color: var(--rmi-ld-ink) !important; }
body .learndash-wrapper .ld-focus-content .ld-content-actions { gap: 16px; border: 0; padding: 24px 0; }
body .learndash-wrapper .ld-content-action { min-width: 0; }
body .learndash-wrapper .ld-content-action .ld-button { max-width: 100%; white-space: normal; }
body .learndash-wrapper .sfwd-mark-complete { position: relative; }
body .learndash-wrapper .sfwd-mark-complete .learndash_mark_complete_button { padding-right: 45px !important; }
body .learndash-wrapper .sfwd-mark-complete::after { right: 16px; left: auto; }
body .learndash-wrapper .ld-tabs .ld-tabs-navigation .ld-tab.ld-active { color: var(--rmi-ld-ink) !important; }
body .learndash-wrapper .ld-tabs .ld-tabs-navigation .ld-tab.ld-active::after { background: var(--rmi-ld-ink) !important; }
body .learndash-wrapper .ld-pagination .ld-pages { background: var(--rmi-ld-pale); color: var(--rmi-ld-ink); border-radius: 999px; font-size: 14px; }
body .learndash-wrapper .ld-alert { border-radius: var(--rmi-ld-radius); }
body .learndash-wrapper .ld-alert-success { border-color: var(--rmi-ld-success); color: var(--rmi-ld-text); }
body .learndash-wrapper .ld-alert-success .ld-alert-icon { background: var(--rmi-ld-success) !important; }
body .learndash-wrapper .ld-alert-warning { border-color: var(--rmi-ld-amber-hover); color: var(--rmi-ld-text); }
body .learndash-wrapper .ld-alert-warning .ld-alert-icon { background: var(--rmi-ld-amber) !important; color: var(--rmi-ld-ink) !important; }
body .learndash-wrapper :is(input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="url"],textarea,select) {
  max-width: 100%;
  font-family: var(--rmi-ld-sans);
  font-size: 17px;
  line-height: 1.5;
  padding: 10px 12px;
  color: var(--rmi-ld-text);
  background: var(--rmi-ld-white);
  border: 1px solid var(--rmi-ld-border);
  border-radius: var(--rmi-ld-radius);
}
body .learndash-wrapper :is(input,textarea)[aria-invalid="true"] { border-color: var(--rmi-ld-error); }
body .learndash-wrapper :is(input[type="checkbox"],input[type="radio"]) { accent-color: var(--rmi-ld-ink); }
body .learndash-wrapper .ld-focus-comments { margin-top: 40px; }
body .learndash-wrapper .wpProQuiz_content { font-family: var(--rmi-ld-sans); color: var(--rmi-ld-text); }
body .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem label { border-color: var(--rmi-ld-border); border-radius: var(--rmi-ld-radius); }
body .learndash-wrapper .wpProQuiz_content .wpProQuiz_response { border-radius: var(--rmi-ld-radius); }

/* 07 · Portada Modern: se preserva la estructura y la lógica del acordeón. */
body .learndash-wrapper .ld-accordion__item-title { color: var(--rmi-ld-ink); text-decoration: none; text-shadow: none; }
body .learndash-wrapper .ld-accordion__item-title:hover { color: var(--rmi-ld-muted); text-shadow: none; }
body .learndash-wrapper .ld-accordion__expand-button.ld-accordion__expand-button--lesson,
body .learndash-wrapper .ld-accordion__expand-button.ld-accordion__expand-button--lesson :is(.ld-accordion__expand-button-text,svg) {
  color: var(--rmi-ld-muted) !important;
  background: transparent !important;
  border: 0;
  box-shadow: none;
  text-shadow: none;
  text-decoration: none;
}
/* Coordinar la cabecera de 80px con el control opcional Presenter. */
body .ld-presenter-mode {
  --focus-mode-header-height: var(--rmi-ld-header-height);
  --focus-mode-sidebar-width: var(--rmi-ld-sidebar-width);
  --focus-mode-sidebar-collapsed-width: var(--rmi-ld-sidebar-closed);
}
body .ld-presenter-mode__button { background: var(--rmi-ld-ink); }
body .ld-presenter-mode--active + .ld-focus-content {
  --focus-mode-main-left-margin: var(--rmi-ld-sidebar-closed);
  --focus-mode-sidebar-open-main-left-margin: var(--rmi-ld-sidebar-width);
}

/* 08 · Posición inversa, plegado, móvil y teclado. */
body .learndash-wrapper .ld-focus.ld-focus-sidebar-collapsed .ld-focus-sidebar { transform: translateX(calc(-100% + var(--rmi-ld-sidebar-closed))); }
body .learndash-wrapper .ld-focus.ld-focus-sidebar-collapsed .ld-focus-main { width: calc(100% - var(--rmi-ld-sidebar-closed)); margin-left: var(--rmi-ld-sidebar-closed); }
body .learndash-wrapper .ld-focus:is(.ld-focus-position-right,.ld-focus-position-rtl-left) .ld-focus-main { margin-left: 0; margin-right: var(--rmi-ld-sidebar-width); }
body .learndash-wrapper .ld-focus:is(.ld-focus-position-right,.ld-focus-position-rtl-left) .ld-course-navigation-heading { padding-left: 38px; padding-right: 17px; }
body .learndash-wrapper .ld-focus:is(.ld-focus-position-right,.ld-focus-position-rtl-left).ld-focus-sidebar-collapsed .ld-focus-sidebar { transform: translateX(calc(100% - var(--rmi-ld-sidebar-closed))); }
body .learndash-wrapper .ld-focus:is(.ld-focus-position-right,.ld-focus-position-rtl-left).ld-focus-sidebar-collapsed .ld-focus-main { margin-left: 0; margin-right: var(--rmi-ld-sidebar-closed); }
@media (max-width: 1280px) {
  :root { --rmi-ld-content-side: 48px; }
  body .learndash-wrapper .ld-focus .ld-focus-header { gap: 12px; padding-inline: 16px; }
  body .learndash-wrapper .ld-focus .ld-focus-header .ld-user-menu { flex: 0 0 auto; }
  body .learndash-wrapper .ld-focus .ld-focus-header .ld-user-welcome-text { display: none; }
}
@media (min-width: 769px) and (max-width: 1024px) {
  :root { --rmi-ld-content-side: 32px; --rmi-ld-h1: 44px; }
  body .learndash-wrapper .ld-focus .ld-focus-header .ld-brand-logo { max-width: 150px; }
  body .learndash-wrapper .ld-focus .ld-focus-header .ld-brand-logo img { height: 46px; }
  body .learndash-wrapper .ld-focus-header .sfwd-mark-complete .learndash_mark_complete_button { font-size: 12px; }
  body .learndash-wrapper .ld-focus-header .ld-progress .ld-progress-steps { display: none; }
}
@media (max-width: 782px) {
  body.ld-in-focus-mode.admin-bar { --rmi-ld-admin-offset: 46px; }
}
@media (max-width: 768px) {
  :root {
    --rmi-ld-body-size: 17px;
    --rmi-ld-h1: 34px;
    --rmi-ld-h2: 28px;
    --rmi-ld-h3: 22px;
    --rmi-ld-button-size: 16px;
    --rmi-ld-content-top: 28px;
    --rmi-ld-content-side: 20px;
    --rmi-ld-content-bottom: 40px;
    --rmi-ld-title-gap: 28px;
  }
  body .learndash-wrapper .ld-focus .ld-focus-main,
  body .learndash-wrapper .ld-focus.ld-focus-sidebar-collapsed .ld-focus-main,
  body .learndash-wrapper .ld-focus:is(.ld-focus-position-right,.ld-focus-position-rtl-left) .ld-focus-main {
    width: 100%; margin: 0; padding-top: 0;
  }
  body .learndash-wrapper .ld-focus .ld-focus-main .ld-focus-content,
  body .learndash-wrapper .ld-focus.ld-focus-sidebar-collapsed .ld-focus-main .ld-focus-content {
    margin: 0 auto;
    padding: var(--rmi-ld-content-top) var(--rmi-ld-content-side) var(--rmi-ld-content-bottom);
  }
  body .learndash-wrapper .ld-focus .ld-focus-header {
    position: relative;
    inset: auto;
    height: auto;
    min-height: 70px;
    padding: 10px 14px;
    gap: 10px;
    flex-wrap: wrap;
  }
  body .learndash-wrapper .ld-focus .ld-focus-header .ld-mobile-nav { order: 0; flex: 0 0 40px; }
  body .learndash-wrapper .ld-focus .ld-focus-header .ld-brand-logo { order: 1; max-width: 155px; height: 45px; padding: 0; }
  body .learndash-wrapper .ld-focus .ld-focus-header .ld-brand-logo img { height: 44px; }
  body .learndash-wrapper .ld-focus .ld-focus-header .ld-user-menu { order: 2; margin-left: auto; padding: 0; border: 0; }
  body .learndash-wrapper .ld-focus .ld-focus-header .ld-user-menu .ld-profile-avatar { margin-left: 0; }
  body .learndash-wrapper .ld-focus .ld-focus-header .ld-progress { order: 3; flex: 1 0 100%; padding: 4px 0; }
  body .learndash-wrapper .ld-focus-header .ld-progress .ld-progress-stats { display: flex; text-align: start; }
  body .learndash-wrapper .ld-focus-header .ld-progress .ld-progress-steps { display: block; }
  body .learndash-wrapper .ld-focus .ld-focus-header .mi-boton-personalizado-cursos { order: 4; padding: 0; border: 0; }
  body .learndash-wrapper .ld-focus .ld-focus-header > .sfwd-mark-complete { order: 5; flex: 1 1 180px; margin: 0; }
  body .learndash-wrapper .ld-focus .ld-focus-header .sfwd-mark-complete .learndash_mark_complete_button { width: 100%; font-size: 12px; }
  body .learndash-wrapper .ld-focus .ld-focus-header .ld-content-actions { order: 5; flex-basis: 100%; }
  body .learndash-wrapper .ld-focus .ld-focus-sidebar {
    position: fixed;
    top: var(--rmi-ld-admin-offset);
    height: calc(100vh - var(--rmi-ld-admin-offset));
    height: calc(100dvh - var(--rmi-ld-admin-offset));
    width: min(var(--rmi-ld-sidebar-width), calc(100vw - 24px));
    padding-top: 0;
    z-index: 1000;
  }
  body .learndash-wrapper .ld-focus.ld-focus-initial-transition .ld-focus-sidebar { display: none; }
  body .learndash-wrapper .ld-focus.ld-focus-sidebar-collapsed .ld-focus-sidebar { transform: translateX(-100%); }
  body .learndash-wrapper .ld-focus:is(.ld-focus-position-right,.ld-focus-position-rtl-left).ld-focus-sidebar-collapsed .ld-focus-sidebar { transform: translateX(100%); }
  body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation-heading { position: relative; }
  body .learndash-wrapper .ld-focus-content .ld-breadcrumbs { align-items: flex-start; }
  body .learndash-wrapper .ld-focus-content .ld-breadcrumbs .ld-status { width: auto; margin-top: 0; }
  body .learndash-wrapper .ld-focus-content .ld-content-actions { flex-wrap: wrap; }
  body .learndash-wrapper .ld-focus-content .ld-content-action { flex: 1 1 180px; }
  body .learndash-wrapper .ld-table-list .ld-table-list-header { padding: 16px; flex-wrap: wrap; gap: 10px; }
  body .learndash-wrapper .ld-table-list .ld-table-list-item-preview { padding: 14px 16px; }
}
/* WP fija su barra solo por encima de 600px; aquí se coordina con el drawer. */
@media (max-width: 600px) {
  body.ld-in-focus-mode.admin-bar #wpadminbar { position: fixed; }
}
body .learndash-wrapper :is(a,button,input,textarea,select,[tabindex]):focus-visible {
  outline: var(--rmi-ld-focus-ring) !important;
  outline-offset: 3px;
  opacity: 1;
}
body .learndash-wrapper .ld-course-navigation-heading a:focus-visible,
body .learndash-wrapper .ld-user-menu-items a:focus-visible { outline-color: var(--rmi-ld-amber) !important; outline-offset: -3px; }
body .learndash-wrapper :is(button,input[type="submit"],.ld-button):disabled { opacity: .55; cursor: not-allowed; }
@media (prefers-reduced-motion: reduce) {
  body .learndash-wrapper .ld-focus,
  body .learndash-wrapper .ld-focus *,
  body .learndash-wrapper .ld-focus *::before,
  body .learndash-wrapper .ld-focus *::after { scroll-behavior: auto; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* 09 · Tarjetas de cursos en Mi cuenta: dos columnas, una en móvil.
 * Conserva la presentación del archivo original. La traducción se hace en
 * WordPress: no se oculta el nombre accesible del enlace con font-size:0.
 */

/* Tarjetas consolidadas */
body.woocommerce-account.logged-in div[id^="ld-course-list-content"],
body.woocommerce-account.logged-in div[id^="ld-course-list-content"] * { box-sizing: border-box; }
body.woocommerce-account.logged-in article.sfwd-courses .ribbon.enrolled { display: none; }
/* Neutraliza la fila Bootstrap y crea dos columnas reales. */
body.woocommerce-account.logged-in
div[id^="ld-course-list-content"] .ld-course-list-items.row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    gap: 24px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.woocommerce-account.logged-in
div[id^="ld-course-list-content"] .ld_course_grid {
    display: flex !important;
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Tarjeta de curso */
body.woocommerce-account.logged-in
div[id^="ld-course-list-content"] article.sfwd-courses {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    color: var(--rmi-ld-text) !important;
    background: var(--rmi-ld-white) !important;
    border: 1px solid var(--rmi-ld-border) !important;
    border-radius: var(--rmi-ld-card-radius) !important;
    box-shadow: 0 8px 24px rgba(18, 30, 54, 0.07) !important;
    transition: transform 0.22s ease, box-shadow 0.22s ease,
        border-color 0.22s ease !important;
}

body.woocommerce-account.logged-in
div[id^="ld-course-list-content"] article.sfwd-courses:hover {
    border-color: rgba(90, 103, 130, 0.55) !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 14px 34px rgba(18, 30, 54, 0.12) !important;
}

/* Portada: se respeta la proporción panorámica de los archivos reales. */
body.woocommerce-account.logged-in
article.sfwd-courses > a[aria-hidden="true"] {
    position: relative !important;
    display: block !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    aspect-ratio: 1270 / 500 !important;
    overflow: hidden !important;
    background: var(--rmi-ld-ink) !important;
}

body.woocommerce-account.logged-in
article.sfwd-courses > a[aria-hidden="true"] img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
    border: 0 !important;
    transition: transform 0.35s ease !important;
}

body.woocommerce-account.logged-in
article.sfwd-courses:hover > a[aria-hidden="true"] img {
    transform: scale(1.015) !important;
}

body.woocommerce-account.logged-in
article.sfwd-courses > a[aria-hidden="true"]:focus-visible {
    outline: 3px solid var(--rmi-ld-amber) !important;
    outline-offset: -3px !important;
}

/* Cuerpo de la tarjeta */
body.woocommerce-account.logged-in
article.sfwd-courses .caption {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 22px 22px 20px !important;
    background: var(--rmi-ld-white) !important;
}

body.woocommerce-account.logged-in
article.sfwd-courses .entry-title {
    min-height: 86px !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
    color: var(--rmi-ld-ink) !important;
    font-family: var(--rmi-ld-serif) !important;
    font-size: 25px !important;
    font-weight: 700 !important;
    line-height: 1.16 !important;
    letter-spacing: 0 !important;
    overflow-wrap: anywhere !important;
}

/* Acción principal */
body.woocommerce-account.logged-in
article.sfwd-courses .ld_course_grid_button {
    width: 100% !important;
    margin: auto 0 0 !important;
    padding: 0 !important;
}

body.woocommerce-account.logged-in
article.sfwd-courses .ld_course_grid_button > a.btn.btn-primary {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 11px 18px !important;
    color: var(--rmi-ld-ink) !important;
    background: var(--rmi-ld-amber) !important;
    border: 0 !important;
    border-radius: 5px !important;
    box-shadow: none !important;
    font-family: var(--rmi-ld-sans) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: none !important;
    transition: background-color 0.2s ease, transform 0.2s ease,
        box-shadow 0.2s ease !important;
}



body.woocommerce-account.logged-in
article.sfwd-courses .ld_course_grid_button > a.btn.btn-primary:hover {
    color: var(--rmi-ld-deep) !important;
    background: var(--rmi-ld-amber-hover) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 7px 16px rgba(217, 155, 17, 0.24) !important;
}

body.woocommerce-account.logged-in
article.sfwd-courses .ld_course_grid_button > a.btn.btn-primary:focus-visible {
    outline: 3px solid var(--rmi-ld-ink) !important;
    outline-offset: 3px !important;
}

/* Bloque de progreso */
body.woocommerce-account.logged-in
article.sfwd-courses .learndash-wrapper {
    width: 100% !important;
    margin: 20px 0 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

body.woocommerce-account.logged-in
article.sfwd-courses .ld-progress.ld-progress-inline {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Aplana los envoltorios para colocar: porcentaje, barra y metadatos. */
body.woocommerce-account.logged-in
article.sfwd-courses .ld-progress-heading,
body.woocommerce-account.logged-in
article.sfwd-courses .ld-progress-stats {
    display: contents !important;
}

body.woocommerce-account.logged-in
article.sfwd-courses .ld-progress-percentage {
    order: 1 !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
    color: var(--rmi-ld-ink) !important;
    font-family: var(--rmi-ld-sans) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    letter-spacing: 0.035em !important;
    text-transform: uppercase !important;
}

body.woocommerce-account.logged-in
article.sfwd-courses .ld-progress-bar {
    order: 2 !important;
    width: 100% !important;
    height: 8px !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: var(--rmi-ld-pale) !important;
    border: 0 !important;
    border-radius: 999px !important;
}

body.woocommerce-account.logged-in
article.sfwd-courses .ld-progress-bar-percentage {
    display: block !important;
    height: 100% !important;
    margin: 0 !important;
    background: var(--rmi-ld-amber) !important;
    border-radius: inherit !important;
}

body.woocommerce-account.logged-in
article.sfwd-courses .ld-progress-steps {
    order: 3 !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--rmi-ld-muted) !important;
    font-family: var(--rmi-ld-sans) !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
    text-align: left !important;
    overflow-wrap: anywhere !important;
}


/* =========================================================
   MI CUENTA: RESPONSIVE DE LAS TARJETAS
   ========================================================= */

@media (max-width: 1080px) {
    body.woocommerce-account.logged-in
    div[id^="ld-course-list-content"] .ld-course-list-items.row {
        gap: 20px !important;
    }

    body.woocommerce-account.logged-in
    article.sfwd-courses .caption {
        padding: 20px 18px 18px !important;
    }

    body.woocommerce-account.logged-in
    article.sfwd-courses .entry-title {
        min-height: 82px !important;
        font-size: 23px !important;
    }
}

@media (max-width: 680px) {
    body.woocommerce-account.logged-in
    div[id^="ld-course-list-content"] .ld-course-list-items.row {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 20px !important;
    }

    body.woocommerce-account.logged-in
    article.sfwd-courses .entry-title {
        min-height: 0 !important;
        font-size: 22px !important;
    }
}

@media (max-width: 420px) {
    body.woocommerce-account.logged-in
    article.sfwd-courses .caption {
        padding: 18px 16px 17px !important;
    }

    body.woocommerce-account.logged-in
    article.sfwd-courses .ld_course_grid_button > a.btn.btn-primary {
        min-height: 44px !important;
        padding: 10px 14px !important;
    }

    
}

@media (prefers-reduced-motion: reduce) {
    body.woocommerce-account.logged-in article.sfwd-courses,
    body.woocommerce-account.logged-in article.sfwd-courses img,
    body.woocommerce-account.logged-in
    article.sfwd-courses .ld_course_grid_button > a.btn.btn-primary {
        transition: none !important;
    }

    body.woocommerce-account.logged-in
    div[id^="ld-course-list-content"] article.sfwd-courses:hover,
    body.woocommerce-account.logged-in
    article.sfwd-courses:hover > a[aria-hidden="true"] img {
        transform: none !important;
    }
}
