.clear { clear: both; }
/******************GENERIC CLASSES*******************/
.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: rgba(255, 255, 255, 0); /* mobile webkit */

    image-rendering: optimizeSpeed;
    image-rendering:-o-crisp-edges;
    image-rendering:-webkit-optimize-contrast;
    -ms-interpolation-mode: nearest-neighbor;
    -ms-touch-action: none;

}

* {
    user-select: none;
    -khtml-user-select: none;
    -o-user-select: none;
    -moz-user-select: -moz-none;
    -webkit-user-select: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

::selection { background: transparent;color:inherit; }
::-moz-selection { background: transparent;color:inherit; }

.text_class{
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: default;
}

.button_class{
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer;
}

/**********************APP**************************/
#main_game_container{
    position: absolute;
    width: 800px;
    height: 600px;

    background-color: #000;
}

#preloader_text{
    position: absolute;

    width:800px;
    top:300px;
    text-align:center;
    color:white;
    font-size: 24px;
}

#msg_box{
    position: absolute; 
    width: 800px;
    height: 600px;
    display : none;
}

.msg_box_text{
    position: absolute; 
}

.msg_box_but{
    position: absolute;
    text-align: center;
}

#block_panel{
    background-image:  url(../assets/block.png);
    position: absolute; 
    width: 800px;
    height: 600px;
    display: none;
}

/***********************************************/


/*********************MENU*********************/

#menu_container{
    width: 800px;
    height: 600px;
    position: absolute;
}

#menu_layout{
    width: 800px;
    height: 600px;
    position: absolute;

    display: none;
}


.mahjong_layout{
    position: absolute;
    width: 203px;
    height: 229px;

    background-repeat:no-repeat;
    background-position:center; 
    top : 360px;
    cursor: pointer;
}

.mahjong_layout h1{
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}


.mahjong_layout h2{
    position: absolute;  

    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.mahjong_layout h3{
    position: absolute;

    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.layout_preview{
    position: absolute; 
    width: 160px;
    height: 120px;
    top: 54px;
    left: 22px;     
}

#mahjong_layout_0{
    left : 80px;
}

#mahjong_layout_1{
    left : 310px;  
}

#mahjong_layout_2{
    left : 520px; 
}

.layout_lock{
    position: absolute; 
}

.coin_text{
    position: absolute; 
    left : 34px;
    top : 5px;
}

.arrow_button{
    position: absolute; 
    cursor: pointer;
}

#text_choose_layout{
    top:280px;
    left:80px;
    position: absolute; 
    height:62px;
    width:664px;
}

/*************CREDITS***************/

#credits_container{
    width: 800px;
    height: 600px;
    position: absolute;
    display : none;
}

#credits_text{
    position: absolute;
}

#credits_button_exit{
    width: 450px;
    top: 530px;
    left: 344px;
    position: absolute;
}

/**************HELP****************/

#help_container{
    width: 800px;
    height: 600px;
    position: absolute;
    display : none;
}

#help_tile_container{
    position: absolute; 
    width: 400px;
    height: 300px;
    top: 32px;
    left: 408px;
}

#help_text1{
    width: 400px;
    height: 260px;
    top: 60px;
    left: 0px;
    position: absolute;
}

#help_text2{
    width: 800px;
    height: 176px;
    top: 340px;
    left: 0px;
    position: absolute;
}

#help_button_exit, #leaderboard_button_exit{
    width: 360px;
    top: 540px;
    left: 430px;
    position: absolute;
}

/******************GAME*************************/

.mahjong_tile{
    width: 61px;
    height: 78px;
    position: absolute;
}

.selection_tile{
    width: 44px;
    height: 60px;
    left :0px;
    top : 0px;
    position: absolute; 
    display:none;
}

#match_game_container{
    width: 800px;
    height: 600px;
    position: absolute;

    background-color: #000;

    display: none;
}

#board_container{
    width: 800px;
    height: 600px;
    position: absolute;
}

/******************INTERFACE**********************/

#interface_container{
    width: 800px;
    height: 600px;
    position: absolute;
}

.menu_button{
    background-image: url("skins/deluxe/but_menu.png");
    background-size: contain;
    width: 284px;
    height: 92px;
    position: absolute;
    text-align: center;

}

.menu_button p{
    margin-top: 20px;
    letter-spacing: 2px;
}


.game_button{
    position: absolute; 
    text-align: left;
}

.game_text{

}

#button_game_hint{
    top: 5px;
    left: 5px; 
}

#button_game_restart{
    top: 26px;
    left: 5px;
}

#button_game_shuffle{
    top: 48px;
    left: 5px;
}

#tile_container{
    position: absolute; 
}

.bonus_score_anim{
    top: -30px;
    left: 0px; 
    position: absolute; 
}

#text_score{
    position: absolute; 
    top: 2px;
    left: 160px; 
}

#bonus_time{
    position: absolute; 
    top: 2px;
    left: 290px; 
}

#hint_text{
    position: absolute; 
    top: 2px;
    left: 412px; 
}

#button_exit{
    position: absolute; 
    cursor: pointer; 
}

.panel_button{
    position: absolute;
    text-align: center;
    width: 110px;
}

#win_coin_img{
    position: absolute;
    background-image:  url(../assets/coin.png);
    width: 27px;
    height: 27px;
    top: 170px;
    left: 236px; 
}

#game_over_coin_img{
    position: absolute;
    background-image:  url(../assets/coin.png);
    width: 27px;
    height: 27px;
    top: 170px;
    left: 236px; 
}

#win_panel{
    position: absolute; 
    width: 500px;
    height: 290px;
    top: -350px;
    left: 149px;
    display: none;
}

#game_over_panel{
    position: absolute; 
    width: 500px;
    height: 290px;
    top: -350px;
    left: 149px;
    display: none;
}

/*====== save score input //added by sifat =============*/
#usernameInput {
    margin: 0 auto;
    font-size: 24px;
    font-family: 'blackplotanregular';
    color: #fff;
    text-align: center;
}
#usernameInput label {
    display: inline-block;
    margin-top: 2px;
    margin-right: 20px;
}
#usernameInput input {
    margin: 0;
    padding: 2px 5px;
    width: 160px;
    font-size: 14px;
    font-family: monospace;
    color: #000;
     -webkit-user-select: text; 
    -khtml-user-select: text;
    -o-user-select: text;
    -moz-user-select: text;
}
#usernameInput input::selection {
    color: #fff;
    background-color: #000;
}
#saveScoreButton {
    position: relative;
    display: inline-block;
}

/** ========== leaderboard ==============**/
#leaderboard_container{
    width: 800px;
    height: 600px;
    position: absolute;
    display : none;
}
#leaderboard_caption, #leaderboard_loading {
    text-align: center;
    letter-spacing: 2px;
    font-size: 50px;
    color: #fff;
    text-shadow: 3px 0 0 #000000, -3px 0 0 #000000, 0 3px 0 #000000, 0 -3px 0 #000000, 2px 2px #000000, -2px -2px 0 #000000, 2px -2px 0 #000000, -2px 2px 0 #000000;
    font-family: 'blackplotanregular';
    margin-top: 20px;

}
#leaderboard_loading {
    position: absolute;
    top: 275px;
    margin: 0;
    width: 100%;
}
#leaderboard_score_container {
    padding: 20px 40px;
    min-height: 100px;
}
#leaderboard_score_container .arrow_button_leaderboard {
    float: left;
    margin-top: 22%;
    cursor: pointer;
}
#socre_table {
    width: 588px;
    float: left;
}
#socre_table table {
    width: 100%;
    color: #fff;
    font-size: 30px;
    text-align: center;
    letter-spacing: 2px;
    color: #d7d5d2;
    text-shadow: 3px 0 0 #000000, -3px 0 0 #000000, 0 3px 0 #000000, 0 -3px 0 #000000, 2px 2px #000000, -2px -2px 0 #000000, 2px -2px 0 #000000, -2px 2px 0 #000000;
    font-family: 'blackplotanregular';
}
