body, html {
    font-family: 'Nunito', sans-serif;
}

body {
    margin: 0;
    padding: 0;
    background-color: #f1f1f1;
}

a {
    font-family: "Poppins", sans-serif;
    font-weight: 400;
    font-style: normal;
}

label {
    font-family: "Poppins", sans-serif;
    font-weight: 400;
    font-style: normal;
}

.btn-primary {
  background-color: #7447e1;
  border-color: #7447e1;
}
.btn-primary:hover {
  background-color: #5b32b2;
  border-color: #5b32b2;
}
.btn-secondary {
  background-color: #6c757d;
  border-color: #6c757d;
}
.btn-secondary:hover {
  background-color: #5a6268;
  border-color: #545b62;
}
.btn-outline-primary {
  color: #7447e1;
  border-color: #7447e1;
}
.btn-outline-primary:hover {
  background-color: #7447e1;
  color: #fff;
}

.form-control {
    border: #7447e1 solid 1px;
    border-radius: 8px;
    background-color: #fdfdfd;
}
.form-control:focus {
    box-shadow: 0 0 0 0.25rem #7547e196 !important;
}

.input-group-text{
    border: #7447e1 solid 1px;
    border-radius: 15px;
}

.card {
    border-radius: 1rem; /* Bordas arredondadas */
    box-shadow: 0 4px 15px rgba(0,0,0,0.1); /* Sombra leve */
    transition: transform 0.3s ease, box-shadow 0.3s ease; /* Animação suave */
    border: none; /* Remove borda padrão */
    overflow: hidden; /* Para sombras e bordas arredondadas funcionarem */
    font-family: 'Nunito', sans-serif; /* Fonte moderna */
}
.card .card-title {
    font-weight: 700; /* Negrito */
    font-size: 1.25rem;
    color: #7447e1; /* Cor da marca */
}
.card .card-text {
    color: #555; /* Texto mais suave */
    font-size: 0.95rem;
}
.card .btn {
    border-radius: 50px;
    padding: 0.5rem 1.5rem;
    font-weight: 600;
    transition: background 0.3s ease, transform 0.3s ease;
}

.offcanvas-end{
    border-top-left-radius: 15px;
    border-bottom-left-radius: 15px;
}

.swal2-styled{
    background-color: #7447e1 !important;
}
.swal2-styled:focus{
    box-shadow: 0 0 0 0.25rem #7547e196 !important;
}

.page-link {
    color: #7447e1 !important;
    border: 1px solid #7447e1 !important;
    padding: 8px 12px;
    margin: 0 3px;
    border-radius: 5px;
    transition: all 0.3s ease-in-out;
    text-decoration: none;
}
.page-link:hover {
    background-color: #9572e6 !important;
    color: white !important;
}
.page-item.active .page-link {
    background-color: #7447e1 !important;
    border-color: #7447e1 !important;
    color: white !important;
    font-weight: bold;
}
.page-item.disabled .page-link {
    color: #bbb !important;
    border-color: #ddd !important;
    background-color: #f8f9fa !important;
    cursor: not-allowed;
}

.form-check-input:checked{
    background-color: #7447e1 !important;
    border-color: #7447e1;
}

.navbar-collapse {
    overflow: visible !important;
}

.modal-content{
    border-radius: 10px;
}

.text-color-primary{
    color: #7447e1 !important;
}

.bg-color-primary{
    background-color: #7447e1 !important;
}

.border-color-primary{
    border: 1px #7447e1 solid !important 
}

::-webkit-scrollbar {
  width: 8px;               /* fino */
  height: 8px;              /* caso seja horizontal */
}
::-webkit-scrollbar-track {
  background: transparent;   /* deixa sem fundo */
}
::-webkit-scrollbar-thumb {
  background: #b0b0b0;       /* cinza suave */
  border-radius: 20px;       /* arredondado */
  border: 2px solid transparent; /* cria um espaço entre trilho e thumb */
  background-clip: padding-box;
  transition: background 0.3s;
}
::-webkit-scrollbar-thumb:hover {
  background: #888;          /* cinza mais forte */
}

/* Firefox */
* {
  scrollbar-width: thin;        /* fino */
  scrollbar-color: #b0b0b0 transparent;
}

.accordion-button:not(.collapsed) {
    background-color: #c4abff !important; /* Cor de fundo quando aberto */
    color: white !important; /* Cor do texto quando aberto */
}

.avatar-destaque {
    border: 3px solid #28a745 !important; /* Verde Bootstrap */
    box-shadow: 0 0 10px rgba(40, 167, 69, 0.6);
}

.cursor-pointer {
    cursor: pointer;
}