/* EJI AI Academy V5.1 — moteur de certification */
.v51-cert-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:22px 0}.v51-stage{padding:22px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:linear-gradient(145deg,rgba(17,35,73,.95),rgba(9,20,46,.96));position:relative;overflow:hidden}.v51-stage::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#64748b}.v51-stage.done::before{background:#22c55e}.v51-stage.current::before{background:#f6c453}.v51-stage strong{display:block;font-size:1.06rem;margin:8px 0}.v51-stage small{color:#a9b7d3}.v51-stage-status{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.08);font-size:.78rem;font-weight:800}.v51-stage.done .v51-stage-status{background:rgba(34,197,94,.15);color:#86efac}.v51-stage.current .v51-stage-status{background:rgba(246,196,83,.16);color:#fde68a}.v51-cert-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:20px;margin:22px 0}.v51-panel{padding:24px;border:1px solid rgba(255,255,255,.12);border-radius:22px;background:rgba(10,25,55,.88)}.v51-panel h2,.v51-panel h3{margin-top:0}.v51-project-form{display:grid;gap:14px}.v51-project-form label{display:grid;gap:7px;font-weight:700}.v51-project-form input,.v51-project-form textarea,.v51-project-form select{width:100%;box-sizing:border-box;padding:12px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:#09162e;color:#fff}.v51-project-form textarea{min-height:120px;resize:vertical}.v51-tool-list{display:grid;gap:10px}.v51-tool-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:13px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(255,255,255,.035)}.v51-tool-row .icon{font-size:1.35rem}.v51-tool-row small{display:block;color:#9fb0cc}.v51-tool-row b{font-size:.82rem;color:#f6c453}.v51-exam-box{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px;border-radius:18px;background:linear-gradient(120deg,rgba(246,196,83,.14),rgba(55,112,255,.11));border:1px solid rgba(246,196,83,.28)}.v51-exam-box p{margin:5px 0 0;color:#bac6dc}.v51-exam-box.locked{opacity:.68}.v51-badge-wall{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.v51-badge{padding:16px;border-radius:16px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.035);text-align:center}.v51-badge span{display:block;font-size:2rem;margin-bottom:8px}.v51-badge.locked{filter:grayscale(1);opacity:.48}.v51-passport-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}.v51-stat{padding:17px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1)}.v51-stat strong{display:block;font-size:1.45rem;color:#f6c453}.v51-progress-track{height:10px;border-radius:99px;background:rgba(255,255,255,.09);overflow:hidden;margin-top:9px}.v51-progress-track i{display:block;height:100%;width:0;background:linear-gradient(90deg,#2f80ed,#f6c453);border-radius:inherit;transition:width .35s ease}.v51-dialog{max-width:720px;width:min(92vw,720px);border:1px solid rgba(255,255,255,.17);border-radius:22px;background:#08152d;color:#fff;padding:0}.v51-dialog form{padding:26px}.v51-exam-question{padding:15px 0;border-bottom:1px solid rgba(255,255,255,.1)}.v51-exam-question label{display:block;padding:8px 10px;border-radius:10px}.v51-exam-question label:hover{background:rgba(255,255,255,.05)}.v51-result{padding:14px;border-radius:13px;margin-top:14px;background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.3)}
@media(max-width:900px){.v51-cert-grid,.v51-cert-layout{grid-template-columns:1fr}.v51-passport-summary{grid-template-columns:1fr 1fr}}@media(max-width:540px){.v51-passport-summary{grid-template-columns:1fr}.v51-exam-box{align-items:flex-start;flex-direction:column}}

/* V5.9 — identité officielle des certificats */
.v59-cert-competencies{max-width:820px;margin:24px auto 4px;padding:15px 20px;border:1px solid rgba(217,155,5,.35);background:#fffaf0;border-radius:16px;text-align:left}.v59-cert-competencies>span{display:block;color:#8a6100;font-weight:900;text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;margin-bottom:9px}.v59-cert-competencies ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 26px;margin:0;padding-left:20px;color:#334155;font-size:.86rem}.v59-cert-sign{align-items:flex-end;gap:28px}.v59-seal-block,.v59-signature-block,.v59-verification{display:flex;flex-direction:column;align-items:center;justify-content:flex-end}.v59-seal{width:170px;height:170px;position:relative;display:grid;place-items:center}.v59-seal img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;mix-blend-mode:normal}.v59-seal span{position:relative;z-index:2;text-align:center;font-size:.78rem;line-height:1.08;font-weight:1000;letter-spacing:.06em;color:#6c4800;text-shadow:0 1px 0 rgba(255,255,255,.7);transform:translateY(-13px)}.v59-seal-block small,.v59-verification small{margin-top:5px;color:#6b7280;font-size:.67rem}.v59-signature-block{min-width:300px}.v59-hand-signature{width:280px!important;height:105px!important;object-fit:contain!important;mix-blend-mode:multiply!important;margin-bottom:-8px}.v59-signature-block strong{font-size:1rem;color:#071f53}.v59-signature-block span{font-size:.76rem;color:#6b7280;margin-top:4px}.v59-verification .qr-placeholder{margin:0 auto}.certificate[data-engine="V5.9"] .cert-kicker:after{content:" · V5.9";color:#0b417e}@media(max-width:760px){.v59-cert-competencies ul{grid-template-columns:1fr}.v59-cert-sign{flex-direction:column;align-items:center}.v59-signature-block{min-width:0}.v59-seal{width:145px;height:145px}}@media print{.v59-cert-competencies{break-inside:avoid}.v59-cert-sign{break-inside:avoid}.v59-seal img,.v59-hand-signature{print-color-adjust:exact;-webkit-print-color-adjust:exact}}
