*{

margin:0;

padding:0;

box-sizing:border-box;
}

body{

font-family:
'Segoe UI',
sans-serif;

background:#f1f5f9;

color:#1e293b;
}

/* HEADER */

.admin-header{

width:100%;

height:85px;

background:
linear-gradient(
135deg,
#0f172a,
#111827
);

display:flex;

align-items:center;

justify-content:space-between;

padding:0 35px;

position:fixed;

top:0;

left:0;

z-index:1000;
}

.admin-logo{

font-size:30px;

font-weight:800;

color:#4ade80;
}

.admin-menu{

display:flex;

gap:18px;
}

.admin-menu a{

text-decoration:none;

color:#fff;

font-weight:600;

padding:12px 18px;

border-radius:14px;

transition:0.3s;
}

.admin-menu a:hover{

background:
linear-gradient(
135deg,
#22c55e,
#16a34a
);
}

/* MOBILE */

.mobile-menu-btn{

display:none;

width:50px;

height:50px;

border:none;

border-radius:14px;

background:#22c55e;

color:#fff;

font-size:24px;
}

.mobile-menu{

display:none;

position:fixed;

top:85px;

left:0;

width:100%;

background:#111827;

padding:20px;

z-index:999;

flex-direction:column;

gap:12px;
}

.mobile-menu a{

text-decoration:none;

color:#fff;

padding:14px;

border-radius:14px;

background:
rgba(255,255,255,0.05);
}

.mobile-menu.active{

display:flex;
}

/* CONTEÚDO */

.admin-content{

padding:120px 35px 35px;
}

/* LOGIN */

.login-container{

max-width:450px;

margin:60px auto;

background:#fff;

padding:40px;

border-radius:30px;

box-shadow:
0 10px 30px rgba(0,0,0,0.08);
}

.login-container h1{

font-size:38px;

margin-bottom:30px;

text-align:center;
}

/* FORM */

form{

display:flex;

flex-direction:column;

gap:18px;
}

form input,
form select,
form textarea{

width:100%;

height:58px;

padding:0 18px;

border-radius:16px;

border:1px solid #dbe2ea;

font-size:16px;
}

form textarea{

height:120px;

padding-top:15px;
}

form button{

height:58px;

border:none;

border-radius:16px;

background:
linear-gradient(
135deg,
#22c55e,
#16a34a
);

color:#fff;

font-size:18px;

font-weight:700;

cursor:pointer;
}

/* CARDS */

.cards-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(250px,1fr));

gap:25px;
}

.dashboard-card{

background:#fff;

padding:28px;

border-radius:28px;

box-shadow:
0 10px 25px rgba(0,0,0,0.08);
}

.number{

font-size:40px;

font-weight:800;

color:#22c55e;
}

/* UPLOAD */

.upload-box{

width:100%;

height:140px;

border:2px dashed #cbd5e1;

border-radius:24px;

display:flex;

align-items:center;

justify-content:center;

background:#f8fafc;
}

.upload-box label{

display:flex;

flex-direction:column;

align-items:center;

gap:12px;

cursor:pointer;
}

.upload-box i{

font-size:40px;

color:#22c55e;
}

.upload-box input{

display:none;
}

/* PETS / PRODUTOS */

#pets-list,
.products-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(280px,320px));

gap:25px;

margin-top:30px;
}

.pet-card,
.product-card{

background:#fff;

border-radius:28px;

overflow:hidden;

box-shadow:
0 10px 25px rgba(0,0,0,0.08);
}

.pet-card img,
.product-card img{

width:100%;

height:220px;

object-fit:cover;
}

.pet-info,
.product-info{

padding:22px;
}

/* RESPONSIVO */

@media(max-width:900px){

.admin-menu{

display:none;
}

.mobile-menu-btn{

display:block;
}

.admin-content{

padding:
110px 18px 30px;
}

.cards-grid{

grid-template-columns:1fr;
}

}