body{
background:#0f172a;
font-family:Arial, Helvetica, sans-serif;
margin:0;
color:#f1f5f9;
}

/* LOGIN */

.login-container{
background:#1e293b;
padding:40px;
border-radius:20px;
width:90%;
max-width:400px;
text-align:center;
margin:auto;
margin-top:10vh;
}

.login-container img{
width:200px;
margin-bottom:20px;
}

input{
width:100%;
padding:14px;
margin-top:12px;
border-radius:10px;
border:none;
}

.password-wrap{
position:relative;
}

.password-wrap input{
padding-right:96px;
}

.toggle-password{
position:absolute;
right:8px;
top:18px;
padding:7px 10px;
font-size:13px;
border-radius:6px;
background:#334155;
}

select{
width:100%;
padding:14px;
margin-top:12px;
border-radius:10px;
border:none;
}

.hidden{
display:none;
}

button{
background:#2563eb;
color:white;
padding:12px 16px;
border:none;
border-radius:8px;
font-size:16px;
font-weight:bold;
cursor:pointer;
}

.form-link{
margin-top:18px;
font-size:14px;
}

.form-link a{
color:#60a5fa;
text-decoration:none;
font-weight:600;
}

.form-link a:hover{
text-decoration:underline;
}

.form-message{
margin:8px 0 14px 0;
padding:10px 12px;
border-radius:8px;
font-size:14px;
text-align:left;
}

.form-message.error{
background:#7f1d1d;
color:#fee2e2;
border:1px solid #ef4444;
}

.form-message.success{
background:#14532d;
color:#dcfce7;
border:1px solid #22c55e;
}

/* DASHBOARD */

.container{
width:95%;
max-width:1200px;
margin:auto;
padding:20px;
}

.cards{
display:flex;
gap:20px;
margin-bottom:30px;
flex-wrap:wrap;
}

.card{
background:#1e293b;
padding:20px;
border-radius:12px;
flex:1;
min-width:200px;
}

.card h3{
margin:0 0 10px 0;
}

.upload{
background:#1e293b;
padding:20px;
border-radius:12px;
margin-bottom:30px;
}

/* TABELA */

table{
width:100%;
border-collapse:collapse;
background:#1e293b;
border-radius:12px;
overflow:hidden;
}

th,td{
padding:12px;
text-align:left;
}

th{
background:#020617;
}

tr:nth-child(even){
background:#0f172a;
}

/* BOTÕES TABELA */

.acoes button{
padding:8px 12px;
font-size:16px;
margin:2px;
border:none;
border-radius:6px;
cursor:pointer;
}

.btn-ver{
background:#3498db;
color:white;
}

.btn-editar{
background:#f39c12;
color:white;
}

.btn-apagar{
background:#e74c3c;
color:white;
}

/* RESPONSIVO */

@media(max-width:700px){

.cards{
flex-direction:column;
}

table{
font-size:14px;
}

.acoes button{
padding:12px;
font-size:20px;
}

}