/* ============================================================
   THERAPY WORKS — Skin de LearnDash (LD30)
   Reviste la funcionalidad real de LearnDash con la marca:
   rosa #F47A77 · burgundy #7B2D5F · tipografía Outfit · tarjetas
   suaves y responsive. NO toca la lógica (accesos, progreso,
   "marcar completado"): solo el aspecto. Se carga después de
   learndash.min.css para sobrescribir. Usa las variables :root
   definidas en style.css.
   ============================================================ */

.learndash-wrapper {
	font-family: 'Outfit', system-ui, sans-serif;
	color: var(--gray-800, #3a3340);
	--ld-primary-color: var(--burgundy, #7B2D5F);
	--ld-primary-color-hover: var(--plum, #5e2249);
	--ld-secondary-color: var(--accent, #F47A77);
}

/* ---- Tipografía y títulos ---- */
.learndash-wrapper h1,
.learndash-wrapper h2,
.learndash-wrapper h3,
.learndash-wrapper h4 { font-family: 'Outfit', sans-serif; color: var(--gray-900, #261f2b); font-weight: 700; }

/* ---- Botones LearnDash ---- */
.learndash-wrapper .ld-button,
.learndash-wrapper a.ld-button,
.learndash-wrapper input.ld-button {
	background: var(--burgundy, #7B2D5F);
	border: none;
	border-radius: 10px;
	font-family: 'Outfit', sans-serif;
	font-weight: 700;
	letter-spacing: .01em;
	padding: 13px 26px;
	box-shadow: 0 6px 18px rgba(123, 45, 95, .18);
	transition: transform .25s cubic-bezier(.16,1,.3,1), background .25s, box-shadow .25s;
}
.learndash-wrapper .ld-button:hover,
.learndash-wrapper a.ld-button:hover {
	background: var(--plum, #5e2249);
	transform: translateY(-2px);
	box-shadow: 0 12px 26px rgba(123, 45, 95, .26);
}
.learndash-wrapper .ld-button.ld-button-transparent {
	background: transparent;
	color: var(--burgundy, #7B2D5F);
	box-shadow: inset 0 0 0 2px var(--burgundy, #7B2D5F);
}
.learndash-wrapper .ld-button.ld-button-transparent:hover {
	background: var(--burgundy, #7B2D5F);
	color: #fff;
}
.learndash-wrapper .ld-button .ld-icon { color: inherit; }

/* ---- Barra de estado del curso (infobar) ---- */
.learndash-wrapper .ld-course-status {
	background: #fff;
	border: 1px solid #f0e6ec;
	border-radius: 18px;
	box-shadow: 0 10px 30px rgba(123, 45, 95, .08);
	padding: 22px 26px;
}
.learndash-wrapper .ld-course-status-content { gap: 18px; }
.learndash-wrapper .ld-course-status .ld-course-status-label { color: var(--gray-500, #8b8090); font-weight: 600; }
.learndash-wrapper .ld-status {
	border-radius: 999px;
	font-family: 'Outfit', sans-serif;
	font-weight: 700;
	padding: 6px 16px;
}
.learndash-wrapper .ld-status.ld-status-incomplete,
.learndash-wrapper .ld-status-unenrolled { background: var(--cream, #fdeee6); color: var(--burgundy, #7B2D5F); }
.learndash-wrapper .ld-status.ld-status-progress { background: var(--lavender, #ece4f5); color: var(--plum, #5e2249); }
.learndash-wrapper .ld-status.ld-status-complete { background: var(--sage, #e3efe0); color: #3f6b3a; }

/* ---- Barra de progreso ---- */
.learndash-wrapper .ld-progress { background: transparent; }
.learndash-wrapper .ld-progress .ld-progress-bar {
	background: #f1e7ee;
	border-radius: 999px;
	overflow: hidden;
	height: 12px;
}
.learndash-wrapper .ld-progress .ld-progress-bar .ld-progress-bar-percentage {
	background: linear-gradient(90deg, var(--burgundy, #7B2D5F), var(--accent, #F47A77));
	border-radius: 999px;
}
.learndash-wrapper .ld-progress .ld-progress-percentage { color: var(--burgundy, #7B2D5F); font-weight: 700; }

/* ---- Lista de lecciones / temas ---- */
.learndash-wrapper .ld-item-list .ld-item-list-items { display: flex; flex-direction: column; gap: 12px; }
.learndash-wrapper .ld-item-list-item {
	background: #fff;
	border: 1px solid #f0e6ec !important;
	border-radius: 14px;
	overflow: hidden;
	transition: border-color .25s, box-shadow .25s, transform .25s;
}
.learndash-wrapper .ld-item-list-item:hover {
	border-color: var(--accent, #F47A77) !important;
	box-shadow: 0 10px 26px rgba(123, 45, 95, .10);
	transform: translateY(-2px);
}
.learndash-wrapper .ld-item-list-item .ld-item-list-item-preview { padding: 18px 22px; }
.learndash-wrapper .ld-item-list-item .ld-item-title { font-weight: 600; color: var(--gray-900, #261f2b); }
.learndash-wrapper .ld-item-list-item a:hover .ld-item-title { color: var(--burgundy, #7B2D5F); }
.learndash-wrapper .ld-item-list-item .ld-status-icon.ld-status-complete { background: var(--sage, #e3efe0); color: #3f6b3a; }
.learndash-wrapper .ld-item-list-item .ld-status-icon.ld-status-incomplete { border-color: var(--accent, #F47A77); }
.learndash-wrapper .ld-status-icon.ld-status-complete { background: #3f6b3a; }

/* ---- Encabezado de sección de la lista ---- */
.learndash-wrapper .ld-item-list .ld-section-heading,
.learndash-wrapper .ld-lesson-item-preview-heading { color: var(--gray-900, #261f2b); font-weight: 700; }
.learndash-wrapper .ld-expand-button {
	background: var(--cream, #fdeee6);
	color: var(--burgundy, #7B2D5F);
	border-radius: 10px;
	border: none;
}
.learndash-wrapper .ld-expand-button:hover { background: var(--accent, #F47A77); color: #fff; }
.learndash-wrapper .ld-expand-button .ld-icon { color: inherit; }

/* ---- Tabs (Contenido del curso / Materiales) ---- */
.learndash-wrapper .ld-tabs .ld-tabs-navigation .ld-tab {
	font-family: 'Outfit', sans-serif;
	font-weight: 600;
	color: var(--gray-500, #8b8090);
	border: none;
}
.learndash-wrapper .ld-tabs .ld-tabs-navigation .ld-tab.ld-active {
	color: var(--burgundy, #7B2D5F);
	box-shadow: inset 0 -3px 0 var(--burgundy, #7B2D5F);
}

/* ---- Navegación de contenido (anterior / siguiente / marcar completado) ---- */
.learndash-wrapper .ld-content-actions { gap: 14px; }
.learndash-wrapper .learndash_mark_complete_button,
.learndash-wrapper .ld-content-action .ld-button { border-radius: 10px; }
.learndash-wrapper .ld-content-action a { color: var(--burgundy, #7B2D5F); }

/* ---- Avisos / alertas ---- */
.learndash-wrapper .ld-alert {
	border-radius: 14px;
	border: 1px solid #f0e6ec;
	font-family: 'Outfit', sans-serif;
}
.learndash-wrapper .ld-alert.ld-alert-success { background: var(--sage, #e3efe0); color: #2f5a2b; border-color: #c9e2c4; }
.learndash-wrapper .ld-alert.ld-alert-warning { background: var(--cream, #fdeee6); color: var(--burgundy, #7B2D5F); border-color: #f6d6c9; }
.learndash-wrapper .ld-alert .ld-alert-icon.ld-icon-warning { background: var(--accent, #F47A77); }
.learndash-wrapper .ld-alert a.button,
.learndash-wrapper .ld-alert .ld-button { background: var(--burgundy, #7B2D5F); color: #fff; }

/* ---- Cuadrícula de cursos ([ld_course_list]) ---- */
.learndash-wrapper .ld-course-list-items {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	gap: 26px;
}
.learndash-wrapper .ld-course-list-items .ld-course-list-item {
	background: #fff;
	border: 1px solid #f0e6ec;
	border-radius: 18px;
	overflow: hidden;
	box-shadow: 0 8px 26px rgba(123, 45, 95, .07);
	transition: transform .3s cubic-bezier(.16,1,.3,1), box-shadow .3s;
}
.learndash-wrapper .ld-course-list-items .ld-course-list-item:hover {
	transform: translateY(-6px);
	box-shadow: 0 18px 40px rgba(123, 45, 95, .14);
}
.learndash-wrapper .ld-course-list-items .ld-entry-title { color: var(--gray-900, #261f2b); }

/* ---- Perfil del alumno ([ld_profile]) ---- */
.learndash-wrapper .ld-profile {
	background: #fff;
	border: 1px solid #f0e6ec;
	border-radius: 18px;
	box-shadow: 0 10px 30px rgba(123, 45, 95, .08);
	overflow: hidden;
}
.learndash-wrapper .ld-profile .ld-profile-header { background: linear-gradient(120deg, var(--burgundy, #7B2D5F), var(--accent, #F47A77)); }
.learndash-wrapper .ld-profile .ld-profile-header .ld-profile-name,
.learndash-wrapper .ld-profile .ld-profile-header .ld-profile-email { color: #fff; }
.learndash-wrapper .ld-profile .ld-course-list-item { border-bottom: 1px solid #f6eef2; }

/* ---- Foco accesible de campos ---- */
.learndash-wrapper input:focus,
.learndash-wrapper select:focus,
.learndash-wrapper textarea:focus {
	outline: none;
	border-color: var(--burgundy, #7B2D5F);
	box-shadow: 0 0 0 4px rgba(244, 122, 119, .14);
}

/* ---- Responsive ---- */
@media (max-width: 768px) {
	.learndash-wrapper .ld-course-status { padding: 18px; border-radius: 14px; }
	.learndash-wrapper .ld-course-list-items { grid-template-columns: 1fr; }
	.learndash-wrapper .ld-button { width: 100%; text-align: center; justify-content: center; }
	.learndash-wrapper .ld-content-actions { flex-direction: column; }
}

/* ============================================================
   HERO y cuerpo de las plantillas LearnDash del tema
   (single-sfwd-courses / lessons / topic, archive)
   ============================================================ */
.ld-hero { padding: 64px 0 56px; }
.ld-hero-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 48px; align-items: center; }
.ld-hero-text h1 { font-size: clamp(1.9rem, 4vw, 2.6rem); line-height: 1.12; margin: 10px 0 14px; color: var(--gray-900, #261f2b); }
.ld-hero-sub { font-size: 1.02rem; line-height: 1.7; color: var(--gray-700, #5a4b54); max-width: 540px; }
.ld-hero-meta { display: flex; flex-wrap: wrap; gap: 12px 18px; margin-top: 24px; }
.ld-hero-meta span { display: inline-flex; align-items: center; gap: 8px; font-size: .9rem; font-weight: 600; color: var(--burgundy, #7B2D5F); background: #fff; border: 1px solid #f0e6ec; padding: 8px 16px; border-radius: 999px; box-shadow: 0 4px 14px rgba(123,45,95,.06); }
.ld-hero-meta svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ld-hero-media img { width: 100%; height: 100%; max-height: 380px; object-fit: cover; border-radius: 22px; box-shadow: 0 24px 50px rgba(123,45,95,.18); }
.ld-single-body { padding: 56px 0 70px; background: var(--warm-white, #fbf7f9); }
.ld-content-card { max-width: 960px; margin: 0 auto; }
.ld-breadcrumb { display: inline-flex; align-items: center; gap: 8px; font-size: .9rem; color: var(--burgundy, #7B2D5F); text-decoration: none; font-weight: 600; margin-bottom: 6px; }
.ld-breadcrumb:hover { text-decoration: underline; }
.ld-breadcrumb svg { width: 15px; height: 15px; }
/* Cuadrícula del archivo de cursos */
.ld-archive-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 30px; max-width: 1100px; margin: 0 auto; }
@media (max-width: 900px) {
	.ld-hero-grid { grid-template-columns: 1fr; gap: 30px; }
	.ld-hero-media { order: -1; }
	.ld-hero-media img { max-height: 260px; }
}
@media (max-width: 768px) {
	.ld-archive-grid { grid-template-columns: 1fr; }
	.ld-single-body { padding: 40px 0 50px; }
}

/* Hero compacto para lección/tema */
.ld-hero-sm { padding: 46px 0 38px; }
.ld-hero-sm h1 { font-size: clamp(1.6rem, 3.4vw, 2.1rem); margin-top: 4px; }

/* ============================================================
   ARCHIVO DE CURSOS — diseño enriquecido (/cursos/)
   ============================================================ */
.ld-archive-hero {
	position: relative;
	overflow: hidden;
	background: radial-gradient(120% 120% at 80% -10%, rgba(244,122,119,.18), transparent 55%),
	            radial-gradient(120% 120% at 0% 0%, rgba(123,45,95,.12), transparent 50%),
	            var(--cream, #fdeee6);
	padding: 72px 0 64px;
	text-align: center;
}
.ld-archive-hero h1 { font-size: clamp(2.1rem, 5vw, 3rem); margin: 12px 0 14px; }
.ld-archive-hero > .container > p { max-width: 620px; margin: 0 auto; font-size: 1.05rem; line-height: 1.7; color: var(--gray-700, #5a4b54); }
.ld-archive-badges { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 28px; }
.ld-archive-badges span { display: inline-flex; align-items: center; gap: 9px; background: rgba(255,255,255,.78); backdrop-filter: blur(6px); border: 1px solid rgba(123,45,95,.10); color: var(--burgundy, #7B2D5F); font-weight: 600; font-size: .9rem; padding: 9px 18px; border-radius: 999px; box-shadow: 0 6px 18px rgba(123,45,95,.08); }
.ld-archive-badges svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

/* Tarjetas de curso enriquecidas */
.curso-card--rich .curso-card__img { position: relative; height: 200px; }
.curso-card--rich .curso-card__badge {
	position: absolute; top: 14px; left: 14px;
	background: rgba(123,45,95,.92); color: #fff;
	font-size: .78rem; font-weight: 700; letter-spacing: .02em;
	padding: 6px 14px; border-radius: 999px;
	box-shadow: 0 6px 16px rgba(123,45,95,.30);
	backdrop-filter: blur(3px);
}
.curso-card--rich .curso-card__eyebrow {
	display: inline-block; font-size: .72rem; font-weight: 700; letter-spacing: .12em;
	text-transform: uppercase; color: var(--accent, #F47A77); margin-bottom: 2px;
}
.curso-card--rich .curso-card__foot { justify-content: flex-start; }
.curso-card--rich .btn-sm { width: 100%; justify-content: center; }

/* Sección de valor */
.cursos-valor { padding: 76px 0 84px; }
.cursos-valor-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; max-width: 1000px; margin: 0 auto; }
.cursos-valor-card { background: #fff; border: 1px solid #f0e6ec; border-radius: 20px; padding: 34px 28px; text-align: center; box-shadow: 0 10px 30px rgba(123,45,95,.06); transition: transform .35s cubic-bezier(.16,1,.3,1), box-shadow .35s; }
.cursos-valor-card:hover { transform: translateY(-6px); box-shadow: 0 20px 44px rgba(123,45,95,.12); }
.cursos-valor-card .cv-icon { width: 62px; height: 62px; border-radius: 18px; display: flex; align-items: center; justify-content: center; margin: 0 auto 20px; }
.cursos-valor-card .cv-icon svg { width: 28px; height: 28px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.cursos-valor-card h4 { font-size: 1.12rem; margin-bottom: 10px; color: var(--gray-900, #261f2b); }
.cursos-valor-card p { color: var(--gray-600, #6e6470); line-height: 1.65; font-size: .95rem; }

@media (max-width: 900px) { .cursos-valor-grid { grid-template-columns: 1fr; max-width: 460px; } }
@media (max-width: 768px) {
	.ld-archive-hero { padding: 56px 0 48px; }
	.cursos-valor { padding: 56px 0 60px; }
	.ld-archive-badges span { font-size: .84rem; padding: 8px 14px; }
}

/* ============================================================
   CURSOS · POTENCIA + ELEGANCIA (jun 25 2026)
   ============================================================ */
/* --- Hero del archivo: degradado morado POTENTE (antes crema → texto invisible) --- */
.ld-archive-hero{
	background:
		radial-gradient(120% 135% at 84% -22%, rgba(244,122,119,.5), transparent 56%),
		radial-gradient(110% 120% at -5% 0%, rgba(155,77,125,.55), transparent 55%),
		linear-gradient(155deg,#561B42 0%,#7B2D5F 46%,#9B4D7D 82%,#C95E83 130%) !important;
	padding:88px 0 76px;
}
.ld-archive-hero::before{content:"";position:absolute;top:-40%;right:-8%;width:55%;height:190%;background:radial-gradient(circle,rgba(255,255,255,.14),transparent 62%);pointer-events:none}
.ld-archive-hero .section-label{color:#ffd9d8}
.ld-archive-hero h1{color:#fff !important;font-size:clamp(2.5rem,5.6vw,3.6rem);font-weight:800;letter-spacing:-1.2px;text-shadow:0 2px 36px rgba(40,12,30,.25)}
.ld-archive-hero > .container > p{color:rgba(255,255,255,.94) !important;font-size:1.12rem}
.ld-archive-badges span{background:rgba(255,255,255,.95);border-color:transparent;color:var(--burgundy);box-shadow:0 8px 22px rgba(40,12,30,.22);font-weight:700}

/* --- Cuadrícula más amplia (potente) --- */
.cursos-catalogo{padding:64px 0 24px}
.cursos-grid{max-width:1200px;gap:34px}

/* --- Tarjetas IMPRESIONANTES --- */
.curso-card{border:none !important;border-radius:22px;box-shadow:0 14px 40px -20px rgba(80,25,55,.35)}
.curso-card--rich .curso-card__img{height:215px;overflow:hidden}
.curso-card--rich .curso-card__img::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(86,27,66,.62),rgba(86,27,66,.05) 52%);transition:opacity .4s}
.curso-card:hover{transform:translateY(-10px);box-shadow:0 32px 60px -24px rgba(123,45,95,.5)}
.curso-card:hover .curso-card__img::after{opacity:.8}
.curso-card--rich .curso-card__badge{background:linear-gradient(120deg,var(--burgundy),var(--plum));font-size:.8rem;padding:7px 15px;box-shadow:0 8px 20px rgba(86,27,66,.45);z-index:2}
.curso-card--rich .curso-card__body{padding:26px 26px 28px;position:relative}
.curso-card--rich .curso-card__body::before{content:"";position:absolute;top:0;left:26px;right:26px;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--burgundy),var(--accent));opacity:0;transition:opacity .35s}
.curso-card:hover .curso-card__body::before{opacity:1}
.curso-card--rich .curso-card__eyebrow{color:var(--accent)}
.curso-card--rich .curso-card__body h3{font-size:1.32rem;font-weight:800;letter-spacing:-.4px}
.curso-card--rich .btn-sm{padding:12px 20px;font-weight:700;box-shadow:0 8px 22px -8px rgba(123,45,95,.6)}

/* --- Single de curso: hero POTENTE (texto blanco sobre morado) --- */
.ld-hero{padding:74px 0 64px}
.ld-hero-text h1{color:#fff !important;font-weight:800;letter-spacing:-.6px;font-size:clamp(2.1rem,4.4vw,3rem)}
.ld-hero .section-label{color:#ffd9d8}
.ld-hero-sub{color:rgba(255,255,255,.93) !important}
.ld-hero-meta span{background:rgba(255,255,255,.95);border-color:transparent;color:var(--burgundy);box-shadow:0 8px 20px rgba(40,12,30,.2);font-weight:700}
.ld-hero-media img{max-height:400px;border-radius:24px;box-shadow:0 30px 60px -18px rgba(40,12,30,.55);border:5px solid rgba(255,255,255,.2)}

/* --- Tarjeta de contenido del curso: elegante --- */
.ld-content-card{background:#fff;border-radius:24px;padding:40px 44px;box-shadow:0 18px 50px -26px rgba(80,25,55,.3);border:1px solid rgba(123,45,95,.06)}
@media(max-width:640px){.ld-content-card{padding:28px 22px}.ld-archive-hero{padding:64px 0 54px}}
