:root{
	--tcs-primary:#6C5CE7;
	--tcs-primary-dark:#4834d4;
	--tcs-primary-light:#efeaff;
	--tcs-bg:#f7f6fb;
	--tcs-card-bg:#ffffff;
	--tcs-text:#1e1b2e;
	--tcs-muted:#6b7280;
	--tcs-border:#ece9f7;
	--tcs-radius:16px;
	--tcs-radius-sm:10px;
	--tcs-shadow:0 4px 24px rgba(90,70,190,.08);
}

.tcs-block, .tcs-block *{ box-sizing:border-box; }
.tcs-block{
	direction:rtl;
	text-align:right;
	font-family:'Vazirmatn', Tahoma, sans-serif;
	color:var(--tcs-text);
}
.tcs-block__title{ font-size:22px; font-weight:800; margin:0 0 18px; }
.tcs-empty{ color:var(--tcs-muted); }

/* ---------- Grid wrap ---------- */
.tcs-grid-wrap{ display:grid; gap:20px; }
.tcs-columns-2{ grid-template-columns:repeat(2,1fr); }
.tcs-columns-3{ grid-template-columns:repeat(3,1fr); }
.tcs-columns-4{ grid-template-columns:repeat(4,1fr); }
.tcs-list-wrap{ display:flex; flex-direction:column; gap:10px; }
@media (max-width:900px){
	.tcs-columns-3, .tcs-columns-4{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:600px){
	.tcs-columns-2, .tcs-columns-3, .tcs-columns-4{ grid-template-columns:1fr; }
}

/* ---------- Base card ---------- */
.tcs-card{
	background:var(--tcs-card-bg);
	border-radius:var(--tcs-radius);
	box-shadow:var(--tcs-shadow);
	overflow:hidden;
	display:flex;
	flex-direction:column;
	transition:transform .2s ease, box-shadow .2s ease;
}
.tcs-card:hover{ transform:translateY(-3px); box-shadow:0 10px 30px rgba(90,70,190,.14); }

.tcs-card__media{ position:relative; display:block; aspect-ratio:16/10; overflow:hidden; background:var(--tcs-primary-light); }
.tcs-card__media img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .35s ease; }
.tcs-card:hover .tcs-card__media img{ transform:scale(1.05); }

.tcs-card__body{ padding:16px 18px 18px; display:flex; flex-direction:column; gap:8px; flex:1; }
.tcs-card__title{ font-size:16px; font-weight:700; line-height:1.6; margin:0; }
.tcs-card__title a{ color:var(--tcs-text); text-decoration:none; }
.tcs-card__title a:hover{ color:var(--tcs-primary); }
.tcs-card__excerpt{ font-size:13.5px; color:var(--tcs-muted); line-height:1.9; margin:0; }

.tcs-card__meta{ display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-top:auto; padding-top:6px; }
.tcs-meta-item{ display:inline-flex; align-items:center; gap:6px; font-size:12px; color:var(--tcs-muted); }
.tcs-meta-author img{ border-radius:50%; }

.tcs-badge{
	position:absolute; top:12px; right:12px;
	background:var(--tcs-primary); color:#fff;
	font-size:11px; font-weight:600;
	padding:4px 12px; border-radius:999px;
}
.tcs-badge--outline{ position:static; display:inline-block; background:var(--tcs-primary-light); color:var(--tcs-primary-dark); margin-bottom:8px; }

.tcs-btn{
	display:inline-flex; align-items:center; gap:6px; justify-content:center;
	background:var(--tcs-primary); color:#fff !important; text-decoration:none;
	padding:10px 20px; border-radius:10px; font-size:13.5px; font-weight:700;
	border:none; cursor:pointer; width:fit-content;
	transition:background .2s ease;
}
.tcs-btn:hover{ background:var(--tcs-primary-dark); }
.tcs-btn--sm{ padding:7px 14px; font-size:12.5px; }
.tcs-btn--outline{ background:transparent; border:1.5px solid var(--tcs-primary); color:var(--tcs-primary) !important; }
.tcs-btn--outline:hover{ background:var(--tcs-primary); color:#fff !important; }

/* ---------- Article skins ---------- */
.tcs-skin-minimal .tcs-card__excerpt{ display:none; }
.tcs-skin-big-image .tcs-card__media{ aspect-ratio:16/9; }

.tcs-article-card.tcs-horizontal, .tcs-video-card.tcs-horizontal{
	flex-direction:row-reverse; align-items:center;
}
.tcs-horizontal .tcs-card__media{ width:130px; min-width:130px; aspect-ratio:1/1; border-radius:var(--tcs-radius-sm); margin:10px; }
.tcs-horizontal .tcs-card__body{ padding:10px 14px; gap:4px; }
.tcs-horizontal .tcs-card__excerpt{ display:none; }

.tcs-skin-grid .tcs-card__excerpt{ display:none; }
.tcs-skin-grid .tcs-card__title{ font-size:14.5px; }

/* ---------- Video ---------- */
.tcs-play-icon{
	position:absolute; inset:0; margin:auto; width:52px; height:52px;
	background:rgba(108,92,231,.9); color:#fff; border-radius:50%;
	display:flex; align-items:center; justify-content:center;
	opacity:.95;
}
.tcs-duration-badge{
	position:absolute; bottom:10px; left:10px;
	background:rgba(0,0,0,.65); color:#fff; font-size:11px;
	padding:3px 8px; border-radius:6px;
}
.tcs-skin-player .tcs-card__media{ aspect-ratio:16/9; }
.tcs-skin-playlist .tcs-card__media{ width:90px; min-width:90px; height:70px; aspect-ratio:auto; }
.tcs-skin-playlist .tcs-play-icon{ width:34px; height:34px; }

/* ---------- Podcast ---------- */
.tcs-podcast-card{ flex-direction:row; align-items:center; gap:14px; padding:14px 16px; }
.tcs-podcast-card.tcs-skin-card-image{ flex-direction:column; align-items:stretch; padding:0; }
.tcs-podcast-card.tcs-skin-card-image .tcs-card__body{ align-items:flex-start; }

.tcs-audio-toggle{
	width:44px; height:44px; min-width:44px; border-radius:50%;
	background:var(--tcs-primary); color:#fff; border:none; cursor:pointer;
	display:flex; align-items:center; justify-content:center;
}
.tcs-audio-toggle--sm{ width:30px; height:30px; min-width:30px; }
.tcs-audio-toggle.is-playing, .tcs-audio-toggle-btn.is-playing{ background:var(--tcs-primary-dark); }

.tcs-podcast-info{ display:flex; flex-direction:column; gap:4px; }
.tcs-podcast-title{ font-weight:600; color:var(--tcs-text); text-decoration:none; font-size:14px; }
.tcs-podcast-title:hover{ color:var(--tcs-primary); }

.tcs-skin-list.tcs-podcast-card, .tcs-skin-minimal.tcs-podcast-card{ box-shadow:none; border:1px solid var(--tcs-border); }

.tcs-audio-toggle-btn{ background:var(--tcs-primary-light); color:var(--tcs-primary-dark) !important; }
.tcs-audio-toggle-btn:hover{ background:var(--tcs-primary); color:#fff !important; }

/* ---------- Single player (صفحه تکی ویدئو/پادکست) ---------- */
.tcs-single-player{ margin-bottom:24px; }
.tcs-single-video-player video{ width:100%; border-radius:var(--tcs-radius); display:block; background:#000; }
.tcs-single-video-player .tcs-embed-wrap{ position:relative; padding-top:56.25%; border-radius:var(--tcs-radius); overflow:hidden; }
.tcs-single-video-player .tcs-embed-wrap iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }
.tcs-single-audio-player audio{ width:100%; border-radius:12px; }

/* ---------- Video is-playing icon fix (removed invalid CSS, handled via JS instead) ---------- */

/* ---------- Video popup modal ---------- */
.tcs-video-modal{
	position:fixed; inset:0; z-index:99999;
	background:rgba(20,16,40,.85);
	display:flex; align-items:center; justify-content:center;
	padding:24px; opacity:0; pointer-events:none;
	transition:opacity .2s ease;
}
.tcs-video-modal.is-open{ opacity:1; pointer-events:auto; }
.tcs-video-modal__inner{
	position:relative; width:100%; max-width:960px;
	background:#000; border-radius:14px; overflow:hidden;
	aspect-ratio:16/9;
}
.tcs-video-modal__inner video,
.tcs-video-modal__inner iframe{
	position:absolute; inset:0; width:100%; height:100%; border:0; display:block;
}
.tcs-video-modal__close{
	position:absolute; top:-46px; left:0;
	width:38px; height:38px; border-radius:50%; border:none; cursor:pointer;
	background:rgba(255,255,255,.15); color:#fff; font-size:20px;
	display:flex; align-items:center; justify-content:center;
}
.tcs-video-modal__close:hover{ background:rgba(255,255,255,.3); }
.tcs-video-modal__title{
	position:absolute; top:-46px; right:0; color:#fff; font-size:14px; font-weight:600;
	max-width:80%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.tcs-video-trigger{ background:none; border:none; padding:0; margin:0; cursor:pointer; font:inherit; }

/* ---------- Hero block ---------- */
.tcs-hero-block{ background:var(--tcs-bg); border-radius:20px; padding:26px; }
.tcs-hero-heading h2{ font-size:26px; font-weight:800; margin:0 0 4px; display:flex; align-items:center; gap:10px; }
.tcs-hero-heading p{ color:var(--tcs-muted); margin:0 0 20px; }

.tcs-hero-layout{ display:grid; grid-template-columns:2.3fr 1fr; gap:20px; }
@media (max-width:900px){ .tcs-hero-layout{ grid-template-columns:1fr; } }

.tcs-hero-slider{
	position:relative; background:linear-gradient(135deg, var(--tcs-primary-dark), var(--tcs-primary));
	border-radius:var(--tcs-radius); overflow:hidden; min-height:340px;
	display:flex;
}
.tcs-hero-slide{ display:none; width:100%; }
.tcs-hero-slide.is-active{ display:grid; grid-template-columns:1.2fr 1fr; align-items:stretch; }
.tcs-hero-slide__media{ overflow:hidden; }
.tcs-hero-slide__media img{ width:100%; height:100%; object-fit:cover; display:block; min-height:340px; }
.tcs-hero-slide__content{ padding:30px; color:#fff; display:flex; flex-direction:column; gap:10px; justify-content:center; }
.tcs-hero-slide__content h3{ font-size:22px; margin:0; }
.tcs-hero-slide__content h3 a{ color:#fff; text-decoration:none; }
.tcs-hero-slide__content p{ color:rgba(255,255,255,.85); margin:0; font-size:13.5px; line-height:1.9; }
.tcs-hero-slide__content .tcs-meta-item{ color:rgba(255,255,255,.8); }
.tcs-hero-slide__content .tcs-btn{ background:#fff; color:var(--tcs-primary-dark) !important; margin-top:8px; }

.tcs-slider-nav{
	position:absolute; top:50%; transform:translateY(-50%);
	width:38px; height:38px; border-radius:50%; border:none; cursor:pointer;
	background:rgba(255,255,255,.9); color:var(--tcs-primary-dark); font-size:20px;
}
.tcs-slider-nav--prev{ right:14px; }
.tcs-slider-nav--next{ left:14px; }
.tcs-slider-dots{ position:absolute; bottom:14px; right:50%; transform:translateX(50%); display:flex; gap:6px; }

.tcs-hero-sidebar{ background:var(--tcs-card-bg); border-radius:var(--tcs-radius); padding:18px; box-shadow:var(--tcs-shadow); }
.tcs-hero-sidebar h3{ font-size:16px; margin:0 0 14px; }
.tcs-popular-list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:14px; }
.tcs-popular-item{ display:flex; gap:10px; text-decoration:none; align-items:center; }
.tcs-popular-item img{ width:64px; height:52px; object-fit:cover; border-radius:10px; }
.tcs-popular-item strong{ display:block; font-size:13px; color:var(--tcs-text); line-height:1.6; }
.tcs-popular-item small{ color:var(--tcs-muted); font-size:11px; }

/* ---------- Categories widget ---------- */
.tcs-categories-block{ background:var(--tcs-card-bg); border-radius:var(--tcs-radius); padding:18px; box-shadow:var(--tcs-shadow); }
.tcs-categories-block h3{ font-size:16px; margin:0 0 14px; }
.tcs-categories-list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px; }
.tcs-categories-list a{
	display:flex; align-items:center; gap:10px; text-decoration:none; color:var(--tcs-text);
	padding:8px 10px; border-radius:10px;
}
.tcs-categories-list a:hover{ background:var(--tcs-primary-light); }
.tcs-cat-count{ background:var(--tcs-primary-light); color:var(--tcs-primary-dark); font-size:11px; font-weight:700; border-radius:8px; padding:2px 8px; }
.tcs-cat-name{ flex:1; font-size:13.5px; font-weight:600; }
.tcs-cat-icon .dashicons{ color:var(--tcs-primary); }
