/* SwingerTV Tweaks – design v1 ("Midnight Lounge")
   Premium dark look for KolorTube. Loaded only when body has class .stv-d (feature "design").
   Every rule is scoped with body.stv-d so it beats the theme's !important customizer CSS by specificity.
   Instant off: add_filter( 'swingertv_tweaks_feature_design', '__return_false' ); or define( 'SWINGERTV_TWEAKS_DISABLE_DESIGN', true ); */

/* ---------- font: Inter (self-hosted, latin subset) with metric-matched fallback = no layout shift ---------- */
@font-face{font-family:"Inter STV";font-style:normal;font-weight:400 800;font-display:swap;src:url(fonts/inter-var-latin.woff2) format("woff2")}
@font-face{font-family:"Inter STV Fallback";src:local("Arial"),local("Helvetica Neue"),local("Liberation Sans");size-adjust:107.4%;ascent-override:90.2%;descent-override:22.5%;line-gap-override:0%}

body.stv-d{
--stv-bg:#0e0818;--stv-bg2:#140c24;--stv-card:#1a1230;--stv-card2:#241a45;--stv-line:rgba(255,255,255,.09);
--stv-text:#e9e4f5;--stv-muted:#b4abca;--stv-pink:#ed28b5;--stv-pink-hi:#ff73d4;--stv-violet:#7a2fd0;
--stv-grad:linear-gradient(135deg,#ff4fcf 0%,#ed28b5 45%,#9b2fd0 100%);
--stv-r:14px;--stv-gap:6px;
--stv-font:"Inter STV","Inter STV Fallback",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}

/* ---------- base ---------- */
body.stv-d{background:radial-gradient(1100px 520px at 85% -8%,rgba(122,47,208,.26),transparent 60%),radial-gradient(900px 480px at -5% 0,rgba(237,40,181,.12),transparent 55%),var(--stv-bg)!important;background-repeat:no-repeat!important;color:var(--stv-text)!important;font-family:var(--stv-font)!important;font-size:16px;line-height:1.55;letter-spacing:0!important;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
body.stv-d .body-gradient{display:none!important}
body.stv-d h1,body.stv-d h2,body.stv-d h3,body.stv-d h4{font-family:var(--stv-font);letter-spacing:-.015em;color:#fff!important}
body.stv-d a{color:var(--stv-pink-hi);transition:color .15s}
body.stv-d a:hover{color:#fff!important}
body.stv-d ::selection{background:var(--stv-pink);color:#fff}
body.stv-d :focus-visible{outline:2px solid var(--stv-pink-hi)!important;outline-offset:2px;border-radius:6px}
body.stv-d .skip-link:focus{background:#fff;color:#000!important;padding:10px 16px;z-index:100000;border-radius:0 0 10px 0}
body.stv-d .container,body.stv-d .container-lg{max-width:1560px}
body.stv-d .video-loop{padding:0 10px}

/* ---------- header / nav ---------- */
body.stv-d #wrapper-navbar{position:relative;z-index:1000;line-height:normal}
body.stv-d .navbar,body.stv-d .navbar-expand-md .navbar-nav .dropdown-menu{background:rgba(14,8,24,.92)!important;-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px)}
body.stv-d .navbar{padding:10px 0;border-bottom:1px solid var(--stv-line);box-shadow:0 1px 0 rgba(237,40,181,.35),0 12px 30px -18px rgba(0,0,0,.8)}
body.stv-d .navbar .bg-darken{display:none}
body.stv-d .navbar-collapse{background:transparent!important}
body.stv-d .nav-container{align-items:center;gap:8px}
body.stv-d .navbar-brand{margin:0 18px 0 0;padding:0;display:flex;align-items:center}
body.stv-d .navbar-brand img{height:44px;width:auto;max-height:none;max-width:none;display:block}
body.stv-d .navbar-nav{gap:4px;align-items:center}
body.stv-d .navbar-nav .nav-link,body.stv-d .navbar a.nav-link{padding:.5rem .8rem;border-radius:999px;border:0;white-space:nowrap;font-size:14px;font-weight:600;letter-spacing:.01em;color:#e9e4f5!important;transition:background-color .15s,color .15s}
body.stv-d .navbar li a:hover,body.stv-d .navbar li a:focus{background:rgba(255,255,255,.1);color:#fff!important}
body.stv-d .navbar li.active>a,body.stv-d .navbar li.current-menu-item>a,body.stv-d .navbar li.current-menu-parent>a{background:var(--stv-grad);color:#fff!important;box-shadow:0 6px 18px -8px rgba(237,40,181,.9)}
body.stv-d .header-search-toggle{margin-right:10px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(255,255,255,.07);cursor:pointer;transition:background .15s}
body.stv-d .header-search-toggle:hover{background:rgba(237,40,181,.35)}
body.stv-d .header-search-toggle img{width:20px;height:20px}
body.stv-d .header-search-form{background:var(--stv-bg2);border-bottom:1px solid var(--stv-line)}
body.stv-d .header-search-form input{height:56px;line-height:56px;max-width:1100px;margin:0 auto;display:block;background:transparent!important;font-size:16px;font-family:var(--stv-font)}
body.stv-d .hamburger-inner,body.stv-d .hamburger-inner::before,body.stv-d .hamburger-inner::after{background-color:#fff}

/* ---------- ads / banners (placements and sizes untouched; only framing) ---------- */
body.stv-d .happy-section{padding:18px 12px;background:transparent!important}
body.stv-d .happy-section a,body.stv-d .happy-player-under a,body.stv-d .happy-player-beside a{display:inline-block;line-height:0}
body.stv-d .happy-section img,body.stv-d .happy-player-under img,body.stv-d .happy-player-beside img,body.stv-d .happy-inside-player img{max-width:100%;height:auto;border-radius:12px;box-shadow:0 10px 30px -14px rgba(0,0,0,.9)}
body.stv-d .video-block-happy{background:transparent!important;border-radius:var(--stv-r);overflow:hidden}
body.stv-d .video-block-happy-absolute{padding:0}
body.stv-d .video-block-happy-absolute>img{width:100%;height:100%;border-radius:var(--stv-r);box-shadow:none;object-fit:contain}
body.stv-d .happy-inside-player .close-text{border-radius:999px;font-size:13px;padding:6px 14px}

/* ---------- video cards ---------- */
body.stv-d .video-block{position:relative;margin:var(--stv-gap)!important;background:var(--stv-card)!important;border-radius:var(--stv-r);overflow:hidden;box-shadow:0 0 0 1px var(--stv-line),0 8px 22px -14px rgba(0,0,0,.9);transition:transform .22s ease,box-shadow .22s ease}
body.stv-d .video-block a.thumb{background:#0b0614;border-radius:0}
body.stv-d .video-block .video-img{width:100%!important;height:100%!important;object-fit:cover;transition:opacity .3s ease,transform .5s ease}
body.stv-d .video-block a.thumb::before{content:"";position:absolute;inset:auto 0 0 0;height:46%;background:linear-gradient(to top,rgba(10,5,20,.72),transparent);z-index:2;pointer-events:none}
body.stv-d .video-block a.thumb::after{content:"";position:absolute;z-index:4;left:50%;top:50%;width:52px;height:52px;margin:-26px 0 0 -26px;border-radius:50%;pointer-events:none;opacity:0;transform:scale(.7);transition:opacity .2s,transform .2s;background:var(--stv-grad) ;box-shadow:0 8px 24px rgba(237,40,181,.55)}
body.stv-d .video-block a.thumb .video-preview{z-index:3}
body.stv-d .video-block a.infos{padding:10px 12px;position:static}
body.stv-d .video-block a.infos span.title{height:auto;height:calc(2 * 1.35em);min-height:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;padding:0;font-size:14px;line-height:1.35;font-weight:600;letter-spacing:0;text-align:left;color:#f3effb!important;overflow-wrap:anywhere;transition:color .15s}
/* duration over the thumbnail (the span sits after the thumb in the DOM; the 16:9 box is laid over it) */
body.stv-d .video-block .video-datas{position:absolute;left:0;right:0;top:0;aspect-ratio:16/9;padding:8px!important;display:flex;align-items:flex-end;justify-content:flex-end;pointer-events:none;z-index:5;background:none!important}
body.stv-d .video-block .video-datas .duration{margin:0;padding:3px 7px;border-radius:7px;background:rgba(10,5,20,.82)!important;color:#fff!important;font-size:12px;line-height:1.2;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.02em;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
@media (hover:hover){
body.stv-d .video-block:hover{transform:translateY(-3px);box-shadow:0 0 0 1px rgba(237,40,181,.55),0 16px 34px -14px rgba(237,40,181,.45)}
body.stv-d .video-block:hover a.thumb::after{opacity:1;transform:scale(1)}
body.stv-d .video-block:hover a.infos span.title{color:var(--stv-pink-hi)!important}
}
/* play glyph on the hover button */
body.stv-d .video-block a.thumb .video-preview::after{content:"";position:absolute;z-index:6;left:50%;top:50%;margin:-9px 0 0 -6px;border-style:solid;border-width:9px 0 9px 15px;border-color:transparent transparent transparent #fff;opacity:0;transition:opacity .2s;pointer-events:none}
@media (hover:hover){body.stv-d .video-block:hover a.thumb .video-preview::after{opacity:1}}
/* category tiles (/categories/) */
body.stv-d .video-block.video-block-cat a.infos span.title{height:auto;text-align:center;font-size:16px;font-weight:700;padding:0;-webkit-line-clamp:1;line-clamp:1}
body.stv-d .video-block.video-block-cat .video-datas{position:static;aspect-ratio:auto;padding:0 0 12px!important;justify-content:center;pointer-events:auto}

/* ---------- category hero + breadcrumbs ---------- */
body.stv-d .hero{padding:34px 0 26px;background:linear-gradient(180deg,rgba(122,47,208,.16),transparent)!important;border-bottom:1px solid var(--stv-line)}
body.stv-d .hero h1{font-size:clamp(1.55rem,3.4vw,2.35rem);font-weight:800;line-height:1.15;margin:6px 0 0;text-wrap:balance}
body.stv-d .hero-desc{font-size:clamp(.98rem,1.5vw,1.1rem);line-height:1.6;color:var(--stv-muted);opacity:1;max-width:760px;margin:12px auto 0}
body.stv-d .hero-desc p{margin:0}
body.stv-d .stv-breadcrumbs{font:500 13px/1.4 var(--stv-font);color:var(--stv-muted);margin:0 0 6px}
body.stv-d .stv-breadcrumbs a{color:var(--stv-pink-hi)}
body.stv-d .stv-breadcrumbs .last{color:#d6cfe8}
body.stv-d .stv-breadcrumbs .separator{color:#7c7094;margin:0 5px}

/* ---------- category intro (SEO text) ---------- */
body.stv-d .stv-cat-intro{margin:32px auto 12px;padding:0 12px}
body.stv-d .stv-cat-intro .stv-ci-inner{max-width:980px;padding:26px 30px;background:linear-gradient(180deg,var(--stv-card),#150d28);border:0;border-radius:18px;box-shadow:0 0 0 1px var(--stv-line),0 18px 40px -26px #000;position:relative}
body.stv-d .stv-cat-intro .stv-ci-inner::before{content:"";position:absolute;left:30px;top:0;width:56px;height:3px;border-radius:0 0 3px 3px;background:var(--stv-grad)}
body.stv-d .stv-cat-intro .stv-ci-body{font:400 16px/1.75 var(--stv-font);color:#d9d2ea}
body.stv-d .stv-cat-intro .stv-ci-body h2,body.stv-d .stv-cat-intro .stv-ci-body h3{font-weight:700;letter-spacing:-.01em;margin:20px 0 8px}
body.stv-d .stv-cat-intro .stv-ci-body h2:first-child{margin-top:4px}
body.stv-d .stv-cat-intro .stv-ci-body h2{font-size:1.4rem}body.stv-d .stv-cat-intro .stv-ci-body h3{font-size:1.15rem}
body.stv-d .stv-cat-intro .stv-ci-body a{color:var(--stv-pink-hi);text-decoration-color:rgba(255,115,212,.45)}
body.stv-d .stv-ci-toggle{border-radius:999px;padding:8px 20px;font:600 14px/1.2 var(--stv-font);background:var(--stv-grad);border:0;box-shadow:0 8px 20px -10px rgba(237,40,181,.9)}
body.stv-d .stv-ci-toggle:hover{background:var(--stv-grad);filter:brightness(1.12)}
@media (max-width:575.98px){body.stv-d .stv-cat-intro{padding:0}body.stv-d .stv-cat-intro .stv-ci-inner{border-radius:0;padding:22px 18px;box-shadow:0 -1px 0 var(--stv-line),0 1px 0 var(--stv-line)}body.stv-d .stv-cat-intro .stv-ci-inner::before{left:18px}}

/* ---------- pagination ---------- */
body.stv-d .pagination{gap:6px;flex-wrap:wrap}
body.stv-d .page-link,body.stv-d .pagination-lg .page-link{min-width:44px;height:44px;display:flex;align-items:center;justify-content:center;padding:0 14px;border-radius:12px!important;font-size:15px;font-weight:700;line-height:1;background:var(--stv-card)!important;color:#e9e4f5!important;box-shadow:0 0 0 1px var(--stv-line);transition:background .15s,transform .15s}
body.stv-d .page-link:not(.dots):hover{background:var(--stv-card2)!important;transform:translateY(-1px)}
body.stv-d .page-item.active .page-link{background:var(--stv-grad)!important;box-shadow:0 8px 20px -10px rgba(237,40,181,.9)}
body.stv-d .page-link.dots{background:transparent!important;box-shadow:none;color:var(--stv-muted)!important}

/* ---------- single video ---------- */
body.stv-d .single-video-player{background:linear-gradient(180deg,#07030f,#0e0818)!important;padding:26px 0 8px}
body.stv-d .responsive-player{border-radius:16px;overflow:hidden;box-shadow:0 0 0 1px var(--stv-line),0 30px 60px -24px rgba(0,0,0,.95),0 0 80px -30px rgba(122,47,208,.7);background:#000}
body.stv-d .responsive-player>iframe{border:0}
body.stv-d .happy-player-under{padding:20px 0 0}
body.stv-d .single-video-infos{padding:26px 20px 40px}
body.stv-d .single-video-infos .col-left{padding:0 30px 0 12px}
body.stv-d .single-video-infos h1{font-size:clamp(1.35rem,2.6vw,1.9rem);font-weight:800;line-height:1.22;margin:4px 0 18px;text-wrap:balance}
body.stv-d .video-description{opacity:1;max-width:76ch;text-align:left;font-size:16px;line-height:1.75;color:#d9d2ea}
body.stv-d .video-description p{margin:0 0 1em}
body.stv-d .video-description h2{font-size:1.3rem;font-weight:700;margin:1.7em 0 .5em;padding-left:12px;border-left:3px solid var(--stv-pink);line-height:1.3}
body.stv-d .video-description h3{font-size:1.1rem;font-weight:700;margin:1.4em 0 .4em}
body.stv-d .video-description a{color:var(--stv-pink-hi);text-decoration:underline;text-decoration-color:rgba(255,115,212,.4);text-underline-offset:3px}
body.stv-d .video-actions-box,body.stv-d .video-share-box{background:var(--stv-card)!important;border-radius:16px;box-shadow:0 0 0 1px var(--stv-line)}
body.stv-d .post-like a{border-radius:12px}
body.stv-d .tags-list a,body.stv-d .tags-list a:visited{background:var(--stv-card2)!important;color:#efeaf9!important;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:600;margin:0 8px 8px 0;box-shadow:0 0 0 1px var(--stv-line)}
body.stv-d .tags-list a:hover{background:var(--stv-pink)!important;color:#fff!important}
body.stv-d .related-videos{background:transparent!important;padding:36px 0 30px;border-top:1px solid var(--stv-line)}
body.stv-d .related-videos h2{font-size:clamp(1.3rem,2.4vw,1.75rem);font-weight:800;margin-bottom:1.5rem}
body.stv-d .btn-primary,body.stv-d .post-navigation a{background:var(--stv-grad)!important;border:0!important;border-radius:12px;font-weight:700;padding:.6rem 1.2rem;box-shadow:0 8px 20px -10px rgba(237,40,181,.9)}
body.stv-d .btn-primary:hover,body.stv-d .post-navigation a:hover{filter:brightness(1.12)}

/* ---------- generic content pages / forms ---------- */
body.stv-d .entry-content,body.stv-d .widget-area,body.stv-d .video-info .col{background:var(--stv-card)!important;border-radius:var(--stv-r)}
body.stv-d .form-control,body.stv-d input[type=text],body.stv-d input[type=email],body.stv-d input[type=search],body.stv-d textarea{background:var(--stv-card2);border:1px solid var(--stv-line);border-radius:10px;color:#fff}

/* ---------- footer ---------- */
body.stv-d #wrapper-footer{margin-top:24px;padding:30px 0 36px;background:linear-gradient(180deg,#0b0614,#08040f)!important;border-top:1px solid var(--stv-line);position:relative}
body.stv-d #wrapper-footer::before{content:"";position:absolute;left:0;right:0;top:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--stv-pink),var(--stv-violet),transparent)}
body.stv-d .stv-footer-cats{padding:0 16px 22px;margin-bottom:6px;border-bottom:1px solid var(--stv-line)}
body.stv-d .stv-footer-cats .stv-fc-title{font:700 12px/1.3 var(--stv-font);color:var(--stv-muted);letter-spacing:.14em;margin-bottom:14px}
body.stv-d .stv-footer-cats ul{gap:8px}
body.stv-d .stv-footer-cats a{padding:7px 14px;font:600 13px/1.3 var(--stv-font);color:#efeaf9;background:var(--stv-card);border:0;box-shadow:0 0 0 1px var(--stv-line);transition:background .15s,transform .15s}
body.stv-d .stv-footer-cats a:hover,body.stv-d .stv-footer-cats a:focus{background:var(--stv-grad);color:#fff;transform:translateY(-1px)}
body.stv-d .site-footer{padding-top:14px}
body.stv-d ul#menu-footer-menu{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 22px;margin:0;padding:0;list-style:none}
body.stv-d ul#menu-footer-menu li a{font-size:13px;font-weight:600;color:var(--stv-muted)!important;text-decoration:none}
body.stv-d ul#menu-footer-menu li a:hover{color:#fff!important}
body.stv-d .site-info{font-size:13px;line-height:1.6;color:#9488ad;margin-top:6px}
body.stv-d .site-info p{margin:0}

/* ---------- responsive ---------- */
@media (min-width:1150px) and (max-width:1279.98px){
body.stv-d .navbar-brand{margin-right:6px}
body.stv-d .navbar-brand img{height:38px}
body.stv-d .navbar-nav{gap:0}
body.stv-d .navbar-nav .nav-link,body.stv-d .navbar a.nav-link{padding:.45rem .62rem;font-size:13px}
body.stv-d .header-search-toggle{margin-right:4px}
}
@media (min-width:768px) and (max-width:1149.98px){
body.stv-d .navbar{height:auto;max-height:none;padding:8px 0}
body.stv-d .nav-container{flex-wrap:wrap;row-gap:4px}
body.stv-d .navbar-brand{order:1;margin-right:auto}
body.stv-d .search-nav{display:contents}
body.stv-d .header-search-toggle{order:2;margin-right:0}
body.stv-d .navbar-collapse{order:3;flex-basis:100%!important;border-top:1px solid var(--stv-line);padding-top:8px;margin-top:2px}
body.stv-d .navbar-nav{flex-wrap:wrap;justify-content:center;gap:2px;margin:0 auto!important}
body.stv-d .navbar-nav .nav-link,body.stv-d .navbar a.nav-link{padding:.4rem .6rem;font-size:13px}
}
@media (max-width:767.98px){
body.stv-d .navbar-brand img{height:38px}
body.stv-d .navbar-collapse{background:#120a20!important;border-bottom:1px solid var(--stv-line);box-shadow:0 24px 40px -10px rgba(0,0,0,.85);padding:6px 12px 12px}
body.stv-d .navbar-nav{align-items:stretch;gap:2px}
body.stv-d .navbar-nav .nav-link,body.stv-d .navbar a.nav-link,body.stv-d .navbar-dark .navbar-collapse .nav-link{height:auto;line-height:1.3;padding:14px 16px;border:0;border-radius:12px;font-size:15px}
body.stv-d .navbar-dark .navbar-collapse ul.navbar-nav{padding-bottom:0}
}
@media (max-width:991.98px){
body.stv-d .single-video-infos .col-left{padding:0}
}
@media (max-width:575.98px){
body.stv-d{--stv-gap:4px;--stv-r:12px}
body.stv-d .navbar{padding:8px 0}
body.stv-d .nav-container{padding-left:14px;padding-right:14px}
body.stv-d .navbar-brand{margin-right:auto}
body.stv-d .navbar-brand img{height:34px}
body.stv-d .video-loop{padding:0 4px}
body.stv-d .video-block a.infos{padding:8px 10px 10px}
body.stv-d .video-block a.infos span.title{font-size:13px}
body.stv-d .video-block .video-datas{padding:6px!important}
body.stv-d .video-block .video-datas .duration{font-size:11px;padding:2px 6px}
body.stv-d .hero{padding:24px 0 20px}
body.stv-d .single-video-player{padding:0}
body.stv-d .responsive-player{border-radius:0;box-shadow:none}
body.stv-d .single-video-infos{padding:20px 15px 30px}
body.stv-d .page-link,body.stv-d .pagination-lg .page-link{min-width:42px;height:42px}
}
@media (prefers-reduced-motion:reduce){
body.stv-d *,body.stv-d *::before,body.stv-d *::after{transition-duration:.01ms!important;animation-duration:.01ms!important}
body.stv-d .video-block:hover{transform:none}
}
@media (prefers-contrast:more){body.stv-d{--stv-muted:#d3cce6;--stv-line:rgba(255,255,255,.28)}}
@media print{body.stv-d .navbar,body.stv-d #wrapper-footer{display:none!important}}
