@font-face {
	font-family: "Lemon Milk";
	src: url("../fonts/LEMONMILK-Regular.otf") format("opentype");
}

@font-face {
	font-family: "BebasNeue";
	src: url("../fonts/BebasNeue-Regular.ttf");
}

@font-face {
	font-family: "Bayon";
	src: url("../fonts/Bayon-Regular.ttf");
}

html,
body {
    margin: 0;
    height: 100%;

    -webkit-user-select: none;
    /* Safari */
    -ms-user-select: none;
    /* IE 10 and IE 11 */
    user-select: none;
    /* Standard syntax */
    font-family: "BebasNeue";
    color: white;

    overflow: hidden;
    background-color: black;

    -webkit-user-select: none;
    /* Safari */
    -ms-user-select: none;
    /* IE 10 and IE 11 */
    user-select: none;
    /* Standard syntax */
}

.main-container {
    position: relative;
    height: 100%;
    width: 100%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    overflow: hidden;
    border: none;
}

.main-scroller {
    position: relative;
    width: 100%;
    top: 0px;
    overflow: hidden;
}

.portrait-scaller {

    position: absolute;
    height: 100%;
    aspect-ratio: 9/16;

    top: 0px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
}

.no-event {
    pointer-events: none;
}

.arrow-container {
    opacity: 0;
}

.down-arrow {
    position: absolute;
    left: 50%;
    bottom: 0px;
    width: 25px;
    height: 25px;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    z-index: 20;

    background-image: url("../images/downarrow.svg");
    background-size: contain;
    opacity: 1;

    background-repeat: no-repeat;
    background-position: center;
}

.up-arrow {
    position: absolute;
    left: 50%;
    top: 10px;
    width: 25px;
    height: 25px;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    z-index: 20;

    background-image: url("../images/uparrow.svg");
    background-size: contain;
    opacity: 1;
    background-repeat: no-repeat;
    background-position: center;
}

.left-arrow {
    position: absolute;
    left: 15px;
    top: 50%;
    width: 25px;
    height: 25px;
    transform: rotate(180deg) translate(0%, 0%);
    -webkit-transform: rotate(180deg) translate(0%, 0%);
    z-index: 20;

    background-image: url("../images/arrowbutton.svg");
    background-size: contain;
    opacity: 1;
}


.right-arrow {
    position: absolute;
    right: 15px;
    top: 50%;
    width: 25px;
    height: 25px;
    transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    z-index: 20;

    background-image: url("../images/arrowbutton.svg");
    background-size: contain;
    opacity: 1;
}

.main-progress-container {
    position: absolute;
    right: 25px;
    top: 50%;

    width: 30px;


    z-index: 30;

    display: block;

    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

.main-progress-bullet {
    position: relative;

    height: 8px;
    width: 8px;

    display: block;

    margin-bottom: 20px;
    background-color: #D9A657;

    border-radius: 50%;
    opacity: 0.5;
}

.main-current-progress {
    position: absolute;

    top: 50%;
    left: 50%;

    width: 23px;
    height: 22px;

    border-radius: 50%;

    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    outline: 2px solid;
    outline-color: #D9A657;
    z-index: -1;

    animation-name: bullet-fadein;
    animation-duration: 1s;
    animation-timing-function: ease-in;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
}

.frame {
    position: absolute;
    z-index: 1000;


    top: 15px;
    left: 15px;
    right: 15px;
    bottom: 15px;

    border: solid;
    border-width: 0.5px;
    opacity: 0.5;
    border-color: #D9A657;

    pointer-events: none;
}

.main-current-title {
    font-family: "Bayon";
    font-weight: lighter;
    position: absolute;
    left: -10px;

    top: 50%;
    transform: translate(-100%, -50%);
    color: #D9A657;
    font-size: 13px;
}


.main-progress-bullet-selected {
    opacity: 0.8;

}

@keyframes bullet-fadein {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

.tembakau-cengkeh-3d {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;

    z-index: 10;

    /* background-color: black; */
}

.tembakau {
    position: absolute;
    width: 400px;
    height: 400px;

    background-image: url("../images/tembakau.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;

    transform: perspective(400px) rotateX(35deg) rotateY(20deg) rotateZ(20deg) scale(var(--sc));
    -webkit-transform: perspective(400px) rotateX(35deg) rotateY(20deg) rotateZ(20deg) scale(var(--sc));
    filter: blur(var(--blur)) drop-shadow(15px 15px 30px #0000008a) brightness(var(--br, 1));
    -webkit-filter: blur(var(--blur)) drop-shadow(15px 15px 30px #0000008a) brightness(var(--br, 1));

    opacity: var(--o);

    animation-name: animation-tembakau-1;
    animation-duration: var(--d);
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;

    pointer-events: none;
}

.cengkeh {
    position: absolute;
    width: 400px;
    height: 400px;

    background-image: url("../images/cengkeh.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;

    transform: perspective(400px) rotateX(35deg) rotateY(20deg) rotateZ(20deg) scale(var(--sc));
    -webkit-transform: perspective(400px) rotateX(35deg) rotateY(20deg) rotateZ(20deg) scale(var(--sc));
    filter: blur(var(--blur)) drop-shadow(15px 15px 15px #000000) drop-shadow(15px 15px 15px, #000000) brightness(var(--br, 1));
    -webkit-filter: blur(var(--blur)) drop-shadow(15px 15px 15px #000000) drop-shadow(15px 15px 15px, #000000) brightness(var(--br, 1));

    opacity: var(--o);

    animation-name: animation-tembakau-1;
    animation-duration: var(--d);
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
    
    pointer-events: none;

}

.top {
    top: var(--t);
}

.bottom {
    bottom: var(--t);
}

.left {
    left: var(--l);
}

.right {
    right: var(--l);
}

.zindex {
    z-index: var(--i);
}

.darker{
    filter: brightness(0.7);
}

@keyframes animation-tembakau-1 {
    0% {
        transform: perspective(400px) translateY(0) rotateX(var(--x)) rotateY(var(--y)) rotateZ(var(--z)) scale(var(--sc));
        -webkit-transform: perspective(400px) translateY(0) rotateX(var(--x)) rotateY(var(--y)) rotateZ(var(--z)) scale(var(--sc));
    }

    50% {
        transform: perspective(800px) translateY(-10px) rotateX(var(--xp)) rotateY(var(--yp)) rotateZ(var(--zp)) scale(var(--sct));
        -webkit-transform: perspective(800px) translateY(-10px) rotateX(var(--xp)) rotateY(var(--yp)) rotateZ(var(--zp)) scale(var(--sct));
    }

    100% {
        transform: perspective(400px) translateY(0) rotateX(var(--x)) rotateY(var(--y)) rotateZ(var(--z)) scale(var(--sc));
        -webkit-transform: perspective(400px) translateY(0) rotateX(var(--x)) rotateY(var(--y)) rotateZ(var(--z)) scale(var(--sc));
    }
}

.vignette {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    background: radial-gradient(#00000000 60%, #0000006b 80%, rgba(0, 0, 0, 0.308));
    z-index: 10;

    pointer-events: none;
}

.background-3d {
    z-index: -5;
}

.landscape-lock{
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0px;
    top: 0px;

    background-color: black;

    z-index: 1000;
    display: none;
}

.landscape-lock-warning{
    position: absolute;
    left: 50%;
    top: 40%;

    width: 20vh;
    height: 20vh;

    transform: translate(-50%,-50%);

    background-image: url("../images/landscape-warning.png");
    background-size: contain;
    background-repeat: no-repeat;
}

.landscape-lock-warning-text{
    position: absolute;
    bottom: -05px;
    color: white;
    font-family: "Lemon Milk";

    width: 250px;
    text-align: center;

    left: 50%;
    transform: translate(-50%, 100%);
}