.theme.bottom0	{ position:fixed !important; bottom:0 }
.theme.right0	{ position:fixed !important; right:0 }
.theme.left0	{ position:fixed !important; left:0 }
.theme.top0	{ position:fixed !important; top:0 }

.theme {
  display: flex;
  align-items: center;
  z-index:99;
  opacity:50%;
  transition:1s;
  transition-delay:1s;
}

.theme:hover {
  opacity:100%;
  transition-delay:0;
  transition:0.2s;
}

.theme label {
  display: inline-block;
  height: 34px;
  position: relative;
  width: 60px;
}

.theme input { display:none }

.theme div {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
  border-radius: 34px;
  background-color: #888;
  cursor: pointer;
  transition: .3s;
  text-align:center;
  line-height:26px;
}

.theme div:before {
  position: absolute;
  bottom: 4px;
  left: 4px;
  border-radius: 50%;
  height: 26px;
  transition:0.3s;
  width: 26px;
  content: "🌞";
  background-color: #fff;
}

.theme input:checked + div {
  background-color: #444;
}

.theme input:checked + div:before {
  transform: translateX(26px);
  content: "🌜";
  background-color: #000;
}

.theme input:indeterminate + div:before {
  transform: translateX(13px);
  content: "👽";
  background-color: #444;
}

