/* Intrinsic layout refinements. Load after the page-specific stylesheets. */
:where(.inner-album,.inner-detail-info,.inner-artist-profile,.inner-contact-card,
  .release-triptych,.dna-layout,.listen-desk,.listen-catalogue,.nft-grid,
  .collection-vision,.nft-detail-grid,.portrait-campaign-grid,.sacra-series-grid,
  .world-hero-grid,.world-platforms,.world-studio,.studio-overview-grid,
  .studio-lab-grid,.studio-brand-grid,.studio-form-row,.clips-layout,
  .clips-edit-grid,.lyric-workspace,.ops-content-grid) > * {
  min-inline-size: 0;
}
:where(.inner-search,.market-search,.listen-search,.studio-form,.lyric-brief) {
  min-inline-size: 0;
}
:where(.studio-form,.lyric-brief) fieldset {
  min-inline-size: 0;
  max-inline-size: 100%;
}
:where(.studio-app,.listen-room,.vinyl-deck) audio {
  max-inline-size: 100%;
}
:where(.nft-detail-copy dd,.inner-channel p,.world-language-list a,
  .ops-contact-details a,.studio-sync-box p,.studio-data-box p) {
  overflow-wrap: anywhere;
}
:where(.listen-record-actions,.studio-actions,.nft-detail-actions) > * {
  max-inline-size: 100%;
}
.nft-card h3 a,.nft-card-bottom,.nft-card-info {
  min-inline-size: 0;
}
.nft-card h3 a {
  overflow-wrap: anywhere;
}
.nft-card h3 i {
  flex-shrink: 0;
}
.studio-dialog {
  max-inline-size: calc(100% - 1.5rem);
  max-block-size: calc(100svh - 1.5rem);
  max-block-size: calc(100dvh - 1.5rem);
  overscroll-behavior: contain;
  scroll-padding-block: 1.5rem;
}

@media (max-width: 760px) {
  /* A card gets its own row when the readable minimum no longer fits. */
  .listen-catalogue,.nft-grid,.market-catalogue .nft-grid,.nft-related .nft-grid {
    grid-template-columns: repeat(auto-fit,minmax(min(100%,16rem),1fr));
  }
  .market-search,.market-catalogue .market-search {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
  }
  .market-search > label,.market-catalogue .market-search > label {
    flex: 1 1 10rem;
    min-inline-size: 0;
    max-inline-size: 100%;
  }
  .market-search input,.market-search select,
  .market-catalogue .market-search input,.market-catalogue .market-search select {
    width: 100%;
    min-inline-size: 0;
    min-block-size: 44px;
    font-size: 16px;
  }
  .listen-search input,.inner-search input,
  .studio-app .studio-list-tools input,.studio-app .studio-list-tools select {
    font-size: 16px !important;
    min-block-size: 44px;
  }
  .studio-list-tools,.studio-topbar > div,.studio-welcome > div > div {
    flex-wrap: wrap;
  }
  .studio-list-tools > label:first-child {
    flex: 1 1 12rem;
    min-inline-size: 0;
  }
  .studio-list-tools > label:last-child {
    flex: 1 1 9rem;
    width: auto;
    min-inline-size: 0;
  }
  .studio-box-heading,.lyric-editor-bar > div {
    flex-wrap: wrap;
  }
  .lyric-editor-bar > div {
    min-inline-size: 0;
  }
  .studio-dialog-header,.clips-project-heading > div {
    min-inline-size: 0;
  }
  .studio-dialog-header > div {
    min-inline-size: 0;
    overflow-wrap: anywhere;
  }
  .clips-local-badge {
    white-space: normal;
    line-height: 1.5;
  }
  .clips-local-badge i {
    flex-shrink: 0;
  }
  .nft-card-info,.nft-card-bottom {
    flex-wrap: wrap;
    gap: 8px 12px;
    font-size: 10px;
    line-height: 1.5;
  }
  .market-catalogue .nft-card-info,.market-catalogue .nft-card-bottom {
    font-size: 10px;
  }
  .nft-card-bottom > a {
    display: inline-flex;
    align-items: center;
    min-block-size: 44px;
    max-inline-size: none;
    text-align: start;
  }
  .nft-detail-actions :is(button,a),.nft-detail summary,
  .listen-outro > a,.footer-bottom :is(button,a) {
    min-block-size: 44px;
    display: inline-flex;
    align-items: center;
  }
  .nft-detail summary {
    display: list-item;
    padding-block: 12px;
    line-height: 1.6;
  }
  .inner-channel h2 {
    min-inline-size: 0;
    overflow-wrap: anywhere;
  }
  .inner-channel > p {
    overflow-wrap: anywhere;
  }
  .footer-top,.footer-bottom,.world-footer {
    min-inline-size: 0;
  }
  .footer-top > *,.footer-bottom > *,.world-footer > * {
    max-inline-size: 100%;
  }
  .footer-top > a,.world-footer > a {
    white-space: normal;
    overflow-wrap: anywhere;
  }
  .studio-player {
    bottom: max(10px,env(safe-area-inset-bottom));
  }
}

@media (max-width: 420px) {
  .inner-contact-card-copy h2 {
    font-size: 19vw;
  }
  .listen-intro-copy {
    grid-template-columns: minmax(0,1fr);
    gap: 16px;
  }
  .listen-intro-copy a {
    max-width: none;
    min-block-size: 44px;
    font-size: 10px;
  }
  .listen-transport-buttons {
    flex-wrap: wrap;
    width: 100%;
  }
  .listen-transport-buttons .listen-toggle {
    flex: 1 1 7rem;
    min-inline-size: 0;
  }
  .editorial-caption {
    flex-wrap: wrap;
    gap: 8px 20px;
  }
  .editorial-caption > span:first-child {
    max-width: none;
    flex: 1 1 12rem;
  }
  .editorial-caption > span:last-child {
    white-space: normal;
  }
  .nft-card h3,.market-catalogue .nft-card h3 {
    font-size: clamp(26px,8vw,34px);
  }
  .sacra-edition-strip {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .studio-topbar > div {
    gap: 8px 12px;
  }
  .studio-topbar .studio-search-trigger {
    flex-basis: 100%;
    max-width: none;
  }
  .studio-box-heading {
    gap: 12px;
  }
}
