/**
 * Shared, overridable design tokens for LetsFit Blog Shortcodes.
 * A theme can override these custom properties on any component root.
 */
:where(
	.lf-bullet-list,
	.lf-download-box,
	.lf-course-slide,
	.lf-exercise-card,
	.lf-table-scroll,
	.lf-ws-wrap
) {
	--lf-purple: #8427f4;
	--lf-purple-hover: #731ce0;
	--lf-purple-light: #f3e9ff;
	--lf-success: #16a37a;
	--lf-success-hover: #118566;
	--lf-success-light: #e8f8f2;
	--lf-warning: #f59e0b;
	--lf-warning-light: #fef5e6;
	--lf-ink: #111827;
	--lf-text: #374151;
	--lf-muted: #6b7280;
	--lf-bg-soft: #f8fafc;
	--lf-border: #e5e7eb;
	--lf-border-soft: #eef1f5;
	--radius-lg: 14px;
	--radius-xl: 20px;
	--shadow-soft: 0 8px 20px rgba(15, 23, 42, 0.08);
	--shadow-card: 0 12px 32px rgba(15, 23, 42, 0.08);
	box-sizing: border-box;
}

:where(
	.lf-bullet-list,
	.lf-download-box,
	.lf-course-slide,
	.lf-exercise-card,
	.lf-table-scroll,
	.lf-ws-wrap
) *,
:where(
	.lf-bullet-list,
	.lf-download-box,
	.lf-course-slide,
	.lf-exercise-card,
	.lf-table-scroll,
	.lf-ws-wrap
) *::before,
:where(
	.lf-bullet-list,
	.lf-download-box,
	.lf-course-slide,
	.lf-exercise-card,
	.lf-ws-wrap
) *::after {
	box-sizing: border-box;
}

/*
 * Keep shortcode CTA labels white even when a theme applies its own link
 * hover, focus or visited colors.
 */
.lf-download-box__cta,
.lf-download-box__cta:hover,
.lf-download-box__cta:focus,
.lf-download-box__cta:active,
.lf-download-box__cta:visited,
.lf-exercise-card__cta,
.lf-exercise-card__cta:hover,
.lf-exercise-card__cta:focus,
.lf-exercise-card__cta:active,
.lf-exercise-card__cta:visited,
.lf-course-card__cta,
.lf-course-card__cta:hover,
.lf-course-card__cta:focus,
.lf-course-card__cta:active,
.lf-course-card__cta:visited,
.lf-ws-btn,
.lf-ws-btn:hover,
.lf-ws-btn:focus,
.lf-ws-btn:active,
.lf-ws-btn:visited {
	color: #fff !important;
}
