* {
  margin: 0;
  padding: 0;
}

html {
  position: fixed;
  width: 100%;
}

html,
body {
  border: 0px;
  margin: 0px;
  padding: 0px;
  font-family: system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 100%;
}

body {
  height: 100%;
  background-color: #eff4fc;
  background-image: url("img/background-creation.png");
  background-position: top center;
  background-size: cover;
  background-attachment: fixed;
}
body.theme-pr {
  background: #111459;
  background-image: url("img/pr/bg-pr.jpeg");
  background-position: bottom right;
  background-size: cover;
  background-attachment: fixed;
}
body.theme-pr.resultPage.finished {
  background: #3739ac;
  background-image: url("img/pr/bg-endpage.png");
  background-position: center center;
  background-attachment: fixed;
}

iframe {
  display: block;
  border: 0px;
  margin: 0px auto;
  padding: 0px;
}

.changemode_overlay {
  display: none;
  position: static;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  background: #fff;
  z-index: 999999;
  background-repeat: no-repeat;
  background-size: 180px 180px;
  background-position: center center;
  background-image: url("../images/loader.svg");
}

body:not(.theme-pr) .activity-header {
  background: #152c52;
  box-shadow: 0px 2px 5px 0px rgba(51, 102, 153, 0.2);
  top: 0;
  left: 0;
  width: 100%;
  height: 70px;
  margin-bottom: -70px;
  z-index: 0;
}
@media (max-height: 799px), (max-width: 1066px) {
  body:not(.theme-pr) .activity-header {
    margin-bottom: -60px;
    height: 60px;
  }
}
body:not(.theme-pr) .activity-header::before {
  display: block;
  content: "";
  width: 50%;
  height: 100%;
  clear: both;
}
body:not(.theme-pr) .activity-header.type_evaluation:before {
  background: #ed6e19;
}
body:not(.theme-pr) .activity-header.type_apprentissage:before {
  background: #09a59b;
}
body:not(.theme-pr) .activity-header.type_corrige:before {
  background: #152c52;
}

h1 {
  clear: both;
  color: #fff;
  display: block;
  font-size: 16px;
  padding: 15px 0 10px 10px;
}

.testmode_initial_panel,
.testmode_notcomplete,
.testmode_sommative_error {
  display: block;
  left: 50% !important;
  margin-left: -225px !important;
  position: absolute;
  top: 40% !important;
  width: 450px !important;
  z-index: 6;
}

.plane {
  margin: 0 auto;
}

/* *** Fancybox *** */
.ai-fancybox .fancybox-close {
  background-color: rgba(0, 0, 0, 0.5);
  background-image: url(img/btn-close.svg);
  background-size: 12px;
  background-repeat: no-repeat;
  background-position: center center;
  width: 44px;
  height: 44px;
  position: fixed;
  top: 0;
  right: 0;
}
.ai-fancybox .fancybox-close:hover {
  background-color: #000;
}
.ai-fancybox .fancybox-inner {
  overflow: visible;
}
.ai-fancybox .fancybox-skin {
  background: transparent !important;
}
.ai-fancybox .fancybox-image {
  background-color: #fff;
}

body.loading .activity-header {
  display: none;
}

/* Hide OneTrust button*/ 
#ot-sdk-btn-floating.ot-floating-button{
  display: none !important;
}
/*! fancyBox v2.1.5 fancyapps.com | fancyapps.com/fancybox/#license */
.fancybox-wrap,
.fancybox-skin,
.fancybox-outer,
.fancybox-inner,
.fancybox-image,
.fancybox-wrap iframe,
.fancybox-wrap object,
.fancybox-nav,
.fancybox-nav span,
.fancybox-tmp
{
	padding: 0;
	margin: 0;
	border: 0;
	outline: none;
	vertical-align: top;
}

.fancybox-wrap {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 8020;
}

.fancybox-skin {
	position: relative;
	background: #f9f9f9;
	color: #444;
	text-shadow: none;
	-webkit-border-radius: 4px;
	   -moz-border-radius: 4px;
	        border-radius: 4px;
}

.fancybox-opened {
	z-index: 8030;
}

.fancybox-opened .fancybox-skin {
	-webkit-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
	   -moz-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
	        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
}

.fancybox-outer, .fancybox-inner {
	position: relative;
}

.fancybox-inner {
	overflow: hidden;
}

.fancybox-type-iframe .fancybox-inner {
	-webkit-overflow-scrolling: touch;
}

.fancybox-error {
	color: #444;
	font: 14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
	margin: 0;
	padding: 15px;
	white-space: nowrap;
}

.fancybox-image, .fancybox-iframe {
	display: block;
	width: 100%;
	height: 100%;
}

.fancybox-image {
	max-width: 100%;
	max-height: 100%;
}

#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
	background-image: url('fancybox_sprite.png');
}

#fancybox-loading {
	position: fixed;
	top: 50%;
	left: 50%;
	margin-top: -22px;
	margin-left: -22px;
	background-position: 0 -108px;
	opacity: 0.8;
	cursor: pointer;
	z-index: 8060;
}

#fancybox-loading div {
	width: 44px;
	height: 44px;
	background: url('fancybox_loading.gif') center center no-repeat;
}

.fancybox-close {
	position: absolute;
	top: -18px;
	right: -18px;
	width: 36px;
	height: 36px;
	cursor: pointer;
	z-index: 8040;
}

.fancybox-nav {
	position: absolute;
	top: 0;
	width: 40%;
	height: 100%;
	cursor: pointer;
	text-decoration: none;
	background: transparent url('blank.gif'); /* helps IE */
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	z-index: 8040;
}

.fancybox-prev {
	left: 0;
}

.fancybox-next {
	right: 0;
}

.fancybox-nav span {
	position: absolute;
	top: 50%;
	width: 36px;
	height: 34px;
	margin-top: -18px;
	cursor: pointer;
	z-index: 8040;
	visibility: hidden;
}

.fancybox-prev span {
	left: 10px;
	background-position: 0 -36px;
}

.fancybox-next span {
	right: 10px;
	background-position: 0 -72px;
}

.fancybox-nav:hover span {
	visibility: visible;
}

.fancybox-tmp {
	position: absolute;
	top: -99999px;
	left: -99999px;
	visibility: hidden;
	max-width: 99999px;
	max-height: 99999px;
	overflow: visible !important;
}

/* Overlay helper */

.fancybox-lock {
    overflow: hidden !important;
    width: auto;
}

.fancybox-lock body {
    overflow: hidden !important;
}

.fancybox-lock-test {
    overflow-y: hidden !important;
}

.fancybox-overlay {
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	display: none;
	z-index: 8010;
	background: url('fancybox_overlay.png');
}

.fancybox-overlay-fixed {
	position: fixed;
	bottom: 0;
	right: 0;
}

.fancybox-lock .fancybox-overlay {
	overflow: auto;
	overflow-y: scroll;
}

/* Title helper */

.fancybox-title {
	visibility: hidden;
	font: normal 13px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
	position: relative;
	text-shadow: none;
	z-index: 8050;
}

.fancybox-opened .fancybox-title {
	visibility: visible;
}

.fancybox-title-float-wrap {
	position: absolute;
	bottom: 0;
	right: 50%;
	margin-bottom: -35px;
	z-index: 8050;
	text-align: center;
}

.fancybox-title-float-wrap .child {
	display: inline-block;
	margin-right: -100%;
	padding: 2px 20px;
	background: transparent; /* Fallback for web browsers that doesn't support RGBa */
	background: rgba(0, 0, 0, 0.8);
	-webkit-border-radius: 15px;
	   -moz-border-radius: 15px;
	        border-radius: 15px;
	text-shadow: 0 1px 2px #222;
	color: #FFF;
	font-weight: bold;
	line-height: 24px;
	white-space: nowrap;
}

.fancybox-title-outside-wrap {
	position: relative;
	margin-top: 10px;
	color: #fff;
}

.fancybox-title-inside-wrap {
	padding-top: 10px;
}

.fancybox-title-over-wrap {
	position: absolute;
	bottom: 0;
	left: 0;
	color: #fff;
	padding: 10px;
	background: #000;
	background: rgba(0, 0, 0, .8);
}

/*Retina graphics!*/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
	   only screen and (min--moz-device-pixel-ratio: 1.5),
	   only screen and (min-device-pixel-ratio: 1.5){

	#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
		background-image: url('fancybox_sprite@2x.png');
		background-size: 44px 152px; /*The size of the normal image, half the size of the hi-res image*/
	}

	#fancybox-loading div {
		background-image: url('fancybox_loading@2x.gif');
		background-size: 24px 24px; /*The size of the normal image, half the size of the hi-res image*/
	}
}
#footer_timer {
  background: white;
  border: 1px solid #9097a5;
  border-radius: 3px;
  color: #383d47;
  font-size: 16px;
  font-weight: 700;
  height: 38px;
  padding: 0 10px;
  max-width: 180px;
  margin-right: 10px;
  display: none;
}
@media all and (max-height: 768px) {
  #footer_timer {
    height: 32px;
    font-size: 14px;
  }
}
#footer_timer span {
  display: flex;
  text-align: center;
  min-width: 0px;
  flex-grow: 1;
  justify-content: center;
  cursor: default;
  margin: 0 auto;
  height: 100%;
  align-items: center;
  align-content: center;
}
#footer_timer.alert_mode {
  border-color: #ed989e;
  color: #e93a47;
}

.timer #footer_timer {
  display: flex;
}

#timeOut {
  display: none;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0px;
  background: rgba(0, 0, 0, 0.75);
}

#timeOutContainer {
  margin: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
}

#timeOutText {
  font-size: 40px;
  font-family: "Roboto";
  font-weight: 100;
}

#showResultsTimeOut {
  text-decoration: none;
  cursor: pointer;
  border: none;
  height: 40px;
  line-height: 40px;
  min-width: 100px;
  border-radius: 3px;
  font-size: 16px;
  background-color: #327ee6;
  text-align: center;
  white-space: nowrap;
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 170px;
  margin: 0 auto;
  margin-top: 40px;
}

#timeSpent {
  display: none;
  text-align: center;
  width: 100%;
}

#triesLeft {
  display: none;
  text-align: center;
  width: 100%;
}

.timer #navigation {
  pointer-events: none;
}

#timeLimitIntro::before,
#footer_timer span::before,
#timeSpent::before {
  content: "";
  background-image: url(./img/settings_timer.svg);
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  width: 1.45vw;
  height: 1.45vw;
  margin-right: 0.5vw;
  display: inline-block;
  vertical-align: middle;
}

#timeLimitIntro::before {
  width: 1.7vw;
  height: 1.7vw;
  margin-right: 0.75vw;
  position: relative;
  bottom: 0.15vw;
}

#triesDescription::before,
#triesLeft span::before {
  content: "";
  background-image: url(./img/settings_tentatives.svg);
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  width: 1.7vw;
  height: 1.7vw;
  margin-right: 0.75vw;
  position: relative;
  bottom: 0.05vw;
  display: inline-block;
  vertical-align: middle;
}

#timeOutVisual {
  background-image: url(./img/timer_over.svg);
  background-size: cover;
  width: 120px;
  height: 120px;
  margin: 0 auto;
}

#footer_timer.alert_mode span::before {
  background-image: url(./img/settings_timer_alert.svg);
}