.bezbot{ position:fixed; right:22px; bottom:22px; z-index:2147483000; font-family:var(--font-ui, "Hanken Grotesk", sans-serif); }
.bezbot-launch{ width:62px; height:62px; border:0; border-radius:50%; cursor:pointer; background:linear-gradient(135deg,#b8843a,#a4702f); color:#fff; font-size:24px; box-shadow:0 16px 34px -10px rgba(184,132,58,.7); position:relative; transition:transform .2s ease; }
.bezbot-launch:hover{ transform:translateY(-3px) scale(1.04); }
.bezbot-launch .bezbot-ic-close{ display:none; }
.bezbot.open .bezbot-launch .bezbot-ic-open{ display:none; }
.bezbot.open .bezbot-launch .bezbot-ic-close{ display:inline; }
.bezbot-panel{ position:absolute; right:0; bottom:78px; width:374px; max-width:calc(100vw - 32px); height:560px; max-height:calc(100vh - 120px); background:#f7f4ec; border-radius:22px; box-shadow:0 30px 70px -20px rgba(6,35,26,.55); display:flex; flex-direction:column; overflow:hidden; opacity:0; transform:translateY(16px) scale(.98); pointer-events:none; transition:opacity .22s ease, transform .22s ease; border:1px solid rgba(6,35,26,.08); }
.bezbot.open .bezbot-panel{ opacity:1; transform:translateY(0) scale(1); pointer-events:auto; }
.bezbot-head{ display:flex; align-items:center; justify-content:space-between; padding:14px 16px; background:radial-gradient(120% 160% at 80% 0%, #0d4233, #06231a); color:#fff; }
.bezbot-head-l{ display:flex; align-items:center; gap:11px; }
.bezbot-avatar{ width:40px; height:40px; border-radius:12px; display:flex; align-items:center; justify-content:center; background:rgba(230,205,150,.16); color:var(--bez-gold,#b8843a); font-size:17px; }
.bezbot-name{ font-weight:700; font-size:15px; }
.bezbot-status{ font-size:11.5px; color:#a7c2b6; display:flex; align-items:center; gap:6px; margin-top:1px; }
.bezbot-dot{ width:7px; height:7px; border-radius:50%; background:#37d39b; box-shadow:0 0 0 3px rgba(55,211,155,.25); }
.bezbot-min{ background:transparent; border:0; color:#cfe0d8; cursor:pointer; font-size:16px; padding:6px; }
.bezbot-min:hover{ color:#fff; }
.bezbot-body{ flex:1; overflow-y:auto; padding:18px 16px; display:flex; flex-direction:column; gap:12px; }
.bezbot-body::-webkit-scrollbar{ width:7px; } .bezbot-body::-webkit-scrollbar-thumb{ background:#cdbf9b; border-radius:10px; }
.bezbot-msg{ max-width:84%; padding:11px 14px; border-radius:16px; font-size:14.2px; line-height:1.5; white-space:pre-wrap; word-wrap:break-word; }
.bezbot-msg.bot{ align-self:flex-start; background:#fff; color:#2a3a34; border:1px solid #ece6d8; border-bottom-left-radius:5px; }
.bezbot-msg.user{ align-self:flex-end; background:linear-gradient(135deg,#0f6e56,#0b3a2e); color:#fff; border-bottom-right-radius:5px; }
.bezbot-msg a{ color:var(--bez-gold-2,#a4702f); font-weight:600; text-decoration:underline; }
.bezbot-msg.user a{ color:#e6cd96; }
.bezbot-typing{ align-self:flex-start; background:#fff; border:1px solid #ece6d8; border-radius:16px; border-bottom-left-radius:5px; padding:13px 16px; display:flex; gap:5px; }
.bezbot-typing span{ width:7px; height:7px; border-radius:50%; background:#9fb1a8; animation:bezbob 1s infinite; }
.bezbot-typing span:nth-child(2){ animation-delay:.15s; } .bezbot-typing span:nth-child(3){ animation-delay:.3s; }
@keyframes bezbob{ 0%,60%,100%{ transform:translateY(0); opacity:.5; } 30%{ transform:translateY(-5px); opacity:1; } }
.bezbot-quick{ display:flex; flex-wrap:wrap; gap:7px; padding:0 14px 10px; }
.bezbot-chip{ background:#fff; border:1px solid #ddd4bf; color:#0f6e56; font-size:12.5px; font-weight:600; padding:7px 12px; border-radius:999px; cursor:pointer; transition:all .15s ease; }
.bezbot-chip:hover{ background:#0f6e56; color:#fff; border-color:#0f6e56; }
.bezbot-input{ display:flex; align-items:center; gap:8px; padding:12px 14px; border-top:1px solid #e8e1d2; background:#fff; }
.bezbot-input input{ flex:1; border:1.5px solid #e4dfd0; border-radius:999px; padding:11px 16px; font-size:14px; outline:none; background:#fcfbf7; }
.bezbot-input input:focus{ border-color:var(--bez-gold,#b8843a); }
.bezbot-input button{ width:42px; height:42px; flex:0 0 auto; border:0; border-radius:50%; background:linear-gradient(135deg,#b8843a,#a4702f); color:#fff; cursor:pointer; font-size:15px; transition:transform .15s ease; }
.bezbot-input button:hover{ transform:scale(1.06); }
@media (max-width:600px){ .bezbot{ right:14px; bottom:14px; } .bezbot-panel{ width:calc(100vw - 28px); bottom:80px; height:calc(100vh - 104px); height:calc(100dvh - 104px); max-height:calc(100dvh - 104px); } }
