/* BAVITA.AI chat bubble (includes/bavita_widget.php + assets/js/bavita.js). Self-contained: every rule is under .bv-. */
.bv-btn{position:fixed;right:18px;bottom:18px;z-index:95;display:flex;align-items:center;gap:8px;border:0;cursor:pointer;
  background:#0e0e0d;color:#fff;border-radius:999px;padding:12px 18px 12px 14px;font:700 14px/1 'Inter',system-ui,sans-serif;letter-spacing:.02em;
  box-shadow:0 10px 30px -6px rgba(0,0,0,.45);min-height:48px;transition:transform .15s ease;}
.bv-btn:hover{transform:translateY(-2px);}
.bv-btn:focus-visible,.bv-panel button:focus-visible,.bv-panel a:focus-visible,.bv-panel textarea:focus-visible{outline:3px solid #e7c66b;outline-offset:2px;}
.bv-btn .bv-dot{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#e7c66b,#c99a2e);display:grid;place-items:center;color:#0e0e0d;font-size:13px;font-weight:800;}
.bv-btn b{color:#e7c66b;font-weight:800;}
.bv-btn[aria-expanded="true"]{display:none;}
.bv-lift .bv-btn{bottom:18px;}
@media(max-width:860px){.bv-lift .bv-btn{bottom:84px;}}

.bv-panel{position:fixed;right:18px;bottom:18px;z-index:1000;width:380px;max-width:calc(100vw - 24px);height:min(600px,calc(100vh - 36px));
  display:flex;flex-direction:column;background:#fff;color:#111;border-radius:18px;overflow:hidden;
  box-shadow:0 24px 60px -12px rgba(0,0,0,.45);font:400 14.5px/1.5 'Inter',system-ui,sans-serif;}
.bv-panel[hidden]{display:none!important;}
@media(max-width:520px){.bv-panel{right:0;bottom:0;left:0;width:auto;max-width:none;height:100%;height:100dvh;border-radius:0;}}
.bv-head{display:flex;align-items:center;gap:10px;background:#0e0e0d;color:#fff;padding:14px 14px 14px 16px;}
.bv-head .bv-dot{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#e7c66b,#c99a2e);display:grid;place-items:center;color:#0e0e0d;font-weight:800;flex:none;}
.bv-head .bv-t{flex:1;min-width:0;}
.bv-head .bv-t b{display:block;font-size:15.5px;letter-spacing:.03em;}
.bv-head .bv-t b span{color:#e7c66b;}
.bv-head .bv-t small{display:block;color:#bbb;font-size:12px;}
.bv-x{flex:none;width:40px;height:40px;border:0;border-radius:10px;background:rgba(255,255,255,.08);color:#fff;font-size:22px;line-height:1;cursor:pointer;}
.bv-preview{background:#fff4d6;color:#6b4b00;font-size:12.5px;padding:8px 14px;border-bottom:1px solid #f0dfa8;}
.bv-log{flex:1;overflow-y:auto;padding:14px;background:#f5f3ee;display:flex;flex-direction:column;gap:10px;}
.bv-msg{max-width:88%;padding:10px 12px;border-radius:14px;white-space:pre-line;word-wrap:break-word;}
.bv-msg.bot{background:#fff;border:1px solid #e7e4dc;border-top-left-radius:4px;align-self:flex-start;}
.bv-msg.me{background:#0e0e0d;color:#fff;border-top-right-radius:4px;align-self:flex-end;}
.bv-msg a{color:#b45309;font-weight:600;}
.bv-msg.typing{color:#888;font-style:italic;}
.bv-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;}
.bv-links a{display:inline-flex;align-items:center;min-height:36px;padding:6px 12px;border-radius:999px;border:1px solid #e7e4dc;background:#faf9f6;color:#111;text-decoration:none;font-size:13px;font-weight:600;}
.bv-links a.wa{background:#25d366;border-color:#25d366;color:#fff;}
.bv-ev{border:1px solid #e7e4dc;border-radius:12px;padding:10px 12px;margin-top:8px;background:#fff;}
.bv-ev b{display:block;font-size:14.5px;}
.bv-ev .m{color:#555;font-size:13px;}
.bv-ev .tk{font-size:12.5px;color:#333;margin-top:4px;}
.bv-ev a{display:inline-block;margin-top:6px;}
.bv-opts{display:flex;flex-wrap:wrap;gap:6px;padding:10px 12px 0;background:#fff;border-top:1px solid #efece5;}
.bv-opts button{min-height:36px;padding:6px 12px;border-radius:999px;border:1px solid #c99a2e;background:#fff;color:#111;font:600 13px/1.2 'Inter',system-ui,sans-serif;cursor:pointer;}
.bv-opts button:hover{background:#fbf3df;}
.bv-opts button.wa{border-color:#25d366;}
.bv-form{display:flex;gap:8px;padding:10px 12px;background:#fff;align-items:flex-end;}
.bv-form textarea{flex:1;resize:none;min-height:44px;max-height:110px;border:1px solid #e7e4dc;border-radius:12px;padding:11px 12px;font:400 15px/1.4 'Inter',system-ui,sans-serif;color:#111;background:#fff;}
.bv-form button{flex:none;min-height:44px;min-width:64px;border:0;border-radius:12px;background:#0e0e0d;color:#fff;font-weight:700;cursor:pointer;}
.bv-form button:disabled{opacity:.5;cursor:default;}
.bv-note{padding:0 12px 10px;background:#fff;color:#888;font-size:11.5px;}
