/* Accordions communs aux tableaux de bord hors pages de gestion. */
.stu-page-accordion{display:block!important;padding:0!important;background:var(--cardg)!important;border:1px solid var(--line)!important;border-radius:14px!important;box-shadow:var(--sh)!important;margin-top:10px!important;margin-bottom:8px!important;overflow:hidden!important;transition:border-color .15s,box-shadow .15s}
.stu-page-accordion[open]{border-color:var(--grad-bl-bd)!important;box-shadow:var(--sh2)!important}
.stu-page-accordion>.stu-page-accordion-trigger{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;width:100%;margin:0;padding:13px 15px;border:0;background:transparent;text-align:start;font:inherit;font-size:.93rem;font-weight:800;color:var(--ink2);text-transform:none;letter-spacing:normal;transition:background .15s,color .15s}
.stu-page-accordion>.stu-page-accordion-trigger:focus{outline:0}
.stu-page-accordion>.stu-page-accordion-trigger:focus-visible{outline:2px solid var(--blue);outline-offset:-3px}
.stu-page-accordion>.stu-page-accordion-trigger>.stu-page-accordion-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;border-radius:10px;background:var(--tint-bl);color:var(--tint-k);font-size:1.05rem;transition:.15s}
.stu-page-accordion>.stu-page-accordion-trigger>.stu-page-accordion-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.stu-page-accordion>.stu-page-accordion-trigger>.stu-page-accordion-badge{flex:0 0 auto;margin-inline-start:auto;border-radius:999px;padding:3px 10px;background:var(--surf2);color:var(--ink3);font-size:.74rem;font-weight:800}
.stu-page-accordion>.stu-page-accordion-trigger>.stu-page-accordion-chevron{flex:0 0 auto;margin-inline-start:auto;color:var(--ink3);font-size:.85rem;opacity:.55;transition:transform .2s,opacity .2s,color .2s}
.stu-page-accordion>.stu-page-accordion-trigger>.stu-page-accordion-badge+.stu-page-accordion-chevron{margin-inline-start:0}
.stu-page-accordion[open]>.stu-page-accordion-trigger{color:var(--info2);background:var(--tint-bl2);border-bottom:1px solid var(--grad-bl-bd)}
.stu-page-accordion[open]>.stu-page-accordion-trigger>.stu-page-accordion-icon{background:var(--grad-or2);color:#fff;box-shadow:0 5px 13px rgba(var(--stu-or-rgb,244,125,74),.35)}
.stu-page-accordion[open]>.stu-page-accordion-trigger>.stu-page-accordion-chevron{transform:rotate(180deg);opacity:1;color:var(--info2)}
.stu-page-accordion>.stu-page-accordion-body{display:block;padding:14px 15px 16px;content-visibility:visible;contain:none}
.stu-page-accordion>.stu-page-accordion-body[hidden]{display:none!important}
.stu-page-accordion>.stu-page-accordion-body>.panel:only-child{margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.stu-page-accordion>.stu-page-accordion-body>.ph:first-child:has(>a:only-child),.stu-page-accordion>.stu-page-accordion-body>.th:first-child:has(>a:only-child){justify-content:flex-end;margin-bottom:10px}
.stu-page-accordion-tools{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;flex:0 0 auto;grid-column:1/-1;width:100%;gap:8px;margin:12px 0 4px}
.stu-page-accordion-tools .stu-page-accordion-state{font-size:.75rem;color:var(--ink3);margin-inline-end:auto}
.stu-page-accordion-tools button{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:10px;background:var(--surf);color:var(--ink2);padding:8px 11px;font:inherit;font-size:.78rem;font-weight:800;cursor:pointer;transition:.15s}

@media(hover:hover){
  .stu-page-accordion>.stu-page-accordion-trigger:hover{background:var(--tint-bl3)}
  .stu-page-accordion-tools button:hover{border-color:var(--blue);color:var(--blue-7);background:var(--bl)}
}

@media(max-width:900px){
  .stu-page-accordion-tools{display:none}
  .stu-page-accordion{margin-top:8px!important}
}

@media(max-width:640px){
  .stu-page-accordion>.stu-page-accordion-trigger{padding:12px 13px;gap:10px}
  .stu-page-accordion>.stu-page-accordion-body{padding:12px}
}
