
.container {
	max-width: 900px;
	margin: auto;
	padding: 20px;
}

.game {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 26px;
	margin: 15px auto;
}

/* boutons */
.themes button {
	width: auto;
	height: auto;
	padding: 14px 12px !important;
	margin: 5px;
	border-radius: 10px;
	border: 1px solid #2B7CFF;
	background: linear-gradient(#FFFFFF,#EEF6FF);
	cursor: pointer;
	font-size: 16px;
	font-weight: bold;
}

.themes button:hover {
	background: #78ACFF;
	color: #FF0000;
}

/* mot */
#word {
	font-size: 20px;
	letter-spacing: 10px;
	font-family: monospace;
}

/* clavier */
#keyboard {
	display: grid;
	grid-template-columns: repeat(10,38px);
	gap: 6px;
	justify-content: center;
	margin: auto;
	max-width: 420px;
}

/* messages */
#message {
	margin-left: 0px;
	margin-top: 15px;
}

.key {
	width: 38px;
	aspect-ratio: 1;
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	padding: 0;
	background: #D1D1D1;
	border-radius: 4px;
	font-size: 18px;
	cursor: pointer;
}

.used {
	opacity: .4;
}

.key:hover:not(.used) {
	background: #A2A2A2;
}

.key.good {
	background: #2ECC71 !important;
	border: 2px solid #339933;
	color: #0000FF;
}

.key.bad {
	background: #E74C3C !important;
	border: 2px solid #CC0000;
	color: #0000FF;
}

.key.good:active,
.key.bad:active {
	background: inherit;
}

/* SVG */
#hangmanSVG {
	width: 240px;
	margin: 10px auto;
	display: block;
	background: #E8E8E8;
	border-radius: 12px;
}

#hangmanSVG line,
#hangmanSVG circle,
#hangmanSVG path,
#hangmanSVG ellipse,
#hangmanSVG text {
	stroke: #000000;
	stroke-width: 3;
	fill: none;
	opacity: 0;
	stroke-linecap: round;
	stroke-linejoin: round;
	transition: .3s;
}

#hangmanSVG text {
	stroke: none;
	fill: #000000;
	font-weight: bold;
}

.show {
	opacity: 1!important;
}

#air {
	stroke: #000000;
	stroke-width: 2;
	fill: none;
	display: none;
}

#air.show {
	display: block;
	stroke: #000000;
	stroke-width: 1 !important;
	fill: #FFFFFF !important;
}

.blow {
	animation: blow 2.2s ease-out;
}

@keyframes blow {
	0% {
	opacity: 0;
	transform: translateX(0) scale(0.6);
}

30% {
	opacity: 1;
}

70% {
	opacity: 1;
}

100% {
	opacity: 0;
	transform: translateX(-25px) scale(1.4);
}
}

.faceAnim {
	animation: facePop .3s ease;
}

@keyframes facePop {
	0% {
	transform: scale(0.6);
	opacity: 0;
}
100% {
	transform: scale(1);
	opacity: 1;
}
}

@keyframes sweatDrop {
	0% {
	transform: translateY(-6px);
	opacity: 0;
}
100% {
	transform: translateY(0);
	opacity: 1;
}
}

#tongue {
	fill: #E53935 !important;
	stroke: #B71C1C !important;
	stroke-width: 2 !important;
	opacity: 0;
}

#tongue.show {
	opacity: 1;
}

/* sueur */
#sweatL,
#sweatR {
	fill: #74ACFF !important;
	stroke: #5D9EFF !important;
	stroke-width: 1 !important;
}

/* joues */
#cheekL,
#cheekR {
	display: none;
	fill: #FFB3B3;
	opacity: 0.8;
}

#cheekL.show,
#cheekR.show {
	display: block;
	fill: #FFB3B3 !important;
	stroke: #FFB3B3 !important;
	stroke-width: 0 !important;
	opacity: 0.8;
}

#random, #verbes, #adverbes, #adjectifs {
	width: auto;
	height: auto;
    padding: 14px 12px !important;
	border-radius: 8px;
	border: 2px solid #2B7CFF;
    cursor: pointer;
	font-weight: 600;
}

#acceslistejeux {
	width: 50% !important;
	background: #ECECEC;
	margin-left: auto;
	margin-right: auto;
	margin-top: 20px;
	margin-bottom: 0px;
	padding: 0px;
}

.pendufset {
	margin-left: 20px;
	margin-right: 20px;
	padding-bottom: 20px;
	text-align: center;
}

.devinernum {
	margin-left: 0px;
	margin-right: 0px;
	margin-top: -10px;
	margin-bottom: -10px;
}

.txtmobile {
	display: none;
}

.txtnormal {
	display: block;
}

/* responsive smartphone vertical */
@media only screen and (max-width:700px){
.game {
	flex-direction: column;
}

#keyboard {
	grid-template-columns: repeat(7,34px);
	column-gap: 6px;
	row-gap: 4px;
	justify-content: center;
}

.key {
	width: 34px;
	aspect-ratio: 1;
	padding: 0;
	font-size: 15px;
	line-height: 1;
}

#word {
	font-size: 20px;
}

.themes button {
	padding: 16px 12px !important;
}

.colonnemilieu {
	width: 99.9999%;
	margin-left: 0px;
	margin-right: 0px;
	padding-left: 0px;
	padding-right: 0px;
}

#random, #verbes, #adverbes, #adjectifs {
	padding: 16px 12px !important;
}
  
.pendufset {
	margin-left: -4px !important;
	margin-right: 0px !important;
}

.txtmobile {
	display: block;
}

.txtnormal {
	display: none;
}
}

/* responsive tablette */
@media only screen and (min-width: 701px) and (max-width: 900px) {
#keyboard {
	grid-template-columns: repeat(7,36px);
	column-gap: 5px;
	row-gap: 5px;
	justify-content: center;
}

.key {
	width: 36px;
	aspect-ratio: 1;
	padding: 0;
	font-size: 16px;
	line-height: 1;
}

#word {
	font-size: 22px;
}

.txtmobile {
	display: block;
}
.txtnormal {
	display: none;
}
}

/* responsive smartphone horizontal */
@media screen and (max-width:900px) and (orientation:landscape) and (max-height:500px){
.game {
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
}

#leftWmsg {
	margin-top: -8px;
	width: 50%;
	text-align: center;
}

#svgSide {
	margin-top: -10px;
	margin-bottom: -4px;
	width: 50%;
	display: flex;
	justify-content: center;
}

#hangmanSVG {
	width: 170px;
	height: auto;
}

#keyboard {
	grid-template-columns: repeat(9,36px);
	column-gap: 5px;
	row-gap: 5px;
	justify-content: center;
}

.key {
	width: 36px;
	aspect-ratio: 1;
	padding: 0;
	font-size: 16px;
	line-height: 1;
}

#word {
	font-size: 22px;
	letter-spacing: 6px;
}
}
