/* DATV refinements: later functionality with the existing DATV chrome preserved. */
/* Apply the existing show-sidebar card treatment to all content sidebars. */
body.datv-design-active :is(.sidebar,#sidebar) .datv-sidebar-card {
	box-sizing: border-box; overflow: hidden; margin-bottom: 24px; padding: 20px;
	border: 1px solid var(--datv-line); border-radius: 18px;
	background: linear-gradient(145deg,#202126,#282a30); box-shadow: 0 18px 42px rgba(0,0,0,.2); color: #f7f7f4;
}
body.datv-design-active :is(.sidebar,#sidebar) .datv-sidebar-card :is(ul,ol) { margin-left: 0; }

/* Give banner widgets the same framed container as the editorial sidebar cards. */
body.datv-design-active :is(.sidebar,#sidebar) :is(.widget_custom_html,.widget_text,.text-html,.widget_media_image,.tie-widget-banner,[id*="banner"],[class*="stream-item"]):not(.datv-sidebar-card) {
	box-sizing: border-box; overflow: hidden; margin-bottom: 24px; padding: 12px;
	border: 1px solid var(--datv-line); border-radius: 18px;
	background: linear-gradient(145deg,#202126,#282a30); box-shadow: 0 18px 42px rgba(0,0,0,.2);
}
body.datv-design-active :is(.sidebar,#sidebar) :is(.widget_custom_html,.widget_text,.text-html,.widget_media_image,.tie-widget-banner,[id*="banner"],[class*="stream-item"]) :is(img,iframe) { display: block; max-width: 100%; margin-inline: auto; border-radius: 10px; }

/* The existing DATV header and footer remain untouched. */

/* Full-width show archives use the same breathing room as All Shows. */
body.datv-show-archive #main-content-row > .main-content { width: 100% !important; max-width: none !important; }
body.datv-show-archive #main-content-row > :is(.sidebar,#sidebar) { display: none !important; }
body.datv-show-archive #posts-container.posts-items { grid-template-columns: repeat(3,minmax(0,1fr)); }
body.datv-show-archive :is(#category-title-section,#tag-title-section) { width: auto; margin: 0 31px 28px; }
body.datv-show-archive #posts-container.posts-items { width: 100%; margin-right: 0 !important; margin-left: 0 !important; }
body.datv-show-archive :is(.pagination,.pages-nav,.page-nav) ul { margin-left: 0 !important; padding-left: 0 !important; list-style: none !important; }
body.datv-show-archive :is(.pagination,.pages-nav,.page-nav) li { margin-left: 0 !important; list-style: none !important; }
body.datv-show-archive :is(.pagination,.pages-nav,.page-nav) li::before,
body.datv-show-archive :is(.pagination,.pages-nav,.page-nav) li::marker { display: none !important; content: none !important; }

/* Jannah author and related-story components become part of the same visual system. */
body.datv-design-active :is(#author-box,.author-box,.about-author) {
	box-sizing: border-box; overflow: hidden; margin-top: 28px; padding: 24px !important;
	border: 1px solid rgba(143,174,184,.26) !important; border-top: 3px solid #fef266 !important; border-radius: 18px;
	background: radial-gradient(circle at 100% 0,rgba(114,217,237,.1),transparent 35%),linear-gradient(145deg,#202126,#282a30) !important;
	box-shadow: 0 18px 42px rgba(0,0,0,.18); color: #b9bdc6;
}
body.datv-design-active :is(#author-box,.author-box,.about-author) :is(.author-avatar,img.avatar) { border: 3px solid rgba(114,217,237,.32); border-radius: 50%; background: #15161a; }
body.datv-design-active :is(#author-box,.author-box,.about-author) :is(h3,h4,.author-name,a) { color: #f7f7f4 !important; }
body.datv-design-active :is(#author-box,.author-box,.about-author) a:hover { color: #fef266 !important; }
body.datv-design-active :is(#author-box,.author-box,.about-author) :is(p,.author-description) { color: #b9bdc6 !important; line-height: 1.7; }

body.datv-design-active :is(#related-posts,.related-posts,.related-posts-box) {
	box-sizing: border-box; overflow: hidden; margin-top: 26px; padding: 24px !important;
	border: 1px solid rgba(143,174,184,.24) !important; border-radius: 18px;
	background: linear-gradient(145deg,#282a30,#17181c) !important; box-shadow: 0 18px 42px rgba(0,0,0,.18);
}
body.datv-design-active :is(#related-posts,.related-posts,.related-posts-box) :is(.block-head-1,.the-global-title,.widget-title) { margin: -24px -24px 22px; padding: 18px 24px; border-bottom: 1px solid rgba(143,174,184,.2); background: rgba(143,174,184,.08); }
body.datv-design-active :is(#related-posts,.related-posts,.related-posts-box) :is(h2,h3,h4,.post-title a) { color: #f7f7f4 !important; }
body.datv-design-active :is(#related-posts,.related-posts,.related-posts-box) .post-title a:hover { color: #fef266 !important; }
body.datv-design-active :is(#related-posts,.related-posts,.related-posts-box) :is(.post-thumb,img) { border-radius: 11px; }

/* Remove Jannah's dotted/checkered site overlay from individual show guides. */
body.datv-single-show .background-overlay { background-color: rgba(0,0,0,.48) !important; background-image: none !important; }

/* Score: explicit text and native disclosure; colour is supplementary. */
.datv-score-panel { box-sizing: border-box; color: #f7f7f4; }
body.datv-design-active #the-post .entry-content .datv-score-panel { margin: 30px 0; padding: clamp(20px,4vw,34px); overflow: hidden; border: 1px solid rgba(143,174,184,.3); border-radius: 18px; background: radial-gradient(ellipse at 100% 0,rgba(114,217,237,.11),transparent 55%),#202126; scroll-margin-top: 100px; }
.datv-score-heading { display: flex; align-items: center; gap: 15px; margin-bottom: 22px; }
.datv-score-heading img { width: 60px; height: 60px; object-fit: contain; flex-shrink: 0; }
body.datv-design-active #the-post .entry-content .datv-score-heading h2 { color: #f7f7f4 !important; font-size: clamp(25px,3vw,32px); margin: 3px 0 0; line-height: 1.2; }
.datv-score-summary { display: flex; gap: 24px; align-items: center; margin-bottom: 23px; }
.datv-score-summary > div { min-width: 0; overflow-wrap: anywhere; }
.datv-score-number { flex-shrink: 0; font-size: clamp(54px,7vw,76px); font-weight: 850; letter-spacing: -.05em; line-height: 1; color: #fff; }
.datv-score-number small { font-size: 22px; color: #b9bdc6; letter-spacing: 0; margin-left: 4px; }
.datv-score-summary strong { display: block; font-size: 20px; color: #f7f7f4; }
body.datv-design-active #the-post .entry-content .datv-score-summary p { margin: 4px 0; color: #b9bdc6; font-size: 12px; line-height: 1.5; }
.datv-score-meter { position: relative; height: 13px; margin: 10px 8px; border-radius: 99px; background: linear-gradient(90deg,#397bd9 0%,#36bdd1 28%,#d7d66b 50%,#69d7e5 72%,#e5635d 100%); }
.datv-score-meter > span { position: absolute; top: 50%; width: 8px; height: 26px; border: 2px solid #fff; border-radius: 4px; background: #15161a; transform: translate(-50%,-50%); box-shadow: 0 2px 8px #000; }
.datv-score-scale { display: grid; grid-template-columns: repeat(5,1fr); gap: 8px; color: #b9bdc6; font-size: 11px; margin: 9px 0 22px; }
.datv-score-scale span { text-align: center; }
.datv-score-scale span:first-child { text-align: left; }
.datv-score-scale span:last-child { text-align: right; }
.datv-score-scale b { color: #f7f7f4; font-weight: 800; }
body.datv-design-active #the-post .entry-content .datv-score-verdict { color: #e4eef2; font-size: 16px; line-height: 1.7; overflow-wrap: anywhere; }
.datv-score-points { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,230px),1fr)); gap: 15px; margin-top: 23px; }
.datv-score-points > div { padding: 18px; border-radius: 12px; border: 1px solid rgba(143,174,184,.18); background: rgba(0,0,0,.14); overflow-wrap: anywhere; }
body.datv-design-active #the-post .entry-content .datv-score-points h3 { margin: 0 0 12px; color: #f7f7f4 !important; font-size: 17px; }
body.datv-design-active #the-post .entry-content .datv-score-points ul { padding: 0 0 0 19px; margin: 0; list-style: disc; }
body.datv-design-active #the-post .entry-content .datv-score-points li { margin: 8px 0; color: #b9bdc6; font-size: 14px; line-height: 1.6; list-style: disc; }
.datv-score-points--positives { border-top: 2px solid #fef266 !important; }
.datv-score-points--negatives { border-top: 2px solid #69d7e5 !important; }
body.datv-design-active :is(.datv-score-panel) :is(a,summary,button):focus-visible { outline: 3px solid #fef266; outline-offset: 4px; }

/* Score-led Top 5: stacked in sidebars and compact across wide layouts. */
.datv-ranking { box-sizing: border-box; color: #f7f7f4; }
.datv-ranking-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.datv-ranking-heading img { width: 46px; height: 46px; object-fit: contain; flex: 0 0 auto; }
.datv-ranking-heading span { display: block; color: #fef266; font-size: 10px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.datv-ranking-heading :is(h2,h3) { margin: 2px 0 0; color: #f7f7f4 !important; line-height: 1.15; }
.datv-ranking-heading h2 { font-size: 25px; }
.datv-ranking-heading h3 { font-size: 20px; }
body.datv-design-active .datv-ranking-list { list-style: none; margin: 0; padding: 0; }
body.datv-design-active .datv-ranking-list > li { list-style: none; margin: 0; padding: 10px 0; border-top: 1px solid rgba(143,174,184,.16); }
body.datv-design-active .datv-ranking-list > li::before { display: none; }
.datv-ranking--sidebar .datv-ranking-list > li { display: grid; grid-template-columns: 20px minmax(0,1fr) auto; align-items: center; gap: 8px; }
.datv-ranking-position { color: #fef266; font-size: 13px; font-weight: 850; }
body.datv-design-active .datv-ranking-list a { display: flex; min-width: 0; align-items: center; gap: 9px; color: #f7f7f4 !important; font-size: 13px; font-weight: 750; line-height: 1.3; text-decoration: none; }
body.datv-design-active .datv-ranking-list a:hover { color: #fef266 !important; }
.datv-ranking-list img { width: 46px; height: 36px; flex: 0 0 auto; border-radius: 6px; object-fit: cover; }
.datv-ranking-value { white-space: nowrap; color: #fef266; font-size: 17px; font-weight: 850; }
.datv-ranking-value small { color: #fef266; font-size: 9px; font-weight: 600; }
.datv-ranking--home,.datv-ranking--archive,.datv-ranking--page { padding: 22px; border: 1px solid rgba(143,174,184,.25); border-radius: 16px; background: linear-gradient(140deg,#202126,#17181c); }
.datv-ranking--page { margin: 0 0 24px; }
.datv-directory-hero + .datv-ranking--page { margin-top: 22px; }
:is(.datv-ranking--home,.datv-ranking--archive,.datv-ranking--page) .datv-ranking-list { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 10px; }
body.datv-design-active :is(.datv-ranking--home,.datv-ranking--archive,.datv-ranking--page) .datv-ranking-list > li { position: relative; min-width: 0; padding: 0; overflow: hidden; border: 1px solid rgba(143,174,184,.22); border-radius: 11px; background: #15161a; }
:is(.datv-ranking--home,.datv-ranking--archive,.datv-ranking--page) .datv-ranking-tile > a { position: relative; display: block; aspect-ratio: 16/10; overflow: hidden; isolation: isolate; }
:is(.datv-ranking--home,.datv-ranking--archive,.datv-ranking--page) .datv-ranking-tile img,
:is(.datv-ranking--home,.datv-ranking--archive,.datv-ranking--page) .datv-ranking-placeholder { display: block; width: 100%; height: 100%; border-radius: 0; object-fit: cover; transition: transform .25s ease; }
:is(.datv-ranking--home,.datv-ranking--archive,.datv-ranking--page) .datv-ranking-placeholder { background: radial-gradient(circle at 75% 25%,rgba(114,217,237,.28),transparent 30%),linear-gradient(135deg,#31343b,#15161a); }
:is(.datv-ranking--home,.datv-ranking--archive,.datv-ranking--page) .datv-ranking-tile > a:hover img { transform: scale(1.035); }
:is(.datv-ranking--home,.datv-ranking--archive,.datv-ranking--page) .datv-ranking-position { position: absolute; top: 8px; left: 8px; z-index: 2; display: grid; width: 28px; height: 28px; place-items: center; border: 1px solid rgba(255,255,255,.58); border-radius: 50%; background: #15161a; color: #fff; box-shadow: 0 2px 10px rgba(0,0,0,.55); font-size: 13px; }
:is(.datv-ranking--home,.datv-ranking--archive,.datv-ranking--page) .datv-ranking-tile-copy { position: absolute; right: 10px; bottom: 10px; left: 10px; z-index: 2; display: flex; align-items: flex-end; justify-content: space-between; gap: 8px; }
body.datv-design-active :is(.datv-ranking--home,.datv-ranking--archive,.datv-ranking--page) .datv-ranking-title { color: #fff; font-size: clamp(13px,1.35vw,17px); font-weight: 850; line-height: 1.16; text-shadow: 0 2px 3px #000,0 0 8px #000,0 0 16px #000; }
:is(.datv-ranking--home,.datv-ranking--archive,.datv-ranking--page) .datv-ranking-value { flex: 0 0 auto; margin: 0; padding: 3px 7px; border: 1px solid rgba(255,255,255,.5); border-radius: 7px; background: #15161a; color: #fef266; box-shadow: 0 2px 10px rgba(0,0,0,.5); font-size: 16px; text-shadow: none; }
#datv-archive-ranking-mount { margin: 0 0 20px; }
body.datv-show-archive .datv-ranking--archive { margin: 0; }

/* Guide and episode titles sit directly over the undimmed featured artwork. */
body:is(.datv-single-show,.datv-episode-guide-page) #the-post > .featured-area.datv-article-hero {
	position: relative;
	overflow: hidden;
	border-radius: 16px;
	isolation: isolate;
}
body:is(.datv-single-show,.datv-episode-guide-page) .datv-article-hero :is(.featured-area-inner,.single-featured-image) { height: 100%; margin: 0; }
body:is(.datv-single-show,.datv-episode-guide-page) .datv-article-hero .single-featured-image img { display: block; width: 100%; height: auto; min-height: 250px; object-fit: cover; }
.datv-article-hero__overlay { position: absolute; right: clamp(18px,4vw,34px); bottom: clamp(18px,4vw,32px); left: clamp(18px,4vw,34px); z-index: 2; }
body.datv-design-active .datv-article-hero__overlay h1.post-title { max-width: 900px; margin: 9px 0 0; padding: 0; color: #fff !important; font-size: clamp(31px,5.2vw,58px); font-weight: 900; letter-spacing: -.035em; line-height: 1.02; text-shadow: 0 2px 3px #000,0 0 9px #000,0 0 20px #000; }
.datv-article-hero__overlay .post-cat-wrap { display: flex; flex-wrap: wrap; gap: 6px; }
body.datv-design-active .datv-article-hero__overlay .post-cat { display: inline-flex; align-items: center; min-height: 28px; margin: 0 !important; padding: 5px 10px !important; border: 1px solid rgba(255,255,255,.65) !important; border-radius: 99px !important; background: #15161a !important; box-shadow: 0 2px 9px rgba(0,0,0,.5) !important; color: #fff !important; font-size: 10px !important; font-weight: 850 !important; letter-spacing: .035em; line-height: 1.2 !important; text-decoration: none !important; }
body.datv-design-active .datv-article-hero__overlay .post-cat:hover { border-color: #fef266 !important; background: #fef266 !important; color: #15161a !important; }
body:is(.datv-single-show,.datv-episode-guide-page) #the-post > .entry-header-outer.datv-entry-header--empty { display: none; }

/* Curated new-show and new-season release transmissions. */
.datv-releases { box-sizing: border-box; color: #f7f7f4; }
.datv-release-heading { display: flex; align-items: center; gap: 13px; margin-bottom: 16px; }
.datv-release-heading > div > span { display: block; color: #69d7e5; font-size: 10px; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.datv-release-heading :is(h2,h3) { margin: 2px 0 0; color: #f7f7f4 !important; line-height: 1.15; }
.datv-release-heading h2 { font-size: 25px; }.datv-release-heading h3 { font-size: 20px; }
.datv-release-signal { display: flex; width: 48px; height: 48px; align-items: flex-end; justify-content: center; gap: 4px; padding: 10px; border: 1px solid rgba(114,217,237,.32); border-radius: 50%; background: rgba(114,217,237,.08); }
.datv-release-signal i { width: 5px; border-radius: 4px; background: #fef266; }.datv-release-signal i:nth-child(1){height:9px}.datv-release-signal i:nth-child(2){height:18px}.datv-release-signal i:nth-child(3){height:27px}
.datv-releases--home,.datv-releases--shortcode { padding: 24px; border: 1px solid rgba(143,174,184,.25); border-radius: 16px; background: radial-gradient(circle at 100% 0,rgba(114,217,237,.1),transparent 35%),linear-gradient(140deg,#202126,#17181c); }
.datv-releases--shortcode { margin: 24px 0; }
.datv-release-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.datv-release-card { min-width: 0; overflow: hidden; border: 1px solid rgba(143,174,184,.2); border-radius: 13px; background: rgba(0,0,0,.15); }
.datv-release-card__image { display: block; aspect-ratio: 16/9; overflow: hidden; background: #15161a; }
.datv-release-card__image img,.datv-release-placeholder { display: block; width: 100%; height: 100%; object-fit: cover; }
.datv-release-placeholder { background: radial-gradient(circle at 72% 30%,rgba(114,217,237,.32),transparent 25%),linear-gradient(135deg,#31343b,#15161a); }
.datv-release-placeholder i { display: none; }
.datv-release-card__copy { padding: 16px; }
.datv-release-type,.datv-release-network { display: inline-flex; align-items: center; width: fit-content; padding: 3px 8px; border: 1px solid rgba(243,162,78,.42); border-radius: 99px; color: #f7ba7c; font-size: 10px; font-weight: 850; letter-spacing: .045em; text-transform: uppercase; }
body.datv-design-active .datv-release-card h3 { margin: 8px 0 9px; color: #fff !important; font-size: 20px; line-height: 1.15; }
body.datv-design-active .datv-release-card h3 a { color: #fff !important; text-decoration: none; }body.datv-design-active .datv-release-card h3 a:hover { color: #fef266 !important; }
.datv-release-countdown { display: block; color: #fef266; font-size: clamp(20px,2.2vw,29px); font-weight: 900; letter-spacing: -.025em; line-height: 1.1; }
.datv-release-date { margin: 7px 0 10px; color: #b9bdc6; font-size: 12px; line-height: 1.45; }
.datv-release-network { border-color: rgba(114,217,237,.32); color: #bdeff7; }
.datv-release-note { margin: 12px 0 0; color: #e9ebef; font-size: 13px; line-height: 1.55; }
.datv-releases--sidebar { border-top: 3px solid #fef266 !important; }
.datv-releases--sidebar .datv-release-grid { display: block; }
.datv-releases--sidebar .datv-release-card { display: grid; grid-template-columns: 84px minmax(0,1fr); border: 0; border-top: 1px solid rgba(143,174,184,.16); border-radius: 0; background: transparent; }
.datv-releases--sidebar .datv-release-card:first-child { border-top: 0; }
.datv-releases--sidebar .datv-release-card__image { align-self: center; aspect-ratio: 4/3; border-radius: 7px; }
.datv-releases--sidebar .datv-release-card__copy { padding: 11px 0 11px 11px; }
.datv-releases--sidebar .datv-release-type { padding: 2px 6px; font-size: 8px; }
body.datv-design-active .datv-releases--sidebar .datv-release-card h3 { margin: 5px 0; font-size: 14px; }
.datv-releases--sidebar .datv-release-countdown { font-size: 16px; }
.datv-releases--sidebar .datv-release-date { margin: 4px 0 0; font-size: 10px; }
.datv-releases--sidebar .datv-release-network { display: none; }
.datv-guide-release { display: grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:15px; margin:0 0 22px; padding:17px 19px; border:1px solid rgba(114,217,237,.28); border-left:4px solid #fef266; border-radius:12px; background:linear-gradient(120deg,rgba(114,217,237,.1),transparent 55%),#202126; color:#f7f7f4; }
.datv-guide-release > div > strong { color:#fff; font-size:17px; }.datv-guide-release > div > p { margin:3px 0 0; color:#b9bdc6; font-size:12px; }.datv-guide-release .datv-release-countdown { min-width:max-content; font-size:22px; }

/* Skull Face's birthday transmissions. */
.datv-birthday { box-sizing: border-box; color: #f7f7f4; }
.datv-birthday-heading { display: flex; align-items: center; gap: 13px; margin-bottom: 13px; }
.datv-birthday-heading img { width: 52px; height: 52px; flex: 0 0 auto; object-fit: contain; }
.datv-birthday-heading span { display: block; color: #69d7e5; font-size: 10px; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.datv-birthday-heading :is(h2,h3) { margin: 2px 0 0; color: #f7f7f4 !important; line-height: 1.15; }
.datv-birthday-heading h2 { font-size: 25px; }
.datv-birthday-heading h3 { font-size: 20px; }
.datv-birthday-messages p { margin: 0; color: #e9ebef; font-size: 15px; line-height: 1.65; }
.datv-birthday-messages p + p { margin-top: 10px; padding-top: 10px; border-top: 1px solid rgba(143,174,184,.16); }
body.datv-design-active .datv-birthday-messages a { color: #fef266 !important; font-weight: 800; text-decoration: underline; text-underline-offset: 2px; }
.datv-birthday--home,.datv-birthday--shortcode { padding: 24px; border: 1px solid rgba(243,162,78,.3); border-radius: 16px; background: radial-gradient(circle at 100% 0,rgba(243,162,78,.12),transparent 38%),linear-gradient(140deg,#202126,#17181c); }
.datv-birthday--shortcode { margin: 24px 0; }
.datv-birthday--sidebar { border-top: 3px solid #69d7e5 !important; }
.datv-birthday--sidebar .datv-birthday-heading img { width: 44px; height: 44px; }
.datv-birthday--sidebar .datv-birthday-messages p { font-size: 13px; }
@media (max-width: 767px) {
	.datv-score-scale { gap: 3px; font-size: 9px; }
	.datv-score-scale span { display: flex; flex-direction: column; }
	.datv-ranking--home,.datv-ranking--archive,.datv-ranking--page { overflow-x: auto; padding: 17px; }
	:is(.datv-ranking--home,.datv-ranking--archive,.datv-ranking--page) .datv-ranking-list { grid-template-columns: repeat(5,minmax(155px,1fr)); }
	.datv-release-grid { grid-template-columns: 1fr; }
	.datv-guide-release { grid-template-columns: 1fr; gap:8px; }.datv-guide-release .datv-release-countdown { min-width:0; }
	body:is(.datv-single-show,.datv-episode-guide-page) .datv-article-hero .single-featured-image img { min-height: 210px; }
	body.datv-show-archive :is(#category-title-section,#tag-title-section) { margin: 0 0 20px; }
}
@media (max-width: 991px) and (min-width: 768px) {
	body.datv-show-archive #posts-container.posts-items { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 420px) {
	.datv-score-summary { align-items: flex-start; gap: 16px; }
	.datv-score-number { font-size: 50px; }
	.datv-score-number small { font-size: 16px; }
	.datv-score-heading { gap: 10px; }
	.datv-score-heading img { width: 45px; height: 45px; }
}
@media (prefers-reduced-motion: reduce) {
	body.datv-design-active :is(.datv-show-card,.datv-card-link,.datv-ranking * *) { transition: none !important; }
}
