/*=================================================
            Toggle Option
=================================================*/
/**
 * Custom Style for Toggle Control
 */

.customize-control-nv-toggle .toggle--wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    flex-direction: row;

    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -webkit-box-pack: start;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    -ms-flex-pack: start;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
}

.customize-control-nv-toggle .toggle--wrapper .customize-control-title {
    margin-bottom: 7px;
    vertical-align: middle;
    -webkit-box-flex: 2;
    -webkit-flex: 2 0 0;
    -ms-flex: 2 0 0;
    flex: 2 0 0;
}

.customize-control-nv-toggle .toggle--wrapper input[type=checkbox] {
    display: none;
}

.customize-control-nv-toggle {
    margin-bottom: 0
}

.customize-control-nv-toggle .toggle--wrapper label {
    background-color: #555d66;
    border-radius: 14px;
    cursor: pointer;
    display: inline-block;
    height: 20px;
    outline: none;
    position: relative;
    right: 0px;
    top: 2px;
    -webkit-transition: background 0.2s ease;
    transition: background 0.2s ease;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    width: 34px;
}

.customize-control-nv-toggle .toggle--wrapper label::after,
.customize-control-nv-toggle .toggle--wrapper label::before {
    content: "";
    display: block;
    position: absolute;
}

.customize-control-nv-toggle .toggle--wrapper label::after {
    border: 2px solid #555d66;
    border-radius: 50%;
    box-sizing: border-box;
    height: 12px;
    left: 4px;
    top: 4px;
    -webkit-transition: background 0.2s ease, -webkit-transform 0.2s ease;
    transition: background 0.2s ease, -webkit-transform 0.2s ease;
    transition: transform 0.2s ease, background 0.2s ease;
    transition: transform 0.2s ease, background 0.2s ease, -webkit-transform 0.2s ease;
    width: 12px;
}

.customize-control-nv-toggle .toggle--wrapper label::before {
    background-color: #eee;
    border-radius: 60px;
    bottom: 2px;
    left: 2px;
    right: 2px;
    top: 2px;
    -webkit-transition: background 0.2s ease;
    transition: background 0.2s ease;
}

.customize-control-nv-toggle .toggle--wrapper input[type=checkbox]:checked + label {
    background-color: #4ABBD5;
}

.customize-control-nv-toggle .toggle--wrapper input[type=checkbox]:checked + label::after {
    background-color: #4ABBD5;
    border: 2px solid #fff;
    -webkit-transform: translateX(14px);
    -ms-transform: translateX(14px);
    transform: translateX(14px);
}

.customize-control-nv-toggle .toggle--wrapper input[type=checkbox]:checked + label::before {
    background-color: #4ABBD5;
}

.customize-control-nv-toggle:hover .toggle--wrapper label::before {
    background-color: #d9dcdf;
}

/*=================================================
            Radio Image Control
=================================================*/
.customize-control-radio-image .ui-button {
    margin:        0;
    border-radius: 0;
    border:        none;
    background:    transparent;
}

.customize-control-radio-image .ui-button-text { padding: 0; }

.customize-control-radio-image img {
    box-sizing: border-box;
    max-width:  100%;
    height:     auto;
    padding:    1px;
    border:     4px solid transparent;
}

.customize-control-radio-image img:hover,
.customize-control-radio-image img:focus {
    border-color: #ddd;
}

.customize-control-radio-image .ui-state-active img {
    border-color: #00a0d2;
}

/*=================================================
            Repeater field
=================================================*/
.nv-clearfix:after,
.nv-clearfix:before{
    content: "";
    display: table;
}

.nv-clearfix:after{
    clear: both;
}

.nv-repeater-field-control{
    background: #FFF;
    margin-bottom: 12px;
    display: block;
}

.nv-repeater-footer{
    margin-top: 15px;
    text-align: right;
}

.nv-repeater-field-control:first-child .nv-repeater-footer{
    display: none;
}

.nv-repeater-field-title{
    padding: 13px 15px;
    line-height: 1;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    margin: 0;
    font-size: 1em;
    border: 1px solid #e5e5e5;
    cursor: move;
    position: relative;
    border-bottom: 0;
}

.nv-repeater-field-title:after {
    content: "\f142";
    font: 400 20px/1 dashicons;
    position: absolute;
    right: 0;
    top: 0;
    padding: 1px 2px 1px 0;
    margin-top: 10px;
    margin-right: 10px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    cursor: pointer;
}

.nv-repeater-field-control.expanded .nv-repeater-field-title:after{
    content: "\f140";
}

.nv-repeater-fields{
    padding: 0 10px 10px;
    border-top: none;
    line-height: 16px;
    border: 1px solid #e5e5e5;
    box-shadow: 0 1px 1px rgba(0,0,0,.04);
    display: none;
}

.nv-repeater-fields .customize-control-title{
    margin-top: 10px;
}

.nv-repeater-field-control.expanded .nv-repeater-fields{
    display: block;
}

.nv-reapeater-add-control-field {
    float: right;
}

.nv-reapeater-add-add-control-field:before {
    content: "\f132";
    display: inline-block;
    position: relative;
    left: -2px;
    top: -1px;
    font: 400 18px/1 dashicons;
    vertical-align: middle;
}

.nv-repeater-type-icon{
    overflow: hidden;
}

.nv-repeater-selected-icon{
    background: #F6F6F6;
    height: 45px;
    line-height: 45px;
    text-align: center;
    border: 1px solid #EEE;
    position: relative;
    margin-right: 45px;
    cursor: pointer;
    font-size: 28px;
}

.nv-repeater-selected-icon span{
    position: absolute;
    background: #F6F6F6;
    right: -45px;
    top: -1px;
    height: 45px;
    width: 45px;
    border: 1px solid #EEE;
    font-size: 20px;
}

.nv-repeater-icon-list{
    height: 215px;
    overflow-y: scroll;
    font-size: 18px;
    border: 1px solid #EEE;
    border-right: 0;
    border-top: 0;
    padding-bottom: 4%;
    display: none;
    cursor: pointer;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

.nv-repeater-icon-list li{
    float: left;
    margin: 4% 3% 0;
    height: 40px;
    width: 16%;
    text-align: center;
    line-height: 40px;
    border: 1px solid #EEE;
}

.nv-repeater-icon-list li:hover{
    background: #333;
    border: 1px solid #333;
    color: #FFF;
}

.nv-repeater-icon-list li.icon-active{
    background: #0073aa;
    border: 1px solid #0073aa;
    color: #FFF;
}

.customize-control-repeater .nv-limit-msg {
    display:  none;
}

.customize-control-repeater span.nv-limit-msg:nth-of-type(2) {
    display: block;
    background: #fff;
    padding: 10px 15px;
    margin: 10px 0 10px;
    border-left: 3px solid #ffb900;
}

/*=================================================
             multi checkbox
=================================================*/
.customize-control-checkbox-multiple ul {
    max-height: 200px;
    overflow: auto;
    border: 1px solid #ccc;
    padding: 10px;
    margin-top: 5px;
    list-style: none;
}

/*=================================================
             Pro theme link
=================================================*/
#customize-controls .control-section-upsell .accordion-section-title:hover,
#customize-controls .control-section-upsell .accordion-section-title:focus {
    background-color: #fff;
}

.control-section-upsell .accordion-section-title .button {
    margin-top:  -4px;
    font-weight: 700;
    margin-left: 8px;
    background-image: linear-gradient(to right,rgba(212,51,93, 1),rgba(255,86,39,1));
    border: none;
    color: #fff;
}

.control-section-upsell .accordion-section-title .button:hover {
    border: none;
    background-image: linear-gradient(to right,rgba(255,86,39,1),rgba(212,51,93, 1));
    -webkit-box-shadow: 0px 2px 2px rgba(0,0,0,0.1);
    text-decoration: none;
}