.lpcs-request-course {
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	padding: 20px;
	background: #fff;
}

.lpcs-request-message {
	margin-top: 10px;
}

.lp-profile-nav-tabs li.schedule-lessons > a::before,
.lp-profile-nav-tabs li.request-schedule > a::before {
	display: inline-block;
	margin-right: 5px;
	font-family: dashicons;
	font-size: 18px;
	font-weight: normal;
	line-height: 1;
	vertical-align: middle;
}

.lp-profile-nav-tabs li.schedule-lessons > a::before {
	content: "\f118";
}

.lp-profile-nav-tabs li.request-schedule > a::before {
	content: "\f508";
}

.lp-profile-nav-tabs .lpcs-schedule-outcome-badge {
	display: inline-flex;
	min-width: 18px;
	height: 18px;
	align-items: center;
	justify-content: center;
	margin-left: 6px;
	padding: 0 5px;
	border-radius: 999px;
	background: #d63638;
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	vertical-align: middle;
	animation: lpcs-schedule-outcome-pulse 1s ease-in-out infinite;
}

@keyframes lpcs-schedule-outcome-pulse {
	0%, 100% { opacity: 1; transform: scale(1); }
	50% { opacity: .55; transform: scale(1.12); }
}

@media (prefers-reduced-motion: reduce) {
	.lp-profile-nav-tabs .lpcs-schedule-outcome-badge { animation: none; }
}

.lpcs-instructor-schedule-requests {
	margin-top: 24px;
}

.lpcs-instructor-schedule-requests-table {
	width: 100%;
	border-collapse: collapse;
}

.lpcs-instructor-schedule-requests-table th,
.lpcs-instructor-schedule-requests-table td {
	padding: 10px;
	border-bottom: 1px solid #dcdcde;
	text-align: left;
}

.lpcs-schedule-request-status {
	display: inline-block;
	font-weight: 600;
}

.lpcs-schedule-request-status-approved { color: #16803c; }
.lpcs-schedule-request-status-rejected { color: #b32d2e; }
.lpcs-schedule-request-status-pending { color: #996800; }

.lp-single-course-main__left > .lp-course-curriculum:not(.lpcs-schedule-curriculum) {
	display: none !important;
}

.lpcs-purchase-schedule-field {
	display: flex;
	justify-content: center;
	width: 100%;
	margin: 0 0 12px;
}

.lpcs-purchase-schedule-field select {
	width: 320px;
	max-width: 100%;
}

.lpcs-hide-live .course-live,
.lpcs-hide-live .live-badge,
.lpcs-hide-live [data-text="Live"] {
	display: none !important;
}

.lpcs-scheduled-info .start-date > i,
.lpcs-scheduled-info .will-end-date > i,
.wp-block-learnpress-course-share .share-toggle-icon > i {
	color: var(--lp-primary-color, #ffb606);
}

.lpcs-scheduled-info {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.lpcs-scheduled-info .course-progress__label {
	margin-bottom: 8px;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.4;
}

.lpcs-scheduled-info .course-progress__line {
	height: 4px;
	margin-top: 8px;
	overflow: hidden;
	border-radius: 4px;
	background: #e5e7eb;
}

.lpcs-scheduled-info .course-progress__line__active {
	height: 100%;
	border-radius: inherit;
	background: var(--lp-primary-color, #ffb606);
}

.lpcs-schedule-curriculum .course-item:has(> .lpcs-zoom-link) {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
}

.lpcs-schedule-curriculum .course-item:has(> .lpcs-zoom-link) > .course-item__link {
	min-width: 0;
}

.lpcs-schedule-curriculum .course-item > .lpcs-zoom-link {
	grid-column: 2;
	grid-row: 1;
	justify-self: end;
	margin: 0 12px 0 8px;
	padding: 5px 10px;
	border-radius: 3px;
	background: var(--lp-primary-color, #ffb606);
	color: #fff;
	font-size: 13px;
	line-height: 1.3;
	text-decoration: none;
	white-space: nowrap;
}

.lpcs-schedule-curriculum .course-item > .lpcs-zoom-link:hover,
.lpcs-schedule-curriculum .course-item > .lpcs-zoom-link:focus-visible {
	filter: brightness(0.92);
	color: #fff;
}

.lpcs-scheduled-info .lpcs-enrollment-badge {
	align-self: flex-start;
	margin-top: 0 !important;
}

.lpcs-scheduled-info .start-date,
.lpcs-scheduled-info .will-end-date {
	display: flex;
	align-items: center;
	column-gap: 6px;
	flex-wrap: nowrap;
	font-size: 16px;
	line-height: 1.5;
	white-space: nowrap;
}

.lpcs-scheduled-info .start-date > i,
.lpcs-scheduled-info .will-end-date > i {
	flex: 0 0 20px;
	text-align: center;
}

body:has(.lpcs-scheduled-info) .lp-block-course-sidebar .wp-block-learnpress-course-capacity .info-meta-item,
body:has(.lpcs-scheduled-info) .lp-block-course-sidebar .wp-block-learnpress-course-level .info-meta-item {
	font-size: 16px;
}

body:has(.lpcs-scheduled-info) .lp-block-course-sidebar .wp-block-learnpress-course-capacity .info-meta-item {
	flex-wrap: nowrap !important;
	column-gap: 4px !important;
}

body:has(.lpcs-scheduled-info) .lp-block-course-sidebar .wp-block-learnpress-course-capacity .info-meta-left {
	gap: 8px !important;
}

body:has(.lpcs-scheduled-info) .lp-block-course-sidebar .wp-block-learnpress-course-capacity .info-meta-left i,
body:has(.lpcs-scheduled-info) .lp-block-course-sidebar .wp-block-learnpress-course-level .info-meta-left i {
	flex: 0 0 20px;
	width: 20px;
	font-size: 16px;
	text-align: center;
}

body:has(.lpcs-scheduled-info) .lp-block-course-sidebar .wp-block-learnpress-course-share .share-toggle-icon {
	font-size: 16px;
}

body:has(.lpcs-scheduled-info) .lp-block-course-sidebar .wp-block-learnpress-course-share .share-toggle-icon > i {
	flex: 0 0 20px;
	width: 20px;
	font-size: 16px;
	text-align: center;
}

.wp-block-learnpress-course-share .share-toggle-icon {
	flex-wrap: nowrap;
	white-space: nowrap;
}

.wp-block-learnpress-course-share .share-toggle-icon > i,
.wp-block-learnpress-course-share .share-label {
	flex-shrink: 0;
}

.wp-block-learnpress-course-share .share-label {
	white-space: nowrap;
}

.lpcs-enrollment-badge {
	transform-origin: center;
	animation: lpcs-enrollment-pulse 3s ease-in-out infinite;
}

@keyframes lpcs-enrollment-pulse {
	0%, 100% {
		transform: scale(1);
		box-shadow: 0 0 0 0 rgba(0, 115, 170, 0);
	}
	50% {
		transform: scale(1.035);
		box-shadow: 0 0 0 4px rgba(0, 115, 170, 0.16);
	}
}

@media (prefers-reduced-motion: reduce) {
	.lpcs-enrollment-badge {
		animation: none;
	}
}
