/* C-Conductor colors: soft background behind the original logo image.
   Original source: components/signal-logo.tsx and app/globals.css (12 Oct port).
   Idle presentation, dimensions, artwork and the palette remain owner-controlled. */
.ice-conductor-logo {
  position: relative;
  isolation: isolate;
}
.ice-conductor-logo > img {
  position: relative;
  z-index: 1;
  /* Static front-image polish; preserve alpha and all separate background layers. */
  --ice-logo-front-brightness: 1;
  filter: brightness(var(--ice-logo-front-brightness));
}
.ice-conductor-logo__light {
  position: absolute;
  z-index: 0;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  /* Shape only the animated color behind the untouched PNG into a frame. */
  --ice-logo-backlight-border: 4px;
  box-sizing: border-box;
  padding: var(--ice-logo-backlight-border);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  mask-composite: exclude;
}
.ice-conductor-logo__color {
  position: absolute;
  inset: -45% -8%;
  background:
    radial-gradient(ellipse at 50% 50%, color-mix(in srgb, var(--primary) 48%, transparent), transparent 58%),
    linear-gradient(90deg, transparent 8%, color-mix(in srgb, var(--primary) 24%, transparent) 50%, transparent 92%);
  mix-blend-mode: screen;
  opacity: 0;
  transform: scale(.98);
  transition: opacity 120ms linear, transform 150ms ease-out;
}
.ice-conductor-logo[data-ice-color-active='true'] .ice-conductor-logo__color {
  opacity: calc(.025 + var(--ice-color-mid) * .10 + var(--ice-color-snare) * .20 + var(--ice-color-groove) * .10);
  transform: scale(calc(1 + var(--ice-color-groove) * .012 + var(--ice-color-snare) * .022));
}
.ice-conductor-letter {
  transition: color 90ms linear, filter 90ms linear, text-shadow 90ms linear,
    -webkit-text-fill-color 90ms linear, -webkit-text-stroke-color 90ms linear;
}
.ice-conductor-title[data-ice-color-active='true'] [data-ice-color-kind='name'][data-ice-color-selected] {
  color: color-mix(in srgb, var(--primary) 62%, rgba(245,247,247,.38));
  -webkit-text-fill-color: color-mix(in srgb, var(--primary) 62%, rgba(245,247,247,.38));
  -webkit-text-stroke: 1px color-mix(in srgb, var(--primary) 54%, white 46%);
  filter: brightness(calc(.82 + var(--ice-color-mid) * .16 + var(--ice-color-snare) * .2))
    saturate(calc(.92 + var(--ice-color-groove) * .24));
  text-shadow: 0 0 calc(4px + var(--ice-color-snare) * 14px) color-mix(in srgb, var(--primary) 36%, transparent);
}
.ice-conductor-title[data-ice-color-active='true'] [data-ice-color-kind='frequency'][data-ice-color-selected] {
  color: color-mix(in srgb, var(--primary) 86%, white 14%);
  -webkit-text-fill-color: color-mix(in srgb, var(--primary) 86%, white 14%);
  -webkit-text-stroke: 1px color-mix(in srgb, var(--primary) 70%, white 30%);
  filter: brightness(calc(.88 + var(--ice-color-mid) * .2 + var(--ice-color-snare) * .28))
    saturate(calc(1.04 + var(--ice-color-groove) * .32));
  text-shadow: 0 0 2px color-mix(in srgb, var(--primary) 62%, white 38%),
    0 0 calc(5px + var(--ice-color-snare) * 18px) color-mix(in srgb, var(--primary) 48%, transparent);
}
@media (prefers-reduced-motion: reduce) {
  .ice-conductor-logo > img, .ice-conductor-letter {
    transition: none;
  }
  .ice-conductor-letter { filter: none !important; }
  .ice-conductor-logo__color { opacity: 0 !important; transition: none; }
  .ice-conductor-title [data-ice-color-selected] {
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
    -webkit-text-stroke: inherit !important;
    text-shadow: inherit !important;
  }
}
