.gradient-bg {
    background: linear-gradient(135deg, #1e40af 0%, #3b82f6 50%, #06b6d4 100%);
}
.card-hover:hover {
    transform: translateY(-4px);
    transition: transform 0.3s ease;
}
.menu-button {
    display: inline-block;
    padding: 6px 12px;
    text-decoration: none;
    text-transform: uppercase;
    color: #fff;
    font-weight: bold;
    font-size: 1rem;
    border-radius: 0.5rem;
}
.menu-button:hover {
    background: rgba(0, 0, 0, .5);
}
.btn-home {
    background-color: transparent;
}
.btn-como-funciona {
    background-color: transparent;
}
.btn-blog {
    background-color: transparent;
}
.btn-whatsapp {
    background-color: transparent;
}
.btn-buscar-bolsas {
    background-color: #3b71ca;
    color: #fff;
    box-shadow: 0 4px 9px -4px #386bc0;
}
.btn-buscar-bolsas:hover {
    background-color: #386bc0;
    color: #fff;
    box-shadow: 0 8px 9px -4px rgba(56, 107, 192, 0.3), 0 4px 18px 0 rgba(56, 107, 192, 0.2);
}
.btn-como-funciona-outline {
    background-color: transparent;
    color: #f4f6f9;
    border: 1px solid #e2eaf7;
}
.btn-como-funciona-outline:hover {
    background-color: #f4f6f9;
    color: #294f8d;
    border-color: #d7deeb;
}
.search-button {
    background: linear-gradient(135deg, #1e40af 0%, #06b6d4 100%);
}
.banner-semipresencial {
    background: linear-gradient(135deg, #3b82f6 0%, #8b5cf6 100%);
}
.banner-presencial {
    background: linear-gradient(135deg, #10b981 0%, #3b82f6 100%);
}
.banner-ead {
    background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);
}
.step-card {
    background: linear-gradient(135deg, #1e40af 0%, #06b6d4 100%);
}
.gradient-green {
    background: linear-gradient(to right, #10B981, #34D399);
}
.card-shadow {
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}
.btn-outline-primary {
    border-color: #3b71ca;
    color: #3b71ca;
}
.btn-outline-primary:hover {
    background-color: #f4f6f9;
    color: #294f8d;
    border-color: #d7deeb;
}


.gradient-green-badge {
    background: linear-gradient(to right, #28a745, #20c997); /* Adjusted gradient to match image */
}
.card-shadow {
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}
.btn-outline-primary-custom {
    border-color: #007bff;
    color: #007bff;
}
.btn-outline-primary-custom:hover {
    background-color: #e9ecef;
    color: #0056b3;
    border-color: #0056b3;
}
.text-primary-custom {
    color: #007bff;
}
.text-muted-custom {
    color: #6c757d;
}
.text-strike-through {
    text-decoration: line-through;
}
.logo-proeduka {
    width: 250px; /* Adjust as needed */
    height: auto;
}

.whatsapp-btn {
    transition: all 0.3s ease;
    box-shadow: 0 10px 25px rgba(37, 211, 102, 0.35);
}

.whatsapp-btn:hover {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 15px 30px rgba(37, 211, 102, 0.5);
}

.modal-content {
    animation: modalAppear 0.4s ease-out;
}

@keyframes modalAppear {
    0% {
        opacity: 0;
        transform: translate(-50%, -50%) scale(0.8);
    }
    100% {
        opacity: 1;
        transform: translate(-50%, -50%) scale(1);
    }
}

.input-wp-field:focus {
    border-color: #25D366;
    box-shadow: 0 0 0 3px rgba(37, 211, 102, 0.2);
}

.btn-wp-primary {
    background: linear-gradient(to right, #25D366, #128C7E);
    transition: all 0.3s ease;
}

.btn-wp-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 7px 14px rgba(37, 211, 102, 0.3);
}

.btn-wp-primary:active {
    transform: translateY(1px);
}

.btn-wp-close {
    transition: all 0.2s ease;
}

.btn-wp-close:hover {
    transform: rotate(90deg);
}
.paginator {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 40px 0
}

.paginator a,.paginator span {
    display: inline-block;
    padding: 8px 16px;
    border: 1px solid #ccc;
    border-right: 0;
    color: #555;
    font-weight: var(--weight-bold);
    text-decoration: none;
    transition-duration: 0.2s
}

.paginator a:first-of-type {
    -webkit-border-radius: var(--radius-normal) 0 0 var(--radius-normal);
    -moz-border-radius: var(--radius-normal) 0 0 var(--radius-normal);
    border-radius: var(--radius-normal) 0 0 var(--radius-normal)
}

.paginator a:last-of-type {
    border-right: 1px solid #ccc;
    -webkit-border-radius: 0 var(--radius-normal) var(--radius-normal) 0;
    -moz-border-radius: 0 var(--radius-normal) var(--radius-normal) 0;
    border-radius: 0 var(--radius-normal) var(--radius-normal) 0
}

.paginator a:hover {
    background: linear-gradient(135deg, #1e40af 0%, #06b6d4 100%);
    background-size: 200%;
    color: #FBFBFB
}

.paginator span {
    background: #ccc
}
.not_found {
    text-align: center;
    color: #555
}

.not_found .error {
    font-size: 8em;
    font-weight: var(--weight-light);
    color: #ccc;
    margin-bottom: 40px
}

.not_found_header {
    width: 500px;
    max-width: 100%;
    margin: 0 auto
}

.not_found p a {
    color: var(--color-green);
    text-decoration: none;
    font-weight: var(--weight-bold)
}

.not_found p a:hover {
    text-decoration: underline
}

.not_found_btn {
    display: inline-block;
    margin-top: 60px;
    padding: 20px 40px;
    color: #fff;
    text-decoration: none;
    font-weight: var(--weight-bold)
}
@tailwind base;

@tailwind components;


.select2-container {
    /* The container where the selectbox is housing*/
    @apply relative box-border align-middle inline-block m-0 mb-2;
}
.select2-container .select2-selection--single {
    /* Selection box itself */
    @apply box-border cursor-pointer block select-none shadow border rounded;
}

.select2-container .select2-selection--single .select2-selection__rendered {
    /* DIV inside Selection box with text, clear button and arrow down*/
    @apply block h-6 pl-1 pr-6 truncate;
}
.select2-container .select2-selection--single .select2-selection__clear {
    /* The DIV where the X is housing to clear the chosen option */
    @apply relative -m-1;
}
.select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered {
    /*@apply;*/
}

.select2-container .select2-selection--multiple {
    @apply box-border overflow-hidden h-4 cursor-pointer block select-none;
}

.select2-container .select2-selection--multiple .select2-selection__rendered {
    @apply inline-block pl-2 truncate whitespace-nowrap;
}
.select2-container .select2-search--inline {
    /* Search box*/
    @apply float-left;
}
.select2-container .select2-search--inline .select2-search__field {
    @apply box-border border dark:border-gray-600 pl-1 my-1 w-full text-base;
}
.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button {
    @apply appearance-none;
}

.select2-dropdown {
    /* Dropdown area after the arrow down is clicked */
    @apply absolute block w-auto box-border bg-white dark:bg-slate-700 border-solid border border-gray-200 z-50 float-left;
}

.select2-results {
    @apply block text-black dark:text-gray-300;
}

.select2-results__options {
    @apply list-none m-0 p-0;
}

.select2-results__option {
    /* The rows with results that you see after dropdown.
    Increase p-1 to p-2 to have more space between results */
    @apply p-1 select-none;
}
.select2-results__option[aria-selected] {
    @apply cursor-pointer;
}

.select2-container--open .select2-dropdown {
    /* Dropdown container opened and results are shown*/
    @apply mt-3 left-0;
}

.select2-container--open .select2-dropdown--above {
    /* The left and right borders of the option rows */
    @apply rounded border-gray-400 dark:border-gray-700 shadow;
}

.select2-container--open .select2-dropdown--below {
    /* The left and right borders of the option rows */
    @apply rounded border-gray-400 dark:border-gray-700 shadow;
}

.select2-search--dropdown {
    /* Search dropdown element*/
    @apply block p-2;
}
.select2-search--dropdown .select2-search__field {
    /* Search box itself where you can enter text*/
    @apply h-10 p-1 bg-white dark:bg-slate-500 box-border rounded border-2 border-blue-300 dark:border-gray-700 dark:text-gray-200 outline-none;
    width: 100%;
}
.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
    @apply appearance-none;
}
.select2-search--dropdown.select2-search--hide {
    @apply hidden;
}

.select2-close-mask {
    @apply block w-12 min-w-full m-0 p-0;
    border: 0;
    position: fixed;
    left: 0;
    top: 0;
    min-height: 100%;
    height: auto;
    width: auto;
    opacity: 0;
    z-index: 99;
    background-color: #fff;
    filter: alpha(opacity=0);
}

.select2-hidden-accessible {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    -webkit-clip-path: inset(50%) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important;
    white-space: nowrap !important; }


/*

	Default template settings:

*/

.select2-container--default .select2-selection--single {
    /* Selection bar - Self */
    @apply p-2 h-10 bg-white dark:bg-slate-700 border border-solid dark:border-gray-700;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
    /* Selection bar - Text color of the item you selected from the results */
    @apply text-gray-700 dark:text-gray-200;
}

.select2-container--default .select2-selection--single .select2-selection__clear {
    /* Selection bar - Clear button - If this property is enabled*/
    @apply cursor-pointer float-right text-red-700;
}
.select2-container--default .select2-selection--single .select2-selection__placeholder {
    /* Selection bar - Color of the placeholder text before selection - If this property is enabled */
    @apply text-gray-600 dark:text-gray-300;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
    /* Selection bar - DIV where the arrow pointing down is living*/
    @apply absolute right-0 top-0 h-10 w-8;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b {
    /* Arrow is a CSS triangle that does not exists in Tailwind without a package */
    @apply absolute border-solid h-0 w-0 border-t-4 border-r-4 border-b-0 border-l-4;
    border-color: #000 transparent transparent transparent;
    left: 50%;
    margin-left: -4px;
    margin-top: -2px;
    top: 50%;
}

.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear {
    /* Selection bar - Clear button - If this property is enabled from right to left*/
    @apply float-left ml-4;
}

.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow {
    /* Placement of the dropdown arrow when in rtl mode */
    @apply left-0 right-auto;
}

.select2-container--default.select2-container--disabled .select2-selection--single {
    /* Selection by property disabled*/
    @apply cursor-default bg-gray-300;
}
.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear {
    /* Selection bar - Hide the clear cross when selection bar is disabled*/
    @apply hidden;
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
    border-color: transparent transparent #888 transparent;
    border-width: 0 4px 5px 4px;
}

.select2-container--default .select2-selection--multiple {
    @apply p-1 min-h-full h-full border border-solid dark:border-gray-700 rounded shadow bg-white dark:bg-slate-700;
}

.select2-container--default .select2-selection--multiple .select2-selection__rendered {
    @apply box-border list-none m-0 px-1 min-w-full;
}
.select2-container--default .select2-selection--multiple .select2-selection__rendered li {
    @apply list-none;
}
.select2-container--default .select2-selection--multiple .select2-selection__clear {
    @apply float-right cursor-pointer mt-1 mr-2 p-1;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice {
    @apply bg-white dark:bg-slate-700 text-gray-700 dark:text-gray-200 border cursor-default rounded my-1 mr-1 px-2 float-left;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    @apply text-gray-700 dark:text-gray-200 cursor-pointer inline-block mr-1;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
    @apply text-gray-700 dark:text-gray-200;
}
.select2-container--default.select2-container--focus .select2-selection--multiple {
    @apply border-2 outline-none;
}

.select2-container--default.select2-container--disabled .select2-selection__choice__remove {
    @apply hidden;
}
.select2-container--classic .select2-selection--multiple .select2-selection__choice {
    @apply bg-gray-300 border-2 dark:border-gray-700 shadow rounded float-left cursor-default mt-1 mr-1 px-1;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
    /* The border of the search textbox */
    @apply border-solid;
}

.select2-container--default .select2-search--inline .select2-search__field {
    /* Search textbox */
    @apply border-none bg-transparent outline-none shadow-none select-text;
}

.select2-container--default .select2-results > .select2-results__options {
    /* Hight of the dropdown zone where the options or results are visible */
    @apply h-full max-h-32 overflow-y-auto;
}

.select2-container--default .select2-results__option[role=group] {
    /* No clue what this does */
    @apply p-0;
}

.select2-container--default .select2-results__option[aria-disabled=true] {
    @apply text-gray-700;
}

.select2-container--default .select2-results__option[aria-selected=true] {
    /* The already selected option row color */
    @apply bg-gray-300 dark:text-gray-700;
}
.select2-results__option--selected {
    @apply hidden;
}
.select2-container--default .select2-results__option .select2-results__option {
    padding-left: 1em;
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__group {
    padding-left: 0;
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__option {
    margin-left: -1em;
    padding-left: 2em;
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
    margin-left: -2em;
    padding-left: 3em;
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
    margin-left: -3em;
    padding-left: 4em;
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
    margin-left: -4em;
    padding-left: 5em;
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
    margin-left: -5em;
    padding-left: 6em;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
    /* Background color and text color of the options rows when select is open */
    @apply bg-gray-100 dark:bg-gray-500 text-gray-700 dark:text-gray-200;
}

.select2-container--default .select2-results__group {
    /* Have no idea what this is for */
    @apply cursor-default block;
    padding: 6px; }


@tailwind utilities;

/**


/* Tema CSS padrão para jquery-confirm (baseado em Tailwind CSS) */

/* Container principal do modal */
.jconfirm.jconfirm-my-theme .jconfirm-bg {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 50;
}

/* Painel de rolagem */
.jconfirm.jconfirm-my-theme .jconfirm-scrollpane {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow-y: auto;
    z-index: 50;
}

/* Container da caixa de diálogo */
.jconfirm.jconfirm-my-theme .jconfirm-box {
    position: relative;
    margin-left: auto;
    margin-right: auto;
    margin-top: 2rem;
    margin-bottom: 2rem;
    max-width: 28rem;
    width: 100%;
}

/* Estados de carregamento */
.jconfirm.jconfirm-my-theme .jconfirm-box.loading {
    opacity: 0.5;
}

.jconfirm.jconfirm-my-theme .jconfirm-box.loading:before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(255, 255, 255, 0.75);
    display: flex;
    align-items: center;
    justify-content: center;
    content: "Carregando...";
}

.jconfirm.jconfirm-my-theme .jconfirm-box.loading:after {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 2rem;
    height: 2rem;
    border-width: 4px;
    border-color: #3b82f6;
    border-top-color: transparent;
    border-radius: 9999px;
    animation: spin 1s linear infinite;
    content: "";
}

/* Botão de fechar */
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-closeIcon {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 1.5rem;
    height: 1.5rem;
    color: #9ca3af;
    cursor: pointer;
    transition-property: color;
    transition-duration: 200ms;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-closeIcon:hover {
    color: #4b5563;
}

/* Container do título */
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-title-c {
    background-color: #fff;
    border-top-left-radius: 0.5rem;
    border-top-right-radius: 0.5rem;
    border-bottom-width: 1px;
    border-color: #e5e7eb;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
}

/* Ícone do título */
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-title-c .jconfirm-icon-c {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    margin-right: 0.75rem;
    border-radius: 9999px;
}

/* Texto do título */
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-title-c .jconfirm-title {
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-weight: 600;
    color: #111827;
    display: inline-block;
}

/* Painel de conteúdo */
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-content-pane {
    background-color: #fff;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
}

/* Conteúdo */
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-content {
    color: #374151;
    font-size: 0.875rem;
    line-height: 1.5rem;
}

/* Container dos botões */
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons {
    background-color: #f9fafb;
    border-bottom-left-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
}

/* Botões */
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button {
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    font-size: 0.875rem;
    line-height: 1.25rem;
    font-weight: 500;
    border-radius: 0.375rem;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 200ms;
    outline: 2px solid transparent;
    outline-offset: 2px;
}

.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button:focus {
    box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--tw-ring-color);
}

/* Botão primário (OK, Confirm, etc.) */
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button.btn-primary,
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button[data-key="confirm"] {
    background-color: #2563eb;
    color: #fff;
}

.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button.btn-primary:hover,
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button[data-key="confirm"]:hover {
    background-color: #1d4ed8;
}

.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button.btn-primary:focus,
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button[data-key="confirm"]:focus {
    --tw-ring-color: #3b82f6;
}

/* Botão secundário (Cancel, Close, etc.) */
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button.btn-secondary,
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button[data-key="cancel"] {
    background-color: #d1d5db;
    color: #374151;
}

.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button.btn-secondary:hover,
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button[data-key="cancel"]:hover {
    background-color: #9ca3af;
}

.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button.btn-secondary:focus,
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button[data-key="cancel"]:focus {
    --tw-ring-color: #9ca3af;
}

/* Botão de perigo (Delete, Remove, etc.) */
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button.btn-danger,
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button[data-key="delete"] {
    background-color: #dc2626;
    color: #fff;
}

.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button.btn-danger:hover,
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button[data-key="delete"]:hover {
    background-color: #b91c1c;
}

.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button.btn-danger:focus,
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button[data-key="delete"]:focus {
    --tw-ring-color: #ef4444;
}

/* Botão de sucesso */
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button.btn-success {
    background-color: #16a34a;
    color: #fff;
}

.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button.btn-success:hover {
    background-color: #15803d;
}

.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button.btn-success:focus {
    --tw-ring-color: #22c55e;
}

/* Botão de aviso */
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button.btn-warning {
    background-color: #eab308;
    color: #fff;
}

.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button.btn-warning:hover {
    background-color: #ca8a04;
}

.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button.btn-warning:focus {
    --tw-ring-color: #facc15;
}

/* Botão de informação */
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button.btn-info {
    background-color: #0891b2;
    color: #fff;
}

.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button.btn-info:hover {
    background-color: #0e7490;
}

.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button.btn-info:focus {
    --tw-ring-color: #06b6d4;
}

/* Estilos para diferentes tipos de ícones */
.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-title-c .jconfirm-icon-c.jconfirm-type-default {
    background-color: #dbeafe;
    color: #2563eb;
}

.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-title-c .jconfirm-icon-c.jconfirm-type-success {
    background-color: #dcfce7;
    color: #16a34a;
}

.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-title-c .jconfirm-icon-c.jconfirm-type-warning {
    background-color: #fef9c3;
    color: #eab308;
}

.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-title-c .jconfirm-icon-c.jconfirm-type-danger {
    background-color: #fee2e2;
    color: #dc2626;
}

.jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-title-c .jconfirm-icon-c.jconfirm-type-info {
    background-color: #cfecf2;
    color: #0891b2;
}

/* Responsividade para dispositivos móveis */
@media (max-width: 640px) {
    .jconfirm.jconfirm-my-theme .jconfirm-box {
        margin-left: 1rem;
        margin-right: 1rem;
        margin-top: 1rem;
        margin-bottom: 1rem;
        max-width: none;
    }

    .jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons {
        flex-direction: column;
        gap: 0;
        row-gap: 0.5rem;
    }

    .jconfirm.jconfirm-my-theme .jconfirm-box .jconfirm-buttons button {
        width: 100%;
    }
}

/* Animações de entrada e saída */
.jconfirm.jconfirm-my-theme.jconfirm-open .jconfirm-bg {
    animation: jconfirm-fadeIn 0.3s ease-out;
}

.jconfirm.jconfirm-my-theme.jconfirm-open .jconfirm-box {
    animation: jconfirm-slideInDown 0.3s ease-out;
}

.jconfirm.jconfirm-my-theme.jconfirm-close .jconfirm-bg {
    animation: jconfirm-fadeOut 0.3s ease-in;
}

.jconfirm.jconfirm-my-theme.jconfirm-close .jconfirm-box {
    animation: jconfirm-slideOutUp 0.3s ease-in;
}

@keyframes jconfirm-fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes jconfirm-fadeOut {
    from { opacity: 1; }
    to { opacity: 0; }
}

@keyframes jconfirm-slideInDown {
    from {
        transform: translateY(-50px);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

@keyframes jconfirm-slideOutUp {
    from {
        transform: translateY(0);
        opacity: 1;
    }
    to {
        transform: translateY(-50px);
        opacity: 0;
    }
}

@keyframes spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.jc-bs3-container{
    margin-left: auto;
    margin-right: auto;
}
/* Custom styles for the gradient button, as Tailwind doesn\'t have direct gradient classes for background */
.gradient-green {
    background-image: linear-gradient(to right, #10B981, #059669);
}
.gradient-green:hover {
    background-image: linear-gradient(to right, #059669, #10B981);
}
/* Custom styles for the radio button group */
.btn-check:checked + .btn-outline-primary {
    background-color: #3B82F6;
    color: white;
    border-color: #3B82F6;
}
.btn-outline-primary {
    border: 1px solid #3B82F6;
    color: #3B82F6;
    padding: 0.75rem 1.5rem;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
}
.btn-outline-primary:hover {
    background-color: #DBEAFE;
}
.btn-group > label:first-child {
    border-top-left-radius: 0.5rem;
    border-bottom-left-radius: 0.5rem;
}
.btn-group > label:last-child {
    border-top-right-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
}
.btn-group > label {
    flex-grow: 1;
}
.alert-secondary {
    background-color: #E2E8F0;
    color: #4A5568;
    padding: 1rem;
    border-radius: 0.5rem;
    margin-bottom: 1rem;
}
.note-danger {
    background-color: #FEE2E2;
    color: #DC2626;
    padding: 1rem;
    border-radius: 0.5rem;
    margin-top: 1rem;
}
/* Ajuste específico para o reCAPTCHA */
.g-recaptcha {
    transform: scale(0.85);
    transform-origin: left top;
    margin-bottom: -10px;
}

/* Para garantir que o iframe do reCAPTCHA não ultrapasse os limites */
.g-recaptcha iframe {
    max-width: 100%;
    width: 100% !important;
}

/* Ajuste responsivo para telas menores */
@media (max-width: 640px) {
    .g-recaptcha {
        transform: scale(0.85);
        margin-bottom: -15px;
    }
}
