/* Paxor Music — Artist Studio v2
   Loaded after paxor_music.css so these rules intentionally override the legacy studio layout. */

body:has(.artist-studio-v2) {
    background: #070a0c;
}

body:has(.artist-studio-v2) .main-content {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
}

.artist-studio-v2 {
    --artist-accent: #20d9ff;
    --artist-page-width: 1480px;
    --artist-sidebar-width: 272px;
    min-height: calc(100dvh - var(--paxor-menu-height, 62px));
    padding: 0 0 88px;
    overflow: clip;
    background:
        radial-gradient(circle at 88% 2%, color-mix(in srgb, var(--artist-accent) 10%, transparent), transparent 28rem),
        linear-gradient(180deg, #070a0c 0%, #090d10 42%, #070a0c 100%);
    color: var(--music-text, #f7fbfc);
}

.artist-studio-v2 *,
.artist-studio-v2 *::before,
.artist-studio-v2 *::after {
    box-sizing: border-box;
}

.artist-studio-v2 section[id] {
    scroll-margin-top: calc(var(--paxor-menu-height, 62px) + 24px);
}

/* --------------------------------------------------------------------------
   Full-width artist header
   -------------------------------------------------------------------------- */

.artist-hero {
    position: relative;
    width: 100%;
    border-bottom: 1px solid rgba(255, 255, 255, .09);
    background: #0b1013;
    box-shadow: 0 24px 70px rgba(0, 0, 0, .32);
}

.artist-hero-banner,
.artist-preview-banner.artist-hero-banner {
    position: relative;
    isolation: isolate;
    min-height: clamp(270px, 31vw, 430px);
    width: 100%;
    padding: 0;
    overflow: hidden;
    display: block;
    border: 0;
    background:
        linear-gradient(180deg, rgba(3, 8, 11, .18), rgba(3, 8, 11, .72)),
        radial-gradient(circle at 76% 42%, color-mix(in srgb, var(--artist-accent) 45%, transparent), transparent 28%),
        linear-gradient(120deg, #071318 0%, #102932 42%, #071014 100%);
    background-position: center;
    background-size: cover;
    color: #fff;
}

.artist-hero-banner::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        linear-gradient(90deg, rgba(3, 7, 9, .85) 0%, rgba(3, 7, 9, .24) 48%, rgba(3, 7, 9, .4) 100%),
        linear-gradient(180deg, rgba(0, 0, 0, .08) 0%, rgba(0, 0, 0, .04) 48%, rgba(0, 0, 0, .88) 100%);
    pointer-events: none;
}

.artist-hero-banner::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    opacity: 0;
    background: rgba(0, 0, 0, .24);
    backdrop-filter: blur(1px);
    transition: opacity .2s ease;
    pointer-events: none;
}

.artist-hero-banner:hover::after,
.artist-hero-banner:focus-within::after {
    opacity: 1;
}

.artist-hero-topbar {
    position: relative;
    z-index: 3;
    width: min(var(--artist-page-width), calc(100% - 48px));
    margin: 0 auto;
    padding-top: 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.artist-studio-v2 .artist-back-link {
    margin: 0;
    min-height: 42px;
    padding: 0 15px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 999px;
    background: rgba(4, 9, 12, .55);
    color: rgba(255, 255, 255, .88);
    font-size: 12px;
    font-weight: 800;
    backdrop-filter: blur(16px);
    transition: border-color .18s ease, background .18s ease, color .18s ease;
}

.artist-studio-v2 .artist-back-link:hover {
    border-color: color-mix(in srgb, var(--artist-accent) 66%, transparent);
    background: rgba(4, 9, 12, .76);
    color: #fff;
}

.artist-studio-v2 .artist-studio-status {
    min-height: 38px;
    padding: 0 13px;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 999px;
    background: rgba(4, 9, 12, .55);
    color: rgba(255, 255, 255, .72);
    font-size: 11px;
    font-weight: 800;
    backdrop-filter: blur(16px);
}

.artist-studio-v2 .artist-studio-status > span:first-child {
    width: 8px;
    height: 8px;
    background: #31dd75;
    box-shadow: 0 0 14px rgba(49, 221, 117, .8);
}

.artist-hero-branding {
    position: absolute;
    z-index: 2;
    left: max(24px, calc((100% - var(--artist-page-width)) / 2));
    bottom: 48px;
    display: grid;
    gap: 8px;
    pointer-events: none;
}

.artist-hero-branding .music-kicker {
    color: color-mix(in srgb, var(--artist-accent) 88%, white);
    letter-spacing: .12em;
}

.artist-hero-title {
    font-size: clamp(34px, 5vw, 72px);
    font-weight: 900;
    letter-spacing: -.055em;
    line-height: .95;
    text-shadow: 0 10px 36px rgba(0, 0, 0, .5);
}

.artist-cover-change {
    position: absolute;
    z-index: 4;
    right: max(24px, calc((100% - var(--artist-page-width)) / 2));
    bottom: 34px;
    min-height: 48px;
    padding: 0 18px 0 10px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 999px;
    background: rgba(4, 9, 12, .76);
    color: #fff;
    font-size: 12px;
    font-weight: 850;
    cursor: pointer;
    opacity: 0;
    transform: translateY(8px);
    backdrop-filter: blur(18px);
    box-shadow: 0 14px 34px rgba(0, 0, 0, .3);
    transition: opacity .18s ease, transform .18s ease, border-color .18s ease;
}

.artist-hero-banner:hover .artist-cover-change,
.artist-cover-change:focus-within,
.artist-cover-change:focus-visible {
    opacity: 1;
    transform: translateY(0);
}

.artist-cover-change:hover {
    border-color: var(--artist-accent);
}

.artist-cover-change input,
.artist-avatar-editor input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.artist-image-change-icon {
    width: 32px;
    height: 32px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: color-mix(in srgb, var(--artist-accent) 18%, rgba(255, 255, 255, .08));
    color: var(--artist-accent);
}

.artist-hero-profile {
    position: relative;
    z-index: 5;
    width: min(var(--artist-page-width), calc(100% - 48px));
    min-height: 154px;
    margin: 0 auto;
    padding: 0 0 28px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: end;
    gap: 24px;
}

.artist-avatar-editor {
    position: relative;
    width: 150px;
    height: 150px;
    margin-top: -76px;
    display: block;
    flex: 0 0 150px;
    border-radius: 50%;
    cursor: pointer;
}

.artist-studio-v2 .artist-avatar {
    width: 150px;
    height: 150px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border: 6px solid #0b1013;
    border-radius: 50%;
    background-color: #182329;
    background-position: center;
    background-size: cover;
    color: var(--artist-accent);
    font-size: 40px;
    box-shadow:
        0 18px 46px rgba(0, 0, 0, .45),
        0 0 0 1px rgba(255, 255, 255, .09);
}

.artist-avatar-change {
    position: absolute;
    inset: 6px;
    display: grid;
    place-items: center;
    align-content: center;
    gap: 6px;
    border-radius: 50%;
    background: rgba(2, 7, 9, .7);
    color: #fff;
    font-size: 22px;
    opacity: 0;
    transform: scale(.96);
    backdrop-filter: blur(4px);
    transition: opacity .18s ease, transform .18s ease;
}

.artist-avatar-change small {
    color: #fff;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.artist-avatar-editor:hover .artist-avatar-change,
.artist-avatar-editor:focus-within .artist-avatar-change {
    opacity: 1;
    transform: scale(1);
}

.artist-hero-copy {
    min-width: 0;
    padding-bottom: 8px;
}

.artist-studio-v2 .artist-verified {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--artist-accent);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .08em;
}

.artist-hero-copy h1 {
    margin: 6px 0 7px;
    overflow: hidden;
    color: #fff;
    font-size: clamp(28px, 3vw, 46px);
    font-weight: 900;
    letter-spacing: -.035em;
    line-height: 1.05;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.artist-hero-copy p {
    max-width: 720px;
    margin: 0;
    color: #9caab0;
    font-size: 14px;
    line-height: 1.55;
}

.artist-public-page-link {
    margin-bottom: 10px;
    white-space: nowrap;
}

.artist-dashboard-strip {
    width: min(var(--artist-page-width), calc(100% - 48px));
    margin: 0 auto 28px;
    display: grid;
    grid-template-columns: repeat(3, minmax(118px, .34fr)) minmax(340px, 1fr);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 16px;
    background: rgba(255, 255, 255, .025);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04);
}

.artist-dashboard-stat {
    min-height: 96px;
    padding: 18px 22px;
    display: grid;
    align-content: center;
    gap: 4px;
    border-right: 1px solid rgba(255, 255, 255, .08);
}

.artist-dashboard-stat strong {
    color: #fff;
    font-size: 27px;
    font-weight: 900;
    line-height: 1;
}

.artist-dashboard-stat span {
    color: #829096;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .04em;
}

.artist-wallet-card {
    min-width: 0;
    min-height: 96px;
    padding: 16px 18px;
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr) auto;
    align-items: center;
    gap: 13px;
    background: linear-gradient(110deg, rgba(255, 255, 255, .02), color-mix(in srgb, var(--artist-accent) 5%, transparent));
}

.artist-wallet-card.connected {
    background: linear-gradient(110deg, rgba(49, 221, 117, .06), color-mix(in srgb, var(--artist-accent) 7%, transparent));
}

.artist-wallet-icon {
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 13px;
    background: rgba(255, 255, 255, .045);
    color: #87969c;
}

.artist-wallet-card.connected .artist-wallet-icon {
    border-color: rgba(49, 221, 117, .28);
    background: rgba(49, 221, 117, .09);
    color: #31dd75;
}

.artist-wallet-copy {
    min-width: 0;
    display: grid;
    gap: 5px;
}

.artist-wallet-copy strong,
.artist-wallet-copy small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.artist-wallet-copy strong {
    color: #fff;
    font-size: 13px;
    font-weight: 850;
}

.artist-wallet-copy small {
    color: #7f8c92;
    font-size: 10px;
    font-weight: 700;
}

.artist-wallet-action {
    min-height: 38px;
    padding: 0 12px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 10px;
    background: rgba(255, 255, 255, .04);
    color: #fff;
    font: inherit;
    font-size: 10px;
    font-weight: 850;
    cursor: pointer;
}

.artist-wallet-action:hover {
    border-color: var(--artist-accent);
    color: var(--artist-accent);
}

/* --------------------------------------------------------------------------
   Sidebar + content
   -------------------------------------------------------------------------- */

.artist-workspace {
    position: relative;
    z-index: 1;
    width: min(var(--artist-page-width), calc(100% - 48px));
    min-height: 620px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: var(--artist-sidebar-width) minmax(0, 1fr);
    gap: 28px;
    align-items: start;
}

.artist-studio-sidebar {
    /* The studio uses tabs, so the menu must stay in the normal document flow.
       Sticky positioning made it climb over the artist header and KPI strip. */
    position: relative;
    top: auto;
    align-self: start;
    min-width: 0;
    max-height: none;
    overflow: visible;
    border: 1px solid rgba(32, 217, 255, .22);
    border-radius: 18px;
    background:
        linear-gradient(180deg, rgba(32, 217, 255, .055), transparent 150px),
        #0c1114;
    box-shadow: 0 24px 60px rgba(0, 0, 0, .34), inset 0 1px 0 rgba(255, 255, 255, .05);
    scrollbar-width: thin;
}

.artist-sidebar-heading {
    min-height: 76px;
    padding: 16px;
    display: flex;
    align-items: center;
    gap: 12px;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.artist-sidebar-heading > span:last-child {
    min-width: 0;
    display: grid;
    gap: 3px;
}

.artist-sidebar-heading strong {
    color: #fff;
    font-size: 15px;
    font-weight: 900;
}

.artist-sidebar-heading small {
    color: #74838a;
    font-size: 10px;
    font-weight: 700;
}

.artist-sidebar-mark {
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(32, 217, 255, .34);
    border-radius: 12px;
    background: rgba(32, 217, 255, .10);
    color: var(--artist-accent);
    box-shadow: 0 0 24px rgba(32, 217, 255, .08);
}

.artist-studio-nav {
    padding: 10px;
    display: grid;
    gap: 3px;
}

.artist-nav-group {
    padding: 12px 0;
    display: grid;
    gap: 6px;
    border-bottom: 1px solid rgba(255, 255, 255, .065);
}

.artist-nav-group:last-child {
    border-bottom: 0;
}

.artist-nav-label {
    padding: 0 10px 5px;
    color: #79dff0;
    font-size: 10px;
    font-weight: 950;
    letter-spacing: .105em;
}

.artist-nav-link {
    position: relative;
    width: 100%;
    min-width: 0;
    min-height: 58px;
    padding: 10px 11px 10px 14px;
    display: grid;
    grid-template-columns: 25px minmax(0, 1fr);
    align-items: center;
    gap: 11px;
    overflow: hidden;
    border: 1px solid transparent;
    border-radius: 12px;
    background: rgba(255, 255, 255, .018);
    color: #dbe5e8;
    text-align: left;
    font: inherit;
    cursor: pointer;
    transition: color .16s ease, background .16s ease, border-color .16s ease, transform .16s ease;
}

.artist-nav-link::before {
    content: "";
    position: absolute;
    top: 10px;
    bottom: 10px;
    left: 0;
    width: 3px;
    border-radius: 0 999px 999px 0;
    background: var(--artist-accent);
    opacity: 0;
    box-shadow: 0 0 14px var(--artist-accent);
}

.artist-nav-link > i {
    width: 25px;
    color: #809097;
    text-align: center;
    font-size: 15px;
}

.artist-nav-link > span {
    min-width: 0;
    display: grid;
    gap: 4px;
}

.artist-nav-link strong {
    overflow: hidden;
    color: inherit;
    font-size: 12px;
    font-weight: 850;
    line-height: 1.28;
    text-overflow: ellipsis;
}

.artist-nav-link small {
    overflow: hidden;
    color: #68777e;
    font-size: 9px;
    font-weight: 650;
    line-height: 1.4;
}

.artist-nav-link:hover {
    border-color: rgba(255, 255, 255, .08);
    background: rgba(255, 255, 255, .055);
    color: #fff;
    transform: translateX(2px);
}

.artist-nav-link.active {
    border-color: rgba(32, 217, 255, .28);
    background: linear-gradient(90deg, rgba(32, 217, 255, .14), rgba(32, 217, 255, .035));
    color: #fff;
}

.artist-nav-link.active::before {
    opacity: 1;
}

.artist-nav-link.active > i {
    color: var(--artist-accent);
}

.artist-nav-link.active small {
    color: #9eb0b6;
}

.artist-sidebar-flow {
    margin: 0 10px 12px;
    padding: 12px;
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    gap: 9px;
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 12px;
    background: rgba(255, 255, 255, .025);
    color: #718087;
}

.artist-sidebar-flow > i {
    color: var(--artist-accent);
    text-align: center;
}

.artist-sidebar-flow > span {
    display: grid;
    gap: 4px;
}

.artist-sidebar-flow strong {
    color: #cbd7da;
    font-size: 10px;
}

.artist-sidebar-flow small {
    font-size: 9px;
    line-height: 1.45;
}

.artist-studio-content {
    min-width: 0;
    min-height: 620px;
}

.artist-studio-v2 .artist-content-card,
.artist-studio-v2 .artist-editor,
.artist-studio-v2 .artist-track-upload,
.artist-studio-v2 .artist-nft-studio,
.artist-studio-v2 .artist-releases {
    max-width: none;
    margin: 0;
    padding: clamp(20px, 2.6vw, 32px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .085);
    border-radius: 16px;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, .025), transparent 48%),
        #0d1215;
    box-shadow: 0 20px 56px rgba(0, 0, 0, .18);
}

.artist-studio-v2 .artist-content-card[hidden] {
    display: none !important;
}

.artist-studio-v2 .artist-content-card.is-active {
    display: block;
    animation: artist-panel-in .2s ease both;
}

#artist-nft-studio[data-active-mode="collection"] .artist-metadata-intro {
    display: none;
}

#artist-nft-studio[data-active-mode="metadata"] > .nft-studio-title-header,
#artist-nft-studio[data-active-mode="metadata"] > .artist-nft-link-panel {
    display: none;
}

@keyframes artist-panel-in {
    from { opacity: 0; transform: translateY(7px); }
    to { opacity: 1; transform: translateY(0); }
}

.artist-studio-v2 .artist-panel-heading {
    margin-bottom: 24px;
}

.artist-studio-v2 .artist-panel-heading h2,
.artist-studio-v2 .music-section-heading h2,
.artist-studio-v2 .nft-studio-title-header h2 {
    margin: 5px 0 0;
    color: #fff;
    font-size: clamp(23px, 2.2vw, 32px);
    letter-spacing: -.025em;
}

.artist-studio-v2 .artist-panel-heading p,
.artist-studio-v2 .nft-studio-title-header p {
    margin: 8px 0 0;
    color: #7f8d93;
    font-size: 12px;
    line-height: 1.55;
}

.artist-profile-image-note {
    min-height: 54px;
    padding: 10px 12px;
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) auto;
    align-items: center;
    gap: 11px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 10px;
    background: rgba(255, 255, 255, .025);
    color: #849198;
    font-size: 11px;
}

.artist-profile-image-note > i {
    color: var(--artist-accent);
    text-align: center;
}

.artist-profile-image-note a {
    color: var(--artist-accent);
    font-weight: 800;
    text-decoration: none;
}

.artist-field-row-equal {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.artist-form-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.artist-form-footer .artist-form-status {
    flex: 1;
}

.artist-studio-v2 .artist-field input,
.artist-studio-v2 .artist-field textarea,
.artist-studio-v2 .artist-field select {
    border-color: rgba(255, 255, 255, .095);
    border-radius: 9px;
    background: #090d10;
}

.artist-studio-v2 .artist-field input:focus,
.artist-studio-v2 .artist-field textarea:focus,
.artist-studio-v2 .artist-field select:focus {
    border-color: var(--artist-accent);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--artist-accent) 12%, transparent);
}

.artist-studio-v2 .artist-save-btn {
    min-height: 42px;
    padding: 0 18px;
    border-radius: 10px;
    background: var(--artist-accent);
    border-color: var(--artist-accent);
    color: #041014;
    font-weight: 900;
}

.artist-studio-v2 .artist-track-file {
    border-radius: 12px;
    background: rgba(255, 255, 255, .025);
}

.artist-studio-v2 .artist-track-file:hover {
    background: color-mix(in srgb, var(--artist-accent) 8%, transparent);
}

.artist-studio-v2 .artist-track-upload-chip {
    border-radius: 999px;
}

.artist-studio-v2 .artist-nft-link-panel {
    border-radius: 12px;
}

.artist-metadata-intro {
    margin: 22px 0 16px;
    padding: 18px;
    display: grid;
    grid-template-columns: 50px minmax(0, 1fr);
    align-items: center;
    gap: 15px;
    border: 1px solid color-mix(in srgb, var(--artist-accent) 24%, transparent);
    border-radius: 13px;
    background: color-mix(in srgb, var(--artist-accent) 7%, transparent);
}

.artist-metadata-icon {
    width: 50px;
    height: 50px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    background: color-mix(in srgb, var(--artist-accent) 13%, transparent);
    color: var(--artist-accent);
}

.artist-metadata-intro h3 {
    margin: 5px 0 4px;
    color: #fff;
    font-size: 18px;
}

.artist-metadata-intro p {
    margin: 0;
    color: #7f8d93;
    font-size: 11px;
    line-height: 1.5;
}

.artist-studio-v2 .artist-release-list {
    margin-top: 18px;
}

.artist-studio-v2 .artist-release-row {
    padding: 16px 4px;
    gap: 12px;
}

/* --------------------------------------------------------------------------
   Responsive layout
   -------------------------------------------------------------------------- */

@media (max-width: 1180px) {
    .artist-dashboard-strip {
        grid-template-columns: repeat(3, 1fr);
    }

    .artist-wallet-card {
        grid-column: 1 / -1;
        border-top: 1px solid rgba(255, 255, 255, .08);
    }

    .artist-workspace {
        grid-template-columns: 228px minmax(0, 1fr);
        gap: 20px;
    }

    .artist-track-fields {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .artist-track-description {
        grid-column: span 2;
    }
}

@media (max-width: 900px) {
    .artist-hero-profile {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .artist-public-page-link {
        display: none;
    }

    .artist-workspace {
        width: min(100% - 28px, var(--artist-page-width));
        grid-template-columns: 1fr;
    }

    .artist-studio-sidebar {
        position: relative;
        top: auto;
        z-index: auto;
        max-height: none;
        overflow-x: auto;
        overflow-y: hidden;
        border-radius: 12px;
    }

    .artist-studio-nav {
        width: max-content;
        min-width: 100%;
        padding: 8px;
        display: flex;
        gap: 7px;
    }

    .artist-nav-group {
        padding: 0;
        display: flex;
        border: 0;
    }

    .artist-nav-label,
    .artist-nav-link small,
    .artist-sidebar-flow,
    .artist-sidebar-heading small {
        display: none;
    }

    .artist-nav-link {
        min-height: 42px;
        grid-template-columns: 18px auto;
        white-space: nowrap;
    }

    .artist-nav-link strong {
        font-size: 12px;
    }
}

@media (max-width: 680px) {
    .artist-studio-v2 {
        padding-bottom: 56px;
    }

    .artist-hero-banner,
    .artist-preview-banner.artist-hero-banner {
        min-height: 250px;
    }

    .artist-hero-topbar,
    .artist-hero-profile,
    .artist-dashboard-strip {
        width: calc(100% - 28px);
    }

    .artist-hero-topbar {
        padding-top: 14px;
    }

    .artist-studio-v2 .artist-studio-status {
        display: none;
    }

    .artist-hero-branding {
        left: 18px;
        bottom: 34px;
    }

    .artist-cover-change {
        right: 14px;
        bottom: 18px;
        width: 46px;
        height: 46px;
        padding: 0;
        justify-content: center;
        opacity: 1;
        transform: none;
    }

    .artist-cover-change > span:last-child {
        display: none;
    }

    .artist-hero-profile {
        min-height: 132px;
        padding-bottom: 20px;
        gap: 15px;
    }

    .artist-avatar-editor,
    .artist-studio-v2 .artist-avatar {
        width: 104px;
        height: 104px;
    }

    .artist-avatar-editor {
        margin-top: -46px;
    }

    .artist-studio-v2 .artist-avatar {
        border-width: 5px;
        font-size: 28px;
    }

    .artist-avatar-change {
        inset: 5px;
    }

    .artist-hero-copy h1 {
        font-size: 26px;
    }

    .artist-hero-copy p {
        display: -webkit-box;
        overflow: hidden;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        font-size: 11px;
    }

    .artist-dashboard-strip {
        grid-template-columns: repeat(3, 1fr);
        border-radius: 12px;
    }

    .artist-dashboard-stat {
        min-height: 78px;
        padding: 13px 11px;
    }

    .artist-dashboard-stat strong {
        font-size: 21px;
    }

    .artist-wallet-card {
        min-height: 82px;
        grid-template-columns: 40px minmax(0, 1fr) auto;
        padding: 12px;
    }

    .artist-wallet-icon {
        width: 40px;
        height: 40px;
    }

    .artist-wallet-action span {
        display: none;
    }

    .artist-wallet-action {
        width: 36px;
        padding: 0;
        justify-content: center;
    }

    .artist-studio-v2 .artist-content-card,
    .artist-studio-v2 .artist-editor,
    .artist-studio-v2 .artist-track-upload,
    .artist-studio-v2 .artist-nft-studio,
    .artist-studio-v2 .artist-releases {
        padding: 18px;
        border-radius: 13px;
    }

    .artist-field-row,
    .artist-field-row-equal,
    .artist-track-upload-form,
    .artist-track-fields,
    .artist-nft-link-panel {
        grid-template-columns: 1fr;
    }

    .artist-track-description {
        grid-column: auto;
    }

    .artist-form-footer,
    .artist-track-upload-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .artist-save-btn {
        width: 100%;
        justify-content: center;
    }

    .artist-profile-image-note {
        grid-template-columns: 28px minmax(0, 1fr);
    }

    .artist-profile-image-note a {
        grid-column: 2;
    }
}

@media (prefers-reduced-motion: reduce) {
    .artist-studio-v2 *,
    .artist-studio-v2 *::before,
    .artist-studio-v2 *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}


/* ========================================================================== 
   Artist Studio v3 — Spotify-style fixed left navigation
   The cover belongs only to the right work area, so it can never overlap menu.
   ========================================================================== */

body:has(.artist-studio-v3) .main-content {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
}

.artist-studio-v3 {
    --artist-page-width: none;
    --artist-sidebar-width: 284px;
    padding: 0 0 calc(var(--paxor-player-height, 88px) + 28px);
    overflow: visible;
}

.artist-studio-v3 .artist-workspace {
    position: relative;
    z-index: 1;
    width: calc(100% - 32px);
    max-width: none;
    min-height: calc(100dvh - var(--paxor-menu-height, 62px) - 32px);
    margin: 16px auto 0;
    display: grid;
    grid-template-columns: var(--artist-sidebar-width) minmax(0, 1fr);
    gap: 18px;
    align-items: start;
}

.artist-studio-v3 .artist-studio-main {
    min-width: 0;
    display: grid;
    align-content: start;
    gap: 0;
}

/* Left menu */
.artist-studio-v3 .artist-studio-sidebar {
    position: sticky;
    top: calc(var(--paxor-menu-height, 62px) + 16px);
    min-width: 0;
    max-height: calc(100dvh - var(--paxor-menu-height, 62px) - var(--paxor-player-height, 88px) - 32px);
    overflow: hidden auto;
    padding: 12px;
    border: 1px solid rgba(255,255,255,.075);
    border-radius: 18px;
    background: #0b0f12;
    box-shadow: 0 20px 52px rgba(0,0,0,.3), inset 0 1px 0 rgba(255,255,255,.035);
    scrollbar-width: thin;
}

.artist-sidebar-home {
    min-height: 52px;
    padding: 0 11px;
    display: flex;
    align-items: center;
    gap: 11px;
    border-bottom: 1px solid rgba(255,255,255,.07);
    color: #fff;
    text-decoration: none;
    font-size: 17px;
    font-weight: 650;
}

.artist-sidebar-home > i {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--artist-accent);
    color: #021014;
    font-size: 15px;
}

.artist-sidebar-home strong { font-weight: 900; }

.artist-sidebar-profile {
    margin: 12px 0 4px;
    padding: 12px 10px;
    display: grid;
    grid-template-columns: 46px minmax(0,1fr);
    align-items: center;
    gap: 11px;
    border-radius: 13px;
    background: rgba(255,255,255,.035);
}

.artist-sidebar-avatar {
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border-radius: 50%;
    background: #182329 center/cover no-repeat;
    color: var(--artist-accent);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.1);
}

.artist-sidebar-avatar.has-artwork > i { display: none; }

.artist-sidebar-profile-copy {
    min-width: 0;
    display: grid;
    gap: 3px;
}

.artist-sidebar-profile-copy strong {
    overflow: hidden;
    color: #fff;
    font-size: 13px;
    font-weight: 850;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.artist-sidebar-profile-copy small {
    color: #77868d;
    font-size: 10px;
    font-weight: 700;
}

.artist-studio-v3 .artist-studio-nav {
    padding: 5px 0 8px;
    display: grid;
    gap: 0;
}

.artist-studio-v3 .artist-nav-group {
    padding: 13px 0 8px;
    gap: 5px;
    border-bottom: 0;
}

.artist-studio-v3 .artist-nav-label {
    padding: 0 11px 5px;
    color: #718087;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .12em;
}

.artist-studio-v3 .artist-nav-link {
    min-height: 50px;
    padding: 8px 10px;
    grid-template-columns: 28px minmax(0,1fr);
    gap: 9px;
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: #cbd5d9;
    transform: none;
}

.artist-studio-v3 .artist-nav-link::before { display: none; }

.artist-studio-v3 .artist-nav-link > i {
    width: 28px;
    color: #85939a;
    font-size: 16px;
}

.artist-studio-v3 .artist-nav-link strong {
    font-size: 12px;
    line-height: 1.2;
}

.artist-studio-v3 .artist-nav-link small {
    margin-top: 1px;
    color: #64737a;
    font-size: 9px;
    line-height: 1.3;
}

.artist-studio-v3 .artist-nav-link:hover {
    background: rgba(255,255,255,.055);
    color: #fff;
    transform: none;
}

.artist-studio-v3 .artist-nav-link.active {
    border: 0;
    background: #f2f5f6;
    color: #081013;
}

.artist-studio-v3 .artist-nav-link.active > i { color: #081013; }
.artist-studio-v3 .artist-nav-link.active small { color: #526066; }

.artist-sidebar-actions {
    margin-top: 8px;
    padding-top: 12px;
    display: grid;
    gap: 5px;
    border-top: 1px solid rgba(255,255,255,.07);
}

.artist-sidebar-utility {
    width: 100%;
    min-height: 48px;
    padding: 8px 10px;
    display: grid;
    grid-template-columns: 28px minmax(0,1fr);
    align-items: center;
    gap: 9px;
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: #b9c5c9;
    text-align: left;
    text-decoration: none;
    font: inherit;
    cursor: pointer;
}

.artist-sidebar-utility:hover { background: rgba(255,255,255,.05); color: #fff; }
.artist-sidebar-utility > i { width: 28px; color: #7f8e95; text-align:center; }
.artist-sidebar-utility > span { min-width:0; display:grid; gap:2px; }
.artist-sidebar-utility strong { font-size:11px; font-weight:800; }
.artist-sidebar-utility small { color:#65747b; font-size:9px; }

/* Compact hero in the right column */
.artist-studio-v3 .artist-hero {
    width: 100%;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 18px;
    background: #0b1013;
    box-shadow: 0 18px 48px rgba(0,0,0,.26);
}

.artist-studio-v3 .artist-hero-banner,
.artist-studio-v3 .artist-preview-banner.artist-hero-banner {
    min-height: 252px;
    height: 252px;
    border-radius: inherit;
}

.artist-studio-v3 .artist-hero-banner::before {
    background:
        linear-gradient(90deg, rgba(3,7,9,.74) 0%, rgba(3,7,9,.12) 54%, rgba(3,7,9,.34) 100%),
        linear-gradient(180deg, rgba(0,0,0,.08) 0%, rgba(0,0,0,.18) 48%, rgba(0,0,0,.9) 100%);
}

.artist-studio-v3 .artist-hero-topbar {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: auto;
    margin: 0;
    padding: 16px 18px;
}

.artist-studio-label {
    min-height: 36px;
    padding: 0 12px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 999px;
    background: rgba(3,8,10,.52);
    color: #fff;
    font-size: 11px;
    font-weight: 850;
    backdrop-filter: blur(14px);
}

.artist-studio-v3 .artist-cover-change {
    right: 18px;
    bottom: 18px;
    min-height: 42px;
    padding-right: 14px;
}

.artist-studio-v3 .artist-image-change-icon {
    width: 28px;
    height: 28px;
}

.artist-studio-v3 .artist-hero-profile {
    position: absolute;
    z-index: 3;
    left: 24px;
    right: 170px;
    bottom: 18px;
    width: auto;
    min-height: 0;
    margin: 0;
    padding: 0;
    grid-template-columns: 98px minmax(0,1fr) auto;
    align-items: end;
    gap: 17px;
    pointer-events: none;
}

.artist-studio-v3 .artist-avatar-editor,
.artist-studio-v3 .artist-avatar {
    width: 98px;
    height: 98px;
}

.artist-studio-v3 .artist-avatar-editor {
    margin: 0;
    pointer-events: auto;
}

.artist-studio-v3 .artist-avatar {
    border-width: 4px;
    border-color: rgba(8,13,15,.94);
    font-size: 28px;
}

.artist-studio-v3 .artist-avatar-change { inset: 4px; }

.artist-studio-v3 .artist-hero-copy {
    padding: 0 0 3px;
    pointer-events: auto;
}

.artist-studio-v3 .artist-hero-copy h1 {
    margin: 4px 0 5px;
    font-size: clamp(30px, 4vw, 54px);
}

.artist-studio-v3 .artist-hero-copy p {
    max-width: 620px;
    overflow: hidden;
    color: rgba(255,255,255,.72);
    font-size: 12px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.artist-studio-v3 .artist-public-page-link {
    margin: 0 0 3px;
    pointer-events: auto;
}

/* KPI row and panels */
.artist-studio-v3 .artist-dashboard-strip {
    width: 100%;
    margin: 14px 0 18px;
    grid-template-columns: repeat(3, minmax(104px, .27fr)) minmax(320px, 1fr);
    border-radius: 15px;
}

.artist-studio-v3 .artist-dashboard-stat,
.artist-studio-v3 .artist-wallet-card {
    min-height: 82px;
}

.artist-studio-v3 .artist-dashboard-stat { padding: 14px 18px; }
.artist-studio-v3 .artist-dashboard-stat strong { font-size: 25px; }

.artist-studio-v3 .artist-studio-content {
    min-width: 0;
    min-height: 540px;
}

.artist-studio-v3 .artist-content-card,
.artist-studio-v3 .artist-editor,
.artist-studio-v3 .artist-track-upload,
.artist-studio-v3 .artist-nft-studio,
.artist-studio-v3 .artist-releases {
    min-height: 540px;
    border-radius: 16px;
}

/* Make the existing component fit the right work area */
.artist-studio-v3 [data-nft-studio] { max-width: 100%; }

@media (max-width: 1180px) {
    .artist-studio-v3 { --artist-sidebar-width: 238px; }
    .artist-studio-v3 .artist-workspace { gap: 14px; }
    .artist-studio-v3 .artist-nav-link small,
    .artist-sidebar-utility small { display:none; }
    .artist-studio-v3 .artist-hero-profile { right: 120px; }
    .artist-studio-v3 .artist-public-page-link span { display:none; }
    .artist-studio-v3 .artist-public-page-link { width:42px; padding:0; justify-content:center; }
}

@media (max-width: 900px) {
    .artist-studio-v3 .artist-workspace {
        width: calc(100% - 24px);
        margin-top: 12px;
        grid-template-columns: 1fr;
    }

    .artist-studio-v3 .artist-studio-sidebar {
        position: sticky;
        top: calc(var(--paxor-menu-height, 62px) + 8px);
        z-index: 30;
        max-height: none;
        overflow: hidden;
        padding: 8px;
    }

    .artist-sidebar-home,
    .artist-sidebar-profile,
    .artist-sidebar-actions,
    .artist-studio-v3 .artist-nav-label,
    .artist-studio-v3 .artist-nav-link small { display:none; }

    .artist-studio-v3 .artist-studio-nav {
        padding: 0;
        display:flex;
        gap:6px;
        overflow-x:auto;
        scrollbar-width:none;
    }

    .artist-studio-v3 .artist-studio-nav::-webkit-scrollbar { display:none; }
    .artist-studio-v3 .artist-nav-group { padding:0; display:flex; }
    .artist-studio-v3 .artist-nav-link {
        width:auto;
        min-height:42px;
        padding:7px 12px;
        grid-template-columns:18px auto;
        white-space:nowrap;
    }
}

@media (max-width: 680px) {
    .artist-studio-v3 .artist-hero-banner,
    .artist-studio-v3 .artist-preview-banner.artist-hero-banner {
        min-height: 230px;
        height: 230px;
    }

    .artist-studio-v3 .artist-hero-profile {
        left: 15px;
        right: 64px;
        bottom: 15px;
        grid-template-columns: 78px minmax(0,1fr);
        gap:12px;
    }

    .artist-studio-v3 .artist-avatar-editor,
    .artist-studio-v3 .artist-avatar { width:78px; height:78px; }
    .artist-studio-v3 .artist-hero-copy h1 { font-size:28px; }
    .artist-studio-v3 .artist-verified,
    .artist-studio-v3 .artist-hero-copy p,
    .artist-studio-v3 .artist-public-page-link { display:none; }
    .artist-studio-v3 .artist-cover-change { opacity:1; transform:none; }

    .artist-studio-v3 .artist-dashboard-strip {
        grid-template-columns: repeat(3, 1fr);
    }

    .artist-studio-v3 .artist-wallet-card { grid-column:1 / -1; }
    .artist-studio-v3 .artist-content-card,
    .artist-studio-v3 .artist-editor,
    .artist-studio-v3 .artist-track-upload,
    .artist-studio-v3 .artist-nft-studio,
    .artist-studio-v3 .artist-releases { min-height: 0; }
}


/* ===== Artist Studio v6: reliable sidebar tabs ===== */
.artist-studio-v6 {
    --artist-sidebar-width: 286px;
    padding: 0 0 calc(var(--paxor-player-height, 88px) + 30px);
    overflow: visible;
}

.artist-studio-v6 .artist-workspace {
    width: calc(100% - 32px);
    max-width: 1760px;
    min-height: calc(100dvh - var(--paxor-menu-height, 62px) - 32px);
    margin: 16px auto 0;
    display: grid;
    grid-template-columns: var(--artist-sidebar-width) minmax(0, 1fr);
    gap: 18px;
    align-items: start;
}

/* The sidebar is an independent column. Nothing inside it is absolute. */
.artist-studio-v6 .artist-studio-sidebar {
    position: sticky !important;
    top: calc(var(--paxor-menu-height, 62px) + 16px) !important;
    z-index: 20;
    align-self: start;
    min-width: 0;
    max-height: calc(100dvh - var(--paxor-menu-height, 62px) - var(--paxor-player-height, 88px) - 32px);
    padding: 14px;
    display: flex !important;
    flex-direction: column;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 18px;
    background: #0b0f12;
    box-shadow: 0 20px 52px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.035);
    isolation: isolate;
}

.artist-studio-v6 .artist-studio-sidebar > *,
.artist-studio-v6 .artist-studio-nav,
.artist-studio-v6 .artist-nav-group,
.artist-studio-v6 .artist-nav-link,
.artist-studio-v6 .artist-sidebar-actions {
    position: static !important;
    inset: auto !important;
    float: none !important;
    transform: none !important;
}

.artist-studio-v6 .artist-sidebar-home,
.artist-studio-v6 .artist-sidebar-profile {
    flex: 0 0 auto;
}

.artist-studio-v6 .artist-sidebar-workspace-label {
    margin: 28px 10px 10px;
    color: #7b8a91;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .14em;
}

/* Tabs deliberately start lower, under the artist card. */
.artist-studio-v6 .artist-studio-nav {
    z-index: 2;
    width: 100%;
    margin: 0;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column;
    gap: 24px !important;
    overflow: visible !important;
    pointer-events: auto !important;
}

.artist-studio-v6 .artist-nav-group {
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0,1fr);
    gap: 7px !important;
    border: 0 !important;
}

.artist-studio-v6 .artist-nav-label {
    display: block !important;
    margin: 0;
    padding: 0 10px 3px !important;
    color: #78878e;
    font-size: 10px;
    font-weight: 900;
    line-height: 1.35;
    letter-spacing: .115em;
    white-space: normal;
}

.artist-studio-v6 .artist-nav-link {
    z-index: 3;
    width: 100% !important;
    min-height: 62px !important;
    margin: 0 !important;
    padding: 10px 11px !important;
    display: grid !important;
    grid-template-columns: 30px minmax(0,1fr) !important;
    align-items: center;
    gap: 10px !important;
    overflow: visible !important;
    border: 1px solid transparent !important;
    border-radius: 11px !important;
    background: transparent !important;
    color: #d5dfe2 !important;
    text-align: left;
    font: inherit;
    cursor: pointer;
    pointer-events: auto !important;
}

.artist-studio-v6 .artist-nav-link > i {
    width: 30px;
    color: #84939a;
    text-align: center;
    font-size: 17px;
}

.artist-studio-v6 .artist-nav-link > span {
    min-width: 0;
    display: grid;
    gap: 3px;
}

.artist-studio-v6 .artist-nav-link strong {
    color: inherit;
    font-size: 13px;
    font-weight: 850;
    line-height: 1.25;
}

.artist-studio-v6 .artist-nav-link small {
    display: block !important;
    color: #68777e !important;
    font-size: 9px;
    line-height: 1.35;
    white-space: normal;
}

.artist-studio-v6 .artist-nav-link:hover {
    background: rgba(255,255,255,.055) !important;
    color: #fff !important;
}

.artist-studio-v6 .artist-nav-link.active {
    border-color: rgba(32,217,255,.28) !important;
    background: rgba(32,217,255,.12) !important;
    color: #eafbff !important;
    box-shadow: inset 3px 0 0 var(--artist-accent);
}

.artist-studio-v6 .artist-nav-link.active > i { color: var(--artist-accent) !important; }
.artist-studio-v6 .artist-nav-link.active small { color: #91a5ac !important; }

.artist-studio-v6 .artist-sidebar-actions {
    width: 100%;
    margin: 30px 0 0 !important;
    padding: 16px 0 0 !important;
    display: grid !important;
    gap: 7px !important;
    border-top: 1px solid rgba(255,255,255,.07) !important;
}

.artist-studio-v6 .artist-studio-main {
    min-width: 0;
    display: grid;
    align-content: start;
}

/* Smaller header, limited to the right work area. */
.artist-studio-v6 .artist-hero {
    width: 100%;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 18px;
    background: #0b1013;
}

.artist-studio-v6 .artist-hero-banner,
.artist-studio-v6 .artist-preview-banner.artist-hero-banner {
    min-height: 218px !important;
    height: 218px !important;
    border-radius: inherit;
}

.artist-studio-v6 .artist-hero-profile {
    left: 22px !important;
    right: 168px !important;
    bottom: 16px !important;
    grid-template-columns: 88px minmax(0,1fr) auto !important;
    gap: 15px !important;
}

.artist-studio-v6 .artist-avatar-editor,
.artist-studio-v6 .artist-avatar {
    width: 88px !important;
    height: 88px !important;
}

.artist-studio-v6 .artist-hero-copy h1 {
    font-size: clamp(30px, 3.6vw, 48px) !important;
}

.artist-studio-v6 .artist-dashboard-strip {
    width: 100%;
    margin: 14px 0 18px;
    grid-template-columns: repeat(3, minmax(100px,.24fr)) minmax(300px,1fr);
}

.artist-studio-v6 .artist-studio-content {
    min-width: 0;
    min-height: 540px;
}

/* Only the selected panel exists visually. This overrides every old rule. */
.artist-studio-v6 [data-artist-panel-id] {
    width: 100%;
}

.artist-studio-v6 [data-artist-panel-id][hidden],
.artist-studio-v6 [data-artist-panel-id][aria-hidden="true"] {
    display: none !important;
}

.artist-studio-v6 [data-artist-panel-id].is-active,
.artist-studio-v6 [data-artist-panel-id][aria-hidden="false"] {
    display: block;
}

@media (max-width: 1050px) {
    .artist-studio-v6 { --artist-sidebar-width: 250px; }
    .artist-studio-v6 .artist-workspace { gap: 14px; }
    .artist-studio-v6 .artist-nav-link small { display: none !important; }
    .artist-studio-v6 .artist-nav-link { min-height: 52px !important; }
}

@media (max-width: 820px) {
    .artist-studio-v6 .artist-workspace {
        width: calc(100% - 20px);
        grid-template-columns: 1fr;
    }

    .artist-studio-v6 .artist-studio-sidebar {
        position: relative !important;
        top: auto !important;
        max-height: none;
    }

    .artist-studio-v6 .artist-sidebar-workspace-label { margin-top: 18px; }
    .artist-studio-v6 .artist-studio-nav { gap: 14px !important; }
}

@media (max-width: 620px) {
    .artist-studio-v6 .artist-sidebar-home,
    .artist-studio-v6 .artist-sidebar-profile,
    .artist-studio-v6 .artist-sidebar-actions,
    .artist-studio-v6 .artist-sidebar-workspace-label,
    .artist-studio-v6 .artist-nav-label { display: none !important; }

    .artist-studio-v6 .artist-studio-nav {
        display: flex !important;
        flex-direction: row;
        gap: 7px !important;
        overflow-x: auto !important;
    }

    .artist-studio-v6 .artist-nav-group { display: contents !important; }
    .artist-studio-v6 .artist-nav-link {
        width: auto !important;
        min-width: max-content;
        min-height: 44px !important;
        grid-template-columns: 18px auto !important;
        padding: 8px 12px !important;
    }

    .artist-studio-v6 .artist-dashboard-strip { grid-template-columns: repeat(3,1fr); }
    .artist-studio-v6 .artist-wallet-card { grid-column: 1 / -1; }
}


/* ===== Artist Studio v7: fixed sidebar header + scrollable menu ===== */
body:has(.artist-studio-v7) {
    overflow: hidden;
}

.artist-studio-v7 {
    --artist-sidebar-width: 304px;
    width: 100%;
    height: calc(100dvh - var(--paxor-menu-height, 62px) - var(--paxor-player-height, 88px));
    min-height: 0;
    padding: 0;
    overflow: hidden;
    background: var(--music-bg);
}

.artist-studio-v7 .artist-workspace {
    width: 100%;
    max-width: none;
    height: 100%;
    min-height: 0;
    margin: 0;
    display: grid;
    grid-template-columns: var(--artist-sidebar-width) minmax(0, 1fr);
    gap: 0;
    align-items: stretch;
}

/* Full-height left column, ending exactly above the player. */
.artist-studio-v7 .artist-studio-sidebar {
    position: relative !important;
    inset: auto !important;
    z-index: 24;
    width: 100%;
    height: 100%;
    min-height: 0;
    max-height: none;
    padding: 0;
    display: flex !important;
    flex-direction: column;
    overflow: hidden !important;
    border: 0;
    border-right: 1px solid rgba(255,255,255,.09);
    border-radius: 0;
    background: #0a0e11;
    box-shadow: 12px 0 34px rgba(0,0,0,.18);
}

/* Paxor for Artists + VSM / Artist Studio never move. */
.artist-studio-v7 .artist-sidebar-fixed {
    position: relative !important;
    z-index: 3;
    flex: 0 0 auto;
    padding: 15px 14px 14px;
    border-bottom: 1px solid rgba(255,255,255,.085);
    background:
        linear-gradient(180deg, rgba(3,125,156,.11), transparent 72%),
        #0b1013;
    box-shadow: 0 12px 28px rgba(0,0,0,.18);
}

.artist-studio-v7 .artist-sidebar-home {
    min-height: 58px;
    margin: 0;
    padding: 10px 12px;
    display: flex;
    align-items: center;
    gap: 12px;
    border: 1px solid rgba(3,125,156,.32);
    border-radius: 13px;
    background:
        linear-gradient(90deg, rgba(3,125,156,.18), rgba(3,125,156,.04)),
        rgba(255,255,255,.025);
}

.artist-studio-v7 .artist-sidebar-profile {
    min-height: 70px;
    margin: 10px 0 0;
    padding: 10px 12px;
    display: grid;
    grid-template-columns: 46px minmax(0,1fr);
    align-items: center;
    gap: 12px;
    border: 1px solid rgba(255,255,255,.075);
    border-radius: 13px;
    background: rgba(255,255,255,.025);
}

.artist-studio-v7 .artist-sidebar-avatar {
    width: 46px;
    height: 46px;
    flex-basis: 46px;
}

.artist-studio-v7 .artist-sidebar-profile-copy strong {
    font-size: 15px;
    line-height: 1.2;
}

.artist-studio-v7 .artist-sidebar-profile-copy small {
    margin-top: 4px;
    font-size: 11px;
}

/* Only this lower part scrolls. */
.artist-studio-v7 .artist-sidebar-scroll {
    min-height: 0;
    flex: 1 1 auto;
    padding: 15px 12px 24px;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: rgba(157,171,178,.58) rgba(255,255,255,.035);
}

.artist-studio-v7 .artist-sidebar-scroll::-webkit-scrollbar { width: 10px; }
.artist-studio-v7 .artist-sidebar-scroll::-webkit-scrollbar-track { background: rgba(255,255,255,.025); }
.artist-studio-v7 .artist-sidebar-scroll::-webkit-scrollbar-thumb {
    border: 2px solid #0a0e11;
    border-radius: 999px;
    background: rgba(157,171,178,.56);
}

.artist-studio-v7 .artist-sidebar-workspace-label {
    margin: 0 10px 15px;
    padding: 0;
    color: #718087;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .14em;
}

.artist-studio-v7 .artist-studio-nav {
    position: static !important;
    width: 100%;
    margin: 0;
    padding: 0;
    display: flex !important;
    flex-direction: column;
    gap: 18px !important;
    overflow: visible !important;
}

.artist-studio-v7 .artist-nav-group {
    position: static !important;
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0,1fr);
    gap: 7px !important;
    border: 0 !important;
}

.artist-studio-v7 .artist-nav-label {
    display: block !important;
    min-height: 16px;
    margin: 0;
    padding: 0 9px 2px !important;
    color: #77878e;
    font-size: 10px;
    font-weight: 900;
    line-height: 1.4;
    letter-spacing: .11em;
}

/* Every menu strip has exactly the same geometry. */
.artist-studio-v7 .artist-nav-link {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: 72px !important;
    min-height: 72px !important;
    max-height: 72px !important;
    margin: 0 !important;
    padding: 10px 11px !important;
    display: grid !important;
    grid-template-columns: 34px minmax(0,1fr) !important;
    align-items: center;
    gap: 10px !important;
    overflow: hidden !important;
    border: 1px solid rgba(255,255,255,.065) !important;
    border-radius: 12px !important;
    background: rgba(255,255,255,.018) !important;
    color: #d7e1e4 !important;
    text-align: left;
    font: inherit;
    box-sizing: border-box;
    cursor: pointer;
    transform: none !important;
}

.artist-studio-v7 .artist-nav-link::before {
    content: "";
    position: absolute !important;
    inset: 8px auto 8px 0 !important;
    width: 3px;
    border-radius: 0 4px 4px 0;
    background: transparent;
}

.artist-studio-v7 .artist-nav-link > i {
    width: 34px;
    color: #819198;
    text-align: center;
    font-size: 17px;
}

.artist-studio-v7 .artist-nav-link > span {
    min-width: 0;
    display: grid;
    gap: 4px;
}

.artist-studio-v7 .artist-nav-link strong {
    min-width: 0;
    overflow: hidden;
    color: inherit;
    font-size: 13px;
    font-weight: 850;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.artist-studio-v7 .artist-nav-link small {
    min-width: 0;
    overflow: hidden;
    color: #6e7d84 !important;
    font-size: 9.5px;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.artist-studio-v7 .artist-nav-link:hover {
    border-color: rgba(255,255,255,.14) !important;
    background: rgba(255,255,255,.055) !important;
    color: #fff !important;
}

.artist-studio-v7 .artist-nav-link.active {
    border-color: rgba(3,125,156,.62) !important;
    background:
        linear-gradient(90deg, rgba(3,125,156,.22), rgba(3,125,156,.07)),
        rgba(255,255,255,.025) !important;
    color: #f2fcff !important;
    box-shadow: 0 0 18px rgba(3,125,156,.11);
}

.artist-studio-v7 .artist-nav-link.active::before { background: var(--artist-accent); }
.artist-studio-v7 .artist-nav-link.active > i { color: var(--artist-accent) !important; }
.artist-studio-v7 .artist-nav-link.active small { color: #9aabb1 !important; }

.artist-studio-v7 .artist-sidebar-actions {
    position: static !important;
    width: 100%;
    margin: 22px 0 0 !important;
    padding: 16px 0 0 !important;
    display: grid !important;
    gap: 8px !important;
    border-top: 1px solid rgba(255,255,255,.075) !important;
}

.artist-studio-v7 .artist-sidebar-utility {
    width: 100%;
    min-height: 58px;
    margin: 0;
    padding: 9px 11px;
    display: grid;
    grid-template-columns: 34px minmax(0,1fr);
    align-items: center;
    gap: 10px;
    border: 1px solid rgba(255,255,255,.065);
    border-radius: 12px;
    background: rgba(255,255,255,.018);
    box-sizing: border-box;
}

/* Right side scrolls independently while the left identity stays fixed. */
.artist-studio-v7 .artist-studio-main {
    min-width: 0;
    height: 100%;
    min-height: 0;
    padding: 16px 18px 46px;
    display: block;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: rgba(157,171,178,.55) rgba(255,255,255,.025);
}

.artist-studio-v7 .artist-studio-main::-webkit-scrollbar { width: 12px; }
.artist-studio-v7 .artist-studio-main::-webkit-scrollbar-thumb {
    border: 3px solid var(--music-bg);
    border-radius: 999px;
    background: rgba(157,171,178,.56);
}

.artist-studio-v7 .artist-hero {
    width: 100%;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 16px;
    background: #0b1013;
}

.artist-studio-v7 .artist-hero-banner,
.artist-studio-v7 .artist-preview-banner.artist-hero-banner {
    height: 212px !important;
    min-height: 212px !important;
    border-radius: inherit;
}

.artist-studio-v7 .artist-hero-profile {
    left: 22px !important;
    right: 166px !important;
    bottom: 16px !important;
    grid-template-columns: 86px minmax(0,1fr) auto !important;
    gap: 15px !important;
}

.artist-studio-v7 .artist-avatar-editor,
.artist-studio-v7 .artist-avatar {
    width: 86px !important;
    height: 86px !important;
}

.artist-studio-v7 .artist-dashboard-strip {
    width: 100%;
    margin: 14px 0;
    grid-template-columns: repeat(3, minmax(100px,.24fr)) minmax(300px,1fr);
}

/* Marketplace-like title frame for the selected workspace tab. */
.artist-studio-v7 .artist-active-panel-heading {
    position: sticky;
    top: -16px;
    z-index: 18;
    min-height: 82px;
    margin: 0 0 18px;
    padding: 14px 16px;
    overflow: hidden;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    border: 2px solid #037d9c;
    border-radius: 15px;
    background:
        linear-gradient(90deg, rgba(0,0,0,.46), rgba(0,0,0,.14) 48%, rgba(0,0,0,.04)),
        radial-gradient(circle at 78% 48%, rgba(3,125,156,.42), transparent 38%),
        linear-gradient(180deg, rgba(3,125,156,.38), rgba(4,22,32,.84));
    box-shadow:
        0 0 16px rgba(3,125,156,.42),
        0 12px 26px rgba(0,0,0,.28),
        inset 0 1px 0 rgba(255,255,255,.14);
}

.artist-studio-v7 .artist-active-panel-heading::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(255,255,255,.08), transparent 42%),
        radial-gradient(circle at 15% 20%, rgba(255,255,255,.12), transparent 32%);
    pointer-events: none;
}

.artist-studio-v7 .artist-active-panel-heading > * {
    position: relative;
    z-index: 1;
}

.artist-studio-v7 .artist-active-panel-heading h2 {
    margin: 5px 0 0;
    color: var(--music-text);
    font-size: 24px;
    line-height: 1.1;
    letter-spacing: 0;
}

.artist-studio-v7 .artist-active-panel-heading .music-result-count {
    flex: 0 0 auto;
    color: #b7c7cc;
    font-size: 12px;
    font-weight: 800;
}

.artist-studio-v7 .artist-studio-content {
    min-width: 0;
    min-height: 520px;
}

.artist-studio-v7 [data-artist-panel-id][hidden],
.artist-studio-v7 [data-artist-panel-id][aria-hidden="true"] { display: none !important; }
.artist-studio-v7 [data-artist-panel-id].is-active,
.artist-studio-v7 [data-artist-panel-id][aria-hidden="false"] { display: block; }

@media (max-width: 1080px) {
    .artist-studio-v7 { --artist-sidebar-width: 270px; }
    .artist-studio-v7 .artist-nav-link { height: 66px !important; min-height: 66px !important; max-height: 66px !important; }
    .artist-studio-v7 .artist-nav-link small { display: none !important; }
}

@media (max-width: 820px) {
    body:has(.artist-studio-v7) { overflow: auto; }
    .artist-studio-v7 { height: auto; min-height: calc(100dvh - var(--paxor-menu-height,62px)); overflow: visible; }
    .artist-studio-v7 .artist-workspace { height: auto; grid-template-columns: 1fr; }
    .artist-studio-v7 .artist-studio-sidebar { height: auto; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.09); }
    .artist-studio-v7 .artist-sidebar-scroll { overflow: visible; }
    .artist-studio-v7 .artist-studio-main { height: auto; overflow: visible; padding: 12px 10px calc(var(--paxor-player-height,88px) + 24px); }
    .artist-studio-v7 .artist-active-panel-heading { top: var(--paxor-menu-height,62px); }
}

@media (max-width: 620px) {
    .artist-studio-v7 .artist-sidebar-fixed { padding: 10px; }
    .artist-studio-v7 .artist-sidebar-profile { display: none; }
    .artist-studio-v7 .artist-sidebar-scroll { padding: 10px; }
    .artist-studio-v7 .artist-sidebar-workspace-label,
    .artist-studio-v7 .artist-nav-label,
    .artist-studio-v7 .artist-sidebar-actions { display: none !important; }
    .artist-studio-v7 .artist-studio-nav { flex-direction: row; gap: 7px !important; overflow-x: auto !important; }
    .artist-studio-v7 .artist-nav-group { display: contents !important; }
    .artist-studio-v7 .artist-nav-link {
        width: auto !important;
        min-width: max-content;
        height: 46px !important;
        min-height: 46px !important;
        max-height: 46px !important;
        grid-template-columns: 18px auto !important;
        padding: 8px 12px !important;
    }
    .artist-studio-v7 .artist-nav-link small { display: none !important; }
    .artist-studio-v7 .artist-dashboard-strip { grid-template-columns: repeat(3,1fr); }
    .artist-studio-v7 .artist-wallet-card { grid-column: 1 / -1; }
    .artist-studio-v7 .artist-active-panel-heading { align-items: center; }
    .artist-studio-v7 .artist-active-panel-heading h2 { font-size: 20px; }
}

/* ===== Artist Studio v8: merged workspace heading + taller artist hero ===== */
.artist-studio-v8 .artist-hero,
.artist-studio-v8 .artist-hero-banner,
.artist-studio-v8 .artist-preview-banner.artist-hero-banner {
    position: relative;
}

/* A little taller than v7; the avatar occupies most of the visual height. */
.artist-studio-v8 .artist-hero-banner,
.artist-studio-v8 .artist-preview-banner.artist-hero-banner {
    height: 300px !important;
    min-height: 300px !important;
}

.artist-studio-v8 .artist-hero-topbar {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 6;
    width: auto;
    margin: 0;
    padding: 18px 22px;
}

.artist-studio-v8 .artist-cover-change {
    top: 72px;
    right: 22px;
    bottom: auto;
    z-index: 7;
}

.artist-studio-v8 .artist-hero-profile {
    position: absolute !important;
    z-index: 5;
    left: 24px !important;
    right: 24px !important;
    bottom: 24px !important;
    width: auto !important;
    min-height: 0;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: 196px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 24px !important;
    pointer-events: none;
}

.artist-studio-v8 .artist-avatar-editor,
.artist-studio-v8 .artist-avatar {
    width: 196px !important;
    height: 196px !important;
}

.artist-studio-v8 .artist-avatar-editor {
    margin: 0 !important;
    align-self: center;
    pointer-events: auto;
}

.artist-studio-v8 .artist-avatar {
    border: 5px solid rgba(8, 13, 15, .96) !important;
    background-position: center;
    background-size: cover;
    font-size: 48px;
    box-shadow:
        0 22px 54px rgba(0, 0, 0, .52),
        0 0 0 1px rgba(255, 255, 255, .12);
}

.artist-studio-v8 .artist-avatar-change {
    inset: 5px;
}

.artist-studio-v8 .artist-hero-copy {
    min-width: 0;
    padding: 0 !important;
    align-self: center;
    pointer-events: auto;
}

.artist-studio-v8 .artist-hero-copy h1 {
    margin: 7px 0 9px;
    font-size: clamp(38px, 4.3vw, 66px);
    line-height: .98;
}

.artist-studio-v8 .artist-hero-copy p {
    max-width: 760px;
    font-size: 14px;
}

.artist-studio-v8 .artist-public-page-link {
    align-self: end;
    margin: 0 0 4px;
    pointer-events: auto;
}

/* One marketplace-style heading now contains kicker, title, description,
   badge and live counter. The duplicate heading inside NFT Studio is removed. */
.artist-studio-v8 .artist-active-panel-heading {
    min-height: 124px;
    padding: 18px 20px;
    align-items: center;
}

.artist-studio-v8 .artist-active-panel-copy {
    min-width: 0;
    display: grid;
    align-content: center;
    gap: 0;
}

.artist-studio-v8 .artist-active-panel-heading h2 {
    margin: 6px 0 0;
    font-size: clamp(24px, 2.2vw, 32px);
}

.artist-studio-v8 #artist-active-description {
    max-width: 820px;
    margin: 9px 0 0;
    color: #a8b7bc;
    font-size: 12px;
    line-height: 1.5;
}

.artist-studio-v8 .artist-active-panel-side {
    min-width: 150px;
    display: grid;
    justify-items: end;
    align-content: center;
    gap: 12px;
}

.artist-studio-v8 .artist-active-badge {
    min-height: 30px;
    padding: 0 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(32, 217, 255, .34);
    border-radius: 999px;
    background: rgba(32, 217, 255, .10);
    color: var(--music-cyan);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .08em;
    white-space: nowrap;
}

.artist-studio-v8 .artist-active-badge[hidden] {
    display: none !important;
}

.artist-studio-v8 .artist-active-panel-heading.has-badge {
    min-height: 138px;
}

.artist-studio-v8 .artist-active-panel-heading .music-result-count {
    font-size: 12px;
    white-space: nowrap;
}

.artist-studio-v8 #artist-nft-studio > .nft-studio-title-header {
    display: none !important;
}

.artist-studio-v8 #artist-nft-studio {
    padding-top: 24px;
}

@media (max-width: 1180px) {
    .artist-studio-v8 .artist-hero-profile {
        grid-template-columns: 160px minmax(0,1fr) auto !important;
        gap: 18px !important;
    }

    .artist-studio-v8 .artist-avatar-editor,
    .artist-studio-v8 .artist-avatar {
        width: 160px !important;
        height: 160px !important;
    }
}

@media (max-width: 900px) {
    .artist-studio-v8 .artist-hero-banner,
    .artist-studio-v8 .artist-preview-banner.artist-hero-banner {
        height: 270px !important;
        min-height: 270px !important;
    }

    .artist-studio-v8 .artist-hero-profile {
        grid-template-columns: 128px minmax(0,1fr) !important;
        right: 18px !important;
        left: 18px !important;
    }

    .artist-studio-v8 .artist-avatar-editor,
    .artist-studio-v8 .artist-avatar {
        width: 128px !important;
        height: 128px !important;
    }

    .artist-studio-v8 .artist-public-page-link {
        display: none;
    }

    .artist-studio-v8 .artist-active-panel-heading,
    .artist-studio-v8 .artist-active-panel-heading.has-badge {
        min-height: 0;
        align-items: flex-start;
    }
}

@media (max-width: 620px) {
    .artist-studio-v8 .artist-hero-banner,
    .artist-studio-v8 .artist-preview-banner.artist-hero-banner {
        height: 246px !important;
        min-height: 246px !important;
    }

    .artist-studio-v8 .artist-hero-profile {
        grid-template-columns: 92px minmax(0,1fr) !important;
        bottom: 18px !important;
        gap: 13px !important;
    }

    .artist-studio-v8 .artist-avatar-editor,
    .artist-studio-v8 .artist-avatar {
        width: 92px !important;
        height: 92px !important;
    }

    .artist-studio-v8 .artist-hero-copy h1 {
        font-size: 30px;
    }

    .artist-studio-v8 .artist-hero-copy p {
        display: none;
    }

    .artist-studio-v8 .artist-cover-change {
        top: 66px;
        right: 14px;
    }

    .artist-studio-v8 .artist-active-panel-heading {
        padding: 15px;
        display: grid;
        gap: 12px;
    }

    .artist-studio-v8 .artist-active-panel-side {
        min-width: 0;
        width: 100%;
        grid-template-columns: auto 1fr;
        justify-items: start;
        align-items: center;
    }
}


/* ================================================================
   Artist Studio v9: collapsible Spotify-style navigation
   ================================================================ */
.artist-studio-v9 {
    --artist-sidebar-width: 304px;
    transition: none;
}

.artist-studio-v9.sidebar-collapsed {
    --artist-sidebar-width: 82px;
}

/* Only Paxor for Artists stays fixed. Artist identity moves with the menu. */
.artist-studio-v9 .artist-sidebar-fixed {
    padding: 12px 10px;
}

.artist-studio-v9 .artist-sidebar-brand-row {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 38px;
    align-items: center;
    gap: 8px;
}

.artist-studio-v9 .artist-sidebar-home {
    min-width: 0;
    min-height: 52px;
    padding: 8px 10px;
}

.artist-studio-v9 .artist-sidebar-collapse {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 10px;
    background: rgba(255,255,255,.045);
    color: #9aabb2;
    cursor: pointer;
    font-size: 14px;
    transition: color .16s ease, border-color .16s ease, background .16s ease;
}

.artist-studio-v9 .artist-sidebar-collapse:hover,
.artist-studio-v9 .artist-sidebar-collapse:focus-visible {
    outline: 0;
    border-color: rgba(32,217,255,.44);
    background: rgba(32,217,255,.10);
    color: var(--music-cyan);
}

.artist-studio-v9 .artist-sidebar-scroll {
    padding-top: 14px;
}

.artist-studio-v9 .artist-sidebar-profile {
    margin: 0 0 18px;
}

/* Make the IPFS badge green, matching the original NFT/IPFS status. */
.artist-studio-v9 .artist-active-badge {
    border-color: rgba(29,185,84,.48);
    background: rgba(29,185,84,.13);
    color: var(--music-ui-green);
    box-shadow: inset 0 0 0 1px rgba(29,185,84,.04), 0 0 18px rgba(29,185,84,.08);
}

/* Use the real project NFT image next to VERIFIED NFT ARTIST. */
.artist-studio-v9 .artist-verified {
    display: inline-flex;
    align-items: center;
    gap: 9px;
}

.artist-studio-v9 .artist-verified-nft-icon {
    width: 46px;
    height: 23px;
    flex: 0 0 auto;
    object-fit: contain;
    filter: drop-shadow(0 3px 8px rgba(0,0,0,.42));
}

/* Taller hero. The circular avatar fills the height below the top bar. */
.artist-studio-v9 .artist-hero-banner,
.artist-studio-v9 .artist-preview-banner.artist-hero-banner {
    height: 340px !important;
    min-height: 340px !important;
}

.artist-studio-v9 .artist-hero-profile {
    grid-template-columns: 244px minmax(0,1fr) auto !important;
    gap: 28px !important;
    bottom: 24px !important;
}

.artist-studio-v9 .artist-avatar-editor,
.artist-studio-v9 .artist-avatar {
    width: 244px !important;
    height: 244px !important;
}

.artist-studio-v9 .artist-avatar {
    font-size: 58px;
}

.artist-studio-v9 .artist-hero-copy h1 {
    font-size: clamp(42px, 4.8vw, 72px);
}

/* Collapsed mode: a single clean column of icons. */
.artist-studio-v9.sidebar-collapsed .artist-sidebar-brand-row {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 8px;
}

.artist-studio-v9.sidebar-collapsed .artist-sidebar-home {
    width: 52px;
    min-height: 52px;
    padding: 0;
    justify-content: center;
}

.artist-studio-v9.sidebar-collapsed .artist-sidebar-home > i {
    margin: 0;
}

.artist-studio-v9.sidebar-collapsed .artist-sidebar-home > span,
.artist-studio-v9.sidebar-collapsed .artist-sidebar-profile-copy,
.artist-studio-v9.sidebar-collapsed .artist-sidebar-workspace-label,
.artist-studio-v9.sidebar-collapsed .artist-nav-label,
.artist-studio-v9.sidebar-collapsed .artist-nav-link > span,
.artist-studio-v9.sidebar-collapsed .artist-sidebar-utility > span {
    display: none !important;
}

.artist-studio-v9.sidebar-collapsed .artist-sidebar-scroll {
    padding: 12px 8px 20px;
}

.artist-studio-v9.sidebar-collapsed .artist-sidebar-profile {
    width: 52px;
    min-height: 52px;
    margin: 0 auto 14px;
    padding: 0;
    display: grid !important;
    grid-template-columns: 1fr;
    place-items: center;
    border-radius: 13px;
}

.artist-studio-v9.sidebar-collapsed .artist-sidebar-avatar {
    width: 42px;
    height: 42px;
    flex-basis: 42px;
}

.artist-studio-v9.sidebar-collapsed .artist-studio-nav {
    gap: 10px !important;
    align-items: center;
}

.artist-studio-v9.sidebar-collapsed .artist-nav-group {
    width: 52px;
    display: block !important;
}

.artist-studio-v9.sidebar-collapsed .artist-nav-link,
.artist-studio-v9.sidebar-collapsed .artist-sidebar-utility {
    width: 52px !important;
    min-width: 52px !important;
    height: 52px !important;
    min-height: 52px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 13px !important;
}

.artist-studio-v9.sidebar-collapsed .artist-nav-link > i,
.artist-studio-v9.sidebar-collapsed .artist-sidebar-utility > i {
    width: auto !important;
    margin: 0 !important;
    font-size: 19px !important;
    text-align: center;
}

.artist-studio-v9.sidebar-collapsed .artist-sidebar-actions {
    margin-top: 12px;
    padding-top: 12px;
    display: grid !important;
    gap: 10px !important;
    justify-items: center;
}

@media (max-width: 1180px) {
    .artist-studio-v9 .artist-hero-profile {
        grid-template-columns: 196px minmax(0,1fr) auto !important;
        gap: 20px !important;
    }
    .artist-studio-v9 .artist-avatar-editor,
    .artist-studio-v9 .artist-avatar {
        width: 196px !important;
        height: 196px !important;
    }
}

@media (max-width: 900px) {
    .artist-studio-v9 .artist-sidebar-collapse { display: none; }
    .artist-studio-v9.sidebar-collapsed { --artist-sidebar-width: 100%; }
    .artist-studio-v9.sidebar-collapsed .artist-sidebar-home > span,
    .artist-studio-v9.sidebar-collapsed .artist-sidebar-profile-copy,
    .artist-studio-v9.sidebar-collapsed .artist-nav-link > span {
        display: grid !important;
    }
    .artist-studio-v9 .artist-hero-banner,
    .artist-studio-v9 .artist-preview-banner.artist-hero-banner {
        height: 286px !important;
        min-height: 286px !important;
    }
    .artist-studio-v9 .artist-hero-profile {
        grid-template-columns: 148px minmax(0,1fr) !important;
    }
    .artist-studio-v9 .artist-avatar-editor,
    .artist-studio-v9 .artist-avatar {
        width: 148px !important;
        height: 148px !important;
    }
}

@media (max-width: 620px) {
    .artist-studio-v9 .artist-hero-banner,
    .artist-studio-v9 .artist-preview-banner.artist-hero-banner {
        height: 252px !important;
        min-height: 252px !important;
    }
    .artist-studio-v9 .artist-hero-profile {
        grid-template-columns: 96px minmax(0,1fr) !important;
    }
    .artist-studio-v9 .artist-avatar-editor,
    .artist-studio-v9 .artist-avatar {
        width: 96px !important;
        height: 96px !important;
    }
    .artist-studio-v9 .artist-verified-nft-icon {
        width: 38px;
        height: 19px;
    }
}


/* ================================================================
   Artist Studio v10: verified label order + resilient tabs
   ================================================================ */
.artist-studio-v10 .artist-verified {
    min-height: 38px;
    display: inline-flex !important;
    align-items: center;
    gap: 11px !important;
    color: #f4fbfd !important;
    font-size: 15px !important;
    font-weight: 950 !important;
    line-height: 1;
    letter-spacing: .075em !important;
    text-transform: uppercase;
}

.artist-studio-v10 .artist-verified-word {
    display: inline-block;
    color: #f4fbfd;
    white-space: nowrap;
}

.artist-studio-v10 .artist-verified-nft-icon {
    width: 64px !important;
    height: 32px !important;
    flex: 0 0 64px !important;
    object-fit: contain;
    filter: drop-shadow(0 4px 10px rgba(0,0,0,.48));
}

.artist-studio-v10 .artist-verified-check {
    color: var(--music-ui-green, #1db954);
    font-size: 20px;
    filter: drop-shadow(0 0 9px rgba(29,185,84,.45));
}

.artist-studio-v10 .artist-verified-check[hidden] {
    display: none !important;
}

.artist-studio-v10 .artist-verified.is-confirmed {
    color: #fff !important;
}

/* The active tab is always visible; every inactive panel is forcibly hidden. */
.artist-studio-v10 [data-artist-panel-id][hidden],
.artist-studio-v10 [data-artist-panel-id][aria-hidden="true"] {
    display: none !important;
}

.artist-studio-v10 [data-artist-panel-id].is-active,
.artist-studio-v10 [data-artist-panel-id][aria-hidden="false"] {
    display: block !important;
}

.artist-studio-v10 .artist-nav-link {
    pointer-events: auto !important;
    user-select: none;
}

@media (max-width: 620px) {
    .artist-studio-v10 .artist-verified {
        gap: 7px !important;
        font-size: 11px !important;
        letter-spacing: .045em !important;
    }
    .artist-studio-v10 .artist-verified-nft-icon {
        width: 44px !important;
        height: 22px !important;
        flex-basis: 44px !important;
    }
    .artist-studio-v10 .artist-verified-check {
        font-size: 15px;
    }
}

/* ================================================================
   Artist Studio v11: denser tab headers + NFT-green verified text
   ================================================================ */

/* Make the selected-tab header less transparent and more solid.
   It keeps the marketplace frame but no longer shows the content through it. */
.artist-studio-v11 .artist-active-panel-heading {
    background:
        linear-gradient(90deg, rgba(3, 10, 13, .96), rgba(5, 20, 25, .94) 52%, rgba(4, 15, 19, .97)),
        radial-gradient(circle at 78% 48%, rgba(3, 125, 156, .34), transparent 40%),
        #071216 !important;
    border-color: rgba(3, 125, 156, .92) !important;
    box-shadow:
        0 0 14px rgba(3, 125, 156, .34),
        0 12px 26px rgba(0, 0, 0, .38),
        inset 0 1px 0 rgba(255, 255, 255, .10) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.artist-studio-v11 .artist-active-panel-heading::before {
    opacity: .55;
}

/* The internal headings of each visible tab are also more opaque. */
.artist-studio-v11 .artist-content-card > .artist-panel-heading {
    background: rgba(11, 18, 22, .97);
    border-bottom-color: rgba(255, 255, 255, .10);
}

/* Match VERIFIED / ARTIST to the green NFT artwork. */
.artist-studio-v11 .artist-verified,
.artist-studio-v11 .artist-verified-word {
    color: var(--music-ui-green, #1db954) !important;
}

.artist-studio-v11 .artist-verified-word {
    text-shadow: 0 0 12px rgba(29, 185, 84, .18);
}

.artist-studio-v11 .artist-verified.is-confirmed,
.artist-studio-v11 .artist-verified.is-confirmed .artist-verified-word {
    color: var(--music-ui-green, #1db954) !important;
}

/* ================================================================
   Artist Studio v12: compact KPI strip, tighter verified badge,
   and collision-proof sidebar menu groups
   ================================================================ */

/* Compact statistics strip directly below the artist header. */
.artist-studio-v12 .artist-dashboard-strip {
    min-height: 0 !important;
    margin: 10px 0 14px !important;
    border-radius: 12px !important;
}

.artist-studio-v12 .artist-dashboard-stat {
    min-height: 68px !important;
    padding: 9px 15px !important;
    gap: 2px !important;
}

.artist-studio-v12 .artist-dashboard-stat strong {
    font-size: 22px !important;
    line-height: 1 !important;
}

.artist-studio-v12 .artist-dashboard-stat span {
    font-size: 10px !important;
    line-height: 1.2 !important;
}

.artist-studio-v12 .artist-wallet-card {
    min-height: 68px !important;
    padding: 8px 12px !important;
    grid-template-columns: 36px minmax(0, 1fr) auto !important;
    gap: 10px !important;
}

.artist-studio-v12 .artist-wallet-icon {
    width: 36px !important;
    height: 36px !important;
    border-radius: 10px !important;
    font-size: 13px !important;
}

.artist-studio-v12 .artist-wallet-copy {
    gap: 2px !important;
}

.artist-studio-v12 .artist-wallet-copy strong {
    font-size: 12px !important;
}

.artist-studio-v12 .artist-wallet-copy small {
    font-size: 9px !important;
}

.artist-studio-v12 .artist-wallet-action {
    min-height: 32px !important;
    padding: 0 10px !important;
    gap: 6px !important;
    border-radius: 9px !important;
    font-size: 9.5px !important;
}

/* VERIFIED [NFT] ARTIST: exact requested green and tighter spacing. */
.artist-studio-v12 .artist-verified,
.artist-studio-v12 .artist-verified-word,
.artist-studio-v12 .artist-verified.is-confirmed,
.artist-studio-v12 .artist-verified.is-confirmed .artist-verified-word {
    color: #1dca8b !important;
}

.artist-studio-v12 .artist-verified {
    min-height: 30px !important;
    gap: 4px !important;
    column-gap: 4px !important;
}

.artist-studio-v12 .artist-verified-word {
    text-shadow: 0 0 11px rgba(29, 202, 139, .18) !important;
}

.artist-studio-v12 .artist-verified-nft-icon {
    width: 52px !important;
    height: 26px !important;
    flex: 0 0 52px !important;
    margin: 0 1px !important;
}

.artist-studio-v12 .artist-verified-check {
    color: #1dca8b !important;
    margin-left: 2px !important;
}

/* Sidebar: each label and button occupies its own row, so UPLOAD MUSIC
   can never overlap the New track button. */
.artist-studio-v12 .artist-studio-nav {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 16px !important;
    overflow: visible !important;
}

.artist-studio-v12 .artist-nav-group {
    position: static !important;
    inset: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 7px !important;
    overflow: visible !important;
    transform: none !important;
}

.artist-studio-v12 .artist-nav-label {
    position: static !important;
    inset: auto !important;
    width: auto !important;
    min-height: 14px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 10px 1px !important;
    display: block !important;
    overflow: visible !important;
    line-height: 1.3 !important;
    white-space: normal !important;
    transform: none !important;
}

.artist-studio-v12 .artist-nav-link {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: 68px !important;
    min-height: 68px !important;
    max-height: 68px !important;
    margin: 0 !important;
    flex: 0 0 68px !important;
    transform: none !important;
}

/* Preserve clean icon-only spacing in collapsed mode. */
.artist-studio-v12.sidebar-collapsed .artist-studio-nav {
    gap: 10px !important;
    align-items: center !important;
}

.artist-studio-v12.sidebar-collapsed .artist-nav-group {
    width: 52px !important;
    display: block !important;
}

.artist-studio-v12.sidebar-collapsed .artist-nav-link {
    width: 52px !important;
    height: 52px !important;
    min-height: 52px !important;
    max-height: 52px !important;
    flex-basis: 52px !important;
}

@media (max-width: 900px) {
    .artist-studio-v12 .artist-dashboard-stat,
    .artist-studio-v12 .artist-wallet-card {
        min-height: 62px !important;
    }
}

@media (max-width: 620px) {
    .artist-studio-v12 .artist-verified {
        gap: 3px !important;
    }
    .artist-studio-v12 .artist-verified-nft-icon {
        width: 40px !important;
        height: 20px !important;
        flex-basis: 40px !important;
    }
}

/* ================================================================
   Artist Studio v13: stable sidebar flow + tighter verified badge
   ================================================================ */

/* Keep VERIFIED, NFT artwork and ARTIST visually grouped together. */
.artist-studio-v13 .artist-verified {
    gap: 1px !important;
    column-gap: 1px !important;
}

.artist-studio-v13 .artist-verified-nft-icon {
    width: 48px !important;
    height: 24px !important;
    flex: 0 0 48px !important;
    margin: 0 !important;
}

.artist-studio-v13 .artist-verified-check {
    margin-left: 3px !important;
}

/* The scroll region owns vertical overflow; its children never shrink. */
.artist-studio-v13 .artist-sidebar-scroll {
    min-height: 0 !important;
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    align-items: stretch !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
}

.artist-studio-v13 .artist-sidebar-profile,
.artist-studio-v13 .artist-sidebar-workspace-label,
.artist-studio-v13 .artist-studio-nav,
.artist-studio-v13 .artist-nav-group,
.artist-studio-v13 .artist-sidebar-actions {
    flex-shrink: 0 !important;
}

/* Use grid instead of a shrinking flex stack. Each group gets its own row. */
.artist-studio-v13 .artist-studio-nav {
    width: 100% !important;
    height: auto !important;
    min-height: max-content !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-auto-flow: row !important;
    grid-auto-rows: max-content !important;
    align-content: start !important;
    align-items: stretch !important;
    gap: 16px !important;
    overflow: visible !important;
}

.artist-studio-v13 .artist-nav-group {
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 89px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: max-content 68px !important;
    align-content: start !important;
    align-items: stretch !important;
    gap: 7px !important;
    overflow: visible !important;
    transform: none !important;
}

.artist-studio-v13 .artist-nav-label {
    position: static !important;
    min-height: 14px !important;
    line-height: 1.35 !important;
}

.artist-studio-v13 .artist-nav-link {
    position: relative !important;
    width: 100% !important;
    height: 68px !important;
    min-height: 68px !important;
    max-height: 68px !important;
    margin: 0 !important;
    flex: none !important;
    align-self: stretch !important;
}

.artist-studio-v13 .artist-sidebar-actions {
    width: 100% !important;
    height: auto !important;
    margin-top: 22px !important;
}

/* Preserve the compact icon-only sidebar without inheriting desktop row heights. */
.artist-studio-v13.sidebar-collapsed .artist-studio-nav {
    min-height: 0 !important;
    display: grid !important;
    justify-items: center !important;
    gap: 10px !important;
}

.artist-studio-v13.sidebar-collapsed .artist-nav-group {
    width: 52px !important;
    min-height: 52px !important;
    height: 52px !important;
    display: block !important;
}

.artist-studio-v13.sidebar-collapsed .artist-nav-link {
    width: 52px !important;
    height: 52px !important;
    min-height: 52px !important;
    max-height: 52px !important;
}

@media (max-width: 620px) {
    .artist-studio-v13 .artist-verified {
        gap: 1px !important;
    }

    .artist-studio-v13 .artist-verified-nft-icon {
        width: 38px !important;
        height: 19px !important;
        flex-basis: 38px !important;
    }
}


/* ================================================================
   Artist Studio v14: flush hero, global-wallet indicator only,
   darker menu channels and three-column KPI strip
   ================================================================ */

/* The workspace starts directly below the global horizontal menu. */
.artist-studio-v14 .artist-studio-main {
    padding-top: 0 !important;
}

.artist-studio-v14 .artist-hero {
    margin-top: 0 !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

/* Only a passive global-wallet state indicator remains in Artist Studio. */
.artist-studio-v14 .artist-hero-statuses {
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
}

.artist-studio-v14 .artist-global-wallet-indicator {
    min-height: 28px;
    padding: 0 10px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 999px;
    background: rgba(4,9,11,.78);
    color: #9eacb2;
    font-size: 10px;
    font-weight: 850;
    white-space: nowrap;
    backdrop-filter: blur(10px);
}

.artist-studio-v14 .artist-global-wallet-dot {
    width: 8px;
    height: 8px;
    flex: 0 0 8px;
    border-radius: 50%;
    background: #7b878c;
    box-shadow: 0 0 0 3px rgba(123,135,140,.12);
}

.artist-studio-v14 .artist-global-wallet-indicator.connected {
    border-color: rgba(29,202,139,.34);
    color: #d6f8eb;
}

.artist-studio-v14 .artist-global-wallet-indicator.connected .artist-global-wallet-dot {
    background: #1dca8b;
    box-shadow: 0 0 0 3px rgba(29,202,139,.15), 0 0 12px rgba(29,202,139,.45);
}

.artist-studio-v14 .artist-global-wallet-indicator.disconnected .artist-global-wallet-dot {
    background: #879298;
}

/* Wallet connection controls are global and must never appear here. */
.artist-studio-v14 .artist-wallet-card,
.artist-studio-v14 [data-artist-wallet-menu],
.artist-studio-v14 .artist-wallet-action {
    display: none !important;
}

/* Three real counters only. */
.artist-studio-v14 .artist-dashboard-strip {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.artist-studio-v14 .artist-dashboard-stat:last-child {
    border-right: 0 !important;
}

/* Darker channels between the cyan menu strips. */
.artist-studio-v14 .artist-sidebar-scroll {
    background:
        linear-gradient(180deg, rgba(3,125,156,.025), transparent 18%),
        #06090b !important;
}

.artist-studio-v14 .artist-studio-nav {
    padding: 10px 8px 14px !important;
    border: 1px solid rgba(255,255,255,.035);
    border-radius: 14px;
    background: #05080a !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.025);
}

.artist-studio-v14 .artist-nav-group {
    padding: 0 0 2px !important;
    background: #05080a !important;
}

.artist-studio-v14 .artist-nav-label {
    color: #607077 !important;
}

.artist-studio-v14 .artist-nav-link {
    background: #0a0f12 !important;
}

.artist-studio-v14 .artist-nav-link:hover {
    background: #10171a !important;
}

.artist-studio-v14 .artist-nav-link.active {
    background:
        linear-gradient(90deg, rgba(3,125,156,.27), rgba(3,125,156,.08)),
        #0a1115 !important;
}

.artist-studio-v14.sidebar-collapsed .artist-studio-nav {
    padding: 8px 0 12px !important;
    border-left: 0;
    border-right: 0;
    border-radius: 0;
}

@media (max-width: 900px) {
    .artist-studio-v14 .artist-studio-main {
        padding-top: 0 !important;
    }
    .artist-studio-v14 .artist-hero-statuses {
        gap: 6px;
    }
    .artist-studio-v14 .artist-global-wallet-indicator {
        padding: 0 8px;
        font-size: 9px;
    }
}

@media (max-width: 620px) {
    .artist-studio-v14 .artist-global-wallet-indicator span:last-child {
        display: none;
    }
    .artist-studio-v14 .artist-global-wallet-indicator {
        width: 28px;
        padding: 0;
        justify-content: center;
    }
}

/* ========================================================================== 
   Artist Studio v15: compact statistics strip + passive global wallet status
   ========================================================================== */

/* Profile live was a decorative label, not a backend-published state. */
.artist-studio-v15 .artist-studio-status,
.artist-studio-v15 .artist-hero-statuses {
    display: none !important;
}

.artist-studio-v15 .artist-dashboard-strip {
    width: min(var(--artist-page-width), calc(100% - 48px));
    min-height: 62px;
    margin: 0 auto 18px;
    grid-template-columns: repeat(3, minmax(105px, .55fr)) minmax(190px, 1fr) !important;
    border-radius: 12px;
}

.artist-studio-v15 .artist-dashboard-stat {
    min-height: 62px !important;
    padding: 9px 16px !important;
    gap: 2px;
}

.artist-studio-v15 .artist-dashboard-stat strong {
    font-size: 22px;
    line-height: .95;
}

.artist-studio-v15 .artist-dashboard-stat span {
    font-size: 10px;
    line-height: 1.1;
}

.artist-studio-v15 .artist-dashboard-wallet {
    min-width: 0;
    min-height: 62px;
    padding: 8px 16px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 3px;
    background: rgba(255,255,255,.012);
}

.artist-studio-v15 .artist-dashboard-wallet small {
    color: #6f7d83;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .045em;
    text-transform: uppercase;
}

.artist-studio-v15 .artist-global-wallet-indicator {
    min-height: 24px;
    padding: 0;
    gap: 7px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #9eacb2;
    font-size: 11px;
    font-weight: 850;
    backdrop-filter: none;
}

.artist-studio-v15 .artist-global-wallet-indicator.connected {
    color: #d6f8eb;
}

.artist-studio-v15 .artist-global-wallet-dot {
    width: 8px;
    height: 8px;
    flex-basis: 8px;
}

.artist-studio-v15 .artist-active-panel-side .music-result-count[hidden] {
    display: none !important;
}

@media (max-width: 980px) {
    .artist-studio-v15 .artist-dashboard-strip {
        grid-template-columns: repeat(3, minmax(90px, 1fr)) !important;
    }
    .artist-studio-v15 .artist-dashboard-wallet {
        grid-column: 1 / -1;
        min-height: 48px;
        padding: 7px 14px;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        border-top: 1px solid rgba(255,255,255,.07);
    }
}

@media (max-width: 620px) {
    .artist-studio-v15 .artist-dashboard-strip {
        width: calc(100% - 28px);
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
    .artist-studio-v15 .artist-dashboard-stat {
        padding: 8px 10px !important;
    }
    .artist-studio-v15 .artist-dashboard-stat strong {
        font-size: 19px;
    }
    .artist-studio-v15 .artist-global-wallet-indicator {
        width: auto;
        min-width: 0;
        justify-content: flex-start;
    }
    .artist-studio-v15 .artist-global-wallet-indicator span:last-child {
        display: inline;
    }
}


/* ========================================================================== 
   Artist Studio v16: animated sidebar layout toggle
   ========================================================================== */
.artist-studio-v16 .artist-sidebar-collapse {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background:
        linear-gradient(180deg, rgba(255,255,255,.065), rgba(255,255,255,.025)),
        #0a1013;
    color: #8fa0a7;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.07);
    transition:
        border-color .2s ease,
        background .2s ease,
        box-shadow .2s ease,
        transform .2s ease;
}

.artist-studio-v16 .artist-sidebar-collapse:hover,
.artist-studio-v16 .artist-sidebar-collapse:focus-visible {
    border-color: rgba(32,217,255,.58);
    background:
        linear-gradient(180deg, rgba(32,217,255,.13), rgba(32,217,255,.045)),
        #081116;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.10),
        0 0 0 3px rgba(32,217,255,.08),
        0 0 22px rgba(32,217,255,.10);
    transform: translateY(-1px);
}

.artist-studio-v16 .artist-sidebar-layout-icon {
    width: 27px;
    height: 23px;
    position: relative;
    display: block;
    border: 1.7px solid currentColor;
    border-radius: 5px;
    color: #91a2aa;
    overflow: hidden;
    box-sizing: border-box;
    transition: color .2s ease, transform .28s cubic-bezier(.2,.8,.2,1);
}

.artist-studio-v16 .artist-sidebar-layout-icon::after {
    content: "";
    position: absolute;
    inset: 3px;
    border-radius: 2px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
    pointer-events: none;
}

.artist-studio-v16 .artist-sidebar-layout-rail,
.artist-studio-v16 .artist-sidebar-layout-content {
    position: absolute;
    top: 3px;
    bottom: 3px;
    border-radius: 2px;
    transition:
        left .3s cubic-bezier(.2,.8,.2,1),
        width .3s cubic-bezier(.2,.8,.2,1),
        opacity .2s ease,
        background .2s ease,
        box-shadow .2s ease;
}

/* Expanded now: a wide highlighted left panel. Hover previews the collapse. */
.artist-studio-v16 .artist-sidebar-layout-rail {
    left: 3px;
    width: 8px;
    background: linear-gradient(180deg, #20d9ff, #037d9c);
    box-shadow: 0 0 10px rgba(32,217,255,.42);
}

.artist-studio-v16 .artist-sidebar-layout-content {
    left: 14px;
    width: 8px;
    background: rgba(255,255,255,.18);
}

.artist-studio-v16 .artist-sidebar-collapse[data-state="expanded"]:hover .artist-sidebar-layout-rail,
.artist-studio-v16 .artist-sidebar-collapse[data-state="expanded"]:focus-visible .artist-sidebar-layout-rail {
    width: 3px;
    box-shadow: 0 0 8px rgba(32,217,255,.26);
}

.artist-studio-v16 .artist-sidebar-collapse[data-state="expanded"]:hover .artist-sidebar-layout-content,
.artist-studio-v16 .artist-sidebar-collapse[data-state="expanded"]:focus-visible .artist-sidebar-layout-content {
    left: 9px;
    width: 13px;
    background: rgba(255,255,255,.26);
}

/* Collapsed now: a thin left rail. Hover previews expanding it again. */
.artist-studio-v16 .artist-sidebar-collapse[data-state="collapsed"] .artist-sidebar-layout-rail {
    width: 3px;
    box-shadow: 0 0 8px rgba(32,217,255,.28);
}

.artist-studio-v16 .artist-sidebar-collapse[data-state="collapsed"] .artist-sidebar-layout-content {
    left: 9px;
    width: 13px;
    background: rgba(255,255,255,.23);
}

.artist-studio-v16 .artist-sidebar-collapse[data-state="collapsed"]:hover .artist-sidebar-layout-rail,
.artist-studio-v16 .artist-sidebar-collapse[data-state="collapsed"]:focus-visible .artist-sidebar-layout-rail {
    width: 8px;
    box-shadow: 0 0 11px rgba(32,217,255,.46);
}

.artist-studio-v16 .artist-sidebar-collapse[data-state="collapsed"]:hover .artist-sidebar-layout-content,
.artist-studio-v16 .artist-sidebar-collapse[data-state="collapsed"]:focus-visible .artist-sidebar-layout-content {
    left: 14px;
    width: 8px;
}

.artist-studio-v16 .artist-sidebar-collapse:hover .artist-sidebar-layout-icon,
.artist-studio-v16 .artist-sidebar-collapse:focus-visible .artist-sidebar-layout-icon {
    color: #dffaff;
}

.artist-studio-v16 .artist-sidebar-collapse.is-animating .artist-sidebar-layout-icon {
    animation: artistSidebarLayoutPulse .42s cubic-bezier(.2,.8,.2,1);
}

@keyframes artistSidebarLayoutPulse {
    0% { transform: scale(1); }
    45% { transform: scale(.88); }
    100% { transform: scale(1); }
}

@media (prefers-reduced-motion: reduce) {
    .artist-studio-v16 .artist-sidebar-collapse,
    .artist-studio-v16 .artist-sidebar-layout-icon,
    .artist-studio-v16 .artist-sidebar-layout-rail,
    .artist-studio-v16 .artist-sidebar-layout-content {
        transition: none !important;
        animation: none !important;
    }
}

/* ========================================================================== 
   Artist Studio v17: frameless, larger animated sidebar toggle
   ========================================================================== */
.artist-studio-v17 .artist-sidebar-brand-row {
    grid-template-columns: minmax(0, 1fr) 48px;
    gap: 6px;
}

/* The button keeps a generous click target, but has no visible outer frame. */
.artist-studio-v17 .artist-sidebar-collapse,
.artist-studio-v17 .artist-sidebar-collapse:hover,
.artist-studio-v17 .artist-sidebar-collapse:focus-visible {
    width: 48px;
    height: 48px;
    padding: 0;
    border: 0 !important;
    border-radius: 0;
    outline: 0;
    background: transparent !important;
    box-shadow: none !important;
    color: #9aabb2;
    transform: none;
}

.artist-studio-v17 .artist-sidebar-collapse:hover,
.artist-studio-v17 .artist-sidebar-collapse:focus-visible {
    color: #dffaff;
}

/* The layout symbol itself is now the only visible frame. */
.artist-studio-v17 .artist-sidebar-layout-icon {
    width: 38px;
    height: 32px;
    border-width: 2.2px;
    border-radius: 7px;
    color: #9eb0b8;
    box-shadow: none;
}

.artist-studio-v17 .artist-sidebar-collapse:hover .artist-sidebar-layout-icon,
.artist-studio-v17 .artist-sidebar-collapse:focus-visible .artist-sidebar-layout-icon {
    color: #e9fcff;
    filter: drop-shadow(0 0 7px rgba(32,217,255,.22));
}

.artist-studio-v17 .artist-sidebar-layout-icon::after {
    inset: 4px;
    border-radius: 3px;
}

.artist-studio-v17 .artist-sidebar-layout-rail,
.artist-studio-v17 .artist-sidebar-layout-content {
    top: 4px;
    bottom: 4px;
    border-radius: 3px;
}

/* Expanded state. */
.artist-studio-v17 .artist-sidebar-layout-rail {
    left: 4px;
    width: 11px;
}

.artist-studio-v17 .artist-sidebar-layout-content {
    left: 19px;
    width: 13px;
}

.artist-studio-v17 .artist-sidebar-collapse[data-state="expanded"]:hover .artist-sidebar-layout-rail,
.artist-studio-v17 .artist-sidebar-collapse[data-state="expanded"]:focus-visible .artist-sidebar-layout-rail {
    width: 4px;
}

.artist-studio-v17 .artist-sidebar-collapse[data-state="expanded"]:hover .artist-sidebar-layout-content,
.artist-studio-v17 .artist-sidebar-collapse[data-state="expanded"]:focus-visible .artist-sidebar-layout-content {
    left: 12px;
    width: 20px;
}

/* Collapsed state. */
.artist-studio-v17 .artist-sidebar-collapse[data-state="collapsed"] .artist-sidebar-layout-rail {
    width: 4px;
}

.artist-studio-v17 .artist-sidebar-collapse[data-state="collapsed"] .artist-sidebar-layout-content {
    left: 12px;
    width: 20px;
}

.artist-studio-v17 .artist-sidebar-collapse[data-state="collapsed"]:hover .artist-sidebar-layout-rail,
.artist-studio-v17 .artist-sidebar-collapse[data-state="collapsed"]:focus-visible .artist-sidebar-layout-rail {
    width: 11px;
}

.artist-studio-v17 .artist-sidebar-collapse[data-state="collapsed"]:hover .artist-sidebar-layout-content,
.artist-studio-v17 .artist-sidebar-collapse[data-state="collapsed"]:focus-visible .artist-sidebar-layout-content {
    left: 19px;
    width: 13px;
}

/* ========================================================================== 
   Artist Studio v18: darker idle layout icon + larger centered sidebar icons
   ========================================================================== */

/* Keep the layout-frame icon quiet at rest; hover/focus still brightens it. */
.artist-studio-v18 .artist-sidebar-layout-icon {
    color: #59676d !important;
    border-color: currentColor !important;
    filter: none;
}

.artist-studio-v18 .artist-sidebar-layout-content {
    background: rgba(255,255,255,.11) !important;
}

.artist-studio-v18 .artist-sidebar-collapse:hover .artist-sidebar-layout-icon,
.artist-studio-v18 .artist-sidebar-collapse:focus-visible .artist-sidebar-layout-icon {
    color: #e9fcff !important;
    filter: drop-shadow(0 0 7px rgba(32,217,255,.22));
}

.artist-studio-v18 .artist-sidebar-collapse:hover .artist-sidebar-layout-content,
.artist-studio-v18 .artist-sidebar-collapse:focus-visible .artist-sidebar-layout-content {
    background: rgba(255,255,255,.27) !important;
}

/* Larger icons in the expanded left navigation. */
.artist-studio-v18 .artist-sidebar-home > i {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    font-size: 18px;
}

.artist-studio-v18 .artist-nav-link > i {
    width: 38px !important;
    font-size: 21px !important;
}

.artist-studio-v18 .artist-sidebar-utility > i {
    width: 38px !important;
    font-size: 20px !important;
}

.artist-studio-v18 .artist-sidebar-avatar > i {
    font-size: 20px;
}

/* Collapsed mode: one centered icon column with no button cards or frames. */
.artist-studio-v18.sidebar-collapsed .artist-sidebar-fixed,
.artist-studio-v18.sidebar-collapsed .artist-sidebar-scroll {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
}

.artist-studio-v18.sidebar-collapsed .artist-sidebar-brand-row,
.artist-studio-v18.sidebar-collapsed .artist-studio-nav,
.artist-studio-v18.sidebar-collapsed .artist-sidebar-actions {
    width: 100% !important;
    justify-items: center !important;
    align-items: center !important;
}

.artist-studio-v18.sidebar-collapsed .artist-sidebar-home,
.artist-studio-v18.sidebar-collapsed .artist-sidebar-profile,
.artist-studio-v18.sidebar-collapsed .artist-nav-link,
.artist-studio-v18.sidebar-collapsed .artist-sidebar-utility {
    width: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    height: 58px !important;
    min-height: 58px !important;
    max-height: 58px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    outline: 0 !important;
}

.artist-studio-v18.sidebar-collapsed .artist-nav-link::before {
    display: none !important;
}

.artist-studio-v18.sidebar-collapsed .artist-sidebar-home:hover,
.artist-studio-v18.sidebar-collapsed .artist-sidebar-profile:hover,
.artist-studio-v18.sidebar-collapsed .artist-nav-link:hover,
.artist-studio-v18.sidebar-collapsed .artist-sidebar-utility:hover,
.artist-studio-v18.sidebar-collapsed .artist-nav-link.active {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.artist-studio-v18.sidebar-collapsed .artist-sidebar-home > i,
.artist-studio-v18.sidebar-collapsed .artist-nav-link > i,
.artist-studio-v18.sidebar-collapsed .artist-sidebar-utility > i {
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    text-align: center !important;
    line-height: 1 !important;
}

.artist-studio-v18.sidebar-collapsed .artist-sidebar-home > i {
    color: var(--artist-accent) !important;
    font-size: 25px !important;
}

.artist-studio-v18.sidebar-collapsed .artist-nav-link > i,
.artist-studio-v18.sidebar-collapsed .artist-sidebar-utility > i {
    color: #8b9aa1 !important;
    font-size: 24px !important;
    transition: color .16s ease, transform .16s ease, filter .16s ease;
}

.artist-studio-v18.sidebar-collapsed .artist-nav-link:hover > i,
.artist-studio-v18.sidebar-collapsed .artist-sidebar-utility:hover > i {
    color: #dffaff !important;
    transform: scale(1.08);
}

.artist-studio-v18.sidebar-collapsed .artist-nav-link.active > i {
    color: var(--artist-accent) !important;
    filter: drop-shadow(0 0 8px rgba(32,217,255,.28));
}

.artist-studio-v18.sidebar-collapsed .artist-sidebar-avatar {
    width: 46px !important;
    height: 46px !important;
    flex: 0 0 46px !important;
    margin: 0 !important;
}

.artist-studio-v18.sidebar-collapsed .artist-sidebar-avatar > i {
    font-size: 21px !important;
}

.artist-studio-v18.sidebar-collapsed .artist-sidebar-actions {
    padding-top: 10px !important;
    border-top: 1px solid rgba(255,255,255,.055) !important;
}


/* ========================================================================== 
   Artist Studio v19: deeper idle outline for the sidebar layout toggle
   ========================================================================== */
.artist-studio-v19 .artist-sidebar-layout-icon {
    color: #354045 !important;
    border-color: currentColor !important;
    filter: none;
}

.artist-studio-v19 .artist-sidebar-layout-content {
    background: rgba(255,255,255,.075) !important;
}

.artist-studio-v19 .artist-sidebar-collapse:hover .artist-sidebar-layout-icon,
.artist-studio-v19 .artist-sidebar-collapse:focus-visible .artist-sidebar-layout-icon {
    color: #e9fcff !important;
    filter: drop-shadow(0 0 7px rgba(32,217,255,.22));
}

.artist-studio-v19 .artist-sidebar-collapse:hover .artist-sidebar-layout-content,
.artist-studio-v19 .artist-sidebar-collapse:focus-visible .artist-sidebar-layout-content {
    background: rgba(255,255,255,.27) !important;
}

/* ========================================================================== 
   Artist Studio v20: collapse control inside the Paxor for Artists frame
   ========================================================================== */
.artist-studio-v20 .artist-sidebar-brand-row {
    position: relative;
    width: 100%;
    padding: 0 6px 0 0;
    grid-template-columns: minmax(0, 1fr) 48px;
    align-items: center;
    gap: 0;
    overflow: hidden;
    border: 1px solid rgba(3,125,156,.42);
    border-radius: 13px;
    background:
        linear-gradient(90deg, rgba(3,125,156,.20), rgba(3,125,156,.055)),
        rgba(255,255,255,.022);
    box-shadow:
        0 0 16px rgba(3,125,156,.15),
        inset 0 1px 0 rgba(255,255,255,.055);
}

.artist-studio-v20 .artist-sidebar-brand-row::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(255,255,255,.045), transparent 48%),
        radial-gradient(circle at 18% 20%, rgba(32,217,255,.07), transparent 34%);
    pointer-events: none;
}

.artist-studio-v20 .artist-sidebar-brand-row > * {
    position: relative;
    z-index: 1;
}

.artist-studio-v20 .artist-sidebar-home {
    width: 100%;
    min-width: 0;
    min-height: 58px;
    margin: 0;
    padding: 10px 8px 10px 12px;
    border: 0 !important;
    border-radius: 0;
    background: transparent !important;
    box-shadow: none !important;
}

.artist-studio-v20 .artist-sidebar-collapse {
    position: static;
    inset: auto;
    justify-self: end;
    margin: 0;
}

/* Compact mode keeps the brand mark and expand icon in one vertical frame. */
.artist-studio-v20.sidebar-collapsed .artist-sidebar-brand-row {
    width: 60px !important;
    margin: 0 auto !important;
    padding: 5px 0 6px !important;
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    gap: 2px !important;
    border: 1px solid rgba(3,125,156,.32) !important;
    border-radius: 14px !important;
    background:
        linear-gradient(180deg, rgba(3,125,156,.13), rgba(3,125,156,.025)),
        rgba(255,255,255,.012) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.035) !important;
}

.artist-studio-v20.sidebar-collapsed .artist-sidebar-home {
    width: 52px !important;
    min-width: 52px !important;
    max-width: 52px !important;
    height: 52px !important;
    min-height: 52px !important;
    max-height: 52px !important;
    padding: 0 !important;
}

.artist-studio-v20.sidebar-collapsed .artist-sidebar-collapse {
    width: 48px;
    height: 42px;
    justify-self: center;
}

/* Music rights workflow --------------------------------------------------- */
.artist-rights-upload-note {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    align-items: center;
    gap: 12px;
    min-height: 62px;
    padding: 12px 14px;
    border: 1px solid rgba(255, 200, 87, .28);
    border-radius: 10px;
    background: rgba(255, 200, 87, .07);
    color: #f5c85c;
}
.artist-rights-upload-note > i {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    background: rgba(255, 200, 87, .11);
    font-size: 17px;
}
.artist-rights-upload-note strong,
.artist-rights-upload-note span { display: block; }
.artist-rights-upload-note strong { color: #fff2c6; font-size: 12px; }
.artist-rights-upload-note span { margin-top: 4px; color: #a9a28e; font-size: 10px; line-height: 1.45; }

.artist-release-status.rights-required {
    background: rgba(255, 168, 66, .14);
    color: #ffbd65;
    box-shadow: 0 0 0 1px rgba(255, 168, 66, .16) inset;
}
.artist-release-status.rights-declared {
    background: rgba(32, 217, 255, .11);
    color: #55ddf5;
}
.artist-market-action.rights-required {
    border-color: rgba(255, 168, 66, .55);
    background: rgba(255, 168, 66, .12);
    color: #ffc26f;
    animation: paxorRightsPulse 1.65s ease-in-out infinite;
}
.artist-market-action.rights-required:hover {
    border-color: rgba(255, 194, 111, .9);
    background: rgba(255, 168, 66, .2);
}
.artist-release-qr-blocked {
    grid-column: 1 / -1;
    min-height: 42px;
    display: flex;
    align-items: center;
    padding: 8px 10px;
    border: 1px dashed rgba(255, 255, 255, .12);
    border-radius: 8px;
    color: #7f8b90;
    font-size: 9px;
    line-height: 1.35;
}
@keyframes paxorRightsPulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(255, 168, 66, .08); }
    50% { box-shadow: 0 0 0 5px rgba(255, 168, 66, .12), 0 0 20px rgba(255, 168, 66, .12); }
}
@media (prefers-reduced-motion: reduce) {
    .artist-market-action.rights-required { animation: none; }
}

.artist-rights-dialog {
    width: min(900px, calc(100vw - 24px));
    height: min(760px, calc(100dvh - 24px));
    max-height: calc(100dvh - 24px);
    padding: 0;
    position: fixed;
    inset: 0;
    margin: auto;
    overflow: hidden;
    box-sizing: border-box;
    border: 1px solid rgba(32, 217, 255, .2);
    border-radius: 16px;
    background: #0b1013;
    color: #fff;
    box-shadow: 0 28px 90px rgba(0, 0, 0, .72);
}
.artist-rights-dialog::backdrop {
    background: rgba(0, 0, 0, .78);
    backdrop-filter: blur(6px);
}
.artist-rights-form {
    width: 100%;
    height: 100%;
    min-height: 0;
    max-height: 100%;
    box-sizing: border-box;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    overflow: hidden;
}
.artist-rights-form > header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin: 0;
    padding: 20px 22px 16px;
    border-bottom: 1px solid rgba(255, 255, 255, .07);
    background: rgba(10, 15, 18, .98);
}
.artist-rights-form h2 { margin: 4px 0 3px; font-size: 24px; }
.artist-rights-form header p { margin: 0; color: #8f9ba0; font-size: 11px; }
.artist-rights-close {
    width: 34px;
    height: 34px;
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 9px;
    background: rgba(255, 255, 255, .04);
    color: #aeb8bc;
    cursor: pointer;
}
.artist-rights-body {
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 18px 22px 20px;
    scrollbar-color: rgba(32, 217, 255, .28) transparent;
    scrollbar-width: thin;
}
.artist-rights-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}
.artist-rights-wide { grid-column: 1 / -1; }
.artist-rights-form .artist-field small {
    display: block;
    margin-top: 5px;
    color: #77868c;
    font-size: 9px;
    line-height: 1.35;
}
.artist-metadata-tag {
    display: inline-flex;
    align-items: center;
    min-height: 18px;
    margin-left: 6px;
    padding: 1px 7px;
    border: 1px solid rgba(57, 222, 142, .3);
    border-radius: 999px;
    background: rgba(57, 222, 142, .08);
    color: #58e59b;
    font-size: 8px;
    font-style: normal;
    font-weight: 900;
    letter-spacing: .04em;
    vertical-align: middle;
}
.artist-rights-confirmations {
    display: grid;
    gap: 9px;
    margin-top: 16px;
    padding: 14px;
    border: 1px solid rgba(255, 200, 87, .18);
    border-radius: 11px;
    background: rgba(255, 200, 87, .05);
}
.artist-rights-confirmations label {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 9px;
    align-items: start;
    color: #bec6c9;
    font-size: 10px;
    line-height: 1.45;
}
.artist-rights-confirmations input { margin-top: 1px; accent-color: #20d9ff; }
.artist-rights-footer {
    min-height: 72px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    margin: 0;
    padding: 12px 22px;
    border-top: 1px solid rgba(32, 217, 255, .13);
    background: rgba(8, 13, 16, .99);
    box-shadow: 0 -12px 28px rgba(0, 0, 0, .28);
    position: relative;
    z-index: 20;
    display: grid !important;
    visibility: visible !important;
    opacity: 1 !important;
}
.artist-rights-footer .artist-form-status {
    min-height: 18px;
    margin: 0;
}
.artist-rights-footer-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
}
#artist-rights-submit {
    min-width: 260px;
}
.artist-rights-footer .music-primary-btn,
.artist-rights-footer .music-secondary-btn {
    min-height: 44px;
}
.artist-rights-body {
    scrollbar-gutter: stable;
}
.artist-primary-artist-field {
    order: -10;
}
@media (max-width: 680px) {
    .artist-rights-dialog { width: calc(100vw - 16px); max-height: calc(100dvh - 16px); }
    .artist-rights-form { height: 100%; max-height: 100%; }
    .artist-rights-grid { grid-template-columns: 1fr; }
    .artist-rights-wide { grid-column: auto; }
    .artist-rights-form > header { padding: 16px; }
    .artist-rights-body { padding: 14px 16px 18px; }
    .artist-rights-footer { grid-template-columns: 1fr; padding: 12px 16px; }
    .artist-rights-footer-actions { width: 100%; }
    .artist-rights-footer-actions button { flex: 1 1 0; min-width: 0; }
    #artist-rights-submit { min-width: 0; }
}


/* New track upload selections and uploaded-track manager ----------------- */
.artist-track-file.has-selected-file {
    border-color: rgba(57, 222, 142, .72) !important;
    background: rgba(35, 184, 112, .08) !important;
    box-shadow: 0 0 0 1px rgba(57, 222, 142, .08) inset;
}
.artist-track-file span.is-selected {
    max-width: min(100%, 460px);
    color: #3ade8e !important;
    font-size: 16px !important;
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: .01em;
}

.artist-uploaded-tracks {
    grid-column: 1 / -1;
    margin-top: 24px;
    padding-top: 22px;
    border-top: 1px solid rgba(255, 255, 255, .09);
}
.artist-uploaded-tracks-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 12px;
}
.artist-uploaded-tracks-heading h3 {
    margin: 4px 0 3px;
    color: #f4f7f8;
    font-size: 19px;
    line-height: 1.2;
}
.artist-uploaded-tracks-heading p {
    margin: 0;
    color: #7f8c91;
    font-size: 11px;
}
.artist-uploaded-tracks-count {
    min-width: 34px;
    height: 28px;
    display: inline-grid;
    place-items: center;
    padding: 0 9px;
    border: 1px solid rgba(32, 217, 255, .24);
    border-radius: 999px;
    background: rgba(32, 217, 255, .08);
    color: #69e7ff;
    font-size: 12px;
    font-weight: 900;
}
.artist-uploaded-track-list {
    display: grid;
    gap: 9px;
}
.artist-uploaded-track-row {
    min-height: 74px;
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr) auto;
    align-items: center;
    gap: 13px;
    padding: 9px 10px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 11px;
    background: rgba(255, 255, 255, .025);
    transition: border-color .18s ease, background .18s ease;
}
.artist-uploaded-track-row:hover {
    border-color: rgba(32, 217, 255, .2);
    background: rgba(32, 217, 255, .035);
}
.artist-uploaded-track-cover {
    width: 56px;
    height: 56px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 9px;
    background: #0a1013 center / cover no-repeat;
    color: #3bcfe9;
    font-size: 18px;
}
.artist-uploaded-track-info {
    min-width: 0;
    display: grid;
    gap: 4px;
}
.artist-uploaded-track-info > strong {
    overflow: hidden;
    color: #f2f6f7;
    font-size: 13px;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.artist-uploaded-track-info > span:not(.artist-uploaded-track-status) {
    overflow: hidden;
    color: #7f8d92;
    font-size: 10px;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.artist-uploaded-track-status {
    width: max-content;
    max-width: 100%;
    padding: 3px 7px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .06);
    color: #9ca8ac;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: .05em;
    text-transform: uppercase;
}
.artist-uploaded-track-status.rights-required {
    background: rgba(255, 168, 66, .12);
    color: #ffc16c;
}
.artist-uploaded-track-status.rights-declared {
    background: rgba(32, 217, 255, .1);
    color: #65e4fa;
}
.artist-uploaded-track-status.minted {
    background: rgba(45, 205, 129, .11);
    color: #4be29a;
}
.artist-uploaded-track-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
}
.artist-uploaded-track-actions button {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 0 11px;
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 8px;
    background: rgba(255, 255, 255, .035);
    color: #b9c3c6;
    font: inherit;
    font-size: 9px;
    font-weight: 800;
    cursor: pointer;
    transition: border-color .16s ease, background .16s ease, color .16s ease, opacity .16s ease;
}
.artist-uploaded-track-rights {
    border-color: rgba(255, 168, 66, .38) !important;
    background: rgba(255, 168, 66, .09) !important;
    color: #ffc16c !important;
    animation: paxorRightsPulse 1.65s ease-in-out infinite;
}
.artist-uploaded-track-delete:hover:not(:disabled) {
    border-color: rgba(255, 95, 105, .5);
    background: rgba(255, 74, 87, .1);
    color: #ff8c94;
}
.artist-uploaded-track-actions button:disabled {
    opacity: .35;
    cursor: not-allowed;
}
.artist-uploaded-track-empty {
    min-height: 78px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px;
    border: 1px dashed rgba(255, 255, 255, .1);
    border-radius: 10px;
    color: #657278;
}
.artist-uploaded-track-empty[hidden] { display: none !important; }
.artist-uploaded-track-empty > i {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border-radius: 9px;
    background: rgba(255, 255, 255, .04);
    color: #5f858e;
}
.artist-uploaded-track-empty strong,
.artist-uploaded-track-empty span { display: block; }
.artist-uploaded-track-empty strong { color: #95a0a4; font-size: 11px; }
.artist-uploaded-track-empty span { margin-top: 3px; color: #66747a; font-size: 9px; }

@media (max-width: 760px) {
    .artist-uploaded-track-row { grid-template-columns: 50px minmax(0, 1fr); }
    .artist-uploaded-track-cover { width: 50px; height: 50px; }
    .artist-uploaded-track-actions { grid-column: 1 / -1; justify-content: stretch; }
    .artist-uploaded-track-actions button { flex: 1; }
}
@media (prefers-reduced-motion: reduce) {
    .artist-uploaded-track-rights { animation: none; }
}

/* Artist Studio v21: linked release guidance */
.artist-nft-link-panel .artist-nft-link-help {
    margin: 0;
    color: #63ff9a;
    font-size: 12px;
    font-weight: 750;
    line-height: 1.5;
    text-shadow: 0 0 10px rgba(99, 255, 154, 0.16);
}

.artist-nft-link-panel:has([data-nft-music-track-select] option:checked:not([value=""])) .artist-nft-link-help {
    color: #7dff9d;
}


/* v19 active navigation emphasis */
.artist-nav-link.active strong,
.artist-nav-link.active span,
.artist-studio-v18 .artist-nav-link.active strong,
.artist-studio-v18 .artist-nav-link.active span {
    color: #63ffb0 !important;
}

.artist-nav-link.active small,
.artist-studio-v18 .artist-nav-link.active small {
    color: #9effcb !important;
}

/* v13: keep long artist names readable in the studio hero. */
.artist-studio-v20 .artist-hero-copy h1 {
    font-size: clamp(22px, 2.4vw, 36px) !important;
    line-height: 1.04;
}

@media (max-width: 680px) {
    .artist-studio-v20 .artist-hero-copy h1 {
        font-size: 18px !important;
    }
}
