html {
    overflow: hidden;
    width: 100%;
}

body {
    margin: 0;
    padding: 0;
    height: 100%;
    /*position: fixed;*/
    /* prevent overscroll bounce*/
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    /* iOS velocity scrolling */
}

body::-webkit-scrollbar {
    display: none;
}

#app {
    background-color: #181818;
    color: #f0f0f0;
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100vh;
    max-height: 100vh;
}

main {
    flex-grow: 1;
    padding: 40px;
}

@media (max-width: 800px) {
    main {
        padding: 0;
        max-width: 100vw;
    }
}

h1 {
    margin-bottom: 20px;
    font-size: 3em;
    letter-spacing: 2px;
}

p {
    font-size: 1.5em;
}

.span-centered {
    text-align: center;
    display: block;
}

.dragging {
    opacity: 0.001;
}

/* Debugging styles */
body * {
    /*box-shadow: inset 0 0 0 1px pink;*/
}

* {
    max-width: 100vw;
}