/* Витрина и чат ИИ-ассистентов. Палитра взята со страниц микросервисов:
   тёмная сине-стальная основа, индиго и циан как акценты. */

.ga-gallery{--ga-bg:#0a0f1a;--ga-panel:#111827;--ga-line:#1f2937;--ga-text:#f1f5f9;
  --ga-muted:#94a3b8;--ga-accent:#818cf8;margin:0 auto;max-width:1200px;padding:8px 0 24px}
.ga-gallery__grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}

.ga-card{position:relative;display:flex;flex-direction:column;gap:8px;padding:22px 20px 18px;
  border-radius:18px;background:linear-gradient(160deg,#111827 0%,#0b1220 100%);
  border:1px solid #1f2937;color:#f1f5f9;text-decoration:none;overflow:hidden;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.ga-card::before{content:"";position:absolute;inset:-40% 55% 55% -40%;border-radius:50%;
  background:radial-gradient(circle,var(--ga-accent,#818cf8) 0%,transparent 70%);opacity:.18;
  pointer-events:none;transition:opacity .18s ease}
.ga-card:hover{transform:translateY(-3px);border-color:var(--ga-accent,#818cf8);
  box-shadow:0 18px 40px -22px var(--ga-accent,#818cf8)}
.ga-card:hover::before{opacity:.3}
.ga-card:focus-visible{outline:2px solid var(--ga-accent,#818cf8);outline-offset:3px}
.ga-card__icon{font-size:30px;line-height:1}
.ga-card__cat{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--ga-accent,#818cf8);
  font-weight:600}
.ga-card__name{margin:0;font-size:19px;line-height:1.25;color:#f1f5f9}
.ga-card__tag{margin:0;font-size:14px;line-height:1.5;color:#94a3b8;flex:1}
.ga-card__foot{display:flex;align-items:center;justify-content:space-between;gap:10px;
  margin-top:10px;padding-top:12px;border-top:1px solid #1f2937;font-size:12.5px;color:#94a3b8}
.ga-card__go{color:var(--ga-accent,#818cf8);font-weight:600;white-space:nowrap}

/* ------------------------------------------------------------------ чат */

.ga-chat{--ga-accent:#818cf8;display:flex;flex-direction:column;gap:14px;max-width:860px;margin:0 auto;
  padding:20px;border-radius:20px;background:#0b1220;border:1px solid #1f2937;color:#e2e8f0;
  font-size:15px;line-height:1.6}
.ga-chat__head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.ga-chat__icon{font-size:28px;line-height:1}
.ga-chat__title{display:flex;flex-direction:column;flex:1;min-width:0}
.ga-chat__title strong{color:#f1f5f9;font-size:17px}
.ga-chat__title small{color:#94a3b8;font-size:13px;line-height:1.4}
.ga-chat__tg{flex-shrink:0;padding:7px 14px;border-radius:999px;background:rgba(34,211,238,.12);
  border:1px solid rgba(34,211,238,.35);color:#22d3ee;font-size:13px;font-weight:600;text-decoration:none}
.ga-chat__tg:hover{background:rgba(34,211,238,.2);color:#67e8f9}

/* ------------------------------------------------------------------ баланс / пополнение / поддержка */
.ga-account{display:flex;flex-direction:column;gap:12px;padding:14px 16px;border-radius:16px;
  background:linear-gradient(160deg,#111827 0%,#0c1526 100%);border:1px solid #1f2937}
.ga-account__top{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.ga-balance{display:flex;flex-direction:column;gap:2px;line-height:1.1}
.ga-balance__label{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:#94a3b8}
.ga-balance__value{font-size:24px;font-weight:800;color:#f1f5f9}

.ga-support{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ga-support__main{padding:9px 16px;border-radius:999px;border:0;font:inherit;font-size:13.5px;font-weight:700;
  text-decoration:none;cursor:pointer;color:#0b1220;
  background:linear-gradient(135deg,var(--ga-accent) 0%,#22d3ee 100%);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--ga-accent) 22%,transparent),
             0 10px 26px -12px var(--ga-accent);transition:filter .15s ease,transform .15s ease}
.ga-support__main:hover{filter:brightness(1.07);transform:translateY(-1px)}
.ga-support__ask{padding:9px 15px;border-radius:999px;font:inherit;font-size:13.5px;font-weight:600;
  text-decoration:none;cursor:pointer;color:#e2e8f0;background:#0f172a;border:1px solid #334155;
  transition:border-color .15s ease,color .15s ease}
.ga-support__ask:hover{border-color:var(--ga-accent);color:#f1f5f9}

/* модалка техподдержки */
.ga-supmodal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:16px}
.ga-supmodal[hidden]{display:none}
.ga-supmodal__bg{position:absolute;inset:0;background:rgba(4,8,17,.72);backdrop-filter:blur(3px)}
.ga-supmodal__box{position:relative;width:100%;max-width:440px;border-radius:18px;padding:24px 22px;
  background:linear-gradient(160deg,#111827 0%,#0b1220 100%);border:1px solid #1f2937;
  box-shadow:0 30px 80px -30px #000;color:#e2e8f0}
.ga-supmodal__x{position:absolute;top:12px;right:12px;width:30px;height:30px;border-radius:8px;border:1px solid #1f2937;
  background:#0f172a;color:#94a3b8;font-size:14px;cursor:pointer;line-height:1}
.ga-supmodal__x:hover{color:#f1f5f9;border-color:var(--ga-accent)}
.ga-supmodal__title{margin:0 0 6px;color:#f1f5f9;font-size:19px}
.ga-supmodal__lead{margin:0 0 16px;font-size:13.5px;color:#94a3b8}
.ga-supform{display:flex;flex-direction:column;gap:10px}
.ga-supform__msg,.ga-supform__contact{width:100%;padding:11px 13px;border-radius:12px;background:#0f172a!important;
  border:1px solid #1f2937;color:#eef2fb!important;-webkit-text-fill-color:#eef2fb!important;
  caret-color:#eef2fb;font:inherit;resize:vertical}
.ga-supform__msg::placeholder,.ga-supform__contact::placeholder{color:#93a4bd!important;-webkit-text-fill-color:#93a4bd!important}
/* проверка орфографии не должна перекрашивать текст в тёмный */
.ga-supform__msg::spelling-error,.ga-supform__contact::spelling-error{color:#eef2fb;-webkit-text-fill-color:#eef2fb}
.ga-supform__msg::grammar-error,.ga-supform__contact::grammar-error{color:#eef2fb;-webkit-text-fill-color:#eef2fb}
.ga-supform__msg:focus,.ga-supform__contact:focus{outline:none;border-color:var(--ga-accent)}
.ga-supform__send{padding:12px 18px;border-radius:12px;border:none;background:var(--ga-accent);color:#0b1220;
  font:inherit;font-weight:700;cursor:pointer}
.ga-supform__send:hover{filter:brightness(1.08)}
.ga-supform__send:disabled{opacity:.6;cursor:default}
.ga-supform__status{margin:2px 0 0;font-size:12.5px;color:#94a3b8}
.ga-supform__status.is-ok{color:#34d399}
.ga-supform__status.is-err{color:#fca5a5}

.ga-topup{display:flex;flex-direction:column;gap:8px;padding-top:12px;border-top:1px solid #1f2937}
.ga-topup__label{font-size:13px;color:#94a3b8}
.ga-topup__amounts{display:flex;flex-wrap:wrap;gap:8px}
.ga-topup__amount{padding:8px 15px;border-radius:12px;background:#0f172a;border:1px solid #334155;
  color:#e2e8f0;font:inherit;font-weight:600;font-size:14px;cursor:pointer;
  transition:border-color .15s ease,background .15s ease}
.ga-topup__amount:hover{border-color:var(--ga-accent);background:#111c34}
.ga-topup__amount.is-loading{opacity:.6;cursor:default}
.ga-topup__link{align-self:flex-start;padding:10px 18px;border-radius:12px;text-decoration:none;
  font-weight:700;color:#0b1220;background:var(--ga-accent)}
.ga-topup__link:hover{filter:brightness(1.08)}
.ga-topup__msg{margin:0;font-size:12.5px;color:#94a3b8}
.ga-topup__msg.is-ok{color:#34d399}
.ga-topup__msg.is-err{color:#fca5a5}

.ga-chat__log{display:flex;flex-direction:column;gap:10px;min-height:150px;max-height:460px;
  overflow-y:auto;padding:4px 2px}
.ga-chat--compact .ga-chat__log{max-height:300px}
.ga-msg{padding:11px 14px;border-radius:14px;max-width:90%;white-space:normal;word-break:break-word}
.ga-msg--bot{align-self:flex-start;background:#111827;border:1px solid #1f2937;color:#e2e8f0}
.ga-msg--user{align-self:flex-end;background:var(--ga-accent);border:1px solid var(--ga-accent);
  color:#0b1220;font-weight:500}
.ga-msg--notice{align-self:stretch;max-width:100%;background:rgba(245,158,11,.1);
  border:1px solid rgba(245,158,11,.35);color:#fcd34d}
.ga-msg.is-typing{animation:ga-pulse 1.1s ease-in-out infinite}
@keyframes ga-pulse{0%,100%{opacity:.45}50%{opacity:1}}
@media (prefers-reduced-motion:reduce){
  .ga-msg.is-typing{animation:none}
  .ga-card{transition:none}
}

.ga-chat__actions{display:flex;flex-wrap:wrap;gap:8px}
.ga-chip{padding:7px 13px;border-radius:999px;background:#111827;border:1px solid #1f2937;
  color:#cbd5e1;font-size:13px;font-family:inherit;cursor:pointer;transition:border-color .15s ease}
.ga-chip:hover{border-color:var(--ga-accent);color:#f1f5f9}

.ga-chat__form{display:flex;gap:10px;align-items:flex-end}
.ga-chat__input{flex:1;min-height:52px;padding:12px 14px;border-radius:14px;background:#0f172a!important;
  border:1px solid #1f2937;color:#eef2fb!important;font:inherit;resize:vertical;
  -webkit-text-fill-color:#eef2fb!important;caret-color:#eef2fb}
.ga-chat__input::placeholder{color:#93a4bd!important;-webkit-text-fill-color:#93a4bd!important}
.ga-chat__input::spelling-error,.ga-chat__input::grammar-error{color:#eef2fb;-webkit-text-fill-color:#eef2fb}
.ga-chat__input:focus{outline:none;border-color:var(--ga-accent)}
/* кнопка загрузки файла */
.ga-chat__attach{flex-shrink:0;width:52px;height:52px;display:grid;place-items:center;border-radius:14px;
  background:#0f172a;border:1px solid #1f2937;cursor:pointer;font-size:20px;transition:.15s}
.ga-chat__attach:hover{border-color:var(--ga-accent)}
.ga-chat__attach.is-locked{border-color:var(--ga-accent);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--ga-accent) 26%,transparent);opacity:.9}
.ga-chat__attach.is-flash{animation:ga-flash .6s ease}
@keyframes ga-flash{0%,100%{box-shadow:0 0 0 3px color-mix(in srgb,var(--ga-accent) 26%,transparent)}
  50%{box-shadow:0 0 0 7px color-mix(in srgb,var(--ga-accent) 45%,transparent)}}
.ga-chat__filechip{display:flex;align-items:center;gap:6px;font-size:13px;color:#cbd5e1;
  background:#111827;border:1px solid #1f2937;border-radius:10px;padding:6px 10px;align-self:flex-start}
.ga-chat__filechip .ga-chip{padding:1px 8px;font-size:12px}
.ga-chat__uploadnote{margin:0;font-size:12.5px;color:#fcd34d;
  background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.3);border-radius:10px;padding:8px 12px}
.ga-chat__send{flex-shrink:0;padding:13px 22px;border-radius:14px;border:none;background:var(--ga-accent);
  color:#0b1220;font:inherit;font-weight:700;cursor:pointer}
.ga-chat__send:hover{filter:brightness(1.08)}
.ga-chat__send:disabled{opacity:.55;cursor:default}

.ga-chat__note{margin:0;font-size:13px;color:#94a3b8}
.ga-chat__disclaimer{margin:0;font-size:12.5px;color:#64748b;border-top:1px solid #1f2937;padding-top:10px}
.ga-link{background:none;border:none;padding:0;color:var(--ga-accent,#818cf8);font:inherit;
  font-weight:600;cursor:pointer;text-decoration:underline}

@media (max-width:560px){
  .ga-chat{padding:16px;border-radius:16px}
  .ga-chat__form{flex-direction:column;align-items:stretch}
  .ga-chat__send{width:100%}
  .ga-msg{max-width:100%}
  .ga-account__top{align-items:flex-start}
  .ga-support{width:100%}
  .ga-support__main,.ga-support__ask{flex:1;text-align:center}
}

/* ------------------------------------------------------------------ кабинет: база знаний */
/* Полноширинная тёмная подложка: страница кабинета — обычная (без тёмной темы лендинга),
   поэтому фон вокруг карточки задаём сами, чтобы не было светлой «рамки». */
.ga-kbwrap{background:#0a0f1a;margin:0 calc(50% - 50vw);width:100vw;padding:32px 16px;box-sizing:border-box}
.ga-kbwrap .ga-kb{margin:0 auto}
/* тёмная тема темы Impreza на страницах кабинета/привязки/перехода (как на лендингах) */
body:has(.ga-kbwrap){background:#0a0f1a!important}
.l-canvas:has(.ga-kbwrap),.l-main:has(.ga-kbwrap),#page-content:has(.ga-kbwrap){background:#0a0f1a!important}
.l-section:has(.ga-kbwrap){background:transparent!important}
body:has(.ga-kbwrap) .l-header{background:rgba(11,18,32,.96)!important;border-bottom:1px solid #1f2937!important;
  -webkit-backdrop-filter:saturate(140%) blur(12px);backdrop-filter:saturate(140%) blur(12px)}
body:has(.ga-kbwrap) .l-header .l-subheader,body:has(.ga-kbwrap) .l-header.sticky .l-subheader{background:transparent!important}
body:has(.ga-kbwrap) .l-header .w-nav-anchor{color:#cdd6e8!important;font-weight:500}
body:has(.ga-kbwrap) .l-header .w-nav-anchor:hover,
body:has(.ga-kbwrap) .l-header .current-menu-item>.w-nav-anchor{color:#fff!important}
body:has(.ga-kbwrap) .l-header .w-nav-list.level_2{background:#111827!important;border:1px solid #1f2937!important;
  border-radius:14px!important}
body:has(.ga-kbwrap) .l-header .w-text-value,body:has(.ga-kbwrap) .l-header .w-btn{color:#fff!important}
.ga-kb{--ga-accent:#22d3ee;max-width:820px;margin:0 auto;padding:22px;border-radius:20px;
  background:#0b1220;border:1px solid #1f2937;color:#e2e8f0;font-size:15px;line-height:1.6}
.ga-kb__head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.ga-kb__title{margin:0;color:#f1f5f9;font-size:20px}
.ga-kb__bal{font-size:13px;color:#94a3b8}
.ga-kb__lead{margin:0 0 14px;color:#94a3b8;font-size:14px}
.ga-kb__lock{padding:16px;border-radius:14px;background:rgba(245,158,11,.08);
  border:1px solid rgba(245,158,11,.3);color:#fcd34d}
.ga-kb__lock p{margin:0 0 12px}
.ga-kb__topup{display:inline-block;padding:10px 18px;border-radius:12px;background:var(--ga-accent);
  color:#0b1220;font-weight:700;text-decoration:none}
.ga-kb__topup:hover{filter:brightness(1.08)}
.ga-kbform{display:flex;flex-direction:column;gap:12px}
.ga-kbform__company,.ga-kbform__content{width:100%;padding:12px 14px;border-radius:12px;background:#0f172a!important;
  border:1px solid #1f2937;color:#eef2fb!important;-webkit-text-fill-color:#eef2fb!important;caret-color:#eef2fb;
  font:inherit;resize:vertical}
.ga-kbform__company::placeholder,.ga-kbform__content::placeholder{color:#93a4bd!important;-webkit-text-fill-color:#93a4bd!important}
.ga-kbform__company:focus,.ga-kbform__content:focus{outline:none;border-color:var(--ga-accent)}
.ga-kbform__row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.ga-kbform__file{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border-radius:12px;background:#111827;
  border:1px solid #334155;color:#cbd5e1;font-size:13.5px;cursor:pointer}
.ga-kbform__file:hover{border-color:var(--ga-accent);color:#f1f5f9}
.ga-kbform__count{font-size:12.5px;color:#64748b;margin-right:auto}
.ga-kbform__save{padding:11px 20px;border-radius:12px;border:none;background:var(--ga-accent);color:#0b1220;
  font:inherit;font-weight:700;cursor:pointer}
.ga-kbform__save:hover{filter:brightness(1.08)}
.ga-kbform__save:disabled{opacity:.6;cursor:default}
.ga-kbform__status{margin:0;font-size:12.5px;color:#94a3b8}
.ga-kbform__status.is-ok{color:#34d399}.ga-kbform__status.is-err{color:#fca5a5}
.ga-kb__cta{margin-top:20px;padding:18px;border-radius:16px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;
  background:linear-gradient(120deg,color-mix(in srgb,var(--ga-accent) 18%,#111827),#0b1220);
  border:1px solid color-mix(in srgb,var(--ga-accent) 40%,transparent)}
.ga-kb__ctaText{display:flex;flex-direction:column;gap:4px;flex:1;min-width:220px}
.ga-kb__ctaText strong{color:#f1f5f9;font-size:16px}
.ga-kb__ctaText span{color:#94a3b8;font-size:13.5px}
.ga-kb__ctaBtn{padding:12px 20px;border-radius:12px;border:none;background:var(--ga-accent);color:#0b1220;
  font:inherit;font-weight:700;cursor:pointer;white-space:nowrap}
.ga-kb__ctaBtn:hover{filter:brightness(1.08)}
.ga-kb__ctaBtn:disabled{opacity:.6;cursor:default}
.ga-kb__ctaStatus{width:100%;margin:0;font-size:12.5px;color:#94a3b8}
.ga-kb__ctaStatus.is-ok{color:#34d399}.ga-kb__ctaStatus.is-err{color:#fca5a5}

/* ------------------------------------------------------------------ коробка (свой бот) */
.ga-box{--ga-accent:#22d3ee;margin-top:20px;padding:18px;border-radius:16px;display:flex;flex-direction:column;gap:12px;
  border:1px solid color-mix(in srgb,var(--ga-accent) 40%,transparent);
  background:linear-gradient(120deg,color-mix(in srgb,var(--ga-accent) 12%,#111827),#0b1220)}
.ga-box__title{margin:0;color:#f1f5f9;font-size:17px}
.ga-box__lead{margin:0;color:#94a3b8;font-size:13.5px}
.ga-boxform{display:flex;flex-direction:column;gap:10px}
.ga-box__name,.ga-box__welcome,.ga-box__persona,.ga-box__token{width:100%;padding:11px 13px;border-radius:12px;
  background:#0f172a!important;border:1px solid #1f2937;color:#eef2fb!important;-webkit-text-fill-color:#eef2fb!important;
  caret-color:#eef2fb;font:inherit;resize:vertical}
.ga-box__name::placeholder,.ga-box__welcome::placeholder,.ga-box__persona::placeholder,.ga-box__token::placeholder{color:#93a4bd!important;-webkit-text-fill-color:#93a4bd!important}
.ga-box__name:focus,.ga-box__welcome:focus,.ga-box__persona:focus,.ga-box__token:focus{outline:none;border-color:var(--ga-accent)}
.ga-boxform__row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.ga-box__inline{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#cbd5e1}
.ga-box__inline input[type=color]{width:34px;height:28px;border:none;background:none;padding:0;cursor:pointer}
.ga-box__inline input[type=number]{padding:7px 8px;border-radius:8px;background:#0f172a!important;border:1px solid #1f2937;
  color:#eef2fb!important;-webkit-text-fill-color:#eef2fb!important;font:inherit}
.ga-box__save,.ga-box__connect{padding:10px 16px;border-radius:12px;border:none;background:var(--ga-accent);color:#0b1220;
  font:inherit;font-weight:700;cursor:pointer}
.ga-box__save:hover,.ga-box__connect:hover{filter:brightness(1.08)}
.ga-box__disconnect{padding:10px 16px;border-radius:12px;border:1px solid #334155;background:#0f172a;color:#cbd5e1;font:inherit;cursor:pointer}
.ga-box__disconnect:hover{border-color:#fca5a5;color:#fca5a5}
.ga-box__bot{display:flex;flex-direction:column;gap:10px;padding-top:12px;border-top:1px solid #1f2937}
.ga-box__state{font-size:13.5px;color:#cbd5e1}
.ga-box__state a{color:var(--ga-accent)}
.ga-box__hint{margin:0;font-size:12px;color:#64748b}
.ga-box__hint a,.ga-box__widget{color:var(--ga-accent)}
.ga-box__status,.ga-box__botstatus{margin:0;font-size:12.5px;color:#94a3b8}
.ga-box__status.is-ok,.ga-box__botstatus.is-ok{color:#34d399}
.ga-box__status.is-err,.ga-box__botstatus.is-err{color:#fca5a5}
.ga-box__embed{display:flex;flex-direction:column;gap:8px;padding-top:12px;border-top:1px solid #1f2937}
.ga-box__embedcode{width:100%;padding:10px 12px;border-radius:10px;background:#0f172a!important;border:1px solid #1f2937;
  color:#cbd5e1!important;-webkit-text-fill-color:#cbd5e1!important;font-family:ui-monospace,monospace;font-size:12px;resize:vertical}
.ga-box__widget{font-weight:600;text-decoration:none}

/* --- приборка кабинета: тема перебивала рамки/кнопки, форсируем свой вид --- */
.ga-kb input[type=text],.ga-kb input[type=number],.ga-kb textarea{
  border:1px solid #2b3a55!important;box-shadow:none!important;border-radius:12px!important}
.ga-kb input[type=text]:focus,.ga-kb input[type=number]:focus,.ga-kb textarea:focus{
  border-color:var(--ga-accent)!important}
/* компактный квадратный выбор цвета вместо раздутой «кнопки» */
.ga-box__inline{gap:8px}
.ga-box__inline input[type=color]{width:38px!important;height:30px!important;min-height:0!important;
  padding:2px!important;border:1px solid #334155!important;border-radius:8px!important;
  background:#0f172a!important;cursor:pointer;box-shadow:none!important}
.ga-box__inline input[type=color]::-webkit-color-swatch{border:none;border-radius:5px}
.ga-box__inline input[type=color]::-webkit-color-swatch-wrapper{padding:0}
.ga-box__inline input[type=number]{width:74px!important;text-align:center}
/* кнопки кабинета: аккуратные, без темовых теней/капса/растяжения */
.ga-kb button,.ga-kb .ga-kb__topup{width:auto!important;line-height:1.2!important;
  text-transform:none!important;letter-spacing:normal!important;box-shadow:none!important}
.ga-box__save,.ga-box__connect,.ga-kbform__save{background:var(--ga-accent)!important;color:#052a33!important;
  border:none!important}
.ga-box__disconnect{background:#0f172a!important;color:#cbd5e1!important;border:1px solid #334155!important}
