/* Estilos personalizados para o header */
body {
  min-height: 100vh; /* Altura mínima = 100% da viewport (tela) */
}
header {
    border-bottom: 2px solid #0F75BC; /* Borda inferior azul */
}

.logo-img {
    width: 350px; /* Tamanho da logo */
    height: auto;
}

.navbar-toggler {
    border: none; /* Remove a borda do botão */
    background: transparent; /* Fundo transparente */
}

.navbar-toggler:focus {
    outline: none; /* Remove o contorno ao focar */
    box-shadow: none; /* Remove a sombra ao focar */
}

.nav-link {
    padding: 10px 15px; /* Espaçamento interno dos links */
    transition: color 0.3s ease; /* Transição suave */
}

.nav-link:hover,
.nav-link.active {
    color: #0F75BC !important; /* Cor azul ao passar o mouse ou quando ativo */
}

/* Estilo para o ícone de hambúrguer */
.navbar-toggler .fa-bars {
    color: #0F75BC; /* Cor azul */
}

/* Estilo para o menu colapsado em mobile */
.navbar-collapse {
    border-top: 1px solid #0F75BC; /* Borda superior azul */
    margin-top: 10px;
}

/* Estilo dos botoes com cor #0F75BC */
.btn-custom {
    background-color: #0F75BC; /* Cor dos botoes */
    color: #fff; /* Cor do texto */
    border: none; /* Remove borda */
    padding: 15px 20px; /* Espaçamento interno */
    border-radius: 10px; /* Bordas arredondadas */
    transition: background-color 0.3s ease; /* Transi��o suave */
}

.btn-custom:hover {
    background-color: #0c5a8f; /* Cor ao passar o mouse */
    color: #fff; /* Cor do texto */
}

/* Estilo dos Icones nos botoes */
.btn-custom i {
    font-size: 2rem; /* Tamanho dos Icones */
    margin-bottom: 10px; /* Espaçamento abaixo do �cone */
}

/* Estilo do header */
header {
    background-color: #fff; /* Fundo branco */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Sombra suave */
}

/* Estilo do menu */
nav ul li a {
    color: #333; /* Cor do texto do menu */
    text-decoration: none; /* Remove sublinhado */
    font-size: 1rem; /* Tamanho da fonte */
    transition: color 0.3s ease; /* Transi��o suave */
}

nav ul li a:hover {
    color: #0F75BC; /* Cor ao passar o mouse */
}

/* Estilo do footer */
footer {
    background-color: #0F75BC; /* Cor de fundo */
    color: #fff; /* Cor do texto */
    padding: 10px 0; /* Espaçamento interno */
    margin-top: 40px; /* Espaçamento acima do footer */
}

/* Estilos personalizados para o formulário */
form {
    background-color: #f8f9fa; /* Fundo claro */
    padding: 20px; /* Espaçamento interno */
    border-radius: 10px; /* Bordas arredondadas */
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); /* Sombra suave */
}

form label {
    font-weight: bold; /* Texto em negrito */
}

form input, form select, form textarea {
    margin-bottom: 15px; /* Espaçamento abaixo dos campos */
}

form button {
    font-size: 1.2rem; /* Tamanho da fonte */
    transition: background-color 0.3s ease; /* Transição suave */
}

form button:hover {
    background-color: #218838; /* Cor ao passar o mouse */
}

/* Estilo personalizado para o campo de arquivo */
.form-control[type="file"] {
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
    background-color: #f8f9fa;
}

.form-control[type="file"]:focus {
    border-color: #0F75BC;
    box-shadow: 0 0 5px rgba(15, 117, 188, 0.5);
}
.invalid-feedback {
    display: block;
}

.required:after {
    content: " *";
    color: red;
}
.section-title {
    background-color: #f8f9fa;
    padding: 10px;
    border-radius: 5px;
    margin-top: 20px;
    border-left: 4px solid #0d6efd;
}
.conditional-field {
    display: none;
    margin-top: 15px;
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 5px;
}
.form-control-file {
    border: 1px dashed #ced4da;
    padding: 10px;
    border-radius: 5px;
}
.section-title.bg-primary {
    color: white;
    padding: 15px;
    border-radius: 5px;
    margin-top: 0;
    border-left: none;
}

.form-select-lg {
    font-size: 1.1rem;
    padding: 12px;
    border: 2px solid #0d6efd;
}

.vaga-info {
    font-size: 0.9rem;
    color: #6c757d;
    margin-top: 5px;
}
#vagaspcd {
    max-width: 100%;
    padding: 0.5rem;
    border-radius: 0.25rem;
    border: 1px solid #ced4da;
}

        .card-inscricao {
            transition: transform 0.2s;
            margin-bottom: 20px;
            border-radius: 10px;
            box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
        }
        .card-inscricao:hover {
            transform: translateY(-5px);
            box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
        }
        .id-inscricao {
            font-size: 1.5rem;
            font-weight: bold;
            color: #0d6efd;
        }
        .data-inscricao {
            font-size: 0.9rem;
            color: #6c757d;
        }
        .btn-action {
            min-width: 100px;
        }
        .empty-state {
            text-align: center;
            padding: 40px;
            color: #6c757d;
        }
        .empty-state .icon {
            font-size: 3rem;
            margin-bottom: 15px;
            color: #dee2e6;
        }
        .card-title-icon {
            margin-right: 8px;
            width: 20px;
            text-align: center;
        }