* {
	-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; /* Non-prefixed version, currently
                                  supported by Chrome, Edge, Opera and Firefox */
}

:root {
	--grayscale-mode: 100%;
}

html, body {
	background-color: #524C54;
	/* margin: 0; */
	height: 100%;
	overflow: hidden;
}

img {
	pointer-events: none
  }  
 
#s-wrapper {
	position: flex;
	top: 0; left: 0;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	width: 100%; height: 100%;	
}

#field {
	/* background-color: #524C54; */
	position: relative;
	margin: auto;
	left: -3px;
	top: 0;
	right: 0;
	bottom: 0;
	text-align: center;
	align-items: center;
}

#border-puzzle {
	position: relative;
	display: inline-block;
	width: 100%;
	height: 88.5%;
	margin: auto;
	left: 0;
	right: 0;
	top: 5px;
	bottom: 0;
	border: 3px solid #000000;
	border-radius: 10px;
}

/* puzzle */
#puzzle {
	position: relative;
	display: inline-block;
	margin: auto;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
}


/* top bar */
#top-info {
	background-color: #645568;
	color: black;
	position: relative;
	height: 20px; /*5%;*/
	display: flex;
	border: 3px solid #000000;
	border-radius: 10px;
}

#top-info:hover,
#top-info:focus {
	opacity: 0.5;
}

/* bottom bar */
#n-tools {
	display: flex;
	position: relative;
	background-color: #645568;
	height: 40px;/*15%;*/
	width: 100%;
	border: 3px solid #000000;
	border-radius: 10px;
	margin-top: 10px;
}

#prog_bar {
	/* display: flex; */
	z-index: 1;
	position: absolute;
	background-color: #7D6E81;
	height: 40px;/*15%;*/
	width: 10%;
	min-width: 4%;
	border: 3px solid #000000;
	border-radius: 10px;
	margin-top: 10px;
}

/* #prog_bar:hover,
#prog_bar:focus {
	background-color: #778DA9;
	text-decoration: none;
	cursor: pointer;
} */

.ftext {
	position: relative;
	margin: auto;
}

#mid-tool {
	width: 100%;
	height: 100%;
	display: inline-flex;
}

#left-tool text {
	vertical-align: middle;
}

#rbar {
	display: flex;
	flex-direction: column;
	height: 100%;
	max-width: 150px;
	width: 150px;
	opacity: 0.75;
	background-color: black;
	box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.7);
}

.block-img {
	width: 100%;
	max-width: 150px;
	max-height: 150px;
	display: block;
	background-color: #2F3E46;
	margin: auto;
}
.block-img img {
	width: 100%;
}

.eve {
	z-index: 0;
	position: absolute;
	/* width: 20%; */
	/* height: 20%; */
	width: calc(100% / 5);
	height: calc(100% / 6);
	display: inline-block;
	overflow: hidden;
	
	-webkit-transition: 0.4s;
	-moz-transition: 0.4s;
	transition: 0.4s;
	filter: grayscale(var(--grayscale-mode));
}
.eve img{
	width: 500%;
	height: 600%;
}

#left-bar {
	display: none;
	/* display: relative; */
	position: absolute;
	height: 75%;
	width: 10%;
	max-width: 65px;
	margin-top: 25vh;

}

.left-bar-btn {
	text-align: center;
	padding: 7%;
    margin-bottom: 10%;
}

.replay {
	display: relative;
	width: 80%;
} 

#info {
	display: relative;
	margin-top: 5%;
} 

#info:hover,
#info:focus {
	opacity: 0.5;
	/* padding: 7px; */
	/* border: 3px solid #232E34;
	border-radius: 20px;  */
}

#open_finish_win:hover,
#open_finish_win:focus {
	opacity: 0.5;
	/* padding: 7px; */
	/* border: 3px solid #232E34; */
	/* border-radius: 20px;  */
}

#open_finish_win {
	display: none;
}

#counter {
	display: relative;
	margin-top: 5%;
	text-align: center;
	width: 100%;
	font-family: 'Inter';
	font-style: normal;
	font-weight: 600;
	font-size: 2.41vw;
	/* font-size: 64px; */
} 

.play_modal {
	/* display: none; Hidden by default */
	display: flex;
	position: fixed; 
	z-index: 1;
	left: 0;
	top: 0;
	width: 100%; 
	height: 100%;
	background-color: rgba(0,0,0,0.4);
	align-content: center;
}

#start {
	background-color: #645568;
	margin: auto;
	min-width: 20%;
	max-width: 20%;

	/* margin-top: 20%; */
	vertical-align: middle;

	border: 3px solid #000000;
	border-radius: 25px; 
	text-align: center;
	font-size: 2.3vw;
	text-transform: uppercase;
}

#start:hover,
#start:focus {
	background-color: #7D6E81;
	text-decoration: none;
	cursor: pointer;
}

.close {
    color: #515151;
    float: right;
    font-size: 28px;
    font-weight: bold;
	position: absolute;
    top: 1%;
    right: 2%;
}

.close:hover,
.close:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
}

.finish {
	display: none;
	position: fixed; 
	z-index: 2;
	left: 0;
	top: 0;
	width: 100%; 
	height: 100%;
	background-color: rgba(149, 185, 255, 0.1);
	text-align: center;

}

#finish_rect {
	position: relative;
	z-index: 1;
	margin: auto;
	max-width: 75vmin;
	max-height: 75vmin;
	/* top: 15%; */
	text-align: center;
	font-size: 2.41vmin;
	font-family: sans-serif;
	font-weight: bold;
	color: #2B363D;

	background: #968f9b;
	border: 3px solid #040404;
	border-radius: 20px;
}

.finish_btns {
	position: relative;
	width: 100%;
	/* max-width: 100%; */
	/* height: 30px; */
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 2%;
	display: inline-block;
	vertical-align: middle;

	background: #a49fa7;
	border: 3px solid #000000;
	border-radius: 20px;
}

.finish_btns:hover,
.finish_btns:focus {
	background-color: #b5b0b8;
	text-decoration: none;
	cursor: pointer;
}

#share_tg {
	vertical-align: middle;
	display: flex;
	width: 25%;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;

	background: #4B9AC7;
	border: 3px solid #000000;
	border-radius: 15px;
}

#save_pic{
	vertical-align: middle;
	display: flex;
	width: 50%;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;

	background: #899f92;
	border: 3px solid #000000;
	border-radius: 15px;
}

#share_tg:hover,
#share_tg:focus {
	background-color: #56addf;
	text-decoration: none;
	cursor: pointer;
}

#save_pic:hover,
#save_pic:focus {
	background-color: #9cb4a6;
	text-decoration: none;
	cursor: pointer;
}

.btn_stl {
	color: #ffffff;
	/* font-size: 20px; */
	font-family: Sans-serif;
	font-weight: bold;
	margin: auto;
}

.bottom_label {
	font-family: Sans-serif;
	font-weight: bold;
	/* font-size: 1.5vw; */
	font-size: larger;
	margin-bottom: 4%;
	color: #2B363D;
}

.dissap {
	display: none;
	bottom: 20%;
    right: 25%;
    z-index: 1;
    width: 70%;
    position: absolute;
    background-color: #656768af;
	animation: fade-out 3000ms;
	border-radius: 20px;
	opacity: 0;
}

@keyframes fade-out {
    from {
      opacity: 1;
    }
    to {
      opacity: 0;
    }
  }

  .triangle {
	width: 0;
    height: 0;
    border-top: 30px solid transparent;
    border-left: 50px solid #88c488;
    border-bottom: 30px solid transparent;
	border-radius: 0 0 0 0.25em;
}


#background {
	position: absolute;
	width: 100vw;
	height: 100vh;
	margin: 0;
	padding: 0;
	/* background-image: url(https://storage.yandexcloud.net/slica/puzzles/2023/05/31/2023-05-31-puzzle.jpg); */
	/* background-repeat: round; */
	background-size: cover;
	background-position: center;
	filter: blur(20px); 
	/* grayscale(80%); */
}
