﻿.releases-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 1.25rem;
    justify-content: center;
    grid-column-start: span 2;
}

.release-card {
    flex: 1 1 calc(33.333% - 1.25rem);
    max-width: 380px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .5rem;
    margin-top: 1rem;
}

@media (max-width:900px) {
    .release-card {
        flex-basis: calc(50% - 1.25rem);
    }
}

@media (max-width:600px) {
    .release-card {
        flex-basis: 100%;
    }
}

.album-img {
    width: 100%;
    aspect-ratio: 1/1;
    object-fit: cover;
    border-radius: 16px;
    box-shadow: 0 8px 20px rgba(0,0,0,.35);
}

.release-title {
    margin: .35rem 0 0;
    font-weight: 600;
    text-align: center;
}

.release-info {
    margin: .35rem 0 0;
    font-weight: 600;
    text-align: center;
    color: var(--muted);
}

.listen-btn {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    display: inline-block;
    margin-top: .25rem;
    padding: 1rem 2rem;
    border: 2px solid var(--muted);
    border-radius: 10px;
    text-align: center;
    color: var(--muted);
    background: transparent;
    transition: border-color .2s ease, color .2s ease, transform .1s ease;
    text-decoration: none;
}

    .listen-btn::before {
        content: "";
        position: absolute;
        inset: -15px;
        background: var(--fg);
        transform: scaleX(0.001);
        transform-origin: left;
        transition: transform .25s ease;
        z-index: -1;
        border-radius: inherit;
    }

    .listen-btn:hover,
    .listen-btn:focus-visible {
        color: #000;
        border-color: var(--fg);
    }

        .listen-btn:hover::before,
        .listen-btn:focus-visible::before {
            transform: scaleX(1);
        }

    .listen-btn:active {
        transform: translateY(1px);
    }

@media (prefers-reduced-motion: reduce) {
    .listen-btn::before {
        transition: none;
    }
}

.discography {
    display: grid;
    grid-column-start: span 2;
    width: 100%;
    gap: 1.5rem;
}

.album-detail {
    position: relative;
    border-radius: 16px;
    padding: 12px;
    overflow: hidden;
    isolation: isolate;
    display: grid;
    grid-template-columns: 300px 300px;
    grid-template-rows: auto auto;
    grid-template-areas:
        "img info"
        "img list";
    align-items: center;
    column-gap: 1.25rem;
    justify-content: center;
    justify-items: center;
    gap: 1rem;
    width: 100%;
    margin: 0 auto;
    background-image: linear-gradient(rgba(0,0,0,.8), rgba(0,0,0,.9)), var(--cover);
    background-size: 165% 165%, 165%;
    background-position: center, center;
    background-repeat: no-repeat, no-repeat;
    background-clip: padding-box, padding-box;
}

.release-card {
    grid-column: 1;
    grid-column-start: span 2;
    background: rgba(0,0,0,.25);
    padding: 12px;
    backdrop-filter: blur(2px);
    border-radius: 20px;
}

.tracklist {
    width: 100%;
    margin: .5rem 0 0;
    padding-left: 1.25rem;
    color: var(--muted);
}

    .tracklist li {
        margin: .15rem 0;
    }

.tracklist-section {
    grid-column: 2;
}

.album-detail-bottom {
    position: relative;
    border-radius: 20px;
    padding: 12px;
    overflow: hidden;
    isolation: isolate;
    display: grid;
    grid-row: 2;
}

@media (max-width: 800px) {
    .album-detail {
        grid-template-columns: 1fr;
        grid-template-areas:
            "card"
            "list";
    }
}