:root{
    --spotify-green:#1DB954;
    --bg:#121212;
    --card:#181818;
    --card-hover:#282828;
    --text:#ffffff;
    --muted:#b3b3b3;
}

body{
    background:var(--bg);
    color:var(--text);
    font-family:Segoe UI,Arial,sans-serif;
}

.navbar{
    background:#000 !important;
    box-shadow:0 2px 10px rgba(0,0,0,.4);
}

.navbar-brand{
    font-weight:bold;
    color:var(--spotify-green)!important;
}

.card{
    background:var(--card);
    border:none;
    transition:.25s;
}

.card:hover{
    background:var(--card-hover);
    transform:translateY(-3px);
}

.card-img-top{
    height:260px;
    object-fit:cover;
}

.album-title{
    color:#fff;
    font-weight:600;
}

.album-title:hover{
    color:var(--spotify-green);
}

.text-muted{
    color:var(--muted)!important;
}

.btn-spotify{
    background:var(--spotify-green);
    border:none;
    color:#fff;
}

.btn-spotify:hover{
    background:#18a449;
    color:#fff;
}

.stats-box{
    background:#181818;
    border-radius:15px;
    padding:20px;
    margin-bottom:25px;
}

.footer{
    background:#000;
    color:#999;
}
.track-row{
    padding:10px;
    border-bottom:1px solid #2a2a2a;
}

.track-row:hover{
    background:#1f1f1f;
}

.table-dark{
    background:#181818;
}
.artist-header{
    padding:40px;
    border-radius:20px;
    background:linear-gradient(
        135deg,
        #1DB954,
        #121212
    );
}
.track-row:hover{
    background:#1f1f1f;
}

.track-duration{
    min-width:70px;
    text-align:right;
    font-variant-numeric:tabular-nums;
}
.artist-banner{
    background:linear-gradient(135deg,#1DB954,#121212);
    border-radius:20px;
    margin-bottom:30px;
    overflow:hidden;
}

.artist-overlay{
    padding:40px;
}

.artist-content{
    display:flex;
    align-items:center;
    gap:30px;
}

.artist-photo{
    width:180px;
    height:180px;
    object-fit:cover;
    border-radius:50%;
    border:4px solid rgba(255,255,255,.2);
}

.artist-label{
    text-transform:uppercase;
    font-size:12px;
    letter-spacing:2px;
    color:#ddd;
}

.artist-name{
    font-size:3rem;
    font-weight:700;
    margin:10px 0;
}

.artist-profile{
    color:#ddd;
    max-width:900px;
}

@media(max-width:768px){

    .artist-content{
        flex-direction:column;
        text-align:center;
    }

    .artist-name{
        font-size:2rem;
    }

}