.ncap-profile-page,
.ncap-social-page,
.ncap-dashboard-page {
    min-height: 100vh;
    color: var(--text-primary, #fff);
}
.nc-account-verification-badge{display:inline-flex;align-items:center;gap:.35rem;margin-left:.55rem;padding:.24rem .5rem;border:1px solid rgba(45,228,122,.42);border-radius:999px;background:rgba(24,184,90,.13);color:#9af4bd;font-size:.68rem;line-height:1;vertical-align:middle;white-space:nowrap}.nc-account-verification-badge i{display:grid;place-items:center;width:1.15rem;height:1.15rem;border-radius:50%;background:#18b85a;color:#06110a;font-style:normal;font-weight:900}.nc-account-verification-badge.is-partner{border-color:rgba(214,169,87,.62);background:linear-gradient(135deg,rgba(24,184,90,.13),rgba(214,169,87,.15));color:#f3dfc0}.nc-account-verification-badge.is-partner i{box-shadow:0 0 0 2px #d6a957}

.ncap-profile-cover {
    height: clamp(190px, 32vw, 360px);
    overflow: hidden;
    background: linear-gradient(135deg, #182b22 0%, #138f4c 45%, #0d1511 100%);
}

.ncap-profile-cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ncap-profile-header-wrap {
    position: relative;
    z-index: 2;
    max-width: 1240px;
    margin: -72px auto 0;
    padding: 0 28px;
}

.ncap-profile-header {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr) auto;
    gap: 28px;
    align-items: center;
    padding: 28px;
    border: 1px solid var(--border, rgba(255,255,255,.1));
    border-radius: 24px;
    background: rgba(24, 24, 24, .94);
    box-shadow: 0 24px 70px rgba(0,0,0,.35);
    backdrop-filter: blur(18px);
}

.ncap-profile-avatar {
    width: 150px;
    height: 150px;
    border: 5px solid #181818;
    border-radius: 50%;
    object-fit: cover;
    box-shadow: 0 12px 34px rgba(0,0,0,.4);
}

.ncap-profile-meta h1,
.ncap-page-heading h1,
.ncap-dashboard-hero h1,
.ncap-playlist-hero h1 {
    margin: 4px 0;
    font-size: clamp(2rem, 5vw, 4rem);
    line-height: 1;
    letter-spacing: -.04em;
}

.ncap-eyebrow {
    color: var(--primary, var(--nc-brand-green));
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.ncap-username,
.ncap-profile-bio,
.ncap-page-heading p,
.ncap-playlist-hero p {
    color: var(--text-secondary, #b3b3b3);
}

.ncap-profile-bio {
    max-width: 720px;
    margin: 12px 0;
}

.ncap-profile-stats-inline {
    display: flex;
    flex-wrap: wrap;
    gap: 22px;
    margin-top: 18px;
}

.ncap-profile-stats-inline > div,
.ncap-stat-link {
    display: grid;
    gap: 2px;
    min-width: 66px;
    padding: 0;
    border: 0;
    color: inherit;
    background: transparent;
    text-align: left;
}

.ncap-stat-link { cursor: pointer; }
.ncap-profile-stats-inline strong { font-size: 1.05rem; }
.ncap-profile-stats-inline span { color: var(--text-muted, #888); font-size: .78rem; }

.ncap-profile-tabs {
    display: flex;
    max-width: 1184px;
    margin: 28px auto 0;
    padding: 0 28px;
    overflow-x: auto;
    border-bottom: 1px solid var(--border, rgba(255,255,255,.1));
}

.ncap-profile-tab {
    padding: 14px 20px;
    border: 0;
    border-bottom: 3px solid transparent;
    color: var(--text-secondary, #b3b3b3);
    background: transparent;
    cursor: pointer;
    font-weight: 700;
}

.ncap-profile-tab.is-active {
    border-color: var(--primary, var(--nc-brand-green));
    color: #fff;
}

.ncap-profile-content {
    max-width: 1240px;
    margin: 0 auto;
    padding: 34px 28px 120px;
}

.ncap-profile-panel[hidden] { display: none !important; }

.ncap-section-heading {
    display: flex;
    justify-content: space-between;
    align-items: end;
    margin-bottom: 22px;
}

.ncap-section-heading h2 { margin: 4px 0 0; font-size: clamp(1.5rem, 3vw, 2.2rem); }

.ncap-media-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(175px, 1fr));
    gap: 20px;
}

.ncap-media-card {
    overflow: hidden;
    border: 1px solid var(--border, rgba(255,255,255,.1));
    border-radius: 16px;
    background: var(--card-bg, #181818);
    transition: transform .2s ease, background .2s ease;
}

.ncap-media-card:hover { transform: translateY(-4px); background: var(--card-hover, #282828); }
.ncap-media-card a { display: block; color: inherit; text-decoration: none; }
.ncap-media-art { display: grid; aspect-ratio: 1; place-items: center; overflow: hidden; background: linear-gradient(135deg,#26342d,#0d1511); font-size: 3rem; }
.ncap-media-art img { width: 100%; height: 100%; object-fit: cover; }
.ncap-media-copy { padding: 14px; }
.ncap-media-copy h3 { margin: 0 0 6px; font-size: 1rem; }
.ncap-media-copy span { color: var(--text-muted, #888); font-size: .82rem; }
.ncap-playlist-art { color: var(--primary, var(--nc-brand-green)); }
.ncap-track-stack { display: grid; gap: 2px; }

.ncap-about-card,
.ncap-empty-state {
    padding: clamp(24px, 5vw, 48px);
    border: 1px solid var(--border, rgba(255,255,255,.1));
    border-radius: 20px;
    background: var(--card-bg, #181818);
}

.ncap-empty-state { text-align: center; color: var(--text-secondary, #b3b3b3); }
.ncap-empty-state h2,.ncap-empty-state h3 { color: #fff; }

@media (max-width: 760px) {
    .ncap-profile-header-wrap { margin-top: -42px; padding: 0 16px; }
    .ncap-profile-header { grid-template-columns: 88px minmax(0, 1fr); gap: 16px; padding: 18px; }
    .ncap-profile-avatar { width: 88px; height: 88px; border-width: 3px; }
    .ncap-profile-meta h1 { font-size: 1.8rem; }
    .ncap-profile-actions { grid-column: 1 / -1; }
    .ncap-profile-actions .ncap-button { width: 100%; }
    .ncap-profile-stats-inline { gap: 14px; }
    .ncap-profile-tabs { padding: 0 10px; }
    .ncap-profile-content { padding: 26px 16px 110px; }
    .ncap-media-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
}
