/* Simple Course Plugin v2.1 — Light Blue & White Theme */
/* Primary blue: #0ea5e9 | Light bg: #f0f9ff | Buttons: #16a34a */

.scp-container { max-width:1200px; margin:0 auto; padding:0 20px; }

/* Highlight beginner + level badges */
.scp-level-badge {
	display:inline-block;
	background:#dcfce7;
	color:#166534;
	font-size:12px;
	font-weight:600;
	padding:4px 10px;
	border-radius:10px;
	letter-spacing:.3px;
}

/* ── ARCHIVE HERO ── */
.scp-archive-hero {
	background:#fff !important;
	color:#0f172a;
	padding:48px 20px 32px;
	text-align:center;
	border-bottom:1px solid #e0f2fe;
}
.scp-archive-hero h1 { font-size:34px; font-weight:700; margin:0 0 10px; color:#0f172a; }
.scp-archive-hero p { font-size:16px; color:#64748b; margin:0; }

/* ── ARCHIVE LAYOUT ── */
.scp-archive-wrap {
	display:grid;
	grid-template-columns:240px 1fr;
	gap:28px;
	padding-top:32px;
	padding-bottom:60px;
}
@media(max-width:768px){ .scp-archive-wrap { grid-template-columns:1fr; } }

/* ── SIDEBAR ── */
.scp-sidebar-box {
	background:#fff;
	border:1px solid #e0f2fe;
	border-radius:16px;
	padding:20px;
	position:sticky;
	top:20px;
	box-shadow:0 1px 3px rgba(14,165,233,.05);
}
.scp-sidebar-title { font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.8px; color:#0284c7; margin:0 0 14px; }
.scp-cat-list { list-style:none; margin:0; padding:0; }
.scp-cat-list li { display:flex; align-items:center; justify-content:space-between; padding:9px 0; border-bottom:1px solid #f0f9ff; }
.scp-cat-list li:last-child { border-bottom:none; }
.scp-cat-list li a { font-size:14px; color:#475569; text-decoration:none; transition:color .15s; }
.scp-cat-list li a:hover { color:#0ea5e9; }
.scp-cat-list li.active a { color:#0ea5e9; font-weight:600; }
.scp-cat-count { font-size:11px; background:#f0f9ff; color:#0284c7; padding:2px 9px; border-radius:12px; font-weight:600; }

/* ── TOOLBAR ── */
.scp-archive-toolbar { display:flex; align-items:center; justify-content:space-between; margin-bottom:20px; }
.scp-results-count { font-size:14px; color:#64748b; }

/* ── COURSE GRID ── */
.scp-archive-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:22px; }

/* ── COURSE CARD ── */
.scp-card {
	background:#fff;
	border:1px solid #e0f2fe;
	border-radius:16px;
	overflow:hidden;
	transition:transform .2s ease, box-shadow .2s ease;
	display:flex;
	flex-direction:column;
}
.scp-card:hover {
	transform:translateY(-4px);
	box-shadow:0 12px 30px rgba(14,165,233,.15);
	border-color:#0ea5e9;
}
.scp-card-img-link { display:block; }
.scp-card-img { width:100%; height:160px; object-fit:cover; display:block; }
.scp-card-img-placeholder {
	width:100%;
	height:160px;
	background:linear-gradient(135deg, #e0f2fe 0%, #bae6fd 100%);
	display:flex;
	align-items:center;
	justify-content:center;
	color:#0ea5e9;
}
.scp-card-body { padding:16px; flex:1; display:flex; flex-direction:column; }
.scp-card-cat { font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.6px; color:#0ea5e9; margin-bottom:6px; display:block; }
.scp-card-title { font-size:16px; font-weight:600; margin:0 0 6px; line-height:1.35; color:#0f172a; }
.scp-card-title a { color:inherit; text-decoration:none; }
.scp-card-title a:hover { color:#0ea5e9; }
.scp-card-instructor { font-size:13px; color:#64748b; margin:0 0 10px; }
.scp-card-meta { display:flex; flex-wrap:wrap; gap:8px; font-size:12px; color:#94a3b8; margin-bottom:14px; flex:1; }
.scp-card-meta span + span::before { content:'·'; margin-right:6px; }
.scp-card-footer { display:flex; align-items:center; justify-content:space-between; margin-top:auto; padding-top:12px; border-top:1px solid #f0f9ff; }

/* ── PRICES ── */
.scp-price { font-size:18px; font-weight:700; color:#0f172a; }
.scp-price.scp-price-free { color:#16a34a; }
.scp-old-price { font-size:14px; font-weight:400; color:#94a3b8; text-decoration:line-through; margin-left:6px; }
.scp-price-large { font-size:32px; font-weight:700; color:#0f172a; margin-bottom:18px; display:flex; align-items:baseline; gap:10px; }

/* ── BUTTONS — GREEN PRIMARY ── */
.scp-btn {
	display:inline-block;
	padding:11px 22px;
	border-radius:10px;
	font-size:14px;
	font-weight:600;
	text-decoration:none;
	cursor:pointer;
	border:1.5px solid #e0f2fe;
	color:#0284c7;
	background:#fff;
	text-align:center;
	transition:all .15s ease;
}
.scp-btn:hover { background:#f0f9ff; border-color:#0ea5e9; color:#0ea5e9; }

.scp-btn-primary {
	background:#16a34a;
	color:#fff !important;
	border-color:#16a34a;
	box-shadow:0 2px 8px rgba(22,163,74,.25);
}
.scp-btn-primary:hover {
	background:#15803d;
	border-color:#15803d;
	box-shadow:0 4px 12px rgba(22,163,74,.35);
	transform:translateY(-1px);
}

.scp-btn-paypal {
	background:#ffc439;
	color:#003087 !important;
	border-color:#ffc439;
}
.scp-btn-paypal:hover { background:#e6b030; border-color:#e6b030; }

.scp-btn-full { display:block; width:100%; margin-bottom:10px; padding:13px; font-size:15px; }
.scp-btn-sm { padding:7px 14px; font-size:12px; border-radius:8px; }
.scp-btn-lg { padding:14px 28px; font-size:16px; }

/* ── SINGLE HERO ── */
.scp-single-hero {
	background:#fff !important;
	padding:42px 0 32px;
	color:#0f172a;
	border-bottom:1px solid #e0f2fe;
}
.scp-hero-inner {
	display:grid;
	grid-template-columns:1fr 340px;
	gap:36px;
	align-items:start;
}
@media(max-width:860px){ .scp-hero-inner { grid-template-columns:1fr; } }
.scp-hero-content { min-width:0; }
.scp-hero-level { margin-bottom:14px; }
.scp-login-hint {
	background:#f0f9ff;
	border:1px solid #bae6fd;
	border-radius:10px;
	padding:9px 12px;
	margin-bottom:14px;
	font-size:13px;
	color:#0f172a;
	text-align:center;
}
.scp-login-hint a { color:#0ea5e9; font-weight:600; text-decoration:none; }
.scp-login-hint a:hover { text-decoration:underline; }

.scp-breadcrumb { font-size:13px; color:#64748b; margin-bottom:14px; }
.scp-breadcrumb a { color:#0ea5e9; text-decoration:none; }
.scp-breadcrumb a:hover { text-decoration:underline; }
.scp-breadcrumb span { margin:0 6px; color:#cbd5e1; }
.scp-single-title { font-size:30px; font-weight:700; color:#0f172a; margin:0 0 14px; line-height:1.25; }
.scp-single-excerpt { font-size:16px; color:#475569; margin:0 0 18px; line-height:1.65; }
.scp-hero-meta { display:flex; flex-wrap:wrap; gap:14px; font-size:13px; color:#64748b; }
.scp-hero-meta span + span::before { content:'·'; margin-right:12px; color:#cbd5e1; }

/* ── BUY BOX ── */
.scp-buy-box {
	background:#fff;
	border-radius:14px;
	overflow:hidden;
	border:1px solid #e0f2fe;
	box-shadow:0 4px 16px rgba(14,165,233,.08);
	color:#0f172a;
}
.scp-buy-video { width:100%; background:#000; }
.scp-buy-thumb { width:100%; height:200px; object-fit:cover; display:block; }
.scp-buy-body { padding:24px; }
.scp-access-badge {
	background:#dcfce7;
	color:#166534;
	font-size:13px;
	font-weight:600;
	padding:10px 14px;
	border-radius:10px;
	margin-bottom:16px;
	text-align:center;
}
.scp-guarantee { font-size:12px; color:#64748b; text-align:center; margin-top:10px; }
.scp-includes { border-top:1px solid #f0f9ff; padding-top:16px; margin-top:16px; }
.scp-includes-title { font-size:13px; font-weight:700; margin:0 0 10px; color:#0f172a; }
.scp-include-item { display:flex; align-items:center; gap:10px; font-size:13px; color:#475569; padding:5px 0; }

/* ── SINGLE BODY ── */
.scp-single-body {
	padding-top:40px;
	padding-bottom:60px;
	background:#f0f9ff;
	min-height:400px;
}
.scp-course-description { max-width:800px; margin-bottom:40px; background:#fff; padding:28px; border-radius:16px; border:1px solid #e0f2fe; }
.scp-course-description h2 { font-size:22px; font-weight:700; margin:0 0 16px; color:#0f172a; padding-bottom:12px; border-bottom:2px solid #e0f2fe; }
.scp-course-description p { font-size:15px; line-height:1.8; color:#475569; margin-bottom:16px; }

/* ── CURRICULUM ── */
.scp-curriculum-section { margin-bottom:40px; }
.scp-curriculum-section h2 { font-size:24px; font-weight:700; margin:0 0 6px; color:#0f172a; }
.scp-curriculum-meta { font-size:14px; color:#64748b; margin:0 0 20px; }
.scp-section {
	background:#fff;
	border:1px solid #e0f2fe;
	border-radius:14px;
	overflow:hidden;
	margin-bottom:14px;
}
.scp-section-title {
	display:flex;
	align-items:center;
	gap:10px;
	padding:14px 20px;
	background:#f0f9ff;
	font-size:15px;
	font-weight:700;
	color:#0f172a;
	border-bottom:1px solid #e0f2fe;
}
.scp-section-title svg { flex-shrink:0; color:#0ea5e9; }
.scp-section-count { margin-left:auto; font-size:12px; color:#64748b; font-weight:500; background:#fff; padding:3px 10px; border-radius:10px; }
.scp-lesson-item {
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding:13px 20px;
	border-bottom:1px solid #f0f9ff;
	transition:background .15s;
}
.scp-lesson-item:hover { background:#f8fbff; }
.scp-lesson-item:last-child { border-bottom:none; }
.scp-lesson-item-left { display:flex; align-items:center; gap:12px; flex:1; min-width:0; }
.scp-lesson-icon {
	width:30px;
	height:30px;
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	flex-shrink:0;
}
.scp-lesson-icon.unlocked { background:#dbeafe; color:#0ea5e9; }
.scp-lesson-icon.locked { background:#f1f5f9; color:#94a3b8; }
.scp-lesson-name { font-size:14px; color:#0f172a; text-decoration:none; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-weight:500; }
a.scp-lesson-name:hover { color:#0ea5e9; }
.scp-lesson-locked-name { color:#94a3b8; }
.scp-lesson-item-right { display:flex; align-items:center; gap:10px; flex-shrink:0; }
.scp-free-tag { font-size:11px; background:#dcfce7; color:#166534; padding:3px 9px; border-radius:10px; font-weight:600; }
.scp-lesson-dur { font-size:12px; color:#94a3b8; }

/* ── RELATED ── */
.scp-related { margin-top:50px; padding-top:32px; border-top:1px solid #e0f2fe; }
.scp-related h2 { font-size:24px; font-weight:700; margin:0 0 22px; color:#0f172a; }

/* ── LESSON PAGE ── */
/* Override common theme content width constraints on lesson pages only */
body.scp-on-lesson .site-main,
body.scp-on-lesson .content-area,
body.scp-on-lesson .entry-content,
body.scp-on-lesson main#main,
body.scp-on-lesson main#primary,
body.scp-on-lesson #content,
body.scp-on-lesson .site-content,
body.scp-on-lesson article,
body.scp-on-lesson .entry-content > .wp-block-group,
body.scp-on-lesson .wp-site-blocks {
	max-width:100% !important;
	width:100% !important;
	padding-left:0 !important;
	padding-right:0 !important;
	margin-left:0 !important;
	margin-right:0 !important;
}

.scp-lesson-page {
	background:#f0f9ff;
	min-height:100vh;
	padding-bottom:40px;
}
.scp-lesson-topbar {
	background:#fff;
	padding:12px 24px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	border-bottom:1px solid #e0f2fe;
}
.scp-back-link { font-size:14px; color:#0ea5e9; text-decoration:none; display:flex; align-items:center; gap:6px; font-weight:500; }
.scp-back-link:hover { color:#0284c7; }
.scp-lesson-nav-btns { display:flex; gap:8px; }

.scp-lesson-video-wrap {
	width:100%;
	max-width:1200px;
	margin:24px auto 0;
	background:#000;
	aspect-ratio:16/9;
	max-height:70vh;
	border-radius:14px;
	overflow:hidden;
	box-shadow:0 8px 30px rgba(0,0,0,0.15);
}
.scp-lesson-video-wrap iframe { width:100%; height:100%; display:block; border:none; }

.scp-lesson-content-wrap {
	background:#fff;
	max-width:1200px;
	margin:24px auto;
	padding:34px 40px 48px;
	border-radius:14px;
	border:1px solid #e0f2fe;
}
.scp-lesson-header {
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:14px;
	margin-bottom:20px;
	padding-bottom:18px;
	border-bottom:2px solid #f0f9ff;
}
.scp-lesson-title { font-size:26px; font-weight:700; margin:0; flex:1; color:#0f172a; }
.scp-lesson-duration { font-size:13px; color:#64748b; white-space:nowrap; background:#f0f9ff; padding:4px 10px; border-radius:8px; }
.scp-preview-badge { font-size:12px; background:#dcfce7; color:#166534; padding:4px 10px; border-radius:10px; font-weight:600; }

/* ── ATTACHMENTS ── */
.scp-attachments {
	background:#f0f9ff;
	border:1px solid #e0f2fe;
	border-radius:12px;
	padding:18px;
	margin-bottom:24px;
}
.scp-attachments-title { font-size:14px; font-weight:700; color:#0f172a; margin:0 0 12px; }
.scp-attachments-list { list-style:none; margin:0; padding:0; }
.scp-attachments-list li { margin-bottom:6px; }
.scp-attachments-list li:last-child { margin-bottom:0; }
.scp-attachments-list a {
	display:flex;
	align-items:center;
	gap:12px;
	padding:10px 14px;
	background:#fff;
	border:1px solid #e0f2fe;
	border-radius:10px;
	text-decoration:none;
	color:#0f172a;
	transition:all .15s;
}
.scp-attachments-list a:hover {
	border-color:#0ea5e9;
	background:#f0f9ff;
	transform:translateX(2px);
}
.scp-att-icon { font-size:20px; flex-shrink:0; }
.scp-att-name { flex:1; font-size:14px; font-weight:500; }
.scp-att-download { font-size:12px; font-weight:600; color:#16a34a; background:#dcfce7; padding:5px 11px; border-radius:8px; }

.scp-lesson-body { color:#334155; }
.scp-lesson-body p { font-size:15px; line-height:1.8; color:#475569; margin-bottom:16px; }
.scp-lesson-body h2, .scp-lesson-body h3 { margin:30px 0 14px; color:#0f172a; }
.scp-lesson-body img { max-width:100%; border-radius:12px; }
.scp-lesson-body a { color:#0ea5e9; }
.scp-lesson-body iframe { max-width:100%; border-radius:12px; }
.scp-lesson-footer-nav {
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin-top:44px;
	padding-top:26px;
	border-top:2px solid #f0f9ff;
}

/* ── LOCKED ── */
.scp-lesson-locked {
	background:#fff;
	max-width:540px;
	margin:80px auto;
	text-align:center;
	padding:54px 32px;
	border-radius:20px;
	box-shadow:0 10px 40px rgba(0,0,0,.2);
}
.scp-locked-icon { color:#cbd5e1; margin-bottom:22px; }
.scp-lesson-locked h2 { font-size:24px; font-weight:700; margin:0 0 10px; color:#0f172a; }
.scp-lesson-locked p { font-size:15px; color:#64748b; margin:0 0 26px; }

/* ── NOTICES / FORMS ── */
.scp-notice {
	font-size:15px;
	color:#475569;
	padding:20px;
	background:#f0f9ff;
	border-radius:12px;
	border:1px solid #e0f2fe;
}
.scp-notice a { color:#0ea5e9; font-weight:600; }
.scp-success {
	background:#dcfce7;
	border:1px solid #86efac;
	color:#166534;
	padding:16px 20px;
	border-radius:12px;
	margin-bottom:24px;
	font-size:15px;
}
.scp-success a { color:#166534; font-weight:700; }
.scp-error {
	background:#fee2e2;
	border:1px solid #fecaca;
	color:#991b1b;
	padding:14px 18px;
	border-radius:10px;
	margin-bottom:16px;
	font-size:14px;
}

.scp-login-wrap {
	max-width:440px;
	margin:50px auto;
	background:#fff;
	padding:36px 32px;
	border-radius:16px;
	border:1px solid #e0f2fe;
	box-shadow:0 4px 20px rgba(14,165,233,.08);
}
.scp-form-row { margin-bottom:18px; }
.scp-form-row label { display:block; font-size:14px; font-weight:600; margin-bottom:6px; color:#0f172a; }
.scp-form-row input {
	width:100%;
	padding:11px 14px;
	border:1.5px solid #e0f2fe;
	border-radius:10px;
	font-size:14px;
	box-sizing:border-box;
	background:#f8fbff;
	transition:border-color .15s, background .15s;
}
.scp-form-row input:focus {
	outline:none;
	border-color:#0ea5e9;
	background:#fff;
}
input[type=submit].scp-btn { cursor:pointer; }

/* ── PAGINATION ── */
.scp-archive-content .page-numbers {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:40px;
	height:40px;
	padding:0 12px;
	border-radius:10px;
	font-size:14px;
	font-weight:500;
	color:#475569;
	text-decoration:none;
	border:1px solid #e0f2fe;
	background:#fff;
	margin:4px;
}
.scp-archive-content .page-numbers:hover { border-color:#0ea5e9; color:#0ea5e9; }
.scp-archive-content .page-numbers.current { background:#0ea5e9; color:#fff; border-color:#0ea5e9; }
.scp-archive-content nav.navigation { margin-top:36px; text-align:center; }

/* ── WC INTEGRATION ── */
.scp-wc-courses-included { margin-top:20px; }

/* ── MY ACCOUNT DASHBOARD ── */
.scp-account-wrap, .scp-orders-wrap, .scp-mycourses-wrap {
	max-width:900px;
	margin:30px auto;
	padding:0 20px;
}
.scp-account-header {
	display:flex;
	align-items:center;
	justify-content:space-between;
	background:#fff;
	padding:24px 28px;
	border-radius:14px;
	border:1px solid #e0f2fe;
	margin-bottom:22px;
}
.scp-account-cards {
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
	gap:14px;
	margin-bottom:30px;
}
.scp-account-card {
	display:flex;
	align-items:center;
	gap:14px;
	background:#fff;
	border:1px solid #e0f2fe;
	border-radius:14px;
	padding:18px;
	text-decoration:none;
	color:#0f172a;
	transition:border-color .15s, transform .15s, box-shadow .15s;
}
.scp-account-card:hover {
	border-color:#0ea5e9;
	transform:translateY(-2px);
	box-shadow:0 6px 18px rgba(14,165,233,.12);
	color:#0f172a;
}
.scp-card-icon {
	font-size:30px;
	width:54px;
	height:54px;
	background:#f0f9ff;
	border-radius:12px;
	display:flex;
	align-items:center;
	justify-content:center;
	flex-shrink:0;
}
.scp-card-title-lg {
	font-size:16px;
	font-weight:700;
	margin-bottom:2px;
}
.scp-card-sub {
	font-size:13px;
	color:#64748b;
}
.scp-account-section {
	background:#fff;
	border:1px solid #e0f2fe;
	border-radius:14px;
	padding:24px 28px;
	margin-bottom:18px;
}
.scp-account-section h3 {
	margin:0 0 16px;
	font-size:18px;
	font-weight:700;
	color:#0f172a;
	padding-bottom:12px;
	border-bottom:1px solid #f0f9ff;
}

/* ── ORDERS TABLE ── */
.scp-orders-table {
	width:100%;
	border-collapse:separate;
	border-spacing:0;
	background:#fff;
	border:1px solid #e0f2fe;
	border-radius:14px;
	overflow:hidden;
}
.scp-orders-table th {
	text-align:left;
	font-size:12px;
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:.6px;
	color:#0284c7;
	background:#f0f9ff;
	padding:12px 14px;
	border-bottom:1px solid #e0f2fe;
}
.scp-orders-table td {
	padding:14px;
	border-bottom:1px solid #f0f9ff;
	font-size:14px;
	color:#0f172a;
	vertical-align:middle;
}
.scp-orders-table tbody tr:last-child td { border-bottom:none; }
.scp-orders-table tbody tr:hover { background:#f8fbff; }
.scp-order-courses {
	list-style:none;
	margin:0;
	padding:0;
}
.scp-order-courses li { margin-bottom:3px; }
.scp-order-courses a {
	color:#0ea5e9;
	text-decoration:none;
	font-weight:500;
}
.scp-order-courses a:hover { text-decoration:underline; }
.scp-order-status {
	display:inline-block;
	padding:3px 10px;
	border-radius:10px;
	font-size:12px;
	font-weight:600;
}
.scp-status-completed { background:#dcfce7; color:#166534; }
.scp-status-processing { background:#dbeafe; color:#1d4ed8; }
.scp-status-on-hold { background:#fef3c7; color:#92400e; }
.scp-status-refunded { background:#fee2e2; color:#991b1b; }
.scp-status-cancelled, .scp-status-failed { background:#f1f5f9; color:#64748b; }

@media(max-width:680px){
	.scp-orders-table thead { display:none; }
	.scp-orders-table tr { display:block; padding:14px; border-bottom:1px solid #f0f9ff; }
	.scp-orders-table td { display:block; padding:4px 0; border:none; }
	.scp-orders-table td::before {
		content:attr(data-label);
		font-weight:600;
		color:#0284c7;
		display:inline-block;
		min-width:80px;
	}
}
