/* =========================================================
   Hope Apprentissage — Espace Praticien
   Sous-ensemble autonome de la charte graphique commune
   (Or lumineux / Or bronze / Écru / Ardoise — polices Lexend/Nunito)
   Dupliqué volontairement ici (voir README) pour que ce plugin reste
   fonctionnel indépendamment du thème et des autres plugins Hope.
   ========================================================= */

:root{
	--hope-ep-or: #D4AF37;
	--hope-ep-or-fonce: #7A6332;
	--hope-ep-ecru: #F7F5F0;
	--hope-ep-ecru-2: #F0ECE2;
	--hope-ep-ardoise: #2C3E50;
	--hope-ep-ardoise-douce: #5b6b78;
	--hope-ep-wal: #2ECC71;
	--hope-ep-wal-fonce: #219a56;
	--hope-ep-radius: 12px;
	--hope-ep-radius-lg: 20px;
	--hope-ep-ombre: 0 6px 20px rgba(122,99,50,0.10);
	--hope-ep-ombre-hover: 0 12px 28px rgba(122,99,50,0.18);
	--hope-ep-region: var(--hope-ep-or);
}

.hope-ep-dashboard, [data-hope-ep-inscription] {
	font-family: 'Lexend', sans-serif;
	color: var(--hope-ep-ardoise);
	line-height: 1.6;
}
.hope-ep-dashboard h1, .hope-ep-dashboard h3,
[data-hope-ep-inscription] h3 {
	font-family: 'Nunito', sans-serif;
	font-weight: 800;
	color: var(--hope-ep-or-fonce);
}

/* ---------- Choix profil (hub) ---------- */
.choix-profil{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.choix-carte{
	background:#fff; border:2px solid #eee2c0; border-radius:var(--hope-ep-radius-lg);
	padding:34px 26px; text-align:center; transition:all .2s;
}
.choix-carte:hover{ border-color:var(--hope-ep-or); box-shadow:var(--hope-ep-ombre-hover); transform:translateY(-4px); }
.choix-carte .icone{ font-size:2.4rem; margin-bottom:14px; }

/* ---------- Étapes d'inscription ---------- */
.etapes-progres{ display:flex; justify-content:space-between; margin-bottom:32px; gap:6px; flex-wrap:wrap; }
.etape-puce{
	flex:1; text-align:center; font-size:.78rem; font-weight:700; color:var(--hope-ep-ardoise-douce);
	padding-bottom:10px; border-bottom:3px solid #eee2c0; white-space:nowrap;
}
.etape-puce.actif{ color:var(--hope-ep-or-fonce); border-color:var(--hope-ep-or); }
.etape-puce.fait{ color:var(--hope-ep-wal-fonce); border-color:var(--hope-ep-wal); }
.etape-panneau{ display:none; }
.etape-panneau.actif{ display:block; animation:hope-ep-apparaitre .3s ease; }
.form-nav{ display:flex; justify-content:space-between; margin-top:24px; gap:10px; flex-wrap:wrap; }
@keyframes hope-ep-apparaitre{ from{opacity:0; transform:translateY(6px);} to{opacity:1; transform:translateY(0);} }

/* ---------- Formulaires ---------- */
.form-carte{
	background:#fff; border-radius:var(--hope-ep-radius-lg); padding:36px; box-shadow:var(--hope-ep-ombre);
	max-width:640px; margin:0 auto;
}
.champ{ margin-bottom:18px; }
.champ label{ display:block; font-weight:600; font-size:.85rem; margin-bottom:6px; }
.champ input, .champ select, .champ textarea{
	width:100%; padding:12px 14px; border:1px solid #ddd0a5; border-radius:var(--hope-ep-radius);
	font-family:inherit; background:var(--hope-ep-ecru); font-size:.9rem;
}
.grille-2{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.groupe-checkbox{ display:flex; flex-wrap:wrap; gap:10px; }
.check-ligne{ display:flex; align-items:center; gap:8px; font-size:.88rem; font-weight:500; }

.btn{
	display:inline-flex; align-items:center; justify-content:center; gap:8px;
	padding:14px 28px; border-radius:var(--hope-ep-radius);
	font-weight:700; font-size:.95rem; border:none; cursor:pointer; font-family:inherit;
	transition:transform .15s ease, box-shadow .15s ease, background .2s;
}
.btn-or{ background:linear-gradient(135deg,var(--hope-ep-or),#c99a2e); color:#fff; box-shadow:var(--hope-ep-ombre); }
.btn-or:hover{ transform:translateY(-2px); box-shadow:var(--hope-ep-ombre-hover); }
.btn-outline{ background:transparent; border:2px solid var(--hope-ep-or); color:var(--hope-ep-or-fonce); }
.btn-outline:hover{ background:var(--hope-ep-or); color:#fff; }
.btn-region{ background:var(--hope-ep-region); color:#fff; box-shadow:var(--hope-ep-ombre); }
.btn-region:hover{ transform:translateY(-2px); box-shadow:var(--hope-ep-ombre-hover); }
.btn-sm{ padding:8px 16px; font-size:.82rem; }
.btn-bloc{ width:100%; }
.btn:disabled{ opacity:.6; cursor:default; transform:none !important; }

.hope-pa-honeypot{ position:absolute !important; left:-9999px !important; width:1px; height:1px; overflow:hidden; }

.encadre-legal{
	background:var(--hope-ep-ecru-2); border-left:4px solid var(--hope-ep-or); border-radius:0 var(--hope-ep-radius) var(--hope-ep-radius) 0;
	padding:16px 20px; font-size:.85rem; color:var(--hope-ep-ardoise-douce); margin:24px 0;
}
ul.coeur-liste{ list-style:none; padding-left:0; margin:0; }
ul.coeur-liste li{ position:relative; padding-left:1.6em; margin-bottom:.6em; }
ul.coeur-liste li::before{ content:"♥"; position:absolute; left:0; top:0; color:var(--hope-ep-or); font-size:.95em; }

/* ---------- Tableau de bord ---------- */
.badge-transitoire{
	background:#fff3cd; border:1px solid #f1c40f; color:#7a6332; padding:10px 16px;
	border-radius:var(--hope-ep-radius); font-size:.85rem; font-weight:600; margin-bottom:20px;
}
.dash-header{ display:flex; justify-content:space-between; align-items:center; margin-bottom:30px; flex-wrap:wrap; gap:14px; }
.dash-grille{ display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.dash-bloc{ background:#fff; border-radius:var(--hope-ep-radius); padding:22px; box-shadow:var(--hope-ep-ombre); }

.statut-choix{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-bottom:24px; }
.statut-carte{
	display:block; border:2px solid #eee2c0; border-radius:var(--hope-ep-radius); padding:20px; text-align:center;
	background:#fff; cursor:pointer; transition:all .2s;
}
.statut-carte input{ display:none; }
.statut-carte .point{ font-size:1.6rem; }
.statut-carte.selection{ border-color:var(--hope-ep-or); box-shadow:var(--hope-ep-ombre); background:var(--hope-ep-ecru-2); }
.champ-delai{ display:none; margin-top:14px; }
.champ-delai.visible{ display:block; }

/* ---------- Utilitaires ---------- */
.centre{ text-align:center; }
.mt-0{ margin-top:0; }
.petit{ font-size:.8rem; color:var(--hope-ep-ardoise-douce); }
.fil-ariane{ font-size:.82rem; color:var(--hope-ep-ardoise-douce); margin-bottom:18px; }

@media (max-width:900px){
	.choix-profil{ grid-template-columns:1fr; }
	.dash-grille{ grid-template-columns:1fr; }
	.statut-choix{ grid-template-columns:1fr; }
	.grille-2{ grid-template-columns:1fr; }
}
@media (prefers-reduced-motion: reduce){
	.etape-panneau, .btn{ transition:none !important; animation:none !important; }
}
