/* Онлайн-чат на сайте: плавающая кнопка справа внизу и окно переписки. Цвета — как у сайта (графит + циан). */
.sdc{--c:#3CE0FF;--c-hi:#86EDFF;--ink:#041318;--bg:#0E1015;--s:#14171E;--s2:#1A1E27;--line:#262B36;--t:#EDEFF3;--t3:#A9B0BD;--m:#8B93A3;--ok:#4BE38F;
  position:fixed;right:20px;bottom:20px;z-index:900;font:15px/1.45 "Onest",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--t)}
.sdc *{box-sizing:border-box}
.sdc [hidden]{display:none!important}

/* кнопка */
.sdc-fab{position:relative;display:flex;align-items:center;gap:10px;height:58px;padding:0 22px 0 18px;margin-left:auto;border-radius:29px;border:0;cursor:pointer;
  background:var(--c);color:var(--ink);font-weight:700;font-size:15px;line-height:1;font-family:inherit;box-shadow:0 12px 34px rgba(60,224,255,.28),0 4px 14px rgba(0,0,0,.45);
  transition:transform .18s,box-shadow .18s,background .18s}
.sdc-fab:hover{transform:translateY(-2px);background:var(--c-hi);box-shadow:0 16px 40px rgba(60,224,255,.36),0 4px 14px rgba(0,0,0,.45)}
.sdc-fab:focus-visible{outline:2px solid #fff;outline-offset:3px}
.sdc-fab::before{content:"";position:absolute;inset:0;border-radius:inherit;animation:sdcPulse 2.6s ease-out 1.2s 3}
@keyframes sdcPulse{0%{box-shadow:0 0 0 0 rgba(60,224,255,.5)}80%,100%{box-shadow:0 0 0 18px rgba(60,224,255,0)}}
.sdc-ico-close{display:none}
.sdc.open .sdc-fab{width:58px;padding:0;justify-content:center}
.sdc.open .sdc-fab-t,.sdc.open .sdc-ico-chat{display:none}
.sdc.open .sdc-ico-close{display:block}
.sdc.open .sdc-fab::before{animation:none}
.sdc-badge{position:absolute;top:-4px;right:-4px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:#FF5D5D;color:#fff;
  font-weight:700;font-size:12px;line-height:18px;text-align:center;border:2px solid #0A0B0F}

/* подсказка над кнопкой */
.sdc-tease{position:absolute;right:0;bottom:72px;width:250px;padding:14px 34px 14px 16px;border-radius:16px 16px 4px 16px;background:var(--s2);
  border:1px solid var(--line);color:var(--t3);font-size:14px;box-shadow:0 18px 44px rgba(0,0,0,.5);animation:sdcIn .3s ease-out;cursor:pointer}
.sdc-tease b{color:var(--t)}
.sdc-tease-x{position:absolute;top:6px;right:6px;width:26px;height:26px;border:0;border-radius:8px;background:transparent;color:var(--m);font-size:18px;cursor:pointer}
.sdc-tease-x:hover{color:var(--t);background:rgba(255,255,255,.06)}

/* окно */
.sdc-panel{position:absolute;right:0;bottom:74px;width:min(380px,calc(100vw - 32px));height:min(560px,calc(100vh - 120px));height:min(560px,calc(100dvh - 120px));
  display:flex;flex-direction:column;background:var(--bg);border:1px solid var(--line);border-radius:20px;overflow:hidden;
  box-shadow:0 30px 80px rgba(0,0,0,.6),0 0 0 1px rgba(60,224,255,.05);animation:sdcIn .22s ease-out;transform-origin:bottom right}
@keyframes sdcIn{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}
.sdc-head{display:flex;align-items:center;gap:12px;padding:14px 12px 14px 16px;background:linear-gradient(180deg,#151922,#11141A);border-bottom:1px solid var(--line)}
.sdc-ava{position:relative;flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--c);color:var(--ink);font:800 14px/1 "JetBrains Mono",ui-monospace,monospace;letter-spacing:-.02em}
.sdc-ava i{position:absolute;right:-3px;bottom:-3px;width:13px;height:13px;border-radius:50%;background:var(--ok);border:3px solid #13161D}
.sdc-who{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.sdc-who b{font-size:15px;font-weight:700;color:var(--t)}
.sdc-who small{font-size:12.5px;color:var(--m)}
.sdc-x{flex:none;display:grid;place-items:center;width:38px;height:38px;border:0;border-radius:11px;background:transparent;color:var(--t3);cursor:pointer}
.sdc-x:hover{background:rgba(255,255,255,.06);color:var(--t)}

.sdc-log{flex:1;overflow-y:auto;padding:16px 14px;display:flex;flex-direction:column;gap:8px;overscroll-behavior:contain;
  background-image:radial-gradient(#181C25 1px,transparent 1px);background-size:22px 22px}
.sdc-msg{max-width:84%;display:flex;flex-direction:column}
.sdc-msg p{margin:0;padding:10px 13px;border-radius:16px;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}
.sdc-msg time{font-size:11px;color:var(--m);margin:3px 6px 0}
.sdc-msg time:empty{display:none}
.sdc-msg.out{align-self:flex-start}
.sdc-msg.out p{background:var(--s2);border:1px solid var(--line);border-bottom-left-radius:5px;color:var(--t)}
.sdc-msg.in{align-self:flex-end;align-items:flex-end}
.sdc-msg.in p{background:var(--c);color:var(--ink);border-bottom-right-radius:5px}
.sdc-msg.pending p{opacity:.65}
.sdc-msg.failed p{background:#3A1A1E;color:#FFC2C2}
.sdc-msg.failed button{margin:4px 4px 0;padding:0;border:0;background:none;color:#FF8A8A;font-weight:600;font-size:12px;font-family:inherit;cursor:pointer;text-decoration:underline;text-align:right}
.sdc-note{align-self:center;max-width:92%;margin:4px 0;padding:8px 12px;border-radius:12px;background:rgba(60,224,255,.07);border:1px solid rgba(60,224,255,.18);
  color:var(--t3);font-size:12.5px;text-align:center}

.sdc-form{display:flex;align-items:flex-end;gap:8px;padding:10px;border-top:1px solid var(--line);background:#101318}
.sdc-form textarea{flex:1;min-height:44px;max-height:132px;resize:none;padding:11px 14px;border-radius:14px;border:1px solid var(--line);background:var(--s);color:var(--t);
  font-size:15px;line-height:1.4;font-family:inherit;outline:none;overflow-y:hidden}
.sdc-form textarea::placeholder{color:var(--m)}
.sdc-form textarea:focus{border-color:var(--c)}
.sdc-send{flex:none;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:14px;background:var(--c);color:var(--ink);cursor:pointer;transition:background .15s,opacity .15s}
.sdc-send:hover{background:var(--c-hi)}
.sdc-send:disabled{opacity:.4;cursor:default}

@media (max-width:560px){
  .sdc{right:12px;bottom:12px}
  .sdc-fab{height:54px;padding:0 18px 0 15px}
  .sdc.open .sdc-fab{width:54px}
  .sdc-panel{position:fixed;left:8px;right:8px;bottom:76px;width:auto;height:calc(100vh - 92px);height:calc(100dvh - 92px);border-radius:18px}
  .sdc-tease{bottom:66px}
}
@media (prefers-reduced-motion:reduce){.sdc-fab::before,.sdc-panel,.sdc-tease{animation:none}.sdc-fab{transition:none}}

/* карточка «имя и email» после первого сообщения */
.sdc-prof{align-self:stretch;display:grid;gap:8px;padding:14px;border-radius:16px;background:var(--s2);border:1px solid rgba(60,224,255,.35);animation:sdcIn .2s ease-out}
.sdc-prof b{font-size:14.5px}
.sdc-prof p{margin:0;font-size:13px;color:var(--t3);line-height:1.45}
.sdc-prof input{width:100%;box-sizing:border-box;font:14px/1.4 inherit;font-family:inherit;color:var(--t);background:var(--bg,#0A0B0F);border:1px solid var(--line2,#2A2F3A);border-radius:10px;padding:9px 11px}
.sdc-prof input:focus{outline:none;border-color:var(--c);box-shadow:0 0 0 3px rgba(60,224,255,.18)}
.sdc-prof-err{color:#FF7A7A;font-size:12.5px}
.sdc-prof-row{display:flex;gap:8px;margin-top:2px}
.sdc-prof-ok,.sdc-prof-skip{flex:1;min-height:38px;border-radius:10px;font:600 13.5px inherit;font-family:inherit;cursor:pointer}
.sdc-prof-ok{background:var(--c);border:1px solid var(--c);color:#041318}
.sdc-prof-ok[disabled]{opacity:.6;cursor:progress}
.sdc-prof-skip{background:transparent;border:1px solid var(--line2,#2A2F3A);color:var(--t3)}
.sdc-prof-skip:hover{border-color:var(--c);color:var(--t)}
