/* =====================================================================
   Gau Samman — chatbot widget styles (matches the site's saffron theme)
   ===================================================================== */
.gsb-root{--gsb1:#f5a417;--gsb2:#e8770e;--gsb-maroon:#7a3208;--gsb-cream:#fff7e8;
  --gsb-line:#f0d9ab;position:fixed;right:24px;bottom:24px;z-index:9999;
  font-family:'Mukta','Poppins',system-ui,sans-serif}
html[lang="en"] .gsb-root{font-family:'Poppins','Mukta',system-ui,sans-serif}

/* The hidden attribute must win over the display rules below (else X can't hide
   the panel and the launcher can't be hidden while the panel is open). */
.gsb-panel[hidden],.gsb-launch[hidden]{display:none!important}

/* Floating launch button */
.gsb-launch{position:relative;width:64px;height:64px;border-radius:50%;border:none;cursor:pointer;
  display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--gsb1),var(--gsb2));
  box-shadow:0 10px 26px rgba(232,119,14,.45);transition:transform .2s ease}
.gsb-launch:hover{transform:translateY(-3px) scale(1.04)}
.gsb-launch:focus-visible{outline:3px solid rgba(232,119,14,.5);outline-offset:3px}
.gsb-launch.is-open{transform:scale(.9);opacity:.9}
/* Gau Samman cow-icon inside the button + header (white disc keeps the light cow visible on orange) */
.gsb-cow{display:block;object-fit:contain}
.gsb-launch .gsb-cow{width:40px;height:40px;background:#fff;border-radius:50%;padding:3px;
  box-shadow:0 2px 6px rgba(120,60,10,.25)}
.gsb-head__ico .gsb-cow{width:30px;height:30px}
.gsb-launch__pulse{position:absolute;inset:0;border-radius:50%;background:var(--gsb1);opacity:.55;z-index:-1;
  animation:gsb-pulse 2.2s ease-out infinite}
@keyframes gsb-pulse{0%{transform:scale(1);opacity:.5}70%{transform:scale(1.6);opacity:0}100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.gsb-launch__pulse{animation:none;display:none}}

/* Panel */
.gsb-panel{position:absolute;right:0;bottom:80px;width:380px;height:600px;max-height:calc(100vh - 110px);
  background:#fff;border:1px solid var(--gsb-line);border-radius:20px;overflow:hidden;
  display:flex;flex-direction:column;box-shadow:0 24px 60px rgba(120,60,10,.28);
  animation:gsb-in .18s ease}
@keyframes gsb-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

.gsb-head{display:flex;align-items:center;gap:.6rem;padding:.85rem 1rem;color:#fff;
  background:linear-gradient(135deg,var(--gsb1),var(--gsb2))}
.gsb-head__ico{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;
  background:rgba(255,255,255,.18);flex:0 0 auto}
.gsb-head__ico svg{width:26px;height:26px}
.gsb-head__text{display:flex;flex-direction:column;line-height:1.2;flex:1;min-width:0}
.gsb-head__title{font-size:1rem;font-weight:700}
.gsb-head__sub{font-size:.72rem;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gsb-head__btn{background:rgba(255,255,255,.16);border:none;color:#fff;width:30px;height:30px;border-radius:9px;
  cursor:pointer;font-size:1rem;line-height:1;flex:0 0 auto;transition:.15s}
.gsb-head__btn:hover{background:rgba(255,255,255,.32)}
.gsb-head__btn:focus-visible{outline:2px solid #fff;outline-offset:1px}

/* Body / messages */
.gsb-body{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.6rem;
  background:linear-gradient(180deg,#fffdf8,#fff7ea)}
.gsb-msg{display:flex}
.gsb-msg--bot{justify-content:flex-start}
.gsb-msg--user{justify-content:flex-end}
.gsb-bubble{max-width:82%;padding:.6rem .85rem;border-radius:14px;font-size:.9rem;line-height:1.5;
  white-space:normal;word-wrap:break-word}
.gsb-msg--bot .gsb-bubble{background:#fff;border:1px solid var(--gsb-line);color:var(--gsb-maroon);
  border-bottom-left-radius:4px}
.gsb-msg--user .gsb-bubble{background:linear-gradient(135deg,var(--gsb1),var(--gsb2));color:#fff;
  border-bottom-right-radius:4px}
.gsb-prompt{font-weight:600;margin-bottom:.5rem;color:var(--gsb-maroon)}
.gsb-sources{font-size:.72rem;color:var(--gsb-maroon);opacity:.75;margin:.15rem .2rem 0;align-self:flex-start}
.gsb-sources span{font-weight:700}

/* Selects / inline inputs inside bubbles */
.gsb-select,.gsb-inline__input{width:100%;font-family:inherit;font-size:.88rem;padding:.5em .6em;
  border:1.5px solid var(--gsb-line);border-radius:10px;background:var(--gsb-cream);color:var(--gsb-maroon)}
.gsb-select:focus,.gsb-inline__input:focus{outline:none;border-color:var(--gsb1)}
.gsb-inline{display:flex;gap:.4rem;align-items:center}
.gsb-inline__input{flex:1}
.gsb-inline__btn{border:none;background:linear-gradient(135deg,var(--gsb1),var(--gsb2));color:#fff;
  width:38px;height:36px;border-radius:10px;cursor:pointer;font-size:1rem;flex:0 0 auto}
.gsb-inline__skip{border:1.5px solid var(--gsb-line);background:#fff;color:var(--gsb-maroon);
  border-radius:10px;padding:0 .7em;height:36px;cursor:pointer;font-family:inherit;font-size:.8rem;flex:0 0 auto}

/* Typing indicator */
.gsb-bubble--typing{display:inline-flex;gap:4px;align-items:center}
.gsb-bubble--typing span{width:7px;height:7px;border-radius:50%;background:var(--gsb2);opacity:.5;
  animation:gsb-blink 1s infinite}
.gsb-bubble--typing span:nth-child(2){animation-delay:.2s}
.gsb-bubble--typing span:nth-child(3){animation-delay:.4s}
@keyframes gsb-blink{0%,100%{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}

/* Footer input */
.gsb-foot{display:flex;gap:.5rem;padding:.7rem;border-top:1px solid var(--gsb-line);background:#fff}
.gsb-input{flex:1;font-family:inherit;font-size:.9rem;padding:.6em .85em;border:1.5px solid var(--gsb-line);
  border-radius:999px;background:var(--gsb-cream);color:var(--gsb-maroon)}
.gsb-input:focus{outline:none;border-color:var(--gsb1)}
.gsb-send{border:none;background:linear-gradient(135deg,var(--gsb1),var(--gsb2));color:#fff;
  width:42px;height:42px;border-radius:50%;cursor:pointer;display:grid;place-items:center;flex:0 0 auto;transition:.15s}
.gsb-send:hover{transform:translateY(-2px)}
.gsb-send:focus-visible{outline:3px solid rgba(232,119,14,.5);outline-offset:2px}

/* Mobile */
@media (max-width:480px){
  .gsb-root{right:12px;bottom:12px}
  .gsb-launch{width:56px;height:56px}
  .gsb-panel{width:calc(100vw - 24px);height:calc(100vh - 90px);bottom:72px;right:0}
}

/* RTL (Urdu etc.) */
html[dir="rtl"] .gsb-root{right:auto;left:24px}
html[dir="rtl"] .gsb-panel{right:auto;left:0}
html[dir="rtl"] .gsb-msg--user{justify-content:flex-start}
html[dir="rtl"] .gsb-msg--bot{justify-content:flex-end}
