/**
*
* Inheriting box sizing slightly better best-practice
* https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/
*
*/

html {
  box-sizing: border-box;
}

*, *::before, *::after {
  box-sizing: inherit;
  margin: 0;
  padding: 0;
}

:root {
  --lead: black;
  --boulder: black;
  --longBreak: hsl(105, 16%, 40%);
  --bgc: var(--lead);
}

body {
  background-color: var(--bgc);
  transition: background-color 1s ease;
  font-family: Oswald, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  user-select: none;
}

progress {
  border-radius: 2px;
  width: 100%;
  height: 12px;
  position: fixed;
  top: 0;
}

progress::-webkit-progress-bar {
  background-color: rgba(0, 0, 0, 0.1);;
}

progress::-webkit-progress-value {
  background-color: #fff;
}
.app{
  height: 80%;
}

.timer {
  color: white;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 20px;
  text-align: center;
}

.clock {
  margin-top: 50px;
  margin-bottom: 30px;
  font-size: 31vw;
  line-height: 1;
  display: flex;
  align-items: center;
  font-family: Oswald, arial, sans-serif;
  width: 70vw;
  text-align: left;
}

.mode-buttons {
  position: absolute;
  top: 30px;
  right: 20px;
}

.bottom-buttons {
  position: absolute;
  bottom: 10px;
  left: 50%;
  margin-left: -200px;
}

.mode-button {
  font-size: 16px;
  height: 28px;
  cursor: pointer;
  box-shadow: none;
  font-weight: 300;
  color: #fff;
  border: 1px solid transparent;
  margin: 0px;
  border-radius: 4px;
  padding: 2px 12px;
  background: none;
}

.mode-button.active {
  border-color: #fff;
}

.main-button, .rest-button{
  cursor: pointer;
  box-shadow: rgb(235, 235, 235) 0px 6px 0px;
  font-size: 22px;
  height: 55px;
  text-transform: uppercase;
  color: hsl(175, 26%, 41%);
  font-weight: bold;
  width: 200px;
  background-color: white;
  border-width: initial;
  border-style: none;
  margin: 20px 0px 0px;
  padding: 0px 12px;
  border-radius: 4px;
  transition: color 0.5s ease-in-out 0s;
}

button:focus, button:active {
  outline: none;
}

.main-button.active {
  transform: translateY(6px);
  box-shadow: none;
  outline: none;
}

.hidden {
  display: none;
}

#refresh-js-btn{
  visibility: hidden;
}

#installBtn {
  display: none;
}

@media screen and (max-width: 550px) {
  .clock {
    font-size: 8rem;
  }

  #installBtn {
    display: block;
  }
}

.footer{
  position: absolute;
  text-align: center;
  width: 100%;
  height: 40px;
  background: rgb(39, 159, 187, 0.4) !important;
  bottom: 0px;
}

.footer h2{
  margin: 7px;
}

.cycle-label {
  color: white;
  margin-left: 10px;
  font-size: 22px;
  font-family: Oswald, arial, sans-serif;
}

.cycle-label input {
  margin-right: 6px;
}

@media (orientation: landscape) and (max-width: 1024px) {
  .bottom-buttons, .mode-buttons {
    display: none;
  }
}