:root {
	--rtws-accent: #5aa2ff;
	--rtws-accent-dark: #2e5d98;
	--rtws-sidebar-width: 320px;
	--rtws-sidebar-collapsed: 86px;
	--rtws-header-height: 126px;
	--rtws-grid-columns: 5;
	--rtws-bg: #071a36;
	--rtws-surface: #0d2447;
	--rtws-soft: #10284d;
	--rtws-border: rgba(138, 169, 214, 0.22);
	--rtws-text: #eff5ff;
	--rtws-muted: #aab9d6;
	--rtws-shadow: 0 12px 28px rgba(0, 0, 0, 0.28);
}

html { scroll-behavior: smooth; }
body.rtws-theme {
	background: var(--rtws-bg) !important;
	color: var(--rtws-text) !important;
	font-family: Arial, Helvetica, sans-serif;
}
body.rtws-theme * { box-sizing: border-box; }
body.rtws-theme a { color: inherit; }
body.rtws-theme #page { background: var(--rtws-bg); min-height: 100vh; }

/* Fixed top application header */
.rtws-top-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	height: var(--rtws-header-height);
	display: flex;
	align-items: stretch;
	background: #fff;
	border-bottom: 1px solid var(--rtws-border);
	box-shadow: 0 1px 7px rgba(16, 24, 40, 0.04);
	z-index: 10020;
}
.admin-bar .rtws-top-header { top: 32px; }
.rtws-header-brand {
	width: var(--rtws-sidebar-width);
	min-width: var(--rtws-sidebar-width);
	display: flex;
	align-items: center;
	gap: 15px;
	padding: 0 18px;
	border-right: 1px solid var(--rtws-border);
	transition: width .22s ease, min-width .22s ease;
}
.rtws-sidebar-toggle {
	width: 38px;
	height: 38px;
	padding: 8px;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	cursor: pointer;
	display: inline-flex;
	flex-direction: column;
	justify-content: center;
	gap: 5px;
	flex: 0 0 auto;
}
.rtws-sidebar-toggle span {
	display: block;
	width: 22px;
	height: 2px;
	border-radius: 2px;
	background: #202328;
	transition: transform .2s ease, opacity .2s ease;
}
.rtws-header-logo { min-width: 0; overflow: hidden; }
.rtws-logo-link { display: inline-flex; align-items: center; white-space: nowrap; font-weight: 800; }
.rtws-logo-image img { display: block; max-height: 40px; width: auto; max-width: 178px; }
.rtws-text-logo { font-size: 25px; letter-spacing: -1px; color: #1c1d20 !important; }
.rtws-logo-accent { color: var(--rtws-accent); }
.rtws-header-main {
	min-width: 0;
	flex: 1;
	display: flex;
	align-items: center;
	gap: 22px;
	padding: 0 22px;
}
.rtws-search {
	position: relative;
	width: min(760px, 100%);
	margin: 0;
	flex: 1 1 auto;
}
.rtws-search input[type="search"] {
	width: 100%;
	height: 40px;
	padding: 0 48px 0 15px;
	border: 1px solid #cfd3d8;
	border-radius: 5px;
	background: #fff;
	color: var(--rtws-text);
	font-size: 14px;
	box-shadow: none;
}
.rtws-search input[type="search"]:focus { outline: 2px solid color-mix(in srgb, var(--rtws-accent) 20%, transparent); border-color: var(--rtws-accent); }
.rtws-search button {
	position: absolute;
	top: 1px;
	right: 1px;
	width: 44px;
	height: 38px;
	padding: 0;
	border: 0 !important;
	border-left: 1px solid var(--rtws-border) !important;
	background: transparent !important;
	color: #111 !important;
	box-shadow: none !important;
	cursor: pointer;
}
.rtws-search-spacer { flex: 1 1 auto; }
.rtws-account-links { display: flex; align-items: center; gap: 20px; flex: 0 0 auto; }
.rtws-account-links a { font-size: 13px; font-weight: 700; text-transform: uppercase; color: #1d2025 !important; }
.rtws-account-links a:hover { color: var(--rtws-accent) !important; }
.rtws-account-links i { margin-right: 6px; color: var(--rtws-accent); }

/* Fixed left navigation */
.rtws-sidebar {
	position: fixed;
	top: var(--rtws-header-height);
	left: 0;
	bottom: 0;
	width: var(--rtws-sidebar-width);
	background: #fff;
	border-right: 1px solid var(--rtws-border);
	z-index: 10010;
	overflow: hidden;
	transition: width .22s ease, transform .22s ease;
}
.admin-bar .rtws-sidebar { top: calc(var(--rtws-header-height) + 32px); }
.rtws-sidebar-inner {
	height: 100%;
	overflow-y: auto;
	overflow-x: hidden;
	padding: 12px 14px 34px;
	scrollbar-width: thin;
}
.rtws-sidebar-section { margin: 0 0 22px; }
.rtws-sidebar-section h2 {
	margin: 0;
	padding: 11px 10px 9px;
	font-size: 13px;
	line-height: 1.2;
	font-weight: 800;
	letter-spacing: .03em;
	text-transform: uppercase;
	color: var(--rtws-accent) !important;
	white-space: nowrap;
}
.rtws-sidebar-list { list-style: none; margin: 0; padding: 0; }
.rtws-sidebar-list li { margin: 2px 0; padding: 0; }
.rtws-sidebar-list a,
.rtws-language-row {
	height: 43px;
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 0 11px;
	border-radius: 7px;
	font-size: 14px;
	font-weight: 700;
	color: #24272c !important;
	white-space: nowrap;
	transition: background .16s ease, color .16s ease;
}
.rtws-sidebar-list a:hover { background: #f3f4f6; color: var(--rtws-accent) !important; }
.rtws-sidebar-list .is-active > a,
.rtws-sidebar-list .current-menu-item > a,
.rtws-sidebar-list .current_page_item > a {
	background: color-mix(in srgb, var(--rtws-accent) 9%, #fff);
	color: var(--rtws-accent) !important;
}
.rtws-sidebar-list i,
.rtws-language-row i { width: 22px; flex: 0 0 22px; text-align: center; font-size: 19px; color: var(--rtws-accent); }
.rtws-language-row { color: #3b3e43; }
.rtws-sidebar-list .sub-menu {
	list-style: none;
	margin: 2px 0 7px;
	padding: 0 0 0 27px;
}
.rtws-sidebar-list .sub-menu li { margin: 0; }
.rtws-sidebar-list .sub-menu a {
	height: 34px;
	padding: 0 9px;
	gap: 9px;
	font-size: 12px;
	font-weight: 650;
	color: #555b63 !important;
}
.rtws-sidebar-list .sub-menu i {
	width: 15px;
	flex-basis: 15px;
	font-size: 11px;
}
.rtws-sidebar-overlay { display: none; }

/* Main shell */
.rtws-shell {
	min-height: 100vh;
	margin-left: var(--rtws-sidebar-width);
	padding-top: var(--rtws-header-height);
	transition: margin-left .22s ease;
	background: #fff;
}
.rtws-theme #content.rtws-content {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 30px 28px 44px;
	overflow: visible;
	background: #fff;
}
.rtws-theme #primary,
.rtws-theme .content-area,
.rtws-theme .site-main,
.rtws-theme .content-area.with-sidebar-right,
.rtws-theme .content-area.with-sidebar-left,
.rtws-theme .site-main.with-sidebar-right,
.rtws-theme .site-main.with-sidebar-left {
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}
.rtws-theme #sidebar.widget-area { display: none !important; }
.rtws-theme .row { max-width: none; }
.rtws-theme .page-header { margin: 0 0 21px; }
.rtws-theme .widget-title,
.rtws-theme .page-title,
.rtws-theme .entry-title { color: var(--rtws-text) !important; text-shadow: none !important; }
.rtws-theme .widget-title { border-left: 4px solid var(--rtws-accent); padding-left: 12px; font-weight: 800; }
.rtws-theme .archive-description { color: var(--rtws-muted); }

/* Video grid and cards */
.rtws-theme .videos-list {
	display: grid;
	grid-template-columns: repeat(var(--rtws-grid-columns), minmax(0, 1fr));
	gap: 18px 14px;
	margin: 0 !important;
}
.rtws-theme .thumb-block.rtws-video-card,
.rtws-theme .videos-list .thumb-block,
.rtws-theme.archive #main > .thumb-block,
.rtws-theme.search #main > .thumb-block {
	float: none !important;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	background: #fff;
	border: 1px solid var(--rtws-border);
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0 1px 1px rgba(16, 24, 40, .02);
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.rtws-theme .thumb-block.rtws-video-card:hover {
	transform: translateY(-2px);
	box-shadow: var(--rtws-shadow);
	border-color: #d8dce1;
}
.rtws-card-link { display: block !important; height: 100%; }
.rtws-theme .thumb-block .post-thumbnail {
	aspect-ratio: 16 / 9;
	height: auto !important;
	background: #111;
	overflow: hidden;
}
.rtws-theme .post-thumbnail-container { position: absolute; inset: 0; width: 100%; height: 100%; }
.rtws-theme .thumb-block .post-thumbnail img,
.rtws-theme .thumb-block .post-thumbnail video { width: 100%; height: 100%; object-fit: cover; }
.rtws-theme .thumb-block .video-overlay { display: block; background: linear-gradient(to top, rgba(0,0,0,.30), transparent 45%); opacity: .65; transition: opacity .18s ease; }
.rtws-theme .thumb-block:hover .video-overlay { opacity: .9; }
.rtws-play {
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 35;
	width: 44px;
	height: 44px;
	margin: -22px 0 0 -22px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(0,0,0,.62);
	color: #fff;
	opacity: 0;
	transform: scale(.88);
	transition: opacity .18s ease, transform .18s ease;
}
.rtws-video-card:hover .rtws-play { opacity: 1; transform: scale(1); }
.rtws-play i { margin-left: 3px; }
.rtws-theme span.duration,
.rtws-theme span.hd-video {
	position: absolute;
	z-index: 40;
	top: auto;
	bottom: 7px;
	padding: 3px 6px;
	border: 0;
	border-radius: 4px;
	background: rgba(0,0,0,.82);
	color: #fff !important;
	font-size: 11px;
	line-height: 1.2;
	text-shadow: none;
}
.rtws-theme span.duration { right: 7px; }
.rtws-theme span.hd-video { left: 7px; }
.rtws-card-content { padding: 10px 11px 11px; }
.rtws-theme .thumb-block .entry-header {
	height: auto;
	min-height: 34px;
	padding: 0;
	margin: 0 0 6px;
	text-align: left;
	font-size: 14px;
	line-height: 1.22;
	font-weight: 700;
	color: var(--rtws-text) !important;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}
.rtws-card-author { margin-bottom: 7px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; color: var(--rtws-muted); }
.rtws-card-meta { display: flex; align-items: center; gap: 11px; font-size: 11px; color: #5f656d; }
.rtws-card-meta i { color: #89909a; margin-right: 2px; }
.rtws-theme .thumb-block .rating-bar { display: none !important; }

/* Single video page */
.rtws-theme.single .site-main > article,
.rtws-theme.page .site-main > article,
.rtws-theme .site-main > .type-page {
	background: #fff;
}
.rtws-theme.single .video-player,
.rtws-theme.single .wp-video,
.rtws-theme.single iframe,
.rtws-theme.single video { max-width: 100%; }
.rtws-theme .title-block,
.rtws-theme .entry-content,
.rtws-theme .comments-area,
.rtws-theme .under-video-block {
	border-color: var(--rtws-border) !important;
	box-shadow: none !important;
}
.rtws-theme .title-block { background: #fff !important; }
.rtws-theme .entry-content { color: #333; }
.rtws-theme .entry-content a { color: var(--rtws-accent); }
.rtws-theme button,
.rtws-theme .button,
.rtws-theme input[type="submit"] { border-color: var(--rtws-accent); }
.rtws-theme .button:not(#back-to-top),
.rtws-theme input[type="submit"] { background: var(--rtws-accent); color: #fff; }

/* Footer */
.rtws-footer {
	margin: 0;
	padding: 28px;
	background: #f8f9fb !important;
	border-top: 1px solid var(--rtws-border);
	color: #555 !important;
}
.rtws-footer .site-info,
.rtws-footer a { color: #666 !important; }
.rtws-footer a:hover { color: var(--rtws-accent) !important; }
#back-to-top { background: var(--rtws-accent) !important; border-color: var(--rtws-accent) !important; }

/* Desktop collapsed mode */
@media (min-width: 1025px) {
	body.rtws-sidebar-collapsed .rtws-header-brand { width: var(--rtws-sidebar-collapsed); min-width: var(--rtws-sidebar-collapsed); padding: 0 19px; }
	body.rtws-sidebar-collapsed .rtws-header-logo { display: none; }
	body.rtws-sidebar-collapsed .rtws-sidebar { width: var(--rtws-sidebar-collapsed); }
	body.rtws-sidebar-collapsed .rtws-shell { margin-left: var(--rtws-sidebar-collapsed); }
	body.rtws-sidebar-collapsed .rtws-sidebar-inner { padding-left: 11px; padding-right: 11px; }
	body.rtws-sidebar-collapsed .rtws-sidebar-section h2,
	body.rtws-sidebar-collapsed .rtws-sidebar-list span,
	body.rtws-sidebar-collapsed .rtws-language-row span { display: none; }
	body.rtws-sidebar-collapsed .rtws-sidebar-section { margin-bottom: 12px; }
	body.rtws-sidebar-collapsed .rtws-sidebar-list a,
	body.rtws-sidebar-collapsed .rtws-language-row { justify-content: center; padding: 0; }
	body.rtws-sidebar-collapsed .rtws-sidebar-list i,
	body.rtws-sidebar-collapsed .rtws-language-row i { width: auto; flex-basis: auto; }
}

@media (max-width: 1500px) {
	.rtws-theme .videos-list { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 1200px) {
	.rtws-theme .videos-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.rtws-account-links span { display: none; }
	.rtws-account-links i { margin: 0; font-size: 18px; }
}

/* Tablet/mobile drawer */
@media (max-width: 1024px) {
	.rtws-top-header { height: 60px; }
	.rtws-header-brand { width: auto; min-width: 0; border-right: 0; padding: 0 10px; gap: 7px; }
	.rtws-header-logo { max-width: 150px; }
	.rtws-logo-image img { max-height: 34px; max-width: 142px; }
	.rtws-text-logo { font-size: 21px; }
	.rtws-header-main { padding: 0 12px 0 5px; gap: 10px; }
	.rtws-search input[type="search"] { height: 38px; }
	.rtws-search button { height: 36px; }
	.rtws-sidebar {
		top: 60px;
		width: min(310px, 86vw);
		transform: translateX(-102%);
		box-shadow: 12px 0 30px rgba(0,0,0,.12);
	}
	.admin-bar .rtws-sidebar { top: calc(60px + 32px); }
	.rtws-shell { margin-left: 0; padding-top: 60px; }
	.rtws-sidebar-overlay {
		position: fixed;
		inset: 60px 0 0;
		z-index: 10000;
		border: 0 !important;
		background: rgba(0,0,0,.35) !important;
		opacity: 0;
		visibility: hidden;
		display: block;
		transition: opacity .2s ease, visibility .2s ease;
	}
	.admin-bar .rtws-sidebar-overlay { top: calc(60px + 32px); }
	body.rtws-sidebar-open { overflow: hidden; }
	body.rtws-sidebar-open .rtws-sidebar { transform: translateX(0); }
	body.rtws-sidebar-open .rtws-sidebar-overlay { opacity: 1; visibility: visible; }
	.rtws-theme #content.rtws-content { padding: 24px 18px 36px; }
}

@media (max-width: 782px) {
	.admin-bar .rtws-top-header { top: 46px; }
	.admin-bar .rtws-sidebar { top: 106px; }
	.admin-bar .rtws-sidebar-overlay { top: 106px; }
	.rtws-theme .videos-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 10px; }
	.rtws-header-logo { max-width: 118px; }
	.rtws-account-links { gap: 11px; }
}

@media (max-width: 600px) {
	.rtws-header-brand { padding-right: 4px; }
	.rtws-header-logo { display: none; }
	.rtws-header-main { padding-left: 2px; }
	.rtws-search input[type="search"] { font-size: 16px; }
	.rtws-theme #content.rtws-content { padding: 18px 10px 30px; }
	.rtws-theme .videos-list { gap: 12px 8px; }
	.rtws-card-content { padding: 8px; }
	.rtws-theme .thumb-block .entry-header { font-size: 13px; min-height: 32px; }
	.rtws-card-author { display: none; }
}

@media (max-width: 430px) {
	.rtws-theme .videos-list { grid-template-columns: 1fr; }
	.rtws-account-links a:first-child { display: none; }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}

/*
 * v1.0.2: Override RetroTube's option-generated inline rule:
 *     #main .thumb-block { width: 20% !important; }
 *
 * That ID-based rule is more specific than the original child grid rule and
 * makes every card only 20% as wide as its CSS Grid cell. The result is the
 * very narrow cards shown on category/archive pages. Keep each video card at
 * the full width of its assigned grid column.
 */
body.rtws-theme #main .videos-list > article.thumb-block,
body.rtws-theme #main .videos-list > .thumb-block {
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Defensive fallback for archive templates that output cards directly. */
body.rtws-theme.archive #main > article.thumb-block,
body.rtws-theme.search #main > article.thumb-block {
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

/* ========================================================================
 * v1.0.3 — Single video readability and desktop sizing
 * ===================================================================== */

/* Keep RetroTube's option-generated menu icon pseudo-elements from
 * appearing next to the child theme's own Font Awesome icons. */
body.rtws-theme .rtws-custom-menu li > a::before,
body.rtws-theme .rtws-custom-menu li > a::after {
	content: none !important;
	display: none !important;
}

/* The white child theme should not inherit RetroTube's black section bars. */
body.rtws-theme .widget-title,
body.rtws-theme .page-title,
body.rtws-theme .comments-title,
body.rtws-theme .comment-reply-title {
	background: #f6f7f9 !important;
	color: var(--rtws-text) !important;
	border: 1px solid var(--rtws-border) !important;
	border-left: 4px solid var(--rtws-accent) !important;
	border-radius: 4px;
	box-shadow: none !important;
	text-shadow: none !important;
	padding: 10px 13px;
}

/* Replace the dark breadcrumb strip above the player with a compact light bar. */
body.rtws-theme .breadcrumbs-area {
	height: auto !important;
	min-height: 38px;
	line-height: 1.45 !important;
	margin: 0 0 22px !important;
	background: #f6f7f9 !important;
	border: 1px solid var(--rtws-border) !important;
	border-left: 4px solid var(--rtws-accent) !important;
	box-shadow: none !important;
}
body.rtws-theme #breadcrumbs {
	padding: 9px 14px !important;
	font-size: 12px !important;
	color: #59616b !important;
	white-space: normal;
}
body.rtws-theme #breadcrumbs a {
	color: #4b5563 !important;
}
body.rtws-theme #breadcrumbs a:hover,
body.rtws-theme #breadcrumbs .current {
	color: var(--rtws-accent) !important;
}
body.rtws-theme #breadcrumbs .separator {
	color: #a0a6ae !important;
}

/* Limit a single video's desktop footprint while keeping it fluid on tablets
 * and phones. The value can be changed in Appearance -> Customize. */
body.rtws-theme.single-post #main > article.type-post {
	width: 100%;
	max-width: calc(var(--rtws-player-max-width, 1000px) + 80px);
	margin: 0 auto !important;
}
body.rtws-theme.single-post .video-player {
	width: 100%;
	max-width: var(--rtws-player-max-width, 1000px);
	margin: 0 auto !important;
	background: #111;
}
body.rtws-theme.single-post .video-player .responsive-player {
	width: 100%;
	aspect-ratio: 16 / 9;
}
body.rtws-theme.single-post .video-player iframe,
body.rtws-theme.single-post .video-player video,
body.rtws-theme.single-post .video-player .video-js,
body.rtws-theme.single-post .video-player .fluid_video_wrapper {
	width: 100% !important;
	max-width: 100% !important;
}

/* Light, readable single-video title/about area. */
body.rtws-theme.single-post .title-block {
	margin: 18px 0 !important;
	padding: 12px 14px 0 !important;
	background: #fff !important;
	border: 1px solid var(--rtws-border) !important;
	border-left: 4px solid var(--rtws-accent) !important;
	border-radius: 4px;
}
body.rtws-theme.single-post .title-block h1.entry-title {
	color: var(--rtws-text) !important;
	border-bottom: 1px solid var(--rtws-border) !important;
	font-weight: 700;
	line-height: 1.4;
}
body.rtws-theme.single-post #video-tabs button.tab-link {
	color: #626973 !important;
	border-bottom-color: #cfd4da !important;
}
body.rtws-theme.single-post #video-tabs button.tab-link.active {
	color: var(--rtws-accent) !important;
	border-bottom-color: var(--rtws-accent) !important;
}
body.rtws-theme.single-post .entry-content #video-views span,
body.rtws-theme.single-post #video-author,
body.rtws-theme.single-post #video-date,
body.rtws-theme.single-post #video-actors,
body.rtws-theme.single-post .rating-result {
	color: #343a42 !important;
}
body.rtws-theme.single-post #video-author i,
body.rtws-theme.single-post #video-date i,
body.rtws-theme.single-post #video-actors i {
	color: #a8afb8 !important;
}
body.rtws-theme.single-post .entry-content .rating-bar {
	background: #e3e6ea !important;
	border: 1px solid #d6dbe0 !important;
	box-shadow: none !important;
}

/* Category/tag keyword pills: dark text on a soft neutral background. */
body.rtws-theme.single-post #video-about .tags .tags-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
}
body.rtws-theme.single-post #video-about .tags .tags-list .label,
body.rtws-theme.single-post #video-about .tags .tags-list .label:visited,
body.rtws-theme.single-post #video-about .tags .tags-list .label:focus {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin: 0 !important;
	padding: 6px 10px !important;
	background: #f2f4f6 !important;
	border: 1px solid #d8dde3 !important;
	border-radius: 5px;
	box-shadow: none !important;
	color: #30353b !important;
	font-size: 12px;
	font-weight: 650;
	line-height: 1.25;
	text-shadow: none !important;
	filter: none !important;
}
body.rtws-theme.single-post #video-about .tags .tags-list .label i {
	margin: 0 !important;
	color: var(--rtws-accent) !important;
}
body.rtws-theme.single-post #video-about .tags .tags-list .label:hover {
	background: var(--rtws-accent) !important;
	border-color: var(--rtws-accent) !important;
	color: #fff !important;
}
body.rtws-theme.single-post #video-about .tags .tags-list .label:hover i {
	color: #fff !important;
}

/* Related videos: remove the dark heading strip and use the same card grid. */
body.rtws-theme.single-post .under-video-block {
	margin-top: 28px;
	padding-top: 0;
	border-top: 0 !important;
}
body.rtws-theme.single-post .under-video-block > h2.widget-title {
	margin: 0 0 16px !important;
}
body.rtws-theme.single-post .under-video-block > h2.widget-title + div {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px 12px;
}
body.rtws-theme.single-post .under-video-block > h2.widget-title + div > article.thumb-block,
body.rtws-theme.single-post .under-video-block > h2.widget-title + div > .thumb-block {
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

@media (max-width: 1200px) {
	body.rtws-theme.single-post .under-video-block > h2.widget-title + div {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 782px) {
	body.rtws-theme.single-post #main > article.type-post {
		max-width: 100%;
	}
	body.rtws-theme.single-post .video-player {
		max-width: 100%;
	}
	body.rtws-theme.single-post .under-video-block > h2.widget-title + div {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 430px) {
	body.rtws-theme.single-post .under-video-block > h2.widget-title + div {
		grid-template-columns: 1fr;
	}
}


/* ========================================================================
 * v1.0.4 — Keep the site logo visible in the mobile header
 * ===================================================================== */

/* v1.0.3 hid the header logo below 600px to make more room for search.
 * That left visitors with no visible site identity. Keep a compact logo,
 * hide account controls on small screens, and let search use the remaining
 * width without overflowing the viewport. */
@media (max-width: 782px) {
	.rtws-account-links {
		display: none !important;
	}
	.rtws-header-brand {
		flex: 0 0 auto;
	}
	.rtws-header-main {
		flex: 1 1 auto;
		min-width: 0;
	}
	.rtws-search {
		min-width: 0;
		width: 100%;
	}
}

@media (max-width: 600px) {
	.rtws-header-brand {
		padding: 0 4px 0 7px;
		gap: 4px;
	}
	.rtws-sidebar-toggle {
		width: 35px;
		height: 38px;
		padding: 7px;
	}
	.rtws-sidebar-toggle span {
		width: 21px;
	}
	.rtws-header-logo {
		display: block !important;
		flex: 0 0 auto;
		max-width: 82px;
		overflow: hidden;
	}
	.rtws-logo-link {
		max-width: 82px;
		overflow: hidden;
	}
	.rtws-logo-image img {
		max-width: 82px;
		max-height: 30px;
	}
	.rtws-text-logo {
		font-size: 19px;
		letter-spacing: -0.8px;
	}
	.rtws-header-main {
		padding: 0 7px 0 3px;
	}
	.rtws-search input[type="search"] {
		padding-left: 11px;
		padding-right: 40px;
	}
	.rtws-search button {
		width: 38px;
	}
}

@media (max-width: 390px) {
	.rtws-header-logo,
	.rtws-logo-link {
		max-width: 70px;
	}
	.rtws-logo-image img {
		max-width: 70px;
		max-height: 27px;
	}
	.rtws-text-logo {
		font-size: 17px;
	}
	.rtws-header-brand {
		padding-left: 3px;
	}
	.rtws-header-main {
		padding-right: 5px;
	}
}

/* ========================================================================
 * v1.0.5 — Two video cards per row on mobile phones
 * ===================================================================== */
/* Keep the mobile listing compact instead of switching to one oversized
 * card below 430px. These rules are placed last so they override both the
 * earlier one-column breakpoint and RetroTube's mobile full-width option. */
@media (max-width: 600px) {
	body.rtws-theme #main .videos-list {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 10px 7px !important;
	}

	body.rtws-theme #main .videos-list > article.thumb-block,
	body.rtws-theme #main .videos-list > .thumb-block,
	body.rtws-theme #main .videos-list > article.thumb-block.full-width,
	body.rtws-theme #main .videos-list > .thumb-block.full-width {
		float: none !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin: 0 !important;
	}

	body.rtws-theme .rtws-card-content {
		padding: 7px 7px 8px !important;
	}
	body.rtws-theme .thumb-block .entry-header {
		min-height: 31px !important;
		margin-bottom: 5px !important;
		font-size: 12px !important;
		line-height: 1.28 !important;
		-webkit-line-clamp: 2;
	}
	body.rtws-theme .rtws-card-meta {
		gap: 7px !important;
		font-size: 10px !important;
		white-space: nowrap;
	}
	body.rtws-theme span.duration,
	body.rtws-theme span.hd-video {
		bottom: 5px !important;
		padding: 2px 5px !important;
		font-size: 10px !important;
	}
	body.rtws-theme span.duration { right: 5px !important; }
	body.rtws-theme span.hd-video { left: 5px !important; }

	/* Related-video cards use the same two-column mobile density. */
	body.rtws-theme.single-post .under-video-block > h2.widget-title + div {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 10px 7px !important;
	}
}

/* Preserve two columns even on narrow 320–430px phones. */
@media (max-width: 430px) {
	body.rtws-theme #main .videos-list,
	body.rtws-theme.single-post .under-video-block > h2.widget-title + div {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

/* ========================================================================
 * v1.0.6 — Align the player, title and video information to one width
 * ===================================================================== */
/* The previous build deliberately gave the article an extra 80px around the
 * player. That made the title block and the actor/tag information wider than
 * the video. Use the configured player width as the single shared content
 * width so every section starts and ends on the same vertical lines. */
body.rtws-theme.single-post #main > article.type-post {
	width: 100% !important;
	max-width: var(--rtws-player-max-width, 1000px) !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

body.rtws-theme.single-post #main > article.type-post > .entry-header,
body.rtws-theme.single-post #main > article.type-post > .entry-content,
body.rtws-theme.single-post #main > article.type-post > .under-video-block,
body.rtws-theme.single-post #main > article.type-post > .comments-area,
body.rtws-theme.single-post .video-player,
body.rtws-theme.single-post .title-block {
	width: 100% !important;
	max-width: var(--rtws-player-max-width, 1000px) !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

/* Keep the title card directly aligned below the player. */
body.rtws-theme.single-post .title-block {
	margin-top: 18px !important;
	margin-bottom: 14px !important;
}

/* Remove RetroTube's desktop 30/70 floating columns. They placed views on the
 * far left while the description, actors and keywords began much farther to
 * the right. Stack them inside one clean full-width information panel. */
body.rtws-theme.single-post .entry-content {
	clear: both !important;
	display: block !important;
	overflow: hidden;
	margin-top: 0 !important;
	margin-bottom: 26px !important;
	padding: 0 !important;
	background: #fff !important;
	border: 1px solid var(--rtws-border) !important;
	border-radius: 4px;
}

body.rtws-theme.single-post #rating-col {
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 12px 16px !important;
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 18px;
	border-bottom: 1px solid var(--rtws-border);
	background: #fafbfc;
}

body.rtws-theme.single-post #rating-col #video-views {
	flex: 0 0 auto;
	margin: 0 !important;
	padding: 0 !important;
	white-space: nowrap;
}

body.rtws-theme.single-post #rating-col .rating-bar {
	flex: 1 1 240px;
	width: auto !important;
	max-width: 420px;
	min-width: 140px;
	margin: 0 !important;
}

body.rtws-theme.single-post #rating-col .rating-result {
	flex: 0 1 190px;
	width: auto !important;
	min-width: 150px;
	margin: 0 !important;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
}

body.rtws-theme.single-post #rating-col .rating-result .percentage,
body.rtws-theme.single-post #rating-col .rating-result .likes {
	float: none !important;
	width: auto !important;
	white-space: nowrap;
}

body.rtws-theme.single-post .tab-content {
	clear: both !important;
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.rtws-theme.single-post .tab-content #video-about,
body.rtws-theme.single-post #video-about.width70,
body.rtws-theme.single-post #video-about.width100 {
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 17px 16px 16px !important;
	text-align: left !important;
}

body.rtws-theme.single-post #video-about .video-description,
body.rtws-theme.single-post #video-about #video-author,
body.rtws-theme.single-post #video-about #video-date,
body.rtws-theme.single-post #video-about #video-actors,
body.rtws-theme.single-post #video-about .tags {
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
}

body.rtws-theme.single-post #video-author,
body.rtws-theme.single-post #video-date,
body.rtws-theme.single-post #video-actors {
	line-height: 1.55;
}

/* Keep long actor lists inside the same width instead of pushing the layout. */
body.rtws-theme.single-post #video-actors,
body.rtws-theme.single-post #video-about .tags-list {
	overflow-wrap: anywhere;
	word-break: keep-all;
}

@media (max-width: 782px) {
	body.rtws-theme.single-post #main > article.type-post,
	body.rtws-theme.single-post #main > article.type-post > .entry-header,
	body.rtws-theme.single-post #main > article.type-post > .entry-content,
	body.rtws-theme.single-post #main > article.type-post > .under-video-block,
	body.rtws-theme.single-post #main > article.type-post > .comments-area,
	body.rtws-theme.single-post .video-player,
	body.rtws-theme.single-post .title-block {
		max-width: 100% !important;
	}

	body.rtws-theme.single-post #rating-col {
		padding: 10px 12px !important;
		gap: 8px 12px;
	}

	body.rtws-theme.single-post #rating-col .rating-bar {
		flex-basis: 160px;
	}

	body.rtws-theme.single-post .tab-content #video-about,
	body.rtws-theme.single-post #video-about.width70,
	body.rtws-theme.single-post #video-about.width100 {
		padding: 14px 12px !important;
	}
}

@media (max-width: 480px) {
	body.rtws-theme.single-post #rating-col {
		display: grid !important;
		grid-template-columns: 1fr;
	}

	body.rtws-theme.single-post #rating-col .rating-bar,
	body.rtws-theme.single-post #rating-col .rating-result {
		width: 100% !important;
		max-width: none;
		min-width: 0;
	}
}

/* ========================================================================
 * v1.0.7 — Restore RetroTube's PC widget sidebar and use a 4-column grid
 * ===================================================================== */
/* The fixed left navigation and RetroTube's widget sidebar are two different
 * regions. Earlier child builds hid #sidebar completely. On desktop, restore
 * it as a 330px content sidebar while retaining the fixed navigation. */
@media (min-width: 1025px) {
	body.rtws-theme #content.rtws-content {
		display: flex !important;
		flex-flow: row nowrap;
		align-items: flex-start;
		gap: 24px;
	}

	body.rtws-theme #content.rtws-content > #primary,
	body.rtws-theme #content.rtws-content > .content-area,
	body.rtws-theme #content.rtws-content > #primary.with-sidebar-right,
	body.rtws-theme #content.rtws-content > #primary.with-sidebar-left {
		float: none !important;
		flex: 1 1 0;
		width: auto !important;
		max-width: none !important;
		min-width: 0 !important;
		margin: 0 !important;
	}

	body.rtws-theme #content.rtws-content > #primary #main,
	body.rtws-theme #content.rtws-content > #primary #main.with-sidebar-right,
	body.rtws-theme #content.rtws-content > #primary #main.with-sidebar-left {
		float: none !important;
		width: 100% !important;
		max-width: none !important;
		min-width: 0 !important;
		margin: 0 !important;
	}

	body.rtws-theme #content.rtws-content > #sidebar.widget-area {
		display: block !important;
		float: none !important;
		flex: 0 0 330px;
		width: 330px !important;
		max-width: 330px !important;
		min-width: 0;
		margin: 0 !important;
		padding: 0 !important;
		overflow: visible !important;
	}

	/* Respect RetroTube's left/right content-sidebar selection. */
	body.rtws-theme #content.rtws-content > #sidebar.with-sidebar-left {
		order: -1;
	}

	/* Exactly four videos per row in the main content whenever the PC widget
	 * sidebar is enabled. This overrides RetroTube's generated card widths and
	 * the older 3-column laptop breakpoint. */
	body.rtws-theme #primary.with-sidebar-right #main .videos-list,
	body.rtws-theme #primary.with-sidebar-left #main .videos-list {
		display: grid !important;
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
		gap: 16px 12px !important;
	}

	body.rtws-theme #primary.with-sidebar-right #main .videos-list > .thumb-block,
	body.rtws-theme #primary.with-sidebar-left #main .videos-list > .thumb-block {
		float: none !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin: 0 !important;
	}
}

/* White card treatment for widgets placed in Appearance → Widgets → Sidebar. */
body.rtws-theme #sidebar.widget-area .widget,
body.rtws-theme #sidebar.widget-area .happy-sidebar {
	clear: both;
	width: 100%;
	margin: 0 0 18px !important;
	padding: 14px;
	background: #fff;
	border: 1px solid var(--rtws-border);
	border-radius: 6px;
	box-shadow: 0 1px 2px rgba(16, 24, 40, .04);
}

body.rtws-theme #sidebar.widget-area .widget > .widget-title {
	margin: -14px -14px 14px !important;
	border-top: 0 !important;
	border-right: 0 !important;
	border-left: 4px solid var(--rtws-accent) !important;
	border-radius: 5px 5px 0 0;
	font-size: 16px;
}

body.rtws-theme #sidebar.widget-area ul {
	margin: 0;
	padding-left: 18px;
}

body.rtws-theme #sidebar.widget-area li {
	margin: 0 0 8px;
	line-height: 1.45;
}

body.rtws-theme #sidebar.widget-area a {
	color: #343a42;
}
body.rtws-theme #sidebar.widget-area a:hover {
	color: var(--rtws-accent);
}

/* Video-block widgets inside the narrow sidebar use compact thumbnail pairs. */
body.rtws-theme #sidebar.widget-area .videos-list {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 8px !important;
}
body.rtws-theme #sidebar.widget-area .videos-list > .thumb-block {
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}
body.rtws-theme #sidebar.widget-area .rtws-card-content {
	display: none !important;
}
body.rtws-theme #sidebar.widget-area .thumb-block .post-thumbnail {
	border-radius: 4px;
}

/* On tablets/phones, keep the previously requested two-column video grid.
 * If RetroTube's mobile-sidebar option is enabled, place that widget sidebar
 * below the main content instead of squeezing the cards. */
@media (max-width: 1024px) {
	body.rtws-theme #content.rtws-content {
		display: block !important;
	}
	body.rtws-theme #content.rtws-content > #sidebar.widget-area {
		display: block !important;
		float: none !important;
		width: 100% !important;
		max-width: none !important;
		margin: 26px 0 0 !important;
	}
}

/* ========================================================================
 * v1.0.8 — Display 300px sidebar banners at their intended full width
 * ===================================================================== */
/* The desktop widget sidebar is 330px wide. With the widget's 14px left and
 * right padding and 1px borders, the usable banner area is exactly 300px. */
@media (min-width: 1025px) {
	body.rtws-theme #content.rtws-content > #sidebar.widget-area {
		flex-basis: 330px !important;
		width: 330px !important;
		max-width: 330px !important;
	}
}

/* Never crop or distort advertisement/banner media inside the content
 * sidebar. Keep the source aspect ratio and scale down only when necessary. */
body.rtws-theme #sidebar.widget-area .widget,
body.rtws-theme #sidebar.widget-area .happy-sidebar,
body.rtws-theme #sidebar.widget-area .textwidget,
body.rtws-theme #sidebar.widget-area .custom-html-widget,
body.rtws-theme #sidebar.widget-area figure,
body.rtws-theme #sidebar.widget-area a {
	box-sizing: border-box;
}

body.rtws-theme #sidebar.widget-area .widget,
body.rtws-theme #sidebar.widget-area .happy-sidebar,
body.rtws-theme #sidebar.widget-area .textwidget,
body.rtws-theme #sidebar.widget-area .custom-html-widget {
	overflow: visible !important;
}

body.rtws-theme #sidebar.widget-area .textwidget,
body.rtws-theme #sidebar.widget-area .custom-html-widget {
	width: 100% !important;
	max-width: 100% !important;
}

body.rtws-theme #sidebar.widget-area figure {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.rtws-theme #sidebar.widget-area .textwidget > a,
body.rtws-theme #sidebar.widget-area .custom-html-widget > a,
body.rtws-theme #sidebar.widget-area .happy-sidebar > a,
body.rtws-theme #sidebar.widget-area figure > a {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	line-height: 0;
}

body.rtws-theme #sidebar.widget-area img,
body.rtws-theme #sidebar.widget-area .wp-block-image img,
body.rtws-theme #sidebar.widget-area .widget_media_image img,
body.rtws-theme #sidebar.widget-area .happy-sidebar img {
	display: block !important;
	width: auto !important;
	max-width: 100% !important;
	height: auto !important;
	max-height: none !important;
	object-fit: contain !important;
	object-position: center center !important;
	margin-left: auto !important;
	margin-right: auto !important;
	clip: auto !important;
}

/* Embedded ad frames should remain inside the 300px usable area. */
body.rtws-theme #sidebar.widget-area iframe,
body.rtws-theme #sidebar.widget-area video,
body.rtws-theme #sidebar.widget-area object,
body.rtws-theme #sidebar.widget-area embed {
	display: block;
	max-width: 100% !important;
	margin-left: auto;
	margin-right: auto;
}

/* ========================================================================
 * v1.0.9 — HD badge placement and single-player text watermark
 * ===================================================================== */
/* Put only the HD badge in the upper-left corner. Duration remains in the
 * lower-right corner so the two labels no longer share the bottom strip. */
body.rtws-theme .thumb-block .post-thumbnail span.hd-video,
body.rtws-theme #main .thumb-block .post-thumbnail span.hd-video,
body.rtws-theme #sidebar.widget-area .thumb-block .post-thumbnail span.hd-video {
	top: 7px !important;
	right: auto !important;
	bottom: auto !important;
	left: 7px !important;
	z-index: 45 !important;
}

/* Player watermark. It is a DOM overlay and does not alter the media file. */
body.rtws-theme.single-post .video-player.rtws-watermark-enabled {
	position: relative !important;
	isolation: isolate;
	overflow: hidden;
}

body.rtws-theme.single-post .video-player .responsive-player,
body.rtws-theme.single-post .video-player iframe,
body.rtws-theme.single-post .video-player video,
body.rtws-theme.single-post .video-player .video-js,
body.rtws-theme.single-post .video-player .fluid_video_wrapper {
	position: relative;
	z-index: 1;
}

body.rtws-theme.single-post .rtws-player-watermark {
	position: absolute;
	top: 13px;
	right: 15px;
	z-index: 2147483000;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	max-width: calc(100% - 30px);
	padding: 5px 9px;
	border: 1px solid rgba(255, 255, 255, .34);
	border-radius: 4px;
	background: rgba(0, 0, 0, .30);
	color: rgba(255, 255, 255, .90) !important;
	font-size: clamp(14px, 1.45vw, 21px);
	font-weight: 800;
	line-height: 1.15;
	letter-spacing: .045em;
	text-shadow: 0 1px 4px rgba(0, 0, 0, .95);
	white-space: nowrap;
	pointer-events: none;
	user-select: none;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-3px);
	transition: opacity .18s ease, visibility .18s ease, transform .18s ease;
}

/* HTML5 videos expose reliable play/pause events. Cross-origin iframe
 * players do not, so their watermark remains visible while the iframe is
 * present instead of pretending to know the remote playback state. */
body.rtws-theme.single-post .video-player.rtws-player-playing .rtws-player-watermark,
body.rtws-theme.single-post .video-player.rtws-player-iframe .rtws-player-watermark {
	opacity: .86;
	visibility: visible;
	transform: translateY(0);
}

@media (max-width: 600px) {
	body.rtws-theme .thumb-block .post-thumbnail span.hd-video,
	body.rtws-theme #main .thumb-block .post-thumbnail span.hd-video,
	body.rtws-theme #sidebar.widget-area .thumb-block .post-thumbnail span.hd-video {
		top: 5px !important;
		bottom: auto !important;
		left: 5px !important;
	}

	body.rtws-theme.single-post .rtws-player-watermark {
		top: 8px;
		right: 8px;
		max-width: calc(100% - 16px);
		padding: 4px 7px;
		font-size: 13px;
		border-radius: 3px;
	}
}

/* ========================================================================
 * v1.0.10 — Front-end right-click, shortcut and media-copy deterrents
 * ===================================================================== */
body.rtws-protection-enabled img,
body.rtws-protection-enabled video,
body.rtws-protection-enabled canvas,
body.rtws-protection-enabled .video-player,
body.rtws-protection-enabled .responsive-player {
	-webkit-user-drag: none;
	-webkit-touch-callout: none;
}

body.rtws-protection-enabled .video-player,
body.rtws-protection-enabled .video-player * {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

body.rtws-protection-enabled .video-player a[download],
body.rtws-protection-enabled .video-player .download-video,
body.rtws-protection-enabled .video-player .video-download,
body.rtws-protection-enabled .video-player [data-download] {
	display: none !important;
}

/* Browser support varies; controlsList and JavaScript are the primary layer. */
body.rtws-protection-enabled video::-webkit-media-controls-download-button,
body.rtws-protection-enabled video::-webkit-media-controls-picture-in-picture-button {
	display: none !important;
}


/* ===== Navy logo sidebar theme overrides ===== */
body.rtws-theme {
	background:
		repeating-linear-gradient(-45deg, rgba(255,255,255,0.05) 0 10px, transparent 10px 20px),
		linear-gradient(180deg, #081a38 0%, #06152c 100%) !important;
	color: var(--rtws-text) !important;
}
body.rtws-theme #page,
.rtws-shell,
.rtws-theme #content.rtws-content {
	background: transparent;
}
.rtws-top-header {
	height: var(--rtws-header-height);
	background: rgba(6, 20, 44, 0.97);
	backdrop-filter: blur(6px);
	border-bottom: 1px solid var(--rtws-border);
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.22);
}
.rtws-header-brand {
	width: var(--rtws-sidebar-width);
	min-width: var(--rtws-sidebar-width);
	padding: 10px 18px 10px 20px;
	border-right: 1px solid var(--rtws-border);
	gap: 14px;
	align-items: flex-start;
}
.rtws-sidebar-toggle {
	margin-top: 12px;
	width: 40px;
	height: 40px;
	border-radius: 10px;
	background: rgba(255,255,255,0.04) !important;
}
.rtws-sidebar-toggle span { background: #dfeaff; }
.rtws-header-logo {
	min-width: 0;
	overflow: visible;
	padding-top: 2px;
}
.rtws-logo-link { max-width: 300px; }
.rtws-logo-image img {
	display: block;
	max-width: 300px;
	max-height: 120px;
	width: auto;
	height: auto;
	object-fit: contain;
}
.rtws-text-logo {
	font-size: 34px;
	font-weight: 900;
	letter-spacing: -0.04em;
	color: #f7fbff !important;
}
.rtws-header-main {
	align-items: center;
	gap: 18px;
	padding: 0 24px;
}
.rtws-search {
	width: min(360px, 42vw);
	flex: 0 0 auto;
}
.rtws-search input[type="search"] {
	height: 42px;
	padding: 0 46px 0 14px;
	border: 1px solid #3d628d;
	border-radius: 10px;
	background: rgba(255,255,255,0.92);
	color: #102442;
	font-size: 14px;
}
.rtws-search input[type="search"]::placeholder { color: #5d6f89; }
.rtws-search input[type="search"]:focus {
	outline: 2px solid rgba(90, 162, 255, 0.22);
	border-color: #5aa2ff;
}
.rtws-search button {
	top: 2px;
	right: 2px;
	width: 40px;
	height: 38px;
	border-left: 1px solid rgba(61, 98, 141, 0.34) !important;
	color: #224268 !important;
}
.rtws-account-links a { color: #eaf1ff !important; }
.rtws-account-links a:hover { color: #7fb6ff !important; }
.rtws-account-links i { color: #7fb6ff; }
.rtws-sidebar {
	top: var(--rtws-header-height);
	background:
		repeating-linear-gradient(-45deg, rgba(255,255,255,0.035) 0 8px, transparent 8px 16px),
		linear-gradient(180deg, #0a1f40 0%, #08172f 100%);
	border-right: 1px solid var(--rtws-border);
	box-shadow: inset -1px 0 0 rgba(255,255,255,0.03);
}
.rtws-sidebar-inner { padding: 16px 14px 34px; }
.rtws-sidebar-section { margin-bottom: 24px; }
.rtws-sidebar-section h2 {
	padding: 12px 12px 10px;
	font-size: 18px;
	font-weight: 900;
	letter-spacing: 0.04em;
	color: #89bdff !important;
}
.rtws-sidebar-list a,
.rtws-language-row {
	height: 52px;
	gap: 14px;
	padding: 0 14px;
	border-radius: 12px;
	font-size: 20px;
	font-weight: 800;
	color: #f3f7ff !important;
	background: transparent;
}
.rtws-sidebar-list a {
	display: flex;
	align-items: center;
}
.rtws-sidebar-list a:hover {
	background: rgba(255,255,255,0.07);
	color: #ffffff !important;
}
.rtws-sidebar-list .is-active > a,
.rtws-sidebar-list .current-menu-item > a,
.rtws-sidebar-list .current_page_item > a {
	background: rgba(90, 162, 255, 0.16);
	color: #ffffff !important;
	box-shadow: inset 0 0 0 1px rgba(127, 182, 255, 0.18);
}
.rtws-sidebar-list i,
.rtws-language-row i {
	width: 26px;
	flex: 0 0 26px;
	font-size: 21px;
	color: #7db7ff;
}
.rtws-menu-text {
	flex: 1 1 auto;
	min-width: 0;
}
.rtws-menu-count {
	margin-left: auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 34px;
	height: 28px;
	padding: 0 10px;
	border-radius: 999px;
	background: rgba(255,255,255,0.09);
	border: 1px solid rgba(127, 182, 255, 0.18);
	font-size: 13px;
	font-weight: 900;
	line-height: 1;
	color: #dceaff;
}
.rtws-shell {
	margin-left: var(--rtws-sidebar-width);
	padding-top: var(--rtws-header-height);
}
.rtws-theme #content.rtws-content {
	padding: 30px 28px 44px;
	color: #edf4ff;
}
.rtws-theme .widget-title,
.rtws-theme .page-title,
.rtws-theme .entry-title,
.rtws-theme h1,
.rtws-theme h2,
.rtws-theme h3,
.rtws-theme h4,
.rtws-theme h5,
.rtws-theme h6 { color: #f2f7ff !important; }
.rtws-theme .archive-description,
.rtws-theme .entry-meta,
.rtws-theme .video-excerpt,
.rtws-theme .posted-on,
.rtws-theme .byline,
.rtws-theme .comments-link { color: #aab9d6 !important; }
.rtws-theme .thumb-block.rtws-video-card,
.rtws-theme .videos-list .thumb-block,
.rtws-theme.archive #main > .thumb-block,
.rtws-theme.search #main > .thumb-block,
.rtws-theme .widget,
.rtws-theme .page-header,
.rtws-theme .video-tags,
.rtws-theme .video-description,
.rtws-theme .entry-content,
.rtws-theme .single-post,
.rtws-theme .related,
.rtws-theme .content-box,
.rtws-theme .breadcrumb,
.rtws-theme .happy-sidebar {
	background: rgba(11, 35, 69, 0.94) !important;
	border: 1px solid rgba(138, 169, 214, 0.16) !important;
	box-shadow: var(--rtws-shadow);
}
.rtws-theme .thumb-block.rtws-video-card,
.rtws-theme .videos-list .thumb-block,
.rtws-theme.archive #main > .thumb-block,
.rtws-theme.search #main > .thumb-block {
	border-radius: 14px;
	overflow: hidden;
}
.rtws-theme .thumb-block .title a,
.rtws-theme .thumb-block .title,
.rtws-theme .thumb-block .views,
.rtws-theme .thumb-block .duration,
.rtws-theme .thumb-block .rating,
.rtws-theme .thumb-block .desc { color: #edf4ff !important; }
.rtws-theme .widget-title { border-left-color: #6fb0ff; }
.rtws-theme input,
.rtws-theme select,
.rtws-theme textarea {
	background: rgba(255,255,255,0.96);
	color: #102442;
	border-color: #40658f;
}
.rtws-theme .pagination a,
.rtws-theme .pagination span,
.rtws-theme .page-numbers {
	background: rgba(255,255,255,0.06) !important;
	border-color: rgba(255,255,255,0.10) !important;
	color: #edf4ff !important;
}
.rtws-theme .pagination .current,
.rtws-theme .page-numbers.current {
	background: rgba(90, 162, 255, 0.18) !important;
	border-color: rgba(127, 182, 255, 0.25) !important;
}
body.rtws-theme.sidebar-collapsed .rtws-header-brand,
body.rtws-theme.sidebar-collapsed .rtws-sidebar {
	width: var(--rtws-sidebar-collapsed);
	min-width: var(--rtws-sidebar-collapsed);
}
body.rtws-theme.sidebar-collapsed .rtws-logo-link,
body.rtws-theme.sidebar-collapsed .rtws-sidebar-section h2,
body.rtws-theme.sidebar-collapsed .rtws-sidebar-list .rtws-menu-text,
body.rtws-theme.sidebar-collapsed .rtws-sidebar-list .rtws-menu-count,
body.rtws-theme.sidebar-collapsed .rtws-language-row span {
	opacity: 0;
	visibility: hidden;
}
body.rtws-theme.sidebar-collapsed .rtws-sidebar-list a,
body.rtws-theme.sidebar-collapsed .rtws-language-row {
	justify-content: center;
	padding: 0 10px;
}
body.rtws-theme.sidebar-collapsed .rtws-sidebar-list i,
body.rtws-theme.sidebar-collapsed .rtws-language-row i { margin-right: 0; }
body.rtws-theme.sidebar-collapsed .rtws-shell { margin-left: var(--rtws-sidebar-collapsed); }
@media (max-width: 1199px) {
	.rtws-search { width: min(300px, 46vw); }
	.rtws-sidebar-list a,
	.rtws-language-row { font-size: 18px; }
}
@media (max-width: 991px) {
	:root { --rtws-header-height: 94px; }
	.rtws-header-brand {
		align-items: center;
		padding: 10px 16px;
	}
	.rtws-logo-image img { max-width: 220px; max-height: 74px; }
	.rtws-text-logo { font-size: 27px; }
	.rtws-header-main { padding: 0 16px; }
	.rtws-search { width: min(250px, 48vw); }
}
@media (max-width: 767px) {
	:root { --rtws-header-height: 82px; }
	.rtws-top-header { height: var(--rtws-header-height); }
	.rtws-header-brand {
		width: auto;
		min-width: 0;
		flex: 0 0 auto;
		gap: 10px;
		padding: 8px 12px;
		border-right: 0;
	}
	.rtws-logo-image img { max-width: 170px; max-height: 58px; }
	.rtws-header-main {
		gap: 10px;
		padding: 0 12px 0 0;
	}
	.rtws-search {
		width: auto;
		flex: 1 1 auto;
	}
	.rtws-sidebar {
		width: min(88vw, 340px);
		transform: translateX(-100%);
	}
	body.rtws-theme.sidebar-open .rtws-sidebar { transform: translateX(0); }
	.rtws-sidebar-list a,
	.rtws-language-row {
		font-size: 17px;
		height: 48px;
	}
}


/* ===== v1.0.1 refinements ===== */
body.rtws-theme {
	background: linear-gradient(180deg, #07162c 0%, #091c36 100%) !important;
}
.rtws-top-header {
	background: #081a34;
}
.rtws-sidebar {
	background: linear-gradient(180deg, #0a1d3a 0%, #08172e 100%);
}
.rtws-header-main {
	position: relative;
	justify-content: flex-end;
}
.rtws-search {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	width: min(360px, 34vw);
	margin: 0 auto;
}
.rtws-account-links {
	margin-left: auto;
	position: relative;
	z-index: 2;
}
.rtws-sidebar-list a:hover {
	background: rgba(255,255,255,0.08);
	color: #7fc0ff !important;
}
.rtws-sidebar-list a:hover i,
.rtws-sidebar-list a:hover .rtws-menu-text,
.rtws-sidebar-list a:hover .rtws-menu-count {
	color: #7fc0ff !important;
}
.rtws-sidebar-list .is-active > a,
.rtws-sidebar-list .current-menu-item > a,
.rtws-sidebar-list .current_page_item > a {
	background: rgba(90, 162, 255, 0.14);
	color: #ffffff !important;
}
@media (max-width: 1199px) {
	.rtws-search { width: min(320px, 36vw); }
}
@media (max-width: 991px) {
	.rtws-header-main {
		justify-content: flex-end;
	}
	.rtws-search {
		position: static;
		left: auto;
		transform: none;
		width: min(250px, 48vw);
		margin: 0;
	}
}
@media (max-width: 767px) {
	.rtws-search {
		width: auto;
		flex: 1 1 auto;
	}
}


/* ===== v1.0.2 refinements ===== */
.rtws-header-brand {
	padding: 10px 18px 10px 20px;
	gap: 14px;
}
.rtws-header-logo,
.rtws-logo-link,
.rtws-logo-image {
	width: 300px;
	max-width: 300px;
}
.rtws-logo-image img {
	width: 300px;
	height: 120px;
	max-width: 300px;
	max-height: 120px;
	object-fit: contain;
}
.rtws-search {
	width: min(520px, 46vw);
}
.rtws-search input[type="search"] {
	height: 46px;
	font-size: 15px;
	padding: 0 50px 0 16px;
	border: 1px solid #4d75a6;
	border-radius: 12px;
}
.rtws-search button {
	top: 3px;
	right: 3px;
	width: 42px;
	height: 40px;
}
.rtws-sidebar-list a:hover {
	background: rgba(255,255,255,0.10);
	color: #a9d8ff !important;
}
.rtws-sidebar-list a:hover i,
.rtws-sidebar-list a:hover .rtws-menu-text,
.rtws-sidebar-list a:hover .rtws-menu-count {
	color: #a9d8ff !important;
}
.rtws-menu-count {
	min-width: 44px;
	height: 32px;
	padding: 0 12px;
	border-radius: 999px;
	background: linear-gradient(180deg, #6fb8ff 0%, #4e92da 100%);
	border: 1px solid rgba(255,255,255,0.18);
	font-size: 14px;
	font-weight: 900;
	color: #ffffff;
	box-shadow: 0 4px 12px rgba(0,0,0,0.18);
}
.rtws-sidebar-list a:hover .rtws-menu-count {
	background: linear-gradient(180deg, #9fd4ff 0%, #6fb8ff 100%);
	color: #08203d !important;
}
@media (max-width: 1199px) {
	.rtws-search { width: min(460px, 44vw); }
}
@media (max-width: 991px) {
	.rtws-logo-image img {
		width: 220px;
		height: 74px;
		max-width: 220px;
		max-height: 74px;
	}
	.rtws-search { width: min(320px, 50vw); }
}
@media (max-width: 767px) {
	.rtws-header-logo,
	.rtws-logo-link,
	.rtws-logo-image {
		width: auto;
		max-width: 170px;
	}
	.rtws-logo-image img {
		width: 170px;
		height: 58px;
		max-width: 170px;
		max-height: 58px;
	}
	.rtws-search { width: auto; }
}


/* ===== v1.0.3 mobile/layout fixes ===== */
/* Remove the remaining bright white section bars and footer strip so the
 * whole site matches the navy theme. */
.rtws-footer,
.rtws-footer .row,
.rtws-footer .site-info,
.rtws-footer .footer-menu-container {
	background: #091a33 !important;
}
.rtws-footer {
	border-top: 1px solid rgba(138, 169, 214, 0.18) !important;
}
.rtws-footer .site-info,
.rtws-footer a,
.rtws-footer li,
.rtws-footer p,
.rtws-footer span {
	color: #d6e2f5 !important;
}
.rtws-footer a:hover {
	color: #8ec7ff !important;
}

.rtws-theme .widget-title,
.rtws-theme .page-title,
.rtws-theme .comments-title,
.rtws-theme .comment-reply-title,
body.rtws-theme #sidebar.widget-area .widget > .widget-title,
body.rtws-theme .breadcrumbs-area,
body.rtws-theme .title-block {
	background: rgba(9, 27, 53, 0.96) !important;
	color: #edf4ff !important;
	border-color: rgba(138, 169, 214, 0.18) !important;
	border-left-color: #6fb0ff !important;
	box-shadow: none !important;
}
body.rtws-theme #breadcrumbs,
body.rtws-theme #breadcrumbs a {
	color: #c9d9f0 !important;
}
body.rtws-theme #breadcrumbs .current,
body.rtws-theme #breadcrumbs a:hover {
	color: #8ec7ff !important;
}
body.rtws-theme #sidebar.widget-area .widget,
body.rtws-theme #sidebar.widget-area .happy-sidebar {
	background: rgba(11, 35, 69, 0.94) !important;
	border: 1px solid rgba(138, 169, 214, 0.16) !important;
	box-shadow: var(--rtws-shadow) !important;
}
body.rtws-theme #sidebar.widget-area a {
	color: #edf4ff !important;
}
body.rtws-theme #sidebar.widget-area a:hover {
	color: #8ec7ff !important;
}

/* Keep all content containers inside the viewport on tablets and phones. */
body.rtws-theme,
body.rtws-theme #page,
body.rtws-theme .rtws-shell,
body.rtws-theme #content.rtws-content {
	overflow-x: hidden;
}

@media (max-width: 1024px) {
	body.rtws-theme #content.rtws-content {
		display: block !important;
		padding: 20px 14px 34px !important;
	}
	body.rtws-theme #content.rtws-content > #primary,
	body.rtws-theme #content.rtws-content > .content-area,
	body.rtws-theme #content.rtws-content > #primary.with-sidebar-right,
	body.rtws-theme #content.rtws-content > #primary.with-sidebar-left,
	body.rtws-theme #content.rtws-content > #sidebar.widget-area,
	body.rtws-theme #content.rtws-content > #sidebar.with-sidebar-right,
	body.rtws-theme #content.rtws-content > #sidebar.with-sidebar-left,
	body.rtws-theme #content.rtws-content > #primary #main,
	body.rtws-theme #content.rtws-content > #primary #main.with-sidebar-right,
	body.rtws-theme #content.rtws-content > #primary #main.with-sidebar-left {
		float: none !important;
		clear: both !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin: 0 !important;
	}
	body.rtws-theme #content.rtws-content > #sidebar.widget-area {
		margin-top: 22px !important;
	}
}

/* Rebuild the mobile header into two clean rows: top row = menu + logo,
 * second row = full-width search. This prevents the search field from being
 * cut off and keeps the content from sliding underneath. */
@media (max-width: 767px) {
	:root { --rtws-header-height: 126px; }
	.rtws-top-header {
		height: var(--rtws-header-height);
		display: block;
		padding: 0;
	}
	.rtws-header-brand {
		width: 100%;
		min-width: 0;
		display: flex;
		align-items: center;
		justify-content: flex-start;
		gap: 10px;
		padding: 10px 12px 8px;
		border-right: 0;
	}
	.rtws-sidebar-toggle {
		margin-top: 0;
		flex: 0 0 40px;
	}
	.rtws-header-logo,
	.rtws-logo-link,
	.rtws-logo-image {
		flex: 0 1 auto;
		width: auto !important;
		max-width: none !important;
	}
	.rtws-logo-image img {
		width: 140px !important;
		height: 56px !important;
		max-width: 140px !important;
		max-height: 56px !important;
	}
	.rtws-header-main {
		display: block;
		width: 100%;
		padding: 0 12px 12px !important;
	}
	.rtws-search {
		position: static !important;
		left: auto !important;
		transform: none !important;
		width: 100% !important;
		max-width: none !important;
		min-width: 0 !important;
		margin: 0 !important;
	}
	.rtws-search input[type="search"] {
		width: 100%;
		height: 44px;
		font-size: 15px;
		padding-right: 46px;
	}
	.rtws-search button {
		width: 40px;
		height: 38px;
	}
	.rtws-sidebar {
		top: var(--rtws-header-height) !important;
		width: min(88vw, 320px);
	}
	.admin-bar .rtws-sidebar {
		top: calc(var(--rtws-header-height) + 46px) !important;
	}
	.rtws-sidebar-overlay {
		top: var(--rtws-header-height) !important;
	}
	.admin-bar .rtws-sidebar-overlay {
		top: calc(var(--rtws-header-height) + 46px) !important;
	}
	.rtws-shell {
		padding-top: var(--rtws-header-height) !important;
	}
	body.rtws-theme #content.rtws-content {
		padding: 16px 12px 30px !important;
	}
}

/* Slightly denser spacing on very small phones so the video list appears
 * immediately and does not leave a large blank area. */
@media (max-width: 430px) {
	:root { --rtws-header-height: 118px; }
	.rtws-logo-image img {
		width: 128px !important;
		height: 50px !important;
		max-width: 128px !important;
		max-height: 50px !important;
	}
	.rtws-header-brand {
		padding: 8px 10px 6px;
	}
	.rtws-header-main {
		padding: 0 10px 10px !important;
	}
	.rtws-search input[type="search"] {
		height: 42px;
	}
}


/* ===== v1.0.4 mobile content and navy section-title fixes ===== */

/* These selectors intentionally include body and #main/#sidebar so they
 * override the older light-theme rules that used higher specificity. */
body.rtws-theme .widget-title,
body.rtws-theme #main .widget-title,
body.rtws-theme #primary .widget-title,
body.rtws-theme #sidebar.widget-area .widget-title,
body.rtws-theme #sidebar.widget-area .widget > .widget-title,
body.rtws-theme .page-header .widget-title,
body.rtws-theme h1.widget-title,
body.rtws-theme h2.widget-title,
body.rtws-theme h3.widget-title {
	background: #0b2345 !important;
	background-image: none !important;
	color: #eef5ff !important;
	border: 1px solid rgba(138, 169, 214, 0.24) !important;
	border-left: 4px solid #6fb0ff !important;
	box-shadow: none !important;
	text-shadow: none !important;
}

body.rtws-theme .widget-title a,
body.rtws-theme #main .widget-title a,
body.rtws-theme #sidebar.widget-area .widget-title a,
body.rtws-theme .widget-title span {
	color: #eef5ff !important;
}

/* Keep title rows and their surrounding sections navy, including the home
 * blocks such as Videos being watched / Longest videos. */
body.rtws-theme .page-header,
body.rtws-theme #main .page-header,
body.rtws-theme .under-video-block > .widget-title,
body.rtws-theme #sidebar.widget-area .widget {
	background-color: #0a1f3e !important;
}

/* The navy override below was loaded after the original mobile rule and
 * accidentally restored a 320px left margin on phones. Reset it explicitly. */
@media (max-width: 1024px) {
	body.rtws-theme .rtws-shell,
	body.rtws-theme.sidebar-collapsed .rtws-shell,
	body.rtws-theme.rtws-sidebar-collapsed .rtws-shell {
		margin-left: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	body.rtws-theme #content.rtws-content {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	body.rtws-theme #primary,
	body.rtws-theme #primary.content-area,
	body.rtws-theme #primary.with-sidebar-right,
	body.rtws-theme #primary.with-sidebar-left,
	body.rtws-theme #main,
	body.rtws-theme #main.site-main,
	body.rtws-theme #main.with-sidebar-right,
	body.rtws-theme #main.with-sidebar-left {
		position: relative !important;
		left: auto !important;
		right: auto !important;
		transform: none !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	body.rtws-theme #main .videos-list {
		display: grid !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 12px 9px !important;
	}

	body.rtws-theme #main .videos-list > article.thumb-block,
	body.rtws-theme #main .videos-list > .thumb-block,
	body.rtws-theme #main .videos-list > article.thumb-block.full-width,
	body.rtws-theme #main .videos-list > .thumb-block.full-width {
		position: relative !important;
		left: auto !important;
		right: auto !important;
		transform: none !important;
		float: none !important;
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin: 0 !important;
		visibility: visible !important;
		opacity: 1 !important;
	}
}

@media (max-width: 430px) {
	body.rtws-theme #main .videos-list {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 10px 7px !important;
	}
}


/* ===== v1.0.5 single video lower panel navy styling ===== */
/* Convert the white lower information panels under the player to the same
 * navy theme and improve contrast for all texts, icons and tag pills. */
body.rtws-theme.single-post .title-block,
body.rtws-theme.single-post .entry-content,
body.rtws-theme.single-post .tab-content,
body.rtws-theme.single-post #video-about.width70,
body.rtws-theme.single-post #video-about.width100,
body.rtws-theme.single-post .tab-content #video-about,
body.rtws-theme.single-post .video-description,
body.rtws-theme.single-post .under-video-block,
body.rtws-theme.single-post .comments-area {
	background: rgba(11, 35, 69, 0.96) !important;
	color: #edf4ff !important;
	border-color: rgba(138, 169, 214, 0.18) !important;
}

body.rtws-theme.single-post .title-block {
	background: rgba(9, 27, 53, 0.98) !important;
	box-shadow: var(--rtws-shadow) !important;
}
body.rtws-theme.single-post .title-block h1.entry-title {
	color: #eef5ff !important;
	border-bottom-color: rgba(138, 169, 214, 0.18) !important;
}

body.rtws-theme.single-post #video-tabs {
	border-bottom-color: rgba(138, 169, 214, 0.18) !important;
}
body.rtws-theme.single-post #video-tabs button.tab-link {
	color: #bfd3f1 !important;
	border-bottom-color: rgba(138, 169, 214, 0.24) !important;
	background: transparent !important;
}
body.rtws-theme.single-post #video-tabs button.tab-link.active,
body.rtws-theme.single-post #video-tabs button.tab-link:hover {
	color: #8fc8ff !important;
	border-bottom-color: #6fb0ff !important;
}

body.rtws-theme.single-post #rating-col {
	background: rgba(9, 27, 53, 0.9) !important;
	border-bottom-color: rgba(138, 169, 214, 0.18) !important;
}
body.rtws-theme.single-post #rating-col,
body.rtws-theme.single-post #rating-col span,
body.rtws-theme.single-post #rating-col div,
body.rtws-theme.single-post #rating-col .rating-result,
body.rtws-theme.single-post #video-views,
body.rtws-theme.single-post #video-views span,
body.rtws-theme.single-post .rating-result .percentage,
body.rtws-theme.single-post .rating-result .likes {
	color: #eef5ff !important;
}
body.rtws-theme.single-post .entry-content #video-views span,
body.rtws-theme.single-post #video-author,
body.rtws-theme.single-post #video-date,
body.rtws-theme.single-post #video-actors,
body.rtws-theme.single-post .rating-result,
body.rtws-theme.single-post .video-description,
body.rtws-theme.single-post .video-description p,
body.rtws-theme.single-post .video-description span,
body.rtws-theme.single-post .video-description div {
	color: #dce8f8 !important;
}
body.rtws-theme.single-post .entry-content .rating-bar {
	background: rgba(255,255,255,0.10) !important;
	border: 1px solid rgba(138, 169, 214, 0.22) !important;
}
body.rtws-theme.single-post .entry-content .rating-bar span,
body.rtws-theme.single-post .entry-content .rating-bar .bar,
body.rtws-theme.single-post .entry-content .rating-bar .likes-bar,
body.rtws-theme.single-post .entry-content .rating-bar .bar-percentage {
	background-color: #6fb0ff !important;
}

body.rtws-theme.single-post #video-about .video-description a,
body.rtws-theme.single-post #video-author a,
body.rtws-theme.single-post #video-date a,
body.rtws-theme.single-post #video-actors a,
body.rtws-theme.single-post .comments-area a,
body.rtws-theme.single-post .under-video-block a {
	color: #7fbfff !important;
}
body.rtws-theme.single-post #video-about .video-description a:hover,
body.rtws-theme.single-post #video-author a:hover,
body.rtws-theme.single-post #video-date a:hover,
body.rtws-theme.single-post #video-actors a:hover,
body.rtws-theme.single-post .comments-area a:hover,
body.rtws-theme.single-post .under-video-block a:hover {
	color: #bfe0ff !important;
}

body.rtws-theme.single-post #video-author i,
body.rtws-theme.single-post #video-date i,
body.rtws-theme.single-post #video-actors i,
body.rtws-theme.single-post .tags .label i,
body.rtws-theme.single-post .video-description i,
body.rtws-theme.single-post .rating-result i,
body.rtws-theme.single-post #rating-col i {
	color: #89bdff !important;
}

body.rtws-theme.single-post #video-about .tags .tags-list .label,
body.rtws-theme.single-post #video-about .tags .tags-list .label:visited,
body.rtws-theme.single-post #video-about .tags .tags-list .label:focus {
	background: rgba(255,255,255,0.08) !important;
	border: 1px solid rgba(138, 169, 214, 0.24) !important;
	color: #e9f2ff !important;
}
body.rtws-theme.single-post #video-about .tags .tags-list .label:hover {
	background: #6fb0ff !important;
	border-color: #6fb0ff !important;
	color: #081e39 !important;
}
body.rtws-theme.single-post #video-about .tags .tags-list .label:hover i {
	color: #081e39 !important;
}

/* Ensure the related videos title row under the single page also follows the theme. */
body.rtws-theme.single-post .under-video-block > h2.widget-title,
body.rtws-theme.single-post .under-video-block .widget-title {
	background: #0b2345 !important;
	color: #eef5ff !important;
	border-color: rgba(138, 169, 214, 0.24) !important;
	border-left-color: #6fb0ff !important;
}


/* ===== v1.0.6 remove remaining white gaps on single video pages ===== */
/* Some single-post wrappers from the parent theme still kept a white
 * background, which became visible between the player, title, info panel and
 * related section on both PC and mobile. Force all of those wrappers to use a
 * transparent/navy background so no white strips remain. */
body.rtws-theme.single-post #primary,
body.rtws-theme.single-post #main,
body.rtws-theme.single-post #main > article,
body.rtws-theme.single-post #main > article.type-post,
body.rtws-theme.single-post #main > article.post,
body.rtws-theme.single-post #main > article.type-videos,
body.rtws-theme.single-post #main > .post,
body.rtws-theme.single-post #main > .single,
body.rtws-theme.single-post #main > .single-post,
body.rtws-theme.single-post .post,
body.rtws-theme.single-post article.post,
body.rtws-theme.single-post article.type-post {
	background: transparent !important;
	background-image: none !important;
	border: 0 !important;
	box-shadow: none !important;
}

/* Keep the visible content boxes navy and remove gap bleed-through. */
body.rtws-theme.single-post .video-player,
body.rtws-theme.single-post .title-block,
body.rtws-theme.single-post .entry-content,
body.rtws-theme.single-post .under-video-block,
body.rtws-theme.single-post .comments-area {
	position: relative;
	z-index: 1;
}

body.rtws-theme.single-post .video-player {
	margin-bottom: 0 !important;
}
body.rtws-theme.single-post .title-block {
	margin-top: 0 !important;
	margin-bottom: 12px !important;
}
body.rtws-theme.single-post .entry-content {
	margin-top: 0 !important;
	margin-bottom: 12px !important;
}
body.rtws-theme.single-post .under-video-block {
	margin-top: 0 !important;
	padding-top: 0 !important;
}
body.rtws-theme.single-post .under-video-block > h2.widget-title {
	margin-top: 0 !important;
}

/* If the parent theme inserts generic white wrappers/divs around the single
 * content, make them inherit the dark page background instead of white. */
body.rtws-theme.single-post .single-content,
body.rtws-theme.single-post .content-box,
body.rtws-theme.single-post .video-description-wrap,
body.rtws-theme.single-post .post-wrap,
body.rtws-theme.single-post .entry-wrap,
body.rtws-theme.single-post .post-inner,
body.rtws-theme.single-post .single-video,
body.rtws-theme.single-post .single-video-content {
	background: transparent !important;
	background-image: none !important;
	border-color: transparent !important;
	box-shadow: none !important;
}

/* Mobile: keep the same fix and tighten spacing a little so white separators
 * never appear between stacked blocks. */
@media (max-width: 767px) {
	body.rtws-theme.single-post .title-block {
		margin-top: 0 !important;
		margin-bottom: 10px !important;
	}
	body.rtws-theme.single-post .entry-content {
		margin-bottom: 10px !important;
	}
	body.rtws-theme.single-post .under-video-block > h2.widget-title {
		margin-bottom: 10px !important;
	}
}


/* ===== v1.1.0 dedicated mobile start page ===== */
body.rtws-mobile-app-home .rtws-sidebar,
body.rtws-mobile-app-home .rtws-sidebar-overlay,
body.rtws-mobile-app-home #sidebar.widget-area,
body.rtws-mobile-app-home .rtws-account-links,
body.rtws-mobile-app-home #back-to-top {
	display: none !important;
}
body.rtws-mobile-app-home .rtws-shell {
	margin-left: 0 !important;
	padding-top: 0 !important;
}
body.rtws-mobile-app-home .rtws-top-header {
	height: auto !important;
	background: linear-gradient(180deg, #17181b 0%, #111214 100%) !important;
	border-bottom: 1px solid rgba(255,255,255,0.06);
	box-shadow: none;
}
body.rtws-mobile-app-home .rtws-header-brand {
	width: 100% !important;
	min-width: 0 !important;
	justify-content: center;
	padding: 18px 18px 12px !important;
	border-right: 0 !important;
	gap: 0 !important;
}
body.rtws-mobile-app-home .rtws-sidebar-toggle {
	display: none !important;
}
body.rtws-mobile-app-home .rtws-header-logo,
body.rtws-mobile-app-home .rtws-logo-link,
body.rtws-mobile-app-home .rtws-logo-image {
	width: auto !important;
	max-width: 100% !important;
}
body.rtws-mobile-app-home .rtws-logo-image img {
	width: auto !important;
	height: auto !important;
	max-width: min(100%, 340px) !important;
	max-height: 110px !important;
	object-fit: contain;
}
body.rtws-mobile-app-home .rtws-header-main {
	display: block !important;
	padding: 0 18px 16px !important;
}
body.rtws-mobile-app-home .rtws-search {
	position: static !important;
	left: auto !important;
	transform: none !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}
body.rtws-mobile-app-home .rtws-search input[type="search"] {
	height: 56px;
	padding: 0 72px 0 18px;
	border: 1px solid rgba(255,255,255,0.08);
	border-radius: 10px;
	background: #232629 !important;
	color: #f4f6fb !important;
	font-size: 16px;
	box-shadow: inset 0 2px 10px rgba(0,0,0,0.28);
}
body.rtws-mobile-app-home .rtws-search input[type="search"]::placeholder {
	color: #d9dce4;
}
body.rtws-mobile-app-home .rtws-search button {
	top: 0;
	right: 0;
	width: 58px;
	height: 56px;
	border: 0 !important;
	border-radius: 0 10px 10px 0;
	background: linear-gradient(180deg, #ff4d84 0%, #ff2b6d 100%) !important;
	color: #ffffff !important;
}
body.rtws-mobile-app-home .rtws-theme #content.rtws-content,
body.rtws-mobile-app-home #content.rtws-content {
	padding: 18px 18px 28px !important;
	background: linear-gradient(180deg, #101113 0%, #040d22 30%, #030a18 100%) !important;
}
body.rtws-mobile-app-home .rtws-mobile-home-primary,
body.rtws-mobile-app-home .rtws-mobile-home-main {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
}
body.rtws-mobile-app-home .rtws-mobile-app-section {
	padding: 6px 0 8px;
}
body.rtws-mobile-app-home .rtws-mobile-app-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px 18px;
}
body.rtws-mobile-app-home .rtws-mobile-app-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	text-decoration: none;
}
body.rtws-mobile-app-home .rtws-mobile-app-icon-wrap {
	position: relative;
	display: block;
	width: 100%;
	max-width: 118px;
	aspect-ratio: 1 / 1;
}
body.rtws-mobile-app-home .rtws-mobile-app-thumb {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	border-radius: 26px;
	background-color: #1d2430;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	box-shadow: 0 10px 24px rgba(0,0,0,0.28), inset 0 0 0 1px rgba(255,255,255,0.10);
	overflow: hidden;
}
body.rtws-mobile-app-home .rtws-mobile-app-thumb::after {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: 26px;
	box-shadow: inset 0 0 0 1px rgba(255,255,255,0.14);
	pointer-events: none;
}
body.rtws-mobile-app-home .rtws-mobile-app-thumb--fallback {
	background: linear-gradient(180deg, #2d93ff 0%, #2256a8 100%);
}
body.rtws-mobile-app-home .rtws-mobile-app-thumb--fallback i {
	font-size: 36px;
	color: #ffffff;
}
body.rtws-mobile-app-home .rtws-mobile-app-count {
	position: absolute;
	right: 8px;
	top: 8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 28px;
	height: 28px;
	padding: 0 8px;
	border-radius: 999px;
	background: rgba(0,0,0,0.72);
	color: #ffffff;
	font-size: 12px;
	font-weight: 800;
	box-shadow: 0 2px 8px rgba(0,0,0,0.22);
}
body.rtws-mobile-app-home .rtws-mobile-app-label {
	display: block;
	width: 100%;
	text-align: center;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.35;
	color: #ffffff !important;
	word-break: keep-all;
}
@media (max-width: 560px) {
	body.rtws-mobile-app-home .rtws-header-brand {
		padding: 16px 14px 10px !important;
	}
	body.rtws-mobile-app-home .rtws-header-main {
		padding: 0 14px 14px !important;
	}
	body.rtws-mobile-app-home #content.rtws-content {
		padding: 16px 14px 24px !important;
	}
	body.rtws-mobile-app-home .rtws-mobile-app-grid {
		gap: 18px 14px;
	}
	body.rtws-mobile-app-home .rtws-mobile-app-thumb {
		border-radius: 22px;
	}
	body.rtws-mobile-app-home .rtws-mobile-app-thumb::after {
		border-radius: 22px;
	}
	body.rtws-mobile-app-home .rtws-mobile-app-label {
		font-size: 13px;
	}
}


/* ===== v1.1.1 compact mobile app header and fully visible icon grid ===== */
/* The app-style mobile header is not fixed. This prevents the first icon row
 * from sitting underneath the logo/search area. */
body.rtws-mobile-app-home .rtws-top-header {
	position: relative !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
}
body.admin-bar.rtws-mobile-app-home .rtws-top-header {
	top: auto !important;
}
body.rtws-mobile-app-home .rtws-shell {
	padding-top: 0 !important;
}

/* Smaller mobile logo. */
body.rtws-mobile-app-home .rtws-header-brand {
	padding: 10px 14px 7px !important;
}
body.rtws-mobile-app-home .rtws-logo-image img {
	width: auto !important;
	height: auto !important;
	max-width: 220px !important;
	max-height: 88px !important;
}

/* Smaller search field and button. */
body.rtws-mobile-app-home .rtws-header-main {
	padding: 0 14px 11px !important;
}
body.rtws-mobile-app-home .rtws-search input[type="search"] {
	height: 46px !important;
	padding: 0 56px 0 15px !important;
	font-size: 14px !important;
	border-radius: 9px !important;
}
body.rtws-mobile-app-home .rtws-search button {
	width: 48px !important;
	height: 46px !important;
	border-radius: 0 9px 9px 0 !important;
	font-size: 17px !important;
}

/* Keep the icon grid at the top of the mobile content and hide any inherited
 * home-page sections if a cache/plugin injects them after the app grid. */
body.rtws-mobile-app-home #content.rtws-content {
	padding-top: 14px !important;
}
body.rtws-mobile-app-home .rtws-mobile-home-main > *:not(.rtws-mobile-app-section) {
	display: none !important;
}
body.rtws-mobile-app-home .rtws-mobile-app-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 17px 12px !important;
}
body.rtws-mobile-app-home .rtws-mobile-app-icon-wrap {
	max-width: 92px !important;
}
body.rtws-mobile-app-home .rtws-mobile-app-thumb,
body.rtws-mobile-app-home .rtws-mobile-app-thumb::after {
	border-radius: 20px !important;
}
body.rtws-mobile-app-home .rtws-mobile-app-label {
	font-size: 13px !important;
}

@media (max-width: 390px) {
	body.rtws-mobile-app-home .rtws-logo-image img {
		max-width: 190px !important;
		max-height: 76px !important;
	}
	body.rtws-mobile-app-home .rtws-header-brand {
		padding-top: 8px !important;
	}
	body.rtws-mobile-app-home .rtws-header-main {
		padding-right: 10px !important;
		padding-left: 10px !important;
	}
	body.rtws-mobile-app-home #content.rtws-content {
		padding-right: 10px !important;
		padding-left: 10px !important;
	}
	body.rtws-mobile-app-home .rtws-mobile-app-grid {
		gap: 15px 9px !important;
	}
	body.rtws-mobile-app-home .rtws-mobile-app-icon-wrap {
		max-width: 82px !important;
	}
	body.rtws-mobile-app-home .rtws-mobile-app-label {
		font-size: 12px !important;
	}
}


/* ===== v1.1.2 mobile app home: remove inherited video/footer sections ===== */
body.rtws-mobile-app-home #content.rtws-content > *:not(.rtws-mobile-home-primary),
body.rtws-mobile-app-home .rtws-mobile-home-primary ~ *,
body.rtws-mobile-app-home .rtws-mobile-home-main ~ *,
body.rtws-mobile-app-home .rtws-footer,
body.rtws-mobile-app-home .site-footer,
body.rtws-mobile-app-home .happy-footer,
body.rtws-mobile-app-home .happy-footer-mobile,
body.rtws-mobile-app-home .footer-menu-container,
body.rtws-mobile-app-home .footer-widget,
body.rtws-mobile-app-home .footer-widgets,
body.rtws-mobile-app-home #footer,
body.rtws-mobile-app-home [class*="footer-columns"] {
\tdisplay: none !important;
}

body.rtws-mobile-app-home .rtws-mobile-home-primary,
body.rtws-mobile-app-home .rtws-mobile-home-main,
body.rtws-mobile-app-home .rtws-mobile-app-section {
\tmin-height: 0 !important;
\tmargin-bottom: 0 !important;
}


/* ===== v1.1.3 remove desktop footer widget/video blocks ===== */
body.rtws-theme .rtws-footer-clean .happy-footer,
body.rtws-theme .rtws-footer-clean .happy-footer-mobile,
body.rtws-theme .rtws-footer-clean .footer-widget,
body.rtws-theme .rtws-footer-clean .footer-widgets,
body.rtws-theme .rtws-footer-clean .widget,
body.rtws-theme .rtws-footer-clean [class*="footer-columns"],
body.rtws-theme .rtws-footer-clean .videos-list,
body.rtws-theme .rtws-footer-clean .thumb-block {
	display: none !important;
}
body.rtws-theme .rtws-footer-clean {
	min-height: 56px;
	padding: 0 !important;
}
body.rtws-theme .rtws-footer-clean > .row {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 56px;
	padding: 12px 18px !important;
}
body.rtws-theme .rtws-footer-clean .site-info,
body.rtws-theme .rtws-footer-clean .footer-menu-container {
	width: 100%;
	margin: 0 !important;
	text-align: center;
}
