/* =========================
MUSICVERSUM GLOBAL STYLE
========================= */

:root{
--bg-main:#070b12;
--bg-secondary:#111821;
--bg-card:#0b111a;

```
--border:#252f3f;

--text:#ffffff;
--text-light:#cbd5e1;
--text-muted:#a1a1aa;

--primary:#7c3aed;
--primary-hover:#8b5cf6;
--primary-dark:#5b21b6;

--danger:#ef4444;
--success:#22c55e;

--shadow:0 0 50px rgba(139,92,246,.2);
```

}

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{
font-family:Arial,sans-serif;
background:var(--bg-main);
color:var(--text);
}

a{
text-decoration:none;
color:inherit;
}

img{
max-width:100%;
display:block;
}

/* =========================
HEADER
========================= */

.header{
height:72px;
padding:0 8%;
display:flex;
justify-content:space-between;
align-items:center;

```
border-bottom:1px solid var(--border);

background:rgba(7,11,18,.9);
```

}

.logo{
font-size:28px;
font-weight:bold;
}

.logo span{
color:var(--primary-hover);
}

.nav{
    display:block;
}

.nav a{
    display:block;
    padding:14px 16px;
    border-radius:12px;
    margin-bottom:8px;
    color:#d1d5db;
}

.nav a:hover,
.nav .active{
    background:linear-gradient(135deg,#4c1d95,#312e81);
    color:white;
}

.logout{
    margin-top:40px;
    color:#fca5a5!important;
}

/* =========================
BUTTONS
========================= */

.btn{
display:inline-block;
padding:14px 22px;
border-radius:12px;
border:none;
cursor:pointer;
transition:.2s;
}

.btn-primary{
background:linear-gradient(
135deg,
var(--primary),
var(--primary-dark)
);

```
color:white;
```

}

.btn-primary:hover{
background:linear-gradient(
135deg,
var(--primary-hover),
#6d28d9
);
}

.btn-outline{
border:1px solid var(--primary);
color:var(--primary-hover);
}

/* =========================
FORMULAR
========================= */

input,
textarea,
select{

```
width:100%;
padding:14px;

border-radius:10px;
border:1px solid #374151;

background:var(--bg-card);
color:white;

margin-bottom:15px;
```

}

input:focus,
textarea:focus,
select:focus{

```
outline:none;

border-color:var(--primary-hover);

box-shadow:
0 0 0 2px rgba(139,92,246,.25);
```

}

/* =========================
LOGIN / REGISTER
========================= */

.auth-wrapper{

```
min-height:100vh;

display:flex;
justify-content:center;
align-items:center;

padding:30px;

background:
    radial-gradient(
        circle at top right,
        rgba(139,92,246,.25),
        transparent 35%
    ),
    linear-gradient(
        135deg,
        var(--bg-main),
        #111827
    );
```

}

.auth-box{

```
width:420px;

background:var(--bg-secondary);

border:1px solid var(--border);

border-radius:22px;

padding:35px;

box-shadow:var(--shadow);
```

}

.auth-box h1,
.auth-box h2{
margin-bottom:10px;
}

.auth-subtitle{
color:var(--text-muted);
margin-bottom:25px;
}

/* =========================
DASHBOARD
========================= */

.app{

```
display:grid;

grid-template-columns:
    250px
    1fr;

min-height:100vh;
```

}

.sidebar{

```
background:var(--bg-card);

border-right:
1px solid var(--border);

padding:24px;
```

}

.sidebar .logo{
margin-bottom:40px;
}

.sidebar a{

```
display:block;

padding:14px;

border-radius:12px;

margin-bottom:8px;

color:var(--text-light);
```

}

.sidebar a:hover,
.sidebar .active{

```
background:
linear-gradient(
    135deg,
    #4c1d95,
    #312e81
);

color:white;
```

}

.main{
padding:30px;
}

.topbar{

```
display:flex;
justify-content:space-between;
align-items:center;

margin-bottom:30px;
```

}

/* =========================
CARDS
========================= */

.card{

```
background:var(--bg-secondary);

border:1px solid var(--border);

border-radius:20px;

padding:24px;
```

}

.card h3{
margin-bottom:10px;
}

.card p{
color:var(--text-muted);
}

.grid{

```
display:grid;

grid-template-columns:
    repeat(auto-fit,minmax(250px,1fr));

gap:20px;
```

}

/* =========================
FEED
========================= */

.feed{

```
margin-top:25px;

background:var(--bg-secondary);

border:1px solid var(--border);

border-radius:20px;

padding:24px;
```

}

.feed-item{

```
padding:15px 0;

border-bottom:
1px solid #1f2937;
```

}

.feed-item:last-child{
border-bottom:none;
}

/* =========================
MESSAGES
========================= */

.message{

```
padding:12px;

margin-bottom:15px;

border-radius:10px;
```

}

.success{

```
background:
rgba(34,197,94,.12);

border:
1px solid rgba(34,197,94,.35);

color:#86efac;
```

}

.error{

```
background:
rgba(239,68,68,.12);

border:
1px solid rgba(239,68,68,.35);

color:#fca5a5;
```

}

/* =========================
MOBILE
========================= */

@media(max-width:900px){

```
.app{
    grid-template-columns:1fr;
}

.sidebar{
    border-right:none;
    border-bottom:1px solid var(--border);
}

.topbar{
    flex-direction:column;
    gap:15px;
    align-items:flex-start;
}

.header{
    padding:0 5%;
}
```

}

.feed-editor{
    width:100%;
    min-height:180px;

    resize:vertical;

    padding:18px;

    border-radius:18px;

    font-size:16px;
    line-height:1.6;

    background:#111821;
    border:1px solid #252f3f;

    color:white;

    margin-bottom:15px;
}

.feed-editor:focus{
    outline:none;
    border-color:#8b5cf6;
    box-shadow:0 0 12px rgba(139,92,246,.25);
}

.sidebar .nav{
    display:flex !important;
    flex-direction:column !important;
}

.sidebar .nav a{
    display:block !important;
    width:100%;
}

.app{
    display:grid !important;
    grid-template-columns:250px 1fr !important;
    min-height:100vh;
}

.sidebar{
    width:250px;
    min-height:100vh;
    background:#0b111a;
    border-right:1px solid #1f2937;
    padding:24px;
}

.main{
    padding:30px;
    min-width:0;
}

.sidebar .nav{
    display:flex !important;
    flex-direction:column !important;
    gap:8px;
}

.sidebar .nav a{
    display:block !important;
    width:100% !important;
    padding:14px 16px;
    border-radius:12px;
}

.sidebar .nav .active{
    background:linear-gradient(135deg,#4c1d95,#312e81);
}

.post-card{
    background:#0b111a;
    border:1px solid #252f3f;
    border-radius:18px;
    padding:20px;
    margin-bottom:18px;
}

.post-header{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:16px;
}

.post-avatar{
    width:52px;
    height:52px;
    border-radius:50%;
    object-fit:cover;
    border:2px solid #8b5cf6;
}

.post-header small{
    color:#a1a1aa;
}

.post-content{
    color:#e5e7eb;
    line-height:1.6;
    margin-bottom:18px;
    white-space:normal;
}

.post-actions{
    display:flex;
    gap:12px;
    border-top:1px solid #1f2937;
    padding-top:14px;
}

.post-actions button{
    background:none;
    border:none;
    color:#cbd5e1;
    cursor:pointer;
    padding:8px 10px;
    border-radius:10px;
}

.post-actions button:hover{
    background:rgba(139,92,246,.15);
    color:white;
}

.comments-section{
    margin-top:18px;
    border-top:1px solid #1f2937;
    padding-top:18px;
}

.comment{
    background:#111821;
    border-radius:12px;
    padding:12px;
    margin-bottom:10px;
}

.comment small{
    color:#9ca3af;
}

.comment p{
    margin-top:6px;
}

.comment-form{
    display:flex;
    gap:10px;
    margin-top:14px;
}

.comment-form input{
    flex:1;
}

.comment-header{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:8px;
}

.comment-avatar{
    width:40px;
    height:40px;
    border-radius:50%;
    object-fit:cover;
    border:2px solid #8b5cf6;
    flex-shrink:0;
}

.comment-header a{
    color:#fff;
    text-decoration:none;
}

.comment-header a:hover{
    color:#a78bfa;
}

.profile-compact-header{
    display:flex;
    align-items:center;
    gap:18px;
    padding:18px 22px;
    margin-bottom:22px;
}

.profile-compact-avatar{
    width:84px;
    height:84px;
    border-radius:50%;
    object-fit:cover;
    border:3px solid var(--primary-hover);
    flex-shrink:0;
}

.profile-compact-info h1{
    font-size:28px;
    margin-bottom:4px;
}

.profile-compact-info p{
    color:var(--text-light);
    margin-bottom:4px;
}

.profile-compact-info small{
    color:var(--text-muted);
}

.profile-summary{
    margin-bottom:25px;
    padding:18px 24px;
}

.profile-summary p{
    margin:10px 0;
    color:#cbd5e1;
    line-height:1.6;
}

.band-card{
    display:flex;
    gap:20px;
    align-items:flex-start;
}
.band-logo{
    width:140px;
    max-height:90px;

    object-fit:contain;

    border:2px solid #8b5cf6;
    border-radius:12px;

    background:#111821;
    padding:8px;

    flex-shrink:0;
}

.band-content{
    flex:1;
}