/* ╭──────────────────────────────────────────────────────────────╮
   │ Premium v13 — tactical/HUD матовый по brief                  │
   ╰──────────────────────────────────────────────────────────────╯ */

/* Kill ALL legacy effect layers */
.cs2-fx, .cs2-fx__smoke, .cs2-fx__smoke--a, .cs2-fx__smoke--b,
.cs2-fx__grid, .cs2-fx__flash,
.site-noise, .site-dust-canvas, .site-cursor-glow {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  animation: none !important;
}
.site-bg { display: none !important; }

/* ────────────────────────────────────────────────────────────── */
/*  BODY — почти плоский деep navy                                */
/* ────────────────────────────────────────────────────────────── */
html, body { background-color: #0B1220 !important; }
body {
  background: linear-gradient(180deg, #0B1220 0%, #0B1220 100%) !important;
  background-attachment: fixed !important;
}
body::before, body::after { content: none !important; display: none !important; }
header, main, footer, .header, .hero, .section { position: relative; z-index: 1; }

/* ────────────────────────────────────────────────────────────── */
/*  HERO — tactical HUD overlay поверх фона                       */
/* ────────────────────────────────────────────────────────────── */
.hero { position: relative; isolation: isolate; }

/* Tactical grid + diagonals — структура, не свет */
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background:
    /* основная сетка 72×72 */
    linear-gradient(rgba(255, 255, 255, .025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, .025) 1px, transparent 1px),
    /* диагональные тонкие штрихи каждые 18px */
    linear-gradient(135deg, rgba(255, 255, 255, .018) 0 1px, transparent 1px 18px);
  background-size: 72px 72px, 72px 72px, 18px 18px;
  background-position: 0 0, 0 0, 0 0;
  /* мягкое затухание к краям, чтобы не было «обоев» */
  -webkit-mask-image: radial-gradient(ellipse 70% 60% at 50% 45%, #000 0%, rgba(0,0,0,.45) 70%, transparent 100%);
          mask-image: radial-gradient(ellipse 70% 60% at 50% 45%, #000 0%, rgba(0,0,0,.45) 70%, transparent 100%);
  opacity: .75;
}

/* Subtle film grain — встроенный SVG noise, ~3.5% */
.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.5 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.6'/></svg>");
  opacity: .035;
  mix-blend-mode: overlay;
}

/* Контент над overlay */
.hero-luxury, .hero-luxury__copy {
  position: relative;
  z-index: 1;
}

/* ────────────────────────────────────────────────────────────── */
/*  CHARACTERS — единый грейд + mask                              */
/* ────────────────────────────────────────────────────────────── */
.hero-decor-agent img {
  filter: none !important;
  -webkit-mask-image: linear-gradient(to bottom, #000 72%, transparent 100%) !important;
          mask-image: linear-gradient(to bottom, #000 72%, transparent 100%) !important;
}
.hero-decor-agent--left::before,
.hero-decor-agent--right::before,
.hero-decor-agent:not(.hero-decor-agent--left)::before {
  display: none !important;
  background: none !important;
}

/* ────────────────────────────────────────────────────────────── */
/*  STAT CARDS — плотнее, дороже                                  */
/* ────────────────────────────────────────────────────────────── */
.hero-stat-card {
  background: linear-gradient(180deg, rgba(20, 28, 48, .78), rgba(7, 11, 23, .72)) !important;
  border: 1px solid rgba(255, 255, 255, .07) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .045),
    0 20px 50px rgba(0, 0, 0, .22) !important;
  backdrop-filter: blur(4px);
}

/* ────────────────────────────────────────────────────────────── */
/*  HEADER (без изменений с v9)                                   */
/* ────────────────────────────────────────────────────────────── */
.header {
  background: rgba(11, 18, 32, .92) !important;
  -webkit-backdrop-filter: blur(28px) saturate(150%);
          backdrop-filter: blur(28px) saturate(150%);
  border-bottom: 1px solid rgba(255, 255, 255, .045) !important;
  position: sticky !important;
  top: 0 !important;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, .03) inset,
    0 16px 40px -28px rgba(0, 0, 0, .85);
}
.header::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: -1px;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(251, 201, 108, .22) 30%,
    rgba(251, 201, 108, .38) 50%,
    rgba(251, 201, 108, .22) 70%,
    transparent 100%
  );
  pointer-events: none;
}
.header__inner {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 clamp(28px, 5vw, 72px) !important;
  min-height: 72px !important;
  position: relative;
}
@media (max-width: 720px) {
  .header__inner { padding: 0 18px !important; min-height: 60px !important; }
}
.brand { display: inline-flex; align-items: center; text-decoration: none; transition: opacity .15s ease; }
.brand:hover { opacity: .85; }
.brand::before { content: none !important; display: none !important; }
.brand__text::before { content: none !important; display: none !important; }
.brand__text::after { content: none !important; display: none !important; }
/* .brand__text — без переопределений, наследует from styles.css */
/* Разделитель между логотипом и nav */
.header__nav {
  margin-left: 22px !important;
  padding-left: 22px !important;
  border-left: 1px solid rgba(255, 255, 255, .08) !important;
}
/* .header__nav a — без переопределений, наследует from styles.css */
.header__nav a { position: relative; }
.header__nav a::after {
  content: "";
  position: absolute;
  left: 0; right: 0;
  bottom: -6px;
  height: 2px;
  background: rgba(251, 201, 108, .9);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform .25s cubic-bezier(.2, .8, .2, 1);
  pointer-events: none;
  border-radius: 2px;
}
.header__nav a:hover::after { transform: scaleX(1); }
.header__actions { gap: 14px; align-items: center; }
/* btn--header-link, btn--header-cabinet — без переопределений, наследуют from styles.css */

/* Hero agents — z-index only, position остается absolute из hero-decor.css */
.hero-decor-agent { z-index: 1 !important; }

/* ── FAQ — приглушить золотые акценты, выровнять с остальным сайтом ── */
.faq-item {
  border-color: rgba(255, 255, 255, .06) !important;
  box-shadow: 0 8px 24px -10px rgba(0, 0, 0, .35) !important;
}
.faq-item:hover {
  border-color: rgba(255, 255, 255, .12) !important;
  box-shadow: 0 10px 28px -8px rgba(0, 0, 0, .4) !important;
  background: linear-gradient(180deg, rgba(14, 22, 46, .92), rgba(10, 16, 32, .96)) !important;
}
.faq-item[open] {
  border-color: rgba(214, 168, 78, .18) !important;
  box-shadow:
    0 14px 32px -10px rgba(0, 0, 0, .42) !important;
  background: linear-gradient(180deg, rgba(14, 22, 46, .94), rgba(10, 16, 32, .98)) !important;
}

/* Бейдж номера — тоньше, приглушённее */
.faq-item__content small {
  color: rgba(214, 168, 78, .75) !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  letter-spacing: .14em !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  border-radius: 0 !important;
}

/* Заголовок вопроса — крупнее у текста, меньше веса у бейджа */
.faq-item__content strong {
  font-size: 16.5px !important;
  font-weight: 600 !important;
  letter-spacing: -.005em !important;
}

/* Кнопка раскрытия (+/×) — нейтральная */
.faq-item summary::after {
  border-color: rgba(255, 255, 255, .08) !important;
  color: rgba(255, 255, 255, .55) !important;
  background-color: rgba(255, 255, 255, .02) !important;
}
.faq-item:hover summary::after,
.faq-item[open] summary::after {
  border-color: rgba(255, 255, 255, .18) !important;
  background-color: rgba(255, 255, 255, .05) !important;
  color: rgba(255, 255, 255, .85) !important;
}

/* FAQ — фирменный цвет бейджа + текст ответа на всю ширину */
.faq-item__content small {
  color: #f3d298 !important;
}
.faq-item p {
  max-width: none !important;
}

/* Footer — единый фирменный gold + убрать радиальные блики */
.footer-site-minimal__title { color: #f3d298 !important; }
.footer--site-luxury-minimal {
  background: #0B1220 !important;
  border-top: 1px solid rgba(255, 255, 255, .05) !important;
}

/* Скрыть блок "Основные услуги" с главной (страницы услуг остаются как SEO landing) */
.section--services { display: none !important; }

/* Убрать свечение у двух центральных CTA в hero */
.hero-luxury__actions .btn--primary,
.hero-luxury__actions .hero-luxury__cta {
  box-shadow: none !important;
}
.hero-luxury__actions .btn--primary:hover,
.hero-luxury__actions .hero-luxury__cta:hover {
  box-shadow: none !important;
}
.hero-luxury__actions .hero-luxury__cta--mp,
.hero-luxury__actions .hero-luxury__cta--mp:hover {
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .06) !important;
}

/* Hero title — "EloStore –" фирменным золотом */
.hero-title-line--brand,
.hero-title-line--brand .hero-title-dash {
  color: #f3d298 !important;
}

/* Auth — премиум полиш, фирменные цвета без приглушения */
.auth-intro { padding: 40px !important; }
.auth-intro .section-label {
  color: #f3d298 !important;
  letter-spacing: .14em !important;
}
.auth-intro h1 {
  font-size: clamp(34px, 3.6vw, 48px) !important;
  letter-spacing: -.024em !important;
  margin: 14px 0 12px !important;
}
.auth-intro > p { max-width: 540px !important; }

/* 2 quick-карточки — единый premium look */
.auth-quick-grid { gap: 12px !important; margin-top: 26px !important; }
.auth-quick-card {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  padding: 18px !important;
  background: rgba(255, 255, 255, .03) !important;
  border-color: rgba(255, 255, 255, .07) !important;
  border-radius: 16px !important;
}
.auth-quick-card > * { display: block !important; }
.auth-quick-card small { margin-bottom: 4px !important; }
.auth-quick-card strong { margin-bottom: 8px !important; }
.auth-quick-card span {
  color: rgba(232, 239, 255, .92) !important;
  font-size: 13.5px !important;
  line-height: 1.55 !important;
}
.auth-quick-card small {
  color: #f3d298 !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

/* 3 пункта — просто текст с золотыми номерами, без боксов */
.auth-points { margin-top: 26px !important; gap: 0 !important; }
.auth-points > div {
  border-top: 0 !important;
  padding: 12px 0 !important;
  grid-template-columns: 26px 1fr !important;
  gap: 16px !important;
  align-items: center !important;
}
.auth-points > div + div {
  border-top: 1px solid rgba(255, 255, 255, .05) !important;
}
.auth-points > div strong {
  width: auto !important;
  height: auto !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  display: inline !important;
  font: 700 12px/1 var(--font, Inter) !important;
  letter-spacing: .12em !important;
  color: #f3d298 !important;
  box-shadow: none !important;
}

/* Cabinet — только аватар и KPI-акцент в фирменный gold, остальное не трогаем */
.cab-rd .cab-user-pill__avatar {
  background: linear-gradient(135deg, #f3d298 0%, #c8a15a 100%) !important;
  box-shadow: 0 6px 18px rgba(200, 161, 90, .35) !important;
}
.cab-rd .cab-kpi--accent strong { color: #f3d298 !important; }

/* ── Chat /chats.html → визуально как админ-чат ── */

/* Sidebar: no padding outside, thread list rows */
body.chat-page-body .chat-clean-sidebar { padding: 0 !important; }
body.chat-page-body .chat-clean-sidebar__head {
  padding: 14px 18px 12px !important;
  border-bottom: 1px solid rgba(255, 255, 255, .045) !important;
  margin: 0 !important;
}
body.chat-page-body .chat-clean-threadlist { padding: 0 !important; gap: 0 !important; }

/* Thread items как админские строки, не карточки */
body.chat-page-body .chat-clean-threadlist .thread-card {
  border-radius: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(255, 255, 255, .045) !important;
  padding: 14px 18px !important;
  margin: 0 !important;
  position: relative !important;
  box-shadow: none !important;
}
body.chat-page-body .chat-clean-threadlist .thread-card:hover {
  background: rgba(255, 255, 255, .025) !important;
  transform: none !important;
}
body.chat-page-body .chat-clean-threadlist .thread-card.is-active {
  background: rgba(243, 210, 152, .07) !important;
  border-color: rgba(255, 255, 255, .045) !important;
}
body.chat-page-body .chat-clean-threadlist .thread-card.is-active::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important; top: 8px !important; bottom: 8px !important;
  width: 3px !important;
  background: #f3d298 !important;
  border-radius: 0 3px 3px 0 !important;
  box-shadow: 0 0 10px rgba(243, 210, 152, .35) !important;
}

/* Message bubbles — manager в стиле admin "accent-soft" вместо solid gold */
body.chat-page-body .message-bubble--manager {
  background: rgba(251, 201, 108, .13) !important;
  color: var(--text, #EEF3FF) !important;
  border: 1px solid rgba(251, 201, 108, .32) !important;
  box-shadow: none !important;
}
body.chat-page-body .message-bubble--manager .message-bubble__meta strong {
  color: var(--gold-1, #f3d298) !important;
  opacity: 1 !important;
}
body.chat-page-body .message-bubble--manager .message-bubble__meta span {
  color: rgba(255, 255, 255, .45) !important;
}
body.chat-page-body .message-bubble--manager p { color: rgba(238, 243, 255, .92) !important; }

/* Manager avatar - faded gold (как у user) */
body.chat-page-body .message-row--manager .message-row__avatar {
  background: rgba(251, 201, 108, .15) !important;
  border: 1px solid rgba(251, 201, 108, .35) !important;
  color: #f3d298 !important;
  box-shadow: none !important;
}

/* Composer: упростить — скрыть label "Сообщение", переход к admin-style */
body.chat-page-body .chat-clean-form { gap: 8px !important; }
body.chat-page-body .chat-clean-form .form-field > span { display: none !important; }
body.chat-page-body .chat-clean-form .form-field { padding: 0 !important; }
