/* Tarhestan — Video player (shortcode [tarhestan_video]). Centered, with a logo, a cover and course promotions. */

.tvp{
	--tvp-brand:#82151d;
	--tvp-brand-hi:#bf1e2e;
	--tvp-ink:#1f1518;
	--tvp-muted:#6b5a5d;
	--tvp-line:#ecdfe0;
	--tvp-btn-bg:rgba(130,21,29,.81);
	--tvp-btn-grad:linear-gradient(to right,rgba(130,21,29,.81) 0%,rgb(191,30,46) 50%,rgba(130,21,29,.81) 100%);
	position:relative;max-width:960px;margin:1.5rem auto;direction:rtl;text-align:right;
	font-family:inherit;color:var(--tvp-ink);
}
.tvp *,.tvp *::before,.tvp *::after{box-sizing:border-box}

/* ---------- Stage (16:9) ---------- */
.tvp__stage{position:relative;aspect-ratio:16/9;overflow:hidden;background:#000;border-radius:16px;box-shadow:0 20px 40px -26px rgba(31,21,24,.6)}
.tvp__video,.tvp__frame{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;background:#000}

/* ---------- Logo: small, top-right corner ---------- */
.tvp__logo{
	position:absolute;top:12px;right:12px;z-index:3;width:64px;height:auto;pointer-events:none;
	opacity:.92;filter:drop-shadow(0 2px 6px rgba(0,0,0,.45));
}

/* ---------- Cover (before the video starts) ---------- */
.tvp__cover{
	position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;
	padding:1.5rem;text-align:center;color:var(--tvp-ink);
	background:#fff;
}
.tvp__cover[hidden]{display:none}
.tvp__cover-logo{width:110px;height:auto;max-width:30%}
.tvp__cover-title{margin:0;max-width:34rem;font-size:clamp(1.05rem,2.4vw,1.6rem);font-weight:900;line-height:1.7;color:var(--tvp-ink)}
.tvp__play{
	display:grid;place-items:center;width:72px;height:72px;margin:.25rem 0 0;padding:0;border:0;border-radius:50%;
	background-color:var(--tvp-btn-bg);background-image:var(--tvp-btn-grad);color:#fff;font-size:1.5rem;line-height:1;cursor:pointer;
	box-shadow:0 14px 30px -10px rgba(0,0,0,.6);transition:filter .2s ease,transform .2s ease;
}
.tvp__play:hover{filter:brightness(1.1);transform:scale(1.04)}
.tvp__play:focus-visible{outline:2px solid #fff;outline-offset:4px}

/* ---------- Course promotion card (left side, like a video card) ---------- */
.tvp__promos{position:absolute;left:14px;bottom:60px;z-index:5;pointer-events:none}
/* A thin strip: small thumbnail, one line of title, and the link. */
.tvp__promo{
	position:relative;display:flex;align-items:center;gap:.6rem;
	max-width:min(380px,calc(100vw - 4rem));height:52px;padding:.35rem .5rem .35rem .35rem;margin:0;
	background:rgba(255,255,255,.97);color:var(--tvp-ink);border-radius:10px;box-shadow:0 8px 20px -10px rgba(0,0,0,.5);
	opacity:0;transform:translateX(-10px);transition:opacity .25s ease,transform .25s ease;pointer-events:auto;
}
.tvp__promo.is-visible{opacity:1;transform:none}
.tvp__promo-media{flex:none;display:block;width:76px;height:42px;overflow:hidden;border-radius:6px;background:#f3ecec}
.tvp__promo-img{display:block;width:100%;height:100%;object-fit:cover}
.tvp__promo-body{display:flex;align-items:center;gap:.5rem;min-width:0;flex:1}
.tvp__promo-label{display:none}
.tvp__promo-title{margin:0!important;min-width:0!important;flex:1!important;font-size:.82rem!important;font-weight:800!important;line-height:1.4!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.tvp__promo-title a{color:var(--tvp-ink);text-decoration:none}
.tvp__promo-teacher,.tvp__promo-price{display:none}
.tvp__promo-btn{
	flex:none!important;display:inline-flex!important;align-items:center!important;min-height:28px!important;padding:0 .7rem!important;
	border-radius:7px!important;background-color:var(--tvp-btn-bg)!important;background-image:var(--tvp-btn-grad)!important;color:#fff!important;
	font-size:.74rem!important;font-weight:800!important;text-decoration:none!important;transition:filter .2s ease!important;
}
.tvp__promo-btn:hover{filter:brightness(1.1);color:#fff}
.tvp__promo-close{
	flex:none;display:grid;place-items:center;width:22px;height:22px;margin:0;padding:0;border:0;border-radius:50%;
	background:rgba(31,21,24,.08);color:var(--tvp-ink);font-size:.95rem;line-height:1;cursor:pointer;
}

/* ---------- Embedded player (YouTube, Vimeo) ---------- */
.tvp--embed .tvp__logo{z-index:6}

/* ---------- Link fallback ---------- */
.tvp__link{text-align:center}

@media (max-width:575px){
	.tvp__logo{width:48px;top:8px;right:8px}
	.tvp__promos{left:8px;right:8px;bottom:52px}
	.tvp__promo{max-width:100%;width:100%}
	.tvp__promo-media{width:60px;height:34px}
	.tvp__play{width:60px;height:60px}
}

@media (prefers-reduced-motion:reduce){
	.tvp__promo,.tvp__play{transition:none}
}
