/* Student / instructor dashboard + account — Udemy-like layout */

/* Lock light Tutor design tokens so dark/system prefs cannot clash with the white shell. */
body.jbs-theme-child.jbs-tutor-dashboard,
body.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-layout,
body.jbs-theme-child.jbs-tutor-dashboard .tutor-account-page-wrapper {
	--tutor-surface-base: var(--jbs-page-bg, #f7f9fa);
	--tutor-surface-l1: #fff;
	--tutor-surface-l1-hover: #f7f9fa;
	--tutor-surface-l2: #ececed;
	--tutor-surface-l2-hover: #d1d7dc;
	--tutor-surface-l3: #f5f5f6;
	--tutor-surface-sidebar-l1: #fff;
	--tutor-text-primary: var(--jbs-ink, #1c1d1f);
	--tutor-text-secondary: #4a4d52;
	--tutor-text-subdued: var(--jbs-muted, #6a6f73);
	--tutor-text-disabled: #9da2a6;
	--tutor-border-idle: var(--jbs-border, #d1d7dc);
	--tutor-icon-idle: #4a4d52;
	--tutor-icon-hover: var(--jbs-ink, #1c1d1f);
	--tutor-icon-secondary: #4a4d52;
	color: var(--jbs-text, #2d2f31);
}

body.jbs-theme-child.jbs-tutor-dashboard {
	background: var(--jbs-page-bg);
}

/*
 * Site chrome stays the real .jbs-udemy-header (header.css) — do not restyle it here.
 * Theme <main> and .tutor-dashboard-layout are full-bleed; only .jbs-dashboard-shell
 * is constrained to the header bar content width (--jbs-max / 1340px).
 */
body.jbs-theme-child.jbs-tutor-dashboard:not(.jbs-my-learning) #jbs-main,
body.jbs-theme-child.jbs-tutor-dashboard:not(.jbs-my-learning) .jbs-site-main {
	display: block;
	width: 100%;
	max-width: none;
	box-sizing: border-box;
}

/*
 * Outer layout: full-bleed, transparent — keeps global header/footer visually separate.
 * Flex row + white surface live on .jbs-dashboard-shell (not My Learning).
 */
body.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-layout:not(.jbs-my-learning-layout) {
	font-family: var(--jbs-tutor-font);
	color: var(--jbs-text);
	display: block;
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	margin: 0;
	padding-top: 1.75rem;
	padding-bottom: 1.75rem;
	border: 0;
	background-color: transparent;
	min-height: 0;
	height: auto;
}

/* Constrained content row: sidebar + main + mobile nav */
body.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-layout:not(.jbs-my-learning-layout) .jbs-dashboard-shell {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: stretch;
	box-sizing: border-box;
	width: 100%;
	max-width: var(--jbs-max, 1340px);
	margin: 0 auto;
	padding-inline: 0;
	border: 0;
	border-top: 1px solid var(--jbs-border);
	background-color: #fff;
	min-height: 0;
	height: auto;
	position: relative;
}

/* Full-height nav divider (independent of sidebar content height). */
body.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-layout:not(.jbs-my-learning-layout) .jbs-dashboard-shell::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 280px;
	width: 1px;
	background: var(--jbs-border, #d1d7dc);
	pointer-events: none;
	z-index: 1;
}

/* Account pages without sidebar: card layout, no sidebar + main flex trap. */
body.jbs-theme-child.jbs-tutor-dashboard .tutor-account-page-wrapper:not(.jbs-my-learning-layout) {
	font-family: var(--jbs-tutor-font);
	background: var(--jbs-page-bg);
	color: var(--jbs-text);
	display: block;
	max-width: 1200px;
	width: 100%;
	margin: 1.5rem auto 3rem;
	border: 1px solid var(--jbs-border);
	background-color: #fff;
	min-height: 0;
	height: auto;
}

body.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-layout:not(.jbs-my-learning-layout) .jbs-dashboard-shell > .tutor-dashboard-sidebar {
	flex: 0 0 280px;
	width: 280px;
	max-width: 280px;
	align-self: stretch;
}

body.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-layout:not(.jbs-my-learning-layout) .jbs-dashboard-shell > .tutor-dashboard-main {
	flex: 1 1 auto;
	align-self: stretch;
	width: auto;
	min-width: 0;
	max-width: none;
}

/* Mobile nav is a third flex child; hide on desktop, show stacked on small screens. */
body.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-layout:not(.jbs-my-learning-layout) .jbs-dashboard-shell > .tutor-dashboard-nav-mobile {
	display: none;
}

/* Beat Tutor’s 760–944px caps on normal dashboard pages only. */
body.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-layout:not(.jbs-my-learning-layout) .tutor-dashboard-header,
body.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-layout:not(.jbs-my-learning-layout) .tutor-dashboard-header-inner,
body.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-layout:not(.jbs-my-learning-layout) .tutor-dashboard-body,
body.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-layout:not(.jbs-my-learning-layout) .tutor-dashboard-page {
	max-width: none;
	width: 100%;
	margin: 0;
	box-sizing: border-box;
}

/* Site header is theme .jbs-udemy-header; layout only needs sticky offset vars from Tutor JS. */

.jbs-theme-child .tutor-dashboard-sidebar,
.jbs-theme-child .jbs-tutor-dashboard-sidebar {
	background: #fff;
	border-right: 0;
	padding: 1.5rem 0 2rem;
	color: var(--jbs-text);
	align-self: stretch;
	min-height: 100%;
	height: auto;
	position: sticky;
	top: 0;
}

/* Stretch sidebar to the shell row; avoid Tutor’s old viewport-tall gap on short pages. */
body.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-layout .tutor-dashboard-sidebar,
body.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-layout.tutor-has-site-shell .tutor-dashboard-sidebar,
body.jbs-theme-child:has(#wpadminbar) .tutor-dashboard-layout.tutor-has-site-shell .tutor-dashboard-sidebar {
	align-self: stretch;
	min-height: 100%;
	height: auto;
}

.jbs-theme-child .tutor-dashboard-main {
	min-width: 0;
	min-height: 0;
	height: auto;
	display: flex;
	flex-direction: column;
	background: #fff;
	color: var(--jbs-text);
}

.jbs-theme-child .jbs-tutor-account-identity {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 0.5rem;
	padding: 0 1.25rem 1.5rem;
	margin-bottom: 0.75rem;
	border-bottom: 1px solid var(--jbs-border);
}

.jbs-theme-child .jbs-tutor-account-identity__avatar {
	width: 96px;
	height: 96px;
	border-radius: 999px;
	background: #2d2f31;
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 2rem;
	font-weight: 700;
	overflow: hidden;
}

.jbs-theme-child .jbs-tutor-account-identity__avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.jbs-theme-child .jbs-tutor-account-identity__name {
	font-weight: 700;
	font-size: 1.05rem;
	color: var(--jbs-ink);
}

.jbs-theme-child .jbs-tutor-account-identity__link {
	font-size: 0.85rem;
	color: var(--jbs-accent);
	text-decoration: none;
	font-weight: 600;
}

.jbs-theme-child .jbs-tutor-account-identity__link:hover {
	text-decoration: underline;
}

.jbs-theme-child .tutor-dashboard-sidebar-nav ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.jbs-theme-child .jbs-tutor-sidebar-section {
	list-style: none;
	padding: 0 1.35rem;
	margin: 0;
}

.jbs-theme-child .jbs-tutor-sidebar-section:first-child {
	margin-top: 0;
}

.jbs-theme-child .jbs-tutor-sidebar-section:not(:first-child) {
	margin-top: 12px;
}

.jbs-theme-child .jbs-tutor-sidebar-section__label {
	display: block;
	font-size: 0.7rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #6a6f73;
	padding: 0.35rem 0 0.25rem;
}

.jbs-theme-child .tutor-dashboard-sidebar-nav a,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-action,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-parent {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	padding: 0.75rem 1.35rem;
	text-decoration: none;
	font-size: 0.95rem;
	font-weight: 500;
	width: 100%;
	background: transparent;
	border: 0;
	cursor: pointer;
	text-align: left;
	font-family: inherit;
	box-sizing: border-box;
	color: var(--jbs-text, #2d2f31);
	appearance: none;
	-webkit-appearance: none;
	box-shadow: none;
}

.jbs-theme-child .tutor-dashboard-sidebar-nav a span,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-action span,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-parent span {
	color: inherit;
}

.jbs-theme-child .tutor-dashboard-sidebar-nav a svg,
.jbs-theme-child .tutor-dashboard-sidebar-nav a .tutor-icon,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-action svg,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-action .tutor-icon,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-parent svg,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-parent .tutor-icon {
	color: inherit;
	/* Keep SvgIcon default fill:none so stroke outlines stay hollow.
	   Paths that need solid fill set fill="currentColor" on the path itself. */
	fill: none;
	flex-shrink: 0;
}

/* Hover: light grey — never apply to the active item */
.jbs-theme-child .tutor-dashboard-sidebar-nav li:not(.active):not(.is-active) > a:hover,
.jbs-theme-child .tutor-dashboard-sidebar-nav li:not(.active):not(.is-active) > a:focus-visible,
.jbs-theme-child .tutor-dashboard-sidebar-nav a:not(.active):hover,
.jbs-theme-child .tutor-dashboard-sidebar-nav a:not(.active):focus-visible,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-action:hover,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-action:focus-visible,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-parent:not(.active):hover,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-parent:not(.active):focus-visible {
	background: #f7f9fa !important;
	color: var(--jbs-text, #2d2f31) !important;
}

/* Active: soft light blue + blue text (stable; hover must not darken) */
.jbs-theme-child .tutor-dashboard-sidebar-nav li.active,
.jbs-theme-child .tutor-dashboard-sidebar-nav li.is-active {
	background: transparent !important;
}

.jbs-theme-child .tutor-dashboard-sidebar-nav li.active > a,
.jbs-theme-child .tutor-dashboard-sidebar-nav li.is-active > a,
.jbs-theme-child .tutor-dashboard-sidebar-nav a.active,
.jbs-theme-child .tutor-dashboard-sidebar-nav a[aria-current="page"],
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-parent.active,
.jbs-theme-child .tutor-dashboard-sidebar-nav li.active > a:hover,
.jbs-theme-child .tutor-dashboard-sidebar-nav li.is-active > a:hover,
.jbs-theme-child .tutor-dashboard-sidebar-nav a.active:hover,
.jbs-theme-child .tutor-dashboard-sidebar-nav a[aria-current="page"]:hover,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-parent.active:hover,
.jbs-theme-child .tutor-dashboard-sidebar-nav li.active > a:focus-visible,
.jbs-theme-child .tutor-dashboard-sidebar-nav a.active:focus-visible,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-parent.active:focus-visible {
	background: var(--jbs-accent-2, #e0f6fd) !important;
	color: var(--jbs-accent-hover, #0e95d0) !important;
	font-weight: 700;
}

.jbs-theme-child .tutor-dashboard-sidebar-nav a.active span,
.jbs-theme-child .tutor-dashboard-sidebar-nav a.active svg,
.jbs-theme-child .tutor-dashboard-sidebar-nav a.active .tutor-icon,
.jbs-theme-child .tutor-dashboard-sidebar-nav li.active > a span,
.jbs-theme-child .tutor-dashboard-sidebar-nav li.active > a svg,
.jbs-theme-child .tutor-dashboard-sidebar-nav li.active > a .tutor-icon,
.jbs-theme-child .tutor-dashboard-sidebar-nav li.is-active > a span,
.jbs-theme-child .tutor-dashboard-sidebar-nav li.is-active > a svg,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-parent.active span,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-parent.active svg,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-parent.active .tutor-icon,
.jbs-theme-child .tutor-dashboard-sidebar-nav li.active > a:hover span,
.jbs-theme-child .tutor-dashboard-sidebar-nav li.active > a:hover svg,
.jbs-theme-child .tutor-dashboard-sidebar-nav a.active:hover span,
.jbs-theme-child .tutor-dashboard-sidebar-nav a.active:hover svg,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-parent.active:hover span,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-parent.active:hover svg {
	color: inherit !important;
}

/* Nested sidebar dropdown (e.g. Payout Requests → Instructor / Affiliate) */
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-parent {
	justify-content: space-between;
}

.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-parent__main {
	display: inline-flex;
	align-items: center;
	gap: 0.65rem;
	min-width: 0;
}

.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-parent__chevron {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: transform 0.18s ease;
}

.jbs-theme-child .tutor-dashboard-sidebar-nav li.has-children.is-expanded > .jbs-tutor-sidebar-parent .jbs-tutor-sidebar-parent__chevron,
.jbs-theme-child .tutor-dashboard-sidebar-nav li.has-children:hover > .jbs-tutor-sidebar-parent .jbs-tutor-sidebar-parent__chevron {
	transform: rotate(180deg);
}

.jbs-theme-child .tutor-dashboard-sidebar-nav li.has-children > .jbs-tutor-sidebar-children {
	list-style: none;
	margin: 0;
	padding: 0 0 0.35rem;
	display: none;
}

.jbs-theme-child .tutor-dashboard-sidebar-nav li.has-children.is-expanded > .jbs-tutor-sidebar-children {
	display: block;
}

@media (hover: hover) and (pointer: fine) {
	.jbs-theme-child .tutor-dashboard-sidebar-nav li.has-children:hover > .jbs-tutor-sidebar-children {
		display: block;
	}
}

.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-child > a {
	padding: 0.45rem 1.35rem 0.45rem 3.25rem;
	font-size: 0.9rem;
	font-weight: 500;
	background: transparent;
}

.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-child:not(.is-active) > a:hover,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-child:not(.is-active) > a:focus-visible {
	background: #f7f9fa !important;
	color: var(--jbs-text, #2d2f31) !important;
}

.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-child:not(.is-active) > a:hover span,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-child:not(.is-active) > a:focus-visible span {
	color: inherit !important;
}

.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-child.is-active > a,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-child > a.active,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-child.is-active > a:hover,
.jbs-theme-child .tutor-dashboard-sidebar-nav .jbs-tutor-sidebar-child > a.active:hover {
	background: transparent !important;
	color: var(--jbs-accent-hover, #0e95d0) !important;
	font-weight: 700;
}

.jbs-theme-child .jbs-tutor-header-avatar-static {
	display: none !important;
}

/* Notification bell: no border box, larger icon */
.jbs-theme-child .jbs-tutor-notifications .tutor-dashboard-notification-trigger-wrap .tutor-btn,
.jbs-theme-child .jbs-tutor-notifications .jbs-tutor-notification-bell {
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	min-width: 2.5rem;
	min-height: 2.5rem;
	padding: 0.35rem;
	color: var(--jbs-ink, #1c1d1f);
}

.jbs-theme-child .jbs-tutor-notifications .tutor-dashboard-notification-trigger-wrap .tutor-btn:hover,
.jbs-theme-child .jbs-tutor-notifications .jbs-tutor-notification-bell:hover,
.jbs-theme-child .jbs-tutor-notifications .tutor-dashboard-notification-trigger-wrap .tutor-btn:focus-visible,
.jbs-theme-child .jbs-tutor-notifications .jbs-tutor-notification-bell:focus-visible {
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--jbs-accent, #3e63dd);
}

.jbs-theme-child .jbs-tutor-notifications .tutor-dashboard-notification-trigger-wrap .tutor-btn [class^="tutor-icon-"],
.jbs-theme-child .jbs-tutor-notifications .tutor-dashboard-notification-trigger-wrap .tutor-btn [class*=" tutor-icon-"],
.jbs-theme-child .jbs-tutor-notifications .jbs-tutor-notification-bell [class^="tutor-icon-"],
.jbs-theme-child .jbs-tutor-notifications .jbs-tutor-notification-bell [class*=" tutor-icon-"],
.jbs-theme-child .jbs-tutor-notifications .tutor-dashboard-notification-trigger-wrap .tutor-btn svg,
.jbs-theme-child .jbs-tutor-notifications .jbs-tutor-notification-bell svg {
	font-size: 1.5rem !important;
	width: 1.5rem;
	height: 1.5rem;
	line-height: 1;
}

.jbs-theme-child .tutor-dashboard-header {
	border-bottom: 1px solid var(--jbs-border);
	padding: 1.75rem 2rem;
	background: #fff;
	color: var(--jbs-ink);
	z-index: 20;
	/* Allow multi-line greetings (e.g. Viewing as Admin); Tutor defaults to fixed 80px / 60px. */
	height: auto;
	min-height: 80px;
	box-sizing: border-box;
}

.jbs-theme-child .tutor-dashboard-header .tutor-dashboard-header-inner {
	height: auto;
	min-height: inherit;
	align-items: center;
}

.jbs-theme-child .tutor-dashboard-header .tutor-text-subdued,
.jbs-theme-child .tutor-dashboard-header .tutor-color-muted,
.jbs-theme-child .tutor-dashboard-header .tutor-color-hints,
.jbs-theme-child .tutor-dashboard-header [class*="subdued"],
.jbs-theme-child .tutor-dashboard-header p,
.jbs-theme-child .tutor-dashboard-header .tutor-fs-7,
.jbs-theme-child .tutor-dashboard-header .tutor-fs-6 {
	color: #4a4d52;
}

.jbs-theme-child .tutor-dashboard-body,
.jbs-theme-child .tutor-dashboard-page {
	padding: 1.75rem 2rem 2.5rem;
	color: var(--jbs-text);
}

.jbs-theme-child .tutor-dashboard-page h1:not(.jbs-ml-header__title),
.jbs-theme-child .tutor-dashboard-page h2,
.jbs-theme-child .tutor-dashboard-header .tutor-h5,
.jbs-theme-child .tutor-dashboard-header h1,
.jbs-theme-child .tutor-dashboard-header h2 {
	font-weight: 700;
	letter-spacing: -0.02em;
	color: var(--jbs-ink);
}

/* Stat / profile / chart cards stay light with readable labels */
.jbs-theme-child.jbs-tutor-dashboard .tutor-stat-card,
.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-home-chart,
.jbs-theme-child.jbs-tutor-dashboard .tutor-profile-completion-header,
.jbs-theme-child.jbs-tutor-dashboard .tutor-profile-completion-body,
.jbs-theme-child.jbs-tutor-dashboard .tutor-surface-l1 {
	background-color: #fff;
	border-color: var(--jbs-border, #d1d7dc);
	color: var(--jbs-text, #2d2f31);
}

.jbs-theme-child.jbs-tutor-dashboard .tutor-stat-card-title,
.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-home-chart-legend,
.jbs-theme-child.jbs-tutor-dashboard .tutor-text-subdued,
.jbs-theme-child.jbs-tutor-dashboard .tutor-color-muted,
.jbs-theme-child.jbs-tutor-dashboard .tutor-color-hints {
	color: #4a4d52;
}

.jbs-theme-child.jbs-tutor-dashboard .tutor-stat-card-value,
.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-home-chart-header,
.jbs-theme-child.jbs-tutor-dashboard .tutor-text-primary,
.jbs-theme-child.jbs-tutor-dashboard .tutor-color-black {
	color: var(--jbs-ink, #1c1d1f);
}

.jbs-theme-child .tutor-dashboard input[type="text"],
.jbs-theme-child .tutor-dashboard input[type="email"],
.jbs-theme-child .tutor-dashboard input[type="password"],
.jbs-theme-child .tutor-dashboard input[type="url"],
.jbs-theme-child .tutor-dashboard textarea,
.jbs-theme-child .tutor-dashboard select,
.jbs-theme-child .tutor-account-page-wrapper input[type="text"],
.jbs-theme-child .tutor-account-page-wrapper input[type="email"],
.jbs-theme-child .tutor-account-page-wrapper input[type="password"],
.jbs-theme-child .tutor-account-page-wrapper textarea,
.jbs-theme-child .tutor-account-page-wrapper select {
	width: 100%;
	border: 1px solid var(--jbs-border);
	border-radius: 0;
	padding: 0.75rem 0.85rem;
	font: inherit;
	background: #fff;
	color: var(--jbs-text);
}

.jbs-theme-child .tutor-dashboard input:focus,
.jbs-theme-child .tutor-dashboard textarea:focus,
.jbs-theme-child .tutor-account-page-wrapper input:focus,
.jbs-theme-child .tutor-account-page-wrapper textarea:focus {
	outline: none;
	border-color: var(--jbs-text);
}

.jbs-theme-child .tutor-dashboard label,
.jbs-theme-child .tutor-account-page-wrapper label {
	font-weight: 700;
	font-size: 0.85rem;
	color: var(--jbs-text);
	margin-bottom: 0.35rem;
	display: block;
}

.jbs-theme-child .tutor-dashboard .tutor-btn,
.jbs-theme-child .tutor-account-page-wrapper .tutor-btn {
	border-radius: 0;
	font-weight: 700;
	padding: 0.65rem 1.1rem;
	box-shadow: none;
}

.jbs-theme-child .tutor-dashboard .tutor-btn-sm,
.jbs-theme-child .tutor-account-page-wrapper .tutor-btn-sm {
	padding: 0.45rem 0.85rem;
	font-size: 0.8125rem;
	min-height: 2.125rem;
}

.jbs-theme-child .tutor-dashboard .tutor-btn-primary,
.jbs-theme-child .tutor-account-page-wrapper .tutor-btn-primary {
	background: var(--jbs-accent);
	border-color: var(--jbs-accent);
	color: #fff !important;
}

.jbs-theme-child .tutor-dashboard .tutor-btn-primary:hover,
.jbs-theme-child .tutor-account-page-wrapper .tutor-btn-primary:hover {
	background: var(--jbs-accent-hover);
	border-color: var(--jbs-accent-hover);
}

.jbs-theme-child .tutor-dashboard .tutor-btn-outline-primary,
.jbs-theme-child .tutor-account-page-wrapper .tutor-btn-outline-primary {
	background: var(--jbs-surface, #fff);
	border: 1px solid var(--jbs-border);
	color: var(--jbs-ink, #1c1d1f) !important;
}

.jbs-theme-child .tutor-dashboard .tutor-btn-outline-primary:hover,
.jbs-theme-child .tutor-account-page-wrapper .tutor-btn-outline-primary:hover {
	background: #f8fafc;
	border-color: var(--jbs-muted, #6a6f73);
	color: var(--jbs-ink, #1c1d1f) !important;
}

.jbs-theme-child .tutor-dashboard .tutor-btn-ghost,
.jbs-theme-child .tutor-account-page-wrapper .tutor-btn-ghost {
	background: transparent;
	border-color: transparent;
	color: var(--jbs-ink, #1c1d1f) !important;
	box-shadow: none;
}

.jbs-theme-child .tutor-dashboard .tutor-btn-ghost:hover,
.jbs-theme-child .tutor-account-page-wrapper .tutor-btn-ghost:hover {
	background: rgba(0, 0, 0, 0.04);
}

.jbs-theme-child .tutor-dashboard .tutor-card,
.jbs-theme-child .tutor-dashboard .tutor-table-wrapper {
	border-radius: 0;
	border-color: var(--jbs-border);
	box-shadow: none;
	background: #fff;
	color: var(--jbs-text);
}

/* Account subpages (profile / settings) */
.jbs-theme-child .tutor-user-certificates,
.jbs-theme-child .tutor-account-container {
	max-width: 1200px;
	margin: 1.5rem auto 3rem;
	background: #fff;
	border: 1px solid var(--jbs-border);
	padding: 2rem;
	color: var(--jbs-text);
}

/*
 * Account pages nested in dashboard shell (profile / settings / reviews / withdrawals / billing).
 * Match Assignments-style content area; drop standalone account chrome.
 */
.jbs-theme-child .jbs-dashboard-account-embed {
	width: 100%;
	box-sizing: border-box;
	color: var(--jbs-text, #2d2f31);
}

.jbs-theme-child .jbs-dashboard-account-embed > .tutor-account-header {
	display: none !important;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-header {
	display: none !important;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-wrapper {
	margin: 0;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-user-profile {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-container,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-user-certificates {
	max-width: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-card,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-table-wrapper,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-surface-l1 {
	border-radius: 0;
	border-color: var(--jbs-border, #d1d7dc);
	box-shadow: none;
	background: #fff;
	color: var(--jbs-text, #2d2f31);
}

/* Settings forms: no outer card chrome */
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section .tutor-card.tutor-card-rounded-2xl,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section .tutor-card {
	background: transparent !important;
	border: 0 !important;
	padding: 0 !important;
	box-shadow: none !important;
}

.jbs-theme-child .jbs-dashboard-account-embed input[type="text"],
.jbs-theme-child .jbs-dashboard-account-embed input[type="email"],
.jbs-theme-child .jbs-dashboard-account-embed input[type="password"],
.jbs-theme-child .jbs-dashboard-account-embed input[type="url"],
.jbs-theme-child .jbs-dashboard-account-embed textarea,
.jbs-theme-child .jbs-dashboard-account-embed select {
	width: 100%;
	border: 1px solid var(--jbs-border, #d1d7dc);
	border-radius: 0;
	padding: 0.75rem 0.85rem;
	font: inherit;
	background: #fff;
	color: var(--jbs-text, #2d2f31);
}

.jbs-theme-child .jbs-dashboard-account-embed input:focus,
.jbs-theme-child .jbs-dashboard-account-embed textarea:focus {
	outline: none;
	border-color: var(--jbs-text, #2d2f31);
}

.jbs-theme-child .jbs-dashboard-account-embed label {
	font-weight: 700;
	font-size: 0.85rem;
	color: var(--jbs-text, #2d2f31);
	margin-bottom: 0.35rem;
	display: block;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-btn,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-btn-primary {
	border-radius: 0;
	font-weight: 700;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-btn-primary {
	background: var(--jbs-accent);
	border-color: var(--jbs-accent);
	color: #fff !important;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-btn-primary:hover {
	background: var(--jbs-accent-hover);
	border-color: var(--jbs-accent-hover);
}

/* —— Settings page polish (nested in dashboard shell) —— */
.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-section,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-section.tutor-tabs-vertical {
	display: flex;
	flex-direction: column;
	gap: 0;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	box-sizing: border-box;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-section .tutor-account-container,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-tab-content {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

/* Drop card “boxes” so fields use the full panel width */
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section .tutor-card {
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	gap: 1.25rem !important;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-header {
	border-bottom: 1px solid var(--jbs-border, #d1d7dc);
	padding: 0 0 1rem;
	margin: 0 0 1.5rem;
	background: transparent;
	position: static;
	z-index: auto;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-header .tutor-account-container {
	padding: 0;
	margin: 0;
	border: 0;
	background: transparent;
	max-width: none;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-header-title {
	font-size: 1.35rem;
	font-weight: 700;
	color: var(--jbs-ink, #1c1d1f);
	margin: 0 !important;
	margin-left: 0 !important;
}

@media (min-width: 768px) {
	/* Sidebar already navigates — drop redundant Back / Close on desktop. */
	.jbs-theme-child .jbs-dashboard-account-embed .jbs-settings-page-header__back,
	.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-header-close {
		display: none !important;
	}

	.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-header-title {
		margin-left: 0 !important;
	}

	.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-header-left {
		width: auto !important;
	}
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-section .tutor-gap-8 {
	gap: 1.5rem !important;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-section .tutor-my-9,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-section .tutor-sm-my-6 {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

/* In-page settings tabs removed — navigation is the sidebar Settings dropdown. */
.jbs-theme-child .jbs-settings-section--sidebar-nav .jbs-settings-tabs,
.jbs-theme-child .jbs-dashboard-account-embed .jbs-settings-section--sidebar-nav .tutor-profile-settings-tab {
	display: none !important;
}

.jbs-theme-child .jbs-settings-layout--single {
	display: block;
}

.jbs-theme-child .jbs-settings-layout--single .jbs-settings-panel {
	width: 100%;
	max-width: none;
}

/* Settings sub-nav — align with dashboard sidebar active language */
.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-tab {
	flex: 0 0 240px;
	max-width: 240px;
	align-self: flex-start;
	padding: 0.5rem !important;
	border: 1px solid var(--jbs-border, #d1d7dc);
	background: #fff;
	border-radius: 0;
	position: sticky;
	top: 5.5rem;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-tab [role="tab"] {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	width: 100%;
	text-align: left;
	padding: 0.85rem 1rem;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var(--jbs-text, #2d2f31);
	cursor: pointer;
	font: inherit;
	transition: background 0.15s ease, color 0.15s ease;
}

/* Keep outline icons readable — Tutor’s 48px icon chip + fill:currentColor turn active icons into a solid blob. */
.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-tab [role="tab"] .tutor-icon,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-tab [role="tab"] [x-data*="tutorIcon"] {
	width: 1.25rem !important;
	height: 1.25rem !important;
	min-width: 1.25rem;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	padding: 0 !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	color: inherit !important;
	box-shadow: none !important;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-tab [role="tab"] svg {
	width: 1.25rem !important;
	height: 1.25rem !important;
	display: block;
	color: inherit !important;
	/* Preserve icon geometry — do not force fill:currentColor (turns user-circle into a solid disc). */
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-tab [role="tab"]:hover {
	background: #f7f9fa;
	color: var(--jbs-ink, #1c1d1f);
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-tab [role="tab"][aria-selected="true"],
.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-tab [role="tab"].tutor-tabs-tab-active,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-tab [role="tab"].active,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-tab [role="tab"].is-active {
	background: var(--jbs-accent-2, #e0f6fd) !important;
	color: var(--jbs-accent-hover, #0e95d0) !important;
	font-weight: 700;
	box-shadow: none !important;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-tab [role="tab"][aria-selected="true"] .tutor-icon,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-tab [role="tab"].tutor-tabs-tab-active .tutor-icon,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-tab [role="tab"][aria-selected="true"] svg,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-tab [role="tab"].tutor-tabs-tab-active svg {
	color: var(--jbs-accent-hover, #0e95d0) !important;
	background: transparent !important;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-tab [role="tab"] .tutor-text-tiny {
	font-weight: 400;
	color: var(--jbs-muted, #6a6f73);
	margin-top: 0.15rem;
	line-height: 1.35;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-tab [role="tab"][aria-selected="true"] .tutor-text-tiny,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-tab [role="tab"].tutor-tabs-tab-active .tutor-text-tiny {
	color: var(--jbs-accent-hover, #0e95d0);
	opacity: 0.85;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-tab-content {
	min-width: 0;
	flex: 1;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section {
	display: flex;
	flex-direction: column;
	gap: 1.75rem;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section > .tutor-flex.tutor-flex-column {
	gap: 1.75rem !important;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section .tutor-h5,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section h5 {
	font-size: 1.05rem;
	font-weight: 700;
	color: var(--jbs-ink, #1c1d1f);
	margin: 0 0 0.85rem;
	letter-spacing: -0.01em;
}

/* Tutor hides section titles on desktop — show them in the dashboard shell. */
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section .tutor-h5.tutor-md-hidden,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section h5.tutor-md-hidden {
	display: block !important;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-cover-photo {
	border-radius: 0;
	border: 1px solid var(--jbs-border, #d1d7dc);
	min-height: 184px;
	background-size: cover;
	background-position: center;
	position: relative;
	overflow: visible;
	z-index: 0;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-cover-photo-action {
	gap: 0.35rem;
	z-index: 2;
}

/* Avatar overlaps the banner — do NOT style the wrapper (that painted a white band across the cover). */
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-avatar-wrapper {
	z-index: 1;
	margin-bottom: -52px !important;
	transform: translateY(-52px);
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	padding: 0 !important;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-avatar-wrapper .tutor-account-avatar {
	border: 3px solid #fff !important;
	box-shadow: 0 0 0 1px var(--jbs-border, #d1d7dc);
	background: #ececed;
	overflow: hidden;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-avatar-wrapper .tutor-account-avatar img,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-avatar-wrapper .tutor-avatar-image {
	border: 0 !important;
	box-shadow: none !important;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 999px;
}

/* Space form fields below the overlapping avatar */
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section .tutor-card > .tutor-grid,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section form > .tutor-flex > .tutor-card > .tutor-grid {
	margin-top: 0.5rem;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section .tutor-flex.tutor-flex-column.tutor-gap-4,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section .tutor-flex.tutor-flex-column.tutor-gap-5 {
	gap: 1.35rem !important;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section label,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section .tutor-form-label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.01em;
	text-transform: none;
	color: var(--jbs-ink, #1c1d1f);
	margin-bottom: 0.5rem;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section .tutor-grid {
	gap: 1.25rem !important;
	row-gap: 1.35rem !important;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section input[type="text"],
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section input[type="email"],
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section input[type="password"],
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section input[type="tel"],
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section input[type="url"],
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section textarea,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section select,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section .tutor-form-control,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section .tutor-form-select,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section [class*="InputField"] input {
	background: #fff !important;
	border: 1px solid var(--jbs-border, #d1d7dc) !important;
	border-radius: 0 !important;
	padding: 0.85rem 1rem !important;
	min-height: 48px;
	line-height: 1.4;
	box-shadow: none !important;
	color: var(--jbs-text, #2d2f31);
	font-size: 0.95rem;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section input::placeholder,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section textarea::placeholder {
	color: #9da2a6;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section input:focus,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section textarea:focus,
.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-section select:focus {
	border-color: var(--jbs-accent, #13aff0) !important;
	outline: none;
	box-shadow: 0 0 0 3px var(--jbs-accent-2, #e0f6fd) !important;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-rich-text-editor,
.jbs-theme-child .jbs-dashboard-account-embed .wp-editor-wrap,
.jbs-theme-child .jbs-dashboard-account-embed .mce-tinymce {
	border: 1px solid var(--jbs-border, #d1d7dc);
	border-radius: 0;
	background: #fff;
}

.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-header-right .tutor-btn-primary {
	background: var(--jbs-accent, #13aff0);
	border-color: var(--jbs-accent, #13aff0);
}

@media (max-width: 767px) {
	.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-tab {
		flex: 1 1 auto;
		max-width: none;
		width: 100%;
		position: static;
	}
}

/* Beat Tutor’s 760 / 860 / 944px .tutor-account-container caps on Settings. */
@media (min-width: 0) {
	.jbs-theme-child .jbs-dashboard-account-embed .tutor-account-container,
	.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-section,
	.jbs-theme-child .jbs-dashboard-account-embed .tutor-profile-settings-section .tutor-account-container {
		max-width: none !important;
		width: 100% !important;
	}
}

@media (max-width: 900px) {
	body.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-layout:not(.jbs-my-learning-layout) .jbs-dashboard-shell {
		flex-direction: column;
		flex-wrap: wrap;
		max-width: none;
		margin: 0;
		padding-inline: 0;
		border-left: 0;
		border-right: 0;
		min-height: 0;
	}

	body.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-layout:not(.jbs-my-learning-layout) .jbs-dashboard-shell::before {
		display: none;
	}

	body.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-layout:not(.jbs-my-learning-layout) .jbs-dashboard-shell > .tutor-dashboard-sidebar,
	body.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-layout:not(.jbs-my-learning-layout) .jbs-dashboard-shell > .tutor-dashboard-main {
		flex: 1 1 auto;
		width: 100%;
		max-width: none;
	}

	body.jbs-theme-child.jbs-tutor-dashboard .tutor-dashboard-layout:not(.jbs-my-learning-layout) .jbs-dashboard-shell > .tutor-dashboard-nav-mobile {
		display: block;
		width: 100%;
		order: 3;
	}

	body.jbs-theme-child.jbs-tutor-dashboard .tutor-account-page-wrapper:not(.jbs-my-learning-layout) {
		margin: 0;
		border-left: 0;
		border-right: 0;
		min-height: 0;
	}

	.jbs-theme-child .tutor-dashboard-sidebar {
		border-right: none;
		border-bottom: 1px solid var(--jbs-border);
	}

	.jbs-theme-child .tutor-dashboard-body,
	.jbs-theme-child .tutor-dashboard-page {
		padding: 1.25rem;
	}

	.jbs-theme-child .tutor-dashboard-header {
		padding: 1.5rem 1.25rem;
		height: auto;
		min-height: 0;
	}
}

@media (max-width: 576px) {
	.jbs-theme-child .tutor-dashboard-header {
		/* Beat Tutor’s fixed 60px mobile height so padding actually shows. */
		height: auto !important;
		min-height: 0 !important;
		padding: 1.5rem 1rem !important;
	}

	.jbs-theme-child .tutor-dashboard-header .tutor-dashboard-header-inner {
		height: auto !important;
	}
}

.jbs-my-courses-filters {
	flex-wrap: wrap;
}

.jbs-my-courses-status-filter .tutor-popover {
	width: auto !important;
	min-width: 172px;
	max-width: min(320px, calc(100vw - 56px));
}

.jbs-my-courses-status-filter .tutor-popover-menu {
	width: auto;
	min-width: 100%;
}

.jbs-my-courses-status-filter .tutor-popover-menu-item .tutor-truncate {
	overflow: visible;
	text-overflow: clip;
}

.jbs-my-courses-category-filter .tutor-popover-menu {
	max-height: 280px;
	overflow-y: auto;
}

.jbs-admin-dashboard {
	width: 100%;
}

.jbs-admin-dashboard__cards {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1rem;
}

.jbs-admin-dashboard__row {
	display: grid;
	gap: 1rem;
}

.jbs-admin-dashboard__row--2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.jbs-admin-dashboard__panel {
	background: #fff;
	border: 1px solid var(--jbs-border, #d1d7dc);
	padding: 1.25rem;
	color: var(--jbs-text, #2d2f31);
}

.jbs-admin-dashboard__panel-header {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 0.75rem;
	margin-bottom: 1rem;
}

.jbs-admin-dashboard__panel-title {
	margin: 0;
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--jbs-ink, #1c1d1f);
}

.jbs-admin-dashboard__panel-link,
.jbs-admin-dashboard__panel-meta {
	font-size: 0.8125rem;
	font-weight: 600;
	color: var(--jbs-accent, #a435f0);
	text-decoration: none;
}

.jbs-admin-dashboard__panel-meta {
	color: #4a4d52;
	font-weight: 500;
}

.jbs-admin-dashboard__panel-link:hover {
	text-decoration: underline;
}

.jbs-admin-dashboard__error {
	margin: 0;
	font-size: 0.875rem;
	color: #b32d2e;
}

.jbs-admin-dashboard__status-list,
.jbs-admin-dashboard__metric-list,
.jbs-admin-dashboard__list,
.jbs-admin-dashboard__course-list,
.jbs-admin-dashboard__popular-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.jbs-admin-dashboard__status-item,
.jbs-admin-dashboard__metric-list li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.65rem 0;
	border-bottom: 1px solid var(--jbs-border, #d1d7dc);
}

.jbs-admin-dashboard__status-item:last-child,
.jbs-admin-dashboard__metric-list li:last-child,
.jbs-admin-dashboard__list-item:last-child,
.jbs-admin-dashboard__course-item:last-child,
.jbs-admin-dashboard__popular-item:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

.jbs-admin-dashboard__status-count,
.jbs-admin-dashboard__metric-value {
	font-weight: 700;
	color: var(--jbs-ink, #1c1d1f);
}

.jbs-admin-dashboard__metric-label {
	color: #4a4d52;
	font-size: 0.875rem;
}

.jbs-admin-dashboard__metric-link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	width: 100%;
	color: inherit;
	text-decoration: none;
}

.jbs-admin-dashboard__metric-link:hover .jbs-admin-dashboard__metric-label,
.jbs-admin-dashboard__metric-link:hover .jbs-admin-dashboard__metric-value {
	color: var(--jbs-accent, #a435f0);
}

.jbs-admin-dashboard__list-item,
.jbs-admin-dashboard__course-item,
.jbs-admin-dashboard__popular-item {
	display: flex;
	align-items: center;
	gap: 0.85rem;
	padding: 0.75rem 0;
	border-bottom: 1px solid var(--jbs-border, #d1d7dc);
}

.jbs-admin-dashboard__list-body,
.jbs-admin-dashboard__course-body {
	flex: 1 1 auto;
	min-width: 0;
}

.jbs-admin-dashboard__list-title {
	font-weight: 400;
	color: var(--jbs-ink, #1c1d1f);
	line-height: 1.35;
}

.jbs-admin-dashboard__list-title a,
.jbs-admin-dashboard__list-meta a,
.jbs-admin-dashboard__popular-title a {
	color: inherit;
	text-decoration: none;
}

.jbs-admin-dashboard__list-title a:hover,
.jbs-admin-dashboard__list-meta a:hover,
.jbs-admin-dashboard__popular-title a:hover {
	text-decoration: underline;
}

.jbs-admin-dashboard__list-meta,
.jbs-admin-dashboard__list-time,
.jbs-admin-dashboard__course-meta-row,
.jbs-admin-dashboard__popular-count {
	font-size: 0.8125rem;
	color: #4a4d52;
}

.jbs-admin-dashboard__list-time {
	flex: 0 0 auto;
	white-space: nowrap;
}

.jbs-admin-dashboard__course-thumb {
	width: 64px;
	height: 64px;
	object-fit: cover;
	flex: 0 0 64px;
	background: #f3f4f5;
}

.jbs-admin-dashboard__course-thumb--placeholder {
	display: inline-block;
}

.jbs-admin-dashboard__course-meta-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.65rem;
	margin-top: 0.35rem;
}

.jbs-admin-dashboard__popular-rank {
	flex: 0 0 1.5rem;
	font-weight: 700;
	color: var(--jbs-ink, #1c1d1f);
}

.jbs-admin-dashboard__popular-title {
	flex: 1 1 auto;
	min-width: 0;
	font-weight: 400;
}

.jbs-admin-dashboard__popular-count {
	flex: 0 0 auto;
	white-space: nowrap;
}

.jbs-admin-dashboard__chart {
	display: flex;
	align-items: flex-end;
	gap: 0.35rem;
	min-height: 160px;
	overflow-x: auto;
	padding-top: 0.5rem;
}

.jbs-admin-dashboard__chart-panel .jbs-admin-dashboard__chart-header {
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 1rem;
	margin-bottom: 1.25rem;
}

.jbs-admin-dashboard__chart-heading {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	min-width: 0;
}

.jbs-admin-dashboard__chart-legend {
	flex-wrap: wrap;
}

.jbs-admin-dashboard__chart-filters {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0.2rem;
	background: #f3f4f5;
	border: 1px solid var(--jbs-border, #d1d7dc);
	border-radius: 0.375rem;
	flex: 0 0 auto;
}

.jbs-admin-dashboard__chart-back {
	display: inline-flex;
	align-items: center;
	margin-top: 0.15rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: var(--jbs-accent, #a435f0);
	text-decoration: none;
}

.jbs-admin-dashboard__chart-back:hover {
	text-decoration: underline;
}

.jbs-admin-dashboard__chart-years {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
	margin: 0 0 1rem;
}

.jbs-admin-dashboard__chart-years-hint {
	font-size: 0.8125rem;
	color: #6a6f73;
	margin-right: 0.25rem;
}

.jbs-admin-dashboard__chart-year {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2rem;
	padding: 0.3rem 0.75rem;
	border: 1px solid var(--jbs-border, #d1d7dc);
	border-radius: 0.25rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: var(--jbs-ink, #1c1d1f);
	text-decoration: none;
	background: #fff;
}

.jbs-admin-dashboard__chart-year:hover {
	border-color: var(--jbs-accent, #a435f0);
	color: var(--jbs-accent, #a435f0);
}

.jbs-admin-dashboard__chart-filter {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2rem;
	padding: 0.35rem 0.85rem;
	border-radius: 0.25rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #4a4d52;
	text-decoration: none;
	line-height: 1.2;
}

.jbs-admin-dashboard__chart-filter:hover {
	color: var(--jbs-ink, #1c1d1f);
	background: rgba(255, 255, 255, 0.7);
}

.jbs-admin-dashboard__chart-filter.is-active {
	color: var(--jbs-ink, #1c1d1f);
	background: #fff;
	box-shadow: 0 1px 2px rgba(28, 29, 31, 0.08);
}

.jbs-admin-dashboard__chart-canvas-wrap {
	width: 100%;
	min-height: 220px;
}

.jbs-admin-dashboard__chart-canvas-wrap .tutor-dashboard-home-chart-canvas {
	width: 100% !important;
	max-height: 280px;
}

.jbs-admin-dashboard__chart-col {
	flex: 1 0 2rem;
	min-width: 2rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.4rem;
}

.jbs-admin-dashboard__chart-bar-wrap {
	width: 100%;
	height: 120px;
	display: flex;
	align-items: flex-end;
	justify-content: center;
}

.jbs-admin-dashboard__chart-bar {
	display: block;
	width: 70%;
	max-width: 1.25rem;
	background: var(--jbs-accent, #5624d0);
	min-height: 4px;
}

.jbs-admin-dashboard__chart-label {
	font-size: 0.65rem;
	color: #4a4d52;
	text-align: center;
	line-height: 1.2;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

@media (max-width: 760px) {
	.jbs-admin-dashboard__chart-panel .jbs-admin-dashboard__chart-header {
		flex-direction: column;
	}

	.jbs-admin-dashboard__chart-filters {
		width: 100%;
	}

	.jbs-admin-dashboard__chart-filter {
		flex: 1 1 0;
	}
}

@media (max-width: 1100px) {
	.jbs-admin-dashboard__cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	.jbs-admin-dashboard__cards,
	.jbs-admin-dashboard__row--2 {
		grid-template-columns: 1fr;
	}

	.jbs-admin-dashboard__list-item,
	.jbs-admin-dashboard__course-item {
		align-items: flex-start;
	}

	.jbs-admin-dashboard__list-time {
		white-space: normal;
	}

	.jbs-admin-dashboard__popular-item {
		flex-wrap: wrap;
	}
}

/* Shared component polish used by admin panels */
.jbs-theme-child .jbs-tutor-avatar {
	display: inline-flex;
	flex: 0 0 auto;
	line-height: 0;
}

.jbs-theme-child .jbs-tutor-avatar__img {
	border-radius: 50%;
	display: block;
}

.jbs-theme-child .jbs-tutor-badge {
	display: inline-block;
	padding: 0.15rem 0.45rem;
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1.3;
	border: 1px solid var(--jbs-border, #d1d7dc);
	background: #f7f9fa;
	color: var(--jbs-ink, #1c1d1f);
}

.jbs-theme-child .jbs-tutor-badge--completed {
	border-color: #acd2a8;
	background: #eef7ee;
	color: #196b24;
}

.jbs-theme-child .jbs-tutor-badge--pending {
	border-color: #f0d78c;
	background: #fff8e6;
	color: #8a6d00;
}

.jbs-theme-child .jbs-tutor-badge--draft,
.jbs-theme-child .jbs-tutor-badge--info {
	border-color: #d1d7dc;
	background: #f3f4f5;
	color: #4a4d52;
}

.jbs-theme-child .jbs-tutor-empty-state {
	padding: 1.25rem 0.25rem;
	text-align: left;
}

.jbs-theme-child .jbs-tutor-empty-state__title {
	margin: 0;
	font-size: 0.9375rem;
	font-weight: 600;
	color: #4a4d52;
}

.jbs-theme-child .jbs-tutor-empty-state__description {
	margin: 0.35rem 0 0;
	font-size: 0.8125rem;
	color: #6a6f73;
}

/* Courses inside an expanded bundle: 3-column cards. The parent bundle row stays full width. */
body.jbs-theme-child .tutor-dashboard-bundle-courses-wrapper {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin-top: 12px;
}

body.jbs-theme-child .tutor-dashboard-bundle-courses-wrapper .tutor-progress-card:not(:first-of-type),
body.jbs-theme-child .tutor-dashboard-bundle-courses-wrapper .tutor-progress-card:not(:last-of-type) {
	border-top: 1px solid var(--tutor-border-idle, var(--jbs-border, #d1d7dc));
	border-radius: 12px;
	border-start-start-radius: 12px;
	border-start-end-radius: 12px;
	border-end-start-radius: 12px;
	border-end-end-radius: 12px;
}

body.jbs-theme-child .tutor-dashboard-bundle-courses-wrapper .tutor-progress-card {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 12px;
}

body.jbs-theme-child .tutor-dashboard-bundle-courses-wrapper .tutor-progress-card .tutor-progress-card-inner {
	flex-direction: column;
	align-items: stretch;
	gap: 8px;
}

body.jbs-theme-child .tutor-dashboard-bundle-courses-wrapper .tutor-progress-card .tutor-progress-card-thumbnail {
	flex: none;
	width: 100%;
	max-width: 100%;
	aspect-ratio: 16 / 9;
}

body.jbs-theme-child .tutor-dashboard-bundle-courses-wrapper .tutor-progress-card-content {
	flex: 1 1 auto;
	width: 100%;
	min-width: 0;
	padding: 0;
}

body.jbs-theme-child .tutor-dashboard-bundle-courses-wrapper .tutor-progress-card-details {
	flex-wrap: wrap;
}

body.jbs-theme-child .tutor-dashboard-bundle-courses-wrapper .tutor-progress-card-bar,
body.jbs-theme-child .tutor-dashboard-bundle-courses-wrapper .tutor-progress-bar {
	width: 100%;
}

body.jbs-theme-child .tutor-dashboard-bundle-courses-wrapper .tutor-progress-card-actions {
	position: static;
	inset: auto;
	top: auto;
	opacity: 1;
	visibility: visible;
	z-index: auto;
	width: 100%;
	margin: 0;
	padding: 0;
	justify-content: stretch;
}

body.jbs-theme-child .tutor-dashboard-bundle-courses-wrapper .tutor-progress-card-actions .tutor-btn {
	width: 100%;
	justify-content: center;
}

@media (max-width: 992px) {
	body.jbs-theme-child .tutor-dashboard-bundle-courses-wrapper {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 576px) {
	body.jbs-theme-child .tutor-dashboard-bundle-courses-wrapper {
		grid-template-columns: 1fr;
	}
}

/* In-dashboard enrollments list */
.jbs-enrollments__header .tutor-h4 {
	letter-spacing: -0.01em;
	color: var(--jbs-ink, #1c1d1f);
}

.jbs-enrollments__table-wrap {
	overflow-x: auto;
}

.jbs-enrollments__table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.875rem;
	color: var(--jbs-text, #2d2f31);
}

.jbs-enrollments__table th {
	text-align: left;
	font-size: 0.75rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #6a6f73;
	padding: 0.85rem 1.5rem;
	border-bottom: 1px solid var(--jbs-border, #d1d7dc);
	white-space: nowrap;
	background: #f7f9fa;
}

.jbs-enrollments__table td {
	padding: 1rem 1.5rem;
	border-bottom: 1px solid var(--jbs-border, #d1d7dc);
	vertical-align: middle;
}

.jbs-enrollments__table tr:last-child td {
	border-bottom: 0;
}

.jbs-enrollments__student-inner {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	min-width: 12rem;
}

.jbs-enrollments__student-name {
	font-weight: 600;
	color: var(--jbs-ink, #1c1d1f);
	line-height: 1.3;
}

.jbs-enrollments__student-name a,
.jbs-enrollments__course a {
	color: inherit;
	text-decoration: none;
}

.jbs-enrollments__student-name a:hover,
.jbs-enrollments__course a:hover {
	color: var(--jbs-accent, #a435f0);
	text-decoration: underline;
}

.jbs-enrollments__student-email,
.jbs-enrollments__time {
	font-size: 0.75rem;
	color: #6a6f73;
	margin-top: 0.15rem;
}

.jbs-enrollments__course {
	max-width: 18rem;
}

.jbs-enrollments__badge {
	display: inline-block;
	padding: 0.2rem 0.55rem;
	border-radius: 0.25rem;
	font-size: 0.75rem;
	font-weight: 600;
	line-height: 1.4;
	white-space: nowrap;
}

.jbs-enrollments__badge--success {
	background: #e6f4ea;
	color: #137333;
}

.jbs-enrollments__badge--danger {
	background: #fce8e6;
	color: #c5221f;
}

.jbs-enrollments__badge--default {
	background: #f1f3f4;
	color: #3c4043;
}

.jbs-enrollments__progress {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	min-width: 7rem;
}

.jbs-enrollments__progress-bar {
	flex: 1;
	height: 6px;
	min-width: 48px;
	background: #e8eaed;
	border-radius: 999px;
	overflow: hidden;
}

.jbs-enrollments__progress-bar span {
	display: block;
	height: 100%;
	background: var(--jbs-accent, #a435f0);
	border-radius: inherit;
}

.jbs-enrollments__progress-value {
	font-size: 0.75rem;
	font-weight: 600;
	color: #6a6f73;
	white-space: nowrap;
}

.jbs-enrollments__date {
	white-space: nowrap;
}

@media (max-width: 768px) {
	.jbs-enrollments__table th:nth-child(4),
	.jbs-enrollments__table td:nth-child(4) {
		display: none;
	}

	.jbs-enrollments__table th,
	.jbs-enrollments__table td {
		padding: 0.85rem 1rem;
	}
}

/* Instructor applications (reuses enrollments table shell) */
.jbs-instructor-applications__actions .tutor-btn.is-loading {
	opacity: 0.7;
	pointer-events: none;
}

@media (max-width: 768px) {
	.jbs-instructor-applications .jbs-enrollments__table th:nth-child(2),
	.jbs-instructor-applications .jbs-enrollments__table td:nth-child(2),
	.jbs-instructor-applications .jbs-enrollments__table th:nth-child(4),
	.jbs-instructor-applications .jbs-enrollments__table td:nth-child(4) {
		display: none;
	}
}


/* Mobile More → right slide-in drawer */
body.jbs-mobile-more-open {
	overflow: hidden;
}

.jbs-mobile-more-backdrop {
	position: fixed;
	inset: 0;
	z-index: 10040;
	background: rgba(15, 20, 25, 0.45);
}

.jbs-mobile-more-drawer {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 10050;
	width: min(20rem, 88vw);
	display: flex;
	flex-direction: column;
	background: #fff;
	box-shadow: -8px 0 28px rgba(15, 20, 25, 0.14);
	transform: translateX(0);
}

.jbs-mobile-more-drawer--animating {
	transition: transform 0.28s ease;
}

.jbs-mobile-more-drawer--hidden {
	transform: translateX(100%);
}

.jbs-mobile-more-drawer--visible {
	transform: translateX(0);
}

.jbs-mobile-more-drawer__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 1rem 1.15rem;
	border-bottom: 1px solid var(--jbs-border, #d1d7dc);
	flex-shrink: 0;
}

.jbs-mobile-more-drawer__title {
	font-size: 1.05rem;
	font-weight: 700;
	color: var(--jbs-ink, #1c1d1f);
}

.jbs-mobile-more-drawer__close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	padding: 0;
	border: 0;
	border-radius: 0.5rem;
	background: transparent;
	color: var(--jbs-text, #2d2f31);
	cursor: pointer;
}

.jbs-mobile-more-drawer__close:hover {
	background: #f7f9fa;
	color: #0e95d0;
}

.jbs-mobile-more-drawer__nav {
	flex: 1 1 auto;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	padding: 0.5rem 0 1.25rem;
}

.jbs-mobile-more-drawer__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.jbs-mobile-more-drawer__list > li > a,
.jbs-mobile-more-drawer__list > li > button.jbs-mobile-more-drawer__action {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.85rem 1.25rem;
	color: var(--jbs-text, #2d2f31);
	text-decoration: none;
	font-size: 0.95rem;
	font-weight: 500;
}

.jbs-mobile-more-drawer__list > li > button.jbs-mobile-more-drawer__action {
	width: 100%;
	border: 0;
	background: transparent;
	cursor: pointer;
	text-align: left;
	font-family: inherit;
}

.jbs-mobile-more-drawer__list > li > a svg,
.jbs-mobile-more-drawer__list > li > a .tutor-icon,
.jbs-mobile-more-drawer__list > li > button.jbs-mobile-more-drawer__action svg,
.jbs-mobile-more-drawer__list > li > button.jbs-mobile-more-drawer__action .tutor-icon {
	flex-shrink: 0;
	color: inherit;
	fill: none;
}

.jbs-mobile-more-drawer__list > li > a:hover,
.jbs-mobile-more-drawer__list > li > button.jbs-mobile-more-drawer__action:hover {
	background: transparent;
	color: #0e95d0;
}

.jbs-mobile-more-drawer__list > li > a.active {
	background: transparent;
	color: #0e95d0;
	font-weight: 700;
}

.jbs-mobile-more-drawer__children {
	list-style: none;
	margin: 0;
	padding: 0 0 0.35rem;
}

.jbs-mobile-more-drawer__children a {
	display: block;
	padding: 0.45rem 1.25rem 0.45rem 3.35rem;
	color: var(--jbs-text, #2d2f31);
	text-decoration: none;
	font-size: 0.9rem;
	font-weight: 500;
}

.jbs-mobile-more-drawer__children a:hover {
	background: transparent;
	color: #0e95d0;
}

.jbs-mobile-more-drawer__back {
	margin-top: 0.5rem;
	padding-top: 0.5rem;
	border-top: 1px solid var(--jbs-border, #d1d7dc);
}

/* Admin Pending Courses review table */
.jbs-theme-child .jbs-pending-courses {
	padding: 1rem 1.5rem 1.5rem;
	overflow-x: auto;
}

.jbs-theme-child .jbs-pending-courses__table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.9rem;
}

.jbs-theme-child .jbs-pending-courses__table th,
.jbs-theme-child .jbs-pending-courses__table td {
	padding: 0.75rem 0.85rem;
	text-align: left;
	border-bottom: 1px solid var(--jbs-border, #d1d7dc);
	vertical-align: middle;
}

.jbs-theme-child .jbs-pending-courses__table th {
	font-size: 0.75rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	color: var(--jbs-muted, #6a6f73);
}

.jbs-theme-child .jbs-pending-courses__title {
	font-weight: 600;
	color: var(--jbs-ink, #1c1d1f);
	text-decoration: none;
}

.jbs-theme-child .jbs-pending-courses__title:hover {
	color: #0e95d0;
}

.jbs-theme-child .jbs-pending-courses__action.is-loading {
	opacity: 0.6;
	pointer-events: none;
}

.jbs-theme-child .tutor-my-courses-card--pending .tutor-my-courses-card-thumb {
	position: relative;
}

/* Admin read-only course review */
.jbs-theme-child .jbs-course-review__panel {
	padding: 1.5rem;
}

.jbs-theme-child .jbs-course-review__thumb {
	width: 220px;
	max-width: 100%;
	flex-shrink: 0;
}

.jbs-theme-child .jbs-course-review__thumb img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 0.75rem;
	object-fit: cover;
}

.jbs-theme-child .jbs-course-review__meta {
	list-style: none;
	margin: 1rem 0 0;
	padding: 0;
}

.jbs-theme-child .jbs-course-review__meta li {
	margin: 0.35rem 0;
	color: var(--jbs-text, #2d2f31);
}

.jbs-theme-child .jbs-course-review__section {
	margin-top: 1.5rem;
	padding-top: 1.25rem;
	border-top: 1px solid var(--jbs-border, #d1d7dc);
}

.jbs-theme-child .jbs-course-review__topics {
	margin: 0.5rem 0 0;
	padding-left: 1.25rem;
}

/* Request Changes modal */
body.jbs-modal-open {
	overflow: hidden;
}

.jbs-theme-child .jbs-request-changes-modal {
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1rem;
}

.jbs-theme-child .jbs-request-changes-modal[hidden] {
	display: none !important;
}

.jbs-theme-child .jbs-request-changes-modal.is-open {
	display: flex !important;
}

.jbs-theme-child .jbs-request-changes-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(28, 29, 31, 0.45);
}

.jbs-theme-child .jbs-request-changes-modal__dialog {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 480px;
	background: #fff;
	border-radius: 0.75rem;
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.18);
	padding: 1.25rem 1.35rem 1.35rem;
}

.jbs-theme-child .jbs-request-changes-modal__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1rem;
}

.jbs-theme-child .jbs-request-changes-modal__title {
	margin: 0;
	font-size: 1.15rem;
}

.jbs-theme-child .jbs-request-changes-modal__close {
	border: 0;
	background: transparent;
	font-size: 1.5rem;
	line-height: 1;
	cursor: pointer;
	color: #6a6f73;
}

.jbs-theme-child .jbs-request-changes-modal__label {
	display: block;
	font-weight: 600;
	margin-bottom: 0.4rem;
}

.jbs-theme-child .jbs-request-changes-modal__textarea {
	width: 100%;
	border: 1px solid var(--jbs-border, #d1d7dc);
	border-radius: 0.5rem;
	padding: 0.65rem 0.75rem;
	resize: vertical;
	min-height: 7rem;
	font: inherit;
}

.jbs-theme-child .jbs-request-changes-modal__hint {
	margin: 0.5rem 0 1rem;
	font-size: 0.85rem;
}

.jbs-theme-child .jbs-request-changes-modal__footer {
	display: flex;
	justify-content: flex-end;
	gap: 0.65rem;
}

/* Instructor: admin requested changes banner */
.jbs-theme-child .jbs-course-review-note {
	padding: 0.75rem 0.85rem;
	border: 1px solid #f0d78c;
	background: #fff8e6;
	border-radius: 0.5rem;
}

.jbs-theme-child .jbs-course-review-note__title {
	display: block;
	margin-bottom: 0.5rem;
	color: #8a6d00;
	font-size: 0.85rem;
}

.jbs-theme-child .jbs-course-review-note__body {
	margin: 0 0 0.65rem;
	font-size: 0.875rem;
	color: var(--jbs-ink, #1c1d1f);
	white-space: pre-wrap;
}

.jbs-theme-child .jbs-course-review-note__actions {
	justify-content: space-between;
	width: 100%;
}

.jbs-theme-child .jbs-revision-note-trigger--link {
	padding: 0;
	border: 0;
	background: transparent;
	color: #0e95d0;
	font: inherit;
	font-size: 0.875rem;
	font-weight: 600;
	text-decoration: underline;
	cursor: pointer;
}

.jbs-theme-child .jbs-revision-note-trigger--link:hover,
.jbs-theme-child .jbs-revision-note-trigger--link:focus-visible {
	color: #0a6f9c;
}

.jbs-theme-child .jbs-revision-note-trigger--title {
	display: block;
	width: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	text-align: left;
	color: inherit;
	cursor: pointer;
}

.jbs-theme-child .jbs-revision-note-trigger--title:hover {
	color: #0e95d0;
}

.jbs-theme-child .tutor-my-courses-card--changes-requested {
	outline: 1px solid #f0d78c;
}

.jbs-theme-child .jbs-revision-note-modal__course {
	margin: 0 0 0.75rem;
}

.jbs-theme-child .jbs-revision-note-modal__body {
	padding: 0.75rem;
	border: 1px solid #f0d78c;
	background: #fff8e6;
	border-radius: 0.5rem;
	min-height: 4rem;
}

/* Platform admin — audience checkbox dropdown */
.jbs-theme-child .jbs-audience-field .tutor-form-label {
	display: block;
	margin-bottom: 0.5rem;
	font-weight: 700;
	font-size: 0.8125rem;
	color: var(--jbs-ink, #1c1d1f);
}

.jbs-theme-child .jbs-audience-dropdown {
	position: relative;
}

.jbs-theme-child .jbs-audience-dropdown__trigger.tutor-form-control,
.jbs-theme-child button.jbs-audience-dropdown__trigger {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	box-sizing: border-box;
	width: 100%;
	min-height: 48px;
	margin: 0;
	padding: 0.85rem 1rem;
	text-align: left;
	font-family: var(--jbs-font);
	font-size: 0.95rem;
	font-weight: 400;
	line-height: 1.4;
	color: var(--jbs-text, #2d2f31);
	background: var(--tutor-color-gray-10, #eff1f6) !important;
	border: 1px solid var(--jbs-border, #d1d7dc) !important;
	border-radius: var(--jbs-radius-sm, 0) !important;
	box-shadow: none !important;
	appearance: none;
	-webkit-appearance: none;
	cursor: pointer;
}

.jbs-theme-child .jbs-audience-dropdown__trigger.tutor-form-control:hover,
.jbs-theme-child button.jbs-audience-dropdown__trigger:hover {
	background: var(--tutor-color-gray-10, #eff1f6) !important;
	border-color: var(--jbs-muted, #6a6f73) !important;
}

.jbs-theme-child .jbs-audience-dropdown.is-open .jbs-audience-dropdown__trigger.tutor-form-control,
.jbs-theme-child .jbs-audience-dropdown__trigger.tutor-form-control:focus,
.jbs-theme-child .jbs-audience-dropdown__trigger.tutor-form-control:focus-visible,
.jbs-theme-child button.jbs-audience-dropdown__trigger:focus,
.jbs-theme-child button.jbs-audience-dropdown__trigger:focus-visible {
	outline: none;
	background: #fff !important;
	border-color: var(--jbs-accent, #13aff0) !important;
	box-shadow: var(--jbs-focus-ring, 0 0 0 3px rgba(19, 175, 240, 0.25)) !important;
}

.jbs-theme-child .jbs-audience-dropdown__summary {
	flex: 1 1 auto;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	color: var(--jbs-ink, #1c1d1f);
}

.jbs-theme-child .jbs-audience-dropdown__summary.is-placeholder {
	color: var(--jbs-muted, #6a6f73);
	font-weight: 400;
}

.jbs-theme-child .jbs-audience-dropdown__chevron {
	flex: 0 0 auto;
	width: 0.5rem;
	height: 0.5rem;
	border-right: 2px solid var(--jbs-muted, #6a6f73);
	border-bottom: 2px solid var(--jbs-muted, #6a6f73);
	transform: rotate(45deg);
	margin-top: -0.2rem;
	transition: transform 0.15s ease;
}

.jbs-theme-child .jbs-audience-dropdown.is-open .jbs-audience-dropdown__chevron {
	transform: rotate(-135deg);
	margin-top: 0.2rem;
}

.jbs-theme-child .jbs-audience-dropdown__panel {
	position: absolute;
	z-index: 30;
	top: calc(100% + 0.35rem);
	left: 0;
	right: 0;
	max-height: 16rem;
	overflow: auto;
	padding: 0.5rem 0;
	background: #fff;
	border: 1px solid var(--jbs-border, #d1d7dc);
	border-radius: var(--jbs-radius-sm, 0);
	box-shadow: var(--jbs-shadow, 0 2px 8px rgba(0, 0, 0, 0.12));
}

.jbs-theme-child .jbs-audience-dropdown__option {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	padding: 0.55rem 0.9rem;
	margin: 0;
	cursor: pointer;
	font-size: 0.9rem;
	color: var(--jbs-text, #2d2f31);
}

.jbs-theme-child .jbs-audience-dropdown__option:hover {
	background: var(--jbs-accent-2, #e0f6fd);
}

.jbs-theme-child .jbs-audience-dropdown__option input {
	margin: 0;
	accent-color: var(--jbs-accent, #13aff0);
}

/* Align modal title/description fields with the same gray fill when present. */
.jbs-theme-child .jbs-announcement-form--admin .tutor-form-control:not(button),
.jbs-theme-child .jbs-announcement-form--admin input.tutor-form-control,
.jbs-theme-child .jbs-announcement-form--admin textarea.tutor-form-control {
	background: var(--tutor-color-gray-10, #eff1f6);
	border: 1px solid var(--jbs-border, #d1d7dc);
	border-radius: var(--jbs-radius-sm, 0);
	box-shadow: none;
}
