/* ==========================================================
   VICE — оформление по макету «Форма и ожидание ответов».
   Подключается ПОСЛЕ style.css. Значения взяты из исходника
   прототипа (NovaOne.dc.html), а не сняты на глаз.
   ========================================================== */

/* ---------- 0. Палитра: переопределяем переменные базы ---------- */
:root{
  --vc-bg:#09060F;
  --vc-surface:#140D22;
  --vc-pressed:#1D1330;
  --vc-bar:#17141c;
  --vc-tab:#0d0817;
  --vc-accent:#FF2E88;
  --vc-warn:#FF7A2F;
  --vc-gold:#E9B44C;
  --vc-ok:#2FD39A;
  --vc-err:#FF4B3E;
  --vc-line:rgba(255,255,255,.06);
  --vc-line2:rgba(255,255,255,.08);
  --vc-field:rgba(255,255,255,.12);
  --vc-sub:rgba(255,255,255,.8);

  --bg-primary:#09060F;
  --bg-secondary:#140D22;
  --bg-card:#140D22;
  --bg-glass:#140D22;
  --border-glass:rgba(255,255,255,.06);
  --text-primary:#FFFFFF;
  --text-secondary:rgba(255,255,255,.8);
  --text-muted:rgba(255,255,255,.7);
  --accent:#FF2E88;
  --accent-light:#FF2E88;
  --accent-dark:#D81B6E;
  --gradient-1:linear-gradient(#FF2E88,#FF2E88);
  --gradient-2:linear-gradient(#FF2E88,#FF2E88);
  --gradient-3:linear-gradient(#FF2E88,#FF2E88);
  --gradient-hero:linear-gradient(#140D22,#140D22);
  --gradient-card:linear-gradient(#140D22,#140D22);
  --shadow-glow:none;
  --radius:14px;
  --radius-sm:12px;
  --radius-xs:8px;
  --header-h:56px;
  --nav-h:60px;
  --font:'Inter',system-ui,sans-serif;
}

/* ---------- 1. Каркас ---------- */
html,body{background:var(--vc-bg)}
body{color:#FFF;font-family:'Inter',system-ui,sans-serif}
body::before{display:none}
.glass-card{background:var(--vc-surface);border:0;backdrop-filter:none;-webkit-backdrop-filter:none}
.page{padding:0 16px 26px}
.support-fab{display:none}

/* ---------- 2. Шапка: стрелка + заголовок ---------- */
.app-header{
  justify-content:flex-start;gap:6px;padding:0 12px 0 10px;
  background:var(--vc-bar);border-bottom:0;
  backdrop-filter:none;-webkit-backdrop-filter:none;
}
.app-header .back-btn{
  position:static;width:38px;height:38px;border-radius:12px;flex:none;color:#FFF;
  background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08);
  align-items:center;justify-content:center;transition:transform .12s,background .12s;
}
.app-header .back-btn:active{transform:scale(.92);background:rgba(255,46,136,.22)}
.app-header .back-btn svg{width:17px;height:17px}
.app-header .header-logo,.app-header .header-city{display:none}
.vc-title{
  font:400 15px/1 'Inter',system-ui,sans-serif;color:#FFF;padding-left:6px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
body.vc-nochrome .app-header{display:none}
body.vc-nochrome .app-main{padding-top:0}

/* ---------- 3. Нижняя панель ---------- */
.bottom-nav{
  height:calc(60px + var(--safe-bottom));
  display:grid;grid-template-columns:repeat(4,1fr);align-items:start;
  background:var(--vc-tab);border-top:1px solid rgba(255,255,255,.1);
  backdrop-filter:none;-webkit-backdrop-filter:none;
}
.bottom-nav .nav-item{
  height:60px;padding:0;gap:6px;justify-content:center;
  color:#FFF;position:relative;
}
.bottom-nav .nav-item svg{width:22px;height:22px}
.bottom-nav .nav-item span{font:600 8.5px/1 'Inter',system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.bottom-nav .nav-item.active{color:var(--vc-accent)}
.bottom-nav .nav-item.active::after{
  top:0;width:30px;height:2px;border-radius:0;background:var(--vc-accent);box-shadow:none;
}
.bottom-nav .nav-item.active svg{filter:none}
body.vc-notab .bottom-nav{display:none}
body.vc-notab .app-main{padding-bottom:calc(16px + var(--safe-bottom))}

/* ---------- 4. Общие элементы экранов ---------- */
.vc-kicker{font:600 9.5px/1 'Inter',system-ui,sans-serif;letter-spacing:.16em;color:#FFF;text-transform:uppercase}
.vc-h1{font:400 19px/1.25 'Russo One',system-ui,sans-serif;color:#FFF;text-transform:uppercase}
.vc-btn{
  height:52px;border-radius:14px;background:var(--vc-accent);color:#FFF;
  display:flex;align-items:center;justify-content:center;
  font:600 15px/1 'Inter',system-ui,sans-serif;border:0;width:100%;cursor:pointer;
}
.vc-btn:active{filter:brightness(.9)}
.vc-btn[disabled],.vc-btn.is-off{background:var(--vc-surface);color:rgba(255,255,255,.45);border:1px solid var(--vc-field)}

/* заглушка «фото нет» */
.vc-nophoto{
  width:100%;aspect-ratio:3/4;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:9px;
  border-bottom:1px solid var(--vc-line2);background:var(--vc-surface);
}
.vc-nophoto i{display:block;width:26px;height:26px;border-radius:7px;background:var(--vc-warn)}
.vc-nophoto span{font:500 9.5px/1 'Inter',system-ui,sans-serif;letter-spacing:.1em;color:#FFF;text-transform:uppercase}

/* ---------- 5. ГЛАВНАЯ ---------- */
#page-main .main-search-bar{display:none}

.vc-topbar{display:flex;align-items:center;justify-content:space-between;padding:16px 0 0}
.vc-city,.vc-balance{background:none;border:0;padding:0;font:inherit;color:#FFF;cursor:pointer;display:flex}
.vc-city{align-items:center;gap:7px;min-height:44px;min-width:0}
.vc-city-name{
  font:400 19px/1.3 'Russo One',system-ui,sans-serif;color:#FFF;text-transform:uppercase;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.vc-city-change{font:400 11px/1 'Inter',system-ui,sans-serif;color:var(--vc-accent);flex:none}
.vc-balance{flex-direction:column;align-items:flex-end;gap:4px;flex:none}
.vc-balance-label{font:500 9px/1 'Inter',system-ui,sans-serif;letter-spacing:.14em;color:var(--vc-sub);text-transform:uppercase}
.vc-balance-value{font:400 16px/1.2 'Russo One',system-ui,sans-serif;color:var(--vc-gold);white-space:nowrap}

/* карусель */
#page-main .hero-carousel{
  margin:16px 0 0;height:210px;border-radius:18px;overflow:hidden;
  position:relative;background:var(--vc-surface);border:0;box-shadow:none;cursor:pointer;
}
#page-main .hero-carousel .hero-slide{height:210px}
#page-main .hero-carousel .hero-slide .hero-slide-bg{
  position:absolute;inset:0;background-color:var(--vc-surface);
  background-size:cover;background-position:center;
}
#page-main .hero-carousel .hero-slide .hero-slide-bg::before{display:none}
#page-main .hero-carousel .hero-slide .hero-slide-bg::after{
  content:'';position:absolute;inset:0;opacity:1;
  background:linear-gradient(90deg,#09060F 0%,rgba(9,6,15,.88) 44%,rgba(9,6,15,.1) 100%);
}
#page-main .hero-carousel .hero-slide-content{
  position:absolute;left:20px;bottom:22px;width:212px;height:auto;padding:0;
  display:flex;flex-direction:column;justify-content:flex-end;gap:10px;
}
#page-main .hero-carousel .hero-slide-sub{
  font:600 10px/1.35 'Inter',system-ui,sans-serif;letter-spacing:.2em;
  color:var(--vc-accent);text-transform:uppercase;text-shadow:none;margin:0;
}
#page-main .hero-carousel .hero-slide-sub + .hero-slide-sub{margin-top:-10px}
#page-main .hero-carousel .hero-slide-title,
#page-main .hero-carousel .hero-slide-title.large{
  font:400 21px/1.25 'Russo One',system-ui,sans-serif;letter-spacing:0;margin:0;
  background:none;-webkit-text-fill-color:#FFF;color:#FFF;text-shadow:none;
}
#page-main .hero-carousel .hero-slide-title.large{font-size:28px}
#page-main .hero-carousel .hero-dots{display:none}

/* промо-полоса */
#page-main .promo-banner{
  margin:18px 0 0;height:104px;min-height:0;border-radius:16px;overflow:hidden;position:relative;
  padding:15px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;
  background:#09060F url('assets/vice/awmii7y1JW.webp') center/cover no-repeat;
  border:0;box-shadow:none;animation:none;
}
#page-main .promo-banner::before{display:none}
#page-main .promo-banner::after{
  content:'';position:absolute;inset:0;z-index:0;animation:none;opacity:1;
  background:linear-gradient(90deg,#09060F 4%,rgba(9,6,15,.88) 54%,rgba(9,6,15,.28) 100%);
}
#page-main .promo-banner-left,#page-main .promo-banner-right{position:relative;z-index:1}
#page-main .promo-banner-left{display:flex;flex-direction:column;gap:8px}
#page-main .promo-banner-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
#page-main .promo-banner-text{
  font:600 9.5px/1 'Inter',system-ui,sans-serif;letter-spacing:.16em;color:#FFF;margin:0;
}
#page-main .promo-banner-badge{
  background:none;padding:0;border-radius:0;box-shadow:none;
  font:400 21px/1.2 'Russo One',system-ui,sans-serif;color:var(--vc-gold);
  -webkit-text-fill-color:var(--vc-gold);
}
#page-main .promo-banner-logo{
  font:500 9px/1 'Inter',system-ui,sans-serif;letter-spacing:.1em;color:#FFF;
  background:none;-webkit-text-fill-color:#FFF;
}
#page-main .promo-banner-timer{
  font:500 16px/1 ui-monospace,Menlo,monospace;color:#FFF;
  font-variant-numeric:tabular-nums;background:none;padding:0;border:0;box-shadow:none;
}

/* заголовок раздела */
#page-main .main-section-header{
  display:flex;align-items:baseline;justify-content:space-between;margin:24px 0 0;
}
#page-main .main-section-header h3{
  font:400 15px/1.2 'Russo One',system-ui,sans-serif;color:#FFF;letter-spacing:0;
  text-transform:uppercase;background:none;-webkit-text-fill-color:#FFF;
}
.vc-catalog-count{font:400 12px/1 'Inter',system-ui,sans-serif;color:var(--vc-accent);cursor:pointer}

/* ---------- 6. Карточка анкеты в сетке (главная, каталог, избранное) ---------- */
.models-preview,.vc-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0 0;
}
.model-preview-card{
  background:var(--vc-surface);border-radius:14px;overflow:hidden;border:0;
  box-shadow:none;cursor:pointer;
}
.model-preview-card:active{transform:none;background:var(--vc-pressed)}
.model-preview-card .model-preview-img{aspect-ratio:3/4;border-radius:0}
.vc-card-info{padding:10px 12px 13px;display:flex;flex-direction:column;gap:5px}
.vc-card-name{
  font:400 15px/1.3 'Russo One',system-ui,sans-serif;color:#FFF;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.vc-card-meta{font:400 11px/1 'Inter',system-ui,sans-serif;color:var(--vc-sub)}
.vc-card-price{font:400 14px/1.2 'Russo One',system-ui,sans-serif;color:#FFF}

/* ---------- 7. Общие компоненты ---------- */
/* шапка раздела на картинке во всю ширину */
.vc-hero{
  position:relative;margin:0 -16px;background:#09060F center/cover no-repeat;
}
.vc-hero::before{content:'';position:absolute;inset:0}
.vc-hero-body{position:relative;padding:18px 16px 16px}
.vc-hero-row{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.vc-hero-col{display:flex;flex-direction:column;gap:8px;min-width:0}
.vc-hero-kicker{font:500 9.5px/1 'Inter',system-ui,sans-serif;letter-spacing:.2em;color:var(--vc-accent);text-transform:uppercase}
.vc-hero-title{font:400 25px/1.25 'Russo One',system-ui,sans-serif;color:#FFF;text-transform:uppercase;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vc-hero-note{font:400 11.5px/1 'Inter',system-ui,sans-serif;color:#FFF}
.vc-ghost-btn{
  flex:none;height:38px;padding:0 13px;border-radius:12px;cursor:pointer;
  background:rgba(9,6,15,.62);border:1px solid rgba(255,255,255,.22);
  font:600 12px/1 'Inter',system-ui,sans-serif;color:#FFF;
}
.vc-hero-catalog{min-height:112px;background-image:url('assets/vice/9kpyjanhUU.webp');background-position:center 46%}
.vc-hero-catalog::before{background:linear-gradient(180deg,rgba(9,6,15,.5) 0%,rgba(9,6,15,.66) 50%,rgba(9,6,15,.96) 92%,#09060F 100%)}

.vc-btn-auto{width:auto;height:48px;padding:0 22px;font-size:14px}
.vc-link{background:none;border:0;padding:0;cursor:pointer;align-self:flex-start;
  font:600 12px/1 'Inter',system-ui,sans-serif;color:var(--vc-accent)}
.vc-link-sm{font:500 11.5px/1 'Inter',system-ui,sans-serif;color:var(--vc-accent)}
.vc-block{margin-top:20px;display:flex;flex-direction:column;gap:10px}

/* пустое состояние */
.vc-empty{display:flex;flex-direction:column;align-items:center;gap:13px;padding:40px 0;text-align:center;grid-column:1/-1}
.vc-empty-sign{width:64px;height:64px;border-radius:18px;background:var(--vc-accent);color:#FFF;
  display:flex;align-items:center;justify-content:center}
.vc-empty-sign.is-warn{width:60px;height:60px;background:var(--vc-warn)}
.vc-empty-sign svg{width:26px;height:26px}
.vc-dash{width:22px;height:2px;background:#FFF}
.vc-empty-title{font:400 16px/1.3 'Russo One',system-ui,sans-serif;color:#FFF}
.vc-empty-text{font:400 12.5px/1.6 'Inter',system-ui,sans-serif;color:#FFF;max-width:262px}

/* скелетон карточки */
.vc-skel-card{aspect-ratio:3/4.9;border-radius:14px;background:var(--vc-surface);position:relative;overflow:hidden}
.vc-skel-card::after{content:'';position:absolute;inset:0;
  background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.04) 50%,transparent 70%);
  background-size:200% 100%;animation:imgShimmer 1.5s ease-in-out infinite}

/* строка выбора (тарифы, способы оплаты) */
.vc-choice{
  min-height:64px;border-radius:14px;background:var(--vc-surface);border:1px solid var(--vc-field);
  padding:0 15px;display:flex;align-items:center;gap:12px;cursor:pointer;
}
.vc-choice + .vc-choice{margin-top:10px}
.vc-choice.is-on{border:1.5px solid var(--vc-accent)}
.vc-radio{flex:none;width:20px;height:20px;border-radius:10px;border:2px solid rgba(255,255,255,.3);
  display:flex;align-items:center;justify-content:center}
.vc-radio i{width:8px;height:8px;border-radius:4px;background:transparent}
.vc-choice.is-on .vc-radio{border-color:var(--vc-accent)}
.vc-choice.is-on .vc-radio i{background:var(--vc-accent)}
.vc-choice-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}
.vc-choice-name{font:600 14px/1 'Inter',system-ui,sans-serif;color:#FFF}
.vc-choice-note{font:400 11px/1 'Inter',system-ui,sans-serif;color:var(--vc-sub)}
.vc-choice-price{font:400 18px/1.2 'Russo One',system-ui,sans-serif;color:#FFF;font-variant-numeric:tabular-nums;white-space:nowrap}

/* звёзды квадратами */
.vc-stars{display:flex;gap:3px}
.vc-stars i{width:11px;height:11px;border-radius:3px;background:rgba(255,255,255,.2)}
.vc-stars i.on{background:var(--vc-gold)}
.vc-stars-lg{gap:4px}
.vc-stars-lg i{width:13px;height:13px}

/* залипающая панель с главной кнопкой */
.vc-sticky{
  position:fixed;left:0;right:0;bottom:0;z-index:90;
  background:rgba(9,6,15,.94);border-top:1px solid var(--vc-field);
  padding:12px 16px calc(14px + var(--safe-bottom));
}
#page-model-detail:not(.active) .vc-sticky{display:none}

/* ---------- 8. КАТАЛОГ ---------- */
#page-models .catalog-toolbar{margin:14px 0 0;gap:8px;padding:0}
#page-models .sort-select,#page-models .filter-chip{
  height:34px;padding:0 13px;border-radius:17px;background:var(--vc-surface);
  border:1px solid var(--vc-field);color:#FFF;font:500 12px/1 'Inter',system-ui,sans-serif;
  box-shadow:none;white-space:nowrap;
}
#page-models .filter-chip.active,#page-models .sort-select.active{
  background:rgba(255,46,136,.16);border-color:var(--vc-accent);color:var(--vc-accent);
}
#modelsList.vc-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0 0}

/* ---------- 9. КАРТОЧКА МОДЕЛИ ---------- */
#page-model-detail{position:relative;padding-bottom:96px}
#page-model-detail .model-gallery{margin:0 -16px;height:410px;border-radius:0;
  background:repeating-linear-gradient(135deg,#1d1330 0 9px,#150e26 9px 18px)}
#page-model-detail .model-gallery::after{height:70px;background:linear-gradient(180deg,rgba(9,6,15,0),#09060F)}
#page-model-detail .gallery-img{object-position:center 20%}
#page-model-detail .gallery-img.vc-nophoto{height:100%;aspect-ratio:auto;border:0;display:none}
#page-model-detail .gallery-img.vc-nophoto.active{display:flex}
#page-model-detail .gallery-nav{bottom:10px;gap:5px;z-index:2}
#page-model-detail .gallery-dot{width:4px;height:3px;border-radius:2px;background:rgba(255,255,255,.5)}
#page-model-detail .gallery-dot.active{width:16px;background:var(--vc-accent)}
#page-model-detail .gallery-expand-btn{
  top:64px;right:12px;left:auto;bottom:auto;width:44px;height:44px;border-radius:14px;
  background:rgba(9,6,15,.6);backdrop-filter:none;border:0;color:#FFF;
}
#page-model-detail .vc-fav-photo{
  position:absolute;top:12px;right:12px;z-index:5;width:44px;height:44px;border-radius:14px;
  background:rgba(9,6,15,.6);color:#FFF;display:flex;align-items:center;justify-content:center;
  border:0;box-shadow:none;
}
#page-model-detail .vc-fav-photo svg{width:21px;height:21px}
#page-model-detail .vc-fav-photo.active{color:var(--vc-accent)}
#page-model-detail .vc-fav-photo.active svg{fill:var(--vc-accent)}

#page-model-detail .model-detail-content{padding-top:14px}
#page-model-detail .model-name-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:0}
.vc-name-col{flex:1;min-width:0;display:flex;flex-direction:column;gap:7px}
#page-model-detail .model-name-row h2{
  font:400 24px/1.3 'Russo One',system-ui,sans-serif;color:#FFF;margin:0;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  background:none;-webkit-text-fill-color:#FFF;
}
.vc-model-meta{font:400 12px/1.3 'Inter',system-ui,sans-serif;color:rgba(255,255,255,.85)}
.vc-rating{flex:none;height:32px;padding:0 11px;border-radius:11px;background:var(--vc-surface);border:0;
  display:flex;align-items:center;gap:6px;cursor:pointer;color:#FFF;font:600 12.5px/1 'Inter',system-ui,sans-serif}
.vc-rating i{width:6px;height:6px;border-radius:3px;background:var(--vc-gold)}

.vc-params{margin-top:16px;display:flex;gap:8px}
.vc-param{flex:1;border-radius:12px;background:var(--vc-surface);padding:11px;display:flex;flex-direction:column;gap:6px;min-width:0}
.vc-param span{font:600 8.5px/1 'Inter',system-ui,sans-serif;letter-spacing:.12em;color:var(--vc-sub);text-transform:uppercase}
.vc-param b{font:500 13px/1 'Inter',system-ui,sans-serif;color:#FFF;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

#page-model-detail .model-tags{margin-top:14px;display:flex;flex-wrap:wrap;gap:7px}
#page-model-detail .model-tag{
  height:30px;padding:0 11px;border-radius:15px;background:var(--vc-surface);border:0;
  display:flex;align-items:center;font:500 11.5px/1 'Inter',system-ui,sans-serif;color:#FFF;box-shadow:none;
}
#page-model-detail .model-desc{
  background:none;border:0;padding:0;margin:0;
  font:400 13.5px/1.7 'Inter',system-ui,sans-serif;color:#FFF;text-wrap:pretty;white-space:pre-line;
  display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;
}
#page-model-detail .model-desc.is-open{display:block;-webkit-line-clamp:unset}
#page-model-detail .model-prices{background:none;border:0;padding:0;margin:0}

.vc-reviews-card{margin-top:22px;border-radius:14px;background:var(--vc-surface);padding:15px;
  display:flex;flex-direction:column;gap:12px;cursor:pointer}
.vc-reviews-head{display:flex;align-items:center;justify-content:space-between}
.vc-reviews-one{padding-top:12px;border-top:1px solid var(--vc-line2);display:flex;flex-direction:column;gap:7px}
.vc-rev-row{display:flex;justify-content:space-between;gap:10px}
.vc-rev-author{font:600 12.5px/1 'Inter',system-ui,sans-serif;color:#FFF}
.vc-rev-date{font:400 10.5px/1 ui-monospace,Menlo,monospace;color:rgba(255,255,255,.75);white-space:nowrap}
.vc-rev-text{font:400 12.5px/1.6 'Inter',system-ui,sans-serif;color:#FFF}

/* ---------- 10. ОТЗЫВЫ ---------- */
#page-reviews{padding-top:18px}
.vc-rev-summary{border-radius:16px;background:var(--vc-surface);padding:16px;
  display:flex;align-items:center;justify-content:space-between}
.vc-rev-col{display:flex;flex-direction:column;gap:7px}
.vc-rev-big{font:400 30px/1.15 'Russo One',system-ui,sans-serif;color:var(--vc-gold)}
.vc-rev-count{font:400 11.5px/1 'Inter',system-ui,sans-serif;color:#FFF}
#page-reviews .write-review-btn{
  margin:12px 0 0;width:100%;height:48px;border-radius:14px;background:transparent;
  border:1px solid var(--vc-field);color:#FFF;font:600 13.5px/1 'Inter',system-ui,sans-serif;box-shadow:none;
}
#page-reviews .reviews-list{margin-top:12px;display:flex;flex-direction:column;gap:12px}
#page-reviews .review-item{border-radius:14px;background:var(--vc-surface);border:0;padding:15px;
  display:flex;flex-direction:column;gap:9px;margin:0}
#page-reviews .review-header{display:flex;align-items:center;justify-content:space-between;margin:0}
#page-reviews .review-author{font:600 12.5px/1 'Inter',system-ui,sans-serif;color:#FFF}
#page-reviews .review-date{font:400 10.5px/1 ui-monospace,Menlo,monospace;color:rgba(255,255,255,.75)}
#page-reviews .review-body{font:400 13px/1.65 'Inter',system-ui,sans-serif;color:#FFF;text-wrap:pretty}
#page-reviews .reviews-pager{margin-top:14px;display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
#page-reviews .pager-btn{width:34px;height:34px;border-radius:10px;background:var(--vc-surface);border:0;
  color:#FFF;font:600 12.5px/1 'Inter',system-ui,sans-serif}
#page-reviews .pager-btn.active{background:var(--vc-accent);color:#FFF}

/* переход между экранами не должен оставлять transform:
   иначе position:fixed внутри страницы считается от страницы */
.page.slide-in,.page.slide-back{animation-fill-mode:backwards}

/* ---------- 11. Общие: заголовки экранов, строки списка ---------- */
.vc-head{display:flex;flex-direction:column;gap:9px;padding-top:18px}
.vc-head-row{flex-direction:row;align-items:baseline;justify-content:space-between}
.vc-h1-lg{font-size:22px}
.vc-lead{font:400 12.5px/1.6 'Inter',system-ui,sans-serif;color:#FFF}
.vc-count{font:500 12px/1 'Inter',system-ui,sans-serif;color:var(--vc-accent)}
.vc-label{font:600 9px/1 'Inter',system-ui,sans-serif;letter-spacing:.14em;color:rgba(255,255,255,.85);text-transform:uppercase}
.vc-kicker-sm{font:500 9px/1 'Inter',system-ui,sans-serif;letter-spacing:.1em;color:#FFF;text-transform:uppercase}
.vc-mono{font:500 11.5px/1 ui-monospace,Menlo,monospace;color:#FFF}
.vc-mono-lg{font:500 16px/1 ui-monospace,Menlo,monospace;color:#FFF;font-variant-numeric:tabular-nums}
.vc-gap5{gap:5px}.vc-gap11{gap:11px}
.vc-btn-sm{width:auto;height:44px;padding:0 16px;border-radius:12px;font-size:13px}
.vc-btn-48{height:48px;font-size:14px;text-decoration:none}
.vc-mini-btn{height:26px;padding:0 9px;border-radius:8px;background:rgba(9,6,15,.6);
  border:1px solid rgba(255,255,255,.22);font:600 10px/1 'Inter',system-ui,sans-serif;color:#FFF;cursor:pointer}
.vc-mini-btn.is-ok{color:var(--vc-ok);border-color:rgba(47,211,154,.5)}
.is-gold{color:var(--vc-gold)}

.vc-list{margin-top:18px;border-radius:14px;background:var(--vc-surface);overflow:hidden}
.vc-row{width:100%;min-height:58px;padding:0 15px;display:flex;align-items:center;gap:13px;color:#FFF;
  background:none;border:0;border-top:1px solid var(--vc-line);cursor:pointer;text-align:left}
.vc-row:first-child{border-top:0}
.vc-row:active{background:var(--vc-pressed)}
.vc-row-ico{flex:none;display:block}
.vc-row-ico.is-pink{color:var(--vc-accent)}
.vc-row-label{flex:1;font:500 14px/1 'Inter',system-ui,sans-serif}
.vc-row-note{display:none}
.vc-badge{min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--vc-accent);
  display:flex;align-items:center;justify-content:center;font:700 11px/1 'Inter',system-ui,sans-serif;color:#FFF}
.vc-chev{flex:none}

/* ---------- 12. ПОИСК ---------- */
#page-search{display:none}
#page-search.active{display:flex;flex-direction:column;gap:14px}
#page-search .vc-code-field{
  height:56px;border-radius:14px;background:var(--vc-surface);border:1px solid var(--vc-field);
  display:flex;align-items:center;justify-content:space-between;padding:0 15px;margin:0;box-shadow:none;
}
#page-search .vc-code-field.is-on{border:1.5px solid var(--vc-accent)}
#page-search #searchInput{
  flex:1;min-width:0;background:none;border:0;outline:0;padding:0;
  font:400 19px/1 ui-monospace,Menlo,monospace;letter-spacing:.14em;color:#FFF;caret-color:transparent;
}
#page-search #searchInput::placeholder{color:rgba(255,255,255,.55);letter-spacing:.06em}
#page-search .search-clear{position:static;width:26px;height:26px;border-radius:13px;background:var(--vc-pressed);
  color:#FFF;font:400 12px/1 'Inter',system-ui,sans-serif;align-items:center;justify-content:center;border:0}
#page-search .search-results{margin:0}
#page-search .search-results .vc-empty{padding:10px 0;gap:12px}
#page-search .vc-empty-sign{width:60px;height:60px}
.vc-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.vc-key{height:48px;border-radius:12px;background:var(--vc-surface);border:0;color:#FFF;cursor:pointer;
  font:500 18px/1 ui-monospace,Menlo,monospace}
.vc-key:active{background:var(--vc-pressed)}
.vc-sr-list{display:flex;flex-direction:column;gap:8px}
.vc-sr{border-radius:14px;background:var(--vc-surface);padding:12px;display:flex;align-items:center;gap:12px;cursor:pointer}
.vc-sr-thumb{flex:none;width:56px;height:56px;border-radius:12px;object-fit:cover;
  background:repeating-linear-gradient(135deg,#1d1330 0 6px,#150e26 6px 12px)}
.vc-sr-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}
.vc-sr-price{font:400 13.5px/1.2 'Russo One',system-ui,sans-serif;color:#FFF;white-space:nowrap}

/* ---------- 13. ПРОФИЛЬ ---------- */
.vc-hero-profile{min-height:176px;background-image:url('assets/vice/CnSl7zizIn.webp');background-position:center 56%}
.vc-hero-profile::before{background:linear-gradient(180deg,rgba(9,6,15,.42) 0%,rgba(9,6,15,.58) 44%,rgba(9,6,15,.95) 88%,#09060F 100%)}
.vc-profile-body{padding:16px 16px 20px;display:flex;flex-direction:column;gap:20px}
.vc-profile-top{display:flex;align-items:center;gap:13px}
.vc-avatar{flex:none;width:56px;height:56px;border-radius:20px;background:rgba(9,6,15,.6);border:1.5px solid var(--vc-accent);
  display:flex;align-items:center;justify-content:center;font:400 23px/1 'Russo One',system-ui,sans-serif;color:#FFF}
.vc-profile-who{flex:1;min-width:0;display:flex;flex-direction:column;gap:7px}
.vc-profile-who h2{font:400 19px/1.3 'Russo One',system-ui,sans-serif;color:#FFF;margin:0;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:none;-webkit-text-fill-color:#FFF}
.vc-profile-idrow{display:flex;align-items:center;gap:8px}
.vc-profile-bal{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.vc-bal-big{font:400 32px/1.15 'Russo One',system-ui,sans-serif;color:var(--vc-gold);font-variant-numeric:tabular-nums;
  background:none;-webkit-text-fill-color:var(--vc-gold)}
.vc-facts{margin-top:2px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:9px}

/* ---------- 14. ПОПОЛНЕНИЕ ---------- */
#page-topup{padding-top:18px}
#page-topup.active{display:flex;flex-direction:column;gap:14px}
.vc-bonus-banner{position:relative;min-height:104px;border-radius:14px;overflow:hidden;
  background:#09060F url('assets/vice/awmii7y1JW.webp') center/cover no-repeat}
.vc-bonus-banner::before{content:'';position:absolute;inset:0;
  background:linear-gradient(90deg,#09060F 6%,rgba(9,6,15,.88) 56%,rgba(9,6,15,.3) 100%)}
.vc-bonus-in{position:relative;padding:15px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.vc-bonus-pct{font:400 22px/1.2 'Russo One',system-ui,sans-serif;color:var(--vc-gold)}
.vc-bonus-timer{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.vc-bonus-act{position:relative;margin:0 15px 14px;height:32px;padding:0 12px}
.vc-bonus-act.activated{color:var(--vc-ok);border-color:rgba(47,211,154,.5)}
.vc-amount{border-radius:16px;background:var(--vc-surface);padding:18px;display:flex;flex-direction:column;gap:9px;align-items:center}
.vc-amount-row{display:flex;align-items:baseline;justify-content:center;gap:8px;width:100%}
.vc-amount-row input{width:100%;min-width:0;max-width:220px;background:none;border:0;outline:0;padding:0;text-align:right;
  font:400 38px/1.15 'Russo One',system-ui,sans-serif;color:#FFF;font-variant-numeric:tabular-nums;-moz-appearance:textfield}
.vc-amount-row input::-webkit-outer-spin-button,.vc-amount-row input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.vc-amount-row input::placeholder{color:rgba(255,255,255,.3)}
.vc-amount-row span{flex:1;font:400 38px/1.15 'Russo One',system-ui,sans-serif;color:#FFF}
.vc-amount-hint{font:400 11px/1 'Inter',system-ui,sans-serif;color:var(--vc-sub)}
#page-topup .vc-presets{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:0}
#page-topup .vc-presets button{height:50px;border-radius:13px;background:var(--vc-surface);border:1px solid var(--vc-field);
  font:600 14px/1 'Inter',system-ui,sans-serif;color:rgba(255,255,255,.85);box-shadow:none}
#page-topup .vc-presets button.is-on{border:1.5px solid var(--vc-accent);color:#FFF}
.vc-sum-card{border-radius:14px;background:var(--vc-surface);padding:16px;display:flex;flex-direction:column;gap:11px}
.vc-sum-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font:400 12.5px/1.2 'Inter',system-ui,sans-serif;color:#FFF}
.vc-sum-row b{font:600 13px/1 'Inter',system-ui,sans-serif;font-variant-numeric:tabular-nums;white-space:nowrap}
.vc-sum-row b.vc-ru{font:400 14px/1.2 'Russo One',system-ui,sans-serif}
.vc-sum-row em{font:400 11px/1.2 'Inter',system-ui,sans-serif;font-style:normal;color:var(--vc-warn)}
.vc-sum-row.is-total{padding-top:11px;border-top:1px solid var(--vc-line2);font-weight:600}
.vc-sum-row.is-total b.vc-ru{font-size:20px}

/* ---------- 15. ИЗБРАННОЕ ---------- */
#page-favorites .fav-city-tabs{margin-top:12px;display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}
#page-favorites .fav-city-tab{flex:none;height:32px;padding:0 13px;border-radius:16px;background:var(--vc-surface);
  border:1px solid var(--vc-field);display:flex;align-items:center;font:500 12px/1 'Inter',system-ui,sans-serif;color:#FFF}
#page-favorites .fav-city-tab.active{background:rgba(255,46,136,.16);border-color:var(--vc-accent);color:var(--vc-accent)}
#page-favorites .models-preview{margin-top:14px}
#page-favorites .vc-card-meta{display:none}

/* ---------- 16. ПРОМОКОД ---------- */
#page-promo{padding-top:4px}
#page-promo.active{display:flex;flex-direction:column;gap:14px}
.vc-code-input{height:58px;border-radius:14px;background:var(--vc-surface);border:1px solid var(--vc-field);outline:0;
  padding:0 16px;font:400 18px/1 ui-monospace,Menlo,monospace;letter-spacing:.14em;color:#FFF;text-transform:uppercase;width:100%}
.vc-code-input::placeholder{color:rgba(255,255,255,.55)}
.vc-code-input.is-on{border:1.5px solid var(--vc-accent)}
#page-promo .promo-result{display:none;margin:0;padding:0;background:none;border:0}
#page-promo .promo-result.success{display:flex;flex-direction:column;align-items:center;gap:14px;border-radius:16px;
  background:var(--vc-surface);border:1px solid rgba(47,211,154,.5);padding:20px}
#page-promo .promo-result.error{display:flex;align-items:center;gap:12px;border-radius:14px;
  background:var(--vc-surface);border:1px solid rgba(255,75,62,.55);padding:14px}
.vc-ok-sign{width:60px;height:60px;border-radius:20px;background:var(--vc-ok);display:flex;align-items:center;justify-content:center}
.vc-ok-sign svg{width:28px;height:28px}
.vc-ok-title{font:400 19px/1.25 'Russo One',system-ui,sans-serif;color:#FFF;text-align:center}
.vc-ok-text{width:100%;padding-top:14px;border-top:1px solid var(--vc-line2);font:400 12.5px/1.5 'Inter',system-ui,sans-serif;color:#FFF;text-align:center}
.vc-err-sign{flex:none;width:30px;height:30px;border-radius:11px;background:var(--vc-err);display:flex;align-items:center;justify-content:center}
.vc-err-sign i{width:12px;height:2px;background:#FFF}
.vc-err-title{font:600 13px/1.2 'Inter',system-ui,sans-serif;color:var(--vc-err)}
.vc-err-text{font:400 11.5px/1.4 'Inter',system-ui,sans-serif;color:#FFF}

/* ---------- 17. ИНФО ---------- */
#page-info > .section-header{display:none}
.vc-hero-info{min-height:184px;background-image:url('assets/vice/uGrpEDEPmr.webp');background-position:center 52%}
.vc-hero-info::before{background:linear-gradient(180deg,rgba(9,6,15,.5) 0%,rgba(9,6,15,.78) 46%,rgba(9,6,15,.97) 90%,#09060F 100%)}
.vc-hero-info .vc-hero-body{padding:22px 16px 20px}
.vc-info-title{font:400 26px/1.2 'Russo One',system-ui,sans-serif;color:#FFF}
.vc-hero-info .vc-lead{max-width:290px}
.vc-support{margin-top:16px;border-radius:16px;background:var(--vc-surface);border:1px solid rgba(255,46,136,.45);
  padding:16px;display:flex;flex-direction:column;gap:13px}
.vc-support-top{display:flex;align-items:center;gap:12px}
.vc-support-ico{flex:none;width:38px;height:38px;border-radius:13px;background:var(--vc-accent);color:#FFF;
  display:flex;align-items:center;justify-content:center}
.vc-support-name{font:600 14.5px/1 'Inter',system-ui,sans-serif;color:#FFF}
.vc-support-note{font:400 11.5px/1 'Inter',system-ui,sans-serif;color:rgba(255,255,255,.85)}
#page-info .info-section{margin-top:12px}
#page-info .info-content{border-radius:14px;background:var(--vc-surface);border:0;padding:16px}
#page-info .info-content h3{font:400 19px/1.25 'Russo One',system-ui,sans-serif;color:#FFF;margin:0 0 12px;
  background:none;-webkit-text-fill-color:#FFF}
#page-info .info-content p,#page-info .info-content li{font:400 13.5px/1.7 'Inter',system-ui,sans-serif;color:#FFF}
#page-info .info-content strong{color:#FFF;font-weight:600}
#page-info .info-content a.btn-primary{height:48px;border-radius:14px;background:var(--vc-accent);display:flex;
  align-items:center;justify-content:center}
#info-faq .info-content{background:none;padding:0}
#info-faq .faq-item{border-radius:14px;background:var(--vc-surface);padding:16px;margin:0 0 10px;cursor:pointer;border:0}
#info-faq .faq-q{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:0;
  font:600 14px/1.4 'Inter',system-ui,sans-serif;color:#FFF}
.vc-faq-sign{flex:none;width:26px;height:26px;border-radius:9px;background:#09060F;display:flex;align-items:center;
  justify-content:center;font:400 15px/1 'Inter',system-ui,sans-serif;color:#FFF}
#info-faq .faq-item.is-open .vc-faq-sign{background:var(--vc-accent)}
#info-faq .faq-a{display:none;margin:13px 0 0;padding-top:13px;border-top:1px solid var(--vc-line2);
  font:400 13.5px/1.7 'Inter',system-ui,sans-serif;color:#FFF}
#info-faq .faq-item.is-open .faq-a{display:block}

.vc-sum-card[hidden],.topup-total-info[hidden]{display:none}

/* ---------- 18. ЗАКАЗ ---------- */
#page-order{padding-top:16px;padding-bottom:170px}
#page-order .order-model-header{border-radius:14px;background:var(--vc-surface);padding:13px;margin:0 0 18px;
  display:flex;flex-direction:column;gap:5px;border:0;box-shadow:none}
#page-order .order-model-name{font:400 15px/1.3 'Russo One',system-ui,sans-serif;color:#FFF}
#page-order .order-model-city{font:400 11px/1 'Inter',system-ui,sans-serif;color:var(--vc-sub)}
#page-order .order-section-row{display:flex;align-items:baseline;justify-content:space-between;margin:0 0 10px}
#page-order .order-section-title,#page-order .order-params-header,#page-order h3{
  font:600 9.5px/1 'Inter',system-ui,sans-serif;letter-spacing:.16em;color:#FFF;text-transform:uppercase;
  background:none;-webkit-text-fill-color:#FFF;margin:18px 0 10px}
#page-order .order-from-price{font:400 14px/1.2 'Russo One',system-ui,sans-serif;color:#FFF}
#page-order .day-night-toggle{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 14px}
#page-order .dn-btn{height:44px;border-radius:12px;background:var(--vc-surface);border:1px solid var(--vc-field);
  color:rgba(255,255,255,.85);font:600 13px/1 'Inter',system-ui,sans-serif}
#page-order .dn-btn.active{background:var(--vc-accent);border-color:var(--vc-accent);color:#FFF}
#page-order .chips-scroll{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:0 0 2px;margin:0 0 14px}
#page-order .chips-scroll::-webkit-scrollbar{display:none}
#page-order .date-chip{flex:none;width:58px;height:66px;border-radius:13px;background:var(--vc-surface);
  border:1px solid var(--vc-field);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#FFF}
#page-order .date-chip .date-dow{font:500 9.5px/1 'Inter',system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase;order:-1}
#page-order .date-chip .date-main{font:400 18px/1.2 'Russo One',system-ui,sans-serif}
#page-order .date-chip.active{background:var(--vc-accent);border-color:var(--vc-accent)}
#page-order .date-chip.disabled,#page-order .time-chip.disabled{color:rgba(255,255,255,.35)}
#page-order #timeChips{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;overflow:visible}
#page-order .time-chip{height:44px;border-radius:12px;background:var(--vc-surface);border:1px solid var(--vc-field);
  display:flex;align-items:center;justify-content:center;font:500 13px/1 ui-monospace,Menlo,monospace;color:#FFF}
#page-order .time-chip.active{background:var(--vc-accent);border-color:var(--vc-accent)}
#page-order .dur-chip{flex:none;min-height:56px;padding:0 14px;border-radius:13px;background:var(--vc-surface);
  border:1px solid var(--vc-field);display:flex;flex-direction:column;justify-content:center;gap:4px;color:#FFF}
#page-order .dur-chip.active{border:1.5px solid var(--vc-accent)}
#page-order .dur-label{font:600 13px/1 'Inter',system-ui,sans-serif}
#page-order .dur-price{font:400 12px/1 'Inter',system-ui,sans-serif;color:var(--vc-sub)}
#page-order .extra-services{border-radius:14px;background:var(--vc-surface);overflow:hidden;display:block}
#page-order .extra-service-item{min-height:52px;padding:0 15px;display:flex;align-items:center;gap:12px;
  border-top:1px solid var(--vc-line);background:none;border-radius:0;margin:0}
#page-order .extra-service-item:first-child{border-top:0}
#page-order .extra-left{flex:1;display:flex;align-items:center;gap:12px;min-width:0}
#page-order .check-icon{flex:none;width:20px;height:20px;border-radius:6px;border:1.5px solid rgba(255,255,255,.28);
  display:flex;align-items:center;justify-content:center;color:#FFF;background:none}
#page-order .extra-service-item.selected .check-icon{background:var(--vc-accent);border-color:var(--vc-accent)}
#page-order .service-name{font:500 13.5px/1.3 'Inter',system-ui,sans-serif;color:#FFF}
#page-order .service-price{font:400 13px/1.2 'Russo One',system-ui,sans-serif;color:#FFF;white-space:nowrap}
#page-order .rules-card{border-radius:14px;background:var(--vc-surface);padding:15px}
#page-order .rules-card li{font:400 12.5px/1.7 'Inter',system-ui,sans-serif;color:#FFF}
#page-order .tariffs{display:flex;flex-direction:column;gap:10px}
#page-order .tariff-item{min-height:64px;border-radius:14px;background:var(--vc-surface);border:1px solid var(--vc-field);
  padding:0 15px;display:flex;align-items:center;justify-content:space-between;gap:12px}
#page-order .tariff-item.active,#page-order .tariff-item.selected{border:1.5px solid var(--vc-accent)}
#page-order .tariff-label{font:600 14px/1 'Inter',system-ui,sans-serif;color:#FFF}
#page-order .tariff-price{font:400 18px/1.2 'Russo One',system-ui,sans-serif;color:#FFF;
  background:none;-webkit-text-fill-color:#FFF;font-variant-numeric:tabular-nums}

/* липкая сводка заказа */
#page-order .order-summary{
  position:fixed;left:0;right:0;bottom:0;z-index:90;border-radius:0;margin:0;
  background:rgba(9,6,15,.94);border:0;border-top:1px solid var(--vc-field);
  padding:12px 16px calc(14px + var(--safe-bottom));display:flex;flex-direction:column;gap:9px;
}
#page-order:not(.active) .order-summary{display:none}
#page-order .summary-top{display:flex;align-items:baseline;justify-content:space-between}
#page-order .summary-label{font:400 11.5px/1 'Inter',system-ui,sans-serif;color:var(--vc-sub)}
#page-order .summary-reset{font:500 11.5px/1 'Inter',system-ui,sans-serif;color:var(--vc-accent);cursor:pointer}
#page-order .summary-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
#page-order .summary-datetime{font:400 12px/1.3 'Inter',system-ui,sans-serif;color:#FFF}
#page-order .summary-price{font:400 22px/1.2 'Russo One',system-ui,sans-serif;color:#FFF;
  background:none;-webkit-text-fill-color:#FFF;font-variant-numeric:tabular-nums}
#page-order .crypto-discount-banner{display:flex;align-items:center;justify-content:space-between;gap:8px;
  font:400 11px/1.4 'Inter',system-ui,sans-serif;color:var(--vc-ok);background:none;border:0;padding:0;margin:0}
#page-order .btn-order-submit{height:52px;border-radius:14px;background:var(--vc-accent);color:#FFF;
  font:600 15px/1 'Inter',system-ui,sans-serif;border:0;width:100%}
#page-order .btn-order-submit:disabled,#page-order .btn-order-submit.disabled{
  background:var(--vc-surface);color:rgba(255,255,255,.45);border:1px solid var(--vc-field)}

/* скидка за баланс */
.balance-discount-banner{border-radius:16px;overflow:hidden;position:relative;min-height:96px;margin:14px 0 0;
  background:#09060F url('assets/vice/awmii7y1JW.webp') center/cover no-repeat;display:block;cursor:pointer}
.balance-discount-banner::before{content:'';position:absolute;inset:0;
  background:linear-gradient(90deg,#09060F 4%,rgba(9,6,15,.9) 56%,rgba(9,6,15,.3) 100%)}
.balance-discount-banner .bdb-left,.balance-discount-banner .bdb-right{position:relative}

/* ---------- 19. ОПЛАТА ---------- */
#page-payment{padding-top:16px}
#page-payment .payment-detail{background:none;border:0;padding:0;margin:0}
#page-order .payment-methods,#page-payment .payment-methods{display:flex;flex-direction:column;gap:9px;margin:0}
.payment-card{min-height:60px;border-radius:14px;background:var(--vc-surface);border:1px solid var(--vc-field);
  padding:0 15px;display:flex;align-items:center;gap:12px;width:100%;box-shadow:none;position:relative}
.payment-card.selected,.payment-card.active{border:1.5px solid var(--vc-accent)}
.payment-card .pay-icon{flex:none;color:#FFF}
.payment-card div{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px;text-align:left}
.payment-card strong{font:600 13.5px/1 'Inter',system-ui,sans-serif;color:#FFF}
.payment-card small{font:400 11px/1.3 'Inter',system-ui,sans-serif;color:var(--vc-sub)}
.vc-tag{flex:none;height:22px;padding:0 8px;border-radius:11px;display:flex;align-items:center;
  font:600 9px/1 'Inter',system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.vc-tag.is-now{background:rgba(47,211,154,.16);color:var(--vc-ok)}
.vc-tag.is-wait{background:rgba(255,122,47,.16);color:var(--vc-warn)}
.vc-tag.is-place{background:rgba(255,255,255,.12);color:#FFF}
.payment-card.payment-disabled{opacity:.55}
#page-payment .payment-detail h3{font:400 19px/1.25 'Russo One',system-ui,sans-serif;color:#FFF;margin:0 0 12px;
  background:none;-webkit-text-fill-color:#FFF}
.pay-field{border-radius:14px;background:var(--vc-surface);padding:14px;display:flex;flex-direction:column;gap:8px;margin:0 0 10px}
.pay-label{font:500 9.5px/1 'Inter',system-ui,sans-serif;letter-spacing:.12em;color:var(--vc-sub);text-transform:uppercase}
.pay-value{font:500 15px/1.5 ui-monospace,Menlo,monospace;color:#FFF;word-break:break-all}
.payment-upload{margin-top:14px;display:flex;flex-direction:column;gap:10px}
.payment-upload .btn-paid{min-height:96px;border-radius:14px;background:var(--vc-surface);
  border:1px dashed rgba(255,255,255,.2);flex-direction:column;gap:9px;padding:16px}
.payment-button-text{font:600 12.5px/1.3 'Inter',system-ui,sans-serif;color:#FFF}
.payment-receipt-file-name{font:400 11.5px/1.4 'Inter',system-ui,sans-serif;color:var(--vc-ok);text-align:center}
.btn-payment-back{background:none;border:1px solid var(--vc-field);height:48px;border-radius:14px;
  color:#FFF;font:600 13.5px/1 'Inter',system-ui,sans-serif}

/* ---------- 20. СТАТУС ЗАКАЗА ---------- */
.order-status-overlay{background:#09060F;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:0 28px}
.order-status-icon{width:76px;height:76px;border-radius:24px;background:var(--vc-accent);display:flex;align-items:center;justify-content:center}
.order-status-title{font:400 21px/1.25 'Russo One',system-ui,sans-serif;color:#FFF;text-align:center;
  background:none;-webkit-text-fill-color:#FFF}
.order-status-sub{font:400 13px/1.6 'Inter',system-ui,sans-serif;color:#FFF;text-align:center;max-width:300px}
.order-progress-bar{width:190px;height:4px;border-radius:2px;background:var(--vc-surface);overflow:hidden}
.order-progress-fill{height:4px;background:var(--vc-accent)}
.order-status-actions{display:flex;flex-direction:column;gap:9px;width:100%;max-width:330px}

/* правки под реальные подписи дат и занятое время */
#page-order .date-chip{width:auto;min-width:58px;padding:0 12px;text-align:center}
#page-order .date-chip .date-main{font-size:15px;font-weight:400;white-space:nowrap}
#page-order .date-chip .date-dow{margin:0;color:inherit;opacity:.85}
#page-order .date-chip.active .date-dow{color:#FFF;opacity:.9}
#page-order .time-chip.disabled{text-decoration:none;opacity:.45}

/* ---------- 21. ГОРОДА ---------- */
.vc-mt14{margin-top:14px;display:block}
.vc-now-row{display:flex;align-items:center;gap:9px}
.vc-pill{height:26px;padding:0 11px;border-radius:13px;background:rgba(255,46,136,.16);display:inline-flex;
  align-items:center;font:600 11.5px/1 'Inter',system-ui,sans-serif;color:var(--vc-accent)}
#page-city{padding-top:18px}
#page-city.active,#page-welcome.active{display:flex;flex-direction:column;gap:10px}
.vc-search-field{height:58px;border-radius:14px;background:var(--vc-surface);border:1px solid var(--vc-field);
  display:flex;align-items:center;gap:11px;padding:0 15px;margin:0;box-shadow:none;backdrop-filter:none}
.vc-search-field.is-on{border:1.5px solid var(--vc-accent)}
.vc-search-field .vc-sf-ico{flex:none;color:#FFF}
.vc-search-field.is-on .vc-sf-ico{color:var(--vc-accent)}
.vc-search-field input{flex:1;min-width:0;background:none;border:0;outline:0;padding:0;
  font:400 15px/1.2 'Inter',system-ui,sans-serif;color:#FFF}
.vc-search-field input::placeholder{color:rgba(255,255,255,.55)}
.vc-hint{font:400 11.5px/1.5 'Inter',system-ui,sans-serif;color:#FFF}
#page-city .city-divider-line,#page-city .vc-list:empty{margin:0}
#page-city .city-divider-line{height:1px;background:var(--vc-field);margin:4px 0}
.vc-list:empty{display:none}
.user-city-item{min-height:58px;padding:0 15px;display:flex;align-items:center;gap:12px;color:#FFF;
  border-top:1px solid var(--vc-line);border-left:2px solid transparent;background:none;border-radius:0;margin:0;cursor:pointer}
.user-city-item:first-child{border-top:0}
.user-city-item.active{border-left:2px solid var(--vc-accent)}
.user-city-name{flex:1;font:500 14.5px/1.2 'Inter',system-ui,sans-serif;color:#FFF}
.user-city-item.active .user-city-name{font-weight:600}
.user-city-badge{height:24px;padding:0 10px;border-radius:12px;background:rgba(255,46,136,.16);display:flex;
  align-items:center;font:600 9.5px/1 'Inter',system-ui,sans-serif;letter-spacing:.1em;color:var(--vc-accent);text-transform:uppercase}
.city-btn{width:100%;min-height:56px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;
  border-top:1px solid var(--vc-line);background:none;border-radius:0;color:#FFF;
  font:500 14.5px/1.2 'Inter',system-ui,sans-serif;text-align:left;cursor:pointer}
.city-btn:first-child{border-top:0}
.city-btn:active{background:var(--vc-pressed)}
.city-btn::after{content:'\203A';font:400 20px/1 'Inter',system-ui,sans-serif;color:rgba(255,255,255,.7)}
.vc-skel-row{height:56px;border-top:1px solid var(--vc-line);display:flex;align-items:center;padding:0 15px}
.vc-skel-row::before{content:'';width:120px;height:14px;border-radius:5px;background:var(--vc-pressed)}
.vc-skel-row:first-child{border-top:0}

/* ---------- 22. ПРИВЕТСТВИЕ ---------- */
#page-welcome{padding:0 16px 26px}
.vc-hero-welcome{height:230px;background-image:url('assets/vice/n4tEzAFe4q.webp');background-position:center 42%}
.vc-hero-welcome::before{background:linear-gradient(180deg,rgba(9,6,15,.3) 0%,rgba(9,6,15,.62) 56%,#09060F 100%)}
.vc-welcome-body{height:230px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:13px;padding:0 16px 20px}
.vc-welcome-logo{width:72px;height:72px;border-radius:36px;background:var(--vc-accent);display:flex;align-items:center;
  justify-content:center;font:400 28px/1 'Russo One',system-ui,sans-serif;color:#FFF}
.vc-welcome-title{font:400 27px/1.25 'Russo One',system-ui,sans-serif;color:#FFF}
.vc-welcome-sub{font:400 12.5px/1.4 'Inter',system-ui,sans-serif;color:#FFF;text-align:center;max-width:290px}
.vc-welcome-form{margin-top:22px;padding-top:20px;border-top:1px solid var(--vc-field);display:flex;flex-direction:column;gap:14px}
.vc-welcome-label{font:500 13px/1.4 'Inter',system-ui,sans-serif;color:#FFF}

/* ---------- 23. ПОДАТЬ АНКЕТУ ---------- */
#page-form{padding-top:0}
.vc-hero-apply{min-height:184px;background-image:url('assets/vice/n4tEzAFe4q.webp');background-position:center 42%}
.vc-hero-apply::before{background:linear-gradient(180deg,rgba(9,6,15,.45) 0%,rgba(9,6,15,.72) 52%,rgba(9,6,15,.97) 92%,#09060F 100%)}
.vc-hero-apply .vc-hero-body{padding:22px 16px 20px}
.vc-apply-title{font:400 24px/1.25 'Russo One',system-ui,sans-serif;color:#FFF}
.vc-apply-card{margin-top:18px;border-radius:16px;background:var(--vc-surface);border:1px solid rgba(255,46,136,.45);
  padding:20px;display:flex;flex-direction:column;gap:16px}
.vc-apply-q{font:400 18px/1.35 'Russo One',system-ui,sans-serif;color:#FFF}
.vc-apply-card .vc-btn{text-decoration:none}
.vc-apply-note{display:block;margin-top:16px;font:400 11.5px/1.6 'Inter',system-ui,sans-serif;color:#FFF}

/* ---------- 24. СЛУЖЕБНЫЕ ЭКРАНЫ ---------- */
.vc-gate{flex:1;padding:120px 28px 0;display:flex;flex-direction:column;align-items:center;gap:20px}
.vc-gate-sign{width:76px;height:76px;border-radius:24px;background:var(--vc-accent);color:#FFF;
  display:flex;align-items:center;justify-content:center}
.vc-gate-sign.is-err{background:var(--vc-err)}
.vc-gate-sign i{width:30px;height:2px;background:#FFF}
.vc-gate-title{font:400 21px/1.25 'Russo One',system-ui,sans-serif;color:#FFF;text-align:center}
.vc-gate-text{font:400 13px/1.6 'Inter',system-ui,sans-serif;color:#FFF;text-align:center;max-width:300px}
.vc-gate-actions{margin-top:24px;display:flex;flex-direction:column;gap:10px;align-items:center}
.vc-gate-actions .vc-btn{text-decoration:none}
.vc-gate-foot{font:400 11px/1.5 'Inter',system-ui,sans-serif;color:#FFF;text-align:center}
#page-banned.active{display:flex;flex-direction:column;min-height:calc(100vh - 56px)}

/* модалка уведомлений */
.broadcast-modal{background:rgba(9,6,15,.9)}
.broadcast-card{border-radius:16px;background:var(--vc-surface);border:0;padding:0;overflow:hidden;box-shadow:none}
.broadcast-img{width:100%;max-height:200px;object-fit:cover;display:block;border-radius:0}
.broadcast-text{padding:14px;font:400 13.5px/1.65 'Inter',system-ui,sans-serif;color:#FFF}
.broadcast-close{width:36px;height:36px;border-radius:12px;background:rgba(9,6,15,.6);color:#FFF;border:0}

/* правка: активный город — только черта слева */
#userCitiesList .user-city-item,#userCitiesList .user-city-item.active{
  border:0;border-top:1px solid var(--vc-line);border-radius:0;background:none;box-shadow:none;margin:0}
#userCitiesList .user-city-item:first-child{border-top:0}
#userCitiesList .user-city-item.active{border-left:2px solid var(--vc-accent)}

/* экран проверки */
.verify-overlay{background:#09060F}
.verify-card{background:none;border:0;box-shadow:none;backdrop-filter:none;display:flex;flex-direction:column;align-items:center;gap:20px;padding:0 28px}
.verify-shield.vc-gate-sign{margin:0;font:400 28px/1 'Russo One',system-ui,sans-serif;color:#FFF;box-shadow:none;animation:none}
.verify-title{font:400 21px/1.25 'Russo One',system-ui,sans-serif;color:#FFF;margin:0;background:none;-webkit-text-fill-color:#FFF}
.verify-sub{font:400 13px/1.6 'Inter',system-ui,sans-serif;color:#FFF;margin:0;max-width:300px;text-align:center}
.verify-footer{margin-top:8px}
.verify-powered{font:400 11px/1.5 'Inter',system-ui,sans-serif;color:#FFF;opacity:1}
.vc-gate-bottom{margin:auto 0 0;padding:0 20px calc(18px + var(--safe-bottom));align-items:stretch}
#tgBlockedOverlay .vc-gate{padding-top:120px}

#page-order .time-chip.busy{text-decoration:none;opacity:.35}
#page-order .btn-order-submit.is-off{background:var(--vc-surface);color:rgba(255,255,255,.45);border:1px solid var(--vc-field)}
#page-order .order-summary.is-wait .summary-datetime{color:var(--vc-warn)}
#page-order .order-summary{transform:none;opacity:1;pointer-events:auto}

/* старый расчёт бонуса заменён сводкой vcTopupSum */
#topupBonusCalc,#topupTotalInfo{display:none}

/* таймер бонуса поверх яркой картинки: тёмная подложка для читаемости */
#page-main .promo-banner-right,.vc-bonus-timer{
  padding:7px 10px;border-radius:11px;gap:5px;
  background:rgba(9,6,15,.78);border:1px solid rgba(255,255,255,.14);
}
#page-main .promo-banner-logo,.vc-bonus-timer .vc-kicker-sm{color:rgba(255,255,255,.85)}
#page-main .promo-banner-timer,.vc-bonus-timer .vc-mono-lg{color:#FFF;text-shadow:none}

/* баннер карусели: объект справа виден целиком, затемнение только под текстом */
#page-main .hero-carousel .hero-slide .hero-slide-bg{background-position:right center}
#page-main .hero-carousel .hero-slide .hero-slide-bg::after{
  background:linear-gradient(90deg,rgba(9,6,15,.9) 0%,rgba(9,6,15,.68) 34%,rgba(9,6,15,.18) 62%,rgba(9,6,15,0) 100%);
}
#page-main .hero-carousel .hero-slide-content{text-shadow:0 1px 10px rgba(9,6,15,.6)}

/* кнопка «Читать все отзывы» в превью */
.vc-btn-ghost{height:44px;border-radius:12px;background:transparent;border:1px solid var(--vc-field);
  color:#FFF;font:600 13px/1 'Inter',system-ui,sans-serif;cursor:pointer;width:100%}
.vc-btn-ghost:active{background:var(--vc-pressed)}

/* зелёные галочки на метках верификации/анализов */
.vc-vtag{display:inline-flex;align-items:center;gap:6px}
.vc-badge-ico{flex:none;display:block}

/* аватар с фото */
.vc-avatar.has-photo{background:none}
.vc-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}

/* ===== правки по фидбеку ===== */
/* звёзды как в GTA — 5-конечные */
.vc-stars i{width:12px;height:12px;border-radius:0;background:rgba(255,255,255,.22);
  clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}
.vc-stars i.on{background:var(--vc-gold)}
.vc-stars-lg i{width:15px;height:15px}

/* круглая кнопка поддержки (как в оригинале) */
.support-fab{display:flex;position:fixed;right:16px;bottom:calc(72px + var(--safe-bottom));
  width:52px;height:52px;border-radius:50%;background:var(--vc-accent);align-items:center;justify-content:center;
  color:#FFF;box-shadow:0 8px 24px -6px rgba(255,46,136,.6);z-index:95;animation:none;text-decoration:none}
.support-fab:active{transform:scale(.92)}
.support-fab svg{width:26px;height:26px}
body.vc-notab .support-fab{bottom:calc(88px + var(--safe-bottom))}
/* на экранах со своей нижней панелью кнопка поддержки мешает — прячем.
   Раньше тут был соседний селектор (~), но .support-fab лежит вне контейнера страниц,
   поэтому правило не срабатывало и кнопка перекрывала итог заказа. */
body[data-page="model-detail"] .support-fab,
body[data-page="order"] .support-fab,
body[data-page="payment"] .support-fab{display:none}

/* футер версии на инфо */
.vc-app-version{margin-top:16px;font:400 11px/1.5 'Inter',system-ui,sans-serif;color:rgba(255,255,255,.7)}

/* ---------- оплата модели с баланса → оператор ---------- */
.vc-balance-handoff{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;padding:8px 0}
.vc-bh-sign{width:64px;height:64px;border-radius:20px;background:var(--vc-accent);color:#FFF;
  display:flex;align-items:center;justify-content:center}
.vc-bh-title{font:400 20px/1.25 'Russo One',system-ui,sans-serif;color:#FFF;text-transform:uppercase}
.vc-bh-text{font:400 13px/1.65 'Inter',system-ui,sans-serif;color:#FFF;max-width:300px}
.vc-bh-text b{color:var(--vc-gold);font-weight:600}
.vc-bh-order{width:100%;border-radius:14px;background:var(--vc-surface);padding:14px;display:flex;flex-direction:column;gap:10px;margin-top:4px}
.vc-bh-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;
  font:400 12.5px/1.2 'Inter',system-ui,sans-serif;color:var(--vc-sub)}
.vc-bh-row b{font:400 14px/1.2 'Russo One',system-ui,sans-serif;color:#FFF;font-variant-numeric:tabular-nums}
.vc-balance-handoff .vc-btn{margin-top:4px}
.vc-bh-note{font:400 11px/1.5 'Inter',system-ui,sans-serif;color:var(--vc-ok);max-width:300px}

/* значок поиска внутри поля кода + пустое состояние без большого кружка */
#page-search .vc-code-field{gap:11px}
#page-search .vc-code-field .vc-sf-ico{flex:none;color:rgba(255,255,255,.7)}
#page-search .vc-code-field.is-on .vc-sf-ico{color:var(--vc-accent)}
.vc-search-idle{text-align:center;font:400 12.5px/1.6 'Inter',system-ui,sans-serif;color:var(--vc-sub);margin:0;padding:52px 0;display:flex;align-items:center;justify-content:center}

/* кнопка «Вставить код» в поиске */
.vc-paste-btn{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:-4px}
.vc-paste-btn svg{flex:none}

/* ручная вставка кода (фолбэк, когда буфер недоступен) */
.vc-paste-manual{display:flex;flex-direction:column;gap:7px;margin-top:-4px}
.vc-paste-manual input{height:52px;border-radius:14px;background:var(--vc-surface);border:1.5px solid var(--vc-accent);
  outline:0;padding:0 15px;font:400 15px/1 'Inter',system-ui,sans-serif;color:#FFF;width:100%}
.vc-paste-manual input::placeholder{color:rgba(255,255,255,.55)}
.vc-paste-hint{font:400 11px/1.4 'Inter',system-ui,sans-serif;color:var(--vc-sub);text-align:center}

/* свайп вправо → назад: кружок со стрелкой у левого края */
.vc-swipe-back{
  position:fixed;left:0;top:50%;z-index:9999;pointer-events:none;
  width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:rgba(23,20,28,.92);border:1px solid rgba(255,255,255,.14);color:#FFF;
  transform:translate(-52px,-50%);opacity:0;transition:opacity .12s,background .12s,border-color .12s;
  box-shadow:0 6px 20px rgba(0,0,0,.45);
}
.vc-swipe-back.show{opacity:1}
.vc-swipe-back.ready{background:var(--vc-accent);border-color:var(--vc-accent);box-shadow:0 0 22px rgba(255,46,136,.55)}
.vc-swipe-back svg{width:20px;height:20px}

/* мои заказы */
#page-orders #ordersList{display:flex;flex-direction:column;gap:10px;margin-top:14px}
.vc-order{
  background:var(--vc-surface);border:1px solid var(--vc-line2);border-radius:16px;
  padding:14px 15px;display:flex;flex-direction:column;gap:7px;
}
.vc-order-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.vc-order-name{font:600 15px/1.2 'Inter',system-ui,sans-serif;color:#FFF;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vc-order-status{
  flex:none;font:600 9.5px/1 'Inter',system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;
  padding:6px 9px;border-radius:8px;background:rgba(255,255,255,.08);color:var(--vc-sub);
}
.vc-order-status.is-paid{background:rgba(47,211,154,.16);color:var(--vc-ok)}
.vc-order-status.is-check{background:rgba(233,180,76,.16);color:var(--vc-gold)}
.vc-order-status.is-operator{background:rgba(255,122,47,.16);color:var(--vc-warn)}
.vc-order-status.is-declined{background:rgba(255,75,62,.16);color:var(--vc-err)}
.vc-order-meta{font:400 12px/1.3 'Inter',system-ui,sans-serif;color:var(--vc-sub)}
.vc-order-bot{display:flex;align-items:baseline;justify-content:space-between;gap:10px;
  padding-top:8px;border-top:1px solid var(--vc-line)}
.vc-order-id{font:500 11px/1 ui-monospace,Menlo,monospace;color:rgba(255,255,255,.55);letter-spacing:.06em}
.vc-order-sum{font:700 16px/1 'Inter',system-ui,sans-serif;color:var(--vc-accent)}
.vc-order-skel{height:96px;border-radius:16px;background:var(--vc-surface);
  border:1px solid var(--vc-line2);opacity:.5;animation:vcPulse 1.2s ease-in-out infinite}
@keyframes vcPulse{50%{opacity:.25}}

/* всплывающее уведомление — в палитре и сверху: снизу оно перекрывало
   и цифры, и ту самую кнопку, по которой только что нажали */
.toast{
  top:calc(56px + 12px);bottom:auto;
  transform:translateX(-50%) translateY(-60px);
  background:rgba(20,13,34,.97);border:1px solid var(--vc-accent);
  color:#FFF;border-radius:14px;padding:11px 16px;
  white-space:normal;max-width:calc(100vw - 44px);text-align:center;line-height:1.35;
  box-shadow:0 10px 30px rgba(0,0,0,.55),0 0 18px rgba(255,46,136,.25);
  backdrop-filter:none;-webkit-backdrop-filter:none;
}
body.vc-nochrome .toast{top:14px}
.toast.show{transform:translateX(-50%) translateY(0)}

/* на поиске кнопка поддержки налезала на «Вставить код» */
body[data-page="search"] .support-fab{bottom:calc(132px + var(--safe-bottom))}

/* ЧИНИМ СКРОЛЛ ОФОРМЛЕНИЯ: в style.css у .chips-scroll стоит touch-action:pan-x,
   который разрешает ТОЛЬКО горизонтальный свайп и съедает вертикальный — палец
   на лентах длительности/даты/времени не листал форму. pan-x pan-y: вбок листаются
   чипы, вверх-вниз — страница. */
.chips-scroll{touch-action:pan-x pan-y}
