/* Solycare Sales Academy — styles front-office. Mobile-first, autonomes du thème. */
.ssa-dashboard,.ssa-level,.ssa-matrix,.ssa-lessonpage,.ssa-team,.ssa-certificate,.ssa-loginwall{
	--ink:#16300d;--muted:#64748b;--line:#e2e8f0;--bg:#f6faf1;--white:#fff;
	--brand:#81d742;--brand-strong:#4a941f;--brand-dark:#2f6e14;
	--accent:#4a941f;
	max-width:1080px;margin:0 auto;padding:1rem;
	color:var(--ink);
	font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
	line-height:1.55;box-sizing:border-box;
}
.ssa-dashboard *,.ssa-level *,.ssa-matrix *,.ssa-lessonpage *,.ssa-team *,.ssa-certificate *,.ssa-loginwall *{box-sizing:border-box;}

/* ---------- Boutons ---------- */
.ssa-btn{
	display:inline-block;background:var(--brand-strong,#4a941f);color:#fff;text-decoration:none;
	padding:.6rem 1.1rem;border-radius:.6rem;font-weight:600;font-size:.95rem;
	border:0;cursor:pointer;transition:filter .15s,transform .05s;text-align:center;
}
.ssa-btn:hover{filter:brightness(1.07);}
.ssa-btn:active{transform:translateY(1px);}
.ssa-btn--ghost{background:transparent;color:var(--brand-strong,#4a941f);border:2px solid var(--brand-strong,#4a941f);}
.ssa-btn--locked{background:var(--line);color:var(--muted);cursor:not-allowed;}

/* ---------- Hero ---------- */
.ssa-hero{
	display:flex;flex-wrap:wrap;gap:1.5rem;align-items:center;justify-content:space-between;
	background:linear-gradient(135deg,#3d7d1e,#2f6e14);color:#fff;border-radius:1rem;
	padding:1.8rem;margin-bottom:1.5rem;
}
.ssa-hero__eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;opacity:.85;margin:0 0 .3rem;}
.ssa-hero__title{margin:0;font-size:1.7rem;color:#fff;}
.ssa-hero__sub{margin:.5rem 0 0;opacity:.9;max-width:42ch;}
.ssa-hero__gauge{display:flex;flex-direction:column;align-items:center;gap:.4rem;}
.ssa-hero__gauge{--p:0;}
.ssa-gauge{
	width:110px;height:110px;border-radius:50%;display:grid;place-items:center;
	background:conic-gradient(#bdf39a calc(var(--p,0)*1%),rgba(255,255,255,.18) 0);
}
.ssa-gauge__num{background:#3d7d1e;width:82px;height:82px;border-radius:50%;display:grid;place-items:center;font-size:1.5rem;font-weight:800;}
.ssa-gauge__num small{font-size:.8rem;font-weight:600;}
.ssa-gauge__label{font-size:.8rem;opacity:.9;}

/* ---------- Grille des niveaux ---------- */
.ssa-levels{display:grid;grid-template-columns:1fr;gap:1rem;}
@media(min-width:640px){.ssa-levels{grid-template-columns:1fr 1fr;}}
@media(min-width:960px){.ssa-levels{grid-template-columns:1fr 1fr 1fr;}}
.ssa-levelcard{
	background:var(--white);border:1px solid var(--line);border-top:4px solid var(--accent);
	border-radius:.9rem;padding:1.1rem;display:flex;flex-direction:column;gap:.7rem;
	box-shadow:0 1px 2px rgba(15,23,42,.04);
}
.ssa-levelcard.is-locked{opacity:.72;}
.ssa-levelcard.is-done{background:#f2fbe9;}
.ssa-levelcard__top{display:flex;align-items:center;gap:.5rem;}
.ssa-levelcard__icon{font-size:1.4rem;}
.ssa-levelcard__badge{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--brand-dark,#2f6e14);background:color-mix(in srgb,var(--accent) 18%,#fff);padding:.15rem .5rem;border-radius:1rem;}
.ssa-levelcard__check{margin-left:auto;color:#16a34a;font-weight:800;font-size:1.2rem;}
.ssa-levelcard__title{margin:0;font-size:1.2rem;}
.ssa-levelcard__desc{margin:0;color:var(--muted);font-size:.9rem;}
.ssa-levelcard__topics{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:.35rem;}
.ssa-levelcard__topics li{font-size:.75rem;background:var(--bg);border:1px solid var(--line);padding:.15rem .5rem;border-radius:.5rem;color:var(--muted);}
.ssa-levelcard .ssa-btn{margin-top:auto;}

/* ---------- Barres de progression ---------- */
.ssa-progress{display:flex;align-items:center;gap:.6rem;}
.ssa-progress__bar{flex:1;height:8px;background:var(--line);border-radius:99px;overflow:hidden;}
.ssa-progress__bar span{display:block;height:100%;background:var(--accent);border-radius:99px;transition:width .4s ease;}
.ssa-progress__label{font-size:.78rem;font-weight:700;color:var(--muted);min-width:34px;text-align:right;}
.ssa-progress--lg .ssa-progress__bar{height:12px;}

/* ---------- CTA matrice ---------- */
.ssa-toolcta{
	margin-top:1.5rem;display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;
	background:#16300d;color:#fff;border-radius:1rem;padding:1.4rem;
}
.ssa-toolcta h2{margin:0 0 .3rem;color:#fff;font-size:1.25rem;}
.ssa-toolcta p{margin:0;opacity:.85;max-width:48ch;}
.ssa-toolcta .ssa-btn--ghost{color:#bdf39a;border-color:#bdf39a;}
.ssa-complete-banner{margin-top:1.2rem;background:#ecfccb;border:1px solid #bef264;border-radius:.8rem;padding:1rem;font-weight:600;}

/* ---------- Vue niveau ---------- */
.ssa-level__head{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1rem;}
.ssa-level__icon{font-size:2.4rem;}
.ssa-level__eyebrow{margin:0;text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;color:var(--accent);font-weight:700;}
.ssa-level h1{margin:.1rem 0;font-size:1.7rem;}
.ssa-level__desc{margin:0;color:var(--muted);}
.ssa-lessonlist{list-style:none;margin:1.2rem 0 0;padding:0;display:flex;flex-direction:column;gap:.6rem;}
.ssa-lessonitem{
	display:flex;align-items:center;gap:.8rem;background:var(--white);border:1px solid var(--line);
	border-radius:.7rem;padding:.7rem .9rem;
}
.ssa-lessonitem.is-done{background:#f2fbe9;border-color:#c4e9a0;}
.ssa-lessonitem__num{width:28px;height:28px;flex:none;border-radius:50%;background:var(--bg);display:grid;place-items:center;font-weight:700;font-size:.85rem;color:var(--muted);}
.ssa-lessonitem.is-done .ssa-lessonitem__num{background:var(--accent);color:#fff;}
.ssa-lessonitem__link{flex:1;text-decoration:none;color:var(--ink);font-weight:600;}
.ssa-lessonitem__link:hover{color:var(--accent);}
.ssa-level__back{margin-top:1.2rem;}
.ssa-level__back a{color:var(--muted);text-decoration:none;}

/* ---------- Bouton "terminé" ---------- */
.ssa-checkbtn{
	flex:none;border:1.5px solid var(--accent);background:transparent;color:var(--accent);
	padding:.35rem .7rem;border-radius:.5rem;font-size:.8rem;font-weight:700;cursor:pointer;transition:.15s;
}
.ssa-checkbtn:hover{background:color-mix(in srgb,var(--accent) 10%,#fff);}
.ssa-checkbtn.is-done{background:var(--accent);color:#fff;}
.ssa-checkbtn--lg{padding:.6rem 1.2rem;font-size:.95rem;}

/* ---------- Page leçon ---------- */
.ssa-lessonpage__inner{background:var(--white);border:1px solid var(--line);border-radius:1rem;padding:1.6rem;}
.ssa-lessonpage__crumb{color:var(--accent);font-weight:700;font-size:.85rem;margin:0 0 .5rem;}
.ssa-lessonpage__title{margin:0 0 1rem;font-size:1.9rem;}
.ssa-lessonpage__thumb img{width:100%;height:auto;border-radius:.8rem;margin-bottom:1rem;}
.ssa-lessonpage__content{font-size:1.02rem;}
.ssa-lessonpage__content img{max-width:100%;height:auto;border-radius:.5rem;}
.ssa-lessonpage__actions{margin:1.6rem 0;padding-top:1.2rem;border-top:1px solid var(--line);}
.ssa-lessonpage__nav{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;}
.ssa-lessonpage__nav a{text-decoration:none;color:var(--accent);font-weight:600;font-size:.9rem;}
.ssa-lessonpage__up{color:var(--muted)!important;}

/* ---------- Matrice ---------- */
.ssa-matrix__intro p{background:#f2fbe9;border-left:4px solid var(--accent,#4a941f);padding:.8rem 1rem;border-radius:.5rem;margin:0 0 1rem;}
.ssa-matrix__filters{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:1.2rem;}
.ssa-matrix__filters label{display:flex;flex-direction:column;font-size:.75rem;font-weight:700;color:#64748b;gap:.25rem;}
.ssa-matrix__filters select,.ssa-search{padding:.5rem .7rem;border:1px solid #e2e8f0;border-radius:.5rem;font-size:.9rem;min-width:200px;}
.ssa-search{align-self:flex-end;flex:1;min-width:220px;}
.ssa-matrix__grid{display:grid;grid-template-columns:1fr;gap:1rem;}
@media(min-width:720px){.ssa-matrix__grid{grid-template-columns:1fr 1fr;}}
.ssa-solution{background:#fff;border:1px solid #e2e8f0;border-radius:.9rem;overflow:hidden;box-shadow:0 1px 2px rgba(15,23,42,.04);}
.ssa-solution__head{display:flex;align-items:center;gap:.5rem;background:#16300d;color:#fff;padding:.8rem 1rem;font-weight:700;}
.ssa-solution__product{background:#4a941f;padding:.2rem .55rem;border-radius:.4rem;font-size:.9rem;}
.ssa-solution__arrow{opacity:.7;}
.ssa-solution__client{font-size:.95rem;}
.ssa-solution__body{margin:0;padding:.4rem 1rem;}
.ssa-solution__row{display:grid;grid-template-columns:1fr;gap:.1rem;padding:.55rem 0;border-bottom:1px dashed #e2e8f0;}
.ssa-solution__row:last-child{border-bottom:0;}
.ssa-solution__row dt{margin:0;font-size:.72rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.03em;}
.ssa-solution__row dd{margin:0;font-size:.95rem;color:#16300d;}
.ssa-row--objection dd{color:#b91c1c;}
.ssa-row--argument dd{color:#3d7d1e;font-weight:600;}
.ssa-solution__foot{background:#f2fbe9;padding:.8rem 1rem;font-size:.9rem;font-style:italic;border-top:1px solid #c4e9a0;}
.ssa-matrix__noresult{text-align:center;color:#64748b;padding:2rem;}

/* ---------- Suivi équipe ---------- */
.ssa-team__scroll{overflow-x:auto;}
.ssa-team__table{width:100%;border-collapse:collapse;font-size:.85rem;min-width:560px;}
.ssa-team__table th,.ssa-team__table td{padding:.55rem .6rem;border-bottom:1px solid #e2e8f0;text-align:center;}
.ssa-team__table th{background:#f8fafc;font-size:.72rem;text-transform:uppercase;color:#64748b;}
.ssa-team__name{text-align:left!important;font-weight:600;}
.ssa-team__cell{background:linear-gradient(to right,#dcf3c4 calc(var(--p,0)*1%),transparent 0);}
.ssa-team__global{background:#f2fbe9;}

/* ---------- Attestation ---------- */
.ssa-certificate{text-align:center;}
.ssa-certificate__inner{border:6px double #4a941f;border-radius:1rem;padding:2.5rem 1.5rem;background:#fff;}
.ssa-certificate__eyebrow{text-transform:uppercase;letter-spacing:.2em;color:#4a941f;font-weight:700;margin:0;}
.ssa-certificate__inner h1{font-size:2rem;margin:.4rem 0 1rem;}
.ssa-certificate__name{font-size:1.8rem;font-weight:800;color:#3d7d1e;margin:.4rem 0;}
.ssa-certificate__body{color:#475569;margin:.3rem 0;}
.ssa-certificate__date{margin-top:1.4rem;color:#64748b;font-size:.9rem;}
.ssa-certificate .ssa-btn{margin-top:1.2rem;}
@media print{.ssa-certificate .ssa-btn{display:none;}}

/* ---------- Mur de connexion ---------- */
.ssa-loginwall{max-width:420px;text-align:center;background:#fff;border:1px solid #e2e8f0;border-radius:1rem;padding:2rem;}
.ssa-loginwall__icon{font-size:2.5rem;}
.ssa-loginwall h2{margin:.3rem 0;}
.ssa-loginwall p{color:#64748b;}
.ssa-loginwall form{text-align:left;margin-top:1rem;}
.ssa-loginwall label{display:block;font-size:.85rem;font-weight:600;margin-bottom:.7rem;}
.ssa-loginwall input[type=text],.ssa-loginwall input[type=password]{width:100%;padding:.55rem;border:1px solid #cbd5e1;border-radius:.5rem;margin-top:.2rem;}
.ssa-loginwall .button,.ssa-loginwall input[type=submit]{background:#4a941f;color:#fff;border:0;padding:.6rem 1.1rem;border-radius:.6rem;font-weight:600;cursor:pointer;}
.ssa-loginwall__lost{margin-top:.8rem;font-size:.85rem;}

/* ---------- États vides ---------- */
.ssa-empty{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:.8rem;padding:1.5rem;text-align:center;color:#64748b;}

/* ---------- Pastille de statut quiz (tableau de bord) ---------- */
.ssa-quizchip{margin:0;font-size:.78rem;font-weight:700;color:#92600a;background:#fff7e6;border:1px solid #ffe1a8;border-radius:.5rem;padding:.3rem .55rem;}
.ssa-quizchip.is-ok{color:#2f6e14;background:#f2fbe9;border-color:#c4e9a0;}

/* ---------- Quiz ---------- */
.ssa-quiz{margin-top:1.6rem;background:#fff;border:1px solid var(--line,#e2e8f0);border-radius:1rem;padding:1.4rem;}
.ssa-quiz.is-passed{border-color:#c4e9a0;background:#fbfef7;}
.ssa-quiz__head h2{margin:0 0 .3rem;font-size:1.3rem;}
.ssa-quiz__head p{margin:0 0 1rem;color:var(--muted,#64748b);font-size:.9rem;}
.ssa-quiz__q{border:1px solid var(--line,#e2e8f0);border-radius:.7rem;padding:1rem;margin:0 0 1rem;background:#fdfefb;}
.ssa-quiz__q legend{font-weight:700;padding:0 .3rem;display:flex;align-items:flex-start;gap:.5rem;}
.ssa-quiz__qnum{flex:none;width:24px;height:24px;border-radius:50%;background:var(--brand,#81d742);color:#16300d;display:inline-grid;place-items:center;font-size:.8rem;font-weight:800;}
.ssa-quiz__answers{display:flex;flex-direction:column;gap:.4rem;margin-top:.7rem;}
.ssa-quiz__answer{display:flex;align-items:center;gap:.6rem;padding:.5rem .7rem;border:1px solid var(--line,#e2e8f0);border-radius:.5rem;cursor:pointer;transition:.15s;font-size:.95rem;}
.ssa-quiz__answer:hover{border-color:var(--brand,#81d742);background:#f6faf1;}
.ssa-quiz__answer input{accent-color:var(--brand-strong,#4a941f);width:18px;height:18px;flex:none;}
.ssa-quiz__q.is-correct{border-color:#7bc043;background:#f2fbe9;}
.ssa-quiz__q.is-wrong{border-color:#f0a3a3;background:#fef4f4;}
.ssa-quiz__feedback{margin:.7rem 0 0;font-size:.88rem;font-weight:600;color:var(--ink,#16300d);}
.ssa-quiz__q.is-wrong .ssa-quiz__feedback{color:#b91c1c;}
.ssa-quiz__actions{display:flex;flex-direction:column;gap:.8rem;align-items:flex-start;}
.ssa-quiz__result{width:100%;border-radius:.6rem;padding:.8rem 1rem;font-weight:600;font-size:.92rem;}
.ssa-quiz__result.is-pass{background:#f2fbe9;border:1px solid #c4e9a0;color:#2f6e14;}
.ssa-quiz__result.is-fail{background:#fef4f4;border:1px solid #f0a3a3;color:#b91c1c;}

/* ---------- Mise en forme du contenu des leçons ---------- */
.ssa-lessonpage__content h3{font-size:1.35rem;margin:1.4rem 0 .6rem;color:var(--brand-dark,#2f6e14);}
.ssa-lessonpage__content h3:first-child{margin-top:0;}
.ssa-lessonpage__content h4{font-size:1.05rem;margin:1.1rem 0 .4rem;color:var(--ink,#16300d);}
.ssa-lessonpage__content p{margin:.5rem 0;}
.ssa-lessonpage__content ul,.ssa-lessonpage__content ol{margin:.5rem 0 .9rem;padding-left:1.3rem;}
.ssa-lessonpage__content li{margin:.3rem 0;}
.ssa-lessonpage__content ul li{list-style:none;position:relative;padding-left:1.1rem;}
.ssa-lessonpage__content ul li::before{content:"›";position:absolute;left:0;color:var(--brand-strong,#4a941f);font-weight:800;}
.ssa-lessonpage__content ol{padding-left:1.5rem;}
.ssa-lessonpage__content ol li{list-style:decimal;}
.ssa-lessonpage__content strong{color:var(--ink,#16300d);}
.ssa-tip{background:#f2fbe9;border-left:4px solid var(--brand,#81d742);padding:.85rem 1.1rem;border-radius:.5rem;margin:1.2rem 0 .4rem;font-size:.95rem;}
.ssa-tip strong{color:var(--brand-dark,#2f6e14);}
