.ps-bright{
  --ps-bg-1:#fff2dc;
  --ps-bg-2:#ffe1b8;
  --ps-card:#ffffff;
  --ps-card-soft:#fff8ec;
  --ps-ink:#1f140a;
  --ps-ink-soft:#5a3e25;
  --ps-ink-mute:#9c8569;
  --ps-line:#f3dcb6;
  --ps-line-soft:#faecd0;

  --ps-orange:#ff6a1a;
  --ps-orange-deep:#e54a00;
  --ps-coral:#ff8a5b;
  --ps-yellow:#ffd23a;
  --ps-terra:#b04a26;

  --ps-radius:24px;
  --ps-radius-sm:14px;
  --ps-radius-xs:10px;

  --ps-shadow: 0 18px 40px -22px rgba(216,90,20,.28), 0 6px 16px -8px rgba(216,90,20,.12);
  --ps-shadow-hi: 0 32px 60px -22px rgba(216,90,20,.45), 0 12px 24px -8px rgba(216,90,20,.2);

  font-family:"Manrope",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  color:var(--ps-ink);
  background:
    radial-gradient(900px 600px at 8% 0%, #ffe6c0, transparent 55%),
    radial-gradient(800px 500px at 100% 100%, #ffd0a6, transparent 60%),
    linear-gradient(180deg, #fff2dc 0%, #ffe1b8 100%);
  padding:48px 24px 80px;
  position:relative;
  /* НЕ используем overflow:hidden — это ломает sticky внутри */
  min-height:100vh;
}
/* декоративные конфетти — изолируем в своём контейнере */
.ps-bright::before{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:
    radial-gradient(circle at 6% 12%, rgba(255,210,58,.3) 0 7px, transparent 8px),
    radial-gradient(circle at 96% 8%, rgba(226,58,43,.18) 0 5px, transparent 6px),
    radial-gradient(circle at 4% 40%, rgba(255,106,26,.22) 0 9px, transparent 10px),
    radial-gradient(circle at 98% 35%, rgba(39,195,154,.18) 0 6px, transparent 7px),
    radial-gradient(circle at 50% 90%, rgba(255,122,74,.16) 0 11px, transparent 12px);
  opacity:.6;
  -webkit-mask-image: linear-gradient(180deg, #000 0%, #000 80%, transparent 100%);
          mask-image: linear-gradient(180deg, #000 0%, #000 80%, transparent 100%);
}

.ps-bright__inner{position:relative;z-index:1;max-width:1280px;margin:0 auto;}

/* === Хлебные крошки + заголовок ============================ */
.ps-bright__crumbs{
  display:flex;align-items:center;gap:8px;
  font-size:13px;font-weight:600;color:var(--ps-ink-mute);
  margin-bottom:18px;
}
.ps-bright__crumbs a{color:var(--ps-orange-deep);text-decoration:none;}
.ps-bright__crumbs a:hover{text-decoration:underline;}
.ps-bright__crumbs-sep{opacity:.5;}

.ps-bright__hero{
  display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
  flex-wrap:wrap;margin-bottom:34px;
}
.ps-bright__hero-left{display:flex;flex-direction:column;gap:6px;}
.ps-bright__eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  padding:6px 14px;border-radius:999px;
  background:#fff;border:1.5px solid var(--ps-orange);
  color:var(--ps-orange-deep);
  font-size:11px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;
  align-self:flex-start;
  box-shadow:0 8px 20px -10px rgba(229,74,0,.35);
}
.ps-bright__eyebrow::before{
  content:"";width:8px;height:8px;border-radius:50%;background:var(--ps-orange);
  box-shadow:0 0 0 4px rgba(255,106,26,.2);
}
.ps-bright__title{
  font-family:"Unbounded","Manrope",sans-serif;
  font-weight:800;font-size:clamp(34px,4vw,52px);line-height:1.05;
  letter-spacing:-.02em;color:var(--ps-ink);
  margin:14px 0 8px;
}
.ps-bright__title-mark{
  background:linear-gradient(135deg,#ff8a1a,#e54a00 60%,#b04a26);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  font-style:italic;font-weight:700;
}
.ps-bright__subtitle{
  font-size:16px;color:var(--ps-ink-soft);max-width:560px;line-height:1.5;margin:0;
}

/* Степ-индикатор */
.ps-bright__steps{
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;
  padding:14px 18px;
  background:#fff;border:1px solid var(--ps-line);
  border-radius:999px;
  box-shadow:var(--ps-shadow);
}
.ps-bright__step{
  display:inline-flex;align-items:center;gap:10px;
  font-size:13px;font-weight:700;color:var(--ps-ink-mute);
}
.ps-bright__step-num{
  width:26px;height:26px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--ps-line-soft);color:var(--ps-ink-mute);
  font-size:13px;font-weight:800;
}
.ps-bright__step--active{color:var(--ps-ink);}
.ps-bright__step--active .ps-bright__step-num{
  background:linear-gradient(135deg,var(--ps-orange),var(--ps-orange-deep));color:#fff;
  box-shadow:0 6px 14px -6px rgba(229,74,0,.6);
}
.ps-bright__step--done .ps-bright__step-num{
  background:#fff;border:1.5px solid var(--ps-orange);color:var(--ps-orange-deep);
}
.ps-bright__step-line{width:24px;height:2px;background:var(--ps-line-soft);border-radius:2px;}

/* === Основная двухколоночная сетка ========================= */
.ps-bright__grid{
  display:grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  gap:28px;
  align-items:start;
}

/* === Левая колонка ========================================= */
.ps-bright__panel{
  background:#fff;
  border:1px solid var(--ps-line-soft);
  border-radius:var(--ps-radius);
  box-shadow:var(--ps-shadow);
  padding:30px 30px 32px;
}
.ps-bright__panel-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:16px;
  margin-bottom:22px;
}
.ps-bright__panel-title{
  font-family:"Unbounded","Manrope",sans-serif;
  font-size:22px;font-weight:700;line-height:1.1;margin:0;
  letter-spacing:-.01em;
  color:var(--ps-ink);
}
.ps-bright__panel-hint{
  font-size:13px;color:var(--ps-ink-mute);font-weight:600;
}
.ps-bright__panel-hint b{color:var(--ps-orange-deep);}

/* Список команд — 2 в ряд */
.ps-bright__teams{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:16px;
}
.ps-bright__team{
  position:relative;
  display:flex;flex-direction:column;
  background:#fff;
  border:1.5px solid var(--ps-line-soft);
  border-radius:20px;
  overflow:hidden;
  cursor:pointer;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.ps-bright__team:hover{
  border-color:#f4c98e;
  box-shadow:0 22px 40px -22px rgba(216,90,20,.32);
  transform:translateY(-3px);
}
.ps-bright__team-media{
  position:relative;
  width:100%;
  height:220px;
  background:var(--ps-line-soft);
  overflow:hidden;
}
.ps-bright__team-media img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .8s ease;
}
.ps-bright__team:hover .ps-bright__team-media img{transform:scale(1.04);}
/* плавный градиент-овершлэг для читаемости бейджей */
.ps-bright__team-media::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg, rgba(0,0,0,.18) 0%, transparent 35%, transparent 70%, rgba(0,0,0,.12) 100%);
}

/* Бейджи поверх фото */
.ps-bright__team-tags{
  position:absolute;top:12px;left:12px;z-index:2;
  display:flex;gap:6px;flex-wrap:wrap;
}
.ps-bright__team-tag{
  display:inline-flex;align-items:center;
  padding:6px 11px;border-radius:8px;
  font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  background:#fff;color:var(--ps-orange-deep);
  box-shadow:0 6px 14px -6px rgba(0,0,0,.3);
}
.ps-bright__team-tag--hot{
  background:linear-gradient(135deg,#ff8a1a,#e54a00);color:#fff;
}
.ps-bright__team-tag--new{
  background:linear-gradient(135deg,#ff6a1a,#e54a00);color:#fff;
}
.ps-bright__team-tag--sale{
  background:linear-gradient(135deg,#ff8a1a,#ff5a14);color:#fff;
}

/* Контент снизу */
.ps-bright__team-body{
  display:flex;flex-direction:column;gap:14px;
  padding:20px 20px 20px;
}
.ps-bright__team-name{
  font-family:"Unbounded","Manrope",sans-serif;
  font-size:24px;font-weight:800;line-height:1.1;
  color:var(--ps-ink);letter-spacing:-.02em;
  margin:0;
}

/* Цена-пилюля с dashed-рамкой */
.ps-bright__team-price{
  display:flex;align-items:baseline;gap:10px;
  padding:12px 18px;
  border:2px dashed var(--ps-orange);
  border-radius:14px;
  background:#fff8ec;
}
.ps-bright__team-price-from{
  font-family:"Manrope",sans-serif;
  font-size:14px;font-weight:700;color:var(--ps-ink);
  text-transform:lowercase;
}
.ps-bright__team-price-now{
  font-family:"Unbounded","Manrope",sans-serif;
  font-size:26px;font-weight:800;line-height:1;
  color:var(--ps-orange-deep);letter-spacing:-.02em;
}
.ps-bright__team-price-old{
  font-size:14px;font-weight:700;
  color:#b39d83;text-decoration:line-through;
  text-decoration-thickness:1.5px;
}

/* CTA-ссылка */
.ps-bright__team-action{display:flex;align-items:center;}
.ps-bright__team-btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:4px 0;
  background:transparent;border:none;
  color:var(--ps-orange-deep);
  font-family:"Manrope",sans-serif;
  font-size:15px;font-weight:800;letter-spacing:.02em;
  cursor:pointer;
  transition:gap .2s, color .2s;
}
.ps-bright__team-btn-arrow{
  width:20px;height:20px;border-radius:50%;
  background:linear-gradient(135deg,var(--ps-orange),var(--ps-orange-deep));
  color:#fff;
  display:inline-flex;align-items:center;justify-content:center;
  flex:0 0 auto;
  transition:transform .25s ease;
}
.ps-bright__team-btn-arrow svg{width:10px;height:10px;}
.ps-bright__team:hover .ps-bright__team-btn{gap:12px;}
.ps-bright__team:hover .ps-bright__team-btn-arrow{transform:translateX(2px);}

/* Активное состояние */
.ps-bright__team--selected{
  border:2px solid var(--ps-orange);
  box-shadow:
    0 0 0 4px rgba(255,106,26,.12),
    0 26px 50px -22px rgba(229,74,0,.45);
}
.ps-bright__team--selected .ps-bright__team-body{
  background:linear-gradient(135deg,#fff6ea 0%, #fff 65%);
}
.ps-bright__team--selected .ps-bright__team-price{
  background:#fff;
  border-color:var(--ps-orange);
}
.ps-bright__team--selected .ps-bright__team-btn{color:var(--ps-orange-deep);}
/* «стикер» у выбранной поверх фото */
.ps-bright__team--selected .ps-bright__team-media::before{
  content:"✓ Выбрано";position:absolute;top:12px;right:12px;z-index:3;
  display:inline-flex;align-items:center;gap:6px;
  padding:7px 14px;border-radius:999px;
  font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:#fff;
  background:linear-gradient(135deg,var(--ps-orange),var(--ps-orange-deep));
  box-shadow:0 10px 20px -6px rgba(229,74,0,.5);
}

/* === Правая sticky-панель ================================== */
/* --afrika-pkg-header-offset выставляется из ps-sticky-form.js
   (ResizeObserver на site .header + первичный синхронный замер).
   Fallback 140px — на случай если JS не успел/упал; сразу после
   домонтирования скрипт перепишет переменную фактической высотой. */
.ps-bright__order{
  position:sticky;
  /* gap сверху между шапкой и формой = 16px */
  top:calc(var(--afrika-pkg-header-offset, 140px) + 16px);
  align-self:start;
  /* 32 = 16px gap сверху (тот же что в top) + 16px gap снизу,
     чтобы низ формы не упирался в нижний край вьюпорта */
  max-height:calc(100vh - var(--afrika-pkg-header-offset, 140px) - 32px);
  overflow-y:auto;
  scrollbar-gutter:stable;
  /* Тонкий скроллбар в тон оранжевой палитры (var(--ps-orange) = #ff6a1a) */
  scrollbar-width:thin;
  scrollbar-color:rgba(255,106,26,.45) transparent;
  background:#fff;
  border:1px solid var(--ps-line-soft);
  border-radius:var(--ps-radius);
  box-shadow:var(--ps-shadow);
  padding:22px;
  display:flex;flex-direction:column;gap:14px;
}
.ps-bright__order::-webkit-scrollbar{width:6px;height:6px;}
.ps-bright__order::-webkit-scrollbar-track{background:transparent;}
.ps-bright__order::-webkit-scrollbar-thumb{
  background:rgba(255,106,26,.45);
  border-radius:6px;
}
.ps-bright__order::-webkit-scrollbar-thumb:hover{background:rgba(255,106,26,.7);}
/* Запрет на сжатие детей: иначе flex-direction:column + max-height
   ужмёт элементы (плашка цены, кнопка) вместо того, чтобы дать им
   переполнить контейнер и показать внутренний скролл. */
.ps-bright__order > *{flex-shrink:0;}

/* === Заголовки внутри .ps-bright =================================
   Глобальная тема (custom_ne.css) ставит h1, h2 word-break:break-word,
   из-за чего русские слова на узком контейнере (мобайл) делятся
   посередине буквы. Возвращаем нормальный перенос по словам. */
.ps-bright h1, .ps-bright h2, .ps-bright h3,
.ps-bright__panel-title,
.ps-bright__modal-title,
.ps-bright__dmodal-title{
  word-break:normal;
  overflow-wrap:normal;
  -ms-word-break:normal;
}

/* На мобайле title и hint в шапке панели команд должны стоять
   столбиком: в строку у них слишком тесно, заголовок ужимается
   до ~140px и даже с word-break:normal не вмещает слово целиком. */
@media (max-width: 720px){
  .ps-bright__panel-head{
    flex-direction:column;
    align-items:flex-start;
    gap:6px;
  }
}

/* === Стэкинг-контекст модалки ====================================
   .ps-bright__inner имеет z-index:1 (создаёт стэкинг-контекст для
   декоративных конфетти). Из-за этого модалка внутри (даже с
   z-index:1000) локальна для inner'а и не может выскочить выше
   фиксированной site .header (z-index:10) — на мобайле верх модалки
   уходил под шапку. Поднимаем весь inner выше шапки, но ТОЛЬКО когда
   модалка открыта (флаг body.ps-bright--lock ставится при открытии). */
body.ps-bright--lock .ps-bright__inner{z-index:1001;}

/* === Верх страницы не должен уходить под фиксированную site .header
   Исходный padding-top секции (48px desktop / 32px mobile) меньше
   высоты шапки (~140px), из-за чего крошки и заголовок «Премиум»
   уезжали под шапку. Селектор с атрибутом — специфичность 0,1,1 —
   перекрывает и десктопный, и мобильный shorthand padding. */
.ps-bright[data-package-slug]{
  padding-top:calc(var(--afrika-pkg-header-offset, 140px) + 24px);
}
.ps-bright__order-head{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding-bottom:18px;border-bottom:1px dashed var(--ps-line);
}
.ps-bright__order-title{
  font-family:"Unbounded","Manrope",sans-serif;
  font-size:18px;font-weight:700;letter-spacing:-.01em;margin:0;
}
.ps-bright__order-tag{
  font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;
  padding:6px 12px;border-radius:999px;
  background:#fff3e0;color:var(--ps-orange-deep);
}

/* Поле формы */
.ps-bright__field{display:flex;flex-direction:column;gap:7px;}
.ps-bright__label{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  font-size:13px;font-weight:700;color:var(--ps-ink);
  letter-spacing:.02em;
}
.ps-bright__label sup{color:var(--ps-orange-deep);font-size:13px;margin-left:2px;}
.ps-bright__label-counter{
  font-size:11px;font-weight:700;color:var(--ps-ink-mute);letter-spacing:.06em;
}
.ps-bright__textarea, .ps-bright__select, .ps-bright__input{
  width:100%;box-sizing:border-box;
  background:#fff8ec;
  border:1.5px solid var(--ps-line);
  border-radius:14px;
  padding:12px 16px;
  font-family:inherit;font-size:14px;color:var(--ps-ink);
  line-height:1.4;
  transition:border-color .2s, background .2s, box-shadow .2s;
  appearance:none;-webkit-appearance:none;-moz-appearance:none;
}
.ps-bright__textarea{min-height:78px;resize:vertical;}
.ps-bright__textarea:focus, .ps-bright__select:focus, .ps-bright__input:focus{
  outline:none;
  border-color:var(--ps-orange);
  background:#fff;
  box-shadow:0 0 0 4px rgba(255,106,26,.12);
}
.ps-bright__helper{font-size:12px;color:var(--ps-ink-mute);font-weight:500;margin-top:-2px;}

/* Ориентация видео — 2 компактные кнопки */
.ps-bright__orient{
  display:grid;grid-template-columns:1fr 1fr;gap:6px;
}
.ps-bright__orient-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  padding:7px 10px;border-radius:10px;
  background:#fff8ec;border:1.5px solid var(--ps-line);
  cursor:pointer;
  font-family:inherit;font-size:12.5px;font-weight:700;color:var(--ps-ink-soft);
  transition:background .18s, border-color .18s, color .18s, box-shadow .18s;
}
.ps-bright__orient-btn:hover{background:#fff3e0;color:var(--ps-ink);}
.ps-bright__orient-btn.is-active{
  background:#fff;
  border-color:var(--ps-orange);color:var(--ps-orange-deep);
  box-shadow:0 0 0 3px rgba(255,106,26,.12);
}
.ps-bright__orient-icon{
  width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;
  color:currentColor;flex:0 0 auto;
}
.ps-bright__orient-icon svg{width:14px;height:14px;}

/* Пары в 2 колонки внутри формы */
.ps-bright__field-row{
  display:grid;grid-template-columns: 2fr 1fr; gap:10px;
}
.ps-bright__field-row > .ps-bright__field{margin:0;}

/* Pills в правой колонке (компактнее) */
.ps-bright__order .ps-bright__pills{
  background:#fff8ec;border:1.5px solid var(--ps-line);
  padding:3px;border-radius:11px;
  display:flex;width:fit-content;
}
.ps-bright__order .ps-bright__pill{
  padding:7px 16px;border-radius:8px;
  font-size:12.5px;min-width:56px;
}
.ps-bright__order .ps-bright__pill.is-active{
  box-shadow:0 6px 12px -6px rgba(229,74,0,.55);
}

/* Меньше размер между полями в правой колонке хит */
.ps-bright__order{gap:12px;}
.ps-bright__order .ps-bright__field{gap:5px;}
.ps-bright__order .ps-bright__input{padding:9px 14px;font-size:13px;}
.ps-bright__order .ps-bright__textarea{padding:10px 14px;min-height:62px;font-size:13px;}
.ps-bright__order .ps-bright__dd-toggle{padding:9px 48px 9px 14px;font-size:13px;}
.ps-bright__order .ps-bright__dd-chevron{width:26px;height:26px;}

/* Кнопка «Сгенерировать автоматически» (AI) — компактная, ссылка-style */
.ps-bright__ai-btn{
  margin-top:4px;
  align-self:flex-start;
  display:inline-flex;align-items:center;gap:7px;
  padding:5px 10px 5px 6px;
  background:transparent;
  border:1px dashed rgba(229,74,0,.45);
  border-radius:999px;
  cursor:pointer;
  font-family:inherit;
  font-size:12px;font-weight:700;letter-spacing:.01em;
  color:var(--ps-orange-deep);
  text-align:left;
  transition:background .18s, border-color .18s, color .18s;
}
.ps-bright__ai-btn:hover{
  background:#fff3e0;
  border-color:var(--ps-orange);
  border-style:solid;
}
.ps-bright__ai-btn:active{transform:translateY(0);}
.ps-bright__ai-btn-icon{
  width:18px;height:18px;border-radius:50%;
  background:linear-gradient(135deg,#ffd23a 0%, #ff8a1a 60%, #e54a00 100%);
  display:inline-flex;align-items:center;justify-content:center;
  color:#fff;flex:0 0 auto;
  position:relative;
}
.ps-bright__ai-btn-icon svg{width:10px;height:10px;}
/* блёстка-спарк */
.ps-bright__ai-btn-icon::after{
  content:"";position:absolute;top:-1px;right:-1px;
  width:5px;height:5px;border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 1.5px rgba(255,210,58,.7), 0 0 6px rgba(255,210,58,.9);
  animation:ps-bright-spark 2.2s ease-in-out infinite;
}
@keyframes ps-bright-spark{
  0%,100%{transform:scale(.6);opacity:.5;}
  50%{transform:scale(1);opacity:1;}
}

/* Иконка Play возле опций с треками */
.ps-bright__dd-play{
  width:24px;height:24px;border-radius:50%;
  background:linear-gradient(135deg,var(--ps-orange) 0%, var(--ps-orange-deep) 100%);
  color:#fff;
  display:inline-flex;align-items:center;justify-content:center;
  flex:0 0 auto;
  box-shadow:0 6px 12px -6px rgba(229,74,0,.55);
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease;
}
.ps-bright__dd-play:hover{transform:scale(1.08);box-shadow:0 10px 18px -6px rgba(229,74,0,.7);}
.ps-bright__dd-play:active{transform:scale(.96);}
.ps-bright__dd-play svg{width:9px;height:9px;margin-left:1px;}
.ps-bright__dd-play--mute{
  background:#fff;color:var(--ps-ink-mute);
  border:1.5px solid var(--ps-line);
  box-shadow:none;
}

/* Кастомный select — оранжевый кружок-chevron */
.ps-bright__select-wrap{position:relative;}
.ps-bright__select{
  padding-right:52px;cursor:pointer;font-weight:600;
}
.ps-bright__select-wrap::after{
  content:"";
  position:absolute;right:8px;top:50%;
  width:30px;height:30px;border-radius:50%;
  background:linear-gradient(135deg,var(--ps-orange) 0%, var(--ps-orange-deep) 100%);
  transform:translateY(-50%);
  pointer-events:none;
  box-shadow:0 6px 14px -6px rgba(229,74,0,.55);
}
.ps-bright__select-wrap::before{
  content:"";position:absolute;right:18px;top:50%;
  width:10px;height:10px;
  border-right:2.5px solid #fff;
  border-bottom:2.5px solid #fff;
  transform:translateY(-70%) rotate(45deg);
  pointer-events:none;z-index:1;
}

/* === Кастомный dropdown ==================================== */
.ps-bright__dd{position:relative;}
.ps-bright__dd-toggle{
  width:100%;box-sizing:border-box;
  background:#fff8ec;
  border:1.5px solid var(--ps-line);
  border-radius:14px;
  padding:12px 52px 12px 16px;
  font-family:inherit;font-size:14px;color:var(--ps-ink);font-weight:600;
  line-height:1.4;
  cursor:pointer;text-align:left;
  position:relative;
  transition:border-color .2s, background .2s, box-shadow .2s;
}
.ps-bright__dd-toggle:focus,
.ps-bright__dd--open .ps-bright__dd-toggle{
  outline:none;border-color:var(--ps-orange);background:#fff;
  box-shadow:0 0 0 4px rgba(255,106,26,.12);
}
.ps-bright__dd-chevron{
  position:absolute;right:8px;top:50%;
  width:30px;height:30px;border-radius:50%;
  background:linear-gradient(135deg,var(--ps-orange),var(--ps-orange-deep));
  transform:translateY(-50%);
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 14px -6px rgba(229,74,0,.55);
  transition:transform .28s ease;
  pointer-events:none;
}
.ps-bright__dd-chevron svg{width:12px;height:12px;color:#fff;}
.ps-bright__dd--open .ps-bright__dd-chevron{transform:translateY(-50%) rotate(180deg);}

.ps-bright__dd-menu{
  position:absolute;left:0;right:0;top:calc(100% + 8px);
  background:#fff;
  border:1.5px solid var(--ps-line);
  border-radius:16px;
  box-shadow:0 24px 50px -16px rgba(76,40,16,.28), 0 8px 20px -8px rgba(76,40,16,.15);
  padding:6px;
  z-index:30;
  display:flex;flex-direction:column;gap:2px;
  max-height:260px;overflow-y:auto;
  scrollbar-width:thin;
  scrollbar-color:rgba(255,106,26,.55) transparent;
  animation:ps-bright-dd-in .18s ease;
}
.ps-bright__dd-menu[hidden]{display:none;}
@keyframes ps-bright-dd-in{
  from{opacity:0;transform:translateY(-4px);}
  to{opacity:1;transform:translateY(0);}
}
.ps-bright__dd-menu::-webkit-scrollbar{width:6px;}
.ps-bright__dd-menu::-webkit-scrollbar-thumb{background:rgba(255,106,26,.45);border-radius:6px;}

.ps-bright__dd-option{
  display:flex;align-items:center;gap:10px;
  width:100%;box-sizing:border-box;
  padding:10px 14px;
  background:transparent;border:none;cursor:pointer;
  font-family:inherit;font-size:14px;color:var(--ps-ink);font-weight:600;
  text-align:left;border-radius:10px;
  transition:background .15s, color .15s;
}
.ps-bright__dd-option:hover,
.ps-bright__dd-option:focus-visible{
  background:#fff3e0;color:var(--ps-orange-deep);outline:none;
}
.ps-bright__dd-option--selected{
  background:linear-gradient(135deg,#fff3e0,#ffe7c8);
  color:var(--ps-orange-deep);
}
.ps-bright__dd-check{
  width:20px;height:20px;border-radius:50%;
  background:#fff;border:1.5px solid #e9d3a8;
  color:transparent;
  display:inline-flex;align-items:center;justify-content:center;
  flex:0 0 auto;
  transition:background .15s, border-color .15s, color .15s;
}
.ps-bright__dd-check svg{width:11px;height:11px;display:block;}
.ps-bright__dd-option--selected .ps-bright__dd-check{
  background:linear-gradient(135deg,var(--ps-orange),var(--ps-orange-deep));
  border-color:transparent;color:#fff;
}
.ps-bright__dd-option-text{flex:1;min-width:0;}

/* Зона загрузки фото — компактная горизонтальная */
.ps-bright__upload{
  position:relative;
  display:flex;align-items:center;gap:12px;
  padding:10px 14px;
  background:linear-gradient(135deg,#fff8ec 0%, #fff3e0 100%);
  border:1.5px dashed #f1c98a;
  border-radius:12px;
  text-align:left;
  cursor:pointer;
  transition:background .2s, border-color .2s;
}
.ps-bright__upload:hover{border-color:var(--ps-orange);background:#fff5e0;}
.ps-bright__upload-icon{
  width:32px;height:32px;border-radius:50%;
  background:linear-gradient(135deg,#ffd23a,#ff8a1a);
  display:inline-flex;align-items:center;justify-content:center;
  color:#fff;box-shadow:0 6px 14px -6px rgba(229,74,0,.5);
  flex:0 0 auto;
}
.ps-bright__upload-icon svg{width:14px;height:14px;}
.ps-bright__upload-body{
  display:flex;flex-direction:column;gap:2px;min-width:0;flex:1;
}
.ps-bright__upload-title{
  font-size:12.5px;font-weight:700;color:var(--ps-ink);line-height:1.3;
}
.ps-bright__upload-title b{color:var(--ps-orange-deep);}
.ps-bright__upload-hint{font-size:11px;color:var(--ps-ink-mute);font-weight:500;}

/* Блок цены */
.ps-bright__price{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:14px 18px;
  background:linear-gradient(135deg,var(--ps-orange) 0%, var(--ps-orange-deep) 100%);
  color:#fff;
  border-radius:16px;
  position:relative;
  overflow:hidden;
  box-shadow:0 12px 24px -10px rgba(229,74,0,.55);
}
.ps-bright__price::after{
  content:"";position:absolute;right:-30px;top:-30px;width:120px;height:120px;border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.22), transparent 70%);pointer-events:none;
}
.ps-bright__price-left{display:flex;flex-direction:column;line-height:1.1;gap:4px;}
.ps-bright__price-label{
  font-size:11px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;opacity:.9;
}
.ps-bright__price-note{font-size:12px;font-weight:600;opacity:.85;}
.ps-bright__price-right{
  display:flex;align-items:baseline;gap:4px;
  font-family:"Unbounded","Manrope",sans-serif;
  font-weight:800;letter-spacing:-.02em;
}
.ps-bright__price-now{font-size:38px;line-height:1;}
.ps-bright__price-cur{font-size:22px;line-height:1;opacity:.95;}

/* CTA */
.ps-bright__cta{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:15px 20px;
  border-radius:14px;border:none;cursor:pointer;
  font-family:"Manrope",sans-serif;
  font-size:14.5px;font-weight:800;letter-spacing:.04em;
  color:#fff;
  background:linear-gradient(135deg,var(--ps-orange) 0%, var(--ps-orange-deep) 100%);
  box-shadow:
    0 16px 30px -12px rgba(229,74,0,.6),
    inset 0 1px 0 rgba(255,255,255,.3);
  transition:transform .2s, box-shadow .2s;
  width:100%;
}
.ps-bright__cta:hover{
  transform:translateY(-2px);
  box-shadow:0 24px 44px -14px rgba(229,74,0,.7), inset 0 1px 0 rgba(255,255,255,.3);
}
.ps-bright__cta-arrow{
  width:24px;height:24px;border-radius:50%;background:rgba(255,255,255,.22);
  display:inline-flex;align-items:center;justify-content:center;
}
.ps-bright__cta-arrow svg{width:12px;height:12px;}

.ps-bright__order-foot{
  font-size:11px;color:var(--ps-ink-mute);line-height:1.5;
  text-align:center;font-weight:500;
}

/* Шапка заказа — компактнее */
.ps-bright__order-head{padding-bottom:14px;}

/* ============================================================
   MODAL CHECKOUT — 3 шага
   ============================================================ */
.ps-bright__modal{
  position:fixed;inset:0;z-index:1000;
  display:flex;align-items:center;justify-content:center;
  padding:24px;box-sizing:border-box;
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .22s ease, visibility 0s .22s;
  font-family:"Manrope",system-ui,sans-serif;
  color:var(--ps-ink);
}
.ps-bright__modal--open{
  opacity:1;visibility:visible;pointer-events:auto;
  transition:opacity .22s ease;
}
.ps-bright__modal-backdrop{
  position:absolute;inset:0;
  background:radial-gradient(circle at 50% 50%, rgba(76,30,5,.55), rgba(31,20,10,.7));
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  cursor:pointer;
}
.ps-bright__modal-dialog{
  position:relative;
  width:100%;max-width:860px;
  max-height:calc(100vh - 48px);
  background:#fff;
  border-radius:28px;
  box-shadow:0 40px 80px -20px rgba(76,30,5,.6), 0 16px 40px -12px rgba(229,74,0,.25);
  display:flex;flex-direction:column;
  overflow:hidden;
  transform:translateY(20px) scale(.97);
  transition:transform .28s cubic-bezier(.2,.8,.25,1);
}
.ps-bright__modal--open .ps-bright__modal-dialog{
  transform:translateY(0) scale(1);
}

/* === Header === */
.ps-bright__modal-head{
  padding:18px 24px 14px;
  background:
    radial-gradient(600px 220px at 100% 0%, rgba(255,210,58,.25), transparent 60%),
    linear-gradient(180deg, #fff8ec 0%, #ffffff 100%);
  border-bottom:1px dashed var(--ps-line);
  flex:0 0 auto;
}
.ps-bright__modal-head-top{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  margin-bottom:8px;
}
.ps-bright__modal-eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  padding:6px 12px;border-radius:999px;
  background:#fff;border:1.5px solid var(--ps-orange);
  color:var(--ps-orange-deep);
  font-size:10.5px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;
  box-shadow:0 6px 14px -8px rgba(229,74,0,.35);
}
.ps-bright__modal-eyebrow::before{
  content:"";width:7px;height:7px;border-radius:50%;background:var(--ps-orange);
  box-shadow:0 0 0 3px rgba(255,106,26,.2);
}
.ps-bright__modal-close{
  width:38px;height:38px;border-radius:50%;
  background:#fff;border:1.5px solid var(--ps-line);
  cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;
  color:var(--ps-ink-soft);
  transition:background .15s, color .15s, border-color .15s, transform .15s;
}
.ps-bright__modal-close:hover{
  background:var(--ps-orange);border-color:var(--ps-orange);color:#fff;
  transform:rotate(90deg);
}
.ps-bright__modal-close svg{width:14px;height:14px;}
.ps-bright__modal-title{
  font-family:"Unbounded","Manrope",sans-serif;
  font-size:22px;font-weight:800;line-height:1.1;letter-spacing:-.02em;
  margin:0 0 12px;color:var(--ps-ink);
}
.ps-bright__modal-title b{
  background:linear-gradient(135deg,#ff8a1a,#e54a00 60%,#b04a26);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  font-weight:800;
}

/* Прогресс шагов */
.ps-bright__modal-steps{
  display:flex;align-items:center;gap:0;
  list-style:none;margin:0;padding:0;
}
.ps-bright__modal-steps li{
  display:flex;align-items:center;gap:10px;
  font-size:12.5px;font-weight:700;color:var(--ps-ink-mute);
  flex:0 0 auto;
}
.ps-bright__modal-steps li + li{margin-left:10px;}
.ps-bright__modal-steps li::before{
  content:"";width:24px;height:2px;background:var(--ps-line);border-radius:2px;
  margin-right:10px;flex:0 0 auto;
}
.ps-bright__modal-steps li:first-child::before{display:none;margin:0;}
.ps-bright__modal-step-num{
  width:28px;height:28px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--ps-line-soft);color:var(--ps-ink-mute);
  font-size:13px;font-weight:800;
  transition:background .2s, color .2s, box-shadow .2s, transform .2s;
  flex:0 0 auto;
}
.ps-bright__modal-steps li.is-active{color:var(--ps-ink);}
.ps-bright__modal-steps li.is-active .ps-bright__modal-step-num{
  background:linear-gradient(135deg,var(--ps-orange),var(--ps-orange-deep));color:#fff;
  box-shadow:0 6px 14px -6px rgba(229,74,0,.6);
  transform:scale(1.05);
}
.ps-bright__modal-steps li.is-done .ps-bright__modal-step-num{
  background:#fff;border:1.5px solid var(--ps-orange);color:var(--ps-orange-deep);
}
.ps-bright__modal-steps li.is-done .ps-bright__modal-step-num svg{width:12px;height:12px;}

/* === Body === */
.ps-bright__modal-body{
  flex:1 1 auto;
  overflow-y:auto;
  padding:16px 24px 14px;
  scrollbar-width:thin;
  scrollbar-color:rgba(255,106,26,.55) transparent;
  background:#fff;
}
.ps-bright__modal-body::-webkit-scrollbar{width:7px;}
.ps-bright__modal-body::-webkit-scrollbar-thumb{background:rgba(255,106,26,.4);border-radius:6px;}

.ps-bright__modal-pane{display:none;animation:ps-bright-pane-in .26s ease both;}
.ps-bright__modal-pane.is-active{display:block;}
@keyframes ps-bright-pane-in{
  from{opacity:0;transform:translateY(8px);}
  to{opacity:1;transform:translateY(0);}
}

/* Compact summary (выбранные параметры) */
.ps-bright__modal-summary{
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;
  padding:12px 14px;margin-bottom:20px;
  background:linear-gradient(135deg,#fff6ea 0%, #fff3e0 100%);
  border:1.5px solid var(--ps-line);
  border-radius:14px;
}
.ps-bright__modal-summary-chip{
  display:inline-flex;align-items:center;gap:6px;
  font-size:12.5px;font-weight:700;color:var(--ps-ink-soft);
  letter-spacing:.01em;
}
.ps-bright__modal-summary-chip b{color:var(--ps-ink);font-weight:800;}
.ps-bright__modal-summary-chip + .ps-bright__modal-summary-chip::before{
  content:"·";color:var(--ps-ink-mute);margin-right:6px;
}
.ps-bright__modal-summary-chip--price{
  margin-left:auto;
  padding:6px 12px;border-radius:999px;
  background:#fff;color:var(--ps-orange-deep);
  font-size:13px;font-weight:800;
  box-shadow:0 6px 12px -8px rgba(229,74,0,.4);
}
.ps-bright__modal-summary-chip--price::before{display:none;}

/* === Поля формы (шаг 1) === */
.ps-bright__modal-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:14px;
}
.ps-bright__modal-grid--full > .ps-bright__field{grid-column:1 / -1;}
.ps-bright__field--full{grid-column:1 / -1;}

/* Радиo-pills (Да/Нет) */
.ps-bright__pills{
  display:inline-flex;gap:6px;padding:5px;
  background:#fff8ec;border:1.5px solid var(--ps-line);
  border-radius:14px;
}
.ps-bright__pill{
  display:inline-flex;align-items:center;gap:6px;
  padding:9px 18px;border-radius:10px;
  background:transparent;border:none;cursor:pointer;
  font-family:inherit;font-size:13.5px;font-weight:700;
  color:var(--ps-ink-soft);
  transition:background .18s, color .18s, box-shadow .18s;
  min-width:64px;justify-content:center;
}
.ps-bright__pill:hover{color:var(--ps-ink);}
.ps-bright__pill.is-active{
  background:linear-gradient(135deg,var(--ps-orange),var(--ps-orange-deep));
  color:#fff;
  box-shadow:0 8px 16px -8px rgba(229,74,0,.6);
}
.ps-bright__pill svg{width:12px;height:12px;}

.ps-bright__pills-row{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:12px 14px;
  background:#fff8ec;border:1.5px solid var(--ps-line);border-radius:14px;
}
.ps-bright__pills-row-label{
  display:flex;flex-direction:column;gap:2px;
  font-size:13.5px;font-weight:700;color:var(--ps-ink);
}
.ps-bright__pills-row-label small{font-size:11.5px;font-weight:500;color:var(--ps-ink-mute);}
.ps-bright__pills-row .ps-bright__pills{background:#fff;}

/* Чекбоксы */
.ps-bright__check{
  display:flex;align-items:flex-start;gap:10px;
  cursor:pointer;padding:10px 12px;border-radius:12px;
  border:1.5px solid transparent;
  transition:background .15s, border-color .15s;
}
.ps-bright__check:hover{background:#fff8ec;}
.ps-bright__check input{position:absolute;opacity:0;pointer-events:none;}
.ps-bright__check-box{
  width:20px;height:20px;border-radius:6px;flex:0 0 auto;
  background:#fff;border:1.5px solid #e9d3a8;
  display:inline-flex;align-items:center;justify-content:center;
  color:transparent;
  transition:background .15s, border-color .15s, color .15s;
  margin-top:1px;
}
.ps-bright__check-box svg{width:12px;height:12px;}
.ps-bright__check input:checked + .ps-bright__check-box{
  background:linear-gradient(135deg,var(--ps-orange),var(--ps-orange-deep));
  border-color:transparent;color:#fff;
}
.ps-bright__check-text{
  font-size:13px;color:var(--ps-ink-soft);line-height:1.45;font-weight:500;
}
.ps-bright__check-text a{color:var(--ps-orange-deep);}

.ps-bright__check-group{display:flex;flex-direction:column;gap:2px;margin-top:6px;}

/* Промокод */
.ps-bright__promo{
  position:relative;
  display:flex;align-items:center;gap:0;
  background:#fff8ec;border:1.5px solid var(--ps-line);
  border-radius:14px;
  padding:4px 4px 4px 14px;
  transition:border-color .2s, box-shadow .2s, background .2s;
}
.ps-bright__promo:focus-within{
  border-color:var(--ps-orange);background:#fff;
  box-shadow:0 0 0 4px rgba(255,106,26,.12);
}
.ps-bright__promo-icon{
  color:var(--ps-orange-deep);flex:0 0 auto;display:inline-flex;
}
.ps-bright__promo-icon svg{width:18px;height:18px;}
.ps-bright__promo input{
  flex:1;min-width:0;border:none;background:transparent;
  padding:10px 12px;font-family:inherit;font-size:14px;font-weight:600;
  color:var(--ps-ink);outline:none;letter-spacing:.06em;text-transform:uppercase;
}
.ps-bright__promo input::placeholder{color:var(--ps-ink-mute);text-transform:none;letter-spacing:0;font-weight:500;}
.ps-bright__promo-apply{
  padding:10px 16px;border-radius:10px;border:none;cursor:pointer;
  background:linear-gradient(135deg,var(--ps-orange),var(--ps-orange-deep));
  color:#fff;font-family:inherit;font-size:12.5px;font-weight:800;letter-spacing:.04em;
  text-transform:uppercase;
  box-shadow:0 8px 16px -8px rgba(229,74,0,.55);
  transition:transform .15s;
}
.ps-bright__promo-apply:hover{transform:translateY(-1px);}

/* === Промокод (свёрнутый) === */
.ps-bright__promo-disclose{margin-top:-2px;}
.ps-bright__promo-toggle{
  display:inline-flex;align-items:center;gap:8px;
  background:transparent;border:none;cursor:pointer;
  font-family:inherit;font-size:13px;font-weight:700;
  color:var(--ps-orange-deep);letter-spacing:.01em;
  padding:6px 0;
}
.ps-bright__promo-toggle:hover{color:var(--ps-orange);}
.ps-bright__promo-toggle-icon{
  width:22px;height:22px;border-radius:50%;
  background:#fff3e0;color:var(--ps-orange-deep);
  display:inline-flex;align-items:center;justify-content:center;
  transition:transform .25s ease, background .15s;
}
.ps-bright__promo-toggle-icon svg{width:11px;height:11px;}
.ps-bright__promo-disclose.is-open .ps-bright__promo-toggle-icon{transform:rotate(45deg);background:var(--ps-orange);color:#fff;}
.ps-bright__promo-collapse{
  max-height:0;overflow:hidden;
  transition:max-height .28s ease, margin-top .2s ease;
}
.ps-bright__promo-disclose.is-open .ps-bright__promo-collapse{
  max-height:120px;margin-top:8px;
}

/* === Шаг 1: воздух + второстепенные чекбоксы === */
.ps-bright__modal-pane[data-pane="1"] .ps-bright__modal-grid{gap:16px;}
.ps-bright__check--secondary{padding:4px 0 0 2px;}
.ps-bright__check--secondary:hover{background:transparent;}
.ps-bright__check--secondary .ps-bright__check-box{width:16px;height:16px;border-radius:5px;}
.ps-bright__check--secondary .ps-bright__check-box svg{width:9px;height:9px;}
.ps-bright__check--secondary .ps-bright__check-text{font-size:12px;color:var(--ps-ink-mute);}

/* === Upsell add-button (вместо pills) === */
.ps-bright__add-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  padding:7px 13px;border-radius:10px;
  border:1.5px solid var(--ps-orange);
  background:#fff;color:var(--ps-orange-deep);
  cursor:pointer;
  font-family:inherit;font-size:12px;font-weight:800;letter-spacing:.01em;
  white-space:nowrap;
  transition:background .18s, color .18s, border-color .18s, box-shadow .18s, transform .15s;
}
.ps-bright__add-btn:hover{
  background:var(--ps-orange);color:#fff;
  box-shadow:0 10px 20px -10px rgba(229,74,0,.55);
  transform:translateY(-1px);
}
.ps-bright__add-btn-icon{
  width:14px;height:14px;border-radius:50%;
  background:var(--ps-orange);color:#fff;
  display:inline-flex;align-items:center;justify-content:center;
  transition:background .18s, color .18s, transform .25s ease;
  flex:0 0 auto;
}
.ps-bright__add-btn-icon svg{width:8px;height:8px;}
.ps-bright__add-btn:hover .ps-bright__add-btn-icon{background:#fff;color:var(--ps-orange-deep);}
/* added state */
.ps-bright__upsell-card.is-added .ps-bright__add-btn{
  background:linear-gradient(135deg,var(--ps-orange),var(--ps-orange-deep));
  color:#fff;border-color:transparent;
  box-shadow:0 10px 22px -10px rgba(229,74,0,.6);
}
.ps-bright__upsell-card.is-added .ps-bright__add-btn-icon{
  background:#fff;color:var(--ps-orange-deep);
}
.ps-bright__upsell-card.is-added .ps-bright__add-btn:hover{
  background:linear-gradient(135deg,var(--ps-orange-deep),#b04a26);
}

/* === Итог на шаге 2 === */
.ps-bright__breakdown{
  margin-top:6px;padding:8px 10px;
  background:linear-gradient(135deg,#fff8ec 0%, #fff3e0 100%);
  border:1.5px solid var(--ps-line);
  border-radius:10px;
  display:flex;flex-direction:column;gap:4px;
}
.ps-bright__breakdown-row{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  font-size:12.5px;color:var(--ps-ink-soft);font-weight:600;
}
.ps-bright__breakdown-row b{color:var(--ps-ink);font-weight:700;}
.ps-bright__breakdown-row--total{
  padding-top:6px;margin-top:0;
  border-top:1px dashed var(--ps-line);
  font-size:13px;
}
.ps-bright__breakdown-row--total span:last-child{
  font-family:"Unbounded","Manrope",sans-serif;
  font-size:18px;font-weight:800;
  color:var(--ps-orange-deep);letter-spacing:-.01em;
}
.ps-bright__breakdown-row--addons span:last-child{color:var(--ps-orange-deep);font-weight:800;}
.ps-bright__breakdown-list{
  display:flex;flex-wrap:wrap;gap:6px;
}
.ps-bright__breakdown-chip{
  display:inline-flex;align-items:center;gap:6px;
  padding:4px 10px;border-radius:999px;
  background:#fff;border:1px solid #f3dcb6;
  font-size:11.5px;font-weight:700;color:var(--ps-ink-soft);
}
.ps-bright__breakdown-chip b{color:var(--ps-orange-deep);font-weight:800;}

/* === Publish-row (перенесён в шаг 2) — инлайн вариант */
.ps-bright__check--inline{
  margin-top:8px;padding:6px 10px;
  background:#fff8ec;border:1px dashed var(--ps-line);
  border-radius:10px;
}
.ps-bright__check--inline:hover{background:#fff3e0;}
.ps-bright__check--inline .ps-bright__check-text{font-size:12px;}
.ps-bright__check--inline .ps-bright__check-text b{color:var(--ps-orange-deep);font-weight:800;}

/* === Дополнительные опции (шаг 2) === */
.ps-bright__upsell-badge{display:none;} /* убрано для компактности */
.ps-bright__upsell-intro{
  display:flex;align-items:center;gap:12px;
  padding:8px 12px;border-radius:12px;
  background:linear-gradient(135deg,#fff3e0 0%, #ffe7c8 100%);
  border:1px solid #f3dcb6;
  margin-bottom:10px;
}
.ps-bright__upsell-intro-icon{
  width:34px;height:34px;border-radius:50%;flex:0 0 auto;
  background:linear-gradient(135deg,#ffd23a,#ff8a1a 60%,#e54a00);
  display:inline-flex;align-items:center;justify-content:center;color:#fff;
  box-shadow:0 6px 14px -6px rgba(229,74,0,.55);
}
.ps-bright__upsell-intro-icon svg{width:16px;height:16px;}
.ps-bright__upsell-intro-text{font-size:12.5px;color:var(--ps-ink-soft);line-height:1.35;font-weight:500;}
.ps-bright__upsell-intro-text b{color:var(--ps-ink);font-weight:800;display:block;font-size:14px;margin-bottom:1px;}

.ps-bright__upsell{
  display:grid;grid-template-columns:1fr 1fr;gap:6px;
}
.ps-bright__upsell-card{
  position:relative;
  display:flex;flex-direction:column;gap:8px;
  padding:10px 12px;
  background:#fff;
  border:1.5px solid var(--ps-line-soft);
  border-radius:14px;
  transition:border-color .2s, box-shadow .2s, transform .2s, background .2s;
}
.ps-bright__upsell-card:hover{
  border-color:#f4c98e;
  box-shadow:0 18px 36px -22px rgba(216,90,20,.32);
  transform:translateY(-2px);
}
.ps-bright__upsell-card.is-added{
  border:2px solid var(--ps-orange);
  background:linear-gradient(135deg,#fff6ea 0%, #fff 70%);
  box-shadow:0 0 0 4px rgba(255,106,26,.1), 0 22px 40px -22px rgba(229,74,0,.4);
}
.ps-bright__upsell-head{display:flex;align-items:flex-start;gap:10px;}
.ps-bright__upsell-icon{
  width:36px;height:36px;border-radius:10px;flex:0 0 auto;
  background:linear-gradient(135deg,#fff3e0 0%, #ffd9a8 100%);
  display:inline-flex;align-items:center;justify-content:center;
  color:var(--ps-orange-deep);
  border:1px solid #f3dcb6;
  transition:background .2s, color .2s, border-color .2s;
}
.ps-bright__upsell-card.is-added .ps-bright__upsell-icon{
  background:linear-gradient(135deg,var(--ps-orange),var(--ps-orange-deep));
  color:#fff;border-color:transparent;
}
.ps-bright__upsell-icon svg{width:18px;height:18px;}
.ps-bright__upsell-body{flex:1;min-width:0;}
.ps-bright__upsell-name{
  font-family:"Unbounded","Manrope",sans-serif;
  font-size:14px;font-weight:800;line-height:1.2;letter-spacing:-.01em;
  margin:0 0 2px;color:var(--ps-ink);
}
.ps-bright__upsell-desc{font-size:11.5px;color:var(--ps-ink-mute);font-weight:500;line-height:1.35;}
.ps-bright__upsell-badge{
  display:inline-flex;align-items:center;gap:6px;
  padding:2px 7px;border-radius:999px;
  font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  background:linear-gradient(135deg,#ffd23a,#ff8a1a);color:#fff;
  margin-top:4px;
  box-shadow:0 6px 12px -6px rgba(229,74,0,.5);
}
.ps-bright__upsell-badge--pop{background:linear-gradient(135deg,#ff8a1a,#e54a00);}

.ps-bright__upsell-foot{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding-top:6px;border-top:1px dashed var(--ps-line);
}
.ps-bright__upsell-price{
  font-family:"Unbounded","Manrope",sans-serif;
  font-size:14px;font-weight:800;color:var(--ps-orange-deep);letter-spacing:-.01em;
  line-height:1.1;
}
.ps-bright__upsell-price small{font-size:9.5px;font-weight:600;color:var(--ps-ink-mute);text-transform:uppercase;letter-spacing:.1em;display:block;line-height:1;margin-bottom:1px;}
.ps-bright__upsell-price--free{color:var(--ps-ink);}

/* === Способы оплаты (шаг 3) === */
.ps-bright__pay{display:flex;flex-direction:column;gap:12px;}
.ps-bright__pay-card{
  position:relative;
  display:flex;align-items:center;gap:16px;
  padding:18px 20px;
  background:#fff;border:1.5px solid var(--ps-line-soft);
  border-radius:18px;
  cursor:pointer;
  transition:border-color .2s, box-shadow .2s, background .2s, transform .15s;
}
.ps-bright__pay-card:hover{
  border-color:#f4c98e;
  transform:translateY(-2px);
  box-shadow:0 18px 36px -22px rgba(216,90,20,.32);
}
.ps-bright__pay-card input{position:absolute;opacity:0;pointer-events:none;}
.ps-bright__pay-card.is-selected{
  border:2px solid var(--ps-orange);
  background:linear-gradient(135deg,#fff6ea 0%, #fff 70%);
  box-shadow:0 0 0 4px rgba(255,106,26,.1), 0 22px 40px -22px rgba(229,74,0,.4);
  padding:17px 19px; /* -1 for border */
}
.ps-bright__pay-radio{
  width:24px;height:24px;border-radius:50%;flex:0 0 auto;
  background:#fff;border:2px solid #e9d3a8;
  display:inline-flex;align-items:center;justify-content:center;
  transition:background .15s, border-color .15s;
}
.ps-bright__pay-radio::after{
  content:"";width:10px;height:10px;border-radius:50%;
  background:transparent;transition:background .15s, transform .15s;
  transform:scale(.4);
}
.ps-bright__pay-card.is-selected .ps-bright__pay-radio{
  border-color:var(--ps-orange);
}
.ps-bright__pay-card.is-selected .ps-bright__pay-radio::after{
  background:linear-gradient(135deg,var(--ps-orange),var(--ps-orange-deep));
  transform:scale(1);
}
.ps-bright__pay-icon{
  width:54px;height:54px;border-radius:14px;flex:0 0 auto;
  background:linear-gradient(135deg,#fff3e0 0%, #ffd9a8 100%);
  border:1px solid #f3dcb6;
  display:inline-flex;align-items:center;justify-content:center;
  color:var(--ps-orange-deep);
  font-family:"Unbounded","Manrope",sans-serif;
  font-size:18px;font-weight:800;
}
.ps-bright__pay-icon svg{width:24px;height:24px;}
.ps-bright__pay-body{flex:1;min-width:0;}
.ps-bright__pay-name{
  font-family:"Unbounded","Manrope",sans-serif;
  font-size:17px;font-weight:800;line-height:1.2;letter-spacing:-.01em;
  margin:0 0 3px;color:var(--ps-ink);
}
.ps-bright__pay-desc{font-size:12.5px;color:var(--ps-ink-mute);font-weight:500;line-height:1.4;}
.ps-bright__pay-tag{
  font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;
  padding:5px 10px;border-radius:999px;
  background:#fff3e0;color:var(--ps-orange-deep);
  flex:0 0 auto;
}

/* === Footer === */
.ps-bright__modal-foot{
  flex:0 0 auto;
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:14px 24px;
  border-top:1px solid var(--ps-line-soft);
  background:#fff8ec;
}
.ps-bright__modal-total{
  display:flex;flex-direction:column;line-height:1.1;gap:2px;
}
.ps-bright__modal-total-label{
  font-size:11px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;
  color:var(--ps-ink-mute);
}
.ps-bright__modal-total-amount{
  font-family:"Unbounded","Manrope",sans-serif;
  font-size:28px;font-weight:800;color:var(--ps-orange-deep);letter-spacing:-.02em;
  display:inline-flex;align-items:baseline;gap:3px;
}
.ps-bright__modal-total-amount small{font-size:18px;font-weight:800;}
.ps-bright__modal-actions{display:flex;align-items:center;gap:10px;}
.ps-bright__modal-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:13px 22px;border-radius:14px;border:none;cursor:pointer;
  font-family:inherit;font-size:14px;font-weight:800;letter-spacing:.02em;
  transition:transform .15s, box-shadow .2s, background .2s, color .2s;
}
.ps-bright__modal-btn--ghost{
  background:#fff;color:var(--ps-ink-soft);
  border:1.5px solid var(--ps-line);
}
.ps-bright__modal-btn--ghost:hover{background:#fff3e0;color:var(--ps-orange-deep);border-color:var(--ps-orange);}
.ps-bright__modal-btn--primary{
  background:linear-gradient(135deg,var(--ps-orange),var(--ps-orange-deep));
  color:#fff;
  box-shadow:0 14px 26px -10px rgba(229,74,0,.55), inset 0 1px 0 rgba(255,255,255,.3);
}
.ps-bright__modal-btn--primary:hover{
  transform:translateY(-2px);
  box-shadow:0 20px 34px -10px rgba(229,74,0,.65), inset 0 1px 0 rgba(255,255,255,.3);
}
.ps-bright__modal-btn svg{width:12px;height:12px;}
.ps-bright__modal-btn[disabled]{opacity:.4;pointer-events:none;}
.ps-bright__modal-foot-fine{
  font-size:11px;color:var(--ps-ink-mute);font-weight:500;
  text-align:right;flex:1;line-height:1.4;
}

/* Блокировка прокрутки страницы при открытом modal */
body.ps-bright--lock{overflow:hidden;}

/* === Premium-подложка за карточками «Дикари» и «Романтики» === */
.ps-bright__featured-zone{
  grid-column: 1 / -1;
  position:relative;
  display:flex;flex-direction:column;gap:18px;
  padding:22px;
  border-radius:30px;
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(circle at 90% 8%, rgba(255,228,150,.55), transparent 42%),
    radial-gradient(circle at 12% 92%, rgba(255,255,255,.14), transparent 55%),
    linear-gradient(120deg, #f9b85a 0%, #f08a35 35%, #d96526 68%, #b04a26 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.30),
    0 40px 80px -42px rgba(176,74,38,.55),
    0 16px 36px -20px rgba(216,90,20,.30);
}

/* === Premium featured-карточки команд === */
.ps-bright__team--featured{
  border:1px solid rgba(255,255,255,.55);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.7),
    0 18px 40px -22px rgba(120,46,18,.45),
    0 6px 16px -10px rgba(120,46,18,.30);
  background:#fff;
  display:flex;flex-direction:column;
  overflow:hidden;
}
.ps-bright__team--featured:hover{
  border-color:rgba(255,255,255,.85);
  transform:translateY(-3px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.7),
    0 26px 54px -22px rgba(120,46,18,.52),
    0 10px 24px -12px rgba(120,46,18,.34);
}
.ps-bright__team--featured.ps-bright__team--selected{
  border:2px solid #fff;
  background:#fff;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.7),
    0 0 0 3px rgba(255,255,255,.55),
    0 26px 54px -22px rgba(120,46,18,.55);
}
.ps-bright__team--featured .ps-bright__team-media{
  width:100%;
  aspect-ratio: 21 / 9;
  height:auto;
}
.ps-bright__team--featured .ps-bright__team-media img{
  width:100%;height:100%;object-fit:cover;
}
.ps-bright__team--featured .ps-bright__team-body{
  padding:20px 24px 22px;
  gap:14px;
}
.ps-bright__team--featured-info{display:flex;flex-direction:column;gap:10px;}
.ps-bright__team-meta{
  font-size:13px;color:var(--ps-ink-soft);line-height:1.5;font-weight:500;
  margin:0;
}
.ps-bright__team--featured .ps-bright__team-name{font-size:26px;}
/* Описание вместо цены внутри featured-карточки */
.ps-bright__team--featured .ps-bright__team-desc{
  -webkit-line-clamp:unset;display:block;
  font-size:15px;line-height:1.55;max-width:620px;
}
.ps-bright__team--featured-badge{
  display:inline-flex;align-items:center;gap:7px;align-self:flex-start;white-space:nowrap;
  padding:5px 13px 5px 10px;border-radius:999px;
  background:linear-gradient(135deg,#ff8a1a 0%,#e54a00 55%,#b04a26 100%);color:#fff;
  font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  border:1px solid rgba(255,255,255,.20);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.35),
    0 8px 18px -8px rgba(176,74,38,.55);
}
.ps-bright__team--featured-badge::before{content:"★";font-size:12px;line-height:1;color:#ffe2bf;}
.ps-bright__team-tag--premium{
  background:linear-gradient(135deg,#ff8a1a,#e54a00 60%,#b04a26)!important;
  color:#fff!important;
}
.ps-bright__team-features{
  display:flex;flex-wrap:wrap;gap:6px;
}
.ps-bright__team-feature{
  display:inline-flex;align-items:center;gap:6px;
  padding:5px 10px;border-radius:999px;
  background:#fff;border:1px solid var(--ps-line);
  font-size:11.5px;font-weight:700;color:var(--ps-ink-soft);
  letter-spacing:.01em;
}
.ps-bright__team-feature::before{
  content:"";width:5px;height:5px;border-radius:50%;
  background:var(--ps-orange);
}

/* На десктопе: контент карточки в 2 колонки (инфо слева, цена+CTA справа) */
@media (min-width: 720px){
  .ps-bright__team--featured .ps-bright__team-media{
    aspect-ratio: 24 / 9;
    max-height:300px;
  }
  .ps-bright__team--featured .ps-bright__team-body{
    display:grid;
    grid-template-columns: 1fr auto;
    grid-template-areas:"info action";
    column-gap:32px;
    padding:22px 28px 24px;
    align-items:center;
  }
  .ps-bright__team--featured-info{grid-area:info;}
  .ps-bright__team--featured .ps-bright__team-name{font-size:28px;margin:0;}
  .ps-bright__team--featured-action-col{
    grid-area:action;
    display:flex;flex-direction:column;gap:10px;align-items:flex-end;justify-content:center;
    min-width:200px;
  }
  .ps-bright__team--featured .ps-bright__team-action{margin:0;}
}

/* === Адаптив ============================================== */
@media (max-width: 1080px){
  .ps-bright__grid{grid-template-columns:1fr;gap:24px;}
  .ps-bright__order{position:static;max-height:none;overflow:visible;}
  .ps-bright__team-media{height:200px;}
}
@media (max-width: 720px){
  .ps-bright{padding:32px 14px 56px;}
  .ps-bright__hero{align-items:flex-start;}
  .ps-bright__steps{padding:10px 12px;gap:8px;font-size:12px;}
  .ps-bright__step-line{width:14px;}
  .ps-bright__panel{padding:22px 18px;border-radius:20px;}
  .ps-bright__teams{grid-template-columns:1fr;gap:14px;}
  .ps-bright__team{border-radius:18px;}
  .ps-bright__team-media{height:190px;}
  .ps-bright__team-body{padding:16px 16px 18px;gap:12px;}
  .ps-bright__team-name{font-size:20px;}
  .ps-bright__team-price{padding:10px 14px;}
  .ps-bright__team-price-now{font-size:22px;}
  .ps-bright__team-tags{top:10px;left:10px;}
  .ps-bright__team-tag{padding:5px 9px;font-size:10px;}
  .ps-bright__team--selected .ps-bright__team-media::before{top:10px;right:10px;padding:5px 11px;font-size:10px;}
  .ps-bright__order{padding:22px 18px;border-radius:20px;}
  .ps-bright__price-now{font-size:38px;}
}

/* Modal адаптив */
@media (max-width: 860px){
  .ps-bright__modal{padding:0;}
  .ps-bright__modal-dialog{
    max-width:100%;width:100%;
    height:100vh;height:100dvh;
    max-height:100vh;max-height:100dvh;
    border-radius:0;
  }
  .ps-bright__modal-head{padding:18px 18px 14px;}
  .ps-bright__modal-title{font-size:22px;}
  .ps-bright__modal-body{padding:18px;}
  .ps-bright__modal-foot{padding:14px 18px;flex-wrap:wrap;gap:12px;}
  .ps-bright__modal-foot-fine{order:3;flex:1 1 100%;text-align:left;}
  .ps-bright__modal-grid{grid-template-columns:1fr;}
  .ps-bright__upsell{grid-template-columns:1fr;}
  .ps-bright__modal-steps li span:not(.ps-bright__modal-step-num){display:none;}
  .ps-bright__modal-steps li + li{margin-left:6px;}
  .ps-bright__modal-steps li::before{width:16px;margin-right:6px;}
  .ps-bright__pay-card{padding:14px;gap:12px;}
  .ps-bright__pay-card.is-selected{padding:13px;}
  .ps-bright__pay-icon{width:44px;height:44px;}
  .ps-bright__pay-tag{display:none;}
  .ps-bright__modal-summary{padding:10px 12px;gap:10px;}
  .ps-bright__modal-summary-chip--price{margin-left:0;}
  .ps-bright__modal-actions{flex:1;}
  .ps-bright__modal-btn{flex:1;padding:12px 14px;font-size:13px;}
}
@media (max-width: 480px){
  .ps-bright__modal-total-amount{font-size:24px;}
  .ps-bright__modal-total-amount small{font-size:15px;}
}

/* === Intro slim variant === */
.ps-bright__breakdown-row[hidden]{display:none;}
.ps-bright__upsell-intro--slim{
  display:block;padding:5px 12px;margin-bottom:4px;
  border-radius:10px;
  background:linear-gradient(135deg,#fff3e0 0%, #ffe7c8 100%);
  border:1px solid #f3dcb6;
  font-size:11.5px;color:var(--ps-ink-soft);line-height:1.3;
}
.ps-bright__upsell-intro--slim b{color:var(--ps-ink);font-weight:800;font-size:13px;margin-right:6px;}

/* === Publish checkbox внутри breakdown === */
.ps-bright__check--inside{
  margin:0 -4px 4px;padding:4px 8px;
  background:transparent;border:none;
  border-bottom:1px dashed var(--ps-line);
  border-radius:0;
  padding-bottom:8px;
}
.ps-bright__check--inside:hover{background:transparent;}
.ps-bright__check--inside .ps-bright__check-text{font-size:11.5px;}
.ps-bright__check--inside .ps-bright__check-text b{color:var(--ps-orange-deep);font-weight:800;}

/* Body padding-bottom компактнее */
.ps-bright__modal-pane[data-pane="2"]{padding-bottom:0;}
.ps-bright__modal-body{padding-bottom:14px;}

/* === Mini AI-кнопка в заголовке поля (компактно) === */
.ps-bright__label-tools{
  display:inline-flex;align-items:center;gap:8px;
}
.ps-bright__ai-mini{
  display:inline-flex;align-items:center;gap:5px;
  padding:2px 9px 2px 3px;border-radius:999px;
  background:#fff;
  border:1px dashed var(--ps-orange);
  cursor:pointer;
  font-family:inherit;font-size:10.5px;font-weight:800;letter-spacing:.08em;
  color:var(--ps-orange-deep);text-transform:uppercase;
  transition:background .15s, box-shadow .15s, border-style .15s;
}
.ps-bright__ai-mini:hover{
  background:#fff3e0;
  border-style:solid;
  box-shadow:0 4px 10px -4px rgba(229,74,0,.4);
}
.ps-bright__ai-mini-icon{
  width:16px;height:16px;border-radius:50%;
  background:linear-gradient(135deg,#ffd23a,#ff8a1a 60%,#e54a00);
  display:inline-flex;align-items:center;justify-content:center;
  color:#fff;flex:0 0 auto;
}
.ps-bright__ai-mini-icon svg{width:9px;height:9px;}

/* === Компактнее блок цены в правом сайдбаре === */
.ps-bright__order .ps-bright__price{
  padding:10px 14px;border-radius:14px;
}
.ps-bright__order .ps-bright__price-label{font-size:10px;}
.ps-bright__order .ps-bright__price-note{font-size:11.5px;}
.ps-bright__order .ps-bright__price-now{font-size:30px;}
.ps-bright__order .ps-bright__price-cur{font-size:18px;}
.ps-bright__order .ps-bright__cta{padding:12px 18px;font-size:13.5px;}
.ps-bright__order-foot{font-size:10.5px;margin-top:-4px;}

/* === Multi-option upsell-карточки === */
.ps-bright__upsell-card--multi .ps-bright__upsell-head{
  padding-bottom:0;border-bottom:none;
}
.ps-bright__upsell-options{
  display:flex;flex-direction:row;flex-wrap:wrap;gap:5px;
}
.ps-bright__upsell-option{
  position:relative;
  display:inline-flex;align-items:center;gap:6px;
  padding:5px 10px;border-radius:8px;
  background:#fff8ec;border:1.5px solid var(--ps-line);
  cursor:pointer;
  transition:background .15s, border-color .15s, box-shadow .15s;
  flex:0 0 auto;
}
.ps-bright__upsell-option:hover{background:#fff3e0;border-color:#f4c98e;}
.ps-bright__upsell-option input{position:absolute;opacity:0;pointer-events:none;}
.ps-bright__upsell-option-radio{display:none;}
.ps-bright__upsell-option.is-selected{
  background:#fff;
  border-color:var(--ps-orange);
  box-shadow:0 0 0 2px rgba(255,106,26,.12);
}
.ps-bright__upsell-option-text{
  font-size:11.5px;font-weight:700;color:var(--ps-ink-soft);
  line-height:1.2;
}
.ps-bright__upsell-option.is-selected .ps-bright__upsell-option-text{color:var(--ps-orange-deep);}
.ps-bright__upsell-option-price{
  font-family:"Unbounded","Manrope",sans-serif;
  font-size:10.5px;font-weight:800;color:var(--ps-orange-deep);
  letter-spacing:-.01em;flex:0 0 auto;
}

/* Disabled (mutually exclusive) */
.ps-bright__upsell-card.is-disabled{
  opacity:.55;pointer-events:none;filter:grayscale(.35);
}
.ps-bright__upsell-card.is-disabled::after{
  content:"Несовместимо со «Срочно»";
  position:absolute;top:8px;right:8px;
  padding:4px 9px;border-radius:999px;
  background:rgba(31,20,10,.78);color:#fff;
  font-size:9.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  pointer-events:none;
}
/* === Описание вместо цены в карточках команд === */
.ps-bright__team-body{flex:1 1 auto;}
.ps-bright__team-desc{
  margin:0;
  font-family:"Manrope",system-ui,sans-serif;
  font-size:14.5px;line-height:1.55;font-weight:500;
  color:var(--ps-ink-soft);
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden;
}
.ps-bright__team-more{
  align-self:flex-start;margin-top:-6px;
  display:inline-flex;align-items:center;gap:6px;
  background:transparent;border:none;cursor:pointer;padding:2px 0;
  font-family:inherit;font-size:13px;font-weight:800;letter-spacing:.01em;
  color:var(--ps-orange-deep);
}
.ps-bright__team-more::after{
  content:"";width:6px;height:6px;flex:0 0 auto;
  border-right:2px solid currentColor;border-bottom:2px solid currentColor;
  transform:translateY(-1px) rotate(45deg);
}
.ps-bright__team-more:hover{color:var(--ps-orange);}
.ps-bright__team-more[hidden]{display:none;}
.ps-bright__team-action{margin-top:auto;}

/* === Модалка «полное описание» === */
.ps-bright__dmodal{
  position:fixed;inset:0;z-index:1200;
  display:none;align-items:center;justify-content:center;
  padding:24px;box-sizing:border-box;
  font-family:"Manrope",system-ui,sans-serif;color:var(--ps-ink);
}
.ps-bright__dmodal.is-open{display:flex;}
.ps-bright__dmodal-backdrop{
  position:absolute;inset:0;cursor:pointer;
  background:radial-gradient(circle at 50% 50%, rgba(76,30,5,.5), rgba(31,20,10,.68));
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
}
.ps-bright__dmodal-dialog{
  position:relative;width:100%;max-width:560px;max-height:calc(100vh - 48px);
  background:#fff;border-radius:26px;overflow:hidden;
  display:flex;flex-direction:column;
  box-shadow:0 40px 80px -20px rgba(76,30,5,.55), 0 16px 40px -12px rgba(229,74,0,.22);
  transform:translateY(16px) scale(.97);
  transition:transform .28s cubic-bezier(.2,.8,.25,1);
}
.ps-bright__dmodal.is-animating .ps-bright__dmodal-dialog{transform:none;}
.ps-bright__dmodal-head{
  display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
  padding:24px 26px 16px;border-bottom:1px dashed var(--ps-line);
  background:radial-gradient(500px 180px at 100% 0%, rgba(255,210,58,.22), transparent 60%), linear-gradient(180deg,#fff8ec,#fff);
}
.ps-bright__dmodal-eyebrow{
  font-size:10.5px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;
  color:var(--ps-orange-deep);display:block;margin-bottom:8px;
}
.ps-bright__dmodal-title{
  font-family:"Unbounded","Manrope",sans-serif;
  font-size:clamp(22px,3vw,28px);font-weight:800;letter-spacing:-.02em;line-height:1.08;margin:0;
}
.ps-bright__dmodal-close{
  flex:0 0 auto;width:40px;height:40px;border-radius:50%;
  background:#fff;border:1.5px solid var(--ps-line);cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;color:var(--ps-ink-soft);
  transition:background .15s,color .15s,border-color .15s,transform .15s;
}
.ps-bright__dmodal-close:hover{background:var(--ps-orange);border-color:var(--ps-orange);color:#fff;transform:rotate(90deg);}
.ps-bright__dmodal-close svg{width:15px;height:15px;}
.ps-bright__dmodal-body{
  padding:20px 26px 28px;overflow-y:auto;
  font-size:15.5px;line-height:1.62;color:var(--ps-ink-soft);font-weight:500;
  white-space:pre-line;
  scrollbar-width:thin;scrollbar-color:rgba(255,106,26,.55) transparent;
}
.ps-bright__dmodal-body::-webkit-scrollbar{width:7px;}
.ps-bright__dmodal-body::-webkit-scrollbar-thumb{background:rgba(255,106,26,.4);border-radius:6px;}
@media (max-width:560px){
  .ps-bright__dmodal{padding:0;}
  .ps-bright__dmodal-dialog{max-width:100%;width:100%;height:100dvh;max-height:100dvh;border-radius:0;}
}
/* === Pravki 2.2.0: подсветка невалидных обязательных полей + слоты upsell-загрузок === */
.ps-bright__input.ps-bright__field--invalid,
.ps-bright__textarea.ps-bright__field--invalid{
  border-color:#c8302b;
  background:#fff4f3;
}
.ps-bright__check input.ps-bright__field--invalid + .ps-bright__check-box{
  border-color:#c8302b;
  box-shadow:0 0 0 2px rgba(200,48,43,.15);
}
.ps-bright__upsell-uploads{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:10px;
  padding:12px 16px 16px;
  border-top:1px dashed #f1c98a;
}
.ps-bright__upsell-uploads[hidden]{display:none;}
.ps-bright__upload--slot{margin:0;}
