body.holyard-vibe-mix {
  --mix-accent: #f4c542;
  --mix-accent-strong: #ffd95e;
  --mix-bg: #080808;
  --mix-surface: #111111;
  --mix-surface-raised: #181818;
  --mix-text: #f7f3ea;
  --mix-muted: #bbb6ac;
  --mix-line: #3a3731;
  margin: 0;
  min-height: 100vh;
  overflow-x: hidden;
  background: var(--mix-bg);
  color: var(--mix-text);
  font-family: "Inter", "Montserrat", Arial, sans-serif;
  line-height: 1.5;
}

.holyard-vibe-mix *,
.holyard-vibe-mix *::before,
.holyard-vibe-mix *::after {
  box-sizing: border-box;
}

.holyard-vibe-mix a {
  color: inherit;
}

.holyard-vibe-mix img {
  display: block;
  max-width: 100%;
}

.holyard-vibe-mix .mix-skip-link {
  position: absolute;
  left: 1rem;
  top: 1rem;
  z-index: 1000;
  padding: 0.75rem 1rem;
  background: #ffffff;
  color: #050505;
  transform: translateY(-160%);
  transition: transform 180ms ease;
}

.holyard-vibe-mix .mix-skip-link:focus {
  transform: translateY(0);
}

.holyard-vibe-mix .mix-main {
  width: min(1180px, calc(100% - 2rem));
  margin: 0 auto;
  padding: 2rem 0 4rem;
}

.holyard-vibe-mix .mix-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(18rem, 0.65fr);
  align-items: center;
  gap: 2rem;
  min-height: 30rem;
  padding: 2.5rem 0;
  border-bottom: 1px solid var(--mix-line);
}

.holyard-vibe-mix .mix-kicker,
.holyard-vibe-mix .mix-label {
  margin: 0 0 0.55rem;
  color: var(--mix-accent);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.holyard-vibe-mix .mix-title {
  max-width: 12ch;
  margin: 0 0 1rem;
  font-size: 4.8rem;
  line-height: 0.9;
  letter-spacing: 0;
  text-transform: uppercase;
}

.holyard-vibe-mix .mix-deck {
  max-width: 44rem;
  margin: 0;
  color: var(--mix-muted);
  font-size: 1.15rem;
}

.holyard-vibe-mix .mix-hero-object {
  display: grid;
  min-height: 21rem;
  place-items: center;
  border: 1px solid var(--mix-line);
  background: #0e0e0e;
  overflow: hidden;
  position: relative;
}

.holyard-vibe-mix .mix-hero-object::before,
.holyard-vibe-mix .mix-hero-object::after {
  content: "";
  position: absolute;
  width: 12rem;
  height: 12rem;
  border: 1px solid #6d5a24;
  transform: rotate(45deg);
}

.holyard-vibe-mix .mix-hero-object::after {
  width: 7rem;
  height: 7rem;
  border-color: #a98425;
}

.holyard-vibe-mix .mix-hero-mark {
  z-index: 1;
  color: var(--mix-accent);
  font-size: 3.6rem;
  font-weight: 1000;
}

.holyard-vibe-mix .mix-section {
  padding: 2rem 0;
  border-bottom: 1px solid var(--mix-line);
}

.holyard-vibe-mix .mix-section-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.25rem;
}

.holyard-vibe-mix .mix-section h2,
.holyard-vibe-mix .mix-section h3 {
  margin: 0;
  letter-spacing: 0;
}

.holyard-vibe-mix .mix-section h2 {
  font-size: 2rem;
  line-height: 1.05;
}

.holyard-vibe-mix .mix-muted,
.holyard-vibe-mix .mix-help,
.holyard-vibe-mix .mix-song-artist {
  color: var(--mix-muted);
}

.holyard-vibe-mix .mix-status,
.holyard-vibe-mix .mix-storage-notice {
  min-height: 1.5rem;
  margin: 0.85rem 0 0;
  color: var(--mix-accent-strong);
  font-weight: 800;
}

.holyard-vibe-mix .mix-storage-notice {
  padding: 0.8rem 1rem;
  border-left: 3px solid var(--mix-accent);
  background: #17150e;
}

.holyard-vibe-mix .mix-summary-grid {
  display: grid;
  grid-template-columns: minmax(14rem, 0.72fr) minmax(0, 1.28fr);
  gap: 1.5rem;
  align-items: stretch;
}

.holyard-vibe-mix .mix-cover {
  display: flex;
  aspect-ratio: 1;
  flex-direction: column;
  justify-content: flex-end;
  padding: 1.4rem;
  border: 1px solid var(--mix-cover-border, #7d6724);
  background: var(--mix-cover-bg, #111111);
  color: var(--mix-cover-text, #f7f3ea);
  overflow: hidden;
  position: relative;
}

.holyard-vibe-mix .mix-cover::before,
.holyard-vibe-mix .mix-cover::after {
  content: "";
  position: absolute;
  right: -2.5rem;
  top: -2.5rem;
  width: 10rem;
  height: 10rem;
  border: 1px solid var(--mix-cover-border, #7d6724);
  transform: rotate(25deg);
}

.holyard-vibe-mix .mix-cover::after {
  right: 1.5rem;
  top: 1.5rem;
  width: 5rem;
  height: 5rem;
  transform: rotate(45deg);
}

.holyard-vibe-mix .mix-cover span,
.holyard-vibe-mix .mix-cover strong {
  position: relative;
  z-index: 1;
}

.holyard-vibe-mix .mix-cover span {
  font-size: 0.75rem;
  font-weight: 900;
  text-transform: uppercase;
}

.holyard-vibe-mix .mix-cover strong {
  max-width: 11ch;
  margin-top: 0.35rem;
  font-size: 2rem;
  line-height: 0.98;
  overflow-wrap: anywhere;
  text-transform: uppercase;
}

.holyard-vibe-mix [data-cover-theme="classic-holyard"] { --mix-cover-bg: #111111; --mix-cover-border: #d1a72f; --mix-cover-text: #f4c542; }
.holyard-vibe-mix [data-cover-theme="boss-mode"] { --mix-cover-bg: #1b1912; --mix-cover-border: #a77f22; --mix-cover-text: #f9d765; }
.holyard-vibe-mix [data-cover-theme="shell-di-place"] { --mix-cover-bg: #2a0d0d; --mix-cover-border: #e6533e; --mix-cover-text: #fff1e8; }
.holyard-vibe-mix [data-cover-theme="island-chill"] { --mix-cover-bg: #063f42; --mix-cover-border: #ff8f70; --mix-cover-text: #e9fffb; }
.holyard-vibe-mix [data-cover-theme="lovers-energy"] { --mix-cover-bg: #43152b; --mix-cover-border: #ff7fa6; --mix-cover-text: #fff0f6; }
.holyard-vibe-mix [data-cover-theme="roots-reflection"] { --mix-cover-bg: #16351c; --mix-cover-border: #d6ad42; --mix-cover-text: #f5f0d5; }
.holyard-vibe-mix [data-cover-theme="late-night-drive"] { --mix-cover-bg: #101a34; --mix-cover-border: #5bd6dd; --mix-cover-text: #effcff; }
.holyard-vibe-mix [data-cover-theme="fresh-start"] { --mix-cover-bg: #edf2ea; --mix-cover-border: #39874e; --mix-cover-text: #133b20; }
.holyard-vibe-mix [data-cover-theme="heartbreak-recovery"] { --mix-cover-bg: #282048; --mix-cover-border: #ed789a; --mix-cover-text: #fff1f5; }
.holyard-vibe-mix [data-cover-theme="weekend-heat"] { --mix-cover-bg: #4d1339; --mix-cover-border: #ffd448; --mix-cover-text: #fff7d7; }
.holyard-vibe-mix [data-cover-theme="focused-fearless"] { --mix-cover-bg: #171b16; --mix-cover-border: #a9e34b; --mix-cover-text: #efffd8; }

.holyard-vibe-mix .mix-controls {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  align-content: start;
}

.holyard-vibe-mix .mix-field {
  display: grid;
  gap: 0.45rem;
}

.holyard-vibe-mix .mix-field label,
.holyard-vibe-mix .mix-field legend {
  color: var(--mix-text);
  font-size: 0.82rem;
  font-weight: 900;
  text-transform: uppercase;
}

.holyard-vibe-mix .mix-field select,
.holyard-vibe-mix .mix-field input {
  width: 100%;
  min-height: 3rem;
  border: 1px solid var(--mix-line);
  border-radius: 4px;
  padding: 0.75rem 0.85rem;
  background: var(--mix-surface-raised);
  color: var(--mix-text);
  font: inherit;
}

.holyard-vibe-mix .mix-control-wide {
  grid-column: 1 / -1;
}

.holyard-vibe-mix .mix-starter-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
}

.holyard-vibe-mix .mix-button,
.holyard-vibe-mix .mix-small-button,
.holyard-vibe-mix .mix-link-button {
  min-height: 2.75rem;
  border: 1px solid #9b7f2f;
  border-radius: 4px;
  padding: 0.72rem 0.95rem;
  background: var(--mix-accent);
  color: #090909;
  cursor: pointer;
  font: inherit;
  font-size: 0.78rem;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
}

.holyard-vibe-mix .mix-button--secondary,
.holyard-vibe-mix .mix-small-button,
.holyard-vibe-mix .mix-link-button {
  border-color: var(--mix-line);
  background: #191919;
  color: var(--mix-text);
}

.holyard-vibe-mix .mix-button--danger {
  border-color: #8a403a;
  background: #2b1412;
  color: #ffd7d2;
}

.holyard-vibe-mix button:disabled {
  cursor: not-allowed;
  opacity: 0.42;
}

.holyard-vibe-mix .mix-builder-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(20rem, 0.95fr);
  gap: 1.5rem;
  align-items: start;
}

.holyard-vibe-mix .mix-catalogue-tools {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(10rem, 0.45fr);
  gap: 0.75rem;
  margin-bottom: 1rem;
}

.holyard-vibe-mix .mix-song-list,
.holyard-vibe-mix .mix-order-list {
  display: grid;
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.holyard-vibe-mix .mix-order-list {
  counter-reset: mix-order;
}

.holyard-vibe-mix .mix-order-item {
  counter-increment: mix-order;
}

.holyard-vibe-mix .mix-song-card,
.holyard-vibe-mix .mix-order-item {
  display: grid;
  grid-template-columns: 5rem minmax(0, 1fr);
  gap: 0.85rem;
  padding: 0.75rem;
  border: 1px solid var(--mix-line);
  border-radius: 8px;
  background: var(--mix-surface);
}

.holyard-vibe-mix .mix-order-item {
  grid-template-columns: 2rem 4rem minmax(0, 1fr);
}

.holyard-vibe-mix .mix-order-number::before {
  content: counter(mix-order, decimal-leading-zero);
  color: var(--mix-accent);
  font-weight: 900;
}

.holyard-vibe-mix .mix-song-art {
  width: 100%;
  aspect-ratio: 1;
  border-radius: 4px;
  object-fit: cover;
  background: #202020;
}

.holyard-vibe-mix .mix-song-body {
  min-width: 0;
}

.holyard-vibe-mix .mix-song-title {
  margin: 0;
  font-size: 1rem;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.holyard-vibe-mix .mix-song-artist {
  margin: 0.2rem 0 0.7rem;
  font-size: 0.9rem;
  overflow-wrap: anywhere;
}

.holyard-vibe-mix .mix-song-actions,
.holyard-vibe-mix .mix-order-actions,
.holyard-vibe-mix .mix-share-actions,
.holyard-vibe-mix .mix-related-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.holyard-vibe-mix .mix-small-button,
.holyard-vibe-mix .mix-link-button {
  min-height: 2.75rem;
  padding: 0.6rem 0.7rem;
  font-size: 0.7rem;
}

.holyard-vibe-mix .mix-empty,
.holyard-vibe-mix .mix-no-results,
.holyard-vibe-mix .mix-service-error,
.holyard-vibe-mix .mix-share-error {
  padding: 1.25rem;
  border: 1px solid var(--mix-line);
  background: var(--mix-surface);
  color: var(--mix-muted);
}

.holyard-vibe-mix .mix-share-panel {
  display: grid;
  gap: 0.9rem;
}

.holyard-vibe-mix .mix-manual-copy {
  display: grid;
  gap: 0.45rem;
}

.holyard-vibe-mix .mix-manual-copy input {
  width: 100%;
  min-height: 3rem;
  border: 1px solid var(--mix-accent);
  padding: 0.7rem;
  background: #121212;
  color: var(--mix-text);
  font: inherit;
}

.holyard-vibe-mix .mix-notices {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.holyard-vibe-mix .mix-notice {
  padding: 1rem;
  border-left: 3px solid var(--mix-accent);
  background: var(--mix-surface);
}

.holyard-vibe-mix .mix-notice p {
  margin: 0;
  color: var(--mix-muted);
}

.holyard-vibe-mix .mix-shared-banner {
  padding: 1rem;
  border: 1px solid var(--mix-accent);
  background: #17150e;
}

.holyard-vibe-mix .mix-loading {
  min-height: 28rem;
  display: grid;
  align-content: center;
}

.holyard-vibe-mix .mix-loading h1,
.holyard-vibe-mix .mix-service-error h1,
.holyard-vibe-mix .mix-share-error h1 {
  margin: 0.4rem 0 1rem;
  font-size: 2.8rem;
  line-height: 1;
  text-transform: uppercase;
}

.holyard-vibe-mix .mix-button:focus-visible,
.holyard-vibe-mix .mix-small-button:focus-visible,
.holyard-vibe-mix .mix-link-button:focus-visible,
.holyard-vibe-mix input:focus-visible,
.holyard-vibe-mix select:focus-visible,
.holyard-vibe-mix a:focus-visible,
.holyard-vibe-mix .nav-toggle:focus-visible {
  outline: 3px solid var(--mix-accent-strong);
  outline-offset: 3px;
}

.holyard-vibe-mix .nav {
  position: relative;
  z-index: 5;
}

.holyard-vibe-mix .nav-center.is-open {
  display: block;
}

@media (hover: hover) {
  .holyard-vibe-mix .mix-button:hover,
  .holyard-vibe-mix .mix-small-button:hover,
  .holyard-vibe-mix .mix-link-button:hover {
    border-color: var(--mix-accent-strong);
  }
}

@media (max-width: 920px) {
  .holyard-vibe-mix .mix-hero,
  .holyard-vibe-mix .mix-summary-grid,
  .holyard-vibe-mix .mix-builder-grid {
    grid-template-columns: 1fr;
  }

  .holyard-vibe-mix .mix-hero {
    min-height: auto;
  }

  .holyard-vibe-mix .mix-cover {
    max-width: 28rem;
  }
}

@media (max-width: 620px) {
  .holyard-vibe-mix .mix-main {
    width: min(100% - 1rem, 1180px);
    padding-top: 1rem;
  }

  .holyard-vibe-mix .mix-title {
    font-size: 3.2rem;
  }

  .holyard-vibe-mix .mix-hero-object {
    min-height: 15rem;
  }

  .holyard-vibe-mix .mix-controls,
  .holyard-vibe-mix .mix-catalogue-tools,
  .holyard-vibe-mix .mix-notices {
    grid-template-columns: 1fr;
  }

  .holyard-vibe-mix .mix-section-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .holyard-vibe-mix .mix-song-card,
  .holyard-vibe-mix .mix-order-item {
    grid-template-columns: 4rem minmax(0, 1fr);
  }

  .holyard-vibe-mix .mix-order-number {
    grid-column: 1 / -1;
  }

  .holyard-vibe-mix .mix-button,
  .holyard-vibe-mix .mix-share-actions .mix-button {
    width: 100%;
  }
}

@media (max-width: 390px) {
  .holyard-vibe-mix .mix-title {
    font-size: 2.65rem;
  }

  .holyard-vibe-mix .mix-cover strong {
    font-size: 1.65rem;
  }

  .holyard-vibe-mix .mix-song-actions,
  .holyard-vibe-mix .mix-order-actions,
  .holyard-vibe-mix .mix-related-links {
    align-items: stretch;
    flex-direction: column;
  }

  .holyard-vibe-mix .mix-small-button,
  .holyard-vibe-mix .mix-link-button {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .holyard-vibe-mix *,
  .holyard-vibe-mix *::before,
  .holyard-vibe-mix *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}
