    /* same modal CSS */
    .modal.fade .modal-dialog.modal-fullscreen-custom,
    .modal.show .modal-dialog.modal-fullscreen-custom,
    .modal.in .modal-dialog.modal-fullscreen-custom {
        width: 98% !important;
        max-width: 98% !important;
        margin: 4px auto !important;
        box-sizing: border-box !important;
    }

    .modal-fullscreen-custom .modal-content {
        height: 100% !important;
        display: flex;
        flex-direction: column;
        border-radius: .4rem !important;
        overflow: hidden !important;
    }

    .modal-fullscreen-custom .modal-body {
        padding: 1rem !important;
        overflow-y: auto !important;
        max-height: calc(100vh - 60px) !important;
    }

    .modal.modal-fullscreen-custom {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
    }

    .invalid-feedback {
        display: none;
        color: #dc3545;
        font-size: 0.85rem;
        margin-top: 4px;
    }

    /* FIX MODAL KETUTUP NAVBAR DI MOBILE */
    @media (max-width: 768px) {
        .modal-dialog {
            margin-top: 86px;
            /* tinggi navbar */
        }
    }

    @media (max-width: 768px) {
        .modal-header {
            position: sticky;
            top: 0;
            background: #fff;
            z-index: 1055;
            border-bottom: 1px solid #ddd;
        }
    }

    @media (max-width: 768px) {
        .modal-footer {
            position: sticky;
            bottom: 0;
            margin-bottom: 30px;
            background: #fff;
            z-index: 1055;
            border-top: 1px solid #ddd;
        }
    }