/* CFA360 V221 — Design system commun, sobre et accessible. */
:root{
  --cfa218-blue-950:#052d53;
  --cfa218-blue-900:#073b6f;
  --cfa218-blue-800:#0b4f88;
  --cfa218-blue-700:#1566a2;
  --cfa218-blue-100:#eaf3fb;
  --cfa218-blue-050:#f5f9fd;
  --cfa218-orange-600:#ed7814;
  --cfa218-orange-500:#ff8a1d;
  --cfa218-green-700:#18734a;
  --cfa218-green-100:#e9f7ef;
  --cfa218-amber-700:#8d5b00;
  --cfa218-amber-100:#fff5d9;
  --cfa218-red-700:#ab2b2b;
  --cfa218-red-100:#ffeded;
  --cfa218-ink:#17324d;
  --cfa218-muted:#5b7188;
  --cfa218-line:#d7e2ec;
  --cfa218-surface:#ffffff;
  --cfa218-canvas:#f3f7fb;
  --cfa218-radius-sm:10px;
  --cfa218-radius:16px;
  --cfa218-radius-lg:24px;
  --cfa218-shadow:0 10px 30px rgba(13,59,99,.09);
  --cfa218-shadow-hover:0 16px 36px rgba(13,59,99,.15);
  --cfa218-focus:0 0 0 4px rgba(255,138,29,.3);
  --cfa218-content:1280px;
}

html[data-cfa360-ui="v221"]{
  color-scheme:light;
  scroll-behavior:smooth;
  -webkit-text-size-adjust:100%;
}

html[data-cfa360-ui="v221"] body{
  color:var(--cfa218-ink);
  background-color:var(--cfa218-canvas);
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

html[data-cfa360-ui="v221"] *,
html[data-cfa360-ui="v221"] *::before,
html[data-cfa360-ui="v221"] *::after{box-sizing:border-box;}

html[data-cfa360-ui="v221"] :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:3px solid var(--cfa218-orange-500) !important;
  outline-offset:3px !important;
  box-shadow:var(--cfa218-focus);
}

html[data-cfa360-ui="v221"] :where(button,input,select,textarea){font:inherit;}
html[data-cfa360-ui="v221"] :where(button,a,summary){-webkit-tap-highlight-color:transparent;}
html[data-cfa360-ui="v221"] :where(button,[role="button"],summary){touch-action:manipulation;}
html[data-cfa360-ui="v221"] :where(img){max-width:100%;}
html[data-cfa360-ui="v221"] :where(p){line-height:1.55;}
html[data-cfa360-ui="v221"] :where(h1,h2,h3,h4){letter-spacing:-.02em;text-wrap:balance;}

.cfa360-skip-v221{
  position:fixed;z-index:100000;left:16px;top:12px;transform:translateY(-160%);
  padding:11px 16px;border-radius:10px;background:#fff;color:var(--cfa218-blue-900);
  font-weight:800;text-decoration:none;box-shadow:var(--cfa218-shadow);
}
.cfa360-skip-v221:focus{transform:translateY(0);}

html[data-cfa360-ui="v221"] :where(.cfa360-topbar,.parent-topbar){
  border-bottom:1px solid rgba(7,59,111,.1);
  box-shadow:0 5px 18px rgba(7,59,111,.07);
}
html[data-cfa360-ui="v221"] :where(.cfa360-topbar,.parent-topbar) a,
html[data-cfa360-ui="v221"] :where(.cfa360-topbar,.parent-topbar) button{min-height:44px;}

html[data-cfa360-ui="v221"] :where(.shell,.parent-shell,.cfa360-role-home,.cfa360-apprenti-home){
  width:min(100%,var(--cfa218-content));
  margin-inline:auto;
}

html[data-cfa360-ui="v221"] :where(.panel,.content-section,.state-panel,.learner-card,.privacy-note,.admin-card,.auth-card){
  border-color:var(--cfa218-line);
  box-shadow:var(--cfa218-shadow);
}

html[data-cfa360-ui="v221"] :where(.panel,.content-section){
  border-radius:var(--cfa218-radius);
  background:var(--cfa218-surface);
}

html[data-cfa360-ui="v221"] :where(.panel-head,.section-heading,.dashboard-header){gap:16px;}
html[data-cfa360-ui="v221"] :where(.panel-subtext,.header-text,.section-heading>p,.small-muted){color:var(--cfa218-muted);}

html[data-cfa360-ui="v221"] :where(
  .primary-btn,.secondary-btn,.admin-top-btn,.role-top-btn,.parent-topbar button,
  button[type="submit"],button[id*="save" i],button[id*="add" i],button[id*="import" i]
){
  min-height:44px;border-radius:var(--cfa218-radius-sm);font-weight:750;
  transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease;
}
html[data-cfa360-ui="v221"] :where(button,a)[aria-busy="true"]{cursor:wait;opacity:.75;}
html[data-cfa360-ui="v221"] :where(button,a)[aria-disabled="true"],
html[data-cfa360-ui="v221"] :where(button:disabled,input:disabled,select:disabled,textarea:disabled){cursor:not-allowed;opacity:.62;}
@media(hover:hover){
  html[data-cfa360-ui="v221"] :where(.primary-btn,.secondary-btn,.admin-top-btn,.role-top-btn,.role-action-card,.apprenti-action-card,.metric-card):hover{
    transform:translateY(-2px);box-shadow:var(--cfa218-shadow-hover);
  }
}

html[data-cfa360-ui="v221"] :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea){
  min-height:44px;border:1px solid #bccddd;border-radius:var(--cfa218-radius-sm);
  background:#fff;color:var(--cfa218-ink);padding:10px 12px;
  transition:border-color .16s ease,box-shadow .16s ease;
}
html[data-cfa360-ui="v221"] :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea):hover{border-color:#8da9c1;}
html[data-cfa360-ui="v221"] :where(input,select,textarea)[aria-invalid="true"]{border-color:var(--cfa218-red-700);background:var(--cfa218-red-100);}
html[data-cfa360-ui="v221"] :where(label){color:var(--cfa218-ink);}

html[data-cfa360-ui="v221"] :where(.message,.inline-message,[role="alert"],[role="status"]){line-height:1.45;}
html[data-cfa360-ui="v221"] :where(.message.error,.error-panel){border-color:#efb0b0;background:var(--cfa218-red-100);color:var(--cfa218-red-700);}
html[data-cfa360-ui="v221"] :where(.message.success){border-color:#a9d9bd;background:var(--cfa218-green-100);color:var(--cfa218-green-700);}

.cfa360-table-scroll-v221{width:100%;overflow:auto;border:1px solid var(--cfa218-line);border-radius:12px;background:#fff;overscroll-behavior-inline:contain;}
html[data-cfa360-ui="v221"] .cfa360-table-scroll-v221 table{width:100%;margin:0;border:0;box-shadow:none;}
html[data-cfa360-ui="v221"] :where(table){border-collapse:separate;border-spacing:0;}
html[data-cfa360-ui="v221"] :where(th){background:#edf4fa;color:var(--cfa218-blue-950);font-size:.82rem;letter-spacing:.01em;text-align:left;}
html[data-cfa360-ui="v221"] :where(th,td){padding:12px 14px;border-bottom:1px solid #e4ebf2;}
html[data-cfa360-ui="v221"] :where(tbody tr:last-child td){border-bottom:0;}
html[data-cfa360-ui="v221"] :where(tbody tr):hover{background:#f8fbfe;}

.cfa360-footer-v221{
  width:min(calc(100% - 32px),var(--cfa218-content));margin:26px auto 14px;padding:16px 18px;
  display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;
  color:#fff;font-size:.82rem;text-align:center;background:rgba(4,65,112,.9);
}
.cfa360-footer-v221 a{color:#fff!important;font-weight:700;text-underline-offset:3px;}

.cfa360-help-dialog-v221{
  width:min(92vw,560px);border:0;border-radius:20px;padding:0;color:var(--cfa218-ink);
  box-shadow:0 30px 90px rgba(3,32,59,.3);
}
.cfa360-help-dialog-v221::backdrop{background:rgba(2,28,52,.62);backdrop-filter:blur(3px);}
.cfa360-help-dialog-v221[open]{display:block;}
.cfa360-help-card-v221{padding:26px;}
.cfa360-help-card-v221 header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px;}
.cfa360-help-card-v221 h2{margin:0;color:var(--cfa218-blue-950);font-size:1.45rem;}
.cfa360-help-card-v221 p{color:var(--cfa218-muted);}
.cfa360-help-list-v221{display:grid;gap:12px;margin:18px 0 22px;padding:0;list-style:none;}
.cfa360-help-list-v221 li{padding:13px 15px;border-radius:12px;background:var(--cfa218-blue-050);border:1px solid var(--cfa218-line);}
.cfa360-dialog-close-v221{border:0;background:#edf3f8;color:var(--cfa218-blue-900);border-radius:9px;padding:8px 12px;font-weight:800;cursor:pointer;}
.cfa360-confirm-actions-v221{display:flex;justify-content:flex-end;gap:10px;margin-top:22px;}
.cfa360-confirm-danger-v221{min-height:44px;border:0;border-radius:10px;padding:10px 16px;background:var(--cfa218-red-700);color:#fff;font-weight:800;cursor:pointer;}

.cfa360-toast-region-v221{position:fixed;z-index:99999;right:18px;bottom:18px;width:min(380px,calc(100vw - 36px));display:grid;gap:10px;pointer-events:none;}
.cfa360-toast-v221{padding:14px 16px;border-radius:12px;background:#fff;border:1px solid var(--cfa218-line);box-shadow:var(--cfa218-shadow-hover);font-weight:700;pointer-events:auto;animation:cfa218ToastIn .2s ease both;}
.cfa360-toast-v221.is-success{border-left:5px solid var(--cfa218-green-700);}
.cfa360-toast-v221.is-error{border-left:5px solid var(--cfa218-red-700);}
@keyframes cfa218ToastIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

.cfa360-quick-actions-v221{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 20px;}
.cfa360-quick-actions-v221.is-single{grid-template-columns:minmax(280px,480px);}
.cfa360-quick-action-v221{display:flex;flex-direction:column;gap:5px;min-height:112px;padding:17px;border:1px solid var(--cfa218-line);border-radius:14px;background:#fff;color:var(--cfa218-ink);text-decoration:none;box-shadow:0 6px 18px rgba(7,59,111,.07);}
.cfa360-quick-action-v221 strong{color:var(--cfa218-blue-900);}
.cfa360-quick-action-v221 small{color:var(--cfa218-muted);line-height:1.35;}
.cfa360-quick-action-v221 span{margin-top:auto;color:var(--cfa218-orange-600);font-weight:900;}

.cfa360-collapsible-v221{margin:0 0 16px;border:1px solid var(--cfa218-line);border-radius:14px;background:#fff;box-shadow:0 6px 18px rgba(7,59,111,.06);overflow:hidden;}
.cfa360-collapsible-v221>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;color:var(--cfa218-blue-950);font-weight:800;cursor:pointer;list-style:none;}
.cfa360-collapsible-v221>summary::-webkit-details-marker{display:none;}
.cfa360-collapsible-v221>summary::after{content:"+";font-size:1.35rem;color:var(--cfa218-orange-600);}
.cfa360-collapsible-v221[open]>summary::after{content:"−";}
.cfa360-collapsible-v221>.panel{margin:0;border:0;border-top:1px solid var(--cfa218-line);border-radius:0;box-shadow:none;}

.cfa360-section-tabs-v221{display:flex;gap:8px;margin:18px 0;padding:6px;border:1px solid var(--cfa218-line);border-radius:14px;background:#eaf1f7;overflow:auto;}
.cfa360-tab-v221{flex:1;min-width:max-content;min-height:44px;border:0;border-radius:10px;background:transparent;color:var(--cfa218-blue-900);padding:10px 16px;font-weight:800;cursor:pointer;}
.cfa360-tab-v221[aria-selected="true"]{background:#fff;color:var(--cfa218-blue-950);box-shadow:0 5px 14px rgba(7,59,111,.12);}
.cfa360-tab-pane-v221[hidden]{display:none !important;}

html[data-cfa360-ui="v221"] :where(.role-action-card,.apprenti-action-card,.metric-card){border-radius:var(--cfa218-radius);}
html[data-cfa360-ui="v221"] :where(.role-action-card,.apprenti-action-card) small{line-height:1.4;}
html[data-cfa360-ui="v221"] :where(.cfa360-profile-icon,.role-action-icon,.apprenti-action-icon,.cfa360-admin-link>span,.admin-wow-action>span,.contact-grid article>span) svg{width:1.4em;height:1.4em;display:block;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}
html[data-cfa360-ui="v221"] :where(.cfa360-profile-icon,.role-action-icon,.apprenti-action-icon){display:grid;place-items:center;}
html[data-cfa360-ui="v221"] label:has(#optRadar),html[data-cfa360-ui="v221"] label:has([data-sync-option="optRadar"]){display:none!important;}

body[data-cfa360-page="index"] #roleGrid{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
body[data-cfa360-page="formateur-dashboard"] .role-action-grid,
body[data-cfa360-page="tuteur-dashboard"] .role-action-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
body[data-cfa360-page^="admin-ufa-"] .dashboard-header{min-height:210px!important;padding-block:28px!important;}
body[data-cfa360-page^="admin-ufa-"] .dashboard-header h2{font-size:clamp(2rem,4vw,3.5rem)!important;}
body[data-cfa360-page="admin-ufa-apprentis"] .dashboard>.panel:has(.info-box){padding:14px 18px!important;}
body[data-cfa360-page="admin-ufa-apprentis"] .info-box{display:flex;gap:22px;flex-wrap:wrap;padding:12px 14px!important;}
body[data-cfa360-page="admin-ufa-apprentis"] .info-box p{margin:0!important;}

html[data-cfa360-ui="v221"] .cfa360-progress-v213{
  --v213-blue:var(--cfa218-blue-900);--v213-sky:#1574b8;--v213-orange:var(--cfa218-orange-600);
  --v213-red:#d84b4b;--v213-amber:#f59a23;--v213-green:#22956b;--v213-grey:#aebdca;
  --v213-ink:var(--cfa218-ink);--v213-muted:var(--cfa218-muted);--v213-line:var(--cfa218-line);
  padding:clamp(19px,2.5vw,30px);border:1px solid var(--cfa218-line);border-radius:20px;
  background:#fff;box-shadow:var(--cfa218-shadow);
}
.cfa360-v221-training-position{margin:16px 0 22px;padding:14px 16px;border:1px solid var(--cfa218-line);border-radius:13px;background:var(--cfa218-blue-050);}
.cfa360-v221-training-position>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--cfa218-blue-950);font-size:.82rem;}
.cfa360-v221-training-position>div:first-child span{font-weight:800;}.cfa360-v221-training-position>div:first-child strong{font-size:.74rem;}
.cfa360-v221-training-track{height:9px;margin-top:10px;border-radius:999px;background:#dce7f0;overflow:hidden;}
.cfa360-v221-training-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cfa218-blue-800),#2a8dca);}
.cfa360-v221-training-position small{display:block;margin-top:7px;color:var(--cfa218-muted);font-size:.67rem;}

/* Compatibilité du composant longitudinal, dont le balisage stable conserve le préfixe V216. */
.cfa360-v216-training-position{margin:16px 0 22px;padding:14px 16px;border:1px solid var(--cfa218-line);border-radius:13px;background:var(--cfa218-blue-050);}
.cfa360-v216-training-position>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--cfa218-blue-950);font-size:.82rem;}
.cfa360-v216-training-position>div:first-child span{font-weight:800;}.cfa360-v216-training-position>div:first-child strong{font-size:.74rem;}
.cfa360-v216-training-track{height:9px;margin-top:10px;border-radius:999px;background:#dce7f0;overflow:hidden;}
.cfa360-v216-training-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cfa218-blue-800),#2a8dca);}
.cfa360-v216-training-position small{display:block;margin-top:7px;color:var(--cfa218-muted);font-size:.67rem;}

@media(max-width:980px){
  .cfa360-quick-actions-v221{grid-template-columns:repeat(2,minmax(0,1fr));}
  body[data-cfa360-page="index"] #roleGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  body[data-cfa360-page="formateur-dashboard"] .role-action-grid,
  body[data-cfa360-page="tuteur-dashboard"] .role-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

@media(max-width:720px){
  :root{--cfa218-radius:14px;--cfa218-radius-lg:18px;}
  html[data-cfa360-ui="v221"] :where(.shell,.parent-shell,.cfa360-role-home,.cfa360-apprenti-home){width:100%;}
  html[data-cfa360-ui="v221"] :where(.dashboard,.parent-shell,.cfa360-role-home,.cfa360-apprenti-home){padding-inline:14px;}
  html[data-cfa360-ui="v221"] :where(.panel,.content-section){padding:17px;}
  html[data-cfa360-ui="v221"] :where(th,td){padding:10px 12px;}
  .cfa360-quick-actions-v221{grid-template-columns:1fr;gap:10px;}
  body[data-cfa360-page="index"] #roleGrid{grid-template-columns:1fr!important;}
  body[data-cfa360-page="formateur-dashboard"] .role-action-grid,
  body[data-cfa360-page="tuteur-dashboard"] .role-action-grid{grid-template-columns:1fr!important;}
  .cfa360-quick-action-v221{min-height:88px;}
  .cfa360-footer-v221{width:calc(100% - 22px);margin-top:18px;}
  .cfa360-help-card-v221{padding:20px;}
  .cfa360-confirm-actions-v221{flex-direction:column-reverse;}
  .cfa360-confirm-actions-v221 button{width:100%;}
  .cfa360-v221-training-position>div:first-child{display:block;}.cfa360-v221-training-position>div:first-child strong{display:block;margin-top:4px;}
  .cfa360-v216-training-position>div:first-child{display:block;}.cfa360-v216-training-position>div:first-child strong{display:block;margin-top:4px;}
}

@media(prefers-reduced-motion:reduce){
  html[data-cfa360-ui="v221"]{scroll-behavior:auto;}
  html[data-cfa360-ui="v221"] *,html[data-cfa360-ui="v221"] *::before,html[data-cfa360-ui="v221"] *::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;}
}

@media print{
  .cfa360-skip-v221,.cfa360-footer-v221,.cfa360-help-dialog-v221,.cfa360-toast-region-v221,.cfa360-section-tabs-v221{display:none !important;}
  html[data-cfa360-ui="v221"] body{background:#fff;}
  html[data-cfa360-ui="v221"] :where(.panel,.content-section,.admin-card){box-shadow:none;}
}


/* CFA360 V221.3 — pied de page juridique universel */
html, body { min-height: 100% !important; }
body { padding-bottom: 58px !important; }
#cfa360-global-footer-v2212 {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 10px 18px calc(10px + env(safe-area-inset-bottom)) !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
  z-index: 2147483000 !important;
  background: rgba(7, 34, 75, .96) !important;
  border-top: 1px solid rgba(255,255,255,.22) !important;
  box-shadow: 0 -6px 24px rgba(0,0,0,.18) !important;
  color: #fff !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  text-align: center !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: none !important;
}
#cfa360-global-footer-v2212 * { pointer-events: auto !important; }
#cfa360-global-footer-v2212 a {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 28px !important;
  padding: 3px 7px !important;
  border-radius: 7px !important;
  color: #fff !important;
  background: rgba(255,255,255,.12) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  font-weight: 800 !important;
  cursor: pointer !important;
}
#cfa360-global-footer-v2212 a:hover,
#cfa360-global-footer-v2212 a:focus-visible {
  background: #fff !important;
  color: #123c78 !important;
  outline: 3px solid #ffb347 !important;
  outline-offset: 2px !important;
}
@media (max-width: 680px) {
  body { padding-bottom: 78px !important; }
  #cfa360-global-footer-v2212 {
    min-height: 64px !important;
    padding: 8px 10px calc(8px + env(safe-area-inset-bottom)) !important;
    font-size: 11px !important;
    gap: 4px 6px !important;
  }
}
@media print {
  body { padding-bottom: 0 !important; }
  #cfa360-global-footer-v2212 { display: none !important; }
}


/* CFA360 V221.4 — harmonisation globale, footer juridique stable et évaluation défigée */
:root{--cfa2214-blue:#003b71;--cfa2214-blue2:#075b9f;--cfa2214-orange:#f28c1b;}
html,body{min-height:100%!important;}
body{padding-bottom:64px!important;}

/* Footer indépendant : les anciens scripts qui réécrivent les balises footer ne peuvent plus le supprimer. */
#cfa360-global-footer-v2212{display:none!important;}
#cfa360-legal-dock-v2214{
 position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:9000!important;
 min-height:50px!important;padding:9px 16px calc(9px + env(safe-area-inset-bottom))!important;
 display:flex!important;align-items:center!important;justify-content:center!important;flex-wrap:wrap!important;gap:6px 9px!important;
 box-sizing:border-box!important;background:rgba(0,59,113,.98)!important;color:#fff!important;
 border-top:1px solid rgba(255,255,255,.2)!important;box-shadow:0 -8px 26px rgba(0,30,70,.18)!important;
 font:700 12.5px/1.35 Arial,Helvetica,sans-serif!important;text-align:center!important;visibility:visible!important;opacity:1!important;
 pointer-events:auto!important;transform:none!important;
}
#cfa360-legal-dock-v2214 a{display:inline-flex!important;align-items:center!important;min-height:30px!important;padding:3px 9px!important;border-radius:999px!important;color:#fff!important;background:rgba(255,255,255,.12)!important;text-decoration:underline!important;text-underline-offset:3px!important;font-weight:800!important;pointer-events:auto!important;}
#cfa360-legal-dock-v2214 a:hover,#cfa360-legal-dock-v2214 a:focus-visible{background:#fff!important;color:var(--cfa2214-blue)!important;outline:3px solid #ffbd62!important;outline-offset:2px!important;}

/* Bandeau commun inspiré de l'espace formateur. */
.cfa360-topbar{background:#fff!important;border-bottom:1px solid #dce7f4!important;box-shadow:0 8px 24px rgba(0,59,113,.08)!important;min-height:72px!important;padding:8px 18px!important;display:flex!important;align-items:center!important;gap:14px!important;position:relative!important;z-index:200!important;}
.cfa360-topbar .cfa360-institution{display:inline-flex!important;align-items:center!important;flex:0 0 auto!important;}
.cfa360-topbar .cfa360-institution img{max-height:48px!important;width:auto!important;object-fit:contain!important;}
.cfa360-header-brand-v2214{display:inline-flex!important;align-items:center!important;min-width:0!important;margin-right:auto!important;text-decoration:none!important;}
.cfa360-header-brand-v2214 img{display:block!important;width:auto!important;height:48px!important;max-width:min(260px,38vw)!important;object-fit:contain!important;}
.cfa360-topbar .role-top-actions{margin-left:auto!important;}

/* Icônes modernes de la page Bienvenue. */
.cfa360-profile-icon.cfa360-modern-icon-v2214{display:grid!important;place-items:center!important;width:58px!important;height:58px!important;border-radius:18px!important;background:linear-gradient(145deg,#eef6ff,#fff)!important;border:1px solid #d7e6f7!important;box-shadow:0 9px 22px rgba(0,59,113,.10)!important;color:var(--cfa2214-blue2)!important;}
.cfa360-profile-icon.cfa360-modern-icon-v2214 svg{width:31px!important;height:31px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
.cfa360-admin-link .cfa360-admin-modern-v2214{display:inline-grid!important;place-items:center!important;width:28px!important;height:28px!important;margin-right:7px!important;border-radius:9px!important;background:#edf5ff!important;color:var(--cfa2214-blue2)!important;vertical-align:middle!important;}
.cfa360-admin-link .cfa360-admin-modern-v2214 svg{width:18px!important;height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;stroke-linecap:round!important;stroke-linejoin:round!important;}

/* Page d'évaluation formateur : restauration du défilement et des commandes. */
html:has(body[data-role="formateur"][data-flow-page="competences"]),
body[data-role="formateur"][data-flow-page="competences"]{height:auto!important;min-height:100%!important;overflow-x:hidden!important;overflow-y:auto!important;touch-action:pan-y!important;-webkit-overflow-scrolling:touch!important;}
body[data-role="formateur"][data-flow-page="competences"] .formateur-competence-shell{height:auto!important;min-height:calc(100vh - 72px)!important;overflow:visible!important;padding-bottom:90px!important;}
body[data-role="formateur"][data-flow-page="competences"] #formateurEvalTopReturnBtn{position:relative!important;z-index:1002!important;pointer-events:auto!important;}
body[data-role="formateur"][data-flow-page="competences"].formateur-eval-page-open-v190{overflow:hidden!important;}
body[data-role="formateur"][data-flow-page="competences"] #formateurEvalModal.formateur-eval-page-v190:not(.auth-hidden){overflow-x:hidden!important;overflow-y:auto!important;touch-action:pan-y!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;z-index:100000!important;}
body[data-role="formateur"][data-flow-page="competences"] #formateurEvalModal .formateur-eval-modal-card{overflow:visible!important;max-height:none!important;}
body[data-role="formateur"][data-flow-page="competences"] #formateurEvalModal .modal-head{position:sticky!important;top:0!important;z-index:20!important;}
body[data-role="formateur"][data-flow-page="competences"] #formateurEvalModal [data-close-formateur-modal]{position:relative!important;z-index:21!important;pointer-events:auto!important;}

@media(max-width:720px){
 body{padding-bottom:82px!important;}
 #cfa360-legal-dock-v2214{min-height:68px!important;padding:7px 9px calc(7px + env(safe-area-inset-bottom))!important;font-size:10.8px!important;gap:3px 6px!important;}
 .cfa360-topbar{min-height:64px!important;padding:7px 10px!important;gap:8px!important;flex-wrap:wrap!important;}
 .cfa360-topbar .cfa360-institution img{max-height:38px!important;}
 .cfa360-header-brand-v2214 img{height:39px!important;max-width:35vw!important;}
 .cfa360-topbar .role-top-actions{width:100%!important;justify-content:flex-end!important;}
}
@media print{#cfa360-legal-dock-v2214{display:none!important;}body{padding-bottom:0!important;}}

