
.position_relative{
    position: relative;
}
.select_icon{
    position: absolute;
    top: 55%;
    right: 10px;
}
.field-icon{
    position: absolute;
    top: 60%;
    right: 10px;
}
abbr[title="(required)"] {
    color: red;
  }
.document-history {
    font-weight: bold;
}

/* Fix for dropdown overlap in deals table (Bank Deals) */
.deals_custom_table .table tbody tr td:first-child {
    position: relative;
    overflow: visible;
}

.deals_custom_table .table tbody tr td:first-child .dropdown {
    position: relative;
}

.deals_custom_table .table tbody tr td:first-child .dropdown-menu {
    position: absolute;
    z-index: 1050;
    transform: translate3d(0px, 0px, 0px) !important;
}

.deals_custom_table .table tbody tr td:first-child .dropdown-menu.show {
    left: auto !important;
    right: auto !important;
    top: 100% !important;
    transform: none !important;
}

.deals_custom_table {
    /* overflow: visible !important; */
}

.deals_custom_table .table-responsive {
    /* overflow: visible !important; */
}

/* Fix for dropdown overlap in subscriber deals table */
.table tbody tr td .d-flex.align-items-center {
    position: relative;
}

.table tbody tr td .d-flex.align-items-center .dropdown {
    position: relative;
}

.table tbody tr td .d-flex.align-items-center .dropdown-menu {
    position: absolute !important;
    z-index: 1050;
    min-width: 150px;
    left: auto !important;
    right: 0 !important;
    top: 100% !important;
    transform: none !important;
    margin-top: 2px;
}

/* Ensure parent td has visible overflow for dropdown */
.table tbody tr td:nth-child(2) {
    position: relative;
    overflow: visible !important;
}

/* Fix overflow for table-responsive container */
.simple-pill .table-responsive {
    /* overflow: visible !important; */
}
.table > tbody > tr:last-child > td .dropdown:not(.custom-dropdown-icon):not(.custom-dropdown) .dropdown-menu, .table > tbody > tr:nth-last-child(2) > td .dropdown:not(.custom-dropdown-icon):not(.custom-dropdown) .dropdown-menu, .table > tbody > tr:nth-last-child(3) > td .dropdown:not(.custom-dropdown-icon):not(.custom-dropdown) .dropdown-menu {
    right: auto !important;
    left: auto;
}
a.apply-here.text-primary {
    display: inline-block;
    margin-top: 20px;
    text-decoration: underline;
    margin-right: 10px;
}
.document-history.mb-2.text-center{
    display: none;
}
.mobile-light-logo{
    display: none;
}
.display-logo-for-mobile{
    display: none;
}
/* =========== responsiveness start ============ */
@media (max-width: 480px) {
    .col-lg-6 .user_details_view.deals_view_details .user-details-scroll{
        height: auto;
    }
    .display-logo-for-mobile{
        display: block !important;
        padding: 15px 0 0 !important;
    }
    .email-history-logo{
        width: 100% !important;
    }
    .header.header.navbar.navbar-expand-sm .nav-logo{
        display: none !important;
    }
    .col-lg-6.p-0 {
        padding: 0 13px !important;
        margin: 20px 0;
    }
    .drp-buttons {
        display: flex !important;
        align-items: center;
    }
    .daterangepicker .drp-buttons .btn {
        font-weight: normal !important;
        padding: 4px !important;
        margin-left: 4px !important;
        width: 50px;
    }
    .daterangepicker .drp-buttons .btn.cancelBtn{
        margin-left: 0 !important;
    }
    .daterangepicker .drp-buttons{
        text-align: left !important;
    }
    .integrity_logo_holder img{
        width: 100% !important;
    }
    .input-group.mb-3.date-picker input {
        font-size: 12px;
        padding: 10px 4px;
    }
    .m-t-mobile{
        margin-top: 15px;
    }
    .m-b-mobile{
        margin-bottom: 15px;
    }
    nav.breadcrumb-style-one.d-flex.justify-content-between.align-items-center {
        display: block !important;
    }
    .documents_name{
        /* white-space: nowrap;  */
        width: 100%; 
        /* overflow: hidden;
        text-overflow: ellipsis; */
        display: inline-block;
        word-break: break-word;
        font-weight: bold;
        color:#000;
    }
    body.dark .documents_name{
        color: #e0e6ed;
    }
    /* .accordion .card-header section > div{
        display: flex !important;
    } */
    .col-lg-7.p-0 {
        padding: 0 13px !important;
        margin: 20px 0;
    }
    .layout-top-spacing {
        margin-top: 20px;
    }
    .breadcrumb-item+.breadcrumb-item::before{
        display: none;
    }
    .page-meta .breadcrumb .breadcrumb-item{
        font-size: 14px;
    }
    .text-center-mobile{
        text-align: center;
    }
    .modal-header.d-flex.justify-content-between.align-items-center {
        display: block !important;
    }
    .modal-header.d-flex.justify-content-between.align-items-center .d-flex{
        display: block !important;
    }
    .d-flex.flex-wrap.align-items-center.justify-content-between {
        display: block !important;
    }
    .d-flex.flex-wrap.align-items-center.justify-content-between a {
        display: block !important;
        margin-right: 0 !important;
        margin-bottom: 20px;
    }
    .form-control{
        padding: 10px;
        font-size: 12px;
    }
    .form-select{
        padding: 10px;
        font-size: 12px; 
    }
    input#filter {
        margin-right: 0 !important;
    }
    .ui-sortable-handle .custom-heading {
        background-color: #fff;
        color: #3AA2DF;
        display: inline-block;
        margin-top: 20px;
    }
    .tabs_scroll.wrapper{
        overflow: scroll;
        overflow-y: hidden;
    }
    /* .ps__rail-y {
        height: 300px !important;
    } */
    .tabs_scroll .list{
        min-width: 1200px;
    }
    .switch.mt-3.form-switch-custom.switch-inline.form-switch-primary.form-switch-custom.inner-text-toggle{
        margin-right: 0;
    }
    .general-info .info label{
        font-size: 12px;
    }
    .scroller-right {
        display: none !important;
    }
    .scroller-left {
        display: none !important;
    }
    li.menu.documents_types {
        padding-bottom: 50px;
    }
    #sidebar ul.menu-categories.ps {
        height: 380px !important;
        overflow: scroll !important;
    }
    .hide-for-mobile{
        display: none;
    }
    .hide-for-desktop{
       display: inline-block; 
    }
    header.header.navbar.navbar-expand-sm.expand-header .hide-for-desktop{
        display: none !important;
    }
    .mobile-light-logo{
        display: inline-block;
    }
    .upload-documents-holder input{
        width:100%;
        margin-bottom: 30px;
    }
    .accordion .card-header section > div .icons{
        top: 70px !important;
        right: 10px !important;
        padding: 0 !important;
    }
    .badge-light-danger, .badge-light-success{
        top: 4px;
        display: block;
        margin-top: 5px;
        text-align: center;
    }
    /* .accordion .card-header section > div.collapsed .icons{
        padding:0;
        visibility: hidden;
    }
    .collapse.show .accordion .card-header section > div .icons{
        visibility: visible;
    } */
    .accordion .card-header section > div .icons svg{
        display: none;
    }
    .stop_btn_action{
        margin-right:  0 !important;
    }
    input[type=file]::file-selector-button{
        padding: 0.5em 1em ;
    }
    .accordion .card-header section > div .icons{
        position: inherit !important;
    }
    .dataTables_wrapper .dataTables_length select.form-control{
        padding: 7px 7px 7px 7px !important;
    }
    div.dataTables_wrapper div.dataTables_length select {
        width: 75px !important;
    }
    .page-meta.container-xxl.p-0.mobile-view-btns.d-flex {
        display: block !important;
    }
    a.btn.m-t-mobile.btn-primary._effect--ripple.waves-effect.waves-light,
    button.btn.m-t-mobile.btn-primary._effect--ripple.waves-effect.waves-light {
        width: 100%;
        margin-bottom: 10px;
        margin-left: 0 !important;
        margin-right: 0 !important;
        font-size: 14px;
        padding: 10px 15px;
        justify-content: center;
        display: flex !important;
        align-items: center;
    }
    a.btn.m-t-mobile.btn-primary._effect--ripple.waves-effect.waves-light svg,
    button.btn.m-t-mobile.btn-primary._effect--ripple.waves-effect.waves-light svg {
        display: inline-block !important;
        width: 18px;
        height: 18px;
        margin-right: 5px;
    }
    .mobile-view-btns .col-lg-6.col-md-6.col-sm-12.col-xs-12 {
        width: 100%;
    }
    .mobile-view-btns .col-lg-6.col-md-6.col-sm-12.col-xs-12.d-flex {
        flex-direction: column;
    }
    .mobile-view-btns .col-lg-9.col-md-9.col-sm-12.col-xs-12 {
        width: 100%;
    }
    .mobile-view-btns .col-lg-9.col-md-9.col-sm-12.col-xs-12.d-flex {
        flex-direction: column;
    }
    .mobile-view-btns .col-lg-3.col-md-3.col-sm-12.col-xs-12 {
        width: 100%;
        margin-bottom: 15px;
    }
    .sidebar-closed > .sidebar-wrapper:hover section{
        position: inherit;
        bottom: 0;
        width: 0;
        height: 0;
        top: auto;
        left: auto;
        margin: 0;
    }
    .sidebar-closed .sidebar-wrapper nav + .msger{
        position: inherit;
        display: none;
    }
    .modal.feedback-modal-popup{
        position: fixed;
        left: 0;
        top: 0;
        right: auto;
        bottom: auto;
        height: 100%;
        width: 100%;
    }
    .download-our-app-btn{
        top:72px;
    }
    .download-our-app-btn-toggle-container{
        display: inline-block;
    }
    .download-our-app-btn{
        display: block; 
    }
    div#quickAccessDropdown{
        min-width: auto !important;
        grid-template-columns: inherit !important;
    }
    .quick-access-item{
        flex-direction: inherit;
    }
    .quick-access-item{
        height: auto !important;
        width: auto !important;
        /* display: block !important; */
        text-align: center !important;
    }
    .stat-icon{
        margin: 0 !important;
    }
    .main-container.sbar-closed .sidebar-wrapper nav + .msger {
        width: 0;
        opacity: 0;
    }
    .sidebar-wrapper nav + .msger{
        width: 0;
        opacity: 0;
    }
    .sbar-open .sidebar-wrapper nav + .msger {
        width: 237px;
        opacity: 1;
    }
    .navbar.navbar-expand-sm .navbar-item .nav-item{
        margin-left: 10px;
    }
    div#formModal{
        z-index: 1111;
    }
}

/* =========== iPad Portrait Responsiveness (768px - 1024px) ============ */
@media (min-width: 481px) and (max-width: 1024px) {
    .header-container{
        margin-top: 0;
    }
    .progress-container.completed .progress-bar-wrapper{
        height: 50px !important;
    }
    .btn {
        padding: 0.4375rem 1rem;
    }
    .col-lg-6.col-md-6.col-sm-12.col-xs-12.d-flex.align-items-center.justify-content-end .m-t-mobile  {
        margin-top: 0 !important;
    }
    #assignDocuments .modal-dialog {
        max-width: max-content;
        margin-right: 10px;
        margin-left: 10px;
    }
    /* Header Alignment Fixes for iPad */
    header.header.navbar {
        /* padding: 10px 15px !important; */
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        flex-wrap: nowrap !important;
    }
    header.header .navbar-item {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        flex-wrap: wrap !important;
    }
    header.header .navbar-item .nav-item {
        margin-left: 8px !important;
        margin-right: 0 !important;
    }
    header.header .navbar-item .btn {
        padding: 8px 12px !important;
        font-size: 13px !important;
        white-space: nowrap !important;
        margin: 4px !important;
    }
    header.header .sidebarCollapse {
        padding: 8px !important;
        margin-right: 10px !important;
    }
    header.header .navbar-item.navbar-dropdown {
        margin-left: auto !important;
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
    }
    /* Stop Impersonation Button */
    .stop_btn_action {
        margin-right: 8px !important;
        padding: 8px 12px !important;
        font-size: 13px !important;
    }
    /* Notification and User Icons */
    header.header .nav-link {
        padding: 8px !important;
        margin: 0 4px !important;
    }
    /* Logo alignment */
    .navbar-logo {
        margin-right: 10px !important;
    }
    /* Ensure proper flex behavior */
    .navbar-item:first-child {
        flex: 0 0 auto !important;
    }
    .navbar-item:last-child {
        flex: 0 0 auto !important;
        /* margin-left: auto !important; */
    }
    
    .col-lg-6 .user_details_view.deals_view_details .user-details-scroll{
        height: auto;
    }
    .col-lg-6.p-0 {
        padding: 0 15px !important;
        margin: 15px 0;
    }
    .col-lg-7.p-0 {
        padding: 0 15px !important;
        margin: 15px 0;
    }
    .layout-top-spacing {
        /* margin-top: 25px; */
    }
    .integrity_logo_holder img{
        width: 180px !important;
    }
    .input-group.mb-3.date-picker input {
        font-size: 13px;
        padding: 12px 8px;
    }
    .m-t-mobile{
        margin-top: 15px;
    }
    .m-b-mobile{
        margin-bottom: 15px;
    }
    .documents_name{
        width: 79%; 
        display: inline-block;
        word-break: break-word;
        font-weight: bold;
        color:#000;
    }
    body.dark .documents_name{
        color: #e0e6ed;
    }
    .breadcrumb-item+.breadcrumb-item::before{
        display: inline-block;
        padding-right: 0.5rem;
        color: #888ea8;
        content: "/";
    }
    .page-meta .breadcrumb .breadcrumb-item{
        font-size: 15px;
    }
    .form-control{
        padding: 12px;
        font-size: 14px;
    }
    .form-select{
        padding: 12px;
        font-size: 14px; 
    }
    .tabs_scroll.wrapper{
        overflow-x: auto;
        overflow-y: hidden;
    }
    .tabs_scroll .list{
        min-width: 100%;
    }
    .general-info .info label{
        font-size: 13px;
    }
    .upload-documents-holder input{
        width: 100%;
        margin-bottom: 20px;
    }
    .accordion .card-header section > div .icons{
        /* position: absolute !important;
        top: 50px !important;
        right: 15px !important; */
        padding: 3px !important;
    }
    .badge-light-danger, .badge-light-success{
        display: inline-block;
        margin-left: 10px;
    }
    .dataTables_wrapper .dataTables_length select.form-control{
        padding: 8px 10px 8px 10px !important;
    }
    div.dataTables_wrapper div.dataTables_length select {
        width: 80px !important;
    }
    .page-meta.container-xxl.p-0.mobile-view-btns.d-flex {
        display: flex !important;
        flex-wrap: wrap;
    }
    div#quickAccessDropdown{
        /* min-width: 400px !important;
        grid-template-columns: repeat(3, 1fr) !important; */
    }
    .quick-access-item{
        /* flex-direction: row;
        align-items: center;
        padding: 15px; */
    }
    .stat-icon{
        margin-right: 15px !important;
    }
    .modal.feedback-modal-popup{
        position: fixed;
    }
    .download-our-app-btn{
        top: 82px;
    }
    .navbar.navbar-expand-sm .navbar-item .nav-item{
        margin-left: 15px;
    }
    /* Additional header button fixes */
    header .navbar-item .btn._effect--ripple {
        min-width: auto !important;
        flex-shrink: 0 !important;
    }
    header .navbar-item > div {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
    }
    /* Hamburger menu spacing */
    .toggle-sidebar {
        margin-right: 10px !important;
    }
    /* User dropdown and notification icons */
    .dropdown.user-profile-dropdown,
    .nav-item.dropdown.notification-dropdown {
        margin-left: 8px !important;
    }
    /* Fix for header container */
    header.header .container-fluid,
    header.header .container-xxl {
        padding-left: 15px !important;
        padding-right: 15px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
    }
    /* Sidebar adjustments for iPad */
    .sidebar-closed > .sidebar-wrapper:hover section{
        position: fixed;
        bottom: 20px;
        width: auto;
        height: auto;
    }
    .main-container.sbar-closed .sidebar-wrapper nav + .msger {
        width: 0;
        opacity: 0;
    }
    .sidebar-wrapper nav + .msger{
        width: 0;
        opacity: 0;
    }
    .sbar-open .sidebar-wrapper nav + .msger {
        width: 237px;
        opacity: 1;
    }
}

/* =========== iPad Landscape Responsiveness (1025px - 1366px) ============ */
@media (min-width: 1025px) and (max-width: 1366px) {
    /* Header Alignment Fixes for iPad Landscape */
    header.header.navbar {
        /* padding: 12px 20px !important; */
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
    }
    .progress-container.completed .progress-bar-wrapper{
        height: 50px !important;
    }
    header.header .navbar-item {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
    }
    header.header .navbar-item .nav-item {
        margin-left: 10px !important;
    }
    header.header .navbar-item .btn {
        padding: 10px 15px !important;
        font-size: 14px !important;
        white-space: nowrap !important;
    }
    header.header .sidebarCollapse {
        padding: 10px !important;
        margin-right: 12px !important;
    }
    header.header .navbar-item.navbar-dropdown {
        margin-left: auto !important;
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
    }
    .stop_btn_action {
        margin-right: 10px !important;
        padding: 10px 15px !important;
        font-size: 14px !important;
    }
    header.header .nav-link {
        /* padding: 10px !important;
        margin: 0 5px !important; */
    }
    .navbar-logo {
        margin-right: 12px !important;
    }
    
    .integrity_logo_holder img{
        width: 200px !important;
    }
    .input-group.mb-3.date-picker input {
        font-size: 14px;
        padding: 12px 10px;
    }
    .documents_name{
        /* width: 100%; 
        display: inline-block;
        word-break: break-word;
        font-weight: bold;
        color:#000; */
    }
    body.dark .documents_name{
        color: #e0e6ed;
    }
    .form-control{
        padding: 12px;
        font-size: 14px;
    }
    .form-select{
        padding: 12px;
        font-size: 14px; 
    }
    .tabs_scroll.wrapper{
        overflow-x: auto;
        overflow-y: hidden;
    }
    .general-info .info label{
        font-size: 14px;
    }
    .accordion .card-header section > div .icons{
        /* position: absolute !important;
        right: 20px !important; */
    }
    div#quickAccessDropdown{
        /* min-width: 500px !important;
        grid-template-columns: repeat(4, 1fr) !important; */
        grid-template-columns: repeat(3, 1fr) !important;
    }
    .quick-access-item{
        /* flex-direction: row;
        align-items: center;
        padding: 15px; */
    }
    .stat-icon{
        margin-right: 15px !important;
    }
    .navbar.navbar-expand-sm .navbar-item .nav-item{
        margin-left: 18px;
    }
}
@media (min-width:768px) and (max-width:1399px) {
    .notification-trigger span.d-none.d-md-inline{
        display: none !important;
    }
}
/* =========== Specific iPad Pro Portrait (1024px) ============ */
@media (min-width: 1024px) and (max-width: 1024px) and (orientation: portrait) {
    .tabs_scroll .list{
        min-width: 100%;
    }
    .progress-container.completed .progress-bar-wrapper{
        height: 50px !important;
    }
    .page-meta.container-xxl.p-0.mobile-view-btns.d-flex {
        display: flex !important;
        flex-wrap: wrap;
    }
    div#quickAccessDropdown{
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

/* =========== iPad Mini & Small Tablets (768px - 820px) ============ */
@media (min-width: 768px) and (max-width: 820px) {
    /* Tighter header spacing for smaller tablets */
    header.header.navbar {
        /* padding: 8px 12px !important; */
    }
    header.header .navbar-item .btn {
        padding: 7px 10px !important;
        font-size: 12px !important;
    }
    header.header .navbar-item {
        gap: 6px !important;
        flex-wrap: wrap !important;
    }
    .stop_btn_action {
        padding: 7px 10px !important;
        font-size: 12px !important;
    }
    header.header .sidebarCollapse {
        padding: 6px !important;
    }
    /* Allow buttons to wrap if needed */
    header.header .navbar-item:first-child {
        max-width: 60% !important;
    }
    .progress-container.completed .progress-bar-wrapper{
        height: 50px !important;
    }
}