/* Shared mobile layout for the public music pages. */
@media (max-width: 700px) {
  .music-site .ry-shell-header .ry-shell-bar {
    grid-template-columns: minmax(0, 1fr) auto !important;
    min-height: 0 !important;
    gap: 8px !important;
    padding: 8px 12px !important;
  }

  .music-site .ry-shell-header .ry-shell-brand {
    grid-area: 1 / 1 !important;
    font-size: clamp(12px, 3.4vw, 15px) !important;
  }

  .music-site .ry-shell-header .ry-shell-bar > .ry-shell-flags {
    grid-area: 1 / 2 !important;
    gap: 2px !important;
  }

  .music-site .ry-shell-header .ry-shell-menu { grid-row: 2 !important; }

  .music-site .music-hero-full .music-hero-backdrop {
    height: auto;
    aspect-ratio: 4 / 3;
    min-height: 0;
  }

  .music-site .music-hero-full h1 {
    font-size: clamp(1.9rem, 8.5vw, 3.1rem);
    overflow-wrap: anywhere;
  }

  .music-site .hero-copy .actions { flex-wrap: wrap; }
  .music-site :is(.music-section, .music-listen) { padding-block: clamp(32px, 8vw, 54px); }
  .music-site .latest-release-copy { min-width: 0; overflow-wrap: anywhere; }

  .music-site #lyt-gratis .swipe-shell .album-grid { align-items: start; }
  .music-site #lyt-gratis .swipe-shell .album-card { align-self: start; }
  .music-site #lyt-gratis .swipe-shell .album-tracks { min-height: 0; }
  .music-site #lyt-gratis .swipe-shell .album-heading img { max-height: 245px; }
  .music-site #lyt-gratis .swipe-shell .shareable-track {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 4px;
    align-items: center;
    padding-bottom: 0;
  }
  .music-site #lyt-gratis .swipe-shell .shareable-track > button {
    gap: 6px;
    padding-inline: 4px;
    min-width: 0;
    font-size: 14px;
  }
  .music-site #lyt-gratis .swipe-shell .shareable-track > .song-row-actions {
    padding: 0;
    gap: 2px;
  }
  .music-site #lyt-gratis .swipe-shell .song-row-actions button {
    min-width: 44px;
    min-height: 44px;
    padding: 4px;
    font-size: 12px;
  }

  .music-site .video-layout,
  .music-site .song-story-grid,
  .music-site .this-is-feature { grid-template-columns: minmax(0, 1fr); }
  .music-site .catalog-head .tools,
  .music-site .video-tools { flex-wrap: wrap; }
  .music-site .video-embed,
  .music-site .this-is-feature__embed,
  .music-site iframe { max-width: 100%; }
  .music-site .player-drawer { max-height: 78dvh; overflow-y: auto; }
  .music-site .player-inner { padding-bottom: max(6px, env(safe-area-inset-bottom)); }

  /* Keep the guide in the footer and leave content free of floating controls. */
  body:has(.music-site) .back-to-top { display: none !important; }
  body:has(.music-site) > .jr-host:not(:has(.jr-host-character[aria-expanded="true"])) {
    position: relative !important;
    inset: auto !important;
    width: fit-content;
    margin: 0 12px 12px auto;
  }
  body:has(.music-site.has-player) > .jr-host:not(:has(.jr-host-character[aria-expanded="true"])) {
    margin-bottom: 110px;
  }

  body[data-music-view] :is(main, section, iframe) { min-width: 0; max-width: 100%; }
  body[data-music-view] :is(input[type="search"], select) { max-width: 100%; font-size: 16px; }
  body[data-music-view] :is(dialog, [role="dialog"]) {
    max-width: calc(100% - 16px);
    max-height: calc(100dvh - 16px);
    overscroll-behavior: contain;
  }
  body[data-music-view="youtube"] .listeningLayout { grid-template-columns: minmax(0, 1fr); }
  body[data-music-view="youtube"] :is(.sectionHead, .tools, .filters, .searchTools, .videoBottom) {
    flex-wrap: wrap;
  }
  body[data-music-view="jukebox"] :is(.pagebar, .collectionbar, .status-row) { flex-wrap: wrap; }
  body[data-music-view="jukebox"] :is(.machine, .display, .screenbar) { min-width: 0; }
  body[data-music-view="radio"] :is(.viewTabs, .advancedFilters, .listeningTools) { flex-wrap: wrap; }
  body[data-music-view="radio"] :is(.retroText, .stationChoice, .pickerList) { min-width: 0; }
  body[data-music-view="relax"] :is(.heroActions, .localTools, .playerExtras, .services) {
    flex-wrap: wrap;
  }
  body[data-music-view="relax"] :is(.trackTitle, .nowInfo) {
    min-width: 0;
    overflow-wrap: anywhere;
  }
}
