
/* =========================================================
   VibeWave UI Polish V2.6D
   Mục tiêu: tinh gọn thị giác, không thay đổi code lõi player/PJAX/queue
   ========================================================= */

body.vibewave-homepage,
body.vibewave-memberpage,
body.vibewave-member-public-page {
    --vw-bg: #080912;
    --vw-bg-2: #0f1120;
    --vw-panel: rgba(15, 17, 30, 0.86);
    --vw-panel-soft: rgba(17, 20, 34, 0.72);
    --vw-panel-elevated: rgba(18, 22, 38, 0.92);
    --vw-border: rgba(255, 255, 255, 0.06);
    --vw-border-strong: rgba(255, 255, 255, 0.09);
    --vw-text: #eef2ff;
    --vw-text-soft: #cbd5e1;
    --vw-text-muted: #93a0b8;
    --vw-accent: #8b5cf6;
    --vw-accent-2: #6366f1;
    --vw-accent-soft: rgba(139, 92, 246, 0.16);
    --vw-shadow-soft: 0 16px 38px rgba(2, 6, 23, 0.24);
    --vw-shadow-panel: 0 20px 50px rgba(2, 6, 23, 0.34);
    --vw-radius-sm: 14px;
    --vw-radius-md: 20px;
    --vw-radius-lg: 26px;
    --vw-gap-1: 8px;
    --vw-gap-2: 12px;
    --vw-gap-3: 16px;
    --vw-gap-4: 20px;
    --vw-gap-5: 24px;
    --vw-gap-6: 32px;
    background:
        radial-gradient(circle at top left, rgba(99, 102, 241, 0.15) 0, transparent 34%),
        radial-gradient(circle at top right, rgba(56, 189, 248, 0.10) 0, transparent 28%),
        radial-gradient(circle at bottom center, rgba(139, 92, 246, 0.14) 0, transparent 32%),
        var(--vw-bg);
    color: var(--vw-text);
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

body.vibewave-homepage::before,
body.vibewave-memberpage::before,
body.vibewave-member-public-page::before {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(255,255,255,0.03), transparent 22%, transparent 78%, rgba(255,255,255,0.02));
    opacity: .9;
}

.vibewave-homepage .app,
.vibewave-memberpage .app,
.vibewave-member-public-page .app {
    max-width: 1680px;
    gap: 24px;
    padding: 22px 24px 0;
}

.vibewave-homepage .sidebar,
.vibewave-memberpage .sidebar,
.vibewave-member-public-page .sidebar {
    width: 252px;
    gap: 26px;
    padding: 20px 14px 18px;
    background: linear-gradient(180deg, rgba(15, 17, 30, 0.92) 0%, rgba(10, 12, 21, 0.90) 100%);
    border: 1px solid var(--vw-border);
    box-shadow: var(--vw-shadow-panel);
}

.vibewave-homepage .logo-area,
.vibewave-memberpage .logo-area,
.vibewave-member-public-page .logo-area {
    padding: 6px 8px 14px;
    gap: 14px;
    text-decoration: none;
}

.vibewave-homepage .logo-area-wordmark,
.vibewave-memberpage .logo-area-wordmark,
.vibewave-member-public-page .logo-area-wordmark {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    min-height: 44px;
    isolation: isolate;
}

.vibewave-homepage .logo-wordmark,
.vibewave-memberpage .logo-wordmark,
.vibewave-member-public-page .logo-wordmark {
    position: relative;
    display: inline-flex;
    align-items: baseline;
    gap: 0.03em;
    max-width: 100%;
    min-width: 0;
    white-space: nowrap;
    line-height: 1;
    font-family: 'Inter', sans-serif;
    font-weight: 900;
    font-size: clamp(1.14rem, 0.98rem + 0.42vw, 1.5rem);
    letter-spacing: -0.04em;
}

.vibewave-homepage .logo-full,
.vibewave-homepage .logo-main-only,
.vibewave-homepage .logo-compact,
.vibewave-memberpage .logo-full,
.vibewave-memberpage .logo-main-only,
.vibewave-memberpage .logo-compact,
.vibewave-member-public-page .logo-full,
.vibewave-member-public-page .logo-main-only,
.vibewave-member-public-page .logo-compact {
    align-items: baseline;
    min-width: 0;
    max-width: 100%;
    white-space: nowrap;
}

.vibewave-homepage .logo-full,
.vibewave-memberpage .logo-full,
.vibewave-member-public-page .logo-full {
    display: inline-flex;
}

.vibewave-homepage .logo-main-only,
.vibewave-homepage .logo-compact,
.vibewave-memberpage .logo-main-only,
.vibewave-memberpage .logo-compact,
.vibewave-member-public-page .logo-main-only,
.vibewave-member-public-page .logo-compact {
    display: none;
}

.vibewave-homepage .logo-main,
.vibewave-homepage .logo-main-only,
.vibewave-homepage .logo-compact,
.vibewave-homepage .logo-sub,
.vibewave-memberpage .logo-main,
.vibewave-memberpage .logo-main-only,
.vibewave-memberpage .logo-compact,
.vibewave-memberpage .logo-sub,
.vibewave-member-public-page .logo-main,
.vibewave-member-public-page .logo-main-only,
.vibewave-member-public-page .logo-compact,
.vibewave-member-public-page .logo-sub {
    position: relative;
    display: inline-block;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
    white-space: nowrap;
}

.vibewave-homepage .logo-main,
.vibewave-homepage .logo-main-only,
.vibewave-homepage .logo-compact,
.vibewave-memberpage .logo-main,
.vibewave-memberpage .logo-main-only,
.vibewave-memberpage .logo-compact,
.vibewave-member-public-page .logo-main,
.vibewave-member-public-page .logo-main-only,
.vibewave-member-public-page .logo-compact {
    min-width: 0;
    background-image: linear-gradient(90deg, #93f6ff 0%, #7ae3ff 28%, #8baeff 58%, #d18fff 84%, #ff9cde 100%);
    background-size: 220% 100%;
    background-position: 0% 50%;
    animation: vwLogoMainFlow 5.2s linear infinite;
    filter: drop-shadow(0 0 7px rgba(120,230,255,.16)) drop-shadow(0 0 18px rgba(188,118,255,.10));
}

.vibewave-homepage .logo-sub,
.vibewave-memberpage .logo-sub,
.vibewave-member-public-page .logo-sub {
    flex: 0 0 auto;
    margin-left: 0.02em;
    font-size: 1em;
    letter-spacing: -0.028em;
    background-image: linear-gradient(90deg, rgba(255,255,255,.98) 0%, rgba(229,241,255,.92) 42%, rgba(188,212,255,.78) 100%);
    background-size: 180% 100%;
    background-position: 180% 50%;
    animation: vwLogoSubFlow 5.2s linear infinite;
    opacity: .96;
}

.vibewave-homepage .logo-area-wordmark::after,
.vibewave-memberpage .logo-area-wordmark::after,
.vibewave-member-public-page .logo-area-wordmark::after {
    content: '';
    position: absolute;
    left: 8px;
    right: 8px;
    bottom: 4px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(110,240,255,0) 0%, rgba(110,240,255,.92) 22%, rgba(136,176,255,.9) 58%, rgba(213,120,255,.76) 84%, rgba(213,120,255,0) 100%);
    opacity: .9;
    box-shadow: 0 0 10px rgba(95,240,255,.15), 0 0 16px rgba(180,110,255,.10);
}

.vibewave-homepage .logo-area-wordmark::before,
.vibewave-memberpage .logo-area-wordmark::before,
.vibewave-member-public-page .logo-area-wordmark::before {
    content: '';
    position: absolute;
    top: -6%;
    bottom: 12%;
    left: -8%;
    width: 18%;
    background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.04) 30%, rgba(255,255,255,.34) 50%, rgba(255,255,255,.04) 70%, rgba(255,255,255,0) 100%);
    transform: skewX(-22deg) translateX(-240%);
    animation: vwLogoSweep 4.2s ease-in-out infinite;
    pointer-events: none;
    mix-blend-mode: screen;
}

@keyframes vwLogoMainFlow {
    from { background-position: 220% 50%; }
    to { background-position: 0% 50%; }
}

@keyframes vwLogoSubFlow {
    from { background-position: 180% 50%; }
    to { background-position: 0% 50%; }
}

@keyframes vwLogoSweep {
    0% { transform: skewX(-22deg) translateX(-240%); opacity: 0; }
    10% { opacity: 1; }
    46% { transform: skewX(-22deg) translateX(430%); opacity: 1; }
    60% { opacity: 0; }
    100% { transform: skewX(-22deg) translateX(430%); opacity: 0; }
}

.vibewave-homepage .nav-menu,
.vibewave-memberpage .nav-menu,
.vibewave-member-public-page .nav-menu,
.vibewave-homepage .playlist-list,
.vibewave-memberpage .playlist-list,
.vibewave-member-public-page .playlist-list {
    gap: 6px;
}

.vibewave-homepage .nav-item,
.vibewave-homepage .playlist-item,
.vibewave-memberpage .nav-item,
.vibewave-memberpage .playlist-item,
.vibewave-member-public-page .nav-item,
.vibewave-member-public-page .playlist-item {
    position: relative;
    padding: 0;
    background: transparent;
    color: inherit;
    border-radius: 16px;
}

.vibewave-homepage .nav-item::before,
.vibewave-homepage .playlist-item::before,
.vibewave-memberpage .nav-item::before,
.vibewave-memberpage .playlist-item::before,
.vibewave-member-public-page .nav-item::before,
.vibewave-member-public-page .playlist-item::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: linear-gradient(90deg, rgba(139, 92, 246, 0.14), rgba(99, 102, 241, 0.08));
    border: 1px solid transparent;
    opacity: 0;
    transition: opacity .18s ease, border-color .18s ease, transform .18s ease;
}

.vibewave-homepage .nav-item-link,
.vibewave-homepage .playlist-item-link,
.vibewave-homepage .playlist-item-button,
.vibewave-memberpage .nav-item-link,
.vibewave-memberpage .playlist-item-link,
.vibewave-memberpage .playlist-item-button,
.vibewave-member-public-page .nav-item-link,
.vibewave-member-public-page .playlist-item-link,
.vibewave-member-public-page .playlist-item-button {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    min-height: 46px;
    padding: 0 14px;
    color: var(--vw-text-soft);
    font-size: .92rem;
    font-weight: 500;
    text-decoration: none;
    background: transparent;
    border: 0;
    border-radius: inherit;
}

.vibewave-homepage .nav-item-link i,
.vibewave-homepage .playlist-item-link i,
.vibewave-homepage .playlist-item-button i,
.vibewave-memberpage .nav-item-link i,
.vibewave-memberpage .playlist-item-link i,
.vibewave-memberpage .playlist-item-button i,
.vibewave-member-public-page .nav-item-link i,
.vibewave-member-public-page .playlist-item-link i,
.vibewave-member-public-page .playlist-item-button i {
    width: 18px;
    color: #b8a8ff;
}

.vibewave-homepage .nav-item.active::before,
.vibewave-homepage .playlist-item.active::before,
.vibewave-memberpage .nav-item.active::before,
.vibewave-memberpage .playlist-item.active::before,
.vibewave-member-public-page .nav-item.active::before,
.vibewave-member-public-page .playlist-item.active::before {
    opacity: 1;
    border-color: rgba(139, 92, 246, 0.18);
}

.vibewave-homepage .nav-item:hover::before,
.vibewave-homepage .playlist-item:hover::before,
.vibewave-memberpage .nav-item:hover::before,
.vibewave-memberpage .playlist-item:hover::before,
.vibewave-member-public-page .nav-item:hover::before,
.vibewave-member-public-page .playlist-item:hover::before {
    opacity: 1;
    background: rgba(255,255,255,0.04);
}

.vibewave-homepage .nav-item.active .nav-item-link,
.vibewave-homepage .playlist-item.active .playlist-item-link,
.vibewave-homepage .playlist-item.active .playlist-item-button,
.vibewave-memberpage .nav-item.active .nav-item-link,
.vibewave-memberpage .playlist-item.active .playlist-item-link,
.vibewave-memberpage .playlist-item.active .playlist-item-button,
.vibewave-member-public-page .nav-item.active .nav-item-link,
.vibewave-member-public-page .playlist-item.active .playlist-item-link,
.vibewave-member-public-page .playlist-item.active .playlist-item-button {
    color: #f5f3ff;
}

.vibewave-homepage .playlist-header,
.vibewave-memberpage .playlist-header,
.vibewave-member-public-page .playlist-header {
    padding: 0 14px;
    margin-bottom: 10px;
    letter-spacing: .12em;
    font-size: .68rem;
    color: var(--vw-text-muted);
}

.vibewave-homepage .main-content,
.vibewave-memberpage .main-content,
.vibewave-member-public-page .main-content {
    padding-right: 6px;
}

.vibewave-homepage .sticky-header,
.vibewave-memberpage .sticky-header,
.vibewave-member-public-page .sticky-header {
    padding-bottom: 4px;
    margin-bottom: 20px;
    background: linear-gradient(180deg, rgba(8,9,18,0.96), rgba(8,9,18,0.85) 70%, transparent);
}

.vibewave-homepage .hero,
.vibewave-memberpage .hero,
.vibewave-member-public-page .hero {
    padding: 18px 22px;
    border-radius: var(--vw-radius-lg);
    background:
        radial-gradient(circle at top right, rgba(99, 102, 241, 0.22), transparent 36%),
        linear-gradient(145deg, rgba(17, 20, 34, 0.96), rgba(11, 13, 22, 0.94));
    border: 1px solid var(--vw-border);
    box-shadow: var(--vw-shadow-soft);
}

.vibewave-homepage .greeting h3,
.vibewave-memberpage .greeting h3,
.vibewave-member-public-page .greeting h3 {
    font-size: 1.12rem;
    font-weight: 600;
    letter-spacing: -0.02em;
}

.vibewave-homepage .greeting p,
.vibewave-memberpage .greeting p,
.vibewave-member-public-page .greeting p {
    margin-top: 6px;
    color: #b6c2db;
    font-size: .82rem;
}

.vibewave-homepage .hero-search,
.vibewave-memberpage .hero-search,
.vibewave-member-public-page .hero-search {
    padding: 0;
    background: transparent;
    border: 0;
}

.vibewave-homepage .hero-search form,
.vibewave-memberpage .hero-search form,
.vibewave-member-public-page .hero-search form {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: min(100%, 420px);
    padding: 8px 10px 8px 16px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,0.08);
    background: rgba(8, 10, 18, 0.64);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.02);
}

.vibewave-homepage .hero-search i,
.vibewave-memberpage .hero-search i,
.vibewave-member-public-page .hero-search i {
    color: #8fa1c6;
}

.vibewave-homepage .hero-search input,
.vibewave-memberpage .hero-search input,
.vibewave-member-public-page .hero-search input {
    width: min(100%, 260px);
    color: var(--vw-text);
    font-size: .9rem;
}

.vibewave-homepage .hero-search input::placeholder,
.vibewave-memberpage .hero-search input::placeholder,
.vibewave-member-public-page .hero-search input::placeholder {
    color: #7e89a3;
}

.vibewave-homepage .hero-search button,
.vibewave-memberpage .hero-search button,
.vibewave-member-public-page .hero-search button {
    min-width: 84px;
    padding: 10px 18px;
    border-radius: 999px;
    font-size: .82rem;
    font-weight: 600;
    background: linear-gradient(135deg, var(--vw-accent), var(--vw-accent-2));
    box-shadow: 0 12px 24px rgba(99, 102, 241, 0.28);
}

.vibewave-homepage .album-section,
.vibewave-homepage .left-songs,
.vibewave-homepage .right-playlists,
.vibewave-search-page .search-overview-card,
.vibewave-search-page .search-section,
.vibewave-songpage .song-page-header-card,
.vibewave-songpage .song-page-comments-card,
.vibewave-songpage .song-page-section-card,
.vibewave-albumpage .album-page-header-card,
.vibewave-albumpage .album-page-tracklist-card,
.vibewave-albumpage .album-page-comments-card,
.vibewave-albumpage .album-page-section-card,
.vibewave-playlistpage .playlist-page-header-card,
.vibewave-category-page .category-hero-card,
.vibewave-top-page .top-hero-card,
.vibewave-memberpage .member-profile-section,
.vibewave-member-public-page .member-profile-section {
    background: linear-gradient(180deg, rgba(16, 19, 32, 0.94), rgba(12, 15, 24, 0.90));
    border: 1px solid var(--vw-border);
    border-radius: var(--vw-radius-lg);
    box-shadow: var(--vw-shadow-soft);
}

.vibewave-homepage .album-section,
.vibewave-homepage .left-songs,
.vibewave-homepage .right-playlists {
    padding: 18px;
}

.vibewave-homepage .bottom-double {
    gap: 20px;
}

.vibewave-homepage .album-tab-header,
.vibewave-homepage .song-tab-header,
.vibewave-homepage .playlist-tab-header,
.vibewave-homepage .section-tabs,
.vibewave-memberpage .member-action-tabs,
.vibewave-member-public-page .member-action-tabs {
    gap: 8px;
    margin-bottom: 18px;
}

.vibewave-homepage .album-tab-btn,
.vibewave-homepage .song-tab-btn,
.vibewave-homepage .playlist-tab-btn,
.vibewave-memberpage .member-action-tab,
.vibewave-member-public-page .member-action-tab {
    min-height: 40px;
    padding: 0 16px;
    border-radius: 999px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.05);
    color: var(--vw-text-soft);
    font-size: .82rem;
    font-weight: 600;
    letter-spacing: .01em;
    transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}

.vibewave-homepage .album-tab-btn.active,
.vibewave-homepage .song-tab-btn.active,
.vibewave-homepage .playlist-tab-btn.active,
.vibewave-memberpage .member-action-tab.active,
.vibewave-member-public-page .member-action-tab.active {
    background: var(--vw-accent-soft);
    border-color: rgba(139, 92, 246, 0.24);
    color: #f5f3ff;
}

.vibewave-homepage .album-tab-btn:hover,
.vibewave-homepage .song-tab-btn:hover,
.vibewave-homepage .playlist-tab-btn:hover,
.vibewave-memberpage .member-action-tab:hover,
.vibewave-member-public-page .member-action-tab:hover {
    transform: translateY(-1px);
    color: #f8fafc;
}

.vibewave-homepage .album-grid,
.vibewave-homepage .playlist-grid,
.vibewave-albums-page .album-grid-singer,
.vibewave-search-page .search-card-grid,
.vibewave-search-page .search-exact-grid {
    gap: 16px;
}

.vibewave-homepage .album-card,
.vibewave-homepage .playlist-card,
.vibewave-artist-page .artist-album-card,
.vibewave-search-page .search-exact-card,
.vibewave-search-page .search-entity-card,
.vibewave-memberpage .xt-playlist-pro-card,
.vibewave-member-public-page .xt-playlist-pro-card {
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(22, 25, 40, 0.92), rgba(16, 18, 28, 0.92));
    border: 1px solid rgba(255,255,255,0.05);
    box-shadow: 0 14px 30px rgba(2, 6, 23, 0.14);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

.vibewave-homepage .album-card:hover,
.vibewave-homepage .playlist-card:hover,
.vibewave-artist-page .artist-album-card:hover,
.vibewave-search-page .search-exact-card:hover,
.vibewave-search-page .search-entity-card:hover,
.vibewave-memberpage .xt-playlist-pro-card:hover,
.vibewave-member-public-page .xt-playlist-pro-card:hover {
    transform: translateY(-3px);
    border-color: rgba(139, 92, 246, 0.18);
    box-shadow: 0 22px 44px rgba(2, 6, 23, 0.22);
}

.vibewave-homepage .album-card h4,
.vibewave-homepage .playlist-card h4,
.vibewave-artist-page .artist-album-card h4,
.vibewave-search-page .search-exact-card h4,
.vibewave-search-page .search-entity-card h4 {
    font-size: .96rem;
    font-weight: 600;
    letter-spacing: -0.01em;
    color: #f8fafc;
}

.vibewave-homepage .album-card p,
.vibewave-homepage .playlist-card p,
.vibewave-artist-page .artist-album-card p,
.vibewave-search-page .search-exact-card p,
.vibewave-search-page .search-entity-card p {
    color: var(--vw-text-muted);
    font-size: .77rem;
}

.vibewave-homepage .song-row,
.vibewave-homepage .new-track-item,
.vibewave-search-page .search-song-row,
.vibewave-albumpage .album-track-row-rich,
.vibewave-playlistpage .album-track-row-rich,
.vibewave-category-page .category-song-row,
.vibewave-top-page .top-track-row,
.vibewave-songpage .song-item,
.vibewave-artist-page .song-row-custom {
    border-radius: 18px;
    background: rgba(255,255,255,0.03);
    border: 1px solid transparent;
    transition: background .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.vibewave-homepage .song-row:hover,
.vibewave-homepage .new-track-item:hover,
.vibewave-search-page .search-song-row:hover,
.vibewave-albumpage .album-track-row-rich:hover,
.vibewave-playlistpage .album-track-row-rich:hover,
.vibewave-category-page .category-song-row:hover,
.vibewave-top-page .top-track-row:hover,
.vibewave-songpage .song-item:hover,
.vibewave-artist-page .song-row-custom:hover {
    transform: translateY(-1px);
    background: rgba(255,255,255,0.05);
    border-color: rgba(255,255,255,0.06);
}

.vibewave-homepage .song-row.active-song,
.vibewave-homepage .new-track-item.active-song,
.vibewave-search-page .search-song-row.active-song,
.vibewave-albumpage .album-track-row-rich.active-track,
.vibewave-playlistpage .album-track-row-rich.active-track,
.vibewave-category-page .category-song-row.active-song,
.vibewave-top-page .top-track-row.is-active,
.vibewave-songpage .song-item.active-song,
.vibewave-artist-page .song-row-custom.active-song-highlight {
    background: rgba(139, 92, 246, 0.12);
    border-color: rgba(139, 92, 246, 0.20);
    box-shadow: inset 0 0 0 1px rgba(139, 92, 246, 0.08);
}

.vibewave-homepage .song-number,
.vibewave-search-page .search-song-number,
.vibewave-homepage .new-rank,
.vibewave-top-page .top-track-rank,
.vibewave-category-page .category-song-rank {
    color: #b6a4ff;
    font-size: .77rem;
    font-weight: 700;
}

.vibewave-homepage .song-info h4,
.vibewave-homepage .new-info h5,
.vibewave-search-page .search-song-title,
.vibewave-artist-page .song-info-custom h4,
.vibewave-top-page .top-track-title,
.vibewave-category-page .category-song-title,
.vibewave-songpage .song-item-title,
.vibewave-albumpage .album-track-title,
.vibewave-playlistpage .album-track-title {
    font-size: .92rem;
    font-weight: 600;
    letter-spacing: -0.01em;
    color: #f8fafc;
}

.vibewave-homepage .song-info p,
.vibewave-homepage .new-info p,
.vibewave-search-page .search-song-meta,
.vibewave-artist-page .song-info-custom p,
.vibewave-top-page .top-track-meta,
.vibewave-category-page .category-song-meta,
.vibewave-songpage .song-item-meta,
.vibewave-albumpage .album-track-meta,
.vibewave-playlistpage .album-track-meta {
    color: var(--vw-text-muted);
    font-size: .76rem;
}

.vibewave-homepage .song-title-link,
.vibewave-homepage .new-track-link,
.vibewave-search-page .search-song-title,
.vibewave-albumpage .album-track-title-button,
.vibewave-playlistpage .album-track-title-button,
.vibewave-category-page .category-song-title,
.vibewave-top-page .top-track-title {
    color: inherit;
    text-decoration: none;
}

.vibewave-homepage .song-title-link:hover,
.vibewave-homepage .new-track-link:hover,
.vibewave-search-page .search-song-title:hover,
.vibewave-albumpage .album-track-title-button:hover,
.vibewave-playlistpage .album-track-title-button:hover,
.vibewave-category-page .category-song-title:hover,
.vibewave-top-page .top-track-title:hover {
    color: #ddd6fe;
}

.vibewave-homepage .right-panel,
.vibewave-memberpage .member-right-panel,
.vibewave-member-public-page .member-right-panel {
    width: 292px;
    gap: 14px;
}

.vibewave-homepage .right-panel > *,
.vibewave-homepage .vw-rightpanel-block,
.vibewave-homepage .notification-box,
.vibewave-memberpage .member-right-panel > *,
.vibewave-member-public-page .member-right-panel > * {
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(14, 18, 31, 0.94), rgba(10, 13, 22, 0.92));
    border: 1px solid rgba(255,255,255,0.05);
    box-shadow: 0 14px 32px rgba(2, 6, 23, 0.20);
}

.vibewave-homepage .new-header,
.vibewave-memberpage .member-right-panel .new-header,
.vibewave-member-public-page .member-right-panel .new-header {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 46px;
    padding: 0 16px;
    font-size: .82rem;
    font-weight: 700;
    letter-spacing: .02em;
    color: #f8fafc;
    border-bottom: 1px solid rgba(255,255,255,0.05);
}

.vibewave-homepage .new-header i,
.vibewave-memberpage .member-right-panel .new-header i,
.vibewave-member-public-page .member-right-panel .new-header i {
    width: 16px;
    text-align: center;
    color: #bca8ff;
}

.vibewave-homepage .new-track-list,
.vibewave-homepage .trending-list,
.vibewave-memberpage .member-right-panel .new-track-list,
.vibewave-memberpage .member-right-panel .trending-list,
.vibewave-member-public-page .member-right-panel .new-track-list,
.vibewave-member-public-page .member-right-panel .trending-list {
    padding: 10px 10px 12px;
    gap: 8px;
}

.vibewave-homepage .new-track-item,
.vibewave-memberpage .member-right-panel .new-track-item,
.vibewave-member-public-page .member-right-panel .new-track-item {
    padding: 12px 12px;
    align-items: center;
}

.vibewave-homepage .right-panel-mini-grid {
    display: grid;
    gap: 10px;
    padding: 10px 10px 12px;
}

.vibewave-homepage .right-panel-album-card {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    grid-template-rows: auto auto;
    align-items: center;
    column-gap: 12px;
    row-gap: 2px;
    padding: 10px;
    border-radius: 16px;
    border: 1px solid transparent;
    background: rgba(255,255,255,0.03);
    text-decoration: none;
    color: inherit;
    transition: background .18s ease, border-color .18s ease, transform .18s ease;
}

.vibewave-homepage .right-panel-album-card:hover {
    transform: translateY(-1px);
    background: rgba(255,255,255,0.05);
    border-color: rgba(255,255,255,0.06);
}

.vibewave-homepage .right-panel-album-cover-wrap {
    grid-row: 1 / span 2;
}

.vibewave-homepage .right-panel-album-cover,
.vibewave-homepage .right-panel-album-cover-wrap {
    width: 54px;
    height: 54px;
    border-radius: 16px;
    overflow: hidden;
}

.vibewave-homepage .right-panel-album-title {
    display: block;
    min-width: 0;
    font-size: .84rem;
    font-weight: 600;
    color: #f8fafc;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.vibewave-homepage .right-panel-album-artist {
    display: block;
    min-width: 0;
    font-size: .72rem;
    color: var(--vw-text-muted);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.vibewave-homepage .notification-content,
.vibewave-memberpage .member-right-panel .notification-content,
.vibewave-member-public-page .member-right-panel .notification-content {
    gap: 14px;
    padding: 14px;
}

.vibewave-homepage .notification-text h4,
.vibewave-memberpage .member-right-panel .notification-text h4,
.vibewave-member-public-page .member-right-panel .notification-text h4 {
    color: #f8fafc;
    font-size: .92rem;
}

.vibewave-homepage .notification-text p,
.vibewave-memberpage .member-right-panel .notification-text p,
.vibewave-member-public-page .member-right-panel .notification-text p {
    color: var(--vw-text-muted);
    line-height: 1.65;
    font-size: .78rem;
}

.vibewave-songpage .song-page-header-card,
.vibewave-albumpage .album-page-header-card,
.vibewave-playlistpage .playlist-page-header-card {
    padding: 24px;
    gap: 24px;
}

.vibewave-songpage .song-page-cover,
.vibewave-albumpage .album-page-cover {
    box-shadow: 0 22px 44px rgba(2, 6, 23, 0.32);
}

.vibewave-songpage .song-page-title,
.vibewave-albumpage .album-page-title {
    font-size: clamp(2rem, 3vw, 2.35rem);
    line-height: 1.04;
    margin-bottom: 10px;
}

.vibewave-songpage .song-page-artist-line,
.vibewave-albumpage .album-page-artist-line {
    margin-bottom: 14px;
}

.vibewave-songpage .song-page-meta,
.vibewave-albumpage .album-page-meta {
    gap: 14px;
    margin-bottom: 16px;
    color: #aab6ce;
}

.vibewave-songpage .song-page-description,
.vibewave-albumpage .album-page-description,
.vibewave-playlistpage .playlist-page-description-muted {
    color: #d6deef;
    line-height: 1.68;
}

.vibewave-songpage .song-page-actions,
.vibewave-albumpage .album-page-actions,
.vibewave-playlistpage .album-page-actions {
    gap: 12px;
    margin-bottom: 14px;
}

.vibewave-songpage .song-page-actions .btn-play,
.vibewave-albumpage .album-page-actions .btn-play,
.vibewave-playlistpage .album-page-actions .btn-play,
.vibewave-artist-page .btn-play-all {
    min-height: 46px;
    padding: 0 20px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--vw-accent), var(--vw-accent-2));
    border: 0;
    box-shadow: 0 14px 30px rgba(99, 102, 241, 0.28);
}

.vibewave-songpage .song-page-actions .btn-play:hover,
.vibewave-albumpage .album-page-actions .btn-play:hover,
.vibewave-playlistpage .album-page-actions .btn-play:hover,
.vibewave-artist-page .btn-play-all:hover:not(:disabled) {
    transform: translateY(-1px);
}

.vibewave-songpage .song-page-actions .btn-play.is-playing,
.vibewave-albumpage .album-page-actions .btn-play.is-playing,
.vibewave-playlistpage .album-page-actions .btn-play.is-playing,
.vibewave-artist-page .btn-play-all.is-playing {
    background: linear-gradient(135deg, #ec4899, #8b5cf6);
}

.vibewave-songpage .song-page-actions .btn-follow,
.vibewave-songpage .song-page-chip,
.vibewave-songpage .song-page-share,
.vibewave-albumpage .album-page-actions .btn-follow,
.vibewave-albumpage .album-page-actions .btn-ghost,
.vibewave-playlistpage .album-page-actions .btn-follow,
.vibewave-playlistpage .album-page-actions .btn-ghost {
    min-height: 44px;
    border-radius: 999px;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.08);
    color: var(--vw-text-soft);
}

.vibewave-songpage .song-page-actions .btn-follow:hover,
.vibewave-songpage .song-page-chip:hover,
.vibewave-albumpage .album-page-actions .btn-follow:hover,
.vibewave-albumpage .album-page-actions .btn-ghost:hover,
.vibewave-playlistpage .album-page-actions .btn-follow:hover,
.vibewave-playlistpage .album-page-actions .btn-ghost:hover {
    background: rgba(139, 92, 246, 0.12);
    color: #fff;
}

.vibewave-songpage .song-page-comments-card,
.vibewave-songpage .song-page-section-card,
.vibewave-albumpage .album-page-tracklist-card,
.vibewave-albumpage .album-page-comments-card,
.vibewave-albumpage .album-page-section-card {
    padding: 20px;
}

.vibewave-songpage .song-page-section-title,
.vibewave-albumpage .album-page-section-head h2,
.vibewave-albumpage .album-page-section-head h3,
.vibewave-search-page .search-section h2,
.vibewave-top-page .top-section-header h2,
.vibewave-category-page .category-section-header h2 {
    font-size: 1.08rem;
    letter-spacing: -0.02em;
}

.vibewave-search-page .search-overview-card,
.vibewave-search-page .search-section {
    padding: 20px;
}

.vibewave-search-page .search-overview-head {
    gap: 16px;
    margin-bottom: 16px;
}

.vibewave-search-page .search-overview-head h1 {
    font-size: 1.34rem;
}

.vibewave-search-page .search-overview-head p,
.vibewave-search-page .search-soft-note {
    color: var(--vw-text-muted);
}

.vibewave-search-page .search-count-pill,
.vibewave-search-page .search-summary-item {
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.05);
}

.vibewave-search-page .search-summary-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
}

.vibewave-search-page .search-chip {
    background: rgba(255,255,255,0.04);
}

.vibewave-search-page .search-chip:hover {
    background: rgba(139, 92, 246, 0.16);
}

.vibewave-homepage .home-pagination,
.vibewave-search-page .search-pagination,
.vibewave-albums-page .albums-pagination,
.vibewave-top-page .top-pagination {
    margin-top: 16px;
}

.vibewave-homepage .home-pagination-inner,
.vibewave-search-page .search-pagination-inner,
.vibewave-albums-page .albums-pagination-inner,
.vibewave-top-page .top-pagination-inner {
    gap: 8px;
}

.vibewave-homepage .home-pagination-link,
.vibewave-search-page .search-pagination-link,
.vibewave-albums-page .albums-pagination-link,
.vibewave-top-page .top-pagination-link {
    min-width: 38px;
    height: 38px;
    padding: 0 12px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,0.06);
    background: rgba(255,255,255,0.03);
    color: var(--vw-text-soft);
    font-size: .8rem;
    font-weight: 600;
}

.vibewave-homepage .home-pagination-link:hover,
.vibewave-search-page .search-pagination-link:hover,
.vibewave-albums-page .albums-pagination-link:hover,
.vibewave-top-page .top-pagination-link:hover {
    background: rgba(255,255,255,0.06);
    color: #fff;
}

.vibewave-homepage .home-pagination-link.is-current,
.vibewave-search-page .search-pagination-link.is-active,
.vibewave-albums-page .albums-pagination-link.is-active,
.vibewave-top-page .top-pagination-link.is-active {
    background: var(--vw-accent-soft);
    border-color: rgba(139, 92, 246, 0.22);
    color: #f5f3ff;
}

.vibewave-homepage .player-bar[data-player-demo="1"] {
    background: linear-gradient(180deg, rgba(15, 17, 30, 0.94), rgba(10, 12, 20, 0.94));
    border-top: 1px solid rgba(255,255,255,0.06);
    box-shadow: 0 -16px 38px rgba(2, 6, 23, 0.26);
}

.vibewave-homepage .player-bar[data-player-demo="1"] .now-playing h5,
.vibewave-homepage .player-bar[data-player-demo="1"] .np-info h5 {
    color: #f8fafc;
}

.vibewave-homepage .player-bar[data-player-demo="1"] .np-info p {
    color: var(--vw-text-muted);
}

.vibewave-homepage .no-data-card,
.vibewave-search-page .search-empty-card,
.vibewave-songpage .song-page-empty-note,
.vibewave-albumpage .album-page-empty-note,
.vibewave-category-page .category-empty-state {
    border-radius: 18px;
    border: 1px dashed rgba(255,255,255,0.10);
    background: rgba(255,255,255,0.03);
    color: var(--vw-text-muted);
}

.vw-rightpanel-block.is-refreshing,
[data-vw-random-block].is-refreshing {
    opacity: .5;
    transform: translateY(4px);
    transition: opacity .16s ease, transform .16s ease;
}

.vw-rightpanel-block.is-fresh,
[data-vw-random-block].is-fresh {
    animation: vwRightPanelFade .22s ease;
}

@keyframes vwRightPanelFade {
    from {
        opacity: .25;
        transform: translateY(6px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 1360px) {
    .vibewave-homepage .app,
    .vibewave-memberpage .app,
    .vibewave-member-public-page .app {
        gap: 20px;
        padding-inline: 18px;
    }

    .vibewave-homepage .right-panel,
    .vibewave-memberpage .member-right-panel,
    .vibewave-member-public-page .member-right-panel {
        width: 276px;
    }

    .vibewave-search-page .search-summary-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 1180px) {
    .vibewave-homepage .hero,
    .vibewave-memberpage .hero,
    .vibewave-member-public-page .hero {
        flex-wrap: wrap;
        gap: 14px;
    }

    .vibewave-homepage .hero-search,
    .vibewave-memberpage .hero-search,
    .vibewave-member-public-page .hero-search {
        width: 100%;
    }

    .vibewave-homepage .hero-search form,
    .vibewave-memberpage .hero-search form,
    .vibewave-member-public-page .hero-search form {
        width: 100%;
        min-width: 0;
    }

    .vibewave-homepage .bottom-double {
        grid-template-columns: 1fr;
    }

    .vibewave-search-page .search-exact-grid,
    .vibewave-search-page .search-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 980px) {
    .vibewave-homepage .app,
    .vibewave-memberpage .app,
    .vibewave-member-public-page .app {
        padding: 16px 14px 0;
    }

    .vibewave-homepage .album-section,
    .vibewave-homepage .left-songs,
    .vibewave-homepage .right-playlists,
    .vibewave-search-page .search-overview-card,
    .vibewave-search-page .search-section,
    .vibewave-songpage .song-page-header-card,
    .vibewave-songpage .song-page-comments-card,
    .vibewave-songpage .song-page-section-card,
    .vibewave-albumpage .album-page-header-card,
    .vibewave-albumpage .album-page-tracklist-card,
    .vibewave-albumpage .album-page-comments-card,
    .vibewave-albumpage .album-page-section-card,
    .vibewave-playlistpage .playlist-page-header-card,
    .vibewave-category-page .category-hero-card {
        padding: 16px;
        border-radius: 22px;
    }

    .vibewave-search-page .search-summary-grid,
    .vibewave-search-page .search-exact-grid,
    .vibewave-search-page .search-card-grid {
        grid-template-columns: 1fr;
    }

    .vibewave-songpage .song-page-title,
    .vibewave-albumpage .album-page-title {
        font-size: 1.7rem;
    }
}


.vibewave-songpage .song-page-copy-icon-btn,
.vibewave-albumpage .album-page-copy-icon-btn {
    width: 44px;
    min-width: 44px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.vibewave-songpage .song-page-copy-icon-btn i,
.vibewave-albumpage .album-page-copy-icon-btn i {
    margin: 0;
}


/* =========================================================
   V2.6D R2 – Song / Album / Search action cluster polish
   Giữ nguyên logic lõi, chỉ đồng bộ hình khối / spacing / hover / focus
   ========================================================= */

.vibewave-songpage .song-page-actions,
.vibewave-albumpage .album-page-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    row-gap: 12px;
}

.vibewave-songpage .song-inline-form,
.vibewave-albumpage .album-inline-form {
    display: inline-flex;
    align-items: center;
    margin: 0;
}

.vibewave-songpage .song-page-actions .btn-play,
.vibewave-albumpage .album-page-actions .btn-play,
.vibewave-songpage .song-page-actions .btn-follow,
.vibewave-albumpage .album-page-actions .btn-follow,
.vibewave-albumpage .album-page-actions .btn-ghost {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding-inline: 16px;
    font-size: .9rem;
    font-weight: 600;
    letter-spacing: -.01em;
    line-height: 1;
    white-space: nowrap;
    text-decoration: none;
}

.vibewave-songpage .song-page-actions .btn-play,
.vibewave-albumpage .album-page-actions .btn-play {
    min-width: 152px;
    padding-inline: 20px;
}

.vibewave-songpage .song-page-actions .btn-play i,
.vibewave-albumpage .album-page-actions .btn-play i,
.vibewave-songpage .song-page-actions .btn-follow i,
.vibewave-albumpage .album-page-actions .btn-follow i,
.vibewave-albumpage .album-page-actions .btn-ghost i,
.vibewave-search-page .search-row-action i {
    font-size: .95rem;
}

.vibewave-songpage .song-page-actions .btn-play:focus-visible,
.vibewave-songpage .song-page-actions .btn-follow:focus-visible,
.vibewave-songpage .song-page-copy-icon-btn:focus-visible,
.vibewave-albumpage .album-page-actions .btn-play:focus-visible,
.vibewave-albumpage .album-page-actions .btn-follow:focus-visible,
.vibewave-albumpage .album-page-actions .btn-ghost:focus-visible,
.vibewave-albumpage .album-page-copy-icon-btn:focus-visible,
.vibewave-search-page .search-song-title-link:focus-visible,
.vibewave-search-page .search-row-action:focus-visible {
    outline: none;
    box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.24);
}

.vibewave-songpage .song-page-copy-icon-btn,
.vibewave-albumpage .album-page-copy-icon-btn,
.vibewave-search-page .search-row-action {
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
    padding: 0;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.vibewave-songpage .song-page-copy-icon-btn,
.vibewave-albumpage .album-page-copy-icon-btn {
    border: 1px solid rgba(255,255,255,0.08);
    background: rgba(255,255,255,0.05);
    color: var(--vw-text-soft);
    transition: background .18s ease, color .18s ease, transform .18s ease, border-color .18s ease;
}

.vibewave-songpage .song-page-copy-icon-btn:hover,
.vibewave-albumpage .album-page-copy-icon-btn:hover {
    transform: translateY(-1px);
    background: rgba(139, 92, 246, 0.12);
    border-color: rgba(139, 92, 246, 0.22);
    color: #fff;
}

.vibewave-search-page .search-song-row {
    padding: 12px 14px;
    gap: 14px;
}

.vibewave-search-page .search-song-left {
    gap: 12px;
    min-width: 0;
    flex: 1 1 auto;
}

.vibewave-search-page .search-song-info {
    min-width: 0;
}

.vibewave-search-page .search-song-info h4 {
    display: flex;
    align-items: center;
    min-width: 0;
}

.vibewave-search-page .search-song-title-link {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 0;
    color: #f8fafc;
    font-weight: 600;
    letter-spacing: -.01em;
    text-decoration: none;
    transition: color .18s ease, opacity .18s ease;
}

.vibewave-search-page .search-song-title-link:hover {
    color: #c4b5fd;
}

.vibewave-search-page .search-song-right {
    gap: 10px;
    align-self: stretch;
}

.vibewave-search-page .search-row-action {
    color: var(--vw-text-soft);
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.08);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.02);
    transition: background .18s ease, color .18s ease, transform .18s ease, border-color .18s ease;
}

.vibewave-search-page .search-row-action:hover {
    transform: translateY(-1px);
    background: rgba(139, 92, 246, 0.12);
    border-color: rgba(139, 92, 246, 0.22);
    color: #fff;
}

.vibewave-search-page .search-song-duration {
    min-width: 40px;
    text-align: right;
    font-size: .74rem;
}

.vibewave-search-page .search-song-cover {
    flex-shrink: 0;
    box-shadow: 0 10px 22px rgba(2, 6, 23, 0.22);
}


@media (max-width: 1280px) {
    .vibewave-homepage .sidebar,
    .vibewave-memberpage .sidebar,
    .vibewave-member-public-page .sidebar {
        width: 236px;
        padding: 18px 12px 16px;
    }

    .vibewave-homepage .logo-area,
    .vibewave-memberpage .logo-area,
    .vibewave-member-public-page .logo-area {
        padding: 4px 6px 12px;
    }

    .vibewave-homepage .logo-wordmark,
    .vibewave-memberpage .logo-wordmark,
    .vibewave-member-public-page .logo-wordmark {
        font-size: 1.22rem;
        letter-spacing: -0.032em;
    }

    .vibewave-homepage .logo-full,
    .vibewave-memberpage .logo-full,
    .vibewave-member-public-page .logo-full {
        display: none;
    }

    .vibewave-homepage .logo-main-only,
    .vibewave-memberpage .logo-main-only,
    .vibewave-member-public-page .logo-main-only {
        display: inline-block;
    }

    .vibewave-homepage .logo-compact,
    .vibewave-memberpage .logo-compact,
    .vibewave-member-public-page .logo-compact {
        display: none;
    }

    .vibewave-homepage .logo-area-wordmark::before,
    .vibewave-memberpage .logo-area-wordmark::before,
    .vibewave-member-public-page .logo-area-wordmark::before {
        width: 16%;
        opacity: 0.82;
    }
}

@media (max-width: 1080px) {
    .vibewave-homepage .sidebar,
    .vibewave-memberpage .sidebar,
    .vibewave-member-public-page .sidebar {
        width: 224px;
        padding: 16px 11px 15px;
        gap: 22px;
    }

    .vibewave-homepage .logo-area,
    .vibewave-memberpage .logo-area,
    .vibewave-member-public-page .logo-area {
        min-height: 38px;
        padding: 2px 4px 10px;
    }

    .vibewave-homepage .logo-wordmark,
    .vibewave-memberpage .logo-wordmark,
    .vibewave-member-public-page .logo-wordmark {
        font-size: 1.1rem;
        letter-spacing: -0.024em;
    }

    .vibewave-homepage .logo-sub,
    .vibewave-memberpage .logo-sub,
    .vibewave-member-public-page .logo-sub {
        font-size: 0.72em;
    }

    .vibewave-homepage .logo-area-wordmark::after,
    .vibewave-memberpage .logo-area-wordmark::after,
    .vibewave-member-public-page .logo-area-wordmark::after {
        left: 4px;
        right: 4px;
        bottom: 3px;
        height: 1.5px;
        opacity: 0.82;
    }
}

@media (max-width: 900px) {
    .vibewave-homepage .logo-full,
    .vibewave-homepage .logo-main-only,
    .vibewave-memberpage .logo-full,
    .vibewave-memberpage .logo-main-only,
    .vibewave-member-public-page .logo-full,
    .vibewave-member-public-page .logo-main-only {
        display: none;
    }

    .vibewave-homepage .logo-compact,
    .vibewave-memberpage .logo-compact,
    .vibewave-member-public-page .logo-compact {
        display: inline-block;
        font-size: 1em;
        letter-spacing: -0.02em;
    }

    .vibewave-songpage .song-page-actions .btn-play,
    .vibewave-albumpage .album-page-actions .btn-play,
    .vibewave-songpage .song-page-actions .btn-follow,
    .vibewave-albumpage .album-page-actions .btn-follow,
    .vibewave-albumpage .album-page-actions .btn-ghost {
        min-width: 0;
    }

    .vibewave-search-page .search-song-row {
        padding: 12px;
    }

    .vibewave-search-page .search-song-title-link {
        min-height: 0;
    }
}

/* V2.6D R3 unified hero greeting */
.hero .greeting #greetingSub,
.hero .greeting p#greetingSub,
.hero .greeting .greeting-sub {
    display: none !important;
}

.hero .greeting #greetingText {
    margin-bottom: 0 !important;
}

/* V2.6D R4 contextual thin header */
.vibewave-homepage .sticky-header,
.vibewave-memberpage .sticky-header,
.vibewave-member-public-page .sticky-header {
    padding-bottom: 0;
    margin-bottom: 14px;
    background: linear-gradient(180deg, rgba(8,9,18,0.92), rgba(8,9,18,0.68) 72%, transparent);
}

.vibewave-homepage .hero.is-contextual-hero,
.vibewave-memberpage .hero.is-contextual-hero,
.vibewave-member-public-page .hero.is-contextual-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 12px 16px;
    border-radius: 18px;
    background: linear-gradient(145deg, rgba(14, 17, 30, 0.94), rgba(9, 12, 21, 0.9));
    border: 1px solid rgba(255,255,255,0.07);
    box-shadow: 0 12px 28px rgba(2, 6, 23, 0.22);
}

.vibewave-homepage .hero.is-contextual-hero .greeting,
.vibewave-memberpage .hero.is-contextual-hero .greeting,
.vibewave-member-public-page .hero.is-contextual-hero .greeting {
    display: flex;
    align-items: center;
    min-width: 0;
    flex: 1 1 auto;
}

.vibewave-homepage .hero.is-contextual-hero .greeting #greetingText,
.vibewave-memberpage .hero.is-contextual-hero .greeting #greetingText,
.vibewave-member-public-page .hero.is-contextual-hero .greeting #greetingText {
    margin: 0;
    font-size: clamp(1.16rem, 1.02rem + 0.26vw, 1.34rem);
    font-weight: 800;
    letter-spacing: -0.038em;
    line-height: 1.08;
    color: #fbfdff;
    text-wrap: balance;
    text-shadow: 0 1px 0 rgba(255,255,255,0.04), 0 10px 22px rgba(2, 6, 23, 0.20);
}

.vibewave-homepage .hero.is-contextual-hero .hero-search,
.vibewave-memberpage .hero.is-contextual-hero .hero-search,
.vibewave-member-public-page .hero.is-contextual-hero .hero-search {
    flex: 0 1 420px;
    width: min(100%, 420px);
}

.vibewave-homepage .hero.is-contextual-hero .hero-search form,
.vibewave-memberpage .hero.is-contextual-hero .hero-search form,
.vibewave-member-public-page .hero.is-contextual-hero .hero-search form {
    min-width: 0;
    width: 100%;
    padding: 6px 8px 6px 14px;
    gap: 8px;
    border-radius: 999px;
    background: rgba(7, 10, 18, 0.72);
    border-color: rgba(255,255,255,0.07);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.02);
}

.vibewave-homepage .hero.is-contextual-hero .hero-search input,
.vibewave-memberpage .hero.is-contextual-hero .hero-search input,
.vibewave-member-public-page .hero.is-contextual-hero .hero-search input {
    width: 100%;
    font-size: .88rem;
}

.vibewave-homepage .hero.is-contextual-hero .hero-search button,
.vibewave-memberpage .hero.is-contextual-hero .hero-search button,
.vibewave-member-public-page .hero.is-contextual-hero .hero-search button {
    min-width: 70px;
    padding: 9px 14px;
    font-size: .78rem;
    box-shadow: 0 8px 20px rgba(99, 102, 241, 0.22);
}

@media (max-width: 900px) {
    .vibewave-homepage .hero.is-contextual-hero,
    .vibewave-memberpage .hero.is-contextual-hero,
    .vibewave-member-public-page .hero.is-contextual-hero {
        align-items: stretch;
        flex-direction: column;
        padding: 12px 14px;
        gap: 10px;
    }

    .vibewave-homepage .hero.is-contextual-hero .hero-search,
    .vibewave-memberpage .hero.is-contextual-hero .hero-search,
    .vibewave-member-public-page .hero.is-contextual-hero .hero-search {
        width: 100%;
        flex-basis: auto;
    }
}


/* V2.6D R4.3 contextual emphasis + sidebar logo */
@media (max-width: 900px) {
    .vibewave-homepage .hero.is-contextual-hero .greeting #greetingText,
    .vibewave-memberpage .hero.is-contextual-hero .greeting #greetingText,
    .vibewave-member-public-page .hero.is-contextual-hero .greeting #greetingText {
        font-size: 1.08rem;
        letter-spacing: -0.03em;
    }

    .vibewave-homepage .logo-area,
    .vibewave-memberpage .logo-area,
    .vibewave-member-public-page .logo-area {
        padding-bottom: 10px;
    }

    .vibewave-homepage .logo-wordmark,
    .vibewave-memberpage .logo-wordmark,
    .vibewave-member-public-page .logo-wordmark {
        font-size: 1rem;
        letter-spacing: -0.018em;
    }

    .vibewave-homepage .logo-sub,
    .vibewave-memberpage .logo-sub,
    .vibewave-member-public-page .logo-sub {
        font-size: 0.7em;
    }

    .vibewave-homepage .logo-area-wordmark::before,
    .vibewave-memberpage .logo-area-wordmark::before,
    .vibewave-member-public-page .logo-area-wordmark::before {
        display: none;
    }

    .vibewave-homepage .logo-area-wordmark::after,
    .vibewave-memberpage .logo-area-wordmark::after,
    .vibewave-member-public-page .logo-area-wordmark::after {
        left: 2px;
        right: 2px;
        bottom: 2px;
        opacity: 0.75;
    }
}


/* R4.6: robust responsive sidebar logo */
.sidebar .logo-area-wordmark {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
}

.sidebar .logo-area-wordmark .logo-wordmark {
    display: inline-flex;
    align-items: baseline;
    max-width: 100%;
    min-width: 0;
    font-size: clamp(1.08rem, 0.92rem + 0.34vw, 1.36rem);
    letter-spacing: -0.028em;
}

.sidebar .logo-area-wordmark .logo-full,
.sidebar .logo-area-wordmark .logo-main-only,
.sidebar .logo-area-wordmark .logo-compact {
    max-width: 100%;
    min-width: 0;
    white-space: nowrap;
}

.sidebar .logo-area-wordmark .logo-full {
    display: inline-flex !important;
    align-items: baseline;
}

.sidebar .logo-area-wordmark .logo-main-only,
.sidebar .logo-area-wordmark .logo-compact {
    display: none !important;
}

.sidebar .logo-area-wordmark .logo-main,
.sidebar .logo-area-wordmark .logo-main-only,
.sidebar .logo-area-wordmark .logo-compact {
    overflow: hidden;
    text-overflow: clip;
}

.sidebar .logo-area-wordmark .logo-sub {
    flex: 0 0 auto;
    margin-left: 0.06em;
}

.sidebar .logo-area-wordmark::after {
    left: 4px;
    right: 4px;
    bottom: 3px;
}

@media (max-width: 1280px) {
    .sidebar .logo-area-wordmark .logo-wordmark {
        font-size: clamp(1rem, 0.9rem + 0.26vw, 1.18rem);
        letter-spacing: -0.022em;
    }

    .sidebar .logo-area-wordmark .logo-full {
        display: none !important;
    }

    .sidebar .logo-area-wordmark .logo-main-only {
        display: inline-block !important;
    }

    .sidebar .logo-area-wordmark::before {
        width: 14%;
        opacity: 0.72;
    }
}

@media (max-width: 900px) {
    .sidebar .logo-area-wordmark .logo-wordmark {
        font-size: 0.98rem;
        letter-spacing: -0.016em;
    }

    .sidebar .logo-area-wordmark .logo-full,
    .sidebar .logo-area-wordmark .logo-main-only {
        display: none !important;
    }

    .sidebar .logo-area-wordmark .logo-compact {
        display: inline-block !important;
    }

    .sidebar .logo-area-wordmark::before {
        display: none;
    }

    .sidebar .logo-area-wordmark::after {
        left: 2px;
        right: 2px;
        opacity: 0.72;
    }
}


/* R4.8: clean up sidebar account header + lighter right column */
.vibewave-homepage .playlist-header,
.vibewave-memberpage .playlist-header,
.vibewave-member-public-page .playlist-header {
    justify-content: flex-start;
}

.vibewave-homepage .playlist-header i,
.vibewave-memberpage .playlist-header i,
.vibewave-member-public-page .playlist-header i {
    display: none !important;
}

.vibewave-homepage .right-panel > *,
.vibewave-homepage .vw-rightpanel-block,
.vibewave-homepage .notification-box,
.vibewave-memberpage .member-right-panel > *,
.vibewave-memberpage .member-right-panel .vw-rightpanel-block,
.vibewave-memberpage .member-right-panel .notification-box,
.vibewave-member-public-page .member-right-panel > *,
.vibewave-member-public-page .member-right-panel .vw-rightpanel-block,
.vibewave-member-public-page .member-right-panel .notification-box {
    background: transparent;
    border: 0;
    box-shadow: none;
    border-radius: 0;
}

.vibewave-homepage .new-header,
.vibewave-memberpage .member-right-panel .new-header,
.vibewave-member-public-page .member-right-panel .new-header {
    min-height: 0;
    padding: 0 4px 10px;
    border-bottom: 0;
}

.vibewave-homepage .new-track-list,
.vibewave-homepage .trending-list,
.vibewave-homepage .right-panel-mini-grid,
.vibewave-memberpage .member-right-panel .new-track-list,
.vibewave-memberpage .member-right-panel .trending-list,
.vibewave-memberpage .member-right-panel .right-panel-mini-grid,
.vibewave-member-public-page .member-right-panel .new-track-list,
.vibewave-member-public-page .member-right-panel .trending-list,
.vibewave-member-public-page .member-right-panel .right-panel-mini-grid {
    padding: 0;
}

.vibewave-homepage .notification-content,
.vibewave-memberpage .member-right-panel .notification-content,
.vibewave-member-public-page .member-right-panel .notification-content {
    padding: 2px 4px 0;
    background: transparent;
    border: 0;
    box-shadow: none;
}


/* R4.10: remove announcement icon to give text more width */
.vibewave-homepage .notification-content--wide,
.vibewave-memberpage .member-right-panel .notification-content--wide,
.vibewave-member-public-page .member-right-panel .notification-content--wide {
    gap: 0;
    align-items: flex-start;
}

.vibewave-homepage .notification-text--wide,
.vibewave-memberpage .member-right-panel .notification-text--wide,
.vibewave-member-public-page .member-right-panel .notification-text--wide {
    width: 100%;
    max-width: 100%;
}


/* R4.11: force-remove notification gift icon everywhere so text can use full width */
.vibewave-homepage .notification-box .notification-image,
.vibewave-memberpage .member-right-panel .notification-box .notification-image,
.vibewave-member-public-page .member-right-panel .notification-box .notification-image,
.vibewave-login-page .notification-box .notification-image,
.notification-box .notification-image {
    display: none !important;
}

.vibewave-homepage .notification-box .notification-content,
.vibewave-memberpage .member-right-panel .notification-box .notification-content,
.vibewave-member-public-page .member-right-panel .notification-box .notification-content,
.vibewave-login-page .notification-box .notification-content,
.notification-box .notification-content {
    gap: 0 !important;
    align-items: flex-start !important;
}

.vibewave-homepage .notification-box .notification-text,
.vibewave-memberpage .member-right-panel .notification-box .notification-text,
.vibewave-member-public-page .member-right-panel .notification-box .notification-text,
.vibewave-login-page .notification-box .notification-text,
.notification-box .notification-text {
    width: 100%;
    max-width: 100%;
}


/* R4.14: category page compact header keeps rounded hero, but category items are menu-like */
.vibewave-category-page .hero.hero-category-compact {
    align-items: center;
    gap: 18px;
    padding: 18px 20px;
    background: linear-gradient(180deg, rgba(8, 15, 39, 0.96), rgba(6, 11, 30, 0.92));
    border: 1px solid rgba(118, 97, 255, 0.14);
    border-radius: 24px;
    box-shadow: 0 18px 46px -34px rgba(16, 24, 56, 0.96), inset 0 1px 0 rgba(255,255,255,0.03);
}

.vibewave-category-page .hero.hero-category-compact .hero-category-nav {
    min-width: 0;
    flex: 1 1 auto;
}

.vibewave-category-page .hero.hero-category-compact .hero-category-nav-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
    align-items: center;
}

.vibewave-category-page .hero.hero-category-compact .hero-category-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 30px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: rgba(215, 221, 245, 0.88);
    font-size: 0.95rem;
    font-weight: 600;
    letter-spacing: 0.01em;
    text-decoration: none;
    transition: color .18s ease, opacity .18s ease, transform .18s ease;
}

.vibewave-category-page .hero.hero-category-compact .hero-category-link i {
    width: 18px;
    text-align: center;
    color: rgba(190, 171, 255, 0.86);
    font-size: 0.96rem;
    flex: 0 0 auto;
}

.vibewave-category-page .hero.hero-category-compact .hero-category-link span {
    display: inline-block;
}

.vibewave-category-page .hero.hero-category-compact .hero-category-link:hover {
    color: #ffffff;
    transform: translateY(-1px);
}

.vibewave-category-page .hero.hero-category-compact .hero-category-link:hover i,
.vibewave-category-page .hero.hero-category-compact .hero-category-link.is-active i {
    color: #c6b8ff;
}

.vibewave-category-page .hero.hero-category-compact .hero-category-link.is-active {
    color: #ffffff;
    text-shadow: 0 0 20px rgba(139, 92, 246, 0.18);
}

.vibewave-category-page .hero.hero-category-compact .greeting,
.vibewave-category-page .hero.hero-category-compact #greetingBox,
.vibewave-category-page .hero.hero-category-compact #greetingText,
.vibewave-category-page .hero.hero-category-compact #greetingSub {
    display: none !important;
}

.vibewave-category-page .sidebar,
.vibewave-category-page .right-panel {
    align-self: stretch;
}

.vibewave-category-page .right-panel {
    padding-top: 18px;
}

.vibewave-category-page .main-content {
    min-width: 0;
}

.vibewave-category-page .global-player-shell,
.vibewave-category-page .xt-global-player-shell,
.vibewave-category-page #globalPlayerShell {
    z-index: 1200;
}

@media (max-width: 1180px) {
    .vibewave-category-page .hero.hero-category-compact {
        gap: 14px;
    }

    .vibewave-category-page .hero.hero-category-compact {
        padding: 16px 18px;
        gap: 14px;
    }

    .vibewave-category-page .hero.hero-category-compact .hero-category-nav-list {
        gap: 9px 16px;
    }

    .vibewave-category-page .hero.hero-category-compact .hero-category-link {
        font-size: 0.9rem;
    }
}

@media (max-width: 768px) {
    .vibewave-category-page .hero.hero-category-compact {
        gap: 12px;
    }

    .vibewave-category-page .hero.hero-category-compact {
        padding: 14px 16px;
        border-radius: 20px;
    }

    .vibewave-category-page .hero.hero-category-compact .hero-category-nav-list {
        gap: 8px 14px;
    }

    .vibewave-category-page .hero.hero-category-compact .hero-category-link {
        gap: 8px;
        font-size: 0.84rem;
    }

    .vibewave-category-page .hero.hero-category-compact .hero-category-link i {
        width: 16px;
        font-size: 0.88rem;
    }
}


/* R4.15: tighter category hero spacing + category page shell/player stability */
.vibewave-category-page .hero.hero-category-compact {
    gap: 14px;
    padding: 16px 18px;
}

.vibewave-category-page .hero.hero-category-compact .hero-category-nav-list {
    gap: 6px 12px;
}

.vibewave-category-page .hero.hero-category-compact .hero-category-link {
    gap: 8px;
    min-height: 26px;
    font-size: 0.92rem;
}

.vibewave-category-page .hero.hero-category-compact .hero-category-link i {
    width: 16px;
    font-size: 0.88rem;
}

.vibewave-category-page .sidebar {
    align-self: stretch;
}

.vibewave-category-page .right-panel {
    align-self: stretch;
    padding-top: 18px;
}

.vibewave-category-page .global-player-shell,
.vibewave-category-page .xt-global-player-shell,
.vibewave-category-page #xt-global-player-shell,
.vibewave-category-page #globalPlayerShell {
    position: fixed;
    inset-inline: 0;
    bottom: 0;
    z-index: 1200;
}

@media (max-width: 1180px) {
    .vibewave-category-page .hero.hero-category-compact {
        gap: 12px;
        padding: 15px 16px;
    }

    .vibewave-category-page .hero.hero-category-compact .hero-category-nav-list {
        gap: 6px 10px;
    }

    .vibewave-category-page .hero.hero-category-compact .hero-category-link {
        font-size: 0.88rem;
    }
}

@media (max-width: 768px) {
    .vibewave-category-page .hero.hero-category-compact {
        gap: 10px;
        padding: 14px 15px;
    }

    .vibewave-category-page .hero.hero-category-compact .hero-category-nav-list {
        gap: 5px 9px;
    }

    .vibewave-category-page .hero.hero-category-compact .hero-category-link {
        gap: 7px;
        min-height: 24px;
        font-size: 0.82rem;
    }

    .vibewave-category-page .hero.hero-category-compact .hero-category-link i {
        width: 14px;
        font-size: 0.82rem;
    }
}


/* R4.17: category dual-column heading balance */
.vibewave-category-page .category-columns-grid--songs-popular {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 18px;
    align-items: start;
}

.vibewave-category-page .category-columns-grid--songs-popular .category-column-card {
    padding: 18px 18px 16px;
}

.vibewave-category-page .category-columns-grid--songs-popular .category-column-head {
    margin-bottom: 12px;
    padding-bottom: 10px;
    gap: 10px;
    align-items: center;
}

.vibewave-category-page .category-columns-grid--songs-popular .category-column-head h2 {
    margin: 0;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 1rem;
    font-weight: 800;
    letter-spacing: -0.01em;
    line-height: 1.15;
}

.vibewave-category-page .category-columns-grid--songs-popular .category-column-head h2 i {
    font-size: 0.92em;
    opacity: 0.88;
}

.vibewave-category-page .category-columns-grid--songs-popular .category-song-list {
    gap: 8px;
}

.vibewave-category-page .category-columns-grid--songs-popular .category-song-row {
    padding: 10px 12px;
}

.vibewave-category-page .category-columns-grid--songs-popular .category-pagination {
    margin-top: 12px;
}

@media (max-width: 768px) {
    .vibewave-category-page .category-columns-grid--songs-popular {
        gap: 14px;
    }

    .vibewave-category-page .category-columns-grid--songs-popular .category-column-card {
        padding: 16px 14px 14px;
    }

    .vibewave-category-page .category-columns-grid--songs-popular .category-column-head {
        margin-bottom: 10px;
        padding-bottom: 8px;
    }
}


/* R4.19: remove contextual title and reuse category-style header nav on all public pages */
.main-content .hero.hero-category-compact {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 18px;
    border-radius: 24px;
    justify-content: space-between;
    overflow: hidden;
}

.main-content .hero.hero-category-compact .hero-category-nav {
    flex: 1 1 auto;
    min-width: 0;
    max-width: none;
}

.main-content .hero.hero-category-compact .hero-category-nav-list {
    display: flex;
    align-items: center;
    gap: 10px 14px;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 2px 2px 4px;
    scrollbar-width: none;
}

.main-content .hero.hero-category-compact .hero-category-nav-list::-webkit-scrollbar {
    display: none;
}

.main-content .hero.hero-category-compact .hero-category-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    flex: 0 0 auto;
    color: rgba(241, 245, 249, 0.86);
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.1;
    padding: 8px 0;
    border: 0;
    background: transparent;
    border-radius: 999px;
    transition: color .18s ease, opacity .18s ease, transform .18s ease;
}

.main-content .hero.hero-category-compact .hero-category-link i {
    font-size: 13px;
    color: rgba(129, 140, 248, 0.92);
    transition: color .18s ease, transform .18s ease;
}

.main-content .hero.hero-category-compact .hero-category-link span {
    white-space: nowrap;
}

.main-content .hero.hero-category-compact .hero-category-link:hover,
.main-content .hero.hero-category-compact .hero-category-link.is-active {
    color: #ffffff;
}

.main-content .hero.hero-category-compact .hero-category-link:hover i,
.main-content .hero.hero-category-compact .hero-category-link.is-active i {
    color: #f8fafc;
    transform: translateY(-1px);
}

.main-content .hero.hero-category-compact .greeting,
.main-content .hero.hero-category-compact #greetingBox,
.main-content .hero.hero-category-compact #greetingText,
.main-content .hero.hero-category-compact #greetingSub {
    display: none !important;
}

.main-content .hero.hero-category-compact .hero-search {
    flex: 0 0 min(340px, 36vw);
    width: min(340px, 36vw);
    margin-left: auto;
}

.main-content .hero.hero-category-compact .hero-search form {
    width: 100%;
    min-width: 0;
}

.main-content .hero.hero-category-compact .hero-search input {
    min-width: 0;
    width: 100%;
}

@media (max-width: 1080px) {
    .main-content .hero.hero-category-compact .hero-search {
        flex-basis: min(320px, 42vw);
        width: min(320px, 42vw);
    }
}

@media (max-width: 860px) {
    .main-content .hero.hero-category-compact {
        flex-direction: column;
        align-items: stretch;
    }

    .main-content .hero.hero-category-compact .hero-search {
        flex: 1 1 auto;
        width: 100%;
    }
}

@media (max-width: 1180px) {
    .main-content .hero.hero-category-compact {
        gap: 14px;
        padding: 13px 16px;
    }

    .main-content .hero.hero-category-compact .hero-category-nav-list {
        gap: 9px 12px;
    }
}

@media (max-width: 860px) {
    .main-content .hero.hero-category-compact {
        padding: 12px 14px;
    }

    .main-content .hero.hero-category-compact .hero-category-link {
        font-size: 13px;
        gap: 6px;
    }

    .main-content .hero.hero-category-compact .hero-category-link i {
        font-size: 12px;
    }
}


/* R4.20: responsive category-nav density + smoother horizontal scroll */
.main-content .hero.hero-category-compact .hero-category-nav {
    position: relative;
    min-width: 0;
    max-width: none;
}

.main-content .hero.hero-category-compact .hero-category-nav::after {
    display: none;
}

.main-content .hero.hero-category-compact .hero-category-nav-list {
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-inline: contain;
    scroll-snap-type: x proximity;
    scroll-padding-inline: 2px;
    touch-action: pan-x;
    mask-image: none;
    -webkit-mask-image: none;
    padding-right: 0;
}

.main-content .hero.hero-category-compact .hero-category-link {
    scroll-snap-align: start;
}

@media (max-width: 1280px) {
    .main-content .hero.hero-category-compact .hero-category-nav-list {
        gap: 8px 11px;
    }

    .main-content .hero.hero-category-compact .hero-category-link {
        font-size: 13px;
        gap: 6px;
        padding: 7px 0;
    }

    .main-content .hero.hero-category-compact .hero-category-link i {
        font-size: 12px;
    }
}

@media (max-width: 1080px) {
    .main-content .hero.hero-category-compact {
        gap: 12px;
    }

    .main-content .hero.hero-category-compact .hero-category-nav-list {
        gap: 7px 10px;
    }
}

@media (max-width: 860px) {
    .main-content .hero.hero-category-compact {
        grid-template-columns: 1fr;
        align-items: stretch;
    }

    .main-content .hero.hero-category-compact .hero-category-nav {
        max-width: 100%;
    }

    .main-content .hero.hero-category-compact .hero-category-nav::after {
        display: none;
        width: 0;
        opacity: 0;
    }

    .main-content .hero.hero-category-compact .hero-category-nav-list {
        gap: 6px 9px;
        padding-right: 14px;
    }
}




/* V3.0E9 hotfix: remove left/right edge fade on hero categories */
.main-content .hero.hero-category-compact .hero-category-nav::before,
.main-content .hero.hero-category-compact .hero-category-nav::after {
    display: none !important;
    content: none !important;
}
.main-content .hero.hero-category-compact .hero-category-nav-list {
    mask-image: none !important;
    -webkit-mask-image: none !important;
    padding-inline-end: 0 !important;
}

/* V3.0E9 hotfix5: remove dark sticky-header corner bleed around compact hero */
.vibewave-homepage .sticky-header,
.vibewave-memberpage .sticky-header,
.vibewave-member-public-page .sticky-header {
    background: transparent !important;
    box-shadow: none !important;
}

.vibewave-homepage .sticky-header .hero.hero-category-compact,
.vibewave-memberpage .sticky-header .hero.hero-category-compact,
.vibewave-member-public-page .sticky-header .hero.hero-category-compact {
    position: relative;
    isolation: isolate;
}
