/* ADIMASTER RELEASE 60 · ARTIST LEFT PANEL AWAKE
   Point 1 redo: visibly living left panel. Desktop Artist only.
   No globe / right telemetry / lower deck / header changes. */

@media (min-width:761px){
  body[data-route="artist"] .artistCopyR49{
    overflow:hidden!important;
    box-shadow:
      inset 0 0 0 1px rgba(98,239,255,.075),
      inset 0 0 110px rgba(58,214,255,.045),
      -16px 0 72px rgba(238,73,207,.085),
      0 24px 74px rgba(0,0,0,.28)!important;
  }

  /* Clearly visible holographic sweep. */
  body[data-route="artist"] .artistCopyR49 .r49Scan{
    height:2px!important;
    opacity:.8!important;
    background:linear-gradient(90deg,transparent 0%,rgba(244,79,211,.65) 18%,#d9ffff 47%,rgba(103,241,255,.88) 58%,rgba(139,82,255,.45) 78%,transparent 100%)!important;
    box-shadow:0 0 9px rgba(255,105,226,.45),0 0 20px rgba(89,238,255,.42)!important;
    animation:r60PanelSweep 4.8s linear infinite!important;
  }

  /* A moving energy spine makes the panel visibly alive at rest. */
  body[data-route="artist"] .r49DomainStack::after{
    content:"";
    position:absolute;
    z-index:5;
    left:0;
    top:-3%;
    width:2px;
    height:34%;
    pointer-events:none;
    border-radius:2px;
    background:linear-gradient(180deg,transparent,#ff72dc 22%,#9b68ff 54%,#63f4ff 80%,transparent);
    box-shadow:0 0 8px rgba(244,89,213,.48),0 0 18px rgba(81,235,255,.34);
    animation:r60EnergySpine 5.7s ease-in-out infinite;
  }

  body[data-route="artist"] .r49DomainRow.artistDomain{
    position:relative!important;
    overflow:hidden!important;
    transition:transform .28s cubic-bezier(.2,.8,.2,1),filter .28s ease,box-shadow .28s ease,background .28s ease!important;
  }

  /* Moving light band inside every module, always faintly active. */
  body[data-route="artist"] .r49DomainRow.artistDomain > .r49DomainCopy::before{
    content:"";
    position:absolute;
    z-index:-1;
    left:-6%;top:-35%;
    width:24%;height:170%;
    transform:skewX(-18deg) translateX(-180%);
    pointer-events:none;
    background:linear-gradient(90deg,transparent,rgba(103,242,255,.08),rgba(225,119,255,.11),transparent);
    filter:blur(2px);
    animation:r60RowSweep 7.5s ease-in-out infinite;
  }
  body[data-route="artist"] .r49DomainRow:nth-child(2) > .r49DomainCopy::before{animation-delay:-2.5s}
  body[data-route="artist"] .r49DomainRow:nth-child(3) > .r49DomainCopy::before{animation-delay:-5s}

  /* The currently-awake module is intentionally obvious. */
  body[data-route="artist"] .r49DomainRow.artistAmbient{
    transform:translateX(7px) scale(1.006)!important;
    background:
      radial-gradient(330px 160px at 20% 50%,rgba(91,244,255,.16),transparent 68%),
      linear-gradient(90deg,rgba(10,38,57,.92),rgba(13,10,38,.50) 78%,transparent)!important;
    box-shadow:
      inset 0 1px rgba(132,255,252,.34),
      inset 0 -1px rgba(169,93,255,.18),
      0 0 30px rgba(71,228,255,.09),
      -8px 0 24px rgba(236,79,210,.055)!important;
    filter:brightness(1.10) saturate(1.12)!important;
  }

  body[data-route="artist"] .r49DomainRow.artistAmbient .r49DomainVisual{
    transform:translateY(-2px) scale(1.055)!important;
    border-color:rgba(117,251,255,.68)!important;
    box-shadow:
      inset 0 0 26px rgba(72,232,255,.11),
      0 0 18px rgba(75,233,255,.16),
      0 0 34px rgba(144,77,255,.10)!important;
  }

  body[data-route="artist"] .r49DomainRow.artistAmbient .r49DomainCopy strong{
    color:#e3ffff!important;
    letter-spacing:.10em!important;
    text-shadow:0 0 7px #62efff,0 0 18px rgba(151,84,255,.35)!important;
  }
  body[data-route="artist"] .r49DomainRow.artistAmbient .r49DomainCopy > span{
    color:#e2edf7!important;
  }

  body[data-route="artist"] .r49DomainRow.artistAmbient .r49DomainCopy::after{
    height:2px!important;
    opacity:.95!important;
    background:linear-gradient(90deg,#ff6edb 0%,#9b6cff 30%,#5cf5ff 64%,transparent 100%)!important;
    box-shadow:0 0 9px rgba(92,241,255,.34)!important;
    animation:r60RailPulse 1.45s ease-in-out infinite!important;
  }

  body[data-route="artist"] .r49DomainRow.artistAmbient::after{
    width:8px!important;height:8px!important;
    background:#f5ffff!important;
    box-shadow:0 0 5px #fff,0 0 13px #57efff,0 0 26px #9d60ff!important;
    animation:r60DataBeacon 1.4s ease-in-out infinite!important;
  }

  /* Make the three icon types clearly animate even without hover. */
  body[data-route="artist"] .r49MusicVisual i{
    animation-duration:1.05s!important;
  }
  body[data-route="artist"] .r49TravelVisual{
    filter:drop-shadow(0 0 8px rgba(78,235,255,.16))!important;
  }
  body[data-route="artist"] .r49MiniGlobe{
    box-shadow:inset 0 0 16px rgba(86,227,255,.22),0 0 14px rgba(75,226,255,.10)!important;
    animation:r60TravelPulse 2.4s ease-in-out infinite!important;
  }
  body[data-route="artist"] .r49CreativityVisual i{
    animation:r60NodeTwinkle 1.8s ease-in-out infinite!important;
  }
  body[data-route="artist"] .r49CreativityVisual i:nth-child(2){animation-delay:-.3s!important}
  body[data-route="artist"] .r49CreativityVisual i:nth-child(3){animation-delay:-.6s!important}
  body[data-route="artist"] .r49CreativityVisual i:nth-child(4){animation-delay:-.9s!important}
  body[data-route="artist"] .r49CreativityVisual i:nth-child(5){animation-delay:-1.2s!important}
  body[data-route="artist"] .r49CreativityVisual i:nth-child(6){animation-delay:-1.5s!important}

  /* Identity header also has a subtle live pulse. */
  body[data-route="artist"] .r49SystemLine .r49Online{
    animation:r60OnlinePulse 2.2s ease-in-out infinite!important;
  }
  body[data-route="artist"] .r49IdentityName h1{
    animation:r60TitleGlow 5.2s ease-in-out infinite!important;
  }

  @keyframes r60PanelSweep{
    0%{transform:translateY(-10px);opacity:0}
    8%{opacity:.9}
    52%{opacity:.55}
    76%{opacity:.75}
    100%{transform:translateY(39vw);opacity:0}
  }
  @keyframes r60EnergySpine{
    0%,100%{transform:translateY(-8%);opacity:.35}
    48%{opacity:1}
    55%{transform:translateY(205%);opacity:.9}
    70%{opacity:.15}
  }
  @keyframes r60RowSweep{
    0%,12%{transform:skewX(-18deg) translateX(-190%);opacity:0}
    22%{opacity:1}
    44%{transform:skewX(-18deg) translateX(520%);opacity:.65}
    52%,100%{transform:skewX(-18deg) translateX(520%);opacity:0}
  }
  @keyframes r60RailPulse{0%,100%{filter:brightness(.75);transform:scaleX(.92)}50%{filter:brightness(1.4);transform:scaleX(1.04)}}
  @keyframes r60DataBeacon{0%,100%{opacity:.5;transform:scale(.72)}50%{opacity:1;transform:scale(1.22)}}
  @keyframes r60TravelPulse{0%,100%{transform:scale(.95);opacity:.75}50%{transform:scale(1.05);opacity:1}}
  @keyframes r60NodeTwinkle{0%,100%{opacity:.38;transform:scale(.72)}50%{opacity:1;transform:scale(1.22)}}
  @keyframes r60OnlinePulse{0%,100%{opacity:.7;text-shadow:0 0 7px rgba(83,255,239,.22)}50%{opacity:1;text-shadow:0 0 8px #67fff0,0 0 18px rgba(83,255,239,.45)}}
  @keyframes r60TitleGlow{0%,100%{filter:drop-shadow(0 0 9px rgba(76,221,255,.07))}50%{filter:drop-shadow(0 0 16px rgba(76,221,255,.15)) drop-shadow(0 0 12px rgba(240,87,211,.08))}}
}

@media (prefers-reduced-motion:reduce){
  body[data-route="artist"] .artistCopyR49 .r49Scan,
  body[data-route="artist"] .r49DomainStack::after,
  body[data-route="artist"] .r49DomainRow > .r49DomainCopy::before,
  body[data-route="artist"] .r49DomainRow.artistAmbient .r49DomainCopy::after,
  body[data-route="artist"] .r49DomainRow.artistAmbient::after,
  body[data-route="artist"] .r49MiniGlobe,
  body[data-route="artist"] .r49CreativityVisual i,
  body[data-route="artist"] .r49SystemLine .r49Online,
  body[data-route="artist"] .r49IdentityName h1{animation:none!important}
}
