/* Orbe de Dalia (decisión D26). Copia exacta de los estilos de dalia/public/brand/orbe.js (commit ad540e3).
   No se comparte: si Dalia cambia el orbe, se vuelve a copiar. Estados por clase en .orbe: (reposo), .escuchando,
   .pensando y .sugerencia (número en data-n). El halo se ajusta con --orbe-halo. El toque místico de la web va en yoeco.css. */
.orbe{position:relative;display:inline-block;width:100%;height:100%;--orbe-halo:#DDF2EA}
.orbe-svg{width:100%;height:100%;display:block;overflow:visible}
.o-halo{fill:var(--orbe-halo)}.o-r1{fill:none;stroke:#149D80;stroke-width:1.2}.o-r2{fill:none;stroke:#0B6F5B;stroke-width:1;stroke-dasharray:3 6}
.o-arco{fill:none;stroke:#BCEB77;stroke-width:2.4;stroke-linecap:round}.o-n1{fill:#0B6F5B}.o-n2{fill:#149D80}
.o-brote{fill:none;stroke:#F2F6F4;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.o-vida{fill:#BCEB77}
.o-onda{fill:none;stroke:#149D80;stroke-width:1.5;opacity:0}
.o-g1,.o-g2,.o-resp,.o-onda{transform-origin:0 0;transform-box:view-box}
.o-g1{animation:o-giro 14s linear infinite}.o-g2{animation:o-giro 22s linear infinite reverse}.o-resp{animation:o-respira 4s ease-in-out infinite}
.orbe.pensando .o-g1{animation-duration:2.4s}
.orbe.escuchando .o-onda{animation:o-onda 1.8s ease-out infinite}.orbe.escuchando .o-onda2{animation-delay:.9s}
.orbe.sugerencia::after{content:attr(data-n);position:absolute;top:2%;right:2%;min-width:34%;height:34%;padding:0 4%;box-sizing:border-box;border-radius:999px;background:#BCEB77;color:#0E1E24;
  font:700 11px/1 "Spline Sans",system-ui,sans-serif;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px #fff;animation:o-late 1.6s ease-in-out infinite}
@keyframes o-giro{to{transform:rotate(360deg)}}@keyframes o-respira{0%,100%{transform:scale(1)}50%{transform:scale(1.04)}}
@keyframes o-onda{0%{transform:scale(1);opacity:.9}100%{transform:scale(1.55);opacity:0}}@keyframes o-late{0%,100%{opacity:1}50%{opacity:.55}}
@media (prefers-reduced-motion:reduce){.o-g1,.o-g2,.o-resp,.orbe.escuchando .o-onda,.orbe.sugerencia::after{animation:none!important}}
