
:root{
  --aa-maroon:#3b0019;
  --aa-maroon-2:#560025;
  --aa-gold:#e9b84c;
  --aa-cream:#fbf7f1;
  --aa-line:#eadfd5;
  --aa-text:#2b2024;
  --aa-muted:#786b70;
  --aa-white:#fff;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
body{background:transparent}
button,input{font:inherit}
.aa-app{position:fixed;right:24px;bottom:24px;z-index:2147483000}
.aa-launch{
  position:relative;display:flex;align-items:center;gap:10px;border:0;
  height:58px;padding:0 19px 0 15px;border-radius:30px;background:linear-gradient(135deg,var(--aa-maroon),#62002a);
  color:#fff;box-shadow:0 16px 40px rgba(59,0,25,.30);cursor:pointer;
  transition:transform .2s ease,box-shadow .2s ease;
}
.aa-launch:hover{transform:translateY(-2px);box-shadow:0 20px 46px rgba(59,0,25,.38)}
.aa-launch-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.13);font-size:17px}
.aa-launch-label{font-weight:700;font-size:13px;letter-spacing:.1px}
.aa-pulse{position:absolute;right:7px;top:7px;width:8px;height:8px;border-radius:50%;background:#5fd27a;box-shadow:0 0 0 4px rgba(95,210,122,.13)}
.aa-panel{
  position:absolute;right:0;bottom:72px;width:400px;height:min(680px,calc(100vh - 105px));
  display:none;flex-direction:column;overflow:hidden;background:var(--aa-white);
  border:1px solid rgba(59,0,25,.10);border-radius:24px;
  box-shadow:0 26px 80px rgba(30,8,16,.25);
}
.aa-panel.open{display:flex;animation:aaIn .22s ease-out}
@keyframes aaIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
.aa-header{
  display:flex;justify-content:space-between;align-items:center;padding:17px 18px;
  color:#fff;background:linear-gradient(135deg,var(--aa-maroon),var(--aa-maroon-2));
}
.aa-brand{display:flex;align-items:center;gap:11px}
.aa-avatar{
  width:40px;height:40px;display:grid;place-items:center;border-radius:13px;
  background:linear-gradient(135deg,var(--aa-gold),#f4d27f);color:var(--aa-maroon);
  font-family:Georgia,serif;font-size:21px;font-weight:800
}
.aa-brand strong{display:block;font-size:15px;letter-spacing:.1px}
.aa-brand span{display:block;margin-top:3px;color:rgba(255,255,255,.78);font-size:10px}
.aa-brand span i{display:inline-block;width:6px;height:6px;margin-right:4px;border-radius:50%;background:#61d47b}
.aa-close{border:0;background:rgba(255,255,255,.10);color:#fff;width:34px;height:34px;border-radius:10px;font-size:22px;line-height:1;cursor:pointer}
.aa-close:hover{background:rgba(255,255,255,.18)}
.aa-trust{display:flex;gap:7px;padding:9px 13px;background:#fff;border-bottom:1px solid var(--aa-line);overflow:auto;white-space:nowrap}
.aa-trust span{font-size:9px;color:#6d5e64;background:#faf7f3;border:1px solid #eee2d8;padding:5px 8px;border-radius:999px}
.aa-lang-wrap{padding:10px 13px 8px;background:#fff;border-bottom:1px solid var(--aa-line)}
.aa-section-label{font-size:10px;font-weight:800;color:#8a767e;text-transform:uppercase;letter-spacing:.65px;margin:0 0 7px 2px}
.aa-langs{display:flex;gap:6px;overflow:auto;padding-bottom:2px;scrollbar-width:thin}
.aa-langs button,.aa-actions button{
  flex:0 0 auto;border:1px solid #dfd2ca;background:#fff;color:#4b3d42;
  border-radius:999px;padding:7px 10px;font-size:10px;cursor:pointer;transition:.15s
}
.aa-langs button:hover,.aa-actions button:hover{border-color:#b89577;background:#fbf5ed}
.aa-langs button.active{background:var(--aa-maroon);border-color:var(--aa-maroon);color:#fff}
.aa-messages{flex:1;min-height:0;overflow:auto;padding:15px 13px;background:linear-gradient(#fbf8f4,#faf6f1)}
.aa-messages::-webkit-scrollbar{width:6px}.aa-messages::-webkit-scrollbar-thumb{background:#d7c8c0;border-radius:10px}
.aa-msg{display:flex;margin:0 0 10px;animation:msgIn .16s ease-out}
.aa-msg-inner{max-width:88%;padding:11px 13px;border-radius:15px;font-size:12px;line-height:1.55;white-space:pre-wrap;box-shadow:0 2px 8px rgba(40,10,20,.04)}
.aa-msg.bot .aa-msg-inner{background:#fff;border:1px solid var(--aa-line);border-top-left-radius:5px;color:var(--aa-text)}
.aa-msg.user{justify-content:flex-end}.aa-msg.user .aa-msg-inner{background:var(--aa-maroon);color:#fff;border-top-right-radius:5px}
@keyframes msgIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.aa-typing{display:flex;align-items:center;gap:4px;padding:0 15px 8px;background:#faf6f1}
.aa-typing span{width:5px;height:5px;border-radius:50%;background:#9e858e;animation:bounce 1s infinite}
.aa-typing span:nth-child(2){animation-delay:.15s}.aa-typing span:nth-child(3){animation-delay:.3s}
.aa-typing em{font-style:normal;font-size:9px;color:#8a777e;margin-left:5px}
@keyframes bounce{0%,60%,100%{transform:translateY(0)}30%{transform:translateY(-3px)}}
.aa-actions{display:flex;gap:6px;flex-wrap:wrap;padding:9px 12px;border-top:1px solid var(--aa-line);background:#fff;max-height:88px;overflow:auto}
.aa-actions:empty{display:none}
.aa-actions button{font-size:10px;padding:7px 10px}
.aa-pay{
  display:inline-flex;align-items:center;justify-content:center;padding:8px 13px;border-radius:999px;
  background:var(--aa-maroon);color:#fff;text-decoration:none;font-size:10px;font-weight:700
}
.aa-form{display:flex;gap:7px;padding:9px 10px;background:#fff;border-top:1px solid var(--aa-line)}
.aa-form input{
  min-width:0;flex:1;border:1px solid #e2d5cc;background:#fbfaf8;border-radius:13px;
  outline:0;padding:11px 12px;color:var(--aa-text);font-size:12px
}
.aa-form input:focus{border-color:#b89577;box-shadow:0 0 0 3px rgba(184,149,119,.12)}
.aa-form button{
  width:43px;height:43px;border:0;border-radius:13px;background:var(--aa-maroon);
  color:#fff;font-size:17px;cursor:pointer
}
.aa-footer{text-align:center;padding:5px 10px 8px;background:#fff;color:#a18e94;font-size:8px;letter-spacing:.35px}
@media(max-width:600px){
  .aa-app{right:12px;bottom:12px}
  .aa-launch{height:54px;padding-right:15px}
  .aa-launch-label{font-size:12px}
  .aa-panel{
    position:fixed;inset:auto 0 0 0;width:100%;height:min(760px,100dvh);
    max-height:100dvh;border-radius:22px 22px 0 0
  }
  .aa-header{padding-top:max(15px,env(safe-area-inset-top))}
  .aa-messages{padding-bottom:10px}
}
