/* ==========================================================
   RESET
========================================================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{

    font-family:Arial, Helvetica, sans-serif;

    background:#f4f6f9;

    color:#333;

}


/* ==========================================================
   CONTAINER
========================================================== */

.container{

    width:95%;
    max-width:1100px;

    margin:35px auto;

}


/* ==========================================================
   CABEÇALHO
========================================================== */

header{

    background:#0d6efd;

    color:#fff;

    padding:25px;

    border-radius:10px;

    margin-bottom:25px;

    box-shadow:0 5px 12px rgba(0,0,0,.12);

}

header h1{

    font-size:30px;

    margin-bottom:8px;

}

header p{

    opacity:.9;

    font-size:15px;

}


/* ==========================================================
   CARDS
========================================================== */

.card{

    background:#fff;

    border-radius:10px;

    padding:25px;

    margin-bottom:25px;

    box-shadow:0 2px 8px rgba(0,0,0,.08);

}

.card h2{

    color:#0d6efd;

    margin-bottom:20px;

    border-bottom:1px solid #ddd;

    padding-bottom:10px;

    font-size:22px;

}

.card h2 i{

    margin-right:8px;

}


/* ==========================================================
   GRID
========================================================== */

.grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));

    gap:20px;

}

.campo{

    display:flex;

    flex-direction:column;

}

.campo label{

    font-weight:bold;

    color:#666;

    margin-bottom:6px;

}

.campo span{

    background:#f8f9fa;

    border:1px solid #dee2e6;

    border-radius:6px;

    padding:12px;

    font-size:15px;

}


/* ==========================================================
   LISTA DE OCORRÊNCIAS
========================================================== */

.lista-ocorrencias{

    list-style:none;

}

.lista-ocorrencias li{

    background:#f8f9fa;

    border-left:5px solid #198754;

    margin-bottom:12px;

    padding:14px;

    border-radius:6px;

    font-size:16px;

}

.lista-ocorrencias li i{

    color:#198754;

    margin-right:10px;

}


/* ==========================================================
   OBSERVAÇÃO
========================================================== */

.observacao{

    background:#fffbea;

    border-left:5px solid #ffc107;

    padding:18px;

    border-radius:6px;

    line-height:1.7;

    white-space:pre-line;

    font-size:15px;

}


/* ==========================================================
   BOTÕES
========================================================== */

.acoes{

    display:flex;

    justify-content:center;

    gap:15px;

    flex-wrap:wrap;

    margin-top:30px;

}

.btn{

    text-decoration:none;

    color:#fff;

    padding:12px 24px;

    border-radius:6px;

    transition:.3s;

    font-size:15px;

    font-weight:bold;

}

.btn i{

    margin-right:8px;

}


/* Voltar */

.voltar{

    background:#6c757d;

}

.voltar:hover{

    background:#5a6268;

}


/* Editar */

.editar{

    background:#ffc107;

    color:#222;

}

.editar:hover{

    background:#e0a800;

}


/* Excluir */

.excluir{

    background:#dc3545;

}

.excluir:hover{

    background:#bb2d3b;

}


/* ==========================================================
   ANIMAÇÕES
========================================================== */

.card{

    animation:fadeIn .35s ease;

}

@keyframes fadeIn{

    from{

        opacity:0;

        transform:translateY(12px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}


/* ==========================================================
   RESPONSIVIDADE
========================================================== */

@media(max-width:768px){

    header h1{

        font-size:24px;

    }

    .grid{

        grid-template-columns:1fr;

    }

    .acoes{

        flex-direction:column;

    }

    .btn{

        width:100%;

        text-align:center;

    }

}