body {
    background-color: black;
    color: rgb(255, 245, 206);
    font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;
}

.gutter-container {
    width:95%;
    margin:auto;
}

.top-nav {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding-top: 3vmin;
}

.social-link-container {
    min-width: 8.5vmin;
    display:flex;
    flex-direction: row;
    align-items: center;
}

.social-link {
    font-size: 4.5rem;
    font-weight: 800;
    color: rgb(255, 245, 206);
}

.social-link:hover {
    transform: scale(1.1);
}

.version-link {
    font-size: 3rem;
    font-weight: 800;
    color: rgba(255, 245, 206, .5);
    margin-left: 50px;
}

.version-link:hover {
    transform: scale(1.1);
}

.version-link--current {
    font-size: 3.5rem;
    color: rgb(255, 245, 206);
}

.link-disabled {
    pointer-events: none;
    cursor: default;
}

.volume-container {
    display: flex;
    flex-direction: row;
    align-items: center;
    width:70px;
    height:72px;
}

#mute-icon {
    font-size: 3.5rem;
    cursor: pointer;
}

.overlay {
    width: 95%;
    height: 90%;
    position: fixed;
    top: 5%;
    left: 2.5%;
    z-index: 1000;
    background-color: rgba(255, 245, 206, .95);
    cursor: pointer;
    border-radius: 2rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.overlay:focus {
    outline: none;
}

.overlay__dummy-element {
    height: 5rem;
    width: 100%;
}

.overlay__content {
    font-size: 2rem;
    color: black;
    text-align: center;
    line-height: 7rem;
    padding-left: 3rem;
    padding-right: 3rem;
}

.overlay__warning-container {
    display: flex;
    flex-direction: row;
    justify-content: center;
    padding-left: 3rem;
    padding-right: 3rem;
}
.overlay__warning-container--hidden {
    visibility: hidden;
}
#overlay__warning-icon {
    color: black;
    font-size: 2rem;
    line-height: 5rem;
    margin-right: 1rem;
}
.overlay__warning {
    font-size: 2rem;
    color: black;
    text-align: center;
    line-height: 5rem;
}

.overlay--hidden {
    display: none;
}

/* adapted from https://moderncss.dev/pure-css-custom-checkbox-style/ */
input[type="checkbox"] {
    -webkit-appearance: none;
    appearance: none;
    background-color: rgba(255, 255, 255, 0);
    margin: 0;
}

.loop-container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 2vmin;
    padding-top: 4vmin;
}

.loop-tile {
    width: 17vmin;
    min-width: 17vmin;
    height: 17vmin;
    background-color: rgb(255, 245, 206);
    border-radius: 1.5vmin;
}

.loop-tile:hover {
    transform: scale(1.1);
}

.tile-name-display {
    min-height: 2.5rem;
    font-size: 1.5rem;
    text-align: center;
    padding-top: 2rem;
}

.color-control-container {
    display: flex;
    flex-direction: row;
    gap: 1rem;
}

.unselectable {
    -moz-user-select: -moz-none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none;
    user-select: none;
}