/* ===========================================================
   Buyreal AI — Premium Chat Widget CSS v1.0
   Design system: Glassmorphism + Fluid animations + Mobile-first
   =========================================================== */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap');

/* ── Reset ── */
#brai-root,#brai-root *{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;}

/* ── Design tokens ── */
#brai-root {
  --p:         #6C5CE7;
  --p-dk:      #5849c4;
  --p-lt:      rgba(108,92,231,.12);
  --p-glow:    rgba(108,92,231,.35);
  --bg:        #ffffff;
  --bg2:       #f8f9fc;
  --bg3:       #f0f2f8;
  --border:    rgba(0,0,0,.08);
  --text:      #0d0d1a;
  --text2:     #4a4a6a;
  --text3:     #9898b8;
  --ai-bg:     #f0f2f8;
  --ai-txt:    #0d0d1a;
  --usr-bg:    var(--p);
  --usr-txt:   #fff;
  --agt-bg:    #eff6ff;
  --agt-txt:   #1d4ed8;
  --hdr-h:     140px;
  --font:      'Plus Jakarta Sans',system-ui,sans-serif;
  --r-win:     22px;
  --r-msg:     18px;
  --ease:      cubic-bezier(.4,0,.2,1);
  --spring:    cubic-bezier(.34,1.52,.64,1);
  --spring2:   cubic-bezier(.34,1.22,.64,1);
  --fab-sz:    62px;
  --chat-w:    385px;
  --chat-h:    590px;
  --pos-b:     24px;
  --pos-s:     24px;
  --shadow:    0 24px 64px rgba(0,0,0,.16),0 8px 24px rgba(0,0,0,.1),0 2px 6px rgba(0,0,0,.05);
  --shadow-fab:0 8px 28px var(--p-glow),0 3px 10px rgba(0,0,0,.15);

  position:fixed;
  right:var(--pos-s);
  bottom:var(--pos-b);
  z-index:2147483647;
  font-family:var(--font);
  font-size:14px;
  line-height:1;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  pointer-events:none;
  transform:translateZ(0);
}
#brai-root * { pointer-events:auto; }
#brai-root.br-left  { right:auto; left:var(--pos-s); align-items:flex-start; }
#brai-root.br-hidden{ display:none!important; }
#brai-root.br-dark  {
  --bg:#0f0f1a; --bg2:#161625; --bg3:#1e1e30;
  --border:rgba(255,255,255,.08);
  --text:#f0f0ff; --text2:#9898b8; --text3:#6060a0;
  --ai-bg:#1e1e30; --ai-txt:#f0f0ff;
  --agt-bg:#1a2a4a; --agt-txt:#93c5fd;
  --shadow:0 24px 64px rgba(0,0,0,.55),0 8px 24px rgba(0,0,0,.4);
}

/* ── Backdrop ── */
#brai-bd {
  position:fixed;inset:0;
  background:rgba(10,10,26,.5);
  backdrop-filter:blur(10px) saturate(1.3);
  -webkit-backdrop-filter:blur(10px) saturate(1.3);
  z-index:2147483640;
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .28s var(--ease),visibility 0s .28s;
}
#brai-bd.br-show{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .28s var(--ease),visibility 0s 0s;}

/* ================================================================
   FAB — Iron-clad sizing
   ================================================================ */
#brai-fab-wrap{
  position:relative;
  width:var(--fab-sz)!important;
  height:var(--fab-sz)!important;
  flex-shrink:0;
}

#brai-fab {
  width:var(--fab-sz)!important;
  height:var(--fab-sz)!important;
  min-width:var(--fab-sz)!important;
  max-width:var(--fab-sz)!important;
  min-height:var(--fab-sz)!important;
  max-height:var(--fab-sz)!important;
  border-radius:50%!important;
  background:var(--p);
  border:none;cursor:pointer;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-shadow:var(--shadow-fab);
  position:relative;z-index:10;
  outline:none;overflow:hidden;
  touch-action:manipulation;
  user-select:none;
  flex-shrink:0!important;
  -webkit-appearance:none;
  transition:box-shadow .22s var(--ease),background .16s var(--ease);
  animation:br-fab-in .6s var(--spring) both;
}
@keyframes br-fab-in{from{transform:scale(0) rotate(-20deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}
#brai-fab:hover{box-shadow:0 10px 36px var(--p-glow),0 4px 14px rgba(0,0,0,.2);}
#brai-fab:active{box-shadow:0 4px 14px var(--p-glow);}
#brai-fab.br-open{background:#1a1a2e;}
#brai-fab.br-open:hover{background:#2d2d45;}

/* Spinning ring on FAB */
#brai-fab::before{
  content:'';
  position:absolute;inset:-5px;border-radius:50%;
  background:conic-gradient(from 0deg, var(--p) 0%, transparent 55%, var(--p-glow) 100%);
  opacity:0;pointer-events:none;z-index:-1;
  transition:opacity .3s;
}
#brai-fab:not(.br-open)::before{animation:br-ring-spin 3s linear infinite;opacity:.6;}
@keyframes br-ring-spin{to{transform:rotate(360deg);}}
#brai-fab::after{
  content:'';position:absolute;inset:-2px;border-radius:50%;
  background:var(--bg);z-index:-1;pointer-events:none;
}

/* Icon crossfade */
.br-fi{
  position:absolute;inset:0;
  display:flex;align-items:center;justify-content:center;
  transition:opacity .2s var(--ease),transform .3s var(--spring);
}
.br-fi svg{display:block;pointer-events:none;}
#br-ic-chat { opacity:1;transform:scale(1) rotate(0);}
#br-ic-close{ opacity:0;transform:scale(.15) rotate(-130deg);}
#brai-fab.br-open #br-ic-chat { opacity:0;transform:scale(.15) rotate(130deg);}
#brai-fab.br-open #br-ic-close{ opacity:1;transform:scale(1) rotate(0);}

/* Notification badge */
#br-notif{
  position:absolute;top:-3px;right:-3px;
  min-width:20px;height:20px;border-radius:10px;
  background:#ef4444;color:#fff;
  font-size:11px;font-weight:700;border:2.5px solid var(--bg);
  display:flex;align-items:center;justify-content:center;padding:0 5px;
  pointer-events:none;font-family:var(--font);
  animation:br-badge .4s var(--spring) both;
}
@keyframes br-badge{from{transform:scale(0)}to{transform:scale(1)}}

/* ── Action menu buttons ── */
.br-abtn{
  position:absolute;bottom:0;left:50%;
  transform:translateX(-50%) translateY(0) scale(0);
  width:48px;height:48px;border-radius:50%;
  border:none;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 20px rgba(0,0,0,.22);
  opacity:0;pointer-events:none;z-index:9;
  transition:transform .38s var(--spring),opacity .22s var(--ease),box-shadow .16s var(--ease);
  touch-action:manipulation;user-select:none;outline:none;
  -webkit-appearance:none;
}
.br-abtn[data-slot="1"]{--off:calc(var(--fab-sz) + 14px);}
.br-abtn[data-slot="2"]{--off:calc(var(--fab-sz) + 74px);}
.br-abtn[data-slot="3"]{--off:calc(var(--fab-sz) + 134px);}
#brai-fab-wrap.br-menu .br-abtn{
  opacity:1;pointer-events:auto;
  transform:translateX(-50%) translateY(calc(-1 * var(--off))) scale(1);
}
#brai-fab-wrap.br-menu .br-abtn[data-slot="1"]{transition-delay:.05s;}
#brai-fab-wrap.br-menu .br-abtn[data-slot="2"]{transition-delay:.09s;}
#brai-fab-wrap.br-menu .br-abtn[data-slot="3"]{transition-delay:.13s;}
#brai-fab-wrap:not(.br-menu) .br-abtn{transition-delay:0s!important;pointer-events:none!important;}
.br-abtn:hover{box-shadow:0 8px 26px rgba(0,0,0,.32);}
.br-abtn:active{filter:brightness(.9);}
.br-abtn-wa  {background:#25d366;}
.br-abtn-call{background:#0ea5e9;}
.br-abtn-chat{background:var(--p);}
#brai-root.br-left .br-abtn{left:50%;}
.br-atip{
  position:absolute;right:calc(100% + 11px);top:50%;transform:translateY(-50%);
  background:rgba(10,10,26,.9);color:#fff;font-size:11.5px;font-weight:600;
  padding:5px 11px;border-radius:8px;white-space:nowrap;
  pointer-events:none;opacity:0;transition:opacity .18s .1s;
  backdrop-filter:blur(6px);font-family:var(--font);
}
#brai-root.br-left .br-atip{right:auto;left:calc(100% + 11px);}
.br-abtn:hover .br-atip,.br-abtn:focus .br-atip{opacity:1;}

/* ================================================================
   CHAT WINDOW
   ================================================================ */
#brai-win{
  position:absolute;
  bottom:calc(var(--fab-sz) + 16px);right:0;
  width:var(--chat-w);height:var(--chat-h);
  max-width:min(var(--chat-w),calc(100vw - 20px));
  max-height:calc(100vh - var(--fab-sz) - 56px);
  min-width:300px;min-height:400px;
  background:var(--bg);
  border-radius:var(--r-win);
  box-shadow:var(--shadow);
  display:flex;flex-direction:column;
  overflow:hidden;
  border:1px solid var(--border);
  opacity:0;visibility:hidden;pointer-events:none;
  transform:scale(.88) translateY(22px);
  transform-origin:bottom right;
  transition:opacity .24s var(--ease),visibility 0s .24s,transform .34s var(--spring2);
  will-change:transform,opacity;
}
#brai-root.br-left #brai-win{right:auto;left:0;transform-origin:bottom left;}
#brai-win.br-open{
  opacity:1;visibility:visible;pointer-events:auto;
  transform:scale(1) translateY(0);
  transition:opacity .3s var(--ease),visibility 0s 0s,transform .38s var(--spring);
}

/* ── Header: gradient + avatar + status ── */
.br-hdr{
  flex-shrink:0;
  background:linear-gradient(145deg,var(--p) 0%,var(--p-dk) 60%,#3d1e8e 100%);
  position:relative;overflow:hidden;cursor:default;user-select:none;
}
.br-hdr::before{
  content:'';position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(ellipse 90% 110% at 80% -10%,rgba(255,255,255,.18) 0%,transparent 60%),
             radial-gradient(ellipse 50% 60% at 10% 110%,rgba(0,0,0,.15) 0%,transparent 55%);
}
/* Floating orbs */
.br-hdr::after{
  content:'';position:absolute;width:120px;height:120px;border-radius:50%;
  background:rgba(255,255,255,.07);
  top:-30px;right:-20px;pointer-events:none;
}
.br-hdr-topbar{
  display:flex;align-items:center;justify-content:flex-end;
  padding:12px 14px 0;position:relative;z-index:1;
}
.br-close-btn{
  width:28px;height:28px;border-radius:50%;
  background:rgba(255,255,255,.16);border:none;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:background .16s var(--ease),transform .12s;
  touch-action:manipulation;outline:none;flex-shrink:0;
}
.br-close-btn:hover{background:rgba(255,255,255,.28);}
.br-close-btn:active{transform:scale(.88);}
.br-close-btn svg{display:block;stroke:rgba(255,255,255,.92);}

.br-hdr-main{
  display:flex;align-items:center;gap:13px;
  padding:10px 18px 16px;position:relative;z-index:1;
}
.br-ava-shell{position:relative;flex-shrink:0;}
.br-ava-img{
  width:52px;height:52px;border-radius:50%;
  background:rgba(255,255,255,.18);
  border:2.5px solid rgba(255,255,255,.4);
  display:flex;align-items:center;justify-content:center;
  font-size:24px;overflow:hidden;
}
.br-ava-img img{width:100%;height:100%;object-fit:cover;}
.br-status-ring{
  position:absolute;bottom:1px;right:1px;
  width:14px;height:14px;border-radius:50%;
  border:2.5px solid var(--p);background:#6b7280;
  transition:background .2s var(--ease);
}
.br-status-ring.br-on {background:#22c55e;box-shadow:0 0 8px rgba(34,197,94,.7);}
.br-status-ring.br-off{background:#f59e0b;}

.br-hdr-text{}
.br-hdr-name{color:#fff;font-weight:800;font-size:18px;letter-spacing:-.02em;line-height:1.15;margin-bottom:4px;}
.br-hdr-sub {
  color:rgba(255,255,255,.72);font-size:12px;font-weight:400;
  display:flex;align-items:center;gap:6px;
}
.br-sub-dot{
  width:7px;height:7px;border-radius:50%;
  background:rgba(255,255,255,.55);flex-shrink:0;
  animation:br-pulse 2.2s ease infinite;
}
.br-sub-dot.br-live{background:#86efac;}
@keyframes br-pulse{0%,100%{opacity:1}50%{opacity:.3}}

/* Header chip bar */
.br-chips{
  display:flex;gap:7px;padding:0 18px 14px;
  overflow-x:auto;scrollbar-width:none;
  position:relative;z-index:1;
}
.br-chips::-webkit-scrollbar{display:none;}
.br-chip{
  flex:0 0 auto;display:flex;align-items:center;gap:5px;
  padding:6px 13px;border-radius:99px;
  background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.22);
  color:rgba(255,255,255,.95);font-size:12px;font-weight:600;
  cursor:pointer;white-space:nowrap;font-family:var(--font);
  transition:background .16s var(--ease),transform .12s;
  touch-action:manipulation;outline:none;
}
.br-chip:hover{background:rgba(255,255,255,.26);transform:translateY(-1px);}
.br-chip:active{transform:scale(.96);}
.br-chip svg{display:block;flex-shrink:0;}

/* ── Messages body ── */
.br-msgs{
  flex:1;overflow-y:auto;overflow-x:hidden;
  padding:14px 14px 10px;
  display:flex;flex-direction:column;gap:6px;
  scroll-behavior:smooth;overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  background:var(--bg2);
}
.br-msgs::-webkit-scrollbar{width:3px;}
.br-msgs::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px;}

/* Day separator */
.br-day{
  display:flex;align-items:center;gap:10px;
  font-size:11px;color:var(--text3);font-weight:500;
  padding:4px 0;letter-spacing:.03em;
}
.br-day::before,.br-day::after{
  content:'';flex:1;height:1px;
  background:linear-gradient(90deg,transparent,var(--border),transparent);
}

/* Message rows */
.br-row{
  display:flex;align-items:flex-end;gap:7px;
  animation:br-msg-in .26s var(--spring2) both;
}
@keyframes br-msg-in{from{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:none}}
.br-row.br-u{flex-direction:row-reverse;}

.br-mava{
  width:28px;height:28px;border-radius:50%;flex-shrink:0;
  background:var(--bg3);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  font-size:13px;overflow:hidden;margin-bottom:2px;
}
.br-mava img{width:100%;height:100%;object-fit:cover;}

.br-bcol{display:flex;flex-direction:column;max-width:76%;gap:2px;}
.br-row.br-u .br-bcol{align-items:flex-end;}

/* Bubble */
.br-bbl{
  padding:11px 15px;border-radius:var(--r-msg);
  font-size:14px;line-height:1.6;
  word-break:break-word;overflow-wrap:anywhere;
}
.br-bbl.br-ai {
  background:var(--ai-bg);color:var(--ai-txt);
  border-bottom-left-radius:5px;
  border:1px solid var(--border);
}
.br-bbl.br-u  {
  background:var(--usr-bg);color:var(--usr-txt);
  border-bottom-right-radius:5px;
}
.br-bbl.br-agt{
  background:var(--agt-bg);color:var(--agt-txt);
  border-bottom-left-radius:5px;
  border:1px solid rgba(59,130,246,.14);
}
.br-bbl.br-sys{
  background:transparent;color:var(--text3);
  font-size:12px;font-style:italic;text-align:center;border-radius:0;padding:2px 0;
}
.br-bbl strong{font-weight:700;}
.br-bbl em{font-style:italic;}
.br-bbl code{background:rgba(0,0,0,.07);padding:1px 6px;border-radius:4px;font-size:12.5px;font-family:monospace;}
.br-dark .br-bbl code{background:rgba(255,255,255,.1);}
.br-bbl a{color:inherit;text-decoration:underline;}

/* Streaming cursor */
.br-cursor{
  display:inline-block;width:2px;height:1.1em;
  background:currentColor;margin-left:2px;
  vertical-align:text-bottom;border-radius:1px;
  animation:br-blink .65s step-end infinite;
}
@keyframes br-blink{0%,100%{opacity:1}50%{opacity:0}}

/* Message meta */
.br-meta{
  font-size:10.5px;color:var(--text3);font-weight:400;
  display:flex;align-items:center;gap:4px;padding:0 2px;
}
.br-row.br-u .br-meta{justify-content:flex-end;}

/* ── Product card ── */
.br-product-row{
  display:flex;gap:8px;padding:4px 0 2px;
  overflow-x:auto;scrollbar-width:none;
}
.br-product-row::-webkit-scrollbar{display:none;}
.br-pcard{
  flex:0 0 auto;width:130px;
  background:var(--bg);border:1px solid var(--border);
  border-radius:14px;overflow:hidden;cursor:pointer;
  transition:transform .2s var(--ease),box-shadow .2s var(--ease);
  font-family:var(--font);
}
.br-pcard:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,.12);}
.br-pcard-img{width:100%;height:90px;object-fit:cover;background:var(--bg3);display:flex;align-items:center;justify-content:center;font-size:32px;}
.br-pcard-img img{width:100%;height:100%;object-fit:cover;}
.br-pcard-body{padding:8px 9px 9px;}
.br-pcard-name{font-size:12px;font-weight:600;color:var(--text);line-height:1.3;margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.br-pcard-price{font-size:13px;font-weight:700;color:var(--p);}
.br-pcard-badge{
  position:absolute;top:6px;left:6px;
  background:var(--p);color:#fff;
  font-size:9.5px;font-weight:700;padding:2px 7px;border-radius:99px;
  font-family:var(--font);text-transform:uppercase;letter-spacing:.04em;
}
.br-pcard{position:relative;}
.br-pcard-btn{
  display:block;width:100%;margin-top:7px;padding:5px 0;
  background:var(--p-lt);color:var(--p);
  border:none;border-radius:8px;font-size:11.5px;font-weight:700;
  cursor:pointer;font-family:var(--font);text-align:center;
  transition:background .16s,color .16s;
}
.br-pcard-btn:hover{background:var(--p);color:#fff;}

/* ── Lead capture card ── */
.br-lead-card{
  background:linear-gradient(135deg,var(--p-lt),rgba(108,92,231,.06));
  border:1.5px solid rgba(108,92,231,.2);
  border-radius:16px;padding:16px;
  animation:br-msg-in .3s var(--spring2) both;
  font-family:var(--font);
}
.br-lead-title{font-size:14px;font-weight:700;color:var(--text);margin-bottom:4px;}
.br-lead-sub  {font-size:12.5px;color:var(--text2);margin-bottom:12px;line-height:1.5;}
.br-lead-input{
  width:100%;border:1.5px solid var(--border);border-radius:10px;
  padding:9px 12px;font-size:13px;font-family:var(--font);
  color:var(--text);background:var(--bg);outline:none;margin-bottom:8px;
  transition:border-color .16s,box-shadow .16s;
}
.br-lead-input:focus{border-color:var(--p);box-shadow:0 0 0 3px var(--p-lt);}
.br-lead-input::placeholder{color:var(--text3);}
.br-lead-btn{
  width:100%;padding:10px;border-radius:10px;
  background:var(--p);color:#fff;border:none;
  font-size:13px;font-weight:700;cursor:pointer;
  font-family:var(--font);transition:background .16s,transform .12s;
  touch-action:manipulation;
}
.br-lead-btn:hover{background:var(--p-dk);}
.br-lead-btn:active{transform:scale(.97);}
.br-lead-incentive{
  text-align:center;font-size:11.5px;color:var(--text3);margin-top:6px;
}

/* ── Offer card ── */
.br-offer-card{
  background:linear-gradient(135deg,#fff8f0,#fff3e0);
  border:1.5px solid rgba(245,158,11,.25);
  border-radius:14px;padding:13px 15px;
  display:flex;align-items:center;gap:10px;
  font-family:var(--font);
}
.br-dark .br-offer-card{background:linear-gradient(135deg,#2d2010,#1a1508);}
.br-offer-icon{font-size:28px;flex-shrink:0;}
.br-offer-text{}
.br-offer-title{font-size:13px;font-weight:700;color:#92400e;margin-bottom:2px;}
.br-dark .br-offer-title{color:#f59e0b;}
.br-offer-code{font-size:15px;font-weight:800;color:#d97706;letter-spacing:.05em;}
.br-offer-sub{font-size:11px;color:#a16207;margin-top:2px;}
.br-dark .br-offer-sub{color:#d97706;}

/* ── Typing indicator ── */
.br-typing{
  display:flex;align-items:center;gap:8px;
  padding:4px 14px 8px;flex-shrink:0;background:var(--bg2);
}
.br-typing-ava{
  width:28px;height:28px;border-radius:50%;
  background:var(--bg3);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;font-size:13px;
}
.br-dots{
  display:flex;gap:4px;align-items:center;
  background:var(--ai-bg);padding:10px 14px;
  border-radius:16px 16px 16px 5px;border:1px solid var(--border);
}
.br-dots span{
  width:6.5px;height:6.5px;border-radius:50%;background:var(--text3);
  animation:br-dot 1.4s infinite ease-in-out;
}
.br-dots span:nth-child(2){animation-delay:.2s;}
.br-dots span:nth-child(3){animation-delay:.4s;}
@keyframes br-dot{0%,80%,100%{transform:translateY(0);opacity:.4}40%{transform:translateY(-6px);opacity:1}}

/* ── Quick replies ── */
.br-quick{
  display:flex;gap:7px;padding:10px 14px;
  overflow-x:auto;flex-shrink:0;
  background:var(--bg);border-top:1px solid var(--border);
  scrollbar-width:none;
}
.br-quick::-webkit-scrollbar{display:none;}
.br-qr{
  flex:0 0 auto;padding:7px 14px;border-radius:99px;
  border:1.5px solid var(--p);background:transparent;color:var(--p);
  font-size:12.5px;font-weight:600;cursor:pointer;white-space:nowrap;
  font-family:var(--font);
  transition:background .16s var(--ease),color .16s var(--ease),transform .12s;
  touch-action:manipulation;outline:none;-webkit-appearance:none;
}
.br-qr:hover{background:var(--p);color:#fff;transform:translateY(-1px);}
.br-qr:active{transform:scale(.96);}
.br-qr.br-qr-live{border-color:#3b82f6;color:#3b82f6;}
.br-qr.br-qr-live:hover{background:#3b82f6;color:#fff;}

/* ── Input area ── */
.br-input-area{
  flex-shrink:0;background:var(--bg);
  border-top:1px solid var(--border);
  padding:10px 12px 13px;
}
.br-input-box{
  display:flex;align-items:flex-end;gap:8px;
  background:var(--bg2);border:1.5px solid var(--border);
  border-radius:16px;padding:9px 9px 9px 15px;
  transition:border-color .16s var(--ease),box-shadow .16s var(--ease);
}
.br-input-box:focus-within{border-color:var(--p);box-shadow:0 0 0 3.5px var(--p-lt);}

#brai-inp{
  flex:1;border:none;background:transparent;outline:none;
  font-size:max(16px,14px);font-family:var(--font);
  color:var(--text);line-height:1.5;resize:none;
  max-height:110px;overflow-y:auto;min-height:20px;
}
#brai-inp::placeholder{color:var(--text3);}

#brai-send{
  width:36px;height:36px;flex-shrink:0;border-radius:12px;
  background:var(--p);border:none;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 2px 8px var(--p-lt);
  transition:background .16s,transform .12s,box-shadow .16s;
  touch-action:manipulation;outline:none;
}
#brai-send:hover{background:var(--p-dk);transform:scale(1.07);box-shadow:0 4px 14px var(--p-glow);}
#brai-send:active{transform:scale(.92);}
#brai-send svg{display:block;}

/* ── Footer ── */
.br-footer{
  flex-shrink:0;background:var(--bg);padding:4px 0 8px;
  text-align:center;font-size:10.5px;color:var(--text3);letter-spacing:.01em;
}
.br-footer a{color:var(--p);text-decoration:none;font-weight:600;}

/* ================================================================
   RESPONSIVE
   ================================================================ */
@media(max-width:480px){
  #brai-win{
    position:fixed!important;inset:0!important;
    width:100vw!important;height:100dvh!important;
    max-width:none!important;max-height:none!important;
    border-radius:0!important;z-index:2147483645!important;
    transform:none!important;
  }
  #brai-win.br-open{animation:br-win-up .32s var(--spring2) both;}
  @keyframes br-win-up{from{opacity:0;transform:translateY(50px)}to{opacity:1;transform:none}}
  #brai-root,#brai-root.br-left{right:16px!important;left:auto!important;bottom:20px!important;}
  #brai-root.br-left{left:16px!important;right:auto!important;}
  .br-bcol{max-width:84%;}
  #brai-inp{font-size:16px!important;}
}
@media(max-width:360px){#brai-root{--fab-sz:56px;}}
@media(min-width:481px)and(max-width:768px){
  #brai-win{max-width:min(var(--chat-w),calc(100vw - 24px));max-height:calc(100vh - 80px);}
}
