.ColorSwitcher,
.ColorSwitcher * {
    box-sizing: border-box;
}

.ColorSwitcher {
    position: fixed;
    top: 50%;
    left: -162px;
    width: 162px;
    padding: 20px 10px;
    background: #fff;
    border-radius: 0 3px 3px 0;
    box-shadow: 0 0 15px rgba(0,0,0,.15);
    -webkit-transform: translateY(-80%);
            transform: translateY(-80%);
    -webkit-transition: left .2s;
    transition: left .2s;
    z-index: 9999;
}

.ColorSwitcher--open {
    left: 0;
}

.ColorSwitcher__control,
.ColorSwitcher__switch {
    display: inline-block;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 0;
    cursor: pointer;
    -webkit-transition: all .2s;
    transition: all .2s;
}

.ColorSwitcher__control:focus,
.ColorSwitcher__switch:focus {
    outline: 0;
}

.ColorSwitcher__control {
	position: absolute;
	right: 0;
	left: 100%;
	border-radius: 0 3px 3px 0;
	box-shadow: 5px 0 7px rgba(0,0,0,.15);
	color: #fff;
	background: #e4353a;
}

.ColorSwitcher__control:before {
    content: "";
    display: inline-block;
    height: 100%;
    width: 100%;
    background-size: 70%;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(../fonts/089f147f05fd49468fd98ea285bdb283.woff);
    -webkit-animation: controlSpin 4s linear infinite;
            animation: controlSpin 4s linear infinite;
}

.ColorSwitcher--open .ColorSwitcher__control {
    background: #fff;
}

.ColorSwitcher--open .ColorSwitcher__control:before {
    background-image: url(../fonts/b25d536b98d945eaa91c69c2274c09c8.woff);
}

.ColorSwitcher__switchs {
    margin: -5px;
}

.ColorSwitcher__switch {
    border-radius: 3px;
    margin: 5px;
}

@-webkit-keyframes controlSpin {
    100% {
        -webkit-transform:rotate(360deg);
                transform:rotate(360deg);
    }
}

@keyframes controlSpin {
    100% {
        -webkit-transform:rotate(360deg);
                transform:rotate(360deg);
    }
}
