* {
  box-sizing: border-box;
  outline: none;
  user-select: none;
}

body {
  align-items: center;
  background: radial-gradient(ellipse at center, rgba(248, 168, 42, 0) 0%, rgba(228, 111, 41, 0) 43%, rgba(244, 130, 117, 0.43) 100%);
  background-attachment: fixed;
  background-repeat: no-repeat;
  display: flex;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#00ffb3ce", endColorstr="#6effb5bd", GradientType=1);
  flex-direction: column;
  font-family: "Open Sans", sans-serif;
  height: 100vh;
  justify-content: center;
  min-width: 184px;
  overflow-x: hidden;
  transition: background-color 0.2s;
}

/* SCREEN WAKE LOCK */
    [data-wake-lock] span {
      --bgc: pink;
      --c: #ff4980;
      --ico: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" stroke-width="1.5" stroke-linecap="round" stroke="black" fill="none"><path stroke="none" d="M0 0h24v24H0z" /><line x1="3" y1="3" x2="21" y2="21" /><path d="M10.584 10.587a2 2 0 0 0 2.828 2.83" /><path d="M9.363 5.365a9.466 9.466 0 0 1 2.637 -.365c4 0 7.333 2.333 10 7c-.778 1.361 -1.612 2.524 -2.503 3.488m-2.14 1.861c-1.631 1.1 -3.415 1.651 -5.357 1.651c-4 0 -7.333 -2.333 -10 -7c1.369 -2.395 2.913 -4.175 4.632 -5.341" /></svg>');
      --ico-w: 3rem;
      --o: 0.9;
      --w: 4rem;

      background: var(--bgc);
      border: 0;
      border-radius: 50%;
      display: grid;
      height: var(--w);
      opacity: var(--o);
      place-items: center;
/*       position: absolute; */
      inset-block-start: 1rem;
      inset-inline-end: 1rem;
      width: var(--w);
    }
    [data-wake-lock] [type="checkbox"] {
      display: none;
    }
    [data-wake-lock] span::after {
      background-color: var(--c);
      content: "";
      display: block;
      height: var(--ico-w);
      mask: no-repeat center center/var(--ico-w) var(--ico);
      -webkit-mask: no-repeat center center/var(--ico-w) var(--ico);
      width: var(--ico-w);
    }
    [data-wake-lock] [type="checkbox"]:checked + span {
      --bgc: pink;
      --ico: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" stroke-width="1.5" stroke-linecap="round" stroke="black" fill="none"><path stroke="none" d="M0 0h24v24H0z" /><circle cx="12" cy="12" r="2" /><path d="M22 12c-2.667 4.667 -6 7 -10 7s-7.333 -2.333 -10 -7c2.667 -4.667 6 -7 10 -7s7.333 2.333 10 7" /></svg>');
    }

#pomodoro {
  margin-bottom: 43px;
  max-width: 512px;
  width: 100%;
}
#pomodoro #clock {
/*   background: url("https://scramblys.s3.us-east-2.amazonaws.com/img/begg.png") no-repeat center center; */
/*   background-size: contain; */
width: 100%;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  background: radial-gradient(ellipse farthest-corner at bottom, rgba(255, 160, 199, 0.2) 0%, rgba(255, 222, 181, 0) 100%);
/*
  margin-bottom: -6.25vw;
  padding: 20vw 0;
*/
}

.circle {
  width: 60vh;
  height: 60vh;
  position: relative;
}
.circle-item {
  width: 60vh;
  height: 60vh;
  position: absolute;
  top: 0;
  left: 0;
  border: 60px solid rgba(255,194,128, 0.8);
}
.circle-item:nth-child(1) {
  border-radius: 49% 50% 51% 52%;
  border: 73px solid rgba(255, 144, 95, 0.8);
}
.circle-item:nth-child(2) {
  border-radius: 47% 50% 53% 56%;
  -webkit-animation: rotation-01 4.5s linear infinite;
          animation: rotation-01 4.5s linear infinite;
}
.circle-item:nth-child(3) {
  border-radius: 56% 47% 50% 53%;
  -webkit-animation: rotation-02 5s linear infinite;
          animation: rotation-02 5s linear infinite;
}
.circle-item:nth-child(4) {
  border-radius: 53% 56% 47% 50%;
  -webkit-animation: rotation-01 5.5s linear infinite;
          animation: rotation-01 5.5s linear infinite;
}
.circle-item:nth-child(5) {
  border-radius: 50% 53% 56% 47%;
  -webkit-animation: rotation-02 6s linear infinite;
          animation: rotation-02 6s linear infinite;
}

@-webkit-keyframes rotation-01 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes rotation-01 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes rotation-02 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(-360deg);
  }
}
@keyframes rotation-02 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(-360deg);
  }
}


@media all and (min-width: 512px) {
  #pomodoro #clock {
    margin-bottom: -32px;
    padding: 14px 0;
  }
}
@media all and (max-width: 184px) {
  #pomodoro #clock {
    margin-bottom: -20px;
    margin-bottom: -11.5px;
    padding: 73px 0;
  }
}
#pomodoro #clock #timer {
  align-items: center;
  cursor: pointer;
  display: flex;
  flex-direction: column;
}
#pomodoro #clock #timer #title {
  color: #FF8B8A;
  font-size: 20px;
  line-height: 28px;
  margin: 130px 0 1px;
}
@media all and (max-width: 512px) {
  #pomodoro #clock #timer #title {
    font-size: 4.5vw;
    line-height: 5.5vw;
  }
}
@media all and (max-width: 184px) {
  #pomodoro #clock #timer #title {
    font-size: 10px;
    line-height: 10px;
  }
}
#pomodoro #clock #timer #countdown {
  color: #ff778d;
  display: flex;
  font-size: 43px;
  font-weight: 600;
  line-height: 43px;
}
@media all and (max-width: 512px) {
  #pomodoro #clock #timer #countdown {
    font-size: 8.4vw;
    line-height: 8.4vw;
  }
}
@media all and (max-width: 184px) {
  #pomodoro #clock #timer #countdown {
    font-size: 15.4px;
    line-height: 15.4px;
  }
}
#pomodoro #clock #timer #countdown #minutes::after {
  content: ":";
}
#pomodoro #clock #timer #controls {
  align-items: center;
  display: flex;
  color: #FF6292;
  flex-direction: column;
  font-size: 15px;
  font-weight: 700;
  line-height: 15px;
  margin-top: 5px;
  text-align: center;
  text-transform: uppercase;
}
#pomodoro #clock #timer #controls .fas, #pomodoro #clock #timer #controls .svg-inline--fa {
  position: relative;
}
#pomodoro #clock #timer #controls #start, #pomodoro #clock #timer #controls #pause, #pomodoro #clock #timer #controls #reset {
  white-space: nowrap;
}
#pomodoro #clock #timer #controls #start .fa-play {
  font-size: 77%;
  top: -1px;
}
#pomodoro #clock #timer #controls #start:hover {
  color: #ff4980;
}
#pomodoro #clock #timer #controls #pause .fa-pause {
  font-size: 90%;
  top: -1px;
  transform: scaleX(0.84);
}
#pomodoro #clock #timer #controls #pause:hover {
  color: #ff4980;
}
#pomodoro #clock #timer #controls #reset {
  position: absolute;
  margin-top: 17.56px;
  transition: margin-top 0.43s, opacity 0.43s;
}
#pomodoro #clock #timer #controls #reset .fa-sync-alt {
  font-size: 84%;
}
#pomodoro #clock #timer #controls #reset:hover {
  color: #ff4980;
}
#pomodoro #clock #timer #controls.reset #pause {
  display: none;
}
#pomodoro #clock #timer #controls.reset #reset {
  margin-top: 0;
  opacity: 0;
  z-index: -1;
}
#pomodoro #clock #timer #controls.started #start {
  display: none;
}
#pomodoro #clock #timer #controls.started #reset {
  opacity: 0;
}
#pomodoro #clock #timer #controls.paused #pause {
  display: none;
}
@media all and (max-width: 512px) {
  #pomodoro #clock #timer #controls {
    font-size: 5.5vw;
    line-height: 5.5vw;
  }
  #pomodoro #clock #timer #controls #start, #pomodoro #clock #timer #controls #pause, #pomodoro #clock #timer #controls #reset {
    font-size: 3vw;
    line-height: 3vw;
  }
  #pomodoro #clock #timer #controls #reset {
    margin-top: 3.43vw;
  }
}
@media all and (max-width: 184px) {
  #pomodoro #clock #timer #controls {
    font-size: 10px;
    line-height: 10px;
  }
  #pomodoro #clock #timer #controls #start, #pomodoro #clock #timer #controls #pause, #pomodoro #clock #timer #controls #reset {
    font-size: 5.5px;
    line-height: 5.5px;
  }
  #pomodoro #clock #timer #controls #reset {
    margin-top: 6.31px;
  }
}
#pomodoro #options {
  color: #FF6292;
  display: flex;
  font-size: 28px;
  font-weight: normal;
  justify-content: center;
  margin-bottom: 28px;
  text-align: center;
}
#pomodoro #options .option-title {
  color: #FF6F8A;
  font-size: 12px;
  font-weight: bold;
  margin-top: 8px;
  margin-bottom: -6px;
  text-transform: uppercase;
}
#pomodoro #options .fa-angle-double-up {
  color: #FF848A;
  cursor: pointer;
}
#pomodoro #options .fa-angle-double-down {
  color: #FF5792;
  cursor: pointer;
}
#pomodoro #options #session, #pomodoro #options #break {
  align-items: center;
  display: flex;
  flex-direction: column;
}
#pomodoro #options input[type=number] {
  background: linear-gradient(#fff0f0, #ffd2e0);
  border: 0;
  border-bottom: calc(3px + .28vw) solid #FF6292;
  border-radius: 10px;
  color: #FF6292;
  font: bold calc(21px + 1.43vw) "Open Sans", sans-serif;
  margin: calc(5px + .43vw) calc(3px + .43vw);
  padding: calc(3px + .43vw) calc(5px + .43vw);
  text-align: center;
}
#pomodoro #options input[type=number]::-webkit-inner-spin-button, #pomodoro #options input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
}
@media all and (min-width: 512px) {
  #pomodoro #options input[type=number] {
    border-bottom: 4.43px solid #FF6292;
    font: bold 28.43px "Open Sans", sans-serif;
    margin: 7.2px 5.2px;
    padding: 5.2px 7.2px;
  }
}
@media all and (max-width: 184px) {
  #pomodoro #options input[type=number] {
    border-bottom: 3.5px solid #FF6292;
    font: bold 23.6px "Open Sans", sans-serif;
    margin: 5.7px 3.7px;
    padding: 3.7px 5.7px;
  }
}

audio {
  display: none;
}

#audio-selector {
  display: flex;
  left: 0;
  position: fixed;
  top: 0;
  width: 100vw;
}
#audio-selector .theme {
  background: linear-gradient(to bottom, rgba(255, 99, 127, 0.28) 0%, rgba(255, 99, 127, 0.28) 1%, rgba(255, 98, 143, 0) 84%, rgba(255, 98, 146, 0) 100%);
  color: #e46372;
  cursor: pointer;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#47ff637f", endColorstr="#00ff6292", GradientType=0);
  flex: 1 1 25%;
  font: 600 calc(9px + 1vw) "Open Sans", sans-serif;
  margin: 0 2px 0 0;
  padding: 2vw 1vw 5vw;
  text-align: center;
  transition: all 0.43s;
  white-space: nowrap;
}
#audio-selector .theme:last-child {
  margin-right: 0;
}
#audio-selector .theme:hover, #audio-selector .theme.selected {
  background: linear-gradient(to bottom, rgba(255, 99, 127, 0.43) 0%, rgba(255, 99, 127, 0.43) 1%, rgba(255, 98, 143, 0) 84%, rgba(255, 98, 146, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#6eff637f", endColorstr="#00ff6292", GradientType=0);
}
@media all and (min-width: 512px) {
  #audio-selector .theme {
    font-size: 15.33px;
    padding: 9px 5px 25px;
  }
}
@media all and (max-width: 300px) {
  #audio-selector {
    flex-wrap: wrap;
  }
  #audio-selector .theme {
    flex: 1 0 100%;
    font-size: 14px;
    padding: 7px;
  }
}

@media all and (max-width: 700px) {
 .circle-item {
  width: 50vh;
  height: 50vh;
  position: absolute;
  top: 0;
  left: 3vh;	
 }
}
