/* ================= TDH Single Course (TagMango-style) ================= */
.tdh-sc{--tdh-accent:#6C5CE7;--tdh-ink:#14151a;--tdh-muted:#6b7280;--tdh-line:#e9eaee;--tdh-soft:#f6f7f9;
	color:var(--tdh-ink);max-width:1180px;margin:0 auto;font-size:15px;line-height:1.6}
.tdh-sc *{box-sizing:border-box}

/* Hero */
.tdh-sc-hero{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;
	background:linear-gradient(135deg,#1b1330 0%,#241a44 60%,#2c1e57 100%);color:#fff;
	padding:40px;border-radius:18px;margin:0 0 28px}
.tdh-sc-crumb{text-transform:uppercase;letter-spacing:.12em;font-size:12px;opacity:.7;margin:0 0 10px}
.tdh-sc-title{font-size:34px;line-height:1.15;margin:0 0 14px;color:#fff;font-weight:800}
.tdh-sc-sub{opacity:.85;margin:0 0 18px;font-size:16px}
.tdh-sc-meta{display:flex;flex-wrap:wrap;gap:10px}
.tdh-sc-meta span{background:rgba(255,255,255,.12);padding:6px 12px;border-radius:999px;font-size:13px}
.tdh-sc-hero-media{border-radius:14px;overflow:hidden;background:#000;aspect-ratio:16/9;box-shadow:0 20px 50px rgba(0,0,0,.35)}
.tdh-sc-hero-media iframe,.tdh-sc-hero-media video,.tdh-sc-hero-media img{width:100%;height:100%;object-fit:cover;display:block;border:0;aspect-ratio:16/9}
.tdh-sc-media-ph{display:flex;align-items:center;justify-content:center;height:100%;font-size:48px;color:#fff;background:#111}

/* Body layout */
.tdh-sc-body{display:grid;grid-template-columns:1fr 360px;gap:32px;align-items:start}
.tdh-sc-block{background:#fff;border:1px solid var(--tdh-line);border-radius:16px;padding:26px;margin:0 0 24px}
.tdh-sc-block h2{margin:0 0 18px;font-size:22px;display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px}
.tdh-sc-cur-meta{font-size:13px;color:var(--tdh-muted);font-weight:500}
.tdh-sc-rich :is(h2,h3){margin-top:0}
.tdh-sc-rich ul{padding-left:20px}
.tdh-sc-rich :is(.lms-tdh-enroll,.lms-tdh-enrolled,.lms-tdh-curriculum){display:none} /* hide auto-appended dupes inside content */

/* Curriculum accordion */
.tdh-sc-sec{border:1px solid var(--tdh-line);border-radius:12px;margin:0 0 12px;overflow:hidden;background:#fff}
.tdh-sc-sec>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;
	gap:12px;padding:16px 18px;font-weight:700;background:var(--tdh-soft)}
.tdh-sc-sec>summary::-webkit-details-marker{display:none}
.tdh-sc-sec>summary::after{content:"⌄";font-size:18px;color:var(--tdh-muted);transition:transform .2s}
.tdh-sc-sec[open]>summary::after{transform:rotate(180deg)}
.tdh-sc-sec-t{flex:1}
.tdh-sc-sec-c{font-size:12px;color:var(--tdh-muted);font-weight:600}
.tdh-sc-depth-1{margin:0 14px 12px;border-style:dashed}
.tdh-sc-depth-1>summary{background:#fbfbfd;font-size:14px}

.tdh-sc-lessons{list-style:none;margin:0;padding:0}
.tdh-sc-lesson{border-top:1px solid var(--tdh-line)}
.tdh-sc-lesson a,.tdh-sc-lesson.is-locked{display:flex;align-items:center;gap:12px;padding:13px 18px;text-decoration:none;color:var(--tdh-ink)}
.tdh-sc-lesson a:hover{background:#faf9ff}
.tdh-sc-lesson.is-locked{color:var(--tdh-muted)}
.tdh-sc-ic{width:24px;height:24px;flex:none;display:inline-flex;align-items:center;justify-content:center;
	background:var(--tdh-soft);border-radius:50%;font-size:11px;color:var(--tdh-accent)}
.tdh-sc-lesson.is-locked .tdh-sc-ic{color:var(--tdh-muted)}
.tdh-sc-lt{flex:1}
.tdh-sc-dur{color:var(--tdh-muted);font-size:12px;margin-left:auto}
.tdh-sc-tag{background:color-mix(in srgb,var(--tdh-accent) 15%,#fff);color:var(--tdh-accent);
	font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px}

/* Sidebar purchase card */
.tdh-sc-side{position:sticky;top:24px}
.tdh-sc-card{background:#fff;border:1px solid var(--tdh-line);border-radius:16px;overflow:hidden;box-shadow:0 12px 30px rgba(20,21,26,.08)}
.tdh-sc-card-media{aspect-ratio:16/9;background:#000}
.tdh-sc-card-media img{width:100%;height:100%;object-fit:cover;display:block}
.tdh-sc-card-body{padding:22px}
.tdh-sc-price{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:0 0 16px}
.tdh-sc-price-now{font-size:30px;font-weight:800;color:var(--tdh-ink)}
.tdh-sc-price-was{color:var(--tdh-muted);text-decoration:line-through;font-size:17px}
.tdh-sc-price-off{background:#e9fbef;color:#0f9d58;font-weight:700;font-size:12px;padding:3px 10px;border-radius:999px}

/* Enrol button (reuses helper markup .lms-tdh-btn) */
.tdh-sc-card .lms-tdh-enroll,.tdh-sc-card .lms-tdh-enrolled{margin:0 0 18px}
.tdh-sc-card .lms-tdh-btn{display:block;text-align:center;background:var(--tdh-accent);border:0;
	padding:14px 20px;border-radius:10px;color:#fff;font-weight:700;font-size:16px;text-decoration:none;width:100%}
.tdh-sc-card .lms-tdh-btn:hover{filter:brightness(.94)}
.tdh-sc-card .lms-tdh-price{display:block;margin-top:6px;text-align:center;color:var(--tdh-muted)}

.tdh-sc-includes{list-style:none;margin:6px 0 0;padding:16px 0 0;border-top:1px solid var(--tdh-line)}
.tdh-sc-includes li{padding:7px 0;color:#374151;font-size:14px}
.tdh-sc-empty{padding:20px;background:var(--tdh-soft);border:1px dashed var(--tdh-line);border-radius:12px;color:var(--tdh-muted)}

/* Responsive */
@media(max-width:960px){
	.tdh-sc-hero{grid-template-columns:1fr;padding:28px}
	.tdh-sc-title{font-size:27px}
	.tdh-sc-body{grid-template-columns:1fr}
	.tdh-sc-side{position:static;order:-1}
}

/* ---- Full-bleed single course page (the_content replacement) ---- */
.tdh-sc-fullbg{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);
	padding:28px max(18px,calc(50vw - 600px)) 64px;background:#f5f5f8}
.tdh-sc-fullbg .tdh-sc{max-width:none;margin:0}

/* Hide the theme's own post title on the single course page (our hero has it) */
.single-lms_course .wp-block-post-title,
.single-lms_course h1.entry-title,
.single-lms_course .entry-header .entry-title{display:none}

/* ================= COURSE CATALOG (cards) ================= */
.tdh-archive-main{padding:0}
.tdh-catalog-wrap{max-width:1180px;margin:0 auto;padding:36px 18px 64px}
.tdh-catalog-head{margin:0 0 26px}
.tdh-catalog-head h1{font-size:30px;font-weight:800;margin:0 0 6px}
.tdh-catalog-head p{color:#6b7280;margin:0}
.tdh-catalog{--tdh-accent:#6C5CE7}
.tdh-catalog-title{font-size:24px;font-weight:800;margin:0 0 18px}
.tdh-cc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:24px}
.tdh-cc{background:#fff;border:1px solid #e9eaee;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;
	box-shadow:0 8px 22px rgba(20,21,26,.05);transition:transform .15s,box-shadow .15s}
.tdh-cc:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(20,21,26,.10)}
.tdh-cc-thumb{position:relative;display:block;aspect-ratio:16/9;background:#15121f;overflow:hidden}
.tdh-cc-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.tdh-cc-ph{display:flex;align-items:center;justify-content:center;height:100%;color:#fff;font-size:34px}
.tdh-cc-off{position:absolute;top:10px;left:10px;background:#e11d48;color:#fff;font-size:11px;font-weight:800;padding:4px 10px;border-radius:999px}
.tdh-cc-body{padding:16px 16px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.tdh-cc-body h3{margin:0;font-size:17px;line-height:1.35}
.tdh-cc-body h3 a{color:inherit;text-decoration:none}
.tdh-cc-ex{margin:0;color:#6b7280;font-size:13px;line-height:1.5}
.tdh-cc-meta{color:#6b7280;font-size:12px}
.tdh-cc-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:8px}
.tdh-cc-price{font-weight:800;font-size:18px;color:#14151a}
.tdh-cc-price del{color:#9ca3af;font-weight:500;font-size:13px;margin-left:4px}
.tdh-cc-btn{background:var(--tdh-accent);color:#fff;font-weight:700;font-size:13px;padding:9px 16px;border-radius:9px;text-decoration:none;white-space:nowrap}
.tdh-cc-btn:hover{filter:brightness(.94);color:#fff}

/* ================= COURSE PLAYER (single lesson) ================= */
.tdh-player-bg{--tdh-accent:#6C5CE7;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);
	background:#0f1015;padding:0 max(0px,calc(50vw - 720px))}
.tdh-player{display:grid;grid-template-columns:1fr 340px;gap:0;min-height:70vh;max-width:1440px;margin:0 auto}
.tdh-player-main{background:#15161c;color:#e7e8ec;padding:0 0 40px}
.tdh-player-main .lms-tdh-player,.tdh-player-main .tdh-sc-player{margin:0}
.tdh-player-main iframe,.tdh-player-main video{width:100%;aspect-ratio:16/9;display:block;border:0;background:#000}
.tdh-player-head{padding:22px 30px 6px}
.tdh-player-back{color:#a7a9b4;text-decoration:none;font-size:13px}
.tdh-player-back:hover{color:#fff}
.tdh-player-head h1{color:#fff;font-size:24px;margin:10px 0 0;font-weight:800}
.tdh-player-desc{padding:14px 30px;color:#c7c9d3;line-height:1.7}
.tdh-player-desc a{color:#b7a8ff}
.tdh-player-main .lms-tdh-resources-box{margin:16px 30px;background:#1c1d25;border-color:#2a2b36}
.tdh-player-main .lms-tdh-resources-box h4{color:#fff}
.tdh-player-main .lms-tdh-resources-box a{color:#b7a8ff}
.tdh-player-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 30px;border-top:1px solid #23242e;margin-top:14px}
.tdh-player-prev,.tdh-player-next{color:#c7c9d3;text-decoration:none;font-weight:600;font-size:14px}
.tdh-player-prev:hover,.tdh-player-next:hover{color:#fff}
.tdh-player-nav .lms-tdh-lesson-actions{margin:0;display:flex;gap:10px;align-items:center}
.tdh-player-nav .lms-tdh-btn{background:var(--tdh-accent);border:0;color:#fff;padding:11px 20px;border-radius:9px;font-weight:700;cursor:pointer;text-decoration:none}
.tdh-player-nav .lms-tdh-btn-ghost{background:transparent;border:1px solid #3a3b47;color:#c7c9d3}
.tdh-player-nav .lms-tdh-done{color:#37d67a;font-weight:700}

.tdh-player-side{background:#111218;border-left:1px solid #23242e;color:#c7c9d3;max-height:100vh;overflow:auto;position:sticky;top:0}
.tdh-player-sidehead{padding:20px;border-bottom:1px solid #23242e}
.tdh-player-sidehead a{color:#fff;font-weight:800;text-decoration:none;display:block;margin-bottom:12px}
.tdh-player-prog{display:flex;align-items:center;gap:10px}
.tdh-player-bar{flex:1;height:7px;background:#23242e;border-radius:999px;overflow:hidden}
.tdh-player-bar span{display:block;height:100%;background:#37d67a}
.tdh-player-pct{font-size:12px;font-weight:700;color:#37d67a}
.tdh-pl-sec{border-bottom:1px solid #1d1e26}
.tdh-pl-sec>summary{list-style:none;cursor:pointer;padding:14px 20px;font-weight:700;color:#fff;font-size:14px}
.tdh-pl-sec>summary::-webkit-details-marker{display:none}
.tdh-pl-sec>summary::before{content:"▸";margin-right:8px;color:#6b6d7c}
.tdh-pl-sec[open]>summary::before{content:"▾"}
.tdh-pl-sec ul{list-style:none;margin:0;padding:0}
.tdh-pl-l a,.tdh-pl-l.is-locked{display:flex;align-items:center;gap:10px;padding:11px 20px 11px 30px;color:#b4b6c2;text-decoration:none;font-size:13px}
.tdh-pl-l a:hover{background:#191a22;color:#fff}
.tdh-pl-l.is-current a{background:#1e1a33;color:#fff;box-shadow:inset 3px 0 0 var(--tdh-accent)}
.tdh-pl-l.is-locked{color:#6b6d7c}
.tdh-pl-ic{width:20px;text-align:center;flex:none}
.tdh-pl-t{flex:1}
.tdh-pl-dur{color:#6b6d7c;font-size:11px}

/* hide theme post title on the single lesson player page */
.single-lms_lesson .wp-block-post-title,.single-lms_lesson h1.entry-title,.single-lms_lesson .entry-header .entry-title{display:none}

@media(max-width:900px){
	.tdh-player{grid-template-columns:1fr}
	.tdh-player-side{border-left:0;border-top:1px solid #23242e;position:static;max-height:none}
	.tdh-player-bg{padding:0}
}
