/* LudoPanda PandaBot Cinematic V2 — visual overrides only.
   Existing PandaBot, hidden launcher, support triggers and API are unchanged. */
#lp-pandabot-panel {
  --pb-gold:#ffcf42; --pb-text:#f7f9ff; --pb-muted:#b7c6e8;
  position:fixed; z-index:1100;
  right:max(20px,env(safe-area-inset-right));
  bottom:max(88px,calc(env(safe-area-inset-bottom) + 78px));
  display:flex; flex-direction:column;
  width:min(408px,calc(100vw - 32px));
  height:min(620px,calc(var(--lp-chat-vh,100dvh) - 114px));
  min-height:220px; max-height:calc(100dvh - 100px);
  padding:0; overflow:hidden;
  border:1px solid rgba(238,195,93,.47);
  border-radius:24px;
  color:var(--pb-text);
  background:radial-gradient(ellipse at 80% -15%,rgba(87,53,172,.35),transparent 53%),linear-gradient(155deg,#102044 0%,#0a1938 64%,#08152f 100%);
  box-shadow:0 22px 75px rgba(0,4,24,.72), 0 0 38px rgba(108,54,224,.16),inset 0 1px rgba(255,255,255,.08);
  font:500 13px/1.55 'DM Sans',Inter,system-ui,sans-serif;
  animation:lp-chat-enter .22s ease-out;
}
#lp-pandabot-panel[hidden]{display:none!important}
#lp-pandabot-panel .lp-chat-head{
  flex-shrink:0;display:flex;align-items:center;gap:12px;
  padding:15px 17px;
  background:linear-gradient(110deg,rgba(30,51,103,.95),rgba(37,29,85,.95));
  border-bottom:1px solid rgba(255,255,255,.13);
}
#lp-pandabot-panel .lp-chat-head img{
  flex:none;width:48px;height:48px;object-fit:contain;
  border-radius:15px;background:rgba(255,204,61,.10);border:1px solid rgba(255,216,110,.35);
}
#lp-pandabot-panel .lp-chat-head strong{color:#fff;font-size:17px;letter-spacing:-.025em;line-height:1.25}
#lp-pandabot-panel .lp-chat-head small{color:#c9d5f1;font-size:10px;letter-spacing:.015em}
#lp-pandabot-panel .lp-chat-close{
  margin-left:auto;flex:none;width:39px;height:39px;min-width:39px;min-height:39px;
  display:grid;place-items:center;border-radius:12px;
  background:rgba(255,255,255,.06);border:1px solid rgba(222,232,255,.23);
  color:#fff;font-size:22px;box-shadow:none;padding:0;
  transition:background .18s,border-color .18s;
}
#lp-pandabot-panel .lp-chat-close:hover{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.4)}
#lp-pandabot-panel .lp-chat-body{
  min-height:0;flex:1;display:flex;flex-direction:column;gap:12px;
  overflow-y:auto;overscroll-behavior:contain;padding:20px 17px;
  scrollbar-color:#5c638f transparent;scrollbar-width:thin;
}
#lp-pandabot-panel .lp-chat-message{
  max-width:91%;align-self:flex-start;border-radius:16px 16px 16px 5px;
  padding:12px 14px;background:rgba(28,54,91,.85);
  border:1px solid rgba(158,185,239,.21);
  color:#eaf1ff;line-height:1.62;white-space:pre-wrap;overflow-wrap:anywhere;
  box-shadow:0 6px 18px rgba(0,3,24,.15);
}
#lp-pandabot-panel .lp-chat-user{
  align-self:flex-end;border-radius:16px 16px 5px 16px;
  background:linear-gradient(135deg,#ffe58a,#ffc53d);border-color:#ffdc72;
  color:#12203d;font-weight:650;
}
#lp-pandabot-panel .lp-chat-error{background:#402438;color:#ffe1df;border-color:#d67487}
#lp-pandabot-panel .lp-chat-quick{
  flex-shrink:0;display:flex;gap:7px;flex-wrap:wrap;padding:10px 15px 13px;
  border-top:1px solid rgba(160,180,230,.1);
  background:rgba(9,21,49,.45);
}
#lp-pandabot-panel .lp-chat-quick button{
  border:1px solid rgba(255,207,66,.35);border-radius:999px;
  background:rgba(43,48,101,.6);color:#ffe39b;
  box-shadow:none;min-height:34px;padding:8px 11px;
  font-size:10px;font-weight:800;
  transition:background .18s,border-color .18s,transform .18s;
}
#lp-pandabot-panel .lp-chat-quick button:hover:not(:disabled){background:rgba(91,65,150,.7);border-color:#ffd56a;transform:translateY(-1px)}
#lp-pandabot-panel .lp-chat-form{
  flex-shrink:0;display:flex;gap:9px;padding:11px 13px 8px;
  background:#09162f;border-top:1px solid rgba(202,213,245,.16);
}
#lp-pandabot-panel .lp-chat-input{
  flex:1;min-width:0;min-height:49px;padding:12px 14px;
  background:#15264a;color:#fff;border:1px solid #53658c;
  border-radius:13px;font-size:13px;box-shadow:none;
}
#lp-pandabot-panel .lp-chat-input::placeholder{color:#aebdda}
#lp-pandabot-panel .lp-chat-input:focus{border-color:#ffcf42;outline:2px solid rgba(255,207,66,.23);outline-offset:0}
#lp-pandabot-panel .lp-chat-send{
  flex:none;min-height:49px;min-width:49px;border:1px solid #ffde79;
  border-radius:13px;background:linear-gradient(135deg,#ffe785,#ffc430);
  color:#0f1d39;box-shadow:0 4px 14px rgba(246,181,36,.18);
  font-size:21px;padding:7px;transition:filter .18s,transform .18s;
}
#lp-pandabot-panel .lp-chat-send:hover:not(:disabled){filter:brightness(1.07);transform:translateY(-1px)}
#lp-pandabot-panel button:disabled{opacity:.55;cursor:wait}
#lp-pandabot-panel .lp-chat-note{
  background:#09162f;color:#aebedb;font-size:9px;line-height:1.4;
  padding:1px 14px 12px;
}
#lp-pandabot-panel .lp-chat-typing{color:var(--pb-gold)}
#lp-pandabot-panel :focus-visible{outline:3px solid var(--pb-gold);outline-offset:2px}
@media (max-width:600px){
  #lp-pandabot-panel{
    right:10px;left:10px;width:auto;
    bottom:max(76px,calc(env(safe-area-inset-bottom) + 67px));
    height:min(620px,calc(var(--lp-chat-vh,100dvh) - 94px));
    max-height:calc(100dvh - 84px);border-radius:20px;
  }
  #lp-pandabot-panel .lp-chat-head{padding:12px 13px}
  #lp-pandabot-panel .lp-chat-body{padding:14px}
  #lp-pandabot-panel .lp-chat-quick{padding:9px 12px 11px}
  #lp-pandabot-panel .lp-chat-form{padding:9px 10px 7px}
}
@media (max-width:390px){
  #lp-pandabot-panel .lp-chat-head img{width:40px;height:40px}
  #lp-pandabot-panel .lp-chat-quick button{font-size:9px;padding:7px 9px}
  #lp-pandabot-panel .lp-chat-message{max-width:96%}
}
@media (prefers-reduced-motion:reduce){
  #lp-pandabot-panel,#lp-pandabot-panel *{animation:none!important;transition:none!important}
}
