/* Чат «Задайте вопрос» (27.10.2026): кубик-кнопка справа внизу и окно чата. Логика — ask.js, база ответов — ask-base.js */
.ask-fab{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:60;display:flex;align-items:center;gap:10px;
  padding:7px 16px 7px 8px;border:0;border-radius:999px;background:rgba(255,255,255,.94);color:var(--ink);cursor:pointer;
  font:600 15px/1 "Golos Text",system-ui,sans-serif;letter-spacing:-.01em;box-shadow:0 10px 28px -12px rgba(90,23,50,.45),0 0 0 1px rgba(184,64,143,.14);
  opacity:0;transform:translateY(18px) scale(.94);pointer-events:none;transition:opacity .35s ease,transform .45s cubic-bezier(.3,1.4,.5,1),box-shadow .2s}
.ask-fab.in{opacity:1;transform:none;pointer-events:auto}
.ask-fab.in.away,.ask-open .ask-fab{opacity:0;transform:translateY(18px) scale(.94);pointer-events:none}
.ask-fab:hover{box-shadow:0 14px 32px -12px rgba(90,23,50,.55),0 0 0 1px rgba(184,64,143,.3)}
.ask-fab:hover .ask-cube-in{animation-duration:4s}

/* мини-кубик: 6 граней по 2×2 плитки, цвета логотипа; медленно вращается */
.ask-cube{--c:30px;width:calc(var(--c) * 1.45);height:calc(var(--c) * 1.45);display:grid;place-items:center;perspective:300px;flex:none}
.ask-cube.sm{--c:24px}
.ask-cube-in{position:relative;width:var(--c);height:var(--c);transform-style:preserve-3d;animation:askspin 12s linear infinite}
.ask-cube-in>i{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;gap:1.5px;padding:1px;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.ask-cube-in>i b{border-radius:22%;background:#E4D3DB}
.ask-cube-in>i b:nth-child(1),.ask-cube-in>i:nth-child(odd) b:nth-child(4){background:linear-gradient(150deg,#7B52D6,#B8408F 52%,#FF5D86)}
.ask-cube-in>i:nth-child(3n) b:nth-child(2){background:#B49CE8}
.ask-cube-in>i:nth-child(1){transform:translateZ(calc(var(--c) / 2))}
.ask-cube-in>i:nth-child(2){transform:rotateY(180deg) translateZ(calc(var(--c) / 2))}
.ask-cube-in>i:nth-child(3){transform:rotateY(90deg) translateZ(calc(var(--c) / 2))}
.ask-cube-in>i:nth-child(4){transform:rotateY(-90deg) translateZ(calc(var(--c) / 2))}
.ask-cube-in>i:nth-child(5){transform:rotateX(90deg) translateZ(calc(var(--c) / 2))}
.ask-cube-in>i:nth-child(6){transform:rotateX(-90deg) translateZ(calc(var(--c) / 2))}
@keyframes askspin{from{transform:rotateX(-24deg) rotateY(0)}to{transform:rotateX(-24deg) rotateY(360deg)}}
@media (prefers-reduced-motion:reduce){.ask-cube-in{animation:none;transform:rotateX(-24deg) rotateY(-38deg)}}

/* окно чата */
.ask-panel{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:61;width:min(400px,calc(100vw - 32px));
  height:min(640px,calc(100vh - 110px));display:flex;flex-direction:column;background:var(--bg);border-radius:22px;overflow:hidden;
  box-shadow:0 30px 70px -24px rgba(42,23,32,.55),0 0 0 1px rgba(184,64,143,.14);
  opacity:0;transform:translateY(14px) scale(.98);transform-origin:100% 100%;transition:opacity .22s ease,transform .3s cubic-bezier(.2,.8,.2,1)}
.ask-panel.on{opacity:1;transform:none}
.ask-panel[hidden]{display:none}
.ask-head{display:flex;align-items:center;gap:10px;padding:12px 10px 12px 14px;background:var(--paper);border-bottom:1px solid rgba(42,23,32,.07)}
.ask-head div{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.ask-head b{font-size:17px;font-weight:700;letter-spacing:-.02em;line-height:1.2}
.ask-head small{font-size:13px;color:var(--muted);line-height:1.2}
.ask-x{width:40px;height:40px;border:0;border-radius:12px;background:none;cursor:pointer;display:grid;place-items:center;color:var(--muted)}
.ask-x:hover{background:var(--surface);color:var(--ink)}
.ask-x svg,.ask-go svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

.ask-log{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:16px 14px 8px;display:flex;flex-direction:column;gap:10px;-webkit-overflow-scrolling:touch}
.ask-m{max-width:88%;font-size:15px;line-height:1.45;border-radius:18px;padding:10px 14px;overflow-wrap:anywhere}
.ask-m p{max-width:none}.ask-m p+p,.ask-m p+ul,.ask-m ul+p{margin-top:6px}
.ask-m ul{margin:4px 0 0;padding-left:18px}.ask-m li+li{margin-top:2px}
.ask-m a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:2px}
.ask-m .pend{border-bottom:1px dashed currentColor}
.ask-m.bot{align-self:flex-start;background:var(--paper);border-bottom-left-radius:6px;box-shadow:0 1px 0 rgba(42,23,32,.05)}
.ask-m.me{align-self:flex-end;background:linear-gradient(150deg,#8A55D8,#B8408F 70%);color:#fff;border-bottom-right-radius:6px}
.ask-small{font-size:13px;color:var(--muted)}
.ask-pv{font-size:12.5px;color:#6A44C4;background:rgba(123,82,214,.1);border-radius:10px;padding:6px 9px;margin-top:8px!important}
.ask-sum{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;margin:6px 0 8px;font-size:14px}
.ask-sum dt{color:var(--muted)}.ask-sum dd{margin:0;font-weight:600}
.ask-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.ask-chip{border:1px solid rgba(184,64,143,.28);background:#fff;color:#8E2F6E;border-radius:999px;padding:7px 12px;font:500 14px/1.25 "Golos Text",system-ui,sans-serif;cursor:pointer;text-align:left}
.ask-chip:hover{background:rgba(184,64,143,.08)}
.ask-chip.main{background:linear-gradient(150deg,#7B52D6,#B8408F 52%,#FF5D86);border-color:transparent;color:#fff;font-weight:600}
.ask-dots{display:flex;gap:4px;padding:14px}
.ask-dots i{width:7px;height:7px;border-radius:50%;background:#C9AFBD;animation:askdot 1s ease-in-out infinite}
.ask-dots i:nth-child(2){animation-delay:.15s}.ask-dots i:nth-child(3){animation-delay:.3s}
@keyframes askdot{0%,100%{opacity:.35;transform:none}50%{opacity:1;transform:translateY(-3px)}}

.ask-form{display:flex;gap:8px;padding:10px 10px 4px;background:var(--bg)}
.ask-in{flex:1;min-width:0;height:46px;border:1px solid rgba(42,23,32,.14);border-radius:14px;padding:0 14px;background:#fff;color:var(--ink);font:400 16px "Golos Text",system-ui,sans-serif}
.ask-in:focus{outline:none;border-color:#B8408F;box-shadow:0 0 0 3px rgba(184,64,143,.15)}
.ask-go{width:46px;height:46px;flex:none;border:0;border-radius:14px;background:linear-gradient(150deg,#7B52D6,#B8408F 52%,#FF5D86);color:#fff;cursor:pointer;display:grid;place-items:center}
.ask-mic{width:46px;height:46px;flex:none;border:1px solid rgba(184,64,143,.28);border-radius:14px;background:#fff;color:#8E2F6E;cursor:pointer;display:grid;place-items:center}
.ask-mic:hover{background:rgba(184,64,143,.08)}
.ask-mic svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.ask-mic[hidden],.ask-go[hidden],.ask-in[hidden],.ask-rec[hidden]{display:none}
.ask-rec{flex:1;display:flex;align-items:center;gap:10px;height:46px;padding:0 6px 0 14px;border-radius:14px;background:#fff;border:1px solid rgba(232,32,46,.3)}
.ask-rec b{flex:1;font-size:15px;font-weight:600;font-variant-numeric:tabular-nums}
.ask-rec-dot{width:10px;height:10px;border-radius:50%;background:#E8202E;animation:askrec 1s ease-in-out infinite}
@keyframes askrec{50%{opacity:.3}}
.ask-rec button{height:36px;border:0;border-radius:10px;padding:0 12px;font:600 14px "Golos Text",system-ui,sans-serif;cursor:pointer;background:var(--surface);color:var(--ink)}
.ask-rec .ask-rec-go{background:linear-gradient(150deg,#7B52D6,#B8408F 52%,#FF5D86);color:#fff}
@media (prefers-reduced-motion:reduce){.ask-rec-dot{animation:none}}
.ask-warn{font-size:12px;color:var(--muted);text-align:center;padding:2px 12px 10px;max-width:none}

/* телефон: кнопка компактнее, чат — на весь экран (высота — по видимой части, когда открыта клавиатура) */
@media (max-width:640px){
  .ask-fab{right:12px;bottom:max(14px,env(safe-area-inset-bottom));padding:5px 13px 5px 6px;gap:7px;font-size:14px}
  .ask-fab .ask-cube{--c:26px}
  .ask-panel{inset:0 0 auto 0;right:0;bottom:auto;width:100%;height:var(--ask-h,100dvh);border-radius:0;transform-origin:50% 100%}
  .ask-head{padding-top:max(12px,env(safe-area-inset-top))}
  .ask-form{padding-bottom:4px}.ask-warn{padding-bottom:max(10px,env(safe-area-inset-bottom))}
  html.ask-open,html.ask-open body{overflow:hidden}
}
/* подпись кнопки в две строки: вопрос и подсказка (27.10.2026) */
.ask-fab-t{display:flex;flex-direction:column;line-height:1.15;text-align:left}
.ask-fab-t small{font-size:12px;font-weight:500;opacity:.7;margin-top:2px}
@media (max-width:640px){.ask-fab-t small{display:none}}

/* кубик летает по разным осям (28.10.2026) */
@keyframes askspin{0%{transform:rotateX(-24deg) rotateY(0) rotateZ(0)}25%{transform:rotateX(70deg) rotateY(110deg) rotateZ(20deg)}50%{transform:rotateX(160deg) rotateY(200deg) rotateZ(-15deg)}75%{transform:rotateX(250deg) rotateY(290deg) rotateZ(25deg)}100%{transform:rotateX(336deg) rotateY(360deg) rotateZ(0)}}
@keyframes askfly{0%,100%{translate:0 0}30%{translate:0 -3px}60%{translate:0 2px}}
.ask-cube{animation:askfly 5s ease-in-out infinite}
.ask-cube-in{animation-duration:16s}
@media (prefers-reduced-motion:reduce){.ask-cube{animation:none}}
/* телефон: через 15 секунд — только кубик, полупрозрачный, медленно к правому краю (28.10.2026) */
@media (max-width:640px){
  .ask-fab-t{transition:opacity .6s ease,max-width 1.2s ease;max-width:260px;overflow:hidden;white-space:nowrap}
  .ask-fab.mini{padding:5px;gap:0;background:rgba(255,255,255,.55);box-shadow:0 6px 18px -10px rgba(90,23,50,.4);transition:opacity 1.6s ease,transform 2.4s cubic-bezier(.2,.7,.2,1),padding 1.2s ease,background 1.2s}
  .ask-fab.mini.in{opacity:.7;transform:translateX(6px)}
  .ask-fab.mini .ask-fab-t{opacity:0;max-width:0}
  .ask-fab.mini.in.away{opacity:0}
}
