/**
 * LearnPress Dark Violet Theme for Astra
 * Modern UI/UX with Glassmorphism, Animations, and Full RTL Support
 * 
 * Color Palette:
 * - Primary: #6A0DAD (Dark Violet)
 * - Secondary: #8B2DD9 (Lighter Violet)
 * - Background: #1A0B2E (Dark Background)
 * - Card: #2D1B4E (Card Background)
 * - Text: #FFFFFF / #E0D5F0 (Light Text)
 */

:root {
	--dark-violet-primary: #6A0DAD;
	--dark-violet-secondary: #8B2DD9;
	--dark-violet-bg: #1A0B2E;
	--dark-violet-card: #2D1B4E;
	--dark-violet-card-hover: #3A1F5E;
	--dark-violet-text: #FFFFFF;
	--dark-violet-text-light: #E0D5F0;
	--dark-violet-text-muted: #B8A5D9;
	--dark-violet-shadow: rgba(106, 13, 173, 0.3);
	--dark-violet-shadow-strong: rgba(106, 13, 173, 0.6);
	--dark-violet-gradient: linear-gradient(135deg, #6A0DAD 0%, #8B2DD9 100%);
	--dark-violet-gradient-hover: linear-gradient(135deg, #8B2DD9 0%, #6A0DAD 100%);
}

/* ============================================
   Base Styles - Single Course Page
   ============================================ */

.dark-violet-theme {
	background: var(--dark-violet-bg);
	color: var(--dark-violet-text);
	min-height: 100vh;
}

.course-summary-content {
	background: transparent;
	padding: 0;
}

.course-detail-wrapper {
	max-width: 1400px;
	margin: 0 auto;
	padding: 40px 20px;
}

/* ============================================
   Global Text Color Fixes - Ensure Visibility
   ============================================ */

/* Fix all text on dark backgrounds */
.lp-single-course,
.lp-archive-courses,
.lp-content-area,
.course-summary-content,
.course-detail-wrapper {
	color: var(--dark-violet-text-light) !important;
}

/* Breadcrumb fixes */
.learn-press-breadcrumb,
.breadcrumb,
.ast-breadcrumbs-wrapper,
.ast-breadcrumbs-wrapper * {
	color: var(--dark-violet-text-light) !important;
}

.learn-press-breadcrumb a,
.breadcrumb a,
.ast-breadcrumbs-wrapper a {
	color: var(--dark-violet-secondary) !important;
	text-decoration: none;
	transition: color 0.3s ease;
}

.learn-press-breadcrumb a:hover,
.breadcrumb a:hover,
.ast-breadcrumbs-wrapper a:hover {
	color: var(--dark-violet-text) !important;
}

.learn-press-breadcrumb li,
.breadcrumb li {
	color: var(--dark-violet-text-muted) !important;
}

.learn-press-breadcrumb .breadcrumb-delimiter,
.breadcrumb-delimiter {
	color: var(--dark-violet-text-muted) !important;
	opacity: 0.6;
}

/* Course meta information fixes */
.course-meta,
.course-meta-primary,
.course-meta *,
.course-meta-primary * {
	color: var(--dark-violet-text-light) !important;
}

.course-meta a,
.course-meta-primary a {
	color: var(--dark-violet-secondary) !important;
}

.course-meta a:hover,
.course-meta-primary a:hover {
	color: var(--dark-violet-text) !important;
}

/* Sidebar text fixes */
.course-summary-sidebar,
.course-summary-sidebar *,
.course-sidebar-card,
.course-sidebar-card * {
	color: var(--dark-violet-text-light) !important;
}

.course-sidebar-card label,
.course-sidebar-card .label,
.course-sidebar-card span:not(.price-value):not(.free) {
	color: var(--dark-violet-text-muted) !important;
}

.course-sidebar-card strong,
.course-sidebar-card .value,
.course-sidebar-card .feature-value {
	color: var(--dark-violet-text) !important;
	font-weight: 600;
}

/* Curriculum section fixes */
.curriculum-sections,
.curriculum-sections *,
.dark-violet-sections,
.dark-violet-sections * {
	color: var(--dark-violet-text-light) !important;
}

.dark-violet-sections .section-item,
.curriculum-item,
.course-item {
	color: var(--dark-violet-text-light) !important;
}

.dark-violet-sections .section-item a,
.curriculum-item a,
.course-item a {
	color: var(--dark-violet-secondary) !important;
}

.dark-violet-sections .section-item a:hover,
.curriculum-item a:hover,
.course-item a:hover {
	color: var(--dark-violet-text) !important;
}

/* Course description and content */
.course-description,
.course-content,
.course-summary,
.dark-violet-description,
.dark-violet-description * {
	color: var(--dark-violet-text-light) !important;
}

.dark-violet-description h1,
.dark-violet-description h2,
.dark-violet-description h3,
.dark-violet-description h4,
.dark-violet-description h5,
.dark-violet-description h6 {
	color: var(--dark-violet-text) !important;
}

.dark-violet-description p {
	color: var(--dark-violet-text-light) !important;
	line-height: 1.8;
}

.dark-violet-description a {
	color: var(--dark-violet-secondary) !important;
}

.dark-violet-description a:hover {
	color: var(--dark-violet-text) !important;
}

/* Instructor section */
.course-author,
.lp-course-author,
.dark-violet-author-card,
.dark-violet-author-card * {
	color: var(--dark-violet-text-light) !important;
}

.dark-violet-author-card .author-title,
.dark-violet-author-card h2,
.dark-violet-author-card h3 {
	color: var(--dark-violet-text) !important;
}

.dark-violet-author-card .author-description,
.dark-violet-author-card p {
	color: var(--dark-violet-text-light) !important;
}

/* Tab content */
.course-tab-panel,
.course-tab-panel *,
.dark-violet-tab-panel,
.dark-violet-tab-panel * {
	color: var(--dark-violet-text-light) !important;
}

.course-tab-panel h1,
.course-tab-panel h2,
.course-tab-panel h3,
.course-tab-panel h4,
.dark-violet-tab-panel h1,
.dark-violet-tab-panel h2,
.dark-violet-tab-panel h3,
.dark-violet-tab-panel h4 {
	color: var(--dark-violet-text) !important;
}

/* Course features and info */
.course-features,
.course-features *,
.course-info,
.course-info * {
	color: var(--dark-violet-text-light) !important;
}

.course-feature-item,
.course-feature-item * {
	color: var(--dark-violet-text-light) !important;
}

.course-feature-item .feature-label {
	color: var(--dark-violet-text-muted) !important;
}

.course-feature-item .feature-value {
	color: var(--dark-violet-text) !important;
	font-weight: 600;
}

/* Form inputs and buttons visibility */
.course-sidebar-card input[type="text"],
.course-sidebar-card input[type="email"],
.course-sidebar-card input[type="number"],
.course-sidebar-card select,
.course-sidebar-card textarea {
	background: rgba(26, 11, 46, 0.6) !important;
	border: 1px solid rgba(139, 45, 217, 0.4) !important;
	color: var(--dark-violet-text) !important;
}

.course-sidebar-card input::placeholder,
.course-sidebar-card textarea::placeholder {
	color: var(--dark-violet-text-muted) !important;
	opacity: 0.7;
}

/* Related courses section */
.related-courses,
.related-courses * {
	color: var(--dark-violet-text-light) !important;
}

.related-courses h2,
.related-courses h3 {
	color: var(--dark-violet-text) !important;
}

/* ============================================
   Course Header - Hero Section
   ============================================ */

.single-course-header {
	background: var(--dark-violet-gradient);
	padding: 80px 40px;
	position: relative;
	overflow: hidden;
	border-radius: 24px;
	margin-bottom: 40px;
	box-shadow: 0 20px 60px var(--dark-violet-shadow-strong),
				0 0 100px rgba(106, 13, 173, 0.2);
}

.single-course-header::before {
	content: '';
	position: absolute;
	top: -50%;
	right: -50%;
	width: 200%;
	height: 200%;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.1) 0%, transparent 70%);
	animation: pulse-glow 20s infinite;
	pointer-events: none;
}

.single-course-header::after {
	content: '';
	position: absolute;
	bottom: -50%;
	left: -50%;
	width: 200%;
	height: 200%;
	background: radial-gradient(circle, rgba(139, 45, 217, 0.2) 0%, transparent 70%);
	animation: pulse-glow 25s infinite reverse;
	pointer-events: none;
}

@keyframes pulse-glow {
	0%, 100% {
		transform: scale(1) rotate(0deg);
		opacity: 0.5;
	}
	50% {
		transform: scale(1.2) rotate(180deg);
		opacity: 0.8;
	}
}

.single-course-header .course-title {
	color: var(--dark-violet-text);
	font-size: 48px;
	font-weight: 800;
	margin: 0 0 30px 0;
	position: relative;
	z-index: 1;
	line-height: 1.2;
	text-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

.single-course-meta {
	display: flex;
	align-items: center;
	gap: 32px;
	flex-wrap: wrap;
	margin-top: 30px;
	position: relative;
	z-index: 1;
}

.single-course-meta-item {
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 18px;
	color: var(--dark-violet-text-light);
	background: rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(10px);
	padding: 12px 20px;
	border-radius: 12px;
	border: 1px solid rgba(255, 255, 255, 0.2);
	transition: all 0.3s ease;
}

.single-course-meta-item:hover {
	background: rgba(255, 255, 255, 0.15);
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
}

.single-course-meta-item svg {
	width: 24px;
	height: 24px;
	fill: currentColor;
}

/* ============================================
   Sidebar Cards - Glassmorphism
   ============================================ */

.dark-violet-sidebar {
	display: flex;
	flex-direction: column;
	gap: 24px;
	margin-top: 40px;
}

.course-summary-sidebar__inner {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.course-sidebar-card {
	background: rgba(45, 27, 78, 0.6);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(139, 45, 217, 0.3);
	border-radius: 20px;
	padding: 32px;
	box-shadow: 0 8px 32px var(--dark-violet-shadow),
				0 0 0 1px rgba(139, 45, 217, 0.1) inset;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	overflow: hidden;
}

.course-sidebar-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 2px;
	background: var(--dark-violet-gradient);
	opacity: 0;
	transition: opacity 0.3s ease;
}

.course-sidebar-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 48px var(--dark-violet-shadow-strong),
				0 0 0 1px rgba(139, 45, 217, 0.4) inset;
	border-color: rgba(139, 45, 217, 0.5);
}

.course-sidebar-card:hover::before {
	opacity: 1;
}

/* Price Card */
.course-price-card {
	background: var(--dark-violet-gradient);
	border: none;
	text-align: center;
}

.course-price-card:hover {
	background: var(--dark-violet-gradient-hover);
}

.dark-violet-price {
	color: var(--dark-violet-text);
}

.dark-violet-price .price-label {
	display: block;
	font-size: 16px;
	opacity: 0.9;
	margin-bottom: 12px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1px;
}

.dark-violet-price .price-value {
	display: block;
	font-size: 48px;
	font-weight: 800;
	line-height: 1;
	margin-bottom: 8px;
}

.dark-violet-price .price-value.free {
	font-size: 36px;
	color: #4ADE80;
}

.dark-violet-price .price-value del {
	font-size: 28px;
	opacity: 0.7;
	margin-left: 12px;
	font-weight: 400;
}

/* Buttons Card */
.course-buttons-card {
	padding: 24px;
}

.dark-violet-buttons {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.dark-violet-buttons .lp-button,
.dark-violet-buttons .lp-btn,
.dark-violet-buttons button,
.dark-violet-buttons a.button {
	width: 100%;
	padding: 18px 32px;
	border-radius: 12px;
	font-size: 18px;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	border: 2px solid transparent;
	cursor: pointer;
	position: relative;
	overflow: hidden;
	background: var(--dark-violet-gradient);
	color: var(--dark-violet-text);
	box-shadow: 0 8px 24px var(--dark-violet-shadow);
}

.dark-violet-buttons .lp-button::before,
.dark-violet-buttons .lp-btn::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 0;
	height: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.3);
	transform: translate(-50%, -50%);
	transition: width 0.6s, height 0.6s;
}

.dark-violet-buttons .lp-button:hover::before,
.dark-violet-buttons .lp-btn:hover::before {
	width: 300px;
	height: 300px;
}

.dark-violet-buttons .lp-button:hover,
.dark-violet-buttons .lp-btn:hover {
	transform: translateY(-3px);
	box-shadow: 0 12px 32px var(--dark-violet-shadow-strong);
	border-color: rgba(255, 255, 255, 0.3);
}

.dark-violet-buttons .lp-button:active,
.dark-violet-buttons .lp-btn:active {
	transform: translateY(-1px);
}

.dark-violet-buttons .lp-button-secondary,
.dark-violet-buttons .lp-btn-secondary {
	background: transparent;
	border: 2px solid var(--dark-violet-secondary);
	color: var(--dark-violet-secondary);
	box-shadow: 0 4px 16px rgba(139, 45, 217, 0.2);
}

.dark-violet-buttons .lp-button-secondary:hover,
.dark-violet-buttons .lp-btn-secondary:hover {
	background: var(--dark-violet-secondary);
	color: var(--dark-violet-text);
	border-color: var(--dark-violet-secondary);
}

/* Progress Card */
.course-progress-card {
	padding: 28px;
}

.course-progress-card .lp-course-progress {
	margin-bottom: 20px;
}

.course-progress-card .progress-heading {
	color: var(--dark-violet-text);
	font-size: 16px;
	font-weight: 600;
	margin-bottom: 12px;
}

.course-progress-card .learn-press-progress {
	height: 8px;
	background: rgba(139, 45, 217, 0.2);
	border-radius: 10px;
	overflow: hidden;
	box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.2);
}

.course-progress-card .learn-press-progress__active {
	height: 100%;
	background: var(--dark-violet-gradient);
	border-radius: 10px;
	transition: width 0.6s ease;
	box-shadow: 0 0 10px rgba(139, 45, 217, 0.5);
}

/* Preview Card */
.course-preview-card {
	padding: 0;
	overflow: hidden;
}

.course-preview-card .media-preview {
	border-radius: 20px;
	overflow: hidden;
}

.course-preview-card img,
.course-preview-card video {
	width: 100%;
	height: auto;
	display: block;
}

/* ============================================
   Tabs - Modern Design
   ============================================ */

.dark-violet-tabs {
	margin-top: 40px;
}

.wrapper-course-nav-tabs {
	background: rgba(45, 27, 78, 0.6);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(139, 45, 217, 0.3);
	border-radius: 16px;
	padding: 8px;
	margin-bottom: 32px;
	box-shadow: 0 8px 32px var(--dark-violet-shadow);
	overflow-x: auto;
}

.dark-violet-nav-tabs {
	display: flex;
	list-style: none;
	margin: 0;
	padding: 0;
	gap: 8px;
	align-items: center;
}

.dark-violet-nav-tabs .course-nav {
	margin: 0;
	padding: 0;
	flex: 1;
	min-width: 120px;
}

.dark-violet-nav-tabs .tab-label {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 16px 24px;
	color: var(--dark-violet-text-muted);
	text-decoration: none;
	font-weight: 600;
	font-size: 16px;
	border-radius: 12px;
	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	border: 2px solid transparent;
}

.dark-violet-nav-tabs .tab-label:hover {
	color: var(--dark-violet-text);
	background: rgba(139, 45, 217, 0.2);
	border-color: rgba(139, 45, 217, 0.3);
}

.dark-violet-nav-tabs .tab-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	transition: transform 0.3s ease;
}

.dark-violet-nav-tabs .tab-label:hover .tab-icon {
	transform: scale(1.1);
}

.dark-violet-nav-tabs .course-nav.active .tab-label {
	background: var(--dark-violet-gradient);
	color: var(--dark-violet-text);
	border-color: rgba(255, 255, 255, 0.3);
	box-shadow: 0 4px 16px var(--dark-violet-shadow);
}

.dark-violet-nav-tabs .course-nav.active .tab-icon {
	transform: scale(1.15);
}

/* Tab Radio Inputs - Hidden */
.tab-radio-input {
	display: none;
}

/* Tab Panels */
.dark-violet-tab-panels {
	position: relative;
	min-height: 400px;
}

.dark-violet-tab-panel {
	display: none;
	animation: fadeInUp 0.5s ease-out;
	padding: 32px;
	background: rgba(45, 27, 78, 0.4);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(139, 45, 217, 0.2);
	border-radius: 20px;
	box-shadow: 0 8px 32px var(--dark-violet-shadow);
}

/* Hide all tab panels by default */
.dark-violet-tab-panel {
	display: none;
}

/* Show active tab panel based on radio button selection */
/* Structure: input -> wrapper -> panels */
#tab-overview-input:checked ~ .wrapper-course-nav-tabs ~ .course-tab-panels .course-tab-panel-overview,
#tab-curriculum-input:checked ~ .wrapper-course-nav-tabs ~ .course-tab-panels .course-tab-panel-curriculum,
#tab-instructor-input:checked ~ .wrapper-course-nav-tabs ~ .course-tab-panels .course-tab-panel-instructor,
#tab-faqs-input:checked ~ .wrapper-course-nav-tabs ~ .course-tab-panels .course-tab-panel-faqs,
.dark-violet-tab-panel:target {
	display: block;
	animation: fadeInUp 0.5s ease-out;
}

/* Show overview by default (when page loads, first tab is usually active) */
.dark-violet-tabs .course-tab-panel-overview {
	display: block;
}

/* Hide overview when another tab is selected */
#tab-curriculum-input:checked ~ .wrapper-course-nav-tabs ~ .course-tab-panels .course-tab-panel-overview,
#tab-instructor-input:checked ~ .wrapper-course-nav-tabs ~ .course-tab-panels .course-tab-panel-overview,
#tab-faqs-input:checked ~ .wrapper-course-nav-tabs ~ .course-tab-panels .course-tab-panel-overview {
	display: none;
}

/* Hide other tabs when overview is selected */
#tab-overview-input:checked ~ .wrapper-course-nav-tabs ~ .course-tab-panels .course-tab-panel-curriculum,
#tab-overview-input:checked ~ .wrapper-course-nav-tabs ~ .course-tab-panels .course-tab-panel-instructor,
#tab-overview-input:checked ~ .wrapper-course-nav-tabs ~ .course-tab-panels .course-tab-panel-faqs {
	display: none;
}

/* Tab Content Styles */
.dark-violet-description {
	color: var(--dark-violet-text-light);
	line-height: 1.8;
	font-size: 18px;
}

.dark-violet-description h1,
.dark-violet-description h2,
.dark-violet-description h3,
.dark-violet-description h4 {
	color: var(--dark-violet-text);
	margin-top: 32px;
	margin-bottom: 16px;
}

.dark-violet-description p {
	margin-bottom: 20px;
}

.dark-violet-description a {
	color: var(--dark-violet-secondary);
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition: all 0.3s ease;
}

.dark-violet-description a:hover {
	color: var(--dark-violet-text);
	border-bottom-color: var(--dark-violet-secondary);
}

.dark-violet-description img {
	border-radius: 12px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
	margin: 24px 0;
}

/* Curriculum */
.dark-violet-curriculum {
	padding: 0;
}

.dark-violet-sections {
	list-style: none;
	margin: 0;
	padding: 0;
}

.dark-violet-sections .section {
	background: rgba(45, 27, 78, 0.4);
	backdrop-filter: blur(10px);
	border: 1px solid rgba(139, 45, 217, 0.2);
	border-radius: 16px;
	margin-bottom: 20px;
	padding: 24px;
	transition: all 0.3s ease;
}

.dark-violet-sections .section:hover {
	background: rgba(45, 27, 78, 0.6);
	border-color: rgba(139, 45, 217, 0.4);
	transform: translateX(4px);
}

.dark-violet-sections .section-title {
	color: var(--dark-violet-text);
	font-size: 24px;
	font-weight: 700;
	margin-bottom: 16px;
}

.dark-violet-sections .section-desc {
	color: var(--dark-violet-text-muted);
	margin-bottom: 16px;
}

.dark-violet-sections .section-content {
	list-style: none;
	margin: 0;
	padding: 0;
}

.dark-violet-sections .section-item {
	padding: 16px;
	margin-bottom: 8px;
	background: rgba(26, 11, 46, 0.5);
	border-radius: 12px;
	border-left: 3px solid var(--dark-violet-secondary);
	transition: all 0.3s ease;
}

.dark-violet-sections .section-item:hover {
	background: rgba(26, 11, 46, 0.7);
	border-left-color: var(--dark-violet-primary);
	transform: translateX(4px);
}

.curriculum-empty {
	text-align: center;
	padding: 60px 20px;
	color: var(--dark-violet-text-muted);
	font-size: 18px;
}

/* Instructor Tab */
.dark-violet-instructor {
	padding: 0;
}

.dark-violet-author-card {
	display: flex;
	gap: 32px;
	background: rgba(45, 27, 78, 0.4);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(139, 45, 217, 0.2);
	border-radius: 20px;
	padding: 40px;
}

.course-author__pull-left {
	flex-shrink: 0;
}

.course-author__pull-left img {
	width: 120px;
	height: 120px;
	border-radius: 50%;
	border: 4px solid var(--dark-violet-secondary);
	box-shadow: 0 8px 24px var(--dark-violet-shadow);
}

.course-author__pull-right {
	flex: 1;
}

.dark-violet-author-card .author-title {
	color: var(--dark-violet-text);
	font-size: 28px;
	font-weight: 700;
	margin-bottom: 16px;
}

.dark-violet-author-card .author-title a {
	color: var(--dark-violet-text);
	text-decoration: none;
	transition: color 0.3s ease;
}

.dark-violet-author-card .author-title a:hover {
	color: var(--dark-violet-secondary);
}

.dark-violet-author-card .author-description {
	color: var(--dark-violet-text-light);
	line-height: 1.8;
	font-size: 16px;
	margin-top: 20px;
}

/* Meta Primary */
.dark-violet-meta-primary {
	display: flex;
	gap: 20px;
	margin-bottom: 32px;
	flex-wrap: wrap;
}

.dark-violet-meta-primary .course-meta__pull-left,
.dark-violet-meta-primary .course-meta__pull-right {
	display: flex;
	gap: 16px;
	flex-wrap: wrap;
}

/* ============================================
   Animations
   ============================================ */

@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes slideInRight {
	from {
		opacity: 0;
		transform: translateX(30px);
	}
	to {
		opacity: 1;
		transform: translateX(0);
	}
}

@keyframes glow {
	0%, 100% {
		box-shadow: 0 0 20px var(--dark-violet-shadow);
	}
	50% {
		box-shadow: 0 0 40px var(--dark-violet-shadow-strong);
	}
}

/* ============================================
   Layout Improvements - Single Course Page
   ============================================ */

/* Main content and sidebar layout */
.lp-single-course-main {
	display: grid;
	grid-template-columns: 1fr 380px;
	gap: 40px;
	align-items: start;
}

.course-summary-sidebar {
	position: sticky;
	top: 100px;
	max-height: calc(100vh - 120px);
	overflow-y: auto;
}

.course-summary-sidebar::-webkit-scrollbar {
	width: 6px;
}

.course-summary-sidebar::-webkit-scrollbar-track {
	background: rgba(139, 45, 217, 0.1);
	border-radius: 3px;
}

.course-summary-sidebar::-webkit-scrollbar-thumb {
	background: var(--dark-violet-secondary);
	border-radius: 3px;
}

.course-summary-sidebar::-webkit-scrollbar-thumb:hover {
	background: var(--dark-violet-primary);
}

/* Course info in sidebar - better visibility */
.course-sidebar-card .course-info-item,
.course-sidebar-card .course-meta-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 12px 0;
	border-bottom: 1px solid rgba(139, 45, 217, 0.2);
}

.course-sidebar-card .course-info-item:last-child {
	border-bottom: none;
}

.course-sidebar-card .course-info-item .info-label,
.course-sidebar-card .course-meta-item .meta-label {
	color: var(--dark-violet-text-muted) !important;
	font-size: 14px;
	font-weight: 500;
	display: flex;
	align-items: center;
	gap: 8px;
}

.course-sidebar-card .course-info-item .info-value,
.course-sidebar-card .course-meta-item .meta-value {
	color: var(--dark-violet-text) !important;
	font-size: 15px;
	font-weight: 600;
}

.course-sidebar-card .course-info-item svg,
.course-sidebar-card .course-meta-item svg {
	width: 18px;
	height: 18px;
	fill: var(--dark-violet-secondary);
	flex-shrink: 0;
}

/* Section items in curriculum - better visibility */
.dark-violet-sections .section-item .item-title,
.curriculum-item .item-title {
	color: var(--dark-violet-text) !important;
	font-weight: 600;
	font-size: 16px;
	margin-bottom: 4px;
}

.dark-violet-sections .section-item .item-meta,
.curriculum-item .item-meta {
	color: var(--dark-violet-text-muted) !important;
	font-size: 13px;
	display: flex;
	align-items: center;
	gap: 8px;
}

.dark-violet-sections .section-item .item-duration,
.curriculum-item .item-duration {
	color: var(--dark-violet-text-muted) !important;
}

/* Better spacing and readability */
.course-summary-content {
	line-height: 1.8;
}

.course-summary-content p {
	margin-bottom: 1.5em;
	color: var(--dark-violet-text-light) !important;
}

.course-summary-content ul,
.course-summary-content ol {
	margin: 1.5em 0;
	padding-right: 2em;
	color: var(--dark-violet-text-light) !important;
}

.course-summary-content li {
	margin-bottom: 0.75em;
	color: var(--dark-violet-text-light) !important;
}

/* ============================================
   Responsive Design
   ============================================ */

@media (max-width: 1200px) {
	.lp-single-course-main {
		grid-template-columns: 1fr 340px;
		gap: 32px;
	}
	
	.course-summary-sidebar {
		top: 80px;
	}
}

@media (max-width: 1024px) {
	.lp-single-course-main {
		grid-template-columns: 1fr;
		gap: 0;
	}
	
	.course-summary-sidebar {
		position: static;
		max-height: none;
		margin-top: 40px;
	}
	
	.single-course-header {
		padding: 60px 32px;
	}
	
	.single-course-header .course-title {
		font-size: 36px;
	}
	
	.course-detail-wrapper {
		padding: 32px 16px;
	}
	
	.dark-violet-author-card {
		flex-direction: column;
		text-align: center;
	}
	
	.course-author__pull-left {
		margin: 0 auto;
	}
}

@media (max-width: 768px) {
	.lp-single-course-main {
		grid-template-columns: 1fr;
	}
	
	.course-detail-wrapper {
		padding: 24px 16px;
	}
	
	.single-course-header {
		padding: 40px 24px;
		border-radius: 16px;
		margin-bottom: 32px;
	}
	
	.single-course-header .course-title {
		font-size: 28px;
		line-height: 1.3;
	}
	
	.single-course-meta {
		flex-direction: column;
		gap: 16px;
		align-items: stretch;
		margin-top: 24px;
	}
	
	.single-course-meta-item {
		justify-content: center;
		padding: 14px 20px;
		font-size: 16px;
	}
	
	.single-course-meta-item svg {
		width: 20px;
		height: 20px;
	}
	
	.dark-violet-sidebar {
		margin-top: 32px;
	}
	
	.course-summary-sidebar {
		margin-top: 32px;
	}
	
	.course-sidebar-card {
		padding: 24px;
		margin-bottom: 20px;
	}
	
	.dark-violet-price .price-value {
		font-size: 36px;
	}
	
	.wrapper-course-nav-tabs {
		padding: 6px;
		margin-bottom: 24px;
	}
	
	.dark-violet-nav-tabs {
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: thin;
	}
	
	.dark-violet-nav-tabs::-webkit-scrollbar {
		height: 4px;
	}
	
	.dark-violet-nav-tabs::-webkit-scrollbar-track {
		background: rgba(139, 45, 217, 0.1);
	}
	
	.dark-violet-nav-tabs::-webkit-scrollbar-thumb {
		background: var(--dark-violet-secondary);
		border-radius: 2px;
	}
	
	.dark-violet-nav-tabs .course-nav {
		min-width: 100px;
		flex: 0 0 auto;
	}
	
	.dark-violet-nav-tabs .tab-label {
		padding: 12px 16px;
		font-size: 14px;
		white-space: nowrap;
	}
	
	.dark-violet-nav-tabs .tab-icon {
		width: 20px;
		height: 20px;
		flex-shrink: 0;
	}
	
	.dark-violet-tab-panel {
		padding: 24px;
		border-radius: 16px;
	}
	
	.dark-violet-description {
		font-size: 16px;
		line-height: 1.8;
	}
	
	.dark-violet-description h1,
	.dark-violet-description h2,
	.dark-violet-description h3 {
		font-size: 24px;
		margin-top: 24px;
		margin-bottom: 12px;
	}
	
	.dark-violet-author-card {
		padding: 24px;
		flex-direction: column;
		text-align: center;
	}
	
	.dark-violet-author-card .author-title {
		font-size: 24px;
	}
	
	.dark-violet-sections .section {
		padding: 20px;
		margin-bottom: 16px;
	}
	
	.dark-violet-sections .section-title {
		font-size: 20px;
		margin-bottom: 12px;
	}
	
	.dark-violet-sections .section-item {
		padding: 14px;
		margin-bottom: 8px;
	}
	
	.dark-violet-sections .section-item .item-title {
		font-size: 15px;
	}
	
	/* Better button sizing on mobile */
	.dark-violet-buttons .lp-button,
	.dark-violet-buttons .lp-btn,
	.dark-violet-buttons button {
		padding: 16px 24px;
		font-size: 16px;
		min-height: 48px;
	}
}

@media (max-width: 480px) {
	.course-detail-wrapper {
		padding: 20px 12px;
	}
	
	.single-course-header {
		padding: 32px 20px;
		border-radius: 16px;
		margin-bottom: 24px;
	}
	
	.single-course-header .course-title {
		font-size: 24px;
		line-height: 1.3;
		margin-bottom: 20px;
	}
	
	.single-course-meta {
		flex-direction: column;
		gap: 12px;
		margin-top: 20px;
	}
	
	.single-course-meta-item {
		font-size: 14px;
		padding: 12px 16px;
		width: 100%;
		justify-content: center;
	}
	
	.single-course-meta-item svg {
		width: 18px;
		height: 18px;
	}
	
	.course-summary-sidebar {
		margin-top: 24px;
	}
	
	.course-sidebar-card {
		padding: 20px;
		border-radius: 16px;
		margin-bottom: 16px;
	}
	
	.course-sidebar-card .course-info-item,
	.course-sidebar-card .course-meta-item {
		padding: 10px 0;
		font-size: 13px;
	}
	
	.dark-violet-price .price-value {
		font-size: 32px;
	}
	
	.dark-violet-price .price-label {
		font-size: 14px;
	}
	
	.dark-violet-buttons .lp-button,
	.dark-violet-buttons .lp-btn,
	.dark-violet-buttons button {
		padding: 14px 20px;
		font-size: 15px;
		min-height: 48px;
	}
	
	.wrapper-course-nav-tabs {
		padding: 4px;
		margin-bottom: 20px;
		border-radius: 12px;
	}
	
	.dark-violet-nav-tabs {
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: thin;
		gap: 4px;
	}
	
	.dark-violet-nav-tabs::-webkit-scrollbar {
		height: 3px;
	}
	
	.dark-violet-nav-tabs::-webkit-scrollbar-track {
		background: rgba(139, 45, 217, 0.1);
		border-radius: 2px;
	}
	
	.dark-violet-nav-tabs::-webkit-scrollbar-thumb {
		background: var(--dark-violet-secondary);
		border-radius: 2px;
	}
	
	.dark-violet-nav-tabs .course-nav {
		min-width: 90px;
	}
	
	.dark-violet-nav-tabs .tab-label {
		padding: 10px 12px;
		font-size: 13px;
		gap: 6px;
		white-space: nowrap;
		border-radius: 10px;
	}
	
	.dark-violet-nav-tabs .tab-icon {
		width: 18px;
		height: 18px;
		flex-shrink: 0;
	}
	
	.dark-violet-tab-panel {
		padding: 20px;
		border-radius: 16px;
	}
	
	.dark-violet-description {
		font-size: 15px;
		line-height: 1.8;
	}
	
	.dark-violet-description h1,
	.dark-violet-description h2,
	.dark-violet-description h3 {
		font-size: 22px;
		margin-top: 20px;
		margin-bottom: 12px;
	}
	
	.dark-violet-description img {
		max-width: 100%;
		height: auto;
		border-radius: 12px;
		margin: 20px 0;
	}
	
	.dark-violet-sections .section {
		padding: 16px;
		margin-bottom: 12px;
		border-radius: 12px;
	}
	
	.dark-violet-sections .section-title {
		font-size: 18px;
		margin-bottom: 10px;
	}
	
	.dark-violet-sections .section-item {
		padding: 12px;
		margin-bottom: 6px;
		border-radius: 10px;
	}
	
	.dark-violet-sections .section-item .item-title {
		font-size: 14px;
	}
	
	.dark-violet-sections .section-item .item-meta {
		font-size: 12px;
	}
	
	.dark-violet-author-card {
		padding: 20px;
		flex-direction: column;
		text-align: center;
		border-radius: 16px;
	}
	
	.dark-violet-author-card .author-title {
		font-size: 22px;
		margin-bottom: 12px;
	}
	
	.dark-violet-author-card .author-description {
		font-size: 14px;
		line-height: 1.7;
	}
	
	.course-author__pull-left {
		margin: 0 auto 16px;
	}
	
	.course-author__pull-left img {
		width: 100px;
		height: 100px;
	}
	
	/* Mobile-specific improvements */
	.course-summary-content {
		font-size: 15px;
	}
	
	/* Better touch targets */
	.dark-violet-buttons .lp-button,
	.dark-violet-buttons .lp-btn,
	.dark-violet-nav-tabs .tab-label,
	.course-title a {
		min-height: 44px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
}

/* ============================================
   RTL Support
   ============================================ */

[dir="rtl"] .single-course-meta {
	direction: rtl;
}

[dir="rtl"] .single-course-meta-item {
	direction: rtl;
}

[dir="rtl"] .dark-violet-nav-tabs {
	direction: rtl;
}

[dir="rtl"] .dark-violet-nav-tabs .tab-label {
	direction: rtl;
}

[dir="rtl"] .dark-violet-sections .section:hover {
	transform: translateX(-4px);
}

[dir="rtl"] .dark-violet-sections .section-item {
	border-left: none;
	border-right: 3px solid var(--dark-violet-secondary);
}

[dir="rtl"] .dark-violet-sections .section-item:hover {
	border-right-color: var(--dark-violet-primary);
	transform: translateX(-4px);
}

[dir="rtl"] .dark-violet-author-card {
	direction: rtl;
}

[dir="rtl"] .dark-violet-price .price-value del {
	margin-left: 0;
	margin-right: 12px;
}

[dir="rtl"] .dark-violet-buttons .lp-button,
[dir="rtl"] .dark-violet-buttons .lp-btn {
	direction: rtl;
}

/* ============================================
   RTL Support for Archive Page
   ============================================ */

[dir="rtl"] .lp-content-area {
	direction: rtl;
	text-align: right;
}

[dir="rtl"] .archive-courses-header,
[dir="rtl"] .learn-press-courses-header {
	text-align: center;
}

[dir="rtl"] .archive-courses-header::before,
[dir="rtl"] .learn-press-courses-header::before {
	right: auto;
	left: -50%;
}

[dir="rtl"] .course-item-wrapper,
[dir="rtl"] .course-item {
	direction: rtl;
	text-align: right;
}

[dir="rtl"] .course-item-wrapper::before,
[dir="rtl"] .course-item::before {
	left: auto;
	right: 0;
}

[dir="rtl"] .course-badge,
[dir="rtl"] .featured-badge {
	right: auto;
	left: 16px;
}

[dir="rtl"] .course-categories {
	right: 16px;
	left: auto;
}

[dir="rtl"] .course-thumbnail-wrapper {
	direction: rtl;
}

[dir="rtl"] .course-content-wrapper {
	text-align: right;
}

[dir="rtl"] .course-title {
	text-align: right;
}

[dir="rtl"] .course-features {
	direction: rtl;
	justify-content: flex-end;
}

[dir="rtl"] .course-feature-item {
	direction: rtl;
	flex-direction: row-reverse;
}

[dir="rtl"] .course-feature-item::before {
	left: auto;
	right: -100%;
}

[dir="rtl"] .course-feature-item:hover::before {
	right: 100%;
}

[dir="rtl"] .course-info {
	direction: rtl;
	justify-content: flex-end;
}

[dir="rtl"] .course-instructor {
	direction: rtl;
	flex-direction: row-reverse;
}

[dir="rtl"] .course-students {
	direction: rtl;
	flex-direction: row-reverse;
}

[dir="rtl"] .course-price {
	direction: rtl;
	flex-direction: row-reverse;
}

[dir="rtl"] .lp-course-filter,
[dir="rtl"] .lp-courses-bar {
	direction: rtl;
	text-align: right;
}

[dir="rtl"] .lp-course-filter form,
[dir="rtl"] .lp-courses-bar form {
	direction: rtl;
	justify-content: flex-end;
}

[dir="rtl"] .lp-courses-bar .lp-order-by select {
	background-position: right 16px center;
	padding-right: 40px;
	padding-left: 16px;
}

[dir="rtl"] .learn-press-pagination,
[dir="rtl"] .navigation.pagination {
	direction: rtl;
	flex-direction: row-reverse;
}

[dir="rtl"] .learn-press-pagination .page-numbers,
[dir="rtl"] .navigation.pagination .page-numbers {
	direction: rtl;
}

[dir="rtl"] .courses-btn-load-more,
[dir="rtl"] .courses-btn-load-more-no-css {
	direction: rtl;
}

[dir="rtl"] .lp-loading-circle {
	margin-left: 0;
	margin-right: 10px;
}

[dir="rtl"] .view-course-btn {
	direction: rtl;
}

/* RTL for Course Grid */
[dir="rtl"] .lp-courses-list,
[dir="rtl"] .learn-press-courses {
	direction: rtl;
}

/* RTL Responsive Adjustments */
@media (max-width: 768px) {
	[dir="rtl"] .course-badge,
	[dir="rtl"] .featured-badge {
		right: auto;
		left: 12px;
	}
	
	[dir="rtl"] .course-categories {
		right: 12px;
		left: auto;
	}
}

@media (max-width: 480px) {
	[dir="rtl"] .course-badge,
	[dir="rtl"] .featured-badge {
		right: auto;
		left: 10px;
	}
	
	[dir="rtl"] .course-categories {
		right: 10px;
		left: auto;
	}
}

/* ============================================
   Additional Mobile Optimizations
   ============================================ */

/* Touch-friendly targets */
@media (max-width: 768px) {
	.dark-violet-buttons .lp-button,
	.dark-violet-buttons .lp-btn,
	.btn-course {
		min-height: 44px;
		padding: 14px 24px;
	}
	
	.dark-violet-nav-tabs .tab-label {
		min-height: 44px;
	}
	
	.course-title a {
		min-height: 44px;
		display: flex;
		align-items: center;
	}
	
	/* Better spacing on mobile */
	.course-sidebar-card {
		margin-bottom: 20px;
	}
	
	.dark-violet-sidebar {
		gap: 20px;
	}
	
	/* Improved readability */
	.dark-violet-description {
		font-size: 16px;
		line-height: 1.8;
	}
	
	.dark-violet-description h1,
	.dark-violet-description h2,
	.dark-violet-description h3 {
		font-size: 24px;
		margin-top: 24px;
		margin-bottom: 12px;
	}
}

/* Landscape mobile optimization */
@media (max-width: 768px) and (orientation: landscape) {
	.single-course-header {
		padding: 40px 24px;
		min-height: auto;
	}
	
	.homepage-hero {
		min-height: 80vh;
	}
}

/* High DPI displays */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
	.course-thumbnail img,
	.course-image {
		image-rendering: -webkit-optimize-contrast;
		image-rendering: crisp-edges;
	}
}

/* Reduced motion preference */
@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
	
	.course-item-wrapper:hover,
	.course-sidebar-card:hover,
	.feature-item:hover {
		transform: none;
	}
}

/* Dark mode support (if browser supports) */
@media (prefers-color-scheme: dark) {
	/* Already using dark theme, but ensure consistency */
	.course-item-wrapper,
	.course-sidebar-card {
		background: var(--dark-violet-card);
	}
}

/* Print optimizations */
@media print {
	.dark-violet-sidebar,
	.dark-violet-nav-tabs,
	.dark-violet-buttons {
		display: none;
	}
	
	.course-detail-wrapper {
		max-width: 100%;
		padding: 0;
	}
	
	.single-course-header {
		background: white;
		color: black;
		padding: 20px 0;
	}
	
	.single-course-header .course-title {
		color: black;
	}
}

/* ============================================
   Course Cards (Archive/List) - Keep existing styles but update colors
   ============================================ */

.lp-course-card {
	list-style: none;
	margin: 0;
	padding: 0;
	animation: fadeInUp 0.5s ease-out;
}

/* Course Item - Enhanced with Glassmorphism */
.course-item-wrapper,
.course-item,
.learn-press-courses .course-item {
	background: rgba(45, 27, 78, 0.6);
	backdrop-filter: blur(20px);
	border-radius: 24px;
	box-shadow: 0 8px 32px var(--dark-violet-shadow),
				0 0 0 1px rgba(139, 45, 217, 0.2) inset;
	overflow: hidden;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	height: 100%;
	display: flex;
	flex-direction: column;
	position: relative;
	border: 1px solid rgba(139, 45, 217, 0.3);
	animation: fadeInUp 0.6s ease-out;
}

.course-item-wrapper::before,
.course-item::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: var(--dark-violet-gradient);
	opacity: 0;
	transition: opacity 0.3s ease;
	z-index: 1;
}

.course-item-wrapper:hover,
.course-item:hover {
	box-shadow: 0 20px 60px var(--dark-violet-shadow-strong),
				0 0 0 1px rgba(139, 45, 217, 0.5) inset;
	transform: translateY(-8px) scale(1.02);
	border-color: rgba(139, 45, 217, 0.6);
}

.course-item-wrapper:hover::before,
.course-item:hover::before {
	opacity: 1;
}

/* Course Thumbnail Wrapper - Enhanced */
.course-thumbnail-wrapper {
	position: relative;
	background: var(--dark-violet-gradient);
	overflow: hidden;
	border-radius: 24px 24px 0 0;
}

.course-thumbnail {
	position: relative;
	width: 100%;
	height: 220px;
	overflow: hidden;
	background: var(--dark-violet-gradient);
}

.course-thumbnail img,
.course-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1),
				opacity 0.3s ease;
	display: block;
}

.course-item-wrapper:hover .course-thumbnail img,
.course-item:hover .course-thumbnail img {
	transform: scale(1.1);
}

.course-image-placeholder {
	width: 100%;
	height: 100%;
	background: var(--dark-violet-gradient);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--dark-violet-text-light);
	font-size: 48px;
	opacity: 0.5;
}

/* Course Overlay - Modern Design */
.course-overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(
		to bottom,
		rgba(26, 11, 46, 0) 0%,
		rgba(26, 11, 46, 0.7) 100%
	);
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	z-index: 2;
}

.course-item-wrapper:hover .course-overlay,
.course-item:hover .course-overlay {
	opacity: 1;
}

.view-course-btn {
	background: var(--dark-violet-gradient);
	color: var(--dark-violet-text);
	padding: 14px 32px;
	border-radius: 12px;
	font-weight: 700;
	font-size: 16px;
	text-transform: uppercase;
	letter-spacing: 1px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
	transform: translateY(20px);
	transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	border: 2px solid rgba(255, 255, 255, 0.3);
}

.course-item-wrapper:hover .view-course-btn,
.course-item:hover .view-course-btn {
	transform: translateY(0);
}

/* Course Badges */
.course-badge,
.featured-badge {
	position: absolute;
	top: 16px;
	right: 16px;
	background: var(--dark-violet-gradient);
	color: var(--dark-violet-text);
	padding: 8px 16px;
	border-radius: 20px;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	z-index: 3;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
	border: 1px solid rgba(255, 255, 255, 0.3);
}

.course-categories {
	position: absolute;
	top: 16px;
	left: 16px;
	z-index: 3;
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
}

.course-category-badge {
	background: rgba(26, 11, 46, 0.8);
	backdrop-filter: blur(10px);
	color: #E0D5F0 !important;
	padding: 6px 14px;
	border-radius: 16px;
	font-size: 12px;
	font-weight: 600;
	border: 1px solid rgba(139, 45, 217, 0.4);
	transition: all 0.3s ease;
}

.course-category-badge:hover {
	background: rgba(139, 45, 217, 0.2);
	border-color: var(--dark-violet-secondary);
	color: #FFFFFF !important;
	transform: scale(1.05);
}

/* Course Content Wrapper */
.course-content-wrapper {
	padding: 28px;
	flex: 1;
	display: flex;
	flex-direction: column;
	background: transparent;
	word-wrap: break-word;
	overflow-wrap: break-word;
}

.course-content-wrapper * {
	word-wrap: break-word;
	overflow-wrap: break-word;
}

/* Course Title - Enhanced */
.course-title {
	color: #FFFFFF;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.4;
	margin: 0 0 16px 0;
}

.course-title a,
.course-permalink {
	color: #FFFFFF !important;
	text-decoration: none;
	transition: color 0.3s ease;
	display: block;
}

.course-title a:hover,
.course-permalink:hover {
	color: var(--dark-violet-secondary);
	text-shadow: 0 0 20px rgba(139, 45, 217, 0.5);
}

/* ============================================
   Utility Classes
   ============================================ */

.text-center {
	text-align: center;
}

.mt-20 {
	margin-top: 20px;
}

.mb-20 {
	margin-bottom: 20px;
}

/* ============================================
   Elementor Compatibility
   ============================================ */

.elementor-widget-lp-list-courses .course-item-wrapper,
.elementor-widget-lp-list-courses-by-page .course-item-wrapper,
.elementor-widget-lp-filter-course-el .course-item-wrapper {
	background: var(--dark-violet-card) !important;
	border: 1px solid rgba(139, 45, 217, 0.2) !important;
	box-shadow: 0 8px 24px var(--dark-violet-shadow) !important;
}

.elementor-widget-lp-list-courses .course-item-wrapper:hover,
.elementor-widget-lp-list-courses-by-page .course-item-wrapper:hover,
.elementor-widget-lp-filter-course-el .course-item-wrapper:hover {
	box-shadow: 0 16px 48px var(--dark-violet-shadow-strong) !important;
	transform: translateY(-6px) !important;
}

/* ============================================
   Archive Page Improvements
   ============================================ */

/* Archive Page Container */
.lp-content-area {
	background: var(--dark-violet-bg);
	min-height: 100vh;
	padding: 40px 20px;
}

.lp-main-content {
	max-width: 1400px;
	margin: 0 auto;
}

/* Archive Header */
.archive-courses-header,
.learn-press-courses-header {
	background: var(--dark-violet-gradient);
	padding: 80px 40px;
	margin-bottom: 50px;
	border-radius: 24px;
	text-align: center;
	color: var(--dark-violet-text);
	position: relative;
	overflow: hidden;
	box-shadow: 0 20px 60px var(--dark-violet-shadow-strong),
				0 0 100px rgba(106, 13, 173, 0.2);
}

.archive-courses-header::before,
.learn-press-courses-header::before {
	content: '';
	position: absolute;
	top: -50%;
	right: -50%;
	width: 200%;
	height: 200%;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.1) 0%, transparent 70%);
	animation: pulse-glow 20s infinite;
	pointer-events: none;
}

.archive-courses-header h1,
.learn-press-courses-header h1 {
	font-size: 48px;
	font-weight: 800;
	margin: 0 0 20px 0;
	text-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
	position: relative;
	z-index: 1;
	line-height: 1.2;
}

.archive-courses-header p,
.learn-press-courses-header p {
	font-size: 20px;
	color: var(--dark-violet-text-light);
	margin: 0;
	position: relative;
	z-index: 1;
	opacity: 0.95;
}

/* Course Grid Layout */
.lp-courses-list,
.learn-press-courses {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
	gap: 30px;
	margin: 40px 0;
	padding: 0;
	list-style: none;
}

.learn-press-courses[data-layout="list"] {
	grid-template-columns: 1fr;
}

.learn-press-courses[data-layout="grid"] {
	grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
}

/* Course Excerpt in Archive */
.course-excerpt {
	margin: 12px 0 16px;
	color: var(--dark-violet-text-light);
	font-size: 14px;
	line-height: 1.6;
	word-wrap: break-word;
	overflow-wrap: break-word;
}

.course-excerpt p {
	margin: 0;
	word-wrap: break-word;
	overflow-wrap: break-word;
}

/* Course Info Wrapper - Enhanced */
.course-info {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid rgba(139, 45, 217, 0.2);
	align-items: center;
	word-wrap: break-word;
	overflow-wrap: break-word;
}

.course-info * {
	word-wrap: break-word;
	overflow-wrap: break-word;
}

/* Course Features in Archive - Enhanced */
.course-features {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 20px;
	padding: 0;
	align-items: flex-start;
}

.course-feature-item {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 16px;
	background: rgba(139, 45, 217, 0.15);
	backdrop-filter: blur(10px);
	border-radius: 12px;
	font-size: 14px;
	color: var(--dark-violet-text-light);
	border: 1px solid rgba(139, 45, 217, 0.3);
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	overflow: hidden;
	flex-shrink: 0;
	min-width: fit-content;
	word-break: break-word;
	line-height: 1.4;
}

.course-feature-item::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.1), transparent);
	transition: left 0.5s ease;
}

.course-feature-item:hover {
	background: rgba(139, 45, 217, 0.25);
	border-color: rgba(139, 45, 217, 0.5);
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(139, 45, 217, 0.3);
}

.course-feature-item:hover::before {
	left: 100%;
}

.course-feature-item .feature-icon {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
	color: var(--dark-violet-secondary);
	stroke: currentColor;
	fill: none;
	stroke-width: 2;
	transition: transform 0.3s ease, color 0.3s ease;
}

.course-feature-item:hover .feature-icon {
	transform: scale(1.15);
	color: var(--dark-violet-text);
}

.course-feature-item .feature-value {
	font-weight: 700;
	color: var(--dark-violet-text);
	font-size: 15px;
	word-break: break-word;
	overflow-wrap: break-word;
	line-height: 1.4;
}

.course-feature-item .feature-label {
	color: var(--dark-violet-text-muted);
	font-size: 12px;
	font-weight: 500;
	word-break: break-word;
	overflow-wrap: break-word;
	line-height: 1.4;
}

.course-price-feature {
	background: rgba(74, 222, 128, 0.15);
	border-color: rgba(74, 222, 128, 0.3);
}

.course-price-feature .feature-value.free-price-text {
	color: #4ADE80;
	font-weight: 700;
	font-size: 15px;
}

.course-price-feature:hover {
	background: rgba(74, 222, 128, 0.25);
	border-color: rgba(74, 222, 128, 0.5);
	box-shadow: 0 4px 12px rgba(74, 222, 128, 0.3);
}

/* Course Instructor in Archive */
.course-instructor {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 12px;
}

.instructor-avatar {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	overflow: hidden;
	flex-shrink: 0;
	border: 2px solid var(--dark-violet-secondary);
}

.instructor-avatar img,
.instructor-avatar-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.instructor-name {
	font-size: 14px;
	color: #E0D5F0 !important;
	font-weight: 500;
}

.instructor-name a,
.instructor-link {
	color: #E0D5F0 !important;
	text-decoration: none;
	transition: color 0.3s ease;
}

.instructor-name a:hover,
.instructor-link:hover {
	color: #FFFFFF !important;
	text-shadow: 0 0 10px rgba(139, 45, 217, 0.5);
}

/* Course Students in Archive */
.course-students {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 14px;
	color: var(--dark-violet-text-muted);
}

.students-icon {
	width: 18px;
	height: 18px;
	fill: currentColor;
}

.students-count {
	font-weight: 600;
	color: var(--dark-violet-text);
}

.students-label {
	color: var(--dark-violet-text-muted);
	font-size: 12px;
}

/* Course Price in Archive */
.course-price-wrapper {
	margin-top: auto;
	padding-top: 16px;
	border-top: 1px solid rgba(139, 45, 217, 0.2);
}

.course-price {
	font-size: 24px;
	font-weight: 700;
	color: var(--dark-violet-secondary);
	display: flex;
	align-items: center;
	gap: 8px;
}

.course-price.free-price {
	color: #4ADE80;
	display: flex;
	align-items: center;
	gap: 8px;
}

.course-price.free-price svg {
	fill: currentColor;
	width: 20px;
	height: 20px;
}

/* Pagination - Enhanced Modern Design */
.learn-press-pagination,
.navigation.pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	margin: 80px 0;
	flex-wrap: wrap;
	padding: 0;
}

.learn-press-pagination .page-numbers,
.navigation.pagination .page-numbers {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 48px;
	height: 48px;
	padding: 0 18px;
	background: rgba(45, 27, 78, 0.7);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(139, 45, 217, 0.4);
	border-radius: 14px;
	color: var(--dark-violet-text);
	text-decoration: none;
	font-weight: 700;
	font-size: 15px;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	overflow: hidden;
}

.learn-press-pagination .page-numbers::before,
.navigation.pagination .page-numbers::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 0;
	height: 0;
	border-radius: 50%;
	background: rgba(139, 45, 217, 0.3);
	transform: translate(-50%, -50%);
	transition: width 0.4s ease, height 0.4s ease;
}

.learn-press-pagination .page-numbers:hover::before,
.navigation.pagination .page-numbers:hover::before {
	width: 100px;
	height: 100px;
}

.learn-press-pagination .page-numbers:hover,
.navigation.pagination .page-numbers:hover {
	background: rgba(139, 45, 217, 0.3);
	border-color: rgba(139, 45, 217, 0.6);
	color: var(--dark-violet-text);
	transform: translateY(-3px) scale(1.05);
	box-shadow: 0 8px 24px var(--dark-violet-shadow-strong);
	z-index: 1;
}

.learn-press-pagination .page-numbers.current,
.navigation.pagination .page-numbers.current {
	background: var(--dark-violet-gradient);
	border-color: rgba(255, 255, 255, 0.4);
	color: var(--dark-violet-text);
	transform: translateY(-2px);
	box-shadow: 0 8px 20px var(--dark-violet-shadow-strong),
				0 0 0 2px rgba(139, 45, 217, 0.3) inset;
	font-weight: 800;
	z-index: 2;
}

.learn-press-pagination .page-numbers.prev,
.learn-press-pagination .page-numbers.next,
.navigation.pagination .page-numbers.prev,
.navigation.pagination .page-numbers.next {
	padding: 0 20px;
	font-weight: 700;
}

.learn-press-pagination .page-numbers.dots,
.navigation.pagination .page-numbers.dots {
	background: transparent;
	border: none;
	cursor: default;
	min-width: auto;
	padding: 0 8px;
}

.learn-press-pagination .page-numbers.dots:hover,
.navigation.pagination .page-numbers.dots:hover {
	transform: none;
	box-shadow: none;
	background: transparent;
}

/* Load More Button */
.courses-btn-load-more,
.courses-btn-load-more-no-css {
	display: block;
	margin: 60px auto;
	padding: 18px 40px;
	background: var(--dark-violet-gradient);
	color: var(--dark-violet-text);
	border: 2px solid rgba(255, 255, 255, 0.3);
	border-radius: 14px;
	font-size: 16px;
	font-weight: 700;
	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: 0 8px 24px var(--dark-violet-shadow);
	text-transform: uppercase;
	letter-spacing: 1px;
	position: relative;
	overflow: hidden;
}

.courses-btn-load-more::before,
.courses-btn-load-more-no-css::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 0;
	height: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.2);
	transform: translate(-50%, -50%);
	transition: width 0.6s ease, height 0.6s ease;
}

.courses-btn-load-more:hover::before,
.courses-btn-load-more-no-css:hover::before {
	width: 300px;
	height: 300px;
}

.courses-btn-load-more:hover,
.courses-btn-load-more-no-css:hover {
	background: var(--dark-violet-gradient-hover);
	transform: translateY(-3px);
	box-shadow: 0 12px 32px var(--dark-violet-shadow-strong);
	border-color: rgba(255, 255, 255, 0.5);
}

.courses-btn-load-more:active,
.courses-btn-load-more-no-css:active {
	transform: translateY(-1px);
}

/* Loading Circle */
.lp-loading-circle {
	display: inline-block;
	width: 20px;
	height: 20px;
	border: 3px solid rgba(139, 45, 217, 0.3);
	border-top-color: var(--dark-violet-secondary);
	border-radius: 50%;
	animation: spin 0.8s linear infinite;
	margin-left: 10px;
	vertical-align: middle;
}

.lp-loading-circle.hide {
	display: none;
}

/* Course Filter/Search - Enhanced */
.lp-course-filter,
.lp-courses-bar {
	background: rgba(45, 27, 78, 0.7);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(139, 45, 217, 0.4);
	border-radius: 20px;
	padding: 28px;
	margin-bottom: 50px;
	box-shadow: 0 8px 32px var(--dark-violet-shadow),
				0 0 0 1px rgba(139, 45, 217, 0.2) inset;
	position: relative;
	overflow: hidden;
}

.lp-course-filter::before,
.lp-courses-bar::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 2px;
	background: var(--dark-violet-gradient);
	opacity: 0.8;
}

.lp-course-filter form,
.lp-courses-bar form {
	display: flex;
	gap: 16px;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
	z-index: 1;
}

.lp-course-filter input,
.lp-course-filter select,
.lp-courses-bar input,
.lp-courses-bar select,
.lp-courses-bar .lp-search-course input {
	padding: 14px 20px;
	background: rgba(26, 11, 46, 0.6);
	backdrop-filter: blur(10px);
	border: 1px solid rgba(139, 45, 217, 0.4);
	border-radius: 12px;
	color: var(--dark-violet-text);
	font-size: 15px;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	flex: 1;
	min-width: 200px;
}

.lp-course-filter input::placeholder,
.lp-courses-bar input::placeholder {
	color: var(--dark-violet-text-muted);
	opacity: 0.7;
}

.lp-course-filter input:focus,
.lp-course-filter select:focus,
.lp-courses-bar input:focus,
.lp-courses-bar select:focus {
	outline: none;
	border-color: var(--dark-violet-secondary);
	box-shadow: 0 0 0 3px rgba(139, 45, 217, 0.3),
				0 4px 12px rgba(139, 45, 217, 0.2);
	background: rgba(26, 11, 46, 0.8);
	transform: translateY(-2px);
}

.lp-course-filter button,
.lp-courses-bar button,
.lp-courses-bar .lp-search-course button {
	padding: 14px 28px;
	background: var(--dark-violet-gradient);
	color: var(--dark-violet-text);
	border: 2px solid rgba(255, 255, 255, 0.2);
	border-radius: 12px;
	font-size: 15px;
	font-weight: 700;
	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: 0 4px 16px var(--dark-violet-shadow);
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.lp-course-filter button:hover,
.lp-courses-bar button:hover {
	background: var(--dark-violet-gradient-hover);
	transform: translateY(-2px);
	box-shadow: 0 8px 24px var(--dark-violet-shadow-strong);
	border-color: rgba(255, 255, 255, 0.4);
}

.lp-course-filter button:active,
.lp-courses-bar button:active {
	transform: translateY(0);
}

/* Course Order By Select */
.lp-courses-bar .lp-order-by select {
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%238B2DD9' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: left 16px center;
	padding-left: 40px;
}

/* ============================================
   Enhanced Responsive Design
   ============================================ */

@media (max-width: 1200px) {
	.lp-content-area {
		padding: 32px 16px;
	}
	
	.course-detail-wrapper {
		padding: 32px 16px;
	}
	
	.single-course-header {
		padding: 60px 32px;
	}
	
	.lp-courses-list,
	.learn-press-courses {
		grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
		gap: 24px;
	}
	
	.archive-courses-header,
	.learn-press-courses-header {
		padding: 60px 32px;
	}
}

@media (max-width: 1024px) {
	.lp-content-area {
		padding: 28px 16px;
	}
	
	.archive-courses-header,
	.learn-press-courses-header {
		padding: 50px 28px;
		margin-bottom: 40px;
	}
	
	.archive-courses-header h1,
	.learn-press-courses-header h1 {
		font-size: 36px;
	}
	
	.archive-courses-header p,
	.learn-press-courses-header p {
		font-size: 18px;
	}
	
	.course-detail-wrapper {
		flex-direction: column;
	}
	
	.dark-violet-sidebar {
		margin-top: 40px;
		width: 100%;
	}
	
	.lp-courses-list,
	.learn-press-courses {
		grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
		gap: 24px;
		margin: 32px 0;
	}
	
	.course-thumbnail {
		height: 200px;
	}
	
	.lp-course-filter,
	.lp-courses-bar {
		padding: 24px;
		margin-bottom: 40px;
	}
}

@media (max-width: 768px) {
	.lp-content-area {
		padding: 24px 12px;
	}
	
	.archive-courses-header,
	.learn-press-courses-header {
		padding: 40px 24px;
		border-radius: 20px;
		margin-bottom: 32px;
	}
	
	.archive-courses-header h1,
	.learn-press-courses-header h1 {
		font-size: 32px;
		margin-bottom: 16px;
	}
	
	.archive-courses-header p,
	.learn-press-courses-header p {
		font-size: 16px;
	}
	
	.lp-courses-list,
	.learn-press-courses {
		grid-template-columns: 1fr;
		gap: 24px;
		margin: 32px 0;
	}
	
	.course-item-wrapper,
	.course-item {
		border-radius: 20px;
	}
	
	.course-thumbnail {
		height: 180px;
	}
	
	.course-content-wrapper {
		padding: 24px;
	}
	
	.course-title {
		font-size: 20px;
		margin-bottom: 14px;
	}
	
	.course-features {
		gap: 8px;
		margin-bottom: 16px;
		flex-wrap: wrap;
		justify-content: flex-start;
	}
	
	.course-feature-item {
		padding: 8px 12px;
		font-size: 13px;
		gap: 6px;
		flex: 0 1 auto;
		min-width: 0;
		max-width: 100%;
		word-break: break-word;
		overflow-wrap: break-word;
		line-height: 1.5;
	}
	
	.course-feature-item .feature-icon {
		width: 18px;
		height: 18px;
		flex-shrink: 0;
	}
	
	.course-feature-item .feature-value {
		font-size: 14px;
		word-break: break-word;
	}
	
	.course-feature-item .feature-label {
		font-size: 11px;
		word-break: break-word;
	}
	
	.course-info {
		flex-direction: column;
		gap: 12px;
		margin-top: 16px;
		padding-top: 16px;
	}
	
	.course-price {
		font-size: 22px;
	}
	
	.learn-press-pagination,
	.navigation.pagination {
		margin: 50px 0;
		gap: 8px;
	}
	
	.learn-press-pagination .page-numbers,
	.navigation.pagination .page-numbers {
		min-width: 44px;
		height: 44px;
		padding: 0 14px;
		font-size: 14px;
	}
	
	.lp-course-filter,
	.lp-courses-bar {
		padding: 20px;
		margin-bottom: 32px;
		border-radius: 16px;
	}
	
	.lp-course-filter form,
	.lp-courses-bar form {
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
	}
	
	.lp-course-filter input,
	.lp-course-filter select,
	.lp-courses-bar input,
	.lp-courses-bar select {
		width: 100%;
		min-width: auto;
		padding: 12px 16px;
	}
	
	.lp-course-filter button,
	.lp-courses-bar button {
		width: 100%;
		padding: 14px 24px;
	}
	
	.courses-btn-load-more,
	.courses-btn-load-more-no-css {
		width: 100%;
		padding: 16px 32px;
		margin: 40px auto;
	}
	
	.view-course-btn {
		padding: 12px 24px;
		font-size: 14px;
	}
	
	.course-badge,
	.featured-badge {
		top: 12px;
		right: 12px;
		padding: 6px 12px;
		font-size: 11px;
	}
	
	.course-categories {
		top: 12px;
		left: 12px;
	}
	
	.course-category-badge {
		padding: 5px 10px;
		font-size: 11px;
	}
}

@media (max-width: 480px) {
	.lp-content-area {
		padding: 20px 10px;
	}
	
	.archive-courses-header,
	.learn-press-courses-header {
		padding: 32px 20px;
		border-radius: 16px;
		margin-bottom: 28px;
	}
	
	.archive-courses-header h1,
	.learn-press-courses-header h1 {
		font-size: 28px;
		margin-bottom: 12px;
	}
	
	.archive-courses-header p,
	.learn-press-courses-header p {
		font-size: 15px;
	}
	
	.lp-courses-list,
	.learn-press-courses {
		gap: 20px;
		margin: 28px 0;
	}
	
	.course-item-wrapper,
	.course-item {
		border-radius: 16px;
	}
	
	.course-thumbnail {
		height: 160px;
	}
	
	.course-content-wrapper {
		padding: 20px;
	}
	
	.course-title {
		font-size: 18px;
		margin-bottom: 12px;
	}
	
	.course-features {
		gap: 6px;
		margin-bottom: 14px;
	}
	
	.course-features {
		gap: 6px;
		margin-bottom: 14px;
	}
	
	.course-feature-item {
		font-size: 12px;
		padding: 6px 10px;
		gap: 5px;
		flex: 0 1 auto;
		min-width: 0;
		max-width: 100%;
		word-break: break-word;
		overflow-wrap: break-word;
		line-height: 1.5;
	}
	
	.course-feature-item .feature-icon {
		width: 16px;
		height: 16px;
		flex-shrink: 0;
	}
	
	.course-feature-item .feature-value {
		font-size: 13px;
		word-break: break-word;
	}
	
	.course-feature-item .feature-label {
		font-size: 10px;
		word-break: break-word;
	}
	
	.course-info {
		gap: 10px;
		margin-top: 14px;
		padding-top: 14px;
	}
	
	.course-price {
		font-size: 20px;
	}
	
	.learn-press-pagination,
	.navigation.pagination {
		margin: 40px 0;
		gap: 6px;
	}
	
	.learn-press-pagination .page-numbers,
	.navigation.pagination .page-numbers {
		min-width: 40px;
		height: 40px;
		padding: 0 10px;
		font-size: 13px;
	}
	
	.lp-course-filter,
	.lp-courses-bar {
		padding: 16px;
		margin-bottom: 28px;
		border-radius: 14px;
	}
	
	.lp-course-filter input,
	.lp-course-filter select,
	.lp-courses-bar input,
	.lp-courses-bar select {
		padding: 10px 14px;
		font-size: 14px;
	}
	
	.lp-course-filter button,
	.lp-courses-bar button {
		padding: 12px 20px;
		font-size: 14px;
	}
	
	.courses-btn-load-more,
	.courses-btn-load-more-no-css {
		padding: 14px 28px;
		font-size: 14px;
		margin: 32px auto;
	}
	
	.view-course-btn {
		padding: 10px 20px;
		font-size: 13px;
	}
	
	.course-badge,
	.featured-badge {
		top: 10px;
		right: 10px;
		padding: 5px 10px;
		font-size: 10px;
	}
	
	.course-categories {
		top: 10px;
		left: 10px;
		gap: 6px;
	}
	
	.course-category-badge {
		padding: 4px 8px;
		font-size: 10px;
	}
}

/* ============================================
   Additional Archive Enhancements
   ============================================ */

/* Empty State */
.courses-empty {
	text-align: center;
	padding: 80px 20px;
	color: var(--dark-violet-text-muted);
}

.courses-empty h2 {
	font-size: 32px;
	color: var(--dark-violet-text);
	margin-bottom: 16px;
}

.courses-empty p {
	font-size: 18px;
	margin-bottom: 32px;
}

/* Loading State */
.courses-loading {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 60px 20px;
}

.courses-loading::after {
	content: '';
	width: 40px;
	height: 40px;
	border: 4px solid rgba(139, 45, 217, 0.2);
	border-top-color: var(--dark-violet-secondary);
	border-radius: 50%;
	animation: spin 1s linear infinite;
}

@keyframes spin {
	to {
		transform: rotate(360deg);
	}
}

/* Course Categories in Archive */
.course-categories {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 12px;
}

.course-category-badge {
	padding: 4px 12px;
	background: rgba(139, 45, 217, 0.2);
	border: 1px solid rgba(139, 45, 217, 0.3);
	border-radius: 6px;
	font-size: 12px;
	color: var(--dark-violet-secondary);
	font-weight: 600;
}

/* Course Rating (if available) */
.course-rating {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 12px;
}

.course-rating-stars {
	display: flex;
	gap: 2px;
}

.course-rating-stars svg {
	width: 16px;
	height: 16px;
	fill: #FFD700;
}

.course-rating-value {
	font-size: 14px;
	color: var(--dark-violet-text-muted);
	font-weight: 600;
}

/* Improved Course Card Hover Effects */
.course-item-wrapper::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 2px;
	background: var(--dark-violet-gradient);
	opacity: 0;
	transition: opacity 0.3s ease;
	z-index: 1;
}

.course-item-wrapper:hover::before {
	opacity: 1;
}

/* Better Image Loading */
.course-thumbnail img {
	transition: transform 0.4s ease, opacity 0.3s ease;
}

.course-item-wrapper:hover .course-thumbnail img {
	transform: scale(1.05);
}

/* Accessibility Improvements */
.course-title a:focus,
.course-permalink:focus {
	outline: 2px solid var(--dark-violet-secondary);
	outline-offset: 2px;
	border-radius: 4px;
}

/* Print Styles */
@media print {
	.course-item-wrapper,
	.course-item {
		box-shadow: none;
		border: 1px solid #ccc;
		break-inside: avoid;
	}
	
	.course-item-wrapper:hover,
	.course-item:hover {
		transform: none;
	}
}

/* ============================================
   Additional Archive Enhancements
   ============================================ */

/* Ensure all course list items are styled */
.learn-press-courses li {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* Course Excerpt Styling */
.course-excerpt {
	color: var(--dark-violet-text-light);
	font-size: 15px;
	line-height: 1.7;
	margin: 12px 0 20px;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Empty State for Courses */
.courses-empty,
.lp-archive-courses .no-courses {
	text-align: center;
	padding: 100px 20px;
	color: var(--dark-violet-text-muted);
	background: rgba(45, 27, 78, 0.4);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(139, 45, 217, 0.2);
	border-radius: 24px;
	margin: 60px 0;
}

.courses-empty h2,
.lp-archive-courses .no-courses h2 {
	font-size: 32px;
	color: var(--dark-violet-text);
	margin-bottom: 16px;
	font-weight: 700;
}

.courses-empty p,
.lp-archive-courses .no-courses p {
	font-size: 18px;
	margin-bottom: 32px;
	color: var(--dark-violet-text-light);
}

/* Loading State Enhancement */
.courses-loading {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 80px 20px;
}

.courses-loading::after {
	content: '';
	width: 50px;
	height: 50px;
	border: 4px solid rgba(139, 45, 217, 0.2);
	border-top-color: var(--dark-violet-secondary);
	border-radius: 50%;
	animation: spin 1s linear infinite;
}

/* Smooth Scroll for Pagination */
html {
	scroll-behavior: smooth;
}

/* Focus Visible for Better Accessibility */
.course-item-wrapper:focus-visible,
.course-item:focus-visible,
.learn-press-pagination .page-numbers:focus-visible,
.lp-course-filter button:focus-visible {
	outline: 3px solid var(--dark-violet-secondary);
	outline-offset: 2px;
	border-radius: 4px;
}

/* Additional Animation for Course Cards on Load */
@keyframes slideInUp {
	from {
		opacity: 0;
		transform: translateY(30px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.learn-press-courses .course-item,
.learn-press-courses .course-item-wrapper {
	animation: slideInUp 0.6s ease-out;
}

.learn-press-courses .course-item:nth-child(1),
.learn-press-courses .course-item-wrapper:nth-child(1) {
	animation-delay: 0.1s;
}

.learn-press-courses .course-item:nth-child(2),
.learn-press-courses .course-item-wrapper:nth-child(2) {
	animation-delay: 0.2s;
}

.learn-press-courses .course-item:nth-child(3),
.learn-press-courses .course-item-wrapper:nth-child(3) {
	animation-delay: 0.3s;
}

.learn-press-courses .course-item:nth-child(4),
.learn-press-courses .course-item-wrapper:nth-child(4) {
	animation-delay: 0.4s;
}

.learn-press-courses .course-item:nth-child(n+5),
.learn-press-courses .course-item-wrapper:nth-child(n+5) {
	animation-delay: 0.5s;
}

/* Ensure proper z-index stacking */
.course-item-wrapper,
.course-item {
	position: relative;
	z-index: 1;
}

.course-item-wrapper:hover,
.course-item:hover {
	z-index: 2;
}

/* Better text selection */
.course-title,
.course-excerpt,
.course-feature-item {
	user-select: text;
	-webkit-user-select: text;
}

/* Improved contrast for better readability */
.course-content-wrapper {
	color: var(--dark-violet-text-light);
}

/* Ensure links are properly styled */
.course-thumbnail-link {
	display: block;
	text-decoration: none;
	color: inherit;
}

.course-thumbnail-link:focus {
	outline: 3px solid var(--dark-violet-secondary);
	outline-offset: 2px;
	border-radius: 4px;
}

/* ============================================
   Additional Critical Fixes for Text Visibility
   ============================================ */

/* Override any dark text colors from LearnPress defaults */
.lp-single-course *,
.lp-archive-courses *,
.course-summary *,
.course-content * {
	color: inherit;
}

/* Ensure all paragraph and text elements are visible */
.lp-single-course p,
.lp-archive-courses p,
.course-summary p,
.course-content p,
.lp-single-course span:not(.price-value):not(.free),
.lp-archive-courses span:not(.price-value):not(.free) {
	color: var(--dark-violet-text-light) !important;
}

/* Fix LearnPress default classes */
.learn-press-course-meta,
.learn-press-course-meta * {
	color: var(--dark-violet-text-light) !important;
}

.learn-press-course-meta a {
	color: var(--dark-violet-secondary) !important;
}

.learn-press-course-meta a:hover {
	color: var(--dark-violet-text) !important;
}

/* Course sidebar specific fixes */
.course-summary-sidebar__inner > div,
.course-summary-sidebar__inner > div * {
	color: var(--dark-violet-text-light) !important;
}

.course-summary-sidebar__inner label,
.course-summary-sidebar__inner .label {
	color: var(--dark-violet-text-muted) !important;
	font-weight: 500;
}

.course-summary-sidebar__inner strong,
.course-summary-sidebar__inner .value {
	color: var(--dark-violet-text) !important;
	font-weight: 600;
}

/* Curriculum and section items */
.curriculum-sections li,
.curriculum-sections li *,
.section-content li,
.section-content li * {
	color: var(--dark-violet-text-light) !important;
}

.curriculum-sections li a,
.section-content li a {
	color: var(--dark-violet-secondary) !important;
	text-decoration: none;
	transition: color 0.3s ease;
}

.curriculum-sections li a:hover,
.section-content li a:hover {
	color: var(--dark-violet-text) !important;
}

/* Course instructor and author info */
.course-instructor,
.course-instructor *,
.course-author,
.course-author * {
	color: #E0D5F0 !important;
	font-weight: 500;
}

.course-instructor a,
.course-author a {
	color: #E0D5F0 !important;
}

.course-instructor a:hover,
.course-author a:hover {
	color: #FFFFFF !important;
	text-shadow: 0 0 10px rgba(139, 45, 217, 0.5);
}

/* Course features visibility */
.course-features-list,
.course-features-list *,
.course-info-list,
.course-info-list * {
	color: var(--dark-violet-text-light) !important;
}

/* Form elements in sidebar */
.course-sidebar-card form,
.course-sidebar-card form * {
	color: var(--dark-violet-text-light) !important;
}

.course-sidebar-card form label {
	color: var(--dark-violet-text-muted) !important;
	font-weight: 500;
	margin-bottom: 8px;
	display: block;
}

.course-sidebar-card form input[type="text"],
.course-sidebar-card form input[type="email"],
.course-sidebar-card form input[type="number"],
.course-sidebar-card form select {
	color: var(--dark-violet-text) !important;
	background: rgba(26, 11, 46, 0.6) !important;
	border: 1px solid rgba(139, 45, 217, 0.4) !important;
}

.course-sidebar-card form input::placeholder {
	color: var(--dark-violet-text-muted) !important;
	opacity: 0.7;
}

/* Better contrast for all headings */
.lp-single-course h1,
.lp-single-course h2,
.lp-single-course h3,
.lp-single-course h4,
.lp-single-course h5,
.lp-single-course h6,
.lp-archive-courses h1,
.lp-archive-courses h2,
.lp-archive-courses h3,
.lp-archive-courses h4,
.lp-archive-courses h5,
.lp-archive-courses h6 {
	color: var(--dark-violet-text) !important;
	font-weight: 700;
}

/* List items visibility */
.lp-single-course ul li,
.lp-single-course ol li,
.lp-archive-courses ul li,
.lp-archive-courses ol li {
	color: var(--dark-violet-text-light) !important;
}

.lp-single-course ul li::marker,
.lp-single-course ol li::marker {
	color: var(--dark-violet-secondary) !important;
}

/* Table elements if any */
.lp-single-course table,
.lp-single-course table *,
.lp-archive-courses table,
.lp-archive-courses table * {
	color: var(--dark-violet-text-light) !important;
	border-color: rgba(139, 45, 217, 0.3) !important;
}

.lp-single-course table th,
.lp-archive-courses table th {
	color: var(--dark-violet-text) !important;
	background: rgba(139, 45, 217, 0.2) !important;
}

/* Blockquote and code elements */
.lp-single-course blockquote,
.lp-archive-courses blockquote {
	border-right: 4px solid var(--dark-violet-secondary);
	padding-right: 20px;
	color: var(--dark-violet-text-light) !important;
	background: rgba(139, 45, 217, 0.1);
	padding: 16px 20px;
	border-radius: 8px;
	margin: 20px 0;
}

.lp-single-course code,
.lp-archive-courses code {
	background: rgba(26, 11, 46, 0.6);
	color: var(--dark-violet-secondary) !important;
	padding: 2px 6px;
	border-radius: 4px;
	font-size: 0.9em;
}

/* Ensure all links are visible and styled */
.lp-single-course a:not(.lp-button):not(.lp-btn):not(button),
.lp-archive-courses a:not(.lp-button):not(.lp-btn):not(button) {
	color: var(--dark-violet-secondary) !important;
	text-decoration: none;
	transition: color 0.3s ease;
}

.lp-single-course a:not(.lp-button):not(.lp-btn):not(button):hover,
.lp-archive-courses a:not(.lp-button):not(.lp-btn):not(button):hover {
	color: var(--dark-violet-text) !important;
	text-decoration: underline;
}

/* Related courses section */
.related-courses-wrapper,
.related-courses-wrapper * {
	color: var(--dark-violet-text-light) !important;
}

.related-courses-wrapper h2,
.related-courses-wrapper h3 {
	color: var(--dark-violet-text) !important;
}

/* Ensure proper spacing and readability */
.lp-single-course .entry-content,
.lp-archive-courses .entry-content {
	line-height: 1.8;
	color: var(--dark-violet-text-light) !important;
}

.lp-single-course .entry-content > *,
.lp-archive-courses .entry-content > * {
	margin-bottom: 1.5em;
}

/* Fix any remaining visibility issues */
.lp-single-course .course-summary,
.lp-single-course .course-summary * {
	color: var(--dark-violet-text-light) !important;
}

/* Ensure buttons are always visible */
.lp-button,
.lp-btn,
button.lp-button,
a.lp-button,
button.lp-btn,
a.lp-btn {
	color: var(--dark-violet-text) !important;
	background: var(--dark-violet-gradient) !important;
	border: 2px solid rgba(255, 255, 255, 0.3) !important;
}

.lp-button:hover,
.lp-btn:hover,
button.lp-button:hover,
a.lp-button:hover,
button.lp-btn:hover,
a.lp-btn:hover {
	background: var(--dark-violet-gradient-hover) !important;
	color: var(--dark-violet-text) !important;
	transform: translateY(-2px);
	box-shadow: 0 8px 24px var(--dark-violet-shadow-strong) !important;
}

/* Final override for any missed elements */
body.single-lp_course *,
body.post-type-archive-lp_course * {
	color: inherit;
}

body.single-lp_course p,
body.post-type-archive-lp_course p,
body.single-lp_course span,
body.post-type-archive-lp_course span,
body.single-lp_course div:not(.price-value):not(.free),
body.post-type-archive-lp_course div:not(.price-value):not(.free) {
	color: var(--dark-violet-text-light) !important;
}

/* ============================================
   Critical High-Specificity Overrides
   ============================================ */

/* Force visibility for all text elements with maximum specificity */
.lp-single-course .lp-content-area,
.lp-single-course .lp-content-area *,
.lp-single-course .course-summary,
.lp-single-course .course-summary *,
.lp-single-course .course-content,
.lp-single-course .course-content *,
.lp-single-course .course-detail-wrapper,
.lp-single-course .course-detail-wrapper * {
	color: var(--dark-violet-text-light) !important;
}

/* Breadcrumb with high specificity */
.lp-single-course .learn-press-breadcrumb,
.lp-single-course .learn-press-breadcrumb li,
.lp-single-course .learn-press-breadcrumb a,
.lp-single-course .ast-breadcrumbs-wrapper,
.lp-single-course .ast-breadcrumbs-wrapper *,
body.single-lp_course .learn-press-breadcrumb,
body.single-lp_course .learn-press-breadcrumb *,
body.single-lp_course .ast-breadcrumbs-wrapper,
body.single-lp_course .ast-breadcrumbs-wrapper * {
	color: var(--dark-violet-text-light) !important;
}

body.single-lp_course .learn-press-breadcrumb a,
body.single-lp_course .ast-breadcrumbs-wrapper a {
	color: var(--dark-violet-secondary) !important;
}

body.single-lp_course .learn-press-breadcrumb a:hover,
body.single-lp_course .ast-breadcrumbs-wrapper a:hover {
	color: var(--dark-violet-text) !important;
}

/* Sidebar with maximum specificity */
body.single-lp_course .course-summary-sidebar,
body.single-lp_course .course-summary-sidebar *,
body.single-lp_course .course-sidebar-card,
body.single-lp_course .course-sidebar-card *,
body.single-lp_course .course-summary-sidebar__inner,
body.single-lp_course .course-summary-sidebar__inner * {
	color: var(--dark-violet-text-light) !important;
}

body.single-lp_course .course-sidebar-card label,
body.single-lp_course .course-sidebar-card .label,
body.single-lp_course .course-sidebar-card .info-label,
body.single-lp_course .course-sidebar-card .meta-label {
	color: var(--dark-violet-text-muted) !important;
	font-weight: 500;
}

body.single-lp_course .course-sidebar-card strong,
body.single-lp_course .course-sidebar-card .value,
body.single-lp_course .course-sidebar-card .info-value,
body.single-lp_course .course-sidebar-card .meta-value,
body.single-lp_course .course-sidebar-card .feature-value {
	color: var(--dark-violet-text) !important;
	font-weight: 600;
}

/* Curriculum items with high specificity */
body.single-lp_course .curriculum-sections,
body.single-lp_course .curriculum-sections *,
body.single-lp_course .dark-violet-sections,
body.single-lp_course .dark-violet-sections *,
body.single-lp_course .section-content,
body.single-lp_course .section-content *,
body.single-lp_course .section-item,
body.single-lp_course .section-item *,
body.single-lp_course .curriculum-item,
body.single-lp_course .curriculum-item * {
	color: var(--dark-violet-text-light) !important;
}

body.single-lp_course .dark-violet-sections .section-title,
body.single-lp_course .section-title {
	color: var(--dark-violet-text) !important;
	font-weight: 700;
	font-size: 20px;
	margin-bottom: 12px;
}

body.single-lp_course .dark-violet-sections .section-item .item-title,
body.single-lp_course .section-item .item-title,
body.single-lp_course .curriculum-item .item-title {
	color: var(--dark-violet-text) !important;
	font-weight: 600;
	font-size: 15px;
}

body.single-lp_course .dark-violet-sections .section-item .item-meta,
body.single-lp_course .section-item .item-meta,
body.single-lp_course .curriculum-item .item-meta {
	color: var(--dark-violet-text-muted) !important;
	font-size: 13px;
}

/* Course meta information */
body.single-lp_course .course-meta,
body.single-lp_course .course-meta *,
body.single-lp_course .course-meta-primary,
body.single-lp_course .course-meta-primary *,
body.single-lp_course .single-course-meta,
body.single-lp_course .single-course-meta *,
body.single-lp_course .single-course-meta-item,
body.single-lp_course .single-course-meta-item * {
	color: var(--dark-violet-text-light) !important;
}

body.single-lp_course .single-course-meta-item span {
	color: var(--dark-violet-text-light) !important;
	font-weight: 500;
}

body.single-lp_course .single-course-meta-item svg {
	fill: var(--dark-violet-text-light) !important;
}

/* Course description and content */
body.single-lp_course .course-description,
body.single-lp_course .course-description *,
body.single-lp_course .dark-violet-description,
body.single-lp_course .dark-violet-description *,
body.single-lp_course .course-summary-content,
body.single-lp_course .course-summary-content * {
	color: var(--dark-violet-text-light) !important;
}

body.single-lp_course .dark-violet-description h1,
body.single-lp_course .dark-violet-description h2,
body.single-lp_course .dark-violet-description h3,
body.single-lp_course .dark-violet-description h4,
body.single-lp_course .dark-violet-description h5,
body.single-lp_course .dark-violet-description h6 {
	color: var(--dark-violet-text) !important;
	font-weight: 700;
}

body.single-lp_course .dark-violet-description p {
	color: var(--dark-violet-text-light) !important;
	line-height: 1.8;
	margin-bottom: 1.5em;
}

body.single-lp_course .dark-violet-description a {
	color: var(--dark-violet-secondary) !important;
}

body.single-lp_course .dark-violet-description a:hover {
	color: var(--dark-violet-text) !important;
}

/* Instructor section */
body.single-lp_course .course-author,
body.single-lp_course .course-author *,
body.single-lp_course .lp-course-author,
body.single-lp_course .lp-course-author *,
body.single-lp_course .dark-violet-author-card,
body.single-lp_course .dark-violet-author-card * {
	color: var(--dark-violet-text-light) !important;
}

body.single-lp_course .dark-violet-author-card .author-title,
body.single-lp_course .dark-violet-author-card h2,
body.single-lp_course .dark-violet-author-card h3 {
	color: var(--dark-violet-text) !important;
	font-weight: 700;
}

body.single-lp_course .dark-violet-author-card .author-description,
body.single-lp_course .dark-violet-author-card p {
	color: var(--dark-violet-text-light) !important;
	line-height: 1.8;
}

body.single-lp_course .dark-violet-author-card a {
	color: var(--dark-violet-secondary) !important;
}

body.single-lp_course .dark-violet-author-card a:hover {
	color: var(--dark-violet-text) !important;
}

/* Tab content */
body.single-lp_course .course-tab-panel,
body.single-lp_course .course-tab-panel *,
body.single-lp_course .dark-violet-tab-panel,
body.single-lp_course .dark-violet-tab-panel * {
	color: var(--dark-violet-text-light) !important;
}

body.single-lp_course .course-tab-panel h1,
body.single-lp_course .course-tab-panel h2,
body.single-lp_course .course-tab-panel h3,
body.single-lp_course .course-tab-panel h4,
body.single-lp_course .dark-violet-tab-panel h1,
body.single-lp_course .dark-violet-tab-panel h2,
body.single-lp_course .dark-violet-tab-panel h3,
body.single-lp_course .dark-violet-tab-panel h4 {
	color: var(--dark-violet-text) !important;
	font-weight: 700;
}

/* List items */
body.single-lp_course ul li,
body.single-lp_course ol li,
body.single-lp_course .course-features li,
body.single-lp_course .curriculum-sections li {
	color: var(--dark-violet-text-light) !important;
}

body.single-lp_course ul li::marker,
body.single-lp_course ol li::marker {
	color: var(--dark-violet-secondary) !important;
}

/* Ensure all links are visible */
body.single-lp_course a:not(.lp-button):not(.lp-btn):not(button):not(.price-value) {
	color: var(--dark-violet-secondary) !important;
	text-decoration: none;
	transition: color 0.3s ease;
}

body.single-lp_course a:not(.lp-button):not(.lp-btn):not(button):not(.price-value):hover {
	color: var(--dark-violet-text) !important;
	text-decoration: underline;
}

/* Override any inline styles or theme defaults */
body.single-lp_course [style*="color"]:not([style*="rgb(255"]):not([style*="#fff"]):not([style*="#FFF"]):not([style*="white"]) {
	color: var(--dark-violet-text-light) !important;
}

/* Ensure proper background contrast */
body.single-lp_course .site-content,
body.single-lp_course .ast-container,
body.single-lp_course .content-area {
	background: var(--dark-violet-bg) !important;
	color: var(--dark-violet-text-light) !important;
}

/* ============================================
   Enhanced Responsive Layout Improvements
   ============================================ */

/* Better grid layout for single course page */
@media (min-width: 1025px) {
	.lp-single-course .lp-content-area {
		display: grid;
		grid-template-columns: 1fr 380px;
		gap: 40px;
		align-items: start;
	}
	
	.lp-single-course .course-summary-sidebar {
		position: sticky;
		top: 100px;
		max-height: calc(100vh - 120px);
		overflow-y: auto;
	}
}

/* Tablet adjustments */
@media (min-width: 769px) and (max-width: 1024px) {
	.lp-single-course .lp-content-area {
		display: grid;
		grid-template-columns: 1fr 320px;
		gap: 32px;
	}
	
	.lp-single-course .course-summary-sidebar {
		position: sticky;
		top: 80px;
		max-height: calc(100vh - 100px);
	}
}

/* Mobile - single column */
@media (max-width: 768px) {
	.lp-single-course .lp-content-area {
		display: flex;
		flex-direction: column;
		gap: 0;
	}
	
	.lp-single-course .course-summary-sidebar {
		position: static;
		max-height: none;
		overflow: visible;
		width: 100%;
		margin-top: 32px;
	}
	
	.lp-single-course .course-summary-content {
		width: 100%;
		order: 1;
	}
	
	.lp-single-course .course-summary-sidebar {
		order: 2;
	}
}

/* ============================================
   Modern UI Enhancements
   ============================================ */

/* Smooth transitions for all interactive elements */
.lp-single-course a,
.lp-single-course button,
.lp-single-course .course-sidebar-card,
.lp-single-course .dark-violet-nav-tabs .tab-label,
.lp-single-course .dark-violet-sections .section-item {
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Better focus states for accessibility */
.lp-single-course a:focus,
.lp-single-course button:focus,
.lp-single-course input:focus,
.lp-single-course select:focus,
.lp-single-course textarea:focus {
	outline: 2px solid var(--dark-violet-secondary);
	outline-offset: 2px;
	border-radius: 4px;
}

/* Improved card shadows and depth */
.lp-single-course .course-sidebar-card {
	box-shadow: 0 8px 32px var(--dark-violet-shadow),
				0 0 0 1px rgba(139, 45, 217, 0.1) inset;
}

.lp-single-course .course-sidebar-card:hover {
	box-shadow: 0 16px 48px var(--dark-violet-shadow-strong),
				0 0 0 1px rgba(139, 45, 217, 0.4) inset;
	transform: translateY(-4px);
}

/* Better spacing and typography */
.lp-single-course .course-detail-wrapper {
	line-height: 1.8;
}

.lp-single-course .course-detail-wrapper > * {
	margin-bottom: 2em;
}

.lp-single-course .course-detail-wrapper > *:last-child {
	margin-bottom: 0;
}

/* Improved button styles */
.lp-single-course .lp-button,
.lp-single-course .lp-btn,
.lp-single-course button.lp-button,
.lp-single-course a.lp-button {
	border-radius: 12px;
	padding: 16px 32px;
	font-weight: 700;
	font-size: 16px;
	text-transform: none;
	letter-spacing: 0.5px;
	box-shadow: 0 8px 24px var(--dark-violet-shadow);
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.lp-single-course .lp-button:hover,
.lp-single-course .lp-btn:hover,
.lp-single-course button.lp-button:hover,
.lp-single-course a.lp-button:hover {
	transform: translateY(-3px);
	box-shadow: 0 12px 32px var(--dark-violet-shadow-strong);
}

/* Better form styling */
.lp-single-course input[type="text"],
.lp-single-course input[type="email"],
.lp-single-course input[type="number"],
.lp-single-course select,
.lp-single-course textarea {
	border-radius: 12px;
	padding: 14px 20px;
	font-size: 15px;
	transition: all 0.3s ease;
}

.lp-single-course input[type="text"]:focus,
.lp-single-course input[type="email"]:focus,
.lp-single-course input[type="number"]:focus,
.lp-single-course select:focus,
.lp-single-course textarea:focus {
	border-color: var(--dark-violet-secondary);
	box-shadow: 0 0 0 3px rgba(139, 45, 217, 0.3);
	transform: translateY(-2px);
}

/* Improved section item styling */
.lp-single-course .dark-violet-sections .section-item {
	border-radius: 12px;
	padding: 16px;
	margin-bottom: 8px;
	background: rgba(26, 11, 46, 0.5);
	border-left: 3px solid var(--dark-violet-secondary);
	transition: all 0.3s ease;
}

.lp-single-course .dark-violet-sections .section-item:hover {
	background: rgba(26, 11, 46, 0.7);
	border-left-color: var(--dark-violet-primary);
	transform: translateX(4px);
	box-shadow: 0 4px 12px rgba(139, 45, 217, 0.2);
}

/* RTL support for section items */
[dir="rtl"] .lp-single-course .dark-violet-sections .section-item {
	border-left: none;
	border-right: 3px solid var(--dark-violet-secondary);
}

[dir="rtl"] .lp-single-course .dark-violet-sections .section-item:hover {
	border-right-color: var(--dark-violet-primary);
	transform: translateX(-4px);
}

/* Better tab navigation */
.lp-single-course .dark-violet-nav-tabs .tab-label {
	border-radius: 12px;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.lp-single-course .dark-violet-nav-tabs .course-nav.active .tab-label {
	background: var(--dark-violet-gradient);
	color: var(--dark-violet-text);
	box-shadow: 0 4px 16px var(--dark-violet-shadow);
}

/* Improved readability with better line heights */
.lp-single-course p,
.lp-single-course li,
.lp-single-course .course-description,
.lp-single-course .dark-violet-description {
	line-height: 1.8;
}

.lp-single-course h1,
.lp-single-course h2,
.lp-single-course h3 {
	line-height: 1.3;
	margin-bottom: 1em;
}

/* Better image handling */
.lp-single-course img {
	max-width: 100%;
	height: auto;
	border-radius: 12px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
}

/* Loading states */
.lp-single-course .loading,
.lp-single-course .lp-loading {
	opacity: 0.6;
	pointer-events: none;
}

/* Print styles */
@media print {
	.lp-single-course .course-summary-sidebar,
	.lp-single-course .dark-violet-nav-tabs,
	.lp-single-course .dark-violet-buttons {
		display: none;
	}
	
	.lp-single-course .course-detail-wrapper {
		max-width: 100%;
		padding: 0;
	}
	
	.lp-single-course {
		background: white;
		color: black;
	}
	
	.lp-single-course * {
		color: black !important;
		background: white !important;
	}
}

/* ============================================
   Single Instructor Page - Organized Layout
   ============================================ */

/* Main instructor page container */
.lp-single-instructor {
	max-width: 1400px;
	margin: 0 auto;
	padding: 40px 20px;
	display: flex;
	flex-direction: column;
	gap: 40px;
}

/* Instructor Info Section - Organized */
.lp-single-instructor__info {
	background: rgba(45, 27, 78, 0.6);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(139, 45, 217, 0.3);
	border-radius: 24px;
	padding: 40px;
	display: flex;
	flex-direction: column;
	gap: 30px;
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}

.lp-single-instructor__info__wrapper {
	display: flex;
	flex-direction: row;
	gap: 30px;
	align-items: flex-start;
}

/* Instructor Avatar - Organized */
.lp-single-instructor__info .instructor-avatar {
	flex-shrink: 0;
	width: 150px;
	height: 150px;
	border-radius: 50%;
	overflow: hidden;
	border: 4px solid var(--dark-violet-secondary);
	box-shadow: 0 8px 24px var(--dark-violet-shadow);
	background: var(--dark-violet-card);
	display: flex;
	align-items: center;
	justify-content: center;
}

.lp-single-instructor__info .instructor-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 50%;
}

/* Instructor Details - Organized */
.lp-single-instructor__info__right {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.lp-single-instructor__info__right__content {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

/* Instructor Name - Organized */
.lp-single-instructor__info .instructor-name {
	font-size: 32px;
	font-weight: 700;
	color: var(--dark-violet-text);
	margin: 0;
	line-height: 1.3;
}

.lp-single-instructor__info .instructor-name a {
	color: var(--dark-violet-text);
	text-decoration: none;
	transition: color 0.3s ease;
}

.lp-single-instructor__info .instructor-name a:hover {
	color: var(--dark-violet-secondary);
}

/* Instructor Description - Organized */
.lp-single-instructor__info .instructor-description {
	color: var(--dark-violet-text-light);
	font-size: 16px;
	line-height: 1.8;
	margin: 0;
}

.lp-single-instructor__info .instructor-description p {
	margin: 0 0 12px 0;
}

.lp-single-instructor__info .instructor-description p:last-child {
	margin-bottom: 0;
}

/* Instructor Stats - Organized */
.lp-single-instructor__info__right__content .wrapper-instructor-total-courses,
.lp-single-instructor__info__right__content .wrapper-instructor-total-students {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 20px;
	background: rgba(106, 13, 173, 0.2);
	border-radius: 12px;
	border: 1px solid rgba(139, 45, 217, 0.3);
	font-size: 16px;
	color: var(--dark-violet-text-light);
}

.lp-single-instructor__info__right__content .lp-ico {
	width: 24px;
	height: 24px;
	flex-shrink: 0;
}

.lp-single-instructor__info__right__content .lp-ico svg {
	width: 100%;
	height: 100%;
	fill: var(--dark-violet-secondary);
}

.lp-single-instructor__info__right__content .instructor-total-courses,
.lp-single-instructor__info__right__content .instructor-total-students {
	font-weight: 700;
	color: var(--dark-violet-text);
	font-size: 18px;
}

/* Instructor Social Links - Organized */
.lp-single-instructor__info .instructor-social {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 8px;
}

.lp-single-instructor__info .instructor-social a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: rgba(106, 13, 173, 0.3);
	border: 1px solid rgba(139, 45, 217, 0.4);
	color: var(--dark-violet-text-light);
	text-decoration: none;
	transition: all 0.3s ease;
}

.lp-single-instructor__info .instructor-social a:hover {
	background: var(--dark-violet-secondary);
	border-color: var(--dark-violet-secondary);
	color: var(--dark-violet-text);
	transform: translateY(-2px);
	box-shadow: 0 4px 12px var(--dark-violet-shadow);
}

.lp-single-instructor__info .instructor-social a svg {
	width: 20px;
	height: 20px;
}

/* Courses Section - Organized Grid */
.lp-single-instructor__courses {
	margin-top: 20px;
}

.lp-single-instructor__courses .section-title {
	font-size: 28px;
	font-weight: 700;
	color: var(--dark-violet-text);
	margin: 0 0 30px 0;
	padding-bottom: 16px;
	border-bottom: 2px solid rgba(139, 45, 217, 0.3);
}

/* Courses List - Organized Grid Layout */
.lp-single-instructor .ul-instructor-courses {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
	gap: 30px;
	padding: 0 !important;
	margin: 0 !important;
	list-style: none;
}

.lp-single-instructor .ul-instructor-courses li {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* Course Item - Organized Card */
.lp-single-instructor .ul-instructor-courses .course-item {
	background: rgba(45, 27, 78, 0.6);
	backdrop-filter: blur(20px);
	border: 1px solid rgba(139, 45, 217, 0.3);
	border-radius: 20px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: all 0.3s ease;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
	height: 100%;
}

.lp-single-instructor .ul-instructor-courses .course-item:hover {
	transform: translateY(-4px);
	box-shadow: 0 12px 32px rgba(106, 13, 173, 0.4);
	border-color: var(--dark-violet-secondary);
}

/* Course Thumbnail - Organized */
.lp-single-instructor .ul-instructor-courses .course-thumbnail {
	width: 100%;
	height: 200px;
	overflow: hidden;
	position: relative;
	background: var(--dark-violet-card);
}

.lp-single-instructor .ul-instructor-courses .course-thumbnail img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}

.lp-single-instructor .ul-instructor-courses .course-item:hover .course-thumbnail img {
	transform: scale(1.05);
}

/* Course Content - Organized */
.lp-single-instructor .ul-instructor-courses .course-content {
	padding: 24px;
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

/* Course Title - Organized */
.lp-single-instructor .ul-instructor-courses .course-title,
.lp-single-instructor .ul-instructor-courses .wap-course-title {
	font-size: 20px;
	font-weight: 700;
	color: var(--dark-violet-text);
	margin: 0;
	line-height: 1.4;
}

.lp-single-instructor .ul-instructor-courses .course-title a,
.lp-single-instructor .ul-instructor-courses .wap-course-title a {
	color: var(--dark-violet-text);
	text-decoration: none;
	transition: color 0.3s ease;
	display: block;
}

.lp-single-instructor .ul-instructor-courses .course-title a:hover,
.lp-single-instructor .ul-instructor-courses .wap-course-title a:hover {
	color: var(--dark-violet-secondary);
}

/* Course Meta - Organized */
.lp-single-instructor .ul-instructor-courses .course-wrap-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	padding: 0;
	margin: 0;
	align-items: center;
}

.lp-single-instructor .ul-instructor-courses .course-info {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 16px;
	align-items: center;
	margin: 0;
	padding: 0;
	border: none;
}

/* Course Price - Organized */
.lp-single-instructor .ul-instructor-courses .course-price {
	font-size: 18px;
	font-weight: 700;
	color: var(--dark-violet-secondary);
	margin: 0;
}

/* Course Meta Items - Organized */
.lp-single-instructor .ul-instructor-courses .course-meta-item {
	display: flex;
	align-items: center;
	gap: 6px;
	color: var(--dark-violet-text-light);
	font-size: 14px;
}

.lp-single-instructor .ul-instructor-courses .course-meta-item svg {
	width: 16px;
	height: 16px;
	fill: var(--dark-violet-secondary);
}

/* Course Read More Button - Organized */
.lp-single-instructor .ul-instructor-courses .course-readmore {
	margin-top: auto;
	padding-top: 16px;
}

.lp-single-instructor .ul-instructor-courses .course-readmore a {
	display: inline-block;
	padding: 12px 24px;
	background: var(--dark-violet-gradient);
	color: var(--dark-violet-text);
	text-decoration: none;
	border-radius: 12px;
	font-weight: 600;
	transition: all 0.3s ease;
	text-align: center;
	width: 100%;
	box-shadow: 0 4px 12px var(--dark-violet-shadow);
}

.lp-single-instructor .ul-instructor-courses .course-readmore a:hover {
	background: var(--dark-violet-gradient-hover);
	transform: translateY(-2px);
	box-shadow: 0 6px 20px var(--dark-violet-shadow-strong);
}

/* Responsive Design - Organized */
@media (max-width: 1024px) {
	.lp-single-instructor {
		padding: 30px 15px;
		gap: 30px;
	}
	
	.lp-single-instructor__info {
		padding: 30px;
	}
	
	.lp-single-instructor__info__wrapper {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}
	
	.lp-single-instructor .ul-instructor-courses {
		grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
		gap: 24px;
	}
}

@media (max-width: 768px) {
	.lp-single-instructor {
		padding: 20px 15px;
		gap: 24px;
	}
	
	.lp-single-instructor__info {
		padding: 24px;
		border-radius: 16px;
	}
	
	.lp-single-instructor__info .instructor-avatar {
		width: 120px;
		height: 120px;
	}
	
	.lp-single-instructor__info .instructor-name {
		font-size: 24px;
	}
	
	.lp-single-instructor__courses .section-title {
		font-size: 22px;
	}
	
	.lp-single-instructor .ul-instructor-courses {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	
	.lp-single-instructor .ul-instructor-courses .course-content {
		padding: 20px;
	}
}

@media (max-width: 480px) {
	.lp-single-instructor__info {
		padding: 20px;
	}
	
	.lp-single-instructor__info .instructor-avatar {
		width: 100px;
		height: 100px;
	}
	
	.lp-single-instructor__info .instructor-name {
		font-size: 20px;
	}
	
	.lp-single-instructor__info .instructor-description {
		font-size: 14px;
	}
}

/* RTL Support - Organized */
[dir="rtl"] .lp-single-instructor__info__wrapper {
	flex-direction: row-reverse;
}

[dir="rtl"] .lp-single-instructor__info .instructor-social {
	direction: rtl;
}

[dir="rtl"] .lp-single-instructor .ul-instructor-courses .course-info {
	flex-direction: row-reverse;
}

/* Hide unnecessary elements for cleaner look */
.lp-single-instructor .ul-instructor-courses .course-excerpt,
.lp-single-instructor .ul-instructor-courses .course-short-description,
.lp-single-instructor .ul-instructor-courses .course-instructor-category {
	display: none;
}
