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

body {
    min-height: 100vh;
    min-height: 100dvh;
    overscroll-behavior-y: contain;
}

.lyear-aside-toggler {
    min-width: 44px;
    min-height: 44px;
    padding: 12px;
}

.lyear-layout-content,
.lyear-layout-content #iframe-content,
.container-fluid,
.card,
.card-body {
    min-width: 0;
}

.table-responsive {
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

@media (max-width: 767px) {
    .login-center {
        box-sizing: border-box;
        width: calc(100% - 24px);
        min-width: 0 !important;
        max-width: 29.25rem;
        margin: 12px;
        padding: 24px 20px;
    }

    .login-center .login-header img {
        max-width: 100% !important;
        height: auto;
    }

    .lyear-layout-header {
        top: env(safe-area-inset-top);
    }

    .lyear-layout-header .navbar,
    .topbar {
        min-height: 56px;
    }

    .topbar {
        padding-right: max(12px, env(safe-area-inset-right));
        padding-left: max(8px, env(safe-area-inset-left));
    }

    .topbar .topbar-left {
        min-width: 0;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .lyear-layout-sidebar {
        top: env(safe-area-inset-top);
        bottom: env(safe-area-inset-bottom);
        width: min(280px, 85vw);
    }

    .lyear-layout-sidebar-close .lyear-layout-sidebar {
        width: min(280px, 85vw);
    }

    .lyear-layout-sidebar-scroll {
        height: calc(100% - 56px);
    }

    .lyear-layout-content {
        box-sizing: border-box;
        height: 100vh;
        height: 100dvh;
        padding-top: calc(56px + env(safe-area-inset-top));
        padding-right: env(safe-area-inset-right);
        padding-bottom: env(safe-area-inset-bottom);
        padding-left: env(safe-area-inset-left);
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }

    .lyear-layout-content #iframe-content {
        height: 100%;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }

    #iframe-content iframe {
        max-width: 100%;
    }

    .container-fluid {
        padding-right: 12px;
        padding-left: 12px;
    }

    .card-body {
        padding: 16px;
    }

    .form-control,
    .btn,
    .select2-container .select2-selection {
        min-height: 44px;
    }

    .form-control {
        height: auto;
    }

    .nav-tabs {
        display: flex;
        max-width: 100%;
        overflow-x: auto;
        overflow-y: hidden;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
    }

    .nav-tabs > li {
        float: none;
        flex: 0 0 auto;
    }

    .dropdown-menu {
        max-width: calc(100vw - 24px);
    }
}
