.table-responsive,
.table-scroll-wrapper {
    -webkit-overflow-scrolling: touch;
}

.dt-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.navbar-brand {
    max-width: 60vw;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (max-width: 991.98px) {
    .navbar-brand {
        max-width: 50vw;
    }
}

@media (max-width: 767.98px) {
    .content-header {
        padding: 10px 0.5rem;
    }

    .content .container-fluid {
        padding-left: 0.5rem;
        padding-right: 0.5rem;
    }

    .card-header .card-title {
        font-size: 1.05rem;
    }

    .card-header > .row > [class*="col-"] {
        flex: 0 0 100%;
        max-width: 100%;
        text-align: left !important;
        margin-bottom: 0.35rem;
    }

    .card-header .btn,
    .card-header .btn-sm {
        margin-bottom: 0.25rem;
    }

    .btn-app {
        min-width: auto;
        height: auto;
        padding: 0.35rem 0.6rem;
        font-size: 0.8rem;
        line-height: 1.3;
        margin: 2px;
        border-radius: 0.25rem;
    }

    .btn-app > .fa,
    .btn-app > .fas,
    .btn-app > .far {
        font-size: 0.9rem;
        display: inline-block;
        margin-right: 0.25rem;
    }

    table th[style*="width"],
    table th[width],
    table td[width] {
        width: auto !important;
        min-width: 0 !important;
    }

    .table td .btn-sm,
    .table td .btn-group-sm > .btn {
        min-height: 32px;
    }

    .btn-group:not(.btn-group-vertical) {
        flex-wrap: wrap;
    }

    .btn-group:not(.btn-group-vertical) > .btn {
        flex: 1 1 45%;
        border-radius: 0.2rem !important;
        margin: 1px;
    }

    .dataTables_wrapper .dt-buttons {
        float: none;
        width: 100%;
        margin-bottom: 0.5rem;
    }

    .dataTables_wrapper .dt-buttons .btn {
        flex: 1 1 auto;
    }

    .dataTables_wrapper .dataTables_filter,
    .dataTables_wrapper .dataTables_length,
    .dataTables_wrapper .dataTables_info,
    .dataTables_wrapper .dataTables_paginate {
        float: none !important;
        text-align: center !important;
        width: 100%;
        margin-bottom: 0.4rem;
    }

    .dataTables_wrapper .dataTables_filter label {
        width: 100%;
        display: flex;
        align-items: center;
    }

    .dataTables_wrapper .dataTables_filter input {
        flex: 1 1 auto;
        width: auto;
        margin-left: 0.5rem;
    }

    #tablo_filter * {
        float: none !important;
    }

    .dataTables_wrapper .dataTables_paginate .pagination {
        justify-content: center;
        flex-wrap: wrap;
    }

    .dataTables_scrollHeadInner,
    .dataTables_scrollHeadInner table {
        width: 100% !important;
    }

    .modal-dialog {
        margin: 0.5rem;
    }

    .modal-lg,
    .modal-xl {
        max-width: calc(100% - 1rem);
    }

    .modal-body {
        max-height: calc(100vh - 8rem);
        overflow-y: auto;
        padding: 0.75rem;
    }

    .modal-footer {
        flex-wrap: wrap;
    }

    .modal-footer .btn {
        margin: 0.15rem;
    }

    .filter-card .row > [class*="col-md"],
    .filter-card .row > [class*="col-lg"] {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .filter-buttons {
        flex-wrap: wrap;
        justify-content: flex-start !important;
    }

    .filter-buttons .btn {
        flex: 1 1 100%;
        margin-bottom: 0.25rem;
    }

    .form-inline {
        flex-flow: column;
        align-items: stretch;
    }

    .form-inline .form-control,
    .form-inline .select2-container {
        width: 100% !important;
    }

    .summary-card {
        padding: 10px;
    }

    .select2-container {
        width: 100% !important;
    }

    .display-4 {
        font-size: 1.75rem;
    }

    h1.m-0,
    .content-header h1 {
        font-size: 1.4rem;
    }

    .input-group.mobil-dikey > .form-control,
    .input-group.mobil-dikey > .input-group-prepend,
    .input-group.mobil-dikey > .input-group-append {
        flex: 0 0 100%;
        width: 100%;
        border-radius: 0.25rem !important;
        margin-bottom: 0.25rem;
    }

    .info-box .info-box-number {
        font-size: 1rem;
    }

    .swal2-popup {
        width: 92vw !important;
        max-width: 92vw !important;
    }
}

@media (max-width: 575.98px) {
    .btn-group:not(.btn-group-vertical) > .btn {
        flex: 1 1 100%;
    }

    .card-header .btn {
        width: 100%;
        margin-left: 0 !important;
    }

    .table td .d-flex.flex-wrap .btn {
        flex: 1 1 auto;
    }

    .modal-dialog {
        margin: 0.25rem;
    }

    .modal-lg,
    .modal-xl {
        max-width: calc(100% - 0.5rem);
    }
}
