@import url('https://fonts.googleapis.com/css2?family=Roboto&display=swap');
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: Roboto, sans-serif;
}

body {
    margin: 0;
    height: 100%;
    overflow: hidden
}

header {
    padding: 2vmin;
    text-align: center;
    font-size: 2vmin;
}
.tutorial {
    text-align: left;
}
@media (orientation: landscape) {
    .tutorial {
        display: none;
    }
}

#scaleScrollWrapper {
    text-align: center;
    margin-top: 2.5vmax;
}
.scroll {
    position: absolute;
    -webkit-appearance: none;
    width: 80%;
    left: 10%;
    height: 1vmin;
    border-radius: 5px;  
    background: #d3d3d3;
    outline: none;
    pointer-events: none;
}
.scroll::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 3vmin;
    height: 5vmin;
    border-radius: 50%; 
    background: #9d9d9d;
    cursor: pointer;
    pointer-events: auto;
}
.scroll::-moz-range-thumb {
    width: 3vmin;
    height: 5vmin;
    border-radius: 50%;
    background: #9d9d9d;
    cursor: pointer;
    pointer-events: auto;
}
#scaleScrollMax {
    background-color: transparent;
}
#scaleScrollMid {
    background-color: transparent;
}
#scaleScrollMid::-webkit-slider-thumb {
    width: 3vmin;
    height: 3vmin;
}
#scaleScrollMid::-moz-range-thumb {
    width: 3vmin;
    height: 3vmin;
}

#settings {
    margin-top: 5vmax;
    text-align: center;
}
.searchBar {
    font-size: 1.5vw;
}
.dropdown {
    font-size: 1.5vw;
    color: black;
}
.dropdown-text {
    font-size: 1.5vw;
    color: black;
}

.scaleInput {
    width: 3vw;
    font-size: 1.5vw;
    text-align: center;
}
@media (orientation:portrait) {
    .dropdown {
        font-size: 2vw;
    }
    .dropdown-text {
        font-size: 2vw;
    }
    .scaleInput {
        width: 3.5vw;
        font-size: 2vw;
        line-height: 2.5vw;
    }
}

#scale {
    transform: scale(.8);
}
#line {
    border: none;
    text-align: center;
    height: .3vmin;
    background: black;
}
#start {
    float:left;
}
#end {
    float:right;
}
#middle {
    position: relative;
    left: 49vw;
}
.number {
    position: relative;
    bottom: 2vmin;
}

.option {
    position: absolute;
    transform-origin: top center;
    text-align: center;
}

.text {
    position: absolute;
    text-align: center;
    margin-top: 50%;
    padding: 5px;
    background-color: rgb(231, 231, 231);
    display: none;

    left: 50%;
    transform: translate(-50%);
    width: 20vw;
    z-index: 2;

    font-size: min(18px, max(1.6vmax, 13px));
}

.image {
    border: .15vw solid black;
    border-radius: 50%;
    display: inline-block;
    position: relative;
    overflow: hidden;
    transition: transform .25s;
    -webkit-transition: transform .25s;
    -webkit-transition: -webkit-transform .25s;
    z-index: 0;
    transform-origin: top center;
}

.image img {
    width: 100%;
    height: auto;

    -webkit-user-drag: none;
    -webkit-touch-callout:none;
    -webkit-user-select:none;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
}

@media (orientation: landscape){
    .image {
        width: 8vw;
        height: 8vw;
    }
    .options{
        height: 8vmax;
    }

    #modal-image {
        height: 100%;
        width: auto;
        max-width: 50%;
        overflow: hidden;
        box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    }

    #modal-image img {
        height: 100%;
        width: auto;
    }

    .modal-text {
        position: relative;
        top: 0;
        left: 2vmin;
    }

    .in-modal-content {
        float: left;
    }

    .modal-content {overflow: scroll;}
}
@media (orientation: portrait){
    header {
        padding-top: 15vh;
    }
    h1 {
        padding-top: 7vh;
    }

    .image {
        width: 10vw;
        height: 10vw;
    }
    .options{
        height: 12vw;
    }

    #modal-image {
        width: 100%;
        height: 50%;
        overflow:hidden;
        background-image: url(images/turningred.jfif);
        text-align:center;
        background-size: auto 100%;
        background-repeat: repeat-x;
        box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
        box-shadow: 0 0 50vh black inset;
    }

    #modal-image img {
        width: auto;
        height: 100%;
        box-shadow: 0 0 30vh 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    }

    .modal-text {
        padding-top: 1vh;
    }
    #review {
        padding-top: 1vh;
    }

    .modal-content {overflow: hidden;}
}

#title {
    font-size: min(25px, max(3vmax, 15px));
    margin-right: min(32px, max(4vmax, 20px));
    margin-top: 5px;
}
#rating {
    font-size: min(20px, max(2.5vmax, 12px));
    margin-right: min(32px, max(4vmax, 20px));
    background-color:black;
    color: white;
    font-weight: bold;
    padding: 5px;
    border-radius: 10%;
}
#review {
    font-size: min(18px, max(1.2vmax, 13px));
    margin-right: min(32px, max(4vmax, 20px));
}

/* The Modal (background) */
.modal {
    display: none; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 10040; /* Sit on top */
    left: 0;
    top: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: hidden; /* Enable scroll if needed */
    background-color: rgb(0,0,0); /* Fallback color */
    background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}
  
  /* Modal Content/Box */
.modal-content {
    position: relative;
    background-color: #fefefe;
    margin: 5% auto; /* 15% from the top and centered */
    padding: 2vmin;
    border: 1px solid #888;
    width: 80%; /* Could be more or less, depending on screen size */
    height: 85%;
    overflow: auto;
}
  
  /* The Close Button */
  .close {
    position: absolute;
    color: #aaa;
    font-size: min(32px, max(4vmax, 20px));
    font-weight: bold;
    top: 1vmin;
    right: 3vmin;
  }
  
  .close:hover,
  .close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
  }

#left-arrow {
    left: 2%;
}
#right-arrow {
    right: 2%;
}
.arrows {
    bottom: 10%;
    position: fixed;
    display:flex;
    justify-content: center;
    align-content: center;
    flex-direction: column;
    text-align: center;
    width: 4vmax;
    height: 6vmax;
    border: .1vmax solid lightgray;
    border-radius: 20%;
    font-size: 5vmax;
    color: lightgray;
    background: white;

    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    touch-action: manipulation;
}
.arrows:hover,
.arrows:focus {
    color: rgb(33, 33, 33);
    border: .1vw solid gray;
}

#preview-div {
    display: block;
}

.preview {
    display: inline-block;
    width: 30%;
    height: 40vh;
    position: static;
    margin: 1vw;
    margin-top: 5vh;
    padding: 1vw;
    background-color: rgb(240, 240, 240);
    box-shadow: 0 0 1vw rgba(0, 0, 0, 0.079) inset;
    overflow: hidden;
    text-align: left;

    border: none;
    border-radius: 3%;
    transition: transform .25s;
    -webkit-transition: transform .25s;
    -webkit-transition: -webkit-transform .25s;
    -webkit-appearance: none;
    
}
.preview:hover {
    transform: scale(1.03);
    -webkit-transform: scale(1.03);
}
.preview-img {
    height: 100%;
    width: auto;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    float: left;
}
.preview-title {
    font-size: min(18px, 2vmax);
}
.preview-review {
    font-size: min(13px, max(1.2vmax, 8px));
}
.preview-text {
    overflow: hidden;
    position: relative;
    margin: 1vw;
    left: 1vw;
    top: 0;
    color: black;
    display: grid;
}
@media (orientation: portrait) {
    .preview {
        display: inline-block;
        width: 30%;
        height: auto;
        position: relative;
        margin: 1vw;
        margin-top: 5vh;
        padding: 0;
        background-color: rgb(240, 240, 240);
        box-shadow: 0 0 1vh rgba(0, 0, 0, 0.079) inset;
        box-shadow: 0 .5vh 1vh 0 rgba(0, 0, 0, 0.2), 0 1vh 2vh 0 rgba(0, 0, 0, 0.19);
        overflow: hidden;
        text-align: left;
        z-index: 1;
    
        border: none;
        border-radius: 0;
        transition: transform .25s;
        -webkit-transition: transform .25s;
        -webkit-transition: -webkit-transform .25s;
        
    }
    .preview:hover {
        transform: scale(1.03);
        -webkit-transform: scale(1.03);
    }
    .preview-img {
        height: auto;
        width: 100%;
        box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
        float: left;
    }
    .preview-img img {
        box-shadow: 0 100vh 1vh black inset;
    }
    .preview-title {
        font-size: 3vw;
    }
    .preview-review {
        display: none;
    }
    .preview-text {
        overflow: hidden;
        position: absolute;
        margin: 1vw;
        top: 0;
        color: white;
        text-shadow: 0 0 1vh black, 0 0 1vh black;
    }
}