
body {

    font-family: Arial, sans-serif;

    background: #f4f6f8;

    padding: 20px;

    color: #222;

}

h1 {

    margin-bottom: 20px;

}

.card {

    background: white;

    padding: 18px;

    border-radius: 12px;

    box-shadow:
        0 2px 8px rgba(0,0,0,0.08);

    margin-bottom: 20px;

}

h3 {

    margin-top: 0;

    margin-bottom: 15px;

    font-size: 20px;

    color: #222;

}

.secao {

    border: 1px solid #e2e2e2;

    border-radius: 10px;

    padding: 18px;

    margin-bottom: 18px;

    background: #fafafa;

}

.secao h3 {

    margin-top: 0;

    margin-bottom: 15px;

    padding-bottom: 8px;

    border-bottom: 1px solid #ddd;

}

.form-grid {

    display: grid;

    grid-template-columns:
        repeat(auto-fit, minmax(220px, 1fr));

    gap: 10px;

    align-items: start;

}
.dados-topo {

    display: flex;

    gap: 16px;

    align-items: flex-start;

}

.foto-lateral {

    width: 160px;

    display: flex;

    flex-direction: column;

    align-items: center;

}

#previewFoto {

    width: 200px;

    height: 200px;

    border-radius: 10px;

    border: 2px solid #ccc;

    object-fit: cover;

    display: none;

    margin-bottom: 10px;

    background: #f5f5f5;

}

.dados-formulario {

    flex: 1;

}

.campo-nome {

    grid-column: span 2;

    min-width: 100%;

}
.campo {

    display: flex;

    flex-direction: column;

}

label {

    font-size: 13px;

    margin-bottom: 5px;

    color: #444;

    font-weight: bold;

}

input,
select,
textarea {

    width: 100%;

    padding: 10px;

    border: 1px solid #ccc;

    border-radius: 6px;

    box-sizing: border-box;

    font-size: 14px;

    background: white;

}

input:focus,
select:focus,
textarea:focus {

    outline: none;

    border-color: #1976d2;

    box-shadow:
        0 0 0 2px rgba(25,118,210,0.15);

}

textarea {

    min-height: 100px;

    resize: vertical;

}

.erro {

    color: red;

    font-size: 12px;

    margin-top: 4px;

}

button {

    background: #1976d2;

    color: white;

    border: none;

    padding: 12px 22px;

    border-radius: 6px;

    cursor: pointer;

    font-weight: bold;

    font-size: 14px;

    transition: 0.2s;

}

button:hover {

    background: #125aa0;

}

#previewFoto {

    width: 160px;

    height: 160px;

    object-fit: cover;

    border-radius: 10px;

    border: 2px solid #ccc;

    display: none;

    margin-top: 12px;

}

table {

    width: 100%;

    border-collapse: collapse;

    background: white;

}

th,
td {

    border: 1px solid #ddd;

    padding: 8px;

    font-size: 13px;

    text-align: left;

}

th {

    background: #333;

    color: white;

}

#filtroStatus {

    width: 250px;

}

#filtroNome {

    max-width: 400px;

}

.btn-editar {

    background: #f0ad4e;

    color: white;

    border: none;

    padding: 6px 10px;

    border-radius: 5px;

    cursor: pointer;

    margin-right: 5px;

}

.btn-editar:hover {

    background: #d8922d;

}

.btn-inativar {

    background: #dc3545;

    color: white;

    border: none;

    padding: 6px 10px;

    border-radius: 5px;

    cursor: pointer;

}

.btn-inativar:hover {

    background: #b52a37;

}
.foto-box {

    width: 140px;
    height: 140px;

    border: 2px dashed #c7c7c7;

    border-radius: 12px;

    background: #fafafa;

    display: flex;

    align-items: center;
    justify-content: center;

    position: relative;

    overflow: hidden;

}

#fotoPlaceholder {

    display: flex;

    flex-direction: column;

    align-items: center;

    color: #999;

    font-size: 18px;

    gap: 8px;

}

#fotoPlaceholder span {

    font-size: 14px;

}

#previewFoto {

    width: 100%;
    height: 100%;

    object-fit: cover;

    display: none;

}

.btn-foto {

    margin-top: 12px;

    background: #1976d2;

    color: white;

    padding: 10px 16px;

    border-radius: 6px;

    cursor: pointer;

    font-size: 14px;

    font-weight: bold;

    transition: 0.2s;

}

.btn-foto:hover {

    background: #125aa0;

}
.btn-ativar {

    background: #28a745;

    color: white;

    border: none;

    padding: 6px 10px;

    border-radius: 5px;

    cursor: pointer;

    margin-left: 5px;

}

.btn-ativar:hover {

    background: #1f7f35;

}

