/* assets/css/mobile_scroll_fix.css */
/* v30: scroll móvil global en todas las páginas, formularios, vistas y secciones, sin barras visibles. */

html,
body {
    width: 100% !important;
    min-height: 100% !important;
    height: auto !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-y !important;
    overscroll-behavior-y: auto !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

html::-webkit-scrollbar,
body::-webkit-scrollbar,
*::-webkit-scrollbar {
    display: none !important;
}

body.login-body {
    display: block !important;
    min-height: 100dvh !important;
    height: auto !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    touch-action: pan-y !important;
    -webkit-overflow-scrolling: touch !important;
}

.app-shell,
.gestion-shell,
.login-page,
.access-wizard-page {
    min-height: 100dvh !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
}

.login-page,
.access-wizard-page {
    display: block !important;
    padding: 18px !important;
    padding-bottom: calc(36px + env(safe-area-inset-bottom)) !important;
}

.login-card,
.access-wizard-card {
    max-height: none !important;
    overflow: visible !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.main-content,
.gestion-main {
    min-height: auto !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

.side-menu-card,
.section-submenu,
.gestion-section-submenu,
.gestion-web-table-wrap,
.competition-filter-panel,
.element-grid,
.privilege-grid {
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

.section-submenu,
.gestion-section-submenu {
    overflow-x: auto !important;
    overflow-y: hidden !important;
}

.gestion-web-table-wrap {
    overflow-x: auto !important;
    overflow-y: hidden !important;
}

.portal-publico-link,
.portal-publico-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    min-height: 44px !important;
    margin-top: 14px !important;
    color: #006B35 !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

.federation-static-card {
    cursor: default;
}

@media (max-width: 640px) {
    .login-page,
    .access-wizard-page {
        padding: 12px !important;
        padding-bottom: calc(40px + env(safe-area-inset-bottom)) !important;
    }

    .login-card,
    .access-wizard-card {
        width: 100% !important;
        border-radius: 24px !important;
    }

    .gestion-main,
    .main-content {
        padding-bottom: calc(34px + env(safe-area-inset-bottom)) !important;
    }
}
