/* Espace organisme 2026 (formation.workdispo.com), maquette « Espace Organisme Formation 2026 », 05/10/2026.
   Sans compilation : feuille et script servis tels quels (public/espace/). Deux coques : sombre (pages publiques,
   paiement, erreurs) et claire (espace connecté, menu latéral sur ordinateur, barre d'onglets sous 1 100 px).
   Les valeurs reprennent celles de la maquette ; les blocs statiques gardent leurs styles en ligne dans les gabarits. */

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: #F4F6FB; color: #4C5772; font-family: 'IBM Plex Sans', Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased; }
body.we-sombre { background: #070B1E; color: #A9B3D6; }
h1, h2, h3, h4 { margin: 0; font-family: 'Space Grotesk', 'IBM Plex Sans', sans-serif; }
p { margin: 0; }
a { color: #2A41E8; text-decoration: none; }
a:hover { color: #1E31C0; }
button, input, select, textarea { font-family: inherit; }
button, a, input, select, textarea { transition: transform .18s cubic-bezier(.2,.7,.3,1), box-shadow .18s cubic-bezier(.2,.7,.3,1), background-color .18s ease, border-color .18s ease, color .16s ease, opacity .18s ease; }
input::placeholder, textarea::placeholder { color: #8A96B0; }
input:focus-visible, select:focus-visible, button:focus-visible, a:focus-visible, textarea:focus-visible, [contenteditable]:focus-visible { outline: 2px solid #7E8EFF; outline-offset: 2px; }
select option { color: #0F1836; background: #FFFFFF; }
[hidden] { display: none !important; }
.we-sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

@keyframes wdRise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
@keyframes wdFade { from { opacity: 0; } to { opacity: 1; } }
@keyframes wdPulse { 0%,100% { box-shadow: 0 0 0 0 rgba(255,184,76,.55); } 50% { box-shadow: 0 0 0 7px rgba(255,184,76,0); } }
@keyframes wdPulseG { 0%,100% { box-shadow: 0 0 0 0 rgba(18,183,106,.5); } 50% { box-shadow: 0 0 0 7px rgba(18,183,106,0); } }
@keyframes wdFloat { 0%,100% { transform: translate(0,0) scale(1); } 50% { transform: translate(40px,30px) scale(1.08); } }
@keyframes wdFloat2 { 0%,100% { transform: translate(0,0); } 50% { transform: translate(-50px,-20px); } }
@keyframes wdSpin { to { transform: rotate(360deg); } }
@keyframes wdOrbit { to { transform: rotate(360deg); } }
@keyframes wdScan { 0% { transform: translateX(-100%); } 100% { transform: translateX(100%); } }
@keyframes wdDraw { from { stroke-dashoffset: 260; } to { stroke-dashoffset: 0; } }
@keyframes wdCheck { from { stroke-dashoffset: 26; } to { stroke-dashoffset: 0; } }
@keyframes wdLogoBob { 0%,100% { transform: translateY(0) rotate(-2deg); } 50% { transform: translateY(-4px) rotate(2deg); } }
@keyframes wdLogoSheen { 0%,60% { transform: translateX(-160%) skewX(-20deg); } 100% { transform: translateX(320%) skewX(-20deg); } }
@keyframes wdSheet { from { transform: translateY(40px); opacity: 0; } to { transform: none; opacity: 1; } }
@keyframes wdSlide { from { transform: translateX(40px); opacity: 0; } to { transform: none; opacity: 1; } }
@keyframes wdRing { 0% { transform: scale(1); opacity: .9; } 100% { transform: scale(1.12); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }

/* ---------- Logo ---------- */
.we-marque { display: flex; align-items: center; gap: 10px; color: #0F1836; flex-shrink: 0; }
.we-marque:hover { color: #0F1836; }
.we-marque-pastille { position: relative; width: 34px; height: 34px; flex-shrink: 0; border-radius: 11px; overflow: hidden; background: linear-gradient(160deg,#4F63FF 0%,#2A41E8 55%,#1E31C0 100%); box-shadow: 0 12px 22px -10px rgba(42,65,232,.7), inset 0 1px 0 rgba(255,255,255,.35); display: flex; align-items: center; justify-content: center; animation: wdLogoBob 5s ease-in-out infinite; }
.we-marque-reflet { position: absolute; top: -30%; bottom: -30%; left: 0; width: 40%; background: linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent); animation: wdLogoSheen 5.2s ease-in-out infinite; }
.we-marque-mots { display: flex; align-items: baseline; gap: 8px; }
.we-marque-nom { display: flex; align-items: baseline; font: 700 19px/1 'Space Grotesk', sans-serif; letter-spacing: -.055em; }
.we-marque-nom span { color: #2A41E8; }
.we-marque-tag { padding: 3px 7px; border-radius: 7px; background: #EEF1FF; font: 600 10px 'IBM Plex Mono', monospace; letter-spacing: .1em; text-transform: uppercase; color: #1E31C0; }

/* ---------- Coque sombre ---------- */
.we-sombre-coque { position: relative; min-height: 100vh; background: #070B1E; overflow-x: clip; color: #A9B3D6; }
.we-sombre-trame { position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px); background-size: 56px 56px; mask-image: radial-gradient(80% 60% at 50% 0%,#000 30%,transparent 80%); -webkit-mask-image: radial-gradient(80% 60% at 50% 0%,#000 30%,transparent 80%); }
.we-sombre-halo1 { position: absolute; top: -220px; left: -160px; width: 620px; height: 620px; border-radius: 50%; pointer-events: none; background: radial-gradient(closest-side,rgba(64,85,240,.55),transparent); filter: blur(10px); animation: wdFloat 16s ease-in-out infinite; }
.we-sombre-halo2 { position: absolute; top: 220px; right: -200px; width: 560px; height: 560px; border-radius: 50%; pointer-events: none; background: radial-gradient(closest-side,rgba(139,92,246,.38),transparent); filter: blur(10px); animation: wdFloat2 19s ease-in-out infinite; }
.we-sombre-entete { position: relative; z-index: 2; display: flex; align-items: center; gap: 14px; max-width: 1240px; margin: 0 auto; padding: 20px 40px; }
.we-sombre .we-marque { color: #FFFFFF; }
.we-sombre-logo { position: relative; width: 36px; height: 36px; flex-shrink: 0; animation: wdLogoBob 5s ease-in-out infinite; }
.we-sombre-logo-cadre { position: absolute; inset: 0; border-radius: 11px; overflow: hidden; padding: 1.5px; background: linear-gradient(160deg,rgba(255,255,255,.75),rgba(255,255,255,.08) 55%,rgba(159,176,255,.5)); box-shadow: 0 14px 26px -10px rgba(42,65,232,.95); }
.we-sombre-logo-tour { position: absolute; left: 50%; top: 50%; width: 200%; height: 200%; margin: -100% 0 0 -100%; background: conic-gradient(from 0deg,transparent 0deg,transparent 210deg,rgba(159,176,255,.85) 285deg,#FFFFFF 318deg,transparent 360deg); animation: wdSpin 3.8s linear infinite; }
.we-sombre-logo-fond { position: relative; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; border-radius: 9.5px; overflow: hidden; background: linear-gradient(160deg,#4F63FF 0%,#2A41E8 55%,#1E31C0 100%); }
.we-sombre .we-marque-nom { font-size: 20px; color: #FFFFFF; }
.we-sombre .we-marque-nom span { color: #9FB0FF; }
.we-sombre .we-marque-tag { padding: 3px 8px; background: rgba(126,142,255,.18); border: 1px solid rgba(126,142,255,.35); font-size: 10.5px; color: #C7CEFF; }
.we-sombre-lien { padding: 10px 12px; font: 500 14px 'IBM Plex Sans', sans-serif; color: #A9B3D6; white-space: nowrap; }
.we-sombre-lien:hover { color: #FFFFFF; }
.we-sombre-lien-fort { padding: 10px 12px; font: 600 14.5px 'Space Grotesk', sans-serif; color: #FFFFFF; white-space: nowrap; }
.we-sombre-lien-fort:hover { color: #9FB0FF; }
.we-sombre-bouton-bord { display: inline-flex; align-items: center; min-height: 40px; padding: 0 14px; border-radius: 12px; border: 1px solid rgba(255,255,255,.18); font: 600 14px 'Space Grotesk', sans-serif; color: #FFFFFF; white-space: nowrap; }
.we-sombre-bouton-bord:hover { color: #FFFFFF; background: rgba(255,255,255,.08); }
.we-attente-puce { display: inline-flex; align-items: center; gap: 9px; min-height: 36px; padding: 0 14px; border-radius: 999px; background: rgba(255,184,76,.12); border: 1px solid rgba(255,184,76,.35); font: 600 13px 'IBM Plex Sans', sans-serif; color: #FFD08A; white-space: nowrap; }
.we-attente-puce > span:first-child { width: 8px; height: 8px; border-radius: 50%; background: #FFB84C; animation: wdPulse 2.2s ease-in-out infinite; }
.we-paiement-sur { display: inline-flex; align-items: center; gap: 8px; font: 500 13px 'IBM Plex Sans', sans-serif; color: #A9B3D6; }
.we-sombre-main { position: relative; z-index: 1; max-width: 1240px; margin: 0 auto; padding: 24px 40px 120px; display: grid; grid-template-columns: minmax(0,1fr); gap: 20px; }
.we-sombre-pied { position: relative; z-index: 1; max-width: 1240px; margin: 0 auto; padding: 0 40px 40px; display: flex; flex-wrap: wrap; gap: 10px 22px; align-items: center; font-size: 13.5px; color: #8F9AC4; }
.we-sombre-pied a { color: #A9B3D6; }
.we-sombre-pied a:hover { color: #FFFFFF; }
.we-sombre-pied-l { flex: 1 1 auto; }

/* Messages (bandeaux) : clair et sombre */
.we-flash { display: flex; align-items: center; gap: 12px; padding: 12px 14px 12px 16px; border-radius: 16px; font: 600 14.5px/1.45 'IBM Plex Sans', sans-serif; animation: wdRise .3s both; }
.we-flash > span { flex: 1; }
.we-flash-x { width: 30px; height: 30px; flex-shrink: 0; border: 0; border-radius: 8px; background: transparent; color: inherit; cursor: pointer; font-size: 14px; }
.we-flash-annuler { min-height: 34px; padding: 0 12px; border-radius: 10px; border: 1px solid currentColor; background: transparent; color: inherit; font: 600 13.5px 'IBM Plex Sans', sans-serif; cursor: pointer; }
.we-flash.est-ok { background: #EAF7F0; border: 1px solid #BFE6D0; color: #0B6B42; }
.we-flash.est-err { background: #FDEFF0; border: 1px solid #F6C9CE; color: #9A1C28; }
.we-flash.est-info { background: #EEF1FF; border: 1px solid #D6DCFF; color: #1E31C0; }
.we-sombre .we-flash.est-ok { background: rgba(18,183,106,.12); border-color: rgba(108,224,168,.35); color: #9AF0C6; }
.we-sombre .we-flash.est-err { background: rgba(255,90,90,.1); border-color: rgba(255,120,120,.35); color: #FFB4B4; }
.we-sombre .we-flash.est-info { background: rgba(126,142,255,.14); border-color: rgba(126,142,255,.35); color: #DDE2FF; }

/* ---------- Coque claire ---------- */
.we-coque { position: relative; min-height: 100vh; background: #F4F6FB; }
.we-entete { position: sticky; top: 0; z-index: 60; height: 68px; min-width: 0; overflow: hidden; display: flex; align-items: center; gap: 14px; padding: 0 24px; background: rgba(255,255,255,.9); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border-bottom: 1px solid #E6EAF4; }
.we-entete-espace { flex: 1; }
.we-acces { flex-shrink: 0; display: inline-flex; align-items: center; gap: 8px; min-height: 36px; padding: 0 12px; border-radius: 999px; font: 600 13px 'IBM Plex Sans', sans-serif; white-space: nowrap; }
.we-acces-point { width: 7px; height: 7px; border-radius: 50%; }
.we-acces.est-actif { background: #EAF8F1; color: #0B7A4B; } .we-acces.est-actif .we-acces-point { background: #12B76A; animation: wdPulseG 2.4s infinite; }
.we-acces.est-sans, .we-acces.est-attente { background: #FFF5E0; color: #8A5A00; } .we-acces.est-sans .we-acces-point, .we-acces.est-attente .we-acces-point { background: #F5A524; }
.we-acces.est-expire { background: #FDEFF0; color: #9A1C28; } .we-acces.est-expire .we-acces-point { background: #D93848; }
.we-acces:hover { filter: brightness(.97); }
.we-acces-court { display: none; }
.we-entete-catalogue { font: 500 14px 'IBM Plex Sans', sans-serif; color: #5A6685; white-space: nowrap; }
.we-entete-catalogue:hover { color: #2A41E8; }
.we-entete-publier { display: inline-flex; align-items: center; gap: 8px; min-height: 42px; padding: 0 16px; border-radius: 12px; background: #0F1836; color: #FFFFFF; font: 600 14px 'Space Grotesk', sans-serif; white-space: nowrap; }
.we-entete-publier:hover { background: #2A41E8; color: #FFFFFF; }
.we-avatar { width: 40px; height: 40px; flex-shrink: 0; border-radius: 50%; background: linear-gradient(160deg,#FFB547,#E07B12); display: flex; align-items: center; justify-content: center; font: 700 13px 'Space Grotesk', sans-serif; color: #FFFFFF; overflow: hidden; }
.we-avatar:hover { color: #FFFFFF; }
.we-avatar img { width: 100%; height: 100%; object-fit: cover; }
.we-cadre { display: flex; align-items: flex-start; }
.we-lateral { position: sticky; top: 68px; flex-shrink: 0; width: 262px; height: calc(100vh - 68px); overflow-y: auto; padding: 16px 12px; background: #0A1030; display: flex; flex-direction: column; gap: 14px; }
.we-nav { display: grid; gap: 2px; }
.we-nav-sec { padding: 14px 12px 6px; font: 500 10.5px 'IBM Plex Mono', monospace; letter-spacing: .12em; text-transform: uppercase; color: #6F7BA8; }
.we-nav-lien { display: flex; align-items: center; gap: 11px; min-height: 42px; padding: 0 12px; border-radius: 12px; font: 500 14.5px 'IBM Plex Sans', sans-serif; color: #AEB7D9; }
.we-nav-lien:hover { background: rgba(255,255,255,.06); color: #FFFFFF; }
.we-nav-lien.est-actif { background: rgba(126,142,255,.16); color: #FFFFFF; box-shadow: inset 0 0 0 1px rgba(126,142,255,.3); }
.we-nav-lien > span { flex: 1; }
.we-nav-visite { margin-top: -6px; min-height: 38px; font-size: 13.5px; color: #8C97BF; border: 1px dashed rgba(255,255,255,.12); }
.we-nav-badge { flex: none !important; min-width: 22px; height: 22px; padding: 0 6px; border-radius: 999px; background: #4F63FF; font: 700 11.5px 'IBM Plex Sans', sans-serif; color: #FFFFFF; display: flex; align-items: center; justify-content: center; }
.we-nav-cadenas { flex: none !important; color: #6F7BA8; display: flex; }
.we-lateral-vide { flex: 1; }
.we-lateral-org { padding: 14px; border-radius: 16px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.08); display: grid; gap: 10px; }
.we-lateral-org-l { display: flex; align-items: center; gap: 10px; }
.we-lateral-org-pastille { width: 36px; height: 36px; flex-shrink: 0; border-radius: 11px; background: linear-gradient(150deg,#FFB547,#E07B12); display: flex; align-items: center; justify-content: center; font: 700 13px 'Space Grotesk', sans-serif; color: #FFFFFF; overflow: hidden; }
.we-lateral-org-pastille img { width: 100%; height: 100%; object-fit: cover; }
.we-lateral-org-t { min-width: 0; display: grid; }
.we-lateral-org-n { font: 600 14px 'Space Grotesk', sans-serif; color: #FFFFFF; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.we-lateral-org-r { font-size: 12.5px; color: #AEB7D9; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.we-lateral-org-q { font-size: 12.5px; color: #AEB7D9; }
.we-lateral-org-q a { color: #FFFFFF; font-weight: 600; }
.we-main { flex: 1; min-width: 0; max-width: 1240px; padding: 28px 32px 90px; display: grid; grid-template-columns: minmax(0,1fr); gap: 18px; align-content: start; }
.we-ecran { display: grid; gap: 18px; min-width: 0; animation: wdRise .35s ease both; }
.we-onglets { display: none; }

/* Barre d'onglets et feuilles (mobile) */
.we-onglets { position: fixed; left: 0; right: 0; bottom: 0; z-index: 70; padding: 8px 10px calc(10px + env(safe-area-inset-bottom)); background: rgba(255,255,255,.95); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border-top: 1px solid #E6EAF4; box-shadow: 0 -14px 30px rgba(16,24,48,.08); grid-template-columns: repeat(5,1fr); align-items: end; }
.we-onglet { display: grid; justify-items: center; gap: 3px; min-height: 48px; padding-top: 4px; font: 600 11px 'IBM Plex Sans', sans-serif; color: #5A6685; border: 0; background: transparent; cursor: pointer; }
.we-onglet.est-actif { color: #2A41E8; }
.we-onglet-ico { position: relative; }
.we-onglet-badge { position: absolute; top: -5px; right: -9px; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 999px; background: #2A41E8; border: 2px solid #FFFFFF; font: 700 10px 'IBM Plex Sans', sans-serif; color: #FFFFFF; display: flex; align-items: center; justify-content: center; }
.we-onglet-publier { justify-self: center; display: grid; justify-items: center; gap: 4px; margin-top: -22px; color: #0F1836; font: 600 11px 'IBM Plex Sans', sans-serif; }
.we-onglet-publier > span:first-child { width: 54px; height: 54px; border-radius: 18px; background: linear-gradient(135deg,#4F63FF,#7B5CFF); display: flex; align-items: center; justify-content: center; color: #FFFFFF; box-shadow: 0 12px 26px rgba(79,99,255,.5); }
.we-voile { position: fixed; inset: 0; z-index: 95; background: rgba(7,11,30,.55); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); animation: wdFade .2s both; }
.we-fenetre { position: fixed; left: 50%; top: 50%; z-index: 96; transform: translate(-50%,-50%); width: min(480px,calc(100% - 32px)); max-height: calc(100% - 32px); overflow-y: auto; padding: 26px; border-radius: 26px; background: #FFFFFF; box-shadow: 0 30px 80px rgba(7,11,30,.4); animation: wdFade .25s both; color: #4C5772; }
.we-feuille { position: fixed; left: 0; right: 0; bottom: 0; z-index: 96; max-height: 88%; overflow-y: auto; padding: 20px 18px 26px; border-radius: 28px 28px 0 0; background: #FFFFFF; box-shadow: 0 -30px 60px rgba(7,11,30,.35); animation: wdSheet .3s cubic-bezier(.2,.8,.2,1) both; max-width: 420px; margin: 0 auto; color: #4C5772; }
.we-fenetre-corps { display: grid; gap: 14px; }
.we-fenetre-ico { width: 52px; height: 52px; border-radius: 16px; display: flex; align-items: center; justify-content: center; }
.we-fenetre-ico.est-rouge { background: #FDEFF0; color: #B4232F; }
.we-fenetre-ico.est-bleu { background: #EEF1FF; color: #2A41E8; }
.we-fenetre h2 { font: 700 22px/1.2 'Space Grotesk', sans-serif; color: #0F1836; }
.we-fenetre p, .we-feuille p { font-size: 15px; line-height: 1.55; }
.we-fenetre-boutons { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
.we-bouton-blanc { min-height: 50px; padding: 0 18px; border-radius: 14px; border: 1px solid #D5DBEA; background: #FFFFFF; color: #0F1836; font: 600 15px 'Space Grotesk', sans-serif; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 8px; }
.we-bouton-blanc:hover { border-color: #AFB9D6; color: #0F1836; }
.we-bouton-rouge { min-height: 50px; padding: 0 18px; border: 0; border-radius: 14px; background: #B4232F; color: #FFFFFF; font: 600 15px 'Space Grotesk', sans-serif; cursor: pointer; }
.we-bouton-rouge:hover { background: #9A1C28; }
.we-bouton-bleu { min-height: 50px; padding: 0 18px; border: 0; border-radius: 14px; background: #2A41E8; color: #FFFFFF; font: 600 15px 'Space Grotesk', sans-serif; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 8px; }
.we-bouton-bleu:hover { background: #1E31C0; color: #FFFFFF; }
.we-menu-nav { display: grid; gap: 2px; }
.we-menu-sec { padding: 12px 10px 4px; font: 500 10.5px 'IBM Plex Mono', monospace; letter-spacing: .12em; text-transform: uppercase; color: #5A6685; }
.we-menu-lien { display: flex; align-items: center; gap: 12px; min-height: 48px; padding: 0 10px; border-radius: 12px; color: #0F1836; font: 500 15.5px 'IBM Plex Sans', sans-serif; }
.we-menu-lien:hover { background: #F4F6FB; color: #0F1836; }
.we-menu-lien > span { flex: 1; }
.we-menu-lien .we-nav-badge { background: #2A41E8; }
.we-menu-catalogue { margin-top: 8px; display: flex; align-items: center; justify-content: center; min-height: 48px; border-radius: 12px; border: 1px solid #E6EAF4; color: #0F1836; font: 600 15px 'Space Grotesk', sans-serif; }
.we-menu-deconnexion { display: flex; align-items: center; justify-content: center; min-height: 48px; color: #5A6685; font: 600 14.5px 'IBM Plex Sans', sans-serif; border: 0; background: transparent; width: 100%; cursor: pointer; }

/* ---------- Composants communs (cartes, têtes de section, pastilles) ---------- */
.we-carte { position: relative; overflow: hidden; isolation: isolate; background: #FFFFFF; border: 1px solid #E6EAF4; border-radius: 26px; padding: 22px; box-shadow: 0 16px 36px rgba(16,24,48,.06); min-width: 0; display: flex; flex-direction: column; gap: 16px; }
.we-carte-halo { position: absolute; z-index: -1; right: -90px; top: -120px; width: 280px; height: 280px; border-radius: 50%; background: radial-gradient(closest-side,rgba(64,85,240,.16),transparent); pointer-events: none; }
.we-tete { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.we-tete-g { flex: 1 1 auto; display: flex; align-items: center; gap: 12px; min-width: 0; }
.we-tete-ico { width: 40px; height: 40px; flex-shrink: 0; border-radius: 13px; background: #EEF1FF; display: flex; align-items: center; justify-content: center; color: #2A41E8; }
.we-tete-t { display: grid; gap: 1px; min-width: 0; }
.we-sur { font: 500 10.5px/1.4 'IBM Plex Mono', monospace; letter-spacing: .12em; text-transform: uppercase; color: #5A6685; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.we-tete-l { display: flex; align-items: center; gap: 8px; min-width: 0; }
.we-tete h2 { font: 600 18px 'Space Grotesk', sans-serif; letter-spacing: -.025em; color: #0F1836; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.we-tout-voir { flex-shrink: 0; white-space: nowrap; display: inline-flex; align-items: center; gap: 6px; min-height: 38px; padding: 0 14px; border-radius: 999px; background: #F1F4FA; font: 600 13.5px 'Space Grotesk', sans-serif; color: #1E31C0; }
.we-tout-voir:hover { background: #E4E9FF; color: #1E31C0; }
.we-nouvelles { flex-shrink: 0; display: inline-flex; align-items: center; gap: 6px; padding: 3px 9px 3px 7px; border-radius: 999px; background: #0A1030; font: 600 11.5px 'Space Grotesk', sans-serif; color: #FFFFFF; white-space: nowrap; }
.we-nouvelles::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: #6CE0A8; }
.we-statut { display: inline-flex; align-items: center; gap: 7px; padding: 4px 9px 4px 7px; border-radius: 999px; font: 600 11px 'IBM Plex Mono', monospace; letter-spacing: .04em; text-transform: uppercase; white-space: nowrap; }
.we-statut::before { content: ''; width: 6px; height: 6px; border-radius: 50%; }
.we-statut.est-vert { background: #EAF8F1; color: #0B7A4B; } .we-statut.est-vert::before { background: #12B76A; }
.we-statut.est-orange { background: #FFF2DC; color: #8A5A00; } .we-statut.est-orange::before { background: #F5A524; }
.we-statut.est-gris { background: #F1F4FA; color: #5A6685; } .we-statut.est-gris::before { background: #8A96B0; }
.we-titre-page { display: grid; gap: 6px; }
.we-titre-page h1 { font: 700 clamp(28px,3.4vw,38px)/1.08 'Space Grotesk', sans-serif; letter-spacing: -.035em; color: #0F1836; text-wrap: balance; }
.we-titre-page p { font-size: 15.5px; line-height: 1.55; color: #4C5772; max-width: 720px; }

/* ---------- Tableau de bord (F6) ---------- */
.we-db-heros { position: relative; overflow: hidden; isolation: isolate; border-radius: 30px; background: radial-gradient(120% 160% at 100% 0%,#2A3BB8 0%,#111A52 40%,#070B1E 100%); padding: clamp(22px,3.4vw,36px); box-shadow: 0 30px 60px rgba(10,16,48,.25); }
.we-db-heros-halo { position: absolute; z-index: -1; top: -160px; right: -120px; width: 460px; height: 460px; border-radius: 50%; background: radial-gradient(closest-side,rgba(123,92,255,.45),transparent); animation: wdFloat 18s ease-in-out infinite; }
.we-db-heros-trame { position: absolute; z-index: -1; inset: 0; background-image: linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px); background-size: 36px 36px; mask-image: linear-gradient(90deg,transparent,#000 60%); -webkit-mask-image: linear-gradient(90deg,transparent,#000 60%); }
.we-db-pastille { justify-self: start; white-space: nowrap; display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px; border-radius: 999px; font: 500 11.5px 'IBM Plex Mono', monospace; letter-spacing: .1em; text-transform: uppercase; background: rgba(18,183,106,.12); border: 1px solid rgba(108,224,168,.3); color: #6CE0A8; }
.we-db-pastille::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: #12B76A; }
.we-db-pastille.est-fini { background: rgba(255,120,120,.12); border-color: rgba(255,150,150,.3); color: #FFB4B4; }
.we-db-pastille.est-fini::before { background: #FF8A8A; }
.we-db-kpis { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,200px),1fr)); gap: 12px; }
.we-kpi { position: relative; overflow: hidden; display: grid; gap: 18px; padding: 18px 18px 20px; border-radius: 24px; background: #FFFFFF; border: 1px solid #E6EAF4; box-shadow: 0 12px 30px -14px rgba(16,24,48,.14); color: #0F1836; transition: transform .3s cubic-bezier(.2,.8,.3,1); }
.we-kpi:hover { transform: translateY(-3px); color: #0F1836; }
.we-kpi.est-sombre { background: radial-gradient(90% 120% at 100% 0%,rgba(91,111,240,.95),transparent 60%),#0A1030; border: 1px solid rgba(126,142,255,.35); box-shadow: 0 22px 44px -16px rgba(42,65,232,.6); color: #FFFFFF; }
.we-kpi-h { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.we-kpi-ico { width: 38px; height: 38px; border-radius: 12px; display: flex; align-items: center; justify-content: center; background: #EEF1FF; color: #2A41E8; }
.we-kpi.est-sombre .we-kpi-ico { background: rgba(255,255,255,.14); color: #FFFFFF; }
.we-kpi-fl { width: 32px; height: 32px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: #F1F4FA; color: #2A41E8; }
.we-kpi.est-sombre .we-kpi-fl { background: #FFFFFF; }
.we-kpi-n { font: 700 44px/.95 'Space Grotesk', sans-serif; letter-spacing: -.05em; color: #0F1836; }
.we-kpi.est-sombre .we-kpi-n { color: #FFFFFF; }
.we-kpi-l { font-size: 14px; font-weight: 500; color: #4C5772; }
.we-kpi.est-sombre .we-kpi-l { color: #D8E1FF; }
.we-db-deux { display: grid; grid-template-columns: minmax(0,1.5fr) minmax(0,1fr); gap: 18px; align-items: start; }
.we-colonne { display: grid; grid-template-columns: minmax(0,1fr); gap: 18px; min-width: 0; }
.we-db-bouton-blanc { display: inline-flex; align-items: center; gap: 10px; min-height: 52px; padding: 0 22px; border-radius: 15px; background: #FFFFFF; color: #0A1030; font: 600 15.5px 'Space Grotesk', sans-serif; white-space: nowrap; box-shadow: 0 14px 34px rgba(0,0,0,.3); }
.we-db-bouton-blanc:hover { color: #2A41E8; transform: translateY(-2px); }
.we-db-bouton-verre { display: inline-flex; align-items: center; gap: 10px; min-height: 52px; padding: 0 20px; border-radius: 15px; border: 1px solid rgba(255,255,255,.22); background: rgba(255,255,255,.06); color: #FFFFFF; font: 600 15.5px 'Space Grotesk', sans-serif; white-space: nowrap; }
.we-db-bouton-verre:hover { background: rgba(255,255,255,.12); color: #FFFFFF; }
.we-db-demandes, .we-db-formations, .we-db-actus { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; min-width: 0; grid-template-columns: minmax(0,1fr); }
.we-db-formations { gap: 8px; }
.we-db-actus { gap: 2px; }
.we-db-demandes li, .we-db-formations li, .we-db-actus li { min-width: 0; }
.we-db-demande { display: flex; gap: 14px; align-items: center; min-width: 0; padding: 10px; border-radius: 18px; border: 1px solid transparent; color: #0F1836; transition: all .2s; }
.we-db-demande:hover { background: #F7F8FD; border-color: #E3E8FB; color: #0F1836; }
.we-db-demande-ini { position: relative; width: 46px; height: 46px; flex-shrink: 0; border-radius: 15px; background: linear-gradient(150deg,#7C8CFF,#2A41E8); box-shadow: 0 1px 0 rgba(255,255,255,.35) inset, 0 10px 20px -6px rgba(42,65,232,.5); display: flex; align-items: center; justify-content: center; font: 700 14px 'Space Grotesk', sans-serif; color: #FFFFFF; }
.we-db-demande-ini > span { position: absolute; right: -3px; top: -3px; width: 13px; height: 13px; border-radius: 50%; background: #12B76A; border: 3px solid #FFFFFF; }
.we-db-demande-t { flex: 1; min-width: 0; display: grid; gap: 2px; }
.we-db-demande-t > span:first-child { font: 600 15px 'Space Grotesk', sans-serif; letter-spacing: -.01em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.we-db-demande-t > span:last-child { font-size: 13px; color: #5A6685; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.we-db-jour { flex-shrink: 0; padding: 4px 9px; border-radius: 8px; background: #F1F4FA; font: 500 11.5px 'IBM Plex Mono', monospace; color: #5A6685; white-space: nowrap; }
.we-db-fleche { width: 34px; height: 34px; flex-shrink: 0; border-radius: 11px; background: #0A1030; color: #FFFFFF; display: flex; align-items: center; justify-content: center; box-shadow: 0 8px 16px -6px rgba(10,16,48,.5); }
.we-db-formation { display: flex; flex-wrap: wrap; gap: 10px 14px; align-items: center; min-width: 0; padding: 14px 14px 14px 16px; border-radius: 18px; background: linear-gradient(180deg,#FAFBFE,#F4F6FC); border: 1px solid #EAEEF7; color: #0F1836; transition: all .25s cubic-bezier(.2,.8,.3,1); }
.we-db-formation:hover { background: #FFFFFF; border-color: #CBD3FF; box-shadow: 0 14px 30px -12px rgba(42,65,232,.28); transform: translateY(-1px); color: #0F1836; }
.we-db-formation-t { flex: 1; min-width: 150px; font: 600 15px 'Space Grotesk', sans-serif; letter-spacing: -.01em; overflow-wrap: anywhere; }
.we-db-formation-d { display: inline-flex; align-items: center; gap: 8px; padding: 5px 6px 5px 12px; border-radius: 999px; background: #EEF1FF; font: 600 13px 'IBM Plex Sans', sans-serif; color: #1E31C0; white-space: nowrap; }
.we-db-formation-d > span { width: 24px; height: 24px; border-radius: 50%; background: #2A41E8; color: #FFFFFF; display: flex; align-items: center; justify-content: center; }
.we-db-acces { position: relative; overflow: hidden; padding: 22px; border-radius: 26px; background: linear-gradient(165deg,#0F1740,#070B1E); color: #FFFFFF; display: grid; gap: 18px; }
.we-db-acces a:hover { color: #2A41E8 !important; }
.we-db-seg { flex: 1; height: 10px; border-radius: 4px; background: rgba(255,255,255,.1); }
.we-db-seg.est-allume { background: #7B8CFF; box-shadow: 0 0 10px #7B8CFF66; }
.we-db-une { position: relative; overflow: hidden; display: grid; gap: 10px; padding: 18px; border-radius: 20px; background: #0A1030; color: #FFFFFF; min-width: 0; }
.we-db-une:hover { transform: translateY(-2px); color: #FFFFFF; }
.we-db-actus a { display: flex; align-items: center; gap: 12px; min-width: 0; padding: 9px 10px; border-radius: 14px; color: #0F1836; }
.we-db-actus a:hover { background: #F4F6FB; color: #1E31C0; }
.we-db-actus a > span:first-child { flex-shrink: 0; width: 46px; font: 500 12px 'IBM Plex Mono', monospace; color: #5A6685; white-space: nowrap; }
.we-db-actus a > span:last-child { flex: 1; min-width: 0; font-size: 14.5px; font-weight: 500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.we-db-guide { position: relative; overflow: hidden; isolation: isolate; border-radius: 30px; background: #0A1030; padding: clamp(22px,3.2vw,34px); box-shadow: 0 30px 60px rgba(10,16,48,.22); }
.we-db-guide-cta { margin-top: 14px; display: inline-flex; align-items: center; gap: 8px; min-height: 46px; padding: 0 18px; border-radius: 12px; background: #FFFFFF; color: #0A1030; font: 600 15px 'Space Grotesk', sans-serif; }
.we-db-guide-cta:hover { color: #2A41E8; }
.we-carte-fo { position: relative; overflow: hidden; isolation: isolate; display: flex; flex-direction: column; gap: 14px; height: 100%; padding: 18px; border-radius: 22px; background: #FFFFFF; border: 1px solid #E6EAF4; box-shadow: 0 1px 0 #FFFFFF inset, 0 12px 30px -16px rgba(16,24,48,.16); color: #0F1836; min-width: 0; }

/* ---------- Mes formations (F7) et bloc « sans accès » ---------- */
.we-fo-heros { position: relative; overflow: hidden; border-radius: 28px; background: #070B1E; padding: clamp(20px,3vw,30px); box-shadow: 0 30px 60px rgba(10,16,48,.2); }
.we-fo-heros-trame { position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px); background-size: 44px 44px; mask-image: linear-gradient(90deg,transparent,#000 70%); -webkit-mask-image: linear-gradient(90deg,transparent,#000 70%); }
.we-fo-heros-halo { position: absolute; top: -180px; right: -120px; width: 480px; height: 480px; border-radius: 50%; pointer-events: none; background: radial-gradient(closest-side,rgba(79,99,255,.55),transparent); animation: wdFloat 18s ease-in-out infinite; }
.we-verre { padding: 16px; border-radius: 18px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1); }
.we-verre.est-vert { background: rgba(18,183,106,.1); border-color: rgba(18,183,106,.3); }
.we-fo-recherche { flex: 1 1 260px; display: flex; align-items: center; gap: 10px; min-height: 50px; padding: 0 16px; border-radius: 15px; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.14); color: #C9D3FF; }
.we-fo-recherche input { flex: 1; min-width: 0; border: 0; background: transparent; font-size: 15px; color: #FFFFFF; outline: none; }
.we-fo-recherche input::placeholder { color: #8F9AC4; }
.we-fo-onglets { display: flex; gap: 4px; padding: 4px; border-radius: 14px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.1); overflow-x: auto; max-width: 100%; }
.we-fo-onglet { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 14px; border: 0; border-radius: 11px; cursor: pointer; white-space: nowrap; font: 600 13.5px 'Space Grotesk', sans-serif; background: transparent; color: #C8CEEA; }
.we-fo-onglet > span { min-width: 22px; height: 22px; padding: 0 6px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; font: 600 11.5px 'IBM Plex Mono', monospace; background: rgba(255,255,255,.1); color: #DDE2FF; }
.we-fo-onglet.est-actif { background: #FFFFFF; color: #0A1030; }
.we-fo-onglet.est-actif > span { background: #EEF1FF; color: #1E31C0; }
.we-fo-ligne { position: relative; overflow: hidden; isolation: isolate; display: flex; flex-wrap: wrap; align-items: center; gap: 14px 22px; padding: 16px 18px 16px 20px; border-radius: 22px; background: #FFFFFF; border: 1px solid #E6EAF4; box-shadow: 0 1px 0 #FFFFFF inset, 0 10px 26px -18px rgba(16,24,48,.3); transition: transform .25s cubic-bezier(.2,.8,.3,1), box-shadow .25s, border-color .25s; animation: wdRise .35s both; min-width: 0; }
.we-fo-ligne:hover { transform: translateY(-2px); border-color: #CBD3FF; box-shadow: 0 20px 40px -18px rgba(42,65,232,.3); }
.we-statut.est-pulse::before { animation: wdPulseG 2.4s infinite; }
.we-puce-gris { display: inline-flex; align-items: center; gap: 5px; padding: 4px 9px; border-radius: 9px; background: #F4F6FB; font: 500 12.5px 'IBM Plex Sans', sans-serif; color: #33405C; white-space: nowrap; }
.we-puce-gris.est-terne { padding: 5px 9px; font-weight: 600; color: #5A6685; }
.we-puce-bleu { padding: 5px 9px; border-radius: 9px; font: 600 12.5px 'IBM Plex Sans', sans-serif; white-space: nowrap; background: #EEF1FF; color: #1E31C0; }
.we-fo-dem { display: inline-flex; align-items: center; gap: 8px; padding: 5px 5px 5px 12px; border-radius: 999px; background: #EEF1FF; font: 600 13px 'IBM Plex Sans', sans-serif; color: #1E31C0; white-space: nowrap; }
.we-fo-dem:hover { background: #E0E6FF; color: #1E31C0; }
.we-fo-dem > span { width: 24px; height: 24px; border-radius: 50%; background: #2A41E8; color: #FFFFFF; display: flex; align-items: center; justify-content: center; }
.we-fo-voir { display: inline-flex; align-items: center; gap: 6px; min-height: 42px; padding: 0 13px; border-radius: 12px; border: 1.5px solid #DCE1EE; background: #FFFFFF; color: #0F1836; font: 600 13.5px 'Space Grotesk', sans-serif; white-space: nowrap; }
.we-fo-voir:hover { border-color: #2A41E8; color: #2A41E8; }
.we-fo-modifier { display: inline-flex; align-items: center; min-height: 42px; padding: 0 16px; border-radius: 12px; background: #0F1836; color: #FFFFFF; font: 600 13.5px 'Space Grotesk', sans-serif; white-space: nowrap; }
.we-fo-modifier:hover { background: #2A41E8; color: #FFFFFF; }
.we-fo-supprimer { width: 42px; height: 42px; flex-shrink: 0; border-radius: 12px; border: 1.5px solid #F1D4D4; background: #FFFFFF; color: #C0282D; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.we-fo-supprimer:hover { background: #FFF1F1; }
.we-fo-aucune { display: grid; justify-items: center; text-align: center; gap: 10px; padding: 40px 22px; border-radius: 26px; background: #FFFFFF; border: 1.5px dashed #C3CCE3; }
.we-sa-panneau { position: relative; overflow: hidden; isolation: isolate; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; padding: clamp(22px,3vw,32px); border-radius: 28px; background: radial-gradient(120% 160% at 100% 0%,#4A33C8 0%,#1A1F6E 40%,#0A1030 100%); color: #C8CEEA; box-shadow: 0 30px 60px rgba(10,16,48,.25); }
/* Accès expiré : le nombre reçu, pas le détail (espace/_expire_nombre.html.twig, 05/10/2026) */
.we-ex-nombre { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; font: 700 26px/1.15 'Space Grotesk', sans-serif; letter-spacing: -.02em; color: #FFFFFF; }
.we-ex-nombre > span { font-size: 56px; line-height: .95; letter-spacing: -.05em; }
.we-sa-bandeau { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; padding: 14px 18px; border-radius: 18px; background: linear-gradient(100deg,#FFF7E6,#FFF2F7); border: 1.5px dashed #F5B94A; }
.we-sa-bandeau-ico { width: 36px; height: 36px; flex-shrink: 0; border-radius: 11px; background: #FFFFFF; display: flex; align-items: center; justify-content: center; color: #B5680A; box-shadow: 0 4px 12px rgba(181,104,10,.15); }
.we-sa-verrou { position: absolute; inset: 0; border: 0; background: linear-gradient(180deg,rgba(244,246,251,0) 0%,rgba(244,246,251,.55) 100%); cursor: pointer; display: flex; align-items: center; justify-content: center; }
.we-sa-verrou > span { display: inline-flex; align-items: center; gap: 10px; min-height: 48px; padding: 0 20px; border-radius: 999px; background: #0A1030; color: #FFFFFF; font: 600 14.5px 'Space Grotesk', sans-serif; box-shadow: 0 14px 34px rgba(10,16,48,.35); }

/* ---------- Demandes d'information (F10) ---------- */
.we-de-onglet { display: inline-flex; align-items: center; white-space: nowrap; gap: 8px; min-height: 42px; padding: 0 14px; border-radius: 999px; cursor: pointer; font: 600 14px 'Space Grotesk', sans-serif; border: 1px solid #E6EAF4; background: #FFFFFF; color: #33405C; }
.we-de-onglet > span { min-width: 22px; height: 22px; padding: 0 6px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; font: 600 11.5px 'IBM Plex Mono', monospace; background: #F1F4FA; }
.we-de-onglet.est-actif { border-color: transparent; background: #0A1030; color: #FFFFFF; }
.we-de-onglet.est-actif > span { background: rgba(255,255,255,.16); }
.we-de-ligne { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 18px; padding: 16px 18px; border-radius: 22px; background: #FFFFFF; border: 1px solid #E6EAF4; box-shadow: 0 10px 26px -18px rgba(16,24,48,.3); animation: wdRise .35s both; min-width: 0; }
.we-de-ligne.est-nouvelle { border-color: #FFE1A8; }
.we-de-ini { position: relative; width: 46px; height: 46px; flex-shrink: 0; border-radius: 15px; background: linear-gradient(150deg,#7C8CFF,#2A41E8); display: flex; align-items: center; justify-content: center; font: 700 14px 'Space Grotesk', sans-serif; color: #FFFFFF; }
.we-de-ini > span { position: absolute; right: -3px; top: -3px; width: 13px; height: 13px; border-radius: 50%; background: #F5A524; border: 3px solid #FFFFFF; }
.we-de-puce { white-space: nowrap; padding: 3px 9px; border-radius: 999px; font: 600 11.5px 'IBM Plex Sans', sans-serif; background: #FFF2DC; color: #8A5A00; }
.we-de-puce.est-vue { background: #F1F4FA; color: #5A6685; }
.we-de-tel { display: inline-flex; align-items: center; gap: 10px; min-height: 46px; padding: 0 16px; border-radius: 14px; background: #0A1030; color: #FFFFFF; font: 600 15px 'IBM Plex Mono', monospace; white-space: nowrap; }
.we-de-tel:hover { background: #2A41E8; color: #FFFFFF; }
.we-de-afficher { display: inline-flex; align-items: center; gap: 8px; min-height: 46px; padding: 0 16px; border: 0; border-radius: 14px; background: linear-gradient(135deg,#4F63FF,#7B5CFF); color: #FFFFFF; font: 600 14.5px 'Space Grotesk', sans-serif; cursor: pointer; box-shadow: 0 10px 22px -8px rgba(79,99,255,.7); white-space: nowrap; }
.we-de-afficher:hover { transform: translateY(-1px); }

/* ---------- Profil de l'organisme (F11) ---------- */
.we-pf-logo-heros { width: 76px; height: 76px; flex-shrink: 0; border-radius: 24px; overflow: hidden; background: linear-gradient(150deg,#FFB547,#E07B12); box-shadow: 0 1px 0 rgba(255,255,255,.35) inset, 0 18px 36px -12px rgba(224,123,18,.7); display: flex; align-items: center; justify-content: center; font: 700 26px 'Space Grotesk', sans-serif; color: #FFFFFF; }
.we-pf-logo-heros img, .we-pf-logo img { width: 100%; height: 100%; object-fit: cover; border-radius: inherit; background: #FFFFFF; }
.we-pf-public { display: inline-flex; align-items: center; gap: 6px; font: 600 13px 'IBM Plex Sans', sans-serif; color: #C7CEFF; white-space: nowrap; }
.we-pf-public:hover { color: #FFFFFF; }
.we-pf-manquants { position: relative; margin-top: 18px; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding-top: 16px; border-top: 1px solid rgba(255,255,255,.1); }
.we-pf-manquants[hidden] { display: none; }
.we-pf-manquant { display: inline-flex; align-items: center; gap: 7px; padding: 6px 11px; border-radius: 999px; border: 1px dashed rgba(255,184,76,.6); background: rgba(255,184,76,.1); font: 600 12.5px 'IBM Plex Sans', sans-serif; color: #FFD08A; cursor: pointer; }
.we-pf-manquant:hover { background: rgba(255,184,76,.2); }
.we-pf-deux { display: grid; grid-template-columns: 280px minmax(0,1fr); gap: 18px; align-items: start; }
.we-pf-cote { position: sticky; top: 90px; display: grid; gap: 14px; }
.we-pf-depot { position: relative; display: grid; justify-items: center; gap: 12px; padding: 22px 14px; border-radius: 20px; border: 2px dashed #C9D0E3; background: radial-gradient(80% 60% at 50% 0%,#F2F4FF,#FAFBFF); text-align: center; cursor: pointer; }
.we-pf-depot:hover, .we-pf-depot.est-survol { border-color: #7E8EFF; background: #F2F4FF; }
.we-pf-logo { position: relative; width: 92px; height: 92px; border-radius: 26px; background: linear-gradient(150deg,#FFB547,#E07B12); display: flex; align-items: center; justify-content: center; font: 700 30px 'Space Grotesk', sans-serif; color: #FFFFFF; box-shadow: 0 18px 36px -14px rgba(224,123,18,.7); }
.we-pf-logo-plus { position: absolute; right: -6px; bottom: -6px; width: 32px; height: 32px; border-radius: 50%; background: #0F1836; border: 3px solid #FFFFFF; color: #FFFFFF; display: flex; align-items: center; justify-content: center; }
.we-pf-nav { padding: 8px; border-radius: 24px; background: #FFFFFF; border: 1px solid #E6EAF4; display: grid; gap: 2px; }
.we-pf-nav-lien { display: flex; align-items: center; gap: 12px; width: 100%; padding: 10px; border: 0; border-radius: 14px; background: transparent; cursor: pointer; text-align: left; font-family: inherit; }
.we-pf-nav-lien:hover { background: #F4F6FB; }
.we-pf-nav-n { width: 30px; height: 30px; flex-shrink: 0; border-radius: 10px; display: flex; align-items: center; justify-content: center; font: 600 11.5px 'IBM Plex Mono', monospace; background: #0F1836; color: #FFFFFF; }
.we-pf-nav-n.est-ok { background: #12B76A; }
.we-pf-nav-barre { display: block; height: 100%; width: 0; border-radius: 999px; background: linear-gradient(90deg,#4F63FF,#9B7CFF); transition: width .4s; }
.we-pf-nav-barre.est-ok { background: #12B76A; }
.we-pf-section { position: relative; padding: clamp(18px,2.4vw,26px); border-radius: 26px; background: #FFFFFF; border: 1px solid #E6EAF4; box-shadow: 0 1px 2px rgba(16,24,48,.04); display: grid; gap: 20px; min-width: 0; scroll-margin-top: 90px; }
.we-pf-compte { flex-shrink: 0; padding: 4px 10px; border-radius: 999px; font: 600 12px 'IBM Plex Mono', monospace; white-space: nowrap; background: #F1F4FA; color: #5A6685; }
.we-pf-compte.est-ok { background: #EAF8F1; color: #0B7A4B; }
.we-pf-siren-ok { display: inline-flex; align-items: center; gap: 5px; padding: 3px 10px; border-radius: 999px; background: #EAF8F1; font: 600 11.5px 'IBM Plex Sans', sans-serif; color: #0B7A4B; }
.we-pf-siren-n { padding: 3px 10px; border-radius: 999px; background: #FFF5E0; font: 600 11.5px 'IBM Plex Mono', monospace; color: #8A5A00; }
.we-pf-nombre { display: grid; gap: 10px; padding: 16px; border-radius: 18px; background: linear-gradient(180deg,#FAFBFE,#F4F6FC); border: 1px solid #EAEEF7; min-width: 0; }
.we-pf-pas { width: 40px; height: 40px; flex-shrink: 0; border-radius: 12px; border: 1.5px solid #DCE1EE; background: #FFFFFF; color: #0F1836; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.we-pf-pas:hover { border-color: #2A41E8; color: #2A41E8; }
.we-pf-nombre-v { flex: 1 1 0; width: 0; min-width: 0; height: 44px; border: 0; background: transparent; text-align: center; font: 700 28px 'Space Grotesk', sans-serif; letter-spacing: -.03em; color: #0F1836; outline: none; }
.we-pf-nombre-v:focus { box-shadow: inset 0 -2px 0 #4F63FF; }
.we-pf-nombre.est-erreur { border-color: #E5484D; background: #FFF7F8; }
.we-pf-barre { position: sticky; bottom: 12px; z-index: 5; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 10px 10px 18px; border-radius: 20px; background: rgba(10,16,48,.94); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); box-shadow: 0 20px 40px -16px rgba(10,16,48,.5); }
.we-pf-point { width: 8px; height: 8px; flex-shrink: 0; border-radius: 50%; background: #FFB84C; }
.we-pf-point.est-ok { background: #12B76A; animation: wdPulseG 2.4s infinite; }
.we-pf-envoyer { display: inline-flex; align-items: center; gap: 10px; min-height: 48px; padding: 0 22px; border: 0; border-radius: 14px; background: linear-gradient(135deg,#4F63FF,#7B5CFF); color: #FFFFFF; font: 600 15px 'Space Grotesk', sans-serif; cursor: pointer; box-shadow: 0 10px 26px rgba(79,99,255,.45); }
.we-pf-envoyer:hover { transform: translateY(-1px); }
.we-pf-envoyer[disabled] { opacity: .7; cursor: progress; }
@media (max-width: 1099px) { .we-pf-deux { grid-template-columns: minmax(0,1fr); gap: 16px; } .we-pf-cote { position: static; } .we-pf-nav { display: none; } .we-pf-barre { bottom: 96px; } }

/* ---------- Formulaires : champs, tuiles, choix multiples, éditeur ---------- */
.we-champ { position: relative; display: grid; gap: 8px; min-width: 0; }
.we-champ-tete { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; }
.we-champ-l { font: 600 13.5px 'Space Grotesk', sans-serif; color: #0F1836; }
.we-requis { color: #E5484D; }
.we-champ-err { display: inline-flex; align-items: center; gap: 5px; padding: 3px 10px; border-radius: 999px; background: #FFF1F1; border: 1px solid #F6CACA; font: 600 11.5px 'IBM Plex Sans', sans-serif; color: #C0282D; animation: wdFade .2s both; }
.we-champ-compte { margin-left: auto; font: 500 12px 'IBM Plex Mono', monospace; color: #8A96B0; }
.we-saisie { width: 100%; min-width: 0; min-height: 50px; padding: 0 14px; border-radius: 14px; border: 1.5px solid #DCE1EE; background: #FAFBFF; font-size: 15px; color: #0F1836; outline: none; transition: border-color .2s, background .2s; font-family: 'IBM Plex Sans', sans-serif; }
.we-saisie:focus { border-color: #4F63FF; background: #FFFFFF; }
.we-saisie.est-erreur, .we-champ.est-erreur .we-saisie { border-color: #E5484D; background: #FFF7F8; }
textarea.we-saisie { min-height: 140px; padding: 14px 16px; line-height: 1.55; resize: vertical; }
.we-saisie-nom { min-height: 56px; font: 600 17px 'Space Grotesk', sans-serif; }
.we-saisie-prix { padding-right: 38px; font-family: 'IBM Plex Mono', monospace; }
.we-tuiles { display: grid; grid-template-columns: repeat(auto-fill,minmax(min(100%,150px),1fr)); gap: 10px; }
.we-tuiles.est-larges { grid-template-columns: repeat(auto-fill,minmax(min(100%,170px),1fr)); }
.we-tuiles.est-demarrage { grid-template-columns: repeat(auto-fill,minmax(min(100%,200px),1fr)); }
.we-tuile { position: relative; display: grid; align-content: start; gap: 8px; padding: 14px 14px 16px; border-radius: 16px; cursor: pointer; text-align: left; transition: all .2s; border: 1.5px solid #E6EAF4; background: #FFFFFF; font-family: inherit; }
.we-tuile:hover { border-color: #CBD3FF; }
.we-tuile.est-erreur { border-color: #F1C4C4; background: #FFF7F8; }
.we-tuile[aria-pressed="true"] { border-color: #2A41E8; background: linear-gradient(180deg,#F5F7FF,#EEF1FF); box-shadow: 0 12px 26px -14px rgba(42,65,232,.6); }
.we-tuile-ico { width: 38px; height: 38px; border-radius: 12px; display: flex; align-items: center; justify-content: center; background: #F1F4FA; color: #2A41E8; }
.we-tuile[aria-pressed="true"] .we-tuile-ico { background: linear-gradient(135deg,#4F63FF,#7B5CFF); color: #FFFFFF; }
.we-tuile-l { font: 600 14.5px 'Space Grotesk', sans-serif; color: #0F1836; }
.we-tuile-d { font-size: 12.5px; line-height: 1.4; color: #5A6685; }
.we-tuile-coche { position: absolute; top: 12px; right: 12px; width: 20px; height: 20px; border-radius: 50%; display: flex; align-items: center; justify-content: center; border: 1.5px solid #C4CBDD; color: transparent; }
.we-tuile.est-multi .we-tuile-coche { border-radius: 7px; }
.we-tuile[aria-pressed="true"] .we-tuile-coche { border: 0; background: #2A41E8; color: #FFFFFF; }
.we-choix { position: relative; min-width: 0; }
.we-choix-boite { position: relative; z-index: 1; display: flex; flex-wrap: wrap; align-items: center; gap: 6px; min-height: 50px; padding: 7px 40px 7px 10px; border-radius: 14px; cursor: text; border: 1.5px solid #DCE1EE; background: #FAFBFF; transition: border-color .2s, box-shadow .2s; }
.we-choix.est-ouvert .we-choix-boite { z-index: 31; border-color: #4F63FF; background: #FFFFFF; box-shadow: 0 0 0 4px rgba(79,99,255,.12); }
.we-choix.est-erreur .we-choix-boite { border-color: #E5484D; background: #FFF7F8; }
.we-choix-q { flex: 1; min-width: 140px; min-height: 34px; border: 0; outline: none; background: transparent; font-size: 15px; color: #0F1836; }
.we-choix-chevron { position: absolute; right: 12px; top: 50%; display: flex; color: #5A6685; transition: transform .2s; transform: translateY(-50%); }
.we-choix.est-ouvert .we-choix-chevron { transform: translateY(-50%) rotate(180deg); }
.we-choix-etiquette { display: inline-flex; align-items: center; gap: 6px; max-width: 100%; padding: 5px 6px 5px 11px; border-radius: 10px; background: #EEF1FF; border: 1px solid #DCE2FF; font: 600 13px 'IBM Plex Sans', sans-serif; color: #1E31C0; white-space: nowrap; animation: wdFade .2s both; }
.we-choix-etiquette > span { overflow: hidden; text-overflow: ellipsis; }
.we-choix-etiquette button { width: 20px; height: 20px; flex-shrink: 0; border: 0; border-radius: 6px; background: rgba(42,65,232,.12); color: #1E31C0; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.we-choix-etiquette button:hover { background: #2A41E8; color: #FFFFFF; }
.we-choix-liste { position: absolute; top: calc(100% + 6px); left: 0; right: 0; z-index: 32; padding: 6px; border-radius: 16px; background: #FFFFFF; border: 1px solid #DCE1EE; box-shadow: 0 24px 50px rgba(16,24,48,.18); display: grid; gap: 1px; max-height: 300px; overflow-y: auto; animation: wdSheet .18s both; }
.we-choix-tete { padding: 6px 10px 4px; font: 500 10.5px 'IBM Plex Mono', monospace; letter-spacing: .12em; text-transform: uppercase; color: #8A96B0; }
.we-choix-option { display: flex; align-items: center; gap: 10px; width: 100%; padding: 9px 10px; border: 0; border-radius: 10px; cursor: pointer; text-align: left; font: 500 14.5px 'IBM Plex Sans', sans-serif; color: #0F1836; background: transparent; }
.we-choix-option:hover, .we-choix-option.est-survol { background: #F4F6FB; }
.we-choix-option[aria-selected="true"] { background: #F2F4FF; }
.we-choix-coche { width: 18px; height: 18px; flex-shrink: 0; border-radius: 6px; display: flex; align-items: center; justify-content: center; border: 1.5px solid #C4CBDD; color: transparent; }
.we-choix-option[aria-selected="true"] .we-choix-coche { border: 0; background: #2A41E8; color: #FFFFFF; }
.we-choix-cp { min-width: 52px; padding: 3px 7px; border-radius: 7px; background: #EEF1FF; font: 500 12px 'IBM Plex Mono', monospace; color: #2A41E8; text-align: center; }
.we-choix-option > span:last-child { flex: 1; min-width: 0; }
.we-choix-vide { padding: 14px 10px; font-size: 14px; color: #5A6685; }
.we-choix-ajout { display: flex; align-items: center; gap: 10px; width: 100%; padding: 10px; border: 0; border-top: 1px solid #EEF1F8; border-radius: 10px; background: transparent; cursor: pointer; text-align: left; font: 600 14px 'IBM Plex Sans', sans-serif; color: #2A41E8; }
.we-choix-ajout:hover { background: #F2F4FF; }
.we-editeur { border-radius: 16px; overflow: hidden; background: #FFFFFF; border: 1.5px solid #DCE1EE; }
.we-editeur.est-erreur { border-color: #E5484D; }
.we-editeur-outils { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; padding: 8px; border-bottom: 1px solid #EEF1F8; background: #FAFBFF; }
.we-editeur-bouton { width: 34px; height: 34px; border: 0; border-radius: 9px; background: transparent; color: #33405C; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.we-editeur-bouton:hover { background: #EEF1FF; color: #1E31C0; }
.we-editeur-sep { width: 1px; height: 22px; margin: 0 4px; background: #DCE1EE; }
.we-editeur-zone { padding: 14px 18px; font-size: 15px; line-height: 1.65; color: #0F1836; outline: none; overflow-wrap: anywhere; }
.we-editeur-zone:empty::before { content: attr(data-placeholder); color: #8A96B0; pointer-events: none; }
.we-editeur-zone h3 { margin: 6px 0; font: 600 16.5px 'Space Grotesk', sans-serif; color: #0F1836; }
.we-editeur-zone p { margin: 0 0 6px; }
.we-editeur-zone ul, .we-editeur-zone ol { margin: 4px 0; padding-left: 22px; }

/* ---------- Publier une formation (F8 · F9) ---------- */
.we-pub { display: grid; gap: 18px; }
.we-pub-retour { justify-self: start; display: inline-flex; align-items: center; gap: 8px; font-size: 13.5px; font-weight: 600; color: #A9B3D6; white-space: nowrap; }
.we-pub-retour:hover { color: #FFFFFF; }
.we-pub-direct { margin-top: 6px; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; padding: 10px 14px; border-radius: 16px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); min-width: 0; }
.we-pub-puce { padding: 3px 10px; border-radius: 999px; background: rgba(126,142,255,.18); border: 1px solid rgba(126,142,255,.3); font: 600 12px 'IBM Plex Sans', sans-serif; color: #DDE2FF; white-space: nowrap; }
.we-pub-barre { display: block; height: 100%; width: 0; border-radius: 999px; background: linear-gradient(90deg,#4F63FF,#9B7CFF); box-shadow: 0 0 14px rgba(126,142,255,.7); transition: width .4s cubic-bezier(.2,.8,.2,1); }
.we-pub-deux { display: grid; grid-template-columns: minmax(0,1fr); gap: 18px; }
.we-pub-cote { display: grid; gap: 14px; align-content: start; }
@media (min-width: 1320px) { .we-pub-deux { grid-template-columns: minmax(0,1fr) 360px; align-items: start; } .we-pub-cote { position: sticky; top: 90px; } }
.we-pub-bloc { padding: clamp(18px,2.4vw,26px); border-radius: 26px; background: #FFFFFF; border: 1px solid #E6EAF4; display: grid; gap: 20px; min-width: 0; }
.we-pub-bloc-tete { display: flex; gap: 12px; align-items: center; }
.we-pub-bloc-ico { width: 42px; height: 42px; flex-shrink: 0; border-radius: 13px; background: linear-gradient(160deg,#EEF1FF,#E4E0FF); display: flex; align-items: center; justify-content: center; color: #2A41E8; }
.we-pub-lieux { display: grid; gap: 14px; padding: 16px; border-radius: 18px; background: #F7F8FC; animation: wdRise .25s both; }
.we-pub-tuile-haut { padding: 10px; border-radius: 12px; background: rgba(255,255,255,.05); display: grid; gap: 2px; min-width: 0; }
.we-pub-tuile-haut > span:first-child { font: 500 9.5px 'IBM Plex Mono', monospace; text-transform: uppercase; color: #9FB0FF; }
.we-pub-tuile-haut > span:last-child { font: 600 13.5px 'Space Grotesk', sans-serif; color: #FFFFFF; overflow-wrap: anywhere; }
.we-pub-objectif { display: flex; gap: 8px; font-size: 13.5px; line-height: 1.45; color: #DDE2F5; overflow-wrap: anywhere; }
.we-pub-requis { display: inline-flex; align-items: center; gap: 6px; padding: 2px 0; border: 0; background: transparent; cursor: pointer; font: 500 13px 'IBM Plex Sans', sans-serif; color: #DDE2F5; }
.we-pub-requis:hover { color: #FFFFFF; }
.we-pub-requis-rond { width: 12px; height: 12px; border-radius: 50%; border: 1.5px dashed #8A96B0; }
.we-pub-requis.est-fait .we-pub-requis-rond { display: none; }
.we-pub-requis.est-fait svg { display: block; }
.we-pub-envoyer { display: inline-flex; justify-content: center; align-items: center; gap: 10px; min-height: 54px; border: 0; border-radius: 15px; background: linear-gradient(135deg,#4F63FF,#7B5CFF); color: #FFFFFF; font: 600 16px 'Space Grotesk', sans-serif; cursor: pointer; box-shadow: 0 14px 34px rgba(79,99,255,.45); }
.we-pub-envoyer:hover { transform: translateY(-2px); }
.we-pub-envoyer[disabled] { opacity: .7; cursor: progress; transform: none; }
.we-pub-retirer { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 16px; border-radius: 12px; border: 1.5px solid #F1C4C4; background: #FFFFFF; color: #C0282D; font: 600 14px 'Space Grotesk', sans-serif; cursor: pointer; white-space: nowrap; }
.we-pub-retirer:hover { background: #FFF1F1; }
.we-pub-fait { position: relative; overflow: hidden; isolation: isolate; display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,320px),1fr)); gap: 28px; align-items: center; padding: clamp(24px,3.6vw,40px); border-radius: 32px; background: radial-gradient(120% 160% at 100% 0%,#2A3BB8 0%,#111A52 40%,#070B1E 100%); box-shadow: 0 30px 60px rgba(10,16,48,.25); }
.we-pub-fait[hidden] { display: none; }

/* Visite guidée */
.we-visite-accueil { position: fixed; inset: 0; z-index: 160; background: rgba(7,11,30,.62); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); display: flex; align-items: center; justify-content: center; padding: 16px; animation: wdFade .25s both; }
.we-visite-accueil[hidden] { display: none; }
.we-visite-accueil-boite { position: relative; overflow: hidden; width: min(520px,100%); max-height: calc(100% - 16px); overflow-y: auto; padding: clamp(22px,4vw,34px); border-radius: 28px; background: #0A1030; border: 1px solid rgba(255,255,255,.12); box-shadow: 0 40px 100px rgba(0,0,0,.5); animation: wdRise .4s both; }
.we-visite-x { position: absolute; top: 14px; right: 14px; z-index: 2; width: 38px; height: 38px; border-radius: 12px; border: 1px solid rgba(255,255,255,.14); background: rgba(255,255,255,.04); color: #C8CEEA; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.we-visite-x:hover { color: #FFFFFF; background: rgba(255,255,255,.1); }
.we-visite-commencer { display: inline-flex; justify-content: center; align-items: center; gap: 10px; min-height: 54px; border: 0; border-radius: 14px; background: linear-gradient(135deg,#4F63FF,#7B5CFF); color: #FFFFFF; font: 600 16px 'Space Grotesk', sans-serif; cursor: pointer; box-shadow: 0 14px 34px rgba(79,99,255,.45); }
.we-visite-commencer:hover { transform: translateY(-2px); }
.we-visite-non { min-height: 46px; border: 0; border-radius: 14px; background: transparent; color: #A9B3D6; font: 600 15px 'Space Grotesk', sans-serif; cursor: pointer; }
.we-visite-non:hover { color: #FFFFFF; }
.we-visite-bloc { position: fixed; inset: 0; z-index: 170; background: transparent; }
.we-visite-spot { position: fixed; z-index: 171; border-radius: 16px; box-shadow: 0 0 0 9999px rgba(7,11,30,.62); pointer-events: none; transition: all .35s cubic-bezier(.2,.8,.2,1); }
.we-visite-spot > span { position: absolute; inset: 0; border-radius: 16px; border: 2px solid #7E8EFF; }
.we-visite-spot > span:first-child { animation: wdRing 1.6s ease-out infinite; }
.we-visite-bulle { position: fixed; z-index: 172; padding: 18px; border-radius: 20px; background: #0A1030; border: 1px solid rgba(126,142,255,.35); box-shadow: 0 30px 70px rgba(0,0,0,.5); transition: left .35s cubic-bezier(.2,.8,.2,1), top .35s cubic-bezier(.2,.8,.2,1); }
.we-visite-point { height: 6px; border-radius: 99px; transition: all .3s; width: 6px; background: rgba(255,255,255,.22); }
.we-visite-point.est-actif { width: 22px; background: #7E8EFF; }
.we-visite-prec { width: 40px; height: 40px; border-radius: 11px; border: 1px solid rgba(255,255,255,.16); background: transparent; color: #FFFFFF; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.we-visite-suiv { min-height: 40px; padding: 0 16px; border: 0; border-radius: 11px; background: #FFFFFF; color: #0A1030; font: 600 14.5px 'Space Grotesk', sans-serif; cursor: pointer; }
.we-visite-fin { display: inline-flex; align-items: center; min-height: 40px; padding: 0 16px; border: 0; border-radius: 11px; background: linear-gradient(135deg,#4F63FF,#7B5CFF); color: #FFFFFF; font: 600 14.5px 'Space Grotesk', sans-serif; cursor: pointer; white-space: nowrap; }
.we-visite-fin:hover { color: #FFFFFF; }

/* ---------- F12 Mon accès, F13 paiement, F14 paiement réussi, F15 factures ---------- */
.we-ac-bord { display: inline-flex; align-items: center; min-height: 52px; padding: 0 18px; border-radius: 15px; border: 1px solid rgba(255,255,255,.2); color: #FFFFFF; font: 600 15px 'Space Grotesk', sans-serif; white-space: nowrap; }
.we-ac-bord:hover { background: rgba(255,255,255,.08); color: #FFFFFF; }
.we-ac-carte { position: relative; overflow: hidden; isolation: isolate; display: grid; gap: 12px; align-content: start; padding: 18px; border-radius: 22px; background: #FFFFFF; border: 1px solid #E6EAF4; color: #0F1836; box-shadow: 0 12px 28px -18px rgba(16,24,48,.25); }
.we-ac-carte:hover { transform: translateY(-3px); border-color: #CBD3FF; box-shadow: 0 22px 44px -18px rgba(42,65,232,.3); color: #0F1836; }
.we-ac-faq { padding: 16px 18px; border-radius: 18px; background: #FFFFFF; border: 1px solid #E6EAF4; }
.we-ac-faq summary { cursor: pointer; font: 600 15.5px 'Space Grotesk', sans-serif; color: #0F1836; }
.we-ac-faq p { margin-top: 10px; font-size: 14.5px; line-height: 1.6; color: #4C5772; }
.we-ac-activer { display: inline-flex; justify-content: center; align-items: center; gap: 10px; min-height: 56px; border-radius: 16px; background: #FFFFFF; color: #0A1030; font: 600 16px 'Space Grotesk', sans-serif; box-shadow: 0 14px 34px rgba(0,0,0,.35); }
.we-ac-activer:hover { color: #5B3FE0; transform: translateY(-2px); }
/* Titres de la coque sombre (maquette : L.h1 62/38 px, L.h1s 50/32 px) */
.we-h1 { font: 700 62px/1.02 'Space Grotesk', sans-serif; letter-spacing: -.04em; color: #FFFFFF; text-wrap: balance; }
.we-h1s { margin-top: 14px; font: 700 50px/1.04 'Space Grotesk', sans-serif; letter-spacing: -.035em; color: #FFFFFF; text-wrap: balance; }
.we-pa-retour { justify-self: start; display: inline-flex; align-items: center; gap: 8px; font: 500 14px 'IBM Plex Sans', sans-serif; color: #A9B3D6; }
.we-pa-retour:hover { color: #FFFFFF; }
.we-pa-cgv { display: flex; align-items: flex-start; gap: 12px; padding: 0; border: 0; background: transparent; cursor: pointer; text-align: left; font-size: 14.5px; line-height: 1.5; color: #C8CEEA; }
.we-pa-cgv a { color: #C7CEFF; text-decoration: underline; }
.we-pa-case { flex-shrink: 0; margin-top: 1px; width: 22px; height: 22px; border-radius: 7px; display: flex; align-items: center; justify-content: center; border: 1.5px solid rgba(255,255,255,.3); color: transparent; }
.we-pa-cgv[aria-checked="true"] .we-pa-case { background: #7E8EFF; border-color: #7E8EFF; color: #FFFFFF; }
.we-pa-cgv.est-erreur .we-pa-case { border-color: #FF8A8A; }
.we-pa-payer { min-height: 58px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; border: 0; border-radius: 16px; background: linear-gradient(135deg,#4F63FF,#7B5CFF); color: #FFFFFF; font: 600 16.5px 'Space Grotesk', sans-serif; cursor: pointer; box-shadow: 0 14px 34px rgba(79,99,255,.45); }
.we-pa-payer:hover { transform: translateY(-2px); }
.we-pa-payer[disabled] { opacity: .7; cursor: progress; transform: none; }
.we-su-blanc { display: inline-flex; align-items: center; gap: 10px; min-height: 54px; padding: 0 24px; border-radius: 16px; background: #FFFFFF; color: #0A1030; font: 600 16px 'Space Grotesk', sans-serif; box-shadow: 0 14px 34px rgba(0,0,0,.35); }
.we-su-blanc:hover { color: #2A41E8; transform: translateY(-2px); }
.we-su-verre { display: inline-flex; align-items: center; min-height: 54px; padding: 0 20px; border-radius: 16px; border: 1px solid rgba(255,255,255,.22); background: rgba(255,255,255,.06); color: #FFFFFF; font: 600 15.5px 'Space Grotesk', sans-serif; }
.we-su-verre:hover { background: rgba(255,255,255,.12); color: #FFFFFF; }
.we-fa-ligne { display: flex; flex-wrap: wrap; gap: 14px 18px; align-items: center; padding: 14px 18px; border-radius: 22px; background: #FFFFFF; border: 1px solid #E6EAF4; transition: transform .25s, box-shadow .25s, border-color .25s; animation: wdRise .4s both; }
.we-fa-ligne:hover { border-color: #C9D0E3; box-shadow: 0 14px 34px rgba(16,24,48,.07); transform: translateY(-1px); }
.we-fa-pdf { display: inline-flex; align-items: center; gap: 7px; min-height: 42px; padding: 0 16px; border-radius: 12px; background: #0F1836; color: #FFFFFF; font: 600 14px 'Space Grotesk', sans-serif; white-space: nowrap; }
.we-fa-pdf:hover { background: #2A41E8; color: #FFFFFF; }
.we-fa-bord { display: inline-flex; align-items: center; min-height: 52px; padding: 0 18px; border-radius: 15px; border: 1px solid rgba(255,255,255,.18); color: #FFFFFF; font: 600 15px 'Space Grotesk', sans-serif; }
.we-fa-bord:hover { background: rgba(255,255,255,.06); color: #FFFFFF; }
@media (max-width: 1099px) {
  .we-h1 { font-size: 38px; }
  .we-h1s { font-size: 32px; }
}

/* ---------- F16 à F20 : offres de formateur ---------- */
.we-of-publie { margin-top: 6px; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; padding: 10px 14px; border-radius: 16px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); min-width: 0; }
.we-of-publie-l { display: inline-flex; align-items: center; gap: 7px; font: 500 10.5px 'IBM Plex Mono', monospace; letter-spacing: .12em; text-transform: uppercase; color: #8FA0FF; }
.we-of-publie-l > span { width: 6px; height: 6px; border-radius: 50%; background: #12B76A; animation: wdPulseG 2.4s infinite; }
.we-of-publie-t { font: 600 17px 'Space Grotesk', sans-serif; letter-spacing: -.01em; color: #FFFFFF; overflow-wrap: anywhere; min-width: 0; }
.we-of-publie-puce { padding: 3px 10px; border-radius: 999px; background: rgba(126,142,255,.18); border: 1px solid rgba(126,142,255,.3); font: 600 12px 'IBM Plex Sans', sans-serif; color: #DDE2FF; white-space: nowrap; }
.we-of-titre { display: flex; align-items: stretch; min-height: 58px; border-radius: 15px; border: 1.5px solid #DCE1EE; background: #FAFBFF; overflow: hidden; min-width: 0; }
.we-of-titre:hover { border-color: #B9C3F5; }
.we-of-titre:focus-within { border-color: #4F63FF; background: #FFFFFF; }
.we-of-titre.est-erreur { border-color: #E5484D; background: #FFF7F8; }
.we-of-titre-fixe { display: inline-flex; align-items: center; gap: 8px; padding: 0 16px; background: #EEF1FF; border-right: 1px solid #DCE2FF; color: #1E31C0; font: 700 17px 'Space Grotesk', sans-serif; white-space: nowrap; flex-shrink: 0; }
.we-of-titre-fixe > span { display: flex; color: #7E8EFF; }
.we-of-titre input { flex: 1; min-width: 0; border: 0; background: transparent; padding: 0 14px; font: 600 17px 'Space Grotesk', sans-serif; color: #0F1836; outline: none; }
.we-of-titre input:focus-visible { outline: none; }
.we-of-puces { display: flex; flex-wrap: wrap; gap: 8px; }
.we-of-puce { display: inline-flex; align-items: center; gap: 7px; min-height: 44px; padding: 0 15px; border-radius: 13px; cursor: pointer; white-space: nowrap; font: 600 14px 'IBM Plex Sans', sans-serif; border: 1.5px solid #DCE1EE; background: #FFFFFF; color: #0F1836; }
.we-of-puce svg { display: none; }
.we-of-puce:hover { border-color: #B9C3F5; }
.we-of-puce[aria-pressed="true"] { border-color: #2A41E8; background: #2A41E8; color: #FFFFFF; box-shadow: 0 10px 22px -10px rgba(42,65,232,.8); }
.we-of-puce[aria-pressed="true"] svg { display: block; }
.we-of-date { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; padding: 12px 14px; border-radius: 14px; background: #F7F8FC; animation: wdRise .25s both; }
.we-of-date[hidden] { display: none; }
.we-of-remu { display: grid; gap: 14px; padding: 16px; border-radius: 18px; background: #F7F8FC; animation: wdRise .25s both; min-width: 0; }
.we-of-remu[hidden] { display: none; }
.we-of-remu-badge { justify-self: start; padding: 4px 10px; border-radius: 999px; font: 600 12px 'IBM Plex Sans', sans-serif; color: #FFFFFF; }
.we-of-sans-contrat { padding: 16px; border-radius: 18px; border: 1.5px dashed #C9D0E3; font-size: 14px; color: #5A6685; }
.we-of-sans-contrat[hidden] { display: none; }
.we-of-linkedin { display: inline-flex; justify-content: center; align-items: center; gap: 10px; min-height: 50px; border: 0; border-radius: 15px; background: #0A66C2; color: #FFFFFF; font: 600 15px 'Space Grotesk', sans-serif; cursor: pointer; box-shadow: 0 12px 28px rgba(10,102,194,.4); }
.we-of-linkedin:hover { background: #0B75DE; transform: translateY(-2px); }
.we-of-linkedin[disabled] { opacity: .7; cursor: progress; transform: none; }
/* F17 Mes offres */
.we-of-carte { position: relative; overflow: hidden; isolation: isolate; display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,300px),1fr)); gap: 18px; padding: clamp(18px,2.6vw,24px); border-radius: 28px; background: #FFFFFF; border: 1px solid #E6EAF4; box-shadow: 0 20px 44px -20px rgba(16,24,48,.2); min-width: 0; }
.we-of-mois { display: block; height: 10px; border-radius: 5px; background: #DDE3FF; }
.we-of-mois.est-allume { background: linear-gradient(90deg,#4F63FF,#9B7CFF); box-shadow: 0 0 12px rgba(126,142,255,.6); }
.we-of-mois.est-fini { background: #E6EAF4; }
.we-of-modifier { display: inline-flex; align-items: center; min-height: 44px; padding: 0 16px; border-radius: 12px; background: #0F1836; color: #FFFFFF; font: 600 14px 'Space Grotesk', sans-serif; }
.we-of-modifier:hover { background: #2A41E8; color: #FFFFFF; }
.we-of-bord { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 0 16px; border-radius: 12px; border: 1.5px solid #DCE1EE; color: #0F1836; font: 600 14px 'Space Grotesk', sans-serif; }
.we-of-bord:hover { border-color: #2A41E8; color: #2A41E8; }
.we-of-cand { position: relative; overflow: hidden; isolation: isolate; display: flex; flex-direction: column; justify-content: space-between; gap: 18px; padding: 22px; border-radius: 22px; background: radial-gradient(90% 120% at 100% 0%,rgba(91,111,240,.95),transparent 60%),#0A1030; color: #FFFFFF; box-shadow: 0 22px 44px -16px rgba(42,65,232,.6); min-width: 0; }
.we-of-cand:hover { transform: translateY(-2px); color: #FFFFFF; }
.we-of-cand-trame { position: absolute; z-index: -1; inset: 0; background-image: linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px); background-size: 26px 26px; mask-image: radial-gradient(70% 100% at 100% 0%,#000,transparent 70%); -webkit-mask-image: radial-gradient(70% 100% at 100% 0%,#000,transparent 70%); }
.we-of-avatar { width: 40px; height: 40px; border-radius: 50%; border: 2.5px solid #0A1030; display: flex; align-items: center; justify-content: center; font: 700 12.5px 'Space Grotesk', sans-serif; color: #FFFFFF; }
.we-of-premiere { justify-self: start; display: inline-flex; align-items: center; gap: 8px; min-height: 50px; padding: 0 20px; border-radius: 14px; background: #0F1836; color: #FFFFFF; font: 600 15px 'Space Grotesk', sans-serif; }
.we-of-premiere:hover { background: #2A41E8; color: #FFFFFF; }
.we-of-page { min-width: 40px; height: 40px; padding: 0 10px; border-radius: 12px; border: 1px solid #E6EAF4; background: #FFFFFF; color: #0F1836; font: 600 14px 'Space Grotesk', sans-serif; display: inline-flex; align-items: center; justify-content: center; }
.we-of-page.est-actif { background: #0F1836; border-color: #0F1836; color: #FFFFFF; }
/* F18 Candidatures */
.we-of-retour { justify-self: start; white-space: nowrap; display: inline-flex; align-items: center; gap: 8px; min-height: 36px; padding: 0 14px; border-radius: 999px; background: #FFFFFF; border: 1px solid #E6EAF4; font: 600 13.5px 'IBM Plex Sans', sans-serif; color: #33405C; }
.we-of-retour:hover { border-color: #C9D0E3; color: #0F1836; }
.we-of-candidat { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 18px; padding: 16px 18px; border-radius: 22px; background: #FFFFFF; border: 1px solid #E6EAF4; animation: wdRise .35s both; min-width: 0; }
.we-of-candidat-ini { width: 48px; height: 48px; flex-shrink: 0; border-radius: 15px; background: linear-gradient(150deg,#7C8CFF,#2A41E8); display: flex; align-items: center; justify-content: center; font: 700 15px 'Space Grotesk', sans-serif; color: #FFFFFF; }
.we-of-candidat-nom { justify-self: start; font: 600 16.5px 'Space Grotesk', sans-serif; color: #0F1836; overflow-wrap: anywhere; }
a.we-of-candidat-nom:hover { color: #2A41E8; }
.we-of-cv { display: inline-flex; align-items: center; gap: 6px; min-height: 42px; padding: 0 14px; border-radius: 12px; background: #0A1030; color: #FFFFFF; font: 600 13.5px 'IBM Plex Sans', sans-serif; }
.we-of-cv:hover { background: #2A41E8; color: #FFFFFF; }
.we-of-contact { display: inline-flex; align-items: center; min-height: 42px; padding: 0 12px; border-radius: 12px; border: 1px solid #E6EAF4; color: #0F1836; font: 600 13.5px 'IBM Plex Sans', sans-serif; }
.we-of-contact:hover { border-color: #2A41E8; color: #2A41E8; }
.we-of-supprimer { width: 42px; height: 42px; border-radius: 12px; border: 1px solid #F3D2D6; background: #FFFFFF; color: #B4232F; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.we-of-supprimer:hover { background: #FDEFF0; }
.we-of-reponses { margin-top: 4px; font-size: 13.5px; color: #33405C; }
.we-of-reponses summary { cursor: pointer; font-weight: 600; color: #2A41E8; }
.we-of-reponses dl { margin: 8px 0 0; display: grid; gap: 4px 12px; padding: 10px 12px; border-radius: 12px; background: #F7F8FC; }
.we-of-reponses dt { font-weight: 600; color: #0F1836; }
.we-of-reponses dd { margin: 0 0 6px; overflow-wrap: anywhere; }
.we-of-partager { justify-self: start; display: inline-flex; align-items: center; min-height: 48px; padding: 0 18px; border-radius: 14px; background: #2A41E8; color: #FFFFFF; font: 600 15px 'Space Grotesk', sans-serif; }
.we-of-partager:hover { background: #1E31C0; color: #FFFFFF; }
/* F19 Partager */
.we-of-partage { position: relative; overflow: hidden; isolation: isolate; display: grid; grid-template-columns: minmax(0,1fr); min-width: 0; gap: 14px; padding: clamp(24px,3.6vw,36px); border-radius: 30px; background: radial-gradient(120% 160% at 100% 0%,#2A3BB8 0%,#111A52 40%,#070B1E 100%); color: #C8CEEA; }
.we-of-partage-linkedin { display: inline-flex; align-items: center; gap: 10px; min-height: 52px; padding: 0 20px; border-radius: 15px; background: #FFFFFF; color: #0A1030; font: 600 15.5px 'Space Grotesk', sans-serif; }
.we-of-partage-linkedin:hover { color: #0A66C2; transform: translateY(-2px); }
.we-of-lien { min-width: 0; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding: 8px; border-radius: 16px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12); }
.we-of-lien > span { flex: 1 1 200px; min-width: 0; padding: 0 8px; font: 500 13.5px 'IBM Plex Mono', monospace; color: #DDE2F5; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.we-of-lien > button { min-height: 42px; padding: 0 16px; border: 0; border-radius: 12px; background: rgba(126,142,255,.25); color: #FFFFFF; font: 600 14px 'Space Grotesk', sans-serif; cursor: pointer; }
.we-of-lien > button:hover { background: rgba(126,142,255,.4); }
.we-of-bouton-clair { display: inline-flex; align-items: center; min-height: 46px; padding: 0 18px; border-radius: 13px; background: #FFFFFF; border: 1px solid #E6EAF4; color: #0F1836; font: 600 14.5px 'Space Grotesk', sans-serif; }
.we-of-bouton-clair:hover { border-color: #C9D0E3; color: #0F1836; }

/* ---------- F21 News de la Tech ---------- */
.we-nw-heros { position: relative; overflow: hidden; isolation: isolate; border-radius: 30px; background: #0A1030; padding: clamp(22px,3vw,34px); box-shadow: 0 30px 60px rgba(10,16,48,.2); min-width: 0; }
.we-nw-heros-fond { position: absolute; z-index: -1; inset: 0; background: radial-gradient(55% 90% at 90% 0%,rgba(64,85,240,.7),transparent 70%),radial-gradient(40% 70% at 0% 100%,rgba(124,92,255,.35),transparent 70%); }
.we-nw-heros-points { position: absolute; z-index: -1; inset: 0; background-image: radial-gradient(rgba(200,210,255,.28) 1px,transparent 1.3px); background-size: 20px 20px; mask-image: radial-gradient(60% 90% at 90% 0%,#000,transparent 75%); -webkit-mask-image: radial-gradient(60% 90% at 90% 0%,#000,transparent 75%); }
.we-nw-recherche { margin-top: 22px; display: flex; align-items: center; gap: 8px; padding: 6px 6px 6px 16px; border-radius: 18px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.16); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); }
.we-nw-recherche input { flex: 1; min-width: 0; height: 44px; border: 0; outline: none; background: transparent; font-size: 15.5px; color: #FFFFFF; }
.we-nw-recherche input::placeholder { color: #AEB7D9; }
.we-nw-recherche button { flex-shrink: 0; min-height: 44px; padding: 0 20px; border: 0; border-radius: 13px; cursor: pointer; background: #FFFFFF; font: 600 14.5px 'Space Grotesk', sans-serif; color: #0A1030; }
.we-nw-recherche button:hover { transform: translateY(-1px); box-shadow: 0 8px 20px rgba(0,0,0,.3); }
.we-nw-sources { margin-top: 12px; display: flex; gap: 6px; overflow-x: auto; padding-bottom: 2px; scrollbar-width: thin; }
.we-nw-puce { flex-shrink: 0; display: inline-flex; align-items: center; min-height: 36px; padding: 0 14px; border-radius: 999px; white-space: nowrap; font: 600 13px 'IBM Plex Sans', sans-serif; border: 1px solid rgba(255,255,255,.18); background: rgba(255,255,255,.06); color: #DDE2FF; }
.we-nw-puce:hover { background: rgba(255,255,255,.12); color: #FFFFFF; }
.we-nw-puce.est-actif { border-color: #FFFFFF; background: #FFFFFF; color: #0A1030; }
.we-nw-aucune { display: grid; justify-items: center; text-align: center; gap: 10px; padding: 48px 22px; border-radius: 28px; background: #FFFFFF; border: 1.5px dashed #C3CCE3; }
.we-nw-effacer { margin-top: 4px; display: inline-flex; align-items: center; min-height: 44px; padding: 0 18px; border-radius: 12px; background: #EEF1FF; font: 600 14.5px 'Space Grotesk', sans-serif; color: #1E31C0; }
.we-nw-bento { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(0,1fr); gap: 14px; }
.we-nw-une { position: relative; overflow: hidden; isolation: isolate; display: flex; flex-direction: column; justify-content: flex-end; gap: 12px; min-height: 240px; padding: 70px 24px 24px; border-radius: 26px; background: linear-gradient(150deg,#1B2BB5,#2E44E6 55%,#6E86FF); color: #FFFFFF; box-shadow: 0 22px 44px rgba(42,65,232,.3); grid-row: span 2; min-width: 0; }
.we-nw-une:hover { transform: translateY(-3px); color: #FFFFFF; }
.we-nw-une-trame { position: absolute; z-index: -1; inset: 0; background-image: linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px); background-size: 32px 32px; mask-image: radial-gradient(80% 90% at 100% 0%,#000,transparent 70%); -webkit-mask-image: radial-gradient(80% 90% at 100% 0%,#000,transparent 70%); }
.we-nw-une-tag { position: absolute; top: 22px; left: 24px; white-space: nowrap; display: inline-flex; align-items: center; gap: 8px; padding: 5px 12px; border-radius: 999px; background: rgba(255,255,255,.16); border: 1px solid rgba(255,255,255,.25); font: 600 12px 'IBM Plex Sans', sans-serif; }
.we-nw-une-fleche { position: absolute; top: 18px; right: 18px; width: 42px; height: 42px; border-radius: 50%; background: #FFFFFF; display: flex; align-items: center; justify-content: center; }
.we-nw-suivante { position: relative; display: flex; flex-direction: column; justify-content: space-between; gap: 14px; min-height: 112px; padding: 20px; border-radius: 24px; background: #FFFFFF; border: 1px solid #E6EAF4; color: #0F1836; box-shadow: 0 14px 30px rgba(16,24,48,.05); min-width: 0; }
.we-nw-suivante:hover { transform: translateY(-2px); border-color: #C9D1FF; box-shadow: 0 20px 40px rgba(42,65,232,.1); color: #0F1836; }
.we-nw-source { display: inline-flex; justify-self: start; padding: 3px 10px; border-radius: 999px; font: 600 11.5px 'IBM Plex Sans', sans-serif; white-space: nowrap; max-width: 100%; overflow: hidden; text-overflow: ellipsis; }
.we-nw-liste { background: #FFFFFF; border: 1px solid #E6EAF4; border-radius: 28px; padding: 10px; box-shadow: 0 16px 36px rgba(16,24,48,.05); min-width: 0; }
.we-nw-ligne { display: grid; grid-template-columns: 56px minmax(0,1fr) auto; align-items: center; gap: 14px; padding: 14px; border-radius: 18px; color: #0F1836; }
.we-nw-ligne:hover { background: #F4F6FB; color: #1E31C0; }
.we-nw-source-mobile { display: none; }
.we-nw-pages { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 6px; padding: 16px 10px 12px; border-top: 1px solid #EEF1F8; margin-top: 6px; }
.we-nw-page { min-width: 42px; height: 42px; padding: 0 12px; display: inline-flex; align-items: center; justify-content: center; border-radius: 14px; background: #FFFFFF; border: 1px solid #E6EAF4; font: 600 14px 'Space Grotesk', sans-serif; color: #33405C; }
.we-nw-page:hover { border-color: #2A41E8; color: #1E31C0; }
.we-nw-page.est-actif { background: #0A1030; border-color: #0A1030; color: #FFFFFF; box-shadow: 0 8px 18px rgba(10,16,48,.25); }
/* ---------- F22 Réglages ---------- */
.we-rg-heros { position: relative; overflow: hidden; isolation: isolate; display: flex; flex-wrap: wrap; align-items: center; gap: 20px; padding: clamp(22px,3vw,32px); border-radius: 30px; background: radial-gradient(120% 140% at 100% 0%,#2A3BB8 0%,#111A52 42%,#070B1E 100%); color: #FFFFFF; box-shadow: 0 30px 60px rgba(10,16,48,.22); min-width: 0; }
.we-rg-heros-points { position: absolute; z-index: -1; inset: 0; background-image: radial-gradient(rgba(200,210,255,.25) 1px,transparent 1.3px); background-size: 20px 20px; mask-image: radial-gradient(60% 80% at 100% 0%,#000,transparent 75%); -webkit-mask-image: radial-gradient(60% 80% at 100% 0%,#000,transparent 75%); }
.we-rg-avatar { width: 72px; height: 72px; flex-shrink: 0; border-radius: 22px; background: linear-gradient(150deg,#FFB547,#E07B12); box-shadow: 0 14px 30px rgba(224,123,18,.45); display: flex; align-items: center; justify-content: center; font: 700 24px 'Space Grotesk', sans-serif; color: #FFFFFF; overflow: hidden; }
.we-rg-avatar img { width: 100%; height: 100%; object-fit: cover; }
.we-rg-deux { display: grid; grid-template-columns: minmax(0,1fr) 340px; gap: 18px; align-items: start; }
.we-rg-bloc { padding: clamp(18px,2.4vw,26px); border-radius: 26px; background: #FFFFFF; border: 1px solid #E6EAF4; box-shadow: 0 1px 2px rgba(16,24,48,.04); display: grid; gap: 18px; min-width: 0; }
.we-rg-grille { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.we-rg-champ { display: grid; gap: 8px; min-width: 0; }
.we-rg-ico { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); color: #8A96B0; pointer-events: none; }
.we-rg-saisie { width: 100%; min-width: 0; min-height: 50px; padding: 0 14px 0 42px; border-radius: 14px; border: 1.5px solid #DCE1EE; background: #FAFBFF; font-size: 15px; color: #0F1836; outline: none; }
.we-rg-saisie:focus { border-color: #4F63FF; background: #FFFFFF; }
.we-rg-saisie.est-erreur { border-color: #E5484D; background: #FFF7F8; }
.we-rg-err { font-size: 13px; font-weight: 600; color: #C0282D; }
.we-rg-err[hidden] { display: none; }
.we-rg-barre { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 10px 10px 18px; border-radius: 18px; background: #0A1030; }
.we-rg-enregistrer { display: inline-flex; align-items: center; gap: 10px; min-height: 48px; padding: 0 22px; border: 0; border-radius: 14px; background: linear-gradient(135deg,#4F63FF,#7B5CFF); color: #FFFFFF; font: 600 15px 'Space Grotesk', sans-serif; cursor: pointer; box-shadow: 0 10px 26px rgba(79,99,255,.45); }
.we-rg-enregistrer:hover { transform: translateY(-1px); }
.we-rg-force { display: grid; gap: 8px; padding: 14px; border-radius: 16px; background: #F7F8FC; }
.we-rg-force[hidden] { display: none; }
.we-rg-cran { flex: 1; height: 6px; border-radius: 99px; background: #E3E7F2; }
.we-rg-pareil { display: inline-flex; align-items: center; gap: 5px; font-weight: 600; color: #0B7A4B; }
.we-rg-different { font-weight: 600; color: #C0282D; }
.we-rg-pareil[hidden], .we-rg-different[hidden] { display: none; }
.we-rg-mdp { justify-self: start; white-space: nowrap; display: inline-flex; align-items: center; gap: 8px; min-height: 48px; padding: 0 20px; border-radius: 14px; border: 1.5px solid #DCE1EE; background: #FFFFFF; color: #0F1836; font: 600 15px 'Space Grotesk', sans-serif; cursor: pointer; }
.we-rg-mdp:hover { border-color: #2A41E8; color: #2A41E8; }
.we-rg-acces { position: relative; overflow: hidden; padding: 24px; border-radius: 26px; background: linear-gradient(165deg,#0F1740,#070B1E); color: #FFFFFF; display: grid; gap: 14px; }
.we-rg-acces-lien { position: relative; justify-self: start; display: inline-flex; align-items: center; min-height: 44px; padding: 0 16px; border-radius: 13px; background: #FFFFFF; color: #0A1030; font: 600 14.5px 'Space Grotesk', sans-serif; }
.we-rg-acces-lien:hover { color: #2A41E8; }
.we-rg-fermer { padding: 22px; border-radius: 26px; background: linear-gradient(165deg,#FFF6F6,#FFFFFF 60%); border: 1px solid #F6D6D6; display: grid; gap: 12px; }
.we-rg-ecrire { justify-self: start; display: inline-flex; align-items: center; gap: 8px; min-height: 42px; padding: 0 16px; border-radius: 12px; border: 1.5px solid #F1C4C4; background: #FFFFFF; color: #C0282D; font: 600 14px 'Space Grotesk', sans-serif; }
.we-rg-ecrire:hover { background: #FFF1F1; color: #C0282D; }
/* ---------- F23 Contact ---------- */
.we-ct-heros { position: relative; overflow: hidden; isolation: isolate; display: grid; gap: 22px; padding: clamp(22px,3vw,32px); border-radius: 30px; background: radial-gradient(120% 140% at 100% 0%,#2A3BB8 0%,#111A52 42%,#070B1E 100%); color: #FFFFFF; box-shadow: 0 30px 60px rgba(10,16,48,.22); min-width: 0; }
.we-ct-equipe { display: inline-flex; align-items: center; gap: 8px; justify-self: start; padding: 5px 12px; border-radius: 999px; background: rgba(18,183,106,.12); border: 1px solid rgba(108,224,168,.3); font: 500 11px 'IBM Plex Mono', monospace; letter-spacing: .12em; text-transform: uppercase; color: #6CE0A8; white-space: nowrap; }
.we-ct-equipe > span { width: 7px; height: 7px; border-radius: 50%; background: #12B76A; animation: wdPulseG 2.4s infinite; }
.we-ct-moyen { display: flex; align-items: center; gap: 14px; padding: 14px 16px; border-radius: 18px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12); color: #FFFFFF; min-width: 0; }
.we-ct-moyen:hover { background: rgba(255,255,255,.12); border-color: rgba(199,206,255,.4); color: #FFFFFF; }
.we-ct-moyen-ico { width: 42px; height: 42px; flex-shrink: 0; border-radius: 13px; background: rgba(255,255,255,.1); display: flex; align-items: center; justify-content: center; color: #C7CEFF; }
.we-ct-envoye { position: relative; overflow: hidden; display: grid; gap: 14px; justify-items: start; padding: clamp(24px,4vw,40px); border-radius: 30px; background: linear-gradient(165deg,#F0FBF5,#FFFFFF 55%); border: 1px solid #CDEBDB; box-shadow: 0 20px 44px rgba(18,183,106,.1); min-width: 0; }
.we-ct-envoye-ico { width: 64px; height: 64px; border-radius: 20px; background: linear-gradient(135deg,#12B76A,#0B9A57); display: flex; align-items: center; justify-content: center; color: #FFFFFF; box-shadow: 0 14px 30px rgba(18,183,106,.35); animation: wdRise .4s ease both; }
.we-ct-autre { margin-top: 6px; display: inline-flex; align-items: center; gap: 8px; min-height: 46px; padding: 0 18px; border-radius: 13px; border: 1.5px solid #DCE1EE; background: #FFFFFF; color: #0F1836; font: 600 14.5px 'Space Grotesk', sans-serif; }
.we-ct-autre:hover { border-color: #2A41E8; color: #2A41E8; }
.we-ct-form { display: grid; gap: 22px; padding: clamp(20px,3vw,30px); border-radius: 30px; background: #FFFFFF; border: 1px solid #E6EAF4; box-shadow: 0 20px 44px rgba(16,24,48,.06); min-width: 0; }
.we-ct-alerte { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border-radius: 14px; background: #FFF1F1; border: 1px solid #F6CACA; font-size: 14.5px; font-weight: 500; color: #A02828; }
.we-ct-alerte[hidden] { display: none; }
.we-ct-etape { width: 24px; height: 24px; border-radius: 8px; background: #0F1836; display: flex; align-items: center; justify-content: center; font: 600 11.5px 'IBM Plex Mono', monospace; color: #FFFFFF; }
.we-ct-sujets { display: grid; grid-template-columns: repeat(auto-fill,minmax(min(100%,200px),1fr)); gap: 8px; }
.we-ct-sujet { display: flex; align-items: center; gap: 12px; width: 100%; padding: 12px; border-radius: 16px; cursor: pointer; text-align: left; border: 1.5px solid #E6EAF4; background: #FFFFFF; font-family: inherit; }
.we-ct-sujet:hover { border-color: #9AA8FF; }
.we-ct-sujet.est-erreur { border-color: #F1C4C4; }
.we-ct-sujet[aria-checked="true"] { border-color: #4F63FF; background: #F2F4FF; box-shadow: 0 8px 20px -10px rgba(79,99,255,.6); }
.we-ct-sujet-ico { width: 36px; height: 36px; flex-shrink: 0; border-radius: 11px; display: flex; align-items: center; justify-content: center; font: 700 15px 'Space Grotesk', sans-serif; background: #F1F4FA; color: #2A41E8; }
.we-ct-sujet[aria-checked="true"] .we-ct-sujet-ico { background: linear-gradient(135deg,#4F63FF,#7B5CFF); color: #FFFFFF; }
.we-ct-message { width: 100%; min-height: 170px; padding: 14px 16px; border-radius: 16px; border: 1.5px solid #DCE1EE; background: #FAFBFF; font-size: 15px; line-height: 1.55; color: #0F1836; outline: none; resize: vertical; font-family: inherit; }
.we-ct-message:focus { border-color: #4F63FF; background: #FFFFFF; }
.we-ct-message.est-erreur { border-color: #E5484D; background: #FFF7F8; }
.we-ct-envoyer { display: inline-flex; align-items: center; gap: 10px; min-height: 54px; padding: 0 26px; border: 0; border-radius: 15px; background: linear-gradient(135deg,#4F63FF,#7B5CFF); color: #FFFFFF; font: 600 16px 'Space Grotesk', sans-serif; cursor: pointer; box-shadow: 0 14px 34px rgba(79,99,255,.4); }
.we-ct-envoyer:hover { transform: translateY(-2px); }
@media (max-width: 1099px) {
  .we-nw-bento { grid-template-columns: minmax(0,1fr); gap: 12px; }
  .we-nw-une { grid-row: auto; }
  .we-nw-source-mobile { display: block; }
  .we-nw-source-ordi { display: none; }
  .we-nw-ligne { grid-template-columns: 48px minmax(0,1fr) auto; gap: 10px; padding: 12px 10px; }
  .we-rg-deux { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 700px) {
  .we-rg-grille { grid-template-columns: minmax(0,1fr); }
}

/* ---------- Pages publiques (coque sombre) : F1 à F5, erreurs ---------- */
.we-degrade { background: linear-gradient(100deg,#B9C3FF 10%,#8B7CFF 60%,#D6C9FF); -webkit-background-clip: text; background-clip: text; color: transparent; }
.we-sb-h2 { font: 700 28px/1.15 'Space Grotesk', sans-serif; letter-spacing: -.025em; color: #FFFFFF; }
.we-sb-h1 { font: 700 30px/1.1 'Space Grotesk', sans-serif; letter-spacing: -.03em; color: #FFFFFF; }
.we-sb-carte { display: grid; gap: 16px; padding: clamp(22px,4vw,34px); border-radius: 28px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.12); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); box-shadow: 0 40px 90px rgba(0,0,0,.35); animation: wdRise .5s both; min-width: 0; color: #A9B3D6; }
.we-sb-carte.est-ok { border-color: rgba(108,224,168,.3); box-shadow: none; }
.we-sb-carte.est-orange { border-color: rgba(255,184,76,.35); box-shadow: none; }
.we-sb-icone { width: 52px; height: 52px; border-radius: 16px; background: rgba(126,142,255,.16); display: flex; align-items: center; justify-content: center; color: #C7CEFF; }
.we-sb-icone.est-vert { background: rgba(18,183,106,.16); color: #6CE0A8; }
.we-sb-icone.est-orange { background: rgba(255,184,76,.14); color: #FFB84C; }
.we-sb-champ { display: grid; gap: 7px; align-content: start; min-width: 0; }
.we-sb-champ.est-plein { grid-column: 1/-1; }
.we-sb-l { font: 600 14px 'IBM Plex Sans', sans-serif; color: #FFFFFF; }
.we-sb-saisie { width: 100%; min-width: 0; min-height: 52px; padding: 0 14px; border-radius: 14px; border: 1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.06); color: #FFFFFF; font-size: 16px; outline: none; }
.we-sb-saisie:focus { border-color: #7E8EFF; background: rgba(255,255,255,.09); }
.we-sb-saisie::placeholder { color: #8C97BF; }
.we-sb-saisie.est-mono { font-family: 'IBM Plex Mono', monospace; }
.we-sb-saisie.est-erreur { border-color: #FF8A8A; background: rgba(255,90,90,.08); }
.we-sb-err { font-size: 13px; line-height: 1.4; color: #FF9C9C; }
.we-sb-err a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
.we-sb-err[hidden] { display: none; }
.we-sb-aide { font-size: 12.5px; line-height: 1.4; color: #8C97BF; }
.we-sb-bouton { min-height: 56px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; border: 0; border-radius: 16px; background: linear-gradient(135deg,#4F63FF,#7B5CFF); color: #FFFFFF; font: 600 16px 'Space Grotesk', sans-serif; cursor: pointer; box-shadow: 0 14px 34px rgba(79,99,255,.45); }
.we-sb-bouton:hover { transform: translateY(-2px); }
/* F4, F5 (maquette) : bouton sans ombre, 54 px */
.we-sb-bouton.est-simple { min-height: 54px; box-shadow: none; }
.we-sb-blanc { justify-self: start; display: inline-flex; align-items: center; min-height: 50px; padding: 0 20px; border-radius: 15px; background: #FFFFFF; color: #0A1030; font: 600 15px 'Space Grotesk', sans-serif; }
.we-sb-blanc:hover { color: #2A41E8; }
/* F1 */
.we-ac-heros { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,440px),1fr)); gap: 36px; align-items: start; }
.we-ac-badge { justify-self: start; display: inline-flex; align-items: center; gap: 9px; padding: 6px 12px; border-radius: 999px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1); font: 500 11.5px 'IBM Plex Mono', monospace; letter-spacing: .12em; text-transform: uppercase; color: #9FB0FF; white-space: nowrap; }
.we-ac-badge > span { width: 7px; height: 7px; border-radius: 50%; background: #12B76A; animation: wdPulseG 2.4s infinite; }
/* Pastilles à coche verte (maquette design/toutneuf, 11/10/2026) */
.we-ac-puce { position: relative; display: inline-flex; align-items: center; gap: 10px; padding: 1px; border-radius: 999px; background: linear-gradient(120deg,rgba(108,224,168,.7),rgba(255,255,255,.12) 45%,rgba(126,142,255,.55)); box-shadow: 0 10px 26px -12px rgba(18,183,106,.6); }
.we-ac-puce > span { display: inline-flex; align-items: center; gap: 10px; padding: 7px 15px 7px 7px; border-radius: 999px; background: linear-gradient(120deg,rgba(14,40,40,.92),rgba(12,17,44,.94)); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); font: 600 14px 'Space Grotesk', sans-serif; letter-spacing: -.01em; color: #FFFFFF; white-space: nowrap; }
.we-ac-coche { position: relative; flex-shrink: 0; width: 22px; height: 22px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: radial-gradient(circle at 30% 25%,#8BF5C4,#12B76A 55%,#0B7A48); box-shadow: 0 0 0 3px rgba(18,183,106,.16),0 6px 16px -2px rgba(18,183,106,.7),inset 0 1px 0 rgba(255,255,255,.55); }
.we-ac-coche.est-petite { width: 20px; height: 20px; }
.we-ac-coche svg { filter: drop-shadow(0 1px 1px rgba(0,60,30,.4)); }
.we-ac-coche path { stroke-dasharray: 26; animation: wdCheck 1s .3s cubic-bezier(.2,.7,.3,1) both; }
/* Section « Et aussi sur WorkDispo » (home/_mise_en_avant) : onglets et barres de progression du prototype */
.we-ac-mav-onglet { position: relative; overflow: hidden; display: flex; align-items: flex-start; gap: 14px; width: 100%; padding: 16px 16px 20px; border-radius: 18px; cursor: pointer; text-align: left; transition: background-color .3s, border-color .3s, box-shadow .3s; background: rgba(255,255,255,.03); border: 1px solid rgba(255,255,255,.08); }
.we-ac-mav-onglet[aria-selected="true"] { background: rgba(126,142,255,.14); border-color: rgba(126,142,255,.55); box-shadow: 0 16px 40px -12px rgba(79,99,255,.45); }
.we-ac-mav-n { flex-shrink: 0; width: 34px; height: 34px; border-radius: 10px; display: flex; align-items: center; justify-content: center; font: 600 12px 'IBM Plex Mono', monospace; background: rgba(255,255,255,.06); color: #8C97BF; }
.we-ac-mav-onglet[aria-selected="true"] .we-ac-mav-n { background: linear-gradient(135deg,#4F63FF,#7B5CFF); color: #FFFFFF; }
.we-ac-mav-barre { position: absolute; left: 0; bottom: 0; height: 2px; width: 100%; background: rgba(255,255,255,.04); }
.we-ac-mav-barre > span { display: block; height: 100%; border-radius: 2px; background: linear-gradient(90deg,#4F63FF,#6CE0A8); transition: width 2.8s linear; }
[data-we-mav-panneau][hidden] { display: none !important; }
.we-ac-pile { position: relative; margin-top: 8px; max-width: 420px; height: 300px; }
.we-ac-pile-halo { position: absolute; inset: -30px; border-radius: 40px; background: radial-gradient(closest-side,rgba(126,142,255,.35),transparent); filter: blur(6px); }
.we-ac-pile-tag { position: absolute; left: -6px; top: -14px; z-index: 5; display: inline-flex; align-items: center; gap: 7px; padding: 5px 11px; border-radius: 999px; background: #12B76A; font: 600 11px 'IBM Plex Mono', monospace; letter-spacing: .08em; text-transform: uppercase; color: #FFFFFF; box-shadow: 0 10px 24px rgba(18,183,106,.45); white-space: nowrap; }
.we-ac-pile-carte { position: absolute; left: 0; right: 0; top: 0; transition: transform .7s cubic-bezier(.2,.8,.2,1), opacity .7s; }
.we-ac-form { position: relative; display: grid; gap: 16px; padding: clamp(20px,3vw,30px); border-radius: 28px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.12); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); box-shadow: 0 40px 90px rgba(0,0,0,.35); animation: wdRise .7s .1s cubic-bezier(.2,.7,.3,1) both; min-width: 0; scroll-margin-top: 20px; }
.we-ac-point { width: 26px; height: 6px; border-radius: 99px; background: rgba(255,255,255,.15); }
.we-ac-point.est-actif { background: #7E8EFF; }
.we-ac-alerte { padding: 12px 14px; border-radius: 14px; background: rgba(255,90,90,.1); border: 1px solid rgba(255,120,120,.35); font: 600 14px 'IBM Plex Sans', sans-serif; color: #FFB4B4; }
.we-ac-alerte[hidden] { display: none; }
.we-ac-grille { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,200px),1fr)); gap: 12px; }
.we-ac-grille[hidden] { display: none; }
.we-ac-type { display: flex; align-items: center; gap: 12px; width: 100%; min-height: 50px; padding: 0 14px; border-radius: 14px; cursor: pointer; text-align: left; font: 500 15px 'IBM Plex Sans', sans-serif; color: #FFFFFF; border: 1.5px solid rgba(255,255,255,.14); background: rgba(255,255,255,.04); }
.we-ac-type:hover { border-color: rgba(126,142,255,.5); }
.we-ac-type.est-erreur { border-color: #FF8A8A; }
.we-ac-type[aria-checked="true"] { border-color: #7E8EFF; background: rgba(126,142,255,.16); }
.we-ac-type-rond { flex-shrink: 0; width: 20px; height: 20px; border-radius: 50%; border: 2px solid rgba(255,255,255,.3); }
.we-ac-type[aria-checked="true"] .we-ac-type-rond { border: 6px solid #7E8EFF; background: #FFFFFF; }
.we-ac-cran { flex: 1; height: 5px; border-radius: 99px; background: rgba(255,255,255,.1); }
.we-ac-retour { min-height: 56px; padding: 0 18px; border-radius: 16px; border: 1px solid rgba(255,255,255,.18); background: transparent; color: #FFFFFF; font: 600 15px 'Space Grotesk', sans-serif; cursor: pointer; }
.we-ac-retour:hover { background: rgba(255,255,255,.06); }
.we-ac-envoyer { flex: 1; min-height: 56px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; border: 0; border-radius: 16px; background: linear-gradient(135deg,#4F63FF,#7B5CFF); color: #FFFFFF; font: 600 16px 'Space Grotesk', sans-serif; cursor: pointer; box-shadow: 0 14px 34px rgba(79,99,255,.45); }
.we-ac-envoyer:hover { transform: translateY(-2px); }
.we-ac-envoyer[disabled] { opacity: .75; cursor: progress; transform: none; }
.we-ac-voir { flex-shrink: 0; white-space: nowrap; display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 16px; border-radius: 999px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.14); font: 600 14px 'Space Grotesk', sans-serif; color: #FFFFFF; }
.we-ac-voir:hover { background: rgba(126,142,255,.2); color: #FFFFFF; transform: translateY(-2px); }
.we-ac-etape { position: relative; border-radius: 26px; padding: 1px; transition: transform .18s cubic-bezier(.2,.7,.3,1); }
.we-ac-etape:hover { transform: translateY(-4px); }
.we-ac-offre { position: relative; overflow: hidden; isolation: isolate; padding: clamp(22px,3vw,32px); border-radius: 30px; background: radial-gradient(120% 140% at 100% 0%,#4A33C8 0%,#1A1F6E 40%,#0A1030 100%); border: 1px solid rgba(255,255,255,.12); box-shadow: 0 40px 90px rgba(0,0,0,.35); display: grid; gap: 18px; min-width: 0; }
.we-ac-offre-points { position: absolute; z-index: -1; inset: 0; background-image: radial-gradient(rgba(220,210,255,.25) 1px,transparent 1.3px); background-size: 20px 20px; mask-image: radial-gradient(60% 80% at 100% 0%,#000,transparent 75%); -webkit-mask-image: radial-gradient(60% 80% at 100% 0%,#000,transparent 75%); }
.we-ac-offre-tag { justify-self: start; display: inline-flex; align-items: center; gap: 7px; padding: 5px 11px; border-radius: 999px; background: rgba(18,183,106,.14); border: 1px solid rgba(108,224,168,.3); font: 500 11px 'IBM Plex Mono', monospace; letter-spacing: .1em; text-transform: uppercase; color: #6CE0A8; }
.we-ac-offre-tag > span { width: 6px; height: 6px; border-radius: 50%; background: #12B76A; animation: wdPulseG 2.4s infinite; }
.we-ac-avantage { display: flex; align-items: center; gap: 12px; padding: 8px 10px 8px 8px; border-radius: 14px; background: linear-gradient(90deg,rgba(18,183,106,.1),rgba(255,255,255,.02) 60%); border: 1px solid rgba(255,255,255,.07); font-size: 14.5px; line-height: 1.45; color: #E3E7FF; }
.we-ac-creer { display: inline-flex; justify-content: center; align-items: center; gap: 10px; min-height: 54px; border-radius: 16px; background: #FFFFFF; color: #0A1030; font: 600 16px 'Space Grotesk', sans-serif; box-shadow: 0 14px 34px rgba(0,0,0,.35); }
.we-ac-creer:hover { color: #5B3FE0; transform: translateY(-2px); }
.we-ac-question { border-radius: 18px; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.09); overflow: hidden; }
.we-ac-question summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 58px; padding: 0 18px; cursor: pointer; list-style: none; color: #FFFFFF; font: 600 16px 'Space Grotesk', sans-serif; }
.we-ac-question summary::-webkit-details-marker { display: none; }
.we-ac-question summary > span { flex-shrink: 0; width: 28px; height: 28px; border-radius: 9px; background: rgba(255,255,255,.08); display: flex; align-items: center; justify-content: center; font: 500 18px 'IBM Plex Mono', monospace; color: #C7CEFF; transition: transform .25s; }
.we-ac-question[open] summary > span { transform: rotate(45deg); }
.we-ac-question p { padding: 0 18px 18px; font-size: 14.5px; line-height: 1.6; color: #A9B3D6; animation: wdRise .25s both; }
.we-ac-pied { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.08); font-size: 13px; color: #8C97BF; }
.we-ac-pied a { color: #A9B3D6; }
.we-ac-pied a:hover { color: #FFFFFF; }
/* F2 */
.we-at-haut { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,420px),1fr)); gap: 28px; align-items: end; animation: wdRise .6s both; }
.we-at-suivi { padding: 22px; border-radius: 24px; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.09); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); display: grid; gap: 4px; min-width: 0; }
.we-at-etape { display: flex; gap: 14px; align-items: flex-start; padding: 10px 4px; }
.we-at-etape-t { font: 600 15px 'Space Grotesk', sans-serif; color: #FFFFFF; }
.we-at-etape-d { font-size: 13.5px; color: #8C97BF; }
.we-at-rond { flex-shrink: 0; width: 30px; height: 30px; border-radius: 50%; border: 1.5px solid rgba(255,255,255,.2); display: flex; align-items: center; justify-content: center; font: 500 12px 'IBM Plex Mono', monospace; color: #8C97BF; }
.we-at-rond.est-fait { border: 0; background: #12B76A; }
.we-at-rond.est-cours { background: rgba(255,184,76,.14); border-color: #FFB84C; animation: wdPulse 2.2s ease-in-out infinite; }
.we-at-rond.est-cours > span { width: 8px; height: 8px; border-radius: 50%; background: #FFB84C; }
.we-at-bloc { padding: 22px; border-radius: 24px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1); display: grid; gap: 12px; min-width: 0; }
.we-at-barre { height: 100%; width: 0; border-radius: 999px; background: linear-gradient(90deg,#12B76A,#6CE0A8); transition: width .4s cubic-bezier(.2,.8,.2,1); }
.we-at-case { display: flex; align-items: flex-start; gap: 12px; width: 100%; padding: 10px; border: 0; border-radius: 14px; background: transparent; cursor: pointer; text-align: left; font-family: inherit; }
.we-at-case:hover { background: rgba(255,255,255,.05); }
.we-at-case-boite { flex-shrink: 0; margin-top: 1px; width: 22px; height: 22px; border-radius: 7px; display: flex; align-items: center; justify-content: center; border: 1.5px solid rgba(255,255,255,.3); color: transparent; }
.we-at-case[aria-checked="true"] .we-at-case-boite { background: #12B76A; border-color: #12B76A; color: #FFFFFF; }
.we-at-case-t { font: 600 15px 'Space Grotesk', sans-serif; color: #FFFFFF; }
.we-at-case[aria-checked="true"] .we-at-case-t { text-decoration: line-through; text-decoration-color: rgba(255,255,255,.4); opacity: .75; }
.we-at-contact { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 14px; background: rgba(255,255,255,.05); color: #FFFFFF; font: 600 15px 'Space Grotesk', sans-serif; overflow-wrap: anywhere; }
.we-at-contact:hover { background: rgba(255,255,255,.1); color: #FFFFFF; }
.we-at-enregistrer { flex: 1; min-height: 46px; border: 0; border-radius: 13px; background: #FFFFFF; color: #0A1030; font: 600 14.5px 'Space Grotesk', sans-serif; cursor: pointer; }
.we-at-annuler { min-height: 46px; padding: 0 14px; border-radius: 13px; border: 1px solid rgba(255,255,255,.18); background: transparent; color: #FFFFFF; font: 600 14.5px 'Space Grotesk', sans-serif; cursor: pointer; }
.we-at-corriger { justify-self: start; padding: 0; border: 0; background: transparent; color: #C7CEFF; font: 600 14px 'IBM Plex Sans', sans-serif; cursor: pointer; text-decoration: underline; }
.we-at-bord { display: inline-flex; align-items: center; min-height: 48px; padding: 0 18px; border-radius: 14px; border: 1px solid rgba(255,255,255,.18); color: #FFFFFF; font: 600 14.5px 'Space Grotesk', sans-serif; }
.we-at-bord:hover { background: rgba(255,255,255,.06); color: #FFFFFF; }
.we-at-blanc { display: inline-flex; align-items: center; min-height: 48px; padding: 0 18px; border-radius: 14px; background: #FFFFFF; color: #0A1030; font: 600 14.5px 'Space Grotesk', sans-serif; }
.we-at-blanc:hover { color: #2A41E8; }
/* F2 · La visite (onboarding, 05/10/2026) : valeurs de la maquette */
.we-vi { border-radius: 30px; background: rgba(255,255,255,.035); border: 1px solid rgba(255,255,255,.09); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); box-shadow: 0 40px 90px rgba(0,0,0,.35); overflow: hidden; min-width: 0; animation: wdRise .7s .1s cubic-bezier(.2,.7,.3,1) both; }
.we-vi-chapitres { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,150px),1fr)); gap: 8px; padding: 14px 22px 0; }
.we-vi-chap { display: grid; gap: 4px; text-align: left; padding: 12px 14px; border-radius: 14px; cursor: pointer; font-family: inherit; background: transparent; border: 1px solid rgba(255,255,255,.08); color: #8C97BF; transition: background-color .2s, border-color .2s; }
.we-vi-chap:hover { border-color: rgba(255,255,255,.18); }
.we-vi-chap.est-fait { background: rgba(255,255,255,.03); border-color: rgba(108,224,168,.3); color: #C7F2DD; }
.we-vi-chap.est-actuel { background: rgba(126,142,255,.16); border-color: rgba(126,142,255,.5); color: #FFFFFF; }
.we-vi-progres { height: 100%; border-radius: 2px; background: linear-gradient(90deg,#4F63FF,#8B7CFF); transition: width .5s cubic-bezier(.2,.8,.2,1); }
.we-vi-corps { padding: 28px 22px; }
.we-vi-pan { display: grid; min-width: 0; animation: wdRise .45s cubic-bezier(.2,.7,.3,1) both; }
.we-vi-dom { display: grid; gap: 4px; text-align: left; padding: 14px 16px; border-radius: 16px; cursor: pointer; font-family: inherit; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.1); }
.we-vi-dom:hover { background: rgba(255,255,255,.07); }
.we-vi-dom.est-choisi { background: rgba(126,142,255,.16); border: 1.5px solid #7E8EFF; box-shadow: 0 12px 30px rgba(79,99,255,.25); }
.we-vi-saisie { width: 100%; min-width: 0; box-sizing: border-box; min-height: 54px; padding: 0 18px; border-radius: 14px; border: 1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.06); color: #FFFFFF; font-size: 17px; outline: none; }
.we-vi-saisie::placeholder, .we-vi-champ::placeholder { color: #8C97BF; }
.we-vi-saisie:focus { border-color: #7E8EFF; box-shadow: 0 0 0 4px rgba(79,99,255,.25); }
.we-vi-mot { padding: 7px 13px; border-radius: 999px; cursor: pointer; font: 600 13px 'IBM Plex Sans', sans-serif; background: rgba(255,255,255,.06); color: #E3E7FF; border: 1px solid rgba(255,255,255,.14); }
.we-vi-mot:hover { background: rgba(255,255,255,.12); }
.we-vi-mot.est-choisi { background: #FFFFFF; color: #0A1030; border-color: #FFFFFF; }
/* Nombre de formations du mot (Sam, 05/10/2026) : même police que celui des domaines, juste au-dessus */
.we-vi-mot-n { margin-left: 7px; font: 500 11px 'IBM Plex Mono', monospace; letter-spacing: .04em; color: #8FA0FF; }
.we-vi-mot.est-choisi .we-vi-mot-n { color: #4F63FF; }
.we-vi-voir { justify-self: start; display: inline-flex; align-items: center; gap: 10px; min-height: 54px; padding: 0 24px; border: 0; border-radius: 14px; background: linear-gradient(135deg,#4F63FF,#7B5CFF); color: #FFFFFF; font: 600 16px 'Space Grotesk', sans-serif; cursor: pointer; box-shadow: 0 14px 34px rgba(79,99,255,.45); transition: transform .2s, box-shadow .2s; }
.we-vi-voir:hover { transform: translateY(-2px); box-shadow: 0 18px 40px rgba(79,99,255,.55); }
.we-vi-grand { font: 700 72px/1 'Space Grotesk', sans-serif; letter-spacing: -.045em; background: linear-gradient(120deg,#FFFFFF 30%,#A7B2FF); -webkit-background-clip: text; background-clip: text; color: transparent; }
.we-vi-champ { width: 100%; min-width: 0; box-sizing: border-box; min-height: 48px; padding: 0 14px; border-radius: 13px; border: 1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.06); color: #FFFFFF; font-size: 15px; outline: none; }
.we-vi-champ:focus { border-color: #7E8EFF; }
.we-vi-champ option { color: #0A1030; background: #FFFFFF; }
.we-vi-seg { min-height: 32px; padding: 0 14px; border: 0; border-radius: 8px; cursor: pointer; font: 600 13px 'IBM Plex Sans', sans-serif; background: transparent; color: #C7CEFF; }
.we-vi-seg.est-choisi { background: #FFFFFF; color: #0A1030; }
.we-vi-tuile { padding: 16px; border-radius: 18px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.09); min-width: 0; }
.we-vi-tuile-n { font: 700 26px 'Space Grotesk', sans-serif; letter-spacing: -.02em; color: #FFFFFF; white-space: nowrap; }
.we-vi-tuile-l { margin-top: 2px; font-size: 13px; color: #A9B3D6; }
.we-vi-duree-l { color: #D5DAF2; }
.we-vi-duree.est-choisie .we-vi-duree-l { color: #FFFFFF; font-weight: 600; }
.we-vi-duree-b { height: 100%; border-radius: 999px; background: rgba(255,255,255,.22); transition: width .4s; }
.we-vi-duree.est-choisie .we-vi-duree-b { background: linear-gradient(90deg,#4F63FF,#8B7CFF); }
.we-vi-exemple { flex-shrink: 0; padding: 3px 9px; border-radius: 999px; background: #FFF5E0; border: 1px solid #FFE0A3; font: 600 11px 'IBM Plex Mono', monospace; letter-spacing: .06em; text-transform: uppercase; color: #6E4700; }
.we-vi-exemple.est-sombre { background: rgba(255,184,76,.12); border-color: rgba(255,184,76,.3); color: #FFD08A; }
.we-vi-pied { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 0 22px 22px; }
.we-vi-prec { display: inline-flex; align-items: center; gap: 8px; min-height: 46px; padding: 0 16px; border-radius: 12px; border: 1px solid rgba(255,255,255,.14); background: transparent; color: #FFFFFF; font: 600 14.5px 'Space Grotesk', sans-serif; cursor: pointer; }
.we-vi-prec:hover { background: rgba(255,255,255,.06); }
.we-vi-suiv { display: inline-flex; align-items: center; gap: 8px; min-height: 46px; padding: 0 20px; border: 0; border-radius: 12px; background: #FFFFFF; color: #0A1030; font: 600 14.5px 'Space Grotesk', sans-serif; cursor: pointer; transition: transform .2s, box-shadow .2s; }
.we-vi-suiv:hover { transform: translateY(-1px); box-shadow: 0 10px 26px rgba(255,255,255,.18); }
@media (max-width: 1099px) {
  .we-vi-corps { padding: 22px 16px; }
}
/* F3 */
.we-cx-grille { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,400px),1fr)); gap: 28px; align-items: center; max-width: 1080px; margin: 0 auto; width: 100%; min-width: 0; }
.we-cx-point { display: flex; gap: 14px; align-items: flex-start; padding: 16px; border-radius: 20px; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.09); }
.we-cx-point-ico { flex-shrink: 0; width: 42px; height: 42px; border-radius: 13px; background: rgba(126,142,255,.16); border: 1px solid rgba(126,142,255,.3); display: flex; align-items: center; justify-content: center; color: #C7CEFF; }
/* Erreurs */
.we-er-code { font: 700 132px/.9 'Space Grotesk', sans-serif; letter-spacing: -.06em; background: linear-gradient(120deg,#FFFFFF 30%,#9AA8FF); -webkit-background-clip: text; background-clip: text; color: transparent; }
@media (max-width: 1099px) {
  .we-cx-grille { grid-template-columns: minmax(0,1fr); }
}

/* Pied de l'espace (composant « FO Pied espace ») */
.we-pied { margin: 18px -32px 0; padding: 18px 32px; border-top: 1px solid #E4E8F2; background: #FFFFFF; display: flex; flex-wrap: wrap; gap: 8px 18px; align-items: center; font-size: 13px; color: #5A6685; }
.we-pied a { color: #5A6685; }
.we-pied a:hover { color: #2A41E8; }
.we-pied .we-pied-catalogue { margin-left: auto; font-weight: 600; color: #2A41E8; }
@media (max-width: 1099px) {
  .we-pied { margin: 18px -14px 0; padding: 18px 14px; }
  .we-pied .we-pied-catalogue { margin-left: 0; }
}

/* ---------- Conditions générales de vente de l'offre organisme (legal/cgv.html.twig, 05/10/2026) ---------- */
.we-cgv { max-width: 880px; width: 100%; margin: 0 auto; gap: 18px; }
.we-cgv-tete { display: grid; gap: 10px; padding: 8px 0 4px; }
.we-cgv-sur { font: 500 11px 'IBM Plex Mono', monospace; letter-spacing: .14em; text-transform: uppercase; color: #9FB0FF; }
.we-cgv-titre { font: 700 clamp(30px,4vw,46px)/1.05 'Space Grotesk', sans-serif; letter-spacing: -.04em; color: #FFFFFF; text-wrap: balance; }
.we-cgv-date { font: 500 12.5px 'IBM Plex Mono', monospace; color: #C9D3FF; }
.we-cgv-texte { padding: clamp(22px,4vw,44px); border-radius: 26px; background: #FFFFFF; border: 1px solid #E6EAF4; box-shadow: 0 30px 60px rgba(10,16,48,.25); color: #33405C; font-size: 15.5px; line-height: 1.7; overflow-wrap: anywhere; display: grid; gap: 12px; }
.we-cgv-texte h2 { margin-top: 14px; font: 700 22px/1.25 'Space Grotesk', sans-serif; letter-spacing: -.02em; color: #0F1836; }
.we-cgv-texte h2:first-child, .we-cgv-texte h3:first-child { margin-top: 0; }
.we-cgv-texte h3 { margin-top: 8px; font: 600 17px/1.3 'Space Grotesk', sans-serif; color: #0F1836; }
.we-cgv-texte ul, .we-cgv-texte ol { padding-left: 22px; display: grid; gap: 6px; }
.we-cgv-texte a { color: #2A41E8; text-decoration: underline; text-underline-offset: 2px; }
.we-cgv-texte strong { color: #0F1836; }

/* ---------- Mobile (maquette : sous 1 100 px) ---------- */
@media (max-width: 1099px) {
  .we-entete { gap: 8px; padding: 0 14px; }
  .we-marque-tag, .we-entete-ordi { display: none !important; }
  .we-acces { padding: 0 10px; }
  .we-acces-long { display: none; }
  .we-acces-court { display: inline; }
  .we-lateral { display: none; }
  .we-main { padding: 18px 14px 130px; }
  .we-onglets { display: grid; }
  .we-fenetre { left: 0; right: 0; top: auto; bottom: 0; transform: none; width: auto; max-height: 88%; padding: 20px 18px 26px; border-radius: 28px 28px 0 0; box-shadow: 0 -30px 60px rgba(7,11,30,.35); animation: wdSheet .3s cubic-bezier(.2,.8,.2,1) both; }
  .we-feuille { max-width: none; }
  .we-db-deux { grid-template-columns: minmax(0,1fr); }
  .we-sombre-entete { gap: 8px; padding: 14px 16px; }
  .we-sombre-main { padding: 8px 16px 140px; }
  .we-sombre-pied { padding: 0 16px 30px; }
}
