.icheckbox {
    display: inline-block;
    margin: 0;
    padding: 0;
    width: 18px;
    height: 18px;
    /*background: url(icheck/minimal.png) no-repeat;*/
    border: none;
    cursor: pointer;
    margin: 0 5px 0 0;
    vertical-align: top;
}

.icheckbox {
    background-position: 0 0;
}

.icheckbox.hover {
    background-position: -20px 0;
}

.icheckbox.checked {
    background-position: -40px 0;
}

.icheckbox.disabled {
    background-position: -60px 0;
    cursor: default;
}

.icheckbox.checked.disabled {
    background-position: -80px 0;
}

.color-box .iradio {
    width: 100%;
    height: 100%;
    margin: 0;
}

.iradio {
    display: inline-block;
    margin: 0;
    padding: 0;
    width: 18px;
    height: 18px;
    /*background: url(icheck/minimal.png) no-repeat;*/
    border: none;
    cursor: pointer;
    margin: 0 5px 0 0;
    vertical-align: top;
}

.iradio {
    background-position: -100px 0;
}

.iradio.hover {
    background-position: -120px 0;
}

.iradio.checked {
    background-position: -140px 0;
}

.iradio.disabled {
    background-position: -160px 0;
    cursor: default;
}

.iradio.checked.disabled {
    background-position: -180px 0;
}

.has-select2.form-control {
    border: 0;
    border-radius: 0;
    box-shadow: none;
    padding: 0;
    height: auto;
}

.ui-helper-hidden-accessible {
    display: none;
}

/* COUNTER */
.input-counter {
    position: relative;
    width: 100px;
}

.input-counter .action {
    display: block;
    position: absolute;
    top: 1px;
    bottom: 1px;
    font-size: 14px;
    line-height: 38px;
    width: 46px;
    height: auto;
    text-align: center;
    cursor: pointer;
}

.input-counter .action .caption {
    pointer-events: none;
}

@media screen and (min-width: 1140px) {
    .input-counter .action:hover,
    .input-counter .action:focus {
        color: #8bb2cc;
    }
}

.input-counter .action:hover .ic {
    background-position: 0 -12px;
}

span.qty-minus.qty-down:after,
span.qty-plus.qty-up::after {
    content: '';
    position: absolute;
    top: 11px;
    width: 1px;
    height: 17px;
    background-color: #e6e6e6;
}

span.qty-minus.qty-down:after {
    right: 0;
}

span.qty-plus.qty-up::after {
    left: 0;
}

span.qty-plus.qty-up {
    right: 1px;
}

span.qty-minus.qty-down {
    left: 1px;
}

.input-counter input {
    text-align: center;
    padding-left: 26px;
    padding-right: 26px;
}

.no-margin {
    margin: 0px !important;
}

.btn-sq {
    position: relative;
    padding: 0;
}

.btn-sq-25 {
    width: 35px;
    height: 35px;
}

a.btn-sq > .fa {
    width: 1em;
    height: 1em;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.align-top {
    vertical-align: top;
}

.align-middle {
    vertical-align: middle;
}

/*toggle cross*/
.toggle-cross.active {
    z-index: 10000;
}

.toggle-cross {
    position: absolute;
    top: 0;
    right: 0;
}

.toggle-cross span, .toggle-cross span::before, .toggle-cross span::after {
    content: '';
    position: absolute;
    background: #fff;
    display: block;
    height: 2px;
    width: 23px;
}

.toggle-cross span {
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.toggle-cross span:before {
    top: -8px;
}

.toggle-cross span:after {
    bottom: -8px;
}

.toggle-cross, .toggle-cross span, .toggle-cross span:before, .toggle-cross span:after {
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}

.toggle-cross.active span {
    background-color: transparent;
}

.toggle-cross.active span:before, .toggle-cross.active span:after {
    top: 0;
}

.toggle-cross.active span:before {
    transform: rotate(45deg);
}

.toggle-cross.active span:after {
    transform: rotate(-45deg);
}

.count-badge {
    position: absolute;
    top: -7px;
    right: -7px;
    font-size: 10px;
    display: inline-block;
    text-align: center;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    z-index: 5;
}

.count-badge > span {
    letter-spacing: 0;
}

.icon-with-badge {
    position: relative;
    padding-right: 10px;
}

.icon-with-badge .count-badge {
    position: absolute;
    bottom: -0.3em;
    right: 0.3em;
}

.shop-variant-option .iradio {
    background: none;
}

.shop-variant-option.color-box {
    position: relative;
}

.progress,
.input-group .form-control:last-child, .input-group-addon:last-child, .input-group-btn:first-child>.btn-group:not(:first-child)>.btn, .input-group-btn:first-child>.btn:not(:first-child), .input-group-btn:last-child>.btn, .input-group-btn:last-child>.btn-group>.btn, .input-group-btn:last-child>.dropdown-toggle,
.input-group .form-control:first-child, .input-group-addon:first-child, .input-group-btn:first-child>.btn, .input-group-btn:first-child>.btn-group>.btn, .input-group-btn:first-child>.dropdown-toggle, .input-group-btn:last-child>.btn-group:not(:last-child)>.btn, .input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle) {
-webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
}