﻿:root {
  --player-color: #ff0000;
  --color-bg: #12131a;
  --color-surface: #181a23;
  --color-surface-elev: #202332;
  --color-primary: #e03636;
  --color-secondary: #50fa7b;
  --color-accent: #ff7979;
  --color-text: #f8f8f2;
  --color-muted: #9aa1b7;
  --color-border: rgba(98, 114, 164, 0.25);
  --color-primary-soft: rgba(189, 147, 249, 0.18);
  --color-primary-strong: #d65661;
  --color-accent-soft: rgba(255, 121, 198, 0.18);
  --color-surface-hover: #24283a;
  --shadow-soft: 0 12px 34px rgba(8, 9, 12, 0.6);
  --shadow-header: 0 10px 28px rgba(8, 9, 12, 0.7);
  --radius-sm: 8px;
  --radius-md: 12px;
}

.watch_history {
  display: none !important;
}

body,
div,
ul,
li,
h1,
h2,
form,
input,
pre,
textarea,
p {
  margin: 0;
  padding: 0
}

input {
  -webkit-appearance: none;
  border-radius: 0
}

fieldset,
img {
  border: 0
}

* {
  outline: none;
  text-decoration: none
}

@media (prefers-reduced-motion: no-preference) {

  a,
  button,
  input,
  select,
  textarea,
  .btn,
  .header .sites__item,
  .search-text input,
  .search-button,
  .search-response,
  .navigation .primary a,
  .sidebar .list a,
  .tags__item,
  .pagination a,
  .pagination span,
  .item,
  .item .title,
  .footer-row-column .links a {
    transition: color 0.25s ease, background-color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease, opacity 0.25s ease
  }
}

img,
object,
embed {
  vertical-align: bottom
}

*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

ol,
ul {
  list-style: none
}

html {
  height: 100%;
  -webkit-text-size-adjust: 100%
}

body {
  font-family: "Plus Jakarta Sans", "Manrope", "Segoe UI", "Helvetica Neue", sans-serif;
  min-height: 100%;
  min-width: 320px;
  position: relative;
  color: var(--color-text);
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  font-weight: 400;
  background: var(--color-bg);
  font-size: 15px;
  line-height: 1.6
}

textarea {
  font-family: "Plus Jakarta Sans", "Manrope", "Segoe UI", "Helvetica Neue", sans-serif
}

.container {
  margin: 0 auto;
  position: relative;
  min-height: 100vh;
  padding-bottom: 20px
}

@media screen and (max-width: 1023px) {
  .container {
    padding-bottom: 20px
  }
}

body:has(.age-verification) .container {
  filter: blur(10px)
}

body:has(.modal-age-verification) {
  overflow: hidden
}

body:has(.modal-age-verification) div:has(>iframe:first-child) {
  filter: blur(10px)
}

.modal-age-verification {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.1);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999999;
  backdrop-filter: blur(10px);
  padding: 20px
}

.content {
  max-width: 1400px;
  padding: 0 16px;
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap
}

.main-container {
  width: 100%
}

.headline {
  display: flex;
  align-items: center;
  margin-bottom: 4px;
  padding: 8px 0 0;
  width: 100%;
  justify-content: space-between
}

@media screen and (max-width: 480px) {
  .headline {
    padding: 0;
    margin: 15px 0
  }
}

.headline h1,
.headline h2 {
  font-weight: 600;
  font-size: 20px;
  line-height: 32px;
  color: var(--color-text);
  font-family: "Plus Jakarta Sans", "Manrope", "Segoe UI", "Helvetica Neue", sans-serif
}

@media screen and (max-width: 480px) {

  .headline h1,
  .headline h2 {
    font-size: 16px;
    line-height: 20px
  }
}

.headline .button,
.headline .more,
.headline .sort,
.headline .filters {
  padding: 0 15px;
  font-size: 14px;
  line-height: 20px;
  height: 32px;
  display: flex;
  align-items: center;
  color: #fff;
  background-color: #222;
  margin-left: 12px;
  transition: ease-out 0.1s
}

.headline .more {
  color: var(--color-primary)
}

@media screen and (max-width: 480px) {
  .headline .more {
    display: none
  }
}

.headline .more span {
  white-space: nowrap
}

.main-content {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  padding: 0
}

.box {
  margin: 0 0 16px;
  width: 100%
}

.logo {
  -webkit-box-ordinal-group: 2;
  -webkit-box-flex: 0
}

.logo a {
  display: flex;
  align-items: center;
  padding: 6px 10px;
  border-radius: var(--radius-md);
  background: var(--color-surface-elev);
  box-shadow: var(--shadow-soft)
}

@media screen and (min-width: 1024px) and (max-width: 1279px) {
  .logo__img {
    width: 124px
  }
}

@media screen and (max-width: 480px) {
  .logo__img {
    display: none
  }
}

.logo__img--mobile {
  display: none
}

@media screen and (max-width: 480px) {
  .logo__img--mobile {
    display: block;
    width: 40px
  }
}

.margin-fix {
  margin: -10px 0 0 -10px;
  font-size: 0;
  line-height: 0
}

@media screen and (max-width: 480px) {
  .margin-fix {
    margin: 0
  }
}

.hidden {
  display: none !important
}

.i-close {
  min-width: 32px;
  min-height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: white;
  color: #A5A1AD;
  background: #131313
}

.no-touch .headline .button:hover,
.no-touch .headline .more:hover,
.no-touch .headline .sort:hover,
.no-touch .headline .filters:hover,
.headline .more:hover {
  background-color: var(--color-primary);
  color: #fff
}

.no-touch .i-close:hover {
  background: var(--color-primary);
  color: #fff
}

.more .i-arrow {
  transform: rotate(270deg);
  margin-left: 4px
}

.more--mobile {
  display: none
}

@media screen and (max-width: 480px) {
  .more--mobile {
    padding: 12px;
    font-size: 18px;
    line-height: 20px;
    display: flex;
    align-items: center;
    color: var(--color-primary);
    background-color: var(--color-surface);
    width: 100%;
    justify-content: center
  }
}

.ft {
  padding: 12px 0;
  margin-top: 24px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  transform-origin: center top
}

@media screen and (max-width: 1285px) {
  .ft {
    transform: scale(.8);
    max-height: calc(258px * .8);
    flex-wrap: nowrap
  }
}

@media screen and (max-width: 1023px) {
  .ft {
    transform: scale(.57);
    max-height: calc(258px * .57);
    flex-wrap: nowrap
  }
}

@media screen and (max-width: 732px) {
  .ft {
    flex-wrap: wrap;
    max-height: calc(2 * 258px * .57)
  }
}

@media screen and (max-width: 480px) {
  .ft {
    transform: scale(.5);
    max-height: calc(2 * 258px * .5)
  }
}

.ft-row {
  display: flex
}

.ft-row div {
  margin: 4px;
  display: flex
}

.sidebar+.main-container .ft {
  flex-wrap: nowrap;
  transform: scale(.9);
  max-height: calc(258px * .7);
  margin-bottom: 20px
}

@media screen and (max-width: 1343px) {
  .sidebar+.main-container .ft {
    transform: scale(.7);
    max-height: calc(258px * .7);
    flex-wrap: nowrap
  }
}

@media screen and (max-width: 1280px) {
  .sidebar+.main-container .ft {
    transform: scale(.7);
    max-height: calc(258px * .7);
    flex-wrap: nowrap
  }
}

@media screen and (max-width: 1150px) {
  .sidebar+.main-container .ft {
    transform: scale(.62);
    max-height: calc(258px * .62);
    flex-wrap: nowrap
  }
}

@media screen and (max-width: 732px) {
  .sidebar+.main-container .ft {
    flex-wrap: wrap;
    max-height: calc(2 * 258px * .62)
  }
}

@media screen and (max-width: 480px) {
  .sidebar+.main-container .ft {
    transform: scale(.55);
    max-height: calc(2 * 258px * .55)
  }
}

#s-suggesters,
.partial-header {
  margin-top: 15px;
  width: 100%
}

#s-suggesters .s-header,
.partial-header .s-header {
  display: flex;
  align-items: center;
  justify-content: space-between
}

#s-suggesters .s-title,
.partial-header .s-title {
  font-weight: 400;
  font-size: 20px;
  line-height: 32px;
  color: #fff;
  font-family: Verdana, Geneva, sans-serif
}

@media screen and (max-width: 480px) {

  #s-suggesters .s-title,
  .partial-header .s-title {
    font-size: 16px
  }
}

#s-suggesters .s-arrows,
.partial-header .s-arrows {
  display: none
}

#s-suggesters .s-arrows button,
.partial-header .s-arrows button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background: none;
  border: none;
  color: #fff
}

#s-suggesters .s-arrows button:disabled,
.partial-header .s-arrows button:disabled {
  opacity: .3
}

@media screen and (max-width: 1040px) {

  #s-suggesters .s-arrows,
  .partial-header .s-arrows {
    display: flex
  }
}

#s-suggesters .s-container,
.partial-header .s-container {
  width: 100%;
  margin-top: 10px;
  overflow-x: scroll;
  display: flex
}

#s-suggesters .s-container::-webkit-scrollbar,
.partial-header .s-container::-webkit-scrollbar {
  display: none
}

#s-suggesters .s-list,
.partial-header .s-list {
  display: flex;
  margin: 0 auto
}

#s-suggesters .s-list>div,
.partial-header .s-list>div {
  flex-shrink: 0;
  margin: 0 5px;
  width: calc(300px * .9);
  height: calc(250px * .9);
  overflow: hidden
}

#s-suggesters .s-list>div:first-of-type,
.partial-header .s-list>div:first-of-type {
  margin-left: 0
}

#s-suggesters .s-list>div:last-of-type,
.partial-header .s-list>div:last-of-type {
  margin-right: 0
}

#s-suggesters .s-list>div>*,
.partial-header .s-list>div>* {
  transform: scale(0.9);
  transform-origin: top left
}

@media screen and (max-width: 1420px) {

  #s-suggesters .s-list>div,
  .partial-header .s-list>div {
    width: calc(300px * .8);
    height: calc(250px * .8);
    margin: 0 2px
  }

  #s-suggesters .s-list>div>*,
  .partial-header .s-list>div>* {
    transform: scale(0.8)
  }
}

@media screen and (max-width: 1260px) {

  #s-suggesters .s-list>div,
  .partial-header .s-list>div {
    width: calc(300px * .7);
    height: calc(250px * .7)
  }

  #s-suggesters .s-list>div>*,
  .partial-header .s-list>div>* {
    transform: scale(0.7)
  }
}

@media screen and (max-width: 1110px) {

  #s-suggesters .s-list>div,
  .partial-header .s-list>div {
    width: calc(300px * .65);
    height: calc(250px * .65)
  }

  #s-suggesters .s-list>div>*,
  .partial-header .s-list>div>* {
    transform: scale(0.65)
  }
}

@media screen and (max-width: 1040px) {

  #s-suggesters .s-list>div,
  .partial-header .s-list>div {
    width: calc(300px * .9);
    height: calc(250px * .9)
  }

  #s-suggesters .s-list>div>*,
  .partial-header .s-list>div>* {
    transform: scale(0.9)
  }
}

@media screen and (max-width: 840px) {

  #s-suggesters .s-list>div,
  .partial-header .s-list>div {
    width: calc(300px * .8);
    height: calc(250px * .8)
  }

  #s-suggesters .s-list>div>*,
  .partial-header .s-list>div>* {
    transform: scale(0.8)
  }
}

@media screen and (max-width: 768px) {

  #s-suggesters .s-list>div,
  .partial-header .s-list>div {
    width: calc(300px * .75);
    height: calc(250px * .75)
  }

  #s-suggesters .s-list>div>*,
  .partial-header .s-list>div>* {
    transform: scale(0.75)
  }
}

@media screen and (max-width: 480px) {

  #s-suggesters .s-list>div,
  .partial-header .s-list>div {
    width: calc(300px * .65);
    height: calc(250px * .65)
  }

  #s-suggesters .s-list>div>*,
  .partial-header .s-list>div>* {
    transform: scale(0.65)
  }
}

@media screen and (max-width: 480px) {

  #s-suggesters .s-list>div,
  .partial-header .s-list>div {
    width: calc(300px * .55);
    height: calc(250px * .55)
  }

  #s-suggesters .s-list>div>*,
  .partial-header .s-list>div>* {
    transform: scale(0.55)
  }
}

@media screen and (max-width: 360px) {

  #s-suggesters .s-list>div,
  .partial-header .s-list>div {
    width: calc(300px * .48);
    height: calc(250px * .48)
  }

  #s-suggesters .s-list>div>*,
  .partial-header .s-list>div>* {
    transform: scale(0.48)
  }
}

.videos-slider {
  position: relative;
  z-index: 10;
  display: flex;
  width: 100%;
  height: min-content;
  padding-bottom: 10px;
  overflow-x: scroll;
  scroll-snap-type: x mandatory
}

.videos-slider__all {
  display: flex;
  justify-content: center;
  margin-top: 22px;
  width: 100%
}

.videos-slider__all span,
.videos-slider__all a {
  display: flex;
  align-items: center;
  padding: 0 24px;
  font-size: 16px;
  height: 40px;
  color: #fff;
  background-color: #e03636;
  transition: ease-out 0.1s;
  cursor: pointer
}

.videos-slider__all span i,
.videos-slider__all a i {
  margin-left: 8px;
  margin-top: 2px;
  font-size: 18px
}

@media screen and (max-width: 480px) {

  .videos-slider__all span,
  .videos-slider__all a {
    width: 100%;
    justify-content: center
  }
}

.videos-slider__all a i {
  transform: rotate(270deg);
  margin-top: 0
}

@media (max-width: 1040px) {
  .videos-slider__nav {
    position: absolute;
    top: -45px;
    right: 0;
    display: flex
  }
}

.videos-slider__btn {
  position: relative;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background: none;
  border: none;
  color: #fff;
  cursor: pointer
}

@media (min-width: 1040px) {
  .videos-slider__btn {
    position: absolute;
    top: 25%;
    padding: 0;
    background: rgba(0, 0, 0, 0.66);
    border-radius: 4px
  }
}

@media (min-width: 1040px) {
  .videos-slider__btn:first-child {
    left: 10px
  }

  .videos-slider__btn:last-child {
    right: 10px
  }
}

.videos-slider__btn:disabled {
  opacity: .3;
  cursor: not-allowed
}

.videos-slider .item {
  width: 20%;
  flex-shrink: 0;
  scroll-snap-align: start;
  padding: 0 5px
}

@media (max-width: 732px) {
  .videos-slider .item {
    width: 45%
  }
}

.videos-slider .item-thumb {
  position: relative;
  background-color: #D4D2D9;
  aspect-ratio: 16/9
}

.videos-slider .item-thumb .duration {
  position: absolute;
  right: 0;
  bottom: 4px;
  padding: 0 4px;
  background: #131313;
  font-size: 12px;
  line-height: 20px;
  color: #D4D2D9
}

.videos-slider .item-thumb img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  backface-visibility: hidden
}

.videos-slider .item-info .title {
  display: flex;
  flex-wrap: wrap;
  max-height: 40px;
  margin: 12px 0 4px;
  overflow: hidden;
  font-weight: 500;
  font-size: 14px;
  line-height: 20px;
  color: #D4D2D9
}

.videos-slider .item-info .subtitle {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  max-height: 40px;
  overflow: hidden;
  gap: 12px
}

.videos-slider .item-info .subtitle>* {
  display: flex;
  align-items: center;
  color: #A5A1AD;
  font-size: 12px;
  line-height: 20px;
  white-space: nowrap
}

.videos-slider .item-info .subtitle>* i {
  font-size: 16px;
  margin-right: 4px
}

.videos-slider .item-info .subtitle .views {
  white-space: nowrap;
  display: flex;
  align-items: center
}

.videos-slider .item-info .subtitle .rating {
  position: relative;
  color: #50DE89
}

.videos-slider__more {
  display: block;
  width: 100%;
  padding-bottom: 56.25%;
  background: #222;
  position: relative
}

.videos-slider__more SPAN {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  color: #FFF;
  text-align: center;
  display: block;
  width: 100%;
  font-weight: bold
}

.videos-slider::-webkit-scrollbar {
  height: 5px;
  cursor: pointer
}

.videos-slider::-webkit-scrollbar-track {
  border-radius: 5px
}

.videos-slider::-webkit-scrollbar-thumb {
  background: #e03636;
  border-radius: 5px
}

.phone .videos-slider {
  scrollbar-width: none
}

.phone .videos-slider::-webkit-scrollbar {
  display: none
}

.scrollbar {
  width: 200px;
  height: 6px;
  margin: 10px auto 0 auto;
  padding-right: 15px;
  background: #222;
  display: none
}

.phone .scrollbar {
  display: block
}

.scrollbar-thumb {
  width: 15px;
  height: 100%;
  position: relative;
  cursor: pointer
}

.scrollbar-thumb:before {
  content: "";
  height: 3px;
  width: 100%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: #e03636;
  border-radius: 5px
}

.fah-btn {
  position: relative;
  margin-bottom: 15px;
  width: 100%
}

.fah-btn__label {
  position: absolute;
  left: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
  font-size: 10px;
  padding: 0 3px
}

@media (max-width: 400px) {
  .fh-button {
    display: none
  }

  .fh-line1,
  .fh-line2,
  .fh-line3,
  .fh-line4 {
    padding: 3px
  }
}


@font-face {
  font-family: "icons";
  src: url("../../fonts/icons.woff2") format("woff2")
}

.i {
  line-height: 1
}

.i:before {
  font-family: icons !important;
  font-style: normal;
  font-weight: normal !important;
  vertical-align: top
}

.i-add:before {
  content: "\f101"
}

.i-arrow:before,
.sidebar h2 a:after,
.pagination__comments .next:before,
.pagination__comments .prev:before,
.pagination ul .next a:before,
.pagination ul .prev a:before,
.sort:before {
  content: "\f102"
}

.i-clock:before {
  content: "\f103"
}

.i-close:before,
.noty_theme__mint.noty_type__error:before,
.noty_theme__mint.noty_type__success:before {
  content: "\f104"
}

.i-comments:before {
  content: "\f105"
}

.i-delete:before {
  content: "\f106"
}

.i-done:before,
.checkbox-wrapper .checkmark:after,
.noty_theme__mint.noty_type__success:before {
  content: "\f107"
}

.i-download:before {
  content: "\f108"
}

.i-filters:before,
.sort:after {
  content: "\f109"
}

.i-flag:before {
  content: "\f10a"
}

.i-history:before {
  content: "\f10b"
}

.i-like:before {
  content: "\f10c"
}

.i-link:before {
  content: "\f10d"
}

.i-play:before {
  content: "\f10e"
}

.i-search:before {
  content: "\f10f"
}

.i-star:before {
  content: "\f110"
}

.i-videos:before {
  content: "\f111"
}

.i-views:before {
  content: "\f112"
}

.i-visibility:before {
  content: "\f113"
}

[class*=" flag-"],
[class^="flag-"] {
  display: inline-flex;
  vertical-align: middle;
  align-self: center;
  width: 18px;
  height: 14px;
  background-size: cover
}

.flag-ad {
  background-image: url("../../../../static/images/flags/ad.svg")
}

.flag-ae {
  background-image: url("../../../../static/images/flags/ae.svg")
}

.flag-af {
  background-image: url("../../../../static/images/flags/af.svg")
}

.flag-ag {
  background-image: url("../../../../static/images/flags/ag.svg")
}

.flag-ai {
  background-image: url("../../../../static/images/flags/ai.svg")
}

.flag-al {
  background-image: url("../../../../static/images/flags/al.svg")
}

.flag-am {
  background-image: url("../../../../static/images/flags/am.svg")
}

.flag-an {
  background-image: url("../../../../static/images/flags/an.svg")
}

.flag-ao {
  background-image: url("../../../../static/images/flags/ao.svg")
}

.flag-aq {
  background-image: url("../../../../static/images/flags/aq.svg")
}

.flag-ar {
  background-image: url("../../../../static/images/flags/ar.svg")
}

.flag-as {
  background-image: url("../../../../static/images/flags/as.svg")
}

.flag-at {
  background-image: url("../../../../static/images/flags/at.svg")
}

.flag-au {
  background-image: url("../../../../static/images/flags/au.svg")
}

.flag-aw {
  background-image: url("../../../../static/images/flags/aw.svg")
}

.flag-ax {
  background-image: url("../../../../static/images/flags/ax.svg")
}

.flag-az {
  background-image: url("../../../../static/images/flags/az.svg")
}

.flag-ba {
  background-image: url("../../../../static/images/flags/ba.svg")
}

.flag-bb {
  background-image: url("../../../../static/images/flags/bb.svg")
}

.flag-bd {
  background-image: url("../../../../static/images/flags/bd.svg")
}

.flag-be {
  background-image: url("../../../../static/images/flags/be.svg")
}

.flag-bf {
  background-image: url("../../../../static/images/flags/bf.svg")
}

.flag-bg {
  background-image: url("../../../../static/images/flags/bg.svg")
}

.flag-bh {
  background-image: url("../../../../static/images/flags/bh.svg")
}

.flag-bi {
  background-image: url("../../../../static/images/flags/bi.svg")
}

.flag-bj {
  background-image: url("../../../../static/images/flags/bj.svg")
}

.flag-bl {
  background-image: url("../../../../static/images/flags/bl.svg")
}

.flag-bm {
  background-image: url("../../../../static/images/flags/bm.svg")
}

.flag-bn {
  background-image: url("../../../../static/images/flags/bn.svg")
}

.flag-bo {
  background-image: url("../../../../static/images/flags/bo.svg")
}

.flag-bq {
  background-image: url("../../../../static/images/flags/bq.svg")
}

.flag-br {
  background-image: url("../../../../static/images/flags/br.svg")
}

.flag-bs {
  background-image: url("../../../../static/images/flags/bs.svg")
}

.flag-bt {
  background-image: url("../../../../static/images/flags/bt.svg")
}

.flag-bv {
  background-image: url("../../../../static/images/flags/bv.svg")
}

.flag-bw {
  background-image: url("../../../../static/images/flags/bw.svg")
}

.flag-by {
  background-image: url("../../../../static/images/flags/by.svg")
}

.flag-bz {
  background-image: url("../../../../static/images/flags/bz.svg")
}

.flag-ca {
  background-image: url("../../../../static/images/flags/ca.svg")
}

.flag-cc {
  background-image: url("../../../../static/images/flags/cc.svg")
}

.flag-cd {
  background-image: url("../../../../static/images/flags/cd.svg")
}

.flag-cf {
  background-image: url("../../../../static/images/flags/cf.svg")
}

.flag-cg {
  background-image: url("../../../../static/images/flags/cg.svg")
}

.flag-ch {
  background-image: url("../../../../static/images/flags/ch.svg")
}

.flag-ci {
  background-image: url("../../../../static/images/flags/ci.svg")
}

.flag-ck {
  background-image: url("../../../../static/images/flags/ck.svg")
}

.flag-cl {
  background-image: url("../../../../static/images/flags/cl.svg")
}

.flag-cm {
  background-image: url("../../../../static/images/flags/cm.svg")
}

.flag-cn {
  background-image: url("../../../../static/images/flags/cn.svg")
}

.flag-co {
  background-image: url("../../../../static/images/flags/co.svg")
}

.flag-cr {
  background-image: url("../../../../static/images/flags/cr.svg")
}

.flag-cu {
  background-image: url("../../../../static/images/flags/cu.svg")
}

.flag-cv {
  background-image: url("../../../../static/images/flags/cv.svg")
}

.flag-cw {
  background-image: url("../../../../static/images/flags/cw.svg")
}

.flag-cx {
  background-image: url("../../../../static/images/flags/cx.svg")
}

.flag-cy {
  background-image: url("../../../../static/images/flags/cy.svg")
}

.flag-cz {
  background-image: url("../../../../static/images/flags/cz.svg")
}

.flag-de {
  background-image: url("../../../../static/images/flags/de.svg")
}

.flag-dj {
  background-image: url("../../../../static/images/flags/dj.svg")
}

.flag-dk {
  background-image: url("../../../../static/images/flags/dk.svg")
}

.flag-dm {
  background-image: url("../../../../static/images/flags/dm.svg")
}

.flag-do {
  background-image: url("../../../../static/images/flags/do.svg")
}

.flag-dz {
  background-image: url("../../../../static/images/flags/dz.svg")
}

.flag-ec {
  background-image: url("../../../../static/images/flags/ec.svg")
}

.flag-ee {
  background-image: url("../../../../static/images/flags/ee.svg")
}

.flag-eg {
  background-image: url("../../../../static/images/flags/eg.svg")
}

.flag-eh {
  background-image: url("../../../../static/images/flags/eh.svg")
}

.flag-er {
  background-image: url("../../../../static/images/flags/er.svg")
}

.flag-es {
  background-image: url("../../../../static/images/flags/es.svg")
}

.flag-et {
  background-image: url("../../../../static/images/flags/et.svg")
}

.flag-eu {
  background-image: url("../../../../static/images/flags/eu.svg")
}

.flag-fi {
  background-image: url("../../../../static/images/flags/fi.svg")
}

.flag-fj {
  background-image: url("../../../../static/images/flags/fj.svg")
}

.flag-fk {
  background-image: url("../../../../static/images/flags/fk.svg")
}

.flag-fm {
  background-image: url("../../../../static/images/flags/fm.svg")
}

.flag-fo {
  background-image: url("../../../../static/images/flags/fo.svg")
}

.flag-fr {
  background-image: url("../../../../static/images/flags/fr.svg")
}

.flag-fx {
  background-image: url("../../../../static/images/flags/fx.svg")
}

.flag-ga {
  background-image: url("../../../../static/images/flags/ga.svg")
}

.flag-gb {
  background-image: url("../../../../static/images/flags/gb.svg")
}

.flag-gd {
  background-image: url("../../../../static/images/flags/gd.svg")
}

.flag-ge {
  background-image: url("../../../../static/images/flags/ge.svg")
}

.flag-gf {
  background-image: url("../../../../static/images/flags/gf.svg")
}

.flag-gg {
  background-image: url("../../../../static/images/flags/gg.svg")
}

.flag-gh {
  background-image: url("../../../../static/images/flags/gh.svg")
}

.flag-gi {
  background-image: url("../../../../static/images/flags/gi.svg")
}

.flag-gl {
  background-image: url("../../../../static/images/flags/gl.svg")
}

.flag-gm {
  background-image: url("../../../../static/images/flags/gm.svg")
}

.flag-gn {
  background-image: url("../../../../static/images/flags/gn.svg")
}

.flag-gp {
  background-image: url("../../../../static/images/flags/gp.svg")
}

.flag-gq {
  background-image: url("../../../../static/images/flags/gq.svg")
}

.flag-gr {
  background-image: url("../../../../static/images/flags/gr.svg")
}

.flag-gs {
  background-image: url("../../../../static/images/flags/gs.svg")
}

.flag-gt {
  background-image: url("../../../../static/images/flags/gt.svg")
}

.flag-gu {
  background-image: url("../../../../static/images/flags/gu.svg")
}

.flag-gw {
  background-image: url("../../../../static/images/flags/gw.svg")
}

.flag-gy {
  background-image: url("../../../../static/images/flags/gy.svg")
}

.flag-hat {
  background-image: url("../../../../static/images/flags/hat.svg")
}

.flag-hat2 {
  background-image: url("../../../../static/images/flags/hat2.svg")
}

.flag-hk {
  background-image: url("../../../../static/images/flags/hk.svg")
}

.flag-hm {
  background-image: url("../../../../static/images/flags/hm.svg")
}

.flag-hn {
  background-image: url("../../../../static/images/flags/hn.svg")
}

.flag-hr {
  background-image: url("../../../../static/images/flags/hr.svg")
}

.flag-ht {
  background-image: url("../../../../static/images/flags/ht.svg")
}

.flag-hu {
  background-image: url("../../../../static/images/flags/hu.svg")
}

.flag-id {
  background-image: url("../../../../static/images/flags/id.svg")
}

.flag-ie {
  background-image: url("../../../../static/images/flags/ie.svg")
}

.flag-il {
  background-image: url("../../../../static/images/flags/il.svg")
}

.flag-im {
  background-image: url("../../../../static/images/flags/im.svg")
}

.flag-in {
  background-image: url("../../../../static/images/flags/in.svg")
}

.flag-io {
  background-image: url("../../../../static/images/flags/io.svg")
}

.flag-iq {
  background-image: url("../../../../static/images/flags/iq.svg")
}

.flag-ir {
  background-image: url("../../../../static/images/flags/ir.svg")
}

.flag-is {
  background-image: url("../../../../static/images/flags/is.svg")
}

.flag-it {
  background-image: url("../../../../static/images/flags/it.svg")
}

.flag-je {
  background-image: url("../../../../static/images/flags/je.svg")
}

.flag-jm {
  background-image: url("../../../../static/images/flags/jm.svg")
}

.flag-jo {
  background-image: url("../../../../static/images/flags/jo.svg")
}

.flag-jp {
  background-image: url("../../../../static/images/flags/jp.svg")
}

.flag-ke {
  background-image: url("../../../../static/images/flags/ke.svg")
}

.flag-kg {
  background-image: url("../../../../static/images/flags/kg.svg")
}

.flag-kh {
  background-image: url("../../../../static/images/flags/kh.svg")
}

.flag-ki {
  background-image: url("../../../../static/images/flags/ki.svg")
}

.flag-km {
  background-image: url("../../../../static/images/flags/km.svg")
}

.flag-kn {
  background-image: url("../../../../static/images/flags/kn.svg")
}

.flag-kp {
  background-image: url("../../../../static/images/flags/kp.svg")
}

.flag-kr {
  background-image: url("../../../../static/images/flags/kr.svg")
}

.flag-kw {
  background-image: url("../../../../static/images/flags/kw.svg")
}

.flag-ky {
  background-image: url("../../../../static/images/flags/ky.svg")
}

.flag-kz {
  background-image: url("../../../../static/images/flags/kz.svg")
}

.flag-la {
  background-image: url("../../../../static/images/flags/la.svg")
}

.flag-lb {
  background-image: url("../../../../static/images/flags/lb.svg")
}

.flag-lc {
  background-image: url("../../../../static/images/flags/lc.svg")
}

.flag-li {
  background-image: url("../../../../static/images/flags/li.svg")
}

.flag-lk {
  background-image: url("../../../../static/images/flags/lk.svg")
}

.flag-lr {
  background-image: url("../../../../static/images/flags/lr.svg")
}

.flag-ls {
  background-image: url("../../../../static/images/flags/ls.svg")
}

.flag-lt {
  background-image: url("../../../../static/images/flags/lt.svg")
}

.flag-lu {
  background-image: url("../../../../static/images/flags/lu.svg")
}

.flag-lv {
  background-image: url("../../../../static/images/flags/lv.svg")
}

.flag-ly {
  background-image: url("../../../../static/images/flags/ly.svg")
}

.flag-ma {
  background-image: url("../../../../static/images/flags/ma.svg")
}

.flag-mc {
  background-image: url("../../../../static/images/flags/mc.svg")
}

.flag-md {
  background-image: url("../../../../static/images/flags/md.svg")
}

.flag-me {
  background-image: url("../../../../static/images/flags/me.svg")
}

.flag-mf {
  background-image: url("../../../../static/images/flags/mf.svg")
}

.flag-mg {
  background-image: url("../../../../static/images/flags/mg.svg")
}

.flag-mh {
  background-image: url("../../../../static/images/flags/mh.svg")
}

.flag-mk {
  background-image: url("../../../../static/images/flags/mk.svg")
}

.flag-ml {
  background-image: url("../../../../static/images/flags/ml.svg")
}

.flag-mm {
  background-image: url("../../../../static/images/flags/mm.svg")
}

.flag-mn {
  background-image: url("../../../../static/images/flags/mn.svg")
}

.flag-mo {
  background-image: url("../../../../static/images/flags/mo.svg")
}

.flag-mp {
  background-image: url("../../../../static/images/flags/mp.svg")
}

.flag-mq {
  background-image: url("../../../../static/images/flags/mq.svg")
}

.flag-mr {
  background-image: url("../../../../static/images/flags/mr.svg")
}

.flag-ms {
  background-image: url("../../../../static/images/flags/ms.svg")
}

.flag-mt {
  background-image: url("../../../../static/images/flags/mt.svg")
}

.flag-mu {
  background-image: url("../../../../static/images/flags/mu.svg")
}

.flag-mv {
  background-image: url("../../../../static/images/flags/mv.svg")
}

.flag-mw {
  background-image: url("../../../../static/images/flags/mw.svg")
}

.flag-mx {
  background-image: url("../../../../static/images/flags/mx.svg")
}

.flag-my {
  background-image: url("../../../../static/images/flags/my.svg")
}

.flag-mz {
  background-image: url("../../../../static/images/flags/mz.svg")
}

.flag-na {
  background-image: url("../../../../static/images/flags/na.svg")
}

.flag-nc {
  background-image: url("../../../../static/images/flags/nc.svg")
}

.flag-ne {
  background-image: url("../../../../static/images/flags/ne.svg")
}

.flag-nf {
  background-image: url("../../../../static/images/flags/nf.svg")
}

.flag-ng {
  background-image: url("../../../../static/images/flags/ng.svg")
}

.flag-ni {
  background-image: url("../../../../static/images/flags/ni.svg")
}

.flag-nl {
  background-image: url("../../../../static/images/flags/nl.svg")
}

.flag-no {
  background-image: url("../../../../static/images/flags/no.svg")
}

.flag-np {
  background-image: url("../../../../static/images/flags/np.svg")
}

.flag-nr {
  background-image: url("../../../../static/images/flags/nr.svg")
}

.flag-nu {
  background-image: url("../../../../static/images/flags/nu.svg")
}

.flag-nz {
  background-image: url("../../../../static/images/flags/nz.svg")
}

.flag-om {
  background-image: url("../../../../static/images/flags/om.svg")
}

.flag-pa {
  background-image: url("../../../../static/images/flags/pa.svg")
}

.flag-pe {
  background-image: url("../../../../static/images/flags/pe.svg")
}

.flag-pf {
  background-image: url("../../../../static/images/flags/pf.svg")
}

.flag-pg {
  background-image: url("../../../../static/images/flags/pg.svg")
}

.flag-ph {
  background-image: url("../../../../static/images/flags/ph.svg")
}

.flag-pk {
  background-image: url("../../../../static/images/flags/pk.svg")
}

.flag-pl {
  background-image: url("../../../../static/images/flags/pl.svg")
}

.flag-pm {
  background-image: url("../../../../static/images/flags/pm.svg")
}

.flag-pn {
  background-image: url("../../../../static/images/flags/pn.svg")
}

.flag-pr {
  background-image: url("../../../../static/images/flags/pr.svg")
}

.flag-ps {
  background-image: url("../../../../static/images/flags/ps.svg")
}

.flag-pt {
  background-image: url("../../../../static/images/flags/pt.svg")
}

.flag-pw {
  background-image: url("../../../../static/images/flags/pw.svg")
}

.flag-py {
  background-image: url("../../../../static/images/flags/py.svg")
}

.flag-qa {
  background-image: url("../../../../static/images/flags/qa.svg")
}

.flag-re {
  background-image: url("../../../../static/images/flags/re.svg")
}

.flag-ro {
  background-image: url("../../../../static/images/flags/ro.svg")
}

.flag-rs {
  background-image: url("../../../../static/images/flags/rs.svg")
}

.flag-ru {
  background-image: url("../../../../static/images/flags/ru.svg")
}

.flag-rw {
  background-image: url("../../../../static/images/flags/rw.svg")
}

.flag-sa {
  background-image: url("../../../../static/images/flags/sa.svg")
}

.flag-sb {
  background-image: url("../../../../static/images/flags/sb.svg")
}

.flag-sc {
  background-image: url("../../../../static/images/flags/sc.svg")
}

.flag-sd {
  background-image: url("../../../../static/images/flags/sd.svg")
}

.flag-se {
  background-image: url("../../../../static/images/flags/se.svg")
}

.flag-sg {
  background-image: url("../../../../static/images/flags/sg.svg")
}

.flag-sh {
  background-image: url("../../../../static/images/flags/sh.svg")
}

.flag-si {
  background-image: url("../../../../static/images/flags/si.svg")
}

.flag-sj {
  background-image: url("../../../../static/images/flags/sj.svg")
}

.flag-sk {
  background-image: url("../../../../static/images/flags/sk.svg")
}

.flag-sl {
  background-image: url("../../../../static/images/flags/sl.svg")
}

.flag-sm {
  background-image: url("../../../../static/images/flags/sm.svg")
}

.flag-sn {
  background-image: url("../../../../static/images/flags/sn.svg")
}

.flag-so {
  background-image: url("../../../../static/images/flags/so.svg")
}

.flag-sr {
  background-image: url("../../../../static/images/flags/sr.svg")
}

.flag-ss {
  background-image: url("../../../../static/images/flags/ss.svg")
}

.flag-st {
  background-image: url("../../../../static/images/flags/st.svg")
}

.flag-sv {
  background-image: url("../../../../static/images/flags/sv.svg")
}

.flag-sx {
  background-image: url("../../../../static/images/flags/sx.svg")
}

.flag-sy {
  background-image: url("../../../../static/images/flags/sy.svg")
}

.flag-sz {
  background-image: url("../../../../static/images/flags/sz.svg")
}

.flag-tc {
  background-image: url("../../../../static/images/flags/tc.svg")
}

.flag-td {
  background-image: url("../../../../static/images/flags/td.svg")
}

.flag-tf {
  background-image: url("../../../../static/images/flags/tf.svg")
}

.flag-tg {
  background-image: url("../../../../static/images/flags/tg.svg")
}

.flag-th {
  background-image: url("../../../../static/images/flags/th.svg")
}

.flag-tj {
  background-image: url("../../../../static/images/flags/tj.svg")
}

.flag-tk {
  background-image: url("../../../../static/images/flags/tk.svg")
}

.flag-tl {
  background-image: url("../../../../static/images/flags/tl.svg")
}

.flag-tm {
  background-image: url("../../../../static/images/flags/tm.svg")
}

.flag-tn {
  background-image: url("../../../../static/images/flags/tn.svg")
}

.flag-to {
  background-image: url("../../../../static/images/flags/to.svg")
}

.flag-tr {
  background-image: url("../../../../static/images/flags/tr.svg")
}

.flag-tt {
  background-image: url("../../../../static/images/flags/tt.svg")
}

.flag-tv {
  background-image: url("../../../../static/images/flags/tv.svg")
}

.flag-tw {
  background-image: url("../../../../static/images/flags/tw.svg")
}

.flag-tz {
  background-image: url("../../../../static/images/flags/tz.svg")
}

.flag-ua {
  background-image: url("../../../../static/images/flags/ua.svg")
}

.flag-ug {
  background-image: url("../../../../static/images/flags/ug.svg")
}

.flag-um {
  background-image: url("../../../../static/images/flags/um.svg")
}

.flag-us {
  background-image: url("../../../../static/images/flags/us.svg")
}

.flag-uy {
  background-image: url("../../../../static/images/flags/uy.svg")
}

.flag-uz {
  background-image: url("../../../../static/images/flags/uz.svg")
}

.flag-va {
  background-image: url("../../../../static/images/flags/va.svg")
}

.flag-vc {
  background-image: url("../../../../static/images/flags/vc.svg")
}

.flag-ve {
  background-image: url("../../../../static/images/flags/ve.svg")
}

.flag-vg {
  background-image: url("../../../../static/images/flags/vg.svg")
}

.flag-vi {
  background-image: url("../../../../static/images/flags/vi.svg")
}

.flag-vn {
  background-image: url("../../../../static/images/flags/vn.svg")
}

.flag-vu {
  background-image: url("../../../../static/images/flags/vu.svg")
}

.flag-wf {
  background-image: url("../../../../static/images/flags/wf.svg")
}

.flag-ws {
  background-image: url("../../../../static/images/flags/ws.svg")
}

.flag-xmas {
  background-image: url("../../../../static/images/flags/xmas.svg")
}

.flag-xmas2 {
  background-image: url("../../../../static/images/flags/xmas2.svg")
}

.flag-ye {
  background-image: url("../../../../static/images/flags/ye.svg")
}

.flag-yt {
  background-image: url("../../../../static/images/flags/yt.svg")
}

.flag-za {
  background-image: url("../../../../static/images/flags/za.svg")
}

.flag-zm {
  background-image: url("../../../../static/images/flags/zm.svg")
}

.flag-zw {
  background-image: url("../../../../static/images/flags/zw.svg")
}

.flag-zz {
  background-image: url("../../../../static/images/flags/zz.svg")
}

.flag-en {
  background-image: url("../../../../static/images/flags/en.svg")
}

.flag-da {
  background-image: url("../../../../static/images/flags/da.svg")
}

.flag-el {
  background-image: url("../../../../static/images/flags/el.svg")
}

.flag-cs {
  background-image: url("../../../../static/images/flags/cs.svg")
}

.flag-ur {
  background-image: url("../../../../static/images/flags/ur.svg")
}

.flag-hi {
  background-image: url("../../../../static/images/flags/hi.svg")
}

.flag-ja {
  background-image: url("../../../../static/images/flags/ja.svg")
}

.btn {
  display: flex;
  gap: 8px;
  align-items: center;
  height: 40px;
  padding: 0 16px;
  line-height: 20px;
  color: #fff;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  border: none;
  cursor: pointer;
  border-radius: 999px;
  font-weight: 600;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease, color 0.2s ease
}

.btn:hover {
  transform: translateY(-1px)
}

.btn:focus-visible {
  box-shadow: 0 0 0 3px var(--color-primary-soft)
}

.btn-accent {
  background: var(--color-primary)
}

.btn-accent:hover {
  background: var(--color-primary-strong);
  box-shadow: 0 10px 20px rgba(189, 147, 249, 0.35)
}

.btn-block {
  width: 100%;
  justify-content: center
}

.btn-upload {
  justify-content: center;
  background: var(--color-primary-soft);
  color: var(--color-primary);
  transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease
}

.btn-upload:hover {
  color: #fff;
  background: var(--color-primary);
  box-shadow: var(--shadow-soft)
}

.btn--load {
  position: relative
}

.btn--load:after {
  content: "";
  width: 20px;
  height: 20px;
  border: 5px solid #fff;
  border-radius: 100%;
  border-top: 5px solid transparent;
  animation: load-animate infinite linear 1s;
  position: absolute;
  top: calc(50% - 10px);
  left: calc(50% - 10px)
}

.btn--load span {
  visibility: hidden
}

.btn-accent[disabled] {
  opacity: 0.3
}

@keyframes load-animate {
  0% {
    transform: rotate(0deg)
  }

  50% {
    transform: rotate(180deg);
    opacity: 0.35
  }

  100% {
    transform: rotate(360deg)
  }
}

.redirect-btn {
  display: none;
  z-index: 200;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent
}

.header {
  z-index: 20;
  display: flex;
  flex-direction: column;
  background: var(--color-bg)
}

.header__left {
  display: flex;
  align-items: center;
  gap: 12px
}

@media (max-width: 1023px) {
  .header__left {
    gap: 8px;
    flex-wrap: nowrap
  }

  .header__left .dropdown {
    display: none
  }
}

.header__left .dropdown-link {
  color: var(--color-text) !important
}

@media (min-width: 1024px) {
  .header .dropdown-lang {
    display: none
  }
}

.header .content {
  align-items: center;
  justify-content: space-between;
  overflow: visible;
  gap: 16px
}

@media screen and (max-width: 1023px) {
  .header .content {
    gap: 6px
  }
}

.header__top {
  padding: 14px 0;
  display: flex;
  position: relative
}

.header__top .btn-upload {
  min-width: 42px
}

@media screen and (min-width: 1024px) and (max-width: 1279px) {
  .header__top .btn-upload {
    margin-right: 0
  }
}

@media screen and (max-width: 1023px) {
  .header__top .btn-upload {
    min-width: 36px;
    padding: 9px;
    font-size: 16px
  }
}

@media screen and (max-width: 480px) {
  .header__top {
    height: 60px;
    padding: 12px 10px
  }
}

.header__top .btn-icon {
  font-size: 18px;
  padding: 12px;
  color: var(--color-muted);
  min-width: 42px;
  border-radius: 12px;
  background: var(--color-surface-elev)
}

.header__top .btn-icon:hover {
  color: var(--color-text);
  box-shadow: var(--shadow-soft)
}

.header .sites__list {
  display: flex;
  align-items: center;
  padding: 8px 0;
  justify-content: space-between;
  width: 100%;
  overflow: auto
}

.header .sites__list::-webkit-scrollbar {
  height: 7px;
  background: transparent
}

.header .sites__list::-webkit-scrollbar-thumb {
  background: rgba(148, 163, 184, 0.3);
  border-radius: 5px
}

.header .sites__list :first-child {
  margin-left: 0
}

.header .sites__item {
  font-size: 14px;
  line-height: 20px;
  color: var(--color-muted);
  background: var(--color-surface-elev);
  padding: 6px 14px;
  text-align: center;
  margin: 0 4px;
  flex-grow: 1;
  flex-shrink: 0;
  white-space: nowrap;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-md);
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease
}

.header .sites__item IMG {
  height: 12px;
  margin-right: 7px
}

.header .sites__item svg {
  margin-right: 4px
}

@media screen and (max-width: 1023px) {
  .header .sites__item {
    line-height: 30px
  }
}

.header .sites__all {
  white-space: nowrap;
  color: var(--color-primary)
}

.no-touch .header .sites__item:hover {
  color: var(--color-text);
  background: var(--color-primary-soft)
}

.no-touch .header .sites__list::-webkit-scrollbar {
  display: block;
  height: 5px;
  background: var(--color-surface)
}

.no-touch .header .sites__list::-webkit-scrollbar-thumb {
  display: block;
  background: rgba(148, 163, 184, 0.25);
  border-radius: 2px
}

.search {
  max-width: 360px;
  flex: 1 1;
  display: flex;
  justify-content: center
}

@media screen and (max-width: 1023px) {
  .search {
    max-width: none;
    flex: 1 1 0%;
    position: static
  }

  .search form {
    position: static;
    display: flex;
    align-items: center;
    gap: 8px
  }

  .search-text {
    display: block;
    flex: 1
  }

  .search-button {
    position: absolute;
    right: 0;
    top: 0;
    width: 40px;
    height: 100%;
    flex-shrink: 0;
    border-radius: 0;
    background: transparent
  }

  .search-close {
    display: none
  }

  .search.search--open {
    position: absolute;
    left: 0;
    top: 100%;
    right: 0;
    z-index: 100;
    background: var(--color-bg);
    display: block;
    padding: 10px 12px;
    max-width: none;
    border-bottom: 1px solid var(--color-border);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    animation: searchSlideDown 0.2s ease
  }

  @keyframes searchSlideDown {
    from {
      opacity: 0;
      transform: translateY(-10px)
    }

    to {
      opacity: 1;
      transform: translateY(0)
    }
  }

  .search.search--open form {
    display: flex;
    align-items: center;
    gap: 8px;
    position: relative
  }

  .search.search--open .search-text {
    display: block;
    flex: 1
  }

  .search.search--open .search-button {
    position: static;
    flex-shrink: 0
  }

  .search.search--open .search-close {
    display: flex;
    position: static;
    flex-shrink: 0
  }

  .search-close {
    display: none;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: none;
    background: transparent;
    color: var(--color-muted);
    cursor: pointer;
    font-size: 18px;
    flex-shrink: 0
  }
}

@media screen and (min-width: 1024px) {
  .search-close {
    display: none
  }
}

.search form {
  flex: 0 1 420px;
  position: relative
}

.search-text input {
  width: 100%;
  border: 0;
  background: var(--color-surface-elev);
  color: var(--color-text);
  padding: 8px 52px 8px 18px;
  font-size: 14px;
  line-height: 20px;
  height: 42px;
  border-radius: 999px;
  border: 1px solid rgba(148, 163, 184, 0.2)
}

.search-text input:focus {
  outline: none;
  box-shadow: 0 0 0 3px var(--color-primary-soft);
  border-color: rgba(189, 147, 249, 0.5)
}

.search-button {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 40px;
  overflow: hidden;
  cursor: pointer;
  border: none;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  color: var(--color-muted)
}

@media screen and (max-width: 1023px) {
  .search-button {
    position: absolute;
    right: 0;
    top: 0;
    width: 40px;
    height: 100%;
    border-radius: 0;
    background: transparent;
    flex-shrink: 0
  }
}


.search-response {
  position: absolute;
  background: var(--color-surface-elev);
  width: 100%;
  z-index: 100;
  display: none;
  border-radius: var(--radius-md);
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow-soft);
  transition: opacity 0.2s ease, transform 0.2s ease
}

.search-response p {
  display: flex;
  color: var(--color-accent);
  padding: 0 16px;
  align-items: center;
  height: 40px;
  text-transform: capitalize
}

.search-response a {
  display: block;
  text-overflow: ellipsis;
  overflow: hidden;
  color: var(--color-text);
  padding: 4px 16px;
  align-items: center;
  white-space: nowrap
}

.search-response__list {
  display: none
}

.search-response--open {
  display: block;
  opacity: 1;
  transform: translateY(0)
}

.no-touch .search-button:hover {
  color: var(--color-primary)
}

.no-touch .search-response a:hover {
  background: var(--color-primary-soft)
}

.telegram-join-container {
  margin-top: 16px;
  display: flex;
  justify-content: center
}

.telegram-join-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 18px;
  background: linear-gradient(120deg, var(--color-primary), var(--color-accent));
  color: #fff;
  text-align: center;
  text-decoration: none;
  border-radius: 999px;
  font-weight: 600;
  font-size: 14px;
  transition: transform 0.2s ease, opacity 0.2s ease, box-shadow 0.3s ease;
  animation: gentle-glow 3s ease-in-out 0s infinite alternate;
  white-space: nowrap;
  box-shadow: 0 6px 16px rgba(189, 147, 249, 0.35)
}

.telegram-join-btn:hover {
  transform: translateY(-2px);
  opacity: 0.95
}

@keyframes gentle-glow {
  0% {
    box-shadow: 0 4px 14px rgba(189, 147, 249, 0.35), 0 4px 14px rgba(255, 121, 198, 0.25);
  }

  100% {
    box-shadow: 0 8px 20px rgba(189, 147, 249, 0.5), 0 8px 20px rgba(255, 121, 198, 0.35);
  }
}

#search-keywords {
  text-align: left;
  margin-top: 16px
}

.search-suggestion {
  display: none
}

@media screen and (max-width: 1023px) {
  .header nav {
    flex: none
  }
}

.navigation {
  display: flex;
  align-items: center;
  width: 100%;
  margin: 0 auto;
  position: relative
}

.navigation .button {
  display: none;
  width: 100%;
  padding: 8px 0;
  margin: 0;
  border: none;
  background: transparent;
  cursor: pointer
}

@media screen and (max-width: 1023px) {
  .navigation .button {
    display: block
  }
}

.navigation .button .icon {
  display: inline-block;
  position: relative;
  font-size: 24px
}

@media screen and (max-width: 1023px) {
  .navigation {
    padding: 0
  }
}

.navigation .primary {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  text-align: center
}

@media (min-width: 1023px) {
  .navigation .primary {
    gap: 15px
  }
}

.navigation .primary ul {
  display: flex;
  gap: 15px
}

@media screen and (max-width: 1023px) {
  .navigation .primary ul {
    gap: 0;
    margin-left: 0;
    flex-direction: column;
    align-items: center
  }
}

.navigation .primary .button {
  display: none
}

@media screen and (max-width: 1023px) {
  .navigation .primary .button {
    display: inline-flex;
    top: 30px;
    right: 10px;
    width: auto;
    position: absolute;
    padding: 0
  }
}

@media screen and (max-width: 480px) {
  .navigation .primary .button {
    top: 16px
  }
}

@media screen and (max-width: 1023px) {
  .navigation .primary {
    opacity: 0;
    visibility: hidden;
    overflow-x: scroll;
    position: fixed;
    flex-direction: column;
    justify-content: center;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    background-color: var(--color-surface);
    padding: 10px;
    transform: translateX(-100%);
    box-shadow: var(--shadow-header);
    transition: transform 0.3s, opacity 0.3s, visibility 0.3s;
    z-index: 1000019
  }
}

.navigation .primary li:first-child {
  flex: 0 0 50px;
  align-self: stretch;
  margin-left: 0
}

.navigation .primary a {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 17px 4px;
  position: relative;
  transition: color 0.3s;
  white-space: nowrap;
  flex: 1 1;
  line-height: 20px;
  color: var(--color-text);
  font-weight: 600
}

@media (min-width: 1024px) {
  .navigation .primary a::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 6px;
    height: 2px;
    background: var(--color-primary);
    opacity: 0;
    transform: scaleX(0.6);
    transition: opacity 0.2s ease, transform 0.2s ease;
    border-radius: 999px;
  }

  .navigation .primary a:hover::after,
  .navigation .primary a:focus-visible::after {
    opacity: 1;
    transform: scaleX(1);
  }
}

@media screen and (max-width: 1023px) {
  .navigation .primary a {
    font-size: 18px;
    line-height: 18px
  }
}

@media screen and (max-width: 1023px) and (max-height: 667px) {
  .navigation .primary a {
    font-size: 16px;
    line-height: 16px;
    padding: 14px !important
  }
}

.navigation .primary a img {
  height: 20px
}

@media screen and (max-width: 1023px) {
  .navigation .primary a img {
    height: 24px
  }
}

.navigation .primary a .tikporn-tube-logo {
  width: 25px;
  height: 25px
}

.navigation .primary--upload {
  display: none
}

@media screen and (max-width: 1023px) {
  .navigation .primary--upload {
    display: block
  }

  .navigation .primary--upload a {
    color: var(--color-primary)
  }
}

@media screen and (max-width: 1023px) {
  .navigation .primary--link {
    order: 1
  }
}

@media screen and (max-width: 1023px) {
  .navigation .primary--link a {
    display: flex;
    align-items: center
  }
}

.navigation.open .primary {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
  padding-bottom: 50px
}

@media (min-width: 600px) {
  .navigation.open .primary {
    padding-top: 60px
  }
}

/* Mobile Sidebar Menu Styles */
@media screen and (max-width: 1023px) {
  .navigation .primary {
    align-items: flex-start;
    justify-content: flex-start;
    padding: 60px 15px 20px;
    max-width: 280px;
    background: var(--color-surface);
  }

  .mobile-menu-header {
    display: flex;
    width: 100%;
    padding: 10px 0 20px;
    border-bottom: 1px solid var(--color-border);
    margin-bottom: 15px;
  }

  .mobile-menu-header .mobile-logo img {
    height: 32px;
    width: auto;
  }

  .mobile-menu-item {
    width: 100%;
    margin: 0;
    flex: none !important;
  }

  .mobile-menu-item a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 15px !important;
    font-size: 15px !important;
    color: var(--color-text);
    border-radius: 8px;
    transition: all 0.2s ease;
    width: 100%;
    background: transparent;
  }

  .mobile-menu-item a:hover,
  .mobile-menu-item a:active {
    background: var(--color-primary-soft);
  }

  .mobile-menu-item a i {
    font-size: 18px;
    width: 24px;
    text-align: center;
    color: var(--color-muted);
  }

  .mobile-menu-section {
    width: 100%;
    padding: 20px 15px 10px;
    margin-top: 10px;
    border-top: 1px solid var(--color-border);
    flex: none !important;
  }

  .mobile-menu-section .section-title {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--color-muted);
    font-weight: 600;
  }

  .mobile-menu-category {
    padding-left: 10px;
  }

  .mobile-menu-category a {
    padding: 10px 15px !important;
    font-size: 14px !important;
    color: var(--color-muted);
  }

  .mobile-menu-category a:hover {
    color: var(--color-text);
  }

  .navigation .primary .button#menuClose {
    position: absolute;
    top: 12px;
    right: 12px;
    background: transparent;
    border: none;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    cursor: pointer;
    opacity: 0.7;
    transition: opacity 0.2s;
  }

  .navigation .primary .button#menuClose .icon {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .navigation .primary .button#menuClose .i-close {
    font-size: 20px;
    color: var(--color-text);
  }

  .navigation .primary .button#menuClose:hover {
    opacity: 1;
  }

  .desktop-nav {
    display: none !important;
  }
}

@media screen and (min-width: 1024px) {

  .mobile-menu-header,
  .mobile-menu-item,
  .mobile-menu-section,
  .mobile-menu-category {
    display: none !important;
  }

  .desktop-nav-wrapper {
    flex: 1;
    display: flex;
    justify-content: flex-end;
  }

  .desktop-nav {
    display: flex !important;
    gap: 15px;
  }
}

@media screen and (max-width: 1023px) {

  .desktop-nav-wrapper,
  .desktop-nav {
    display: none !important;
  }
}

/* ================================================
   SITE FOOTER
   ================================================ */
.site-footer {
  width: 100%;
  background: var(--color-surface);
  position: relative;
  margin-top: auto;
  overflow: hidden
}

.site-footer__container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 52px 24px 0
}

/* Grid: 4 columns, first wider for brand */
.site-footer__grid {
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr 1fr;
  gap: 40px 32px;
  padding-bottom: 44px
}

/* Brand column */
.site-footer__col--brand {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.site-footer__logo {
  display: inline-flex;
  cursor: pointer
}

.site-footer__logo img {
  height: 32px;
  width: auto;
  object-fit: contain
}

.site-footer__logo:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 4px;
  border-radius: 4px
}

.site-footer__tagline {
  color: var(--color-muted);
  font-size: 13px;
  line-height: 1.65;
  margin: 0;
  max-width: 240px
}

.site-footer__badges {
  display: flex;
  align-items: center;
  gap: 12px
}

.site-footer__rta {
  display: inline-flex;
  opacity: 0.55;
  transition: opacity 0.2s ease;
  cursor: pointer
}

.site-footer__rta:hover {
  opacity: 1
}

.site-footer__rta:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 4px;
  border-radius: 4px
}

.site-footer__age-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 22px;
  border-radius: 4px;
  background: rgba(213, 68, 108, 0.15);
  border: 1px solid rgba(213, 68, 108, 0.35);
  color: var(--color-primary);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1
}

/* Regular columns */
.site-footer__col {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.site-footer__col-title {
  color: var(--color-text);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin: 0;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--color-border)
}

.site-footer__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 2px
}

.site-footer__list-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--color-muted);
  font-size: 13.5px;
  line-height: 1.5;
  padding: 5px 0;
  transition: color 0.18s ease, padding-left 0.18s ease;
  cursor: pointer
}

.site-footer__list-link::before {
  content: '';
  display: block;
  width: 0;
  height: 1px;
  background: var(--color-primary);
  transition: width 0.18s ease;
  flex-shrink: 0
}

.site-footer__list-link:hover {
  color: var(--color-text);
  padding-left: 4px
}

.site-footer__list-link:hover::before {
  width: 10px
}

.site-footer__list-link:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
  border-radius: 2px;
  color: var(--color-text)
}

/* Bottom bar */
.site-footer__bottom {
  border-top: 1px solid var(--color-border);
  padding: 20px 0 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap
}

.site-footer__copy {
  color: var(--color-muted);
  font-size: 12.5px;
  line-height: 1.5;
  margin: 0
}

.site-footer__disclaimer {
  color: rgba(154, 161, 183, 0.55);
  font-size: 11.5px;
  line-height: 1.5;
  margin: 0;
  text-align: right
}

/* Tablet: 2-column grid */
@media screen and (max-width: 1023px) {
  .site-footer__grid {
    grid-template-columns: 1fr 1fr;
    gap: 32px 24px
  }

  .site-footer__col--brand {
    grid-column: 1 / -1
  }

  .site-footer__tagline {
    max-width: 100%
  }
}

/* Mobile: single column */
@media screen and (max-width: 600px) {
  .site-footer__container {
    padding: 36px 16px 0
  }

  .site-footer__grid {
    grid-template-columns: 1fr;
    gap: 28px;
    padding-bottom: 32px
  }

  .site-footer__col--brand {
    grid-column: auto
  }

  .site-footer__tagline {
    max-width: 100%
  }

  .site-footer__bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px
  }

  .site-footer__disclaimer {
    text-align: left
  }
}

.sidebar+.main-container:not(.sites) .list-videos .item {
  width: calc(100%/4 - 10px)
}

@media (max-width: 860px) {
  .sidebar+.main-container:not(.sites) .list-videos .item {
    width: calc(100%/3 - 10px)
  }
}

@media (max-width: 580px) {
  .sidebar+.main-container:not(.sites) .list-videos .item {
    width: calc(100%/2 - 10px)
  }
}

@media screen and (max-width: 480px) {
  .sidebar+.main-container:not(.sites) .list-videos .item {
    width: 100%
  }
}

.sidebar+.main-container {
  width: calc(100% - 231px);
  padding: 0 0 20px 0
}

@media screen and (max-width: 1023px) {
  .sidebar+.main-container {
    width: 100%
  }
}

.sidebar {
  width: 206px;
  margin: 8px 0 0 16px;
  order: 2;
  height: 100%;
  border-left: none;
  padding: 0;
  background: transparent;
  border-radius: 0
}

@media screen and (max-width: 1023px) {
  .sidebar {
    display: none
  }
}

.sidebar__item:last-child {
  position: sticky;
  top: 32px
}

.sidebar__item {
  background: var(--color-surface);
  border-radius: var(--radius-md);
  padding: 8px 0;
  margin-bottom: 16px
}

.sidebar .list {
  margin-bottom: 0
}

.sidebar .list li {
  display: flex;
  padding: 0 12px;
  position: relative
}

.sidebar .checkbox-wrapper {
  display: none
}

.sidebar .list li .rating {
  margin-left: 8px;
  color: var(--color-muted)
}

.sidebar .list a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: var(--color-text);
  font-size: 14px;
  position: relative;
  cursor: pointer;
  min-height: 32px;
  padding: 10px 12px 10px 14px;
  border-radius: 0;
  border-bottom: 1px solid var(--color-border);
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease
}

.sidebar .list li:last-child a {
  border-bottom: none
}

.sidebar__category--active::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  bottom: 8px;
  width: 2px;
  background: var(--color-primary);
  border-radius: 999px
}

.sidebar__category--active .sidebar__category-link {
  color: var(--color-primary);
  background: var(--color-surface-elev)
}

.sidebar .headline {
  padding: 0;
  margin: 0 0 6px
}

.sidebar h2 {
  width: 100%;
  text-decoration: none
}

.sidebar h2 a {
  color: var(--color-muted);
  font-weight: 600;
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  padding: 10px 16px;
  width: 100%;
  display: flex;
  align-items: center;
  text-decoration: none;
  position: relative
}

.sidebar h2 a:after {
  font-family: "icons";
  color: var(--color-primary);
  transform: rotate(270deg);
  margin-left: 4px;
  display: inline-block
}

.no-touch .sidebar a:hover {
  color: var(--color-text);
  background: var(--color-surface-elev);
  border-color: rgba(189, 147, 249, 0.4)
}

.no-touch .sidebar a:hover:after {
  color: var(--color-text)
}

.list-models .item,
.list-videos .item {
  display: inline-block;
  text-align: left;
  background: transparent;
  vertical-align: top;
  cursor: pointer;
  margin: 16px 0 0 10px;
  width: calc(100%/4 - 10px)
}

@media (max-width: 860px) {

  .list-models .item,
  .list-videos .item {
    width: calc(100%/3 - 10px)
  }
}

@media (max-width: 580px) {

  .list-models .item,
  .list-videos .item {
    width: calc(100%/2 - 10px)
  }
}

@media screen and (max-width: 480px) {

  .list-models .item,
  .list-videos .item {
    margin: 0;
    width: 100%;
    margin-bottom: 16px
  }
}

@media (max-width: 1024px) {
  .sites .list-videos .margin-fix .item {
    width: calc(100%/4 - 10px)
  }
}

@media (max-width: 860px) {
  .sites .list-videos .margin-fix .item {
    width: calc(100%/3 - 10px)
  }

  .sites .list-videos .margin-fix .item:nth-child(4) {
    display: none
  }
}

@media (max-width: 630px) {
  .sites .list-videos .margin-fix .item {
    width: calc(100%/2 - 10px)
  }

  .sites .list-videos .margin-fix .item:nth-child(4) {
    display: inline-block
  }
}

@media screen and (max-width: 480px) {
  .sites .list-videos .margin-fix .item {
    margin: 0;
    width: 100%;
    margin-bottom: 16px
  }
}

.list-videos .img {
  width: 100%;
  padding-bottom: 56.25%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.item .title {
  display: flex;
  flex-wrap: wrap;
  margin: 12px 0 4px;
  overflow: hidden;
  font-weight: 500;
  font-size: 14px;
  line-height: 20px;
  color: #D4D2D9;
  max-height: 40px;
  transition: color 0.2s ease;
  cursor: pointer
}

.item .title:hover {
  color: var(--color-primary)
}

.item .wrap {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  max-height: 40px;
  overflow: hidden
}

.item .wrap div {
  position: relative;
  color: #A5A1AD;
  font-size: 12px;
  line-height: 20px;
  display: flex;
  align-items: center;
  margin-right: 12px
}

.item .wrap div i {
  margin-right: 4px
}

.item .wrap .views {
  white-space: nowrap;
  display: flex;
  align-items: center
}

.item .wrap .views i {
  font-size: 16px
}

.item .wrap .rating {
  position: relative
}

.item .wrap .rating--accent {
  color: #50DE89
}

.item .wrap .rating .negative:before {
  transform: rotate(180deg)
}

.item .positive,
.item .negative {
  color: #D4D2D9
}

.item .img {
  position: relative;
  background-color: #D4D2D9
}

.item .img .duration,
.item .img .videos {
  position: absolute;
  background: #131313;
  right: 0;
  bottom: 4px;
  font-size: 12px;
  line-height: 20px;
  color: #D4D2D9
}

.item .img .country {
  position: absolute;
  right: 8px;
  top: 8px;
  width: 16px
}

.item .img .country img {
  max-width: 100%;
  min-width: 100%;
  max-height: 12px
}

.item .img .watch_later,
.item .img .watch_later--remove {
  position: absolute;
  right: 8px;
  top: 8px;
  width: 24px;
  height: 24px;
  display: none;
  align-items: center;
  justify-content: center;
  background: #222;
  font-size: 14px;
  color: #fff
}

@media screen and (max-width: 1023px) {
  .item .img .watch_later--remove {
    display: flex
  }
}

.item .img .duration {
  padding: 0 4px
}

.item .img .thumb {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  backface-visibility: hidden
}

.item .img .no-thumb {
  display: block;
  height: 100%;
  background-size: 6rem
}

.item .videos {
  padding-right: 4px;
  display: flex;
  align-items: center
}

.item .videos i {
  margin-right: 4px
}

.item .models {
  position: relative;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis
}

.item .models__item {
  font-size: 12px;
  line-height: 20px;
  color: #A5A1AD;
  margin-right: 4px
}

.item .models__item span {
  color: #A5A1AD !important
}

.no-thumb {
  background: #D4D2D9
}

.no-touch .item .models__item:hover {
  color: #e03636
}

.no-touch .item:hover .watch_later,
.no-touch .item:hover .watch_later--remove {
  display: flex
}

.dropdown {
  position: relative
}

@media (min-width: 1024px) {
  .dropdown__gender {
    display: none
  }
}

@media (min-width: 1023px) {
  .dropdown:hover .dropdown-content {
    animation: slidedown 0.3s;
    display: block
  }
}

.dropdown a {
  cursor: pointer
}

@media screen and (max-width: 1023px) {
  .dropdown:not(.dropdown--mobile)-link {
    display: none !important
  }
}

@media screen and (max-width: 1023px) {
  .dropdown-link {
    display: flex !important;
    justify-content: center
  }
}

.dropdown--open .i-arrow {
  transform: rotate(180deg)
}

.dropdown .i-arrow {
  display: none
}

@media screen and (max-width: 1023px) {
  .dropdown .i-arrow {
    display: inline-flex;
    margin-left: 5px
  }
}

.dropdown-content {
  display: none;
  position: absolute;
  background: #222;
  z-index: 100
}

@media screen and (max-width: 1023px) {
  .dropdown--mobile .dropdown-content {
    position: relative;
    display: block;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s
  }
}

@media (max-width: 1023px) {
  .dropdown .dropdown-list {
    max-height: 320px
  }
}

@media (max-width: 480px) {
  .dropdown .dropdown-list {
    max-height: 180px
  }
}

@media screen and (max-width: 1023px) {
  .dropdown--open .dropdown-content {
    display: block;
    position: relative;
    max-height: 320px
  }
}

@media screen and (max-width: 1023px) {
  .dropdown:not(.dropdown--mobile) .dropdown-content {
    display: block;
    position: relative;
    margin-left: 0;
    background: transparent
  }
}

.dropdown-list {
  min-width: 120px;
  max-height: 520px;
  overflow-y: scroll
}

.dropdown-list__gender {
  color: #fff
}

.dropdown-list__gender:hover {
  background: var(--color-primary)
}

.dropdown-list::-webkit-scrollbar {
  width: 4px;
  background: #131313
}

.dropdown-list::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 2px
}

.dropdown-list a,
.dropdown-list span {
  display: flex;
  gap: 8px;
  text-align: left;
  padding: 16px !important;
  cursor: pointer
}

@media screen and (max-width: 1023px) {

  .dropdown-list a,
  .dropdown-list span {
    text-align: center
  }
}

.dropdown--right .dropdown-content {
  right: 0
}

.no-touch .dropdown-list a:hover,
.no-touch .dropdown-list span:hover {
  background: var(--color-surface-hover)
}

.pagination {
  text-align: center
}

.pagination__comments .next,
.pagination__comments .prev {
  background: #e03636;
  position: relative;
  height: 36px;
  padding: 0;
  min-width: 38px;
  max-width: 38px
}

.pagination__comments .next:before,
.pagination__comments .prev:before {
  font-family: "icons";
  speak: none;
  font-style: normal;
  font-weight: bold;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  position: absolute;
  z-index: 1;
  font-size: 20px;
  will-change: transform;
  transition: transform 0.3s;
  color: #fff;
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center
}

.pagination__comments .next:before {
  transform: rotate(270deg)
}

.pagination__comments .prev:before {
  transform: rotate(90deg)
}

.pagination__comments .pagination-container {
  display: flex;
  gap: 4px
}

.pagination-holder {
  display: inline-block;
  vertical-align: bottom
}

.pagination ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center
}

@media screen and (max-width: 480px) {

  .pagination ul .first,
  .pagination ul .last,
  .pagination ul .jump {
    display: none
  }
}

.pagination ul .next,
.pagination ul .prev {
  background: #e03636
}

.pagination ul .next a,
.pagination ul .prev a {
  position: relative;
  height: 36px;
  padding: 0
}

.pagination ul .next a:before,
.pagination ul .prev a:before {
  font-family: "icons";
  speak: none;
  font-style: normal;
  font-weight: bold;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  position: absolute;
  z-index: 1;
  font-size: 20px;
  will-change: transform;
  transition: transform 0.3s;
  color: #fff;
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center
}

.pagination ul .next a:before {
  transform: rotate(270deg)
}

.pagination ul .prev a:before {
  transform: rotate(90deg)
}

.pagination li {
  min-width: 38px;
  margin: 1.5px
}

@media screen and (max-width: 480px) {
  .pagination li a {
    max-width: 50px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
  }
}

.pagination a,
.pagination span {
  display: block;
  font-size: 16px;
  line-height: 20px;
  padding: 8px 12px;
  color: #D4D2D9
}

@media screen and (max-width: 480px) {

  .pagination a,
  .pagination span {
    padding: 7px 10px
  }
}

.no-touch .pagination a:hover {
  color: var(--color-primary);
  background: var(--color-surface-hover)
}

.no-touch .pagination a:hover:before {
  color: var(--color-primary)
}

.no-touch .next:hover,
.no-touch .prev:hover {
  background: var(--color-surface-hover)
}

.no-touch .next:hover:before,
.no-touch .prev:hover:before {
  color: var(--color-primary)
}

.no-touch .pagination-numbers {
  display: flex
}

.no-touch .pagination-numbers span:hover {
  color: var(--color-primary);
  background: var(--color-surface-hover)
}

.no-touch .pagination-numbers span:hover:before {
  color: var(--color-primary)
}

.no-touch .pagination-numbers .next:hover,
.no-touch .pagination-numbers .prev:hover {
  background: var(--color-surface-hover)
}

.pagination .page-current a,
.pagination .page-current span {
  color: #D4D2D9;
  background-color: #222;
  pointer-events: none
}

.pagination-numbers {
  display: flex;
  gap: 4px
}

.pagination-numbers span {
  cursor: pointer
}

.pagination-numbers .page-current {
  color: #D4D2D9;
  background-color: #222;
  pointer-events: none
}

.sort {
  position: relative;
  min-width: 140px;
  padding-right: 30px !important
}

@media screen and (max-width: 480px) {
  .sort {
    padding: 0 !important
  }
}

.sort:after {
  font-family: "icons";
  font-size: 18px;
  position: absolute;
  display: none
}

@media screen and (max-width: 480px) {
  .sort:after {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%
  }
}

@media screen and (max-width: 480px) {
  .sort {
    min-width: 32px;
    min-height: 32px;
    padding: 0
  }
}

.sort strong {
  display: block;
  text-align: center;
  font-weight: normal
}

@media screen and (max-width: 480px) {
  .sort strong {
    display: none
  }
}

@media screen and (max-width: 480px) {
  .sort__full {
    background: #131313;
    padding: 8px 10px !important
  }

  .sort__full:after {
    display: none
  }
}

@media screen and (max-width: 480px) {
  .sort__full strong {
    display: block
  }
}

.sort ul {
  position: absolute;
  top: 100%;
  width: 100%;
  right: 0;
  z-index: 100;
  background: #222;
  display: none;
  transition: opacity 0.3s, visibility 0.3s;
  max-height: 320px;
  overflow: auto
}

.sort ul .input {
  background: rgba(255, 255, 255, 0.1)
}

.sort ul::-webkit-scrollbar {
  width: 4px;
  background: #222
}

.sort ul::-webkit-scrollbar-thumb {
  background: var(--color-primary);
  opacity: 0.1
}

@media screen and (max-width: 480px) {
  .sort ul {
    min-width: 180px
  }
}

.sort ul a {
  display: block;
  padding: 8px 4px;
  text-align: center;
  background: transparent;
  transition: background 0.3s, color 0.3s;
  color: #D4D2D9
}

@media screen and (max-width: 480px) {
  .sort ul a {
    font-size: 16px;
    padding: 12px 8px
  }
}

.sort ul li:first-child {
  margin-top: 5px
}

.sort:before {
  font-family: "icons";
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%) rotate(0);
  z-index: 1;
  will-change: transform;
  transition: transform 0.3s;
  color: var(--color-primary)
}

@media screen and (max-width: 480px) {
  .sort:before {
    content: none
  }
}

.sort :last-child {
  margin: 0
}

.sort--open ul {
  display: block
}

.sort--open:before {
  transform: translateY(-50%) rotate(180deg);
  color: #fff
}

.no-touch .sort {
  cursor: pointer
}

.no-touch .sort ul a:hover {
  color: var(--color-primary);
  background: var(--color-surface-hover);
  cursor: pointer
}

.no-touch .sort ul li:first-child {
  margin-top: 0
}

.checkbox-wrapper {
  display: flex;
  position: relative;
  cursor: pointer;
  user-select: none;
  align-items: center;
  margin-right: 8px
}

.checkbox-wrapper input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0
}

.checkmark {
  height: 14px;
  width: 14px;
  border: 1px solid #fff;
  position: relative
}

.checkmark:after {
  content: "";
  position: absolute;
  display: none
}

.checkbox-wrapper input:checked~.checkmark:after {
  display: flex
}

.checkbox-wrapper .checkmark:after {
  font-family: "icons";
  color: #e03636;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%
}

.modal-container {
  display: flex;
  position: fixed;
  z-index: 10000000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(8, 9, 12, 0.72);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  backdrop-filter: blur(10px);
  transition: opacity 0.25s ease, visibility 0.25s ease
}

.modal.open .modal-container {
  opacity: 1;
  visibility: visible;
  pointer-events: auto
}

.modal-wrapper {
  min-width: 290px;
  margin: auto;
  background: var(--color-surface);
  padding: 32px 28px 28px;
  position: relative;
  align-self: center;
  border-radius: var(--radius-md);
  border: none;
  box-shadow: 0 30px 70px rgba(8, 9, 12, 0.65);
  transform: translateY(12px) scale(0.98);
  opacity: 0;
  transition: transform 0.25s ease, opacity 0.25s ease
}

.modal.open .modal-wrapper {
  transform: translateY(0) scale(1);
  opacity: 1
}

.modal-wrapper.report {
  padding-top: 45px
}

.modal-close {
  position: absolute;
  top: 6px;
  right: 6px;
  cursor: pointer;
  background: var(--color-surface-elev);
  display: flex;
  border-radius: 999px;
  width: 32px;
  height: 32px;
  align-items: center;
  justify-content: center
}

.modal-close .i-close {
  margin-right: 0
}

.modal-title {
  font-size: 16px;
  line-height: 22px;
  color: var(--color-text);
  text-align: center;
  margin-bottom: 18px
}

.auth-actions {
  display: flex;
  align-items: center;
  gap: 8px
}

.btn-ghost {
  background: transparent;
  color: var(--color-text);
  border: 1px solid transparent
}

.btn-ghost:hover {
  background: var(--color-surface-hover);
  border-color: transparent
}

.auth-modal .modal-wrapper {
  width: 380px;
  max-width: 92vw;
  padding: 30px 26px 24px
}

.auth-form {
  display: flex;
  flex-direction: column;
  gap: 14px
}

.auth-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  color: var(--color-muted);
  font-size: 12px;
  letter-spacing: 0.02em
}

.auth-field input {
  width: 100%;
  height: 42px;
  padding: 0 14px;
  background: var(--color-surface-elev);
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  color: var(--color-text)
}

.auth-field input:focus {
  border-color: transparent;
  box-shadow: 0 0 0 2px var(--color-primary-soft)
}

.auth-alt {
  margin-top: 14px;
  text-align: center;
  color: var(--color-muted);
  font-size: 13px
}

.auth-feedback {
  min-height: 18px;
  margin-bottom: 12px;
  text-align: center;
  font-size: 13px;
  color: var(--color-muted)
}

.auth-feedback--error {
  color: var(--color-accent)
}

.auth-feedback--success {
  color: var(--color-secondary)
}

.auth-switch {
  background: transparent;
  border: none;
  color: var(--color-primary);
  cursor: pointer;
  font-weight: 600
}

.auth-turnstile {
  display: flex;
  justify-content: center
}

@media screen and (max-width: 1023px) {
  .auth-actions {
    display: flex;
    flex-shrink: 0
  }

  .auth-actions .auth-modal .modal-button {
    display: none
  }

  .auth-actions:has(.user-menu) .auth-modal {
    display: none
  }

  .user-menu__name,
  .user-menu__trigger .i {
    display: none
  }

  .user-menu__trigger {
    padding: 3px;
    background: transparent;
    border: none
  }

  .header__left {
    flex: 1;
    min-width: 0;
    gap: 8px
  }

  .header__history-btn {
    display: none
  }

  .search {
    max-width: none;
    flex: 1
  }
}

/* Mobile Auth Icon Dropdown (Guest) */
.mobile-auth-icon {
  display: none;
  position: relative
}

@media screen and (max-width: 1023px) {
  .mobile-auth-icon {
    display: block;
    flex-shrink: 0
  }
}

.mobile-auth-icon__trigger {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  background: var(--color-surface-elev);
  border: 1px solid transparent;
  border-radius: 50%;
  color: var(--color-muted);
  cursor: pointer;
  font-size: 16px;
  transition: background 0.15s, color 0.15s
}

.mobile-auth-icon__trigger:hover,
.mobile-auth-icon__trigger.active {
  background: var(--color-surface-hover);
  color: var(--color-text)
}

.mobile-auth-icon__dropdown {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  min-width: 160px;
  background: var(--color-surface-elev);
  border-radius: var(--radius-md);
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.4);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-8px);
  transition: opacity 0.15s, visibility 0.15s, transform 0.15s;
  z-index: 1000;
  overflow: hidden;
  padding: 6px 0
}

.mobile-auth-icon__dropdown.open {
  opacity: 1;
  visibility: visible;
  transform: translateY(0)
}

.mobile-auth-icon__item {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 11px 16px;
  background: transparent;
  border: none;
  color: var(--color-text);
  font-size: 14px;
  cursor: pointer;
  transition: background 0.12s;
  white-space: nowrap
}

.mobile-auth-icon__item:hover {
  background: var(--color-surface-hover)
}

.mobile-auth-icon__item .i {
  font-size: 14px;
  opacity: 0.6;
  width: 18px;
  text-align: center
}

.mobile-auth-icon__item--accent {
  color: var(--color-primary)
}

.mobile-auth-icon__item--accent .i {
  opacity: 1
}

.auth-mobile-btn {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 15px;
  background: var(--color-surface-elev);
  color: var(--color-text);
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  font-size: 15px;
  cursor: pointer
}

.auth-mobile-btn--accent {
  background: var(--color-primary);
  color: #fff;
  border-color: transparent
}

.auth-mobile-btn--danger {
  color: #ff6b6b;
  border-color: rgba(255, 107, 107, 0.15)
}

.mobile-user-info {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 4px 0;
  color: var(--color-text);
  font-weight: 600;
  font-size: 14px
}

/* User Menu */
.user-menu {
  position: relative
}

.user-menu__trigger {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 4px 10px 4px 4px;
  background: var(--color-surface-elev);
  border: 1px solid transparent;
  border-radius: 100px;
  color: var(--color-text);
  cursor: pointer;
  font-size: 13px;
  font-weight: 500;
  transition: background 0.15s
}

.user-menu__trigger:hover {
  background: var(--color-surface-hover)
}

.user-menu__trigger .i {
  font-size: 10px;
  opacity: 0.5
}

.user-menu__avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: var(--color-primary);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  flex-shrink: 0
}

.user-menu__avatar--lg {
  width: 40px;
  height: 40px;
  font-size: 16px
}

.user-menu__name {
  max-width: 100px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap
}

.user-menu__dropdown {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  min-width: 240px;
  background: var(--color-surface-elev);
  border-radius: var(--radius-md);
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.4);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-8px);
  transition: opacity 0.15s, visibility 0.15s, transform 0.15s;
  z-index: 1000;
  overflow: hidden
}

.user-menu__dropdown.open {
  opacity: 1;
  visibility: visible;
  transform: translateY(0)
}

.user-menu__header {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px
}

.user-menu__info {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0
}

.user-menu__info-name {
  font-weight: 600;
  font-size: 14px;
  color: var(--color-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap
}

.user-menu__info-email {
  font-size: 12px;
  color: var(--color-muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap
}

.user-menu__divider {
  height: 1px;
  background: rgba(255, 255, 255, 0.06)
}

.user-menu__item {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 11px 16px;
  background: transparent;
  border: none;
  color: var(--color-text);
  font-size: 13px;
  cursor: pointer;
  text-decoration: none;
  transition: background 0.12s
}

.user-menu__item:hover {
  background: var(--color-surface-hover)
}

.user-menu__item .i {
  font-size: 14px;
  opacity: 0.6;
  width: 18px;
  text-align: center
}

.user-menu__item--danger {
  color: #ff6b6b
}

.user-menu__item--danger .i {
  opacity: 1
}

.modal-content {
  display: flex
}

.modal-content--ios-downloader {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-direction: column
}

.modal-content--ios-downloader #download-ios {
  width: max-content;
  background: #000;
  color: #fff;
  display: flex;
  align-items: center;
  gap: 10px;
  outline: none;
  border: none;
  padding: 10px 15px;
  border-radius: 5px
}

.modal-content--ios-downloader .apple-logo {
  width: 20px;
  height: 25px
}

.no-touch .modal-close:hover {
  background: var(--color-primary)
}

.no-touch .modal-close:hover svg path {
  fill: #fff
}

.noty_layout_mixin,
#noty_layout__topRight {
  position: fixed;
  margin: 0;
  padding: 0;
  z-index: 10000001;
  transform: translateZ(0) scale(1, 1);
  backface-visibility: hidden;
  -webkit-font-smoothing: subpixel-antialiased;
  filter: blur(0);
  -webkit-filter: blur(0);
  max-width: 90%
}

#noty_layout__topRight {
  top: 20px;
  right: 20px;
  width: 325px
}

.noty_progressbar {
  display: none
}

.noty_has_timeout.noty_has_progressbar .noty_progressbar {
  display: none
}

.noty_bar {
  -webkit-backface-visibility: hidden;
  -webkit-transform: translate(0, 0) translateZ(0) scale(1, 1);
  transform: translate(0, 0) scale(1, 1);
  -webkit-font-smoothing: subpixel-antialiased;
  overflow: hidden
}

.noty_effects_open {
  opacity: 0;
  transform: translate(50%);
  animation: noty_anim_in 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  animation-fill-mode: forwards
}

.noty_effects_close {
  animation: noty_anim_out 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  animation-fill-mode: forwards
}

.noty_fix_effects_height {
  animation: noty_anim_height 75ms ease-out
}

.noty_close_with_click {
  cursor: pointer
}

@keyframes noty_anim_in {
  100% {
    transform: translate(0);
    opacity: 1
  }
}

@keyframes noty_anim_out {
  100% {
    transform: translate(50%);
    opacity: 0
  }
}

@keyframes noty_anim_height {
  100% {
    height: 0
  }
}

.noty_theme__mint.noty_bar {
  margin: 4px 0;
  overflow: hidden;
  border-radius: 2px;
  position: relative
}

.noty_theme__mint.noty_bar .noty_body {
  padding: 0 20px;
  font-size: 14px;
  height: 58px;
  display: flex;
  align-items: center
}

.noty_theme__mint.noty_bar .noty_buttons {
  padding: 10px
}

.noty_theme__mint.noty_type__error,
.noty_theme__mint.noty_type__info,
.noty_theme__mint.noty_type__information,
.noty_theme__mint.noty_type__success {
  background-color: #222;
  color: #fff;
  font-size: 14px;
  line-height: 20px
}

.noty_theme__mint.noty_type__error,
.noty_theme__mint.noty_type__success {
  padding-left: 42px
}

.noty_theme__mint.noty_type__error:before,
.noty_theme__mint.noty_type__success:before {
  font-family: "icons";
  position: absolute;
  left: 26px;
  height: 100%;
  display: flex;
  align-items: center
}

.noty_theme__mint.noty_type__success:before {
  font-family: "icons"
}

.filters {
  cursor: pointer;
  padding: 5px 16px
}

.filters i {
  font-size: 16px
}

@media screen and (max-width: 480px) {
  .filters i {
    font-size: 18px
  }
}

.filters__gender {
  display: flex;
  background: #131313;
  overflow: hidden
}

.filters__gender a {
  display: flex;
  height: 40px;
  flex: 1;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 14px;
  line-height: 20px
}

.filters__gender--current {
  color: #fff !important;
  background: rgba(255, 255, 255, 0.1) !important;
  cursor: default
}

.filters__wrapper {
  width: 100%
}

.filters__wrapper .sort {
  margin: 0;
  background-color: #131313
}

.filters__label {
  font-size: 12px;
  line-height: 20px;
  color: #A5A1AD;
  margin-bottom: 8px;
  margin-top: 12px
}

.filters__button--label {
  margin-left: 6px
}

@media screen and (max-width: 480px) {
  .filters__button--label {
    display: none
  }
}

.no-touch .filters:hover {
  cursor: pointer
}

.no-touch .filters__gender a:hover {
  background: var(--color-primary)
}

.form__wrapper {
  padding: 20px 0;
  background: #131313
}

.form__images {
  margin-top: 3px;
  display: grid;
  display: -ms-grid;
  grid-template-columns: repeat(4, 1fr);
  -ms-grid-column: 2;
  grid-gap: 3px;
  margin-bottom: 12px
}

.form__images--item {
  padding-top: 75%;
  background-color: #222;
  border: 2px solid transparent;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat
}

.form__images--item-active {
  border: 2px solid #e03636
}

.form__support {
  width: 290px;
  margin: 0 auto;
  background: #222
}

.form__support .input,
.form__support .textarea,
.form__support .radio {
  background: #131313
}

.form__support .input,
.form__support .textarea {
  font-size: 15px;
  border-radius: 0
}

.form__support--success {
  text-align: center;
  color: #50DE89
}

.form__support .btn {
  font-size: 15px
}

.input,
.textarea,
.radio {
  background: #222;
  outline: none;
  height: 40px;
  width: 100%;
  border: none;
  padding: 0 16px;
  margin-bottom: 12px;
  color: #fff
}

.textarea {
  height: auto !important;
  resize: none;
  padding: 16px
}

.label {
  font-size: 12px;
  line-height: 20px;
  color: #A5A1AD;
  margin-bottom: 8px
}

.input-file {
  width: 100%;
  color: #fff
}

.input-file::-webkit-file-upload-button {
  visibility: hidden
}

.input-file::before {
  content: attr(data-label);
  display: inline-flex;
  padding: 5px 8px 32px;
  outline: none;
  white-space: nowrap;
  -webkit-user-select: none;
  font-style: normal;
  font-size: 24px;
  line-height: 32px;
  height: 140px;
  width: 100%;
  font-family: Verdana, Geneva, sans-serif;
  font-weight: 500;
  border: 3px solid transparent;
  align-items: flex-end;
  justify-content: center;
  background: #222 url("../../../../static/images/upload.svg?v2") center 20px no-repeat;
  cursor: pointer
}

@media screen and (max-width: 480px) {
  .input-file::before {
    background: #222;
    height: 80px;
    padding: 0;
    align-items: center
  }
}

.input-file--active::before {
  border: 3px solid #e03636
}

.categories {
  background: #222;
  outline: none;
  max-height: 200px;
  width: 100%;
  padding: 12px;
  overflow: auto;
  margin-bottom: 12px;
  display: grid;
  grid-template-columns: repeat(3, 1fr)
}

@media screen and (max-width: 480px) {
  .categories {
    grid-template-columns: 1fr
  }
}

.categories .checkbox-wrapper .checkmark:after {
  border-color: #e03636
}

.categories .checkbox-wrapper:hover input~.checkmark {
  border: none
}

.categories__item {
  display: flex;
  margin-bottom: 12px;
  color: #fff;
  font-size: 14px;
  align-items: center
}

.categories__item .checkmark {
  border: none;
  height: 24px;
  width: 24px;
  background: #131313;
  display: flex;
  align-items: center
}

.categories::-webkit-scrollbar {
  display: none
}

.upload-bar {
  width: 0;
  height: 4px;
  background-color: #e03636;
  position: relative;
  top: 4px
}

.select {
  min-width: 20px;
  min-height: 20px;
  cursor: pointer;
  padding: 5px 16px;
  display: flex;
  background-color: #131313;
  align-items: center;
  color: #fff
}

.tags {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 40px;
  width: 100%
}

.tags--center {
  justify-content: center
}

.tags__item {
  background: #222;
  padding: 4px 12px;
  margin: 0 4px 4px 0;
  display: flex;
  align-items: center;
  font-size: 14px;
  line-height: 20px;
  color: #D4D2D9
}

.tags__item:hover {
  color: var(--color-primary);
  background: var(--color-surface-hover)
}

.seo {
  padding: 40px 0;
}

@media screen and (max-width: 1023px) {
  .seo {
    padding-top: 20px
  }
}

.seo h2 {
  color: #fff;
  font-weight: 400;
  font-size: 20px;
  line-height: 32px;
  font-family: Verdana, Geneva, sans-serif;
  margin-bottom: 12px
}

.seo p {
  line-height: 20px;
  color: #A5A1AD
}

.seo a {
  color: #e03636
}

.radio {
  width: 100%;
  position: relative;
  padding-left: 44px;
  margin-bottom: 12px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  align-items: center;
  display: flex;
  color: #A5A1AD
}

.radio input {
  position: absolute;
  opacity: 0;
  cursor: pointer
}

.radio_checkmark {
  position: absolute;
  left: 0;
  height: 20px;
  width: 20px;
  background-color: #222;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 12px
}

.radio:hover {
  color: #fff
}

.radio_checkmark:after {
  content: "";
  position: absolute;
  display: none
}

.radio input:checked~.radio_checkmark:after {
  display: block
}

.radio .radio_checkmark:after {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #e03636
}

.age-verification {
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0.8);
  z-index: 9999
}

.age-verification__modal {
  margin: auto;
  padding: 15px;
  border-radius: 3px;
  background: #131313;
  max-width: 400px;
  color: #fff
}

.age-verification__content {
  display: flex;
  align-items: center;
  font-size: 15px
}

.age-verification__18 {
  height: 40px;
  width: 40px;
  border-radius: 50%;
  background: #e03636;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-right: 10px
}

.age-verification__btn {
  padding: 7px 15px;
  font-weight: 600;
  font-size: 14px;
  line-height: 20px;
  color: #fff;
  background-color: #e03636;
  cursor: pointer;
  border-radius: 4px;
  margin-top: 10px;
  border: none;
  width: 100%
}

.comments {
  margin-bottom: 40px;
  max-width: 50%
}

@media screen and (max-width: 480px) {
  .comments {
    max-width: 100%
  }
}

.comments--link {
  color: #D4D2D9 !important;
  margin-bottom: 0 !important
}

.comments__form {
  margin: 0 0 40px 0;
  padding: 20px;
  background: #222;
  max-width: 360px;
  min-width: 360px
}

@media screen and (max-width: 480px) {
  .comments__form {
    max-width: 100%;
    min-width: 100%
  }
}

.comments__form--title {
  font-size: 16px;
  margin-bottom: 16px
}

.comments__form .input,
.comments__form .textarea {
  background: #131313;
  font-size: 15px;
  border-radius: 0
}

.comments__form .btn {
  font-size: 15px
}

.comments__item {
  margin-bottom: 16px
}

.comments__item--name {
  font-size: 16px
}

.comments__item--date {
  font-size: 12px;
  color: #A5A1AD;
  margin-left: 8px
}

.comments__item--message {
  font-size: 14px;
  color: #A5A1AD;
  margin-top: 8px;
  word-break: break-word;
  margin-left: 20px
}

.toggle {
  position: relative;
  display: flex;
  flex-direction: column-reverse
}

.toggle__button {
  display: flex;
  justify-content: center;
  position: relative
}

.toggle__button:after {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 0;
  height: 1px;
  background: rgba(255, 255, 255, 0.1);
  content: ''
}

.toggle [type="checkbox"] {
  position: absolute;
  left: -9999px
}

.toggle label {
  height: 48px;
  cursor: pointer;
  position: relative;
  min-width: 124px
}

.toggle label:before,
.toggle label:after {
  position: absolute;
  background: #131313;
  z-index: 1;
  width: 100%;
  display: flex;
  height: 100%;
  justify-content: center;
  align-items: center
}

.toggle label:before {
  content: 'Read More'
}

.toggle input[type="checkbox"]~.toggle__content {
  max-height: 100px;
  overflow: hidden
}

@media screen and (max-width: 480px) {
  .toggle input[type="checkbox"]~.toggle__content {
    max-height: none
  }

  .toggle input[type="checkbox"]~.toggle__content .toggle__item {
    display: none
  }
}

.toggle input[type="checkbox"]~.toggle__content--small {
  max-height: 34px
}

.toggle input[type="checkbox"]:checked~.toggle__content {
  max-height: none
}

.toggle [type="checkbox"]:checked+.toggle__button label:before {
  content: 'Hide'
}

@media screen and (max-width: 768px) {
  .toggle__items input[type="checkbox"]~.toggle__content {
    max-height: none
  }

  .toggle__items input[type="checkbox"]~.toggle__content .toggle__item {
    display: none
  }
}

@media screen and (max-width: 768px) {
  .toggle__items input[type="checkbox"]:checked~.toggle__content {
    max-height: none
  }

  .toggle__items input[type="checkbox"]:checked~.toggle__content .toggle__item {
    display: block
  }
}

.no-touch .toggle__button label:hover {
  color: #e03636
}

.no-touch [data-tooltip]:hover {
  position: relative
}

.no-touch [data-tooltip]:hover:after {
  content: attr(data-tooltip);
  position: absolute;
  border-radius: 2px;
  background: #e03636;
  color: #fff;
  padding: 8px 10px;
  z-index: 100;
  font-size: 12px;
  display: flex;
  bottom: calc(100% + 8px);
  white-space: nowrap;
  left: calc(50%);
  transform: translateX(-50%);
  line-height: normal
}

.no-touch [data-tooltip]:hover:before {
  content: '';
  border-width: 8px 8px 0 8px;
  border-color: #e03636;
  border-left-color: transparent !important;
  border-right-color: transparent !important;
  border-bottom-color: transparent !important;
  bottom: calc(100% + 2px);
  left: calc(50%);
  transform: translateX(-50%);
  margin-top: 0;
  margin-bottom: 0;
  width: 0;
  height: 0;
  border-style: solid;
  position: absolute;
  z-index: 1
}

.download {
  display: none;
  margin-right: 16px;
  color: #D4D2D9 !important
}

.download--show {
  display: block
}

.download .chrome-web-store {
  display: inline-flex;
  align-items: center;
  border: 1px solid #A5A1AD;
  border-radius: 3px;
  padding: 2px 10px;
  cursor: pointer
}

.download .chrome-web-store-icon {
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center
}

.download .chrome-web-store-icon svg {
  height: 40px
}

.download .chrome-web-store-text {
  margin-left: 10px;
  font-weight: 600;
  color: #A5A1AD
}

.download #downloader-download {
  display: none
}

.download__wrapper {
  width: 320px;
  display: block;
  color: inherit
}

.download__wrapper p {
  margin: 16px 0
}

.download__wrapper .btn-accent {
  width: fit-content
}

.download__title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #fff;
  padding: 0 0 12px;
  border-bottom: 1px solid #46464C
}

.download__button {
  cursor: pointer;
  display: flex;
  align-items: center
}

.download__button svg {
  margin-right: 8px
}

.download__logo {
  width: 32px;
  height: 32px;
  background-image: url("../../../../static/images/downloader-logo.png");
  background-size: cover
}

.block-video {
  display: flex;
  align-items: flex-start;
  width: 100%
}

@media screen and (max-width: 480px) {
  .block-video {
    margin-top: 0
  }
}

@media (max-width: 767px) {
  .block-video {
    flex-direction: column;
    align-items: center
  }
}

.block-video .right {
  max-width: fit-content;
  margin-left: 10px
}

.block-video .right div {
  margin-bottom: 10px;
  display: flex
}

.block-video .right .text {
  text-align: center;
  font-size: 12px;
  line-height: 20px;
  margin-bottom: 0;
  justify-content: center
}

.block-video .right .text a {
  color: #fff
}

.block-video .video-holder {
  position: relative;
  z-index: 1;
  flex: 1 1
}

.block-video .video-holder .headline {
  padding-top: 0
}

@media (max-width: 1024px) {
  .block-video .video-holder {
    max-width: calc(100% - 220px);
    min-width: calc(100% - 220px)
  }
}

@media screen and (max-width: 767px) {
  .block-video .video-holder {
    margin-right: 0;
    max-width: 100%;
    min-width: 100%
  }
}

.block-video .player {
  position: relative;
  z-index: 1
}

.block-video .video-info {
  position: relative;
  z-index: 2
}

.block-video .sponsor {
  margin: 0 auto 24px;
  max-width: 730px;
  overflow: hidden
}

.block-video .sponsor #und_ban {
  min-height: 90px;
  background: #131313;
  border-radius: 4px
}

.block-video .sponsor .text {
  align-items: center
}

.block-video .sponsor .text a {
  font-size: 12px;
  line-height: 20px;
  color: #D4D2D9;
  text-align: center;
  margin-top: 4px
}

.block-video .sponsor a {
  display: block
}

.block-video .sponsor__info {
  display: flex;
  margin-left: 28px;
  height: fit-content;
  align-items: center;
  min-height: 60px;
  float: right
}

@media screen and (max-width: 768px) {
  .block-video .sponsor__info {
    margin-left: 0;
    margin-bottom: 16px;
    float: none
  }
}

.block-video .sponsor__info .no-thumb:after {
  font-size: 14px
}

.block-video .sponsor__info .img {
  min-width: 108px;
  max-width: 108px;
  margin-right: 16px;
  min-height: 60px
}

.block-video .sponsor__info .img img {
  width: 100%
}

.block-video .sponsor__info .item {
  color: #fff;
  display: flex;
  flex-direction: column
}

.block-video .sponsor__info .site-link {
  display: inline-flex;
  align-items: center;
  white-space: nowrap
}

.block-video .sponsor__info .site-link .i-link {
  margin-left: 4px
}

.vote-wrapper {
  display: flex;
  border-right: 1px solid rgba(255, 255, 255, 0.1);
  height: 100%;
  align-items: center
}

.vote-wrapper__count {
  margin-right: 12px
}

.report__container {
  display: flex;
  align-items: center;
  margin-right: 12px
}

.report__container .rate-like {
  padding: 0 20px;
  cursor: pointer
}

@media screen and (max-width: 480px) {
  .report__container .rate-like {
    padding: 0 15px
  }
}

.report__button {
  cursor: pointer
}

.info-buttons {
  width: 100%;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 12px;
  height: 40px;
  justify-content: space-between;
  color: #D4D2D9;
  background: #222
}

.info-buttons i:before {
  font-size: 16px
}

.info-buttons .views {
  display: flex;
  align-items: center
}

.info-buttons .views span {
  margin-left: 8px
}

.tab-content {
  background: transparent
}

.tab-content .headline {
  padding: 0;
  margin: 0 0 12px
}

.block-details {
  display: flex;
  justify-content: space-between
}

@media screen and (max-width: 768px) {
  .block-details {
    flex-direction: column-reverse;
    justify-content: flex-end
  }
}

.block-details .item {
  color: #D4D2D9;
  margin-bottom: 8px;
  display: block;
  line-height: 20px
}

.block-details .item__label {
  color: #D4D2D9;
  display: flex;
  align-items: center;
  margin: 0 8px 4px 0
}

.block-details .item a {
  display: inline-block;
  color: #e03636;
  line-height: 20px;
  margin: 2px 0 4px 3px
}

.block-details .item span {
  color: #D4D2D9;
  position: relative
}

.block-details .item span em {
  color: #fff;
  margin-left: 3px;
  padding: 0;
  font-style: normal
}

.block-details .item :last-child {
  margin: 0
}

.block-details .item__group {
  display: flex;
  flex-wrap: wrap
}

.block-details .item__group .item:first-child {
  margin-right: 24px
}

.block-details .tags {
  margin-bottom: 8px;
  width: auto;
  max-width: 60%
}

@media screen and (max-width: 768px) {
  .block-details .tags {
    width: 100%;
    max-width: 100%
  }
}

.thumb-slider {
  font-size: 16px;
  width: 100%;
  padding-left: 10px;
  order: 1;
  justify-content: left
}

.thumb-slider>div {
  margin: 0 auto 0;
  position: relative;
  width: 100% !important
}

@media (min-width: 1023px) {
  .thumb-slider>div {
    width: 80% !important;
    max-width: 980px !important
  }
}

.thumb-slider>div:empty {
  display: none
}

.thumb-slider>div .ca-roll-container {
  width: 100% !important
}

.thumb-slider>div .ca-roll-container:not(.ca-roll-container--collapsed) {
  height: 300px !important;
  margin-bottom: 20px
}

@media (min-width: 1023px) {
  .thumb-slider>div .ca-roll-container:not(.ca-roll-container--collapsed) {
    height: 450px !important
  }
}

@media (min-width: 1279px) {
  .thumb-slider>div .ca-roll-container:not(.ca-roll-container--collapsed) {
    height: 500px !important
  }
}

@media (min-width: 1366px) {
  .thumb-slider>div .ca-roll-container:not(.ca-roll-container--collapsed) {
    height: 550px !important
  }
}


.rating-container {
  display: flex;
  align-items: center;
  margin-right: 32px;
  height: 100%
}

@media screen and (max-width: 1023px) {
  .rating-container {
    margin-right: 20px
  }
}

@media screen and (max-width: 480px) {
  .rating-container span {
    display: none
  }
}

.rating-container .rating {
  display: flex;
  align-items: center;
  color: #D4D2D9;
  padding: 0 12px
}

@media screen and (max-width: 480px) {
  .rating-container .rating {
    padding: 0 4px
  }
}

.rating-container .rating--accent {
  color: #50DE89
}

.rate-like,
.rate-dislike {
  display: flex;
  align-items: center;
  color: #D4D2D9;
  padding: 0 12px;
  margin-bottom: 2px
}

@media screen and (max-width: 480px) {

  .rate-like,
  .rate-dislike {
    padding: 0 8px
  }
}

.rate-dislike {
  transform: rotate(180deg)
}

.video-header {
  display: none
}

.phone .video-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%
}

.phone .video-header .text {
  text-align: center;
  font-size: 12px;
  line-height: 20px;
  margin: 4px 0;
  justify-content: center
}

.phone .video-header .text a {
  color: #D4D2D9
}

.phone .block-video {
  flex-wrap: wrap
}

.phone .block-video .video-holder {
  max-width: 100%
}

.phone .right {
  display: none;
}

/* ============================================
   VIDEO PAGE (vp-) - Redesigned Layout
   ============================================ */

/* Ad top */
.vp-ad-top {
  margin-bottom: 16px;
}

/* Main two-column layout */
.vp-layout {
  display: flex;
  gap: 24px;
  align-items: flex-start;
  width: 100%;
}

.vp-main {
  flex: 1;
  min-width: 0;
}

/* Player */
.vp-player {
  border-radius: var(--radius-md);
  overflow: hidden;
  background: var(--color-bg);
}

.vp-player__aspect {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
}

.vp-player__container {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: var(--color-bg);
}

.vp-player__loading {
  color: var(--color-muted);
  text-align: center;
  padding-top: 20%;
  font-size: 14px;
}

.vp-player__error {
  color: var(--color-accent);
  text-align: center;
  padding-top: 20%;
  font-size: 14px;
}

/* Title block */
.vp-title-block {
  padding: 16px 0 12px;
}

.vp-title {
  font-size: 20px;
  font-weight: 700;
  color: var(--color-text);
  line-height: 1.3;
  margin: 0 0 8px;
}

.vp-meta {
  display: flex;
  align-items: center;
  gap: 16px;
  color: var(--color-muted);
  font-size: 13px;
}

.vp-meta__views,
.vp-meta__duration {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.vp-meta svg {
  opacity: 0.7;
}

/* Actions / Engagement bar */
.vp-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  padding: 12px 16px;
  background: var(--color-surface);
  border-radius: var(--radius-md);
  margin-bottom: 16px;
}

.vp-actions__left {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.vp-actions__right {
  display: flex;
  align-items: center;
}

/* Vote pill (like/dislike) */
.vp-vote-pill {
  display: inline-flex;
  align-items: center;
  background: var(--color-surface-elev);
  border-radius: 24px;
  overflow: hidden;
}

.vp-vote-pill__btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  color: var(--color-text);
  text-decoration: none;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.2s;
}

.vp-vote-pill__btn:hover {
  background: var(--color-surface-hover);
}

.vp-vote-pill__like:hover svg {
  color: var(--color-secondary);
}

.vp-vote-pill__dislike:hover svg {
  color: var(--color-primary);
}

.vp-vote-pill__divider {
  width: 1px;
  height: 20px;
  background: var(--color-border);
}

/* Rating badge */
.vp-rating-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 6px 12px;
  background: rgba(80, 250, 123, 0.12);
  color: var(--color-secondary);
  border-radius: 20px;
  font-size: 13px;
  font-weight: 600;
}

/* Action button (Save) */
.vp-action-btn {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
}

.vp-action-btn a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  background: var(--color-surface-elev);
  color: var(--color-muted);
  border-radius: 24px;
  text-decoration: none;
  font-size: 13px;
  font-weight: 500;
  transition: all 0.2s;
}

.vp-action-btn a:hover {
  background: var(--color-surface-hover);
  color: var(--color-text);
}

.vp-action-btn--active a {
  background: var(--color-primary-soft);
  color: var(--color-accent);
}

/* Server selector */
.vp-servers {
  display: flex;
  align-items: center;
}

.vp-servers__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.vp-server-btn {
  display: inline-block;
}

.vp-server-btn a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 14px;
  background: var(--color-surface-elev);
  color: var(--color-muted);
  border-radius: 8px;
  text-decoration: none;
  font-size: 13px;
  cursor: pointer;
  transition: all 0.2s;
}

.vp-server-btn a:hover {
  background: var(--color-surface-hover);
  color: var(--color-text);
}

.vp-server-btn.active a {
  background: var(--color-primary);
  color: #fff;
}

.vp-server-btn--empty {
  color: var(--color-muted);
  font-size: 13px;
  padding: 7px 0;
}

/* Ad under player */
.vp-ad-under {
  display: flex;
  justify-content: center;
  margin-bottom: 16px;
}

/* Details section */
.vp-details {
  background: var(--color-surface);
  border-radius: var(--radius-md);
  padding: 20px;
  margin-bottom: 16px;
}

.vp-details__section {
  margin-bottom: 16px;
}

.vp-details__section:last-child {
  margin-bottom: 0;
}

.vp-details__label {
  display: block;
  font-size: 12px;
  font-weight: 600;
  color: var(--color-muted);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 8px;
}

.vp-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.vp-chip {
  display: inline-flex;
  align-items: center;
  padding: 5px 14px;
  background: var(--color-surface-elev);
  color: var(--color-text);
  border-radius: 20px;
  font-size: 13px;
  text-decoration: none;
  transition: all 0.2s;
  cursor: pointer;
}

.vp-chip:hover {
  background: var(--color-primary);
  color: #fff;
}

.vp-chip--tag {
  color: var(--color-accent);
}

.vp-chip--tag:hover {
  background: var(--color-accent);
  color: #fff;
}

.vp-description {
  color: var(--color-muted);
  font-size: 14px;
  line-height: 1.6;
  margin: 0;
}

/* Section header */
.vp-section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}

.vp-section-header h2 {
  font-size: 16px;
  font-weight: 600;
  color: var(--color-text);
  margin: 0;
}

.vp-see-all {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--color-primary);
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
  transition: color 0.2s;
}

.vp-see-all:hover {
  color: var(--color-accent);
}

/* Recommended section (hiển cả mobile & PC) */
.vp-recommended {
  display: block;
  margin-top: 16px;
}

.vp-recommended .list-videos {
  font-size: 0;
}

.vp-recommended .list-videos .margin-fix {
  margin: -10px 0 0 -10px;
  font-size: 0;
  line-height: 0;
}

.vp-recommended .list-videos .item {
  display: inline-block;
  vertical-align: top;
  width: calc(100%/5 - 10px);
  margin: 10px 0 0 10px;
  font-size: 14px;
  line-height: 1.4;
}

@media (max-width: 1024px) {
  .vp-recommended .list-videos .item {
    width: calc(100%/4 - 10px);
  }
}

@media (max-width: 860px) {
  .vp-recommended .list-videos .item {
    width: calc(100%/3 - 10px);
  }
}

@media (max-width: 580px) {
  .vp-recommended .list-videos .item {
    width: calc(100%/2 - 10px);
  }
}

@media (max-width: 480px) {
  .vp-recommended .list-videos .item {
    width: 100%;
    margin: 0 0 16px 0;
  }

  .vp-recommended .list-videos .margin-fix {
    margin: 0;
  }
}

/* Sidebar */
.vp-sidebar {
  width: 340px;
  min-width: 340px;
  position: sticky;
  top: 90px;
}

.vp-sidebar__ad {
  margin-bottom: 16px;
}

.vp-sidebar__videos {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

/* Sidebar video card */
.vp-sidebar-card {
  display: flex;
  gap: 12px;
  padding: 8px;
  background: var(--color-surface);
  border-radius: var(--radius-sm);
  text-decoration: none;
  transition: background 0.2s;
  cursor: pointer;
}

.vp-sidebar-card:hover {
  background: var(--color-surface-hover);
}

.vp-sidebar-card__thumb {
  position: relative;
  width: 140px;
  min-width: 140px;
  aspect-ratio: 16/9;
  border-radius: 6px;
  overflow: hidden;
  background: var(--color-bg);
}

.vp-sidebar-card__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.vp-sidebar-card__duration {
  position: absolute;
  bottom: 4px;
  right: 4px;
  background: rgba(0, 0, 0, 0.8);
  color: #fff;
  font-size: 11px;
  font-weight: 600;
  padding: 2px 6px;
  border-radius: 4px;
}

.vp-sidebar-card__info {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
}

.vp-sidebar-card__title {
  font-size: 13px;
  font-weight: 500;
  color: var(--color-text);
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 6px;
}

.vp-sidebar-card__meta {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  color: var(--color-muted);
}

.vp-sidebar-card__rating {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  color: var(--color-secondary);
}

/* Responsive */
@media (max-width: 1024px) {
  .vp-sidebar {
    width: 280px;
    min-width: 280px;
  }

  .vp-sidebar-card__thumb {
    width: 120px;
    min-width: 120px;
  }
}

@media (max-width: 860px) {
  .vp-layout {
    flex-direction: column;
  }

  .vp-sidebar {
    display: none;
  }

  .vp-title {
    font-size: 18px;
  }

  .vp-actions {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 480px) {
  .vp-title {
    font-size: 16px;
  }

  .vp-actions {
    padding: 10px 12px;
  }

  .vp-vote-pill__btn {
    padding: 6px 10px;
    font-size: 12px;
  }

  .vp-details {
    padding: 14px;
  }

  .vp-sidebar-card__thumb {
    width: 110px;
    min-width: 110px;
  }
}


.no-touch #download-button:hover {
  color: #fff
}

.no-touch .block-details .item a:hover {
  color: #fff
}

.no-touch .rate-dislike:hover {
  color: var(--color-accent)
}

.no-touch .rate-like:hover {
  color: var(--color-secondary)
}

:root {
  --player-color: #e03636
}

.jwplayer .jw-controlbar .jw-controls-logo {
  width: 38px !important;
  max-height: 20px !important;
  margin-right: 0px !important
}

.jwplayer .jw-controlbar .jw-controls-logo .jw-icon {
  max-height: 20px
}

.thumb-404 {
  padding-bottom: calc(56.26% + 35px);
  position: relative
}

.thumb-404__wrapper {
  position: absolute;
  align-items: center;
  justify-content: center;
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%
}

.thumb-404__code {
  min-height: 59px;
  max-height: 59px;
  margin-bottom: 4px;
  margin-top: 35px
}

@media (max-width: 480px) {
  .thumb-404__code {
    margin-top: 0
  }
}

.thumb-404__desc {
  display: flex;
  flex-direction: column
}

@media (max-width: 480px) {
  .thumb-404__desc {
    max-width: none;
    margin: 0;
    align-items: center
  }
}

.thumb-404__desc h1 {
  font-size: 20px;
  line-height: 32px;
  color: #A5A1AD;
  margin-bottom: 16px;
  font-weight: 400
}

.thumb-404 .btn-accent {
  justify-content: center;
  min-height: 40px;
  font-size: 12px
}

.list-categories {
  columns: 5
}

@media screen and (max-width: 1279px) {
  .list-categories {
    columns: 4
  }
}

@media screen and (max-width: 768px) {
  .list-categories {
    columns: 3
  }
}

@media screen and (max-width: 732px) {
  .list-categories {
    columns: 2
  }
}

.list-categories__row {
  display: flex;
  flex-direction: column;
  break-inside: avoid
}

.list-categories__row--letter {
  display: flex;
  color: #e03636;
  text-transform: capitalize;
  font-size: 12px;
  margin: 12px 0
}

.list-categories__row--list {
  display: flex;
  flex-wrap: wrap;
  padding-top: 12px;
  flex-direction: column
}

.list-categories .item {
  background: #131313;
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  font-size: 14px;
  line-height: 20px;
  color: #D4D2D9
}

.headline-categories {
  justify-content: flex-start;
  margin-bottom: 24px
}

.headline-categories #categories-search {
  background: #222
}

.headline-categories .search {
  max-width: 240px;
  margin-left: 16px
}

.no-touch .list-categories__row--list .item:hover {
  color: #e03636
}

.list-models .margin-fix {
  margin: -10px 0 0 -10px
}

.list-models .item {
  width: calc(100%/5 - 10px)
}

@media (max-width: 860px) {
  .list-models .item {
    width: calc(100%/3 - 10px)
  }
}

@media (max-width: 580px) {
  .list-models .item {
    width: calc(100%/2 - 10px)
  }
}

@media screen and (max-width: 480px) {
  .list-models .item {
    width: calc(50% - 10px);
    margin: 10px 0 0 10px !important
  }
}

.list-models .item .videos {
  font-size: 12px;
  line-height: 20px;
  color: #D4D2D9;
  position: relative
}

.list-models .img {
  padding-bottom: 118%
}

.static-page {
  padding-top: 32px;
  padding-bottom: 20px;
  width: 100%
}

.static-page__title {
  font-size: 20px;
  line-height: 20px;
  color: #fff;
  margin-bottom: 12px
}

.static-page p {
  font-size: 14px;
  line-height: 20px;
  color: #A5A1AD
}

.static-page h2 {
  font-size: 16px;
  font-weight: 400;
  line-height: 20px;
  margin-bottom: 8px;
  color: #fff;
  margin-top: 12px
}

.static-page h3 {
  font-weight: 400;
  font-size: 16px;
  line-height: 20px;
  color: #fff;
  margin-top: 12px
}

.static-page ul {
  list-style: unset;
  padding-left: 16px;
  margin: 8px
}

.static-page ul li {
  font-size: 14px;
  line-height: 20px;
  color: #A5A1AD
}

.static-page a {
  color: #e03636
}

.static-page-support {
  padding-bottom: 40px
}

.static-page-support .form__support {
  background: transparent
}

.static-page-support .form__support .input,
.static-page-support .form__support .textarea,
.static-page-support .form__support .radio {
  background: #222
}

.static-page-support .form__support .radio_checkmark {
  background: #131313
}

.block-model {
  padding: 12px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  display: flex
}

.block-model .country {
  width: 40px;
  margin-left: 20px;
  display: flex;
  align-items: center
}

.block-model .country img {
  max-width: 100%;
  min-width: 100%;
  max-height: 30px
}

.block-model__info {
  display: flex;
  justify-content: center;
  flex-direction: column
}

.block-model__info h2 {
  color: #fff;
  font-weight: 400;
  font-size: 20px;
  line-height: 20px;
  margin-bottom: 4px
}

.block-model .img {
  display: block;
  margin-right: 20px;
  height: 100px;
  width: 100%;
  max-width: 85px;
  position: relative
}

.block-model .img .no-thumb {
  background: #A5A1AD;
  font-size: 0;
  line-height: 0;
  width: 100%;
  height: 100%;
  display: block;
  position: inherit
}

.block-model .img .thumb {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: 1
}

.block-channel {
  padding: 12px 0;
  display: flex
}

.block-channel--block {
  display: block
}

@media screen and (max-width: 480px) {
  .block-channel {
    display: flex;
    flex-wrap: wrap
  }
}

.block-channel .img {
  position: relative;
  min-width: 252px;
  max-width: 252px;
  margin-right: 20px;
  display: flex;
  min-height: 140px;
  max-height: 140px;
  float: left
}

@media screen and (max-width: 480px) {
  .block-channel .img {
    min-width: 100px;
    max-width: 100px;
    min-height: 56px;
    max-height: 56px
  }
}

.block-channel .img a {
  display: inline-block;
  width: 100%
}

.block-channel .img img {
  display: block;
  width: 100%
}

.block-channel .channel-info {
  display: flex;
  justify-content: center;
  flex-direction: column
}

.block-channel .channel-info h2 {
  color: #fff;
  font-size: 20px;
  line-height: 20px;
  margin-bottom: 4px;
  font-weight: 400
}

@media screen and (max-width: 480px) {
  .block-channel .channel-info h2 {
    font-size: 16px
  }
}

.block-channel .channel-link {
  color: #e03636;
  display: flex;
  align-items: center
}

.block-channel .channel-link i {
  color: #e03636;
  margin-left: 4px
}

.block-channel input[type="checkbox"]~.toggle__content {
  max-height: 36px
}

.block-channel input[type="checkbox"]:checked~.toggle__content {
  max-height: none
}

.block-channel .channel-description {
  padding-top: 16px;
  margin-top: 16px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  color: #A5A1AD
}

.no-touch .channel-link:hover {
  color: #fff
}

.no-touch .channel-link:hover i {
  color: #fff
}

.page-upload {
  padding-bottom: 80px
}

.page-upload form {
  max-width: 652px;
  margin: auto;
  width: 100%
}

.page-upload form .btn-accent {
  min-width: 180px;
  justify-content: center
}

@media screen and (max-width: 480px) {
  .page-upload form .btn-accent {
    width: 100%
  }
}

.sitemap__list {
  list-style: none;
  margin-bottom: 20px
}

.sitemap-item:first-of-type .sitemap-item__link:after {
  display: none
}

.sitemap-item__link {
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  background-color: #222;
  color: #e03636;
  padding: 6px 12px;
  font-size: 14px;
  display: inline-block;
  position: relative
}

.sitemap-item__link:after {
  content: '';
  position: absolute;
  top: -30px;
  left: 25px;
  height: 30px;
  width: 1px;
  background-color: #A5A1AD
}

.sitemap-item .toggle {
  display: inline-flex
}

.sitemap-item .toggle .sitemap-item__link {
  width: fit-content;
  padding: 6px 44px 6px 12px
}

.sitemap-item .toggle__button {
  position: absolute;
  right: 0;
  top: 0
}

.sitemap-item .toggle__button:after {
  content: none
}

.sitemap-item .toggle__button label {
  height: 32px;
  min-width: 32px;
  color: #fff
}

.sitemap-item .toggle__button label:before {
  content: '+';
  font-size: 24px
}

.sitemap-item .toggle [type="checkbox"]:checked+.toggle__button label:before {
  content: '-'
}

.sitemap-item .toggle input[type="checkbox"]~.toggle__content {
  display: none
}

.sitemap-item .toggle input[type="checkbox"]:checked~.toggle__content {
  display: block
}

.sitemap-page__list-item {
  position: relative;
  margin-bottom: 10px
}

.sitemap-page__list-item:last-child {
  margin-bottom: 0
}

.sitemap-page__list-item:before {
  content: '';
  position: absolute;
  top: 53%;
  left: -30px;
  height: 1px;
  width: 20px;
  background-color: #A5A1AD
}

.sitemap-page__list-item:after {
  content: '';
  position: absolute;
  top: -18px;
  left: -30px;
  height: 30px;
  width: 1px;
  background-color: #A5A1AD
}

.sitemap-page__list-item a {
  text-decoration: none;
  color: #A5A1AD;
  font-size: 14px
}

.sitemap-page__list-lvl-2 {
  margin-left: 25px;
  padding-top: 20px;
  padding-bottom: 20px;
  padding-left: 30px;
  list-style: none
}

.download-page {
  width: 100%;
  min-height: 100vh
}

.download-page .triangles {
  position: absolute;
  z-index: -1
}

.download-page .triangles--first {
  right: -60px;
  top: -28px;
  width: 60px;
  height: 60px
}

.download-page .triangles--second {
  right: -25px;
  top: -38px;
  width: 40px;
  height: 40px;
  transform: rotate(160deg)
}

@media (max-width: 1250px) {
  .download-page .triangles--second {
    right: 10px
  }
}

.download-page .wrapper {
  padding: 0 20px;
  max-width: 1440px;
  margin: 0 auto
}

.download-page__head {
  background: #222
}

.download-page__head-content {
  height: 60px;
  display: flex;
  align-items: center;
  gap: 20px;
  font-size: 40px
}

.download-page__head-content .offer {
  width: 210px
}

.download-page__head-content .javhd {
  height: 30px
}

.download-page__head-content .my-dirty-hobby {
  background: url("../../../../static/images/my-dirty-hobby.png") no-repeat;
  background-size: 165px 50px;
  width: 165px;
  height: 50px;
  transform: translateY(5px)
}

.download-page__footer {
  background: #e03636
}

.download-page__footer-content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  height: 60px;
  width: 100%;
  background: #e03636;
  color: #fff;
  position: fixed;
  bottom: 0;
  left: 0;
  font-weight: 600;
  font-size: 20px;
  text-transform: uppercase
}

.download-page__content {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 40px;
  position: relative;
  min-height: calc(100vh - 120px);
  padding: 0 20px
}

.download-page__preview {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 102%;
  z-index: 9;
  transform: translateZ(0)
}

.download-page h2 {
  text-align: center
}

.download-page__img {
  width: 100%
}

.download-page__text {
  display: flex;
  flex-direction: column;
  gap: 10px
}

.download-page .h1 {
  font-size: 50px;
  font-weight: bold;
  text-transform: uppercase;
  line-height: 55px;
  width: max-content;
  color: #fff
}

.download-page .h1--accent {
  color: #e03636
}

.download-page .h1--small {
  font-size: 35px
}

.download-page .h1--with-svg {
  position: relative;
  white-space: nowrap
}

.download-page__pluses {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  width: 360px;
  color: #fff
}

.download-page__plus {
  display: flex;
  align-items: center;
  gap: 5px
}

.download-page__plus .svg-icon {
  color: #fff;
  fill: #fff;
  width: 14px;
  height: 14px
}

.download-page h2 {
  color: #fff;
  font-size: 20px
}

.download-page__btn {
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  border-radius: 5px;
  padding: 10px 24px;
  color: #D4D2D9;
  background: #222;
  border: none
}

.download-page__btn svg {
  color: rgba(255, 255, 255, 0.1);
  fill: rgba(255, 255, 255, 0.1)
}

.download-page__btn--footer {
  background: #000;
  text-transform: uppercase;
  color: #fff;
  border-radius: 25px;
  padding: 10px 15px;
  font-weight: 600;
  font-size: 20px;
  cursor: pointer;
  outline: none;
  border: none
}

.download-page__btn--col {
  flex-direction: column
}

.download-page__btn--accent {
  background: #e03636;
  color: #fff;
  font-size: 18px
}

.download-page__btn--accent svg {
  color: #fff;
  fill: #fff
}

@media (min-width: 1024px) {
  .download-page__btn--try {
    display: none
  }
}

.download-page__btn--error {
  animation: shake 0.82s cubic-bezier(0.36, 0.07, 0.19, 0.97) both
}

.download-page__img-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  height: fit-content;
  max-width: 600px
}

.download-page__img-wrapper::after {
  content: "";
  background: #222;
  position: absolute;
  width: 100%;
  height: 70%;
  bottom: -20px;
  right: -20px;
  z-index: -2
}

.download-page__btns {
  display: flex;
  gap: 10px;
  flex-wrap: wrap
}

.download-page__watermark {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 220px;
  opacity: 0.75;
  z-index: 10
}

.download-page .text--small {
  color: rgba(255, 255, 255, 0.6);
  font-size: 12px
}

.download-page .loader {
  animation: rotate infinite 1.5s;
  filter: invert(1)
}

@media (max-width: 1024px) {
  .download-page {
    padding: 20px 5px;
    align-items: flex-start
  }

  .download-page .triangles {
    width: 45px;
    height: 45px
  }

  .download-page .triangles--first {
    right: unset;
    left: -60px;
    top: -23px;
    transform: rotate(0deg)
  }

  .download-page .triangles--second {
    right: 5px;
    top: 100%;
    z-index: 10
  }

  .download-page__pluses {
    justify-content: center
  }

  .download-page .h1 {
    font-size: 34px;
    line-height: 38px;
    width: 100%;
    text-align: center
  }

  .download-page__text {
    align-items: center;
    justify-content: center
  }

  .download-page__content {
    flex-wrap: wrap-reverse
  }

  .download-page__watermark {
    width: 180px
  }

  .download-page__btns {
    justify-content: center
  }

  .download-page__thumb-wrapper {
    background: #222;
    padding: 30px 20px 10px
  }

  .download-page h2 {
    margin-top: 10px
  }

  .download-page h2 div {
    display: -webkit-box;
    text-align: center;
    white-space: normal;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden
  }

  .download-page__img-wrapper {
    max-width: unset
  }

  .download-page__img-wrapper::after {
    display: none
  }
}

@keyframes rotate {
  0% {
    transform: rotate(0deg)
  }

  100% {
    transform: rotate(360deg)
  }
}

@keyframes shake {

  10%,
  90% {
    transform: translate3d(-1px, 0, 0)
  }

  20%,
  80% {
    transform: translate3d(2px, 0, 0)
  }

  30%,
  50%,
  70% {
    transform: translate3d(-4px, 0, 0)
  }

  40%,
  60% {
    transform: translate3d(4px, 0, 0)
  }
}

.desktop {
  display: unset
}

.mobile {
  display: none
}

@media (max-width: 1024px) {
  .desktop {
    display: none
  }

  .mobile {
    display: unset
  }
}

.lp {
  max-width: 1920px;
  width: 100%;
  margin: 0 auto;
  padding: 0 40px
}

.lp a {
  z-index: 200;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent
}

.lp .ft {
  margin-bottom: 30px;
  margin-top: 2px !important
}

.lp #suggestion_5 {
  display: none
}

.lp .img {
  position: relative;
  padding-top: 56.25%;
  height: 100%
}

.lp .img img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%
}

.lp img {
  -ms-object-fit: cover;
  object-fit: cover;
  transition: 150ms;
  -webkit-transition: 150ms;
  -moz-transition: 150ms;
  -ms-transition: 150ms;
  -o-transition: 150ms
}

@media screen and (max-width: 768px) {
  .lp {
    padding: 0
  }
}

@media screen and (max-width: 768px) {
  .lp .main {
    padding: 0 15px
  }
}

.lp-title {
  font-size: 28px;
  line-height: 32px;
  font-weight: 600
}

@media screen and (max-width: 768px) {
  .lp-title {
    display: none
  }
}

@media screen and (max-width: 768px) {
  .lp-title.model-title {
    display: block;
    font-weight: 400;
    font-size: 20px;
    line-height: 20px
  }
}

.lp .video-title {
  font-weight: 500;
  font-size: 16px;
  line-height: 20px;
  max-width: 90%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-right: 10px
}

.view-all {
  display: none;
  transition: translateX 250ms
}

.view-all i {
  color: #e03636
}

@media screen and (max-width: 768px) {
  .view-all {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    background-color: #222222
  }
}

.view-all__title {
  margin-top: 15px
}

.lp2 {
  min-width: 580px;
  max-width: none !important
}

@media screen and (max-width: 1440px) {
  .lp2 {
    min-width: 404px
  }
}

.sub-header {
  display: grid;
  grid-template-rows: repeat(2, minmax(auto, 1fr));
  grid-template-columns: 1fr 1fr;
  column-gap: 15px;
  row-gap: 7px;
  margin-bottom: 30px
}

.sub-header__img {
  overflow: hidden;
  height: 100%;
  position: relative;
  padding-top: 56.25%
}

.sub-header__img img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0
}

.sub-header a:hover+.sub-header__img>img {
  transform: scale(1.07);
  -webkit-transform: scale(1.07);
  -moz-transform: scale(1.07);
  -ms-transform: scale(1.07);
  -o-transform: scale(1.07);
  transition: 150ms;
  -webkit-transition: 150ms;
  -moz-transition: 150ms;
  -ms-transition: 150ms;
  -o-transition: 150ms
}

@media screen and (max-width: 768px) {
  .sub-header a:hover+.sub-header__img>img {
    transform: none;
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none
  }
}

@media screen and (max-width: 1200px) {
  .sub-header {
    grid-template-rows: repeat(3, 1fr);
    grid-template-columns: minmax(10px, 1fr);
    justify-content: center;
    max-height: none
  }
}

.sub-header__item {
  position: relative;
  display: flex;
  flex-direction: column
}

.sub-header__item a {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  display: block;
  width: 100%;
  height: 100%
}

.sub-header__item img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.sub-header__item:first-child {
  grid-column-start: 1;
  grid-column-end: 3;
  grid-row-start: 1;
  grid-row-end: 3
}

@media screen and (max-width: 1200px) {
  .sub-header__item:first-child {
    grid-column-start: 1;
    grid-column-end: 1;
    grid-row-start: 1;
    grid-row-end: 2
  }
}

.sub-header__item:nth-child(2) {
  max-width: 475px
}

@media screen and (min-width: 1655px) {
  .sub-header__item:nth-child(2) {
    max-width: 608px
  }
}

@media screen and (max-width: 1440px) {
  .sub-header__item:nth-child(2) {
    max-width: 408px
  }
}

@media screen and (max-width: 1200px) {
  .sub-header__item:nth-child(2) {
    grid-column-start: 1;
    grid-column-end: 1;
    grid-row-start: 2;
    grid-row-end: 3;
    max-width: none
  }
}

.sub-header__item:last-child {
  grid-column-start: 3;
  grid-column-end: 3;
  grid-row-start: 2;
  grid-row-end: 3;
  max-width: 475px
}

@media screen and (min-width: 1655px) {
  .sub-header__item:last-child {
    max-width: 608px
  }
}

@media screen and (max-width: 1440px) {
  .sub-header__item:last-child {
    max-width: 408px
  }
}

@media screen and (max-width: 1200px) {
  .sub-header__item:last-child {
    grid-column-start: 1;
    grid-column-end: 1;
    grid-row-start: 3;
    grid-row-end: 3;
    max-width: none
  }
}

.sub-header__item-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 17px 20px;
  background-color: #222222;
  position: relative;
  min-height: 64px
}

.sub-header__item-footer i {
  padding: 8px 8px 8px 10px;
  background-color: #e03636
}

.ad {
  padding: 12px 0;
  display: grid;
  grid-template-columns: repeat(4, 300px);
  grid-template-rows: 1fr;
  transform-origin: center top;
  justify-content: center;
  gap: 10px
}

@media screen and (max-width: 1279px) {
  .ad {
    transform: scale(0.8);
    max-height: calc(258px * 0.8)
  }
}

@media screen and (max-width: 1023px) {
  .ad {
    transform: scale(0.57);
    max-height: calc(258px * 0.57)
  }
}

@media screen and (max-width: 732px) {
  .ad {
    max-height: calc(2 * 278px * 0.57);
    grid-template-columns: repeat(2, 300px);
    grid-template-rows: repeat(2, 250px)
  }
}

@media screen and (max-width: 480px) {
  .ad {
    transform: scale(0.5);
    max-height: calc(2 * 258px * 0.5)
  }
}

@media screen and (max-width: 732px) {
  .ad .ft-row {
    flex-wrap: wrap;
    max-height: calc(2 * 258px * 0.57)
  }
}

.section-header {
  display: flex;
  justify-content: space-between;
  align-items: center
}

@media screen and (max-width: 768px) and (false) {
  .section-header {
    display: none
  }
}

.top-videos {
  margin-top: 18px
}

@media not all and (min-resolution: 0.001dpcm) and (max-width: 1200px) {
  @supports (-webkit-appearance: none) and (stroke-color: transparent) {
    .top-videos {
      margin-top: 30px
    }
  }
}

@media screen and (max-width: 732px) {
  .top-videos {
    margin-top: 0
  }
}

.top-videos__title {
  display: none;
  font-weight: 400;
  font-size: 20px;
  line-height: 20px;
  margin: 32px 0;
  align-self: flex-start
}

.top-videos__title:first-child {
  margin-top: 0
}

@media screen and (max-width: 768px) {
  .top-videos__title {
    display: block;
    margin-bottom: 20px;
    margin-top: 10px
  }
}

.top-videos__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 10px
}

@media screen and (max-width: 768px) {
  .top-videos__grid {
    grid-template-rows: 138px 40px;
    align-self: start;
    grid-template-columns: repeat(7, 250px);
    max-width: 768px;
    overflow-x: scroll
  }
}

.top-videos__row {
  margin-bottom: 10px
}

.top-videos__body {
  margin-top: 30px;
  display: flex;
  align-items: center;
  flex-direction: column;
  overflow: hidden
}

@media screen and (max-width: 768px) {
  .top-videos__body {
    display: block
  }
}

.top-videos__item {
  text-align: center
}

.top-videos__item img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.top-models {
  margin-top: 20px;
  margin-bottom: 28px
}

.top-models__body {
  display: grid;
  grid-template-rows: minmax(auto, 300px);
  grid-template-columns: repeat(10, minmax(auto, 300px));
  margin-top: 30px;
  gap: 10px
}

@media screen and (max-width: 1200px) {
  .top-models__body {
    overflow-x: scroll
  }
}

@media screen and (max-width: 1440px) {
  .top-models__body {
    grid-template-rows: repeat(2, 430px);
    grid-template-columns: repeat(5, 1fr)
  }
}

@media screen and (max-width: 1200px) {
  .top-models__body {
    grid-template-rows: minmax(auto, 420px) 50px;
    grid-template-columns: repeat(11, 250px)
  }
}

.top-models__item img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover
}

.top-models__item-footer {
  position: relative
}

.card {
  position: relative
}

.card a {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%
}

.card:hover .card__footer {
  opacity: 1;
  transition: opacity 250ms
}

.card__footer {
  position: absolute;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: rgba(34, 34, 34, 0.2);
  bottom: 0;
  right: 0;
  left: 0;
  padding: 12px 20px;
  opacity: 0;
  transition: opacity 250ms
}

@media screen and (max-width: 768px) {
  .card__footer {
    background-color: transparent;
    opacity: 1;
    position: relative;
    padding: 10px 0px !important
  }
}

.card__footer i {
  padding: 8px 8px 8px 10px;
  background-color: #e03636
}

@media screen and (max-width: 768px) {
  .card__footer i {
    display: none
  }
}

/* Categories Page Styles */
.categories-page {
  width: 100%;
  padding: 0 10px;
}

.categories-page .headline {
  margin-bottom: 20px;
}

.categories-page .headline h1 {
  font-size: 24px;
  font-weight: 500;
}

.categories-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 15px;
}

@media screen and (max-width: 1400px) {
  .categories-grid {
    grid-template-columns: repeat(5, 1fr);
  }
}

@media screen and (max-width: 1200px) {
  .categories-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}

@media screen and (max-width: 900px) {
  .categories-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media screen and (max-width: 600px) {
  .categories-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
}

.category-card {
  background: #1a1a1a;
  border-radius: 8px;
  overflow: hidden;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.category-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 25px rgba(255, 66, 66, 0.15);
}

.category-link {
  display: block;
  text-decoration: none;
  color: inherit;
}

.category-thumb {
  position: relative;
  padding-top: 66.67%;
  background: #222;
  overflow: hidden;
}

.category-thumb img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.category-card:hover .category-thumb img {
  transform: scale(1.08);
}

.category-placeholder {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #2a2a2a 0%, #1a1a1a 100%);
}

.category-placeholder i {
  font-size: 40px;
  color: #444;
}

.category-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 8px 12px;
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.8));
}

.category-count {
  font-size: 12px;
  color: #ccc;
  font-weight: 500;
}

.category-info {
  padding: 12px 15px;
}

.category-name {
  font-size: 14px;
  font-weight: 500;
  color: #fff;
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: color 0.2s ease;
}

.category-card:hover .category-name {
  color: #e03636;
}

@media screen and (max-width: 600px) {
  .category-info {
    padding: 10px 12px;
  }

  .category-name {
    font-size: 13px;
  }

  .category-count {
    font-size: 11px;
  }
}

.no-data {
  grid-column: 1 / -1;
  padding: 40px 20px;
  text-align: center;
  color: #888;
  font-size: 16px;
}

.pagination-wrapper {
  margin-top: 30px;
  margin-bottom: 20px;
}

/* Sort dropdown styles for categories */
.categories-page .sort {
  position: relative;
}

.categories-page .sort strong {
  cursor: pointer;
  padding: 8px 15px;
  background: #222;
  border-radius: 4px;
  font-size: 14px;
  font-weight: 400;
  color: #fff;
  display: flex;
  align-items: center;
  gap: 8px;
}

.categories-page .sort strong::after {
  content: '';
  border: 5px solid transparent;
  border-top-color: #fff;
  margin-top: 3px;
}

.categories-page .sort ul {
  position: absolute;
  top: 100%;
  right: 0;
  background: #222;
  min-width: 180px;
  border-radius: 4px;
  padding: 8px 0;
  margin-top: 5px;
  display: none;
  z-index: 100;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
}

.categories-page .sort:hover ul {
  display: block;
}

.categories-page .sort ul li {
  list-style: none;
}

.categories-page .sort ul li a {
  display: block;
  padding: 10px 15px;
  color: #ccc;
  font-size: 14px;
  text-decoration: none;
  transition: all 0.2s ease;
}

.categories-page .sort ul li a:hover {
  background: var(--color-surface-hover);
  color: var(--color-primary);
}

/* Video page - Vote & Favorite */
.rate-like.voted,
.rate-dislike.voted {
  pointer-events: none;
}

.vote-wrapper.fav-wrapper {
  cursor: pointer;
  border-right: none;
  transition: all 0.2s;
  margin-left: auto;
}

.rate-favorite {
  display: flex;
  align-items: center;
  color: #D4D2D9;
  padding: 0 12px;
  margin-bottom: 2px;
  cursor: pointer;
  transition: color 0.2s;
  text-decoration: none;
}

.rate-favorite:hover,
.vote-wrapper.fav-wrapper:hover .vote-wrapper__count {
  color: #ff5252;
}

.vote-wrapper.fav-wrapper.active .rate-favorite,
.vote-wrapper.fav-wrapper.active .vote-wrapper__count {
  color: #ff5252;
}

.vote-wrapper.fav-wrapper.active .rate-favorite .i {
  text-shadow: 0 0 6px rgba(255, 82, 82, 0.5);
}

.vote-wrapper.fav-wrapper[disabled] {
  opacity: 0.5;
  pointer-events: none;
}

@media screen and (max-width: 480px) {
  .rate-favorite {
    padding: 0 8px;
  }
}