/***
  WIMS styles for OEF exercices
***/

.main_body>.ui-dialog {
  /* moves jquery-ui dialog box over everything else (even jmol applet) */
  z-index: 10001;
}

/* OEF STYLES */
#oef_intro_params {
  border-color: #BBB gray gray #BBB;
  border-radius: 10px;
  border-style: solid;
  border-width: 1px;
  padding: 0;
}

@media print,
screen and (min-width: 40em) {
  #oef_intro_params {
    margin: 1em auto;
    width: 80%;
  }
}

#oef_intro_params .legend {
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}

#oef_intro_params label {
  font-weight: bold;
}

#oef_intro_params .field {
  /*margin: 1em 0;*/
  padding: .5em 1em;
}

#oef_intro_params select#exo {
  width: 100%;
}

.oef_intro_buttons {
  text-align: center;
}

#oef_devel_mode {
  font-size: small;
}

.oefform .send_answer,
#oef_actions {
  text-align: center;
}

.send_answer {
  margin-top: .5em;
}

#oef_actions {
  margin: 1em 0;
}

#oef_actions p {
  margin: .2em;
}

/*.oefhint {padding-top: 2px;}*/

.oefreply {
  margin: 1em;
}

/*.oefanswer {}
.oef_modulescore { }
.oef_congratulations { }*/

.oefanswer table {
  font-size: .9em;
  border-collapse: collapse;
}

.wims_oef_input {
  padding-top: 2px;
  padding-right: 1px;
  padding-bottom: 2px;
  padding-left: 1px;
  font-weight: bold;
  font-size: 1.2em;
}

.oefanswername {
  font-size: 125%;
}

.oefstatement {
  border: 1px groove ThreeDFace;
  padding: 5px;
  margin-bottom: 3px;
}

.oefstatement table {
  border-collapse: collapse;
}

.oefstatement sub {
  bottom: -.5em;
}

.oefstatement sup {
  top: -1em;
}

.oefstatement sup,
.oefstatement sub {
  line-height: 3em;
}

.oef_enterreply {
  font-size: 1.25rem;
}

.answer_analysis {
  margin-bottom: 1em;
  border: 1px groove ThreeDFace;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
}

.legend {
  margin-top: 0;
  padding: .5em 1em;
  border-bottom: 1px groove ThreeDFace;
  text-align: center;
  font-weight: bold;
}

.answer_analysis .content {
  padding: 1em;
}

.oefform {
  padding: .5em;
}

.oefnameexo {
  display: inline;
  font-style: italic;
}

/* OEF Colors legend */
.oef_indlegend ul {
  padding-left: 1em;
}

.oef_indlegend li {
  list-style: none;
}

.oef_indlegend li:first-letter {
  text-transform: capitalize
}

.oef_indlegend li:before {
  content: "\00B7";
  font-size: 70px;
  vertical-align: text-bottom;
  line-height: 1.5rem;
}

/* this class must stay empty  */
.oef_empty {}

/* for exercice modules in preparation (not OEF)*/
/*.module_score { }
.statement { }
.congratulations { }*/

/* for latex solution in print version */
/*div.wims_solution {}*/
/* table of questions in case of noembedding */
.oefnoembed td {
  min-width: 70px;
  margin-top: 5px;
  margin-bottom: 5px;
}

ul.oef_filter {
  list-style: none
}

/* link in the help on the oef special method help must be left to the exercise*/
/*.oef_specialhelp { }*/

/*** ANSTYPES ***/

:root {
  --oef-drag-color: #b3ddef;
  --oef-grab-color: #87ceeb;
}

/** dragfill/clickfill **/

/* replace the old "table" with a flexbox div */
.wims_fill_object {
  display: flex;
  align-items: center;
  height: 100%;
}

.drag_label {
  display: flex;
  align-items: center;
  padding: 2px;
  border: 1px solid #999;
  box-sizing: border-box;
  margin: 1px;
  background-color: var(--oef-drag-color);
  overflow: auto;
}

.fill_container {
  display: inline-flex;
  flex-flow: row wrap;
  font-family: sans-serif;
  background-color: #ffd080;
  margin: 2px;
}

.wims_grabbable {
  background-color: var(--oef-grab-color);
  cursor: move;
  /* fallback if grab cursor is unsupported */
  cursor: grab;
}

/* Apply a "closed-hand" cursor during drag operation. */
.wims_grabbable:active {
  cursor: grabbing;
}

.wims_droppable {
  cursor: pointer;
  background-color: #ffd080;
}

.wims_grabbable:hover,
.wims_droppable:hover {
  border-color: #004077;
}

.wims_droppable:hover {
  font-weight: 700;
}

/** prevent selecting text while grabbing **/
.wims_grabbable,
.wims_droppable {
  user-select: none;
  -webkit-user-select: none;
  transition: border-color .5s;
  border: 1px solid transparent;
  box-sizing: border-box;
}

/* Used in multipleclick OEF answer */
.ans_label {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  height: 100%;
}

a.ans_label:hover {
  background-color: rgb(255 255 255 / .2);
}

.answeranalysis .ans_label,
div[class^="oef_ind"] .jxgbox {
  border-width: 2px;
  border-style: solid;
}

.ans_label.oef_indgood,
.feedback.oef_indgood,
.oef_indgood .jxgbox {
  border-color: var(--oef_indgood);
}

.ans_label.oef_indbad,
.feedback.oef_indbad,
.oef_indbad .jxgbox {
  border-color: var(--oef_indbad);
}

.ans_label.oef_indforget,
.feedback.oef_indforget,
.oef_indforget .jxgbox {
  border-color: var(--oef_indforget);
}

.ans_label.oef_indneutral,
.feedback.oef_indneutral,
.oef_indneutral .jxgbox {
  color: #999;
  border-color: #999;
}

.feedback.oef_indpartial,
.oef_indpartial .jxgbox {
  border-color: var(--oef_indpartial);
}

/*.ans_multipleclick a{display:flex;height:100%;align-items: center;justify-content: center;}*/

/** Add text icons to ans_multipleclick answered labels **/
.ans_multipleclick .ans_label {
  flex-wrap: wrap;
}

.ans_multipleclick .ans_label:before {
  width: 100%;
  text-align: center;
}

div[class^='oef_ind'] .jsxwrap:before,
.legend_multipleclick>li:before {
  font-size: 1.5em;
}

div[class^='oef_ind'] .jsxwrap:before {
  text-align: center;
  width: 100%;
  display: block;
}

.legend_multipleclick>li:before {
  vertical-align: middle;
  margin-right: .5em;
}

.ans_multipleclick .ans_label.oef_indbad:before,
.legend_multipleclick>.oef_indbad:before,
.oef_indbad .jsxwrap:before {
  content: "X";
}

.ans_multipleclick .ans_label.oef_indgood:before,
.legend_multipleclick>.oef_indgood:before,
.oef_indgood .jsxwrap:before {
  /* Check mark */
  content: "\02713";
}

.ans_multipleclick .ans_label.oef_indforget:before,
.legend_multipleclick>.oef_indforget:before,
.oef_indforget .jsxwrap:before {
  /* empty set */
  content: "\02205";
}

.ans_multipleclick .ans_label.oef_indpartial:before,
.legend_multipleclick>.oef_indpartial:before,
.oef_indpartial .jsxwrap:before {
  /* CIRCLE WITH UPPER RIGHT QUADRANT */
  content: "\025D4";
}

.feedback.oef_indgood,
.feedback.oef_indbad,
.feedback.oef_indpartial,
.feedback.oef_indforget {
  color: #000;
  font-weight: normal;
}

/** change the drag_label & ans_label colors when it indicates a feedback **/
.oef_indgood .drag_label,
.ans_label.oef_indgood,
.feedback.oef_indgood {
  background-color: #e1faea;
}

.oef_indbad .drag_label,
.ans_label.oef_indbad,
.feedback.oef_indbad {
  background-color: #f7e4e1;
}

.oef_indpartial .drag_label,
.ans_label.oef_indpartial,
.feedback.oef_indpartial {
  background-color: #fff3d9;
}

.ans_label.oef_indforget,
.feedback.oef_indforget {
  background-color: #d9f3ff;
}

/* #CANVASDRAW **/
div:not(.wims_scrollable)>.canvas_wrapper {
  width: 100% !important;
  height: auto !important;
}

.canvas_wrapper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

.canvas_wrapper>canvas {
  width: 100%;
}

.tooltip_placeholder {
  display: none;
}

.canvasdraw_xml {
  position: absolute;
}

.canvas_center {
  display: flex;
  align-items: center;
  justify-content: center;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.canvas_draggable {
  cursor: grab;
}

.canvas_draggable:hover {
  opacity: .8;
  background-color: #CCC5;
}

.canvas_dragging {
  cursor: grabbing;
  box-shadow: 4px 4px 4px #CCC;
}

.canvas_placeable {
  display: flex;
  cursor: pointer;
  padding: 2px;
  border: 1px solid #dfdfdf;
  box-sizing: border-box;
  transition: border-color .5s, background-color .5s;
}

.canvas_placeable:hover,.canvas_placeable:focus {
  border-color: var(--oef-grab-color);
}

.canvas_placeable.selected {
  background-color: var(--oef-drag-color);
}

/** OEF Clock **/
div.wims_clock{
  margin: 0 1px;
  text-align: right;
}
