#gmz-root{
  --p-primary:#c61d2d; --p-primary-hover:#a81825; --p-user:#202124;
  --p-accent:#c61d2d; --p-accent-soft:#f8e7e9;
  --p-bg:#faf8f5; --p-surface:#ffffff; --p-bg-deep:#efece8; --p-line:#dedbdd;
  --p-ink:#202124; --p-muted:#5f6368;
  --p-cta:#c61d2d; --p-cta-hover:#a81825;
  --p-icon-bg:#ffffff; --p-icon:#202124;
  --p-font:Manrope, Arial, Helvetica, sans-serif;
  --r-panel:12px; --r-btn:9px; --r-bub:12px;
}
#gmz-root, #gmz-root *{box-sizing:border-box!important;margin:0!important;padding:0!important;border:0!important;text-transform:none!important;letter-spacing:normal!important;list-style:none!important;float:none!important;font-family:var(--p-font)!important;line-height:1.4!important;text-shadow:none!important;}
#gmz-root svg{width:22px!important;height:22px!important;fill:none!important;stroke:currentColor!important;stroke-width:2!important;stroke-linecap:round!important;stroke-linejoin:round!important;flex:none!important;display:block!important;}
#gmz-root button{cursor:pointer!important;background:none!important;color:inherit!important;font-size:inherit!important;text-align:left!important;}
#gmz-root #gmz-launcher[hidden], #gmz-root #gmz-panel[hidden]{display:none!important;}

/* Launcher */
#gmz-root #gmz-launcher{position:fixed!important;right:22px!important;bottom:22px!important;z-index:999998!important;height:54px!important;display:flex!important;align-items:center!important;gap:10px!important;padding:0 20px 0 18px!important;background:var(--p-primary)!important;color:#fff!important;border-radius:var(--r-btn)!important;font-size:15px!important;font-weight:700!important;box-shadow:0 4px 14px rgba(32,33,36,.28)!important;transition:transform .2s ease,background .2s ease!important;}
#gmz-root #gmz-launcher:hover{transform:translateY(-2px)!important;background:var(--p-primary-hover)!important;}
#gmz-launcher:focus-visible,#gmz-root a:focus-visible,#gmz-root button:focus-visible{outline:3px solid var(--p-ink)!important;outline-offset:2px!important;}
#gmz-launcher .gmz-dot{position:absolute!important;top:-4px!important;right:-4px!important;width:12px!important;height:12px!important;border-radius:50%!important;background:#202124!important;border:2px solid #fff!important;}
#gmz-launcher .gmz-dot::after{content:""!important;position:absolute!important;inset:-2px!important;border-radius:50%!important;border:2px solid #202124!important;animation:gmz-pulse 2s ease-out infinite!important;}
@keyframes gmz-pulse{0%{transform:scale(1);opacity:.9}100%{transform:scale(2.4);opacity:0}}
#gmz-launcher .gmz-badge{position:relative!important;width:36px!important;height:36px!important;border-radius:50%!important;background:var(--p-icon-bg)!important;color:var(--p-icon)!important;display:flex!important;align-items:center!important;justify-content:center!important;flex:none!important;margin-left:-6px!important;box-shadow:0 0 0 2px rgba(255,255,255,.45)!important;}
#gmz-launcher .gmz-badge > svg{width:22px!important;height:22px!important;}
#gmz-launcher .gmz-badge-chat{position:absolute!important;right:-5px!important;bottom:-4px!important;width:18px!important;height:18px!important;border-radius:50%!important;background:var(--p-primary)!important;color:#fff!important;border:2px solid #fff!important;display:flex!important;align-items:center!important;justify-content:center!important;}
#gmz-launcher .gmz-badge-chat svg{width:10px!important;height:10px!important;stroke-width:2.6!important;}
#gmz-launcher .gmz-launcher-short{display:none!important;}

/* Panel */
#gmz-panel{position:fixed!important;right:22px!important;bottom:22px!important;z-index:999999!important;width:400px!important;height:640px!important;max-width:calc(100vw - 32px)!important;max-height:calc(100vh - 44px)!important;display:flex!important;flex-direction:column!important;background:var(--p-bg)!important;border:1px solid var(--p-line)!important;border-radius:var(--r-panel)!important;overflow:hidden!important;box-shadow:0 8px 28px rgba(32,33,36,.22)!important;color:var(--p-ink)!important;animation:gmz-open .28s cubic-bezier(.22,1,.36,1)!important;}
@keyframes gmz-open{from{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:none}}

/* Encabezado */
#gmz-header{flex:none!important;display:flex!important;align-items:center!important;gap:12px!important;padding:14px 14px 14px 16px!important;background:var(--p-ink)!important;color:#fff!important;border-bottom:3px solid var(--p-primary)!important;}
#gmz-header .gmz-avatar{width:42px!important;height:42px!important;border-radius:var(--r-btn)!important;background:var(--p-primary)!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#fff!important;}
#gmz-header .gmz-head-txt{flex:1!important;min-width:0!important;}
#gmz-title{font-size:15.5px!important;font-weight:800!important;color:#fff!important;}
#gmz-header .gmz-sub{display:flex!important;align-items:center!important;gap:6px!important;font-size:12.5px!important;color:#fff!important;opacity:.9!important;margin-top:2px!important;}
#gmz-header .gmz-sub-dot{width:7px!important;height:7px!important;border-radius:50%!important;background:#fff!important;}
#gmz-root #gmz-close{width:36px!important;height:36px!important;border-radius:var(--r-btn)!important;background:rgba(255,255,255,.14)!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#fff!important;}
#gmz-root #gmz-close:hover{background:rgba(255,255,255,.3)!important;}
#gmz-close svg{width:20px!important;height:20px!important;}

/* Cuerpo y mensajes */
#gmz-body{flex:1!important;overflow-y:auto!important;padding:20px 18px 22px!important;scroll-behavior:smooth!important;overscroll-behavior:contain!important;scrollbar-width:thin!important;display:flex!important;flex-direction:column!important;gap:12px!important;}
#gmz-body::-webkit-scrollbar{width:6px}#gmz-body::-webkit-scrollbar-thumb{background:var(--p-line);border-radius:3px}
#gmz-root .gmz-msg{max-width:88%!important;padding:14px 17px!important;font-size:14.5px!important;line-height:1.62!important;border-radius:var(--r-bub)!important;animation:gmz-in .24s ease both!important;word-wrap:break-word!important;}
#gmz-root .gmz-msg *{line-height:1.62!important;font-size:inherit!important;}
#gmz-root .gmz-bot{align-self:flex-start!important;background:var(--p-surface)!important;border:1px solid var(--p-line)!important;color:var(--p-ink)!important;border-bottom-left-radius:2px!important;}
#gmz-root .gmz-user{align-self:flex-end!important;max-width:80%!important;background:var(--p-user)!important;color:#fff!important;font-weight:500!important;border-bottom-right-radius:2px!important;}
#gmz-root .gmz-bot strong{font-weight:800!important;}
#gmz-root .gmz-bot ul{margin:8px 0 2px!important;}
#gmz-root .gmz-bot li{position:relative!important;padding-left:16px!important;margin-bottom:5px!important;}
#gmz-root .gmz-bot li::before{content:""!important;position:absolute!important;left:2px!important;top:.62em!important;width:6px!important;height:6px!important;border-radius:50%!important;background:var(--p-accent)!important;}
#gmz-root .gmz-bot em{display:block!important;font-style:normal!important;font-size:13px!important;color:var(--p-muted)!important;margin-top:8px!important;}
#gmz-root .gmz-bot a{color:var(--p-primary)!important;text-decoration:underline!important;font-weight:700!important;}
#gmz-root .gmz-typing{display:flex!important;gap:5px!important;align-items:center!important;padding:16px 18px!important;}
#gmz-root .gmz-typing span{width:7px!important;height:7px!important;border-radius:50%!important;background:var(--p-muted)!important;animation:gmz-blink 1.2s infinite both!important;}
#gmz-root .gmz-typing span:nth-child(2){animation-delay:.2s!important}#gmz-root .gmz-typing span:nth-child(3){animation-delay:.4s!important}
@keyframes gmz-blink{0%,80%,100%{opacity:.25}40%{opacity:1}}
@keyframes gmz-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* Opciones */
#gmz-root .gmz-opts{display:flex!important;flex-direction:column!important;gap:8px!important;animation:gmz-in .24s ease both!important;}
#gmz-root .gmz-label{font-size:11px!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.06em!important;color:var(--p-muted)!important;margin:4px 0 2px 2px!important;}
#gmz-root .gmz-group{color:var(--p-primary)!important;margin-top:10px!important;}
#gmz-root .gmz-q{width:100%!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;background:var(--p-surface)!important;border:1px solid var(--p-line)!important;border-radius:var(--r-btn)!important;padding:14px 15px!important;font-size:14.5px!important;font-weight:700!important;color:var(--p-ink)!important;transition:transform .18s ease,background .18s ease,border-color .18s ease!important;}
#gmz-root .gmz-q svg{width:16px!important;height:16px!important;color:var(--p-accent)!important;transition:transform .18s ease!important;}
#gmz-root .gmz-q:hover{transform:translateX(3px)!important;background:var(--p-accent-soft)!important;border-color:var(--p-accent)!important;}
#gmz-root .gmz-q:hover svg{transform:translateX(2px)!important;color:var(--p-primary)!important;}
#gmz-root .gmz-q.gmz-visto{background:var(--p-bg-deep)!important;color:var(--p-muted)!important;font-weight:500!important;}
#gmz-root .gmz-q .gmz-visto-tag{margin-left:auto!important;font-size:11px!important;font-weight:600!important;color:var(--p-muted)!important;white-space:nowrap!important;}
#gmz-root .gmz-q span:first-child{flex:1!important;}
#gmz-root .gmz-cta{display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;width:100%!important;background:var(--p-cta)!important;color:#fff!important;text-decoration:none!important;border-radius:var(--r-btn)!important;padding:13px 15px!important;font-size:14.5px!important;font-weight:800!important;transition:background .18s ease!important;}
#gmz-root .gmz-cta:hover{background:var(--p-cta-hover)!important;}
#gmz-root .gmz-cta svg{width:19px!important;height:19px!important;}
#gmz-root .gmz-ghost{width:100%!important;text-align:center!important;background:transparent!important;border:1px solid var(--p-line)!important;border-radius:var(--r-btn)!important;padding:11px 15px!important;font-size:13.5px!important;font-weight:700!important;color:var(--p-muted)!important;}
#gmz-root .gmz-ghost:hover{background:var(--p-bg-deep)!important;color:var(--p-ink)!important;}

/* Pie */
#gmz-foot{flex:none!important;background:var(--p-bg-deep)!important;border-top:1px solid var(--p-line)!important;padding:12px 16px!important;display:flex!important;flex-direction:column!important;gap:8px!important;}
#gmz-foot-btn{display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;background:var(--p-cta)!important;color:#fff!important;text-decoration:none!important;border-radius:var(--r-btn)!important;padding:12px 14px!important;font-size:14.5px!important;font-weight:800!important;}
#gmz-foot-btn:hover{background:var(--p-cta-hover)!important;}
#gmz-foot-btn svg{width:19px!important;height:19px!important;}
#gmz-foot-note{font-size:11.5px!important;text-align:center!important;color:var(--p-muted)!important;}

@media (max-width:600px){
  #gmz-root #gmz-launcher{right:16px!important;bottom:16px!important;height:56px!important;padding:0 18px 0 16px!important;border-radius:28px!important;font-size:14.5px!important;}
  #gmz-launcher .gmz-launcher-text{display:none!important;}
  #gmz-launcher .gmz-launcher-short{display:inline!important;}
  #gmz-panel{inset:0!important;right:0!important;bottom:0!important;width:100vw!important;height:100%!important;max-width:100vw!important;max-height:100%!important;border-radius:0!important;border:0!important;}
}
@media (prefers-reduced-motion:reduce){
  #gmz-root *, #gmz-root *::after, #gmz-panel{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important;}
}

html.gmz-asistente-abierto { overflow: hidden; }
@media (max-width:600px) {
  #gmz-panel { height: 100dvh !important; max-height: 100dvh !important; }
  #gmz-root #gmz-header { padding-top: max(14px, env(safe-area-inset-top)) !important; }
  #gmz-root #gmz-foot { padding-bottom: max(12px, env(safe-area-inset-bottom)) !important; }
  #gmz-root #gmz-launcher { bottom: max(16px, env(safe-area-inset-bottom)) !important; }
}
