/* DoramaNew: independent presentation layer. */
:root {
  --bg:#fff; --bg-2:#f8f7fa; --bg-dark:#eeebf2; --car:#fff;
  --tt:#292431; --tt-2:#79717f; --tt-3:#292431; --tt-accent:#292431; --tt-dark:#292431;
  --bdc:#e8e3ec; --accent:#ce4b78; --accent-red:#ce4b78; --accent-green:#626298;
  --bg-btn:#ce4b78; --bg-btn-hover:#b83c68;
  --ui-bg:#fff; --ui-bg-darker:#f8f7fa; --ui-bg-darkest:#eeebf2;
  --ui-bg-accent:#ce4b78; --ui-bdc:#e8e3ec;
  --max-width:1360px; --indent:40px; --indent-negative:-40px;
  --city-accent-soft:#f7e9ef; --city-hero:#f4edf2;
}
body.dt-is-active {
  --bg:#211e2a; --bg-2:#17151e; --bg-dark:#2e2838; --car:#1d1a25;
  --tt:#f4eff6; --tt-2:#a49bac; --tt-3:#ede5f0; --tt-accent:#f4eff6; --tt-dark:#f4eff6;
  --bdc:#36303f; --accent:#ef83aa; --accent-red:#ef83aa;
  --bg-btn:#d76591; --bg-btn-hover:#ed79a6;
  --ui-bg:#211e2a; --ui-bg-darker:#17151e; --ui-bg-darkest:#2e2838; --ui-bdc:#36303f;
  --city-accent-soft:#382534; --city-hero:#27202e;
}
html {scroll-behavior:smooth; scroll-padding-top:24px;}
body {background:var(--bg-2); letter-spacing:0; line-height:1.5;}
a, button, input {transition:color .18s, background-color .18s, border-color .18s;}
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible {outline:2px solid var(--accent); outline-offset:4px;}
.wrapper {padding:0; background:var(--bg-2);}
.wrapper-main {box-shadow:none; border-radius:0; background:var(--bg-2);}
.wrapper-container {max-width:var(--max-width);}
.header {min-height:86px; padding:0 var(--indent); gap:0; background:var(--bg-2); border-radius:0; border-bottom:1px solid var(--bdc);}
.header__logo {display:flex; align-items:center; gap:10px; text-transform:none; font-size:25px; letter-spacing:-1px; margin-right:36px;}
.city-logo-mark {width:32px; height:36px; display:grid; place-items:center; background:var(--accent-red); color:var(--bg-2); border-radius:11px 11px 11px 3px; font-size:15px; padding-left:2px; transform:rotate(-5deg);}
.city-logo-dot {color:var(--accent-red); font-weight:500;}
.header__menu {gap:23px;}
.header__menu > li > a {font-size:13px; font-weight:500; height:86px; color:var(--tt-2);}
.header__menu > li > a.is-current {color:var(--tt); box-shadow:inset 0 -2px var(--accent);}
.header__menu-hidden {top:85%; width:600px; background:var(--bg); border:1px solid var(--bdc);}
.header__menu-hidden a {font-size:13px;}
.header__search {width:260px;}
.header__search input, .header__search input:focus {height:40px; line-height:40px; border-radius:24px; background:var(--bg); padding:0 38px 0 17px; box-shadow:inset 0 0 0 1px var(--bdc);}
.header__search input:not(:focus)::placeholder {font-size:12px; color:var(--tt-2);}
.header__search button {height:40px; width:38px; font-size:14px;}
.theme-toggle {width:38px; height:38px; border-radius:50%; background:transparent; box-shadow:none; color:var(--tt-2);}
.header__btn-login {height:38px; padding:0 19px; border-radius:22px; font-size:13px; background:var(--city-accent-soft); color:var(--accent);}
.city-intro {padding:44px var(--indent) 34px; display:flex; align-items:center; justify-content:space-between; gap:25px;}
.city-eyebrow {font-size:10px; letter-spacing:2px; color:var(--accent); font-weight:700; margin-bottom:12px;}
.city-intro h1 {font-size:clamp(26px,3vw,39px); letter-spacing:-1.3px; line-height:1.2; font-weight:700;}
.city-title-dot {color:var(--accent);}
.city-intro-text {margin-top:13px; font-size:14px; color:var(--tt-2);}
.city-catalog-link {flex-shrink:0; font-size:13px; border-bottom:1px solid var(--accent); padding:8px 0; color:var(--tt);}
.city-catalog-link span {margin-left:30px; color:var(--accent); font-size:22px;}
.carou {margin:0 var(--indent); padding:25px 24px 20px; border:1px solid var(--bdc); border-radius:16px; background:var(--car);}
.city-section-head {display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:22px;}
.city-section-head h2 {font-size:21px; font-weight:600; letter-spacing:-.5px;}
.city-spark {font-size:24px; color:var(--accent); margin-right:6px;}
.city-section-note {color:var(--tt-2); font-size:11px;}
.carou .city-section-head {padding-right:80px;}
.carou .poster__title {font-size:13px; font-weight:500; line-height:1.5;}
.carou .poster__subtitle {font-size:10px; margin-top:3px;}
.carou .poster__img {margin-bottom:11px; border-radius:9px;}
.carou .poster__label {background:#211e2ae0; color:#f5eff7; font-size:9px;}
.carou .owl-nav {top:-45px; left:auto; right:0; display:flex; gap:6px;}
.carou .owl-prev, .carou .owl-next {position:static; width:30px; height:30px; border-radius:50%; background:var(--bg-dark)!important; color:var(--tt)!important; font-size:12px;}
.content {padding:38px var(--indent) 50px;}
.city-catalog-head {margin-bottom:23px; scroll-margin-top:24px;}
.city-pills {display:flex; flex-wrap:wrap; align-items:center; gap:8px;}
.city-pills a {font-size:12px; border:1px solid var(--bdc); color:var(--tt-2); border-radius:24px; padding:8px 16px; background:var(--bg);}
.city-pills a:hover {border-color:var(--accent); color:var(--accent);}
.city-pills a.is-current {background:var(--accent-red); color:var(--bg-2); border-color:var(--accent-red); font-weight:600;}
.city-pills-divider {width:1px; height:21px; background:var(--bdc); margin:0 6px;}
.city-finder{padding:20px 22px;margin-bottom:30px;border:1px solid var(--bdc);border-radius:12px;background:var(--bg);}
.city-finder-form{display:flex;align-items:center;gap:24px;}
.city-finder-label{font-size:13px;color:var(--tt);flex-shrink:0;}
.city-finder-input{display:flex;gap:10px;flex:1;}
.city-finder-input input{border-radius:8px;background:var(--bg-2);box-shadow:inset 0 0 0 1px var(--bdc);font-size:13px;height:42px;}
.city-finder-input input::placeholder{color:var(--tt-2);opacity:1;font-size:12px;}
.city-finder-input button{border-radius:8px;background:var(--accent-red);color:var(--bg-2);height:42px;font-size:12px;font-weight:600;gap:8px;}
.city-countries{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;margin-top:16px;font-size:12px;}
.city-countries>span{color:var(--tt-2);font-size:11px;margin-right:8px;}
.city-countries a:hover{color:var(--accent);}
.filter-block {background:var(--bg); border:1px solid var(--bdc); border-radius:12px; padding:18px; margin-bottom:30px;}
.filter-block__form {gap:12px; grid-template-columns:repeat(3,minmax(0,1fr));}
.filter-block__cell-content select, .filter-block__cell-content input[type=text], .filter-block__cell-content--check-group {height:40px; line-height:38px; background-color:var(--bg-2); border-radius:7px; box-shadow:inset 0 0 0 1px var(--bdc); font-size:12px; padding-left:10px;}
.filter-block__cell-content input[type=text]::placeholder {font-size:12px; color:var(--tt-2);}
.filter-block__cell-content select {color:var(--tt-2);}
.filter-block__cell-content select option {background:var(--bg); color:var(--tt);}
.filter-block__cell-content--check-group {padding:0;}
.filter-block__cell-content--check-group label span {font-size:11px; height:40px; line-height:40px;}
.filter-block__cell-content--check-group label input:checked + span {background:var(--city-accent-soft); color:var(--accent);}
.filter-block__cell-content input[type=button] {height:40px; border-radius:7px; font-weight:500; font-size:12px;}
.filter-block__cell-content input[data-dlefilter=submit] {background:var(--accent-red); color:var(--bg-2);}
.filter-block-toggle {border:1px solid var(--bdc); border-radius:9px; background:var(--bg); color:var(--tt); font-size:13px; height:44px;}
.cols {display:grid; grid-template-columns:minmax(0,1fr) 260px; gap:30px;}
.cols__left {min-width:0;}
.grid-items, #dle-content {grid-template-columns:repeat(4,minmax(0,1fr)); gap:26px 20px;}
.poster__img {border-radius:10px; margin-bottom:12px; background:var(--bg);}
.poster__img img {transition:transform .3s ease;}
.poster:hover .poster__img img {transform:scale(1.035);}
.poster__title {font-size:13px; font-weight:500; line-height:1.45; letter-spacing:0; -webkit-line-clamp:2;}
.poster__subtitle {font-size:10px; color:var(--tt-2); margin-top:5px; font-weight:400;}
.poster__label {left:8px; top:8px; background:#292332de; color:#fff; padding:0 7px; height:21px; border-radius:5px; font-size:9px; backdrop-filter:blur(5px);}
.has-overlay__icon {background:rgba(23,18,29,.55);}
.has-overlay__icon::before {width:46px; height:46px;}
.poster__btn-info, .poster__fav a {border-radius:18px; height:29px; font-size:11px;}
.poster__btn-info {background:#cf5e88; color:#fff;}
.cols__right {margin-top:0; min-width:0;}
.sb {background:var(--bg); border:1px solid var(--bdc); border-radius:12px; overflow:hidden;}
.sb--mt {margin-top:22px;}
.sb__title {padding:18px; font-size:15px; display:flex; justify-content:space-between; align-items:center;}
.sb__grid {grid-template-columns:minmax(0,1fr);}
.city-live-dot {width:6px; height:6px; border-radius:50%; background:var(--accent); box-shadow:0 0 0 4px var(--city-accent-soft);}
.ftop-item {padding:14px 16px; gap:12px; align-items:center;}
.ftop-item:last-child {border-bottom:0;}
.ftop-item__img {width:46px; height:66px; flex-shrink:0; margin:0; border-radius:5px;}
.ftop-item__desc {padding-right:16px;}
.ftop-item__title {font-size:12px;}
.ftop-item__meta {font-size:10px; line-height:1.45;}
.ftop-item::before {font-size:24px; right:12px; opacity:.16;}
.city-guide {padding:23px 20px; background:var(--city-hero);}
.city-guide h2 {font-size:25px; line-height:1.18; letter-spacing:-.6px; font-weight:600;}
.city-guide > p:not(.city-eyebrow) {font-size:12px; line-height:1.7; color:var(--tt-2); margin:14px 0 16px;}
.city-guide-links a {font-size:12px; display:flex; justify-content:space-between; padding:11px 0; border-top:1px solid var(--bdc);}
.city-guide-links span {color:var(--accent);}
.city-guide .city-eyebrow {font-size:9px; letter-spacing:1.6px;}
.pagination {margin-top:15px;}
.pagination__pages a, .pagination__pages > span:not(.nav_ext) {border-radius:8px; height:36px; min-width:36px;}
.pagination__pages > span:not(.nav_ext) {background:var(--accent-red); color:var(--bg-2);}
.descr {font-size:12px; line-height:1.85; color:var(--tt-2); border-top:1px solid var(--bdc); margin-top:36px; padding-top:28px;}
.descr h2,.descr h3,.descr h4 {font-size:16px; color:var(--tt);}
.footer {border-top:1px solid var(--bdc); border-radius:0; background:var(--bg-2); color:var(--tt-2); padding:25px var(--indent) 35px; font-size:12px;}
.city-placeholder-socials {display:none;}
.footer__text {font-size:11px;}
.pmovie {border-radius:14px; padding:26px; border:1px solid var(--bdc);}
.pmovie__main {gap:20px 26px;}
.pmovie__header {padding-right:0;}
.pmovie__header h1 {font-size:27px; line-height:1.25; letter-spacing:-.5px;}
.pmovie__header .poster__fav {position:static; margin-top:18px; display:flex; flex-wrap:wrap; gap:8px; justify-content:flex-start;}
.pmovie__header .poster__fav a, .pmovie__header .poster__fav button {height:36px; font-size:11px; padding:0 13px; border-radius:20px;}
.pmovie__header .poster__fav a {color:var(--tt);}
.pmovie__header .poster__fav button {background:var(--accent-red); color:var(--bg-2);}
.pmovie__list {font-size:12px; line-height:1.7;}
.pmovie__list li {padding-left:135px;}
.pmovie__text {font-size:13px; line-height:1.8; color:var(--tt-2);}
.pmovie__subtitle {font-size:18px; margin-top:25px;}
.pmovie__img {border-radius:10px;}
.pmovie__player {border-radius:10px; overflow:hidden;}
.pmovie__player .tabs-block__select button {border-radius:7px; height:38px; padding:0 17px; font-size:12px;}
.dt-is-active .tabs-block__select button.is-active {background:var(--city-accent-soft); color:var(--accent);}
.mobile-menu {background:var(--bg);}
.mobile-menu .header__menu > li > a {height:50px;}
@media(min-width:1221px){.filter-block-toggle{display:none;}.filter-block{display:block;}}
@media(max-width:1220px){
  .header{padding-top:16px;padding-bottom:16px;min-height:76px;}
  .header__logo{margin-right:25px;}
  .header__search{width:auto;max-width:500px;}
  .header__btn-login{background:var(--city-accent-soft);color:var(--accent);box-shadow:none;}
  .header__btn-menu{height:38px;width:38px;background:var(--bg);border:1px solid var(--bdc);border-radius:50%;}
  .filter-block-toggle{margin-bottom:25px;}
  .filter-block{margin-top:-12px;}
  .cols{grid-template-columns:minmax(0,1fr) 230px;gap:24px;}
  .grid-items,#dle-content{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 16px;}
  .poster__title{font-size:12px;}
}
@media(max-width:1000px){
  :root{--indent:26px;--indent-negative:-26px;}
  .cols{grid-template-columns:minmax(0,1fr) 220px;gap:22px;}
  .grid-items,#dle-content{grid-template-columns:repeat(3,minmax(0,1fr));}
  .city-section-note{display:none;}
  .city-intro h1{font-size:32px;}
  .filter-block__form{grid-template-columns:repeat(2,minmax(0,1fr));}
  .pmovie__main{grid-template-columns:150px minmax(0,1fr);gap:18px;}
  .pmovie__img{width:150px;height:225px;}
  .pmovie__header h1{font-size:23px;}
}
@media(max-width:760px){
  :root{--indent:20px;--indent-negative:-20px;}
  .header{flex-wrap:wrap;padding-top:16px;padding-bottom:16px;}
  .header__logo{font-size:23px;flex:1 1 auto;min-width:0;margin-right:8px;}
  .city-logo-mark{width:28px;height:31px;font-size:13px;}
  .header__search{order:10;min-width:100%;margin-top:16px;}
  .header__btn-login{padding:0 13px;margin-left:5px;font-size:12px;}
  .theme-toggle{margin-left:0;width:32px;}
  .header__btn-menu{margin-left:8px;width:34px;height:34px;}
  .city-intro{padding-top:30px;padding-bottom:25px;display:block;}
  .city-intro h1{font-size:30px;max-width:400px;}
  .city-eyebrow{font-size:9px;letter-spacing:1.7px;}
  .city-intro-text{font-size:12px;line-height:1.8;max-width:290px;}
  .city-catalog-link{display:none;}
  .carou{padding:18px 15px 17px;border-radius:12px;}
  .city-section-head h2{font-size:18px;}
  .carou .city-section-head{padding-right:55px;gap:0;margin-bottom:17px;}
  .city-spark{font-size:20px;margin-right:3px;}
  .carou .owl-nav{top:-42px;gap:4px;}
  .carou .owl-prev,.carou .owl-next{width:26px;height:26px;font-size:10px;}
  .carou .poster__title{font-size:12px;}
  .carou .poster__subtitle{font-size:9px;}
  .content{padding-top:28px;padding-bottom:30px;}
  .city-pills{gap:7px;}
  .city-pills a{font-size:11px;padding:7px 12px;}
  .city-pills-divider{display:none;}
  .city-catalog-head{margin-bottom:20px;}
  .city-finder{padding:16px;}.city-finder-form{display:block;}.city-finder-label{display:block;margin-bottom:10px;font-size:12px;}.city-countries{gap:10px 17px;font-size:11px;}.city-countries>span{width:100%;}
  .cols{display:block;}
  .cols__right{margin:35px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start;}
  .cols__right .sb{margin:0;}
  .city-guide h2{font-size:22px;}
  .city-guide{padding:20px 16px;}
  .grid-items,#dle-content{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 14px;}
  .poster__subtitle{font-size:10px;}
  .pmovie{margin:0;padding:18px;border-radius:12px;}
  .pmovie__main{grid-template-areas:"pimg pheader" "plist plist";grid-template-columns:120px minmax(0,1fr);gap:18px 14px;}
  .pmovie__img{width:120px;height:180px;}
  .pmovie__header h1{font-size:20px;display:block;overflow:visible;}
  .pmovie__main-info{font-size:10px;white-space:normal;}
  .pmovie__header .poster__fav{margin-top:12px;gap:6px;}
  .pmovie__header .poster__fav a,.pmovie__header .poster__fav button{font-size:10px;padding:0 10px;height:30px;}
  .pmovie__rating{position:relative;left:auto;bottom:auto;margin:14px 0 0;width:100%;font-size:10px;}
  .pmovie__rating-votes{position:static;font-size:10px;}
  .pmovie__rating-score{top:0;}
  .pmovie__list li{padding-left:120px;}
  .pmovie__subtitle{font-size:16px;}
  .pmovie__player-bottom,.tabs-block__content{margin-left:0;margin-right:0;}
  .footer__top,.footer__bottom,.footer__menu,.footer__text{text-align:left;justify-content:flex-start;}
}
@media(max-width:470px){
  :root{--indent:16px;--indent-negative:-16px;}
  .city-intro h1{font-size:28px;letter-spacing:-.9px;}
  .grid-items,#dle-content{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 14px;}
  .poster__title{font-size:12px;}
  .filter-block{padding:12px;}
  .filter-block__form{grid-template-columns:minmax(0,1fr);}
  .cols__right{grid-template-columns:minmax(0,1fr);}
  .city-guide h2 br{display:none;}
  .city-guide-links{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;}
  .pmovie__main{grid-template-columns:95px minmax(0,1fr);gap:18px 12px;}
  .pmovie__img{width:95px;height:143px;}
  .pmovie__header h1{font-size:18px;}
  .pmovie__list li{padding-left:0;}
  .pmovie__list li > span:first-child{position:static;display:block;}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}*,*::before,*::after{transition:none!important;}}
