
body {

    font-family: Arial, sans-serif;

    background: #f4f6f8;

    padding: 20px;

}

.card {

    background: white;

    padding: 20px;

    border-radius: 10px;

    box-shadow: 0 2px 8px rgba(0,0,0,0.08);

    margin-bottom: 20px;

}

h1 {

    margin-bottom: 20px;

}

.form-grid {

    display: grid;

    grid-template-columns:
        repeat(auto-fit, minmax(250px, 1fr));

    gap: 15px;

}

.campo {

    display: flex;

    flex-direction: column;

}

label {

    margin-bottom: 5px;

    font-size: 13px;

    font-weight: bold;

}

input,
select,
textarea {

    padding: 10px;

    border: 1px solid #ccc;

    border-radius: 6px;

    font-size: 14px;

}

textarea {

    min-height: 80px;

    resize: vertical;

}
.acoes-formulario {

    width: 100%;

    display: flex;

    justify-content: center;

    align-items: center;

    gap: 15px;

    margin-top: 30px;

}
button {

    background: #1976d2;

    color: white;

    border: none;

    padding: 12px 20px;

    border-radius: 6px;

    cursor: pointer;

    font-weight: bold;

}

button:hover {

    background: #125aa0;

}

table {

    width: 100%;

    border-collapse: collapse;

    background: white;

}

th,
td {

    border: 1px solid #ddd;

    padding: 8px;

    font-size: 13px;

}

th {

    background: #333;

    color: white;

}

.total-box {

    background: #1976d2;

    color: white;

    padding: 15px;

    border-radius: 8px;

    font-size: 18px;

    font-weight: bold;

    margin-bottom: 15px;

}

.busca-container {

    position: relative;

}

/* CAMPOS ERRO */

.erro {

    border: 2px solid #dc3545 !important;

    box-shadow:
        0 0 5px #dc3545;

}

.mensagem-erro {

    color: #dc3545;

    font-size: 11px;

    margin-top: 5px;

    font-weight: bold;

}

#listaAtiradores {

    position: absolute;

    top: 100%;

    left: 0;

    right: 0;

    background: white;

    border: 1px solid #ccc;

    border-top: none;

    border-radius: 0 0 6px 6px;

    max-height: 220px;

    overflow-y: auto;

    z-index: 9999;

    box-shadow: 0 4px 10px rgba(0,0,0,0.08);

}

.item-atirador {

    padding: 12px;

    cursor: pointer;

    border-bottom: 1px solid #eee;

    transition: 0.2s;

}

.item-atirador:hover {

    background: #f5f7fa;

}
.item-atirador {

    padding: 10px;

    cursor: pointer;

    border-bottom: 1px solid #eee;

}

.item-atirador:hover {

    background: #f0f0f0;

}
.acoes-form {

    display: flex;

    gap: 12px;

    margin-top: 15px;

}

.btn-limpar {

    background: #6c757d;

}

.btn-limpar:hover {

    background: #5a6268;

}
.modal-sucesso {

    position: fixed;

    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    background: rgba(0,0,0,0.5);

    display: none;

    align-items: center;
    justify-content: center;

    z-index: 9999;

}

.modal-conteudo {

    background: #fff;

    padding: 30px;

    border-radius: 12px;

    width: 400px;

    text-align: center;

    box-shadow:

        0 10px 30px rgba(0,0,0,0.3);

    animation:

        aparecerModal 0.3s ease;

}

.modal-conteudo h2 {

    color: #198754;

    margin-bottom: 15px;

}

.modal-conteudo p {

    font-size: 16px;

    margin-bottom: 20px;

}

.modal-conteudo button {

    background: #0d6efd;

    color: #fff;

    border: none;

    padding: 10px 25px;

    border-radius: 8px;

    cursor: pointer;

    font-weight: bold;

}

@keyframes aparecerModal {

    from {

        opacity: 0;
        transform: scale(0.8);

    }

    to {

        opacity: 1;
        transform: scale(1);

    }

}
