:root{
    --cd-primary:#111111;
    --cd-accent:#c59d5f;
    --cd-accent-dark:#a88249;
    --cd-bg:#f7f7f7;
    --cd-surface:#ffffff;
    --cd-text:#222222;
    --cd-muted:#777777;
    --cd-border:#e9e3d9;
    --cd-shadow:0 12px 28px rgba(0,0,0,.06);
    --cd-radius:14px;
}

.cd-dashboard,.cd-myprofile,.cd-admin-dashboard,.cd-artists-page,.cd-artist-profile,.cd-highlights-page{padding:1rem;color:var(--cd-text)}
.cd-admin-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.cd-admin-card{background:#fff;border:1px solid #ddd;padding:1rem;border-radius:12px}

.cd-artists-page h1,
.cd-artist-profile h1,
.cd-highlights-page h1{
    font-size:clamp(2rem,3vw,3rem);
    line-height:1.05;
    margin:0 0 1rem 0;
    letter-spacing:-0.02em;
}

.cd-highlights-page h2,
.cd-artist-profile h3,
.cd-artists-page h2{
    font-size:1.4rem;
    margin:0 0 1rem 0;
    letter-spacing:-0.01em;
}

.cd-artists-toolbar{
    display:flex;
    gap:1rem;
    flex-wrap:wrap;
    margin-bottom:1.75rem;
    background:var(--cd-surface);
    border:1px solid var(--cd-border);
    border-radius:var(--cd-radius);
    padding:1rem;
    box-shadow:var(--cd-shadow);
}
.cd-artists-toolbar input,
.cd-artists-toolbar select{
    padding:.8rem 1rem;
    min-width:220px;
    border:1px solid var(--cd-border);
    border-radius:10px;
    background:#fff;
    color:var(--cd-text);
}

.cd-artists-results,
.cd-highlights-page{
    max-width:1180px;
}

.cd-artist-row,
.cd-highlight-row,
.cd-media-item,
.cd-event-item{
    padding:1.1rem 0;
    border-bottom:1px solid var(--cd-border);
}

.cd-artist-name,
.cd-highlight-row h3{
    margin:0 0 .35rem 0;
    font-size:1.25rem;
}

.cd-artist-name a,
.cd-highlight-row a,
.cd-related-card a{
    color:var(--cd-primary);
    text-decoration:none;
}
.cd-artist-name a:hover,
.cd-highlight-row a:hover,
.cd-related-card a:hover{
    color:var(--cd-accent-dark);
}

.cd-artist-tagline,
.cd-subtle{
    color:var(--cd-muted);
    font-style:italic;
    margin-bottom:.35rem;
}

.cd-artist-meta,
.cd-meta{
    color:var(--cd-muted);
    font-size:13px;
    margin-top:5px;
}
.cd-artist-ranking span,
.cd-meta span{margin-right:.7rem}

.cd-featured-block,
.cd-highlight-section{
    margin:0 0 2.5rem 0;
    background:linear-gradient(180deg,#fff, #fcfaf6);
    border:1px solid var(--cd-border);
    border-radius:var(--cd-radius);
    box-shadow:var(--cd-shadow);
    padding:1.25rem;
}

.cd-artist-profile{
    max-width:980px;
    background:transparent;
}
.cd-artist-hero{
    background:linear-gradient(135deg,#ffffff 0%, #fbf8f2 100%);
    border:1px solid var(--cd-border);
    border-radius:var(--cd-radius);
    padding:1.4rem;
    box-shadow:var(--cd-shadow);
    margin-bottom:1.25rem;
}
.cd-artist-stats{
    margin-top:10px;
    font-size:14px;
    font-weight:600;
    color:var(--cd-text);
}
.cd-artist-stats .fa-heart{color:#c62828;margin-right:5px}
.cd-like-block{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}
.cd-like-button{
    display:inline-block;
    border:1px solid var(--cd-border);
    background:#fff;
    color:var(--cd-primary);
    border-radius:999px;
    padding:.6rem .95rem;
    cursor:pointer;
    transition:.2s ease;
}
.cd-like-button:hover{
    background:#fff7ec;
    border-color:var(--cd-accent);
    color:var(--cd-accent-dark);
}
.cd-like-count,
.cd-like-display{
    font-weight:700;
}

.cd-artist-meta p{
    margin:.25rem 0;
}
.cd-artist-bio{
    margin-top:1.25rem;
    background:var(--cd-surface);
    border:1px solid var(--cd-border);
    border-radius:var(--cd-radius);
    padding:1.25rem;
    box-shadow:var(--cd-shadow);
}
.cd-artist-media,
.cd-artist-events,
.cd-related-artists{
    margin-top:1.5rem;
    background:var(--cd-surface);
    border:1px solid var(--cd-border);
    border-radius:var(--cd-radius);
    padding:1.25rem;
    box-shadow:var(--cd-shadow);
}

.cd-media-image{
    max-width:100%;
    height:auto;
    display:block;
    margin:.75rem 0;
    border-radius:12px;
}
.cd-artist-media iframe{
    margin-top:10px;
    border-radius:12px;
    width:100%;
}

.cd-badges{margin:.35rem 0 .65rem 0}
.cd-badge{
    display:inline-block;
    padding:5px 9px;
    font-size:11px;
    border-radius:999px;
    margin:0 6px 6px 0;
    color:#fff;
    font-weight:700;
    letter-spacing:.02em;
}
.cd-badge-verified{background:#2e7d32}
.cd-badge-featured{background:linear-gradient(45deg,#d8b15e,#c59d5f); color:#111}
.cd-badge-new{background:#1565c0}
.cd-badge-popular{background:#ef6c00}
.cd-badge-recommended{background:#6a1b9a}
.cd-badge-autonomous{background:#455a64}
.cd-badge-pro{background:#007bff}

.cd-related-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(240px,1fr));
    gap:16px;
}
.cd-related-card{
    border:1px solid var(--cd-border);
    padding:14px;
    border-radius:12px;
    background:#fff;
    box-shadow:0 8px 16px rgba(0,0,0,.03);
    transition:.2s ease;
}
.cd-related-card:hover{
    transform:translateY(-2px);
    background:#fcfaf6;
    box-shadow:var(--cd-shadow);
}

.cd-card{
    background:#fff;
    border-radius:10px;
    padding:15px;
    transition:.2s;
    border:1px solid #eee;
}
.cd-card:hover{
    transform:translateY(-3px);
    box-shadow:0 8px 20px rgba(0,0,0,0.08);
}

@media (max-width: 768px){
    .cd-artists-toolbar{padding:.85rem}
    .cd-artists-toolbar input,.cd-artists-toolbar select{min-width:100%; width:100%}
    .cd-admin-cards{grid-template-columns:1fr}
    .cd-artist-hero,.cd-artist-bio,.cd-artist-media,.cd-artist-events,.cd-related-artists,.cd-featured-block,.cd-highlight-section{padding:1rem}
}


.cd-avatar{
    width:110px;
    height:110px;
    border-radius:50%;
    object-fit:cover;
    border:3px solid #eee;
    display:block;
    margin:0 0 12px 0;
    background:#f0f0f0;
}
.cd-avatar-small{
    width:45px;
    height:45px;
    border-radius:50%;
    object-fit:cover;
    display:block;
    margin:0 0 8px 0;
    background:#f0f0f0;
}
.cd-avatar-placeholder{
    background:#ddd;
}
.cd-avatar-panel{
    background:var(--cd-surface,#fff);
    border:1px solid var(--cd-border,#e9e3d9);
    border-radius:14px;
    padding:1rem;
    box-shadow:var(--cd-shadow,0 12px 28px rgba(0,0,0,.06));
    margin-bottom:1rem;
}


.cd-artist-hero-premium{
    position:relative;
    width:100%;
    height:460px;
    overflow:hidden;
    border-radius:18px;
    margin-bottom:25px;
    box-shadow:var(--cd-shadow);
}
.cd-artist-hero-image{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.cd-artist-hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(to bottom, rgba(0,0,0,0.18), rgba(0,0,0,0.72));
}
.cd-artist-hero-content{
    position:absolute;
    left:24px;
    right:24px;
    bottom:24px;
    color:#fff;
    z-index:2;
}
.cd-artist-title{
    font-size:clamp(2rem,4vw,3.2rem);
    font-weight:800;
    line-height:1.05;
    margin:0 0 .5rem 0;
    text-shadow:0 3px 18px rgba(0,0,0,.3);
}
.cd-artist-tagline-onhero{
    color:#f5f5f5;
    font-size:1rem;
    max-width:800px;
    text-shadow:0 2px 12px rgba(0,0,0,.35);
}
.cd-artist-hero-premium .cd-badges .cd-badge{
    box-shadow:0 4px 12px rgba(0,0,0,.15);
}

.cd-media-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:18px;
}
.cd-media-card{
    background:#fff;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 6px 18px rgba(0,0,0,.06);
    border:1px solid var(--cd-border);
    padding:0;
}
.cd-media-card .ratio{
    margin:0;
}
.cd-media-card iframe{
    width:100%;
    min-height:220px;
}
.cd-media-image{
    width:100%;
    height:220px;
    object-fit:cover;
    margin:0;
    border-radius:0;
}
.cd-media-audio{
    height:220px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#111;
    color:#fff;
    font-size:1.2rem;
}
.cd-media-info{
    padding:12px;
    display:flex;
    justify-content:space-between;
    gap:12px;
    align-items:flex-start;
}

@media (max-width: 991px){
    .cd-media-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }
    .cd-artist-hero-premium{
        height:380px;
    }
}
@media (max-width: 640px){
    .cd-media-grid{
        grid-template-columns:1fr;
    }
    .cd-artist-hero-premium{
        height:320px;
    }
    .cd-artist-hero-content{
        left:16px;
        right:16px;
        bottom:16px;
    }
}


.cd-artists-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:22px;
}
.cd-artist-card-premium{
    background:#fff;
    border:1px solid var(--cd-border);
    border-radius:16px;
    overflow:hidden;
    box-shadow:var(--cd-shadow);
    transition:.25s ease;
}
.cd-artist-card-premium:hover{
    transform:translateY(-4px);
    box-shadow:0 18px 32px rgba(0,0,0,.10);
}
.cd-artist-card-link{
    display:block;
    color:inherit;
    text-decoration:none;
}
.cd-artist-card-visual{
    position:relative;
    height:270px;
    overflow:hidden;
}
.cd-artist-card-image{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.cd-artist-card-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(to bottom, rgba(0,0,0,.08), rgba(0,0,0,.72));
}
.cd-artist-card-head{
    position:absolute;
    left:16px;
    right:16px;
    bottom:14px;
    z-index:2;
}
.cd-artist-card-head .cd-badges{
    margin-bottom:8px;
}
.cd-artist-card-title{
    color:#fff;
    font-size:1.35rem;
    line-height:1.1;
    margin:0;
    text-shadow:0 4px 14px rgba(0,0,0,.35);
}
.cd-artist-card-body{
    padding:14px 16px 16px;
}
.cd-artist-card-body .cd-artist-tagline{
    min-height:2.7em;
}

.cd-highlights-grid{
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    gap:20px !important;
}
.cd-highlights-grid > .cd-card{
    margin:0 !important;
    width:auto !important;
}
.cd-card-premium{
    border:1px solid var(--cd-border);
    border-radius:14px;
    box-shadow:0 8px 18px rgba(0,0,0,.05);
    height:100%;
}
.cd-card-premium-top{
    display:flex;
    align-items:flex-start;
    gap:12px;
    margin-bottom:10px;
}
.cd-avatar-small-premium{
    width:58px;
    height:58px;
    margin:0;
    border:2px solid rgba(0,0,0,.05);
    flex:0 0 58px;
}

@media (max-width: 991px){
    .cd-artists-grid,
    .cd-highlights-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 640px){
    .cd-artists-grid,
    .cd-highlights-grid{
        grid-template-columns:1fr !important;
    }
    .cd-artist-card-visual{
        height:240px;
    }
}


.cd-homepage{
    max-width:1280px;
    margin:0 auto;
}
.cd-home-hero{
    position:relative;
    min-height:560px;
    border-radius:24px;
    overflow:hidden;
    margin:0 0 2rem 0;
    background:
        radial-gradient(circle at top right, rgba(197,157,95,.35), transparent 30%),
        linear-gradient(135deg, #111 0%, #1b1b1b 40%, #2f2518 100%);
    box-shadow:var(--cd-shadow);
}
.cd-home-hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(to bottom, rgba(0,0,0,.15), rgba(0,0,0,.45));
}
.cd-home-hero-content{
    position:relative;
    z-index:2;
    color:#fff;
    padding:clamp(1.5rem,4vw,4rem);
    max-width:820px;
    display:flex;
    min-height:560px;
    flex-direction:column;
    justify-content:flex-end;
}
.cd-home-kicker{
    color:#f0d9ae;
    font-weight:700;
    letter-spacing:.16em;
    text-transform:uppercase;
    margin-bottom:1rem;
    font-size:.8rem;
}
.cd-home-hero h1{
    font-size:clamp(2.4rem,6vw,5.5rem);
    line-height:.95;
    margin:0 0 1rem 0;
    color:#fff;
}
.cd-home-hero p{
    font-size:1.08rem;
    max-width:680px;
    color:#f3f3f3;
    margin:0 0 1.5rem 0;
}
.cd-home-cta{
    display:flex;
    flex-wrap:wrap;
    gap:.8rem;
}
.cd-home-section{
    margin:0 0 2.5rem 0;
}
.cd-home-section-head{
    display:flex;
    justify-content:space-between;
    align-items:end;
    gap:1rem;
    margin:0 0 1rem 0;
}
.cd-home-section-head a{
    color:var(--cd-accent-dark);
    text-decoration:none;
    font-weight:600;
}
.cd-home-grid-artists{
    display:grid;
    grid-template-columns:repeat(3, minmax(0,1fr));
    gap:22px;
}
.cd-home-cta-band{
    margin:2.5rem 0 0 0;
    border-radius:20px;
    overflow:hidden;
    background:linear-gradient(135deg, #111 0%, #222 100%);
    color:#fff;
}
.cd-home-cta-band-inner{
    padding:1.6rem 1.4rem;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
}
.cd-home-cta-band h2{
    color:#fff;
    margin:0 0 .4rem 0;
}
.cd-home-cta-band p{
    margin:0;
    color:#efefef;
}
@media (max-width: 991px){
    .cd-home-grid-artists{
        grid-template-columns:repeat(2, minmax(0,1fr));
    }
    .cd-home-hero,
    .cd-home-hero-content{
        min-height:480px;
    }
}
@media (max-width: 640px){
    .cd-home-grid-artists{
        grid-template-columns:1fr;
    }
    .cd-home-section-head,
    .cd-home-cta-band-inner{
        flex-direction:column;
        align-items:flex-start;
    }
    .cd-home-hero,
    .cd-home-hero-content{
        min-height:420px;
    }
}


.cd-media-lightbox{
    display:block;
    cursor:pointer;
}
.cd-lightbox{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.88);
    display:none;
    align-items:center;
    justify-content:center;
    z-index:99999;
    padding:30px;
}
.cd-lightbox.active{
    display:flex;
}
.cd-lightbox-open{
    overflow:hidden;
}
.cd-lightbox-inner{
    position:relative;
    width:min(1100px, 96vw);
    max-height:90vh;
}
.cd-lightbox-content{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:320px;
}
.cd-lightbox-content img,
.cd-lightbox-content iframe{
    max-width:100%;
    max-height:80vh;
    border-radius:14px;
}
.cd-lightbox-content iframe{
    width:min(1100px, 90vw);
    height:min(70vh, 620px);
}
.cd-lightbox-audio{
    background:#111;
    padding:30px;
    border-radius:14px;
}
.cd-lightbox-audio audio{
    width:min(700px, 80vw);
}
.cd-lightbox-close{
    position:absolute;
    top:-54px;
    right:0;
    color:#fff;
    background:none;
    border:none;
    font-size:38px;
    line-height:1;
    cursor:pointer;
}
.cd-lightbox-nav{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    color:#fff;
    background:rgba(0,0,0,.25);
    border:1px solid rgba(255,255,255,.18);
    width:48px;
    height:48px;
    border-radius:999px;
    font-size:34px;
    line-height:1;
    cursor:pointer;
}
.cd-lightbox-prev{left:-64px;}
.cd-lightbox-next{right:-64px;}
@media (max-width: 991px){
    .cd-lightbox-prev{left:8px;}
    .cd-lightbox-next{right:8px;}
    .cd-lightbox-close{top:8px; right:8px;}
    .cd-lightbox-inner{width:100%;}
}


.cd-event-visual{
    width:100%;
    height:220px;
    object-fit:cover;
    display:block;
    border-radius:12px;
    margin:0 0 12px 0;
    background:#f0f0f0;
}
.cd-event-visual-placeholder{
    background:linear-gradient(135deg,#ececec,#d9d9d9);
}
.cd-event-card-premium h3{
    margin-top:0;
}


.cd-events-page{
    max-width:1180px;
    margin:0 auto;
}
.cd-event-link-card{
    display:block;
    color:inherit;
    text-decoration:none;
}
.cd-event-link-card:hover .cd-card-premium{
    transform:translateY(-3px);
    box-shadow:0 14px 28px rgba(0,0,0,.09);
}
.cd-event-date-card,
.cd-date-badge{
    width:72px;
    min-width:72px;
    height:82px;
    border-radius:16px;
    background:#fff;
    color:#111;
    box-shadow:0 10px 24px rgba(0,0,0,.12);
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
    overflow:hidden;
    margin:0 0 12px 0;
}
.cd-date-badge{
    margin:0 16px 0 0;
}
.cd-date-badge-month,
.cd-event-date-month{
    width:100%;
    background:#c62828;
    color:#fff;
    text-align:center;
    font-size:.72rem;
    font-weight:700;
    letter-spacing:.06em;
    padding:4px 0;
}
.cd-date-badge-day,
.cd-event-date-day{
    font-size:1.6rem;
    font-weight:800;
    line-height:1.1;
    margin-top:6px;
}
.cd-date-badge-year,
.cd-event-date-year{
    font-size:.78rem;
    color:#666;
}
.cd-event-page{
    max-width:980px;
    margin:0 auto;
}
.cd-event-hero{
    position:relative;
    width:100%;
    height:460px;
    overflow:hidden;
    border-radius:18px;
    margin-bottom:25px;
    box-shadow:var(--cd-shadow);
}
.cd-event-hero-image{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.cd-event-hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(to bottom, rgba(0,0,0,.16), rgba(0,0,0,.72));
}
.cd-event-hero-content{
    position:absolute;
    left:24px;
    right:24px;
    bottom:24px;
    z-index:2;
    color:#fff;
    display:flex;
    align-items:flex-end;
    gap:18px;
}
@media (max-width: 640px){
    .cd-event-hero{
        height:320px;
    }
    .cd-event-hero-content{
        left:16px;
        right:16px;
        bottom:16px;
        gap:12px;
    }
    .cd-date-badge, .cd-event-date-card{
        width:64px;
        min-width:64px;
        height:74px;
    }
}


.cd-event-visual-wrap{position:relative;}
.cd-event-date-overlay{position:absolute;top:12px;left:12px;z-index:3;margin:0;}
.cd-actions-row{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem;}
.cd-rt-toolbar{display:flex;gap:.4rem;flex-wrap:wrap;margin:0 0 .5rem 0}
.cd-rt-toolbar button{border:1px solid var(--cd-border);background:#fff;border-radius:8px;padding:.35rem .6rem;cursor:pointer}
.cd-richtext-render a{color:var(--cd-accent-dark)}


.cd-editorlite{
    border:1px solid #d9d9d9;
    border-radius:10px;
    overflow:hidden;
    background:#fff;
}
.cd-editorlite-toolbar{
    display:flex;
    gap:6px;
    padding:10px;
    border-bottom:1px solid #e5e5e5;
    background:#f7f7f7;
    flex-wrap:wrap;
}
.cd-editorlite-toolbar button{
    border:1px solid #d0d0d0;
    background:#fff;
    border-radius:6px;
    padding:6px 10px;
    cursor:pointer;
    font-size:14px;
}
.cd-editorlite-editable{
    min-height:180px;
    padding:12px;
    outline:none;
}
.cd-editorlite-editable:focus{
    background:#fffdf8;
}
.cd-richtext-render p{margin:0 0 .8rem 0;}
.cd-richtext-render ul,
.cd-richtext-render ol{padding-left:1.2rem; margin:0 0 .8rem 0;}
.cd-richtext-render a{text-decoration:underline;}


.cd-homepage-evolved{
    max-width:1280px;
    margin:0 auto;
}
.cd-home-hero-evolved{
    position:relative;
    min-height:620px;
    border-radius:24px;
    overflow:hidden;
    margin:0 0 2rem 0;
    background:linear-gradient(135deg,#111 0%,#251b12 100%);
    box-shadow:var(--cd-shadow);
}
.cd-home-hero-bg{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
}
.cd-home-hero-evolved .cd-home-hero-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg, rgba(0,0,0,.72) 0%, rgba(0,0,0,.38) 45%, rgba(0,0,0,.52) 100%),
        linear-gradient(to top, rgba(0,0,0,.45), rgba(0,0,0,.12));
}
.cd-home-hero-evolved .cd-home-hero-content{
    position:relative;
    z-index:2;
    color:#fff;
    padding:clamp(1.5rem,4vw,4rem);
    min-height:620px;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    max-width:820px;
}
.cd-home-hero-spotlight{
    margin:0 0 1.25rem 0;
    padding:1rem 1.1rem;
    backdrop-filter:blur(8px);
    background:rgba(255,255,255,.09);
    border:1px solid rgba(255,255,255,.14);
    border-radius:18px;
}
.cd-home-hero-label{
    font-size:.8rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    color:#f0d9ae;
    margin-bottom:.35rem;
}
.cd-home-hero-spotlight h2{
    color:#fff;
    margin:0 0 .35rem 0;
    font-size:clamp(1.4rem,3vw,2.3rem);
}
.cd-home-hero-copy{
    color:#f0f0f0;
}
.cd-home-media-scroller{
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:minmax(260px, 320px);
    overflow-x:auto;
    gap:18px;
    padding-bottom:.5rem;
    scroll-snap-type:x proximity;
}
.cd-home-media-scroller .cd-card{
    scroll-snap-align:start;
}
.cd-media-carousel-card{
    min-height:100%;
}
.cd-home-sellband{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px;
    margin:2rem 0 0 0;
}
.cd-home-sellband-card{
    background:linear-gradient(135deg,#111 0%,#272727 100%);
    color:#fff;
    border-radius:22px;
    padding:1.5rem;
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:1rem;
    box-shadow:var(--cd-shadow);
}
.cd-home-sellband-card h2{
    color:#fff;
    margin:0 0 .5rem 0;
}
.cd-home-sellband-card p{
    color:#f2f2f2;
    margin:0;
}
@media (max-width: 991px){
    .cd-home-hero-evolved,
    .cd-home-hero-evolved .cd-home-hero-content{
        min-height:520px;
    }
    .cd-home-sellband{
        grid-template-columns:1fr;
    }
}
@media (max-width: 640px){
    .cd-home-hero-evolved,
    .cd-home-hero-evolved .cd-home-hero-content{
        min-height:440px;
    }
    .cd-home-media-scroller{
        grid-auto-columns:minmax(220px, 280px);
    }
    .cd-home-sellband-card{
        flex-direction:column;
        align-items:flex-start;
    }
}


.cd-home-media-scroller .cd-media-image,
.cd-media-carousel-card .cd-media-image{
    border-radius:14px;
    overflow:hidden;
}


.cd-media-carousel-card{
    overflow:hidden;
}


.cd-media-carousel-card .cd-media-lightbox{
    display:block;
    cursor:pointer;
}
.cd-media-carousel-card .cd-media-image{
    display:block;
    width:100%;
}


.cd-signup-page{
    max-width:760px;
    margin:0 auto;
    padding:2rem 1rem;
}
.cd-signup-card{
    background:linear-gradient(180deg,#fff,#fcfaf6);
    border:1px solid var(--cd-border);
    border-radius:22px;
    box-shadow:var(--cd-shadow);
    padding:1.5rem;
}
.cd-signup-card h1{
    margin:0 0 .6rem 0;
    font-size:clamp(2rem,3vw,3rem);
}
.cd-signup-card p{
    margin:0 0 1rem 0;
}
.cd-signup-actions{
    display:flex;
    flex-wrap:wrap;
    gap:.8rem;
    margin-top:1rem;
}
.cd-signup-note{
    margin-top:1rem;
    color:var(--cd-muted);
}


.cd-conversion-banner,
.cd-conversion-panel,
.cd-conversion-inline{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    background:linear-gradient(135deg,#111 0%,#272727 100%);
    color:#fff;
    border-radius:20px;
    padding:1.25rem 1.4rem;
    box-shadow:var(--cd-shadow);
    margin:0 0 1.5rem 0;
}
.cd-conversion-banner h2,
.cd-conversion-panel h3,
.cd-conversion-inline strong{
    color:#fff;
    margin:0 0 .35rem 0;
}
.cd-conversion-banner p,
.cd-conversion-panel p{
    color:#f2f2f2;
    margin:0;
}
.cd-floating-signup-cta{
    position:fixed;
    right:18px;
    bottom:18px;
    z-index:9999;
    background:linear-gradient(135deg,#111 0%,#333 100%);
    color:#fff;
    text-decoration:none;
    padding:.9rem 1.15rem;
    border-radius:999px;
    box-shadow:0 14px 28px rgba(0,0,0,.22);
    font-weight:700;
}
.cd-floating-signup-cta:hover{
    color:#fff;
    transform:translateY(-2px);
}
@media (max-width: 767px){
    .cd-conversion-banner,
    .cd-conversion-panel,
    .cd-conversion-inline{
        flex-direction:column;
        align-items:flex-start;
    }
    .cd-floating-signup-cta{
        right:12px;
        bottom:12px;
        font-size:.92rem;
        padding:.8rem 1rem;
    }
}


.cd-pagination-wrap{
    margin:1.2rem 0 0 0;
    display:flex;
    justify-content:center;
}
.cd-pagination-wrap .pagination{
    display:flex;
    flex-wrap:wrap;
    gap:.4rem;
    list-style:none;
    padding:0;
    margin:0;
}
.cd-pagination-wrap .page-link,
.cd-pagination-wrap a,
.cd-pagination-wrap span{
    display:inline-block;
    padding:.55rem .85rem;
    border:1px solid var(--cd-border);
    border-radius:10px;
    background:#fff;
    text-decoration:none;
    color:var(--cd-primary);
}
.cd-pagination-wrap .active a,
.cd-pagination-wrap .active span{
    background:#111;
    color:#fff;
}


/* PHASE 4.4.1 — TOOLBAR PREMIUM UI + COMPACT FIX (INTÉGRÉ GLOBAL) */

.cd-artists-toolbar{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:.75rem;
    margin-bottom:1.25rem;
    padding:1rem 1.1rem;
    background:linear-gradient(180deg,#ffffff 0%, #fcfaf6 100%);
    border:1px solid var(--cd-border);
    border-radius:18px;
    box-shadow:var(--cd-shadow);
}

.cd-artists-toolbar input[type="search"],
.cd-artists-toolbar select{
    height:46px;
    border:1px solid var(--cd-border);
    border-radius:12px;
    background:#fff;
    color:var(--cd-text);
    padding:.7rem .95rem;
    box-shadow:0 1px 0 rgba(0,0,0,.02);
    transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.cd-artists-toolbar input[type="search"]{
    min-width:220px;
    max-width:280px;
    flex:0 1 280px;
    font-weight:500;
}

.cd-artists-toolbar select{
    min-width:160px;
    max-width:220px;
    flex:0 0 auto;
    cursor:pointer;
    appearance:none;
    -webkit-appearance:none;
    -moz-appearance:none;
    padding-right:2.2rem;
    background-image:
        linear-gradient(45deg, transparent 50%, #777 50%),
        linear-gradient(135deg, #777 50%, transparent 50%),
        linear-gradient(to right, transparent, transparent);
    background-position:
        calc(100% - 18px) calc(50% - 3px),
        calc(100% - 12px) calc(50% - 3px),
        100% 0;
    background-size:6px 6px, 6px 6px, 2.5em 2.5em;
    background-repeat:no-repeat;
}

.cd-artists-toolbar input[type="search"]:focus,
.cd-artists-toolbar select:focus{
    outline:none;
    border-color:var(--cd-accent);
    box-shadow:0 0 0 4px rgba(197,157,95,.12);
    background:#fffdf8;
}

.cd-artists-toolbar .btn{
    height:46px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 1rem;
    border-radius:999px;
    flex:0 0 auto;
    white-space:nowrap;
    text-decoration:none;
    transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.cd-artists-toolbar .btn:hover,
.cd-artists-toolbar .cd-like-button:hover{
    transform:translateY(-1px);
}

.cd-artists-toolbar .btn-primary{
    background:linear-gradient(135deg,#111 0%, #333 100%);
    color:#fff;
    border:1px solid #111;
    box-shadow:0 10px 22px rgba(0,0,0,.08);
}

.cd-artists-toolbar .btn-primary:hover{
    color:#fff;
}

.cd-artists-toolbar .btn-secondary{
    background:#fff;
    color:var(--cd-primary);
    border:1px solid var(--cd-border);
}

.cd-artists-toolbar .btn-secondary:hover{
    background:#fff7ec;
    border-color:var(--cd-accent);
    color:var(--cd-accent-dark);
}

.cd-pagination-wrap{
    margin:1.2rem 0 0 0;
    display:flex;
    justify-content:center;
}

.cd-pagination-wrap .pagination{
    display:flex;
    flex-wrap:wrap;
    gap:.4rem;
    list-style:none;
    padding:0;
    margin:0;
}

.cd-pagination-wrap .page-link,
.cd-pagination-wrap a,
.cd-pagination-wrap span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:42px;
    height:42px;
    padding:0 .85rem;
    border:1px solid var(--cd-border);
    border-radius:12px;
    background:#fff;
    text-decoration:none;
    color:var(--cd-primary);
    transition:all .2s ease;
}

.cd-pagination-wrap a:hover{
    background:#fff7ec;
    border-color:var(--cd-accent);
    color:var(--cd-accent-dark);
}

.cd-pagination-wrap .active a,
.cd-pagination-wrap .active span{
    background:linear-gradient(135deg,#111 0%, #333 100%);
    color:#fff;
    border-color:#111;
}

@media (max-width: 767px){
    .cd-artists-toolbar{
        padding:.9rem;
        gap:.6rem;
    }

    .cd-artists-toolbar input[type="search"],
    .cd-artists-toolbar select{
        min-width:unset;
        max-width:none;
        width:100%;
        flex:1 1 100%;
    }

    .cd-artists-toolbar .btn{
        width:auto;
    }
}


/* PHASE 4.4.3 — INFINITE SCROLL */
.cd-skeleton-wrap{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:20px;
    margin-top:1rem;
}
.cd-skeleton-card{
    height:320px;
    border-radius:18px;
    background:linear-gradient(90deg,#f2f2f2 25%, #e8e8e8 50%, #f2f2f2 75%);
    background-size:200% 100%;
    animation:cd-loading 1.2s infinite;
}
@keyframes cd-loading{
    0%{background-position:200% 0}
    100%{background-position:-200% 0}
}
.cd-loadmore-wrap{
    margin:1.2rem 0 0 0;
    text-align:center;
}
#cd-infinite-scroll-sentinel{
    height:10px;
}

.cd-dashboard {
    padding:20px;
}
.cd-dashboard-grid {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:20px;
}
.cd-card {
    background:#fff;
    border-radius:16px;
    padding:20px;
    box-shadow:0 4px 12px rgba(0,0,0,0.08);
}


/* PHASE 4.5.1 — DASHBOARD INTELLIGENT */
.cd-dashboard-smart{
    max-width:1200px;
    margin:0 auto;
}
.cd-dashboard-hero{
    display:grid;
    grid-template-columns:1.4fr .8fr;
    gap:20px;
    align-items:stretch;
    margin-bottom:20px;
}
.cd-dashboard-score-card{
    background:linear-gradient(135deg,#111 0%,#333 100%);
    color:#fff;
    border-radius:18px;
    padding:20px;
    box-shadow:var(--cd-shadow);
}
.cd-dashboard-score-label{
    text-transform:uppercase;
    letter-spacing:.08em;
    font-size:.8rem;
    opacity:.9;
}
.cd-dashboard-score-value{
    font-size:clamp(2rem,4vw,3rem);
    font-weight:800;
    margin:.35rem 0 .8rem 0;
}
.cd-progress{
    height:10px;
    border-radius:999px;
    background:rgba(255,255,255,.15);
    overflow:hidden;
}
.cd-progress span{
    display:block;
    height:100%;
    border-radius:999px;
    background:linear-gradient(90deg,#c59d5f 0%,#f1d7a5 100%);
}
.cd-dashboard-stats{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:20px;
    margin-bottom:20px;
}
.cd-stat-label{
    color:var(--cd-muted);
    font-size:.92rem;
}
.cd-stat-value{
    font-size:2rem;
    font-weight:800;
    line-height:1;
    margin-top:.35rem;
}
.cd-dashboard-actions{
    display:flex;
    flex-wrap:wrap;
    gap:.7rem;
}
.cd-dashboard-recos{
    margin:0;
    padding-left:1.1rem;
}
.cd-dashboard-recos li{
    margin:0 0 .55rem 0;
}
@media (max-width: 991px){
    .cd-dashboard-hero,
    .cd-dashboard-stats{
        grid-template-columns:1fr;
    }
    .cd-dashboard-stats{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media (max-width: 640px){
    .cd-dashboard-stats{
        grid-template-columns:1fr;
    }
}


/* PHASE 4.6 — PRO SYSTEM */
.cd-pro-badge {
    position:absolute;
    top:10px;
    right:10px;
    background:#c59d5f;
    color:#000;
    font-weight:700;
    padding:4px 8px;
    border-radius:6px;
    font-size:12px;
}

.cd-pro-upsell {
    border:2px solid #c59d5f;
}

.cd-pro-btn {
    background:#c59d5f;
    color:#000;
}


/* PHASE 4.6.2 — STRIPE ANNUEL */
.cd-pro-upsell ul{
    margin:.6rem 0 1rem 1.1rem;
}
.cd-pro-upsell li{
    margin:0 0 .35rem 0;
}
.cd-pro-btn{
    background:#c59d5f;
    color:#000;
    border-color:#c59d5f;
}
.cd-pro-btn:hover{
    color:#000;
    background:#d8b073;
}


/* ADMIN MODÉRATION + INTERFACE */
.cd-admin-dashboard-premium{
    padding:1rem;
}
.cd-admin-hero{
    display:grid;
    grid-template-columns:1.4fr .8fr;
    gap:1rem;
    align-items:stretch;
    margin-bottom:1rem;
}
.cd-admin-alert-card{
    border-radius:16px;
    padding:1rem 1.2rem;
    box-shadow:var(--cd-shadow);
    display:flex;
    flex-direction:column;
    justify-content:center;
}
.cd-admin-alert-card strong{
    font-size:2rem;
    line-height:1;
}
.cd-admin-alert-card.is-alert{
    background:linear-gradient(135deg,#fff4e6,#fff);
    border:1px solid #efc88b;
}
.cd-admin-alert-card.is-ok{
    background:linear-gradient(135deg,#eefcf2,#fff);
    border:1px solid #b6e0c0;
}
.cd-admin-cards-5{
    grid-template-columns:repeat(5,minmax(0,1fr));
}
.cd-admin-panel-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:1rem;
    margin-top:1rem;
}
.cd-admin-panel{
    background:#fff;
    border:1px solid var(--cd-border);
    border-radius:16px;
    padding:1rem 1.2rem;
    box-shadow:var(--cd-shadow);
}
.cd-admin-actions{
    display:flex;
    flex-wrap:wrap;
    gap:.6rem;
    margin-top:.8rem;
}
.cd-dashboard-notifications{
    display:grid;
    gap:.8rem;
    margin-bottom:1rem;
}
.cd-dashboard-note{
    border-radius:14px;
    padding:1rem 1.1rem;
    border:1px solid var(--cd-border);
    box-shadow:var(--cd-shadow);
    background:#fff;
}
.cd-dashboard-note-warning{
    background:linear-gradient(135deg,#fff4e6,#fff);
    border-color:#efc88b;
}
@media (max-width: 991px){
    .cd-admin-hero,
    .cd-admin-panel-row{
        grid-template-columns:1fr;
    }
    .cd-admin-cards-5{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media (max-width: 640px){
    .cd-admin-cards-5{
        grid-template-columns:1fr;
    }
}


/* PHASE 5 — DISCOVER */
.cd-discover-page{
    padding:1rem;
    max-width:1180px;
}
.cd-discover-page h1{
    font-size:clamp(2rem,3vw,3rem);
    margin:0 0 .75rem 0;
}


/* PHASE 5.1 — DISCOVER PREMIUM */
.cd-discover-premium{
    max-width:1180px;
}
.cd-discover-hero{
    background:linear-gradient(135deg,#ffffff 0%, #fbf8f2 100%);
    border:1px solid var(--cd-border);
    border-radius:var(--cd-radius);
    padding:1.35rem 1.4rem;
    box-shadow:var(--cd-shadow);
    margin:0 0 1.5rem 0;
}
.cd-discover-page .cd-home-section{
    margin-bottom:1.6rem;
}
.cd-discover-page .cd-home-grid-artists{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:1rem;
}


/* AUDIO EMBEDS MULTIPLATEFORMES + ARTIST FULL WIDTH */
.cd-artist-profile-full{
    max-width:100%;
    width:100%;
    box-sizing:border-box;
}
.cd-media-embed-wrap{
    width:100%;
    margin:.75rem 0;
    border-radius:12px;
    overflow:hidden;
    background:#fff;
}
.cd-audio-embed{
    display:block;
    width:100%;
    min-height:166px;
    border:0;
    border-radius:12px;
    background:#fff;
}
.cd-audio-native{
    display:block;
    width:100%;
    margin:.75rem 0;
}


/* PHASE 5.3 — PAGE ARTISTE PREMIUM */
.cd-artist-premium{
    max-width:100%;
    width:100%;
    box-sizing:border-box;
}
.cd-artist-hero-premium-upgraded{
    position:relative;
    min-height:340px;
    overflow:hidden;
    border-radius:18px;
    margin-bottom:1.4rem;
    box-shadow:0 18px 40px rgba(0,0,0,.10);
    border:1px solid var(--cd-border);
    background:linear-gradient(135deg,#111 0%, #2b2b2b 100%);
}
.cd-artist-hero-premium-upgraded .cd-artist-hero-image{
    width:100%;
    height:340px;
    object-fit:cover;
    display:block;
}
.cd-artist-hero-content-premium{
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    z-index:3;
    padding:1.5rem;
    color:#fff;
    background:linear-gradient(180deg,rgba(0,0,0,0) 0%, rgba(0,0,0,.72) 72%, rgba(0,0,0,.88) 100%);
}
.cd-artist-title-premium{
    color:#fff;
    font-size:clamp(2rem,3.4vw,3.25rem);
    margin:0 0 .45rem 0;
    letter-spacing:-.03em;
}
.cd-artist-tagline-onhero{
    color:rgba(255,255,255,.92);
    font-size:1.06rem;
    max-width:820px;
}
.cd-section-title{
    font-size:1.35rem;
    margin-bottom:1rem;
    letter-spacing:-.01em;
}
.cd-artist-profile-full .cd-artist-meta{
    display:flex;
    flex-wrap:wrap;
    gap:1rem 1.25rem;
    margin:.35rem 0 1rem 0;
    font-size:.96rem;
}
.cd-artist-profile-full .cd-artist-meta p{
    margin:0;
}
.cd-artist-profile-full .cd-artist-bio,
.cd-artist-profile-full .cd-artist-media,
.cd-artist-profile-full .cd-artist-events,
.cd-artist-profile-full .cd-related-artists{
    border-radius:16px;
}
.cd-artist-profile-full .cd-media-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
    gap:1.15rem;
}
.cd-artist-profile-full .cd-media-card{
    background:#fff;
    border-radius:14px;
    padding:1rem;
    box-shadow:0 8px 24px rgba(0,0,0,.05);
    transition:transform .2s ease, box-shadow .2s ease;
}
.cd-artist-profile-full .cd-media-card:hover{
    transform:translateY(-4px);
    box-shadow:0 14px 30px rgba(0,0,0,.08);
}
.cd-artist-profile-full .cd-event-link-card{
    text-decoration:none;
}
@media (max-width: 768px){
    .cd-artist-hero-premium-upgraded,
    .cd-artist-hero-premium-upgraded .cd-artist-hero-image{
        min-height:260px;
        height:260px;
    }
    .cd-artist-hero-content-premium{
        padding:1rem;
    }
}


/* PHASE 5.4 — SOCIAL LIGHT */
.cd-like-button.is-liked{
    background:#fff1f1;
    border-color:#e7a1a1;
    color:#b71c1c;
}


/* HIGHLIGHTS AUDIO UNIFORME */
.cd-media-embed-wrap{
    width:100%;
    margin:.75rem 0;
    border-radius:12px;
    overflow:hidden;
    background:#fff;
}
.cd-audio-embed{
    display:block;
    width:100%;
    min-height:166px;
    border:0;
    border-radius:12px;
    background:#fff;
}
.cd-audio-native{
    display:block;
    width:100%;
    margin:.75rem 0;
}


/* PHASE 5.6 — FAVORIS LIGHT + MES DÉCOUVERTES */
.cd-favorite-button.is-favorite{
    background:#fff7ec;
    border-color:#d9b16f;
    color:#8a6428;
}
.cd-favorites-page{
    padding:1rem;
    max-width:1180px;
}
.cd-favorites-toolbar{
    display:flex;
    flex-wrap:wrap;
    gap:.75rem;
    margin:1rem 0 1.25rem 0;
}
.cd-favorites-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(250px,1fr));
    gap:1rem;
}
.cd-favorites-empty{
    margin-top:1rem;
}
.cd-favorite-card{
    overflow:hidden;
}
.cd-favorite-card-top{
    margin:-1rem -1rem .8rem -1rem;
}
.cd-favorite-image{
    width:100%;
    aspect-ratio:16/10;
    object-fit:cover;
    display:block;
    background:#f0f0f0;
}
.cd-favorite-card-body h3{
    margin:0 0 .5rem 0;
}
.cd-favorite-actions{
    display:flex;
    gap:.5rem;
    flex-wrap:wrap;
    margin-top:1rem;
}
.cd-fav-filter.active{
    background:#fff7ec;
    border-color:#d9b16f;
    color:#8a6428;
}


/* CORRECTIF IMAGES MES FAVORIS + POSITION BOUTON FAVORIS */
.cd-favorite-row{
    margin: 1rem 0 0 0;
}
.cd-artist-card-body .cd-favorite-button,
.cd-card-premium .cd-favorite-button{
    margin-top: .85rem;
}


/* PHASE 5.7 — PAGE MÉDIAS */
.cd-media-page{
    padding:1rem;
    max-width:1180px;
}
.cd-media-filters{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin:0 0 1rem 0;
}
.cd-media-filters input,
.cd-media-filters select{
    padding:.8rem 1rem;
    border:1px solid var(--cd-border);
    border-radius:10px;
    background:#fff;
}


/* CORRECTIF 5.8 — ORDRE VEDETTE + STRUCTURE PAGE ARTISTE */
.cd-events-grid{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:18px !important;
}
.cd-artist-events .cd-event-link-card{
    display:block !important;
    width:100% !important;
    text-decoration:none;
}
.cd-artist-events .cd-event-item{
    height:100%;
    margin-bottom:0 !important;
}
.cd-conversion-inline{
    margin-top:1.5rem;
}
@media (max-width: 991px){
    .cd-events-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}
@media (max-width: 640px){
    .cd-events-grid{
        grid-template-columns:1fr !important;
    }
}


/* CORRECTIF FINAL PAGE ARTISTE */
.cd-favorite-row{
    margin:1rem 0 0 0;
}
.cd-media-grid{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:18px !important;
}
.cd-events-grid{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:18px !important;
}
.cd-artist-events .cd-event-link-card{
    display:block !important;
    width:100% !important;
    text-decoration:none;
}
.cd-artist-events .cd-event-item{
    height:100%;
    margin-bottom:0 !important;
}
.cd-related-artists,
.cd-conversion-inline{
    clear:both;
    width:100%;
}
@media (max-width: 991px){
    .cd-media-grid,
    .cd-events-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}
@media (max-width: 640px){
    .cd-media-grid,
    .cd-events-grid{
        grid-template-columns:1fr !important;
    }
}


/* PHASE ARTISTE STABLE — REFACTOR LAYOUT GLOBAL */
.cd-artist-stable-layout{
    max-width:1180px;
}
.cd-artist-section{
    width:100%;
    clear:both;
}
.cd-artist-actions-bar{
    display:flex;
    flex-wrap:wrap;
    gap:1rem;
    align-items:center;
    justify-content:flex-start;
    margin-top:1.25rem;
    background:var(--cd-surface);
    border:1px solid var(--cd-border);
    border-radius:var(--cd-radius);
    padding:1rem 1.25rem;
    box-shadow:var(--cd-shadow);
}
.cd-artist-actions-bar .cd-like-block,
.cd-artist-actions-bar .cd-favorite-row{
    margin:0;
}
.cd-artist-hero-meta{
    display:flex;
    flex-wrap:wrap;
    gap:.9rem;
    margin-top:1rem;
    color:#f5f5f5;
    font-size:.95rem;
}
.cd-media-grid{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:18px !important;
}
.cd-events-grid{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:18px !important;
}
.cd-media-card,
.cd-event-item{
    height:100%;
}
.cd-media-like-row{
    margin:10px 12px 12px 12px;
}
.cd-related-artists,
.cd-conversion-inline{
    width:100%;
}
@media (max-width: 991px){
    .cd-media-grid,
    .cd-events-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}
@media (max-width: 640px){
    .cd-artist-actions-bar{
        flex-direction:column;
        align-items:flex-start;
    }
    .cd-media-grid,
    .cd-events-grid{
        grid-template-columns:1fr !important;
    }
}
/* HERO ARTISTE — CORRECTIF FINAL 2:1 + SURCROUCHE TRÈS LÉGÈRE */
.cd-artist-hero-premium,
.cd-artist-hero-premium-upgraded{
    height:auto !important;
    aspect-ratio:2 / 1 !important;
    min-height:0 !important;
    max-height:none !important;
}

.cd-artist-hero-premium-upgraded .cd-artist-hero-image,
.cd-artist-hero-image{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    display:block !important;
}

/* Neutraliser toute couche sombre parasite */
.cd-artist-hero-premium::before,
.cd-artist-hero-premium::after,
.cd-artist-hero-premium-upgraded::before,
.cd-artist-hero-premium-upgraded::after{
    content:none !important;
    display:none !important;
    background:none !important;
}

/* Surcouche très légère, réellement dégradée */
.cd-artist-hero-overlay{
    position:absolute !important;
    inset:0 !important;
    background:linear-gradient(
        to bottom,
        rgba(0,0,0,0.00) 0%,
        rgba(0,0,0,0.02) 55%,
        rgba(0,0,0,0.06) 78%,
        rgba(0,0,0,0.10) 100%
    ) !important;
    z-index:1 !important;
}

/* Le contenu ne doit plus créer de bande noire */
.cd-artist-hero-content-premium{
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    z-index:3 !important;
    padding:1.25rem 1.5rem !important;
    background:transparent !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    border-radius:0 !important;
    box-shadow:none !important;
}

/* Lisibilité du texte sans bande opaque */
.cd-artist-title-premium,
.cd-artist-tagline-onhero,
.cd-artist-hero-meta{
    text-shadow:0 2px 10px rgba(0,0,0,.22) !important;
}

@media (max-width: 991px){
    .cd-artist-hero-premium,
    .cd-artist-hero-premium-upgraded{
        aspect-ratio:2 / 1 !important;
    }
}

@media (max-width: 640px){
    .cd-artist-hero-premium,
    .cd-artist-hero-premium-upgraded{
        aspect-ratio:16 / 10 !important;
    }

    .cd-artist-hero-content-premium{
        padding:1rem !important;
    }
}

/* RESTAURATION DASHBOARD ANALYSE + POPULARITÉ */
.cd-dashboard-stats-mini{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:.75rem;
}
.cd-dashboard-stats-mini .cd-card{
    padding:.8rem .9rem;
    box-shadow:none;
}
.cd-limit-card{
    border:1px solid var(--cd-border);
}
.cd-limit-row{
    display:flex;
    justify-content:space-between;
    gap:1rem;
    margin:.5rem 0;
    font-size:.95rem;
}
.cd-progress-soft{
    height:8px;
    background:#f0eee9;
}
.cd-plan-active{
    border:2px solid #c59d5f;
    background:linear-gradient(180deg,#fff,#fcfaf6);
}
@media (max-width: 991px){
    .cd-dashboard-stats-mini{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media (max-width: 640px){
    .cd-dashboard-stats-mini{
        grid-template-columns:1fr;
    }
}


.cd-badge-territorial{
    display:inline-block;
    padding:.25rem .6rem;
    font-size:.7rem;
    font-weight:600;
    border-radius:6px;
    margin-bottom:.5rem;
}
.cd-local{
    background:#c59d5f;
    color:#fff;
}
.cd-regional{
    background:#eee;
    color:#444;
}


/* DESIGN FINAL ARTISTES */
.cd-artists-featured-premium{
    margin:0 0 2rem 0;
}
.cd-artists-featured-premium .cd-favorite-button,
.cd-artists-grid .cd-favorite-button,
.cd-home-grid-artists .cd-favorite-button{
    margin:0 0 .85rem 0;
}


/* FAVORIS FONCTIONNEL SUR PAGE ARTISTES */
.cd-artist-card-body{
    position:relative;
}
.cd-artist-card-content-link{
    display:block;
    color:inherit;
    text-decoration:none;
}
.cd-artist-card-content-link:hover{
    color:inherit;
    text-decoration:none;
}
.cd-artist-card-body .cd-favorite-button{
    position:relative;
    z-index:3;
}
