/* Mobile adaptation and payload-safe page polish. */
@media (max-width: 768px) {
    :root {
        --mobile-sticky-top: 72px;
    }

    .lyrics-tools,
    .merch-tools,
    .discography-tools {
        position: sticky;
        top: var(--mobile-sticky-top);
        z-index: 40;
        background: rgba(28, 28, 28, 0.94);
        border-color: rgba(200, 149, 108, 0.22);
        box-shadow: 0 14px 34px rgba(0, 0, 0, 0.28);
        backdrop-filter: blur(16px);
        -webkit-backdrop-filter: blur(16px);
    }

    .lyrics-card,
    .merch-card,
    .album-card,
    .release-track-link {
        scroll-margin-top: calc(var(--mobile-sticky-top) + 96px);
    }

    .song-reader-toolbar {
        display: flex;
        flex-wrap: nowrap;
        gap: 8px;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .song-reader-toolbar::-webkit-scrollbar {
        display: none;
    }

    .song-reader-group {
        display: flex;
        flex: 0 0 auto;
    }

    .song-reader-btn {
        flex: 0 0 auto;
        width: auto;
        min-width: 54px;
        min-height: 42px;
        white-space: nowrap;
    }

    .song-reader-btn--listen {
        margin-left: 0;
    }

    .press-material-grid,
    .lyrics-index,
    .merch-grid,
    .release-guide-grid,
    .privacy-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .press-link-card,
    .press-material-card,
    .lyrics-index-link,
    .release-guide-card {
        min-width: 0;
    }

    .platform-stage {
        padding-top: 32px;
        padding-bottom: 24px;
    }

    .lyrics-library {
        padding-top: 32px;
        padding-bottom: 28px;
    }

    .platform-groups {
        gap: 26px;
    }

    .platform-grid--listen {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .platform-grid--listen .platform-link:nth-child(3n + 2),
    .platform-grid--listen .platform-link:nth-child(3n + 3) {
        border-left: 0;
    }

    .platform-grid--listen .platform-link:nth-child(even) {
        border-left: 1px solid var(--border);
    }

    .platform-grid--listen .platform-link:nth-last-child(-n + 3) {
        border-bottom: 1px solid var(--border);
    }

    .platform-grid--listen .platform-link:nth-last-child(-n + 2) {
        border-bottom: 0;
    }

    .platform-link {
        min-height: 62px;
        gap: 9px;
        padding: 12px 10px;
    }

    .platform-grid--social .platform-link {
        min-height: 66px;
    }

    .platform-name {
        font-size: 0.76rem;
    }

    .platform-arrow {
        display: none;
    }

    .hero-link,
    .merch-btn,
    .filter-btn,
    .merch-filter-btn,
    .lyrics-filter-btn,
    .lyrics-filter-reset,
    .album-page-link,
    .album-action,
    .press-link-card,
    .press-download-card,
    .press-material-card,
    .release-guide-card,
    .lyrics-card-page,
    .lyrics-card-back,
    .hero-link span,
    .merch-btn,
    .album-action,
    .platform-name,
    .merch-title,
    .merch-meta,
    .press-link-card span,
    .press-download-card b,
    .press-download-card span,
    .press-request-card h3,
    .press-request-card p,
    .privacy-card h2,
    .release-guide-card b,
    .release-guide-card small,
    .lyrics-index-link b,
    .lyrics-index-link small {
        overflow-wrap: break-word;
        hyphens: auto;
    }

    .press-download-card[href],
    .press-material-card[href],
    .footer-legal,
    .song-share-btn {
        overflow-wrap: anywhere;
    }
}

@media (min-width: 390px) and (max-width: 768px) {
    .merch-bundle-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .merch-bundle-card--accent {
        grid-column: 1 / -1;
    }
}

@media (max-width: 389px) {
    :root {
        --mobile-sticky-top: 68px;
    }

    .lyrics-tools,
    .merch-tools,
    .discography-tools {
        position: static;
        top: auto;
        box-shadow: none;
    }

    .press-link-grid,
    .press-material-grid,
    .lyrics-index,
    .merch-grid,
    .merch-bundle-grid,
    .release-guide-grid,
    .privacy-grid {
        grid-template-columns: 1fr;
    }

    .platform-stage {
        padding-inline: 14px;
    }

    .platform-link {
        min-height: 58px;
    }

}
