/* Своя кнопка связи (include/chat.php) — макет «Виджет связи — день и ночь».
   Стандартная кнопка Б24 скрыта: её скрипт нужен только для онлайн-чата. */
.b24-widget-button-wrapper{display:none!important}

.lb-chat,.lb-chat :where(*:not(svg,svg *),*::before,*::after){all:revert;box-sizing:border-box;margin:0;padding:0}
.lb-chat{--night:#1e1442;--lift:0px;position:fixed;right:24px;bottom:calc(24px + var(--lift));z-index:70;display:flex;flex-direction:column;align-items:flex-end;gap:16px;
	font:15px/1.45 Raleway,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);text-align:left;letter-spacing:normal;-webkit-font-smoothing:antialiased;
	pointer-events:none;transition:bottom .25s var(--ease)}
.lb-chat :where(a){color:inherit;text-decoration:none}
.lb-chat :where(img){display:block;max-width:none}
.lb-chat :where(button){font:inherit;color:inherit;background:none;border:0;cursor:pointer}
.lb-chat :where(b){font-weight:700}

/* день / ночь */
.lb-chat[data-night] .lb-chat-day,.lb-chat:not([data-night]) .lb-chat-night{display:none!important}

/* аватар с точкой «в сети» */
.lb-chat-ava{position:relative;flex:none;border-radius:50%}
.lb-chat-ava img,img.lb-chat-ava{border-radius:50%;object-fit:cover}
.lb-chat-ava i{position:absolute;right:-1px;bottom:-1px;width:14px;height:14px;border-radius:50%;background:var(--ok);border:2.5px solid var(--brand)}

/* кнопка */
.lb-chat-btn{pointer-events:auto;position:relative;display:flex!important;align-items:center;gap:12px;padding:6px 22px 6px 6px!important;border-radius:999px!important;
	background:var(--brand)!important;color:#fff!important;box-shadow:0 0 0 4px #fff,0 0 0 6px var(--accent),0 14px 34px rgba(112,72,184,.4)!important;
	transition:transform .2s var(--ease),box-shadow .2s,background .2s}
.lb-chat-btn:hover{transform:translateY(-2px)}
/* фокус: без чёрной обводки браузера; с клавиатуры (Tab) — то же фирменное кольцо, чуть толще */
.lb-chat-btn:focus{outline:none}
.lb-chat-btn:focus-visible{box-shadow:0 0 0 4px #fff,0 0 0 8px var(--accent),0 14px 34px rgba(112,72,184,.4)!important}
.lb-chat[data-night] .lb-chat-btn:focus-visible{box-shadow:0 0 0 4px #fff,0 0 0 8px var(--brand),0 14px 34px rgba(30,20,66,.45)!important}
.lb-chat-btn .lb-chat-ava img{width:52px;height:52px;border:2px solid #fff}
.lb-chat-btn img.lb-chat-ava{width:54px;height:54px}
.lb-chat-lbl{display:flex;flex-direction:column;line-height:1.25}
.lb-chat-lbl b{font-size:16px}
.lb-chat-lbl small{font-size:13px;color:#E4DAF7}
.lb-chat[data-night] .lb-chat-btn{background:var(--night)!important;box-shadow:0 0 0 4px #fff,0 0 0 6px var(--brand),0 14px 34px rgba(30,20,66,.45)!important}
.lb-chat[data-night] .lb-chat-lbl small{color:#FFC24D}
/* «волна» вокруг кнопки, как у штатной кнопки Б24: два кольца по очереди расходятся и тают; пока карточка открыта — стоп */
.lb-chat{--wave:255,168,0}
.lb-chat[data-night]{--wave:112,72,184}
.lb-chat-btn::before,.lb-chat-btn::after{content:"";position:absolute;inset:-6px;border-radius:inherit;pointer-events:none;animation:lb-chat-wave 2.4s cubic-bezier(.2,.6,.4,1) infinite}
.lb-chat-btn::after{animation-delay:1.2s}
.lb-chat.open .lb-chat-btn::before,.lb-chat.open .lb-chat-btn::after{animation:none}
@keyframes lb-chat-wave{0%{box-shadow:0 0 0 0 rgba(var(--wave),.6)}100%{box-shadow:0 0 0 20px rgba(var(--wave),0)}}

/* карточка */
.lb-chat-card{pointer-events:none;width:380px;background:#fff;border:1px solid #EEE9F8;border-radius:24px;overflow:hidden;
	box-shadow:0 2px 6px rgba(20,20,40,.06),0 24px 60px rgba(20,20,40,.18);opacity:0;visibility:hidden;transform:translateY(12px) scale(.97);transform-origin:bottom right;
	transition:opacity .22s var(--ease),transform .22s var(--ease),visibility 0s .22s}
.lb-chat.open .lb-chat-card{opacity:1;visibility:visible;transform:none;pointer-events:auto;transition:opacity .22s var(--ease),transform .22s var(--ease)}
.lb-chat[data-night] .lb-chat-card{border-color:var(--line);box-shadow:0 2px 6px rgba(20,20,40,.06),0 24px 60px rgba(20,20,40,.22)}

.lb-chat-hd{display:flex;align-items:center;gap:12px;padding:18px 20px;background:var(--brand-soft)}
.lb-chat-hd .lb-chat-ava img{width:48px;height:48px;border:2px solid #fff}
.lb-chat-hd .lb-chat-ava i{border-color:var(--brand-soft)}
.lb-chat-hd img.lb-chat-ava{width:52px;height:52px;box-shadow:0 0 0 2px rgba(255,255,255,.25)}
.lb-chat-who{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.3}
.lb-chat-who b{font-size:16px;font-weight:800}
.lb-chat-who small{font-size:13px;font-weight:600;color:#157a42}
.lb-chat-x{flex:none;display:flex!important;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px!important;background:#fff!important;color:var(--ink2)!important;transition:color .15s}
.lb-chat-x:hover{color:var(--ink)!important}
.lb-chat[data-night] .lb-chat-hd{color:#fff;background-color:var(--night);
	background-image:radial-gradient(rgba(255,255,255,.55) 1px,transparent 1.2px),radial-gradient(rgba(255,255,255,.3) 1px,transparent 1.2px);
	background-size:46px 46px,29px 29px;background-position:0 0,13px 17px}
.lb-chat[data-night] .lb-chat-who small{display:inline-flex;align-items:center;gap:6px;color:#FFC24D}
.lb-chat[data-night] .lb-chat-x{background:rgba(255,255,255,.12)!important;color:#fff!important}

.lb-chat-body{display:flex;flex-direction:column;gap:8px;padding:16px 16px 14px}
.lb-chat-bub{background:var(--bg2);border-radius:4px 16px 16px 16px;padding:12px 14px;font-size:14.5px;line-height:1.5;color:#24243A;margin-bottom:6px}
.lb-chat[data-night] .lb-chat-bub{background:var(--brand-soft)}
.lb-chat-it{display:flex!important;align-items:center;gap:12px;width:100%;padding:10px 14px!important;border:1px solid var(--line)!important;border-radius:14px!important;background:#fff!important;
	color:var(--ink)!important;text-align:left;transition:border-color .15s,background .15s}
.lb-chat-it:hover{border-color:#B9AED0!important;background:#FBFAFE!important}
.lb-chat[data-night] .lb-chat-it:hover{background:#fff!important}
.lb-chat-it:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.lb-chat-it--main{padding:12px 14px!important;border:0!important;background:var(--brand)!important;color:#fff!important}
.lb-chat-it--main:hover{background:var(--brand-ink)!important}
.lb-chat[data-night] .lb-chat-it--main{background:var(--night)!important}
.lb-chat[data-night] .lb-chat-it--main:hover{background:#2b1d5c!important}
.lb-chat-ic{flex:none;display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:11px;color:#fff}
.lb-chat-it--main .lb-chat-ic{background:rgba(255,255,255,.18)}
.lb-chat[data-night] .lb-chat-it--main .lb-chat-ic{background:var(--accent);color:var(--ink)}
.lb-chat-ic--tg{background:#229ED9}
.lb-chat-ic--wa{background:#25B05A}
.lb-chat-ic--call{background:var(--accent);color:var(--ink)}
.lb-chat-ic--clock{background:var(--brand-soft);color:var(--brand)}
.lb-chat-tx{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.3}
.lb-chat-tx b{font-size:15px}
.lb-chat-tx small{font-size:12.5px;color:#6B6B7F}
.lb-chat-it--main .lb-chat-tx small{color:#E4DAF7}
.lb-chat[data-night] .lb-chat-it--main .lb-chat-tx small{color:#C9C9D6}
.lb-chat-chev{flex:none;color:#B4B4C6}
.lb-chat-it--main .lb-chat-chev{color:#fff}

.lb-chat-ft{display:flex!important;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-top:1px solid #EEE9F8;font-size:13px;color:var(--ink2)!important}
.lb-chat-ft svg{color:var(--brand)}
.lb-chat-ft b{font-size:15px;color:var(--ink)}
a.lb-chat-ft:hover b{color:var(--brand)}

/* ПК: круглая кнопка, как на телефоне; подпись выезжает при наведении, с клавиатуры и при «знакомстве» (.peek, js/chat.js) */
@media (min-width:761px){
	.lb-chat-btn{gap:0;padding:6px!important;transition:transform .2s var(--ease),box-shadow .2s,background .2s,padding .35s var(--ease),gap .35s var(--ease)}
	.lb-chat-lbl{max-width:0;opacity:0;overflow:hidden;white-space:nowrap;transition:max-width .35s var(--ease),opacity .2s}
	.lb-chat.peek:not(.open) .lb-chat-btn,.lb-chat:not(.open) .lb-chat-btn:focus-visible{gap:12px;padding:6px 22px 6px 6px!important}
	.lb-chat.peek:not(.open) .lb-chat-lbl,.lb-chat:not(.open) .lb-chat-btn:focus-visible .lb-chat-lbl{max-width:240px;opacity:1;transition:max-width .35s var(--ease),opacity .25s .1s}
}
@media (min-width:761px) and (hover:hover){
	.lb-chat:not(.open) .lb-chat-btn:hover{gap:12px;padding:6px 22px 6px 6px!important}
	.lb-chat:not(.open) .lb-chat-btn:hover .lb-chat-lbl{max-width:240px;opacity:1;transition:max-width .35s var(--ease),opacity .25s .1s}
}
@media (max-width:760px){
	.lb-chat{right:16px;bottom:calc(88px + var(--lift))}
	.lb-chat-btn{padding:4px!important}
	.lb-chat-btn .lb-chat-ava img{width:48px;height:48px}
	.lb-chat-btn img.lb-chat-ava{width:50px;height:50px}
	.lb-chat-lbl{display:none!important}
	.lb-chat-card{width:min(380px,calc(100vw - 32px));max-height:calc(100vh - 170px - var(--lift));max-height:calc(100dvh - 170px - var(--lift));overflow-y:auto;overscroll-behavior:contain}
}
@media (prefers-reduced-motion:reduce){
	.lb-chat,.lb-chat *,.lb-chat *::before,.lb-chat *::after{animation:none!important;transition:none!important}
}
