* {
   -moz-user-select: -moz-none;
   -webkit-user-select: none;
   -o-user-select: none;
   user-select: none;
   -khtml-user-select: none;
}

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

body {
   font-family: Arial, sans-serif;
   font-size: 16px;
   margin: 0;
}
body > * {
   width: 770px;
   margin: 0 auto;
}

a {
   color: #4D87CE;
   font-weight: bold;
   text-decoration: none;
}

button,
input[type="button"] {
   line-height: 1.2;
   font-size: 16px;
}

.selectable,
input,
textarea {
   -moz-user-select: text;
   -webkit-user-select: auto !important;
   -o-user-select: text;
   -khtml-user-select: text;
   user-select: text;
}

.borders, .borders td {
	border: 1px solid black;
}

.contentCentered {
   text-align: center;
}

.warningHeader { 
   margin: 10px 0px 10px 0px; 
   padding: 10px 10px 10px 10px; 
   background: #FFEEEE; 
   /*font-weight: bold;*/
   border: 2px solid black; 
   border-radius: 6px;
 }
#task h1,
.question h1,
#solution {
   display: none;
   margin-bottom: 0.4em;
   margin-top: 0.4em;
}
#taskIntro {
   border: 1px solid #8d9daa;
   margin: 10px 0;
   padding: 0 10px;
   font-weight: bold;
}
#taskContent {
   text-align: justify;
}

#success,
#error {
   font-weight: bold;
}
#success {
   color: blue;
}
#error {
   color: red;
}

#tabsContainer {
   position: relative;
   border-bottom: 2px solid #8d9daa;
}
#tabsMenu {
   text-align: center;
}
#tabsMenu .li {
   display: inline-block;
   width: 165px;
   margin: 0 20px;
   background: #88BB88;
   border: 2px solid #8d9daa;
   border-bottom: 0;
   border-radius: 6px 6px 0 0;
   text-align: center;
}
#tabsMenu .li.lockedLevel {
   background: #404040;
}
#tabsMenu .li.current {
   margin-bottom: -2px;
   padding-bottom: 2px;
   background: white;
}
#tabsMenu .li.current.lockedLevel {
   padding-bottom: 1px;
   border-bottom: 1px solid #c0c0c0;
   background: #606060;
}
#tabsMenu .li a {
   display: block;
   padding: 8px;
   color: #000;
   text-decoration: none; 
   font-size: 1.1em;
}
#tabsMenu .li.lockedLevel a {
   color: #ddd;
}
#tabsMenu .li a:focus {
   outline: none;
}
#tabsMenu .li:not(.current) a:active {
   background: #c4d3de;
}
#tabsMenu .li.lockedLevel a:active {
   background: #6c7787;
}

h1 span {
   display: inline-block;
   width: .8em;
   height: .8em;
}
h1 .stars {
   vertical-align: baseline;
}
.stars {
   vertical-align: middle;
}

#tabsContainer {
   position: relative;
}
.bestScore {
   position: absolute;
   right: 0;
   top: .3em;
   font-size: 1.2em;
}
#bestScore {
   font-weight: bold;
}

#popupMessage {
   display: none;
}
#popupMessage .container {
   position: relative;
   margin: .5em 0;
   padding: 8px;
}
#popupMessage.floatingMessage {
   position: absolute;
   z-index: 100;
   top: 0;
   left: 0;
   height: 100%;
   width: 100%;
   background-color: gray;
   background: rgba(0, 0, 0, .6);
}
#popupMessage.floatingMessage .container {
   min-height: 100px;
   max-width: 600px;
   margin: 360px auto;
   border: 2px solid black;
   background: white;
}
#popupMessage img.beaver {
   position: absolute;
   width: 90px;
}
#popupMessage img.messageArrow {
   position: absolute;
   z-index: 1;
   left: 100px;
   top: 16px;
}
#popupMessage .message {
   margin-left: 115px;
   padding: 8px;
   max-width: 500px;
   border: 2px solid black;
   border-radius: 8px;
   text-align: justify;
}
#popupMessage p {
   margin: .5em 0 0;
}
#popupMessage p:first-child {
   margin-top: 0;
}
#popupMessage input {
   margin-top: 1em;
   margin-left: 200px;
}
#popupMessage button {
   margin-top: 1em;
   margin-left: 200px;
   padding: 5px 18px 5px 18px;
   margin-bottom: 0.5em;
}

.easy,
.medium,
.hard {
   display: none;
}

#displayHelperAnswering {
   margin-top: 15px;
}
#displayHelper_validate,
#displayHelper_cancel {
   display: inline-block;
}
#displayHelper_validate > [value="Valider"],
#displayHelper_cancel > [value="Recommencer"] {
   margin: 0 10px;
   width: 9em;
}
#displayHelper_saved {
   margin: .6em;
}
#choose-view {
   margin-bottom: 1em;
   text-align: center;
}
#choose-view .choose-view-button {
   margin: 0 10px;
}
