*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    touch-action: none;
}


*,*:focus,*:hover{
    outline:none;
}

@font-face {
    font-family: MikadoBlack;
    src: url(../assets/Font/MikadoBlack.otf);
  }

html,body{
    overflow: hidden;
}

.webgl{
    position: fixed;
    top: 0;
    left: 0;
    outline: none;
}


.--RB{
    border:1px solid red;
}

.--upImg{
    background: url("../assets/UI/upAB.fw.png"); 
    background-repeat: no-repeat;
    background-size: 100%;    
}
.--upImgTouched{
    background: url("../assets/UI/ubLit.png");
    background-repeat: no-repeat;
    background-size: 100%; 
}
.--upImg:active{
    background: url("../assets/UI/ubLit.png");
    background-repeat: no-repeat;
    background-size: 100%; 
}

.--downImg{    
    background: url("../assets/UI/downAB.fw.png");
    background-repeat: no-repeat;
    background-size: 100%;     
}

.--downImgTouched{
    background: url("../assets/UI/dbLit.png");
    background-repeat: no-repeat;
    background-size: 100%; 
}
.--downImg:active{
    background: url("../assets/UI/dbLit.png");
    background-repeat: no-repeat;
    background-size: 100%; 
}


.--leftImg{  
    background: url("../assets/UI/lButton.webp");
    background-repeat: no-repeat;
    background-size: 100%; 
}
.--leftImgTouched{
    background: url("../assets/UI/lbLit.png");
    background-repeat: no-repeat;
    background-size: 100%; 
}
.--leftImg:active{
    background: url("../assets/UI/lbLit.png");
    background-repeat: no-repeat;
    background-size: 100%; 
}

.--rightImg{
    background: url("../assets/UI/rTBimgW.png");
    background-repeat: no-repeat;
    background-size: 100%; 
}
.--rightImgTouched{
    background: url("../assets/UI/rbLit.png");
    background-repeat: no-repeat;
    background-size: 100%;     
}
.--rightImg:active{
    background: url("../assets/UI/rbLit.png");
    background-repeat: no-repeat;
    background-size: 100%;     
}


.--tall{
    width: 50%;
    height: 100%; 
}
.--wide{
    width: 100%;
    height: 50%; 
}
.--full{
    width: 100%;
    height: 100%; 
}



.--w55{
    width: 55%;
}

.--h55{
    height: 55%;
}


.--abs-br{
    position: absolute;
    bottom: 0;
    right: 0;
}

.--f-row{
    display: flex;
    flex-direction: row;
}
.--f-col{
    display: flex;
    flex-direction: column;
}
.--f-centered{
    display: flex;
    align-items: center;
    justify-content: center;   
}

.--f-col-align{
    display: flex;
    flex-direction: column;    
    align-items: center;
}
.--f-row-align{
    display: flex;
    flex-direction: row;    
    align-items: center;
}


.--RB{
    border:1px solid rgb(255, 0, 0);
}

.btn{
    padding: 0;
    border: none;
}



/* new, keep */
.ctl-lr{
    width: calc(17vw + 12vh);   
    height: calc(17vw + 12vh);   
    position: absolute;     
    bottom: calc(1vw + 2vh); 
    left: calc(1vw + 2vh);
}

.ctl-fb{
    width: calc(17vw + 12vh);   
    height: calc(17vw + 12vh);     
    position: absolute;     
    bottom: calc(1vw + 2vh); 
    right: calc(1vw + 2vh);
}


.ctl__upper-l{      
    display: flex;
    align-items: flex-start;   
}

.ctl__lower-r{       
    display: flex;
    align-items: flex-end;
}

.ctl-fb__small-box{
    margin-top: 7%;
    width: 30%;
    height: 60%;      
}



/*#endregion controls */





.reloadButton{    
    position: absolute;
    top: 1vw;
    left: 15vw;
    width: 5vw;
    min-width: 40px;
    height: 5vw; 
    min-height: 40px;     
}

.--resetImg{
    background: url("../assets/UI/reload4.png");
    background-repeat: no-repeat;
    background-size: 100%; 
}


.menu{
    position: absolute;
    top: 1vw;
    right: 5vw;        
}


.menu__gear-box{
    width: 100%;
    display: flex;
    justify-content: end;    
}


.menu__gear{
    position: relative;      
    width: 8vw;
    min-width: 40px;
    height: 8vw; 
    min-height: 40px;   
    z-index: 1;    
}




.--gearImg{
    background: url("../assets/UI/gear3.png");
    background-repeat: no-repeat;
    background-size: 100%; 
}

.menu__assembly{
    margin-top: .5vw;  
    width: 28vw; /*14*/ 
    height: 50vw;  /*25*/         
}


.menu__main{
    position: relative;    
    top: calc(-80vw);      
    background-color: rgba(0,0,0,0.6);
    border: 1px solid black;    
    border-radius: 2%;   
    flex-wrap: wrap;
    justify-content: space-evenly;     
}





.--elementMask {
   clip-path: inset(0 0 0 0);
    /* Also can take single values to make all sides the same, or 2 values (vert/horz), or 3 values (top/horz/bottom). */
}

/*.MBBox{ */
.menu__button-box{   
    width: 82%;     
    height: 16%;
    border:1px solid rgb(54, 54, 54);
    background-color: #666666;
    border-radius: 3%;       
}



.menu__button-bar{  
    margin-top: 5%;
    width: 94%;
    height: 40%;     
    justify-content: space-between;    
}

.MBDispBox{     
    width: 60%;
    height: 110%;    
    background-color: rgb(168, 168, 168);
    border-radius: 5%;   
}


.chevron{    
    width: 26%;
    height: 160%;    
}

.--l-chev-img{         
    background: url("../assets/UI/lChev.png");
    background-repeat: no-repeat;
    background-size: 100%;  
}
.--r-chev-img{        
    background: url("../assets/UI/rChev.png");
    background-repeat: no-repeat;
    background-size: 100%;   
}


.--dispMenuFont{
    font-family: MikadoBlack;   
    font-size: calc(7vw *.5);   
    color: white;
}
.--smallMenuFont{
    font-family: MikadoBlack;   
    font-size: calc(4.375vw *.5);
    color: white;
}



.MBLabelBox{  
    margin-top: 5%;  
    width: 94%;
    height: 30%;      
}









/*   volume slider  */
.slidecontainer {
    margin-top: 2%;
    width: 86%;     
    height: 66%;    
}



.vSlider {
    -webkit-appearance: none;  /* Override default CSS styles */
    appearance: none;
    width: 100%; /* Full-width */
    height: 100%;
    background: url("../assets/UI/sldBar.png");
    background-repeat: no-repeat;
    background-size: 100%; 
    outline: none; /* Remove outline */   
}

.vSlider::-webkit-slider-thumb {
    -webkit-appearance: none; /* Override default look */
    appearance: none;
    width: 4vw; /* 19  Set a specific slider handle width */
    /*height: 2.3vw;*/ 
    height: 4vw;
    background: url("../assets/UI/skl2.png");
    background-repeat: no-repeat;
    background-size: 100%; 
    cursor: pointer; /* Cursor on hover */    
}
  
.vSlider::-moz-range-thumb {
    width: 4vw; /* Set a specific slider handle width */
    height: 4vw; 
    background: url("../assets/UI/skl2.png");
    background-repeat: no-repeat;
    background-size: 100%; 
    cursor: pointer; /* Cursor on hover */    
}






/* trapToggle   */
.trapTogAssembly{
    margin-top: 8%;
    width: 80%;
    height: 60%;
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    align-items: center;   
}

.t1{
    width: 50%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;     
}

.t2{
    width: 40%;
    height: 62%;
    display: flex;
    justify-content: center;
    align-items: center;   
}



.trapSwitch {
    position: relative;   
    width: 80%;
    height: 100%;    
}
  
  /* Hide default HTML checkbox */
.trapSwitch input {
    opacity: 0;
    width: 0;
    height: 0;
}
  
  /* The slider */
  .trapSlider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    -webkit-transition: .4s;
    transition: .4s;    
}
  
.trapSlider:before {
    position: absolute;
    content: "";
    height: 96%;
    width: 52%;
    left: 0;   

    background: url("../assets/UI/togBut.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 105%; /*66*/


    -webkit-transition: .4s;
    transition: .4s;    
}
  
input:checked + .trapSlider {    
    background-color: #ff0000;
}  

  
input:checked + .trapSlider:before {
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%);
}
  
  /* Rounded sliders */
.trapSlider.round {
    border-radius: 34px;
    
}
  
.trapSlider.round:before {
    border-radius: 50%;
}







@media only screen and (orientation: landscape) {

    .menu__gear{       
        width: 5vw;       
        height: 5vw;            
        z-index: 1; 
    }

    .menu__assembly{            
        width: 50vw; /*14*/    
        height: 14vw;  /*25*/               
    }

    .menu__main{        
        top: -20vw;       
    }
    
   
    .menu__button-box{   
        width: 31%;        
        height: 41%;           
    }


    .--dispMenuFont{        
        font-size: 2.8vw;        
    }
    
    .--smallMenuFont{        
        font-size: 1.4vw;        
    } 
    
    
    .vSlider::-webkit-slider-thumb {       
        width: 3vw;        
        height: 3vw;       
    }
      
    .vSlider::-moz-range-thumb {
        width: 3vw; 
        height: 3vw;         
    }
}


/* pick up and fix here .. and reload button position */
@media (max-aspect-ratio: 100/150) {

   
    .menu__gear{       
        width: 5vw;       
        height: 5vw;           
        z-index: 1;         
    }

    .menu__assembly{           
        width: 39.2vw; 
        height: 70vw;            
    }

    .menu__main{        
        top: calc(-80vw);            
    }



    .--dispMenuFont{        
        font-size: calc(7vw *.7);        
    }
    
    .--smallMenuFont{        
        font-size: calc(4.375vw *.7);    
    } 
    
    
    .vSlider::-webkit-slider-thumb {       
        width: 5vw;        
        height: 5vw;       
    }
      
    .vSlider::-moz-range-thumb {
        width: 5vw; 
        height: 5vw;         
    }

}




.noCallOut{
    -webkit-touch-callout: none; /* Safari Touch */
    -webkit-user-select: none;   /* Webkit */
    -moz-user-select: none;      /* Firefox */
    -ms-user-select: none;       /* Edge*/
    user-select: none;       /* Future-proof*/
}


