/* v0783: abertura do GCHAT, vetorial e local. Nenhuma biblioteca de animação. */
.gchat-welcome{width:min(100%,440px);margin:auto;display:flex;flex-direction:column;align-items:center;gap:5px;padding:20px 12px 42px;text-align:center;pointer-events:none}
.gchat-welcome-scene{width:min(330px,80vw);aspect-ratio:340/230;display:block;flex:none}
.gchat-welcome-scene svg{display:block;width:100%;height:100%;overflow:visible}
.gchat-welcome-copy{max-width:360px;padding:0 9px}
.gchat-welcome-copy h2{margin:0;color:#21344f;font-size:clamp(1.23rem,2vw,1.55rem);font-weight:760;letter-spacing:-.037em;line-height:1.26}
.gchat-welcome-copy p{margin:9px 0 0;color:#708097;font-size:.91rem;line-height:1.55}
.gw-node,.gw-core,.gw-star,.gw-halo,.gw-orbit,.gw-path,.gw-spark,.gw-pulse-ring{transform-box:view-box;transform-origin:center}
.gw-node--left{transform-origin:80px 110px}
.gw-node--right{transform-origin:270px 108px}
.gw-core{transform-origin:170px 114px}
.gw-star{transform-origin:170px 110px}
.gw-pulse-ring{transform-origin:170px 110px}
.gw-spark--one{transform-origin:83px 45px}
.gw-spark--two{transform-origin:276px 168px}
.gw-spark--three{transform-origin:102px 183px}
@keyframes gw-drift-a{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes gw-drift-b{0%,100%{transform:translateY(-5px)}50%{transform:translateY(7px)}}
@keyframes gw-orbit{to{transform:rotate(360deg)}}
@keyframes gw-ring{0%,12%{opacity:.52;transform:scale(.88)}65%{opacity:.08;transform:scale(1.23)}100%{opacity:0;transform:scale(1.3)}}
@keyframes gw-halo{0%,100%{opacity:.82;transform:scale(.98)}50%{opacity:1;transform:scale(1.07)}}
@keyframes gw-flow{to{stroke-dashoffset:-44}}
@keyframes gw-breathe{0%,100%{transform:scale(1)}45%{transform:scale(1.065)}70%{transform:scale(1.015)}}
@keyframes gw-sparkle{0%,100%{opacity:.4;transform:scale(.78)}48%{opacity:1;transform:scale(1.38)}}
/* Animação padrão com desligamento explícito em movimento reduzido. */
 .gchat-welcome .gw-pulse-ring{animation:gw-ring 3.8s ease-out infinite}
 .gchat-welcome .gw-halo{animation:gw-halo 5.2s ease-in-out infinite}
 .gchat-welcome .gw-node--left{animation:gw-drift-a 4s ease-in-out infinite}
 .gchat-welcome .gw-node--right{animation:gw-drift-b 4.5s ease-in-out infinite}
 .gchat-welcome .gw-core{animation:gw-breathe 4.1s ease-in-out infinite}
 .gchat-welcome .gw-orbit{animation:gw-orbit 24s linear infinite}
 .gchat-welcome .gw-path{animation:gw-flow 3.9s linear infinite}
 .gchat-welcome .gw-spark--one{animation:gw-sparkle 3.2s ease-in-out infinite}
 .gchat-welcome .gw-spark--two{animation:gw-sparkle 3.8s ease-in-out .8s infinite}
 .gchat-welcome .gw-spark--three{animation:gw-sparkle 4.2s ease-in-out 1.7s infinite}
@media(prefers-reduced-motion:reduce){
 .gchat-welcome .gw-pulse-ring,.gchat-welcome .gw-halo,
 .gchat-welcome .gw-node--left,.gchat-welcome .gw-node--right,.gchat-welcome .gw-core,
 .gchat-welcome .gw-orbit,.gchat-welcome .gw-path,.gchat-welcome .gw-spark--one,
 .gchat-welcome .gw-spark--two,.gchat-welcome .gw-spark--three{animation:none}
}
@media(max-width:650px){
 .gchat-welcome{padding:12px 10px 26px;gap:0}
 .gchat-welcome-scene{width:min(282px,78vw)}
 .gchat-welcome-copy h2{font-size:1.22rem}
 .gchat-welcome-copy p{font-size:.83rem}
}
@media(max-width:650px) and (max-height:680px){.gchat-welcome{padding:0 10px 12px}.gchat-welcome-scene{width:min(230px,65vw)}}
