/* ============================================================
   PRAXERA · CUSTOM-CURSOR (Label) — site-weit, standalone.
   Bordeaux-Kreis, leuchtender Glow, wächst beim Hover und zeigt
   einen Kontext-Text (Anfragen / Ansehen / Öffnen …). Auf
   Bordeaux-Flächen wechselt er zu Cremeweiß (Sichtbarkeit).
   EINZIGE Quelle des Cursors für ALLE Seiten (svc + uu).
   Standalone: nutzt CSS-Vars mit Fallback (uu-Seiten laden
   leistung.css nicht), ID-Selektoren überschreiben Altreste.
   ============================================================ */
@media (hover: hover) and (pointer: fine) {
  .uu-cursor-active,
  .uu-cursor-active * { cursor: none !important; }

  /* Punkt wird nicht genutzt — nur der Ring trägt Label + Glow */
  #uu-cursor { display: none !important; }

  #uu-cursor-ring {
    position: fixed; top: 0; left: 0;
    width: 18px; height: 18px;
    background: var(--accent, #6E2F3F);
    border: 0; border-radius: 50%;
    pointer-events: none;
    z-index: 100000;
    transform: translate(-50%, -50%);
    display: flex; align-items: center; justify-content: center;
    overflow: hidden;
    opacity: 1;
    mix-blend-mode: normal;             /* überschreibt Alt-Cursor (difference) */
    box-shadow: 0 0 16px 3px rgba(110,47,63,0.85), 0 0 5px 1px rgba(110,47,63,0.95);
    transition: width .38s var(--ease, cubic-bezier(.22,.61,.36,1)),
                height .38s var(--ease, cubic-bezier(.22,.61,.36,1)),
                background .3s ease, box-shadow .38s ease, opacity .3s ease;
    will-change: left, top;
  }

  #uu-cursor-ring .uu-cursor-label-tx {
    font-family: 'Syne', sans-serif;
    font-weight: 600; font-size: 9px;
    letter-spacing: 0.03em; text-transform: uppercase;
    color: var(--cream, #F8F6F1);
    white-space: nowrap;
    opacity: 0; transform: scale(.6);
    transition: opacity .28s ease,
                transform .3s var(--ease, cubic-bezier(.22,.61,.36,1)),
                color .3s ease;
  }

  #uu-cursor-ring.is-hover {
    width: 70px; height: 70px;
    box-shadow: 0 0 34px 7px rgba(110,47,63,0.5), 0 0 12px 3px rgba(110,47,63,0.7);
  }
  #uu-cursor-ring.is-hover .uu-cursor-label-tx { opacity: 1; transform: scale(1); }

  /* Auf Bordeaux-Flächen → Cremeweiß (sonst Cursor unsichtbar) */
  #uu-cursor-ring.is-on-port {
    background: var(--cream, #F8F6F1);
    box-shadow: 0 0 16px 3px rgba(248,246,241,0.5), 0 0 5px 1px rgba(248,246,241,0.75);
  }
  #uu-cursor-ring.is-on-port.is-hover {
    box-shadow: 0 0 32px 6px rgba(248,246,241,0.4), 0 0 12px 3px rgba(248,246,241,0.6);
  }
  #uu-cursor-ring.is-on-port .uu-cursor-label-tx { color: var(--accent, #6E2F3F); }
}

/* Touch / coarse pointer: kein Custom-Cursor */
@media (hover: none), (pointer: coarse) {
  #uu-cursor, #uu-cursor-ring { display: none !important; }
}
