.ctl-theme-table-main-wrapper th,
.ctl-theme-table-main-wrapper td{
    position: relative;
}

.ctl-theme-table-main-wrapper table.table td.sorting,
.ctl-theme-table-main-wrapper table.table th.sorting{
    padding-right: 1.5rem;
}

.ctl-theme-table-main-wrapper table.table th.sorting{
    cursor: pointer;    
}

.ctl-theme-table-main-wrapper table.table th.sorting:before,
.ctl-theme-table-main-wrapper table.table th.sorting:after{
    position: absolute;
    display: block;
    opacity: .3;
    right: 0.5em;
    font-family: 'ctl-wp-studio-icons';
    font-weight: 900;
    font-size: 1rem;    

    z-index: 1;
}

.ctl-theme-table-main-wrapper table.table th.sorting:before{    
    content: "\e808";
	top: .4em;
}

.ctl-theme-table-main-wrapper table.table th.sorting:after{
    content: "\e807";
	top: 1.0em;
}

.ctl-theme-table-main-wrapper table.table-sm th.sorting:before{
	top: -.2em;
}

.ctl-theme-table-main-wrapper table.table-sm th.sorting:after{
    top: .3em;
}

.ctl-theme-table-main-wrapper table.table th.sorting.sort-desc:after{
    opacity: 1;
}

.ctl-theme-table-main-wrapper table.table th.sorting.sort-asc:before{
    opacity: 1;
}

.ctl-theme-table-main-wrapper table.ctlgrouptablecols{
    margin-bottom: 0px;
    box-sizing: border-box;
} 

.ctl-theme-table-main-wrapper table.ctlgrouptablecols .editable{
    cursor: pointer;
}

.ctl-theme-tables-scrollable-wrapper,
.ctlgrouptablecols{
    margin: 0 auto;
}

.ctl-theme-tables-scrollable-wrapper thead{
	position: sticky;
	top: 0px;
	z-index: 3;
}

.ctl-theme-tables-scrollable-wrapper tfoot{
	position: sticky;
	bottom: 0px;
	z-index: 3;
}

.table-bordered .ctl-table-bg-cell-data{
	border: 1px solid #dee2e6;
    border-left: none;
}

.table-bordered tbody > tr > td:first-child > .ctl-table-bg-cell-data, 
.table-bordered thead > tr > th:first-child > .ctl-table-bg-cell-data,
.table-bordered tfoot > tr > td:first-child > .ctl-table-bg-cell-data{
    border-left: 2px solid #dee2e6;
}

.table-bordered tbody > tr > td:last-child > .ctl-table-bg-cell-data, 
.table-bordered thead > tr > th:last-child > .ctl-table-bg-cell-data,
.table-bordered tfoot > tr > td:last-child > .ctl-table-bg-cell-data{
    border-right: 2px solid #dee2e6;
}

.table-bordered thead th{
    border-top: 2px solid #dee2e6;
}

.table-bordered tfoot td{
    border-bottom: 2px solid #dee2e6;
}

.table-bordered td, .table-bordered th{
	border: none;
}

table{
    border-spacing: 0px;
    border-collapse: separate;
}

.table-bordered{
    border: none;
}

.ctlgrouptablecols.table-sm tbody td{
    padding: 0.1rem .3rem;
}

.ctl-theme-tables-list-items{
    margin-bottom: 0px;
}

/*
.ctl-theme-tables-scrollable-wrapper{
    overflow-y: auto;
    overflow-x: hidden;
    width: 100%;
}
*/
.ctl-theme-tables-scrollable-wrapper th,
.ctl-theme-tables-scrollable-wrapper td{
    display: table-cell;
    position: relative;
    
    vertical-align: top;
    box-sizing: border-box;
}

.ctl-theme-tables-scrollable-wrapper td{
    white-space: nowrap;
}

.ctl-theme-tables-wrapper{
    overflow-x: auto;
    box-sizing: border-box;
    min-height: 80px;
}

.ctl-theme-table-main-wrapper .table.ctlgrouptablecols th,
.ctl-theme-table-main-wrapper .table.ctlgrouptablecols td{
	min-width: 50px;
}

.ctl-theme-table-main-wrapper .table-cell-data{
    display: inline-block;
    position: relative;
    box-sizing: border-box;
}

.ctl-theme-table-main-wrapper .ctl-table-cell-data{
    position: relative;
}

.ctl-theme-table-main-wrapper .table td .ctl-table-cell-data{
    word-break: break-word;
    white-space: normal !important;
    display: inline-block;
}

.ctl-theme-table-main-wrapper .table td .ctl-table-cell-data .post-status{
    padding: 2px 5px;
    border-radius: 3px;
    font-size: 9px;
    text-transform: uppercase;
    font-weight: bold;
}

.ctl-theme-table-main-wrapper .table td .ctl-table-cell-data .post-color{
    padding: 2px 5px;
    border-radius: 3px;
    font-size: 9px;
    font-weight: bold;
}

.ctl-theme-table-main-wrapper .table tr{
    margin-top : 0px !important;
    margin-bottom : 0px !important;
    margin-left : 30px !important;
    margin-right : 30px !important;
}

.ctl-theme-table-main-wrapper td .ctl-table-cell-data{
    font-size: 14px;
}

.ctl-theme-table-main-wrapper table.table tr td:first-child > div,
.ctl-theme-table-main-wrapper table.table tr th:first-child > div{
    padding-left: 15px;
}

.ctl-theme-table-main-wrapper table.table tr td:last-child:not(.sorting) > div,
.ctl-theme-table-main-wrapper table.table tr th:last-child:not(.sorting) > div {
    padding-right: 15px;
}

.ctlgrouptablecols.table thead th{
    vertical-align: top;
}

.table tfoot > tr:first-child td{
    border-top: 2px solid #dee2e6;
}

.ctl-table-row-actions > *{
    margin-right: 10px;
}
.ctl-table-row-actions > *:last-child{
    margin-right: 0px;
}

.ctl-theme-table-main-wrapper .table-footer-actions .btn{
    margin-right: 10px;
    margin-bottom: 10px;;
}

.ctl-theme-table-main-wrapper .table-footer-actions{
    margin-right: -10px;
}

.ctl-theme-table-main-wrapper tr[data-resource-id=table-fake-row]{
    display: none !important;
}

.ctl-table-instant-filters > label{
    margin-right: 15px;
    margin-bottom: 0px;
    display: inline-block;
}

.ctl-table-instant-filters ul{
    margin: 0px;
    padding: 0px;
    list-style: none;
    display: inline-block;
}


.ctl-table-instant-filters li > label{
    display: inline-block;
    margin: 0px;
}

.ctl-table-instant-filters li{
    display: inline-block;
    margin-right: 15px;
}

.ctl-table-instant-filters .custom-control-label{
    cursor: pointer;
}

.ctl-table-instant-filters .custom-control-inline{
    margin-right: 0px;
}

.ctl-table-instant-filters li:last-child{
    margin-right: 0px;
}

.ctl-theme-tables-search-in-table .input-group{
    align-items: start;
}

.ctl-theme-tables-list-attachments li{
    word-break: break-all;
    white-space: normal !important;
}

.ctl-table-cards .ctlgrouptablecols tbody tr td.ctl-table-td-actions:first-child{
	display: none !important;
}

.ctl-theme-table-main-wrapper .ctlgrouptablecols tfoot td{
    font-weight: bold;
}

.bp-up-to-sm .table-footer-actions .btn-action-maximize .btn-text,
.bp-up-to-sm .table-footer-actions .btn-export-csv .btn-text,
.bp-up-to-sm .table-footer-actions .btn-action-print .btn-text,
.bp-up-to-sm .table-footer-actions .ctl-table-action-toggle-view .btn-text,
.bp-up-to-sm .table-footer-actions .btn-refresh-page .btn-text{
    display: none;
}

.ctl-table-th-cell-festivity .ctl-table-cell-data{
    color: #f00;
}

.ctl-theme-tables-inline-list-items{
    margin: 0px;
}

.ctl-theme-tables-inline-list-items li{
    display: inline-block;
    margin-right: 5px;
    margin-bottom: 5px;
}

@media print{    
    .ctl-theme-table-main-wrapper table th.sorting:before,
    .ctl-theme-table-main-wrapper table th.sorting:after{
        display: none !important;
    }
}

.ctl-table-cards .ctlgrouptablecols{
    background: none !important;
    border: none !important;

    width: 100%;
 /*  
    padding-right: 15px;
    padding-left: 15px;
*/
    margin-right: auto;
    margin-left: auto;    
}

.ctl-table-cards .ctlgrouptablecols thead, .ctl-table-cards .ctlgrouptablecols tfoot {
    display: none;
}

.ctl-table-cards.ctl-table-cards-distribution-6 .ctlgrouptablecols .tr{
    -ms-flex: 0 0 calc(16.666% - 30px);
    flex: 0 0 calc(16.666% - 30px);
    max-width: calc(16.666% - 30px);  
}

.ctl-table-cards.ctl-table-cards-distribution-5 .ctlgrouptablecols tr{
    -ms-flex: 0 0 calc(20% - 30px);
    flex: 0 0 calc(20% - 30px);
    max-width: calc(20% - 30px);
}

.ctl-table-cards.ctl-table-cards-distribution-4 .ctlgrouptablecols tr{
    -ms-flex: 0 0 calc(25% - 30px);
    flex: 0 0 calc(25% - 30px);
    max-width: calc(25% - 30px);  
}

.ctl-table-cards.ctl-table-cards-distribution-3 .ctlgrouptablecols tr{
    -ms-flex: 0 0 calc(33.333% - 30px);
    flex: 0 0 calc(33.333% - 30px);
    max-width: calc(33.333% - 30px);  
}

.ctl-table-cards.ctl-table-cards-distribution-2 .ctlgrouptablecols tr{
    -ms-flex: 0 0 calc(50% - 30px);
    flex: 0 0 calc(50% - 30px);
    max-width: calc(50% - 30px);  
}  

.ctl-table-cards.ctl-table-cards-distribution-1 .ctlgrouptablecols tr{
    -ms-flex: 0 0 calc(100% - 30px);
    flex: 0 0 calc(100% - 30px);
    max-width: calc(100% - 30px);  
}      

.ctl-theme-table-kanban-row,
.ctl-table-cards .ctlgrouptablecols tr{
    position: relative;
    margin: 15px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;    
}

.ctl-theme-table-kanban-row,
.ctl-table-cards .ctlgrouptablecols tr{
    border-radius: .25rem;
    border: 1px solid grey;
    overflow: hidden;
} 

.ctl-table-cards .ctlgrouptablecols tfoot tr.ctl-table-card-footer-label:before{
    content:attr(data-title);
    display: block;
    font-weight: bold;
    margin-bottom: 10px;
    margin-top: 10px;
    text-align: center;
}

.ctl-table-cards .ctlgrouptablecols tbody,
.ctl-table-cards .ctlgrouptablecols tfoot {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0px -15px;
}

.ctl-table-cards.ctl-table-cards-alignment-left .ctlgrouptablecols tbody{
    justify-content: left;
}
.ctl-table-cards.ctl-table-cards-alignment-center .ctlgrouptablecols tbody{
    justify-content: center;
}        
.ctl-table-cards.ctl-table-cards-alignment-right .ctlgrouptablecols tbody{
    justify-content: right;
}    

.ctl-table-cards .ctlgrouptablecols td:not(.ctl-table-footer-td-display-none, .d-none) {
    display: block !important;
    width: 100% !important;
    min-width: 100% !important;
    text-align: left !important;
    position:  relative !important;
    left: auto !important;
}

table.table .ctl-card-content-title{
    display: none;
}

label.ctl-card-content-title{
    margin-bottom: 0px;
}

.ctl-theme-table-kanban-row-item-label,
.ctl-table-cards td label.ctl-card-content-title{
    font-size: 12px;
    font-weight: bold;;
}

.ctl-table-cards .ctl-table-cell-data{
    width: 100% !important;
    word-break: break-all;
    word-break: break-word;
    white-space: normal !important;
}

.ctl-table-cards .cardinality{
    display: none !important;
}

.ctl-table-cards .ctl-theme-tables-wrapper{
    overflow-x: hidden;
}    

@media (max-width: 1200px){

    .ctl-table-cards.ctl-table-cards-distribution-6 .ctlgrouptablecols tr{
        -ms-flex: 0 0 calc(25% - 30px);
        flex: 0 0 calc(25% - 30px);
        max-width: calc(25% - 30px);
    }

    .ctl-table-cards.ctl-table-cards-distribution-5 .ctlgrouptablecols tr{
        -ms-flex: 0 0 calc(25% - 30px);
        flex: 0 0 calc(25% - 30px);
        max-width: calc(25% - 30px);             
    }

    .ctl-table-cards.ctl-table-cards-distribution-4 .ctlgrouptablecols tr{
        -ms-flex: 0 0 calc( 33.333% - 30px);
        flex: 0 0 calc( 33.333% - 30px);
        max-width: calc( 33.333% - 30px);  
    }   
    
    .ctl-table-cards.ctl-table-cards-distribution-3 .ctlgrouptablecols tr{
        -ms-flex: 0 0 calc( 50% - 30px);
        flex: 0 0 calc( 50% - 30px);
        max-width: calc( 50% - 30px);
    }   
    
    .ctl-table-cards.ctl-table-cards-distribution-2 .ctlgrouptablecols tr{
        -ms-flex: 0 0 calc(100% - 30px);
        flex: 0 0 calc(100% - 30px);
        max-width: calc(100% - 30px); 
    }           
}

@media (max-width: 992px){
    .ctl-table-cards.ctl-table-cards-distribution-6 .ctlgrouptablecols tr{
        -ms-flex: 0 0 calc( 33.333% - 30px);
        flex: 0 0 calc( 33.333% - 30px);
        max-width: calc( 33.333% - 30px);  
    }

    .ctl-table-cards.ctl-table-cards-distribution-5 .ctlgrouptablecols tr{
        -ms-flex: 0 0 calc( 33.333% - 30px);
        flex: 0 0 calc( 33.333% - 30px);
        max-width: calc( 33.333% - 30px);  
    }   
    
    .ctl-table-cards.ctl-table-cards-distribution-4 .ctlgrouptablecols tr{
        -ms-flex: 0 0 calc( 50% - 30px);
        flex: 0 0 calc( 50% - 30px);
        max-width: calc( 50% - 30px);;  
    }                    
    
    .ctl-table-cards.ctl-table-cards-distribution-3 .ctlgrouptablecols tr{
        -ms-flex: 0 0 calc(100% - 30px);
        flex: 0 0 calc(100% - 30px);
        max-width: calc(100% - 30px);  
    }       
    
    .ctlgrouptablecols.table-sm td, .ctlgrouptablecols.table-sm th{
        padding: 0.1rem 0.2rem;
    }        

    .ctlgrouptablecols.table-sm tfoot td,
    .ctlgrouptablecols.table-sm .ctl-table-cell-data{
        font-size: 12px;
        line-height: 18px;
    }

    .ctlgrouptablecols.table-sm .ctl-table-row-actions .btn{
        padding: 2px 5px;
        font-size: 12px;        
    }

    .ctl-theme-table-main-wrapper table.table.table-sm th.sorting:before, .ctl-theme-table-main-wrapper table.table.table-sm th.sorting:after{
        font-size: 0.8rem;
    }        
}

@media (max-width: 768px){
    .ctl-table-cards.ctl-table-cards-distribution-6 .ctlgrouptablecols tr{
        -ms-flex: 0 0 calc(50% - 30px);
        flex: 0 0 calc(50% - 30px);
        max-width: calc(50% - 30px);  
    }

    .ctl-table-cards.ctl-table-cards-distribution-5 .ctlgrouptablecols tr{
        -ms-flex: 0 0 calc(50% - 30px);
        flex: 0 0 calc(50% - 30px);
        max-width: calc(50% - 30px);  
    }     
    
    .ctl-table-cards.ctl-table-cards-distribution-4 .ctlgrouptablecols tr{
        -ms-flex: 0 0 calc(100% - 30px);
        flex: 0 0 calc(100% - 30px);
        max-width: calc(100% - 30px);  
    }           
}

@media (max-width: 576px){
    .ctl-table-cards.ctl-table-cards-distribution-6 .ctlgrouptablecols tr{
        -ms-flex: 0 0 calc(100% - 30px);
        flex: 0 0 calc(100% - 30px);
        max-width: calc(100% - 30px); 
    }

    .ctl-table-cards.ctl-table-cards-distribution-5 .ctlgrouptablecols tr{
        -ms-flex: 0 0 calc(100% - 30px);
        flex: 0 0 calc(100% - 30px);
        max-width: calc(100% - 30px); 
    }          
}    


.ctl-table-cards .ctlgrouptablecols tfoot tr{
    -ms-flex: 0 0 calc( 100% - 30px) !important;
    flex: 0 0 calc( 100% - 30px) !important;
    max-width: calc( 100% - 30px) !important;  
}     

.ctl-theme-table-kanban-row-item-label{
    margin-bottom: 0px;
}

.ctl-theme-table-kanban-row-item-label,
.ctl-table-cards label.ctl-card-content-title{
    width: 30% !important;
    display: inline-block;
    position: relative;
}

.ctl-theme-table-kanban-row-item-value,
.ctl-table-cards .ctl-table-cell-data{
    width: 70% !important;
    display: inline-block;
    text-align: right;
}

.ctl-table-cards .cardinality .ctl-table-cell-data{
    text-align: left;
}

.ctl-table-cards .ctl-table-cell-data.ctl-table-row-actions, .ctl-theme-table-kanban-row-actions > .ctl-table-row-actions{
    width: 100% !important;
    display: flex;
}

.ctl-table-cards .ctl-table-cell-data.ctl-table-row-actions .btn, .ctl-theme-table-kanban-row-actions > .ctl-table-row-actions .btn{
	width: 100%;
}

.ctl-theme-table-kanban-row-item,
.ctl-table-cards .ctlgrouptablecols tfoot tr td,
.ctl-table-cards .ctlgrouptablecols tbody tr td{
    border-top: 1px solid #dedede;
}

.ctl-theme-table-kanban-row-item,
.ctl-table-cards .ctlgrouptablecols tbody tr td,
.ctl-table-cards .ctlgrouptablecols tfoot tr td{
    padding: 5px 15px;
}

.ctl-theme-table-kanban-row .ctl-theme-table-kanban-row-item:first-child,
.ctl-table-cards .ctlgrouptablecols tbody tr td:first-child,
.ctl-table-cards .ctlgrouptablecols tfoot tr td:first-child{
    padding-top: 15px;
}

.ctl-theme-table-kanban-row .ctl-theme-table-kanban-row-item:last-child{
    border: none;
}

.ctl-theme-table-kanban-row .ctl-theme-table-kanban-row-item:last-child,
.ctl-table-cards .ctlgrouptablecols tbody tr td:last-child,
.ctl-table-cards .ctlgrouptablecols tfoot tr td:last-child{
    padding-bottom: 15px;
}

.ctl-table-cards .ctlgrouptablecols tfoot tr td.ctl-table-footer-td-display-none + td{
    border-top: none;
}

.ctl-theme-table-kanban-row .ctl-theme-table-kanban-row-item:first-child,
.ctl-table-cards .ctlgrouptablecols tfoot tr td:first-child,
.ctl-table-cards .ctlgrouptablecols tfoot tr td:last-child,
.ctl-table-cards .ctlgrouptablecols tbody tr td:first-child{
    border-top: none;
}

.ctl-table-cards .ctlgrouptablecols tbody tr td.ctl-table-row-actions:last-child{
    border-top: none;
    margin-top: auto;
}

.ctl-table-cards .ctl-table-footer-td-display-none{
    display: none !important;
}

.ctl-table-cards .ctlgrouptablecols td.tbl-td-post-sorting{
    display: none !important;
}

.ctl-table-cards .ctl-card-element-distribution-30-70 label.ctl-card-content-title{
    width: 30% !important;
    display: inline-block;
    position: relative;
}

.ctl-table-cards .ctl-card-element-distribution-30-70 .ctl-table-cell-data{
    width: 70% !important;
    display: inline-block;
    text-align: right;
}

.ctl-table-cards .ctl-card-element-distribution-100-100 .ctl-card-content-title,
.ctl-table-cards .ctl-card-element-distribution-100-100 .ctl-table-cell-data{
    width: 100% !important;
    display: inline-block;
    text-align: inherit !important;
}

.ctl-table-cards .ctl-card-element-distribution-100-100.ctl-card-element-align-center .ctl-card-content-title,
.ctl-table-cards .ctl-card-element-distribution-100-100.ctl-card-element-align-center .ctl-table-cell-data{
    text-align: center !important;
}

.ctl-table-cards .ctl-card-element-distribution-100-100.ctl-card-element-align-left .ctl-card-content-title,
.ctl-table-cards .ctl-card-element-distribution-100-100.ctl-card-element-align-left .ctl-table-cell-data{
    text-align: left !important;
}

.ctl-table-cards .ctl-card-element-distribution-100-100.ctl-card-element-align-right .ctl-card-content-title,
.ctl-table-cards .ctl-card-element-distribution-100-100.ctl-card-element-align-right .ctl-table-cell-data{
    text-align: right !important;
}

.bp-up-to-md .ctl-theme-tables-btn-today .btn-text {
    display: none;
}

.ctl-theme-table-threshold-tag{
    padding: 2px 5px;
    border-radius: 3px;
	font-size: 0.8em;
}

.ctl-theme-table-kanban-container{
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;

	margin-left: -15px;
}

.ctl-theme-table-kanban-column-container{
    margin-left: 15px;
    background-color: #fafafa;
}

.ctl-theme-table-kanban-column-container-scrollable.ctl-theme-table-kanban-column-container{
    overflow-y: auto;
}

.ctl-theme-table-kanban-rows-container{
    margin-top: 15px;
    height: 100%;
}

.ctl-theme-table-kanban-row{
    background-color: #fff;
}

.ctl-theme-table-kanban-column-container-scrollable .ctl-theme-table-kanban-status-title{
    position: sticky;
    top: 0;
    z-index: 1;
}

.ctl-theme-table-kanban-rows-container .ui-sortable-placeholder{
    border: 2px dashed #ffc64c;
    height: 50px;
    margin: 15px;
}

.ctl-theme-table-kanban-rows-container .ui-sortable-movable{
    cursor: move;
    border: 2px dashed #ffc64c !important;
}

.ctl-table-td-sticky-col,
.ctl-table-th-sticky-col{
    position: sticky !important;
    z-index: 2;
    box-sizing: border-box;
}

.ctl-table-th-sticky-col-left{
    left: 0;
}

.ctl-table-th-sticky-col-right{
    right:0;
}

/* .ctl-table-th-sticky-col-right > .ctl-table-bg-cell-data{
    padding-right: 0px !important;
}

.ctl-table-td-sticky-col-right > .ctl-table-bg-cell-data{
    padding-right: 0px !important;
} */

.ctl-table-bg-cell-data{
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;

    transition: all 0.4s ease 0.0s;
}

.table-striped tbody tr:nth-of-type(even) .ctl-table-bg-cell-data{
    background-color: #fff;
}

.table-striped thead .ctl-table-bg-cell-data,
.table-striped tfoot .ctl-table-bg-cell-data,
.table-striped tbody tr:nth-of-type(odd) .ctl-table-bg-cell-data{
    background-color: rgb(238 238 238);
}

.ctl-table-td-sticky-last-col-left .ctl-table-bg-cell-data{
	border-right: 1px solid rgb(222, 226, 230);
}

.ctl-table-td-sticky-last-col-right .ctl-table-bg-cell-data{
	border-left: 1px solid rgb(222, 226, 230);
}

.table-hover tbody tr:hover .ctl-table-bg-cell-data{
    background-color: rgb(230 230 230);
}

.ctl-table-cell-gantt{
    height: 16px;
    display: block;
}

.ctl-table-cell-gantt-start{
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    margin-left: 5px;
}

.ctl-table-cell-gantt-end{
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
    margin-right: 5px;
}

.ctl-table-row.ctl-table-row-gantt .ctl-table-calendar-day{
    padding-left: 0px !important;
    padding-right: 0px !important;
    vertical-align: middle;
}

.ctl-table-calendar-month-label{
    margin-bottom: 5px;
}