.switch {
  position: relative;
  display: inline-block;
  width: 34px;
  height: 20px;
}
.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}
.switch .slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  transition: 0.3s;
  border-radius: 10px;
  display: flex;
  align-items: center;
  padding: 3px;
  background-color: #22252a;
  box-shadow: inset 0 0 0 1px rgba(233, 239, 252, 0.06), inset 0 1px 0 0 rgba(233, 239, 252, 0.06), inset 0 4px 6px 0 rgba(233, 239, 252, 0.06);
}
.switch .slider:hover {
      box-shadow: inset 0 0 0 1px rgba(233, 239, 252, 0.12), inset 0 1px 0 0 rgba(233, 239, 252, 0.12), inset 0 4px 6px 0 rgba(233, 239, 252, 0.12);

}
.switch .slider:before {
  content: "";
  height: 10px;
  width: 10px;
  background-color: rgba(233, 239, 252, 0.85);
  border: 2px solid #e9effc;
  border-radius: 50%;
  transition: 0.3s;
}
.switch input:checked + .slider {
  background-color: #6833ed;
  box-shadow: inset 0px 0px 1px 2px rgba(233, 239, 252, 0.15), inset 0 1px 0 0 rgba(233, 239, 252, 0.2), inset 0 4px 6px 0 rgba(233, 239, 252, 0.06);
}
.switch input:checked + .slider:before {
  transform: translateX(15px);
  background-color: #e0ccff;
  border-color: #f3ebff;
}



.download:active, .mover>button:active {
    box-shadow: inset 0 0 4px 1px #131314;
    transform: scale(.98);
}

.page .download {
    background: #629e88;
    background: linear-gradient(to right, #639697, #639c75);
    padding: 6px;
    border-radius: 6px;
    border:0;
}

@media (max-width:570px) {
    .controls {
    flex-direction: column;
}
}


.overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.8);
    z-index: 999;
 }
.overlay.active {
    display: block;
}
.feedback {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: var(--b);
    border:1px solid var(--d);
    padding: 10px;
    border-radius: 12px;
    z-index: 1001;
    display: none;
    flex-direction: column;
    gap: 12px;
    width: 500px;
    max-width: 90%;
}
.feedback.active {
    display: flex;
}
.close {
    background: none;
    border: none;
    cursor: pointer;
    align-self: flex-end;
}

.close:hover, [data-upload]:hover {
    opacity: .6;
}
 [data-upload] { cursor: pointer;}
textarea {
    min-height: 80px;
    resize: vertical;
    background: var(--c);
    border:1px solid var(--d);
    border-radius: 6px;
    padding: 6px;
    
}
textarea:focus {
border-color:var(--e)
}
#sendFeedback {
    background: var(--c);
    border:1px solid var(--d);
    padding: 7px;
    border-radius: 6px;
 }

#sendFeedback:active { 
    box-shadow: inset 0 0 4px 1px #131314;
}
 

.report {
    position: fixed;
    right:10px;
    bottom:10px;
    background-color: var(--c);
    border:1px dashed var(--d);
    padding: 6px;
    display: flex;
    border-radius: 50%;
}


[data-text] {
  position: relative;
  display: inline-block;
}

[data-text]:hover::before {
  content: attr(data-text);
  position: absolute;
  z-index: 9999;
  background-color: var(--a);
  color: black;
  padding: 6px 10px;
  border-radius: 6px;
  white-space: nowrap;
  font: inherit;
  pointer-events: none;
}

 [data-text][data-position="top"]::before,
[data-text]:not([data-position])::before {
  bottom: 100%;            
  margin-bottom: 11px;
  left: 50%;
  transform: translateX(-50%);
}

 [data-text][data-position="bottom"]::before {
  top: 100%;
  margin-top: 11px;
  left: 50%;
  transform: translateX(-50%);
}

 [data-text][data-position="left"]::before {
  right: 100%;
  margin-right: 11px;
  top: 50%;
  transform: translateY(-50%);
}

 [data-text][data-position="right"]::before {
  left: 100%;
  margin-left: 11px;
  top: 50%;
  transform: translateY(-50%);
}