/* Shared layout safeguards for the four ATC interfaces. Financial tables retain
   their columns and scroll inside their own panel on narrow screens. */
.atc-admin .bodywrapper__inner,
.atc-agent .agent-dashboard__body,
.atc-basic .container,
.atc-modern main {
    min-width: 0;
}

/* The shared legacy stylesheet assigns an icon font to every text input. */
.atc-admin input.form-control,
.atc-admin input.form--control,
.atc-agent input.form-control,
.atc-agent input.form--control,
.atc-basic input.form-control,
.atc-basic input.form--control {
    font-family: inherit;
    line-height: 1.5;
}

.atc-admin .row > [class*="col-"],
.atc-agent .row > [class*="col-"],
.atc-basic .row > [class*="col-"] {
    min-width: 0;
}

.atc-admin .table-responsive,
.atc-agent .table-responsive,
.atc-basic .table-responsive,
.atc-modern .overflow-x-auto {
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
}

.atc-admin .card,
.atc-agent .card,
.atc-basic .card,
.atc-modern .modal-dialog {
    min-width: 0;
}

.atc-admin .el-dialog__wrapper,
.atc-admin .modal,
.atc-agent .modal,
.atc-basic .modal,
.atc-modern .modal {
    overflow-y: auto;
}

.atc-modern main {
    overflow-x: auto;
}

.atc-modern .flex-1 {
    min-width: 0;
}

.atc-admin .el-dialog.payroll-dialog {
    width: min(760px, calc(100vw - 32px)) !important;
}

.atc-admin .payroll-dialog .el-dialog__footer > span {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.atc-admin .payroll-dialog .el-dialog__footer .el-button + .el-button {
    margin-left: 0;
}

@media (max-width: 991.98px) {
    .atc-admin .body-wrapper {
        padding: 20px;
        overflow-x: auto;
    }

    .atc-agent .agent-dashboard__body {
        overflow-x: auto;
    }

    .atc-admin .breadcrumb-plugins,
    .atc-admin .breadcrumb-plugins > *,
    .atc-admin .breadcrumb-plugins form,
    .atc-agent .agent-dashboard__body > * {
        max-width: 100%;
    }

    .atc-admin .el-dialog {
        width: min(760px, calc(100vw - 32px)) !important;
        max-width: calc(100vw - 32px);
        margin: 16px auto !important;
    }

    .atc-admin .el-dialog__body {
        max-height: calc(100dvh - 170px);
        overflow-y: auto;
        overflow-x: auto;
    }

    .atc-admin .el-popover {
        max-width: calc(100vw - 32px);
        overflow-wrap: anywhere;
    }

    .atc-basic .kyc-details > .col,
    .atc-modern .kyc-details > .col {
        min-width: 0;
        overflow-x: auto;
        overflow-wrap: anywhere;
    }

    .atc-admin .modal-dialog,
    .atc-agent .modal-dialog,
    .atc-basic .modal-dialog,
    .atc-modern .modal-dialog {
        max-width: calc(100vw - 32px);
    }

    .atc-modern main {
        padding: 16px;
    }
}

@media (max-width: 767.98px) {
    .atc-admin .body-wrapper {
        padding: 12px;
    }

    .atc-admin .navbar-wrapper {
        padding: 10px 12px;
    }

    .atc-admin .navbar__action-list {
        gap: 8px;
    }

    .atc-admin .navbar-user__info {
        display: none;
    }

    .atc-admin .dropdown-menu--md,
    .atc-admin .dropdown-menu--sm,
    .atc-agent .dropdown-menu {
        max-width: calc(100vw - 24px);
    }

    .atc-admin .bodywrapper__inner > .d-flex:first-child,
    .atc-admin .breadcrumb-plugins {
        width: 100%;
        justify-content: flex-start !important;
    }

    .atc-admin .breadcrumb-plugins > *,
    .atc-admin .breadcrumb-plugins form,
    .atc-admin .breadcrumb-plugins .input-group {
        min-width: 0;
        width: 100%;
    }

    .atc-admin .breadcrumb-plugins .btn {
        white-space: normal;
    }

    .atc-admin .el-dialog {
        width: calc(100vw - 24px) !important;
        max-width: calc(100vw - 24px);
        margin: 12px auto !important;
    }

    .atc-admin .el-dialog__header {
        padding: 16px 40px 8px 16px;
    }

    .atc-admin .el-dialog__body {
        padding: 14px 16px;
        max-height: calc(100dvh - 145px);
    }

    .atc-admin .el-dialog__footer {
        padding: 10px 16px 16px;
    }

    .atc-admin .el-dialog .el-col-12 {
        width: 100%;
    }

    .atc-admin .el-dialog .el-select,
    .atc-admin .el-dialog .el-date-editor,
    .atc-admin .el-dialog .el-input,
    .atc-admin .el-dialog .el-input-number {
        max-width: 100%;
    }

    .atc-admin .el-dialog .row > .el-form-item {
        margin-left: 0;
        margin-right: 0;
    }

    .atc-admin .el-tabs__content,
    .atc-admin .el-tab-pane {
        min-width: 0;
    }

    .atc-admin .el-tabs--border-card > .el-tabs__content {
        padding: 12px;
    }

    .atc-admin .el-table,
    .atc-admin .el-table__body-wrapper,
    .atc-admin .el-table__header-wrapper {
        max-width: 100%;
    }

    .atc-admin .el-table__body-wrapper {
        -webkit-overflow-scrolling: touch;
    }

    .atc-admin .modal-dialog,
    .atc-agent .modal-dialog,
    .atc-basic .modal-dialog,
    .atc-modern .modal-dialog {
        margin: 12px auto;
    }

    .atc-admin .modal-body,
    .atc-agent .modal-body,
    .atc-basic .modal-body,
    .atc-modern .modal-body {
        max-height: calc(100dvh - 130px);
        overflow-y: auto;
    }

    .atc-agent .agent-dashboard__body {
        margin-left: 12px;
        padding-right: 12px;
    }

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

    .atc-modern main {
        padding: 12px;
    }

    .atc-modern main > * {
        min-width: 0;
    }
}
