/* Clinical Paper — sistema aprobado en "Pantallas y sistema".
   Tokens: única fuente de verdad (01/10: se integraron aquí los valores que la hoja 22
   redefinía en la revisión de escala de septiembre). Ver docs/design/sistema-de-diseno.md. */
body.dali-clinical {
	--clinical-ink: #1e3128;
	--clinical-brand: #33513f;
	--clinical-mid: #4e7059;
	--clinical-gold: #c9a35e;
	--clinical-gold-text: #80602c;
	--clinical-gold-light: #d2b77c; /* texto dorado sobre verde oscuro: 5,3:1 */
	--clinical-veil: #eef1ea;
	--clinical-placeholder: #e2e8dd;
	--clinical-bg: #f7f7f2;
	--clinical-white: #fff;
	--clinical-text: #46584c;
	--clinical-muted: #5b6b60;
	--clinical-line: rgba(30, 49, 40, .12);
	--clinical-line-strong: rgba(30, 49, 40, .18);
	--clinical-font: 'Manrope', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
	--clinical-display: var(--clinical-font);
	--clinical-max: 1600px;
	--clinical-gutter: clamp(20px, 4vw, 72px);
	--clinical-inset: max(var(--clinical-gutter), calc((100% - var(--clinical-max)) / 2));
	--clinical-radius: 6px;
	--clinical-field-radius: 10px;
	--clinical-pill: 999px;
	--clinical-shadow-button: 0 3px 8px rgba(30, 49, 40, .14);
	--clinical-ease: cubic-bezier(.22, 1, .36, 1);
	/* Grises de Tutor (#757c8e, azulados y con 4,2:1 sobre blanco) con los del sistema (01/10). */
	--tutor-color-muted: var(--clinical-muted);
	--tutor-color-hints: var(--clinical-muted);
	--tutor-color-subdued: var(--clinical-text);
	background: var(--clinical-bg) !important;
	color: var(--clinical-text) !important;
	font-family: var(--clinical-font) !important;
	font-size: 18px;
	line-height: 1.7;
	-webkit-font-smoothing: antialiased;
}

body.dali-clinical *,
body.dali-clinical *::before,
body.dali-clinical *::after { box-sizing: border-box; }

body.dali-clinical :where(p, li, a, button, input, select, textarea, summary, label, small, strong) {
	font-family: var(--clinical-font) !important;
}

/* El control recibe el clic; algunos scripts de pasarela esperan un className de HTML. */
body.dali-clinical .dali-icon { pointer-events: none; }

body.dali-clinical :where(h1, h2, h3, h4, h5, h6) {
	color: var(--clinical-ink);
	font-family: var(--clinical-display) !important;
	font-weight: 600 !important;
	letter-spacing: -.045em !important;
}

body.dali-clinical :where(a, button, summary, [tabindex]):focus-visible {
	outline: 3px solid rgba(201, 163, 94, .55) !important;
	outline-offset: 3px;
}

/* Evitar que el foco heredado quede dibujado tras un clic; conservarlo con teclado. */
body.dali-clinical :where(a, button, summary, [tabindex]):focus:not(:focus-visible) {
	outline: none !important;
}

/* Campos: borde verde y halo suave; el contorno dorado desplazado se veía como un reborde ajeno. */
body.dali-clinical :is(input:not([type='radio'], [type='checkbox'], [type='submit'], [type='button'], [type='hidden'], [type='range'], [type='file']), select, textarea, .select2-selection--single) {
	border-radius: var(--clinical-field-radius) !important;
}

body.dali-clinical :where(input:not([type='radio'], [type='checkbox'], [type='submit'], [type='button']), select, textarea):focus-visible {
	outline: 0 !important;
	border-color: var(--clinical-mid) !important;
	box-shadow: 0 0 0 3px rgba(78, 112, 89, .16) !important;
}

body.dali-clinical :where(input[type='radio'], input[type='checkbox']):focus-visible {
	outline: 2px solid var(--clinical-mid) !important;
	outline-offset: 2px;
}

body.dali-clinical .site-content,
body.dali-clinical .site-content > .ast-container,
body.dali-clinical #page { background: var(--clinical-bg) !important; }

/* Astra conserva sus hooks y funcionalidad como tema padre, pero su cabecera
   visual se reemplaza por un componente mantenible del tema hijo. */
body.dali-clinical .site-header { display: none !important; }

body.dali-clinical .dali-clinical-header {
	position: sticky;
	top: var(--clinical-admin-offset, 0px);
	z-index: 999;
	width: 100%;
	padding-block: 8px;
	--clinical-header-width: calc(100% - 48px);
}

body.dali-clinical.admin-bar .dali-clinical-header { --clinical-admin-offset: 32px; }
body.dali-clinical .dali-clinical-header.is-compact { --clinical-header-width: min(92%, 1520px); }

body.dali-clinical .dali-clinical-header__inner {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	width: var(--clinical-header-width);
	min-height: 84px;
	align-items: center;
	gap: 34px;
	margin: 0 auto;
	padding: 12px 40px;
	border-radius: 16px;
	background: rgba(247, 247, 242, .97);
	box-shadow: inset 0 0 0 1px var(--clinical-line);
	transition: width 320ms var(--clinical-ease), background-color 320ms ease, box-shadow 320ms ease;
}

body.dali-clinical.home .dali-clinical-header:not(.is-compact) .dali-clinical-header__inner {
	background: transparent;
	box-shadow: none;
}
body.dali-clinical .dali-clinical-header.is-compact .dali-clinical-header__inner,
body.dali-clinical.clinical-menu-open .dali-clinical-header .dali-clinical-header__inner {
	background: rgba(247, 247, 242, .97);
	box-shadow: inset 0 0 0 1px var(--clinical-line), 0 8px 28px rgba(30, 49, 40, .09);
	backdrop-filter: blur(14px);
}

body.dali-clinical .dali-clinical-header__brand,
body.dali-clinical .dali-clinical-header__brand .custom-logo-link {
	display: inline-flex;
	min-width: 0 !important;
	min-height: 0 !important;
	align-items: center;
	justify-content: flex-start;
}

body.dali-clinical .dali-clinical-header__brand .custom-logo {
	display: block;
	width: auto;
	height: 56px;
	max-width: 132px;
	object-fit: contain;
}

body.dali-clinical .dali-clinical-header__desktop-nav { min-width: 0; }

body.dali-clinical .dali-clinical-nav__list {
	display: flex;
	align-items: center;
	gap: 24px;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.dali-clinical .dali-clinical-nav__list .menu-item { margin: 0; }

body.dali-clinical .dali-clinical-nav__list a,
body.dali-clinical .dali-clinical-header__account {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	color: var(--clinical-text) !important;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.4;
	text-decoration: none !important;
	transition: color 180ms ease;
}

body.dali-clinical .dali-clinical-nav__list a:hover,
body.dali-clinical .dali-clinical-header__account:hover { color: var(--clinical-ink) !important; }

body.dali-clinical .dali-clinical-header__actions {
	display: flex;
	align-items: center;
	gap: 14px;
}

body.dali-clinical .dali-clinical-header__cta {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	padding: 11px 18px;
	border-radius: var(--clinical-pill);
	background: var(--clinical-ink);
	box-shadow: 0 1px 2px rgba(30, 49, 40, .2);
	color: var(--clinical-bg) !important;
	font-size: 13.5px;
	font-weight: 700;
	line-height: 1;
	text-decoration: none !important;
}

body.dali-clinical .dali-clinical-header__cart {
	position: relative;
	display: inline-flex;
	width: 44px;
	height: 44px;
	align-items: center;
	justify-content: center;
	color: var(--clinical-ink) !important;
	text-decoration: none !important;
}

body.dali-clinical .dali-clinical-header__cart svg {
	width: 24px;
	height: 24px;
	fill: none;
	pointer-events: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.7;
}

body.dali-clinical .dali-clinical-header__cart-count {
	position: absolute;
	top: 2px;
	right: 1px;
	display: grid;
	min-width: 17px;
	height: 17px;
	place-items: center;
	padding: 0 4px;
	border: 2px solid var(--clinical-bg);
	border-radius: 999px;
	background: var(--clinical-gold);
	color: var(--clinical-ink);
	font-size: 9px;
	font-weight: 700;
	line-height: 1;
	pointer-events: none;
}

body.dali-clinical .dali-clinical-header__toggle,
body.dali-clinical .dali-clinical-header__mobile-panel { display: none; }

@media (max-width: 1100px) {
	body.dali-clinical .dali-clinical-header__inner {
		grid-template-columns: 44px minmax(0, 1fr) 44px;
		width: 100%;
		min-height: 72px;
		gap: 8px;
		padding: 8px 18px;
	}

	body.dali-clinical .dali-clinical-header__toggle {
		display: inline-flex;
		width: 44px;
		height: 44px;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 6.5px;
		margin: 0;
		padding: 0;
		border: 0;
		background: transparent;
		box-shadow: none;
		color: var(--clinical-ink);
		cursor: pointer;
	}

	body.dali-clinical .dali-clinical-header__toggle > span:not(.screen-reader-text) {
		display: block;
		width: 21px;
		height: 1.5px;
		background: currentColor;
		transition: opacity 180ms ease, transform 180ms ease;
	}

	/* 04/10: dos trazos centrados que se cruzan al abrir el menú. */
	body.dali-clinical .dali-clinical-header__toggle[aria-expanded='true'] > span:nth-child(1) { transform: translateY(4px) rotate(45deg); }
	body.dali-clinical .dali-clinical-header__toggle[aria-expanded='true'] > span:nth-child(2) { transform: translateY(-4px) rotate(-45deg); }

	body.dali-clinical .dali-clinical-header__brand { justify-content: center; }
	body.dali-clinical .dali-clinical-header__brand .custom-logo-link { justify-content: center; }
	body.dali-clinical .dali-clinical-header__brand .custom-logo { height: 48px; max-width: 112px; }
	body.dali-clinical .dali-clinical-header__desktop-nav,
	body.dali-clinical .dali-clinical-header__account,
	body.dali-clinical .dali-clinical-header__cta { display: none; }
	body.dali-clinical .dali-clinical-header__actions { justify-content: flex-end; gap: 0; }

	body.dali-clinical .dali-clinical-header__mobile-panel {
		position: absolute;
		top: calc(100% - 8px);
		left: 50%;
		transform: translateX(-50%);
		width: var(--clinical-header-width);
		display: block;
		padding: 18px 18px 24px;
		border-top: 1px solid var(--clinical-line);
		background: var(--clinical-bg);
		border-radius: 16px;
		box-shadow: 0 12px 28px rgba(30, 49, 40, .12);
	}

	body.dali-clinical .dali-clinical-header__mobile-panel[hidden] { display: none !important; }
	body.dali-clinical .dali-clinical-header__mobile-panel .dali-clinical-nav__list { align-items: stretch; flex-direction: column; gap: 0; }
	body.dali-clinical .dali-clinical-header__mobile-panel .dali-clinical-nav__list a {
		display: block;
		padding: 14px 2px;
		border-bottom: 1px solid var(--clinical-line);
		color: var(--clinical-ink) !important;
		font-size: 15px;
	}

	body.dali-clinical .dali-clinical-header__mobile-actions {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 10px;
		padding-top: 18px;
	}

	body.dali-clinical .dali-clinical-header__mobile-actions a {
		display: inline-flex;
		min-height: 46px;
		align-items: center;
		justify-content: center;
		padding: 12px 16px;
		border: 1px solid var(--clinical-line-strong);
		border-radius: var(--clinical-pill);
		color: var(--clinical-ink) !important;
		font-size: 13px;
		font-weight: 700;
		text-decoration: none !important;
	}

	body.dali-clinical .dali-clinical-header__mobile-actions a:last-child {
		border-color: var(--clinical-ink);
		background: var(--clinical-ink);
		color: var(--clinical-bg) !important;
	}
}

/* 04/10: componente compartido de precios por medio de pago. */
body.dali-clinical .clinical-payment-prices { display: grid; gap: 8px; width: 100%; }
body.dali-clinical .clinical-payment-prices__main { color: var(--clinical-ink); font-weight: 600; font-variant-numeric: tabular-nums; }
body.dali-clinical .clinical-payment-prices__details { display: grid; gap: 6px; padding-top: 8px; border-top: 1px solid var(--clinical-line); font-size: 14px; font-weight: 500; font-variant-numeric: tabular-nums; }
body.dali-clinical .clinical-payment-prices__row { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 4px 12px; }
body.dali-clinical .clinical-payment-prices__label { color: var(--clinical-muted); font-size: 13px; font-weight: 500; }

@media (max-width: 782px) {
	body.dali-clinical.admin-bar .dali-clinical-header { --clinical-admin-offset: 46px; }
}

body.dali-clinical .clinical-kicker {
	margin: 0 0 18px;
	color: var(--clinical-mid);
	font-family: var(--clinical-font) !important;
	font-size: 10.5px !important;
	font-weight: 600;
	letter-spacing: .16em;
	line-height: 1.2;
	text-transform: uppercase;
}

body.dali-clinical .clinical-button,
body.dali-clinical .btn-primario,
body.dali-clinical .btn-chico {
	display: inline-flex;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	gap: 12px;
	padding: 14px 24px;
	border: 0;
	border-radius: var(--clinical-pill);
	background: var(--clinical-ink);
	box-shadow: var(--clinical-shadow-button);
	color: var(--clinical-bg) !important;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	text-decoration: none !important;
	transition: background 220ms ease, box-shadow 220ms ease, transform 220ms var(--clinical-ease);
}

body.dali-clinical .clinical-button::after,
body.dali-clinical .btn-primario::after,
body.dali-clinical .btn-chico::after {
	color: var(--clinical-gold);
	content: '\2192';
	font-size: 15px;
}

body.dali-clinical .btn-chico {
	min-height: 42px;
	padding: 11px 17px;
	background: var(--clinical-brand);
	font-size: 12.5px;
}

body.dali-clinical .clinical-button--gold {
	background: var(--clinical-gold);
	color: #16261e !important;
}

body.dali-clinical .clinical-button--gold::after { color: #16261e; }

body.dali-clinical .clinical-text-link,
body.dali-clinical .btn-secundario {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	gap: 8px;
	padding: 0 0 4px;
	border: 0;
	/* 30/09: el subrayado dorado aparece sólo al pasar el mouse o con foco. */
	border-bottom: 2px solid transparent;
	background: transparent;
	color: var(--clinical-ink) !important;
	font-size: 13px;
	transition: border-color 200ms ease;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none !important;
}

body.dali-clinical :is(.clinical-text-link, .btn-secundario):focus-visible { border-bottom-color: var(--clinical-gold); }

body.dali-clinical .clinical-text-link span {
	color: var(--clinical-mid);
	transition: transform 250ms var(--clinical-ease);
}

/* Misma respuesta tactil en acciones del tema, Tutor y WooCommerce. */
body.dali-clinical :is(.clinical-button, .btn-primario, .btn-chico, .dali-clinical-header__cta, .dali-commerce-button, .tutor-btn-primary, .tutor-btn-outline-primary, .checkout-button, button[name='update_cart'], #place_order, .dali-clinical-header__mobile-actions a) {
	transition: transform 200ms var(--clinical-ease), box-shadow 200ms ease, filter 200ms ease !important;
}
body.dali-clinical :is(.clinical-button, .btn-primario, .btn-chico)::after {
	transition: transform 200ms var(--clinical-ease);
}
@media (hover: hover) and (pointer: fine) {
	body.dali-clinical :is(.clinical-button, .btn-primario, .btn-chico, .dali-clinical-header__cta, .dali-commerce-button, .tutor-btn-primary, .tutor-btn-outline-primary, .checkout-button, button[name='update_cart'], #place_order, .dali-clinical-header__mobile-actions a):not(:disabled):not([aria-disabled='true']):not(.disabled):not(.loading):hover {
		transform: translateY(-3px);
		filter: brightness(.92);
		box-shadow: 0 8px 18px rgba(30, 49, 40, .2) !important;
	}
	body.dali-clinical :is(.clinical-button, .btn-primario, .btn-chico):hover::after,
	body.dali-clinical :is(.clinical-text-link, .dali-commerce-link):hover span { transform: translateX(4px); }
	body.dali-clinical :is(.clinical-text-link, .btn-secundario, .dali-commerce-link):hover { border-bottom-color: var(--clinical-gold); }
}
body.dali-clinical :is(.clinical-button, .btn-primario, .btn-chico, .dali-clinical-header__cta, .dali-commerce-button, .tutor-btn-primary, .tutor-btn-outline-primary, .checkout-button, button[name='update_cart'], #place_order):not(:disabled):not([aria-disabled='true']):not(.disabled):active { transform: translateY(0) !important; }
body.dali-clinical .dali-commerce-link span { transition: transform 200ms var(--clinical-ease); }

/* Sin JS todo es visible. Solo el observer inicializado prepara los bloques futuros. */
body.dali-clinical [data-clinical-reveal].is-reveal-ready {
	transition: opacity 600ms var(--clinical-ease), transform 600ms var(--clinical-ease);
	transition-delay: var(--clinical-reveal-delay, 0ms);
}
body.dali-clinical [data-clinical-reveal].is-reveal-ready:not(.is-visible) {
	opacity: 0;
	transform: translate3d(var(--clinical-reveal-x, 0px), var(--clinical-reveal-y, 24px), 0);
}
body.dali-clinical [data-clinical-reveal='left'] { --clinical-reveal-x: -32px; --clinical-reveal-y: 0px; }
body.dali-clinical [data-clinical-reveal='right'] { --clinical-reveal-x: 32px; --clinical-reveal-y: 0px; }
body.dali-clinical [data-clinical-reveal].is-reveal-ready:focus-within {
	opacity: 1;
	transform: none;
	transition-delay: 0ms;
}

body.dali-clinical :where(.site-footer, .site-primary-footer-wrap, .site-below-footer-wrap) {
	border-color: rgba(238, 241, 234, .16) !important;
	background: var(--clinical-ink) !important;
	color: rgba(238, 241, 234, .7) !important;
}

body.dali-clinical .site-footer a { color: var(--clinical-veil) !important; }

@media (max-width: 768px) {
	body.dali-clinical .clinical-button {
		width: 100%;
		min-height: 48px;
	}

	body.dali-clinical [data-clinical-reveal] { --clinical-reveal-x: 0px; --clinical-reveal-y: 14px; }
}

@media (prefers-reduced-motion: reduce) {
	body.dali-clinical :is(.clinical-button, .btn-primario, .btn-chico, .dali-clinical-header__cta, .dali-commerce-button, .tutor-btn-primary, .tutor-btn-outline-primary, .checkout-button, button[name='update_cart'], #place_order, .dali-clinical-header__mobile-actions a),
	body.dali-clinical :is(.clinical-button, .btn-primario, .btn-chico)::after,
	body.dali-clinical :is(.clinical-text-link, .dali-commerce-link) span {
		transform: none !important;
		transition: none !important;
	}
	body.dali-clinical *,
	body.dali-clinical *::before,
	body.dali-clinical *::after {
		scroll-behavior: auto !important;
		transition-duration: .001ms !important;
		animation-duration: .001ms !important;
		animation-iteration-count: 1 !important;
	}

	body.dali-clinical [data-clinical-reveal].is-reveal-ready {
		opacity: 1 !important;
		transform: none !important;
		transition-delay: 0ms !important;
	}
}

@media print {
	body.dali-clinical [data-clinical-reveal].is-reveal-ready { opacity: 1 !important; transform: none !important; }
}

/* Feedback del 21/09: respuesta visible de la cabecera y resumen Woo. */
body.dali-clinical .dali-clinical-nav__list a,
body.dali-clinical .dali-clinical-header__account { position: relative; transition: color .2s ease, transform .2s ease; }
body.dali-clinical .dali-clinical-nav__list a::after,
body.dali-clinical .dali-clinical-header__account::after { content: ''; position: absolute; bottom: 5px; left: 0; right: 0; height: 2px; background: var(--clinical-gold, #c9a35e); transform: scaleX(0); transform-origin: left; transition: transform .22s ease; }
body.dali-clinical .dali-clinical-header__brand img { transition: transform .3s ease, filter .3s ease; }
body.dali-clinical .dali-clinical-header__cart { transition: background .2s ease, transform .2s ease; border-radius: 50%; }
@media (hover: hover) {
 body.dali-clinical .dali-clinical-nav__list a:hover::after,
 body.dali-clinical .dali-clinical-header__account:hover::after { transform: scaleX(1); }
 body.dali-clinical .dali-clinical-header__brand a:hover img { transform: scale(1.07) rotate(-4deg); filter: drop-shadow(0 3px 5px #c9a35e44); }
 body.dali-clinical .dali-clinical-header__cart:hover { background: #c9a35e22; transform: translateY(-2px); }
}
body.dali-clinical .dali-clinical-nav__list a:focus-visible::after,
body.dali-clinical .dali-clinical-header__account:focus-visible::after { transform: scaleX(1); }
/* El subrayado identifica el foco de teclado en el menú; evitar el marco del plugin de aula. */
body.dali-clinical .dali-clinical-header :is(.dali-clinical-nav__list a, .dali-clinical-header__account):focus-visible {
	outline: none !important;
}
body.dali-clinical .clinical-cart-preview { position: relative; }
body.dali-clinical .clinical-cart-preview__panel { position: absolute; right: 0; top: calc(100% + 12px); width: min(360px, calc(100vw - 40px)); padding: 24px; background: #f7f7f2; border: 1px solid #1e312822; border-radius: 16px; box-shadow: 0 18px 50px #1e312822; color: #1e3128; z-index: 20; }
body.dali-clinical .clinical-cart-preview__panel[hidden] { display: none; }
body.dali-clinical .clinical-cart-preview__panel::before { content: ''; position: absolute; left: 0; right: 0; top: -14px; height: 14px; }
body.dali-clinical .clinical-cart-preview__title { font-size: 20px; font-weight: 600; margin: 0 0 16px; }
body.dali-clinical .clinical-cart-preview__items { list-style: none; padding: 0; margin: 0 0 20px; max-height: 280px; overflow-y: auto; }
body.dali-clinical .clinical-cart-preview__items li { display: flex; gap: 12px; padding: 12px 0; border-bottom: 1px solid #1e31281a; font-size: 14px; line-height: 1.5; }
body.dali-clinical .clinical-cart-preview__items img { width: 64px; height: 64px; object-fit: cover; border-radius: 6px; }
body.dali-clinical .clinical-cart-preview__items small { display: block; margin-top: 6px; }
body.dali-clinical .clinical-cart-preview__subtotal { display: flex; justify-content: space-between; gap: 12px; font-size: 15px; }
body.dali-clinical .clinical-cart-preview__action { display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 16px; background: #1e3128; color: #fff; border-radius: 24px; }
body.dali-clinical #colophon .ast-footer-copyright,
body.dali-clinical #colophon .ast-footer-copyright h6 { color: #fff !important; }
body.dali-clinical #colophon .ast-builder-social-element svg { fill: #fff !important; }
@media (prefers-reduced-motion: reduce) {
 body.dali-clinical .dali-clinical-header__brand img,
 body.dali-clinical .dali-clinical-header__cart { transition: none; transform: none; }
 /* 02/10: el subrayado conserva scaleX(0) en reposo; con transform: none quedaban todos los enlaces subrayados. */
 body.dali-clinical .dali-clinical-nav__list a::after,
 body.dali-clinical .dali-clinical-header__account::after { transition: none; }
 body.dali-clinical .dali-clinical-header__brand a:hover img,
 body.dali-clinical .dali-clinical-header__cart:hover { transform: none; }
}
/* El visor cerrado no participa del layout de Home, que no carga su galería. */
body.dali-clinical.home > .pswp:not(.pswp--open) { display: none; }
/* La cabecera Clinical tiene su propio resumen; el drawer de Astra está inactivo. */
body.dali-clinical .astra-cart-drawer { display: none; }
/* Contener también las capas auxiliares heredadas del tema padre. */
body.dali-clinical #page { overflow-x: clip; }

/* 30/09: sello de reCAPTCHA oculto; el aviso exigido por Google se muestra junto a los formularios. */
body.dali-clinical .grecaptcha-badge { visibility: hidden !important; }
body.dali-clinical .dali-recaptcha-notice { margin: 18px 0 0; color: var(--clinical-muted); font-size: 12px; line-height: 1.6; text-align: center; }
body.dali-clinical .dali-recaptcha-notice a { color: inherit !important; text-decoration: underline; text-underline-offset: 2px; }

/* 30/09: botón de WhatsApp propio (inc/clinical-whatsapp.php). No se abre solo. */
body.dali-clinical .dali-whatsapp { position: fixed; right: 20px; bottom: 20px; z-index: 60; display: inline-flex; align-items: center; gap: 10px; min-height: 52px; padding: 10px 18px 10px 12px; border-radius: 999px; background: #17784a; color: #fff !important; box-shadow: 0 10px 24px rgba(20, 45, 32, .22); font-size: 15px; font-weight: 600; line-height: 1; text-decoration: none !important; transition: transform 200ms var(--clinical-ease), box-shadow 200ms ease, background 200ms ease; }
body.dali-clinical .dali-whatsapp svg { width: 28px; height: 28px; flex: 0 0 28px; fill: currentColor; }
body.dali-clinical .dali-whatsapp:focus-visible { outline: 3px solid rgba(201, 163, 94, .8) !important; outline-offset: 3px; }
@media (hover: hover) and (pointer: fine) { body.dali-clinical .dali-whatsapp:hover { background: #12603b; transform: translateY(-2px); box-shadow: 0 14px 28px rgba(20, 45, 32, .28); } }
@media (max-width: 767px) {
 body.dali-clinical .dali-whatsapp { right: 16px; bottom: 16px; width: 56px; height: 56px; padding: 0; justify-content: center; }
 body.dali-clinical .dali-whatsapp__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
 /* 01/10: espacio al final para que el botón fijo no tape la última acción (p. ej. "Confirmar y pagar"). */
 body.dali-clinical:has(.dali-whatsapp) #colophon { padding-bottom: 84px; }
}
@media (prefers-reduced-motion: reduce) { body.dali-clinical .dali-whatsapp { transition: none; } }
@media print { body.dali-clinical .dali-whatsapp { display: none; } }

/* 30/09: enlaces del pie con área táctil mínima de 24 px (WCAG 2.2). */
body.dali-clinical #colophon :is(.menu-link, .footer-widget-area a, .ast-footer-copyright a) { display: inline-flex; min-height: 24px; align-items: center; }

/* 30/09: datos del certificado en tres columnas separadas (una en móvil). */
body.dali-clinical .tutor-dc-certificate-details .tutor-certificate-info { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px 32px; }
body.dali-clinical .tutor-dc-certificate-details .tutor-certificate-info > div { min-width: 0; margin: 0 !important; }
@media (max-width: 600px) { body.dali-clinical .tutor-dc-certificate-details .tutor-certificate-info { grid-template-columns: 1fr; } }

/* 01/10: Tutor compila .tutor-color-muted/-hints con un gris literal (#757c8e, 4,2:1); la
 * variable mapeada en los tokens no alcanza a esas clases. */
body.dali-clinical :is(.tutor-color-muted, .tutor-color-hints) { color: var(--clinical-muted); }

/* Migrado de WPCode 3389 (01/10): reproductor 16:9 y estrellas ocultas si no hay valoraciones.
 * Con Clinical activo el fragmento de WPCode es redundante y puede desactivarse. */
body.dali-clinical :is(.tutor-video-player, .tutor-video-player-wrapper) { position: relative; width: 100%; }
body.dali-clinical :is(.tutor-video-player, .tutor-video-player-wrapper) iframe { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; border: 0; border-radius: 8px; background: #000; }
@supports not (aspect-ratio: 16 / 9) {
 body.dali-clinical .tutor-video-player { padding-top: 56.25%; }
 body.dali-clinical .tutor-video-player iframe { position: absolute; top: 0; left: 0; height: 100%; }
}
body.dali-clinical .tutor-course-ratings:not(:has(.tutor-icon-star-bold)):not(:has(.tutor-icon-star-half)):not(:has(.tutor-icon-star-full)) { display: none; }
/* 02/10: estrellas en dorado de marca (Tutor usa #ed9700); el número al lado da el dato. */
body.dali-clinical .tutor-ratings-stars [class*="tutor-icon-star"] { color: var(--clinical-gold); }
