/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* Components/Layout/MainLayout.razor.css */

/*.shell {
    position: relative;
    z-index: 1;
    width: min(1100px, 92vw);
    margin: 22px auto 28px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}*/

/* Appbar */
/*.appbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px;
    border-radius: var(--radius);
    border: 1px solid var(--stroke);
    background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(0,0,0,.18));
    box-shadow: var(--shadow);
    backdrop-filter: blur(10px);
}

.brand {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.brand-mark {
    width: 44px;
    height: 44px;
    border-radius: 16px;
    display: grid;
    place-items: center;
    font-weight: 900;
    font-size: 18px;
    background: linear-gradient(135deg, rgba(124,92,255,.85), rgba(85,167,255,.70));
    border: 1px solid rgba(255,255,255,.14);
    box-shadow: 0 16px 40px rgba(124,92,255,.18);
}

.brand-text {
    min-width: 0;
}

.brand-name {
    font-weight: 900;
    letter-spacing: -.2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.brand-sub {
    margin-top: 2px;
    font-size: 12px;
    color: var(--muted);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}*/

/* Top actions */
/*.app-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: nowrap;
}

@media (max-width: 520px) {
    .app-actions {
        gap: 0;
        border: 1px solid rgba(255,255,255,.14);
        background: rgba(0,0,0,.18);
        border-radius: 14px;
        padding: 4px;
    }

        .app-actions .btn {
            border-radius: 12px;
            border-color: transparent;
            background: transparent;
            box-shadow: none;
            padding: 9px 10px;
            min-width: 0;
            white-space: nowrap;
        }

            .app-actions .btn + .btn {
                border-left: 1px solid rgba(255,255,255,.10);
            }

            .app-actions .btn:hover {
                transform: none;
                background: rgba(255,255,255,.08);
            }
}*/

/* Body container */
/*.content {
    display: block;
    min-width: 0;
}*/

/* Footer (always visible because it�s in layout) */
/*.site-footer {
    border-radius: var(--radius);
    border: 1px solid var(--stroke);
    background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(0,0,0,.18));
    box-shadow: var(--shadow);
    overflow: hidden;
}

.site-footer-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px;
    flex-wrap: wrap;
}

.footer-left {
    min-width: 0;
}

.footer-brand {
    display: flex;
    align-items: center;
    gap: 10px;
}

.footer-mark {
    width: 38px;
    height: 38px;
    border-radius: 14px;
    display: grid;
    place-items: center;
    font-weight: 900;
    background: rgba(124,92,255,.20);
    border: 1px solid rgba(255,255,255,.14);
}

.footer-name {
    font-weight: 900;
}

.footer-madeby {
    color: var(--muted);
    font-size: 12px;
    margin-top: 2px;
}

.footer-strong {
    color: rgba(255,255,255,.92);
}

.footer-copy {
    margin-top: 8px;
    color: var(--muted);
    font-size: 12px;
}

.footer-links {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.footer-link {
    font-weight: 900;
    font-size: 12px;
    color: rgba(255,255,255,.82);
    padding: 8px 10px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(0,0,0,.14);
}

.footer-dot {
    opacity: .65;
}

@media (max-width: 520px) {
    .site-footer-inner {
        gap: 10px;
    }
}*/
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-jcj8ijtd29] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    color: white;
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.1);
}

.navbar-toggler:checked[b-jcj8ijtd29] {
    background-color: rgba(255, 255, 255, 0.5);
}

.top-row[b-jcj8ijtd29] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-jcj8ijtd29] {
    font-size: 1.1rem;
}

.bi[b-jcj8ijtd29] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}

.bi-house-door-fill-nav-menu[b-jcj8ijtd29] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E");
}

.bi-plus-square-fill-nav-menu[b-jcj8ijtd29] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E");
}

.bi-list-nested-nav-menu[b-jcj8ijtd29] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E");
}

.nav-item[b-jcj8ijtd29] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-jcj8ijtd29] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-jcj8ijtd29] {
        padding-bottom: 1rem;
    }

    .nav-item[b-jcj8ijtd29]  .nav-link {
        color: #d7d7d7;
        background: none;
        border: none;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
        width: 100%;
    }

.nav-item[b-jcj8ijtd29]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

.nav-item[b-jcj8ijtd29]  .nav-link:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

.nav-scrollable[b-jcj8ijtd29] {
    display: none;
}

.navbar-toggler:checked ~ .nav-scrollable[b-jcj8ijtd29] {
    display: block;
}

@media (min-width: 641px) {
    .navbar-toggler[b-jcj8ijtd29] {
        display: none;
    }

    .nav-scrollable[b-jcj8ijtd29] {
        /* Never collapse the sidebar for wide screens */
        display: block;

        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-mqt3zikp55],
.components-reconnect-repeated-attempt-visible[b-mqt3zikp55],
.components-reconnect-failed-visible[b-mqt3zikp55],
.components-pause-visible[b-mqt3zikp55],
.components-resume-failed-visible[b-mqt3zikp55],
.components-rejoining-animation[b-mqt3zikp55] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-mqt3zikp55],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-mqt3zikp55],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-mqt3zikp55],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-mqt3zikp55],
#components-reconnect-modal.components-reconnect-retrying[b-mqt3zikp55],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-mqt3zikp55],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-mqt3zikp55],
#components-reconnect-modal.components-reconnect-failed[b-mqt3zikp55],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-mqt3zikp55] {
    display: block;
}


#components-reconnect-modal[b-mqt3zikp55] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-mqt3zikp55 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-mqt3zikp55 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-mqt3zikp55 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-mqt3zikp55]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-mqt3zikp55 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-mqt3zikp55 {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-mqt3zikp55 {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-mqt3zikp55 {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-mqt3zikp55] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-mqt3zikp55] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-mqt3zikp55] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-mqt3zikp55] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-mqt3zikp55] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-mqt3zikp55] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-mqt3zikp55] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-mqt3zikp55 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-mqt3zikp55] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-mqt3zikp55 {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/Error.razor.rz.scp.css */
.recovery-card[b-l8nrakfr83]{max-width:650px;margin:7vh auto;padding:clamp(24px,5vw,56px);text-align:center;border:1px solid rgba(255,255,255,.14);border-radius:24px;background:linear-gradient(145deg,rgba(124,92,255,.12),rgba(255,255,255,.03));color:#eef1ff}.recovery-icon[b-l8nrakfr83]{font-size:38px;color:#a99cff}.recovery-card h1[b-l8nrakfr83]{margin:20px 0 12px;font-size:clamp(25px,4vw,36px)}.recovery-card p[b-l8nrakfr83]{color:#b3b9cc;line-height:1.7}.recovery-card a[b-l8nrakfr83]{display:inline-flex;gap:9px;margin:16px 0}.recovery-card small[b-l8nrakfr83]{display:block;overflow-wrap:anywhere;color:#959bb0;font-size:11px}
/* /Components/Pages/Search.razor.rz.scp.css */
/* Pages/Search.razor.css */

/*.search-shell {
    overflow: hidden;
}

.search-head {
    padding: 14px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    border-bottom: 1px solid rgba(255,255,255,.10);
    background: rgba(0,0,0,.14);
}

.search-title {
    margin: 0;
    font-size: clamp(22px, 3.2vw, 34px);
    letter-spacing: -.8px;
    color: rgba(255,255,255,.92);
}

.search-subtitle {
    margin: 8px 0 0;
    line-height: 1.6;
}

.search-stats {
    display: flex;
    align-items: center;
    gap: 10px;
}

.pill {
    display: inline-flex;
    align-items: center;
    padding: 7px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    border: 1px solid rgba(255,255,255,.14);
    background: rgba(255,255,255,.06);
}

.search-box {
    padding: 14px;
    border-bottom: 1px solid rgba(255,255,255,.10);
}

.search-input-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px;
    border-radius: 16px;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(0,0,0,.20);
}

.search-ic {
    opacity: .85;
    font-weight: 900;
}

.search-input {
    flex: 1;
    min-width: 0;
    border: 0;
    outline: none;
    background: transparent;
    color: rgba(255,255,255,.92);
    font-size: 14px;
}

    .search-input::placeholder {
        color: rgba(255,255,255,.45);
    }

.search-filters {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 12px;
}

.chip {
    border: 1px solid rgba(255,255,255,.14);
    background: rgba(255,255,255,.05);
    color: rgba(255,255,255,.84);
    padding: 8px 10px;
    border-radius: 999px;
    font-weight: 900;
    font-size: 12px;
    cursor: pointer;
    transition: transform .15s ease, background .15s ease, border-color .15s ease;
}

    .chip:hover {
        transform: translateY(-1px);
        background: rgba(255,255,255,.08);
        border-color: rgba(255,255,255,.22);
    }

    .chip.is-active {
        border-color: rgba(46,229,157,.55);
        background: rgba(46,229,157,.14);
    }

.search-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
}*/

/* Results */
/*.results {
    display: grid;
    gap: 10px;
    padding: 14px;
}

.result-item {
    width: 100%;
    text-align: left;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px;
    border-radius: 18px;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(0,0,0,.16);
    cursor: pointer;
    color: rgba(255,255,255,.92);*/ /* ✅ prevents black button text */
    /*transition: transform .15s ease, border-color .15s ease, background .15s ease;
}

    .result-item:hover {
        transform: translateY(-1px);
        border-color: rgba(255,255,255,.22);
        background: rgba(0,0,0,.22);
    }

.result-left {
    min-width: 0;
}

.result-title {
    font-weight: 900;
    letter-spacing: -.2px;
    color: rgba(255,255,255,.92);
    overflow-wrap: anywhere;
}

.result-meta {
    margin-top: 4px;
    font-size: 12px;
    color: rgba(255,255,255,.68);
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.result-right {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
}

.badge {
    font-size: 12px;
    font-weight: 900;
    padding: 7px 10px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,.14);
    background: rgba(124,92,255,.14);
}

.chev {
    opacity: .7;
    font-size: 18px;
}*/

/* Pager */
/*.pager {
    padding: 0 14px 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.page-pills {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    justify-content: center;
}

.page-pill {
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(0,0,0,.18);
    color: rgba(255,255,255,.88);
    padding: 8px 10px;
    border-radius: 12px;
    font-weight: 900;
    font-size: 12px;
    cursor: pointer;
}

    .page-pill.is-current {
        border-color: rgba(124,92,255,.55);
        background: rgba(124,92,255,.16);
    }

.empty {
    padding: 18px 14px 20px;
    text-align: center;
}

.empty-ic {
    font-size: 34px;
}

.empty-title {
    margin-top: 10px;
    font-weight: 900;
}

.empty-sub {
    margin-top: 6px;
    color: rgba(255,255,255,.68);
}

@media (max-width: 520px) {
    .search-head {
        flex-direction: column;
        align-items: stretch;
    }

    .search-input-wrap {
        flex-direction: column;
        align-items: stretch;
    }

    .pager {
        flex-direction: column;
        align-items: stretch;
    }

    .page-pills {
        justify-content: flex-start;
    }
}*/
/* /Components/Pages/SongDetails.razor.rz.scp.css */
/* Pages/SongDetails.razor.css */

/* Back row spacing if you have one */
/*.back-row {
    margin: 10px 0 12px;
}*/

/* Hero container */
/*.hero {
    border-radius: var(--radius);
    border: 1px solid var(--stroke);
    background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(0,0,0,.18));
    box-shadow: var(--shadow2);
    overflow: hidden;
}*/

/* Split layout */
/*.hero-split {
    display: grid;
    grid-template-columns: 260px 1fr;
    align-items: stretch;
}

.hero-left {
    padding: 14px 0 14px 14px;
    min-width: 0;
}

.hero-content {
    padding: 14px 14px 16px;
    min-width: 0;
}*/

/* Cover */
/*.cover-art {
    position: relative;
    border-radius: 22px;
    border: 1px solid rgba(255,255,255,.14);
    background: radial-gradient(700px 180px at 10% 20%, rgba(124,92,255,.45), transparent 55%), radial-gradient(700px 180px at 90% 30%, rgba(85,167,255,.35), transparent 55%), linear-gradient(135deg, rgba(255,255,255,.06), rgba(0,0,0,.22));
    overflow: hidden;
    box-shadow: 0 18px 50px rgba(0,0,0,.35);
}

.cover-art-square {
    width: 100%;
    aspect-ratio: 1/1;
    min-height: 210px;
}

.cover-shine {
    position: absolute;
    inset: -60px;
    background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.20), transparent 35%);
    transform: rotate(10deg);
    animation: shine 5s ease-in-out infinite;
    opacity: .6;
}

@keyframes shine {
    0%,100% {
        transform: translateX(-10px) rotate(10deg);
    }

    50% {
        transform: translateX(12px) rotate(10deg);
    }
}

.cover-badge {
    position: absolute;
    bottom: 12px;
    left: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,.14);
    background: rgba(0,0,0,.30);
    font-weight: 900;
    font-size: 12px;
}

    .cover-badge .dot {
        width: 8px;
        height: 8px;
        border-radius: 999px;
        background: var(--accent2);
        box-shadow: 0 0 0 6px rgba(46,229,157,.12);
    }*/

/* Hero text */
/*.kicker {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    min-width: 0;
}

.pill {
    display: inline-flex;
    align-items: center;
    padding: 7px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    border: 1px solid rgba(255,255,255,.14);
    background: rgba(255,255,255,.06);
}

.title {
    margin: 10px 0 0;
    font-size: clamp(22px, 3.2vw, 32px);
    letter-spacing: -.8px;
    line-height: 1.15;
    overflow-wrap: anywhere;
}

.subtitle {
    margin: 8px 0 0;
    color: var(--muted);
    line-height: 1.6;
}*/

/* Actions row */
/*.actions {
    margin-top: 12px;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

    .actions.is-hidden {
        display: none;
    }*/

/* ========= Tabs card ========= */
/*.card {
    margin-top: 14px;
}

.tabs {
    display: flex;
    gap: 6px;
    padding: 12px;
    border-bottom: 1px solid rgba(255,255,255,.10);
    background: rgba(0,0,0,.16);
}

.tab {
    flex: 1 1 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 10px;
    border-radius: 16px;
    border: 1px solid rgba(255,255,255,.10);
    background: rgba(255,255,255,.04);
    color: rgba(255,255,255,.88);
    font-weight: 900;
    cursor: pointer;
    white-space: nowrap;
    min-width: 0;
}

    .tab.is-active {
        border-color: rgba(124,92,255,.55);
        background: rgba(124,92,255,.14);
    }

.panels {
    padding: 14px;
}

.panel {
    display: none;
}

    .panel.is-active {
        display: block;
    }*/

/* Description grid */
/*.info-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 10px;
}

.info {
    border-radius: 18px;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(0,0,0,.16);
    padding: 12px;
}

.info-label {
    font-size: 11px;
    color: var(--muted2);
    font-weight: 800;
}

.info-value {
    margin-top: 6px;
    font-weight: 900;
}

.divider {
    margin: 14px 0;
    height: 1px;
    background: rgba(255,255,255,.10);
}

.story-text {
    margin: 0;
    color: rgba(255,255,255,.84);
    line-height: 1.75;
}*/

/* ========= Lyrics ========= */
/*.lyrics-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 10px;
}

.lyrics-left {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.lyrics {
    border-radius: 16px;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(0,0,0,.18);
    padding: 16px;
    font-size: 18px;
    line-height: 1.85;
    color: rgba(255,255,255,.88);
}*/

/* Make lyrics larger by default */
/*#lyricsBox {
    max-height: min(74vh, 860px);
    min-height: 560px;
    overflow: auto;
}*/

/* ========= Video ========= */
/*.video-shell {
    border-radius: 18px;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(0,0,0,.16);
    overflow: hidden;
}

.video-aspect {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}

    .video-aspect iframe {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        border: 0;
    }*/

/* =======================
   Inline Player (Responsive)
======================= */
/*.inline-player {
    position: relative;
    margin-top: 12px;
    width: 100%;
    max-width: 100%;
    border-radius: 18px;
    border: 1px solid rgba(255,255,255,.12);
    background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(0,0,0,.20));
    box-shadow: 0 18px 50px rgba(0,0,0,.35);
    overflow: hidden;
}

.ip-top {
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    padding: 12px;
    border-bottom: 1px solid rgba(255,255,255,.10);
    background: rgba(0,0,0,.18);
}*/

/* Make sure close is always visible */
/*.ip-close {
    position: absolute;
    right: 10px;
    top: 10px;
    min-width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    z-index: 2;
}*/

/* Track line */
/*.ip-now {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    max-width: 100%;
    padding-right: 56px;*/ /* reserve space for close button */
/*}

.ip-nowtext {
    min-width: 0;
    max-width: 100%;
}

.ip-label {
    font-size: 11px;
    color: var(--muted2);
    font-weight: 800;
}

.ip-track {
    font-weight: 900;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}*/

/* Colorful wave */
/*.ip-wave {
    width: 44px;
    height: 26px;
    display: flex;
    align-items: flex-end;
    gap: 4px;
    padding: 4px;
    border-radius: 12px;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(0,0,0,.14);
    flex: 0 0 auto;
}

    .ip-wave span {
        width: 4px;
        height: 6px;
        border-radius: 999px;
        background: linear-gradient(180deg, rgba(124,92,255,.95), rgba(46,229,157,.85), rgba(85,167,255,.9));
        opacity: .9;
        transform-origin: bottom;
    }

.inline-player.is-playing .ip-wave span {
    animation: wave .9s ease-in-out infinite;
}

    .inline-player.is-playing .ip-wave span:nth-child(2) {
        animation-delay: .10s;
    }

    .inline-player.is-playing .ip-wave span:nth-child(3) {
        animation-delay: .20s;
    }

    .inline-player.is-playing .ip-wave span:nth-child(4) {
        animation-delay: .30s;
    }

    .inline-player.is-playing .ip-wave span:nth-child(5) {
        animation-delay: .40s;
    }

@keyframes wave {
    0%,100% {
        height: 6px;
        opacity: .7
    }

    50% {
        height: 22px;
        opacity: 1
    }
}*/

/* Player controls */
/*.ip-controls {
    padding: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

.pbtn {
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(255,255,255,.05);
    color: rgba(255,255,255,.92);
    padding: 10px 12px;
    border-radius: 14px;
    font-weight: 900;
    cursor: pointer;
}

.pbtn.track-nav {
    font-size: 1.15rem;
}

.pbtn:disabled {
    opacity: .38;
    cursor: not-allowed;
    transform: none;
}

    .pbtn.primary {
        border-color: rgba(124,92,255,.55);
        background: linear-gradient(135deg, rgba(124,92,255,.85), rgba(85,167,255,.70));
    }

    .pbtn.big {
        width: 54px;
        height: 54px;
        border-radius: 16px;
        display: grid;
        place-items: center;
    }

    .pbtn.ghost {
        background: rgba(0,0,0,.14);
    }

.ip-seek {
    padding: 0 12px 12px;
    display: grid;
    grid-template-columns: 54px 1fr 54px;
    gap: 10px;
    align-items: center;
    min-width: 0;
}

.ptime {
    font-size: 12px;
    color: var(--muted);
    font-weight: 800;
    text-align: center;
}

.seek {
    width: 100%;
    min-width: 0;
    appearance: none;
    height: 8px;
    border-radius: 999px;
    background: rgba(255,255,255,.12);
    outline: none;
}

    .seek::-webkit-slider-thumb {
        appearance: none;
        width: 18px;
        height: 18px;
        border-radius: 999px;
        background: rgba(255,255,255,.92);
        border: 3px solid rgba(124,92,255,.55);
        cursor: pointer;
    }*/

/* Bottom bar */
/*.ip-bottom {
    padding: 0 12px 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
}

.ip-bottom-left,
.ip-bottom-right {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    min-width: 0;
}

.pchip {
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(255,255,255,.05);
    color: rgba(255,255,255,.86);
    padding: 8px 10px;
    border-radius: 999px;
    font-weight: 900;
    font-size: 12px;
    cursor: pointer;
}

    .pchip.is-on {
        border-color: rgba(46,229,157,.55);
        background: rgba(46,229,157,.14);
    }

.vol-mini {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 8px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(0,0,0,.14);
    max-width: 100%;
}

.vol-mini-bar {
    width: 110px;
    appearance: none;
    height: 6px;
    border-radius: 999px;
    background: rgba(255,255,255,.14);
    outline: none;
}

    .vol-mini-bar::-webkit-slider-thumb {
        appearance: none;
        width: 14px;
        height: 14px;
        border-radius: 999px;
        background: rgba(255,255,255,.92);
        border: 3px solid rgba(46,229,157,.55);
        cursor: pointer;
    }

.speed {
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(0,0,0,.18);
    color: rgba(255,255,255,.92);
    padding: 10px 10px;
    border-radius: 14px;
    font-weight: 900;
    outline: none;
}*/

/* =======================
   Lyrics Fullscreen Overlay (JS creates #blzLyricsOverlay)
======================= */
/*.lyrics-overlay {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: none;
    padding: 14px;
    background: rgba(0,0,0,.62);
    backdrop-filter: blur(10px);
}

    .lyrics-overlay.is-open {
        display: flex;
        align-items: center;
        justify-content: center;
    }

.lyrics-overlay-card {
    width: min(980px, 96vw);
    height: min(92vh, 980px);
    border-radius: 22px;
    border: 1px solid rgba(255,255,255,.14);
    background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(0,0,0,.28));
    box-shadow: 0 26px 90px rgba(0,0,0,.65);
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.lyrics-overlay-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 12px;
    border-bottom: 1px solid rgba(255,255,255,.10);
    background: rgba(0,0,0,.20);
    min-width: 0;
}

.lyrics-overlay-title {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1 1 auto;
}

.lyrics-overlay-pill {
    display: inline-flex;
    align-items: center;
    padding: 7px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    border: 1px solid rgba(255,255,255,.14);
    background: rgba(124,92,255,.14);
    flex: 0 0 auto;
}

.lyrics-overlay-song {
    font-weight: 900;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 52vw;
}

.lyrics-overlay-actions {
    display: flex;
    gap: 10px;
    flex: 0 0 auto;
    white-space: nowrap;
}

.lyrics-overlay-body {
    padding: 14px;
    overflow: hidden;
    flex: 1;
}

.lyrics-full {
    height: 100%;
    overflow: auto;
}*/

/* ======================
   Responsive polishing
====================== */
/*@media (max-width: 980px) {
    .hero-split {
        grid-template-columns: 220px 1fr;
    }

    .info-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 780px) {
    .hero-split {
        grid-template-columns: 1fr;
    }

    .hero-left {
        display: none;
    }*/
    /* hide cover on smaller screens */
    /*.hero-content {
        padding: 14px;
    }*/

    /* Make lyrics still large on phones */
    /*#lyricsBox {
        min-height: 460px;
    }
}*/

/* ✅ Mobile: player bottom row must be ONE line */
/*@media (max-width: 520px) {
    .ip-seek {
        grid-template-columns: 46px 1fr 46px;
        gap: 8px;
    }

    .ip-controls {
        justify-content: space-between;
    }

    .ip-bottom {
        flex-wrap: nowrap;
        align-items: center;
        gap: 8px;
    }

    .ip-bottom-left {
        flex-wrap: nowrap;
        gap: 8px;
        min-width: 0;
        flex: 1 1 auto;
    }

    .ip-bottom-right {
        flex: 0 0 auto;
    }*/

    /* Compact controls to fit */
    /*.pchip {
        padding: 7px 9px;
        font-size: 12px;
        white-space: nowrap;
    }

    .vol-mini {
        padding: 5px 6px;
        gap: 6px;
        flex: 1 1 auto;
        min-width: 0;
    }

    .vol-mini-bar {
        width: 86px;
        max-width: 100%;
    }

    .speed {
        padding: 8px 8px;
        border-radius: 12px;
        font-size: 12px;
        white-space: nowrap;
    }*/

    /* ✅ Mobile: lyrics overlay header stays ONE line */
    /*.lyrics-overlay-top {
        gap: 8px;
        padding: 10px;
        flex-wrap: nowrap;
    }

    .lyrics-overlay-song {
        max-width: 44vw;
    }

    .lyrics-overlay-actions {
        gap: 6px;
    }

        .lyrics-overlay-actions .btn {
            padding: 8px 8px;
            border-radius: 12px;
            font-size: 12px;
            line-height: 1;
        }

            .lyrics-overlay-actions .btn .btn-ic {
                margin-right: 0;
            }

            .lyrics-overlay-actions .btn .lbl {
                display: none;
            }
}*/

/* Keep the player mounted while the surrounding song details gently change. */
.track-copy[b-stic1gond9], .ip-track[b-stic1gond9], .panels[b-stic1gond9] { transition: opacity 180ms ease, transform 220ms ease; }
.is-changing-track .track-copy[b-stic1gond9], .is-changing-track .ip-track[b-stic1gond9] { opacity: .35; transform: translateY(3px); }
.is-changing-track .panels[b-stic1gond9] { opacity: .5; }
.inline-player[b-stic1gond9] { transition: border-color 220ms ease, box-shadow 220ms ease; }
.is-changing-track .inline-player[b-stic1gond9] { border-color: rgba(124, 92, 255, .5); }
.track-transition-progress[b-stic1gond9] {
    position: absolute; inset: 0 auto auto 0; height: 2px; width: 32%; z-index: 2;
    background: linear-gradient(90deg, transparent, #b1a0ff, #69bbff, transparent);
    animation: track-loading-b-stic1gond9 1.1s ease-in-out infinite;
}
.pbtn:disabled[b-stic1gond9] { cursor: not-allowed; opacity: .5; }
.is-changing-track .pbtn:disabled[b-stic1gond9] { cursor: wait; }
@keyframes track-loading-b-stic1gond9 { from { transform: translateX(-100%); } to { transform: translateX(315%); } }
@media (prefers-reduced-motion: reduce) {
    .track-copy[b-stic1gond9], .ip-track[b-stic1gond9], .panels[b-stic1gond9], .inline-player[b-stic1gond9] { transition: none; }
    .is-changing-track .track-copy[b-stic1gond9], .is-changing-track .ip-track[b-stic1gond9] { transform: none; }
    .track-transition-progress[b-stic1gond9] { animation: none; width: 100%; opacity: .5; }
}


/* Keep all five transport controls together and give volume its own mobile row. */
@media (max-width: 520px) {
    .ip-controls[b-stic1gond9] { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 6px; }
    .ip-controls .pbtn[b-stic1gond9] { width: 100%; min-width: 0; height: 44px; padding: 6px 2px; font-size: 13px; white-space: nowrap; }
    .ip-controls .pbtn.big[b-stic1gond9] { height: 48px; }
    .ip-bottom[b-stic1gond9] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)) 72px; gap: 8px; }
    .ip-bottom-left[b-stic1gond9] { display: contents; }
    .ip-bottom-left > .pchip[b-stic1gond9] { white-space: nowrap; padding: 8px 6px; }
    .ip-bottom-left > .pchip:nth-child(2)[b-stic1gond9] { grid-column: 2 / 4; }
    .vol-mini[b-stic1gond9] { grid-column: 1 / 3; width: 100%; box-sizing: border-box; }
    .vol-mini-bar[b-stic1gond9] { flex: 1; min-width: 0; width: 0; }
    .vol-btn[b-stic1gond9] { flex: 0 0 auto; }
    .ip-bottom-right[b-stic1gond9] { grid-column: 3; }
    .speed[b-stic1gond9] { width: 100%; min-height: 40px; }
}
