diff --git a/app/but/jury_edit_manual.py b/app/but/jury_edit_manual.py
index 704376b8a900a38daa87da3f08eb1bdd29ab9615..beea5e9b9d7cd6a957ddaffef33f40faf880c0d6 100644
--- a/app/but/jury_edit_manual.py
+++ b/app/but/jury_edit_manual.py
@@ -10,6 +10,7 @@ Non spécifique au BUT.
 """
 
 from flask import render_template
+from flask_login import current_user
 import sqlalchemy as sa
 
 from app.models import (
@@ -21,13 +22,13 @@ from app.models import (
     UniteEns,
     ValidationDUT120,
 )
+from app.scodoc.sco_permissions import Permission
 from app.views import ScoData
 
 
 def jury_delete_manual(etud: Identite):
-    """Vue (réservée au chef de dept.)
-    présentant *toutes* les décisions de jury concernant cet étudiant
-    et permettant de les supprimer une à une.
+    """Vue présentant *toutes* les décisions de jury concernant cet étudiant
+    et permettant (si permission) de les supprimer une à une.
     """
     sem_vals = ScolarFormSemestreValidation.query.filter_by(
         etudid=etud.id, ue_id=None
@@ -68,4 +69,5 @@ def jury_delete_manual(etud: Identite):
         annee_but_vals=annee_but_vals,
         sco=ScoData(),
         title=f"Toutes les décisions de jury enregistrées pour {etud.html_link_fiche()}",
+        read_only=not current_user.has_permission(Permission.EtudInscrit),
     )
diff --git a/app/scodoc/sco_page_etud.py b/app/scodoc/sco_page_etud.py
index 6c8b08b2c5e01b839407b8906636bfac28adc121..162c0af892b5a186458e415b6e9bf85aa8f9f30d 100644
--- a/app/scodoc/sco_page_etud.py
+++ b/app/scodoc/sco_page_etud.py
@@ -302,21 +302,26 @@ def fiche_etud(etudid=None):
                 }">Visualiser les compétences BUT</a>
             </span>
             """
-        if current_user.has_permission(Permission.EtudInscrit):
-            info[
-                "link_inscrire_ailleurs"
-            ] = f"""<span class="link_bul_pdf"><a class="stdlink" href="{
+        info["link_inscrire_ailleurs"] = (
+            f"""<span class="link_bul_pdf"><a class="stdlink" href="{
                 url_for("notes.formsemestre_inscription_with_modules_form",
                 scodoc_dept=g.scodoc_dept, etudid=etudid)
                 }">Inscrire à un autre semestre</a></span>
+                """
+            if current_user.has_permission(Permission.EtudInscrit)
+            else ""
+        )
+        can_edit_jury = current_user.has_permission(Permission.EtudInscrit)
+        info[
+            "link_inscrire_ailleurs"
+        ] += f"""
                 <span class="link_bul_pdf"><a class="stdlink" href="{
                 url_for("notes.jury_delete_manual",
-                scodoc_dept=g.scodoc_dept, etudid=etudid)
-                }">Éditer toutes décisions de jury</a></span>
+                scodoc_dept=g.scodoc_dept, etudid=etudid,
+                read_only=not can_edit_jury)
+                }">{'Éditer' if can_edit_jury else 'Détail de'} toutes décisions de jury</a></span>
                 """
 
-        else:
-            info["link_inscrire_ailleurs"] = ""
         info[
             "link_bilan_ects"
         ] = f"""<span class="link_bul_pdf"><a class="stdlink" href="{
diff --git a/app/static/css/jury_delete_manual.css b/app/static/css/jury_delete_manual.css
index 3805c619c648fa7d4ea7db86b6f7613e583b2ba8..478167ebdcb48ad6b722c98ede1e6f079daf8fad 100644
--- a/app/static/css/jury_delete_manual.css
+++ b/app/static/css/jury_delete_manual.css
@@ -1,6 +1,7 @@
-div.jury_decisions_list div {
+div.jury_decisions_list>div {
     font-size: 120%;
     font-weight: bold;
+    margin-top: 16px;
 }
 
 span.parcours {
@@ -20,4 +21,13 @@ div.ue_list_etud_validations div.total_ects {
 div.ue_list_etud_validations ul li.new_semestre,
 div.ue_list_etud_validations ul li:first-child {
     margin-top: 16px;
+}
+
+details {
+    margin-left: 16px;
+}
+
+div.validation-details {
+    margin-left: 32px;
+    margin-bottom: 16px;
 }
\ No newline at end of file
diff --git a/app/templates/jury/jury_delete_manual.j2 b/app/templates/jury/jury_delete_manual.j2
index 7eef807245835b386e188dc7504e432318260434..413d4aee10060f7fc4ab0c7b940fa9de97d7179f 100644
--- a/app/templates/jury/jury_delete_manual.j2
+++ b/app/templates/jury/jury_delete_manual.j2
@@ -12,121 +12,160 @@
 
 <p class="help">
 Cette page liste toutes les décisions de jury connus de ScoDoc concernant cet étudiant
-et permet de les effacer une par une.
+{% if not read_only %}
+    et permet de les effacer une par une.
+{% endif %}
 </p>
+{% if not read_only %}
 <p class="help">
 <b>Attention</b>, il vous appartient de vérifier la cohérence du résultat !
 En principe, <b>l'usage de cette page devrait rester exceptionnel</b>.
 Aucune annulation n'est ici possible (vous devrez re-saisir les décisions via les
 pages de saisie de jury habituelles).
 </p>
+{% endif %}
+
+<div class="scobox">
+
 {% if sem_vals.first() %}
 <div class="jury_decisions_list jury_decisions_sems">
     <div>Décisions de semestres</div>
-    <ul>
         {% for v in sem_vals %}
-            <li>{{v.html()|safe}}
-            <form>
-            <button
-                data-v_id="{{v.id}}" data-type="validation_formsemestre" data-etudid="{{etud.id}}"
-            >effacer</button></form>
-            </li>
+            <details>
+                <summary>{{v.html()|safe}}</summary>
+            <div class="validation-details">
+            {% if not read_only %}
+                <form class="inline-form">
+                <button
+                    data-v_id="{{v.id}}" data-type="validation_formsemestre" data-etudid="{{etud.id}}"
+                >effacer validation</button></form>
+            {% endif %}
+            </div>
+            </details>
         {% endfor %}
-    </ul>
 </div>
 {% endif %}
 
 {% if ue_vals.first() %}
 <div class="jury_decisions_list jury_decisions_ues">
     <div>Décisions d'UEs</div>
-    <ul>
         {% for v in ue_vals %}
-            <li>{{v.html(detail=True)|safe}}
+            <details>
+                <summary>{{v.html(detail=True)|safe}}</summary>
+                <div class="validation-details">
+                <b>UE {{v.ue.acronyme}}</b> en
+                    <a class="discretelink" href="{{
+                    url_for('notes.ue_table', scodoc_dept=g.scodoc_dept,
+                    formation_id=v.ue.formation.id, semestre_idx=v.ue.semestre_idx)
+                    }}">{{v.ue.formation.html()|safe}}</a>
+                {% if v.ue.formation.is_apc() %}
+                    <div>Référentiel :
+                    {{ v.ue.formation.referentiel_competence.get_title()
+                        if v.ue.formation.referentiel_competence else '<em>pas de référentiel</em>' }}
+                    </div>
+                {% endif %}
+                {% if not read_only %}
                 <form class="inline-form">
                     <button data-v_id="{{v.id}}" data-type="validation_ue" data-etudid="{{etud.id}}"
-                    >effacer</button>
+                    >effacer validation d'UE</button>
                 </form>
-            </li>
+                {% endif %}
+                </div>
+            </details>
         {% endfor %}
-    </ul>
 </div>
 {% endif %}
 
 {% if rcue_vals.first() %}
 <div class="jury_decisions_list jury_decisions_rcues">
     <div>Décisions de RCUE (niveaux de compétences)</div>
-    <ul>
         {% for v in rcue_vals %}
-            <li>{{v.html()|safe}}
-            <form>
-            <button data-v_id="{{v.id}}" data-type="validation_rcue" data-etudid="{{etud.id}}"
-            >effacer</button>
-            </form>
-            </li>
+        <details>
+            <summary>{{v.html()|safe}}</summary>
+            <div class="validation-details">
+                {% if not read_only %}
+                <form class="inline-form">
+                <button data-v_id="{{v.id}}" data-type="validation_rcue" data-etudid="{{etud.id}}"
+                >effacer validation RCUE</button>
+                </form>
+                {% endif %}
+            </div>
+        </details>
         {% endfor %}
-    </ul>
 </div>
 {% endif %}
 
 {% if annee_but_vals.first() %}
 <div class="jury_decisions_list jury_decisions_annees_but">
     <div>Décisions d'années BUT</div>
-    <ul>
         {% for v in annee_but_vals %}
-            <li>{{v.html()|safe}}
-            <form>
-            <button data-v_id="{{v.id}}" data-type="validation_annee_but" data-etudid="{{etud.id}}"
-            >effacer</button>
-            </form>
-            </li>
+            <details>
+            <summary>{{v.html()|safe}}</summary>
+            <div class="validation-details">
+                {% if not read_only %}
+                <form class="inline-form">
+                <button data-v_id="{{v.id}}" data-type="validation_annee_but" data-etudid="{{etud.id}}"
+                >effacer décision année</button>
+                </form>
+                {% endif %}
+            </div>
+            </details>
         {% endfor %}
-    </ul>
 </div>
 {% endif %}
 
 {% if dut120_vals.count() %}
 <div class="jury_decisions_list jury_decisions_dut120">
     <div>Diplôme de DUT en 120 ECTS (dans un parcours BUT)</div>
-    <ul>
         {% for v in dut120_vals %}
-            <li>{{v.html()|safe}}
-            <form>
-            <button data-v_id="{{v.id}}" data-type="validation_dut120" data-etudid="{{etud.id}}"
-            >effacer</button>
-            </form>
-            </li>
+            <details>
+            <summary>{{v.html()|safe}}</summary>
+            <div class="validation-details">
+                {% if not read_only %}
+                <form>
+                <button data-v_id="{{v.id}}" data-type="validation_dut120" data-etudid="{{etud.id}}"
+                >effacer diplôme DUT120</button>
+                </form>
+                {% endif %}
+            </div>
+            </details>
         {% endfor %}
-    </ul>
 </div>
 {% endif %}
 
 {% if autorisations.first() %}
 <div class="jury_decisions_list jury_decisions_autorisation_inscription">
     <div>Autorisations d'inscriptions (passages)</div>
-    <ul>
+
         {% for v in autorisations %}
-            <li>{{v.html()|safe}}
-            <form>
-            <button data-v_id="{{v.id}}" data-type="autorisation_inscription" data-etudid="{{etud.id}}"
-            >effacer</button>
+            <details>
+            <summary>{{v.html()|safe}}</summary>
+            <div class="validation-details">
+            {% if not read_only %}
+            <form class="validation-details">
+                <button data-v_id="{{v.id}}" data-type="autorisation_inscription" data-etudid="{{etud.id}}"
+                >effacer autorisation</button>
             </form>
-            </li>
+            {% endif %}
+            </div>
+            </details>
         {% endfor %}
-    </ul>
 </div>
 {% endif %}
 
 {% if not(
     sem_vals.first() or ue_vals.first() or rcue_vals.first()
-    or annee_but_vals.first() or autorisations.first())
+    or annee_but_vals.first() or autorisations.first() or dut120_vals.first() )
 %}
 <div>
     <p class="fontred">aucune décision enregistrée</p>
 </div>
 {% endif %}
 
-<div>
-    <p>retour à la fiche de {{etud.html_link_fiche()|safe}}
+</div>
+
+<div class="scobox">
+    <p>Retour à la fiche de {{etud.html_link_fiche()|safe}}
     </p>
 </div>
 
@@ -136,6 +175,7 @@ pages de saisie de jury habituelles).
 {% block scripts %}
 {{super()}}
 
+{% if not read_only %}
 <script>
 document.addEventListener('DOMContentLoaded', () => {
   const buttons = document.querySelectorAll('.jury_decisions_list button');
@@ -165,4 +205,5 @@ document.addEventListener('DOMContentLoaded', () => {
   });
 });
 </script>
+{% endif %}
 {% endblock %}
diff --git a/app/views/jury_validations.py b/app/views/jury_validations.py
index 3da7823cca61d266b2948488bfada80d403cb7cc..8b5285ec48d6b1484647856e45586f6100659b89 100644
--- a/app/views/jury_validations.py
+++ b/app/views/jury_validations.py
@@ -900,7 +900,7 @@ def erase_decisions_annee_formation(etudid: int, formation_id: int, annee: int):
     methods=["GET", "POST"],
 )
 @scodoc
-@permission_required(Permission.EtudInscrit)
+@permission_required(Permission.ScoView)
 def jury_delete_manual(etudid: int):
     """Efface toute les décisions d'une année pour cet étudiant"""
     etud = Identite.get_etud(etudid)