/* AIMinEdu Tutor LMS frontend localization and UX enhancements. */

/* Tutor text controls inherit the active Kadence/theme typography. Icon fonts are untouched. */
.tutor-page-wrap,
.tutor-wrap,
.tutor-course-details-page,
.tutor-dashboard,
.tutor-cart-page,
.tutor-checkout-page,
.tutor-course-single-content-wrapper,
.tutor-lesson-wrapper {
	font-family: inherit !important;
}

.tutor-page-wrap :where(h1,h2,h3,h4,h5,h6,p,a,button,input,select,textarea,label,li,td,th,strong,small),
.tutor-wrap :where(h1,h2,h3,h4,h5,h6,p,a,button,input,select,textarea,label,li,td,th,strong,small),
.tutor-course-details-page :where(h1,h2,h3,h4,h5,h6,p,a,button,input,select,textarea,label,li,td,th,strong,small),
.tutor-dashboard :where(h1,h2,h3,h4,h5,h6,p,a,button,input,select,textarea,label,li,td,th,strong,small),
.tutor-cart-page :where(h1,h2,h3,h4,h5,h6,p,a,button,input,select,textarea,label,li,td,th,strong,small),
.tutor-checkout-page :where(h1,h2,h3,h4,h5,h6,p,a,button,input,select,textarea,label,li,td,th,strong,small),
.tutor-lesson-wrapper :where(h1,h2,h3,h4,h5,h6,p,a,button,input,select,textarea,label,li,td,th,strong,small) {
	font-family: inherit !important;
	letter-spacing: inherit;
}

/* Keep the Tutor icon typeface intact. */
[class^="tutor-icon-"],
[class*=" tutor-icon-"] {
	font-family: "tutor" !important;
}

/* Tutor 4.x native course cards: use the active theme typography and remove
 * the author/avatar/category row confirmed by the live DOM structure. */
body .tutor-course-card,
body .tutor-course-card :where(h1,h2,h3,h4,h5,h6,p,a,button,span,small,strong) {
	font-family: inherit !important;
	letter-spacing: normal !important;
}

/* Keep Tutor's icon font intact inside course cards. */
body .tutor-course-card [class^="tutor-icon-"],
body .tutor-course-card [class*=" tutor-icon-"] {
	font-family: "tutor" !important;
}

/* Hide ratings on Tutor's native list cards. */
body .tutor-course-card .tutor-course-ratings,
body .tutor-course-card .tutor-ratings,
body .tutor-course-card .tutor-ratings-stars,
body .tutor-course-card .tutor-ratings-average,
body .tutor-course-card .tutor-ratings-count {
	display: none !important;
}

/* Tutor 4.0.1 live DOM: the author avatar, “By” text and category are inside
 * .tutor-card-body > .tutor-meta.tutor-mt-auto. Keep the earlier enrollment/time
 * row (.tutor-mt-12.tutor-mb-20) visible. */
body .tutor-course-card .tutor-card-body > .tutor-meta.tutor-mt-auto,
body .tutor-course-card .tutor-meta.tutor-mt-auto[data-aimsl-author-row="1"] {
	display: none !important;
	visibility: hidden !important;
	height: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

body .tutor-course-card .tutor-course-name,
body .tutor-course-card .tutor-course-name a,
body .tutor-course-card .tutor-course-title,
body .tutor-course-card .tutor-course-title a {
	font-family: inherit !important;
	font-size: 17px !important;
	font-weight: 600 !important;
	line-height: 1.55 !important;
	letter-spacing: normal !important;
}

body .tutor-course-card .tutor-card-body {
	padding-bottom: 20px !important;
}

body .tutor-course-card .tutor-course-price,
body .tutor-course-card .tutor-item-price,
body .tutor-course-card .tutor-btn,
body .tutor-course-card .cart-text {
	font-family: inherit !important;
	letter-spacing: normal !important;
}

/* Single-course sidebar: show all metadata widgets by default. */
.single-courses .tutor-single-course-sidebar-more,
.single-tutor_course .tutor-single-course-sidebar-more,
.tutor-course-details-page .tutor-single-course-sidebar-more {
	display: block !important;
	height: auto !important;
	max-height: none !important;
	min-height: 0 !important;
	overflow: visible !important;
	opacity: 1 !important;
	visibility: visible !important;
	clip: auto !important;
	clip-path: none !important;
	transform: none !important;
}

.tutor-course-details-page .tutor-single-course-sidebar-more > *,
.tutor-course-details-page .tutor-single-course-sidebar-more .tutor-course-details-widget,
.tutor-course-details-page .tutor-single-course-sidebar-more .tutor-course-details-instructors,
.tutor-course-details-page .tutor-single-course-sidebar-more .collapse,
.tutor-course-details-page .tutor-single-course-sidebar-more .collapsing,
.tutor-course-details-page .tutor-single-course-sidebar-more .tutor-collapse,
.tutor-course-details-page .tutor-single-course-sidebar-more .tutor-accordion-item-body,
.tutor-course-details-page .tutor-single-course-sidebar-more [data-accordion-body] {
	display: block !important;
	height: auto !important;
	max-height: none !important;
	overflow: visible !important;
	opacity: 1 !important;
	visibility: visible !important;
}

.tutor-course-details-page .tutor-single-course-sidebar-more [hidden] {
	display: block !important;
}

.tutor-course-details-page .tutor-single-course-sidebar-more .tutor-course-details-widget,
.tutor-course-details-page .tutor-single-course-sidebar-more .tutor-course-details-instructors {
	margin-top: 24px;
}

.tutor-course-details-page .tutor-single-course-sidebar-more .tutor-course-details-widget:first-child,
.tutor-course-details-page .tutor-single-course-sidebar-more .tutor-course-details-instructors:first-child {
	margin-top: 0;
}

/* Native Tutor cart: compact headings, stable price layout, clean digital-course cards. */
.tutor-cart-page {
	--aimsl-cart-radius: 16px;
}

.tutor-cart-page h3.tutor-fs-3,
.tutor-cart-page .tutor-fs-3,
.tutor-cart-page [class*="cart"] h3,
.tutor-cart-page [class*="summary"] h3 {
	font-size: 18px !important;
	line-height: 1.45 !important;
	font-weight: 700 !important;
}

.tutor-cart-page .tutor-card,
.tutor-cart-page [class*="cart-course"],
.tutor-cart-page [class*="cart-summary"] {
	border-radius: var(--aimsl-cart-radius);
}

.tutor-cart-page [class*="course-price"],
.tutor-cart-page [class*="cart-price"],
.tutor-cart-page [class*="subtotal"],
.tutor-cart-page [class*="grand-total"] {
	white-space: nowrap !important;
	word-break: keep-all !important;
}

.tutor-cart-page [class*="course-price-wrapper"] {
	min-width: 128px;
	text-align: right;
}

.tutor-cart-page .tutor-btn-primary {
	border-radius: 10px;
	min-height: 48px;
}

/* Native Tutor checkout: digital courses do not need a postal billing address. */
.tutor-checkout-page {
	--aimsl-checkout-radius: 16px;
}

.tutor-checkout-page .tutor-checkout-details,
.tutor-checkout-page .tutor-checkout-billing,
.tutor-checkout-page .tutor-checkout-billing-inner,
.tutor-checkout-page [class*="order-details"] {
	border-radius: var(--aimsl-checkout-radius);
}

.tutor-checkout-page h3,
.tutor-checkout-page h4,
.tutor-checkout-page h5 {
	line-height: 1.4;
}

.tutor-checkout-page .aimsl-hidden-billing-field,
.tutor-checkout-page .aimsl-hidden-billing-heading,
.tutor-checkout-page.aimsl-checkout-no-address .tutor-billing-fields {
	display: none !important;
}

.tutor-checkout-page .aimsl-digital-checkout-note {
	margin: 0 0 20px;
	padding: 14px 16px;
	border: 1px solid #dbe8ff;
	border-radius: 12px;
	background: #f5f9ff;
	color: #44546a;
	font-size: 14px;
	line-height: 1.6;
}

.tutor-checkout-page .tutor-payment-method-wrapper,
.tutor-checkout-page .tutor-checkout-billing-inner,
.tutor-checkout-page [class*="order-details"] {
	box-shadow: none;
}

.tutor-checkout-page .tutor-btn-primary,
.tutor-checkout-page #tutor-checkout-pay-now-button {
	border-radius: 10px;
	min-height: 50px;
}

/* Presto-converted lesson videos stay responsive inside Tutor's learning area. */
.tutor-lesson-wrapper .presto-player,
.tutor-course-single-content-wrapper .presto-player,
.tutor-lesson-wrapper presto-player,
.tutor-course-single-content-wrapper presto-player {
	width: 100%;
	max-width: 100%;
	margin-bottom: 24px;
}

@media (max-width: 767px) {
	.tutor-cart-page [class*="course-price-wrapper"] {
		min-width: 0;
		text-align: left;
	}

	.tutor-cart-page [class*="cart-course"] {
		gap: 14px;
	}

	.tutor-checkout-page .aimsl-digital-checkout-note {
		margin-bottom: 16px;
	}
}

/* Prevent a flash of postal-address fields for signed-in users. */
.logged-in .tutor-checkout-page .tutor-billing-fields,
.logged-in .tutor-checkout-page .tutor-checkout-billing-inner > h5:first-of-type {
	display: none !important;
}

/* Tutor learning area: use Presto's native 16:9 ratio without stacking ratios on nested wrappers. */
.tutor-lesson-wrapper :is(.presto-player, presto-player, .presto-block-video, [class*="presto-video-id-"], figure.wp-block-video, .wp-video),
.tutor-course-single-content-wrapper :is(.presto-player, presto-player, .presto-block-video, [class*="presto-video-id-"], figure.wp-block-video, .wp-video) {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	aspect-ratio: 16 / 9 !important;
	margin: 0 0 24px !important;
	overflow: hidden;
	background: #000;
}

/* Presto/Plyr owns the internal media sizing. Forcing 16:9 on every nested layer
 * creates double aspect-ratio boxes and the large black bands seen in old lessons. */
.tutor-lesson-wrapper :is(.presto-player__wrapper, .presto-player__media, .plyr, .plyr__video-wrapper, .plyr__video-embed, media-player, media-provider),
.tutor-course-single-content-wrapper :is(.presto-player__wrapper, .presto-player__media, .plyr, .plyr__video-wrapper, .plyr__video-embed, media-player, media-provider) {
	width: 100% !important;
	max-width: 100% !important;
	min-height: 0 !important;
}

.tutor-lesson-wrapper :is(.presto-player, presto-player, .presto-block-video, [class*="presto-video-id-"], .plyr, media-player) video,
.tutor-course-single-content-wrapper :is(.presto-player, presto-player, .presto-block-video, [class*="presto-video-id-"], .plyr, media-player) video {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
}

/* Native HTML5 videos that have not yet been migrated still receive a safe 16:9 box. */
.tutor-lesson-wrapper > video,
.tutor-course-single-content-wrapper > video,
.tutor-lesson-wrapper figure.wp-block-video > video,
.tutor-course-single-content-wrapper figure.wp-block-video > video {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	aspect-ratio: 16 / 9 !important;
	object-fit: contain !important;
	background: #000;
}

/* Single, page-overlay fullscreen controller for Tutor lessons.
 * Legacy v3.4.0-v3.4.3 controls are permanently hidden so cached/aggregated
 * JavaScript cannot create a second button. */
#aimsl-learning-fullscreen-toggle,
.aimsl-learning-fullscreen-toggle,
[data-aimsl-fullscreen-control="1"],
.aimsl-learning-tools,
.aimsl-learning-width-toggle,
.aimedu-console-fullscreen-button,
.aimedu-fs-button,
.aimedu-fullscreen-button,
.aimedu-fullscreen-toggle,
.aimedu-reading-toggle,
.aimedu-reading-toolbar,
.aimedu-fullscreen-toolbar,
[data-aimedu-fullscreen] {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

.aimsl-single-fullscreen-toolbar {
	display: flex !important;
	align-items: center !important;
	min-width: 0 !important;
	width: 100% !important;
}

.aimsl-single-fullscreen-group {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	gap: 14px !important;
	margin-left: auto !important;
	padding-left: 18px !important;
	position: relative !important;
	inset: auto !important;
	transform: none !important;
	flex: 0 0 auto !important;
	z-index: 40 !important;
}

.aimsl-single-fullscreen-toggle {
	appearance: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 7px !important;
	position: static !important;
	inset: auto !important;
	transform: none !important;
	flex: 0 0 auto !important;
	min-height: 38px !important;
	margin: 0 !important;
	padding: 7px 12px !important;
	border: 1px solid color-mix(in srgb, var(--aimsl-theme-accent, #4285f4) 25%, transparent) !important;
	border-radius: 10px !important;
	background: color-mix(in srgb, var(--aimsl-theme-accent, #4285f4) 8%, transparent) !important;
	color: var(--aimsl-theme-accent, var(--global-palette1, #4285f4)) !important;
	font: inherit !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	letter-spacing: 0 !important;
	white-space: nowrap !important;
	box-shadow: none !important;
	cursor: pointer !important;
	transition: background-color .18s ease, border-color .18s ease !important;
}

.aimsl-single-fullscreen-toggle:hover,
.aimsl-single-fullscreen-toggle:focus-visible,
.aimsl-single-fullscreen-toggle[aria-pressed="true"] {
	background: color-mix(in srgb, var(--aimsl-theme-accent, #4285f4) 14%, transparent) !important;
	border-color: color-mix(in srgb, var(--aimsl-theme-accent, #4285f4) 40%, transparent) !important;
	color: var(--aimsl-theme-accent, var(--global-palette1, #4285f4)) !important;
	outline: none !important;
}

.aimsl-single-fullscreen-icon {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 18px !important;
	height: 18px !important;
	flex: 0 0 18px !important;
}

.aimsl-single-fullscreen-close {
	font-size: 24px !important;
	font-weight: 400 !important;
	line-height: 1 !important;
}

.aimsl-single-note-action {
	position: static !important;
	inset: auto !important;
	top: auto !important;
	right: auto !important;
	bottom: auto !important;
	left: auto !important;
	margin: 0 !important;
	transform: none !important;
	float: none !important;
	flex: 0 0 auto !important;
	z-index: auto !important;
}

html.aimsl-single-fullscreen-lock,
body.aimsl-single-fullscreen-lock {
	overflow: hidden !important;
	overscroll-behavior: none !important;
}

.aimsl-single-fullscreen-stage {
	position: fixed !important;
	inset: 0 !important;
	top: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	display: block !important;
	width: 100vw !important;
	min-width: 100vw !important;
	max-width: none !important;
	height: 100vh !important;
	height: 100dvh !important;
	min-height: 100vh !important;
	min-height: 100dvh !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	overscroll-behavior: contain !important;
	transform: none !important;
	z-index: 2147483646 !important;
	isolation: isolate !important;
}

.aimsl-single-fullscreen-stage,
.aimsl-single-fullscreen-stage * {
	box-sizing: border-box !important;
}

.aimsl-single-fullscreen-stage .tutor-tabs-nav,
.aimsl-single-fullscreen-stage [role="tablist"] {
	position: sticky !important;
	top: 0 !important;
	z-index: 100 !important;
	background: #fff !important;
}

.aimsl-single-fullscreen-stage :is(
	.tutor-container,
	.tutor-container-fluid,
	.tutor-tabs-content,
	.tutor-tab-panel,
	.tutor-lesson-wrapper,
	.tutor-lesson-content,
	.tutor-lesson-content-area,
	.tutor-course-spotlight-content
) {
	width: 100% !important;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.aimsl-single-fullscreen-stage .tutor-tabs-content {
	padding-left: clamp(16px, 3vw, 48px) !important;
	padding-right: clamp(16px, 3vw, 48px) !important;
}

.aimsl-single-fullscreen-stage .tutor-tab-panel > :is(div, section, article, main, figure, table) {
	width: 100% !important;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

@media (max-width: 767px) {
	.aimsl-single-fullscreen-group {
		gap: 8px !important;
		padding-left: 8px !important;
	}

	.aimsl-single-fullscreen-toggle {
		min-height: 34px !important;
		padding: 6px 9px !important;
		font-size: 13px !important;
	}

	.aimsl-single-fullscreen-stage .tutor-tabs-content {
		padding-left: 12px !important;
		padding-right: 12px !important;
	}
}

/* Raw HTML layouts should stay responsive inside Tutor lessons. */
.tutor-lesson-wrapper :is(section, article, main, div, table, iframe, img, video),
.tutor-course-single-content-wrapper :is(section, article, main, div, table, iframe, img, video) {
	box-sizing: border-box;
}

.tutor-lesson-wrapper iframe,
.tutor-course-single-content-wrapper iframe {
	max-width: 100%;
}

/* Dynamically sampled theme typography is applied only to Tutor's reading/content areas. */
.tutor-course-details-page,
.tutor-course-single-content-wrapper,
.tutor-lesson-wrapper,
.tutor-dashboard,
.tutor-cart-page,
.tutor-checkout-page {
	--tutor-color-primary: var(--aimsl-theme-accent, var(--global-palette1, #4285f4));
	font-family: var(--aimsl-theme-font-family, var(--global-body-font-family, inherit)) !important;
}

.tutor-course-details-page .tutor-course-details-content,
.tutor-course-details-page .tutor-course-details-tab-info,
.tutor-course-details-page .tutor-course-details-content-tab,
.tutor-course-single-content-wrapper .tutor-tab-panel,
.tutor-course-single-content-wrapper .tutor-lesson-wrapper,
.tutor-lesson-wrapper .tutor-tab-panel {
	font-family: var(--aimsl-theme-font-family, var(--global-body-font-family, inherit));
	font-size: var(--aimsl-theme-body-size, var(--global-body-font-size, 16px));
	font-weight: var(--aimsl-theme-body-weight, 400);
	line-height: var(--aimsl-theme-body-line-height, var(--global-body-line-height, 1.7));
	letter-spacing: var(--aimsl-theme-body-letter-spacing, normal);
	color: var(--aimsl-theme-body-color, var(--global-palette4, #344054));
}

.tutor-course-details-page .tutor-course-details-content :where(p, li, blockquote, td, th),
.tutor-course-details-page .tutor-course-details-tab-info :where(p, li, blockquote, td, th),
.tutor-course-single-content-wrapper .tutor-tab-panel :where(p, li, blockquote, td, th),
.tutor-lesson-wrapper .tutor-tab-panel :where(p, li, blockquote, td, th) {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	letter-spacing: inherit;
	color: inherit;
}

.tutor-course-details-page .tutor-course-details-content :where(p),
.tutor-course-details-page .tutor-course-details-tab-info :where(p),
.tutor-course-single-content-wrapper .tutor-tab-panel :where(p),
.tutor-lesson-wrapper .tutor-tab-panel :where(p) {
	margin-top: var(--aimsl-theme-paragraph-margin-top, 0);
	margin-bottom: var(--aimsl-theme-paragraph-margin-bottom, 1.25em);
}

.tutor-course-details-page .tutor-course-details-content :where(ul, ol),
.tutor-course-details-page .tutor-course-details-tab-info :where(ul, ol),
.tutor-course-single-content-wrapper .tutor-tab-panel :where(ul, ol),
.tutor-lesson-wrapper .tutor-tab-panel :where(ul, ol) {
	margin-top: 0;
	margin-bottom: var(--aimsl-theme-paragraph-margin-bottom, 1.25em);
	padding-left: 1.45em;
}

.tutor-course-details-page .tutor-course-details-content :where(h1),
.tutor-course-details-page .tutor-course-details-tab-info :where(h1),
.tutor-course-single-content-wrapper .tutor-tab-panel :where(h1),
.tutor-lesson-wrapper .tutor-tab-panel :where(h1) {
	margin-top: var(--aimsl-theme-h1-margin-top, .6em);
	margin-bottom: var(--aimsl-theme-h1-margin-bottom, .45em);
	font-family: var(--global-heading-font-family, var(--aimsl-theme-font-family, inherit));
	font-size: var(--aimsl-theme-h1-size, 2.25em);
	font-weight: var(--aimsl-theme-h1-weight, 700);
	line-height: var(--aimsl-theme-h1-line-height, 1.2);
	letter-spacing: var(--aimsl-theme-h1-letter-spacing, normal);
	color: var(--aimsl-theme-h1-color, var(--global-palette3, #172033));
}

.tutor-course-details-page .tutor-course-details-content :where(h2),
.tutor-course-details-page .tutor-course-details-tab-info :where(h2),
.tutor-course-single-content-wrapper .tutor-tab-panel :where(h2),
.tutor-lesson-wrapper .tutor-tab-panel :where(h2) {
	margin-top: var(--aimsl-theme-h2-margin-top, 1em);
	margin-bottom: var(--aimsl-theme-h2-margin-bottom, .45em);
	font-family: var(--global-heading-font-family, var(--aimsl-theme-font-family, inherit));
	font-size: var(--aimsl-theme-h2-size, 1.8em);
	font-weight: var(--aimsl-theme-h2-weight, 700);
	line-height: var(--aimsl-theme-h2-line-height, 1.25);
	letter-spacing: var(--aimsl-theme-h2-letter-spacing, normal);
	color: var(--aimsl-theme-h2-color, var(--global-palette3, #172033));
}

.tutor-course-details-page .tutor-course-details-content :where(h3),
.tutor-course-details-page .tutor-course-details-tab-info :where(h3),
.tutor-course-single-content-wrapper .tutor-tab-panel :where(h3),
.tutor-lesson-wrapper .tutor-tab-panel :where(h3) {
	margin-top: var(--aimsl-theme-h3-margin-top, .9em);
	margin-bottom: var(--aimsl-theme-h3-margin-bottom, .4em);
	font-family: var(--global-heading-font-family, var(--aimsl-theme-font-family, inherit));
	font-size: var(--aimsl-theme-h3-size, 1.45em);
	font-weight: var(--aimsl-theme-h3-weight, 700);
	line-height: var(--aimsl-theme-h3-line-height, 1.3);
	letter-spacing: var(--aimsl-theme-h3-letter-spacing, normal);
	color: var(--aimsl-theme-h3-color, var(--global-palette3, #172033));
}

.tutor-course-details-page .tutor-course-details-content :where(h4),
.tutor-course-details-page .tutor-course-details-tab-info :where(h4),
.tutor-course-single-content-wrapper .tutor-tab-panel :where(h4),
.tutor-lesson-wrapper .tutor-tab-panel :where(h4),
.tutor-course-details-page .tutor-course-details-content :where(h5),
.tutor-course-details-page .tutor-course-details-tab-info :where(h5),
.tutor-course-single-content-wrapper .tutor-tab-panel :where(h5),
.tutor-lesson-wrapper .tutor-tab-panel :where(h5),
.tutor-course-details-page .tutor-course-details-content :where(h6),
.tutor-course-details-page .tutor-course-details-tab-info :where(h6),
.tutor-course-single-content-wrapper .tutor-tab-panel :where(h6),
.tutor-lesson-wrapper .tutor-tab-panel :where(h6) {
	font-family: var(--global-heading-font-family, var(--aimsl-theme-font-family, inherit));
	font-weight: 700;
	line-height: 1.35;
	color: var(--global-palette3, #172033);
}

.tutor-course-details-page a:not(.tutor-btn),
.tutor-course-single-content-wrapper .tutor-tab-panel a:not(.tutor-btn),
.tutor-lesson-wrapper .tutor-tab-panel a:not(.tutor-btn) {
	color: var(--aimsl-theme-accent, var(--global-palette1, #4285f4));
}

.tutor-wrap .tutor-btn-primary,
.tutor-page-wrap .tutor-btn-primary,
.tutor-course-details-page .tutor-btn-primary,
.tutor-course-single-content-wrapper .tutor-btn-primary {
	border-color: var(--aimsl-theme-accent, var(--global-palette1, #4285f4)) !important;
	background-color: var(--aimsl-theme-accent, var(--global-palette1, #4285f4)) !important;
}

.tutor-wrap .tutor-color-primary,
.tutor-page-wrap .tutor-color-primary,
.tutor-course-details-page .tutor-color-primary,
.tutor-course-single-content-wrapper .tutor-color-primary {
	color: var(--aimsl-theme-accent, var(--global-palette1, #4285f4)) !important;
}

@media (max-width: 767px) {
	.aimsl-learning-tools {
		display: none;
	}
}


/* Comfortable long-form lesson typography. Noto Sans SC is used when it is
 * already available on the site/device, with fast local Chinese fallbacks. */
.tutor-course-single-content-wrapper .tutor-tab-panel,
.tutor-course-single-content-wrapper .tutor-lesson-wrapper,
.tutor-lesson-wrapper .tutor-tab-panel,
.tutor-lesson-wrapper .tutor-lesson-content,
.tutor-lesson-wrapper .tutor-lesson-content-area {
	font-family: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif !important;
	font-weight: 500 !important;
	line-height: 1.85 !important;
	letter-spacing: .025em !important;
}

.tutor-course-single-content-wrapper .tutor-tab-panel :where(p, li, blockquote, td, th),
.tutor-lesson-wrapper .tutor-tab-panel :where(p, li, blockquote, td, th),
.tutor-lesson-wrapper .tutor-lesson-content :where(p, li, blockquote, td, th) {
	font-family: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif !important;
	font-size: 17px !important;
	font-weight: 500 !important;
	line-height: 1.85 !important;
	letter-spacing: .025em !important;
}

.tutor-course-single-content-wrapper .tutor-tab-panel :where(p),
.tutor-lesson-wrapper .tutor-tab-panel :where(p),
.tutor-lesson-wrapper .tutor-lesson-content :where(p) {
	margin-bottom: 1.35em !important;
}

.tutor-course-single-content-wrapper .tutor-tab-panel :where(li),
.tutor-lesson-wrapper .tutor-tab-panel :where(li),
.tutor-lesson-wrapper .tutor-lesson-content :where(li) {
	margin-bottom: .38em;
}

.tutor-course-single-content-wrapper .tutor-tab-panel :where(h1, h2, h3, h4, h5, h6),
.tutor-lesson-wrapper .tutor-tab-panel :where(h1, h2, h3, h4, h5, h6),
.tutor-lesson-wrapper .tutor-lesson-content :where(h1, h2, h3, h4, h5, h6) {
	font-family: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif !important;
	font-weight: 700 !important;
	line-height: 1.42 !important;
	letter-spacing: .012em !important;
}

@media (max-width: 767px) {
	.tutor-course-single-content-wrapper .tutor-tab-panel :where(p, li, blockquote, td, th),
	.tutor-lesson-wrapper .tutor-tab-panel :where(p, li, blockquote, td, th),
	.tutor-lesson-wrapper .tutor-lesson-content :where(p, li, blockquote, td, th) {
		font-size: 16px !important;
		line-height: 1.8 !important;
		letter-spacing: .018em !important;
	}
}
