.z-composed {
  --disk-alpha: .84;
  position: relative;
  display: grid;
  place-items: center;
  aspect-ratio: 1;
  isolation: isolate;
  background: transparent !important;
  perspective: 900px;
  transform-style: preserve-3d;
  /* ORBIT_DOTS_OVERFLOW_2026-05-13: the accent-ring orbit dots sit at
   * inset:-6% — outside .z-composed bounds. Keep overflow visible so they
   * render above the disk/composer-circle clipping. Do not set overflow:hidden
   * or contain:paint here. */
  overflow: visible;
}

.z-disk {
  position:absolute;
  inset: 8%;
  border-radius: 999px;
  overflow:hidden;
  clip-path: circle(50% at 50% 50%);
  mask-image: radial-gradient(circle at 50% 50%, #000 0 69%, rgba(0,0,0,.62) 78%, transparent 100%);
  -webkit-mask-image: radial-gradient(circle at 50% 50%, #000 0 69%, rgba(0,0,0,.62) 78%, transparent 100%);
  background:
    radial-gradient(circle at 50% 50%, rgba(255,255,255,.09) 0 14%, transparent 26%),
    radial-gradient(circle at 45% 48%, color-mix(in oklab, var(--c1) 54%, transparent) 0 17%, transparent 44%),
    radial-gradient(circle at 68% 43%, color-mix(in oklab, var(--c2) 40%, transparent) 0 18%, transparent 46%),
    linear-gradient(135deg, rgba(255,255,255,.10), rgba(126,232,250,.14) 44%, rgba(255,45,85,.12));
  border: 1px solid rgba(255,255,255,.14);
  box-shadow:
    inset 0 0 44px rgba(255,255,255,.06),
    inset 0 -22px 60px rgba(0,0,0,.52),
    0 0 76px color-mix(in oklab, var(--c1) 22%, transparent);
  opacity: var(--disk-alpha);
  animation: zDiskBreathe var(--z-cycle) ease-in-out infinite;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

/* Z_DISK_HIDDEN_2026-05-13: remove the dark circle behind the flower only
 * on the four non-menu reference targets so they look identical at different
 * sizes. The top-menu Z is deliberately excluded. */
.live-z-mode-button .z-disk,
.access-lock-logo .z-disk,
.empty-state-logo .z-disk,
.z-live-stage-logo-button .z-disk {
  display: none !important;
}

.z-disk::before {
  content:"";
  position:absolute;
  inset: -14%;
  border-radius: inherit;
  clip-path: circle(50% at 50% 50%);
  background: conic-gradient(from 20deg,
    color-mix(in oklab, var(--c1) 20%, transparent),
    color-mix(in oklab, var(--c2) 18%, transparent),
    rgba(255,255,255,.05),
    color-mix(in oklab, var(--c1) 16%, transparent));
  opacity: .65;
  filter: blur(3px);
  animation: zDiskSpin 26s linear infinite;
}
.z-disk::after {
  content:"";
  position:absolute;
  inset: 0;
  border-radius: inherit;
  clip-path: circle(50% at 50% 50%);
  background: radial-gradient(circle at 50% 50%, transparent 0 50%, rgba(255,255,255,.13) 70%, transparent 100%);
  mix-blend-mode: screen;
}

@keyframes zDiskBreathe {
  0%,100% { transform: scale(.985); filter: saturate(1) brightness(.95); }
  45% { transform: scale(1.02); filter: saturate(1.18) brightness(1.08); }
  70% { transform: scale(.998); filter: saturate(1.05) brightness(1.0); }
}
@keyframes zDiskSpin { to { transform: rotate(360deg); } }
