/* ZUTOMAYO CORE SEEKER — black / purple / red fashion palette v1888
   Black = field, purple = structure, red = a thin signal. Accent colors never become a broad fill. */
:root {
  --zcs-structure-v1874: #783888;
  --zcs-structure-bright-v1874: #a655b5;
  --zcs-structure-deep-v1874: #2d1832;
  --zcs-structure-rgb-v1874: 120, 56, 136;
  --zcs-structure-ink-v1879: #b86bc4;
  --zcs-meaning-v1874: #d83848;
  --zcs-meaning-soft-v1874: #d83848;
  --zcs-sound-v1874: var(--zcs-meaning-v1874);
  --zcs-sound-soft-v1874: var(--zcs-meaning-soft-v1874);
  --zcs-sound-deep-v1874: var(--zcs-structure-deep-v1874);
  --zcs-warning-v1874: #d83848;
  --zcs-sound-rgb-v1874: var(--zcs-meaning-rgb-v1874);
  --zcs-meaning-rgb-v1874: 216, 56, 72;
  --signal-acid-v1736: var(--zcs-meaning-v1874);
  --signal-coral-v1736: var(--zcs-meaning-v1874);
  --shadow-line: 0 1px 0 rgba(var(--zcs-meaning-rgb-v1874), 0.16);
}

/* The frame carries the purple-to-red cord as a narrow signal. */
.site-header::after {
  background: linear-gradient(
    90deg,
    var(--zcs-structure-v1874) 0%,
    var(--zcs-structure-bright-v1874) 42%,
    var(--zcs-meaning-v1874) 100%
  );
  box-shadow: 0 0 16px rgba(var(--zcs-meaning-rgb-v1874), 0.14);
}

.main-nav .view-button[aria-current="page"] {
  border-color: var(--zcs-structure-bright-v1874);
  background: var(--zcs-structure-v1874);
  color: #fff;
}

.main-nav .site-menu-button-v143:hover,
.main-nav .site-menu-button-v143:focus-visible,
.page-scroll-button:hover,
.page-scroll-button:focus-visible {
  border-color: var(--zcs-structure-bright-v1874);
  background: var(--zcs-structure-deep-v1874);
  color: #fff;
}

.site-footer {
  border-top-color: var(--zcs-structure-v1874);
}

@media (max-width: 760px) {
  .mobile-tabbar-v14 button.is-active,
  .mobile-tabbar-v14 button:hover,
  .mobile-tabbar-v152 button.is-active,
  .mobile-tabbar-v152 button:hover {
    background: var(--zcs-structure-v1874);
    color: #fff;
  }
}

/* Red is reserved for a chosen meaning, connection, or result. */
.list-card.is-active,
.home-feed-item-v14:hover,
.timeline-item-v163.is-timeline-focus-v163,
.timeline-capsule-chip-v163:hover,
.timeline-capsule-chip-v163:focus-visible,
.collection-row-v1725:hover,
.collection-row-v1725:focus-within {
  border-color: var(--zcs-meaning-v1874) !important;
  box-shadow: inset 3px 0 0 var(--zcs-meaning-v1874);
}

.home-route-hub-v1716 {
  --route-teal-v1718: var(--zcs-structure-v1874);
  --route-acid-v1718: var(--zcs-structure-v1874);
  --route-coral-v1718: var(--zcs-meaning-v1874);
  box-shadow:
    inset 4px 0 0 var(--zcs-structure-v1874),
    inset -4px 0 0 var(--zcs-meaning-v1874);
}

.home-route-search-v1716::after {
  background: var(--zcs-meaning-v1874);
}

.home-route-search-v1716:hover,
.site-menu-route-grid-v143 button:hover,
.site-menu-route-grid-v143 button:focus-visible,
.global-search-result:hover,
.global-search-result:focus-visible,
.lyrics-link-v1712:hover,
.lyrics-link-v1712:focus-visible,
.consideration-quick-link-v1712:hover,
.consideration-quick-link-v1712:focus-visible,
.portal-lyrics-link-v1712:hover,
.portal-lyrics-link-v1712:focus-visible {
  border-color: var(--zcs-meaning-v1874) !important;
}

.home-route-button-v1716:hover,
.home-route-button-v1716:focus-visible {
  border-color: var(--zcs-meaning-v1874);
  box-shadow:
    4px 4px 0 rgba(0, 0, 0, 0.48),
    inset 4px 0 0 var(--zcs-meaning-v1874);
}

.home-route-button-v1716:active {
  box-shadow: inset 4px 0 0 var(--zcs-meaning-v1874);
}

@media (max-width: 760px) {
  .home-route-hub-v1716 {
    box-shadow:
      inset 3px 0 0 var(--zcs-structure-v1874),
      inset -3px 0 0 var(--zcs-meaning-v1874);
  }

  .home-route-button-v1716:hover,
  .home-route-button-v1716:focus-visible,
  .home-route-button-v1716:active {
    box-shadow: inset 0 -3px 0 var(--zcs-meaning-v1874);
  }
}

/* PIAPRO discovery keeps a black field, purple structure, and a thin red action signal. */
.off-vocal-discovery-v1841 {
  border-color: rgba(var(--zcs-structure-rgb-v1874), 0.48);
  background:
    radial-gradient(circle at 0% 0%, rgba(120, 56, 136, 0.34), transparent 40%),
    radial-gradient(circle at 100% 100%, rgba(var(--zcs-structure-rgb-v1874), 0.18), transparent 38%),
    linear-gradient(145deg, #120d13 0%, #090b0f 64%, #100a0f 100%);
  box-shadow:
    inset 5px 0 0 var(--zcs-structure-v1874),
    inset -1px 0 0 rgba(var(--zcs-structure-rgb-v1874), 0.54),
    0 18px 45px rgba(0, 0, 0, 0.2);
}

.off-vocal-discovery-v1841::before {
  border-color: rgba(var(--zcs-structure-rgb-v1874), 0.28);
}

.off-vocal-kicker-v1841,
.off-vocal-profile-link-v1841 span,
.off-vocal-track-head-v1841 small,
.off-vocal-wave-v1841 span:nth-child(3n) {
  color: var(--zcs-structure-ink-v1879);
}

.off-vocal-kicker-v1841::before {
  background: linear-gradient(90deg, var(--zcs-structure-v1874), var(--zcs-structure-bright-v1874));
}

.off-vocal-track-v1841 {
  border-color: rgba(var(--zcs-structure-rgb-v1874), 0.42);
}

.off-vocal-license-v1841::before {
  border-color: rgba(var(--zcs-structure-rgb-v1874), 0.62);
  color: var(--zcs-structure-ink-v1879);
}

.off-vocal-primary-v1841 {
  border-color: rgba(var(--zcs-structure-rgb-v1874), 0.72);
  background: #141014;
  color: #f2e8ef;
  box-shadow: inset 3px 0 0 var(--zcs-meaning-v1874);
}

.off-vocal-primary-v1841:hover,
.off-vocal-primary-v1841:focus-visible {
  border-color: var(--zcs-meaning-v1874);
  background: #1c141c;
  color: #f2e8ef;
}

.off-vocal-random-v1841 {
  border-color: rgba(var(--zcs-structure-rgb-v1874), 0.62);
  background: #141014;
}

.off-vocal-random-v1841:hover,
.off-vocal-random-v1841:focus-visible {
  border-color: var(--zcs-meaning-v1874);
  background: #1c141c;
}

/* ATLAS actions use the same fashion palette: red is a line, never a panel. */
.atlas-song-profile-v1838,
.atlas-full-article-v1838 {
  --atlas-red-v1838: var(--zcs-meaning-v1874);
  --atlas-purple-v1838: var(--zcs-structure-bright-v1874);
}

.atlas-profile-actions-v1838 .atlas-profile-primary-v1838 {
  border-color: #684160;
  background: #141014;
  color: #f2e8ef;
  box-shadow: inset 3px 0 0 var(--zcs-meaning-v1874);
}

.atlas-profile-actions-v1838 .atlas-profile-primary-v1838:hover,
.atlas-profile-actions-v1838 .atlas-profile-primary-v1838:focus-visible {
  border-color: var(--zcs-meaning-v1874);
  background: #1c141c;
  color: #f2e8ef;
}

.off-vocal-list-v1841:hover,
.off-vocal-list-v1841:focus-visible {
  border-color: var(--zcs-structure-bright-v1874);
  background: var(--zcs-structure-deep-v1874);
}

/* Every official channel is a peer link. Platform imagery stays intact; UI ink is unified. */
.home-official-social-list-v1713 .home-social-icon-link-v1713,
.home-official-social-list-v1713 .home-social-icon-link-v1713:visited {
  border-color: rgba(var(--zcs-structure-rgb-v1874), 0.58) !important;
  background: #1c141c !important;
  color: var(--zcs-structure-ink-v1879) !important;
}

.home-official-social-list-v1713 .home-social-icon-link-v1713:hover,
.home-official-social-list-v1713 .home-social-icon-link-v1713:focus-visible {
  border-color: var(--zcs-structure-bright-v1874) !important;
  background: var(--zcs-structure-deep-v1874) !important;
  color: var(--zcs-structure-ink-v1879) !important;
}

.home-official-social-list-v1713 .stationhead-broadcast-mark-v1729 {
  border-color: var(--zcs-structure-v1874) !important;
  background: #0c0c0c !important;
  color: var(--zcs-structure-ink-v1879) !important;
}

.home-official-social-list-v1713 .home-social-copy-v1729 small {
  color: var(--zcs-structure-ink-v1879) !important;
}

/* The public player is rights-gated. These rules style only a future approved state
   and the existing localhost validation route; they do not change any JS flag. */
.off-vocal-play-v1842 {
  border-color: var(--zcs-sound-v1874);
  background: linear-gradient(135deg, var(--zcs-sound-deep-v1874), var(--zcs-structure-v1874));
  color: #fff;
  box-shadow: 0 8px 22px rgba(var(--zcs-sound-rgb-v1874), 0.2);
}

.off-vocal-play-v1842:hover,
.off-vocal-play-v1842:focus-visible {
  border-color: var(--zcs-sound-soft-v1874);
}

.off-vocal-player-v1842 {
  border-color: rgba(120, 56, 136, 0.9);
  background:
    radial-gradient(circle at 0 0, rgba(120, 56, 136, 0.28), transparent 44%),
    linear-gradient(145deg, rgba(20, 16, 20, 0.985), rgba(7, 8, 11, 0.985));
  box-shadow:
    0 20px 56px rgba(0, 0, 0, 0.62),
    inset 4px 0 0 var(--zcs-structure-v1874);
}

body.is-off-vocal-player-playing-v1842 .off-vocal-player-v1842 {
  border-color: rgba(var(--zcs-sound-rgb-v1874), 0.86);
  box-shadow:
    0 20px 56px rgba(0, 0, 0, 0.62),
    0 0 30px rgba(var(--zcs-sound-rgb-v1874), 0.26),
    inset 4px 0 0 var(--zcs-sound-v1874);
}

.off-vocal-player-play-v1842 {
  border-color: var(--zcs-sound-v1874);
  background: var(--zcs-sound-v1874);
  color: #0c0c0c;
}

.off-vocal-player-play-v1842:hover,
.off-vocal-player-play-v1842:focus-visible {
  border-color: var(--zcs-sound-soft-v1874);
  background: var(--zcs-sound-soft-v1874);
  color: #0c0c0c;
}

.off-vocal-player-next-v1842:hover,
.off-vocal-player-next-v1842:focus-visible,
.off-vocal-player-close-v1842:hover,
.off-vocal-player-close-v1842:focus-visible {
  border-color: var(--zcs-meaning-v1874);
  background: var(--zcs-structure-deep-v1874);
  color: #fff;
}

.off-vocal-player-copy-v1842 p,
.off-vocal-player-source-v1842 {
  color: var(--zcs-sound-soft-v1874);
}

.off-vocal-player-progress-v1842 {
  border-top-color: rgba(var(--zcs-sound-rgb-v1874), 0.34);
}

.off-vocal-player-progress-v1842 input {
  accent-color: var(--zcs-sound-v1874);
}

/* Video playback receives the same red action signal without repainting MV browsing. */
.portal-hero-stage-v163 .portal-hero-bg-link-v163 {
  -webkit-tap-highlight-color: rgba(var(--zcs-sound-rgb-v1874), 0.22);
}

.portal-hero-stage-v163 > .portal-hero-bg-link-v163[data-song-hero-play-v1840="ready"]:hover,
.portal-hero-stage-v163 > .portal-hero-bg-link-v163[data-song-hero-play-v1840="ready"]:focus-visible {
  outline-color: var(--zcs-sound-v1874);
  box-shadow: inset 0 0 0 2px rgba(var(--zcs-sound-rgb-v1874), 0.68);
}

.song-portal-hero-v163 .portal-primary-link {
  border-color: var(--zcs-sound-v1874) !important;
  background: var(--zcs-sound-deep-v1874) !important;
  color: #fff !important;
}

.song-portal-hero-v163 .portal-primary-link:hover,
.song-portal-hero-v163 .portal-primary-link:focus-visible {
  border-color: var(--zcs-sound-soft-v1874) !important;
  background: var(--zcs-sound-v1874) !important;
  color: #0c0c0c !important;
}

body.is-player-open .youtube-player-shell,
body.is-player-open.is-youtube-player-minimized-v1712 .youtube-player-shell {
  border-color: rgba(var(--zcs-structure-rgb-v1874), 0.78);
  box-shadow:
    0 18px 48px rgba(0, 0, 0, 0.58),
    0 0 18px rgba(var(--zcs-structure-rgb-v1874), 0.16),
    inset 2px 0 0 rgba(var(--zcs-meaning-rgb-v1874), 0.52);
}

body.is-player-open .youtube-player-topline .eyebrow {
  color: var(--zcs-sound-soft-v1874);
}

.youtube-player-next-v1731:hover,
.youtube-player-next-v1731:focus-visible {
  border-color: var(--zcs-sound-soft-v1874);
  background: var(--zcs-sound-deep-v1874);
  color: #fff;
}

.youtube-player-minimize-v1712:hover,
.youtube-player-minimize-v1712:focus-visible,
.youtube-player-close:hover,
.youtube-player-close:focus-visible {
  border-color: var(--zcs-meaning-v1874);
  background: var(--zcs-structure-deep-v1874);
  color: #fff;
}

/* V1889 — remove the old yellow-green home signal and calm the YouTube player frame. */
.home-stat-strip-v162 .home-latest-mv-tile-v162 {
  border-color: rgba(var(--zcs-structure-rgb-v1874), 0.48);
  background: rgba(20, 16, 20, 0.52);
}

.home-stat-strip-v162 .home-latest-mv-tile-v162:hover,
.home-stat-strip-v162 .home-latest-mv-tile-v162:focus-visible {
  border-color: var(--zcs-structure-bright-v1874);
  background: rgba(36, 24, 36, 0.68);
}

.home-stat-strip-v162 .home-latest-mv-tile-v162::before {
  background:
    radial-gradient(circle at 86% 18%, rgba(var(--zcs-structure-rgb-v1874), 0.2), transparent 34%),
    linear-gradient(0deg, rgba(12, 12, 12, 0.92), rgba(20, 12, 20, 0.3) 68%);
}

.home-stat-strip-v162 .home-latest-mv-tile-v162::after {
  border-color: rgba(var(--zcs-structure-rgb-v1874), 0.28);
}

.home-stat-strip-v162 .home-latest-mv-tile-v162 :is(dt, .home-stat-label-v162) {
  color: var(--zcs-structure-ink-v1879);
}

.youtube-autoplay-fallback-v1732 {
  border-color: #684160;
  background: rgba(20, 16, 20, 0.94);
  color: #f2e8ef;
  box-shadow: inset 2px 0 0 rgba(var(--zcs-meaning-rgb-v1874), 0.52);
}

.youtube-autoplay-fallback-v1732:hover,
.youtube-autoplay-fallback-v1732:focus-visible {
  border-color: var(--zcs-structure-bright-v1874);
  background: #241824;
  color: #f2e8ef;
}

@media (prefers-reduced-motion: reduce) {
  body.is-off-vocal-player-playing-v1842 .off-vocal-player-v1842,
  body.is-player-open .youtube-player-shell {
    transition: none;
  }
}
