:root{
    --primary-color: #0096C7;
}
*{
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}
body{
    font-family: "Quicksand", sans-serif;
    font-weight: 400;
    font-style: normal;
    color: #000;
    overscroll-behavior: none;
    -webkit-overflow-scrolling: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    inset: 0;
    height: 100%;
    width: 100%;
    overflow: hidden;
}
.d-none{
    display: none !important;
}
.content{
    max-width: 760px;
    width: 100%;
    margin: 2px auto;
    font-size: 10px; /* 1 em */
}
/* loader */
.loader-wrapper{
    position: relative;
    min-height: 100vh;
    padding: 3em;
}
.loader {
    position: absolute;
    top: 20%;
    left: calc(50% - 2.5em);
    width: 5em;
    aspect-ratio: 1;
    display: grid;
    border: 0.4em solid #0000;
    border-radius: 50%;
    border-right-color: var(--primary-color);
    animation: l15 1s infinite linear;
}
.loader::before,
.loader::after {    
    content: "";
    grid-area: 1/1;
    margin: 0.2em;
    border: inherit;
    border-radius: 50%;
    animation: l15 2s infinite;
}
.loader::after {
    margin: 0.8em;
    animation-duration: 3s;
}
@keyframes l15{ 
    100%{ transform: rotate(1turn) }
}
.loader__info{
    position: absolute;
    top: calc(20% + 7em);
    left: 0;
    right: 0;
    padding: 0 30px;
    text-align: center;
    font-size: 1.5em;
}
@media (min-width: 400px) {
    .content {
        font-size: calc(10px + 10 * (100vw - 400px) / (760 - 400));
    }
}

@media (min-width: 760px) {
    .content {
        font-size: 20px;
    }
}

#drive-iframe{
    width: 100%;
    min-height: calc(100vh - 52px);
    -webkit-overflow-scrolling: none;
    overscroll-behavior: contain;
    overflow: auto;
}

#content.addin-content{
    overflow: hidden;
    height: 100%;
    touch-action: none;
    overscroll-behavior: none;
}