@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@300&display=swap');
@font-face {
    font-family: "JJannon";
    src: url('../fonts/JJannon-Regular.otf');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: "JJannon";
    src: url('../fonts/JJannon-Italic.otf');
    font-weight: normal;
    font-style: italic;
}
html,body {
    margin: 0;
    border: 0;
    padding: 0;
    height: 100%;
    background-color: #ffffff;
    /*overflow-y: hidden;*/
    /*cursor: grabbing;*/
    touch-action: manipulation;
}
a, p, div, span {
    text-decoration: none;
    font-family: "JJannon",Times,"Times New Roman",'Times', 'Noto Serif SC', serif;
    font-size: 16px;
    /*font-weight: 300;*/
    /*line-height: 50px;*/
    color: rgba(0, 0, 0, 0.8);
    hyphens: auto;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
}
button{
    padding: 5px;
    font-size: 16px;
}
::selection {
    background: #c8fffb;
}
::-moz-selection {
    background: #c8fffb;
}
::-webkit-scrollbar, body::-webkit-scrollbar {
    display: none;
    width: 0;
    background: transparent;
}
html,body,a, p, div,img{
    -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
    -khtml-user-select: none; /* Konqueror HTML */
    -moz-user-select: none; /* Old versions of Firefox */
    -ms-user-select: none; /* Internet Explorer/Edge */
    user-select: none;
}
.cover{
    background-color: white;
    width: 100vw;
    height: 5vw;position: fixed;bottom: 0;left: 0;
}
.thetoilet img{
    position: absolute;
    width: 100%;height: auto;
    top: 0;left: 0;
}
.intro-text{
    visibility: hidden;
    position: fixed;
    top: 55%;left: 50%;
    transform: translate(-50%,-50%) scale(0.8);
}
.intro-text-show{
    animation: forwards show-text 3s ease-in-out;
    animation-delay: 4s;
}
.flush-text{
    position: fixed;
    visibility: hidden;
    transform: translate(-50%,-50%) scale(0.8);
    -webkit-transition: opacity 1s;
    -moz-transition: opacity 1s;
    -o-transition: opacity 1s;
    transition: opacity 1s;
}
.flushhide{
    -webkit-transition: opacity 1s;
    -moz-transition: opacity 1s;
    -o-transition: opacity 1s;
    transition: opacity 1s;
    opacity: 0;
}
.flushshow{
    -webkit-transition: opacity 3s;
    -moz-transition: opacity 3s;
    -o-transition: opacity .3s;
    transition: opacity 3s;
    opacity: 1;
}
.content{
    display: none;
    /*opacity: 0;*/
    position: fixed;
    max-width: 48vh;max-height: 80vh;
    top: 50%;left: 50%;
    transform: translate(-50%,-42%) rotateZ(0deg) scale(1);
    /*animation: floating 120s alternate infinite linear;*/
    transform-origin: center;
    overflow-y: scroll;
}
.content div{
    padding: 10vh 0;
    -webkit-touch-callout: default; /* iOS Safari */
    -webkit-user-select: auto; /* Safari */
    -khtml-user-select: auto;  /* Konqueror HTML */
    -moz-user-select:  auto;  /* Old versions of Firefox */
    -ms-user-select: auto;  /* Internet Explorer/Edge */
    user-select:  auto;
}
.content span{
    padding: 25vh 0;
}
.text-content{
    width: 48vh;
}
.text-link{
    color: blue;
    text-decoration-line: underline;
}
.poem-content{
    word-break: keep-all;
}
.content div img,.content div iframe{
    width: 100%;
}
.content div iframe{
    min-height: 36vh;
}
.text-in-toilet{
    display: none;
    transform: scale(0.99);
    padding: 20vh 0;
    opacity: 0;
    -webkit-touch-callout: default; /* iOS Safari */
    -webkit-user-select: auto; /* Safari */
    -khtml-user-select: auto;  /* Konqueror HTML */
    -moz-user-select:  auto;  /* Old versions of Firefox */
    -ms-user-select: auto;  /* Internet Explorer/Edge */
    user-select:  auto;
}
.toilet-top{
    animation: forwards closer 5s ease-in-out;
    position: fixed;
    top: 50%;left: 50%;
    transform: translate(-50%,-50%) scale(0.8);
    height: 100vh;
    width: 56vh;

    pointer-events: none;
    background: url('toilet1.png');
    background-size: contain;
}
.toilet-bottom{
    animation: forwards inner-closer 5s ease-in-out;
    position: fixed;
    top: 50%;left: 50%;
    transform: translate(-50%,-53%) scale(1);
    height: 100vh;
    width: 56vh;

    pointer-events: none;
    background: url('toiletinner.jpg');
    background-size: contain;
    /*animation: forwards closerinner 5s ease-in-out;*/
    /*transform: translate(-50%,-50%) scale(1.1);*/
}
.showing{
    display: block;
    animation: forwards show 3s ease-in-out;
    animation-delay: 4s;
}
.ripple{
    position: fixed;
    transform: translate(-50%,-50%) scale(1);
    width: 10vw;height: 10vw;
    opacity: 0;
    animation: forwards 3s ripple linear;
    transform-origin: center;

    pointer-events: none;
    background: url('ripple.gif');
    background-size: contain;
}

.intro-flush{
    animation: forwards intro-flush 3s ease-in;
}

.content-show{
    animation: forwards show-text 3s 3s ease-in-out;
}

.content-flush{
    animation: forwards flush 3s ease-in-out;
}

.content-unflush{
    animation: forwards unflush 3s ease-out;
}

@media (max-aspect-ratio: 1/1) {
    a, p, div, span {
        font-size: 3.5vw;
    }
    button{
        background-color: white;
        padding: 1vw;
        font-size: 3.5vw;
    }
    .thetoilet{
        height: 179vw;
        width: 100vw;
    }
    .intro-text{
        transform: translate(-50%,-50%) scale(0.5);
    }
    .flush-text{
        transform: translate(-50%,-50%) scale(0.5);
    }
    .content{
        max-width: 66vw;max-height: 60vh;
        top: 51%;left: 50%;
    }
    .text-content{
        width: 66vw;
    }
    .content div iframe{
        width: 66vw;
        min-height: 44vw;
    }
    .ripple{
        width: 25vw;height: 25vw;
    }
    @keyframes closer {
        0% {
            transform: translate(-50%,-50%) scale(0.8);
        }
        100% {
            transform: translate(-50%,-75%) scale(1.5);
        }
    }
    @keyframes inner-closer {
        0% {
            transform: translate(-50%,-53%) scale(1);
        }
        100% {
            transform: translate(-50%,-75%) scale(1.5);
        }
    }
    @keyframes intro-flush {
        0% {
            transform: translate(-50%,-42%) rotateZ(0deg) scale(0.5);
        }
        100% {
            transform: translate(-50%,-42%) rotateZ(1800deg) scale(0);
        }
    }
}
@media (min-aspect-ratio: 1/1) {
    @keyframes intro-flush {
        0% {
            transform: translate(-50%,-42%) rotateZ(0deg) scale(0.8);
        }
        100% {
            transform: translate(-50%,-42%) rotateZ(1200deg) scale(0);
        }
    }
    @keyframes closer {
        0% {
            transform: translate(-50%, -50%) scale(0.8);
        }
        100% {
            transform: translate(-50%, -80%) scale(1.8);
        }
    }
    @keyframes inner-closer {
        0% {
            transform: translate(-50%, -53%) scale(1);
        }
        100% {
            transform: translate(-50%, -80%) scale(1.8);
        }
    }
}
@keyframes show {
    0% {
        opacity: 0;
        transform: scale(0.99);
    }
    100% {
        opacity: 1;
        transform: scale(1);
    }
}
@keyframes show-text {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@keyframes hide-text {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}
@keyframes flush {
    0% {
        transform: translate(-50%,-42%) rotateZ(0deg) scale(1);
    }
    100% {
        transform: translate(-50%,-42%) rotateZ(1200deg) scale(0);
    }
}
@keyframes unflush {
    0% {
        transform: translate(-50%,-42%) rotateZ(0deg) scale(0);
    }
    100% {
        transform: translate(-50%,-42%) rotateZ(0deg) scale(1);
    }
}
@keyframes ripple {
    0% {
        opacity: 0;transform: translate(-50%,-50%) scale(1);
    }
    20% {
        opacity: 1;transform: translate(-50%,-50%) scale(1.1);
    }
    100% {
        opacity: 0;transform: translate(-50%,-50%) scale(2);
    }
}
@keyframes floating {
    0% {
        transform:translate(-50%,-50%) rotate(-5deg);
    }
    25% {
        transform:translate(-74%,-30%) rotate(5deg);
    }
    50% {
        transform:translate(-62%,15%) rotate(7deg);
    }
    75% {
        transform:translate(-30%,-20%) rotate(5deg);
    }
    100% {
        transform:translate(0%,0%) rotate(-3deg);
    }
}
@keyframes spin {
    100% {
        -webkit-transform: rotateZ(360deg);
        transform:rotateZ(360deg);
    }
}