/* GirlScanner template, 2026 redesign. DLE 12-13.
   Black with a crimson accent. Sidebar and DLE module classes kept from gs-dark.
   To change the look, edit the tokens in :root. */

/* FONTS
----------------------------------------------- */
@font-face {font-family: 'Roboto'; font-style: normal; font-weight: 100 900; font-display: swap;
    src: url(../fonts/roboto-latin-wght-normal.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face {font-family: 'Roboto'; font-style: normal; font-weight: 100 900; font-display: swap;
    src: url(../fonts/roboto-cyrillic-wght-normal.woff2) format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;}
@font-face {font-family: 'Roboto Condensed'; font-style: normal; font-weight: 100 900; font-display: swap;
    src: url(../fonts/roboto-condensed-latin-wght-normal.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face {font-family: 'Roboto Condensed'; font-style: normal; font-weight: 100 900; font-display: swap;
    src: url(../fonts/roboto-condensed-cyrillic-wght-normal.woff2) format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;}

/* TOKENS
----------------------------------------------- */
:root {
    --ink: #000;            /* page */
    --plum: #0e0e0f;        /* panels */
    --plum-2: #242426;      /* raised controls */
    --line: #2c2c2e;        /* borders */
    --blush: #fff;          /* text */
    --mute: #a4a4a9;        /* secondary text */
    --pink: #ff4d7d;        /* links on black */
    --chili: #e01049;       /* primary actions */
    --chili-hi: #f0164f;    /* hover */
    --stem: #8acb3f;        /* download */
    --stem-ink: #16230a;    /* text on stem */

    --display: 'Roboto Condensed', Arial, sans-serif;
    --body: 'Roboto', Arial, sans-serif;

    --r-s: 5px;
    --r-m: 0;
    --gutter: 24px;
    --header-h: 68px;
    --cols: 3;              /* cards per row; ad rows in shortstory.tpl come after every 3rd card */
}

/* BASE
----------------------------------------------- */
*, *::before, *::after {box-sizing: border-box;}
* {margin: 0; padding: 0; border: 0;}
html {-webkit-text-size-adjust: 100%; scroll-padding-top: calc(var(--header-h) + 12px);}
ol, ul {list-style: none;}
blockquote, q {quotes: none;}
table {border-collapse: collapse; border-spacing: 0;}
input, select {vertical-align: middle;}
img {max-width: 100%;}

body {
    font: 400 15px/1.45 var(--body);
    color: var(--blush);
    background: var(--ink);
    min-height: 100%;
    width: 100%;
}

a {color: var(--blush); text-decoration: none;}
a:hover, a:focus {color: var(--pink);}

:focus-visible {outline: 2px solid var(--pink); outline-offset: 2px;}

h1, h2, h3, h4, h5 {font-weight: 600; font-size: 24px; line-height: 1.25;}
b, strong, .fw700 {font-weight: 700;}

.clr {clear: both;}
.clearfix:after {content: ""; display: table; clear: both;}
.hidden, #dofullsearch {display: none;}
.nowrap {white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.ps-link {cursor: pointer;}
.anim {transition: opacity .2s;}
.mr-25 {margin-right: 16px;}
.mb-20 {margin-bottom: 20px;}
.icon-left .fa, .icon-left .icon {margin-right: 8px;}
.icon-right .fa, .icon-right .icon {margin-left: 8px;}

.fx-row {display: flex; flex-wrap: wrap; justify-content: space-between;}
.fx-col {display: flex; flex-direction: column;}
.fx-center {justify-content: center;}
.fx-middle {align-items: center;}
.fx-start {justify-content: flex-start;}
.fx-between {justify-content: space-between;}
.fx-first {order: -1;}
.fx-last {order: 10;}
.fx-1 {flex: 1 1 0; max-width: 100%; min-width: 50px;}

/* IMAGE BOXES (used by DLE modules, keep the class names)
----------------------------------------------- */
.img-box, .img-wide, .img-square, .img-resp, .img-resp-vert, .img-resp-sq, .img-fit {overflow: hidden; position: relative;}
.img-resp {padding-top: 56.25%;}
.img-resp-vert {padding-top: 150%;}
.img-resp-sq {padding-top: 100%;}
.img-box img, .img-square img, .img-resp img, .img-resp-vert img, .img-resp-sq img {width: 100%; min-height: 100%; display: block;}
.img-resp img, .img-resp-vert img, .img-resp-sq img {position: absolute; left: 0; top: 0;}
.img-wide img {width: 100%; display: block;}
.img-fit img {width: 100%; height: 100%; object-fit: cover;}
.img-box, .img-resp, .img-resp-vert, .img-resp-sq {background-color: var(--plum-2);}

/* FORM CONTROLS
----------------------------------------------- */
button, textarea, input[type="text"], input[type="search"], input[type="password"], input[type="email"] {
    appearance: none; -webkit-appearance: none;
    font: inherit;
    font-size: 16px;
}

.button, .btn, .pagi-load a, .up-second li a, .usp-edit a, .qq-upload-button,
button:not(.color-btn):not([class*=fr]),
html input[type="button"], input[type="reset"], input[type="submit"], .meta-fav a, .usp-btn a {
    display: inline-block;
    padding: 0 22px;
    height: 42px;
    line-height: 42px;
    border-radius: var(--r-s);
    text-align: center;
    font-family: var(--body);
    font-size: 15px;
    font-weight: 600;
    color: #fff;
    background: var(--chili);
    cursor: pointer;
    transition: background-color .15s;
}

.button:hover, .btn:hover, .up-second li a:hover, .usp-edit a:hover, .qq-upload-button:hover,
.pagi-load a:hover, .usp-btn a:hover, button:not(.color-btn):hover,
html input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover, .meta-fav a:hover {
    background: #b9142e;
    color: #fff;
}

input[type="text"], input[type="search"], input[type="password"], input[type="email"], select, textarea {
    width: 100%;
    color: var(--blush);
    background: var(--ink);
    border: 1px solid var(--line);
    border-radius: var(--r-s);
}

input[type="text"], input[type="search"], input[type="password"], input[type="email"] {height: 42px; padding: 0 14px;}
select {height: 42px; padding: 0 12px; width: auto;}
textarea {padding: 12px 14px; overflow: auto; vertical-align: top; resize: vertical;}

input:focus, textarea:focus, select:focus {border-color: var(--pink); outline: 0;}
input::placeholder, textarea::placeholder {color: var(--mute); opacity: 1; font-size: 15px;}

/* PAGE GRID
----------------------------------------------- */
.wrap {min-width: 320px; position: relative;}
.wrap-center {max-width: 1520px; margin: 0 auto; position: relative;}
.wrap-main {display: flex; flex-direction: column; min-height: 100vh;}
.content {display: flex; flex-direction: column; flex: 1 0 auto;}
.content > * {width: 100%;}

.cols {display: grid; grid-template-columns: 256px minmax(0, 1fr); align-items: start;}
.col-main {grid-column: 2; grid-row: 1; padding: 24px var(--gutter) 40px 28px; min-width: 0; min-height: 70vh;}
.col-left {grid-column: 1; grid-row: 1; padding: 24px 0 40px var(--gutter);}

#dle-content {
    display: grid;
    grid-template-columns: repeat(var(--cols), minmax(0, 1fr));
    grid-auto-flow: dense;   /* cards close the gap left beside a full-width ad row */
    gap: 22px 20px;
}
#dle-content > *:not(.thumb) {grid-column: 1 / -1; min-width: 0;}

/* HEADER
----------------------------------------------- */
.header {
    position: sticky; top: 0; z-index: 60;
    display: flex; align-items: center; gap: 20px;
    min-height: var(--header-h);
    padding: 4px var(--gutter);
    background: #000;
    border-bottom: 1px solid var(--line);
}
.logo {flex: none; display: block; width: 196px; margin-left: -26px;}  /* the PNG has empty space on its left */
.logo img {display: block; width: 100%; height: auto;}
.hnav {flex: none;}
.hmenu {display: flex; align-items: center; gap: 18px; font: 600 20px/1 var(--display);}
.hmenu li {white-space: nowrap;}
.hmenu a {display: block; padding: 6px 0; color: #fff;}
.hmenu a:hover {color: var(--chili-hi);}

.search-wrap {flex: 1 1 200px; min-width: 150px;}
.search-box {position: relative; width: 100%;}
.search-box input[type="text"] {height: 40px; padding-right: 46px; background: #111;}
.search-box button:not(.color-btn):not([class*=fr]) {
    position: absolute; right: 0; top: 0;
    width: 44px; height: 40px; line-height: 40px; padding: 0;
    color: #fff; background: transparent;
}
.search-box button:not(.color-btn):hover {background: transparent; color: var(--pink);}

.btn-fav {flex: none; color: var(--mute); cursor: pointer;}
.btn-fav .fa {color: var(--chili-hi);}
.btn-login:not(.color-btn) {flex: none; height: auto; line-height: 1.4; padding: 0; font-weight: 400; color: var(--mute); background: transparent;}
.btn-login:hover {color: #fff; background: transparent;}
.btn-premium {
    flex: none; display: inline-block; padding: 0 18px;
    font: 700 17px/40px var(--display); letter-spacing: .3px; white-space: nowrap;
    color: #fff; background: var(--chili); border-radius: var(--r-s);
}
.btn-premium:hover {color: #fff; background: #b90b3b;}
.btn-menu {display: none;}

/* ONLYFANS STRIP
----------------------------------------------- */
.carou {padding: 20px var(--gutter) 22px; background: #0b0b0c; border-bottom: 1px solid var(--line);}
.carou-caption {font: 700 26px/36px var(--display); margin-bottom: 14px;}
.carou-in {transition: opacity .3s;}
.carou-item {display: block; width: 268px; aspect-ratio: 16 / 9; float: left;}
.carou-desc {position: absolute; z-index: 20; left: 0; right: 0; bottom: 0; padding: 10px 12px; color: #fff; font-size: 14px;}
.carou-title {font-weight: 600;}
.carou-subtitle a {color: #fff;}
.mask-img-after:after {
    content: ''; position: absolute; z-index: 10; left: 0; right: 0; bottom: 0; height: 45%;
    background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, .8));
    pointer-events: none;
}
@media screen and (min-width: 1220px) {.carou-item {width: 100%;}}

/* SECTIONS
----------------------------------------------- */
.sect + .sect {margin-top: 42px;}
.sect-header {margin-bottom: 18px; gap: 14px 10px; justify-content: flex-end;}
.sect-title {
    position: relative; flex: 0 0 100%; min-width: 0;
    padding-bottom: 15px;
    text-align: center;
    font: 700 16px/1.2 var(--body); letter-spacing: 3px; text-transform: uppercase;
    border-bottom: 1px solid var(--line);
}
.sect-title::after {content: ''; position: absolute; left: 50%; bottom: -2px; width: 54px; height: 3px; margin-left: -27px; background: #fff;}

.grid-select {display: flex; gap: 2px; padding: 3px; border: 1px solid var(--line); border-radius: var(--r-s);}
.grid-select span {
    min-width: 34px; height: 30px; line-height: 30px; padding: 0 10px;
    text-align: center; color: var(--mute);
    border-radius: 3px; font-size: 14px; cursor: pointer;
}
.grid-select span:hover {color: #fff;}
.grid-select span.current {color: #fff; background: var(--chili);}

/* VIDEO CARD
----------------------------------------------- */
.thumb {position: relative; min-width: 0; display: flex; flex-direction: column; border: 1px solid var(--line);}
.th-img {display: block;}
.th-img.mask-img-after::after {display: none;}
.th-dur {position: absolute; z-index: 15; right: 7px; top: 7px; padding: 2px 6px; border-radius: 3px; font-size: 12px; font-weight: 700; color: #fff; background: rgba(0, 0, 0, .75);}
.th-play {position: absolute; z-index: 15; left: 50%; top: 50%; width: 56px; height: 56px; margin: -28px; border-radius: 50%; background: rgba(255, 255, 255, .88); transition: background-color .15s;}
.th-play::before {content: ''; position: absolute; left: 21px; top: 16px; border-left: 19px solid #000; border-top: 12px solid transparent; border-bottom: 12px solid transparent; transition: border-color .15s;}
.th-img:hover .th-play, .th-img:focus-visible .th-play {background: var(--chili-hi);}
.th-img:hover .th-play::before, .th-img:focus-visible .th-play::before {border-left-color: #fff;}

.th-desc {flex: 1; padding: 12px 18px 12px; text-align: center;}
.th-stat {display: flex; justify-content: center; flex-wrap: wrap; gap: 4px 14px; font-size: 12px; color: var(--mute);}
.th-stat .fa {margin-right: 5px;}
.th-studio {font-weight: 700; color: #fff; max-width: 100%;}
.th-studio a {color: #fff;}
.th-title {
    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;
    margin: 8px 0;
    font: 600 22px/1.2 var(--display); color: #fff;
}
.th-title:hover {color: var(--chili-hi);}
.th-star {font-size: 13px; color: var(--mute); overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2;}
.th-star a {color: #fff;}
.th-star a:hover {color: var(--pink);}

.th-meta {flex-wrap: nowrap; gap: 12px; padding: 8px 12px; font-size: 13px; color: var(--mute); border-top: 1px solid var(--line);}
.th-meta-btn {
    flex: none; display: inline-block; padding: 0 13px;
    font: 700 15px/32px var(--display); letter-spacing: .8px; text-transform: uppercase;
    color: #fff; border: 1px solid #fff; border-radius: 4px;
}
.th-meta-btn:hover {color: #000; background: #fff;}
.th-meta-left {text-align: right;}

.th-trailer {
    position: absolute; z-index: 20; left: 7px; top: 7px;
    width: 32px; height: 32px; line-height: 32px; text-align: center; padding-left: 2px;
    border-radius: 50%; font-size: 11px; cursor: pointer; color: #fff; background: var(--chili);
}
.th-trailer:hover {background: var(--chili-hi);}

.th-img video {position: absolute; z-index: 12; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover;}
.vid-loader {position: absolute; z-index: 13; left: 0; top: 0; right: 0; height: 4px; overflow: hidden; background: var(--plum-2);}
.vid-loader:before {content: ""; position: absolute; left: 0; top: 0; height: 100%; background: var(--chili); animation: load1 2s infinite linear;}

/* Ad slots: one full-width row, content centred */
.th-rkl {grid-column: 1 / -1; text-align: center; overflow: hidden;}
.th-rkl:empty {display: none;}
.th-rkl img {display: block; margin: 0 auto;}
.side-rkl {margin-top: 20px; text-align: center; overflow: hidden;}
.frkl {text-align: center; margin: 15px auto 0; overflow: hidden;}

/* List view */
@media screen and (min-width: 760px) {
    .grid-list #dle-content {grid-template-columns: minmax(0, 1fr); row-gap: 16px;}
    .grid-list .thumb {display: grid; grid-template-columns: 300px minmax(0, 1fr); grid-template-rows: 1fr auto;}
    .grid-list .th-img {grid-column: 1; grid-row: 1 / 3;}
    .grid-list .th-desc {grid-column: 2; grid-row: 1; text-align: left;}
    .grid-list .th-stat {justify-content: flex-start;}
    .grid-list .th-meta {grid-column: 2; grid-row: 2;}
    .grid-list .th-title {font-size: 23px;}
}

/* Trailer popup */
.tr-overlay {position: fixed; z-index: 998; inset: 0; opacity: .75; background: #000;}
.tr-box {position: fixed; z-index: 999; left: 50%; top: 50%; transform: translate(-50%, -50%); width: min(760px, calc(100% - 24px)); font-size: 18px; font-weight: 600; color: #fff;}
.tr-header .fa {font-size: 22px; cursor: pointer; margin-left: 15px;}
.tr-video {margin: 12px 0; background: #000;}
.tr-btm {text-align: center;}

/* MODELS
----------------------------------------------- */
.model-in {display: block;}
.grid-models {display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px;}
.model-incat {width: auto; min-width: 0;}
.mp-models .model-item {width: 23%;}

/* SIDEBAR
----------------------------------------------- */
.side-box {margin-bottom: 20px;}
.side-bt {font: 700 21px/1.2 var(--display); padding-bottom: 10px;}
input.side-find[type="search"] {height: 38px; margin-bottom: 8px; font-size: 14px; background: #111;}
.side-none {display: none; padding: 8px 9px; color: var(--mute); font-size: 14px;}
.side-none.is-shown {display: block;}
.col-left .side-bc {max-height: 500px; overflow-y: auto; scrollbar-width: thin; scrollbar-color: #3a3a3e transparent;}
.nav li a {display: block; padding: 5px 9px; border-radius: 4px; color: #c9c9cc;}
.nav li a:hover {background: var(--plum-2); color: #fff;}
.nav li.side-pin a {color: #fff; font-weight: 700; background: var(--plum-2); margin-bottom: 5px;}
.side-item {display: block; font-size: 14px; text-align: center;}
.side-img {margin-bottom: 6px;}
.side-title {display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;}

/* SEO TEXT, BANNER, FOOTER
----------------------------------------------- */
.site-desc {padding: 28px var(--gutter); color: var(--mute); background: #0b0b0c; line-height: 1.6; border-top: 1px solid var(--line);}
.site-desc > * {max-width: 78ch;}
.site-desc h1, .site-desc h2, .site-desc h3 {font: 700 22px/1.3 var(--display); margin-bottom: 10px; color: #fff;}
.site-desc p + h2, .site-desc p + h3, .site-desc p + p {margin-top: 12px;}
.site-desc a, .uf-fb {color: var(--pink); text-decoration: underline; cursor: pointer;}
.site-desc li {list-style: disc; margin-left: 24px;}
.site-desc img {float: left; max-width: 200px; margin: 0 10px 10px 0;}

.promo-banner {margin-top: 30px; text-align: center;}
.promo-banner img {display: inline-block;}

.footer {color: var(--mute); font-size: 14px; border-top: 1px solid var(--line);}
.ft-grid {display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 3fr); gap: 26px; padding: 28px var(--gutter);}
.ft-title {position: relative; margin-bottom: 18px; padding-bottom: 14px; text-align: center; font: 700 14px/1.2 var(--body); letter-spacing: 3px; text-transform: uppercase; color: #fff; border-bottom: 1px solid var(--line);}
.ft-title::after {content: ''; position: absolute; left: 50%; bottom: -2px; width: 54px; height: 3px; margin-left: -27px; background: #fff;}
.ft-support {text-align: center;}
.ft-support span {display: block; margin-bottom: 16px; color: var(--pink); overflow-wrap: anywhere;}
.ft-pop {display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px;}
.ft-legal {display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px 20px; padding: 14px var(--gutter); font-size: 13px; color: #c9c9cc; border-top: 1px solid var(--line);}
.ft-legal p {flex: 1 1 320px;}
.ft-legal a {color: #fff;}
.ft-legal a:hover {color: var(--pink);}

#gotop {
    position: fixed; right: 16px; bottom: 16px; z-index: 50; display: none;
    width: 46px; height: 46px; line-height: 46px; text-align: center;
    border-radius: 50%; cursor: pointer; color: #fff;
    background: var(--plum-2); border: 1px solid var(--line);
}
#gotop:hover {border-color: #fff;}

/* PAGINATION
----------------------------------------------- */
.bottom-nav {text-align: center; padding-top: 12px;}
.pagi-nav {max-width: 100%; display: inline-block;}
.pagi-nav > span {display: inline-block;}
.pagi-load > span {display: none;}
.pagi-load a {margin-bottom: 15px; padding: 0 80px;}
.navigation {line-height: 40px;}
.navigation_w {line-height: 30px;}
.navigation a, .navigation span, .navigation_w a, .navigation_w span,
.pnext a, .pprev a, .pprev > span, .pnext > span {
    display: inline-block;
    min-width: 40px;
    padding: 0 10px;
    margin: 4px 2px;
    text-align: center;
    border-radius: var(--r-s);
    background: var(--plum);
    color: var(--blush);
}
.navigation_w a, .navigation_w span {min-width: 28px; padding: 0 6px;}
.navigation a:hover, .navigation_w a:hover {background: var(--plum-2); color: var(--blush);}
.navigation span, .navigation_w span {color: #fff; background: var(--chili);}
.navigation span.nav_ext {background: transparent; color: var(--mute);}
.dle-comments-navigation .pagi-nav {margin-bottom: 0;}

/* VIDEO PAGE
----------------------------------------------- */
.speedbar {margin-bottom: 8px; font-size: 13.5px; color: var(--mute);}
.speedbar a {color: var(--mute);}
.speedbar a:hover {color: var(--pink);}
.speedbar .fa {margin-right: 7px;}

.fheader {display: flex; align-items: flex-start; gap: 16px; margin-bottom: 8px;}
.fheader h1 {flex: 1; min-width: 0; font: 700 34px/1.15 var(--display);}
.fheader h1 a {font-size: 17px; margin-left: 10px;}
.to-fav {flex: none;}
.k-fav {width: 42px; height: 42px; line-height: 42px; text-align: center; border-radius: var(--r-s); font-size: 18px; cursor: pointer; color: #fff; background: var(--plum-2);}
.k-fav:hover {background: #3a3a3e;}
.k-fav-added {background: var(--chili);}

.fbyline {display: flex; flex-wrap: wrap; gap: 4px 16px; margin-bottom: 14px; font-size: 13px; color: var(--mute);}
.fbyline span span, .fbyline a {color: #fff;}
.fbyline a:hover {color: var(--pink);}
.fbyline .fa {margin-right: 5px;}

.fplayer {position: relative; margin-bottom: 14px;}
.fplayer .tabs-sel {display: flex; gap: 3px; padding-right: 180px; overflow-x: auto; white-space: nowrap;}
.fplayer .tabs-sel span {padding: 8px 14px; cursor: pointer; font-weight: 600; font-size: 14px; border-radius: 4px 4px 0 0; color: #c9c9cc; background: var(--plum-2);}
.fplayer .tabs-sel span:hover {color: #fff;}
.fplayer .tabs-sel span.current {color: #fff; background: var(--chili);}
.fcompl {position: absolute; right: 0; top: 7px; font-size: 13px;}
.fcompl a {color: var(--mute);}
.fcompl a:hover {color: var(--pink);}

.tabs-b {display: none; background: #000; overflow: hidden;}
.tabs-b.visible {display: block;}
.fluid_video_wrapper, .k2s-preview {width: 100% !important;}
.video-box embed, .video-box object, .video-box video, .video-box iframe, .video-box frame {
    max-width: 100% !important; display: block; width: 100%; height: auto; aspect-ratio: 16 / 9;
}
.mejs-container {max-width: 100% !important;}

.custom-preview {position: relative; width: 100%; padding-top: 56.25%; background: var(--plum) center center / cover no-repeat; cursor: pointer; overflow: hidden;}
.custom-preview .overlay {position: absolute; inset: 0; background: rgba(0, 0, 0, .12);}
.custom-preview .play-btn {
    position: absolute; z-index: 2; top: 50%; left: 50%;
    width: 84px; height: 84px; margin: -42px 0 0 -42px;
    border-radius: 50%; background: var(--chili-hi); transition: background-color .15s;
}
.custom-preview .play-btn::before {
    content: ""; position: absolute; top: 50%; left: 50%; transform: translate(-38%, -50%);
    border-left: 28px solid #fff; border-top: 19px solid transparent; border-bottom: 19px solid transparent;
}
.custom-preview:hover .play-btn {background: #b90b3b;}
#player-container, #player-container-2 {display: none;}

/* Premium plans */
.fbtns {display: grid; grid-template-columns: repeat(3, 1fr) 1.15fr; gap: 8px; margin-bottom: 16px;}
.fbtn {position: relative; display: block; min-height: 58px; padding: 9px 12px; border-radius: 4px; border: 1px solid var(--line); cursor: pointer;}
.fbtn div {font-weight: 600; font-size: 15px; color: #fff;}
.fbtn span {font-size: 12.5px; color: var(--mute);}
.fbtn:hover, .fbtn.is-active {border-color: #fff;}
.fbtn-vip {display: grid; place-items: center; font: 700 19px var(--display); letter-spacing: .3px; color: #fff; background: var(--chili); border-color: var(--chili);}
.fbtn-vip:hover {background: #b90b3b; border-color: #b90b3b;}

.fmain {margin-bottom: 30px;}
.fctrl {border-bottom: 1px solid var(--line);}
.ftabs {gap: 4px 22px; flex-wrap: nowrap; overflow-x: auto; white-space: nowrap;}
.ftab {height: 50px; line-height: 50px; cursor: pointer; color: #c9c9cc; font-weight: 500;}
.ftab .fa {margin-right: 7px;}
.ftab:hover {color: #fff;}
.ftab.is-active {color: #fff; box-shadow: inset 0 -3px var(--chili-hi);}
.fmain-desc {padding: 18px 0; display: none;}
.fmain-desc br {display: none;}
.fmain-desc.visible {display: block;}

.frate {margin-bottom: 34px;}
.frate .sect-title {margin-bottom: 18px;}
.vpm-rate {display: grid; grid-template-columns: 1fr 130px 1fr; align-items: center; gap: 14px;}
.rate-data {display: none;}
.rate-counts {order: 2; position: relative; height: 44px; text-align: center; font-size: 12px; color: var(--mute);}
.rate-plus {order: 1;}
.rate-minus {order: 3;}
.rate-plus, .rate-minus {height: 44px; line-height: 44px; text-align: center; border-radius: 3px; font-size: 22px; cursor: pointer; color: #fff; background: var(--plum-2);}
.rate-plus:hover, .rate-minus:hover {background: var(--chili);}
.rate-bar {position: absolute; left: 0; right: 0; bottom: 0; height: 4px; border-radius: 2px; overflow: hidden; background: var(--plum-2);}
.rate-fill {width: 50%; height: 100%; position: absolute; left: 0; top: 0; background: #fff; transition: width 1s linear;}
.rate-perc {margin-right: 5px; font-size: 21px; font-weight: 700; color: #fff;}

.ftags {line-height: 1.8;}
.ftags-capt {font-weight: 600; color: var(--mute);}
.ftags-capt::before {margin-right: 6px;}
.ftags a {color: var(--pink);}
.fdesc + .ftags {padding-top: 12px;}
.frels {margin-top: 20px;}
.frels .sect-content {display: grid; grid-template-columns: repeat(var(--cols), minmax(0, 1fr)); gap: 22px 20px;}

/* Download links */
.flinks-group {margin-top: 18px;}
.flink {margin-bottom: 6px;}
.flink img {width: 16px; height: 16px; margin: 0 5px 0 10px;}
.flink-name:after {content: ''; flex: 1 1 auto; margin: 0 15px; height: 1px; border-top: 1px dashed var(--line);}
.flink-btn {position: relative; display: block; overflow: hidden; height: 36px; line-height: 36px; padding: 0 15px 0 46px; font-weight: 700; border-radius: 4px; color: var(--stem-ink); background: var(--stem);}
.flink-btn a {color: var(--stem-ink);}
.flink-btn:hover, .flink-btn a:hover {color: var(--stem-ink);}
.flink-btn:hover {background: #a0dc58;}
.flink-btn .fa {position: absolute; left: 0; top: 0; width: 36px; height: 36px; line-height: 36px; text-align: center; background: rgba(0, 0, 0, .14);}
.flink-part {width: 135px; padding: 5px 10px; border-radius: 4px; color: #fff; background: var(--plum-2);}
.flink-part > .name {float: left; padding-right: 5px;}
.flink-part > .size {float: right;}
.flinks-sel a, .flinks-sel span {display: inline-block; position: relative; height: 38px; line-height: 38px; padding: 0 15px; margin: 0 4px 4px 0; border-radius: 4px; font-weight: 600; font-size: 15px; color: #c9c9cc; background: var(--plum-2);}
.flinks-sel a:hover {color: #fff;}
.flinks-sel a.selected {color: #fff; background: var(--chili);}
.flinks-blc {display: none;}

/* TEXT PAGES
----------------------------------------------- */
.mtitle, .sub-title h1, .form-wrap h1, .searchpage h1 {margin-bottom: 15px; font: 700 28px/1.2 var(--display);}
.full-text {line-height: 1.6; font-size: 16px;}
.full-text img:not(.emoji) {max-width: 100%; height: auto; margin: 10px 0;}
.full-text > img[style*="left"], .full-text > .highslide img[style*="left"] {margin: 0 10px 10px 0;}
.full-text > img[style*="right"], .full-text > .highslide img[style*="right"] {margin: 0 0 10px 10px;}
.full-text a {text-decoration: underline; color: var(--pink);}
.full-text a:hover {text-decoration: none;}
.full-text h2, .full-text h3, .full-text h4, .full-text h5 {margin: 14px 0 8px; font-size: 19px; font-weight: 600;}
.full-text p {margin-bottom: 10px;}
.full-text ul, .full-text ol {margin: 0 0 10px;}
.full-text ul li {list-style: disc; margin-left: 24px;}
.full-text ol li {list-style: decimal; margin-left: 24px;}
.full-taglist {margin-top: 20px;}
.full-taglist a {color: var(--pink);}
.full-taglist span:not(.fa):not(:last-child):after {content: ","; display: inline;}
.sect-about-text, .form-wrap, .searchpage .box_in {max-width: 860px;}

/* COMMENTS
----------------------------------------------- */
.add-comms {margin-bottom: 26px;}
.ac-inputs {gap: 10px; margin-bottom: 10px;}
.ac-inputs input {flex: 1 1 200px; width: auto;}
.ac-textarea textarea {height: 110px; margin-bottom: 12px;}
.ac-protect, .ac-textarea .bb-editor + br {display: none;}
.comments_subscribe {display: block;}
.comments_subscribe input {margin-right: 10px;}
.mass_comments_action {padding: 10px; margin: 20px 0 0; text-align: right; background: var(--plum-2); border-radius: var(--r-s);}
.last-comm-link a {display: block; margin-bottom: 12px; font-weight: 600; color: var(--pink);}

.comm-item {margin-bottom: 18px; font-size: 14px; flex-wrap: nowrap; gap: 12px;}
.comm-left {flex: none; width: 44px;}
.comm-img {height: 44px; border-radius: 50%;}
.comm-right {min-width: 0;}
.comm-one > span {margin-right: 12px; color: var(--mute);}
.comm-one > span.comm-author, .comm-one > span.comm-author a {font-weight: 600; color: var(--blush);}
.comm-two {margin: 4px 0 8px;}
.comm-three-left > a, .comm-three-right li a {color: var(--mute);}
.comm-three-right li {display: inline-block; margin-left: 12px;}
.comm-three a:hover {color: var(--pink);}
.comm-rate3 {display: inline-block; margin-right: 12px; white-space: nowrap; color: var(--mute);}
.comm-rate3 a {color: var(--mute);}
.comm-rate3 > span {margin: 0 5px;}
.comm-rate3 > span > span.ratingtypeplus {color: var(--mute);}
.comm-rate3 > span > span.ratingplus {color: var(--stem);}
.comm-rate3 > span > span.ratingminus {color: var(--chili-hi);}

/* LOGIN DIALOG
----------------------------------------------- */
.login-overlay, .mmenu-overlay {position: fixed; z-index: 998; inset: 0; opacity: .7; display: none; background: #000;}
.login-box {
    position: fixed; z-index: 999; left: 50%; top: 50%; transform: translate(-50%, -50%);
    display: none;
    width: min(380px, calc(100% - 32px));
    padding: 30px;
    background: var(--plum);
    border: 1px solid var(--line);
    border-radius: var(--r-m);
}
.login-close {position: absolute; top: 8px; right: 8px; width: 34px; height: 34px; line-height: 34px; text-align: center; font-size: 20px; cursor: pointer; color: var(--mute);}
.login-close:hover {color: var(--blush);}
.login-title {margin-bottom: 14px; text-align: center; font: 700 24px/1.2 var(--display);}
.login-avatar {width: 64px; height: 64px; margin: 0 auto 14px; border-radius: 50%;}
.login-input {margin-bottom: 10px;}
.login-btn button:not(.color-btn):not([class*=fr]) {width: 100%; margin: 6px 0 12px;}
.login-btm a {font-size: 14px; color: var(--pink);}
.login-menu {border-top: 1px solid var(--line); border-left: 1px solid var(--line);}
.login-menu li {width: 50%; text-align: center; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line);}
.login-menu a {display: block; padding: 10px 5px; font-size: 14px;}
.login-menu li .fa {display: none;}
.login-admin {margin: -6px 0 16px; text-align: center;}
.login-soc-title {display: flex; align-items: center; margin: 20px 0 12px; color: var(--mute); font-size: 14px;}
.login-soc-title:before, .login-soc-title:after {content: ''; flex: 1; height: 1px; background: var(--line);}
.login-soc-title:before {margin-right: 12px;}
.login-soc-title:after {margin-left: 12px;}
.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 v2.1.0 */
.owl-carousel {
    opacity: 0;
    overflow: hidden;
    width: 100%;
    -webkit-tap-highlight-color: transparent;
    position: relative;
    z-index: 1;
}

.owl-carousel .owl-stage {
    position: relative;
    -ms-touch-action: pan-Y;
}

.owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}

.owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    -webkit-transform: translate3d(0px, 0px, 0px);
}

.owl-carousel .owl-item {
    position: relative;
    min-height: 1px;
    float: left;
    /* -webkit-backface-visibility: hidden; -webkit-tap-highlight-color: transparent; -webkit-touch-callout: none; */
}

.owl-carousel .owl-item > img {
    display: block;
    width: 100%; /* -webkit-transform-style: preserve-3d; */
}

.owl-carousel .owl-nav.disabled, .owl-carousel .owl-dots.disabled {
    display: none;
}

.owl-carousel .owl-nav .owl-prev, .owl-carousel .owl-nav .owl-next, .owl-carousel .owl-dot {
    cursor: pointer;
    cursor: hand;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.owl-carousel.owl-loaded {
    display: block;
    opacity: 1;
    overflow: visible;
}

.owl-carousel.owl-loading {
    opacity: 0;
    display: block;
}

.owl-carousel.owl-hidden {
    opacity: 0;
}

.owl-carousel.owl-refresh .owl-item {
    display: none;
}

.owl-carousel.owl-drag .owl-item {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.owl-carousel.owl-grab {
    cursor: move;
    cursor: grab;
}

.owl-carousel.owl-rtl {
    direction: rtl;
}

.owl-carousel.owl-rtl .owl-item {
    float: right;
}

.no-js .owl-carousel {
    display: block;
}

.owl-carousel .animated {
    -webkit-animation-duration: 1000ms;
    animation-duration: 1000ms;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

.owl-carousel .owl-animated-in {
    z-index: 0;
}

.owl-carousel .owl-animated-out {
    z-index: 1;
}

.owl-carousel .fadeOut {
    -webkit-animation-name: fadeOut;
    animation-name: fadeOut;
}

@-webkit-keyframes fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

@keyframes fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

.owl-height {
    transition: height 500ms ease-in-out;
}

.owl-carousel .owl-item .owl-lazy {
    opacity: 0;
    transition: opacity 400ms ease;
}

.owl-carousel .owl-item img.owl-lazy {
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
}

.owl-carousel .owl-video-wrapper {
    position: relative;
    height: 100%;
    background: #000;
}

.owl-carousel .owl-video-play-icon {
    position: absolute;
    height: 80px;
    width: 80px;
    left: 50%;
    top: 50%;
    margin-left: -40px;
    margin-top: -40px;
    cursor: pointer;
    z-index: 1;
    background-color: #FFF;
    -webkit-backface-visibility: hidden;
    transition: -webkit-transform 100ms ease;
    transition: transform 100ms ease;
}

.owl-carousel .owl-video-play-icon:hover {
    -webkit-transform: scale(1.3, 1.3);
    -ms-transform: scale(1.3, 1.3);
    transform: scale(1.3, 1.3);
}

.owl-carousel .owl-video-playing .owl-video-tn, .owl-carousel .owl-video-playing .owl-video-play-icon {
    display: none;
}

.owl-carousel .owl-video-tn {
    opacity: 0;
    height: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    transition: opacity 400ms ease;
}

.owl-carousel .owl-video-frame {
    position: relative;
    z-index: 1;
    height: 100%;
    width: 100%;
}

.owl-nav {position: absolute; left: 0; right: 0; top: 0;}
.owl-prev, .owl-next {
    position: absolute; top: -50px; z-index: 30;
    width: 36px; height: 36px; line-height: 36px; text-align: center;
    border-radius: 50%; font-size: 20px; color: var(--blush); background: var(--plum-2);
}
.owl-prev {right: 42px;}
.owl-next {right: 0;}
.owl-prev:hover, .owl-next:hover {color: #fff; background: var(--chili);}
.owl-prev.disabled, .owl-next.disabled {opacity: .4;}
.sect-models .owl-prev, .sect-models .owl-next {top: -54px;}

/* MOBILE PANEL
----------------------------------------------- */
.side-panel {
    position: fixed; z-index: 889; left: -320px; top: 0;
    display: flex; flex-direction: column; gap: 12px;
    width: 280px; height: 100%; padding: 16px;
    overflow: hidden auto;
    background: var(--plum);
    transition: left .25s;
}
.side-panel.active {left: 0;}
.side-panel .hnav {order: 1;}
.side-panel .btn-login {order: 2; width: 100%; text-align: left; padding: 6px 0; color: #fff;}
.side-panel .side-box {order: 3; margin: 0;}
.side-panel .side-bc {max-height: none;}
.side-panel .search-wrap {display: none;}
.side-panel .hmenu {flex-direction: column; align-items: stretch; gap: 4px;}
.close-overlay {position: fixed; left: 0; top: 0; z-index: 888; display: none; width: 100%; height: 100%; background: rgba(0, 0, 0, .6);}
.btn-close {
    position: fixed; z-index: 889; left: 280px; top: -44px;
    width: 44px; height: 44px; line-height: 44px; text-align: center; font-size: 18px; cursor: pointer;
    color: #fff; background: var(--chili); transition: top .25s;
}
.btn-close.active {top: 0;}
body.opened-menu {overflow: hidden; width: 100%; height: 100%;}

/* DLE COMPONENTS (engine.css is built for light backgrounds)
----------------------------------------------- */
.berrors {margin: 0 0 24px; padding: 14px 18px; color: var(--blush); background: var(--plum); border-left: 3px solid var(--chili); border-radius: var(--r-s);}
.vote-title, .findrelated, #dlefastreplycomments, .commentsreplyname {color: var(--blush); background: var(--plum); border-color: var(--line);}
.form-textarea > label {background: var(--plum-2);}
.tableform td, .tableform th {border-top-color: var(--line);}
#searchtable fieldset {border-color: var(--line);}
#searchtable select {background: var(--ink);}
.sres-wrap, .sres-wrap:nth-child(2n) {background: var(--plum); border-color: var(--line);}
.us-prof {background: var(--plum);}
.usp-left, .usp-name, .usp-activ, .usp-meta li:nth-child(2n+1) {background: var(--plum-2);}
.pm-menu a {background: var(--plum-2);}
.pm-menu a:hover, .pm tr:nth-child(1) {background: var(--chili);}
.pm tr:nth-child(2n+2), .userstop tr:nth-child(2n+2) {background: var(--plum);}
.quote, .title_quote {color: var(--mute); background: var(--plum);}
.hide {background: var(--plum); color: var(--mute);}
.bb-editor textarea {background: var(--ink);}
.bb-btn {background: var(--plum-2); border-color: var(--line);}
.bb-btn:hover {background: var(--line);}
.cloud-tags span a:hover {background: var(--chili);}
#searchsuggestions span.seperator a {background: var(--plum-2);}
#loading-layer {background-color: var(--plum-2);}
.ui-dialog {color: var(--blush); background: var(--plum) !important; border: 1px solid var(--line) !important;}
.ui-widget, .ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button {font-family: var(--body);}

/* K2S embed */
.k2s-preview a.play-btn {
	width: 68px;
	height: 48px;
	margin: -24px 0 0 -34px;
	border: none;
	background: rgba(33, 33, 33, 0.8);
	clip-path: path("M66.52,7.74c-0.78-2.93-2.49-5.41-5.42-6.19C55.79,.13,34,0,34,0S12.21,.13,6.9,1.55 C3.97,2.33,2.27,4.81,1.48,7.74C0.06,13.05,0,24,0,24s0.06,10.95,1.48,16.26c0.78,2.93,2.49,5.41,5.42,6.19 C12.21,47.87,34,48,34,48s21.79-0.13,27.1-1.55c2.93-0.78,4.64-3.26,5.42-6.19C67.94,34.95,68,24,68,24S67.94,13.05,66.52,7.74z");
	opacity: 1;
	pointer-events: none;
	transition: 0.1s ease-in;
}

.k2s-preview a.play-btn i {
	margin: 14px 0 0 26px;
}

.k2s-preview .poster:hover + .play-btn {
	background: #f03;
}

.k2s-preview a.download-btn {
	top: 0;
	right: 0;
	border: solid transparent;
	border-width: 10px 20px 0 9px;
}

/* ADAPTIVE
----------------------------------------------- */
@media screen and (max-width: 1320px) {
    :root {--cols: 2;}
    .btn-premium {display: none;}
    .hmenu {font-size: 19px; gap: 14px;}
}

@media screen and (max-width: 1180px) {
    .header > .hnav {display: none;}
    .btn-menu {
        display: block; flex: none;
        width: 42px; height: 42px; line-height: 42px; text-align: center;
        border-radius: var(--r-s); cursor: pointer; font-size: 20px;
        color: #fff; background: var(--plum-2);
    }
}

@media screen and (max-width: 960px) {
    :root {--gutter: 14px; --header-h: 0px;}
    .header {position: relative; flex-wrap: wrap; gap: 8px 14px;}
    .logo {width: 170px; margin-left: -22px;}
    .btn-menu {margin-left: auto;}
    .header > .btn-login, .header > .btn-fav {display: none;}
    .header > .search-wrap {order: 5; flex: 1 0 100%;}
    .cols {display: block;}
    .col-left {display: none;}
    .col-main {padding: 18px var(--gutter) 30px;}
    .ft-grid {grid-template-columns: minmax(0, 1fr);}
    .fplayer .tabs-sel {padding-right: 0;}
    .fcompl {position: static; padding-top: 8px; text-align: right;}
    .fbtns {grid-template-columns: 1fr 1fr;}
}

@media screen and (max-width: 760px) {
    #grid-select {display: none;}
    .fheader h1 {font-size: 28px;}
    .tr-box {height: auto;}
    .comments-tree-list .comments-tree-list {padding-left: 0 !important;}
    .comments-tree-list .comments-tree-list:before, .mass_comments_action {display: none;}
    .dcont button {font-size: 12px; padding: 0 15px !important;}
    .not-logged .login-avatar {display: none;}
    .form-item {padding-left: 0;}
    .form-item > label {float: none; width: auto; margin-left: 0; padding: 0 0 6px;}
}

@media screen and (max-width: 620px) {
    :root {--cols: 1;}
    .sect-header {justify-content: center;}
    .grid-models {grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));}
    .ft-pop {grid-template-columns: 1fr 1fr;}
    .ft-legal {justify-content: center; text-align: center;}
    .vpm-rate {grid-template-columns: 1fr 110px 1fr;}
    .flink-btn {width: 100%; text-align: center;}
    .flink-name:after {display: none;}
    .ui-dialog {width: 100% !important;}
    .upop-left, .upop-right {float: none !important; width: 100% !important; margin: 0; padding: 0 20px;}
    .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;}
}

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