/**
 * SIGAU — compatibilidade de toque no Safari iOS (iPhone 14/15+ e similares).
 * Complementa o login (background scroll, etc.) em todo o sistema.
 *
 * - touch-action: manipulation — reduz atraso e conflitos com gestos de zoom;
 * - alvos mínimos com pointer: coarse (diretriz ~44px);
 * - camadas wrapper/conteúdo — evita fantasmas de clique com layout-fixed;
 * - não altera desktop com rato fino (pointer: fine).
 */

html {
    -webkit-text-size-adjust: 100%;
}

/* Altura visível real no iOS (barras do sistema) */
@supports (-webkit-touch-callout: none) {
    html {
        min-height: 100%;
        min-height: -webkit-fill-available;
    }
    body {
        min-height: 100%;
        min-height: -webkit-fill-available;
    }
}

button,
[type="button"],
[type="submit"],
[type="reset"],
.btn,
a.btn,
.nav-link[role="button"],
a[data-widget],
button[data-widget],
.main-header a[data-widget],
input[type="submit"],
input[type="button"],
label.btn,
.form-check-input {
    touch-action: manipulation;
    cursor: pointer;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0.12);
}

.dropdown-item,
.list-group-item-action,
.page-link {
    touch-action: manipulation;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0.1);
}

/* Alvos de toque maiores só quando o dispositivo é touch-first */
@media (pointer: coarse) {
    .btn:not(.btn-tool):not(.close):not(.dropdown-toggle-split) {
        min-height: 44px;
        align-items: center;
        display: inline-flex;
        justify-content: center;
    }
    .btn-sm:not(.btn-tool):not(.close) {
        min-height: 40px;
    }
    .btn-group:not(.btn-group-vertical) > .btn {
        min-height: 44px;
    }
    .main-header .nav-link {
        min-height: 44px;
        display: inline-flex;
        align-items: center;
    }
    .sidebar .nav-link,
    .main-sidebar .nav-link {
        min-height: 44px;
        display: flex;
        align-items: center;
    }
    .dropdown-item {
        min-height: 44px;
        display: flex;
        align-items: center;
    }
    .page-link {
        min-height: 44px;
        min-width: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
    .custom-file-label {
        min-height: 44px;
        display: flex;
        align-items: center;
    }
}

/*
 * NÃO definir z-index em .wrapper / .content-wrapper: isso cria um stacking context
 * e o .modal-backdrop do Bootstrap (filho direto de body, z-index 1040) fica POR CIMA
 * de todo o .wrapper — incluindo o .modal — deixando a tela escura e os botões sem clique.
 */
.wrapper,
.content-wrapper {
    z-index: auto;
}

/* Bootstrap modal: ordem explícita acima da navbar AdminLTE (~1037) */
.modal-backdrop {
    z-index: 1040;
}

.modal {
    z-index: 1050;
    -webkit-overflow-scrolling: touch;
}

.modal-dialog {
    pointer-events: none;
}

.modal-content {
    pointer-events: auto;
}

/* SweetAlert2 acima de modais Bootstrap quando ambos usados na mesma página */
.swal2-container {
    z-index: 20000;
}
