html,
body {
    height: 100%;
    font-family: "Reddit Sans", sans-serif;
    background-color: #0d9571 !important;
}

body {
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
    max-width: 100vw;
}

a {
    text-decoration: none !important;
  }

main {
    flex: 1 0 auto;
}

.grow {
    transition: all .2s ease-in-out;
}

.grow:hover {
    transform: scale(1.04);
}

.grow2 {
    transition: all .2s ease-in-out;
}

.grow2:hover {
    transform: scale(1.019);
}

.bg-hover {
    background-color: #00000027;
}

.bg-transparente {
    background-color: #b8b8b85e;
}

.bg-verde {
    background-color: #0d8f2d;
}

.bg-verde2 {
    background-color: #1E8975;
}

.bg-verde3 {
    background-color: #336861;
}

.bg-verde4 {
    background-color: #155c27;
}

.bg-secundario {
    background-color: #333333;
}

.bg-principal {
    background-color: #0d9571 !important;
}

.bg-cinza-gradiente {
    background: rgb(255, 255, 255);
    background: linear-gradient(0deg, rgb(228, 228, 228) 0%,rgb(255, 255, 255) 100%); 
}

.bg-cinza {
    background-color: rgb(240, 240, 240);
}

.bg-cinza2 {
    background-color: rgb(235, 235, 235);
}

.bg-preto {
    background-color: #000000;
}

.bg-cinza1 {
    background-color: #cacaca;
}

.bg-cinza3 {
    background-color: #BCD2E1;
}

.bg-branco {
    background-color: #ffffff;
}

.bg-branco:hover {
    background-color: #ffffff00;
}

.bg-cinza4 {
    background-color: #dee1e4;
}

.bg-amarelo {
    background-color: #927420;
}	

.bg-roxo {
    background-color: #710d95;
}

.bg-principal2 {
    background-color: #09664d;
}

.text-principal {
    color: #0d9571;
}

.text-verde {
    color: #0D9571;
}

.text-verde3 {
    color: #30755C;
}

.text-cinza {
    color: #6C757D;
}

.text-preto {
    color: #3E3E3F;
}

.text-red {
    color: #FF0000;
}

.custom-table thead {
    background-color: #2C4A44 !important;
    color: white !important;
}

.pdf {
    width: 100%;
    aspect-ratio: 4 / 3;
}

.logofapeu {
    flex: 0 1 auto;
}

.font-avantgarde {
    font-family: 'AvantGarde', sans-serif;
}

.font-avantgarde-bold {
    font-family: 'AvantGarde', sans-serif;
    font-weight: bold;
}

.font-montserrat {
    font-family: "Montserrat", sans-serif;
}

.font-montserratbold {
    font-family: "Montserrat", sans-serif;
    font-weight: bolder;
}

.link-hover {
    transition: transform 0.3s ease, background-color 0.3s ease;
}

.link-hover:hover {
    transform: translateY(-10px);
}

.initial-animation {
    opacity: 0;
    transform: translateY(50px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}
.initial-animation.show-card {
    opacity: 1;
    transform: translateY(0);
}

.table-disponibilidade td {
    vertical-align: middle;
    text-align: center;
}

.badge-disponivel {
    font-size: 0.9rem;
    padding: 0.35em 0.65em;
}

.btn:disabled:hover {
    cursor: not-allowed;
}

.needs-validation .form-control:invalid,
.needs-validation .form-control.is-invalid {
    border-color: #dc3545;
    padding-right: calc(1.5em + 0.75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.projeto-field, .funcionario-field {
    transition: all 0.3s ease;
}

.btn-group .btn {
    padding: 0.375rem 0.75rem;
}

.bg-tarde {
    background-color: #20793d;
}

.bg-manha {
    background-color: #2980b9;
}

.bg-diatodo {
    background-color: #8e44ad;
}

.table-responsive {
    min-height: 300px;
}

.modal-backdrop {
    background-color: rgba(0, 0, 0, 0.7);
}

.pagination .page-item.active .page-link {
    background-color: #2c3e50;
    border-color: #2c3e50;
}