/* ==========================================================================
   1. ГЛОБАЛЬНЫЕ НАСТРОЙКИ, ПЕРЕМЕННЫЕ И СБРОС СТИЛЕЙ
   ========================================================================== */
:root {
  --navy: #0B2545;       /* ВАШ ОРИГИНАЛЬНЫЙ ГЛУБОКИЙ СИНИЙ */
  --blue: #1657D9;       /* ВАШ ОРИГИНАЛЬНЫЙ ЯРКИЙ СИНИЙ */
  --blue-2: #0E7CF3;     /* ВАШ ОРИГИНАЛЬНЫЙ СВЕТЛО-СИНИЙ */
  --orange: #FF7A00;     /* ВАШ ОРИГИНАЛЬНЫЙ ОРАНЖЕВЫЙ */
  --orange-2: #FF9E2C;   /* ВАШ ОРИГИНАЛЬНЫЙ СВЕТЛО-ОРАНЖЕВЫЙ */
  --ink: #13203A;        /* ВАШ ЦВЕТ ТЕКСТА */
  --muted: #5C6B86;      /* ВАШ ПРИГЛУШЕННЫЙ ТЕКСТ */
  --line: #E4E9F2;       /* ВАШ ЦВЕТ ЛИНИЙ РАЗДЕЛИТЕЛЕЙ */
  --bg: #F5F8FD;         /* ВАШ ФОН СЕКЦИЙ */
  --white: #ffffff;
  --green: #15A66A;      /* ВАШ ОНЛАЙН ЗЕЛЕНЫЙ */
  --shadow: 0 18px 50px rgba(16, 46, 90, .10);
  --radius: 18px;
}

* { 
  box-sizing: border-box; 
  margin: 0; 
  padding: 0; 
}

html { 
  scroll-behavior: smooth; 
  position: relative;
  max-width: 100% !important;
  overflow-x: hidden !important; /* Убирает горизонтальный скролл на мобильных */
  -webkit-overflow-scrolling: touch;
}

body { 
  font-family: 'Segoe UI', system-ui, -apple-system, Roboto, Arial, sans-serif; 
  color: var(--ink); 
  background: var(--white); 
  line-height: 1.55; 
  -webkit-font-smoothing: antialiased; 
  position: relative;
  max-width: 100% !important;
  overflow-x: hidden !important;
}

/* Ограничение переполнения (ИСПРАВЛЕНО: убрана растяжка ПК-версии) */
section, img, svg {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.wrap { 
  width: 1180px; 
  max-width: 100%; 
  margin: 0 auto; 
  padding: 0 22px; 
  box-sizing: border-box;
}


a { 
  text-decoration: none; 
  color: inherit; 
}

img { 
  max-width: 100%; 
  display: block; 
}

.wrap { 
  max-width: 1180px; 
  margin: 0 auto; 
  padding: 0 22px; 
}

h1, h2, h3 { 
  line-height: 1.12; 
  letter-spacing: -.02em; 
}

.accent { 
  color: var(--orange); 
}

.blue { 
  color: var(--blue); 
}

/* ==========================================================================
   2. СТАТУС-БАР (TOP BAR) И ШАПКА САЙТА (HEADER & NAV)
   ========================================================================== */
.topbar { 
  background: var(--navy); 
  color: #fff; 
  font-size: 13.5px; 
}

.topbar .wrap { 
  display: flex; 
  justify-content: space-between; 
  align-items: center; 
  gap: 14px; 
  height: 42px; 
  flex-wrap: wrap; 
}

.topbar a { 
  opacity: .92; 
}

.topbar .dot { 
  display: inline-block; 
  width: 8px; 
  height: 8px; 
  border-radius: 50%; 
  background: var(--green); 
  margin-right: 7px; 
  box-shadow: 0 0 0 0 rgba(21, 166, 106, .6); 
  animation: pulse 2s infinite; 
}

@keyframes pulse { 
  0% { box-shadow: 0 0 0 0 rgba(21, 166, 106, .6); } 
  70% { box-shadow: 0 0 0 9px rgba(21, 166, 106, 0); } 
  100% { box-shadow: 0 0 0 0 rgba(21, 166, 106, 0); } 
}

header.nav { 
  position: sticky; 
  top: 0; 
  z-index: 60; 
  background: rgba(255, 255, 255, .92); 
  backdrop-filter: blur(10px); 
  border-bottom: 1px solid var(--line); 
}

header.nav .wrap { 
  display: flex; 
  align-items: center; 
  justify-content: space-between; 
  height: 70px; 
  gap: 18px; 
}

.logo { 
  display: flex; 
  align-items: center; 
  gap: 11px; 
  font-weight: 800; 
  font-size: 20px; 
  letter-spacing: -.02em; 
}

.logo .mark { 
  width: 38px; 
  height: 38px; 
  border-radius: 11px; 
  background: linear-gradient(135deg, var(--blue), var(--blue-2)); 
  display: grid; 
  place-items: center; 
  color: #fff; 
  font-size: 20px; 
  box-shadow: 0 8px 20px rgba(22, 87, 217, .35); 
}

nav.menu { 
  display: flex; 
  gap: 26px; 
  font-weight: 600; 
  font-size: 15px; 
  color: var(--muted); 
}

nav.menu a:hover { 
  color: var(--blue); 
}

/* Кнопки */
.btn { 
  display: inline-flex; 
  align-items: center; 
  gap: 9px; 
  font-weight: 700; 
  border-radius: 12px; 
  padding: 13px 22px; 
  cursor: pointer; 
  border: none; 
  font-size: 15px; 
  transition: .18s transform, .18s box-shadow; 
}

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

.btn-primary { 
  background: linear-gradient(135deg, var(--orange), var(--orange-2)); 
  color: #fff; 
  box-shadow: 0 12px 26px rgba(255, 122, 0, .34); 
}

.btn-ghost { 
  background: #fff; 
  color: var(--navy); 
  border: 1.5px solid var(--line); 
}

.btn-navy { 
  background: var(--navy); 
  color: #fff; 
}

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

.burger { 
  display: none; 
  font-size: 26px; 
  background: none; 
  border: none; 
  color: var(--navy); 
  cursor: pointer; 
}

/* ==========================================================================
   3. КРАСНАЯ ДИНАМИЧЕСКАЯ БЕГУЩАЯ СТРОКА (CRISIS TICKER)
   ========================================================================== */
.ticker { 
  background: linear-gradient(90deg, #B71B1B, #E23A2E); 
  color: #fff; 
  font-weight: 700; 
  font-size: 14px; 
  overflow: hidden; 
  white-space: nowrap; 
  border-bottom: 3px solid #8d1212; 
}

.ticker .row { 
  display: inline-flex; 
  gap: 46px; 
  padding: 11px 0; 
  animation: scroll 38s linear infinite; 
}

.ticker b { 
  background: rgba(255, 255, 255, .18); 
  padding: 2px 9px; 
  border-radius: 6px; 
  margin-right: 8px; 
}

@keyframes scroll { 
  0% { transform: translateX(0) } 
  100% { transform: translateX(-50%) } 
}

/* ==========================================================================
   4. ГЛАВНЫЙ ЭКРАН (HERO SECTION) И ПРАЙС-ЛИСТ
   ========================================================================== */
.hero { 
  position: relative; 
  background: radial-gradient(900px 500px at 88% -10%, rgba(255, 122, 0, .16), transparent 60%), radial-gradient(800px 600px at -5% 10%, rgba(22, 87, 217, .14), transparent 55%), linear-gradient(180deg, #F7FAFF, #EAF1FC); 
  overflow: hidden; 
}

.hero .wrap { 
  display: grid; 
  grid-template-columns: 1.15fr .85fr; 
  gap: 40px; 
  padding: 64px 22px 70px; 
  align-items: center; 
}

.badge { 
  display: inline-flex; 
  align-items: center; 
  gap: 9px; 
  background: #fff; 
  border: 1.5px solid var(--line); 
  color: var(--navy); 
  font-weight: 700; 
  font-size: 13.5px; 
  padding: 8px 15px; 
  border-radius: 30px; 
  box-shadow: var(--shadow); 
}

.badge .pp { 
  width: 9px; 
  height: 9px; 
  border-radius: 50%; 
  background: var(--green); 
  animation: pulse 2s infinite; 
}

.hero h1 { 
  font-size: 54px; 
  font-weight: 900; 
  margin: 20px 0 16px; 
}

.hero h1 .hl { 
  position: relative; 
  color: var(--orange); 
  white-space: nowrap; 
}

.hero p.lead { 
  font-size: 19px; 
  color: var(--muted); 
  max-width: 560px; 
  margin-bottom: 26px; 
}

.hero .actions { 
  display: flex; 
  gap: 14px; 
  flex-wrap: wrap; 
  margin-bottom: 26px; 
}

.trust { 
  display: flex; 
  gap: 26px; 
  flex-wrap: wrap; 
}

.trust div { 
  font-size: 14px; 
  color: var(--muted); 
}

.trust b { 
  display: block; 
  font-size: 26px; 
  color: var(--navy); 
  font-weight: 900; 
  letter-spacing: -.02em; 
}

/* Карточка прайса на главном экране */
.price-card { 
  background: #fff; 
  border-radius: 22px; 
  box-shadow: var(--shadow); 
  border: 1px solid var(--line); 
  overflow: hidden; 
}

.price-card .head { 
  background: var(--navy); 
  color: #fff; 
  padding: 18px 22px; 
  display: flex; 
  justify-content: space-between; 
  align-items: center; 
}

.price-card .head b { 
  font-size: 16px; 
}

.price-card .head span { 
  font-size: 12.5px; 
  background: var(--green); 
  padding: 4px 9px; 
  border-radius: 20px; 
  font-weight: 700; 
}

.price-row { 
  display: flex; 
  justify-content: space-between; 
  align-items: center; 
  padding: 14px 22px; 
  border-bottom: 1px solid var(--line); 
  font-size: 15px; 
}

.price-row:last-child { 
  border-bottom: none; 
}

.price-row .t { 
  font-weight: 700; 
}

.price-row .t small { 
  display: block; 
  color: var(--muted); 
  font-weight: 500; 
  font-size: 12.5px; 
}

.price-row .p { 
  font-weight: 900; 
  color: var(--blue); 
  font-size: 18px; 
}

.price-row .p small { 
  color: var(--muted); 
  font-weight: 600; 
  font-size: 12px; 
}

.price-card .foot { 
  padding: 16px 22px; 
  background: #FAFCFF; 
}

.price-card .foot .btn { 
  width: 100%; 
  justify-content: center; 
}

.stamp { 
  position: absolute; 
  right: 26px; 
  bottom: 20px; 
  font-size: 12px; 
  color: var(--muted); 
}

/* ==========================================================================
   5. АНАЛИТИКА РЫНКА И КРИЗИСНЫЕ СВОДКИ (NEWS / CRISIS)
   ========================================================================== */
section { 
  padding: 78px 0; 
}

.sec-head { 
  text-align: center; 
  max-width: 760px; 
  margin: 0 auto 46px; 
}

.eyebrow { 
  display: inline-block; 
  color: var(--orange); 
  font-weight: 800; 
  letter-spacing: .14em; 
  font-size: 13px; 
  text-transform: uppercase; 
  margin-bottom: 12px; 
}

.sec-head h2 { 
  font-size: 40px; 
  font-weight: 900; 
}

.sec-head p { 
  color: var(--muted); 
  font-size: 18px; 
  margin-top: 14px; 
}

.news { 
  background: var(--bg); 
}

.news-grid { 
  display: grid; 
  grid-template-columns: repeat(3, 1fr); 
  gap: 22px; 
}

.ncard { 
  background: #fff; 
  border-radius: 16px; 
  border: 1px solid var(--line); 
  padding: 24px; 
  box-shadow: 0 8px 24px rgba(16, 46, 90, .05); 
  display: flex; 
  flex-direction: column; 
}

.ncard .tag { 
  align-self: flex-start; 
  background: #FDECEC; 
  color: #C5221F; 
  font-weight: 800; 
  font-size: 12px; 
  padding: 5px 11px; 
  border-radius: 7px; 
  margin-bottom: 14px; 
  text-transform: uppercase; 
  letter-spacing: .03em; 
}

.ncard h3 { 
  font-size: 19px; 
  margin-bottom: 10px; 
}

.ncard p { 
  color: var(--muted); 
  font-size: 15px; 
  flex: 1; 
}

.ncard .src { 
  margin-top: 14px; 
  font-size: 12.5px; 
  color: #9aa6bd; 
}

.crisis-banner { 
  margin-top: 30px; 
  background: linear-gradient(120deg, var(--navy), #143b78); 
  color: #fff; 
  border-radius: 20px; 
  padding: 36px 40px; 
  display: flex; 
  align-items: center; 
  justify-content: space-between; 
  gap: 24px; 
  flex-wrap: wrap; 
}

.crisis-banner h3 {font-size: 26px;font-weight: 900;max-width: 640px;}.crisis-banner h3 .accent {color: var(--orange-2);}.crisis-banner p {color: #bcd0f0;margin-top: 8px;max-width: 640px;}/* ==========================================================================6. КАТАЛОГ ТОПЛИВА (CATALOG GRID) С ВАШИМИ ЛИНЕЙКАМИ========================================================================== */.cat-grid {display: grid;grid-template-columns: repeat(4, 1fr);gap: 20px;}.fuel {position: relative;background: #fff;border: 1px solid var(--line);border-radius: 16px;padding: 24px;transition: .2s;overflow: hidden;}.fuel:hover {transform: translateY(-5px);box-shadow: var(--shadow);border-color: #cfe0fb;}.fuel .pill {position: absolute;top: 0;left: 0;width: 7px;height: 100%;background: linear-gradient(var(--blue), var(--blue-2));}.fuel.diesel .pill {background: linear-gradient(var(--orange), var(--orange-2));}.fuel .oct {font-size: 13px;font-weight: 800;color: var(--muted);letter-spacing: .05em;text-transform: uppercase;}.fuel h3 {font-size: 24px;margin: 6px 0 4px;font-weight: 900;}.fuel .desc {font-size: 14px;color: var(--muted);min-height: 60px;}.fuel .price {margin-top: 14px;font-size: 22px;font-weight: 900;color: var(--navy);}.fuel .price small {font-size: 13px;color: var(--muted);font-weight: 600;}.fuel .avail {margin-top: 10px;font-size: 13px;font-weight: 700;color: var(--green);display: flex;align-items: center;gap: 6px;}.fuel .avail i {width: 8px;height: 8px;border-radius: 50%;background: var(--green);display: inline-block;}/* ==========================================================================7. СЕКЦИЯ ШАГОВ ЗАКАЗА И ПРЕИМУЩЕСТВА (FEATURES)========================================================================== */.how {background: linear-gradient(180deg, #fff, #F4F8FF);}.steps {display: grid;grid-template-columns: repeat(4, 1fr);gap: 22px;}.step {text-align: center;padding: 10px;}.step .num {width: 60px;height: 60px;margin: 0 auto 16px;border-radius: 18px;background: #fff;border: 1.5px solid var(--line);display: grid;place-items: center;font-size: 24px;font-weight: 900;color: var(--blue);box-shadow: var(--shadow);}.step h3 {font-size: 19px;margin-bottom: 8px;}.step p {color: var(--muted);font-size: 14.5px;}.feat-grid {display: grid;grid-template-columns: repeat(3, 1fr);gap: 22px;}.feat {background: #fff;border: 1px solid var(--line);border-radius: 16px;padding: 28px;}.feat .ic {width: 54px;height: 54px;border-radius: 14px;background: linear-gradient(135deg, #EAF1FF, #DCE9FF);display: grid;place-items: center;font-size: 26px;margin-bottom: 16px;}.feat h3 {font-size: 19px;margin-bottom: 8px;}.feat p {color: var(--muted);font-size: 14.5px;}/* ==========================================================================8. ГЕОГРАФИЯ (GEO / MAP) И СЕКЦИЯ ПОДДЕРЖКИ (FAQ)========================================================================== */.geo {background: var(--navy);color: #fff;}.geo .wrap {display: grid;grid-template-columns: 1fr 1fr;gap: 46px;align-items: center;}.geo .eyebrow {color: var(--orange-2);}.geo h2 {font-size: 38px;font-weight: 900;margin-bottom: 16px;}.geo p {color: #bcd0f0;font-size: 17px;margin-bottom: 24px;}.geo ul {list-style: none;display: grid;grid-template-columns: 1fr 1fr;gap: 12px;}.geo li {display: flex;gap: 10px;align-items: flex-start;font-size: 15px;color: #e3edff;}.geo li::before {content: "✓";color: var(--green);font-weight: 900;}.map-box {background: linear-gradient(135deg, #143b78, #0c2a59);border: 1px solid #234a86;border-radius: 20px;padding: 34px;text-align: center;}.map-box .big {font-size: 64px;font-weight: 900;color: var(--orange-2);letter-spacing: -.03em;}.map-box .sub {color: #9fb8e0;font-size: 15px;}.map-box .grid2 {display: grid;grid-template-columns: 1fr 1fr;gap: 16px;margin-top: 24px;text-align: left;}.map-box .grid2 div {background: rgba(255, 255, 255, .06);border-radius: 12px;padding: 14px 16px;}.map-box .grid2 b {display: block;font-size: 22px;color: #fff;}.map-box .grid2 span {font-size: 13px;color: #9fb8e0;}.msg {background: linear-gradient(135deg, var(--orange), var(--orange-2));color: #fff;}.msg .wrap {text-align: center;max-width: 760px;}.msg h2 {font-size: 42px;font-weight: 900;margin-bottom: 14px;}.msg p {font-size: 19px;opacity: .95;margin-bottom: 28px;}.msg .btn-navy {font-size: 17px;padding: 16px 32px;}.msg .mini {margin-top: 18px;font-size: 14px;opacity: .9;}.faq-list {max-width: 820px;margin: 0 auto;display: flex;flex-direction: column;gap: 14px;}.qa {background: #fff;border: 1px solid var(--line);border-radius: 14px;overflow: hidden;}.qa button {width: 100%;text-align: left;padding: 20px 24px;font-size: 17px;font-weight: 700;background: none;border: none;cursor: pointer;display: flex;justify-content: space-between;align-items: center;color: var(--ink);}.qa .ans {max-height: 0;overflow: hidden;transition: max-height .3s ease;color: var(--muted);font-size: 15px;}.qa .ans p {padding: 0 24px 20px;}.qa.open .ans {max-height: 300px;}.qa .chev {transition: .3s;color: var(--blue);font-size: 22px;}.qa.open .chev {transform: rotate(45deg);}/* ==========================================================================9. ПОДВАЛ САЙТА (FOOTER)========================================================================== */footer {background: #0A1B33;color: #9fb0cc;font-size: 14.5px;padding: 56px 0 30px;}.foot-grid {display: grid;grid-template-columns: 2fr 1fr 1fr;gap: 36px;margin-bottom: 34px;}footer .logo {color: #fff;margin-bottom: 14px;}footer p {max-width: 360px;line-height: 1.6;}footer h4 {color: #fff;font-size: 15px;margin-bottom: 14px;letter-spacing: .02em;}footer a {display: block;margin-bottom: 9px;}footer a:hover {color: #fff;}.disclaimer {border-top: 1px solid #1c3052;padding-top: 22px;font-size: 12.5px;color: #6f82a3;line-height: 1.6;}/* ==========================================================================10. ВОССТАНОВЛЕНИЕ СТИЛЕЙ: КАЛЬКУЛЯТОР И ОТЗЫВЫ========================================================================== */.calculator-sec {background: var(--white);}.calc-box {background: #fff;border: 1px solid var(--line);border-radius: 20px;padding: 30px;display: grid;grid-template-columns: 1.2fr 0.8fr;gap: 30px;box-shadow: var(--shadow);margin-top: 20px;}.calc-inputs {display: flex;flex-direction: column;gap: 20px;justify-content: center;}.input-group {display: flex;flex-direction: column;gap: 8px;}.input-group label {font-weight: 700;font-size: 14px;color: var(--navy);}.input-group select, .input-group input {padding: 14px;border: 1.5px solid var(--line);border-radius: 10px;font-size: 16px;font-family: inherit;font-weight: 600;color: var(--ink);outline: none;transition: border-color 0.2s;}.input-group select:focus, .input-group input:focus {border-color: var(--blue);}.calc-result {background: var(--bg);border-radius: 14px;padding: 24px;text-align: center;display: flex;flex-direction: column;justify-content: center;align-items: center;border: 1px dashed #cbd6e2;}.res-title {font-size: 14px;font-weight: 700;color: var(--muted);text-transform: uppercase;}.res-price {font-size: 38px;font-weight: 900;color: var(--blue);margin: 10px 0;}.res-discount {font-size: 13.5px;font-weight: 700;color: var(--green);margin-bottom: 20px;}.calc-result .btn {width: 100%;justify-content: center;}.reviews-sec {background: var(--bg);padding: 78px 0;}.reviews-grid {display: grid;grid-template-columns: repeat(3, 1fr);gap: 22px;margin-top: 20px;}.rev-card {background: #fff;border: 1px solid var(--line);border-radius: 16px;padding: 24px;box-shadow: 0 5px 15px rgba(0,0,0,0.02);display: flex;flex-direction: column;}.rev-meta {display: flex;justify-content: space-between;font-size: 14.5px;margin-bottom: 12px;border-bottom: 1px solid var(--line);padding-bottom: 10px;}.rev-meta b {color: var(--navy);}.rev-meta span {color: var(--muted);font-size: 13px;font-weight: 600;}.rev-text {font-size: 14.5px;color: var(--ink);line-height: 1.6;font-style: italic;flex: 1;}.rev-source {margin-top: 14px;font-size: 12px;color: #a0aec0;display: flex;justify-content: space-between;}/* ==========================================================================11. ВСПЛЫВАЮЩИЕ ТОСТ-УВЕДОМЛЕНИЯ (TOASTS SYSTEM)========================================================================== */.toast-container {position: fixed;top: 30px;left: 50%;transform: translateX(-50%);z-index: 100000;display: flex;flex-direction: column;gap: 10px;width: 90%;max-width: 420px;pointer-events: none;}.toast {background: var(--navy);color: #fff;padding: 14px 18px;border-radius: 12px;font-size: 13.5px;font-weight: 600;box-shadow: 0 15px 35px rgba(11, 37, 69, 0.35);border-left: 5px solid var(--orange);display: flex;align-items: center;gap: 12px;opacity: 0;transform: translateY(-20px);transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.2s ease;pointer-events: auto;line-height: 1.4;}.toast.show {opacity: 1;transform: translateY(0);}/* ==========================================================================12. ИНТЕРАКТИВНЫЙ ЖИВОЙ ВЕБ-ЧАТ С АВАТАРКАМИ ОПЕРАТОРА========================================================================== */

/* ==========================================================================
   12. ИНТЕРАКТИВНЫЙ ЖИВОЙ ВЕБ-ЧАТ С АВАТАРКАМИ ОПЕРАТОРА
   ========================================================================== */
.live-chat-container {
  position: fixed !important;
  bottom: 25px !important;
  right: 25px !important;
  left: auto !important;
  z-index: 9999 !important;
  font-family: inherit;
  width: auto !important;
  height: auto !important;
}

@keyframes pulseChat {
  0% { box-shadow: 0 8px 24px rgba(22, 87, 217, 0.4); }
  50% { box-shadow: 0 8px 32px rgba(22, 87, 217, 0.7); transform: scale(1.04); }
  100% { box-shadow: 0 8px 24px rgba(22, 87, 217, 0.4); }
}

.chat-trigger-btn {
  width: 60px !important;
  height: 60px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, var(--blue), var(--blue-2)) !important;
  color: #fff !important;
  display: grid !important;
  place-items: center !important;
  font-size: 26px !important;
  border: none !important;
  cursor: pointer !important;
  animation: pulseChat 3s infinite ease-in-out;
  transition: transform 0.2s;
  position: relative !important;
}

.chat-trigger-btn:hover { 
  transform: scale(1.06); 
}

/* Базовое состояние окна чата для ПК (Идеальные размеры, изначально скрыто) */
.chat-window {
  position: absolute !important;
  bottom: 75px !important;
  right: 0 !important;
  left: auto !important;
  width: 380px !important;   /* Компактная фиксированная ширина для ПК */
  height: 540px !important;  /* Фиксированная высота для ПК */
  background: #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 12px 40px rgba(11, 37, 69, 0.25) !important;
  border: 1px solid var(--line) !important;
  display: none !important;  /* Изначально чат скрыт и НЕ мешает пользователю */
  flex-direction: column !important;
  overflow: hidden !important;
  transform-origin: bottom right;
  animation: popChat 0.25s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

@keyframes popChat {
  from { opacity: 0; transform: scale(0.8) translateY(15px); }
  to { opacity: 1; transform: scale(1) translateY(0); }
}

/* Показываем чат ТОЛЬКО когда на нем есть класс .active */
.chat-window.active { 
  display: flex !important; 
}


.chat-header {background: var(--navy);color: #fff;padding: 14px 18px;display: flex;justify-content: space-between;align-items: center;}.chat-operator-info {display: flex;align-items: center;gap: 12px;position: relative;}/* СТИЛИ АВАТАРКИ В ШАПКЕ ЧАТА */.chat-avatar {width: 36px;height: 36px;border-radius: 50%;background: rgba(255, 255, 255, 0.15);display: grid;place-items: center;font-size: 20px;border: 1.5px solid rgba(255, 255, 255, 0.4);box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);}.chat-status-dot {position: absolute;left: 26px;bottom: 0px;border: 2px solid var(--navy);width: 8px;height: 8px;border-radius: 50%;background: var(--green);z-index: 2;}.chat-operator-info h4 {font-size: 14.5px;font-weight: 700;letter-spacing: -0.01em;}.chat-operator-info p {font-size: 11.5px;opacity: 0.8;}.chat-close-btn {background: none;border: none;color: #fff;font-size: 24px;cursor: pointer;opacity: 0.8;transition: opacity 0.15s;}.chat-close-btn:hover {opacity: 1;}.chat-messages {flex: 1;padding: 18px;background: #F7FAFF;overflow-y: auto;display: flex;flex-direction: column;gap: 12px;}.chat-messages::-webkit-scrollbar { width: 5px; }.chat-messages::-webkit-scrollbar-thumb { background: var(--line); border-radius: 4px; }.msg-sys {background: #E4E9F2;color: var(--navy);padding: 10px 14px;border-radius: 12px;font-size: 13px;font-weight: 600;text-align: center;align-self: center;max-width: 90%;}.msg-user {background: var(--blue) !important;color: #fff !important;padding: 10px 14px;border-radius: 14px 14px 0 14px;font-size: 13.5px;font-weight: 600;align-self: flex-end;max-width: 80%;box-shadow: 0 2px 5px rgba(22,87,217,0.15);word-wrap: break-word;}.msg-operator {background: #fff !important;color: var(--ink) !important;padding: 10px 14px;border-radius: 14px 14px 14px 0;font-size: 13.5px;font-weight: 600;border: 1px solid var(--line);box-shadow: 0 2px 5px rgba(0,0,0,0.02);word-wrap: break-word;}

/* ОБЕРТКА ДЛЯ СООБЩЕНИЙ МЕНЕДЖЕРА С АВАТАРКОЙ */
.operator-msg-wrapper {
  display: flex !important;
  align-items: flex-end !important;
  gap: 10px !important;
  align-self: flex-start !important;
  max-width: 85% !important;
  margin-bottom: 4px !important;
}

/* МИНИ-АВАТАРКА ОПЕРАТОРА РЯДОМ С КАЖДЫМ ПУЗЫРЕМ */
.operator-msg-wrapper .chat-avatar-mini {
  width: 32px !important;
  height: 32px !important;
  border-radius: 50% !important;
  background: #E4E9F2 !important;
  display: grid !important;
  place-items: center !important;
  font-size: 16px !important;
  flex-shrink: 0 !important;
  border: 1px solid var(--line) !important;
  box-shadow: 0 2px 6px rgba(0,0,0,0.05) !important;
}

/* Красивое скругление и тень для пузыря менеджера */
.msg-operator {
  align-self: unset !important; /* Отменяем старое выравнивание, так как теперь выравнивается весь wrapper */
  max-width: 100% !important;
  border-radius: 16px 16px 16px 4px !important; /* Модный скос в левом нижнем углу */
  box-shadow: 0 3px 10px rgba(0,0,0,0.03) !important;
  background: #ffffff !important;
  border: 1px solid var(--line) !important;
}

/* Для пузыря пользователя тоже обновим скругления для гармонии */
.msg-user {
  border-radius: 16px 16px 4px 16px !important;
  box-shadow: 0 4px 12px rgba(22, 87, 217, 0.12) !important;
}


/* Обертка сообщений менеджера с аватаркой в ленте чата */.operator-msg-wrapper {display: flex;align-items: flex-end;gap: 8px;align-self: flex-start;max-width: 85%;}.operator-msg-wrapper .chat-avatar-mini {width: 28px;height: 28px;border-radius: 50%;background: #E4E9F2;display: grid;place-items: center;font-size: 15px;flex-shrink: 0;border: 1px solid var(--line);}.chat-input-area {padding: 12px 16px;background: #fff;border-top: 1px solid var(--line);display: flex;gap: 10px;align-items: center;}.chat-input-area input {flex: 1;border: none;outline: none;font-family: inherit;font-size: 14px;color: var(--ink);font-weight: 600;}#sendChatBtn {background: none;border: none;color: var(--blue);font-size: 18px;cursor: pointer;transition: transform 0.15s;}#sendChatBtn:hover {transform: scale(1.1);color: var(--blue-2);}/* ==========================================================================13. МЕДИА-ЗАПРОСЫ И УЛЬТРА-ФИКС ДЛЯ СМАРТФОНОВ========================================================================== *//* Планшетная верстка (до 768px) */@media (max-width: 768px) {.trust {grid-template-columns: repeat(2, 1fr) !important;gap: 16px;}.calc-box {grid-template-columns: 1fr !important;width: 100% !important;padding: 24px;gap: 24px;}.reviews-grid, .feat-grid, .cat-grid, .news-grid, .steps {grid-template-columns: 1fr !important;gap: 16px;}

  html, body {
    max-width: 100% !important;
    overflow-x: hidden !important;
  }
  
  /* Контейнеры контента сжимаем до 100% ширины экрана телефона */
  .wrap, section, header, footer, div, form {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}
/* Смартфоны и узкие экраны (до 450px) */@media (max-width: 450px) {.live-chat-container {position: fixed !important;bottom: 20px !important;right: 20px !important;left: auto !important;z-index: 1000000 !important;}/* На мобильных чат сжимается под дисплей смартфона */.chat-window {position: fixed !important;bottom: 90px !important;right: 20px !important;left: auto !important;width: calc(100vw - 40px) !important;max-width: 380px !important;height: 75vh !important;max-height: 480px !important;border-radius: 16px !important;box-shadow: 0 12px 40px rgba(15, 23, 42, 0.25) !important;}.chat-trigger-btn {width: 56px !important;height: 56px !important;font-size: 24px !important;box-shadow: 0 8px 24px rgba(30, 58, 138, 0.3) !important;}.toast-container {width: calc(100vw - 32px) !important;left: 50% !important;transform: translateX(-50%) !important;top: 20px !important;}.toast {font-size: 13px !important;padding: 12px 16px !important;border-radius: 10px !important;box-shadow: 0 10px 25px rgba(15, 23, 42, 0.2) !important;}}
