/* Mira — il globo delle persone (static/mira-globe.js). Autonomo: porta i suoi
   colori, così vive uguale nelle pagine di accesso e nel sito. */
.mg-stage{--mg-ink:#1F1B17;--mg-line:#ECE6DD;--mg-muted:#6E665C;--mg-ease:cubic-bezier(.2,.7,.2,1);
  --mg-display:'Space Grotesk',system-ui,sans-serif;
  --mg-coral-soft:rgba(232,99,58,.10);--mg-coral-text:#B04527;--mg-ai-soft:rgba(106,90,224,.10);--mg-ai-text:#4C3FC0;
  --mg-green-soft:rgba(31,157,107,.10);--mg-green-text:#147049;
  --mg-shadow:0 1px 2px rgba(31,27,23,.05),0 12px 32px -14px rgba(31,27,23,.22)}
.mg-stage{position:relative;width:100%;height:100%;overflow:hidden}
.mg-canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.mg-reticle{position:absolute;left:0;top:0;width:56px;height:56px;margin:-28px 0 0 -28px;opacity:0;pointer-events:none;
  transition:opacity .45s var(--mg-ease);will-change:transform}
.mg-reticle svg{display:block;width:100%;height:100%;overflow:visible;transform:rotate(var(--mg-rot,-70deg)) scale(var(--mg-lock,1.4));
  transition:transform .75s cubic-bezier(.25,1.35,.45,1)}
.mg-reticle circle{fill:none;stroke:var(--mg-ink);stroke-width:22;stroke-linecap:round;stroke-dasharray:151.8 30.4;stroke-dashoffset:10.1}
.mg-reticle.is-on{opacity:1}
.mg-reticle.is-locked{--mg-lock:1;--mg-rot:0deg}

.mg-person{position:absolute;left:0;top:0;display:flex;align-items:center;gap:10px;padding:9px 12px 9px 9px;min-width:230px;max-width:290px;background:#fff;border:1px solid var(--mg-line);border-radius:14px;box-shadow:var(--mg-shadow);
  opacity:0;transform:translateY(6px) scale(.97);transition:opacity .35s var(--mg-ease),transform .35s var(--mg-ease);pointer-events:none;z-index:2}
.mg-person.is-on{opacity:1;transform:none}
.mg-person__avatar{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-family:var(--mg-display);font-weight:700;font-size:12.5px;color:#fff;background:var(--mg-ink)}
.mg-person__body{display:flex;flex-direction:column;min-width:0;line-height:1.25}
.mg-person__body strong{font-size:13.5px;font-weight:700;color:var(--mg-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mg-person__body small{font-size:12px;color:var(--mg-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mg-person__tag{margin-left:auto;flex:none;font-size:11px;font-weight:700;padding:4px 8px;border-radius:999px;white-space:nowrap}
.mg-person__tag[data-tone="coral"]{background:var(--mg-coral-soft);color:var(--mg-coral-text)}
.mg-person__tag[data-tone="ai"]{background:var(--mg-ai-soft);color:var(--mg-ai-text)}
.mg-person__tag[data-tone="green"]{background:var(--mg-green-soft);color:var(--mg-green-text)}
@media (prefers-reduced-motion:reduce){.mg-reticle,.mg-reticle svg,.mg-person{transition:none!important}}

/* ── Il marchio animato: i due archi del logo che mettono a fuoco il punto corallo.
   <svg class="mm" viewBox="0 0 140 140" data-lock><circle class="mm__arcs" cx="70" cy="70" r="58"/><circle class="mm__dot" cx="70" cy="70" r="26"/></svg>
   data-lock: gli archi arrivano ruotando e si chiudono quando il marchio entra in vista;
   mm--live: respirano piano (l'assistente che ascolta); is-peek: si girano mentre scrivi. */
.mm{display:block;overflow:visible;color:#1F1B17}
.mm .mm__arcs{fill:none;stroke:currentColor;stroke-width:22;stroke-linecap:round;stroke-dasharray:151.8 30.4;stroke-dashoffset:10.1;
  transform-origin:70px 70px;transition:transform 1s cubic-bezier(.25,1.3,.45,1),opacity .5s ease}
.mm .mm__dot{fill:#FD5D3C;transform-origin:70px 70px;transition:transform .55s cubic-bezier(.3,1.6,.5,1) .4s}
.mm .mm__dot--ai{fill:#6A5AE0}
.mm .mm__dot--green{fill:#1F9D6B}
.mm[data-lock]:not(.is-locked) .mm__arcs{transform:rotate(-120deg) scale(1.45);opacity:0}
.mm[data-lock]:not(.is-locked) .mm__dot{transform:scale(0)}
.mm--live .mm__arcs{animation:mm-live 4.2s ease-in-out infinite}
.mm.is-peek .mm__arcs{animation:none;transform:rotate(38deg)}
.mm.is-blink .mm__dot{transform:scale(.82)}
@keyframes mm-live{0%,100%{transform:rotate(0)}50%{transform:rotate(24deg)}}
@media (prefers-reduced-motion:reduce){.mm .mm__arcs,.mm .mm__dot{transition:none!important;animation:none!important}}
