
/* v2.0 Interactive Product Builder */

/* Matrix rows are now interactive for Applicable/Selected products */
.v15-matrix-item.applicable,
.v15-matrix-item.selected{
  cursor:pointer!important;
}
.v15-matrix-item.applicable:hover{
  background:rgba(88,240,230,.045)!important;
}
.v15-matrix-item.selected:hover{
  background:rgba(36,137,255,.06)!important;
}
.v15-matrix-item.manual-selected em::after{
  content:"  +";
  color:#61efe5;
  font-weight:700;
}
.v15-matrix-item.case-locked{
  cursor:default!important;
}

/* Digital Core: explicit idle -> active transition */
.scene-core{
  opacity:.34!important;
  filter:saturate(.65)!important;
  transition:opacity .45s ease,filter .45s ease,box-shadow .45s ease,border-color .45s ease!important;
}
.scene-core.v20-active{
  opacity:1!important;
  filter:saturate(1.15) drop-shadow(0 0 10px rgba(88,240,230,.38))!important;
  border-color:#63f4e9!important;
  box-shadow:
    0 0 0 1px rgba(88,240,230,.18),
    0 0 26px rgba(88,240,230,.42),
    inset 0 0 26px rgba(88,240,230,.12)!important;
  animation:v20CoreBreath 3.2s ease-in-out infinite!important;
}
@keyframes v20CoreBreath{
  0%,100%{box-shadow:0 0 0 1px rgba(88,240,230,.16),0 0 18px rgba(88,240,230,.26),inset 0 0 20px rgba(88,240,230,.08)}
  50%{box-shadow:0 0 0 1px rgba(88,240,230,.28),0 0 34px rgba(88,240,230,.54),inset 0 0 30px rgba(88,240,230,.15)}
}

/* Dynamic splash energy stays inside the line; no orb */
.splash-neon-line{
  position:relative!important;
  overflow:hidden!important;
}
.splash-neon-line b{display:none!important}
.splash-neon-line i{
  position:relative!important;
  overflow:hidden!important;
  animation:v20LineDraw .8s .45s cubic-bezier(.2,.8,.2,1) forwards!important;
}
.splash-neon-line i::after{
  content:"";
  position:absolute;
  top:0;bottom:0;
  width:42%;
  left:-45%;
  background:linear-gradient(90deg,transparent,rgba(224,255,255,.20),#eaffff,rgba(104,242,232,.42),transparent);
  filter:blur(.2px);
  animation:v20EnergyFlow 1.45s 1.05s ease-in-out infinite;
}
@keyframes v20LineDraw{
  from{opacity:0;transform:scaleX(0)}
  to{opacity:1;transform:scaleX(1)}
}
@keyframes v20EnergyFlow{
  from{left:-45%}
  to{left:105%}
}

/* subtle feedback when attempting to remove a case-required product */
.v20-lock-pulse{
  animation:v20LockPulse .55s ease!important;
}
@keyframes v20LockPulse{
  0%,100%{background:transparent}
  50%{background:rgba(88,240,230,.13)}
}
