.ga-root{position:fixed;bottom:96px;right:20px;z-index:99999;font-family:-apple-system,'Segoe UI',sans-serif}
.ga-bubble{display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:50%;border:none;cursor:pointer;color:#fff;background:linear-gradient(135deg,#1A6B3A,#2E75B6);box-shadow:0 6px 20px rgba(0,0,0,.28);transition:transform .15s ease,box-shadow .15s ease;animation:ga-pulse 2.4s ease-out infinite}
.ga-bubble:hover{transform:scale(1.08);box-shadow:0 8px 26px rgba(0,0,0,.35);animation:none}
.ga-teaser{position:absolute;right:76px;bottom:12px;background:#fff;color:#1A6B3A;border:1px solid rgba(26,107,58,0.25);padding:8px 16px;border-radius:24px;font-size:13px;font-weight:600;box-shadow:0 4px 15px rgba(0,0,0,0.12);white-space:nowrap;cursor:pointer;transition:opacity .2s ease,transform .2s ease,border-color .2s ease,box-shadow .2s ease;animation:ga-fade-in 0.8s ease-out}
.ga-teaser:hover{border-color:#1A6B3A;transform:translateY(-2px);box-shadow:0 6px 18px rgba(26,107,58,0.18)}
.ga-teaser::after{content:"";position:absolute;top:50%;right:-6px;transform:translateY(-50%) rotate(45deg);width:10px;height:10px;background:#fff;border-top:1px solid rgba(26,107,58,0.25);border-right:1px solid rgba(26,107,58,0.25);transition:border-color .2s ease}
.ga-teaser:hover::after{border-color:#1A6B3A}
@keyframes ga-fade-in{0%{opacity:0;transform:translateX(12px)}100%{opacity:1;transform:translateX(0)}}
@keyframes ga-pulse{0%{box-shadow:0 6px 20px rgba(0,0,0,.28),0 0 0 0 rgba(26,107,58,.5)}70%{box-shadow:0 6px 20px rgba(0,0,0,.28),0 0 0 14px rgba(26,107,58,0)}100%{box-shadow:0 6px 20px rgba(0,0,0,.28),0 0 0 0 rgba(26,107,58,0)}}
.ga-panel{position:absolute;bottom:70px;right:0;width:380px;max-width:92vw;height:560px;max-height:80vh;background:#fff;border-radius:14px;box-shadow:0 10px 40px rgba(0,0,0,.2);display:none;flex-direction:column;overflow:hidden}
.ga-panel.ga-open{display:flex}
.ga-header{display:flex;align-items:center;gap:10px;padding:12px 14px;background:linear-gradient(135deg,#1A6B3A,#2E75B6);color:#fff;font-weight:600}
.ga-header span{flex:1}
.ga-cta{color:#fff;font-size:12px;text-decoration:underline;cursor:pointer}
.ga-close{background:none;border:none;color:#fff;font-size:20px;cursor:pointer;line-height:1}
.ga-messages{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:8px;background:#f7f9fb}
.ga-msg{padding:9px 12px;border-radius:12px;font-size:14px;line-height:1.5;max-width:85%;white-space:pre-wrap}
.ga-msg--user{align-self:flex-end;background:#1F4E79;color:#fff;border-bottom-right-radius:4px}
.ga-msg--bot{align-self:flex-start;background:#fff;color:#212121;box-shadow:0 1px 4px rgba(0,0,0,.1);border-bottom-left-radius:4px;white-space:normal}
.ga-msg--bot .ga-h{font-weight:700;margin:8px 0 4px}
.ga-msg--bot .ga-h:first-child{margin-top:0}
.ga-msg--bot .ga-p{margin:4px 0}
.ga-msg--bot .ga-p:first-child{margin-top:0}
.ga-msg--bot ul,.ga-msg--bot ol{margin:4px 0;padding-left:20px}
.ga-msg--bot li{margin:2px 0}
.ga-msg--bot a{color:#1F4E79;text-decoration:underline}
.ga-loading{opacity:.6;font-style:italic}
.ga-form{display:flex;gap:8px;padding:10px;border-top:1px solid #e0e0e0;background:#fff}
.ga-input{flex:1;border:1px solid #ccc;border-radius:10px;padding:9px 12px;font-size:14px;outline:none}
.ga-form button{background:#1A6B3A;color:#fff;border:none;border-radius:10px;padding:0 16px;font-size:16px;cursor:pointer}
/* Force inline emphasis in case the theme resets it inside the widget */
.ga-msg--bot strong{font-weight:700!important}
.ga-msg--bot em{font-style:italic!important}
/* Mobile: panel goes near full-screen for a friendlier touch UX */
@media (max-width:600px){
  .ga-root{bottom:84px;right:14px}
  .ga-bubble{width:54px;height:54px}
  .ga-teaser{display:none!important}
  .ga-panel{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;max-width:100%;height:100%;max-height:100%;border-radius:0}
  .ga-header{padding:14px 16px;font-size:16px}
  .ga-messages{padding:16px;gap:10px}
  .ga-msg{max-width:90%;font-size:15px}
  .ga-form{padding:12px;padding-bottom:max(12px,env(safe-area-inset-bottom))}
  .ga-input{font-size:16px}
}
