body {

    margin: 0;

    font-family: Arial, sans-serif;

    background: #f5f5f5;
}

/* LOGIN */

.login-box {

    width: 350px;

    margin: 100px auto;

    background: #fff;

    padding: 30px;

    border-radius: 10px;

    box-shadow: 0 0 15px rgba(0,0,0,0.1);
}

.login-box h1 {

    text-align: center;

    margin-bottom: 30px;
}

.login-box input {

    width: 100%;

    padding: 12px;

    margin-bottom: 15px;

    border: 1px solid #ccc;

    border-radius: 6px;

    box-sizing: border-box;
}

.login-box button {

    width: 100%;

    padding: 12px;

    border: none;

    background: #111;

    color: #fff;

    border-radius: 6px;

    cursor: pointer;

    font-size: 16px;
}

.login-box button:hover {

    background: #333;
}

.erro {

    background: #ffdddd;

    color: #c00;

    padding: 10px;

    margin-bottom: 15px;

    border-radius: 6px;
}

/* PAINEL */

.admin-container {

    width: 90%;

    max-width: 1000px;

    margin: 40px auto;
}

.admin-menu {

    margin-top: 30px;

    display: flex;

    gap: 15px;
}

.admin-menu a {

    display: inline-block;

    padding: 12px 20px;

    background: #111;

    color: #fff;

    text-decoration: none;

    border-radius: 6px;
}

.admin-menu a:hover {

    background: #333;
}


/* =========================
TOPO ADMIN
========================= */

.admin-topo {

    display: flex;

    justify-content: space-between;

    align-items: center;

    margin-bottom: 25px;
}

.btn-admin {

    display: inline-block;

    padding: 10px 18px;

    background: #111;

    color: #fff;

    text-decoration: none;

    border-radius: 6px;
}

.btn-admin:hover {

    background: #333;
}

/* =========================
PESQUISA
========================= */

.pesquisa-box {

    display: flex;

    gap: 10px;

    margin-bottom: 20px;
}

.pesquisa-box input {

    flex: 1;

    padding: 12px;

    border: 1px solid #ccc;

    border-radius: 6px;
}

.pesquisa-box button {

    padding: 12px 20px;

    border: none;

    background: #111;

    color: #fff;

    border-radius: 6px;

    cursor: pointer;
}

/* =========================
TABELA
========================= */

.table-wrap {

    overflow-x: auto;
}

.admin-table {

    width: 100%;

    border-collapse: collapse;

    background: #fff;
}

.admin-table th {

    background: #111;

    color: #fff;

    padding: 12px;

    text-align: left;
}

.admin-table td {

    padding: 12px;

    border-bottom: 1px solid #eee;
}

.admin-table tr:hover {

    background: #fafafa;
}

/* =========================
ESTADOS
========================= */

.ativo {

    color: green;

    font-weight: bold;
}

.inativo {

    color: red;

    font-weight: bold;
}

/* =========================
AÇÕES
========================= */

.acoes {

    display: flex;

    gap: 10px;
}

.acoes a {

    text-decoration: none;

    color: #111;

    font-weight: 600;
}

.acoes .apagar {

    color: red;
}


/* =========================
FORMULÁRIO ADMIN
========================= */

.admin-form {

    background: #fff;

    padding: 25px;

    border-radius: 10px;
}

.form-group {

    margin-bottom: 20px;
}

.form-group label {

    display: block;

    margin-bottom: 8px;

    font-weight: 600;
}

.form-group input,
.form-group textarea {

    width: 100%;

    padding: 12px;

    border: 1px solid #ccc;

    border-radius: 6px;

    box-sizing: border-box;

    font-size: 14px;
}

.form-group textarea {

    resize: vertical;
}

.form-grid {

    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 20px;
}

.sucesso {

    background: #ddffdd;

    color: green;

    padding: 15px;

    border-radius: 6px;

    margin-bottom: 20px;

    font-weight: bold;
}


.admin-form {

    background: #fff;

    padding: 30px;

    border-radius: 10px;

    box-shadow: 0 0 15px rgba(0,0,0,0.08);
}

.admin-form button {

    margin-top: 20px;

    padding: 12px 25px;

    border: none;

    background: #111;

    color: #fff;

    border-radius: 6px;

    cursor: pointer;

    font-size: 15px;
}

.admin-form button:hover {

    background: #333;
}

.admin-form h3 {

    margin-top: 0;
}


h2 {
    margin-top: 0;
    color: #111;
}

.admin-container h2 {
    margin-bottom: 25px;
}


.btn-admin {
    transition: 0.2s ease;
}

.btn-admin:hover {
    transform: translateY(-1px);
}


.admin-menu {
    flex-wrap: wrap;
}

.admin-menu a {
    min-width: 180px;
    text-align: center;
}

/* DASHBOARD */

.admin-card {

    background: #fff;

    padding: 35px;

    border-radius: 12px;

    box-shadow: 0 0 15px rgba(0,0,0,0.08);
}

.admin-card p {

    font-size: 18px;

    margin-bottom: 30px;
}


/* ==========================================================
   TOAST NOTIFICAÇÕES ADMIN
========================================================== */

#admin-toast{

    position:fixed;

    top:25px;
    right:25px;

    min-width:320px;
    max-width:450px;

    padding:16px 22px;

    border-radius:10px;

    color:#fff;

    font-size:15px;
    font-weight:600;

    box-shadow:0 10px 25px rgba(0,0,0,.20);

    z-index:99999;

    opacity:0;

    transform:translateY(-20px);

    transition:all .35s ease;

}

#admin-toast.show{

    opacity:1;

    transform:translateY(0);

}

#admin-toast.sucesso{

    background:#198754;

}

#admin-toast.erro{

    background:#dc3545;

}