html, body{
height:100%;
margin:0;
font-family:Inter,Arial,Helvetica,sans-serif;
background:#0f172a;
color:#e5e7eb;
}

/* LAYOUT */

.dashboard{
display:flex;
min-height:100vh;
}

/* SIDEBAR */

.sidebar{
width:220px;
background:#020617;
padding:25px;
box-shadow:2px 0 10px rgba(0,0,0,0.4);
}

.sidebar h3{
margin-top:0;
color:#38bdf8;
margin-bottom:30px;
}

.sidebar a{
display:block;
padding:12px;
margin-bottom:8px;
color:#cbd5f5;
text-decoration:none;
border-radius:6px;
cursor:pointer;
transition:0.2s;
}

.sidebar a:hover{
background:#1e293b;
color:white;
}

/* MAIN */

.main{
flex:1;
display:flex;
flex-direction:column;
}

/* TOPBAR */

.topbar{
display:flex;
justify-content:space-between;
align-items:center;
padding:15px 30px;
background:#020617;
border-bottom:1px solid #1e293b;
}

.topbar-left{
font-size:16px;
}

.topbar-right{
display:flex;
align-items:center;
gap:20px;
}

/* CONTENT */

.content{
flex:1;
padding:35px;
}

/* TITLES */

h2{
margin-top:0;
}

/* CARDS */

.cards{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:20px;
margin-bottom:30px;
}

.card-fin{
background:#020617;
padding:25px;
border-radius:10px;
box-shadow:0 10px 20px rgba(0,0,0,0.3);
transition:0.2s;
}

.card-fin:hover{
transform:translateY(-3px);
}

.card-fin div{
margin-top:10px;
font-size:22px;
font-weight:bold;
color:#38bdf8;
}

/* BUTTONS */

button{
background:#38bdf8;
border:none;
padding:10px 18px;
border-radius:6px;
color:#020617;
font-weight:bold;
cursor:pointer;
transition:0.2s;
}

button:hover{
background:#0ea5e9;
}

/* INPUTS */

input, select{
padding:10px;
border-radius:6px;
border:1px solid #1e293b;
background:#020617;
color:white;
margin-right:10px;
margin-bottom:10px;
}

/* TABLE */

table{
width:100%;
border-collapse:collapse;
background:#020617;
border-radius:10px;
overflow:hidden;
box-shadow:0 10px 20px rgba(0,0,0,0.25);
}

th{
background:#1e293b;
padding:12px;
text-align:left;
}

td{
padding:12px;
border-top:1px solid #1e293b;
}

tr:hover{
background:#0f172a;
}

/* FORM */

#customerForm,
#invoiceForm{
background:#020617;
padding:20px;
border-radius:10px;
box-shadow:0 10px 20px rgba(0,0,0,0.3);
max-width:500px;
}

#customerForm input,
#invoiceForm input{
width:100%;
margin-bottom:10px;
}

/* LOGIN */

.login-container{
max-width:300px;
margin:120px auto;
background:#020617;
padding:30px;
border-radius:10px;
box-shadow:0 10px 20px rgba(0,0,0,0.4);
text-align:center;
}

.login-container input{
width:100%;
margin-bottom:10px;
}

/* RESPONSIVO */

@media(max-width:900px){

.sidebar{
width:180px;
}

.cards{
grid-template-columns:1fr;
}

}
