html,
body {
    height: 100%;
}

label {
    padding: 0 8px;
}

.radio-group {
    float: left;
    width: 200px;
    height: 32px
}

.wrap {
    min-height: 100%;
    height: auto;
    margin: 0 auto -60px;
    padding: 0 0 60px;
}

.wrap > .container {
    padding: 70px 15px 20px;
}

.footer {
    height: 60px;
    background-color: #f5f5f5;
    border-top: 1px solid #ddd;
    padding-top: 20px;
}

.jumbotron {
    text-align: center;
    background-color: transparent;
}

.jumbotron .btn {
    font-size: 21px;
    padding: 14px 24px;
}

.not-set {
    color: #c55;
    font-style: italic;
}

/* add sorting icons to gridview sort links */
.main_sorting a:after, .sub_sorting a:after {
    position: relative;
    top: 4px;
    display: inline-block;
    font-family: 'Glyphicons Halflings';
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    padding-left: 5px;
}

.main_sorting a:after, .sub_sorting a:after {
    content: url("../images/sort_both.png");
}

.main_sorting a.asc:after, .sub_sorting a.asc:after {
    content: url("../images/sort_asc.png") "(" attr(data-number) ")";
}

.main_sorting a.desc:after, .sub_sorting a.desc:after {
    content: url("../images/sort_desc.png") "(" attr(data-number) ")";
}

.grid-view th {
    white-space: nowrap;
}

.hint-block {
    display: block;
    margin-top: 5px;
    color: #999;
}

.error-summary {
    color: #a94442;
    background: #fdf7f7;
    border-left: 3px solid #eed3d7;
    padding: 10px 20px;
    margin: 0 0 15px 0;
}

table.need-to-sort-customize.dataTable th {
    padding-left: 10px;
    padding-right: 18px;
}

.kv-grid-table tr.main_sorting th {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
    vertical-align: middle !important;
    background-color: #f5f5f5;
}

tr.main_sorting th a {
    display: block;
    height: 100%;
    padding-top: 10px;
    padding-bottom: 10px;
    color: #444;
}

tr.sub_sorting th a {
    display: block;
    color: #444;
    cursor: pointer;
}

.table-striped > tbody > tr:nth-of-type(2n+1) {
    background-color: #fff;
}

.table-striped > tbody > tr:nth-of-type(2n) {
    background-color: #f9f9f9;
}

.refresh-widget {
    background: #fff;
    border: 0px;
    padding: 10px;
}

.expanded {
    background: #fff;
    border: 0px;
    padding: 0px;
}

.btn-lock {
    padding: 0px 4px;
    border-radius: 5px;
}

.kv-grid-container {
    overflow-x: hidden;
}

.kv-expand-detail-loading {
    cursor: pointer;
}

table.dataTable.no-footer {
    border-bottom: none;
}

select.form-control.disabled {
    background-color: #eee;
    opacity: 1;
    cursor: not-allowed;
}

.sorting > td:first-child > .row {
    position: relative;
}

.blocker {
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 9999;
    cursor: not-allowed;
}

.container ~ .main-footer {
    margin-left: 0;
}

body .wrap + .container {
    min-height: calc(100vh - 123px);
}

table.table_sub_grid tbody tr td {
    word-break: break-all !important;
    white-space: pre-line !important;
}

table.table_sub_grid tbody tr td .modal {
    word-break: initial !important;
    white-space: initial !important;
}

.modal.modal-draggable {
    background: transparent;
    width: 720px;
    height: 10px;
}

.modal.modal-draggable .modal-dialog {
    position: fixed;
    width: 720px;
    margin: 0;
    padding: 10px;
}

.modal.modal-draggable .modal-dialog .modal-content {
    margin: 0 auto;
}

.modal.modal-draggable .modal-content {
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.5);
}

.modal.modal-draggable .modal-dialog .ui-draggable-handle {
    cursor: grab;
}

.modal.modal-draggable .modal-dialog:active .ui-draggable-handle {
    cursor: grabbing;
}

.modal .modal-body, .modal.modal-order-line .modal-pna .modal-dialog .modal-content .modal-body .row div {
    overflow-y: auto;
    overflow-x: hidden;
}

.modal.modal-order-line .modal-pna .modal-dialog .modal-content .modal-body .row .order-status-info-block {
    max-height: 286px;
}

.table-bordered .pna-popup thead th {
    color: #fff;
    border: 0;
    border-radius: 0;
    background: #7a7e8c;
    white-space: pre-line;
}

.order-comment {
    margin-top: 5px;
}

.expanded div.box-header {
    cursor: pointer;
}

.readonly-element {
    position: relative;
}

.readonly-element input,
.readonly-element select {
    opacity: 0.9;
    background: #edeeef;
}

.readonly-element:after {
    content: '';
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: block;
    position: absolute;
}

.form-editable-block.readonly-element {
    opacity: 0.7;
}

.container-schedule-items .week-days {
    display: inline-flex;
}

.container-schedule-items input[type=checkbox] {
    display: none;
}

.container-schedule-items input[type=checkbox]:checked + span {
    background-color: #00a65a;
    border-color: #008d4c;
    color: #fff;
}

.container-schedule-items input[type=checkbox]:checked + span:hover {
    background-color: #449d44;
    border-color: #255625;
    color: #fff;
}

#table-orders-reminder td:last-child a {
    margin-right: 2px;
}

.modal-reminder .modal-body, .modal-reminder-logs .modal-pna-popup .modal-body {
    max-height: calc(100vh - 180px);
}

.modal-reminder-logs {
    display: none;
}

#dashboard-charts {
    padding: 20px;
}

#dashboard-charts .box-header {
    cursor: grab;
}

#dashboard-filter {
    margin-bottom: 20px;
}

.chart-block .custom-legends {
    height: 259px;
    overflow: hidden;
    overflow-y: auto;
    padding: 10px 0;
}

.chart-block .custom-legend-colorbox {
    height: 10px;
    width: 10px;
    background-color: grey;
    border: 1px solid grey;
    margin-right: 5px;
}

.chart-block .box-footer {
    height: 55px;
}

#dashboard-charts .date-range-block[data-type="global"] {
    margin-bottom: 20px;
}

#invoice-order-form .form-group {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    position: relative;
}

#invoice-order-form .form-group label {
    width: 30%;
    height: 20px;
    flex-grow: 1;
    flex-basis: 30%;
}

#invoice-order-form .form-group input {
    width: 30%;
}

#invoice-order-form .form-group .form-control {
    flex-grow: 1;
    flex-basis: 70%;
}

#invoice-order-form .form-group .help-block {
    flex-grow: 1;
    flex-basis: 100%;
}

#invoice-order-form .invoice-order-line-item .form-group {
    display: block;
}

#invoice-order-form .invoice-order-line-item input {
    width: 100%;
}

#invoice-order-form .add-invoice-order-item {
    margin: 11px;
}

.btn-pna {
    padding: 0px 4px;
    float: right !important;
    margin-top: 8px;
    margin-right: 10px;
}


.spanner {
    position: fixed;
    top: 50%;
    left: 0;
    background: #2a2a2a55;
    width: 100%;
    display: block;
    text-align: center;
    height: 100%;
    color: #FFF;
    transform: translateY(-50%);
    z-index: 1000;
    visibility: hidden;
}

.overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    visibility: hidden;
}

.loader,
.loader:before,
.loader:after {
    border-radius: 50%;
    width: 2.5em;
    height: 2.5em;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation: load7 1.8s infinite ease-in-out;
    animation: load7 1.8s infinite ease-in-out;
}

.loader {
    color: #ffffff;
    font-size: 10px;
    margin-top: 35%;
    margin-left: 49%;
    position: relative;
    text-indent: -9999em;
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-animation-delay: -0.16s;
    animation-delay: -0.16s;
}

.loader:before,
.loader:after {
    content: '';
    position: absolute;
    top: 0;
}

.loader:before {
    left: -3.5em;
    -webkit-animation-delay: -0.32s;
    animation-delay: -0.32s;
}

.loader:after {
    left: 3.5em;
}

@-webkit-keyframes load7 {
    0%,
    80%,
    100% {
        box-shadow: 0 2.5em 0 -1.3em;
    }
    40% {
        box-shadow: 0 2.5em 0 0;
    }
}

@keyframes load7 {
    0%,
    80%,
    100% {
        box-shadow: 0 2.5em 0 -1.3em;
    }
    40% {
        box-shadow: 0 2.5em 0 0;
    }
}

.show {
    visibility: visible;
}

.spanner, .overlay {
    opacity: 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}

.spanner.show, .overlay.show {
    opacity: 1
}

.table > thead > tr > th, .table > tbody > tr > th, .table > tfoot > tr > th, .table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td {
    vertical-align: middle;
}

.update-date {
    white-space: nowrap;
    display: block;
    float: left;
}

/*select2 custom css*/
.select2-selection--multiple:before {
    content: "";
    position: absolute;
    right: 7px;
    top: 42%;
    border-top: 5px solid #888;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
}

.select2-container--default .select2-selection--multiple .select2-selection__clear {
    cursor: pointer;
    float: right;
    font-weight: bold;
    right: 20px;
    position: absolute;
    top: 42%;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0.5;
}

.select2-container--default .select2-search--inline .select2-search__field {
    width: 90% !important;
    display: block !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__rendered li {
    float: none;
}


#selection-rule-form .select2-container--default .select2-selection--multiple .select2-selection__rendered li{
    float: left;
    width: auto !important;
}

.select2-selection__rendered li {
    display: block !important;
}

.select2-dropdown .select2-search__field:focus, .select2-search--inline .select2-search__field:focus {
    outline: none;
    border: 0 !important;
}

.select2-selection__choice {
    width: 170px;
}


.left-filter {
    width: 200px;
    float: left;
}

.right-content {

    float: left;
    /* Firefox */
    width: -moz-calc(100% - 220px);
    /* WebKit */
    width: -webkit-calc(100% - 220px);
    /* Opera */
    width: -o-calc(100% - 220px);
    /* Standard */
    width: calc(100% - 220px);
    margin-left: 20px;
}

.kv-datetime-remove {
    display: none;
}

.kv-field-separator {
    padding: 6px 6px;
}

.feature-check {
    position: relative;
    top: 2px;
}

.checkbox .feature-check-label {
    margin-top: 10px;
    margin-bottom: 10px;
    font-weight: 700;
}

.input-group {
    margin-bottom: 10px;
}

.kv-field-range .input-group {
    margin-bottom: 0;
}

#features .input-group {
    width: 100%;
}


/*product page*/

#table_main_grid {
    width: 100%;
}

#table_main_grid.product-main-grid.table.dataTable tbody th,
#table_main_grid.product-main-grid.table.dataTable tbody td {
    padding: 5px 5px;
}

.product-main-grid > thead > tr > th, .product-main-grid > tbody > tr > th,
.product-main-grid > tfoot > tr > th, .product-main-grid > thead > tr > td,
.product-main-grid > tbody > tr > td, .product-main-grid > tfoot > tr > td,
#table_main_grid.product-main-grid.table-bordered {
    border: none !important;
}

.kv-expand-icon-cell:hover{
    background-color: transparent !important;
}

.product-panel > .image > img {
    width: 45px !important;
    height: 45px !important;
}

.product-row {
    position: relative;
    padding-top: 0px;
    padding-bottom: 40px;
    padding-right: 15px;
    margin-bottom: 12px;
    background-color: #fdfdfd;
    max-height: 200px;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

.product-row:first-child {
    margin-top: 0;
    border-top: 0;
}

.cvsearch-body {
    padding: 0 5px;
}

.product-name {
    font-size: 16px;
    font-weight: 600;
    width: auto;
    float: left;
    position: relative;
}

.product-photo {
    width: 65px;
    height: 65px;
    overflow: hidden;
    border-radius: 15% 15% 15% 0;
    background-clip: padding-box;
    position: relative;
    margin: 0 auto;
    border: 2px solid #cfcfcf;
    z-index: 999;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

.product-photo > img {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -37px;
    margin-left: -39px;
    width: 80px;
    height: 80px;
}

.product-row.active .product-photo > img {
    width: 100px;
    height: 130px;
    margin-top: -65px;
    margin-left: -50px;
}

.product-content-sum {
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 0;
}

.product-content-cell {
    padding-top: 5px;
    padding-bottom: 5px;
}

.product-content-cell > .row {
    display: none;
}

.product-content-cell > .row > .col-lg-6 {
    white-space: nowrap;
    overflow: hidden;
    -moz-binding: url(../ellipsis.xml#ellipsis);
    -ms-text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
}

/*
.product-content-rows > .row {
    border-top: 1px solid #ccc;
}
*/

.product-content-rows > .row:first-child {
    border-top: 0;
}

.product-transactions {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 5px;
    width: 100%;
    background-color: #fdfdfd;
    border-top: 1px dashed #ccc;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    height: 34px;
}

.product-primary-info,
.product-secondary-info,
.product-transactions ul {
    list-style: none;
    padding: 0;
}

.product-primary-info {
    margin-left: 20px;
    width: 40%;
}

.product-transactions ul > li {
    display: inline-block;
    padding-right: 5px;
    padding-left: 5px;
}

.product-secondary-info > li,
.product-primary-info > li,
.product-section ul > li,
.product-transactions-top {
    margin-bottom: 5px;
}

.product-transactions .btn {
    position: relative;
    z-index: 999;
}

.product-transactions .btn-yellow {
    background: #EBD992;
    color: #333333;
}

.product-transactions .btn-details {
    background: #337ab7;
    color: #fff;
}

.product-secondary-info i[class^="icon"] {
    margin-right: 10px;
    font-size: 16px;
}

.product-collapse {
    width: 140px;
    height: 30px;
    padding-top: 6px;
    font-weight: 400;
    position: absolute;
    left: 50%;
    bottom: -11px;
    z-index: 999;
    margin-left: -50px;
    text-align: center;
    background-color: #fdfdfd;
    color: #3c8dbc;
    border: 1px solid #3c8dbc;
    border-radius: 3px;
    -webkit-box-shadow: 0 2px 2px rgba(145, 145, 145, 0.3);
    box-shadow: 0 2px 2px rgba(145, 145, 145, 0.3);
    cursor: pointer;
}

.product-collapse:before,
.product-collapse:after {
    content: '';
    width: 350px;
    height: 2px;
    position: absolute;
    top: 50%;
    margin-top: 3px;
}

.product-row.active .product-collapse:before,
.product-row.active .product-collapse:after {
    margin-top: 4px;
}

.product-collapse:before {
    left: -350px;
    background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgb(60 141 188) 100%);
    background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(100%, rgb(60 141 188)));
    background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgb(60 141 188) 100%);
    background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgb(60 141 188) 100%);
    background: -ms-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgb(60 141 188) 100%);
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgb(60 141 188) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff', endColorstr='#3c8dbc', GradientType=1);
}

.product-collapse:after {
    right: -350px;
    background: -moz-linear-gradient(left, rgb(60 141 188) 0%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgb(60 141 188)), color-stop(100%, rgba(255, 255, 255, 0)));
    background: -webkit-linear-gradient(left, rgb(60 141 188) 0%, rgba(255, 255, 255, 0) 100%);
    background: -o-linear-gradient(left, rgb(60 141 188) 0%, rgba(255, 255, 255, 0) 100%);
    background: -ms-linear-gradient(left, rgb(60 141 188) 0%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(to right, rgb(60 141 188) 0%, rgba(255, 255, 255, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#3c8dbc', endColorstr='#00ffffff', GradientType=1);
}


.product-collapse > div {
    margin-top: 5px;
}

.product-collapse > div:before {
    content: '';
    position: absolute;
    background-color: #fdfdfd;
    width: 105%;
    height: 19px;
    left: -2px;
    top: -2px;
    z-index: 8;
}

.product-collapse > div > span {
    position: relative;
    z-index: 9;
    margin-left: -20px;
}


.product-collapse:hover {
    -webkit-box-shadow: 0 3px 4px rgba(145, 145, 145, 0.3);
    box-shadow: 0 3px 4px rgba(145, 145, 145, 0.3);
}

.product-collapse > div,
.product-row.active .product-collapse > div:first-child {
    display: none;
}

.product-row.active .product-collapse > div:first-child + div,
.product-collapse > div:first-child {
    display: block;
}

.product-row.highlight,
.product-row.highlight .product-transactions,
.product-row.highlight .product-collapse > div:before,
.product-row.highlight .product-collapse {
    background-color: #f9f9f9;
}

.kv-expand-header-cell.kv-batch-toggle, .kv-expand-icon-cell {
    cursor: inherit;
}

.product-main-grid .even {
    background-color: #fff !important;
}


.cvsearch-content .popover {
    max-width: inherit !important;
}

.cvsearch-body {
    font-size: 13px;
    text-align: left;
}

.font-grey-cascade {
    color: #95A5A6 !important;
}

.kv-expand-icon {
    width: 35px;
    float: left;
}


@media (max-width: 1200px) {

    .product-transactions {
        padding-bottom: 15px;
    }

    .product-row .product-transactions ul > li {
        padding: 0;
    }

    .product-row .product-transactions .btn-xs {
        padding: 1px 3px;
        font-size: 12px;
    }

}

@media (min-width: 991px) and (max-width: 1200px) {

    .product-content-sum {
        padding-left: 15px;
    }

    .product-row {
        max-height: none;
    }

}

@media (max-width: 991px) {

    .product-row {
        max-height: none;
    }

    .product-content-sum {
        padding-left: 15px;
    }

}

@media (max-width: 768px) {

    .product-transactions {
        padding-bottom: 20px;
    }

    .product-photo {
        float: none;
        margin: 0 auto;
    }


    .product-transactions-top {
        border-bottom: 1px dashed #ccc;
        padding-bottom: 10px;
        text-align: left;
    }

    .product-transactions-top > .input-small {
        float: none !important;
    }

    .product-transactions-top > .product-name,
    .product-transactions-top > ul {
        width: 100%;
        display: block;
        float: none !important;
    }

    .product-collapse:before,
    .product-collapse:after {
        width: 225px;
    }

    .product-collapse:before {
        left: -225px;
    }

    .product-collapse:after {
        right: -225px;
    }

}

@media (max-width: 575px) {

    .product-row {
        padding-bottom: 90px;
    }

    .product-transactions {
        text-align: center;
    }

    .product-transactions > ul {
        float: none !important;
        margin: 10px 0;
    }

    .product-collapse:before,
    .product-collapse:after {
        width: 175px;
    }

    .product-collapse:before {
        left: -175px;
    }

    .product-collapse:after {
        right: -175px;
    }

    .product-collapse:before,
    .product-collapse:after {
        width: 100px;
    }

    .product-collapse:before {
        left: -100px;
    }

    .product-collapse:after {
        right: -100px;
    }
}



