@charset "UTF-8";
@keyframes slide-left {
    0% {
        transform: translateX(0%);
        content: "ON";
        opacity: .7;
        text-align: left;
    }

    49% {
        transform: translateX(-10%);
        content: "ON";
        opacity: 0;
        text-align: left;
    }

    50% {
        transform: translateX(10%);
        content: "OFF";
        opacity: 0;
        text-align: right;
    }

    100% {
        transform: translateX(0%);
        content: "OFF";
        opacity: .7;
        text-align: right;
    }
}

@keyframes slide-right {
    0% {
        transform: translateX(0%);
        content: "OFF";
        opacity: .7;
        text-align: right;
    }

    49% {
        transform: translateX(10%);
        content: "OFF";
        opacity: 0;
        text-align: right;
    }

    50% {
        transform: translateX(-10%);
        opacity: 0;
        content: "ON";
        text-align: left;
    }

    100% {
        transform: translateX(0%);
        opacity: .7;
        content: "ON";
        text-align: left;
    }
}

/* Default classes */
input.vt-toggle {
    position: relative;
    -webkit-appearance: none;
    /* -moz-appearance: none; */
    appearance: none;
    top: 0;
    left: 0;
    width: 44px;
    height: 22px;
    margin: 5px;
    border-radius: 11px;
    background: rgb(128, 128, 128);
    box-sizing: border-box;
    box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
    overflow: hidden;
    cursor: pointer;
}

input.vt-toggle:checked {
    background: #3778ff;
}

input.vt-toggle:after {
    position: absolute;
    content: '';
    font-size: 10px;
    line-height: 20px;
    text-align: center;
    color: rgba(0, 0, 0, 0.2);
    top: 1px;
    left: 1px;
    width: 20px;
    height: 20px;
    border-radius: 10px;
    transition: 0.3s cubic-bezier(0.88, 0.04, 0.33, 1.05);
    background: #FFF;
    box-shadow: 0 1px 0 1px rgba(0, 0, 0, 0.25);
}

input.vt-toggle:checked:after {
    transform: translateX(22px);
}

input.vt-toggle:active:after {
    width: 30px;
}

input.vt-toggle:active:checked:after {
    margin-left: -10px;
    /* transform: translateX($toggleWidth - ($handleWidth * $multiplier) - ($handleMargin * 2)); */
}

input.vt-toggle:focus:after, input.vt-toggle:hover:after {
    content: "●";
}

input.vt-toggle:disabled {
    cursor: not-allowed;
    opacity: .5;
}

input.vt-toggle:disabled:after {
    opacity: 1;
    content: '•';
    color: rgba(0, 0, 0, 0.2);
}

input[type="checkbox"].vt-toggle.xs {
    position: relative;
    -webkit-appearance: none;
    /* -moz-appearance: none; */
    appearance: none;
    top: 0;
    left: 0;
    width: 18px;
    height: 12px;
    margin: 5px;
    border-radius: 6px;
    background: rgb(128, 128, 128);
    box-sizing: border-box;
    box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
    overflow: hidden;
    cursor: pointer;
}

input[type="checkbox"].vt-toggle.xs:checked {
    background: #3778ff;
}

input[type="checkbox"].vt-toggle.xs:after {
    position: absolute;
    content: '';
    font-size: 5px;
    line-height: 10px;
    text-align: center;
    color: rgba(0, 0, 0, 0.2);
    top: 1px;
    left: 1px;
    width: 10px;
    height: 10px;
    border-radius: 5px;
    transition: 0.3s cubic-bezier(0.88, 0.04, 0.33, 1.05);
    background: #FFF;
    box-shadow: 0 1px 0 1px rgba(0, 0, 0, 0.25);
}

input[type="checkbox"].vt-toggle.xs:checked:after {
    transform: translateX(6px);
}

input[type="checkbox"].vt-toggle.xs:active:after {
    width: 15px;
}

input[type="checkbox"].vt-toggle.xs:active:checked:after {
    margin-left: -5px;
    /* transform: translateX($toggleWidth - ($handleWidth * $multiplier) - ($handleMargin * 2)); */
}

input[type="checkbox"].vt-toggle.xs:focus:after, input[type="checkbox"].vt-toggle.xs:hover:after {
    content: "●";
}

input[type="checkbox"].vt-toggle.xs:disabled {
    cursor: not-allowed;
    opacity: .5;
}

input[type="checkbox"].vt-toggle.xs:disabled:after {
    opacity: 1;
    content: '•';
    color: rgba(0, 0, 0, 0.2);
}

input[type="checkbox"].vt-toggle.sm {
    position: relative;
    -webkit-appearance: none;
    /* -moz-appearance: none; */
    appearance: none;
    top: 0;
    left: 0;
    width: 32px;
    height: 16px;
    margin: 5px;
    border-radius: 8px;
    background: rgb(128, 128, 128);
    box-sizing: border-box;
    box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
    overflow: hidden;
    cursor: pointer;
}

input[type="checkbox"].vt-toggle.sm:checked {
    background: #3778ff;
}

input[type="checkbox"].vt-toggle.sm:after {
    position: absolute;
    content: '';
    font-size: 7px;
    line-height: 14px;
    text-align: center;
    color: rgba(0, 0, 0, 0.2);
    top: 1px;
    left: 1px;
    width: 14px;
    height: 14px;
    border-radius: 7px;
    transition: 0.3s cubic-bezier(0.88, 0.04, 0.33, 1.05);
    background: #FFF;
    box-shadow: 0 1px 0 1px rgba(0, 0, 0, 0.25);
}

input[type="checkbox"].vt-toggle.sm:checked:after {
    transform: translateX(16px);
}

input[type="checkbox"].vt-toggle.sm:active:after {
    width: 21px;
}

input[type="checkbox"].vt-toggle.sm:active:checked:after {
    margin-left: -7px;
    /* transform: translateX($toggleWidth - ($handleWidth * $multiplier) - ($handleMargin * 2)); */
}

input[type="checkbox"].vt-toggle.sm:focus:after, input[type="checkbox"].vt-toggle.sm:hover:after {
    content: "●";
}

input[type="checkbox"].vt-toggle.sm:disabled {
    cursor: not-allowed;
    opacity: .5;
}

input[type="checkbox"].vt-toggle.sm:disabled:after {
    opacity: 1;
    content: '•';
    color: rgba(0, 0, 0, 0.2);
}

input[type="checkbox"].vt-toggle.lg {
    position: relative;
    -webkit-appearance: none;
    /* -moz-appearance: none; */
    appearance: none;
    top: 0;
    left: 0;
    width: 64px;
    height: 32px;
    margin: 5px;
    border-radius: 16px;
    background: rgb(128, 128, 128);
    box-sizing: border-box;
    box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
    overflow: hidden;
    cursor: pointer;
}

input[type="checkbox"].vt-toggle.lg:checked {
    background: #3778ff;
}

input[type="checkbox"].vt-toggle.lg:before {
    display: block;
    content: "";
    font-size: 11.2px;
    line-height: 32px;
    padding-right: .5em;
    padding-left: 1em;
    color: white;
    animation: slide-left 0.3s cubic-bezier(0.88, 0.04, 0.33, 1.05) forwards;
    animation-delay: 0s;
    opacity: 0;
}

input[type="checkbox"].vt-toggle.lg:checked:before {
    /* content: "ON"; */
    /* text-align:left; */
    animation: slide-right 0.3s cubic-bezier(0.88, 0.04, 0.33, 1.05) forwards;
    animation-delay: 0s;
}

input[type="checkbox"].vt-toggle.lg:after {
    position: absolute;
    content: '';
    font-size: 14px;
    line-height: 28px;
    text-align: center;
    color: rgba(0, 0, 0, 0.2);
    top: 2px;
    left: 2px;
    width: 28px;
    height: 28px;
    border-radius: 14px;
    transition: 0.3s cubic-bezier(0.88, 0.04, 0.33, 1.05);
    background: #FFF;
    box-shadow: 0 1px 0 1px rgba(0, 0, 0, 0.25);
}

input[type="checkbox"].vt-toggle.lg:checked:after {
    transform: translateX(32px);
}

input[type="checkbox"].vt-toggle.lg:active:after {
    width: 42px;
}

input[type="checkbox"].vt-toggle.lg:active:checked:after {
    margin-left: -14px;
    /* transform: translateX($toggleWidth - ($handleWidth * $multiplier) - ($handleMargin * 2)); */
}

input[type="checkbox"].vt-toggle.lg:focus:after, input[type="checkbox"].vt-toggle.lg:hover:after {
    content: "●";
}

input[type="checkbox"].vt-toggle.lg:disabled {
    cursor: not-allowed;
    opacity: .5;
}

input[type="checkbox"].vt-toggle.lg:disabled:after {
    opacity: 1;
    content: '•';
    color: rgba(0, 0, 0, 0.2);
}

label.vt-toggle {
    display: block;
    cursor: pointer;
    min-height: 22px;
    margin: 5px;
}

label.vt-toggle input {
    display: inline-block;
    margin: 0;
    float: right;
}

input[type="checkbox"].vt-toggle.square {
    position: relative;
    -webkit-appearance: none;
    /* -moz-appearance: none; */
    appearance: none;
    top: 0;
    left: 0;
    width: 32px;
    height: 16px;
    margin: 5px;
    border-radius: 0.8px;
    background: rgb(128, 128, 128);
    box-sizing: border-box;
    box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
    overflow: hidden;
    cursor: pointer;
}

input[type="checkbox"].vt-toggle.square:checked {
    background: #3778ff;
}

input[type="checkbox"].vt-toggle.square:after {
    position: absolute;
    content: '|||';
    font-size: 7px;
    line-height: 14px;
    text-align: center;
    color: rgba(0, 0, 0, 0.2);
    top: 1px;
    left: 1px;
    width: 14px;
    height: 14px;
    border-radius: 0.7px;
    transition: 0.3s cubic-bezier(0.88, 0.04, 0.33, 1.05);
    background: #FFF;
    box-shadow: 0 1px 0 1px rgba(0, 0, 0, 0.25);
}

input[type="checkbox"].vt-toggle.square:checked:after {
    transform: translateX(16px);
}

input[type="checkbox"].vt-toggle.square:active:after {
    width: 21px;
}

input[type="checkbox"].vt-toggle.square:active:checked:after {
    margin-left: -7px;
    /* transform: translateX($toggleWidth - ($handleWidth * $multiplier) - ($handleMargin * 2)); */
}

input[type="checkbox"].vt-toggle.square:focus:after, input[type="checkbox"].vt-toggle.square:hover:after {
    content: "●";
}

input[type="checkbox"].vt-toggle.square:disabled {
    cursor: not-allowed;
    opacity: .5;
}

input[type="checkbox"].vt-toggle.square:disabled:after {
    opacity: 1;
    content: '•';
    color: rgba(0, 0, 0, 0.2);
}

input[type="checkbox"].vt-toggle.long {
    position: relative;
    -webkit-appearance: none;
    /* -moz-appearance: none; */
    appearance: none;
    top: 0;
    left: 0;
    width: 64px;
    height: 16px;
    margin: 5px;
    border-radius: 2px;
    background: rgb(128, 128, 128);
    box-sizing: border-box;
    box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
    overflow: hidden;
    cursor: pointer;
}

input[type="checkbox"].vt-toggle.long:checked {
    background: #3778ff;
}

input[type="checkbox"].vt-toggle.long:before {
    display: block;
    content: "";
    font-size: 5.6px;
    line-height: 16px;
    padding-right: .5em;
    padding-left: 1em;
    color: white;
    animation: slide-left 0.3s cubic-bezier(0.88, 0.04, 0.33, 1.05) forwards;
    animation-delay: 0s;
    opacity: 0;
}

input[type="checkbox"].vt-toggle.long:checked:before {
    /* content: "ON"; */
    /* text-align:left; */
    animation: slide-right 0.3s cubic-bezier(0.88, 0.04, 0.33, 1.05) forwards;
    animation-delay: 0s;
}

/*input[type="checkbox"].vt-toggle.long:after {*/
/*    position: absolute;*/
/*    content: '|||';*/
/*    font-size: 7px;*/
/*    line-height: 14px;*/
/*    text-align: center;*/
/*    color: rgba(0, 0, 0, 0.2);*/
/*    top: 1px;*/
/*    left: 1px;*/
/*    width: 14px;*/
/*    height: 14px;*/
/*    border-radius: 1.75px;*/
/*    transition: 0.3s cubic-bezier(0.88, 0.04, 0.33, 1.05);*/
/*    background: #FFF;*/
/*    box-shadow: 0 1px 0 1px rgba(0, 0, 0, 0.25);*/
/*}*/

input[type="checkbox"].vt-toggle.long:checked:after {
    transform: translateX(48px);
}

input[type="checkbox"].vt-toggle.long:active:after {
    width: 21px;
}

input[type="checkbox"].vt-toggle.long:active:checked:after {
    margin-left: -7px;
    /* transform: translateX($toggleWidth - ($handleWidth * $multiplier) - ($handleMargin * 2)); */
}

input[type="checkbox"].vt-toggle.long:focus:after, input[type="checkbox"].vt-toggle.long:hover:after {
    content: "●";
}

input[type="checkbox"].vt-toggle.long:disabled {
    cursor: not-allowed;
    opacity: .5;
}

input[type="checkbox"].vt-toggle.long:disabled:after {
    opacity: 1;
    content: '•';
    color: rgba(0, 0, 0, 0.2);
}

input[type="checkbox"].vt-toggle.custom {
    position: relative;
    -webkit-appearance: none;
    /* -moz-appearance: none; */
    appearance: none;
    top: 0;
    left: 0;
    width: 64px;
    height: 22px;
    margin: 5px;
    border-radius: 2.75px;
    background: #ed5c65;
    box-sizing: border-box;
    box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.2);
    overflow: hidden;
    cursor: pointer;
}

input[type="checkbox"].vt-toggle.custom:checked {
    background: #7e7;
}

input[type="checkbox"].vt-toggle.custom:before {
    display: block;
    content: "";
    font-size: 7.2px;
    line-height: 22px;
    padding-right: .5em;
    padding-left: 1em;
    color: white;
    animation: slide-left 0.3s cubic-bezier(0.88, 0.04, 0.33, 1.05) forwards;
    animation-delay: 0s;
    opacity: 0;
}

input[type="checkbox"].vt-toggle.custom:checked:before {
    /* content: "ON"; */
    /* text-align:left; */
    animation: slide-right 0.3s cubic-bezier(0.88, 0.04, 0.33, 1.05) forwards;
    animation-delay: 0s;
}

input[type="checkbox"].vt-toggle.custom:after {
    position: absolute;
    content: '|||';
    font-size: 9px;
    line-height: 18px;
    text-align: center;
    color: rgba(0, 0, 0, 0.2);
    top: 2px;
    left: 2px;
    width: 18px;
    height: 18px;
    border-radius: 2.25px;
    transition: 0.3s cubic-bezier(0.88, 0.04, 0.33, 1.05);
    background: #FFF;
    box-shadow: 0 1px 0 1px rgba(0, 0, 0, 0.25);
}

input[type="checkbox"].vt-toggle.custom:checked:after {
    transform: translateX(42px);
}

input[type="checkbox"].vt-toggle.custom:active:after {
    width: 27px;
}

input[type="checkbox"].vt-toggle.custom:active:checked:after {
    margin-left: -9px;
    /* transform: translateX($toggleWidth - ($handleWidth * $multiplier) - ($handleMargin * 2)); */
}

input[type="checkbox"].vt-toggle.custom:focus:after, input[type="checkbox"].vt-toggle.custom:hover:after {
    content: "●";
}

input[type="checkbox"].vt-toggle.custom:disabled {
    cursor: not-allowed;
    opacity: .5;
}

input[type="checkbox"].vt-toggle.custom:disabled:after {
    opacity: 1;
    content: '•';
    color: rgba(0, 0, 0, 0.2);
}

input[type="checkbox"].vt-toggle.custom:focus:after, input[type="checkbox"].vt-toggle.custom:hover:after {
    content: "|||";
    color: blue;
    box-shadow: 0 2px 1px black;
}

input[type="checkbox"].vt-toggle.custom:checked:before {
    color: blue;
}