diff --git a/app/comp/res_common.py b/app/comp/res_common.py
index 519e9aec30289cb5537245d088bc321c25dc67eb..f1020b481e7f042fe47012f8aec098cba60a134b 100644
--- a/app/comp/res_common.py
+++ b/app/comp/res_common.py
@@ -419,21 +419,23 @@ class ResultatsSemestre(ResultatsCache):
         else:
             fmt_note = lambda x: x
 
-        barre_moy = (
-            self.formsemestre.formation.get_parcours().BARRE_MOY - scu.NOTES_TOLERANCE
-        )
-        barre_valid_ue = self.formsemestre.formation.get_parcours().NOTES_BARRE_VALID_UE
+        parcours = self.formsemestre.formation.get_parcours()
+        barre_moy = parcours.BARRE_MOY - scu.NOTES_TOLERANCE
+        barre_valid_ue = parcours.NOTES_BARRE_VALID_UE
+        barre_warning_ue = parcours.BARRE_UE_DISPLAY_WARNING
         NO_NOTE = "-"  # contenu des cellules sans notes
         rows = []
         # column_id : title
         titles = {
             "rang": "Rg",
-            # ordre des colonnes:
+            # ordre des colonnes de gauche à droite:
             "_civilite_str_col_order": 2,
             "_nom_disp_col_order": 3,
             "_prenom_col_order": 4,
             "_nom_short_col_order": 5,
             "_rang_col_order": 6,
+            # les colonnes des groupes sont à la position 10
+            "_ues_validables_col_order": 20,
         }
         # les titres en footer: les mêmes, mais avec des bulles et liens:
         titles_bot = {}
@@ -452,6 +454,7 @@ class ResultatsSemestre(ResultatsCache):
 
         etuds_inscriptions = self.formsemestre.etuds_inscriptions
         ues = self.formsemestre.query_ues(with_sport=True)  # avec bonus
+        ues_sans_bonus = [ue for ue in ues if ue.type != UE_SPORT]
         modimpl_ids = set()  # modimpl effectivement présents dans la table
         for etudid in etuds_inscriptions:
             etud = Identite.query.get(etudid)
@@ -479,7 +482,7 @@ class ResultatsSemestre(ResultatsCache):
             if moy_gen is False:
                 moy_gen = NO_NOTE
             elif isinstance(moy_gen, float) and moy_gen < barre_moy:
-                note_class = " moy_inf"
+                note_class = " moy_ue_warning"  # en rouge
             add_cell(
                 row,
                 "moy_gen",
@@ -491,7 +494,8 @@ class ResultatsSemestre(ResultatsCache):
                 'title="moyenne indicative"' if self.is_apc else ""
             )
             # --- Moyenne d'UE
-            for ue in [ue for ue in ues if ue.type != UE_SPORT]:
+            nb_ues_validables, nb_ues_warning = 0, 0
+            for ue in ues_sans_bonus:
                 ue_status = self.get_etud_ue_status(etudid, ue.id)
                 if ue_status is not None:
                     col_id = f"moy_ue_{ue.id}"
@@ -502,6 +506,10 @@ class ResultatsSemestre(ResultatsCache):
                             note_class = " moy_inf"
                         elif val >= barre_valid_ue:
                             note_class = " moy_ue_valid"
+                            nb_ues_validables += 1
+                        if val < barre_warning_ue:
+                            note_class = " moy_ue_warning"  # notes très basses
+                            nb_ues_warning += 1
                     add_cell(
                         row,
                         col_id,
@@ -557,7 +565,21 @@ class ResultatsSemestre(ResultatsCache):
                         title="{modimpl.module.titre} 
                         ({sco_users.user_info(modimpl.responsable_id)['nomcomplet']})" """
                         modimpl_ids.add(modimpl.id)
-
+            ue_valid_txt = f"{nb_ues_validables}/{len(ues_sans_bonus)}"
+            if nb_ues_warning:
+                ue_valid_txt += " " + scu.EMO_WARNING
+            add_cell(
+                row,
+                "ues_validables",
+                "Nb UE",
+                ue_valid_txt,
+                "col_ue col_ues_validables",
+            )
+            if nb_ues_warning:
+                row["_ues_validables_class"] += " moy_ue_warning"
+            elif nb_ues_validables < len(ues_sans_bonus):
+                row["_ues_validables_class"] += " moy_inf"
+            row["_ues_validables_order"] = nb_ues_validables  # pour tri
             rows.append(row)
         self._recap_add_partitions(rows, titles)
         self._recap_add_admissions(rows, titles)
@@ -565,9 +587,7 @@ class ResultatsSemestre(ResultatsCache):
         rows.sort(key=lambda e: e["_rang_order"])
 
         # INFOS POUR FOOTER
-        bottom_infos = self._recap_bottom_infos(
-            [ue for ue in ues if ue.type != UE_SPORT], modimpl_ids, fmt_note
-        )
+        bottom_infos = self._recap_bottom_infos(ues_sans_bonus, modimpl_ids, fmt_note)
 
         # --- TABLE FOOTER: ECTS, moyennes, min, max...
         footer_rows = []
@@ -667,7 +687,7 @@ class ResultatsSemestre(ResultatsCache):
 
     def _recap_add_admissions(self, rows: list[dict], titles: dict):
         """Ajoute les colonnes "admission"
-        rows est une liste de dict avec un clé "etudid"
+        rows est une liste de dict avec une clé "etudid"
         Les colonnes ont la classe css "admission"
         """
         fields = {
@@ -693,7 +713,7 @@ class ResultatsSemestre(ResultatsCache):
 
     def _recap_add_partitions(self, rows: list[dict], titles: dict):
         """Ajoute les colonnes indiquant les groupes
-        rows est une liste de dict avec un clé "etudid"
+        rows est une liste de dict avec une clé "etudid"
         Les colonnes ont la classe css "partition"
         """
         partitions, partitions_etud_groups = sco_groups.get_formsemestre_groups(
diff --git a/app/scodoc/notes_table.py b/app/scodoc/notes_table.py
index b1ac97b85307378a128acd3fbe7135a1f82c6d2d..a8cd0eb731bad868ab15d1000e8140b98257867a 100644
--- a/app/scodoc/notes_table.py
+++ b/app/scodoc/notes_table.py
@@ -51,8 +51,8 @@ from app.scodoc.sco_formsemestre import (
 from app.scodoc.sco_codes_parcours import (
     DEF,
     UE_SPORT,
-    UE_is_fondamentale,
-    UE_is_professionnelle,
+    ue_is_fondamentale,
+    ue_is_professionnelle,
 )
 from app.scodoc.sco_parcours_dut import formsemestre_get_etud_capitalisation
 from app.scodoc import sco_codes_parcours
@@ -826,11 +826,11 @@ class NotesTable:
                 and mu["moy"] >= self.parcours.NOTES_BARRE_VALID_UE
             ):
                 mu["ects_pot"] = ue["ects"] or 0.0
-                if UE_is_fondamentale(ue["type"]):
+                if ue_is_fondamentale(ue["type"]):
                     mu["ects_pot_fond"] = mu["ects_pot"]
                 else:
                     mu["ects_pot_fond"] = 0.0
-                if UE_is_professionnelle(ue["type"]):
+                if ue_is_professionnelle(ue["type"]):
                     mu["ects_pot_pro"] = mu["ects_pot"]
                 else:
                     mu["ects_pot_pro"] = 0.0
diff --git a/app/scodoc/sco_codes_parcours.py b/app/scodoc/sco_codes_parcours.py
index bcd6522b156e207360545f12e70e5ce16604edc7..e77c711d2bb28db78f14961929c92630ca0a1c65 100644
--- a/app/scodoc/sco_codes_parcours.py
+++ b/app/scodoc/sco_codes_parcours.py
@@ -81,11 +81,11 @@ UE_PROFESSIONNELLE = 5  # UE "professionnelle" (ISCID, ...)
 UE_OPTIONNELLE = 6  # UE non fondamentales (ILEPS, ...)
 
 
-def UE_is_fondamentale(ue_type):
+def ue_is_fondamentale(ue_type):
     return ue_type in (UE_STANDARD, UE_STAGE_LP, UE_PROFESSIONNELLE)
 
 
-def UE_is_professionnelle(ue_type):
+def ue_is_professionnelle(ue_type):
     return (
         ue_type == UE_PROFESSIONNELLE
     )  # NB: les UE_PROFESSIONNELLE sont à la fois fondamentales et pro
@@ -211,7 +211,7 @@ DEVENIRS_NEXT2 = {NEXT_OR_NEXT2: 1, NEXT2: 1}
 
 NO_SEMESTRE_ID = -1  # code semestre si pas de semestres
 
-# Regles gestion parcours
+# Règles gestion parcours
 class DUTRule(object):
     def __init__(self, rule_id, premise, conclusion):
         self.rule_id = rule_id
@@ -222,13 +222,13 @@ class DUTRule(object):
     def match(self, state):
         "True if state match rule premise"
         assert len(state) == len(self.premise)
-        for i in range(len(state)):
+        for i, stat in enumerate(state):
             prem = self.premise[i]
             if isinstance(prem, (list, tuple)):
-                if not state[i] in prem:
+                if not stat in prem:
                     return False
             else:
-                if prem != ALL and prem != state[i]:
+                if prem not in (ALL, stat):
                     return False
         return True
 
@@ -244,6 +244,7 @@ class TypeParcours(object):
     COMPENSATION_UE = True  # inutilisé
     BARRE_MOY = 10.0
     BARRE_UE_DEFAULT = 8.0
+    BARRE_UE_DISPLAY_WARNING = 8.0
     BARRE_UE = {}
     NOTES_BARRE_VALID_UE_TH = 10.0  # seuil pour valider UE
     NOTES_BARRE_VALID_UE = NOTES_BARRE_VALID_UE_TH - NOTES_TOLERANCE  # barre sur UE
diff --git a/app/scodoc/sco_utils.py b/app/scodoc/sco_utils.py
index 216a0b80d554f52e9d39f5461e1703073842039b..504343a4eb150bb85113cdc75abe60fccfc67b19 100644
--- a/app/scodoc/sco_utils.py
+++ b/app/scodoc/sco_utils.py
@@ -931,6 +931,9 @@ def icontag(name, file_format="png", no_size=False, **attrs):
 ICON_PDF = icontag("pdficon16x20_img", title="Version PDF")
 ICON_XLS = icontag("xlsicon_img", title="Version tableur")
 
+# HTML emojis
+EMO_WARNING = "&#9888;&#65039;"  # warning /!\
+
 
 def sort_dates(L, reverse=False):
     """Return sorted list of dates, allowing None items (they are put at the beginning)"""
diff --git a/app/static/css/scodoc.css b/app/static/css/scodoc.css
index 85c6574da802a51f3e11847092d8b28bf5b41246..6ece2dcf27e9f33d9bb2e3fc508e1df1d90d0abe 100644
--- a/app/static/css/scodoc.css
+++ b/app/static/css/scodoc.css
@@ -2,29 +2,32 @@
            ScoDoc, (c) Emmanuel Viennet 1998 - 2021
  */
 
-html,body {
-  margin:0;
-  padding:0;
+html,
+body {
+  margin: 0;
+  padding: 0;
   width: 100%;
-  background-color: rgb(242,242,238);
-  font-family:   "Helvetica Neue",Helvetica,Arial,sans-serif;
+  background-color: rgb(242, 242, 238);
+  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
   font-size: 12pt;
 }
 
 
 @media print {
-.noprint {
-  display:none;
-}
+  .noprint {
+    display: none;
+  }
 }
 
-h1, h2, h3 {
- font-family : "Helvetica Neue",Helvetica,Arial,sans-serif;
+h1,
+h2,
+h3 {
+  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
 }
 
 h3 {
- font-size: 14pt;
- font-weight: bold;
+  font-size: 14pt;
+  font-weight: bold;
 }
 
 div#gtrcontent {
@@ -32,40 +35,45 @@ div#gtrcontent {
 }
 
 .gtrcontent {
-   margin-left: 140px;
-   height: 100%;
-   margin-bottom: 10px;
+  margin-left: 140px;
+  height: 100%;
+  margin-bottom: 10px;
 }
-.gtrcontent a, .gtrcontent a:visited {
-  color: rgb(4,16,159);
+
+.gtrcontent a,
+.gtrcontent a:visited {
+  color: rgb(4, 16, 159);
   text-decoration: none;
 }
+
 .gtrcontent a:hover {
-  color: rgb(153,51,51);
+  color: rgb(153, 51, 51);
   text-decoration: underline;
 }
 
 .scotext {
- font-family : TimesNewRoman, "Times New Roman", Times, Baskerville, Georgia, serif;
+  font-family: TimesNewRoman, "Times New Roman", Times, Baskerville, Georgia, serif;
 }
 
 .sco-hidden {
-    display: None;
+  display: None;
 }
 
 div.tab-content {
   margin-top: 10px;
   margin-left: 15px;
 }
+
 div.tab-content ul {
   padding-bottom: 3px;
 }
+
 div.tab-content h3 {
   font-size: 1.17em;
 }
 
 form#group_selector {
-    display: inline;
+  display: inline;
 }
 
 #group_selector button {
@@ -80,42 +88,46 @@ span.bandeaugtr {
   margin: 0;
   border-width: 0;
   padding-left: 160px;
-/*  background-color: rgb(17,51,85); */
+  /*  background-color: rgb(17,51,85); */
 }
+
 @media print {
-span.bandeaugtr {
-   display:none;
-}
+  span.bandeaugtr {
+    display: none;
+  }
 }
+
 tr.bandeaugtr {
-/*  background-color: rgb(17,51,85); */
-  color: rgb(255,215,0);
- /* font-style: italic; */
+  /*  background-color: rgb(17,51,85); */
+  color: rgb(255, 215, 0);
+  /* font-style: italic; */
   font-weight: bold;
   border-width: 0;
   margin: 0;
 }
 
 #authuser {
-    margin-top: 16px;
+  margin-top: 16px;
 }
 
 #authuserlink {
-  color: rgb(255,0,0);
+  color: rgb(255, 0, 0);
   text-decoration: none;
 }
+
 #authuserlink:hover {
   text-decoration: underline;
 }
+
 #deconnectlink {
   font-size: 75%;
   font-style: normal;
-  color: rgb(255,0,0);
+  color: rgb(255, 0, 0);
   text-decoration: underline;
 }
 
 .navbar-default .navbar-nav>li.logout a {
-  color: rgb(255,0,0);
+  color: rgb(255, 0, 0);
 }
 
 /* ----- page content ------ */
@@ -127,54 +139,55 @@ div.about-logo {
 
 
 div.head_message {
-   margin-top: 2px;
-   margin-bottom: 8px;
-   padding:  5px;
-   margin-left: auto;
-   margin-right: auto;
-   background-color: rgba(255, 255, 115, 0.9);
-   -moz-border-radius: 8px;
-   -khtml-border-radius: 8px;
-   border-radius: 8px;
-   font-family : arial, verdana, sans-serif ;
-   font-weight: bold;
-   width: 70%;
-   text-align: center;
+  margin-top: 2px;
+  margin-bottom: 8px;
+  padding: 5px;
+  margin-left: auto;
+  margin-right: auto;
+  background-color: rgba(255, 255, 115, 0.9);
+  -moz-border-radius: 8px;
+  -khtml-border-radius: 8px;
+  border-radius: 8px;
+  font-family: arial, verdana, sans-serif;
+  font-weight: bold;
+  width: 70%;
+  text-align: center;
 }
 
 #sco_msg {
-    padding:  0px;
-    position: fixed;
-    top: 0px;
-    right: 0px;
-    color: green;
+  padding: 0px;
+  position: fixed;
+  top: 0px;
+  right: 0px;
+  color: green;
 }
 
 
 div.passwd_warn {
-    font-weight: bold;
-    font-size: 200%;
-    background-color: #feb199;
-    width: 80%;
-    height: 200px;
-    text-align: center;
-    padding:  20px;
-    margin-left: auto;
-    margin-right: auto;
-    margin-top: 10px;
+  font-weight: bold;
+  font-size: 200%;
+  background-color: #feb199;
+  width: 80%;
+  height: 200px;
+  text-align: center;
+  padding: 20px;
+  margin-left: auto;
+  margin-right: auto;
+  margin-top: 10px;
 }
 
 div.scovalueerror {
-    padding-left: 20px;
-    padding-bottom: 100px;
+  padding-left: 20px;
+  padding-bottom: 100px;
 }
 
 p.footer {
-    font-size: 80%;
-    color: rgb(60,60,60);
-    margin-top: 15px;
-    border-top: 1px solid rgb(60,60,60);
+  font-size: 80%;
+  color: rgb(60, 60, 60);
+  margin-top: 15px;
+  border-top: 1px solid rgb(60, 60, 60);
 }
+
 div.part2 {
   margin-top: 3ex;
 }
@@ -183,47 +196,56 @@ div.part2 {
 
 div.sidebar {
   position: absolute;
-  top: 5px; left: 5px;
+  top: 5px;
+  left: 5px;
   width: 130px;
   border: black 1px;
   /* debug background-color: rgb(245,245,245); */
-   border-right: 1px solid rgb(210,210,210);
+  border-right: 1px solid rgb(210, 210, 210);
 }
+
 @media print {
-div.sidebar {
-   display:none;
+  div.sidebar {
+    display: none;
+  }
 }
+
+a.sidebar:link,
+.sidebar a:link {
+  color: rgb(4, 16, 159);
+  text-decoration: none;
 }
-a.sidebar:link, .sidebar a:link { 
-  color: rgb(4,16,159);
-  text-decoration:none;
-} 
-a.sidebar:visited, .sidebar a:visited {
-   color: rgb(4,16,159);
-   text-decoration: none;
+
+a.sidebar:visited,
+.sidebar a:visited {
+  color: rgb(4, 16, 159);
+  text-decoration: none;
 }
-a.sidebar:hover, .sidebar a:hover {
-   color: rgb(153,51,51);
-   text-decoration: underline;
+
+a.sidebar:hover,
+.sidebar a:hover {
+  color: rgb(153, 51, 51);
+  text-decoration: underline;
 }
 
 a.scodoc_title {
-    color: rgb(102,102,102);
-    font-family: arial,verdana,sans-serif;
-    font-size: large;
-    font-weight: bold;
-    text-transform: uppercase;
-    text-decoration: none;
+  color: rgb(102, 102, 102);
+  font-family: arial, verdana, sans-serif;
+  font-size: large;
+  font-weight: bold;
+  text-transform: uppercase;
+  text-decoration: none;
 }
+
 h2.insidebar {
-    color: rgb(102,102,102);
-    font-weight: bold;
-    font-size: large;
-    margin-bottom: 0;
+  color: rgb(102, 102, 102);
+  font-weight: bold;
+  font-size: large;
+  margin-bottom: 0;
 }
 
 h3.insidebar {
-  color: rgb(102,102,102);
+  color: rgb(102, 102, 102);
   font-weight: bold;
   font-size: medium;
   margin-bottom: 0;
@@ -243,9 +265,11 @@ div.box-chercheetud {
 span.dept_full_name {
   font-style: italic;
 }
+
 span.dept_visible {
   color: rgb(6, 158, 6);
 }
+
 span.dept_cache {
   color: rgb(194, 5, 5);
 }
@@ -254,126 +278,136 @@ div.table_etud_in_accessible_depts {
   margin-left: 3em;
   margin-bottom: 2em;
 }
+
 div.table_etud_in_dept {
   margin-bottom: 2em;
 }
 
-div.table_etud_in_dept  table.gt_table {
+div.table_etud_in_dept table.gt_table {
   width: 600px;
 }
 
 .etud-insidebar {
-   font-size: small;
-   background-color: rgb(220,220,220);
-   width: 100%;
-   -moz-border-radius: 6px;
-   -khtml-border-radius: 6px;
-   border-radius: 6px;
+  font-size: small;
+  background-color: rgb(220, 220, 220);
+  width: 100%;
+  -moz-border-radius: 6px;
+  -khtml-border-radius: 6px;
+  border-radius: 6px;
 }
 
 .etud-insidebar h2 {
-  color: rgb(153,51,51);
+  color: rgb(153, 51, 51);
   font-size: medium;
 }
 
 
 .etud-insidebar ul {
-   padding-left: 1.5em;
-   margin-left: 0;
+  padding-left: 1.5em;
+  margin-left: 0;
 }
 
 div.logo-insidebar {
-   margin-left: 0px;
-   width: 75px; /* la marge fait 130px */
+  margin-left: 0px;
+  width: 75px;
+  /* la marge fait 130px */
 }
+
 div.logo-logo {
   margin-left: -5px;
-  text-align: center ;
+  text-align: center;
 }
 
 div.logo-logo img {
   box-sizing: content-box;
-  margin-top: 10px; /* -10px */
-  width: 80px; /* adapter suivant image */
+  margin-top: 10px;
+  /* -10px */
+  width: 80px;
+  /* adapter suivant image */
   padding-right: 5px;
 }
+
 div.sidebar-bottom {
   margin-top: 10px;
 }
 
 div.etud_info_div {
-    border: 2px solid gray;
-    height: 94px;
-    background-color: #f7f7ff;
+  border: 2px solid gray;
+  height: 94px;
+  background-color: #f7f7ff;
 }
 
 div.eid_left {
-    display: inline-block;
-    
-    padding: 2px; 
-    border: 0px;
-    vertical-align: top;
-    margin-right: 100px;
+  display: inline-block;
+
+  padding: 2px;
+  border: 0px;
+  vertical-align: top;
+  margin-right: 100px;
 }
 
 span.eid_right {
-    padding: 0px;
-    border: 0px;
-    position: absolute;
-    right: 2px;
-    top: 2px;
+  padding: 0px;
+  border: 0px;
+  position: absolute;
+  right: 2px;
+  top: 2px;
 }
 
 div.eid_nom {
-    display: inline;
-    color: navy;
-    font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
-    font-size: 120%;
+  display: inline;
+  color: navy;
+  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+  font-size: 120%;
 }
 
 div.eid_nom div {
-    margin-top: 4px;
+  margin-top: 4px;
 }
 
 div.eid_info {
-    margin-left: 2px;
-    margin-top: 3px;
+  margin-left: 2px;
+  margin-top: 3px;
 }
+
 div.eid_bac {
-    margin-top: 5px;
+  margin-top: 5px;
 }
+
 div.eid_bac span.eid_bac {
-    font-weight: bold;
+  font-weight: bold;
 }
+
 div.eid_parcours {
-    margin-top: 3px;
+  margin-top: 3px;
 }
 
 .qtip-etud {
-    border-width: 0px;
-    margin: 0px;
-    padding: 0px;
+  border-width: 0px;
+  margin: 0px;
+  padding: 0px;
 }
 
 .qtip-etud .qtip-content {
-	padding: 0px 0px;
+  padding: 0px 0px;
 }
 
-table.listesems th { 
-  text-align: left;  
+table.listesems th {
+  text-align: left;
   padding-top: 0.5em;
   padding-left: 0.5em;
 }
+
 table.listesems td {
   vertical-align: center;
 }
 
-table.listesems td.semicon { 
+table.listesems td.semicon {
   padding-left: 1.5em;
 }
 
 table.listesems tr.firstsem td {
- padding-top: 0.8em;
+  padding-top: 0.8em;
 }
 
 td.datesem {
@@ -381,7 +415,7 @@ td.datesem {
   white-space: nowrap;
 }
 
-h2.listesems { 
+h2.listesems {
   padding-top: 10px;
   padding-bottom: 0px;
   margin-bottom: 0px;
@@ -390,40 +424,47 @@ h2.listesems {
 /* table.semlist tr.gt_firstrow th {} */
 
 table.semlist tr td {
- border: none;
+  border: none;
 }
-table.semlist tr a.stdlink, table.semlist tr a.stdlink:visited {
- color: navy;
- text-decoration: none;
+
+table.semlist tr a.stdlink,
+table.semlist tr a.stdlink:visited {
+  color: navy;
+  text-decoration: none;
 }
 
 table.semlist tr a.stdlink:hover {
- color: red; 
- text-decoration: underline;
+  color: red;
+  text-decoration: underline;
 }
 
 table.semlist tr td.semestre_id {
- text-align: right;
+  text-align: right;
 }
+
 table.semlist tr td.modalite {
- text-align: left;
- padding-right: 1em;
+  text-align: left;
+  padding-right: 1em;
 }
+
 div#gtrcontent table.semlist tr.css_S-1 {
- background-color: rgb(251, 250, 216);
+  background-color: rgb(251, 250, 216);
 }
 
 div#gtrcontent table.semlist tr.css_S1 {
- background-color: rgb(92%,95%,94%);
+  background-color: rgb(92%, 95%, 94%);
 }
+
 div#gtrcontent table.semlist tr.css_S2 {
- background-color: rgb(214, 223, 236);
+  background-color: rgb(214, 223, 236);
 }
+
 div#gtrcontent table.semlist tr.css_S3 {
- background-color: rgb(167, 216, 201);
+  background-color: rgb(167, 216, 201);
 }
+
 div#gtrcontent table.semlist tr.css_S4 {
- background-color: rgb(131, 225, 140);
+  background-color: rgb(131, 225, 140);
 }
 
 div#gtrcontent table.semlist tr.css_MEXT {
@@ -433,21 +474,21 @@ div#gtrcontent table.semlist tr.css_MEXT {
 /* ----- Liste des news ----- */
 
 div.news {
-   font-family :  "Helvetica Neue",Helvetica,Arial,sans-serif;
-   font-size: 10pt;
-   margin-top: 1em;
-   margin-bottom: 0px;
-   margin-right: 16px;
-   margin-left: 16px;
-   padding:  0.5em;
-   background-color: rgb(255,235,170);
-   -moz-border-radius: 8px;
-   -khtml-border-radius: 8px;
-   border-radius: 8px;
+  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+  font-size: 10pt;
+  margin-top: 1em;
+  margin-bottom: 0px;
+  margin-right: 16px;
+  margin-left: 16px;
+  padding: 0.5em;
+  background-color: rgb(255, 235, 170);
+  -moz-border-radius: 8px;
+  -khtml-border-radius: 8px;
+  border-radius: 8px;
 }
 
 span.newstitle {
-   font-weight: bold;
+  font-weight: bold;
 }
 
 ul.newslist {
@@ -458,11 +499,11 @@ ul.newslist {
 
 span.newsdate {
   padding-right: 2em;
-  font-family : monospace;
+  font-family: monospace;
 }
 
 span.newstext {
-    font-style: normal; 
+  font-style: normal;
 }
 
 
@@ -472,39 +513,42 @@ span.gt_export_icons {
 
 /* --- infos sur premiere page Sco --- */
 div.scoinfos {
-   margin-top: 0.5em;
-   margin-bottom: 0px;
-   padding: 2px;
-   padding-bottom: 0px;
-   background-color: #F4F4B2;
+  margin-top: 0.5em;
+  margin-bottom: 0px;
+  padding: 2px;
+  padding-bottom: 0px;
+  background-color: #F4F4B2;
 }
 
 /* ----- fiches etudiants ------ */
 
 div.ficheEtud {
-   background-color: #f5edc8; /* rgb(255,240,128); */
-   border: 1px solid gray;
-   width: 910px;
-   padding: 10px;
-   margin-top: 10px;
+  background-color: #f5edc8;
+  /* rgb(255,240,128); */
+  border: 1px solid gray;
+  width: 910px;
+  padding: 10px;
+  margin-top: 10px;
 }
 
 div.menus_etud {
-   position: absolute;
-   margin-left: 1px;
-   margin-top: 1px;
+  position: absolute;
+  margin-left: 1px;
+  margin-top: 1px;
 }
+
 div.ficheEtud h2 {
-   padding-top: 10px;
+  padding-top: 10px;
 }
 
 div.code_nip {
-   padding-top: 10px;
-   font-family: "Andale Mono", "Courier";
+  padding-top: 10px;
+  font-family: "Andale Mono", "Courier";
 }
 
 div.fichesituation {
-  background-color: rgb( 231, 234, 218 ); /* E7EADA */   
+  background-color: rgb(231, 234, 218);
+  /* E7EADA */
   margin: 0.5em 0 0.5em 0;
   padding: 0.5em;
   -moz-border-radius: 8px;
@@ -512,9 +556,10 @@ div.fichesituation {
   border-radius: 8px;
 }
 
-div.ficheadmission { 
-  background-color: rgb( 231, 234, 218 ); /* E7EADA */
-  
+div.ficheadmission {
+  background-color: rgb(231, 234, 218);
+  /* E7EADA */
+
   margin: 0.5em 0 0.5em 0;
   padding: 0.5em;
   -moz-border-radius: 8px;
@@ -523,39 +568,44 @@ div.ficheadmission {
 }
 
 div#adm_table_description_format table.gt_table td {
-   font-size: 80%;
+  font-size: 80%;
 }
 
 div.ficheadmission div.note_rapporteur {
-   font-size: 80%;
-   font-style: italic;
+  font-size: 80%;
+  font-style: italic;
 }
 
 div.etudarchive ul {
-    padding:0; 
-    margin:0; 
-    margin-left: 1em;
-    list-style-type:none; 
+  padding: 0;
+  margin: 0;
+  margin-left: 1em;
+  list-style-type: none;
 }
 
 div.etudarchive ul li {
-    background-image: url(/ScoDoc/static/icons/bullet_arrow.png);
-    background-repeat: no-repeat;
-    background-position: 0 .4em;
-    padding-left: .6em;
+  background-image: url(/ScoDoc/static/icons/bullet_arrow.png);
+  background-repeat: no-repeat;
+  background-position: 0 .4em;
+  padding-left: .6em;
 }
+
 div.etudarchive ul li.addetudarchive {
-    background-image: url(/ScoDoc/static/icons/bullet_plus.png);
-    padding-left: 1.2em
+  background-image: url(/ScoDoc/static/icons/bullet_plus.png);
+  padding-left: 1.2em
 }
+
 span.etudarchive_descr {
-    margin-right: .4em;
+  margin-right: .4em;
 }
+
 span.deletudarchive {
-    margin-left: 0.5em;
+  margin-left: 0.5em;
 }
-div#fichedebouche { 
-  background-color: rgb(183, 227, 254); /* bleu clair */
+
+div#fichedebouche {
+  background-color: rgb(183, 227, 254);
+  /* bleu clair */
   color: navy;
   width: 910px;
   margin: 0.5em 0 0.5em 0;
@@ -566,8 +616,9 @@ div#fichedebouche {
 }
 
 div#fichedebouche .ui-accordion-content {
-  background-color: rgb(183, 227, 254); /* bleu clair */
-  padding: 0px 10px 0px 0px;  
+  background-color: rgb(183, 227, 254);
+  /* bleu clair */
+  padding: 0px 10px 0px 0px;
 }
 
 span.debouche_tit {
@@ -578,105 +629,110 @@ span.debouche_tit {
 /* li.itemsuivi {} */
 
 span.itemsuivi_tag_edit {
-    border: 2px;
+  border: 2px;
 }
+
 .listdebouches .itemsuivi_tag_edit .tag-editor {
-    background-color: rgb(183, 227, 254);
-    border: 0px;
+  background-color: rgb(183, 227, 254);
+  border: 0px;
 }
+
 .itemsuivi_tag_edit ul.tag-editor {
-    display: inline-block;
-    width: 100%;
+  display: inline-block;
+  width: 100%;
 }
+
 /* .itemsuivi_tag_edit ul.tag-editor li {} */
 
 .itemsuivi_tag_edit .tag-editor-delete {
-    height: 20px;
+  height: 20px;
 }
 
 .itemsuivi_suppress {
-    float: right;
-    padding-top: 9px;
-    padding-right: 5px;
+  float: right;
+  padding-top: 9px;
+  padding-right: 5px;
 }
 
 div.itemsituation {
-    background-color: rgb(224, 234, 241);
-    /* height: 2em;*/
-    border: 1px solid rgb(204,204,204);
-    -moz-border-radius: 4px;
-   -khtml-border-radius: 4px;
-   border-radius: 4px;
-   padding-top: 1px;
-   padding-bottom: 1px;
-   padding-left: 10px;
-   padding-right: 10px;
+  background-color: rgb(224, 234, 241);
+  /* height: 2em;*/
+  border: 1px solid rgb(204, 204, 204);
+  -moz-border-radius: 4px;
+  -khtml-border-radius: 4px;
+  border-radius: 4px;
+  padding-top: 1px;
+  padding-bottom: 1px;
+  padding-left: 10px;
+  padding-right: 10px;
 }
+
 div.itemsituation em {
-    color: #bbb;
+  color: #bbb;
 }
 
 /* tags readonly */
 span.ro_tag {
-    display: inline-block;
-    background-color: rgb(224, 234, 241);
-    color: #46799b;
-    margin-top: 3px;
-    margin-left: 5px;
-    margin-right: 3px;
-    padding-left: 3px;
-    padding-right: 3px;
-    border: 1px solid rgb(204,204,204);
+  display: inline-block;
+  background-color: rgb(224, 234, 241);
+  color: #46799b;
+  margin-top: 3px;
+  margin-left: 5px;
+  margin-right: 3px;
+  padding-left: 3px;
+  padding-right: 3px;
+  border: 1px solid rgb(204, 204, 204);
 }
 
 div.ficheinscriptions {
-   background-color: #eae3e2; /* was EADDDA */
-   margin: 0.5em 0 0.5em 0;
-   padding: 0.5em;
-   -moz-border-radius: 8px;
-   -khtml-border-radius: 8px;
-   border-radius: 8px;
-   overflow-x: scroll;
+  background-color: #eae3e2;
+  /* was EADDDA */
+  margin: 0.5em 0 0.5em 0;
+  padding: 0.5em;
+  -moz-border-radius: 8px;
+  -khtml-border-radius: 8px;
+  border-radius: 8px;
+  overflow-x: scroll;
 }
 
 .ficheinscriptions a.sem {
-   text-decoration: none;
-   font-weight: bold;
-   color: blue;
+  text-decoration: none;
+  font-weight: bold;
+  color: blue;
 }
 
 .ficheinscriptions a.sem:hover {
-   color: red;
+  color: red;
 }
 
 
 td.photocell {
-   padding-left: 32px;
+  padding-left: 32px;
 }
 
 div.fichetitre {
-   font-weight: bold;
+  font-weight: bold;
 }
 
 span.etud_type_admission {
-   color: rgb(0,0,128);
-   font-style: normal;
+  color: rgb(0, 0, 128);
+  font-style: normal;
 }
 
 td.fichetitre2 {
-   font-weight: bold;
-   vertical-align: top;
+  font-weight: bold;
+  vertical-align: top;
 }
 
 td.fichetitre2 .formula {
-   font-weight: normal;
-   color: rgb(0,64,0);
-   border: 1px solid red;
-   padding-left: 1em;
-   padding-right: 1em;
-   padding-top: 3px;
-   padding-bottom: 3px;
-   margin-right: 1em;
+  font-weight: normal;
+  color: rgb(0, 64, 0);
+  border: 1px solid red;
+  padding-left: 1em;
+  padding-right: 1em;
+  padding-top: 3px;
+  padding-bottom: 3px;
+  margin-right: 1em;
 }
 
 span.formula {
@@ -692,7 +748,7 @@ td.fichetitre2 .fl {
 .ficheannotations {
   background-color: #f7d892;
   width: 910px;
-  
+
   margin: 0.5em 0 0.5em 0;
   padding: 0.5em;
   -moz-border-radius: 8px;
@@ -701,25 +757,29 @@ td.fichetitre2 .fl {
 }
 
 .ficheannotations table#etudannotations {
-    width: 100%;
-    border-collapse: collapse;
+  width: 100%;
+  border-collapse: collapse;
 }
+
 .ficheannotations table#etudannotations tr:nth-child(odd) {
-    background: rgb(240, 240, 240);
+  background: rgb(240, 240, 240);
 }
+
 .ficheannotations table#etudannotations tr:nth-child(even) {
-    background: rgb(230, 230, 230);
+  background: rgb(230, 230, 230);
 }
 
 .ficheannotations span.annodate {
-    color: rgb(200, 50, 50);
-    font-size: 80%;
+  color: rgb(200, 50, 50);
+  font-size: 80%;
 }
+
 .ficheannotations span.annoc {
-    color: navy;
+  color: navy;
 }
+
 .ficheannotations td.annodel {
-    text-align: right;
+  text-align: right;
 }
 
 span.link_bul_pdf {
@@ -729,30 +789,48 @@ span.link_bul_pdf {
 
 /* Page accueil Sco */
 span.infostitresem {
-   font-weight: normal;
+  font-weight: normal;
 }
+
 span.linktitresem {
-   font-weight: normal;
+  font-weight: normal;
+}
+
+span.linktitresem a:link {
+  color: red;
+}
+
+span.linktitresem a:visited {
+  color: red;
+}
+
+.listegroupelink a:link {
+  color: blue;
 }
-span.linktitresem a:link {color: red;}
-span.linktitresem a:visited {color: red;}
 
-.listegroupelink a:link { color: blue; }
-.listegroupelink a:visited { color: blue; }
-.listegroupelink a:hover { color: red; }
+.listegroupelink a:visited {
+  color: blue;
+}
+
+.listegroupelink a:hover {
+  color: red;
+}
 
-a.stdlink, a.stdlink:visited {
-  color: blue; 
+a.stdlink,
+a.stdlink:visited {
+  color: blue;
   text-decoration: underline;
 }
-a.stdlink:hover { 
-  color: red; 
+
+a.stdlink:hover {
+  color: red;
   text-decoration: underline;
 }
 
 /* a.link_accessible {} */
-a.link_unauthorized, a.link_unauthorized:visited {
-  color: rgb(75,75,75);
+a.link_unauthorized,
+a.link_unauthorized:visited {
+  color: rgb(75, 75, 75);
 }
 
 span.spanlink {
@@ -767,15 +845,15 @@ span.spanlink:hover {
 /* Trombinoscope */
 
 .trombi_legend {
- font-size: 80%;
- margin-bottom: 3px;
- -ms-word-break: break-all;
- word-break: break-all;
- /* non std for webkit: */
- word-break: break-word; 
- -webkit-hyphens: auto;
- -moz-hyphens: auto;
- hyphens: auto;
+  font-size: 80%;
+  margin-bottom: 3px;
+  -ms-word-break: break-all;
+  word-break: break-all;
+  /* non std for webkit: */
+  word-break: break-word;
+  -webkit-hyphens: auto;
+  -moz-hyphens: auto;
+  hyphens: auto;
 }
 
 .trombi_box {
@@ -789,12 +867,15 @@ span.spanlink:hover {
 span.trombi_legend {
   display: inline-block;
 }
+
 span.trombi-photo {
- display: inline-block;
+  display: inline-block;
 }
+
 span.trombi_box a {
   display: inline-block;
 }
+
 span.trombi_box a img {
   display: inline-block;
 }
@@ -818,55 +899,65 @@ span.trombi_box a img {
 
 /* markup non semantique pour les cas simples */
 
-.fontred { color: red; }
-.fontorange { color: rgb(215, 90, 0); }
-.fontitalic { font-style: italic;  }
+.fontred {
+  color: red;
+}
+
+.fontorange {
+  color: rgb(215, 90, 0);
+}
+
+.fontitalic {
+  font-style: italic;
+}
+
 .redboldtext {
-   font-weight: bold;
-   color: red;
+  font-weight: bold;
+  color: red;
 }
 
 .greenboldtext {
-   font-weight: bold;
-   color: green;
-} 
+  font-weight: bold;
+  color: green;
+}
 
 a.redlink {
-   color: red;
+  color: red;
 }
+
 a.redlink:hover {
-   color: rgb(153,51,51);
-   text-decoration: underline;
+  color: rgb(153, 51, 51);
+  text-decoration: underline;
 }
 
 a.discretelink {
-   color: black;
-   text-decoration: none;
+  color: black;
+  text-decoration: none;
 }
 
 a.discretelink:hover {
-   color: rgb(153,51,51);
-   text-decoration: underline;
+  color: rgb(153, 51, 51);
+  text-decoration: underline;
 }
 
 .rightcell {
-    text-align: right;
+  text-align: right;
 }
 
 .rightjust {
   padding-left: 2em;
 }
 
-.centercell { 
-    text-align: center;
+.centercell {
+  text-align: center;
 }
 
 .help {
-  font-style: italic; 
+  font-style: italic;
 }
 
 .help_important {
-  font-style: italic; 
+  font-style: italic;
   color: red;
 }
 
@@ -875,8 +966,8 @@ div.sco_help {
   margin-bottom: 4px;
   padding: 8px;
   border-radius: 4px;
-  font-style: italic; 
-  background-color: rgb(200,200,220);
+  font-style: italic;
+  background-color: rgb(200, 200, 220);
 }
 
 span.wtf-field ul.errors li {
@@ -884,56 +975,61 @@ span.wtf-field ul.errors li {
 }
 
 #bonus_description {
-  color:rgb(6, 73, 6);
+  color: rgb(6, 73, 6);
   padding: 5px;
-  margin-top:5px;
+  margin-top: 5px;
   border: 2px solid blue;
   border-radius: 5px;
   background-color: cornsilk;
 }
-#bonus_description div.bonus_description_head{
+
+#bonus_description div.bonus_description_head {
   font-weight: bold;
 }
 
-.configuration_logo div.img {
+.configuration_logo div.img {}
 
-}
 .configuration_logo div.img-container {
   width: 256px;
 }
+
 .configuration_logo div.img-container img {
   max-width: 100%;
 }
+
 .configuration_logo div.img-data {
-    vertical-align: top;
+  vertical-align: top;
 }
+
 .configuration_logo logo-edit titre {
-    background-color:lightblue;
+  background-color: lightblue;
 }
+
 .configuration_logo logo-edit nom {
-    float: left;
-    vertical-align: baseline;
+  float: left;
+  vertical-align: baseline;
 }
+
 .configuration_logo logo-edit description {
-    float:right;
-    vertical-align:baseline;
+  float: right;
+  vertical-align: baseline;
 }
 
 p.indent {
   padding-left: 2em;
 }
 
-.blacktt { 
+.blacktt {
   font-family: Courier, monospace;
   font-weight: normal;
   color: black;
 }
 
-p.msg { 
+p.msg {
   color: red;
   font-weight: bold;
   border: 1px solid blue;
-  background-color: rgb(140,230,250);
+  background-color: rgb(140, 230, 250);
   padding: 10px;
 }
 
@@ -943,7 +1039,9 @@ table.tablegrid {
   border-style: solid;
   border-collapse: collapse;
 }
-table.tablegrid td, table.tablegrid th {
+
+table.tablegrid td,
+table.tablegrid th {
   border-color: black;
   border-width: 1px 1px 0 0;
   border-style: solid;
@@ -954,160 +1052,187 @@ table.tablegrid td, table.tablegrid th {
 
 /* ----- Notes ------ */
 a.smallbutton {
-    border-width: 0;
-    margin: 0;
-    margin-left: 2px;
-    text-decoration: none;
+  border-width: 0;
+  margin: 0;
+  margin-left: 2px;
+  text-decoration: none;
 }
+
 span.evallink {
-    font-size: 80%;
-    font-weight: normal;
+  font-size: 80%;
+  font-weight: normal;
 }
+
 .boldredmsg {
-    color: red;
-    font-weight: bold;
+  color: red;
+  font-weight: bold;
 }
 
 tr.etuddem td {
-    color: rgb(100,100,100);
-    font-style: italic; 
+  color: rgb(100, 100, 100);
+  font-style: italic;
 }
 
-td.etudabs, td.etudabs a.discretelink, tr.etudabs td.moyenne a.discretelink {
-    color: rgb(180,0,0);
+td.etudabs,
+td.etudabs a.discretelink,
+tr.etudabs td.moyenne a.discretelink {
+  color: rgb(180, 0, 0);
 }
+
 tr.moyenne td {
-    font-weight: bold; 
+  font-weight: bold;
 }
 
 table.notes_evaluation th.eval_complete {
-    color: rgb(6, 90, 6);
+  color: rgb(6, 90, 6);
 }
+
 table.notes_evaluation th.eval_incomplete {
-    color: red;
+  color: red;
 }
+
 table.notes_evaluation th.eval_attente {
-    color: rgb(215, 90, 0);;
+  color: rgb(215, 90, 0);
+  ;
 }
+
 table.notes_evaluation tr td a.discretelink:hover {
-    text-decoration: none;
+  text-decoration: none;
 }
+
 table.notes_evaluation tr td.tdlink a.discretelink:hover {
-    color: red; 
-    text-decoration: underline;
+  color: red;
+  text-decoration: underline;
 }
-table.notes_evaluation tr td.tdlink a.discretelink, table.notes_evaluation tr td.tdlink a.discretelink:visited {
-    color: blue; 
-    text-decoration: underline;
+
+table.notes_evaluation tr td.tdlink a.discretelink,
+table.notes_evaluation tr td.tdlink a.discretelink:visited {
+  color: blue;
+  text-decoration: underline;
 }
 
 table.notes_evaluation tr td {
-    padding-left: 0.5em;
-    padding-right: 0.5em;
+  padding-left: 0.5em;
+  padding-right: 0.5em;
 }
 
 div.notes_evaluation_stats {
-    margin-top: -15px;
+  margin-top: -15px;
 }
 
 span.eval_title {
-    font-weight: bold; 
-    font-size: 14pt;
+  font-weight: bold;
+  font-size: 14pt;
 }
+
 /* #saisie_notes span.eval_title {
     border-bottom: 1px solid rgb(100,100,100);
 }
 */
 
 span.jurylink {
-    margin-left: 1.5em;
+  margin-left: 1.5em;
 }
+
 span.jurylink a {
-    color: red;
-    text-decoration: underline;
+  color: red;
+  text-decoration: underline;
 }
 
 .eval_description p {
-    margin-left: 15px;
-    margin-bottom: 2px;
-    margin-top: 0px;
+  margin-left: 15px;
+  margin-bottom: 2px;
+  margin-top: 0px;
 }
 
 .eval_description span.resp {
-    font-weight: normal;
+  font-weight: normal;
 }
+
 .eval_description span.resp a {
-    font-weight: normal;
+  font-weight: normal;
 }
+
 .eval_description span.eval_malus {
-    font-weight: bold;
-    color: red;
+  font-weight: bold;
+  color: red;
 }
 
 
 span.eval_info {
-    font-style: italic;
+  font-style: italic;
 }
+
 span.eval_complete {
-    color: green;
+  color: green;
 }
+
 span.eval_incomplete {
-    color: red;
+  color: red;
 }
+
 span.eval_attente {
-    color:  rgb(215, 90, 0);
+  color: rgb(215, 90, 0);
 }
 
 table.tablenote {
   border-collapse: collapse;
   border: 2px solid blue;
-/*  width: 100%;*/
+  /*  width: 100%;*/
   margin-bottom: 20px;
   margin-right: 20px;
 }
-table.tablenote th {  
+
+table.tablenote th {
   padding-left: 1em;
 }
+
 .tablenote a {
-   text-decoration: none;
-   color: black;
+  text-decoration: none;
+  color: black;
 }
+
 .tablenote a:hover {
-   color: rgb(153,51,51);
-   text-decoration: underline;
+  color: rgb(153, 51, 51);
+  text-decoration: underline;
 }
 
 table.tablenote_anonyme {
-   border-collapse: collapse;
-   border: 2px solid blue;
+  border-collapse: collapse;
+  border: 2px solid blue;
 }
 
 tr.tablenote {
-    border: solid blue 1px;
+  border: solid blue 1px;
 }
+
 td.colnote {
-  text-align : right;
-  padding-right: 0.5em;  
+  text-align: right;
+  padding-right: 0.5em;
   border: solid blue 1px;
 }
+
 td.colnotemoy {
-  text-align : right;
+  text-align: right;
   padding-right: 0.5em;
-  font-weight: bold; 
+  font-weight: bold;
 }
-td.colcomment, span.colcomment {
+
+td.colcomment,
+span.colcomment {
   text-align: left;
   padding-left: 2em;
-  font-style: italic; 
-  color: rgb(80,100,80);
+  font-style: italic;
+  color: rgb(80, 100, 80);
 }
 
 table.notes_evaluation table.eval_poids {
   font-size: 50%;
 }
+
 table.notes_evaluation td.moy_ue {
   font-weight: bold;
-  color:rgb(1, 116, 96);
+  color: rgb(1, 116, 96);
 }
 
 td.coef_mod_ue {
@@ -1123,72 +1248,88 @@ td.coef_mod_ue_non_conforme {
   background-color: yellow;
 }
 
-h2.formsemestre, #gtrcontent h2 {
-    margin-top: 2px;
-    font-size: 130%;
+h2.formsemestre,
+#gtrcontent h2 {
+  margin-top: 2px;
+  font-size: 130%;
 }
 
-.formsemestre_page_title table.semtitle, .formsemestre_page_title table.semtitle td {
-    padding: 0px;
-    margin-top: 0px; 
-    margin-bottom: 0px; 
-    border-width: 0;
-    border-collapse: collapse;
+.formsemestre_page_title table.semtitle,
+.formsemestre_page_title table.semtitle td {
+  padding: 0px;
+  margin-top: 0px;
+  margin-bottom: 0px;
+  border-width: 0;
+  border-collapse: collapse;
 }
 
-.formsemestre_page_title { 
-    width: 100%;
-    padding-top:5px;
-    padding-bottom: 10px;
+.formsemestre_page_title {
+  width: 100%;
+  padding-top: 5px;
+  padding-bottom: 10px;
 }
 
 .formsemestre_page_title table.semtitle td.infos table {
-    padding-top: 10px;
+  padding-top: 10px;
 }
 
 .formsemestre_page_title a {
-    color: black;
+  color: black;
 }
 
-.formsemestre_page_title .eye,  formsemestre_page_title .eye img {
-    display: inline-block;
-    vertical-align: middle;
-    margin-bottom: 2px;
+.formsemestre_page_title .eye,
+formsemestre_page_title .eye img {
+  display: inline-block;
+  vertical-align: middle;
+  margin-bottom: 2px;
 }
-.formsemestre_page_title .infos span.lock,  formsemestre_page_title .lock img {
+
+.formsemestre_page_title .infos span.lock,
+formsemestre_page_title .lock img {
   display: inline-block;
   vertical-align: middle;
   margin-bottom: 5px;
   padding-right: 5px;
 }
+
 #formnotes .tf-explanation {
-    font-size: 80%;
+  font-size: 80%;
 }
+
 #formnotes .tf-explanation .sn_abs {
-    color: red;
+  color: red;
 }
 
 #formnotes .tf-ro-fieldlabel.formnote_bareme {
-    text-align: right;
-    font-weight: bold;
+  text-align: right;
+  font-weight: bold;
 }
+
 #formnotes td.tf-ro-fieldlabel:after {
-   content: '';
+  content: '';
 }
+
 #formnotes .tf-ro-field.formnote_bareme {
-    font-weight: bold;
+  font-weight: bold;
 }
+
 #formnotes td.tf-fieldlabel {
-    border-bottom: 1px dotted #fdcaca;
+  border-bottom: 1px dotted #fdcaca;
 }
+
 .wtf-field li {
-    display: inline;
-}.wtf-field ul {
-    padding-left: 0;
+  display: inline;
+}
+
+.wtf-field ul {
+  padding-left: 0;
 }
+
 .wtf-field .errors {
-    color: red ; font-weight: bold;
+  color: red;
+  font-weight: bold;
 }
+
 /*
 .formsemestre_menubar {
     border-top: 3px solid #67A7E3;
@@ -1202,7 +1343,7 @@ h2.formsemestre, #gtrcontent h2 {
 */
 /* Barre menu semestre */
 #sco_menu {
-  overflow : hidden;
+  overflow: hidden;
   background: rgb(214, 233, 248);
   border-top-color: rgb(103, 167, 227);
   border-top-style: solid;
@@ -1212,35 +1353,39 @@ h2.formsemestre, #gtrcontent h2 {
   margin-left: -1px;
 }
 
-#sco_menu > li {
-  float : left;
-  width : auto; /* 120px !important; */
+#sco_menu>li {
+  float: left;
+  width: auto;
+  /* 120px !important; */
   font-size: 12px;
   font-family: Arial, Helvetica, sans-serif;
   text-transform: uppercase;
 }
 
-#sco_menu > li li {
-    text-transform: none;
-    font-size: 14px;
-    font-family: Arial, Helvetica, sans-serif;
+#sco_menu>li li {
+  text-transform: none;
+  font-size: 14px;
+  font-family: Arial, Helvetica, sans-serif;
 }
 
-#sco_menu > li > a {
-    font-weight: bold !important;
-    padding-left: 15px;
-    padding-right: 15px;
+#sco_menu>li>a {
+  font-weight: bold !important;
+  padding-left: 15px;
+  padding-right: 15px;
 }
-#sco_menu > li > a.ui-menu-item, #sco_menu > li > a.ui-menu-item:visited {
+
+#sco_menu>li>a.ui-menu-item,
+#sco_menu>li>a.ui-menu-item:visited {
   text-decoration: none;
 }
 
 #sco_menu ul .ui-menu {
-  width : 200px;
+  width: 200px;
 }
 
-.sco_dropdown_menu > li {
-  width : auto; /* 120px !important; */
+.sco_dropdown_menu>li {
+  width: auto;
+  /* 120px !important; */
   font-size: 12px;
   font-family: Arial, Helvetica, sans-serif;
 }
@@ -1249,109 +1394,148 @@ span.inscr_addremove_menu {
   width: 150px;
 }
 
-.formsemestre_page_title  .infos span {
-    padding-right: 25px;
+.formsemestre_page_title .infos span {
+  padding-right: 25px;
 }
 
 .formsemestre_page_title span.semtitle {
-    font-size: 12pt;
+  font-size: 12pt;
 }
-.formsemestre_page_title span.resp, span.resp a {
-    color: red;
-    font-weight: bold;
+
+.formsemestre_page_title span.resp,
+span.resp a {
+  color: red;
+  font-weight: bold;
 }
+
 .formsemestre_page_title span.nbinscrits {
-    text-align: right;
-    font-weight: bold;
-    padding-right: 1px;
+  text-align: right;
+  font-weight: bold;
+  padding-right: 1px;
 }
+
 div.formsemestre_status {
-    -moz-border-radius: 8px;
-    -khtml-border-radius: 8px;
-    border-radius: 8px;
-    padding: 2px 6px 2px 16px;
-    margin-right: 10px;
+  -moz-border-radius: 8px;
+  -khtml-border-radius: 8px;
+  border-radius: 8px;
+  padding: 2px 6px 2px 16px;
+  margin-right: 10px;
 }
 
 table.formsemestre_status {
-    border-collapse: collapse;
+  border-collapse: collapse;
+}
+
+tr.formsemestre_status {
+  background-color: rgb(90%, 90%, 90%);
+}
+
+tr.formsemestre_status_green {
+  background-color: #EFF7F2;
+}
+
+tr.formsemestre_status_ue {
+  background-color: rgb(90%, 90%, 90%);
+}
+
+tr.formsemestre_status_cat td {
+  padding-top: 2ex;
 }
-tr.formsemestre_status { background-color: rgb(90%,90%,90%); }
-tr.formsemestre_status_green { background-color: #EFF7F2; }
-tr.formsemestre_status_ue { background-color: rgb(90%,90%,90%); }
-tr.formsemestre_status_cat td { padding-top: 2ex;}
+
 table.formsemestre_status td {
-    border-top: 1px solid rgb(80%,80%,80%);
-    border-bottom: 1px solid rgb(80%,80%,80%);
-    border-left: 0px;
+  border-top: 1px solid rgb(80%, 80%, 80%);
+  border-bottom: 1px solid rgb(80%, 80%, 80%);
+  border-left: 0px;
 }
-table.formsemestre_status td.evals, table.formsemestre_status th.evals, table.formsemestre_status td.resp, table.formsemestre_status th.resp, table.formsemestre_status td.malus {
-    padding-left: 1em;
+
+table.formsemestre_status td.evals,
+table.formsemestre_status th.evals,
+table.formsemestre_status td.resp,
+table.formsemestre_status th.resp,
+table.formsemestre_status td.malus {
+  padding-left: 1em;
 }
 
 table.formsemestre_status th {
-    font-weight: bold;
-    text-align: left;
+  font-weight: bold;
+  text-align: left;
 }
+
 th.formsemestre_status_inscrits {
-    font-weight: bold;
-    text-align: center;
+  font-weight: bold;
+  text-align: center;
 }
+
 td.formsemestre_status_code {
-    /* width: 2em; */
-    padding-right: 1em;
+  /* width: 2em; */
+  padding-right: 1em;
 }
 
 table.formsemestre_status td.malus a {
-    color: red;
+  color: red;
 }
 
 a.formsemestre_status_link {
-    text-decoration:none;
-    color: black;
+  text-decoration: none;
+  color: black;
 }
+
 a.formsemestre_status_link:hover {
-   color: rgb(153,51,51);
-   text-decoration: underline;
+  color: rgb(153, 51, 51);
+  text-decoration: underline;
 }
 
 td.formsemestre_status_inscrits {
   text-align: center;
 }
+
 td.formsemestre_status_cell {
   white-space: nowrap;
 }
 
-span.mod_coef_indicator, span.ue_color_indicator {
-  display:inline-block;
-  width: 10px; 
+span.mod_coef_indicator,
+span.ue_color_indicator {
+  display: inline-block;
+  width: 10px;
   height: 10px;
 }
+
 span.mod_coef_indicator_zero {
-  display:inline-block;
-  width: 9px; 
+  display: inline-block;
+  width: 9px;
   height: 9px;
   border: 1px solid rgb(156, 156, 156);
 }
 
 
 
-span.status_ue_acro { font-weight: bold; }
-span.status_ue_title { font-style: italic; padding-left: 1cm;}
-span.status_module_cat { font-weight: bold; }
+span.status_ue_acro {
+  font-weight: bold;
+}
+
+span.status_ue_title {
+  font-style: italic;
+  padding-left: 1cm;
+}
+
+span.status_module_cat {
+  font-weight: bold;
+}
 
 table.formsemestre_inscr td {
-    padding-right: 1.25em;
+  padding-right: 1.25em;
 }
 
 ul.ue_inscr_list li span.tit {
-    font-weight: bold;
+  font-weight: bold;
 }
+
 ul.ue_inscr_list li.tit {
-    padding-top: 1ex;
+  padding-top: 1ex;
 }
+
 ul.ue_inscr_list li.etud {
-    padding-top: 0.7ex;
+  padding-top: 0.7ex;
 }
 
 /* Liste des groupes sur tableau bord semestre */
@@ -1361,26 +1545,28 @@ ul.ue_inscr_list li.etud {
 }
 
 #grouplists h4 {
-   font-style: italic;
-   margin-bottom: 0px;
-   margin-top: 5px;
+  font-style: italic;
+  margin-bottom: 0px;
+  margin-top: 5px;
 }
 
 #grouplists table {
-   /*border: 1px solid black;*/
-   border-spacing: 1px;
+  /*border: 1px solid black;*/
+  border-spacing: 1px;
 }
 
 /* Tableau de bord module */
-div.moduleimpl_tableaubord { 
+div.moduleimpl_tableaubord {
   padding: 7px;
   border: 2px solid gray;
 }
+
 div.moduleimpl_type_sae {
-  background-color:#cfeccf;
+  background-color: #cfeccf;
 }
+
 div.moduleimpl_type_ressource {
-  background-color:#f5e9d2;
+  background-color: #f5e9d2;
 }
 
 div#modimpl_coefs {
@@ -1392,7 +1578,7 @@ div#modimpl_coefs {
   background-color: #d3d3d378;
 }
 
-.coefs_histo{
+.coefs_histo {
   height: 32px;
   display: flex;
   gap: 4px;
@@ -1402,20 +1588,23 @@ div#modimpl_coefs {
   font-weight: normal;
   font-size: 60%;
 }
-.coefs_histo>div{
+
+.coefs_histo>div {
   --height: calc(32px * var(--coef) / var(--max));
-	height: var(--height);
-	padding: var(--height) 4px 0 4px;
+  height: var(--height);
+  padding: var(--height) 4px 0 4px;
   background: #09c;
   box-sizing: border-box;
 }
-.coefs_histo>div:nth-child(odd){
+
+.coefs_histo>div:nth-child(odd) {
   background-color: #9c0;
 }
 
 span.moduleimpl_abs_link {
   padding-right: 2em;
 }
+
 .moduleimpl_evaluations_top_links {
   font-size: 80%;
   margin-bottom: 3px;
@@ -1429,154 +1618,179 @@ table.moduleimpl_evaluations {
 th.moduleimpl_evaluations {
   font-weight: normal;
   text-align: left;
-  color: rgb(0,0,128);
+  color: rgb(0, 0, 128);
 }
 
-th.moduleimpl_evaluations a, th.moduleimpl_evaluations a:visited {
+th.moduleimpl_evaluations a,
+th.moduleimpl_evaluations a:visited {
   font-weight: normal;
   color: red;
   text-decoration: none;
 }
+
 th.moduleimpl_evaluations a:hover {
-   text-decoration: underline;
+  text-decoration: underline;
 }
 
 tr.mievr {
-   background-color:#eeeeee;
+  background-color: #eeeeee;
 }
 
 tr.mievr_rattr {
-   background-color:#dddddd;
+  background-color: #dddddd;
 }
+
 span.mievr_rattr {
-    display: inline-block;
-    font-weight: bold;
-    font-size: 80%;
-    color: white;
-    background-color: orangered;
-    margin-left: 2em;
-    margin-top: 1px;
-    margin-bottom: 2px;;
-    border: 1px solid red;
-    padding: 1px 3px 1px 3px;
+  display: inline-block;
+  font-weight: bold;
+  font-size: 80%;
+  color: white;
+  background-color: orangered;
+  margin-left: 2em;
+  margin-top: 1px;
+  margin-bottom: 2px;
+  ;
+  border: 1px solid red;
+  padding: 1px 3px 1px 3px;
 }
 
-tr.mievr td.mievr_tit { 
+tr.mievr td.mievr_tit {
   font-weight: bold;
   background-color: #cccccc;
 }
+
 tr.mievr td {
   text-align: left;
-  background-color:white;
+  background-color: white;
 }
+
 tr.mievr th {
-  background-color:white;
+  background-color: white;
 }
+
 tr.mievr td.mievr {
   width: 90px;
 }
+
 tr.mievr td.mievr_menu {
   width: 110px;
 }
+
 tr.mievr td.mievr_dur {
   width: 60px;
 }
+
 tr.mievr td.mievr_coef {
   width: 60px;
 }
+
 tr.mievr td.mievr_nbnotes {
   width: 90px;
 }
+
 tr td.mievr_grtit {
- vertical-align: top;
- text-align: right;
- font-weight: bold;
+  vertical-align: top;
+  text-align: right;
+  font-weight: bold;
 }
-span.mievr_lastmodif { 
- padding-left: 2em;
- font-weight: normal;
- font-style: italic; 
+
+span.mievr_lastmodif {
+  padding-left: 2em;
+  font-weight: normal;
+  font-style: italic;
 }
+
 a.mievr_evalnodate {
- color: rgb(215, 90, 0);
- font-style: italic;
- text-decoration: none;
+  color: rgb(215, 90, 0);
+  font-style: italic;
+  text-decoration: none;
 }
+
 a.mievr_evalnodate:hover {
-   color: rgb(153,51,51);
-   text-decoration: underline;
+  color: rgb(153, 51, 51);
+  text-decoration: underline;
 }
 
 span.evalindex_cont {
- float: right;
+  float: right;
 }
+
 span.evalindex {
- font-weight: normal;
- font-size: 80%;
- margin-right: 5px;
+  font-weight: normal;
+  font-size: 80%;
+  margin-right: 5px;
 }
+
 .eval_arrows_chld {
- margin-right: 3px;
- margin-top: 3px;
+  margin-right: 3px;
+  margin-top: 3px;
 }
+
 .eval_arrows_chld a {
   margin-left: 3px;
 }
 
 table.moduleimpl_evaluations td.eval_poids {
-  color:rgb(0, 0, 255);
+  color: rgb(0, 0, 255);
 }
 
 span.eval_coef_ue {
-  color:rgb(6, 73, 6);
+  color: rgb(6, 73, 6);
   font-style: normal;
   font-size: 80%;
   margin-right: 2em;
 }
-span.eval_coef_ue_titre {
 
-}
+span.eval_coef_ue_titre {}
 
 /* Formulaire edition des partitions */
 form#editpart table {
-   border: 1px solid gray;
-   border-collapse: collapse;
+  border: 1px solid gray;
+  border-collapse: collapse;
 }
+
 form#editpart tr.eptit th {
-   font-size: 110%;
-   border-bottom: 1px solid gray;
+  font-size: 110%;
+  border-bottom: 1px solid gray;
 }
+
 form#editpart td {
-   border-bottom: 1px dashed gray;
+  border-bottom: 1px dashed gray;
 }
+
 form#editpart table td {
-   padding-left: 1em;
+  padding-left: 1em;
 }
+
 form#editpart table td.epnav {
-   padding-left: 0;
+  padding-left: 0;
 }
 
 /* Liste des formations */
-ul.notes_formation_list { 
+ul.notes_formation_list {
   list-style-type: none;
   font-size: 110%;
 }
-li.notes_formation_list { 
+
+li.notes_formation_list {
   padding-top: 10px;
 }
 
 table.formation_list_table {
-    width:100%;
-    border-collapse:collapse;
-    background-color: rgb(0%,90%,90%);
+  width: 100%;
+  border-collapse: collapse;
+  background-color: rgb(0%, 90%, 90%);
 }
+
 table#formation_list_table tr.gt_hl {
-    background-color: rgb(96%,96%,96%);
+  background-color: rgb(96%, 96%, 96%);
 }
+
 .formation_list_table img.delete_small_img {
   width: 16px;
-  height:16px;
+  height: 16px;
 }
+
 .formation_list_table td.acronyme {
   width: 10%;
   font-weight: bold;
@@ -1588,9 +1802,11 @@ table#formation_list_table tr.gt_hl {
   color: black;
   font-size: 100%;
 }
+
 .formation_list_table td.version {
   text-align: center;
 }
+
 .formation_list_table td.titre {
   width: 50%;
 }
@@ -1601,16 +1817,18 @@ table#formation_list_table tr.gt_hl {
 
 /* Presentation formation (ue_list) */
 div.formation_descr {
-  background-color: rgb(250,250,240);
-  border: 1px solid rgb(128,128,128);
+  background-color: rgb(250, 250, 240);
+  border: 1px solid rgb(128, 128, 128);
   padding-left: 5px;
   padding-bottom: 5px;
   margin-right: 12px;
 }
+
 div.formation_descr span.fd_t {
   font-weight: bold;
   margin-right: 5px;
 }
+
 div.formation_descr span.fd_n {
   font-weight: bold;
   font-style: italic;
@@ -1624,6 +1842,7 @@ div.formation_ue_list {
   margin-right: 12px;
   padding-left: 5px;
 }
+
 div.formation_list_ues_titre {
   padding-left: 24px;
   padding-right: 24px;
@@ -1631,51 +1850,62 @@ div.formation_list_ues_titre {
   font-weight: bold;
 }
 
-div.formation_list_modules, div.formation_list_ues {
+div.formation_list_modules,
+div.formation_list_ues {
   border-radius: 18px;
   margin-left: 10px;
   margin-right: 10px;
   margin-bottom: 10px;
   padding-bottom: 1px;
 }
+
 div.formation_list_ues {
   background-color: #b7d2fa;
   margin-top: 20px
 }
+
 div.formation_list_modules {
   margin-top: 20px;
 }
+
 div.formation_list_modules_RESSOURCE {
   background-color: #f8c844;
 }
+
 div.formation_list_modules_SAE {
   background-color: #c6ffab;
 }
+
 div.formation_list_modules_STANDARD {
   background-color: #afafc2;
 }
+
 div.formation_list_modules_titre {
   padding-left: 24px;
   padding-right: 24px;
   font-weight: bold;
   font-size: 120%;
 }
+
 div.formation_list_ues ul.notes_module_list {
   margin-top: 0px;
   margin-bottom: -1px;
   padding-top: 5px;
   padding-bottom: 5px;
 }
+
 div.formation_list_modules ul.notes_module_list {
   margin-top: 0px;
   margin-bottom: -1px;
   padding-top: 5px;
   padding-bottom: 5px;
 }
+
 span.missing_ue_ects {
   color: red;
   font-weight: bold;
 }
+
 li.module_malus span.formation_module_tit {
   color: red;
   font-weight: bold;
@@ -1685,6 +1915,7 @@ li.module_malus span.formation_module_tit {
 span.formation_module_ue {
   background-color: #b7d2fa;
 }
+
 span.notes_module_list_buts {
   margin-right: 5px;
 }
@@ -1699,6 +1930,7 @@ ul.apc_ue_list {
   margin-left: 8px;
   margin-right: 8px;
 }
+
 ul.notes_ue_list {
   margin-top: 4px;
   margin-right: 1em;
@@ -1707,6 +1939,7 @@ ul.notes_ue_list {
   padding-bottom: 1em;
   font-weight: bold;
 }
+
 .formation_classic_infos ul.notes_ue_list {
   padding-top: 0px;
 }
@@ -1718,10 +1951,12 @@ ul.notes_ue_list {
   border-radius: 10px;
   padding-bottom: 5px;
 }
+
 span.ue_type_1 {
   color: green;
   font-weight: bold;
 }
+
 span.ue_code {
   font-family: Courier, monospace;
   font-weight: normal;
@@ -1734,19 +1969,25 @@ span.ue_type {
   margin-left: 1.5em;
   margin-right: 1.5em;
 }
+
 ul.notes_module_list span.ue_coefs_list {
   color: blue;
   font-size: 70%;
 }
+
 div.formation_ue_list_externes {
   background-color: #98cc98;
 }
-div.formation_ue_list_externes ul.notes_ue_list, div.formation_ue_list_externes li.notes_ue_list {
+
+div.formation_ue_list_externes ul.notes_ue_list,
+div.formation_ue_list_externes li.notes_ue_list {
   background-color: #98cc98;
 }
+
 span.ue_is_external span {
   color: orange;
 }
+
 span.ue_is_external a {
   font-weight: normal;
 }
@@ -1756,16 +1997,16 @@ li.notes_matiere_list {
 }
 
 ul.notes_matiere_list {
-  background-color: rgb(220,220,220);
+  background-color: rgb(220, 220, 220);
   font-weight: normal;
-  font-style: italic; 
+  font-style: italic;
   border-top: 1px solid maroon;
 }
 
 ul.notes_module_list {
-   background-color: rgb(210,210,210);
-   font-weight: normal;
-   font-style: normal; 
+  background-color: rgb(210, 210, 210);
+  font-weight: normal;
+  font-style: normal;
 }
 
 div.ue_list_div {
@@ -1780,8 +2021,10 @@ div.ue_list_tit_sem {
   font-size: 120%;
   font-weight: bold;
   color: orangered;
-  display: list-item;          /* This has to be "list-item"                                               */
-  list-style-type: disc;       /* See https://developer.mozilla.org/en-US/docs/Web/CSS/list-style-type     */
+  display: list-item;
+  /* This has to be "list-item"                                               */
+  list-style-type: disc;
+  /* See https://developer.mozilla.org/en-US/docs/Web/CSS/list-style-type     */
   list-style-position: inside;
 }
 
@@ -1789,27 +2032,28 @@ input.sco_tag_checkbox {
   margin-bottom: 10px;
 }
 
-.notes_ue_list a.stdlink  {
-    color: #001084;
-    text-decoration: underline;
+.notes_ue_list a.stdlink {
+  color: #001084;
+  text-decoration: underline;
 }
+
 .notes_ue_list span.locked {
-    font-weight: normal;
+  font-weight: normal;
 }
 
 .notes_ue_list a.smallbutton img {
-    position: relative;
-    top: 2px;
+  position: relative;
+  top: 2px;
 }
 
 div#ue_list_code {
-    background-color: rgb(155, 218, 155);
-    padding: 10px;
-    border: 1px solid blue;
-    border-radius: 10px;
-    padding: 10px;
-    margin-top: 10px;
-    margin-right: 15px;
+  background-color: rgb(155, 218, 155);
+  padding: 10px;
+  border: 1px solid blue;
+  border-radius: 10px;
+  padding: 10px;
+  margin-top: 10px;
+  margin-right: 15px;
 }
 
 ul.notes_module_list {
@@ -1826,13 +2070,14 @@ div#ue_list_modules {
 }
 
 div#ue_list_etud_validations {
-  background-color: rgb(220,250,220);
+  background-color: rgb(220, 250, 220);
   padding-left: 4px;
   padding-bottom: 1px;
   margin: 3ex;
 }
+
 div#ue_list_etud_validations span {
-    font-weight: bold;
+  font-weight: bold;
 }
 
 span.ue_share {
@@ -1842,22 +2087,24 @@ span.ue_share {
 div.ue_warning {
   border: 1px solid red;
   border-radius: 10px;
-  background-color: rgb(250,220,220);
+  background-color: rgb(250, 220, 220);
   margin-top: 10px;
   margin-right: 15px;
   margin-bottom: 10px;
   padding: 10px;
 }
+
 div.ue_warning:first-child {
   font-weight: bold;
 }
+
 div.ue_warning span:before {
-    content: url(/ScoDoc/static/icons/warning_img.png);
-    vertical-align: -80%;  
+  content: url(/ScoDoc/static/icons/warning_img.png);
+  vertical-align: -80%;
 }
 
 div.ue_warning span {
-    font-weight: bold;
+  font-weight: bold;
 }
 
 span.missing_value {
@@ -1867,185 +2114,214 @@ span.missing_value {
 
 /* tableau recap notes */
 table.notes_recapcomplet {
-   border: 2px solid blue;
-   border-spacing: 0px 0px;
-   border-collapse: collapse;
-   white-space: nowrap;   
+  border: 2px solid blue;
+  border-spacing: 0px 0px;
+  border-collapse: collapse;
+  white-space: nowrap;
 }
+
 tr.recap_row_even {
-   background-color: rgb(210,210,210);
+  background-color: rgb(210, 210, 210);
 }
+
 @media print {
-tr.recap_row_even { /* bordures noires pour impression */
-   border-top: 1px solid black;
-   border-bottom: 1px solid black;
-}
+  tr.recap_row_even {
+    /* bordures noires pour impression */
+    border-top: 1px solid black;
+    border-bottom: 1px solid black;
+  }
 }
+
 tr.recap_row_min {
-   border-top: 1px solid blue;
+  border-top: 1px solid blue;
 }
-tr.recap_row_min, tr.recap_row_max {
-   font-weight: normal;
-   font-style: italic;
+
+tr.recap_row_min,
+tr.recap_row_max {
+  font-weight: normal;
+  font-style: italic;
 }
+
 tr.recap_row_moy {
-    font-weight: bold;
+  font-weight: bold;
 }
+
 tr.recap_row_nbeval {
-    color: green;
+  color: green;
 }
+
 tr.recap_row_ects {
   color: rgb(160, 86, 3);
   border-bottom: 1px solid blue;
 }
+
 td.recap_tit {
-   font-weight: bold;
-   text-align: left;
-   padding-right: 1.2em;
+  font-weight: bold;
+  text-align: left;
+  padding-right: 1.2em;
 }
+
 td.recap_tit_ue {
-   font-weight: bold;
-   text-align: left;
-   padding-right: 1.2em;
-   padding-left: 2px;
-   border-left: 1px solid blue;
+  font-weight: bold;
+  text-align: left;
+  padding-right: 1.2em;
+  padding-left: 2px;
+  border-left: 1px solid blue;
 }
+
 td.recap_col {
-   padding-right: 1.2em;
-   text-align: left;
+  padding-right: 1.2em;
+  text-align: left;
 }
+
 td.recap_col_moy {
-   padding-right: 1.5em;
-   text-align: left;
-   font-weight: bold;
-   color: rgb(80,0,0);
+  padding-right: 1.5em;
+  text-align: left;
+  font-weight: bold;
+  color: rgb(80, 0, 0);
 }
+
 td.recap_col_moy_inf {
-   padding-right: 1.5em;
-   text-align: left;
-   font-weight: bold;
-   color: rgb(255,0,0);
+  padding-right: 1.5em;
+  text-align: left;
+  font-weight: bold;
+  color: rgb(255, 0, 0);
 }
+
 td.recap_col_ue {
-   padding-right: 1.2em;
-   padding-left: 4px;
-   text-align: left;
-   font-weight: bold;
-   border-left: 1px solid blue;
+  padding-right: 1.2em;
+  padding-left: 4px;
+  text-align: left;
+  font-weight: bold;
+  border-left: 1px solid blue;
 }
+
 td.recap_col_ue_inf {
-   padding-right: 1.2em;
-   padding-left: 4px;
-   text-align: left;
-   font-weight: bold;
-   color: rgb(255,0,0);
-   border-left: 1px solid blue;
+  padding-right: 1.2em;
+  padding-left: 4px;
+  text-align: left;
+  font-weight: bold;
+  color: rgb(255, 0, 0);
+  border-left: 1px solid blue;
 }
+
 td.recap_col_ue_val {
-   padding-right: 1.2em;
-   padding-left: 4px;
-   text-align: left;
-   font-weight: bold;
-   color: rgb(0,140,0);
-   border-left: 1px solid blue;
+  padding-right: 1.2em;
+  padding-left: 4px;
+  text-align: left;
+  font-weight: bold;
+  color: rgb(0, 140, 0);
+  border-left: 1px solid blue;
 }
+
 /* noms des etudiants sur recap complet */
-table.notes_recapcomplet a:link, table.notes_recapcomplet a:visited {
-   text-decoration: none;
-   color: black;
+table.notes_recapcomplet a:link,
+table.notes_recapcomplet a:visited {
+  text-decoration: none;
+  color: black;
 }
 
 table.notes_recapcomplet a:hover {
-   color: red;
-   text-decoration: underline;
+  color: red;
+  text-decoration: underline;
 }
 
 /* bulletin */
 div.notes_bulletin {
   margin-right: 5px;
 }
+
 div.bull_head {
   display: grid;
   justify-content: space-between;
   grid-template-columns: auto auto;
 }
+
 div.bull_photo {
   display: inline-block;
   margin-right: 10px;
 }
+
 span.bulletin_menubar_but {
   display: inline-block;
   margin-left: 2em;
   margin-right: 2em;
 }
+
 table.notes_bulletin {
-   border-collapse: collapse;
-   border: 2px solid rgb(100,100,240);
-   width: 100%;
-   margin-right: 100px;
-   background-color: rgb(240,250,255);
-   font-family : arial, verdana, sans-serif ;
-   font-size: 13px;
+  border-collapse: collapse;
+  border: 2px solid rgb(100, 100, 240);
+  width: 100%;
+  margin-right: 100px;
+  background-color: rgb(240, 250, 255);
+  font-family: arial, verdana, sans-serif;
+  font-size: 13px;
 }
 
 tr.notes_bulletin_row_gen {
-   border-top: 1px solid black;
-   font-weight: bold;
+  border-top: 1px solid black;
+  font-weight: bold;
 }
+
 tr.notes_bulletin_row_rang {
-   font-weight: bold;
+  font-weight: bold;
 }
 
 tr.notes_bulletin_row_ue {
-   /* background-color: rgb(170,187,204); voir sco_utils.UE_COLORS */
-   font-weight: bold;
-   border-top: 1px solid black;
+  /* background-color: rgb(170,187,204); voir sco_utils.UE_COLORS */
+  font-weight: bold;
+  border-top: 1px solid black;
 }
 
 tr.bul_row_ue_cur {
-   background-color: rgb(180,180,180);
+  background-color: rgb(180, 180, 180);
 }
 
 tr.bul_row_ue_cap {
-   background-color: rgb(150,170,200);
-   color: rgb(50,50,50);
+  background-color: rgb(150, 170, 200);
+  color: rgb(50, 50, 50);
 }
 
 tr.notes_bulletin_row_mat {
-  border-top: 2px solid rgb(140,140,140);
+  border-top: 2px solid rgb(140, 140, 140);
   color: blue;
 }
 
 tr.notes_bulletin_row_mod {
-  border-top: 1px solid rgb(140,140,140);
+  border-top: 1px solid rgb(140, 140, 140);
 }
+
 tr.notes_bulletin_row_sum_ects {
   border-top: 1px solid black;
   font-weight: bold;
-  background-color: rgb(170,190,200);
+  background-color: rgb(170, 190, 200);
 }
 
-tr.notes_bulletin_row_mod td.titre, tr.notes_bulletin_row_mat td.titre {
+tr.notes_bulletin_row_mod td.titre,
+tr.notes_bulletin_row_mat td.titre {
   padding-left: 1em;
 }
 
 tr.notes_bulletin_row_eval {
-  font-style: italic; 
-  color: rgb(60,60,80);
+  font-style: italic;
+  color: rgb(60, 60, 80);
 }
+
 tr.notes_bulletin_row_eval_incomplete .discretelink {
-  color: rgb(200,0,0);
+  color: rgb(200, 0, 0);
 }
 
 tr.b_eval_first td {
-  border-top: 1px dashed rgb(170,170,170);
+  border-top: 1px dashed rgb(170, 170, 170);
 }
+
 tr.b_eval_first td.titre {
   border-top: 0px;
 }
+
 tr.notes_bulletin_row_eval td.module {
   padding-left: 5px;
-  border-left: 1px dashed rgb(170,170,170);
+  border-left: 1px dashed rgb(170, 170, 170);
 }
 
 span.bul_ue_descr {
@@ -2056,101 +2332,124 @@ span.bul_ue_descr {
 table.notes_bulletin td.note {
   padding-left: 1em;
 }
-table.notes_bulletin td.min, table.notes_bulletin td.max, table.notes_bulletin td.moy {
-  font-size: 80%;  
+
+table.notes_bulletin td.min,
+table.notes_bulletin td.max,
+table.notes_bulletin td.moy {
+  font-size: 80%;
 }
 
-table.notes_bulletin tr.notes_bulletin_row_ue_cur td.note, table.notes_bulletin tr.notes_bulletin_row_ue_cur td.min, table.notes_bulletin tr.notes_bulletin_row_ue_cur td.max {
-  font-style: italic; 
+table.notes_bulletin tr.notes_bulletin_row_ue_cur td.note,
+table.notes_bulletin tr.notes_bulletin_row_ue_cur td.min,
+table.notes_bulletin tr.notes_bulletin_row_ue_cur td.max {
+  font-style: italic;
 }
 
-table.notes_bulletin tr.bul_row_ue_cur td, table.notes_bulletin tr.bul_row_ue_cur td a {
-  color:rgb(114, 89, 89);
+table.notes_bulletin tr.bul_row_ue_cur td,
+table.notes_bulletin tr.bul_row_ue_cur td a {
+  color: rgb(114, 89, 89);
 }
 
 .note_bold {
-   font-weight: bold; 
+  font-weight: bold;
 }
-td.bull_coef_eval, td.bull_nom_eval {
-   font-style: italic; 
-   color: rgb(60,60,80);
+
+td.bull_coef_eval,
+td.bull_nom_eval {
+  font-style: italic;
+  color: rgb(60, 60, 80);
 }
+
 tr.notes_bulletin_row_eval td.note {
-   font-style: italic; 
-   color: rgb(40,40,40);
-   font-size: 90%;
+  font-style: italic;
+  color: rgb(40, 40, 40);
+  font-size: 90%;
 }
 
 tr.notes_bulletin_row_eval td.note .note_nd {
-   font-weight: bold; 
-   color: red;
+  font-weight: bold;
+  color: red;
 }
 
 /* --- Bulletins UCAC */
-tr.bul_ucac_row_tit, tr.bul_ucac_row_ue, tr.bul_ucac_row_total, tr.bul_ucac_row_decision, tr.bul_ucac_row_mention {
-   font-weight: bold;
-   border: 1px solid black;
+tr.bul_ucac_row_tit,
+tr.bul_ucac_row_ue,
+tr.bul_ucac_row_total,
+tr.bul_ucac_row_decision,
+tr.bul_ucac_row_mention {
+  font-weight: bold;
+  border: 1px solid black;
 }
+
 tr.bul_ucac_row_tit {
-   background-color: rgb(170,187,204);
+  background-color: rgb(170, 187, 204);
 }
-tr.bul_ucac_row_total, tr.bul_ucac_row_decision, tr.bul_ucac_row_mention {
-   background-color: rgb(220,220,220);
+
+tr.bul_ucac_row_total,
+tr.bul_ucac_row_decision,
+tr.bul_ucac_row_mention {
+  background-color: rgb(220, 220, 220);
 }
 
 /* ---- /ucac */
 
 span.bul_minmax {
-   font-weight: normal;
-   font-size: 66%;   
+  font-weight: normal;
+  font-size: 66%;
 }
+
 span.bul_minmax:before {
-   content: " ";
+  content: " ";
 }
 
 a.bull_link {
-   text-decoration:none;
-   color: rgb(20,30,30);
+  text-decoration: none;
+  color: rgb(20, 30, 30);
 }
+
 a.bull_link:hover {
-   color: rgb(153,51,51);
-   text-decoration: underline;
+  color: rgb(153, 51, 51);
+  text-decoration: underline;
 }
 
 
 div.bulletin_menubar {
-   padding-left: 25px;
+  padding-left: 25px;
 }
 
 .bull_liensemestre {
-   font-weight: bold; 
+  font-weight: bold;
 }
+
 .bull_liensemestre a {
-   color: rgb(255,0,0);
-   text-decoration: none;
+  color: rgb(255, 0, 0);
+  text-decoration: none;
 }
+
 .bull_liensemestre a:hover {
-   color: rgb(153,51,51);
-   text-decoration: underline;
+  color: rgb(153, 51, 51);
+  text-decoration: underline;
 }
 
 .bull_appreciations p {
-   margin: 0;
-   font-style: italic; 
+  margin: 0;
+  font-style: italic;
 }
+
 .bull_appreciations_link {
-   margin-left: 1em;
+  margin-left: 1em;
 }
+
 span.bull_appreciations_date {
-   margin-right: 1em;
-   font-style: normal;
-   font-size: 75%; 
+  margin-right: 1em;
+  font-style: normal;
+  font-size: 75%;
 }
 
 div.eval_description {
-    color: rgb(20,20,20);
-    /* border: 1px solid rgb(30,100,0); */
-    padding: 3px;
+  color: rgb(20, 20, 20);
+  /* border: 1px solid rgb(30,100,0); */
+  padding: 3px;
 }
 
 div.bul_foot {
@@ -2161,6 +2460,7 @@ div.bul_foot {
   padding: 16px 32px;
   margin: auto;
 }
+
 div.bull_appreciations {
   border-left: 1px solid black;
   padding-left: 5px;
@@ -2170,96 +2470,107 @@ div.bull_appreciations {
 div.saisienote_etape1 {
   border: 2px solid blue;
   padding: 5px;
-  background-color: rgb( 231, 234, 218 ); /* E7EADA */ 
+  background-color: rgb(231, 234, 218);
+  /* E7EADA */
 }
+
 div.saisienote_etape2 {
-  border: 2px solid green; 
+  border: 2px solid green;
   margin-top: 1em;
   padding: 5px;
-  background-color: rgb(234,221,218); /* EADDDA */
+  background-color: rgb(234, 221, 218);
+  /* EADDDA */
 }
-span.titredivsaisienote { 
+
+span.titredivsaisienote {
   font-weight: bold;
   font-size: 115%;
 }
 
 
 .etud_dem {
-  color: rgb(130,130,130);
+  color: rgb(130, 130, 130);
 }
 
 input.note_invalid {
- color: red;
- background-color: yellow;
+  color: red;
+  background-color: yellow;
 }
 
 input.note_valid_new {
- color: blue;
+  color: blue;
 }
 
 input.note_saved {
- color: green;
+  color: green;
 }
 
 span.history {
   font-style: italic;
 }
+
 span.histcomment {
   font-style: italic;
 }
 
 /* ----- Absences ------ */
 td.matin {
-  background-color: rgb(203,242,255);
+  background-color: rgb(203, 242, 255);
 }
 
 td.absent {
-  background-color: rgb(255,156,156);
+  background-color: rgb(255, 156, 156);
 }
 
 td.present {
-  background-color: rgb(230,230,230);
+  background-color: rgb(230, 230, 230);
 }
 
 span.capstr {
   color: red;
 }
+
 b.etuddem {
   font-weight: normal;
   font-style: italic;
 }
 
 tr.row_1 {
-    background-color: white;
+  background-color: white;
 }
+
 tr.row_2 {
-    background-color: white;
+  background-color: white;
 }
+
 tr.row_3 {
-    background-color: #dfdfdf;
+  background-color: #dfdfdf;
 }
+
 td.matin_1 {
-    background-color: #e1f7ff;
+  background-color: #e1f7ff;
 }
+
 td.matin_2 {
-    background-color: #e1f7ff;
+  background-color: #e1f7ff;
 }
+
 td.matin_3 {
-    background-color: #c1efff;
+  background-color: #c1efff;
 }
 
 table.abs_form_table tr:hover td {
-    border: 1px solid red;
+  border: 1px solid red;
 }
 
 
 /* ----- Formulator  ------- */
-ul.tf-msg { 
-  color: rgb(6,80,18);
+ul.tf-msg {
+  color: rgb(6, 80, 18);
   border: 1px solid red;
 }
 
-li.tf-msg {  
+li.tf-msg {
   list-style-image: url(/ScoDoc/static/icons/warning16_img.png);
   padding-top: 5px;
   padding-bottom: 5px;
@@ -2269,18 +2580,21 @@ li.tf-msg {
   font-weight: bold;
   color: red;
 }
-.warning::before { 
+
+.warning::before {
   content: url(/ScoDoc/static/icons/warning_img.png);
-  vertical-align: -80%;  
+  vertical-align: -80%;
 }
+
 .infop {
   font-weight: normal;
   color: rgb(26, 150, 26);
   font-style: italic;
 }
-.infop::before { 
+
+.infop::before {
   content: url(/ScoDoc/static/icons/info-16_img.png);
-  vertical-align: -15%;  
+  vertical-align: -15%;
   padding-right: 5px;
 }
 
@@ -2289,84 +2603,94 @@ form.sco_pref table.tf {
   border-spacing: 5px 15px;
 }
 
-td.tf-ro-fieldlabel { 
+td.tf-ro-fieldlabel {
   /* font-weight: bold; */
-  vertical-align:top;
+  vertical-align: top;
   margin-top: 20px;
 }
+
 td.tf-ro-fieldlabel:after {
-   content: ' :';
+  content: ' :';
 }
+
 td.tf-ro-field {
-  vertical-align:top;
+  vertical-align: top;
 }
+
 span.tf-ro-value {
   background-color: white;
   color: grey;
   margin-right: 2em;
 }
+
 div.tf-ro-textarea {
   border: 1px solid grey;
   padding-left: 8px;
 }
+
 select.tf-selglobal {
   margin-left: 10px;
 }
 
-td.tf-fieldlabel { 
+td.tf-fieldlabel {
   /* font-weight: bold; */
-  vertical-align:top;
+  vertical-align: top;
 }
 
 .tf-comment {
-    font-size: 80%;
-    font-style: italic;
+  font-size: 80%;
+  font-style: italic;
 }
 
 .tf-explanation {
-    font-style: italic;
+  font-style: italic;
 }
 
-.radio_green { 
-   background-color: green;
+.radio_green {
+  background-color: green;
 }
 
 .radio_red {
-   background-color: red;
+  background-color: red;
 }
 
 td.fvs_val {
- border-left: 1px solid rgb(80,80,80);
- text-align: center;
- padding-left: 1em;
- padding-right: 1em;
+  border-left: 1px solid rgb(80, 80, 80);
+  text-align: center;
+  padding-left: 1em;
+  padding-right: 1em;
 }
 
 td.fvs_val_inf {
- border-left: 1px solid rgb(80,80,80);
- text-align: center;
- padding-left: 1em;
- padding-right: 1em;
- color: red;
+  border-left: 1px solid rgb(80, 80, 80);
+  text-align: center;
+  padding-left: 1em;
+  padding-right: 1em;
+  color: red;
 }
 
 td.fvs_tit {
- font-weight: bold;
- text-align: left;
- border-left: 1px solid rgb(80,80,80);
- text-align: center;
- padding-left: 1em;
- padding-right: 1em;
+  font-weight: bold;
+  text-align: left;
+  border-left: 1px solid rgb(80, 80, 80);
+  text-align: center;
+  padding-left: 1em;
+  padding-right: 1em;
 }
+
 td.fvs_tit_chk {
- font-weight: bold;
+  font-weight: bold;
 }
 
 span.table_nav_mid {
-  flex-grow: 1; /* Set the middle element to grow and stretch */
+  flex-grow: 1;
+  /* Set the middle element to grow and stretch */
 }
-span.table_nav_prev, span.table_nav_next {
-  width: 11em; /* A fixed width as the default */
+
+span.table_nav_prev,
+span.table_nav_next {
+  width: 11em;
+  /* A fixed width as the default */
 }
 
 div.table_nav {
@@ -2377,25 +2701,27 @@ div.table_nav {
 
 P.gtr_interdit:before {
   content: url(/ScoDoc/static/icons/interdit_img.png);
-  vertical-align: -80%;  
+  vertical-align: -80%;
 }
+
 P.gtr_devel:before {
   content: url(/ScoDoc/static/icons/devel_img.png);
-  vertical-align: -80%;  
+  vertical-align: -80%;
 }
 
 /* ---- Sortable tables --- */
 /* Sortable tables */
 table.sortable a.sortheader {
-    background-color:#E6E6E6;
-    color: black;
-    font-weight: bold;
-    text-decoration: none;
-    display: block;
+  background-color: #E6E6E6;
+  color: black;
+  font-weight: bold;
+  text-decoration: none;
+  display: block;
 }
+
 table.sortable span.sortarrow {
-    color: black;
-    text-decoration: none;
+  color: black;
+  text-decoration: none;
 }
 
 /* Horizontal bar graph */
@@ -2403,39 +2729,39 @@ table.sortable span.sortarrow {
   width: 100px;
   height: 12px;
   /* background-color: rgb(200, 200, 250); */
-  padding-bottom: 0px;  
+  padding-bottom: 0px;
   margin-bottom: 0;
   margin-right: 0px;
   margin-top: 3px;
   margin-left: 10px;
-  border:1px solid black;
+  border: 1px solid black;
   position: absolute;
 }
 
 .bar {
-     background-color: rgb(100, 150, 255);
-     margin: 0; 
-     padding: 0; 
-     position: absolute;
-     left: 0;
-     top: 2px;
-     height: 8px;
-     z-index: 2;
+  background-color: rgb(100, 150, 255);
+  margin: 0;
+  padding: 0;
+  position: absolute;
+  left: 0;
+  top: 2px;
+  height: 8px;
+  z-index: 2;
 }
 
 .mark {
-     background-color: rgb(0, 150, 0);
-     margin: 0; 
-     padding: 0; 
-     position: absolute;
-     top: 0;
-     width: 2px;
-     height: 100%;
-     z-index: 2;
+  background-color: rgb(0, 150, 0);
+  margin: 0;
+  padding: 0;
+  position: absolute;
+  top: 0;
+  width: 2px;
+  height: 100%;
+  z-index: 2;
 }
 
 td.cell_graph {
-    width: 170px;
+  width: 170px;
 }
 
 /* ------------------ Formulaire validation semestre ---------- */
@@ -2444,55 +2770,69 @@ table.recap_parcours {
   border-collapse: collapse;
 }
 
-table.recap_parcours td { 
+table.recap_parcours td {
   padding-left: 8px;
   padding-right: 8px;
 }
 
 .recap_parcours tr.sem_courant {
-    background-color: rgb(255, 241, 118);
+  background-color: rgb(255, 241, 118);
 }
 
 .recap_parcours tr.sem_precedent {
-  background-color: rgb(90%,95%,90%); 
+  background-color: rgb(90%, 95%, 90%);
 }
 
 .recap_parcours tr.sem_autre {
-  background-color: rgb(90%,90%,90%);
+  background-color: rgb(90%, 90%, 90%);
 }
 
 .rcp_l1 td {
   padding-top: 5px;
-  border-top: 3px solid rgb(50%,50%,50%);
+  border-top: 3px solid rgb(50%, 50%, 50%);
   border-right: 0px;
   border-left: 0px;
   color: blue;
   vertical-align: top;
 }
+
 td.rcp_dec {
-  color: rgb(0%,0%,50%);;
+  color: rgb(0%, 0%, 50%);
+  ;
 }
+
 td.rcp_nonass {
   color: red;
 }
 
-.recap_hide_details tr.rcp_l2 { display: none; } 
-table.recap_hide_details td.ue_acro span { display: none; }
+.recap_hide_details tr.rcp_l2 {
+  display: none;
+}
+
+table.recap_hide_details td.ue_acro span {
+  display: none;
+}
 
-.sco_hide { display: none; }
+.sco_hide {
+  display: none;
+}
 
-table.recap_hide_details tr.sem_courant,  table.recap_hide_details tr.sem_precedent { 
-    display: table-row; 
+table.recap_hide_details tr.sem_courant,
+table.recap_hide_details tr.sem_precedent {
+  display: table-row;
 }
-table.recap_hide_details tr.sem_courant td.ue_acro span, table.recap_hide_details tr.sem_precedent td.ue_acro span { 
-    display: inline; 
+
+table.recap_hide_details tr.sem_courant td.ue_acro span,
+table.recap_hide_details tr.sem_precedent td.ue_acro span {
+  display: inline;
 }
 
 .recap_parcours tr.sem_courant td.rcp_type_sem {
-    font-weight: bold;
+  font-weight: bold;
 }
+
 .recap_parcours tr.sem_autre td.rcp_type_sem {
-    color: rgb(100%,70%,70%);
+  color: rgb(100%, 70%, 70%);
 }
 
 .recap_parcours tr.sem_autre_formation td.rcp_titre_sem {
@@ -2504,28 +2844,35 @@ table.recap_hide_details tr.sem_courant td.ue_acro span, table.recap_hide_detail
 }
 
 td.sem_ects_tit {
- text-align: right;
+  text-align: right;
 }
+
 span.ects_fond {
- text-decoration: underline;
+  text-decoration: underline;
 }
+
 span.ects_fond:before {
- content: "(";
+  content: "(";
 }
+
 span.ects_fond:after {
- content: ")";
+  content: ")";
 }
+
 table.recap_parcours td.datedebut {
-    color: rgb(0,0,128);
+  color: rgb(0, 0, 128);
 }
+
 table.recap_parcours td.datefin {
-    color: rgb(0,0,128);
+  color: rgb(0, 0, 128);
 }
-table.recap_parcours td.rcp_type_sem {  
+
+table.recap_parcours td.rcp_type_sem {
   padding-left: 4px;
   padding-right: 4px;
   color: red;
 }
+
 td.ue_adm {
   color: green;
   font-weight: bold;
@@ -2539,30 +2886,32 @@ td.ue_capitalized {
   text-decoration: underline;
 }
 
-h3.sfv {   
+h3.sfv {
   margin-top: 0px;
 }
 
-form.sfv_decisions { 
-  border:1px solid blue;
+form.sfv_decisions {
+  border: 1px solid blue;
   padding: 6px;
   margin-right: 2px;
 }
-form.sfv_decisions_manuelles { 
+
+form.sfv_decisions_manuelles {
   margin-top: 10px;
 }
-th.sfv_subtitle { 
+
+th.sfv_subtitle {
   text-align: left;
-  font-style: italic;  
+  font-style: italic;
 }
 
 
-tr.sfv_ass { 
-  background-color: rgb(90%,90%,80%);
+tr.sfv_ass {
+  background-color: rgb(90%, 90%, 80%);
 }
 
-tr.sfv_pbass { 
-  background-color: rgb(90%,70%,80%);
+tr.sfv_pbass {
+  background-color: rgb(90%, 70%, 80%);
 }
 
 div.link_defaillance {
@@ -2575,7 +2924,7 @@ div.pas_sembox {
   border: 2px solid #a0522d;
   padding: 5px;
   margin-right: 10px;
-  font-family: arial,verdana,sans-serif;
+  font-family: arial, verdana, sans-serif;
 }
 
 span.sp_etape {
@@ -2591,12 +2940,13 @@ span.sp_etape {
   color: red !important;
 }
 
-span.paspaye, span.paspaye a {
-  color:  #9400d3 !important;
+span.paspaye,
+span.paspaye a {
+  color: #9400d3 !important;
 }
 
 span.finalisationinscription {
-    color: green;
+  color: green;
 }
 
 .pas_sembox_title a {
@@ -2609,11 +2959,11 @@ span.finalisationinscription {
   font-weight: normal;
   font-size: 100%;
   color: blue;
-  border-bottom: 1px solid  rgb(50%,50%,50%);
+  border-bottom: 1px solid rgb(50%, 50%, 50%);
   margin-bottom: 8px;
 }
 
-.pas_recap {  
+.pas_recap {
   font-weight: bold;
   font-size: 110%;
   margin-top: 10px;
@@ -2622,72 +2972,76 @@ span.finalisationinscription {
 div.pas_help {
   width: 80%;
   font-size: 80%;
-  background-color: rgb(90%,90%,90%);
-  color: rgb(40%,20%,0%);
+  background-color: rgb(90%, 90%, 90%);
+  color: rgb(40%, 20%, 0%);
   margin-top: 30px;
   margin-bottom: 30px;
 }
+
 div.pas_help_left {
   float: left;
 }
+
 span.libelle {
-    font-weight: bold;
-}  
+  font-weight: bold;
+}
+
 span.anomalie {
-    font-style: italic;
+  font-style: italic;
 }
 
 /* ---- check absences / evaluations ---- */
-div.module_check_absences h2 { 
+div.module_check_absences h2 {
   font-size: 100%;
   color: blue;
-  margin-bottom:0px;
+  margin-bottom: 0px;
 }
 
-div.module_check_absences h2.eval_check_absences {  
+div.module_check_absences h2.eval_check_absences {
   font-size: 80%;
   color: black;
   margin-left: 20px;
-  margin-top:0px;
-  margin-bottom:5px;
+  margin-top: 0px;
+  margin-bottom: 5px;
 }
 
-div.module_check_absences h3 {  
+div.module_check_absences h3 {
   font-size: 80%;
-  color: rgb(133,0,0);
+  color: rgb(133, 0, 0);
   margin-left: 40px;
-  margin-top:0px;
-  margin-bottom:0px;
+  margin-top: 0px;
+  margin-bottom: 0px;
 }
 
-div.module_check_absences ul { 
+div.module_check_absences ul {
   margin-left: 60px;
   font-size: 80%;
-  margin-top:0px;
-  margin-bottom:0px;
+  margin-top: 0px;
+  margin-bottom: 0px;
 }
 
 /* ----------------------------------------------- */
 /*    Help bubbles (aka tooltips)                  */
 /* ----------------------------------------------- */
-.tooltip{
+.tooltip {
   width: 200px;
-  color:#000;
-  font:lighter 11px/1.3 Arial,sans-serif;
-  text-decoration:none;
-  text-align:center;
+  color: #000;
+  font: lighter 11px/1.3 Arial, sans-serif;
+  text-decoration: none;
+  text-align: center;
 }
 
-.tooltip span.top{
+.tooltip span.top {
   padding: 30px 8px 0;
   background: url(/ScoDoc/static/icons/bt_gif.png) no-repeat top;
 }
 
-.tooltip b.bottom{
-  padding:3px 8px 15px;
+.tooltip b.bottom {
+  padding: 3px 8px 15px;
   color: #548912;
   background: url(/ScoDoc/static/icons/bt_gif.png) no-repeat bottom;
 }
+
 /* ----------------------------------------------- */
 
 /* ----------------------------- */
@@ -2696,23 +3050,26 @@ div.module_check_absences ul {
 /* Voir gt_table.css les definitions s'appliquant à toutes les tables
  */
 
-table.table_cohorte tfoot tr td, table.table_cohorte tfoot tr th { 
-  background-color: rgb(90%,95%,100%);
-  border-right:  1px solid #dddddd; 
+table.table_cohorte tfoot tr td,
+table.table_cohorte tfoot tr th {
+  background-color: rgb(90%, 95%, 100%);
+  border-right: 1px solid #dddddd;
 }
+
 table.table_cohorte tfoot tr th {
   text-align: left;
-  border-left:  1px solid #dddddd; 
+  border-left: 1px solid #dddddd;
   font-weight: normal;
 }
 
-table.table_coldate tr td:first-child { /* largeur col. date/time */
+table.table_coldate tr td:first-child {
+  /* largeur col. date/time */
   width: 12em;
-  color: rgb(0%,0%,50%);
+  color: rgb(0%, 0%, 50%);
 }
 
 
-table.table_listegroupe tr td { 
+table.table_listegroupe tr td {
   padding-left: 0.5em;
   padding-right: 0.5em;
 }
@@ -2730,12 +3087,16 @@ table.formsemestre_description tr.table_row_ue td {
 }
 
 /* --- */
-tr#tf_extue_decl > td, tr#tf_extue_note > td {
-   padding-top: 20px;
+tr#tf_extue_decl>td,
+tr#tf_extue_note>td {
+  padding-top: 20px;
 }
 
-tr#tf_extue_titre > td, tr#tf_extue_acronyme > td, tr#tf_extue_type > td, tr#tf_extue_ects > td {
-    padding-left: 20px;
+tr#tf_extue_titre>td,
+tr#tf_extue_acronyme>td,
+tr#tf_extue_type>td,
+tr#tf_extue_ects>td {
+  padding-left: 20px;
 }
 
 /* ----------------------------- */
@@ -2758,46 +3119,50 @@ div.cal_evaluations table.monthcalendar td.calcell {
 
 
 div.cal_evaluations table.monthcalendar td a {
-  color: rgb(128,0,0);
+  color: rgb(128, 0, 0);
 }
 
-#lyc_map_canvas { 
-   width:  900px;
-   height: 600px; 
+#lyc_map_canvas {
+  width: 900px;
+  height: 600px;
 }
 
 div.othersemlist {
-    margin-bottom: 10px;
-    margin-right: 5px;
-    padding-bottom: 4px;
-    padding-left: 5px;
-    border: 1px solid gray;
+  margin-bottom: 10px;
+  margin-right: 5px;
+  padding-bottom: 4px;
+  padding-left: 5px;
+  border: 1px solid gray;
 }
+
 div.othersemlist p {
-   font-weight: bold;
-   margin-top: 0px;
+  font-weight: bold;
+  margin-top: 0px;
 }
+
 div.othersemlist input {
-   margin-left: 20px;
+  margin-left: 20px;
 }
 
 
 div#update_warning {
-    display: none;
-    border: 1px solid red;
-    background-color: rgb(250,220,220);
-    margin: 3ex;
-    padding-left: 1ex;
-    padding-right: 1ex;
-    padding-bottom: 1ex;
+  display: none;
+  border: 1px solid red;
+  background-color: rgb(250, 220, 220);
+  margin: 3ex;
+  padding-left: 1ex;
+  padding-right: 1ex;
+  padding-bottom: 1ex;
 }
-div#update_warning > div:first-child:before {
-    content: url(/ScoDoc/static/icons/warning_img.png);
-    vertical-align: -80%;  
+
+div#update_warning>div:first-child:before {
+  content: url(/ScoDoc/static/icons/warning_img.png);
+  vertical-align: -80%;
 }
-div#update_warning > div:nth-child(2) {
-    font-size: 80%;
-    padding-left: 8ex;
+
+div#update_warning>div:nth-child(2) {
+  font-size: 80%;
+  padding-left: 8ex;
 }
 
 /* 
@@ -2822,64 +3187,69 @@ div#update_warning > div:nth-child(2) {
 
 /* Page accueil */
 #scodoc_attribution p {
-   font-size:75%;
+  font-size: 75%;
 }
+
 div.maindiv {
-   margin: 1em;
+  margin: 1em;
 }
+
 ul.main {
   list-style-type: square;
   margin-top: 1em;
 }
 
 ul.main li {
-   padding-bottom: 2ex;
+  padding-bottom: 2ex;
 }
 
 
 #scodoc_admin {
-   background-color: #EEFFFF;
-}
-#message, .message {
-   margin-top: 2px;
-   margin-bottom: 0px;
-   padding:  0.1em;
-   margin-left: auto;
-   margin-right: auto;
-   background-color: #ffff73;
-   -moz-border-radius: 8px;
-   -khtml-border-radius: 8px;
-   border-radius: 8px;
-   font-family : arial, verdana, sans-serif ;
-   font-weight: bold;
-   width: 40%;
-   text-align: center;
-   color: red;
+  background-color: #EEFFFF;
+}
+
+#message,
+.message {
+  margin-top: 2px;
+  margin-bottom: 0px;
+  padding: 0.1em;
+  margin-left: auto;
+  margin-right: auto;
+  background-color: #ffff73;
+  -moz-border-radius: 8px;
+  -khtml-border-radius: 8px;
+  border-radius: 8px;
+  font-family: arial, verdana, sans-serif;
+  font-weight: bold;
+  width: 40%;
+  text-align: center;
+  color: red;
 }
+
 h4.scodoc {
-   padding-top: 20px;
-   padding-bottom: 0px;
+  padding-top: 20px;
+  padding-bottom: 0px;
 }
 
 tr#erroneous_ue td {
-   color: red;
+  color: red;
 }
 
 /* Export Apogee */
 
 div.apo_csv_infos {
-   margin-bottom: 12px;
+  margin-bottom: 12px;
 }
 
 div.apo_csv_infos span:first-of-type {
-   font-weight: bold;
-   margin-right: 2ex;
+  font-weight: bold;
+  margin-right: 2ex;
 }
 
 div.apo_csv_infos span:last-of-type {
-   font-weight: bold;
-   font-family: "Andale Mono", "Courier";
-   margin-right: 2ex;
+  font-weight: bold;
+  font-family: "Andale Mono", "Courier";
+  margin-right: 2ex;
 }
 
 div.apo_csv_1 {
@@ -2887,41 +3257,41 @@ div.apo_csv_1 {
 }
 
 div.apo_csv_status {
-   margin-top: 20px; 
-   padding-left: 22px;
+  margin-top: 20px;
+  padding-left: 22px;
 }
 
 div.apo_csv_status li {
-   margin: 10px 0;
+  margin: 10px 0;
 }
 
 div.apo_csv_status span {
-   font-family : arial, verdana, sans-serif ;
-   font-weight: bold;
+  font-family: arial, verdana, sans-serif;
+  font-weight: bold;
 }
 
 div.apo_csv_status_nok {
-   background: url(/ScoDoc/static/icons/bullet_warning_img.png) no-repeat left top 0px;
+  background: url(/ScoDoc/static/icons/bullet_warning_img.png) no-repeat left top 0px;
 }
 
 div.apo_csv_status_missing_elems {
-   background: url(/ScoDoc/static/icons/bullet_warning_img.png) no-repeat left top 0px;
-   padding-left: 22px;
+  background: url(/ScoDoc/static/icons/bullet_warning_img.png) no-repeat left top 0px;
+  padding-left: 22px;
 }
 
 div#param_export_res {
-    padding-top: 1em;
+  padding-top: 1em;
 }
 
 div#apo_elements span.apo_elems {
-    font-family: "Andale Mono", "Courier";
-    font-weight: normal;
-    font-size: 9pt;
+  font-family: "Andale Mono", "Courier";
+  font-weight: normal;
+  font-size: 9pt;
 }
 
 div#apo_elements span.apo_elems .missing {
-    color: red;
-    font-weight: normal;
+  color: red;
+  font-weight: normal;
 }
 
 div.apo_csv_jury_nok li {
@@ -2941,12 +3311,13 @@ pre.small_pre_acc {
   color: green;
 }
 
-li.apo_csv_warning, .apo_csv_problems li.apo_csv_warning {
+li.apo_csv_warning,
+.apo_csv_problems li.apo_csv_warning {
   color: darkorange;
 }
 
 .apo_csv_problems li {
- color: red;
+  color: red;
 }
 
 table.apo_maq_list {
@@ -2954,32 +3325,36 @@ table.apo_maq_list {
 }
 
 table.apo_maq_table tr.apo_not_scodoc td:last-of-type {
- color: red;
+  color: red;
 }
+
 table.apo_maq_table th:last-of-type {
- width: 4em;
- text-align: left;
+  width: 4em;
+  text-align: left;
 }
 
 div.apo_csv_list {
   margin-top: 4px;
   padding-left: 5px;
   padding-bottom: 5px;
-  border: 1px dashed rgb(150,10,40);
+  border: 1px dashed rgb(150, 10, 40);
 }
+
 #apo_csv_download {
-   margin-top: 5px;
+  margin-top: 5px;
 }
 
 div.apo_compare_csv_form_but {
   margin-top: 10px;
   margin-bottom: 10px;
 }
+
 div.apo_compare_csv_form_submit input {
   margin-top: 2ex;
   margin-left: 5em;
   font-size: 120%;
 }
+
 .apo_compare_csv div.section .tit {
   margin-top: 10px;
   font-size: 120%;
@@ -2989,47 +3364,56 @@ div.apo_compare_csv_form_submit input {
 .apo_compare_csv div.section .key {
   font-size: 110%;
 }
+
 .apo_compare_csv div.section .val_ok {
   font-size: 110%;
   color: green;
   font-weight: bold;
   font-family: "Courier New", Courier, monospace;
 }
+
 .apo_compare_csv div.section .val_dif {
   font-size: 110%;
   color: red;
   font-weight: bold;
   font-family: "Courier New", Courier, monospace;
 }
+
 .apo_compare_csv div.section .p_ok {
   font-size: 100%;
   font-style: italic;
   color: green;
   margin-left: 4em;
 }
+
 .apo_compare_csv div.section .s_ok {
   font-size: 100%;
   font-style: italic;
   color: green;
 }
+
 .apo_compare_csv div.sec_table {
   margin-bottom: 10px;
   margin-top: 20px;
 }
+
 .apo_compare_csv div.sec_table .gt_table {
   font-size: 100%;
 }
-.apo_compare_csv div.sec_table .gt_table td.val_A, .apo_compare_csv div.sec_table .gt_table td.val_B  {
+
+.apo_compare_csv div.sec_table .gt_table td.val_A,
+.apo_compare_csv div.sec_table .gt_table td.val_B {
   color: red;
   font-weight: bold;
   text-align: center;
 }
+
 .apo_compare_csv div.sec_table .gt_table td.type_res {
   text-align: center;
 }
 
 div.semset_descr {
-  border: 1px dashed rgb(10,150,40);
+  border: 1px dashed rgb(10, 150, 40);
   padding-left: 5px;
 }
 
@@ -3040,9 +3424,11 @@ div.semset_descr p {
 ul.semset_listsems li {
   margin-top: 10px;
 }
+
 ul.semset_listsems li:first-child {
-    margin-top:0;
+  margin-top: 0;
 }
+
 span.box_title {
   font-weight: bold;
   font-size: 115%;
@@ -3053,13 +3439,12 @@ div.apo_csv_status {
   padding-bottom: 5px;
 }
 
-.form_apo_export input[type="submit"]
-{
-    -webkit-appearance: button;
-    font-size:150%;
-    font-weight: bold;
-    color: green;
-    margin: 10px;
+.form_apo_export input[type="submit"] {
+  -webkit-appearance: button;
+  font-size: 150%;
+  font-weight: bold;
+  color: green;
+  margin: 10px;
 }
 
 span.vdi_label {
@@ -3068,58 +3453,67 @@ span.vdi_label {
 
 /* Poursuites edtude PE */
 form#pe_view_sem_recap_form div.pe_template_up {
-    margin-top: 20px;
-    margin-bottom: 30px;
+  margin-top: 20px;
+  margin-bottom: 30px;
 }
 
 /* Editable */
 span.span_apo_edit {
-    border-bottom: 1px dashed #84ae84;
+  border-bottom: 1px dashed #84ae84;
 }
 
 /* Tags */
-.notes_module_list span.sco_tag_edit {    
-    display: none;
+.notes_module_list span.sco_tag_edit {
+  display: none;
 }
+
 span.sco_tag_edit .tag-editor {
-    background-color: rgb(210,210,210);
-    border: 0px;
-    margin-left: 40px;
-    margin-top: 2px;
+  background-color: rgb(210, 210, 210);
+  border: 0px;
+  margin-left: 40px;
+  margin-top: 2px;
 }
 
 span.sco_tag_edit .tag-editor-delete {
-    height: 20px;
+  height: 20px;
 }
 
 /* Autocomplete noms */
 .ui-menu-item {
-    font-family:   "Helvetica Neue",Helvetica,Arial,sans-serif;
-    font-size: 11pt;
+  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+  font-size: 11pt;
 }
 
 div#formsemestre_ext_edit_ue_validations {
   margin-bottom: 2ex;
 }
+
 form.tf_ext_edit_ue_validations table {
   border-collapse: collapse;
   width: 97%;
   margin-left: 1em;
   margin-right: 1em;
 }
-form.tf_ext_edit_ue_validations table th, form.tf_ext_edit_ue_validations table td {
+
+form.tf_ext_edit_ue_validations table th,
+form.tf_ext_edit_ue_validations table td {
   border-bottom: 1px solid rgb(168, 168, 168);
 }
+
 form.tf_ext_edit_ue_validations table th {
   padding-left: 1em;
   padding-right: 1em;
 }
-form.tf_ext_edit_ue_validations table td.tf_field_note, form.tf_ext_edit_ue_validations table td.tf_field_coef {
+
+form.tf_ext_edit_ue_validations table td.tf_field_note,
+form.tf_ext_edit_ue_validations table td.tf_field_coef {
   text-align: center;
 }
+
 form.tf_ext_edit_ue_validations table td.tf_field_note input {
   margin-left: 1em;
 }
+
 span.ext_sem_moy {
   font-weight: bold;
   color: rgb(122, 40, 2);
@@ -3131,102 +3525,144 @@ span.ext_sem_moy {
 table.dataTable tr.odd td {
   background-color: #ecf5f4;
 }
+
 table.dataTable tr.gt_lastrow th {
   text-align: right;
 }
-table.dataTable td.etudinfo, table.dataTable td.group {
+
+table.dataTable td.etudinfo,
+table.dataTable td.group {
   text-align: left;
 }
+
 /* Nouveau tableau recap */
 div.table_recap {
   margin-top: 6px;
 }
+
 div.table_recap table.table_recap {
   width: auto;
 }
+
 table.table_recap tr.selected td {
   border-bottom: 1px solid rgb(248, 0, 33);
   border-top: 1px solid rgb(248, 0, 33);
   background-color: rgb(253, 255, 155);
 }
-table.table_recap tr.selected td:first-child { 
-  border-left: 1px solid rgb(248, 0, 33); 
+
+table.table_recap tr.selected td:first-child {
+  border-left: 1px solid rgb(248, 0, 33);
 }
+
 table.table_recap tr.selected td:last-child {
-  border-right: 1px solid rgb(248, 0, 33); 
+  border-right: 1px solid rgb(248, 0, 33);
 }
+
 table.table_recap tbody td {
   padding-top: 4px !important;
   padding-bottom: 4px !important;
 }
+
 table.table_recap tbody td:hover {
   color: rgb(163, 0, 0);
   text-decoration: dashed underline;
 }
-table.table_recap .identite_court  {
-  white-space:nowrap;
+
+table.table_recap .identite_court {
+  white-space: nowrap;
   text-align: left;
 }
-table.table_recap .rang  {
-  white-space:nowrap;
+
+table.table_recap .rang {
+  white-space: nowrap;
   text-align: right;
 }
-table.table_recap .col_ue, table.table_recap .col_moy_gen, table.table_recap .group {
+
+table.table_recap .col_ue,
+table.table_recap .col_moy_gen,
+table.table_recap .group {
   border-left: 1px solid blue;
 }
+
 table.table_recap .group {
   border-left: 1px dashed rgb(160, 160, 160);
-  white-space:nowrap;
+  white-space: nowrap;
 }
-table.table_recap .admission  {
-  white-space:nowrap;
-  color:rgb(6, 73, 6);
+
+table.table_recap .admission {
+  white-space: nowrap;
+  color: rgb(6, 73, 6);
 }
+
 table.table_recap .admission_first {
   border-left: 1px solid blue;
 }
+
 table.table_recap tbody tr td a:hover {
   color: red;
   text-decoration: underline;
 }
+
 /* noms des etudiants sur recap complet */
-table.table_recap a:link, table.table_recap a:visited {
+table.table_recap a:link,
+table.table_recap a:visited {
   text-decoration: none;
   color: black;
 }
 
-table.table_recap tfoot th, table.table_recap thead th {
+table.table_recap tfoot th,
+table.table_recap thead th {
   text-align: left;
   padding-left: 10px !important;
 }
+
 table.table_recap td.moy_inf {
   font-weight: bold;
-  color: rgb(255,0,0);
+  color: rgb(225, 147, 0);
 }
+
 table.table_recap td.moy_ue_valid {
   font-weight: bold;
-  color: rgb(0,140,0);
+  color: rgb(0, 140, 0);
+}
+
+table.table_recap td.moy_ue_warning {
+  font-weight: bold;
+  color: rgb(255, 0, 0);
+}
+
+table.table_recap td.col_ues_validables {
+  white-space: nowrap;
+  font-weight: bold;
+  font-style: normal !important;
 }
+
 table.table_recap tr.ects td {
   color: rgb(160, 86, 3);
   font-weight: bold;
   border-bottom: 1px solid blue;
 }
+
 table.table_recap tr.coef td {
   font-style: italic;
   color: #9400d3;
 }
-table.table_recap tr.coef td, table.table_recap tr.min td, 
-table.table_recap tr.max td, table.table_recap tr.moy td {
+
+table.table_recap tr.coef td,
+table.table_recap tr.min td,
+table.table_recap tr.max td,
+table.table_recap tr.moy td {
   font-size: 80%;
   padding-top: 3px;
   padding-bottom: 3px;
 }
+
 table.table_recap tr.dem td {
-  color: rgb(100,100,100);
-  font-style: italic; 
+  color: rgb(100, 100, 100);
+  font-style: italic;
 }
+
 table.table_recap tr.def td {
   color: rgb(121, 74, 74);
-  font-style: italic; 
+  font-style: italic;
 }
\ No newline at end of file