root {
    display: block;
}

body{
    background-color: #061208;
    /* Prevent bounce/overscroll on mobile */
    overflow: hidden;
    position: fixed;
    width: 100%;
    /* 100dvh fixes iOS Safari viewport jump; fallbacks for older browsers */
    height: 100vh;
    height: 100dvh;
    min-height: -webkit-fill-available;
}

*, *:before, *:after {
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
     
input, input:before, input:after {
    -webkit-user-select: initial;
    -khtml-user-select: initial;
    -moz-user-select: initial;
    -ms-user-select: initial;
    user-select: initial;
}

::selection { background: transparent;color:inherit; }
::-moz-selection { background: transparent;color:inherit; }

.screen-layer { background: transparent !important; }

#canvas_game,
#canvas_3d,
#canvas_upper_3d{
    position: fixed;
    box-shadow: none;
    /* Crisp scaling on high-DPI mobile screens */
    image-rendering: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
}

#canvas_3d,
#canvas_upper_3d{
    pointer-events: none;
}


canvas {
	-ms-touch-action: none;
}

.ani_hack{
    -webkit-perspective: 1000;
    -webkit-backface-visibility: hidden;
    
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    outline: none;
    -webkit-tap-highlight-color: transparent; /* mobile webkit */
}

.upper_3d{
    z-index: 2;
}

/***************FONTS*******************/
.check-fonts{
                position: fixed;
                opacity:0;
}

.check-font-1{
        font-family: 'Montserrat';
}
                
                
@font-face {
    font-family: 'Montserrat';
    src: url('Montserrat-Black.woff2') format('woff2'),
        url('Montserrat-Black.woff') format('woff');
    font-weight: 900;
    font-style: normal;
}

/* Floating fullscreen button — always visible on mobile */
#btn-fullscreen-mobile {
    display: none;
    position: fixed;
    top: 10px;
    left: 12px;
    right: auto;
    bottom: auto;
    z-index: 9999;
    width: 36px;
    height: 36px;
    border: none;
    border-radius: 10px;
    background: rgba(0, 60, 30, 0.55);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    cursor: pointer;
    padding: 0;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
}
#btn-fullscreen-mobile svg {
    width: 22px;
    height: 22px;
    fill: #fff;
    pointer-events: none;
}
