/* ============================================
   TURKUSERIALAI.LIVE — PREMIUM THEME v4
   Plus Jakarta Sans · Cinematic Dark
   ============================================ */

:root {
  --bg-deep: #05090e;
  --bg-primary: #091119;
  --bg-card: #0e1821;
  --bg-elevated: #162030;
  --bg-glass: rgba(11, 16, 24, 0.8);
  --border-subtle: rgba(255,255,255,0.06);
  --border-light: rgba(255,255,255,0.10);
  --border-hover: rgba(255,255,255,0.16);
  --text-primary: #eaeff5;
  --text-secondary: #94a7be;
  --text-muted: #586b82;
  --accent: #e8443a;
  --accent-warm: #f2784b;
  --accent-glow: rgba(232, 68, 58, 0.14);
  --accent-gradient: linear-gradient(135deg, #f2784b 0%, #e8443a 50%, #c2293f 100%);
  --gold: #d4a855;
  --green: #34d399;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 12px;
  --radius-xl: 20px;
  --shadow-card: 0 4px 24px rgba(0,0,0,0.3);
  --shadow-hover: 0 20px 60px rgba(0,0,0,0.55);
  --shadow-glow: 0 0 40px rgba(232, 68, 58, 0.12);
  --ease: cubic-bezier(0.22, 1, 0.36, 1);
}

/* === RESET === */
*{background:0 0;margin:0;padding:0;outline:0;border:0;box-sizing:border-box}
ol,ul{list-style:none}blockquote,q{quotes:none}
table{border-collapse:collapse;border-spacing:0}
input,select{vertical-align:middle}
article,aside,figure,figure img,footer,header,hgroup,main,nav,section{display:block}
img{max-width:100%}.clr{clear:both}
.clearfix::after{content:"";display:table;clear:both}

/* === BASE === */
body {
  font: 400 14px/1.6 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  padding: 0; margin: 0; color: var(--text-primary);
  background: var(--bg-deep);
  min-height: 100vh; width: 100%;
}
/* Noise overlay */
body::after {
  content: ''; position: fixed; inset: 0; z-index: 9999; pointer-events: none; opacity: 0.018;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size: 200px;
}
a { color: var(--text-primary); text-decoration: none; transition: color 0.25s ease; }
a:focus, a:hover { color: var(--accent); text-decoration: none; }
h1,h2,h3,h4,h5 { font-weight: 700; font-size: 17px; letter-spacing: -0.02em; }

/* === BUTTONS === */
button, input[type=button], input[type=password], input[type=submit], input[type=text], select, textarea {
  appearance: none; font-size: 14px; font-family: inherit;
}
.btn, .button, .meta-fav a, .pagi-load a, .qq-upload-button, .self_delete_link,
.up-second li a, .usp-btn a, .usp-edit a, button:not(.color-btn):not(.tox-tbtn):not(.f-button):not([class*=fr]):not(.search-btn):not([class*=owl-]):not([class*=hero-]):not([class*=rail-]):not([class*=tp-]),
html input[type=button], input[type=reset], input[type=submit] {
  display: inline-block; text-align: center; padding: 0 24px;
  height: 42px; line-height: 42px; cursor: pointer; font-weight: 700;
  background: var(--accent-gradient); color: #fff; font-size: 13px;
  border-radius: var(--radius-md); transition: all 0.35s var(--ease);
  letter-spacing: 0.02em;
}
.btn:hover, .button:hover, .meta-fav a:hover, .pagi-load a:hover, .qq-upload-button:hover,
.up-second li a:hover, .usp-btn a:hover, .usp-edit a:hover, .self_delete_link:hover,
button:not(.color-btn):not([class*=fr]):not(.tox-tbtn):not(.f-button):not(.search-btn):not([class*=owl-]):not([class*=hero-]):not([class*=rail-]):not([class*=tp-]):hover,
html input[type=button]:hover, input[type=reset]:hover, input[type=submit]:hover {
  background: var(--accent-gradient); color: #fff; border-radius: var(--radius-md);
  transform: translateY(-2px); box-shadow: 0 8px 30px rgba(232,68,58,0.35);
}
button:active, input[type=button]:active, input[type=submit]:active { transform: translateY(0); box-shadow: none; }

/* === SCROLLBAR === */
::-webkit-scrollbar { width: 5px; }
::-webkit-scrollbar-track { background: var(--bg-primary); }
::-webkit-scrollbar-thumb { background: var(--accent-gradient); border-radius: 3px; }

/* === FORM INPUTS === */
input[type=password], input[type=text] { height: 42px; line-height: 42px; border-radius: var(--radius-md); padding: 0 16px; }
select { height: 42px; padding: 0 16px; border-radius: var(--radius-md); }
textarea { padding: 16px; overflow: auto; vertical-align: top; resize: vertical; border-radius: var(--radius-md); }
input[type=password], input[type=text], select, textarea {
  width: 100%; background: rgba(255,255,255,0.04); color: var(--text-primary);
  border: 1px solid var(--border-subtle); transition: all 0.3s var(--ease);
}
select { width: auto; }
input[type=password]:focus, input[type=text]:focus, textarea:focus {
  border-color: rgba(232,68,58,0.3); box-shadow: 0 0 0 3px rgba(232,68,58,0.06), 0 8px 30px rgba(0,0,0,0.15);
  background: rgba(255,255,255,0.06);
}
input::placeholder, textarea::placeholder { color: var(--text-muted); opacity: 1; font-size: 13px; }
input:focus::placeholder, textarea:focus::placeholder { color: transparent; }

/* === IMAGE UTILS === */
.img-box,.img-fit,.img-resp,.img-resp-vert,.img-wide{overflow:hidden;position:relative}
.img-resp{padding-top:70%}.img-resp-vert{padding-top:140%}
.img-box img,.img-resp img,.img-resp-vert img{width:100%;min-height:100%;display:block}
.img-resp img,.img-resp-vert img{position:absolute;left:0;top:0}
.img-wide img{width:100%;display:block}.img-fit img{width:100%;height:100%;object-fit:cover}
.nowrap{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* === FLEX UTILS === */
#dle-content,.fx-row{display:flex;flex-wrap:wrap}
.fx-col{display:flex;flex-direction:column}.fx-center{justify-content:center}
.fx-middle{align-items:center}.fx-start{justify-content:flex-start}
.fx-first{order:-1}.fx-last{order:10}
.fx-1{flex-basis:0px;flex-grow:1;max-width:100%;min-width:50px}
.fx-between{justify-content:space-between;z-index:111}
.fw700,b,strong{font-weight:600}
.icon-left .icon,.icon-left [class*=fa-]{margin-right:6px}
.icon-right .icon,.icon-right [class*=fa-]{margin-left:10px}
#dofullsearch,.hidden{display:none}
.anim,.btn,.footer a,.header-btn,.popular-item-img::before,.short-img,.short-item a,
.side-nav a,.sidebar a,button{transition:all 0.35s var(--ease)}
.form-wrap h1,.mtitle,.sub-title h1{margin-bottom:30px;font-weight:800;font-size:24px!important}
#dle-content>:not(.th-item){width:100%}

/* ========== LAYOUT ========== */
.wrap { min-width: 320px; position: relative; padding: 16px; }
.wrap-center { max-width: 1400px; margin: 0 auto; position: relative; z-index: 20; }
.wrap-main {
  background: var(--bg-primary);
  border-radius: 12px;
  border: 1px solid var(--border-subtle);
  box-shadow: 0 0 120px rgba(0,0,0,0.6);
  overflow: hidden;
}

/* ========== HEADER ========== */
.header {
  padding: 0 34px; display: flex; align-items: center; height: 64px;
  background: var(--bg-glass);
  backdrop-filter: blur(30px) saturate(1.3); -webkit-backdrop-filter: blur(30px) saturate(1.3);
  border-bottom: 1px solid var(--border-subtle);
  position: sticky; top: 0; z-index: 100;
  gap: 0;
}
.logo {
  display: flex; align-items: center;
  height: 64px; line-height: 64px; font-size: 24px; font-weight: 300;
  color: var(--text-primary); white-space: nowrap;
  letter-spacing: -0.02em;
  flex-shrink: 0; margin-right: 8px;
}
.logo-icon {
  width: 34px; height: 34px; border-radius: 9px; flex-shrink: 0;
  filter: drop-shadow(0 2px 8px rgba(232,68,58,0.3));
  margin-right: 10px;
}
.logo span {
  font-weight: 800;
  background: var(--accent-gradient);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
}
.logo span.logo-domain {
  font-size: 13px; font-weight: 400; color: var(--text-muted);
  -webkit-text-fill-color: var(--text-muted); margin-left: 2px;
}

/* Header inline nav */
.header-nav {
  display: flex; align-items: center; height: 64px;
  margin: 0 auto; padding: 0 16px;
}
.header-nav a {
  display: flex; align-items: center; height: 64px;
  padding: 0 15px; font-size: 11px; font-weight: 700;
  color: var(--text-muted); text-decoration: none;
  text-transform: uppercase; letter-spacing: 0.06em;
  position: relative; transition: color 0.25s ease;
  white-space: nowrap;
}
.header-nav a::after {
  content: ''; position: absolute; bottom: 0; left: 12px; right: 12px;
  height: 2px; background: var(--accent-gradient);
  border-radius: 2px 2px 0 0;
  transform: scaleX(0); transition: transform 0.3s var(--ease);
}
.header-nav a:hover { color: var(--text-primary); }
.header-nav a:hover::after { transform: scaleX(1); }
.header-nav a.active { color: var(--text-primary); }
.header-nav a.active::after { transform: scaleX(1); }
/* Pulsing dot for active page */
.header-nav a.active::before {
  content: ''; width: 5px; height: 5px; border-radius: 50%;
  background: var(--accent); margin-right: 7px; flex-shrink: 0;
  animation: navPulse 2s ease-in-out infinite;
  box-shadow: 0 0 6px rgba(232,68,58,0.5);
}
@keyframes navPulse { 0%,100% { opacity: 1; transform: scale(1); } 50% { opacity: 0.4; transform: scale(0.8); } }

.header-btn { padding: 0 24px; border-radius: var(--radius-md); font-size: 13px; }

/* Search - right aligned */
.search-wrap { position: relative; width: 220px; flex-shrink: 0; margin-left: auto; }
.search-box { position: relative; }
.search-box input, .search-box input:focus {
  padding: 0 40px 0 14px; height: 36px; line-height: 36px;
  background: rgba(255,255,255,0.04);
  border: 1px solid var(--border-subtle); border-radius: 10px;
  font-size: 13px; width: 100%;
}
.search-box input:focus {
  border-color: rgba(232,68,58,0.3);
  box-shadow: 0 0 0 3px rgba(232,68,58,0.06), 0 4px 20px rgba(0,0,0,0.15);
  background: rgba(255,255,255,0.06); width: 280px;
  transition: all 0.35s var(--ease);
}
.search-box input { transition: all 0.35s var(--ease); }
.search-box input:not(:focus)::placeholder { color: var(--text-muted); font-size: 12px; }
.search-box button {
  position: absolute; right: 0; top: 0; z-index: 10;
  width: 40px; height: 36px; cursor: pointer; background: 0 0;
  line-height: 36px; color: var(--text-muted); text-align: center;
  border-radius: 0 10px 10px 0; transition: color 0.25s ease;
}
.search-box button:hover { color: var(--accent); }

/* Old f-menu hidden - nav is in header now */
.f-menu { display: none; }

/* ========== CAROUSEL / HERO ========== */
.carou-sect {
  position: relative; padding: 24px 28px;
  background: linear-gradient(180deg, rgba(232,68,58,0.03) 0%, transparent 60%);
  border-bottom: 1px solid var(--border-subtle);
  overflow: hidden;
}
.carou-sect::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(232,68,58,0.25) 50%, transparent 100%);
}
.carou-content { height: 230px; counter-reset: rank; }
.carou-title {
  display: flex; align-items: center; gap: 12px;
  font-size: 11px; font-weight: 700; text-transform: uppercase;
  letter-spacing: 0.1em; color: var(--accent); margin-bottom: 18px;
}
.carou-title .line { flex: 0 0 20px; height: 2px; background: var(--accent-gradient); border-radius: 1px; }
.carou-title [class*=fa-] {
  color: var(--accent); margin-right: 0;
  width: auto; height: auto; line-height: 1; text-align: center;
  border-radius: 0; background: transparent; display: inline;
}

.popular-item { transition: all 0.45s var(--ease); counter-increment: rank; position: relative; }
.popular-item-img {
  display: block; height: 230px; border-radius: var(--radius-lg);
  overflow: hidden; box-shadow: var(--shadow-card);
}
.popular-item-img img { transition: transform 0.6s var(--ease); }
.popular-item:hover .popular-item-img img { transform: scale(1.06); }
.popular-item:hover {
  transform: translateY(-6px);
  z-index: 2;
}
/* Ranking number badge - uniform accent style */
.popular-item::after {
  content: counter(rank); position: absolute; top: 8px; right: 8px; z-index: 12;
  width: 30px; height: 30px; border-radius: 9px;
  background: var(--accent-gradient);
  display: flex; align-items: center; justify-content: center;
  font-size: 13px; font-weight: 800; color: #fff;
  line-height: 30px; text-align: center;
  box-shadow: 0 3px 12px rgba(232,68,58,0.45);
}
.popular-item-title {
  position: absolute; z-index: 10; left: 0; bottom: 0; right: 0;
  padding: 12px 14px; text-align: center;
  color: #fff; font-weight: 700; font-size: 13px; overflow-wrap: break-word;
  line-height: 1.3;
}
.popular-item-img::before {
  content: ""; position: absolute; z-index: 5;
  left: 0; right: 0; bottom: 0; height: 65%;
  background: linear-gradient(transparent, rgba(6,8,12,0.95));
  opacity: 1;
}

/* ========== COLUMNS ========== */
.cols { padding: 28px; gap: 28px; }
.main { min-height: 100vh; }
.sidebar { width: 300px; margin-left: 0; order: 1; flex-shrink: 0; }

/* ========== FOOTER ========== */
.footer {
  border-top: 1px solid var(--border-subtle);
  background: rgba(8,12,18,0.95);
}
.footer-top {
  display: flex; align-items: center; justify-content: space-between;
  padding: 24px 28px; gap: 24px;
}
.footer-brand { display: flex; align-items: center; gap: 12px; }
.footer-logo-icon { width: 36px; height: 36px; border-radius: 9px; flex-shrink: 0; }
.footer-brand-text { display: flex; flex-direction: column; }
.footer-name { font-size: 16px; font-weight: 300; color: var(--text-primary); letter-spacing: -0.01em; }
.footer-name b { font-weight: 800; background: var(--accent-gradient); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.footer-name small { font-size: 11px; color: var(--text-muted); margin-left: 2px; }
.footer-desc { font-size: 11px; color: var(--text-muted); margin-top: 1px; }
.footer-links { display: flex; gap: 6px; flex-wrap: wrap; }
.footer-links a {
  padding: 6px 14px; border-radius: var(--radius-sm);
  background: rgba(255,255,255,0.03); border: 1px solid var(--border-subtle);
  font-size: 12px; font-weight: 600; color: var(--text-secondary);
  text-decoration: none; transition: all 0.25s ease; text-transform: uppercase;
  letter-spacing: 0.03em;
}
.footer-links a:hover { color: var(--accent); border-color: rgba(232,68,58,0.2); background: var(--accent-glow); }
.footer-social { display: flex; gap: 8px; }
.footer-social-btn {
  width: 36px; height: 36px; border-radius: 10px;
  background: rgba(255,255,255,0.04); border: 1px solid var(--border-subtle);
  display: flex; align-items: center; justify-content: center;
  color: var(--text-muted); font-size: 14px; text-decoration: none;
  transition: all 0.25s ease;
}
.footer-social-btn:hover { color: #fff; background: var(--accent-gradient); border-color: transparent; transform: translateY(-2px); box-shadow: 0 4px 16px rgba(232,68,58,0.3); }
.footer-bottom {
  padding: 14px 28px; border-top: 1px solid var(--border-subtle);
  font-size: 11px; color: var(--text-muted); text-align: center;
}
.footer a { color: var(--accent); text-decoration: none; font-weight: 600; }
.footer a:hover { text-decoration: underline; }

#gotop {
  position: fixed; width: 44px; height: 44px; line-height: 44px;
  right: 16px; bottom: 16px; z-index: 990; display: none;
  background: var(--bg-glass); border: 1px solid var(--border-subtle);
  border-radius: var(--radius-md); cursor: pointer; font-size: 18px; text-align: center;
  backdrop-filter: blur(16px); transition: all 0.3s var(--ease);
}
#gotop:hover { background: var(--accent-gradient); color: #fff; border-color: transparent; }

/* ========== SIDEBAR ========== */
.side-box {
  margin-bottom: 20px; background: rgba(255,255,255,0.02);
  border: 1px solid var(--border-subtle); border-radius: var(--radius-lg);
  overflow: hidden; transition: border-color 0.3s ease;
}
.side-box:hover { border-color: var(--border-light); }
.side-bt {
  padding: 14px 16px; background: rgba(255,255,255,0.02);
  border-bottom: 1px solid var(--border-subtle);
  font-size: 11px; font-weight: 700; text-transform: uppercase;
  letter-spacing: 0.08em; color: var(--text-muted);
  display: flex; align-items: center; gap: 8px;
  margin-bottom: 0;
}
.mb-remove { margin-bottom: -10px; }
.nav-col { width: 50%; padding: 14px; }
.nav-col + .nav-col { width: 50%; }
.nav-title {
  font-size: 10px; font-weight: 700; color: var(--text-muted);
  text-transform: uppercase; letter-spacing: 0.08em; margin-bottom: 10px;
}
.nav-menu + .nav-title { margin-top: 12px; }
.nav-menu a {
  display: flex; align-items: center; justify-content: space-between;
  width: 100%; font-size: 12px; color: var(--text-secondary);
  margin: 0 0 6px; padding: 9px 12px;
  background: rgba(255,255,255,0.03); border: 1px solid var(--border-subtle);
  border-radius: var(--radius-sm); transition: all 0.25s ease; font-weight: 600;
}
.nav-menu a:hover, .side-popular-item:hover .side-popular-item-title, a.short-title:hover {
  color: var(--accent); background: var(--accent-glow);
  border-color: rgba(232,68,58,0.2); transform: translateY(-1px);
}
.side-popular-item:nth-child(2n+1) {
  background: rgba(255,255,255,0.01); border-radius: var(--radius-md); position: relative;
}
.side-popular-item:nth-child(2n+1):before { display: none; }
.side-popular-item { margin-bottom: 0; padding: 12px 16px; cursor: pointer; transition: all 0.25s ease; }
.side-popular-item:hover { background: rgba(255,255,255,0.03); }
.side-popular-item + .side-popular-item { border-top: 1px solid var(--border-subtle); }
.side-popular-item-img { width: 54px; height: 72px; margin-right: 14px; border-radius: var(--radius-sm); overflow: hidden; border: 1px solid var(--border-subtle); }
.side-popular-item-title { font-weight: 600; font-size: 13px; line-height: 1.3; }
.side-popular-item-info {
  font-size: 10px; color: var(--accent); text-align: center;
  background: var(--accent-glow); padding: 3px 8px; border-radius: 5px;
  display: inline-block; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em;
}
.side-popular-item-date { color: var(--text-muted); margin-top: 4px; font-size: 11px; }
.side-recommend-item { display: block; margin: 4px; margin-top: 0; margin-bottom: 15px; width: 45%; transition: all 0.35s var(--ease); }
.side-recommend-item-img { border-radius: var(--radius-md); overflow: hidden; }
.side-recommend-item:hover { opacity: 0.85; transform: translateY(-3px); }

/* Latest comments sidebar */
.lcomm { margin-bottom: 10px; position: relative; z-index: 111; padding: 14px 16px; background: rgba(255,255,255,0.02); border: 1px solid var(--border-subtle); border-radius: var(--radius-md); transition: all 0.25s ease; }
.lcomm:hover { border-color: var(--border-light); }
.ltitle { display: block; line-height: 1; font-weight: 300; font-size: 13px; margin-top: 10px; padding-left: 2px; position: relative; }
.ltext { line-height: 1.5; padding: 0; background: transparent; border: none; font-size: 13px; }
.ltext:after { display: none; }
.lmeta { font-size: 12px; margin: 8px 0 0; color: var(--text-muted); display: flex; align-items: center; gap: 10px; }
.lav, .ldate, .lname { display: inline-block; vertical-align: middle; }
.lav { width: 26px; height: 26px; border-radius: 8px; margin-right: 0; }
.lcomm .comm-letter { line-height: 26px; font-size: 11px; border-radius: 8px; background: linear-gradient(135deg, var(--bg-elevated), #1e2838); color: var(--accent); }
.lname { font-weight: 600; }
.ldate { margin-left: auto; }

/* ========== SECTIONS ========== */
.sect { margin-bottom: 24px; }
.sect-header { display: flex; align-items: center; margin-bottom: 20px; }
.sect:last-child { margin-bottom: 0; }
.sect-title {
  font-weight: 700; font-size: 15px; text-transform: uppercase;
  letter-spacing: 0.05em; display: flex; align-items: center; gap: 10px;
}
.carou-title [class*=fa-], .sect-title [class*=fa-], .side-bt [class*=fa-], .speedbar [class*=fa-] {
  color: var(--accent); margin-right: 8px;
  width: 28px; height: 28px; line-height: 28px; text-align: center;
  border-radius: 8px; background: var(--accent-glow); display: inline-block;
}

/* Sorter */
.sect-link, .sorter {
  position: relative; cursor: pointer; height: 30px; line-height: 28px; margin-left: 12px;
  padding: 0 12px; background: rgba(255,255,255,0.03); border: 1px solid var(--border-subtle);
  border-radius: var(--radius-sm); font-size: 12px; display: block; transition: all 0.25s ease;
  color: var(--text-secondary); font-family: inherit;
}
.sorter::before { content: attr(data-label); display: inline-block; vertical-align: top; }
.sorter > span { display: inline-block; vertical-align: top; margin-left: 2px; }
.sorter form {
  display: none; background: var(--bg-elevated); border: 1px solid var(--border-light);
  border-radius: var(--radius-md); padding: 10px; line-height: 26px;
  position: absolute; right: -1px; top: 100%; width: 160px; z-index: 999;
  box-shadow: 0 12px 40px rgba(0,0,0,0.5);
}
.sorter a:hover { text-decoration: underline; }
.sect-link:hover, .sorter:hover { border-color: var(--border-hover); color: var(--text-primary); }

/* ========== SHORT STORY CARDS (list) ========== */
.short-item {
  margin-bottom: 16px; padding: 20px;
  background: var(--bg-card); border: 1px solid var(--border-subtle);
  border-radius: var(--radius-lg); transition: all 0.4s var(--ease);
}
.short-item:hover {
  border-color: var(--border-hover); transform: translateY(-3px);
  box-shadow: var(--shadow-hover);
}
.short-img { width: 170px; height: 250px; margin-right: 20px; display: block; border-radius: var(--radius-md); overflow: hidden; }
.short-header { margin-bottom: 5px; }
.short-title { display: block; font-size: 18px; font-weight: 700; line-height: 1.5; letter-spacing: -0.02em; }
.short-text { font-size: 14px; line-height: 1.7; }
.short-list li { position: relative; padding: 0 0 4px 120px; margin: 3px 0; font-size: 14px; line-height: 1.7; border-bottom: 1px solid var(--border-subtle); }
.short-list li > span:first-child { position: absolute; left: 0; top: 0; color: var(--text-muted); font-weight: 500; }
.short-list a { color: var(--accent); }
.short-meta { font-size: 13px; }
.short-metafuls { margin-top: 15px; padding: 10px 14px; font-size: 13px; border: 1px solid var(--border-subtle); background: rgba(255,255,255,0.02); border-radius: var(--radius-md); }

/* Play mask overlay — image lives inside .mask so it must stay visible */
.mask {
  position: absolute; left: 0; top: 0; width: 100%; height: 100%;
  text-align: center; padding: 0;
  background: transparent; color: #fff; font-size: 20px;
  align-items: center; border-radius: inherit;
  z-index: 2;
}
.mask img { position: relative; z-index: 1; transition: transform 0.5s var(--ease), filter 0.5s ease; }
.th-item:hover .mask img, .popular-item:hover .mask img { transform: scale(1.06); filter: brightness(0.85); }
.mask::before {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(0deg, rgba(6,10,16,0.7) 0%, rgba(6,10,16,0.2) 40%, transparent 60%);
  opacity: 0;
  transition: opacity 0.4s ease; z-index: 2;
  border-radius: inherit;
}
.mask span.fal {
  width: 52px; height: 52px; border-radius: 50%; text-align: center; line-height: 52px;
  background: var(--accent-gradient); margin: 0 auto; padding-left: 3px; font-size: 18px;
  box-shadow: 0 4px 24px rgba(232,68,58,0.5); transition: all 0.4s var(--ease);
  position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%) scale(0.6);
  opacity: 0; z-index: 3;
}
.th-item:hover .mask::before, .popular-item:hover .mask::before,
.side-recommend-item:hover .mask::before, .side-popular-item:hover .mask::before { opacity: 1; }
.th-item:hover .mask span.fal, .popular-item:hover .mask span.fal,
.side-recommend-item:hover .mask span.fal, .side-popular-item:hover .mask span.fal {
  opacity: 1; transform: translate(-50%, -50%) scale(1);
  box-shadow: 0 4px 24px rgba(232,68,58,0.5), 0 0 0 8px rgba(232,68,58,0.15);
}
.ps-link { cursor: pointer; }
.flex-col { display: flex; flex-direction: column; justify-content: center; }
.short-meta-item { margin-right: 20px; }
.short-rating { line-height: 28px; background: rgba(255,255,255,0.04); padding: 0 12px; font-size: 13px; border-radius: var(--radius-sm); border: 1px solid var(--border-subtle); margin-right: 20px; }
.short-rating .fa-thumbs-up { color: #4ade80; margin-right: 10px; }
.short-rating .fa-thumbs-down { color: #ef4444; margin: 0 10px; }
.short-label {
  background: var(--accent-gradient); color: #fff; padding: 4px 10px;
  position: absolute; left: 10px; top: 10px; z-index: 10;
  font-size: 10px; font-weight: 700; border-radius: var(--radius-sm);
  text-transform: uppercase; letter-spacing: 0.04em;
  box-shadow: 0 2px 10px rgba(232,68,58,0.4);
}
.short-btn { height: 32px; line-height: 32px; font-size: 12px; padding: 0 12px; border-radius: var(--radius-sm); }
.short-rate-in { line-height: 30px; border-radius: var(--radius-sm); text-align: center; font-size: 13px; opacity: 0.9; padding: 0 8px; margin-left: 10px; font-weight: 600; }
.short-rate-in::before { content: attr(data-text); display: inline; margin-right: 3px; text-transform: uppercase; }
.short-rate-kp { background: #f60; color: #fff; }
.short-rate-imdb { background: #f5c518; color: #000; }
.mrating { margin-right: 10px; overflow: hidden; }
.mrating a { transition: none; }

/* SEO desc */
.site-desc { line-height: 1.7; font-size: 14px; padding: 24px; background: rgba(255,255,255,0.02); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); }
.site-desc h1,.site-desc h2,.site-desc h3 { font-size: 17px; font-weight: 700; margin-bottom: 10px; text-align: center; text-transform: uppercase; }
.site-desc li { list-style-type: disc; margin-left: 40px; }
.site-desc p { margin-bottom: 10px; }
.site-desc > :last-child { margin-bottom: 0; }
.site-desc a { color: var(--accent); text-decoration: underline; }
.site-desc img { float: left; max-width: 200px; margin: 0 10px 10px 0; border-radius: var(--radius-sm); }

/* Pagination */
.bottom-nav { margin-bottom: -10px; text-align: center; }
.navigation a, .navigation span, .pnext a, .pnext > span, .pprev a, .pprev > span {
  display: inline-flex; align-items: center; justify-content: center;
  padding: 0 10px; margin: 0 3px 10px; line-height: 38px; min-width: 38px;
  background: rgba(255,255,255,0.03); border: 1px solid var(--border-subtle);
  border-radius: var(--radius-sm); font-size: 13px; font-weight: 600;
  color: var(--text-secondary); transition: all 0.25s ease;
}
.navigation a:hover { border-color: var(--border-hover); color: var(--text-primary); background: rgba(255,255,255,0.05); }
.navigation span:not(.nav_ext), .pagi-nav a:hover {
  background: var(--accent-gradient); color: #fff; border: 0;
  box-shadow: 0 2px 12px rgba(232,68,58,0.3);
}

/* Breadcrumbs */
.speedbar { font-size: 13px; margin-bottom: 16px; padding: 12px 16px; background: rgba(255,255,255,0.02); border: 1px solid var(--border-subtle); border-radius: var(--radius-md); }
.speedbar .fal { margin-right: 8px; }

/* ========== FULL STORY ========== */
.fleft { width: 220px; margin-right: 24px; flex-shrink: 0; }
.fimg { border-radius: var(--radius-lg); overflow: hidden; box-shadow: 0 8px 30px rgba(0,0,0,0.4); position: relative; }
.fimg img { width: 100%; display: block; }
.ftext { margin: 20px 0; font-size: 14px; line-height: 1.7; color: var(--text-secondary); }
.fcols .short-list li { font-size: 13px; line-height: 1.7; }
.fcols .short-meta-item:last-child { margin-right: 0; }
h1 a { margin-left: 10px; font-size: 15px; }
.fcols { padding: 28px; background: var(--bg-card); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); position: relative; overflow: hidden; }
.fcols::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: var(--accent-gradient); opacity: 0.5; }
.fcols .short-title { font-size: 20px; font-weight: 800; letter-spacing: -0.02em; }

/* Info list */
.short-list li { position: relative; padding: 8px 0 8px 130px; margin: 0; font-size: 14px; line-height: 1.6; border-bottom: 1px solid var(--border-subtle); color: var(--text-primary); }
.short-list li:last-child { border-bottom: none; }
.short-list li > span:first-child { position: absolute; left: 0; top: 8px; color: var(--text-muted); font-weight: 600; font-size: 12px; text-transform: uppercase; letter-spacing: 0.04em; }
.short-list a { color: var(--accent-warm); font-weight: 500; transition: color 0.2s; }
.short-list a:hover { color: var(--accent); }

.short-metafuls { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--border-subtle); }
.mrating { font-size: 14px; }

.frels .popular-item-img::before { background: linear-gradient(transparent, rgba(6,8,12,0.95)); opacity: 1; }
.fsubtitle { text-align: center; font-size: 18px; font-weight: 700; margin: 24px 0 16px; letter-spacing: -0.01em; }

/* Player modern */
.fplayer { position: relative; background: var(--bg-card); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); overflow: hidden; }
.fctrl { padding: 0 20px 0 0; display: flex; align-items: center; min-height: 48px; border-bottom: 1px solid var(--border-subtle); background: rgba(255,255,255,0.015); }
.fplayer .tabs-sel span {
  display: inline-block; padding: 0 20px; height: 48px; line-height: 48px; cursor: pointer;
  background: rgba(255,255,255,0.02); border-right: 1px solid var(--border-subtle);
  font-weight: 600; font-size: 13px; transition: all 0.25s ease;
}
.fplayer .tabs-sel span.current { background: var(--accent-gradient); color: #fff; }
.fplayer .tabs-sel span:hover { color: var(--accent); }
.fplayer .tabs-sel span.current:hover { color: #fff; }
.js .tabs-b { background-color: #000; display: none; }
.js .tabs-b.visible { display: block; }
.fcompl a:hover, .ffav a:hover, .ffav span:hover { color: var(--accent); cursor: pointer; }
.fcompl, .ffav { margin-left: 20px; font-size: 13px; }
.ffav .fal, .ffav .fas { color: var(--accent); margin-right: 5px; }
.fcompl .fal { margin-right: 5px; color: var(--text-muted); }
.fshare { padding: 12px; text-align: center; white-space: nowrap; }
.fshare .fab, .fshare .fas { width: 38px; height: 32px; border-radius: var(--radius-sm); text-align: center; line-height: 32px; background: var(--accent); color: #fff; font-size: 14px; margin: 0 2px; cursor: pointer; transition: all 0.25s ease; }
.fshare .fa:hover { opacity: 0.8; transform: translateY(-2px); }
.fab.fa-vk { background: #5075a5; }
.fab.fa-facebook-f { background: #4b6baf; }
.fab.fa-twitter { background: #2daae1; }
.fa.fa-rss, .fab.fa-odnoklassniki { background: #fc6d00; }
.fas.fa-paper-plane { background: #5682a3; }
.video-box embed, .video-box frame, .video-box iframe, .video-box object, .video-box video { display: block; width: 100%; height: 480px; max-width: 100% !important; }
.mejs-container { max-width: 100% !important; }

/* Full text */
.full-text { line-height: 1.8; margin-bottom: 16px; padding: 24px; background: rgba(255,255,255,0.02); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); color: var(--text-secondary); }
.full-text img:not(.emoji) { max-width: 100%; margin-top: 10px; margin-bottom: 10px; border-radius: var(--radius-sm); }
.full-text > .highslide img[style*=left], .full-text > img[style*=left] { margin: 0 10px 10px 0; }
.full-text > .highslide img[style*=right], .full-text > img[style*=right] { margin: 0 0 10px 10px; }
.full-text a { text-decoration: underline; color: var(--accent); }
.full-text a:hover { text-decoration: none; }
.full-text h2,.full-text h3,.full-text h4,.full-text h5 { margin: 10px 0; font-size: 22px; font-weight: 700; }
.full-text p { margin-bottom: 10px; }
.full-text > ol,.full-text > ul { margin: 0; }
.full-text > ul li { list-style: disc; margin-left: 40px; }
.full-text > ol li { list-style: decimal; margin-left: 40px; }

/* Comments */
.add-comms { margin-bottom: 24px; padding: 24px; background: rgba(255,255,255,0.02); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); }
.ac-inputs input { width: 48.5%; margin-bottom: 15px; }
.ac-textarea textarea { height: 100px; margin-bottom: 15px; }
.ac-protect, .ac-textarea .bb-editor + br { display: none; }
.comments_subscribe input { margin-right: 10px; }
.comments_subscribe { display: block; }
.mass_comments_action { display: none; }
.last-comm-link { display: inline-block; padding-bottom: 20px; color: var(--accent); font-size: 18px; }
.comm-avatar { position: absolute; left: 0; top: 0; width: 40px; height: 40px; border-radius: var(--radius-md); }
.comm-letter {
  position: absolute; left: 0; top: 0; width: 100%; height: 100%;
  line-height: 40px; text-align: center;
  background: linear-gradient(135deg, var(--bg-elevated), #1e2838);
  color: var(--accent); font-size: 16px; font-weight: 700;
  text-transform: uppercase; border-radius: var(--radius-md);
}
.comm-item { font-size: 13px; padding-left: 55px; position: relative; min-height: 40px; margin-bottom: 20px; }
.comm-two { margin: 5px 0 10px; }
.comm-one > span { margin-right: 15px; opacity: 0.5; }
.comm-one > span.comm-author, .comm-one > span.comm-author a { font-weight: 600; opacity: 1; }
.comm-three-left > a, .comm-three-right li a { opacity: 0.6; }
.comm-three-right li { display: inline-block; margin-left: 15px; }
.comm-rate3 { white-space: nowrap; margin-right: 15px; height: 20px; line-height: 20px; display: inline-block; vertical-align: top; position: relative; top: -3px; }
.comm-rate3 a { display: inline-block; vertical-align: middle; position: relative; opacity: 0.8; }
.comm-rate3 a:first-child { top: -5px; }
.comm-rate3 > span { margin: 0 5px; }
.comm-rate3 > span > span.ratingtypeplus { color: #4ade80; }
.comm-rate3 > span > span.ratingplus { color: #a3e635; }
.comm-rate3 > span > span.ratingminus { color: #ef4444; }
.comm-three a:hover { border-bottom-color: transparent; }
.comm-three-left > a { opacity: 1; color: var(--accent); border-bottom: 1px dotted var(--accent); }

/* Login */
.overlay-box { position: fixed; z-index: 998; left: 0; top: 0; width: 100%; height: 100%; opacity: 0.9; background: var(--bg-deep); cursor: pointer; }
.login-box { position: fixed; z-index: 999; left: 50%; top: 50%; transform: translate(-50%,-50%); background: var(--bg-elevated); padding: 30px 40px 40px; border-radius: var(--radius-xl); border-top: 3px solid var(--accent); width: 400px; box-shadow: 0 25px 80px rgba(0,0,0,0.7); }
.login-close { width: 30px; height: 30px; line-height: 30px; text-align: center; font-size: 18px; cursor: pointer; position: absolute; top: 12px; right: 12px; color: var(--text-muted); border-radius: var(--radius-sm); transition: all 0.2s ease; }
.login-close:hover { color: var(--accent); background: var(--accent-glow); }
.login-title { font-size: 22px; font-weight: 800; margin-bottom: 20px; text-align: center; }
.login-avatar { width: 60px; height: 60px; border-radius: 50%; margin: 0 auto 15px; text-align: center; line-height: 60px; font-size: 24px; background: linear-gradient(135deg, var(--bg-elevated), #1e2838); color: var(--accent); }
.login-input { margin-bottom: 15px; }
.login-btn button { width: 100%; margin: 15px 0; }
.login-btm a { border-bottom: 1px dotted var(--accent); color: var(--accent); font-size: 13px; }
.login-check { position: relative; font-size: 14px; }
.login-check input { opacity: 0; position: absolute; cursor: pointer; }
.login-check span { display: block; padding-left: 36px; height: 30px; line-height: 30px; color: var(--text-muted); }
.login-check span::after, .login-check span::before { content: ""; position: absolute; top: 50%; transition: all 0.3s ease; }
.login-check span::before { left: 0; height: 12px; margin-top: -6px; width: 28px; border-radius: 6px; background: rgba(255,255,255,0.1); }
.login-check span::after { left: 1px; height: 14px; width: 14px; margin-top: -7px; background: var(--accent); border-radius: 7px; }
.login-check input:checked + span::before { background: rgba(232,68,58,0.2); }
.login-check input:checked + span::after { left: 13px; }
.login-menu { border-top: 1px solid var(--border-subtle); margin-top: -1px; }
.login-menu li { text-align: center; border-right: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); width: 50%; }
.login-menu a { display: block; padding: 10px 5px; font-size: 13px; }
.login-menu li .fa { display: none; height: 28px; font-size: 22px; color: var(--accent); }
.login-admin { text-align: center; margin: -10px 0 25px; }
.login-soc-title { display: flex; align-items: center; margin: 20px 0 15px; font-size: 13px; color: var(--text-muted); }
.login-soc-title::after, .login-soc-title::before { content: ""; height: 1px; background: var(--border-subtle); flex: 1; }
.login-soc-title::before { margin-right: 15px; }
.login-soc-title::after { margin-left: 15px; }
.login-soc-btns { text-align: center; }
.login-soc-btns a { display: inline-block; margin: 0 3px; vertical-align: top; }
.login-soc-btns img { display: block; width: 32px; height: 32px; border-radius: 50%; }

/* Owl carousel */
.owl-carousel{display:none;opacity:0;transition:opacity .3s linear;width:100%;position:relative;z-index:10}
.owl-carousel .owl-stage{position:relative;display:flex;justify-content:flex-start}
.owl-carousel .owl-stage-outer{position:relative;overflow:hidden;transform:translate3d(0,0,0)}
.owl-carousel .owl-item{position:relative;min-height:1px}
.owl-carousel .owl-dots.disabled,.owl-carousel .owl-nav.disabled,.owl-carousel.owl-refresh .owl-item{display:none}
.no-js .owl-carousel,.owl-carousel.owl-loaded,.owl-carousel.owl-loading{display:block;opacity:1}
.owl-carousel.owl-hidden,.owl-carousel.owl-loading{opacity:0}
.owl-carousel.owl-drag .owl-item{user-select:none}
.owl-carousel.owl-grab{cursor:grab}
.owl-carousel .animated{animation-duration:1s;animation-fill-mode:both}
.owl-carousel .owl-animated-in{z-index:0}
.owl-carousel .owl-animated-out{z-index:1}
.owl-carousel .fadeOut{animation-name:fadeOut}
@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}
.owl-height{transition:height .5s ease-in-out}
.owl-carousel .owl-item .owl-lazy{opacity:0;transition:opacity .4s ease}
.owl-carousel .owl-item img.owl-lazy{transform-style:preserve-3d}
.owl-nav{position:absolute;right:0;top:-8px;z-index:1}
.owl-next,.owl-prev{display:block;cursor:pointer;height:24px;line-height:24px;position:absolute;top:-46px;box-shadow:none;font-size:22px;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;transition:all .25s ease}
.owl-prev{right:40px}.owl-next{right:0}
.owl-next:hover,.owl-prev:hover{transform:scale(1.2)}

/* Mobile menu */
.btn-menu{display:none}
.side-panel{width:300px;height:100%;overflow:hidden auto;background:var(--bg-primary);padding:24px;z-index:9999;position:fixed;left:-340px;top:0;transition:left .35s var(--ease);border-right:1px solid var(--border-subtle)}
.side-panel.active{left:0}
.close-overlay{width:100%;height:100%;background:rgba(6,8,12,0.75);position:fixed;left:0;top:0;z-index:9998;display:none;backdrop-filter:blur(6px)}
.btn-close{cursor:pointer;display:block;left:300px;top:-50px;position:fixed;z-index:9999;width:44px;height:44px;line-height:44px;text-align:center;font-size:18px;background:var(--accent);color:#fff;transition:top .35s ease;border-radius:0 var(--radius-md) var(--radius-md) 0}
.btn-close.active{top:0}
body.opened-menu{overflow:hidden;width:100%;height:100%}
.side-panel .side-nav a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.side-panel .side-box{margin-bottom:20px}
.section{text-align:center;padding-bottom:20px}
.sectbtn{display:inline-block;text-align:center;padding:0 16px;height:36px;line-height:36px;cursor:pointer;margin-left:5px;background:var(--accent-gradient);color:#fff;border-radius:var(--radius-sm);transition:all .25s ease;font-weight:700;font-size:12px}
.sectbtn:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(232,68,58,0.35)}

/* Series groups */
.group_series-content{margin-bottom:16px;position:relative}
.group_series-title{position:absolute;left:0;top:0;background:rgba(255,255,255,0.03);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:6px 8px;color:var(--text-muted);width:80px;text-align:center;font-size:12px}
.group_series-title strong{color:var(--accent);display:block;font-size:22px;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.group_series-list{padding-left:96px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;grid-auto-flow:dense}
.group_series-item{background:var(--bg-card);position:relative;display:flex;align-items:center;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border-subtle);transition:all .25s ease}
.group_series-item:before{display:none}
.group_series-item:hover{border-color:rgba(232,68,58,0.2);background:rgba(232,68,58,0.04);transform:translateY(-1px)}
.group_series-item img{display:block;max-width:44px;min-width:44px;height:44px;object-fit:cover;margin:8px 10px 8px 8px;position:relative;border-radius:6px}
.group_series-item-title{line-height:22px;font-weight:600;margin:0 8px 0 0;font-size:13px;min-width:0;position:relative}
.group_series-item span:last-child{text-transform:uppercase}
.group_series-item-num{margin:0;color:var(--text-muted);line-height:22px;display:block;width:100%;font-size:11px;position:relative}

/* ========== THUMBNAIL GRID ========== */
.th-item {
  float: left; width: 24%; padding: 0 7px; margin-bottom: 18px; position: relative;
}
.th-item .th-in {
  display: block; border-radius: var(--radius-lg); overflow: hidden;
  background: var(--bg-card); border: 1px solid var(--border-subtle);
  transition: all 0.4s var(--ease);
  position: relative;
}
.th-item:hover .th-in {
  transform: translateY(-8px);
  box-shadow: var(--shadow-hover), 0 0 30px rgba(232,68,58,0.06);
  border-color: rgba(232,68,58,0.12);
}
.th-item:hover .th-in .img-resp-vert img { transform: scale(1.06); }
.th-img { border-radius: var(--radius-lg) var(--radius-lg) 0 0; overflow: hidden; }
.th-img img { transition: transform 0.6s var(--ease); }
.th-desc {
  padding: 12px 14px; min-height: 56px; margin-top: 0;
  background: var(--bg-card);
  border-top: 1px solid var(--border-subtle);
  position: relative;
}
.th-desc::before {
  content: ''; position: absolute; top: -1px; left: 20%; right: 20%;
  height: 1px; background: var(--accent-gradient); opacity: 0;
  transition: opacity 0.35s ease;
}
.th-item:hover .th-desc::before { opacity: 1; }
.th-title { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: -0.01em; }
.th-cat { margin-top: 5px; font-size: 11px; color: var(--text-muted); display: flex; align-items: center; gap: 4px; }
.th-meta { position: absolute; z-index: 10; font-size: 13px; }
.th-trl { right: 12px; bottom: 65px; display: inline-block; padding: 4px 10px; font-size: 9px; background: var(--accent-gradient); color: #fff; cursor: pointer; border-radius: 6px; font-weight: 700; }
.th-qual {
  left: 14px; top: 14px; display: inline-block; padding: 4px 10px;
  background: var(--accent-gradient); color: #fff; border-radius: var(--radius-sm);
  font-size: 10px; font-weight: 700; text-transform: uppercase;
  letter-spacing: 0.04em; box-shadow: 0 2px 10px rgba(232,68,58,0.4);
}
.seotexts { order: 2; padding-top: 20px; }
.namrecoms { font-size: 12px; margin-top: 6px; text-align: center; }

/* ========== TOASTS ========== */
.toasts{position:fixed;right:10px;top:20px;z-index:990;display:grid;gap:16px}
.toast{background:var(--bg-elevated);color:var(--text-primary);border-radius:var(--radius-lg);overflow:hidden;position:relative;width:400px;display:flex;align-items:center;gap:16px;padding:16px 20px;box-shadow:0 12px 40px rgba(0,0,0,0.5);border:1px solid var(--border-subtle);--accent:#e8443a;animation:showToast .5s ease forwards;max-width:calc(100vw - 40px)}
.toast__icon{font-size:24px;color:var(--accent)}.toast__descr{flex:1 1 0;max-width:100%;min-width:50px}
.toast__title{font-weight:700;color:var(--text-primary)}.toast__text{font-size:13px}
.toast__close{font-size:16px;margin:0 -8px;display:grid;place-items:center;cursor:pointer;opacity:.5;width:36px;height:36px;border-radius:var(--radius-sm);transition:all .2s ease}
.toast__close:hover{opacity:1;background:rgba(255,255,255,0.05)}
.toast::after{content:'';width:100%;height:3px;background:var(--accent);position:absolute;left:0;bottom:0;animation:progressToast var(--toast-timer) linear forwards}
.toast--success{--accent:#4ade80}.toast--warning{--accent:#fbbf24}.toast--error{--accent:#ef4444}
.toast--is-hiding{animation:hideToast .5s ease forwards}
@keyframes progressToast{100%{width:0}}
@keyframes showToast{0%{transform:translateX(calc(100% + 20px));opacity:0}100%{transform:translateX(0);opacity:1}}
@keyframes hideToast{0%{transform:translateX(0);opacity:1}100%{transform:translateX(calc(100% + 20px));opacity:0}}

/* Card entrance animation */
.th-item { animation: cardFadeIn 0.4s var(--ease) both; }
.th-item:nth-child(1) { animation-delay: 0.02s; }
.th-item:nth-child(2) { animation-delay: 0.06s; }
.th-item:nth-child(3) { animation-delay: 0.1s; }
.th-item:nth-child(4) { animation-delay: 0.14s; }
.th-item:nth-child(5) { animation-delay: 0.18s; }
.th-item:nth-child(6) { animation-delay: 0.22s; }
.th-item:nth-child(7) { animation-delay: 0.26s; }
.th-item:nth-child(8) { animation-delay: 0.3s; }
@keyframes cardFadeIn { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: translateY(0); } }

/* ========== RESPONSIVE ========== */
@media screen and (max-width: 1220px) {
  .wrap { padding: 0; overflow: hidden; }
  .carou-sect,.cols,.footer,.header { padding-left: 20px; padding-right: 20px; }
  .wrap-center { max-width: 1000px; border-radius: 0; }
  .wrap-main { border-radius: 0; border: none; }
  .sidebar { display: none; }
  .header-nav { display: none; }
  .search-wrap { margin-left: auto; }
  .btn-menu { display: flex; align-items: center; justify-content: center; font-size: 20px; margin-left: 12px; cursor: pointer; color: var(--accent); width: 40px; height: 40px; border-radius: var(--radius-md); background: rgba(255,255,255,0.04); border: 1px solid var(--border-subtle); transition: all 0.25s ease; flex-shrink: 0; }
  .btn-menu:hover { background: rgba(255,255,255,0.08); }
  .cols { padding-top: 20px; }
  .video-box embed,.video-box frame,.video-box iframe,.video-box object,.video-box video { height: 400px; }
}
@media screen and (max-width: 950px) {
  .wrap-center { max-width: 768px; }
  .short-meta-item:not(.mrating-count) { display: none; }
  .footer-top { flex-wrap: wrap; gap: 16px; }
  .footer-links { order: 3; width: 100%; justify-content: center; }
}
@media screen and (max-width: 760px) {
  .wrap-center { max-width: 640px; }
  .not-logged .login-avatar { display: none; }
  .login-close { top: 12px; right: 12px; }
  .login-title { font-size: 18px; }
  .login-box { max-width: calc(100% - 32px); padding: 20px; }
  .search-wrap { position: static; width: 40px; flex-shrink: 0; }
  .search-box { position: static; display: flex; align-items: center; }
  .search-box input { opacity: 0; width: 0; height: 0; min-height: 0; padding: 0; margin: 0; border: 0; line-height: 0; pointer-events: none; }
  .search-box button {
    position: static; display: flex; align-items: center; justify-content: center;
    width: 40px; height: 40px; flex-shrink: 0; font-size: 20px;
    color: var(--text-secondary); border-radius: var(--radius-md);
    background: rgba(255,255,255,0.04); border: 1px solid var(--border-subtle);
    transition: all 0.25s ease;
  }
  .search-box button:hover { background: rgba(255,255,255,0.08); }

  /* When opened: drop a full-width search bar below the sticky header
     instead of expanding in place, so it never overlaps the logo/menu. */
  .search-wrap.active .search-box {
    position: fixed; top: 58px; left: 0; right: 0;
    display: flex; align-items: center; gap: 8px;
    padding: 12px 16px; z-index: 150;
    background: var(--bg-primary);
    border-bottom: 1px solid var(--border-subtle);
    box-shadow: var(--shadow-card);
  }
  .search-wrap.active .search-box input {
    opacity: 1; width: 100%; flex: 1; padding: 0 14px; height: 44px;
    pointer-events: auto; background: var(--bg-card);
  }
  .search-wrap.active .search-box button {
    position: static; flex-shrink: 0;
  }
  .header-btn { padding: 0 12px; }
  .logo { flex: 1; max-width: 100%; min-width: 50px; position: relative; margin-right: 8px; font-size: 20px; }
  .owl-nav { display: none; }
  .group_series-list { grid-template-columns: repeat(1,minmax(0,1fr)); }
  .fcols { display: block; padding: 16px; background: var(--bg-card); border-radius: var(--radius-lg); }
  .fleft { margin: 0 auto 16px; width: 180px; }
  .fcols::before { display: none; }
  .fcols::after { content: ""; display: table; clear: both; }
  .short-rates { width: 100%; margin: 10px 0 0 -10px; justify-content: flex-start; }
  .fcols .short-list li { padding-left: 100px; font-size: 13px; }
  .mrating-count { text-align: right; margin-right: 0; margin-left: -20px; }
  .fcompl,.ffav { display: none; }
  .fplayer .tabs-sel > span { width: 50%; text-align: center; }
  .fctrl { padding: 0; flex-wrap: wrap; }
  .fplayer { margin-left: 0; margin-right: 0; }
  .f-menu { display: none; }
  .popular-item-img { height: 230px; }
  .carou-content { height: 230px; }
  .footer-top { flex-direction: column; align-items: center; text-align: center; gap: 16px; }
  .footer-links { justify-content: center; }
  .video-box embed,.video-box frame,.video-box iframe,.video-box object,.video-box video { height: 280px; }
  .dcont button { font-size: 12px; padding: 0 15px !important; }
  .comments-tree-list .comments-tree-list { padding-left: 0 !important; }
  .comments-tree-list .comments-tree-list::before { display: none; }
  .mass_comments_action { display: none; }
  .site-desc { margin-right: 0; }
  .th-item { width: 33.33%; }
}
@media screen and (max-width: 590px) {
  .wrap-center { max-width: 480px; }
  .short-item { margin-bottom: 8px; padding: 0; background: var(--bg-card); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); width: 47% !important; overflow: hidden; }
  .short-item .short-img { width: 100%; margin: 0 0 5px; padding-top: 140%; height: auto; border-radius: 0; }
  .sect-title .fal,.short-item .short-list,.short-item .short-meta,.short-item .short-rates { display: none; }
  .short-item .short-title { white-space: normal; font-size: 12px; padding: 0 10px 10px; font-weight: 700; }
  .short-item .short-img img { position: absolute; left: 0; top: 0; }
  .navigation { justify-content: center; }
  .logo,.sect-title { font-size: 15px; }
  .ac-inputs input { width: 100%; }
  .th-item { width: 50%; }
  .th-desc { padding: 10px; }
  .th-title { font-size: 11px; }
  .site-desc { margin-right: 0; }
  .short-header { margin-bottom: 5px; text-align: center; }
  .video-box embed,.video-box frame,.video-box iframe,.video-box object,.video-box video { height: 240px; }
  .f-menu { display: none; }
  .nav-col { width: 100%; }
  .nav-col + .nav-col { width: 100%; }
  .popular-item-img { height: 200px; }
  .carou-content { height: 200px; }
  .bottom-nav { margin-top: 10px; }
  .ui-dialog { width: 100% !important; }
  .upop-left,.upop-right { margin: 0; padding: 0 20px; float: none !important; width: 100% !important; }
  .upop-left { margin-bottom: 10px; text-align: center; }
  .ui-dialog-buttonset button { display: block; margin: 0 0 5px; width: 100%; }
  #dofullsearch,#searchsuggestions span.seperator { display: none !important; }
  .attach .download-link { margin: 0 -15px 0 0; float: none; display: block; padding: 0 10px; }
  .attach-info { float: none; }
  .sect-header { margin-bottom: 16px; }
  .footer-links a { padding: 5px 10px; font-size: 11px; }
}
@media screen and (max-width: 470px) {
  .f-menu { display: none; }
  .short-header { margin-bottom: 5px; text-align: center; }
  .sect-header { margin-bottom: 16px; }
  .fleft { width: 100%; }
  .nav-col { width: 100%; }
  .nav-col + .nav-col { width: 100%; }
  .popular-item-img { height: 200px; }
  .carou-content { height: 200px; }
  .fimg { height: auto; width: 100%; max-width: 280px; margin: 0 auto 16px; }
  .fimg img { width: 100%; height: auto; object-fit: cover; }
  .video-box embed,.video-box frame,.video-box iframe,.video-box object,.video-box video { height: 200px; }
  .header { padding: 0 12px; }
  .carou-sect { padding-left: 12px; padding-right: 12px; }
  .cols { padding: 12px; }
  .footer-top { padding: 20px 16px; }
  .footer-bottom { padding: 12px 16px; }
  .logo-icon { width: 28px; height: 28px; border-radius: 7px; }
}

/* Language badge in cards */
.card-lang {
  display: inline-flex; align-items: center;
  padding: 1px 6px; border-radius: 4px;
  background: rgba(255,255,255,0.06);
  font-size: 10px; font-weight: 700; color: var(--text-secondary);
  text-transform: uppercase; letter-spacing: 0.04em;
  vertical-align: middle;
}
.dot-sep { color: var(--text-muted); margin: 0 2px; vertical-align: middle; }

/* === EXTRA POLISH === */
/* Smooth scrollbar */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: var(--bg-deep); }
::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.08); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,0.14); }

/* Selection */
::selection { background: rgba(232,68,58,0.25); color: #fff; }

/* Smooth scroll */
html { scroll-behavior: smooth; }

/* Section titles */
.sect { margin-top: 28px; }
.sect .carou-title { margin-bottom: 16px; }

/* Comments section */
.fcomms .sect-content { padding: 20px; }

/* Status badge in fullstory */
.short-list a[href="#"] { pointer-events: none; }

/* Smooth page transitions */
.article { animation: pageIn 0.4s var(--ease) both; }
@keyframes pageIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

/* ==========================================================
   HEADER ACTIONS — notification bell + account button
   ========================================================== */
.header-actions { display: flex; align-items: center; gap: 10px; margin-left: 14px; flex-shrink: 0; }
.icon-btn {
  position: relative; width: 40px; height: 40px; border-radius: var(--radius-md);
  background: rgba(255,255,255,0.04); border: 1px solid var(--border-subtle);
  display: flex; align-items: center; justify-content: center;
  color: var(--text-secondary); font-size: 16px; flex-shrink: 0;
  transition: all 0.25s ease;
}
.icon-btn:hover { background: rgba(255,255,255,0.08); color: var(--text-primary); border-color: var(--border-light); }
.notif-badge {
  position: absolute; top: -4px; right: -4px; min-width: 18px; height: 18px;
  padding: 0 4px; border-radius: 9px; background: var(--accent-gradient);
  color: #fff; font-size: 10px; font-weight: 800; line-height: 18px; text-align: center;
  box-shadow: 0 2px 8px rgba(232,68,58,0.4);
}
.account-btn {
  display: flex; align-items: center; gap: 8px; height: 40px; padding: 0 14px 0 6px;
  border-radius: var(--radius-md); background: rgba(255,255,255,0.04);
  border: 1px solid var(--border-subtle); cursor: pointer; flex-shrink: 0;
  transition: all 0.25s ease;
}
.account-btn:hover { background: rgba(255,255,255,0.08); border-color: var(--border-light); }
.account-avatar { width: 28px; height: 28px; border-radius: 50%; overflow: hidden; flex-shrink: 0; border: 1px solid var(--border-light); }
.account-avatar img { width: 100%; height: 100%; object-fit: cover; }
.account-name { font-size: 13px; font-weight: 600; color: var(--text-primary); max-width: 100px; overflow: hidden; text-overflow: ellipsis; }
.account-btn > .fal.fa-user { font-size: 15px; color: var(--text-secondary); margin-left: 4px; }
.account-btn > .fal.fa-angle-down { font-size: 11px; color: var(--text-muted); }

/* ==========================================================
   HERO BANNER
   ========================================================== */

/* Hero nav arrows (owl-nav) */

/* Hero dots — thin bars, bottom-left */

/* ==========================================================
   "NAUJA" ribbon on grid cards
   ========================================================== */
.th-new {
  position: absolute; z-index: 10; right: 12px; top: 14px;
  padding: 4px 9px; border-radius: var(--radius-sm);
  background: rgba(6,8,12,0.75); border: 1px solid rgba(232,68,58,0.5);
  color: var(--accent-warm); font-size: 9px; font-weight: 800;
  text-transform: uppercase; letter-spacing: 0.06em;
}

/* ==========================================================
   PROMO / FEATURES STRIP
   ========================================================== */
.promo-strip {
  display: flex; align-items: center; gap: 28px; margin-top: 28px; padding: 32px;
  background: linear-gradient(120deg, rgba(232,68,58,0.08), rgba(11,16,24,0.4));
  border: 1px solid var(--border-subtle); border-radius: var(--radius-lg);
  position: relative; overflow: hidden;
}
.promo-strip::after {
  content: ''; position: absolute; right: -60px; top: -60px; width: 260px; height: 260px;
  background: radial-gradient(circle, rgba(232,68,58,0.16) 0%, transparent 70%);
  pointer-events: none;
}
.promo-strip-icon {
  flex-shrink: 0; width: 64px; height: 64px; border-radius: var(--radius-lg);
  background: var(--accent-gradient); display: flex; align-items: center; justify-content: center;
  color: #fff; font-size: 26px; box-shadow: 0 8px 24px rgba(232,68,58,0.35);
}
.promo-strip-title { font-size: 20px; font-weight: 800; letter-spacing: -0.01em; margin-bottom: 8px; }
.promo-strip-desc { font-size: 13px; line-height: 1.7; color: var(--text-secondary); max-width: 720px; margin-bottom: 20px; }
.promo-strip-feats { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 16px; }
.promo-feat { display: flex; align-items: center; gap: 12px; }
.promo-feat .fal { flex-shrink: 0; width: 38px; height: 38px; border-radius: var(--radius-md); background: rgba(255,255,255,0.05); border: 1px solid var(--border-subtle); display: flex; align-items: center; justify-content: center; font-size: 16px; color: var(--accent-warm); }
.promo-feat b { display: block; font-size: 13px; font-weight: 700; }
.promo-feat small { display: block; font-size: 11px; color: var(--text-muted); margin-top: 2px; }

/* ==========================================================
   RESPONSIVE — new sections
   ========================================================== */
@media screen and (max-width: 950px) {
  .promo-strip { flex-direction: column; align-items: flex-start; }
  .promo-strip-feats { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media screen and (max-width: 760px) {
  .account-name { display: none; }
  .account-btn { padding: 0 10px; gap: 0; }
  .header-actions { margin-left: 8px; gap: 6px; }
  .promo-strip-feats { grid-template-columns: 1fr; }
}

/* ========== LIVE CINEMA REFINEMENT ========== */
/* Kept as a final layer so the stock DLE components stay fully compatible. */
body {
  background:
    radial-gradient(900px 500px at 18% -10%, rgba(218, 69, 34, .10), transparent 60%),
    radial-gradient(700px 440px at 100% 28%, rgba(18, 55, 78, .20), transparent 64%),
    var(--bg-deep);
}
.wrap { padding: 18px; }
.header-actions { display: flex; align-items: center; gap: 9px; margin-left: 14px; }
.icon-btn, .account-btn {
  min-width: 38px; height: 38px; padding: 0 11px; display: inline-flex;
  align-items: center; justify-content: center; gap: 8px; border-radius: 11px;
  color: var(--text-secondary); background: rgba(255,255,255,.035);
  border: 1px solid var(--border-subtle); transition: all .25s ease;
}
.icon-btn:hover, .account-btn:hover { color: #fff; border-color: rgba(232,68,58,.35); background: var(--accent-glow); }
.account-avatar { width: 24px; height: 24px; border-radius: 50%; overflow: hidden; }
.account-name { font-size: 12px; font-weight: 600; }
.carou-sect { margin: 0 16px; padding: 20px 20px 16px; border: 1px solid var(--border-subtle); border-radius: 10px; background: rgba(4,10,15,.5); }
.carou-content { height: 196px; }
.popular-item-img { height: 196px; border-radius: 9px; }
.popular-item-title { font-size: 12px; padding: 11px 9px; }
.cols { padding: 28px 22px 20px; gap: 22px; }
.sidebar { width: 320px; }
.side-box { border-radius: 10px; background: linear-gradient(145deg, rgba(20,31,41,.78), rgba(10,19,27,.78)); }
.side-bt { padding: 14px 15px; color: #f1f4f7; font-size: 12px; }
.nav-col { padding: 10px; }
.nav-menu a { padding: 8px 10px; margin-bottom: 3px; background: transparent; border-color: transparent; }
.nav-menu a:hover { background: rgba(232,68,58,.09); }
.sect-title { font-size: 14px; }
.th-item { padding: 0 6px 14px; }
.th-item .th-in { border-radius: 9px; background: #0a121a; box-shadow: 0 8px 22px rgba(0,0,0,.17); }
.th-new, .th-meta { border-radius: 5px; }
.footer { margin: 0 22px 18px; border: 1px solid var(--border-subtle); border-radius: 10px; overflow: hidden; }
.footer-top { padding: 22px 24px; }
@media screen and (max-width: 1220px) {
  .carou-sect { margin: 0; border-left: 0; border-right: 0; border-radius: 0; }
  .footer { margin: 0; border-left: 0; border-right: 0; border-bottom: 0; border-radius: 0; }
}
@media screen and (max-width: 760px) {
  .wrap { padding: 0; }
  .wrap-main { border-radius: 0; border-left: 0; border-right: 0; }
  .header { padding: 0 16px; }
  .header-actions .account-name, .header-actions .fa-angle-down { display: none; }
}

/* ========== REFERENCE LAYOUT: SMALL 5-COLUMN CARDS ========== */
/* Main content deliberately stays on the left and sidebar on the right. */
@media screen and (min-width: 761px) {
  #dle-content { margin-left: -5px; margin-right: -5px; }
  .th-item { width: 20%; padding: 0 5px; margin-bottom: 12px; }
  .th-item .th-in { border-radius: 8px; }
  .th-img { border-radius: 8px 8px 0 0; }
  .th-desc { min-height: 49px; padding: 8px 9px; }
  .th-title { font-size: 10px; line-height: 1.35; }
  .th-cat { margin-top: 3px; font-size: 9px; }
  .th-qual { top: 7px; left: 7px; padding: 3px 6px; font-size: 8px; }
  .th-new { top: 7px; right: 7px; padding: 3px 6px; font-size: 8px; }
  .sidebar { width: 284px; }
  .cols { gap: 20px; }
}

/* One-column genre panel matching the supplied design. */
.side-nav > .side-bc.fx-row { display: none; }
.side-bt .side-all {
  margin-left: auto; padding: 0; color: var(--text-muted); font-size: 10px;
  font-weight: 500; letter-spacing: 0; text-transform: none;
}
.side-bt .side-all:hover { color: var(--accent); }
.category-list { padding: 8px 14px 12px; }
.category-list a {
  display: flex; align-items: center; gap: 11px; min-height: 31px;
  padding: 5px 2px; color: #b9c4cf; font-size: 12px; font-weight: 500;
  border-bottom: 1px solid rgba(255,255,255,.045); transition: color .2s ease;
}
.category-list a:last-child { border-bottom: 0; }
.category-list a > span { width: 18px; text-align: center; color: #e8753d; font-size: 13px; }
.category-list a b { margin-left: auto; color: #e7edf3; font-size: 11px; font-weight: 500; }
.category-list a:hover { color: #fff; background: transparent; transform: none; border-color: rgba(255,111,73,.22); }

/* Compact, poster-first popular slider. */
.carou-sect { padding: 16px 18px 14px; }
.carou-title { margin-bottom: 12px; }
.carou-content, .popular-item-img { height: 156px; }
.popular-item-img { border-radius: 8px; }
.popular-item-title { padding: 8px 7px; font-size: 10px; }
.popular-item::after {
  content: counter(rank); position: absolute; z-index: 8; top: 7px; right: 7px;
  width: 24px; height: 24px; line-height: 24px; border-radius: 7px;
  text-align: center; color: #fff; font-size: 12px; font-weight: 800;
  background: var(--accent-gradient); box-shadow: 0 4px 12px rgba(232,68,58,.35);
}
@media screen and (max-width: 760px) {
  .th-item { width: 33.333%; }
  .category-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 12px; }
}
@media screen and (max-width: 590px) {
  .th-item { width: 50%; }
  .category-list { grid-template-columns: 1fr; }
  .carou-content, .popular-item-img { height: 140px; }
}

/* ========== COMPLETE HOME PAGE COMPOSITION ========== */
/* Header controls are icon buttons on desktop, as in the supplied reference. */
.header { height: 70px; padding: 0 26px; background: rgba(5,9,13,.92); }
.logo, .header-nav, .header-nav a { height: 70px; }
.header-nav { margin-left: 28px; margin-right: auto; }
.header-nav a { padding: 0 14px; }
.search-wrap { width: 44px; margin-left: 0; }
.search-box input, .search-box input:focus {
  position: absolute; right: 0; top: 0; width: 44px; height: 44px; padding: 0;
  opacity: 0; cursor: pointer; z-index: 2; border-radius: 12px;
}
.search-box input:focus { width: 260px; opacity: 1; padding: 0 42px 0 14px; background: #111a23; cursor: text; }
.search-box button { width: 44px; height: 44px; line-height: 44px; border: 1px solid var(--border-subtle); border-radius: 12px; background: rgba(255,255,255,.035); font-size: 16px; }
.header-actions { margin-left: 10px; }
.account-btn { width: 44px; padding: 0; }
.account-btn .account-name, .account-btn > .fa-angle-down { display: none; }

/* Distinct hero, carousel and card geometry. */
.carou-sect { margin: 12px 14px 0; border-radius: 10px; padding: 18px 18px 14px; }
.carou-content, .popular-item-img { height: 138px; }
.popular-item-title { font-size: 10px; padding: 7px; }
.popular-item::after { width: 22px; height: 22px; line-height: 22px; font-size: 11px; }

/* DLE cards: five small posters in a row on desktop. */
.cols { padding: 22px 20px 26px; gap: 20px; }
.main { order: 0; }
.sidebar { order: 1; width: 292px; }
#dle-content { align-items: flex-start; }
@media screen and (min-width: 761px) {
  .th-item { width: 20% !important; padding: 0 5px; margin-bottom: 13px; }
  .th-desc { min-height: 47px; padding: 8px 8px; }
  .th-title { font-size: 10px; }
  .th-cat { font-size: 9px; }
}

/* Fully rebuilt sidebar patterns: genres, top-5 ranking, and compact comments. */
.side-box { border-radius: 10px; margin-bottom: 12px; background: linear-gradient(145deg,#101b24,#0b151d); }
.side-bt { min-height: 42px; padding: 12px 14px; color: #f2f5f7; font-size: 11px; }
.side-bt::first-letter { color: var(--accent); }
.side-nav > .side-bc.fx-row { display: none !important; }
.category-list { display: block; padding: 8px 14px 10px; }
.category-list a { min-height: 29px; font-size: 11px; }
.category-list a > span { color: #f08245; }
.side-box .side-bc.fx-row.mb-remove { display: block; margin: 0; padding: 4px 12px 10px; counter-reset: sideRank; }
.side-top-item {
  display: grid; grid-template-columns: 28px 38px 1fr; grid-template-rows: 22px 16px;
  align-items: center; column-gap: 8px; min-height: 54px; padding: 7px 0;
  border-bottom: 1px solid rgba(255,255,255,.055); counter-increment: sideRank;
}
.side-top-item:last-child { border-bottom: 0; }
.side-top-rank { grid-row: 1 / 3; width: 23px; height: 23px; line-height: 23px; border-radius: 6px; text-align: center; color: #fff; font-size: 11px; font-weight: 800; background: #25313c; }
.side-top-rank::after { content: counter(sideRank); }
.side-top-item:nth-child(-n+3) .side-top-rank { background: var(--accent-gradient); }
.side-top-item img { grid-row: 1 / 3; width: 38px; height: 42px; object-fit: cover; border-radius: 5px; }
.side-top-title { color: #e7edf2; font-size: 11px; font-weight: 600; line-height: 1.2; }
.side-top-views { color: #718092; font-size: 9px; }
.side-top-item:hover .side-top-title { color: #ff7250; }
.lcomm { padding: 10px 12px; margin: 0; border: 0; border-radius: 0; background: transparent; border-bottom: 1px solid rgba(255,255,255,.055); }
.lcomm:last-child { border-bottom: 0; }
.lcomm .lmeta { margin-bottom: 6px; font-size: 10px; }
.lcomm .ltext { font-size: 11px; line-height: 1.42; color: #9eabba; }
.lcomm .ltitle { margin-top: 5px; font-size: 10px; color: #dce4ec; }

/* Bottom service panel and footer are split into clear cards. */
.promo-strip { display: block; margin: 0 20px 18px; padding: 22px 24px; border-radius: 11px; background: linear-gradient(105deg,rgba(232,68,58,.12),rgba(16,25,36,.85) 35%); border: 1px solid rgba(255,255,255,.07); }
.promo-strip-icon { float: left; width: 62px; height: 62px; margin: 0 18px 0 0; border-radius: 15px; background: var(--accent-gradient); }
.promo-strip-main { overflow: hidden; }
.promo-strip-title { margin: 0 0 3px; font-size: 16px; }
.promo-strip-desc { max-width: 760px; font-size: 12px; }
.promo-strip-feats { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 10px; margin-top: 17px; }
.promo-feat { min-width: 0; padding: 9px 10px; border-radius: 8px; background: rgba(0,0,0,.15); }
.promo-feat > span { font-size: 18px; }
.promo-feat b { font-size: 11px; }
.promo-feat small { font-size: 9px; }
.footer { margin: 0 20px 18px; border-radius: 11px; }
.footer-top { padding: 20px 24px; }
.footer-links { gap: 8px; }
.footer-links a { padding: 7px 12px; background: transparent; border: 0; color: #cbd4dc; }
.footer-bottom { padding: 12px 24px; }
@media screen and (max-width: 1220px) {
  .sidebar { display: block; }
  .header-nav { display: flex; }
}
@media screen and (max-width: 900px) {
  .sidebar { display: none; }
  .header-nav { display: none; }
  .promo-strip-feats { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media screen and (max-width: 590px) {
  .carou-sect { margin: 0; border-radius: 0; }
  .promo-strip, .footer { margin: 0; border-radius: 0; }
  .promo-strip-feats { grid-template-columns: 1fr 1fr; }
}

/* ========== HEADER OVER HERO / FINAL REFERENCE ALIGNMENT ========== */
body { background: #060b11; }
.wrap { padding: 0; }
.wrap-main { max-width: none; border: 0; border-radius: 0; box-shadow: none; overflow: visible; }
.header {
  position: absolute; inset: 0 0 auto; height: 64px; z-index: 120;
  padding: 0 42px; background: linear-gradient(180deg,rgba(2,5,8,.87),rgba(2,5,8,.60));
  border-bottom-color: rgba(255,255,255,.05); backdrop-filter: blur(12px);
}
.logo, .header-nav, .header-nav a { height: 64px; }
.header-nav { margin-left: 30px; }
.header-nav a { color: rgba(255,255,255,.76); font-size: 11px; padding: 0 16px; }
.header-nav a.active::before { display: none; }
.header-nav a::after { left: 10px; right: 10px; height: 2px; }
.header-actions { height: 64px; gap: 8px; }
.search-wrap, .search-box { height: 40px; width: 40px; }
.search-box input, .search-box input:focus {
  width: 40px; height: 40px; right: 0; padding: 0; opacity: 0; border-radius: 11px;
}
.search-box input:focus { width: 230px; padding-left: 13px; padding-right: 42px; opacity: 1; }
.search-box button, .icon-btn, .account-btn, .btn-menu.hidden {
  width: 40px; min-width: 40px; height: 40px; line-height: 40px; padding: 0;
  display: inline-flex; align-items: center; justify-content: center; border-radius: 11px;
  background: rgba(12,19,27,.72); border: 1px solid rgba(255,255,255,.10); color: #f2f5f8;
}
.search-box button { position: absolute; font-size: 15px; }
.account-btn .account-avatar { margin: 0; }
.account-btn .account-name, .account-btn > .fa-angle-down { display: none; }
.btn-menu.hidden { margin-left: 8px; font-size: 16px; cursor: pointer; }

/* The popular row is a dedicated full-width, tall poster rail. */
.carou-sect { margin: 0; padding: 18px 44px 20px; border: 0; border-radius: 0; background: #071018; }
.carou-sect::before { display: none; }
.carou-title { margin-bottom: 14px; }
.carou-title .line { width: 18px; flex-basis: 18px; }
.carou-content, .popular-item-img { height: 164px; }
.popular-item-img { border-radius: 8px; }
.popular-item-title { padding: 9px 8px; font-size: 10px; }
.popular-item::after { top: 7px; right: 7px; }

@media screen and (max-width: 900px) {
  .header { position: sticky; padding: 0 16px; background: #081019; }
  .carou-sect { padding-left: 18px; padding-right: 18px; }
  .btn-menu.hidden { display: flex; }
}
@media screen and (max-width: 590px) {
  .header { height: 58px; }
  .logo { height: 58px; }
  .carou-sect { padding: 14px 12px; }
  .carou-content, .popular-item-img { height: 145px; }
}

/* ========== REFERENCE HERO SLIDER: NUMBERED PROGRESS CONTROL ========== */

/* The popular rail is a separate compact panel, as in the reference image. */
.carou-sect { margin: 0 20px; padding: 18px 26px 16px; border: 1px solid rgba(255,255,255,.09); border-radius: 10px; background: linear-gradient(145deg,rgba(14,25,34,.96),rgba(7,15,21,.97)); }
.carou-content, .popular-item-img { height: 136px; }
.popular-item-img { border-radius: 8px; }
.popular-item-title { font-size: 10px; padding: 8px 6px; }
@media screen and (max-width: 760px) {
  .carou-sect { margin: 0; border-radius: 0; border-left: 0; border-right: 0; padding: 15px 16px; }
}

/* ========== RESPONSIVE FULL-BLEED HERO AND WORKING HEADER CONTROLS ========== */
/* Keep the header over the image at tablet widths too; it becomes a solid
   bar only on a real phone. */
@media screen and (max-width: 900px) {
  .header { position: absolute; padding: 0 20px; background: linear-gradient(180deg,rgba(3,7,11,.80),rgba(3,7,11,.22)); }
  .header-nav.menu-open {
    display: flex; position: absolute; top: 64px; right: 14px; width: 210px; height: auto;
    padding: 7px; flex-direction: column; align-items: stretch; background: #0b131b;
    border: 1px solid rgba(255,255,255,.12); border-radius: 10px; box-shadow: 0 16px 40px rgba(0,0,0,.45);
  }
  .header-nav.menu-open a { height: 39px; padding: 0 12px; }
}
.search-wrap { position: relative; flex: 0 0 40px; transition: flex-basis .28s ease; }
.search-box { position: relative; width: 100%; }
.search-box input, .search-box input:focus { pointer-events: none; z-index: 1; transition: opacity .2s ease, width .28s ease; }
.search-box button { z-index: 3; cursor: pointer; }
.search-wrap.active { flex-basis: 260px; }
.search-wrap.active .search-box input, .search-wrap.active .search-box input:focus {
  width: 260px; opacity: 1; pointer-events: auto; padding: 0 45px 0 14px;
  background: rgba(9,16,24,.98); border-color: rgba(255,255,255,.16);
}
.search-wrap.active .search-box button { background: transparent; border-color: transparent; }
@media screen and (max-width: 590px) {
  .header { position: absolute; padding: 0 12px; }
  .search-wrap.active { flex-basis: min(230px, calc(100vw - 122px)); }
  .search-wrap.active .search-box input, .search-wrap.active .search-box input:focus { width: min(230px, calc(100vw - 122px)); }
}

/* ========== TRUE FULL-BLEED HERO: HEADER HAS NO SEPARATE BAR ========== */
.header {
  background: transparent !important; border-bottom: 0; box-shadow: none;
  backdrop-filter: none; -webkit-backdrop-filter: none;
}
.header::before {
  content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: linear-gradient(180deg,rgba(0,0,0,.48),rgba(0,0,0,.15) 65%,transparent);
}
.header .logo, .header .header-nav, .header .search-wrap, .header .header-actions, .header .btn-menu { position: relative; z-index: 1; }
@media screen and (max-width: 900px) {
  .header { background: transparent !important; }
}

/* ==========================================================
   LOAD MORE — AJAX-enhanced pagination
   ========================================================== */
.loadmore-wrap { text-align: center; margin: 12px 0 24px; }
.loadmore-btn {
  display: inline-flex; align-items: center; gap: 8px;
  height: 42px; padding: 0 26px; border-radius: 999px;
  background: rgba(255,255,255,0.05); border: 1px solid var(--border-light);
  color: var(--text-primary); font-size: 12px; font-weight: 800;
  text-transform: uppercase; letter-spacing: 0.05em; cursor: pointer;
  transition: all 0.3s var(--ease);
}
.loadmore-btn:hover { background: rgba(255,255,255,0.09); border-color: var(--border-hover); transform: translateY(-1px); }
.loadmore-btn.is-loading { opacity: 0.55; pointer-events: none; }
.loadmore-btn .fal { font-size: 11px; color: var(--accent-warm); }

/* Category count badge (real DLE {categorys} data) */
.cat-count {
  font-size: 11px; font-weight: 700; color: var(--text-muted);
  background: rgba(255,255,255,0.05); padding: 1px 8px; border-radius: 999px;
  flex-shrink: 0; margin-left: 8px;
}
.nav-menu a:hover .cat-count { color: var(--accent); background: rgba(232,68,58,0.12); }
.nav-menu a.is-active { color: var(--accent); border-color: rgba(232,68,58,0.3); background: var(--accent-glow); }

/* ==========================================================================
   Nemokamos peržiūros (trial) / VIP overlay
   ========================================================================== */

.sv-vip-overlay {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(6, 10, 16, 0.72);
  backdrop-filter: blur(5px) saturate(120%);
  -webkit-backdrop-filter: blur(5px) saturate(120%);
  padding: 20px;
}

.sv-vip-card {
  max-width: 400px;
  width: 100%;
  background: var(--bg-elevated);
  border: 1px solid var(--border-light);
  border-radius: var(--radius-lg);
  padding: 36px 30px;
  text-align: center;
  box-shadow: var(--shadow-hover);
}

.sv-vip-icon {
  width: 56px;
  height: 56px;
  margin: 0 auto 18px;
  border-radius: 50%;
  background: var(--accent-glow);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
}

.sv-vip-card h3 {
  color: var(--text-primary);
  font-size: 20px;
  font-weight: 700;
  margin: 0 0 10px;
}

.sv-vip-card p {
  color: var(--text-secondary);
  font-size: 13.5px;
  line-height: 1.55;
  margin: 0 0 22px;
}

.sv-vip-features {
  list-style: none;
  padding: 0;
  margin: 0 0 26px;
  text-align: left;
  display: inline-block;
}

.sv-vip-features li {
  color: var(--text-secondary);
  font-size: 13.5px;
  margin-bottom: 9px;
  padding-left: 24px;
  position: relative;
}

.sv-vip-features li:before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--accent-warm);
  font-weight: 700;
}

.sv-vip-btn {
  display: inline-block;
  width: 100%;
  padding: 13px 24px;
  background: var(--accent-gradient);
  color: #fff;
  font-weight: 600;
  font-size: 14.5px;
  border-radius: var(--radius-sm);
  text-decoration: none;
  box-shadow: var(--shadow-glow);
  transition: transform .15s var(--ease), box-shadow .15s var(--ease);
}

.sv-vip-btn:hover {
  transform: translateY(-2px);
  color: #fff;
}

.sv-vip-timer {
  margin-top: 14px;
  color: var(--text-muted);
  font-size: 11.5px;
}

/* ===========================================================
   V7 — GALUTINIS SLUOKSNIS: header, populiariausi, sidebar, grid
   Šis blokas sąmoningai eina failo gale, kad perrašytų visus
   ankstesnius tarpusavyje konfliktuojančius override'us aukščiau.
   =========================================================== */

/* --- HEADER: tikras "sticky" stiklinis barelis, visada matomas --- */
.header {
  position: sticky !important;
  top: 0 !important;
  z-index: 200 !important;
  background: rgba(9, 14, 21, 0.78) !important;
  backdrop-filter: blur(22px) saturate(160%) !important;
  -webkit-backdrop-filter: blur(22px) saturate(160%) !important;
  border-bottom: 1px solid rgba(255,255,255,0.07) !important;
  box-shadow: 0 8px 30px rgba(0,0,0,0.25) !important;
}
.header::before { content: none !important; }

/* Paieška + user ikona — vienodo dizaino, šiek tiek didesnės */
.search-box button, .icon-btn, .account-btn {
  width: 42px !important; min-width: 42px !important; height: 42px !important;
  border-radius: 12px !important;
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid var(--border-subtle) !important;
  color: var(--text-secondary) !important;
}
.search-box button:hover, .icon-btn:hover, .account-btn:hover {
  background: var(--accent-gradient) !important; color: #fff !important; border-color: transparent !important;
}
/* Burger meniu — tik telefonui, PC visada rodo pilną meniu */
.btn-menu { display: none !important; }
@media screen and (max-width: 900px) { .btn-menu { display: flex !important; } }
@media screen and (max-width: 900px) { .header-nav { display: none !important; } }
@media screen and (min-width: 901px) { .header-nav { display: flex !important; } }

/* --- POPULIARIAUSI: švaresnis gradientas, rango ženkliukas prie pavadinimo --- */
.popular-item-img::before {
  background: linear-gradient(180deg, transparent 30%, rgba(4,7,11,0.94) 100%) !important;
  height: 75% !important;
  opacity: 1 !important;
}
.popular-item::after {
  top: auto !important; right: auto !important; bottom: 11px !important; left: 11px !important;
  width: 24px !important; height: 24px !important; line-height: 24px !important;
  border-radius: 7px !important; font-size: 11px !important;
}
.popular-item-title {
  text-align: left !important; padding: 10px 12px 10px 44px !important;
}

/* --- ŠONINĖ JUOSTA: didesni šriftai/elementai, proporcingi turiniui --- */
.side-bt { font-size: 12.5px !important; padding: 16px !important; }
.category-list a { font-size: 13px !important; min-height: 40px !important; padding: 9px 4px !important; }
.category-list a > span { font-size: 15px !important; }
.side-top-item {
  grid-template-columns: 30px 58px 1fr !important;
  grid-template-rows: auto auto !important;
  min-height: 72px !important; padding: 11px 0 !important;
}
.side-top-item img { width: 58px !important; height: 72px !important; border-radius: 7px !important; }
.side-top-rank { width: 27px !important; height: 27px !important; line-height: 27px !important; font-size: 12px !important; }
.side-top-title { font-size: 13.5px !important; line-height: 1.35 !important; }
.side-top-views { font-size: 11px !important; }
.lcomm { padding: 13px 14px !important; }
.lcomm .ltext { font-size: 12.5px !important; line-height: 1.5 !important; }
.lcomm .lmeta { font-size: 11px !important; }
.lcomm .ltitle { font-size: 11px !important; }

/* --- NAUJIENŲ KORTELĖS: 4 stulpeliai vietoj 5, didesnės ir suderintos --- */
@media screen and (min-width: 761px) {
  .th-item { width: 25% !important; padding: 0 9px !important; margin-bottom: 22px !important; }
  .th-desc { min-height: 60px !important; padding: 14px 15px !important; }
  .th-title { font-size: 13px !important; }
  .th-cat { font-size: 11px !important; margin-top: 6px !important; }
  .th-qual { top: 12px !important; left: 12px !important; padding: 5px 11px !important; font-size: 10px !important; }
  .th-new { top: 12px !important; right: 12px !important; padding: 5px 11px !important; font-size: 9px !important; }
}
#dle-content { margin-left: -9px !important; margin-right: -9px !important; }

/* NAUJA ženkliukas suvienodintas su serijos numerio ženkliuku (tas pats akcento stilius) */
.th-new {
  background: var(--accent-gradient) !important;
  border: none !important;
  color: #fff !important;
  box-shadow: 0 2px 10px rgba(232,68,58,0.4) !important;
}

/* ===========================================================
   V8 — kompaktiškesnis hero, "Top" stiliaus populiariausi,
   subalansuoto dydžio (5 stulpelių) kortelių tinklelis
   =========================================================== */

/* --- HERO: kompaktiškesnis, mažiau tuščios vietos --- */
.carou-sect { padding-top: 14px !important; padding-bottom: 12px !important; }

/* --- POPULIARIAUSI: didelis "Top 10" stiliaus numeris, be dėžutės --- */
.popular-item::after {
  top: auto !important; right: auto !important; left: 10px !important; bottom: 6px !important;
  width: auto !important; height: auto !important; line-height: 1 !important;
  background: none !important; box-shadow: none !important; border-radius: 0 !important;
  font-size: 36px !important; font-weight: 800 !important;
  color: rgba(255,255,255,0.94);
  text-shadow: 0 3px 12px rgba(0,0,0,0.85), 0 0 3px rgba(0,0,0,0.9) !important;
}
.popular-item:nth-child(-n+3)::after {
  background: var(--accent-gradient) !important;
  -webkit-background-clip: text !important; background-clip: text !important;
  -webkit-text-fill-color: transparent !important; color: transparent !important;
  text-shadow: none !important; filter: drop-shadow(0 2px 8px rgba(232,68,58,0.5));
}
.popular-item-title {
  padding: 10px 12px 10px 58px !important; font-size: 12.5px !important;
}
.popular-item-img::before {
  background: linear-gradient(180deg, transparent 20%, rgba(4,7,11,0.96) 100%) !important;
  height: 80% !important;
}

/* --- KORTELĖS: 5 stulpeliai, bet skaitomo dydžio (ne 4 per dideli, ne 10px per maži) --- */
@media screen and (min-width: 761px) {
  .th-item { width: 20% !important; padding: 0 8px !important; margin-bottom: 20px !important; }
  .th-desc { min-height: 54px !important; padding: 12px 13px !important; }
  .th-title { font-size: 12.5px !important; }
  .th-cat { font-size: 10.5px !important; margin-top: 5px !important; }
  .th-qual { top: 11px !important; left: 11px !important; padding: 4px 10px !important; font-size: 10px !important; }
  .th-new { top: 11px !important; right: 11px !important; padding: 4px 10px !important; font-size: 9px !important; }
}
@media screen and (min-width: 1400px) {
  .th-item { width: 20% !important; }
  .th-title { font-size: 13px !important; }
}

/* ===========================================================
   V9 — švelnesnis gradientas, 2 eilučių pavadinimai,
   suderintas sidebar ranking, vienodas "žiūrėti visus" mygtukas
   =========================================================== */

/* --- Švelnesnis, ilgesnis gradientas po "Populiariausi" nuotraukomis --- */
.popular-item-img::before {
  background: linear-gradient(180deg, transparent 0%, rgba(4,7,11,0.35) 45%, rgba(4,7,11,0.92) 100%) !important;
  height: 68% !important;
}

/* --- Kortelių pavadinimai: 2 eilutės vietoj nuobodaus "..." nukirpimo --- */
.th-title {
  white-space: normal !important; overflow: visible !important; text-overflow: clip !important;
  display: -webkit-box !important; -webkit-box-orient: vertical !important; -webkit-line-clamp: 2 !important;
  overflow: hidden !important; line-height: 1.32 !important; min-height: 2.64em !important;
}
.popular-item-title { white-space: normal !important; }

/* --- Sidebar "Šiandien žiūrimiausi": tas pats "Top" stiliaus skaičius kaip Populiariausi juostoje --- */
.side-top-rank {
  background: none !important; width: auto !important; height: auto !important;
  font-size: 22px !important; font-weight: 800 !important; line-height: 1 !important;
  color: rgba(255,255,255,0.85) !important; text-align: left !important;
}
.side-top-item:nth-child(-n+3) .side-top-rank {
  background: var(--accent-gradient) !important;
  -webkit-background-clip: text !important; background-clip: text !important;
  -webkit-text-fill-color: transparent !important; color: transparent !important;
}

/* --- "Žiūrėti visus" mygtukas suderintas su likusiais mygtukais --- */
.sect-link {
  height: 34px !important; line-height: 32px !important; padding: 0 16px !important;
  border-radius: var(--radius-md) !important; font-weight: 700 !important;
}
.sect-link:hover {
  background: var(--accent-gradient) !important; color: #fff !important; border-color: transparent !important;
}

/* ===========================================================
   V10 — hero fono talpinimas, ikonos prie LT/sezono,
   subalansuota serija/nauja ženkliukų hierarchija
   =========================================================== */

/* --- HERO: aukštesnė juosta ir fokusas į viršų, kad nenupjautų galvų --- */

/* --- LT / sezono ikonos: tvarkingos, mažos, vienos spalvos --- */
.card-lang { display: inline-flex !important; align-items: center; gap: 5px; }
.card-lang .fal { font-size: 11px; color: var(--accent-warm); }
.dot-sep { display: inline-flex !important; align-items: center; opacity: 0.55; }
.dot-sep .fal { font-size: 10px; }
.th-cat { gap: 6px !important; }

/* --- SERIJA ženkliukas: kompaktiškesnis, jis yra svarbiausia info --- */
.th-qual {
  padding: 3px 9px !important; font-size: 9px !important;
  letter-spacing: 0.03em !important;
}

/* --- NAUJA ženkliukas: subtilesnis, kad nesivaržytų su serijos numeriu --- */
.th-new {
  background: rgba(6,8,12,0.68) !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
  color: #f2f5f8 !important;
  box-shadow: none !important;
  padding: 3px 8px 3px 7px !important; font-size: 8px !important;
  display: inline-flex !important; align-items: center; gap: 4px;
}
.th-new::before {
  content: ''; width: 5px; height: 5px; border-radius: 50%;
  background: var(--accent-warm); flex-shrink: 0;
  box-shadow: 0 0 5px rgba(242,120,75,0.8);
}

/* ===========================================================
   V11 — hero natūraliai pereina į "Populiariausi" juostą
   (be aiškios ribos, be atskiro "plaukiojančio" rėmelio)
   =========================================================== */

.carou-sect {
  margin: 0 !important; border: 0 !important; border-radius: 0 !important;
  padding: 22px 42px 20px !important;
  background: linear-gradient(180deg, rgba(6,10,15,0.98) 0%, rgba(7,12,18,1) 100%) !important;
}

@media screen and (max-width: 900px) {
  .carou-sect { padding-left: 20px !important; padding-right: 20px !important; }
}

/* ===========================================================
   V12 — pagrindinio turinio antraštė gauna tą patį "panelės"
   karkasą kaip šoninės juostos blokai (side-box), kad abi
   pusės atrodytų vienos vizualinės sistemos dalimi
   =========================================================== */
.sect-header {
  background: rgba(255,255,255,0.025) !important;
  border: 1px solid var(--border-subtle) !important;
  border-radius: var(--radius-lg) !important;
  padding: 14px 18px !important;
  margin-bottom: 20px !important;
}
.sect-title { font-size: 12.5px !important; }
.sorter { background: rgba(255,255,255,0.04) !important; }

/* ===========================================================
   V13 — antraštės juostos ("Turkiški serialai online" ir
   "Kategorijos") priverstinai to paties aukščio, kad lygiuotų
   =========================================================== */
.sect-header, .side-bt {
  height: 58px !important;
  min-height: 58px !important;
  padding: 0 18px !important;
  display: flex !important;
  align-items: center !important;
  box-sizing: border-box !important;
}

/* ===========================================================
   V14 — griežtesnis lygiavimas: apkarpom aukštį, kad joks
   vidinis elementas (select/rūšiavimas, h1) negalėtų jo ištempti
   =========================================================== */
.sect-header, .side-bt {
  height: 56px !important;
  min-height: 56px !important;
  max-height: 56px !important;
  overflow: hidden !important;
  line-height: 1 !important;
}
.sect-header *, .side-bt * { margin: 0 !important; }
.sect-title, .sect-title .fal, .side-bt .fal { line-height: 1 !important; }
.sorter { height: 30px !important; line-height: 28px !important; }

/* ===========================================================
   V15 — pataisom V14 regresiją: grąžinam ikonų centravimą
   ir tarpą tarp "Rūšiuoti" / "Naujienos datą"
   =========================================================== */
.sect-header *, .side-bt * { margin: unset !important; }
.carou-title [class*=fa-], .sect-title [class*=fa-], .side-bt [class*=fa-], .speedbar [class*=fa-] {
  margin-right: 8px !important; line-height: 28px !important; width: 28px !important; height: 28px !important;
}
.sorter::before { margin-right: 4px !important; }
.sorter > span { margin-left: 4px !important; }
.side-bt .side-all { margin-left: auto !important; }
.sect-title { gap: 10px !important; }

/* ===========================================================
   V16 — TIKROJI PRIEŽASTIS: .sect { margin-top: 28px } stūmė
   pagrindinį turinį žemyn, o šoninė juosta tokio margin neturi.
   Panaikinam jį pirmajam .sect main viduje.
   =========================================================== */
.main > .sect:first-child { margin-top: 0 !important; }

/* ===========================================================
   V17 — švelnesnis header virš hero: daugiau nuotraukos matosi
   pro apačią, mažiau sunkaus tamsaus fono
   =========================================================== */
.header {
  background: linear-gradient(180deg, rgba(6,10,16,0.55) 0%, rgba(6,10,16,0.32) 100%) !important;
  backdrop-filter: blur(14px) saturate(150%) !important;
  -webkit-backdrop-filter: blur(14px) saturate(150%) !important;
  border-bottom: 1px solid rgba(255,255,255,0.05) !important;
  box-shadow: none !important;
}

/* ===========================================================
   V18 — priverčiam naršyklę iš karto (be scroll'inimo) teisingai
   atvaizduoti backdrop-filter ant "position: sticky" header'io.
   Be šito Chrome kartais rodo tik tamsų foną, kol nepajudini puslapio.
   =========================================================== */
.header {
  will-change: backdrop-filter, transform !important;
  transform: translateZ(0) !important;
  -webkit-transform: translateZ(0) !important;
}

/* ===========================================================
   V19 — ATŠAUKIAM V18: "transform" ant "position: sticky"
   elemento sugadina jo lipnumą (naršyklės elgsena). Naudojam
   saugesnį būdą priversti GPU sluoksnį, kuris nepažeidžia sticky.
   =========================================================== */
.header {
  transform: none !important;
  -webkit-transform: none !important;
  will-change: backdrop-filter !important;
  isolation: isolate !important;
}

/* ===========================================================
   V20 — grąžinam senesnę header pozicionavimo elgseną (juda/
   dingsta scrollinant, kaip buvo anksčiau), o kadangi jis
   nebe "sticky", GALIME saugiai naudoti transform triuką, kad
   backdrop-filter blur veiktų iškart nuo pat puslapio įkrovimo.
   =========================================================== */
.header {
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  transform: translateZ(0) !important;
  -webkit-transform: translateZ(0) !important;
  will-change: backdrop-filter, transform !important;
}

/* ===========================================================
   V21 — be atskiros header juostos: tik švelnus blur, o
   logotipas/meniu tekstas skaitomas per teksto šešėlį
   =========================================================== */
.header {
  background: transparent !important;
  backdrop-filter: blur(6px) !important;
  -webkit-backdrop-filter: blur(6px) !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}
.logo, .header-nav a {
  text-shadow: 0 2px 12px rgba(0,0,0,0.9), 0 1px 3px rgba(0,0,0,0.8) !important;
}
.logo-icon { filter: drop-shadow(0 2px 10px rgba(0,0,0,0.7)) !important; }

/* ===========================================================
   V22 — HEADER + FULLSTORY HERO
   - header: paprasta tamsi juosta visur; skaidrus (virš fono
     nuotraukos) tik serialo puslapyje (body.pg-full)
   - logo: text-shadow nuimtas nuo gradientinio "Turku" (šešėlis
     piešėsi ant gradiento viršaus ir atrodė lyg kažkas užstoja)
   - serialo puslapis: hero per visą plotį su fono nuotrauka
   =========================================================== */
.header {
  position: relative !important; top: auto !important; left: auto !important; right: auto !important;
  background: #0a1119 !important;
  backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
  transform: none !important; -webkit-transform: none !important; will-change: auto !important;
  border-bottom: 1px solid rgba(255,255,255,0.06) !important;
}
.logo, .logo span, .header-nav a { text-shadow: none !important; }
.logo-icon { filter: none !important; }
.search-box button, .icon-btn, .account-btn, .account-btn > .fal { color: var(--text-primary) !important; }

/* Serialo puslapis: header skaidrus virš hero fono */
:is(.pg-full, .pg-main) .header {
  position: absolute !important; top: 0 !important; left: 0 !important; right: 0 !important;
  background: linear-gradient(180deg, rgba(4,8,12,0.78) 0%, rgba(4,8,12,0.35) 60%, rgba(4,8,12,0) 100%) !important;
  border-bottom: 0 !important;
}
:is(.pg-full, .pg-main) .header .logo { filter: drop-shadow(0 2px 6px rgba(0,0,0,0.65)); }
:is(.pg-full, .pg-main) .header-nav a { color: #fff; text-shadow: 0 1px 6px rgba(0,0,0,0.8) !important; }
:is(.pg-full, .pg-main) .search-box button, :is(.pg-full, .pg-main) .icon-btn, :is(.pg-full, .pg-main) .account-btn, :is(.pg-full, .pg-main) .btn-menu {
  background: rgba(8,13,20,0.72) !important;
  border-color: rgba(255,255,255,0.16) !important;
  color: #fff !important;
  backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
}
.search-box button:hover, .icon-btn:hover, .account-btn:hover,
:is(.pg-full, .pg-main) .search-box button:hover, :is(.pg-full, .pg-main) .icon-btn:hover, :is(.pg-full, .pg-main) .account-btn:hover {
  background: var(--accent-gradient) !important; border-color: transparent !important; color: #fff !important;
}

/* --- Hero vieta virš stulpelių (main.tpl) --- */
.fhero-slot { position: relative; overflow: hidden; padding: 88px 42px 44px; background: var(--bg-primary); }
.fhero-slot .speedbar {
  position: relative; z-index: 2; margin: 0 0 22px; padding: 0; background: none; border: 0; border-radius: 0;
  color: var(--text-muted); font-size: 12.5px;
}
.fhero-slot .speedbar a { color: var(--text-secondary); }
.fhero-slot .speedbar a:hover { color: #fff; }
.speedbar [class*=fa-] { width: auto !important; height: auto !important; line-height: inherit !important; background: none !important; }

/* --- Hero (fullstory.tpl) --- */
.fhero { position: relative; margin-bottom: 20px; }
.fhero-slot .fhero { position: static; margin: 0; }
.fhero-bg { position: absolute; inset: 0; z-index: 0; background-size: cover; background-position: center 20%; }
.fhero-bg::after {
  content: ''; position: absolute; inset: 0;
  background:
    linear-gradient(90deg, rgba(9,17,25,0.94) 0%, rgba(9,17,25,0.74) 38%, rgba(9,17,25,0.30) 72%, rgba(9,17,25,0.45) 100%),
    linear-gradient(0deg, var(--bg-primary) 0%, rgba(9,17,25,0) 42%);
}
.fhero-in { position: relative; z-index: 1; display: flex; align-items: center; gap: 30px; max-width: 1280px; margin: 0 auto; }
.fh-poster { width: 230px; flex-shrink: 0; }
.fh-poster .fimg { aspect-ratio: 2 / 3; box-shadow: 0 18px 50px rgba(0,0,0,0.6); }
.fh-poster .fimg img { width: 100%; height: 100%; object-fit: cover; }
.fh-info { flex: 1; min-width: 0; }
.fh-title { font-size: clamp(22px, 2.4vw, 32px); font-weight: 800; line-height: 1.2; letter-spacing: -0.02em; color: #fff; margin-bottom: 18px; }
.fh-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.fh-play { display: inline-flex; align-items: center; gap: 10px; height: 46px; line-height: 46px; padding: 0 26px; font-size: 14px; border-radius: var(--radius-sm); }
.fh-fav a, .fh-fav > span {
  display: inline-flex; align-items: center; gap: 9px; height: 46px; padding: 0 22px; cursor: pointer;
  border-radius: var(--radius-sm); font-size: 14px; font-weight: 700; color: #fff;
  background: rgba(6,11,17,0.62); border: 1px solid rgba(255,255,255,0.14);
  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); transition: all 0.25s ease;
}
.fh-fav a:hover, .fh-fav > span:hover { background: rgba(255,255,255,0.10); border-color: var(--border-hover); }
.fh-fav [class*=fa-] { color: var(--accent); }

/* Aprašymas po hero — ta pati panelė kaip kiti blokai */
.pg-full .ftext { margin: 0 0 22px; padding: 22px 24px; background: rgba(255,255,255,0.02); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); }

@media screen and (max-width: 900px) {
  .fhero-slot { padding: 82px 20px 30px; }
  .fh-poster { width: 180px; }
  .fhero-in { gap: 22px; }
}
@media screen and (max-width: 590px) {
  .fhero-slot { padding: 74px 14px 24px; }
  .fhero-in { align-items: flex-start; flex-wrap: wrap; gap: 14px; }
  .fh-poster { width: 104px; }
  .fh-info { flex: 1 1 0; }
  .fh-title { font-size: 18px; margin-bottom: 10px; }
  .fh-play, .fh-fav a, .fh-fav > span { height: 40px; line-height: 40px; padding: 0 16px; font-size: 13px; }
}
.pg-full #dle-content { margin-left: 0 !important; margin-right: 0 !important; }

/* ===========================================================
   V23 — VIENAS TINKLELIS + SERIALO PUSLAPIO TVARKA
   Vienas šoninis tarpas (--gut) header'iui, hero, stulpeliams,
   juostoms ir poraštei, kad viskas lygiuotų į tą pačią liniją.
   =========================================================== */
:root { --gut: 32px; --side-w: 292px; --col-gap: 20px; }
@media screen and (max-width: 900px) { :root { --gut: 20px; } }
@media screen and (max-width: 590px) { :root { --gut: 14px; } }

.header { padding-left: var(--gut) !important; padding-right: var(--gut) !important; }
.cols { padding-left: var(--gut) !important; padding-right: var(--gut) !important; }
.carou-sect { padding-left: var(--gut) !important; padding-right: var(--gut) !important; }
@media screen and (min-width: 901px) {
  .promo-strip, .footer { margin-left: var(--gut) !important; margin-right: var(--gut) !important; }
}

/* --- Hero: tas pats tinklelis kaip turinys + šoninė juosta --- */
.fhero-slot { padding: 102px var(--gut) 40px; }
.fhero-in { max-width: none; margin: 0; gap: 28px; align-items: flex-end; }
.fh-poster { width: 210px; }
.fh-info { padding-bottom: 4px; }
.fh-title { margin-bottom: 16px; }
/* kol matoma šoninė juosta, hero tekstas baigiasi ten pat, kur pagrindinis stulpelis */
@media screen and (min-width: 901px) {
  .fhero-in { padding-right: calc(var(--side-w) + var(--col-gap)); }
}

/* --- Aprašymas --- */
.pg-full .ftext { padding: 22px 24px; line-height: 1.75; }
.pg-full .ftext h2, .pg-full .ftext h3, .pg-full .ftext h4 { margin: 0 0 12px; font-size: 18px; line-height: 1.35; color: var(--text-primary); }
.pg-full .ftext p { margin-bottom: 12px; }
.pg-full .ftext p:empty, .pg-full .ftext br:last-child { display: none; }
.pg-full .ftext > *:last-child { margin-bottom: 0; }

/* --- Grotuvo antraštė: kairėje, kaip kitų sekcijų pavadinimai --- */
.fsubtitle {
  text-align: left; font-size: 16px; line-height: 1.4; margin: 0 0 14px; padding-left: 14px; position: relative;
}
.fsubtitle::before { content: ''; position: absolute; left: 0; top: 3px; bottom: 3px; width: 3px; border-radius: 2px; background: var(--accent-gradient); }
.fplayer { margin-bottom: 28px; }

/* --- Panašūs serialai: be "Top" numerių (tai ne reitingas) --- */
.frels .carou-content { counter-reset: none; }
.frels .popular-item::after { display: none !important; }
.frels .popular-item-title { padding: 10px 12px !important; }

/* --- Šoninė juosta: pavadinimas iki 2 eilučių --- */
.side-top-item { align-items: center; column-gap: 12px; }
.side-top-title {
  display: -webkit-box !important; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;
  white-space: normal !important; align-self: end;
}
.side-top-views { align-self: start; }
.footer-social-btn svg { display: block; }

/* --- Planšetė: plakatas mažesnis, eilutės kompaktiškesnės --- */
@media screen and (max-width: 900px) {
  .fhero-slot { padding: 94px var(--gut) 28px; }
  .fh-poster { width: 170px; }
  .fhero-in { gap: 22px; }
}

/* --- Telefonas: plakatas + pavadinimas viršuje, visa kita per visą plotį --- */
@media screen and (max-width: 590px) {
  .fhero-slot { padding: 80px var(--gut) 22px; }
  .fhero-slot .speedbar { margin-bottom: 14px; font-size: 11.5px; }
  .fhero-bg { background-position: center top; }
  .fhero-bg::after {
    background: linear-gradient(180deg, rgba(9,17,25,0.55) 0%, rgba(9,17,25,0.86) 45%, var(--bg-primary) 100%);
  }
  .fhero-in { display: grid; grid-template-columns: 112px 1fr; column-gap: 14px; row-gap: 12px; align-items: start; flex-wrap: nowrap; }
  .fh-poster { width: 112px; grid-column: 1; grid-row: 1 / 3; }
  .fh-info { display: contents; }
  .fh-title { grid-column: 2; grid-row: 1; align-self: end; margin: 0; font-size: 19px; line-height: 1.25; }
  .fh-actions { grid-column: 1 / -1; flex-wrap: nowrap; gap: 10px; margin-top: 2px; }
  .fh-play { flex: 1; justify-content: center; height: 44px; line-height: 44px; padding: 0 14px; font-size: 14px; }
  .fh-fav a, .fh-fav > span { height: 44px; padding: 0 16px; font-size: 13.5px; }

  .pg-full .cols { padding-top: 6px !important; }
  .pg-full .ftext { padding: 16px; font-size: 13.5px; }
  .pg-full .ftext h2, .pg-full .ftext h3 { font-size: 16px; }
  .fsubtitle { font-size: 14.5px; }
  .fplayer .fctrl { min-height: 0; }
  .fplayer .tabs-sel > span { flex: 1 1 0; width: auto; padding-left: 8px; padding-right: 8px; }
}
.pg-full .fplayer { margin-top: 0 !important; }

/* ===========================================================
   V24 — serialo informacija be "dėžučių": viena faktų eilutė,
   žanrų ženkliukai ir aktoriai paprastu tekstu
   =========================================================== */
.fh-title { margin-bottom: 14px; }
.fh-facts { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 20px; margin-bottom: 14px; font-size: 14px; font-weight: 600; color: var(--text-primary); }
.fh-facts > span { display: inline-flex; align-items: center; gap: 7px; }
.fh-facts i { font-size: 14px; color: var(--text-secondary); }
.fh-facts a { color: inherit; }
.fh-facts a:hover { color: var(--accent-warm); }

/* kableliai tarp žanrų paslepiami (font-size: 0), lieka tik ženkliukai */
.fh-genres { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; font-size: 0; }
.fh-genres a, .fh-genres span {
  display: inline-flex; align-items: center; height: 30px; padding: 0 13px; border-radius: 999px;
  font-size: 12.5px; font-weight: 600; color: var(--text-primary);
  background: rgba(255,255,255,0.09); border: 1px solid rgba(255,255,255,0.10);
  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); transition: all 0.25s ease;
}
.fh-genres a:hover { background: var(--accent-gradient); border-color: transparent; color: #fff; }

.fh-actors {
  max-width: 640px; margin-bottom: 16px; font-size: 13.5px; line-height: 1.55; color: var(--text-primary);
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;
}
.fh-actors > span { color: var(--text-secondary); margin-right: 4px; }
.fh-actors a { color: inherit; }
.fh-actors a:hover { color: var(--accent-warm); }

@media screen and (max-width: 590px) {
  .fh-facts { grid-column: 1 / -1; margin: 2px 0 0; gap: 8px 14px; font-size: 13px; }
  .fh-genres { grid-column: 1 / -1; margin: 0; gap: 6px; }
  .fh-genres a, .fh-genres span { height: 28px; padding: 0 11px; font-size: 12px; }
  .fh-actors { grid-column: 1 / -1; margin: 0; font-size: 12.5px; }
}

/* ===========================================================
   V25 — serialo puslapis: antraštės eilutė, balas, sutrauktas
   aprašymas, lipni juostelė slenkant
   =========================================================== */
html:has(.pg-full) { scroll-behavior: smooth; }
#fplayer { scroll-margin-top: 76px; }

/* --- Hero poliravimas --- */
.fh-eyebrow {
  display: flex; align-items: center; gap: 10px; margin-bottom: 8px;
  font-size: 11.5px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--accent-warm);
}
.fh-eyebrow i { width: 4px; height: 4px; border-radius: 50%; background: rgba(255,255,255,0.45); }
.fh-title { font-size: clamp(24px, 2.7vw, 38px); line-height: 1.12; letter-spacing: -0.025em; }
.fh-poster .fimg {
  border-radius: 14px;
  box-shadow: 0 0 0 1px rgba(255,255,255,0.14), 0 24px 60px -12px rgba(0,0,0,0.75);
}
.fhero-slot { padding-bottom: 52px; }
.fhero-bg::after {
  background:
    linear-gradient(90deg, rgba(9,17,25,0.95) 0%, rgba(9,17,25,0.78) 34%, rgba(9,17,25,0.28) 68%, rgba(9,17,25,0.40) 100%),
    linear-gradient(0deg, var(--bg-primary) 0%, rgba(9,17,25,0.82) 14%, rgba(9,17,25,0.35) 38%, rgba(9,17,25,0) 62%);
}
.fh-play { box-shadow: 0 10px 28px -8px rgba(232,68,58,0.6); }

/* --- Balas --- */
.fh-score { display: inline-flex; align-items: center; gap: 6px; color: #fff; }
.fh-score[hidden] { display: none !important; }
.fh-score svg { color: #f5b301; flex-shrink: 0; }
.fh-score b { font-size: 15px; font-weight: 800; }
.fh-actions { gap: 12px 14px; }

/* --- Sutrauktas aprašymas --- */
.fdesc {
  position: relative; margin: 0 0 22px; padding: 22px 24px;
  background: rgba(255,255,255,0.02); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg);
}
.pg-full .fdesc .ftext { margin: 0; padding: 0; background: none; border: 0; border-radius: 0; }
.fdesc.is-collapsed .ftext {
  max-height: 138px; overflow: hidden;
  -webkit-mask-image: linear-gradient(180deg, #000 55%, transparent 100%);
  mask-image: linear-gradient(180deg, #000 55%, transparent 100%);
}
.fdesc-more {
  display: inline-flex; align-items: center; gap: 7px; margin-top: 12px; padding: 0; cursor: pointer;
  font: inherit; font-size: 13px; font-weight: 700; color: var(--accent-warm); background: none;
}
.fdesc-more[hidden] { display: none; }
.fdesc-more::after {
  content: ''; width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;
  transform: translateY(-2px) rotate(45deg); transition: transform 0.25s ease;
}
.fdesc:not(.is-collapsed) .fdesc-more::after { transform: translateY(2px) rotate(-135deg); }
.fdesc-more:hover { color: #fff; }

/* --- Lipni juostelė --- */
.fsticky {
  position: fixed; top: 0; left: 0; right: 0; z-index: 300;
  display: flex; align-items: center; gap: 14px; height: 60px; padding: 0 var(--gut);
  background: rgba(9,14,21,0.92); border-bottom: 1px solid rgba(255,255,255,0.08);
  backdrop-filter: blur(16px) saturate(140%); -webkit-backdrop-filter: blur(16px) saturate(140%);
  box-shadow: 0 10px 30px rgba(0,0,0,0.35);
  transform: translateY(-100%); visibility: hidden;
  transition: transform 0.3s var(--ease), visibility 0s linear 0.3s;
}
.fsticky.is-on { transform: translateY(0); visibility: visible; transition: transform 0.3s var(--ease), visibility 0s; }
.fsticky img { width: 30px; height: 42px; object-fit: cover; border-radius: 5px; flex-shrink: 0; }
.fsticky-title { flex: 1; min-width: 0; font-size: 15px; font-weight: 700; color: #fff; }
.fsticky-play { display: inline-flex; align-items: center; gap: 8px; height: 38px; line-height: 38px; padding: 0 18px; font-size: 13px; border-radius: var(--radius-sm); flex-shrink: 0; }

@media screen and (max-width: 590px) {
  .fh-poster { grid-row: 1 / 3; }
  .fh-eyebrow { grid-column: 2; grid-row: 1; align-self: end; margin: 0; font-size: 10.5px; gap: 8px; }
  .fh-title { grid-column: 2; grid-row: 2; align-self: start; font-size: 20px; }
  .fh-actions { flex-wrap: wrap; }
  .fh-fav { flex-shrink: 0; }
  .fhero-slot { padding-bottom: 26px; }
  .fdesc { padding: 16px; margin-bottom: 18px; }
  .fdesc.is-collapsed .ftext { max-height: 118px; }
  .fsticky { height: 54px; gap: 10px; }
  .fsticky-title { font-size: 13.5px; }
  .fsticky-play { height: 36px; line-height: 36px; padding: 0 14px; }
}
/* "Skaityti daugiau" — teksto nuoroda, ne temos gradientinis mygtukas */
.fdesc-more, .fdesc-more:hover {
  background: none !important; box-shadow: none !important; border: 0 !important; border-radius: 0 !important;
  height: auto !important; line-height: 1.4 !important; padding: 0 !important;
  text-transform: none !important; letter-spacing: 0 !important; transform: none !important;
}
.fdesc-more { color: var(--accent-warm) !important; }
.fdesc-more:hover { color: #fff !important; }
.fdesc-more { display: inline-flex !important; }
.fdesc-more[hidden] { display: none !important; }

/* ===========================================================
   V26 — pagrindinis puslapis: meniu ant slankiklio viršaus
   (kaip serialo puslapyje). Header ten skaidrus, todėl
   slankiklis pailgintas header'io aukščiu (64px), o jo turinys
   lygiuojamas į tą pačią kairę liniją kaip logotipas.
   =========================================================== */
/* viršuje švelnus patamsinimas, kad meniu būtų įskaitomas ant bet kokios nuotraukos */

/* V27 — meniu brūkšnelis iškart po užrašu (teksto pločio), ne header'io apačioje */
.header-nav a::after { top: auto !important; bottom: 15px !important; left: 16px !important; right: 16px !important; height: 2px !important; border-radius: 2px; }

/* ===========================================================
   V28 — reitingas kaip vienas mygtukas: "★ 9,4 /10 · 96 balsai |
   Įvertinti". Žvaigždutės atsidaro mažame langelyje paspaudus.
   =========================================================== */
.fh-rate { position: relative; }
.fh-rate-btn {
  display: inline-flex; align-items: center; gap: 10px; height: 46px; padding: 0 6px 0 16px; cursor: pointer; user-select: none;
  border-radius: var(--radius-sm); font-size: 13px; font-weight: 600; color: var(--text-secondary);
  background: rgba(6,11,17,0.62); border: 1px solid rgba(255,255,255,0.14);
  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); transition: border-color 0.25s ease, background 0.25s ease;
}
.fh-rate-btn:hover, .fh-rate.is-open .fh-rate-btn { border-color: var(--border-hover); background: rgba(255,255,255,0.08); }
.fh-rate-btn .fh-score b { font-size: 17px; line-height: 1; }
.fh-rate-btn .fh-score em { font-style: normal; font-size: 12px; font-weight: 600; color: var(--text-muted); margin-left: -3px; }
.fh-rate-btn .fh-score svg { width: 16px; height: 16px; }
.fh-rate-votes { white-space: nowrap; }
.fh-score:not([hidden]) + .fh-rate-votes::before { content: '·'; margin-right: 10px; color: var(--text-muted); }
.fh-rate-cta {
  display: inline-flex; align-items: center; gap: 7px; height: 34px; padding: 0 12px; margin-left: 4px; white-space: nowrap;
  border-radius: 6px; font-weight: 700; color: #fff; background: rgba(255,255,255,0.09); transition: background 0.25s ease;
}
.fh-rate-cta::after {
  content: ''; width: 6px; height: 6px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;
  transform: translateY(1px) rotate(-135deg); transition: transform 0.25s ease;
}
.fh-rate-btn:hover .fh-rate-cta, .fh-rate.is-open .fh-rate-cta { background: var(--accent-gradient); }
.fh-rate.is-open .fh-rate-cta::after { transform: translateY(-2px) rotate(45deg); }

/* langelis atsidaro į viršų — hero apačia nukerpama (overflow), todėl žemyn netilptų */
.fh-rate-pop {
  position: absolute; left: 0; bottom: calc(100% + 10px); z-index: 20; padding: 14px 18px 16px;
  background: #101a25; border: 1px solid rgba(255,255,255,0.14); border-radius: var(--radius-md);
  box-shadow: 0 18px 44px rgba(0,0,0,0.55);
  opacity: 0; visibility: hidden; transform: translateY(6px);
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0s linear 0.2s;
}
.fh-rate.is-open .fh-rate-pop { opacity: 1; visibility: visible; transform: none; transition: opacity 0.2s ease, transform 0.2s ease, visibility 0s; }
.fh-rate-pop::after {
  content: ''; position: absolute; left: 26px; bottom: -6px; width: 10px; height: 10px; transform: rotate(45deg);
  background: #101a25; border-right: 1px solid rgba(255,255,255,0.14); border-bottom: 1px solid rgba(255,255,255,0.14);
}
.fh-rate-pop-title { font-size: 12px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--text-secondary); white-space: nowrap; }
.fh-rate-pop .mrating { margin: 0; overflow: visible; }

@media screen and (max-width: 590px) {
  .fh-rate { flex: 1 1 100%; }
  .fh-rate-btn { display: flex; height: 44px; }
  .fh-rate-cta { margin-left: auto; }
  .fh-rate-pop { left: 0; right: 0; text-align: center; }
  .fh-rate-pop::after { left: 50%; margin-left: -5px; }
}

/* ===========================================================
   V29 — vietoj žvaigždučių: matuoklio juosta 1–10.
   Tai tas pats DLE reitingo kodas (.unit-rating), tik perpieštas:
   kiekviena nuoroda — juostos segmentas su skaičiumi po juo.
   Be pelės šviesiai pažymėtas dabartinis vidurkis; užvedus —
   gradientu nusidažo segmentai iki pasirinkto, o viršuje dešinėje
   rodomas pasirinktas balas žodžiu.
   =========================================================== */
.fh-rate-pop { min-width: 380px; padding: 16px 18px 12px; }
.fh-rate-pop-head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 14px; }
.fh-rate-live { font-size: 13px; font-weight: 600; color: var(--text-secondary); white-space: nowrap; transition: color 0.15s ease; }
.fh-rate-live.is-pick { color: #fff; font-weight: 700; }

.fh-rate-pop .unit-rating {
  display: flex; width: auto !important; height: auto !important; margin: 0 -2px; padding: 0;
  background: none !important; position: static;
}
.fh-rate-pop .unit-rating li { float: none; flex: 1 1 0; padding: 0 2px; margin: 0; text-indent: 0; }
.fh-rate-pop .unit-rating li.current-rating { display: none; }
.fh-rate-pop .unit-rating li a {
  position: static !important; display: flex; flex-direction: column; align-items: center; gap: 9px;
  width: 100% !important; height: auto !important; left: auto !important; padding: 6px 0 4px;
  text-indent: 0 !important; background: none !important; text-decoration: none;
  font-size: 12.5px; font-weight: 700; line-height: 1; color: var(--text-muted); transition: color 0.15s ease;
}
/* segmentas */
.fh-rate-pop .unit-rating li a::before {
  content: ''; width: 100%; height: 8px; border-radius: 3px; background: rgba(255,255,255,0.10);
  transition: background 0.15s ease, transform 0.15s ease;
}
.fh-rate-pop .unit-rating li:nth-child(2) a::before { border-radius: 8px 3px 3px 8px; }
.fh-rate-pop .unit-rating li:last-child a::before { border-radius: 3px 8px 8px 3px; }
/* dabartinis vidurkis */
.fh-rate-pop .unit-rating li a.is-on::before { background: rgba(255,255,255,0.42); }
.fh-rate-pop .unit-rating li a.is-on { color: var(--text-secondary); }
/* užvedus: viskas iki pasirinkto */
.fh-rate-pop .unit-rating:hover li a::before { background: var(--accent-gradient); }
.fh-rate-pop .unit-rating:hover li a { color: var(--text-secondary); }
.fh-rate-pop .unit-rating li:hover ~ li a::before { background: rgba(255,255,255,0.10); }
.fh-rate-pop .unit-rating li:hover ~ li a { color: var(--text-muted); }
.fh-rate-pop .unit-rating li a:hover { color: #fff; }
.fh-rate-pop .unit-rating li a:hover::before { transform: scaleY(1.5); }

.fh-rate-none { font-size: 13px; color: var(--text-secondary); white-space: nowrap; }
.fh-rate-pop.no-vote .mrating { display: none; }
.fh-rate-pop.no-vote { min-width: 0; }
@media screen and (max-width: 590px) {
  .fh-rate-pop { min-width: 0; text-align: left; padding: 14px 14px 10px; }
  .fh-rate-pop .unit-rating li a { padding: 10px 0 8px; font-size: 13px; }
  .fh-rate-pop .unit-rating li a::before { height: 10px; }
}

/* V30 — užfiksuotas savo balas: skalė nebespaudžiama, segmentai iki tavo balo nudažyti gradientu */
.fh-rate-pop.is-voted .mrating { display: none; }
.fh-rate-mine .unit-rating { pointer-events: none; }
.fh-rate-pop .fh-rate-mine .unit-rating li a.is-mine::before { background: var(--accent-gradient); }
.fh-rate-pop .fh-rate-mine .unit-rating li a.is-mine { color: var(--text-secondary); }
.fh-rate-pop .fh-rate-mine .unit-rating li a.is-pick { color: #fff; }
.fh-rate-pop .fh-rate-mine .unit-rating li a.is-pick::before { transform: scaleY(1.5); }

/* ===========================================================
   V31 — serialo puslapio apačia: vienodi sekcijų pavadinimai,
   "Apie serialą" panelė, grotuvo blokas, panašūs serialai
   (vertikalūs plakatai), komentarai
   =========================================================== */
.fsec-title {
  display: flex; align-items: center; gap: 12px; margin: 0 0 16px; padding-left: 14px; position: relative;
  font-size: 18px; font-weight: 800; line-height: 1.3; letter-spacing: -0.01em; color: var(--text-primary);
}
.fsec-title::before { content: ''; position: absolute; left: 0; top: 3px; bottom: 3px; width: 3px; border-radius: 2px; background: var(--accent-gradient); }
.fsec-count { padding: 3px 10px; border-radius: 999px; font-size: 12px; font-weight: 700; color: var(--text-secondary); background: rgba(255,255,255,0.07); }
.pg-full .sect { margin-top: 0; margin-bottom: 36px; }

/* --- Apie serialą --- */
.fabout .fdesc { margin: 0; padding: 0; background: none; border: 0; border-radius: 0; }
.fabout .fdesc.is-collapsed .ftext { max-height: 196px; }

/* --- Grotuvas --- */
.fp-head { display: flex; align-items: baseline; justify-content: space-between; gap: 6px 20px; flex-wrap: wrap; margin-bottom: 16px; }
.fp-head .fsec-title { margin: 0; }
.fp-head .fsubtitle { margin: 0; padding: 0; font-size: 12.5px; font-weight: 500; line-height: 1.4; color: var(--text-muted); text-align: right; }
.fp-head .fsubtitle::before { display: none; }
.fplayer { border-radius: var(--radius-lg); box-shadow: 0 34px 70px -34px rgba(0,0,0,0.85); }
.fplayer .fctrl { min-height: 0; padding: 10px 12px; gap: 12px; background: rgba(255,255,255,0.02); }
.fplayer .tabs-sel { display: flex; flex-wrap: wrap; gap: 6px; counter-reset: fpl; }
.fplayer .tabs-sel span {
  display: inline-flex; align-items: center; height: 36px; line-height: 36px; padding: 0 16px; margin: 0; width: auto; flex: 0 0 auto;
  border: 0; border-radius: 999px; font-size: 13px; font-weight: 700; cursor: pointer;
  color: var(--text-secondary); background: rgba(255,255,255,0.06); transition: background 0.2s ease, color 0.2s ease;
}
.fplayer .tabs-sel span:hover { color: #fff; background: rgba(255,255,255,0.11); }
.fplayer .tabs-sel span.current, .fplayer .tabs-sel span.current:hover { color: #fff; background: var(--accent-gradient); }
/* "Grotuvas 1, 2, 3…" numeruoja pati naršyklė — nebepasikartoja, kai rodomi ne visi grotuvai */
.fplayer .tabs-sel .tab-n::after { counter-increment: fpl; content: '\00a0' counter(fpl); }
.fplayer .fcompl { margin: 0; flex-shrink: 0; }
.fplayer .fcompl a {
  display: inline-flex; align-items: center; gap: 7px; height: 36px; padding: 0 14px; border-radius: 999px;
  font-size: 12.5px; font-weight: 600; color: var(--text-secondary); border: 1px solid rgba(255,255,255,0.10); transition: all 0.2s ease;
}
.fplayer .fcompl a:hover { color: #fff; border-color: var(--border-hover); background: rgba(255,255,255,0.05); }
.fplayer .fcompl .fal { margin: 0; color: var(--accent-warm); }
/* paprasti iframe grotuvai — 16:9 pagal plotį, ne fiksuoti 480px */
.fplayer .video-box > iframe { height: auto !important; aspect-ratio: 16 / 9; max-height: 80vh; }

/* --- Panašūs serialai: vertikalūs plakatai, viena slenkama eilė --- */
.rel-row {
  display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 5 * 16px) / 6); gap: 16px;
  overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x proximity; scrollbar-width: none; padding-bottom: 2px;
}
.rel-row::-webkit-scrollbar { display: none; }
.rel-card { min-width: 0; scroll-snap-align: start; }
.rel-img { display: block; position: relative; aspect-ratio: 2 / 3; overflow: hidden; border-radius: var(--radius-md); background: var(--bg-elevated); box-shadow: 0 0 0 1px rgba(255,255,255,0.08); }
.rel-img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s var(--ease), filter 0.3s ease; }
.rel-badge { position: absolute; left: 8px; top: 8px; padding: 3px 8px; border-radius: 6px; font-size: 10.5px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.03em; color: #fff; background: rgba(6,11,17,0.78); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }
.rel-play {
  position: absolute; left: 50%; top: 50%; width: 48px; height: 48px; margin: -24px 0 0 -24px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center; font-size: 16px; color: #fff; background: var(--accent-gradient);
  box-shadow: 0 10px 26px -6px rgba(232,68,58,0.7); opacity: 0; transform: scale(0.8); transition: opacity 0.25s ease, transform 0.25s ease;
}
.rel-play .fal { margin-left: 3px; }
.rel-card:hover .rel-img img { transform: scale(1.06); filter: brightness(0.6); }
.rel-card:hover .rel-play { opacity: 1; transform: none; }
.rel-title {
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; margin-top: 10px;
  font-size: 13.5px; font-weight: 700; line-height: 1.35; color: var(--text-primary); transition: color 0.2s ease;
}
.rel-card:hover .rel-title { color: var(--accent-warm); }

/* --- Komentarai --- */
.fcomms .sect-content { padding: 0; background: none; border: 0; }
.fcomms .add-comms { margin: 0 0 20px; padding: 18px; border-radius: var(--radius-lg); background: rgba(255,255,255,0.02); border: 1px solid var(--border-subtle); }
.fcomms .ac-inputs { gap: 12px; }
.fcomms .ac-inputs input { flex: 1 1 0; width: auto; margin-bottom: 12px; }
.fcomms .ac-textarea textarea { height: 96px; margin-bottom: 12px; }
.fcomms .ac-submit { display: flex; justify-content: flex-end; }
.fcomms .ac-submit button { height: 42px; line-height: 42px; padding: 0 24px; border-radius: var(--radius-sm); }
.fcomms-empty { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 34px 20px; text-align: center; border: 1px dashed rgba(255,255,255,0.12); border-radius: var(--radius-lg); color: var(--text-secondary); font-size: 13.5px; }
.fcomms-empty[hidden] { display: none; }
.fcomms-empty .fal { font-size: 26px; color: var(--accent-warm); margin-bottom: 4px; }
.fcomms-empty b { font-size: 15px; color: var(--text-primary); }
.fcomms .comm-item {
  margin: 0 0 12px; padding: 16px 18px 14px 72px; min-height: 0; font-size: 14px;
  background: rgba(255,255,255,0.02); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg);
}
.fcomms .comm-avatar { left: 18px; top: 16px; width: 40px; height: 40px; border-radius: 50%; overflow: hidden; }
.fcomms .comm-letter { width: 40px; height: 40px; line-height: 40px; border-radius: 50%; text-align: center; font-weight: 800; color: #fff; }
.fcomms .comm-one { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; }
.fcomms .comm-one > span { margin: 0; opacity: 1; font-size: 12px; color: var(--text-muted); }
.fcomms .comm-one > span.comm-author, .fcomms .comm-one > span.comm-author a { font-size: 14px; font-weight: 700; color: var(--text-primary); }
.fcomms .comm-two { margin: 6px 0 10px; line-height: 1.65; color: var(--text-secondary); }
.fcomms .comm-three { gap: 14px; font-size: 12.5px; }
.fcomms .comm-three-left { display: flex; align-items: center; gap: 14px; }
.fcomms .comm-three-left > a { border: 0; color: var(--text-secondary); font-weight: 600; opacity: 1; }
.fcomms .comm-three-left > a:hover { color: var(--accent-warm); }
.fcomms .comm-rate3 { top: 0; margin: 0; height: auto; line-height: 1; display: inline-flex; align-items: center; gap: 2px; padding: 5px 10px; border-radius: 999px; background: rgba(255,255,255,0.05); }
.fcomms .comm-rate3 a, .fcomms .comm-rate3 a:first-child { top: 0; }

@media screen and (max-width: 1100px) {
  .rel-row { grid-auto-columns: calc((100% - 4 * 16px) / 5); }
}
@media screen and (max-width: 900px) {
  .rel-row { grid-auto-columns: calc((100% - 3 * 14px) / 4); gap: 14px; }
}
@media screen and (max-width: 590px) {
  .fsec-title { font-size: 16px; margin-bottom: 12px; }
  .pg-full .sect, .fabout { margin-bottom: 28px; }
  .fp-head .fsubtitle { text-align: left; font-size: 12px; }
  .fplayer .fctrl { padding: 8px; }
  .fplayer .tabs-sel { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
  .fplayer .tabs-sel::-webkit-scrollbar { display: none; }
  .fplayer .tabs-sel span { height: 34px; line-height: 34px; padding: 0 14px; flex: 0 0 auto; width: auto; }
  /* telefone matosi 2 su puse plakato — aišku, kad eilę galima slinkti */
  .rel-row { grid-auto-columns: 40%; gap: 12px; margin-right: calc(var(--gut) * -1); padding-right: var(--gut); }
  .rel-play { display: none; }
  .rel-title { font-size: 13px; margin-top: 8px; }
  .fcomms .add-comms { padding: 14px; }
  .fcomms .ac-submit button { width: 100%; }
  .fcomms .comm-item { padding: 14px 14px 12px 62px; }
  .fcomms .comm-avatar { left: 14px; top: 14px; width: 36px; height: 36px; }
  .fcomms .comm-letter { width: 36px; height: 36px; line-height: 36px; }
}
.fcomms .comm-two.full-text { padding: 0; background: none; border: 0; border-radius: 0; }
.fp-head .fsubtitle a { color: inherit; }

/* ===========================================================
   V32 — "Apie serialą": faktai nebe stulpeliu dešinėje (šalia
   kategorijų sąrašo atrodė kaip du sąrašai greta), o horizontalia
   langelių juosta panelės apačioje
   =========================================================== */
.fabout {
  margin: 0 0 36px; padding: 24px 26px 0; overflow: hidden;
  background: rgba(255,255,255,0.02); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg);
}
.fabout-facts {
  display: flex; flex-wrap: wrap; margin: 22px -26px 0; padding: 0;
  border-top: 1px solid var(--border-subtle); background: rgba(255,255,255,0.015);
}
.fabout-facts > div { flex: 1 1 0; min-width: 120px; padding: 16px 12px 17px 26px; box-shadow: -1px 0 0 var(--border-subtle); }
.fabout-facts dt { margin-bottom: 5px; font-size: 11px; font-weight: 700; letter-spacing: 0.09em; text-transform: uppercase; color: var(--text-muted); }
.fabout-facts dd { margin: 0; font-size: 15px; font-weight: 700; line-height: 1.3; color: var(--text-primary); }
.fabout-facts dd a { color: inherit; }
.fabout-facts dd a:hover { color: var(--accent-warm); }
@media screen and (max-width: 900px) {
  .fabout { padding: 20px 20px 0; }
  .fabout-facts { margin: 18px -20px 0; }
  .fabout-facts > div { flex: 1 1 33.333%; min-width: 0; padding: 13px 10px 14px 20px; box-shadow: -1px 0 0 var(--border-subtle), 0 -1px 0 var(--border-subtle); }
}
@media screen and (max-width: 590px) {
  .fabout { padding: 16px 16px 0; }
  .fabout-facts { margin: 14px -16px 0; }
  .fabout-facts > div { flex: 1 1 50%; padding: 12px 8px 13px 16px; }
  .fabout-facts dd { font-size: 14px; }
}

/* ===========================================================
   V33 — hero nebekartoja to, kas yra faktų juostoje žemiau
   (metai, šalis, kalba): viena eilutė — būsena, HD, žanrai
   =========================================================== */
.fh-tags { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; margin-bottom: 22px; }
.fh-tags .fh-facts, .fh-tags .fh-genres { margin: 0; }
.fh-tags .fh-facts { gap: 8px 10px; }
@media screen and (max-width: 590px) {
  .fh-tags { grid-column: 1 / -1; margin: 2px 0 0; gap: 6px 8px; }
}

/* ===========================================================
   V34 — būsena, HD ir žanrai: viena ženkliukų šeima (tas pats
   aukštis, forma ir fonas). Būseną skiria tik spalvotas taškas.
   =========================================================== */
.fh-st, .fh-hd {
  display: inline-flex; align-items: center; gap: 8px; height: 30px; padding: 0 13px; border-radius: 999px;
  font-size: 12.5px; font-weight: 600; line-height: 1; color: var(--text-primary);
  background: rgba(255,255,255,0.09); border: 1px solid rgba(255,255,255,0.10);
  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
}
.fh-st::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: currentColor; flex-shrink: 0; }
.fh-st-full::before { background: var(--green); box-shadow: 0 0 0 3px rgba(52,211,153,0.20); }
.fh-st-air::before { background: var(--accent-warm); box-shadow: 0 0 0 3px rgba(242,120,75,0.22); }
.fh-st-soon::before { background: var(--text-muted); }
.fh-hd { font-weight: 800; letter-spacing: 0.07em; padding: 0 12px; }
@media screen and (max-width: 590px) {
  .fh-st, .fh-hd { height: 28px; padding: 0 11px; font-size: 12px; }
}
/* tarp žanrų lieka nematomi kableliai (teksto mazgai), kurie flex eilutėje dvigubino tarpą — tarpą duodam per margin */
.fh-tags .fh-genres { gap: 8px 0; }
.fh-tags .fh-genres a, .fh-tags .fh-genres span { margin-right: 10px; }
.fh-tags .fh-genres a:last-child, .fh-tags .fh-genres span:last-child { margin-right: 0; }

/* V35 — hero tekstas nebe prispaustas prie apačios: pavadinimo grupė lygiuoja su plakato viršumi,
   mygtukų eilutė — su plakato apačia (telefone išdėstymas atskiras, ten neliečiama) */
@media screen and (min-width: 591px) {
  .fhero-in { align-items: stretch; }
  .fh-info { display: flex; flex-direction: column; padding: 4px 0 0; }
  .fh-actions { margin-top: auto; }
  .fh-actors { margin-bottom: 20px; }
}

/* V36 — antraštės eilutė dabar yra H1 viduje (SEO): išvaizda ta pati */
.fh-title .fh-eyebrow { line-height: 1.4; }
.fh-title .fh-name { display: block; }
.fseo { margin: -14px 0 36px; font-size: 13px; line-height: 1.7; color: var(--text-muted); }
.fseo b { color: var(--text-secondary); font-weight: 600; }
.fseo a { color: var(--text-secondary); }
.fseo a:hover { color: var(--accent-warm); }
@media screen and (max-width: 590px) {
  .fh-title { grid-row: 1 / 3; align-self: center; }
  .fh-title .fh-eyebrow { margin: 0 0 6px; }
  .fseo { margin: -8px 0 28px; font-size: 12.5px; }
}

/* ===========================================================
   V30 — sutvarkymas: inline stiliai iš šablonų perkelti čia,
   vizualinės klaidos (persidengimai, lūžtantys mygtukai)
   =========================================================== */

/* buvo inline style="color:#e8443a" — aktyvi nuoroda mobiliame meniu */
#side-panel a.active { color: var(--accent) !important; }

/* pranešimų ženkliukas be naujų žinučių (site.js uždeda hidden) */
.notif-badge[hidden] { display: none !important; }

/* hero juostelės paspaudžiamos */


/* serialo puslapis: „Žiūrėti dabar“ nebelūžta į dvi eilutes */
.fh-play, .fh-fav a, .fh-fav > span { white-space: nowrap; }
@media screen and (max-width: 590px) {
  .fh-actions { display: grid !important; grid-template-columns: auto minmax(0, 1fr); gap: 10px !important; }
  .fh-actions .fh-play { grid-column: 1 / -1; width: 100%; }
  .fh-actions .fh-rate, .fh-actions .fh-rate-btn { min-width: 0; width: 100%; }
  .fh-actions .fh-rate-btn { justify-content: space-between; overflow: hidden; }
  .fh-actions .fh-rate-votes { display: none !important; }
}

/* VIP / be prenumeratos (fvip.tpl): viršelis su „play“ (buvo \3c style> šablone 2 kartus) */
.fplayer > .player {
  position: relative; width: 100%; height: 450px; overflow: hidden; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  background-color: #090c10; background-position: center; background-size: cover;
}
.fplayer > .player::after { content: ''; position: absolute; inset: 0; background: rgba(0,0,0,.35); z-index: 0; }
.fplayer > .player .play-btn {
  position: relative; z-index: 2; width: 80px; height: 80px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  background: var(--accent-gradient); box-shadow: 0 10px 30px -6px rgba(232,68,58,.6);
  transition: transform .3s ease, box-shadow .3s ease;
}
.fplayer > .player .play-btn::before {
  content: ''; width: 0; height: 0; margin-left: 5px;
  border-left: 20px solid #fff; border-top: 12px solid transparent; border-bottom: 12px solid transparent;
}
.fplayer > .player:hover .play-btn { transform: scale(1.08); box-shadow: 0 0 0 10px rgba(232,68,58,.18), 0 10px 30px -6px rgba(232,68,58,.7); }
.fplayer > .player .loader { display: none; }
@media screen and (max-width: 590px) {
  .fplayer > .player { height: 300px; }
}

/* ===========================================================
   V31 — HEADER „Žanrai“ išskleidžiamas meniu
   =========================================================== */
.nav-drop { position: relative; display: flex; align-items: center; height: 100%; }
.header-nav .nav-drop-link .fal { margin-left: 6px; font-size: 12px; transition: transform .25s var(--ease); }
.nav-drop:hover .nav-drop-link .fal, .nav-drop:focus-within .nav-drop-link .fal { transform: rotate(180deg); }
.nav-drop-menu {
  position: absolute; top: 100%; left: 50%; z-index: 300; padding-top: 6px;
  opacity: 0; visibility: hidden; pointer-events: none;
  transform: translate(-50%, 10px); transition: opacity .22s ease, transform .22s var(--ease), visibility .22s;
}
.nav-drop:hover .nav-drop-menu, .nav-drop:focus-within .nav-drop-menu { opacity: 1; visibility: visible; pointer-events: auto; transform: translate(-50%, 0); }
.nav-drop-in {
  display: grid; grid-template-columns: 1.35fr 1fr; gap: 22px; width: 540px; padding: 20px;
  border-radius: 16px; background: rgba(9,14,21,.97); border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 30px 70px -20px rgba(0,0,0,.85), 0 0 0 1px rgba(0,0,0,.3);
  backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
}
.nav-drop-head { grid-column: 1 / -1; margin: 0 0 8px 4px; font-size: 10.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--text-muted); }
.nav-drop-genres { display: grid; grid-template-columns: 1fr 1fr; gap: 2px 6px; align-content: start; }
.nav-drop-years { border-left: 1px solid rgba(255,255,255,.06); padding-left: 22px; display: flex; flex-direction: column; }
.nav-drop-chips { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; }
.header .header-nav .nav-drop-menu a {
  height: auto !important; padding: 8px 10px !important; display: flex; align-items: center; gap: 10px;
  border-radius: 10px; font-size: 13.5px !important; font-weight: 600 !important; letter-spacing: 0 !important;
  text-transform: none !important; text-shadow: none !important; color: #cdd6e0 !important; white-space: nowrap;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}
.header .header-nav .nav-drop-menu a::after, .header .header-nav .nav-drop-menu a::before { content: none !important; display: none !important; }
.header .header-nav .nav-drop-menu a:hover { background: rgba(255,255,255,.06); color: #fff !important; }
.nav-drop-genres a .fal {
  flex: 0 0 30px; height: 30px; display: grid; place-items: center; border-radius: 8px;
  font-size: 13px; color: var(--accent-warm); background: rgba(232,68,58,.12); transition: background .2s ease, color .2s ease;
}
.nav-drop-genres a:hover .fal { background: var(--accent-gradient); color: #fff; }
.header .header-nav .nav-drop-chips a { justify-content: center; height: 34px !important; padding: 0 !important; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.07); font-size: 13px !important; }
.header .header-nav .nav-drop-chips a:hover { border-color: rgba(232,68,58,.55); background: rgba(232,68,58,.1); }
.header .header-nav .nav-drop-menu a.nav-drop-all { margin-top: auto; justify-content: space-between; padding: 11px 14px !important; background: rgba(232,68,58,.12); color: #ff8a6b !important; font-weight: 700 !important; }
.header .header-nav .nav-drop-menu a.nav-drop-all:hover { background: var(--accent-gradient); color: #fff !important; }
.nav-drop-years .nav-drop-chips { margin-bottom: 14px; }
.header-nav.menu-open .nav-drop-menu { display: none; }
.header-nav.menu-open .nav-drop { height: auto; }

/* ===========================================================
   V31 — HERO slankiklis (senos hero taisyklės pašalintos, viskas čia)
   =========================================================== */
.hero-sect { position: relative; overflow: hidden; background: var(--bg-deep); }
.hero-slide { position: relative; height: 620px; overflow: hidden; }
.hero-bg {
  position: absolute; inset: 0; background-size: cover; background-position: center 22%;
  transform: scale(1.1); transition: transform 9s linear;
}
.owl-item.active .hero-bg { transform: scale(1); }
.hero-overlay {
  position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background:
    linear-gradient(90deg, rgba(5,9,14,.94) 0%, rgba(5,9,14,.74) 26%, rgba(5,9,14,.18) 58%, rgba(5,9,14,0) 78%),
    linear-gradient(0deg, var(--bg-deep) 0%, rgba(5,9,14,.55) 20%, rgba(5,9,14,0) 46%),
    linear-gradient(180deg, rgba(5,9,14,.75) 0%, rgba(5,9,14,0) 20%);
}
.hero-content {
  position: relative; z-index: 3; height: 100%; max-width: calc(620px + var(--gut));
  display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-start;
  padding: 0 0 64px var(--gut);
}
.hero-kicker { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; font-size: 12px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: rgba(255,255,255,.72); }
.hero-rank { position: relative; padding-left: 34px; color: #fff; }
.hero-rank::before { content: ''; position: absolute; left: 0; top: 50%; width: 24px; height: 2px; margin-top: -1px; border-radius: 2px; background: var(--accent-gradient); }
.hero-kicker-txt { padding-left: 12px; border-left: 1px solid rgba(255,255,255,.25); font-weight: 600; }
.hero-title { margin: 0 0 14px; font-size: clamp(34px, 4.3vw, 64px); font-weight: 800; line-height: 1.02; letter-spacing: -.03em; }
.hero-title a { color: #fff; text-shadow: 0 6px 30px rgba(0,0,0,.45); }
.hero-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 0; font-size: 14px; font-weight: 600; color: #dbe2ea; }
.hero-meta > span + span::before { content: ''; display: inline-block; width: 4px; height: 4px; margin: 0 12px 2px; border-radius: 50%; background: rgba(255,255,255,.4); vertical-align: middle; }
.hero-meta .hero-meta-hd { padding: 2px 7px; border: 1.5px solid rgba(255,255,255,.55); border-radius: 5px; font-size: 11px; font-weight: 800; letter-spacing: .05em; line-height: 1.2; }
.hero-meta .hero-meta-hd + span::before { display: none; }
.hero-meta .hero-meta-hd + span { margin-left: 12px; }
.hero-meta-lang .fal { margin-right: 6px; color: var(--accent-warm); }
.hero-tags { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0 18px; }
.hero-tag {
  display: inline-block; padding: 6px 13px; border-radius: 999px; font-size: 12.5px; font-weight: 600; color: #fff;
  background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.14);
  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
}
.hero-tag::first-letter { text-transform: uppercase; }
.hero-desc {
  max-width: 560px; margin: 0 0 28px; font-size: 15px; line-height: 1.65; color: rgba(226,233,240,.78);
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.hero-btn-play, .hero-btn-info {
  display: inline-flex; align-items: center; gap: 10px; height: 52px; padding: 0 28px; border-radius: 14px;
  font-size: 15px; font-weight: 700; color: #fff; white-space: nowrap;
  transition: transform .25s var(--ease), box-shadow .25s ease, background .25s ease, border-color .25s ease;
}
.hero-btn-play { background: var(--accent-gradient); box-shadow: 0 16px 36px -12px rgba(232,68,58,.75); }
.hero-btn-play:hover { color: #fff; transform: translateY(-2px); box-shadow: 0 22px 44px -12px rgba(232,68,58,.9); }
.hero-btn-play .fas { font-size: 13px; }
.hero-btn-info { background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.hero-btn-info:hover { color: #fff; background: rgba(255,255,255,.18); border-color: rgba(255,255,255,.3); }
.hero-btn-info .fal { font-size: 16px; }

/* turinio įėjimo animacija keičiantis skaidrei */
.owl-item .hero-content > * { opacity: 0; transform: translateY(18px); transition: opacity .6s ease, transform .7s var(--ease); }
.owl-item.active .hero-content > * { opacity: 1; transform: none; }
.owl-item.active .hero-content > :nth-child(2) { transition-delay: .08s; }
.owl-item.active .hero-content > :nth-child(3) { transition-delay: .16s; }
.owl-item.active .hero-content > :nth-child(4) { transition-delay: .22s; }
.owl-item.active .hero-content > :nth-child(5) { transition-delay: .28s; }
.owl-item.active .hero-content > :nth-child(6) { transition-delay: .34s; }

/* apačioje dešinėje: numeruoti indikatoriai su progreso juosta + rodyklės */
.hero-nav {
  position: absolute; z-index: 15; right: var(--gut); bottom: 70px;
  display: flex; align-items: center; gap: 22px;
}
.hero-thumbs { display: flex; align-items: flex-end; gap: 14px; }
.hero-thumb {
  display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding: 6px 0; cursor: pointer;
  background: none; border: 0; color: rgba(255,255,255,.45); font: inherit;
  transition: color .25s ease;
}
.hero-thumb:hover, .hero-thumb.is-active { color: #fff; }
.hero-thumb-n { font-size: 12px; font-weight: 700; letter-spacing: .06em; line-height: 1; }
.hero-thumb-bar { position: relative; display: block; width: 26px; height: 3px; border-radius: 3px; overflow: hidden; background: rgba(255,255,255,.22); transition: width .45s var(--ease); }
.hero-thumb:hover .hero-thumb-bar { background: rgba(255,255,255,.4); }
.hero-thumb.is-active .hero-thumb-bar { width: 64px; }
.hero-thumb-bar b { position: absolute; left: 0; top: 0; bottom: 0; width: 0; border-radius: 3px; background: var(--accent-gradient); }
.hero-thumb.is-active .hero-thumb-bar b { animation: heroProgress var(--hero-delay, 7000ms) linear forwards; }
.hero-sect.is-paused .hero-thumb.is-active .hero-thumb-bar b { animation-play-state: paused; }
@keyframes heroProgress { from { width: 0; } to { width: 100%; } }
.hero-arrows { display: flex; gap: 8px; }
.hero-arrow {
  width: 44px; height: 44px; display: grid; place-items: center; border-radius: 50%; cursor: pointer;
  color: #fff; font-size: 18px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.2);
  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); transition: background .2s ease, border-color .2s ease;
}
.hero-arrow:hover { background: var(--accent); border-color: transparent; }

/* planšetė / telefonas: indikatoriai per visą plotį apačioje, be rodyklių */
@media screen and (max-width: 1100px) {
  .hero-slide { height: 560px; }
  .hero-content { max-width: 100%; padding: 0 var(--gut) 64px; }
  .hero-nav { left: var(--gut); right: var(--gut); bottom: 22px; }
  .hero-arrows { display: none; }
  .hero-thumbs { flex: 1; gap: 8px; }
  .hero-thumb { flex: 1; padding: 0; }
  .hero-thumb-n { display: none; }
  .hero-thumb-bar, .hero-thumb.is-active .hero-thumb-bar { width: 100%; }
  .hero-thumb.is-active .hero-thumb-bar b { background: #fff; }
}
@media screen and (max-width: 590px) {
  .hero-slide { height: 540px; }
  .hero-bg { background-position: 62% 15%; }
  .hero-overlay {
    background:
      linear-gradient(0deg, var(--bg-deep) 0%, rgba(5,9,14,.88) 30%, rgba(5,9,14,.25) 62%, rgba(5,9,14,.55) 100%);
  }
  .hero-content { padding-bottom: 50px; }
  .hero-kicker { margin-bottom: 12px; font-size: 11px; letter-spacing: .12em; }
  .hero-title { font-size: 32px; }
  .hero-meta { font-size: 12.5px; }
  .hero-meta > span + span::before { margin: 0 8px 2px; }
  .hero-tags { margin: 12px 0 14px; }
  .hero-tag { font-size: 11.5px; padding: 5px 11px; }
  .hero-desc { font-size: 14px; margin-bottom: 20px; }
  .hero-actions { width: 100%; display: grid; grid-template-columns: 1fr auto; gap: 10px; }
  .hero-btn-play, .hero-btn-info { height: 48px; justify-content: center; padding: 0 20px; font-size: 14px; }
}

/* ===========================================================
   V31 — „Populiariausi“ antraštė: pavadinimas + rodyklės + „Visi populiarūs“
   =========================================================== */
.rail-head { display: flex; align-items: center; gap: 16px; margin-bottom: 16px; }
.rail-title {
  flex: 1; min-width: 0; display: flex; align-items: center; gap: 12px; margin: 0;
  font-size: 20px; font-weight: 800; letter-spacing: -.01em; color: #fff; text-transform: none;
}
.rail-line { flex: 0 0 4px; height: 22px; border-radius: 2px; background: var(--accent-gradient); }
.rail-title small { font-size: 13px; font-weight: 500; color: var(--text-muted); letter-spacing: 0; }
.rail-ctrl { display: flex; align-items: center; gap: 8px; }
.rail-arrow {
  width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; cursor: pointer;
  color: #dfe6ee; font-size: 17px; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.1);
  transition: background .2s ease, border-color .2s ease, color .2s ease;
}
.rail-arrow:hover { color: #fff; background: var(--accent); border-color: transparent; }
.rail-more {
  display: inline-flex; align-items: center; gap: 12px; height: 38px; margin-left: 6px; padding: 0 5px 0 16px;
  border-radius: 999px; font-size: 13px; font-weight: 700; color: #e9eef4; white-space: nowrap;
  background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.1);
  transition: border-color .25s ease, background .25s ease, color .25s ease;
}
.rail-more .fal {
  width: 28px; height: 28px; display: grid; place-items: center; border-radius: 50%;
  font-size: 12px; color: #fff; background: var(--accent-gradient); transition: transform .25s var(--ease);
}
.rail-more:hover { color: #fff; border-color: rgba(232,68,58,.5); background: rgba(232,68,58,.08); }
.rail-more:hover .fal { transform: translateX(3px); }
#owl-popular .owl-nav { display: none !important; }
@media screen and (max-width: 760px) {
  .rail-arrow { display: none; }
  .rail-title { font-size: 17px; }
  .rail-title small { display: none; }
  .rail-more { margin-left: 0; height: 34px; font-size: 12px; padding-left: 13px; }
  .rail-more .fal { width: 24px; height: 24px; }
}

/* ===========================================================
   V33 — „Rūšiuoti“ išskleidžiamas sąrašas
   (V14 overflow:hidden ant .sect-header jį nukirpdavo)
   =========================================================== */
.sect-header { overflow: visible !important; position: relative; z-index: 20; gap: 12px; }
.sect-header .sect-title { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.sorter {
  flex-shrink: 0; display: inline-flex !important; align-items: center; gap: 6px;
  height: 34px !important; line-height: 1 !important; padding: 0 12px !important; margin-left: 0 !important;
  border-radius: 10px !important; border: 1px solid rgba(255,255,255,.1) !important;
  font-size: 12.5px; font-weight: 500; color: var(--text-secondary); user-select: none;
}
.sorter::before { margin: 0 !important; color: var(--text-muted); }
.sorter > span { margin: 0 !important; color: #fff; font-weight: 600; display: inline-flex !important; align-items: center; }
.sorter > span .fal { margin-left: 8px !important; font-size: 13px; transition: transform .25s var(--ease); }
.sorter.is-open { border-color: rgba(232,68,58,.5) !important; }
.sorter.is-open > span .fal { transform: rotate(180deg); }
.sorter form {
  display: block !important; position: absolute; top: calc(100% + 8px); right: 0; z-index: 999;
  width: 220px; padding: 6px; line-height: 1.2;
  background: rgba(12,18,27,.98); border: 1px solid rgba(255,255,255,.1); border-radius: 12px;
  box-shadow: 0 24px 50px -12px rgba(0,0,0,.8);
  opacity: 0; visibility: hidden; transform: translateY(-6px);
  transition: opacity .2s ease, transform .2s var(--ease), visibility .2s;
}
.sorter.is-open form { opacity: 1; visibility: visible; transform: none; }
.sorter form ul { list-style: none; margin: 0 !important; padding: 0; }
.sorter form li { display: block; margin: 0 !important; }
.sorter form a {
  display: flex; align-items: center; justify-content: space-between; padding: 10px 12px;
  border-radius: 8px; font-size: 13px; font-weight: 500; color: #cdd6e0; text-decoration: none !important;
}
.sorter form a:hover { background: rgba(255,255,255,.06); color: #fff; }
.sorter form li[class] a { color: #fff; font-weight: 700; background: rgba(232,68,58,.12); }
.sorter form li.asc a::after, .sorter form li.desc a::after { font-family: 'Font Awesome 5 Pro'; font-weight: 300; color: var(--accent-warm); }
.sorter form li.desc a::after { content: '\f063'; }
.sorter form li.asc a::after { content: '\f062'; }
@media screen and (max-width: 590px) {
  .sect-header { padding: 0 10px 0 14px !important; }
  .sect-header .sect-title { font-size: 12px !important; }
  .sect-header .sect-title [class*=fa-] { display: none !important; }
  .sorter { padding: 0 10px !important; }
  .sorter::before { display: none !important; }
  .sorter form { width: 200px; }
}

/* ===========================================================
   V34 — be „šokinėjimo“ kraunantis puslapiui.
   Owl iki paleidimo turi display:none, todėl hero (620px) ir
   „Populiariausi“ juosta pirmame piešime būdavo 0 aukščio, o
   po JS staiga atsirasdavo ir pastumdavo visą puslapį.
   Dabar iki paleidimo rodoma pirma skaidrė / juosta tokio pat dydžio.
   =========================================================== */
#owl-hero:not(.owl-loaded), #owl-popular:not(.owl-loaded) { display: block; opacity: 1; }
#owl-hero.owl-loading, #owl-popular.owl-loading { opacity: 1; }
#owl-hero:not(.owl-loaded) > .hero-slide:not(:first-child) { display: none; }
#owl-popular:not(.owl-loaded) { display: flex; gap: 20px; overflow: hidden; }
#owl-popular:not(.owl-loaded) > .popular-item { flex: 0 0 calc((100% - 20px) / 2); min-width: 0; }
@media (min-width: 470px)  { #owl-popular:not(.owl-loaded) > .popular-item { flex-basis: calc((100% - 40px) / 3); } }
@media (min-width: 760px)  { #owl-popular:not(.owl-loaded) > .popular-item { flex-basis: calc((100% - 60px) / 4); } }
@media (min-width: 950px)  { #owl-popular:not(.owl-loaded) > .popular-item { flex-basis: calc((100% - 100px) / 6); } }
@media (min-width: 1220px) { #owl-popular:not(.owl-loaded) > .popular-item { flex-basis: calc((100% - 120px) / 7); } }

/* ===========================================================
   V36 — kortelėse vietoj „NAUJA“ (rodė visur) — HD kokybės ženkliukas
   =========================================================== */
.th-hd {
  position: absolute; z-index: 10; top: 12px; right: 12px;
  display: inline-flex; align-items: center; height: 22px; padding: 0 7px;
  font-size: 11px; font-weight: 800; letter-spacing: .06em; line-height: 1; color: #fff;
  border-radius: 6px; border: 1.5px solid rgba(255,255,255,.75);
  background: rgba(6,10,16,.55); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
  box-shadow: 0 4px 12px rgba(0,0,0,.35); pointer-events: none;
}
@media screen and (max-width: 590px) {
  .th-hd { top: 9px; right: 9px; height: 19px; padding: 0 5px; font-size: 9.5px; border-width: 1.2px; }
}

/* ===========================================================
   V37 — POPULIARIAUSI (topserial.tpl, custom-top-big.tpl, custom-top.tpl)
   =========================================================== */
.tp-page { counter-reset: none; }
.tp-head {
  position: relative; display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; flex-wrap: wrap;
  margin-bottom: 22px; padding: 28px 30px; border-radius: 18px; overflow: hidden;
  background: radial-gradient(120% 140% at 0% 0%, rgba(232,68,58,.22) 0%, rgba(232,68,58,0) 55%), rgba(255,255,255,.025);
  border: 1px solid rgba(255,255,255,.06);
}
.tp-kicker { display: inline-flex; align-items: center; gap: 10px; font-size: 11px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: #ff8466; }
.tp-kicker::before { content: ''; width: 22px; height: 2px; border-radius: 2px; background: var(--accent-gradient); }
.tp-h1 { margin: 10px 0 6px; font-size: clamp(24px, 2.6vw, 36px); font-weight: 800; letter-spacing: -.02em; line-height: 1.1; color: #fff; }
.tp-lead { margin: 0; font-size: 14px; color: var(--text-secondary); }
.tp-tabs { display: inline-flex; padding: 4px; gap: 4px; border-radius: 12px; background: rgba(0,0,0,.3); border: 1px solid rgba(255,255,255,.08); }
.tp-tab {
  height: 38px; padding: 0 16px; border-radius: 9px; border: 0; cursor: pointer; font: inherit; font-size: 13px; font-weight: 700;
  color: var(--text-secondary); background: transparent; transition: background .2s ease, color .2s ease; white-space: nowrap;
}
.tp-tab small { font-size: 11px; font-weight: 600; opacity: .7; margin-left: 3px; }
.tp-tab:hover { color: #fff; }
.tp-tab.is-active { color: #fff; background: var(--accent-gradient); box-shadow: 0 8px 20px -8px rgba(232,68,58,.7); }
.tp-panel[hidden] { display: none; }
.tp-panel.is-active { animation: tpIn .45s var(--ease); }
@keyframes tpIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }

/* TOP 3 */
.tp-podium { counter-reset: tpbig; display: grid; grid-template-columns: 1.35fr 1fr; grid-template-rows: 1fr 1fr; gap: 16px; margin-bottom: 34px; }
.tp-big {
  counter-increment: tpbig; position: relative; display: flex; align-items: flex-end; gap: 22px; min-height: 230px; padding: 22px;
  overflow: hidden; border-radius: 18px; color: #fff; isolation: isolate;
  border: 1px solid rgba(255,255,255,.08); background: #0b121a;
  transition: transform .35s var(--ease), border-color .35s ease, box-shadow .35s ease;
}
.tp-big:first-child { grid-row: 1 / 3; min-height: 476px; padding: 30px; }
.tp-big:hover { color: #fff; transform: translateY(-3px); border-color: rgba(232,68,58,.45); box-shadow: 0 24px 50px -20px rgba(0,0,0,.9); }
.tp-big-bg { position: absolute; inset: 0; z-index: -2; background-size: cover; background-position: center 25%; transition: transform .8s var(--ease); }
.tp-big:hover .tp-big-bg { transform: scale(1.05); }
.tp-big::before { content: ''; position: absolute; inset: 0; z-index: -1;
  background: linear-gradient(0deg, rgba(5,9,14,.96) 0%, rgba(5,9,14,.55) 45%, rgba(5,9,14,.15) 100%), linear-gradient(90deg, rgba(5,9,14,.7) 0%, rgba(5,9,14,0) 60%); }
.tp-big-num {
  position: absolute; top: 14px; right: 22px; font-size: 120px; font-weight: 800; line-height: 1; letter-spacing: -.06em;
  color: transparent; -webkit-text-stroke: 2px rgba(255,255,255,.35); pointer-events: none;
}
.tp-big-num::before { content: counter(tpbig); }
.tp-big:first-child .tp-big-num { font-size: 200px; -webkit-text-stroke-color: rgba(255,132,102,.55); top: 6px; }
.tp-big-poster { flex: 0 0 auto; width: 104px; aspect-ratio: 2 / 3; object-fit: cover; border-radius: 10px; box-shadow: 0 14px 30px -10px rgba(0,0,0,.9); border: 1px solid rgba(255,255,255,.12); }
.tp-big:first-child .tp-big-poster { width: 160px; border-radius: 12px; }
.tp-big-info { position: relative; display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.tp-big:not(:first-child) { padding-right: 96px; }
.tp-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 0; font-size: 12.5px; font-weight: 600; color: #d3dbe4; }
.tp-meta > span + span::before { content: ''; display: inline-block; width: 3px; height: 3px; margin: 0 9px 3px; border-radius: 50%; background: rgba(255,255,255,.45); vertical-align: middle; }
.tp-hd { margin-right: 10px; padding: 1px 6px; border: 1.5px solid rgba(255,255,255,.7); border-radius: 5px; font-size: 10.5px; font-weight: 800; letter-spacing: .05em; }
.tp-big-title { font-size: 22px; font-weight: 800; line-height: 1.15; letter-spacing: -.01em; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.tp-big:first-child .tp-big-title { font-size: clamp(28px, 2.8vw, 40px); }
.tp-big-genre { font-size: 13px; color: var(--text-secondary); }
.tp-big-foot { display: flex; align-items: center; gap: 14px; margin-top: 6px; }
.tp-play { display: inline-flex; align-items: center; gap: 8px; height: 38px; padding: 0 18px; border-radius: 10px; font-size: 13.5px; font-weight: 700; background: var(--accent-gradient); box-shadow: 0 10px 24px -10px rgba(232,68,58,.8); }
.tp-play .fas { font-size: 11px; }
.tp-big:not(:first-child) .tp-play { display: none; }
.tp-views { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; color: var(--text-secondary); }

/* 4–100: reitingų lentelė — numeris, plakatas, pavadinimas, populiarumo juosta, peržiūros */
.tp-list { counter-reset: tp 3; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 16px; }
.tp-row {
  counter-increment: tp; position: relative; display: grid; grid-template-columns: 52px 58px minmax(0, 1fr) auto 38px;
  align-items: center; gap: 14px; padding: 10px 14px 10px 10px; border-radius: 14px; color: #fff;
  background: rgba(255,255,255,.025); border: 1px solid rgba(255,255,255,.06);
  transition: background .25s ease, border-color .25s ease, transform .25s var(--ease);
}
.tp-row:hover { color: #fff; background: rgba(255,255,255,.055); border-color: rgba(232,68,58,.4); transform: translateX(3px); }
.tp-rank { text-align: center; font-size: 26px; font-weight: 800; letter-spacing: -.04em; color: rgba(255,255,255,.85); font-variant-numeric: tabular-nums; }
.tp-rank::before { content: counter(tp, decimal-leading-zero); }
.tp-row:nth-child(-n+7) .tp-rank { background: var(--accent-gradient); -webkit-background-clip: text; background-clip: text; color: transparent; }
.tp-thumb { display: block; width: 58px; aspect-ratio: 2 / 3; overflow: hidden; border-radius: 8px; background: #111a24; box-shadow: 0 8px 18px -8px rgba(0,0,0,.9); }
.tp-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s var(--ease); }
.tp-row:hover .tp-thumb img { transform: scale(1.08); }
.tp-row-main { display: flex; flex-direction: column; gap: 5px; min-width: 0; }
.tp-row-title { font-size: 15px; font-weight: 700; line-height: 1.25; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.tp-row-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-size: 12px; font-weight: 600; color: var(--text-muted); }
.tp-row-ep { padding: 2px 7px; border-radius: 5px; font-size: 10.5px; font-weight: 800; letter-spacing: .03em; text-transform: uppercase; color: #ff8a6b; background: rgba(232,68,58,.14); }
.tp-bar { display: block; height: 4px; margin-top: 2px; border-radius: 4px; background: rgba(255,255,255,.07); overflow: hidden; }
.tp-bar i { display: block; height: 100%; width: var(--pop, 0%); border-radius: 4px; background: var(--accent-gradient); transition: width .8s var(--ease); }
.tp-row-views { display: flex; flex-direction: column; align-items: flex-end; line-height: 1.15; }
.tp-row-views b { font-size: 14px; font-weight: 800; font-variant-numeric: tabular-nums; }
.tp-row-views small { font-size: 11px; color: var(--text-muted); }
.tp-row-play {
  width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; font-size: 12px; padding-left: 2px;
  color: #fff; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.1); transition: background .25s ease, border-color .25s ease;
}
.tp-row:hover .tp-row-play { background: var(--accent-gradient); border-color: transparent; }

/* TOP 3 numeriai: auksas / sidabras / bronza */
.tp-big-num { -webkit-text-stroke: 0 !important; background-clip: text; -webkit-background-clip: text; color: transparent; opacity: .92; text-shadow: none; }
.tp-podium .tp-big:nth-child(1) .tp-big-num { background-image: linear-gradient(180deg, #ffe08a 0%, #f2b33d 55%, #b9771c 100%); }
.tp-podium .tp-big:nth-child(2) .tp-big-num { background-image: linear-gradient(180deg, #ffffff 0%, #c9d2dc 55%, #7f8a97 100%); }
.tp-podium .tp-big:nth-child(3) .tp-big-num { background-image: linear-gradient(180deg, #ffc49a 0%, #d38a52 55%, #8e5126 100%); }
.tp-big-num { filter: drop-shadow(0 8px 24px rgba(0,0,0,.55)); }

@media screen and (max-width: 1250px) { .tp-list { grid-template-columns: 1fr; } }
@media screen and (max-width: 900px) {
  .tp-podium { grid-template-columns: 1fr 1fr; grid-template-rows: auto; }
  .tp-big:first-child { grid-column: 1 / -1; grid-row: auto; min-height: 380px; }
  .tp-big:first-child .tp-big-num { font-size: 150px; }
}
@media screen and (max-width: 590px) {
  .tp-head { padding: 20px 18px; border-radius: 14px; }
  .tp-tabs { width: 100%; }
  .tp-tab { flex: 1; padding: 0 10px; }
  .tp-podium { grid-template-columns: 1fr; gap: 12px; margin-bottom: 26px; }
  .tp-big, .tp-big:first-child { padding: 16px; gap: 14px; min-height: 180px; }
  .tp-big:first-child { min-height: 320px; }
  .tp-big-poster { width: 78px; }
  .tp-big:first-child .tp-big-poster { width: 112px; }
  .tp-big-num { font-size: 84px; right: 14px; }
  .tp-big:first-child .tp-big-num { font-size: 120px; }
  .tp-big-title { font-size: 18px; }
  .tp-big:first-child .tp-big-title { font-size: 26px; }
  .tp-row { grid-template-columns: 34px 46px minmax(0, 1fr) auto; gap: 10px; padding: 8px 10px 8px 6px; }
  .tp-rank { font-size: 18px; }
  .tp-thumb { width: 46px; }
  .tp-row-title { font-size: 14px; }
  .tp-row-play { display: none; }
  .tp-row-views b { font-size: 12.5px; }
  .tp-big:not(:first-child) { padding-right: 70px; }
}

/* V37b — populiariausių blokas lygiuojamas su šonine juosta (.sect viduje .sect gaudavo margin-top) */
#dle-content > .tp-page, .tp-page { margin-top: 0 !important; }

/* V37c — žanrų laukas DLE išveda nuorodas (<a>), o <a> negali būti kitame <a> —
   naršyklė „suskaldydavo“ kortelę. Dabar kortelė yra <div>, o visą jos plotą
   dengia permatoma nuoroda .tp-big-link; žanrai ir „Žiūrėti“ — virš jos */
.tp-big-link { position: absolute; inset: 0; z-index: 2; border-radius: inherit; }
.tp-big-genre a, .tp-play { position: relative; z-index: 3; }
.tp-big-genre a { color: inherit; }
.tp-big-genre a:hover, .tp-play:hover { color: #fff; }
.tp-big-genre a:hover { text-decoration: underline; }

/* ===========================================================
   V39 — ŽANRŲ puslapis (zanrai.tpl, statinis /zanrai.html)
   =========================================================== */
.gz-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-bottom: 30px; }
.gz-tile {
  --c1: #e8443a; --c2: #7a1630;
  position: relative; display: flex; flex-direction: column; min-height: 196px; padding: 20px; overflow: hidden; isolation: isolate;
  border-radius: 18px; color: #fff; border: 1px solid rgba(255,255,255,.08);
  background: radial-gradient(130% 120% at 100% 0%, var(--c1) 0%, transparent 60%), linear-gradient(160deg, var(--c2) 0%, #0b121a 75%);
  transition: transform .35s var(--ease), box-shadow .35s ease, border-color .35s ease;
}
.gz-tile:hover { color: #fff; transform: translateY(-4px); border-color: rgba(255,255,255,.22); box-shadow: 0 24px 48px -20px var(--c1); }
.gz-c1 { --c1: rgba(232,68,58,.75);  --c2: #3a1218; }
.gz-c2 { --c1: rgba(236,72,153,.7);  --c2: #3a1030; }
.gz-c3 { --c1: rgba(244,114,182,.6); --c2: #35162c; }
.gz-c4 { --c1: rgba(249,115,22,.7);  --c2: #3a1d0c; }
.gz-c5 { --c1: rgba(234,179,8,.6);   --c2: #33270a; }
.gz-c6 { --c1: rgba(99,102,241,.65); --c2: #16183a; }
.gz-c7 { --c1: rgba(20,184,166,.6);  --c2: #0c2e2b; }
.gz-c8 { --c1: rgba(245,196,81,.65); --c2: #33280c; }
.gz-bigicon { position: absolute; right: -14px; bottom: -22px; z-index: -1; font-size: 130px; opacity: .1; transform: rotate(-12deg); transition: transform .5s var(--ease), opacity .4s ease; }
.gz-tile:hover .gz-bigicon { transform: rotate(-4deg) scale(1.08); opacity: .18; }
.gz-icon { width: 44px; height: 44px; display: grid; place-items: center; margin-bottom: auto; border-radius: 12px; font-size: 19px; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.16); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }
.gz-name { margin-top: 22px; font-size: 21px; font-weight: 800; letter-spacing: -.01em; }
.gz-desc { margin-top: 6px; font-size: 13px; line-height: 1.45; color: rgba(255,255,255,.7); }
.gz-go { display: inline-flex; align-items: center; gap: 8px; margin-top: 14px; font-size: 13px; font-weight: 700; color: rgba(255,255,255,.9); }
.gz-go .fal { transition: transform .25s var(--ease); }
.gz-tile:hover .gz-go .fal { transform: translateX(4px); }

.gz-years { margin-bottom: 30px; }
.gz-years-head { margin-bottom: 14px; }
.gz-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.gz-chips a {
  min-width: 78px; height: 42px; display: inline-flex; align-items: center; justify-content: center; padding: 0 18px;
  border-radius: 12px; font-size: 14px; font-weight: 700; color: #dfe6ee;
  background: rgba(255,255,255,.035); border: 1px solid rgba(255,255,255,.08); transition: all .2s ease;
}
.gz-chips a:hover { color: #fff; background: var(--accent-gradient); border-color: transparent; transform: translateY(-2px); }
.gz-latest-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; }
.gz-latest-grid .th-item { width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }

@media screen and (max-width: 1250px) { .gz-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } .gz-latest-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media screen and (max-width: 900px)  { .gz-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .gz-latest-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media screen and (max-width: 590px) {
  .gz-grid { gap: 10px; }
  .gz-tile { min-height: 168px; padding: 16px; border-radius: 14px; }
  .gz-icon { width: 38px; height: 38px; font-size: 16px; }
  .gz-name { margin-top: 16px; font-size: 17px; }
  .gz-desc { display: none; }
  .gz-go { margin-top: 8px; }
  .gz-bigicon { font-size: 100px; }
  .gz-chips a { min-width: 0; flex: 1 0 calc(33.333% - 8px); }
  .gz-latest-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
}
