/* Crew Institut 2.40.02 — Refonte Premium globale
   Couche d'interface uniquement : aucun moteur métier, aucune donnée QCM,
   aucune synchronisation Firestore n'est modifiée par ce fichier. */

.scp-root{
  --scp-ui-accent:#1fa8ff;
  --scp-ui-accent-strong:#0878e8;
  --scp-ui-accent-bright:#52c7ff;
  --scp-ui-button:#0d2c49;
  --scp-ui-button-hover:#123b61;
  --scp-ui-button-border:rgba(82,199,255,.38);
  --scp-ui-panel:#08233a;
  --scp-ui-panel-strong:#071d31;
  --scp-ui-glow:0 0 0 1px rgba(82,199,255,.20),0 10px 28px rgba(0,116,219,.22);
  --scp-ui-active-glow:0 0 0 1px rgba(101,210,255,.62),0 0 24px rgba(24,150,255,.36),inset 0 1px 0 rgba(255,255,255,.18);
}

/* ---------- Système de boutons commun à toute l'application ---------- */
.scp-root :where(
  .scp-btn,.scp-nav-btn,.scp-reg-subtheme-tab,.scp-learning-subtheme-tab,
  .scp-game-tab,.scp-reg-ana-nav-btn,.scp-reg-ana-filter-chip,.scp-reg-progress-control,
  .scp-reg-subtheme-tab,.scp-ref-nav-btn,.scp-premium-internal-tab,.scp-progress-hub-tab,
  .scp-admin-progress-tab,.scp-flash-practice-button,.scp-p7-mini-btn,.scp-ref-icon-btn,
  .scp-adaptive-confidence-button,.scp-history-filter,.scp-objective-action,
  .scp-knowledge-level-tab,.scp-switch-section-help,.scp-page-help-pill
){
  border:1px solid var(--scp-ui-button-border);
  background:linear-gradient(145deg,rgba(14,48,78,.96),rgba(8,34,57,.98));
  color:#f6fbff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 7px 18px rgba(0,0,0,.13);
  border-radius:12px;
  cursor:pointer;
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
  transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .16s ease,color .18s ease,filter .18s ease;
}
.scp-root :where(
  .scp-btn,.scp-nav-btn,.scp-reg-subtheme-tab,.scp-learning-subtheme-tab,
  .scp-game-tab,.scp-reg-ana-nav-btn,.scp-reg-ana-filter-chip,.scp-reg-progress-control,
  .scp-ref-nav-btn,.scp-premium-internal-tab,.scp-progress-hub-tab,.scp-admin-progress-tab,
  .scp-flash-practice-button,.scp-p7-mini-btn,.scp-ref-icon-btn,.scp-adaptive-confidence-button,
  .scp-history-filter,.scp-objective-action,.scp-knowledge-level-tab,.scp-switch-section-help,.scp-page-help-pill
):hover{
  border-color:rgba(82,199,255,.70);
  background:linear-gradient(145deg,rgba(18,66,108,.98),rgba(10,42,70,.99));
  box-shadow:var(--scp-ui-glow);
  transform:translateY(-1px);
}
.scp-root :where(
  .scp-btn,.scp-nav-btn,.scp-reg-subtheme-tab,.scp-learning-subtheme-tab,
  .scp-game-tab,.scp-reg-ana-nav-btn,.scp-reg-ana-filter-chip,.scp-reg-progress-control,
  .scp-ref-nav-btn,.scp-premium-internal-tab,.scp-progress-hub-tab,.scp-admin-progress-tab,
  .scp-flash-practice-button,.scp-p7-mini-btn,.scp-ref-icon-btn,.scp-adaptive-confidence-button,
  .scp-history-filter,.scp-objective-action,.scp-knowledge-level-tab,.scp-switch-section-help,.scp-page-help-pill
):active{
  transform:translateY(1px) scale(.992);
  filter:brightness(1.08);
}

/* État actif : bleu lumineux clairement distinct. */
.scp-root :where(
  .scp-nav-btn.is-active,.scp-reg-subtheme-tab.is-active,.scp-learning-subtheme-tab.is-active,
  .scp-game-tab.is-active,.scp-reg-ana-nav-btn.is-active,.scp-reg-ana-filter-chip.is-active,
  .scp-reg-progress-control.is-active,.scp-premium-internal-tab.is-active,.scp-progress-hub-tab.is-active,
  .scp-admin-progress-tab.is-active,.scp-knowledge-level-tab.is-active,[aria-selected="true"].scp-progress-hub-tab
){
  border-color:rgba(91,210,255,.90)!important;
  background:linear-gradient(145deg,#0b74dc 0%,#0b5ebc 48%,#084987 100%)!important;
  color:#fff!important;
  box-shadow:var(--scp-ui-active-glow)!important;
  text-shadow:0 1px 10px rgba(255,255,255,.12);
}

.scp-root .scp-btn-primary{
  border-color:rgba(94,211,255,.85)!important;
  background:linear-gradient(145deg,#0d84ef,#0866c8 58%,#0753a2)!important;
  color:#fff!important;
  box-shadow:var(--scp-ui-active-glow)!important;
}
.scp-root .scp-btn-secondary,.scp-root .scp-btn-tertiary{
  border-color:var(--scp-ui-button-border)!important;
  background:linear-gradient(145deg,rgba(15,53,87,.97),rgba(8,33,56,.99))!important;
  color:#edf8ff!important;
}
.scp-root .scp-btn-danger{border-color:rgba(240,101,107,.55)!important;background:linear-gradient(145deg,rgba(126,28,41,.72),rgba(73,20,31,.82))!important;color:#ffd8db!important}
.scp-root :where(.scp-btn,.scp-nav-btn,.scp-knowledge-level-tab):disabled,
.scp-root :where(.scp-btn,.scp-nav-btn,.scp-knowledge-level-tab)[aria-disabled="true"]{opacity:.42;filter:saturate(.55);box-shadow:none!important;cursor:not-allowed;transform:none!important}

/* Les réponses d'un QCM doivent aussi être immédiatement perçues comme interactives. */
.scp-root .scp-option{
  border:1px solid rgba(82,199,255,.30);
  background:linear-gradient(145deg,rgba(12,46,76,.88),rgba(7,31,52,.94));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .16s ease;
}
.scp-root .scp-option:hover{border-color:rgba(82,199,255,.70);background:linear-gradient(145deg,rgba(19,68,110,.94),rgba(9,41,68,.97));box-shadow:var(--scp-ui-glow);transform:translateY(-1px)}
.scp-root .scp-option.is-selected{border-color:rgba(93,212,255,.95);background:linear-gradient(145deg,rgba(12,108,205,.80),rgba(7,71,139,.88));box-shadow:var(--scp-ui-active-glow)}

/* ---------- En-tête des pages : explications déplacées en popup ---------- */
.scp-root .scp-page-head{align-items:center;padding:2px 0 18px;margin-bottom:14px;border-bottom:1px solid rgba(82,199,255,.17)}
.scp-root .scp-page-head-copy{min-width:0}
.scp-root .scp-page-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.scp-root .scp-page-help-pill{min-height:40px;display:inline-flex;align-items:center;gap:8px;padding:8px 13px;color:#bfeaff!important;background:linear-gradient(145deg,rgba(11,62,100,.86),rgba(7,38,64,.94))!important}
.scp-root .scp-page-help-pill svg{width:17px;height:17px;color:#55c8ff}
.scp-root .scp-page-sub{display:none!important}

/* ---------- Sélecteur commun Novice / Praticien / Expert / Progression ---------- */
.scp-root .scp-knowledge-level-nav{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:4px 0 20px;
  padding:9px;
  border:1px solid rgba(82,199,255,.22);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(8,37,61,.92),rgba(5,27,47,.97));
  box-shadow:0 16px 36px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.035);
}
.scp-root .scp-knowledge-level-tab{min-height:52px;display:flex;align-items:center;justify-content:center;gap:9px;padding:10px 14px;font-weight:800;letter-spacing:.01em}
.scp-root .scp-knowledge-level-tab svg{width:19px;height:19px;color:#64caff}
.scp-root .scp-knowledge-level-tab.is-active svg{color:#fff;filter:drop-shadow(0 0 6px rgba(255,255,255,.22))}

/* ---------- Progression : même langage que la proposition validée ---------- */
.scp-root .scp-progress-hub-hero{
  border-color:rgba(82,199,255,.20);
  background:linear-gradient(145deg,rgba(8,35,58,.96),rgba(6,25,43,.98));
  box-shadow:0 20px 48px rgba(0,0,0,.18);
}
.scp-root .scp-progress-hub-nav,
.scp-root .scp-premium-internal-nav,
.scp-root .scp-admin-progress-nav{
  border:1px solid rgba(82,199,255,.20)!important;
  background:linear-gradient(145deg,rgba(8,36,59,.96),rgba(6,26,45,.98))!important;
  box-shadow:0 16px 38px rgba(0,0,0,.16)!important;
  backdrop-filter:blur(16px);
}
.scp-root .scp-progress-hub-tab,
.scp-root .scp-premium-internal-tab,
.scp-root .scp-admin-progress-tab{
  min-height:48px;
  color:#e8f6ff;
  border:1px solid rgba(82,199,255,.28)!important;
  background:linear-gradient(145deg,rgba(13,47,77,.92),rgba(8,33,56,.97))!important;
}
.scp-root .scp-progress-hub-panel-intro,
.scp-root .scp-progress-hub-summary-lead{border-color:rgba(82,199,255,.18);background:linear-gradient(145deg,rgba(10,38,63,.94),rgba(7,29,49,.97))}
.scp-root .scp-progress-hub-card[role="button"]{
  border-color:rgba(82,199,255,.30);
  background:linear-gradient(145deg,rgba(11,43,71,.95),rgba(7,30,51,.98));
}
.scp-root .scp-progress-hub-card[role="button"]:after{content:"›";position:absolute;right:17px;top:50%;transform:translateY(-50%);font-size:1.45rem;color:#66ccff;opacity:.85}

/* Les 9 onglets de lecture restent lisibles en mode nuit. */
.scp-root .scp-premium-internal-nav{position:sticky}
.scp-root .scp-premium-internal-tab{white-space:nowrap;font-size:.78rem}

/* ---------- Pages Expert : cohérence avec le reste de l'application ---------- */
.scp-root .scp-expert-entry-main,
.scp-root .scp-expert-entry-side,
.scp-root .scp-expert-cycle-card,
.scp-root .scp-expert-cockpit-card,
.scp-root .scp-expert-cert-card,
.scp-root .scp-expert-entry-strip-card,
.scp-root .scp-expert-progress-space{
  border-color:rgba(82,199,255,.25)!important;
  background:linear-gradient(145deg,rgba(9,39,65,.97),rgba(6,27,46,.99))!important;
  box-shadow:0 18px 42px rgba(0,0,0,.17),inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.scp-root .scp-expert-entry-step,
.scp-root .scp-expert-entry-stat,
.scp-root .scp-expert-progress-kpi{
  border-color:rgba(82,199,255,.22)!important;
  background:linear-gradient(145deg,rgba(15,52,84,.78),rgba(8,35,59,.88))!important;
}
.scp-root .scp-expert-random-hero{border-color:rgba(82,199,255,.48)!important;background:linear-gradient(145deg,rgba(10,57,95,.98),rgba(7,30,52,.99))!important}
.scp-root .scp-expert-drain-track,.scp-root .scp-expert-progress-jauge-track{background:rgba(82,199,255,.11)!important}
.scp-root .scp-expert-drain-track span,.scp-root .scp-expert-progress-jauge-track span{background:linear-gradient(90deg,#0a79e6,#36bfff)!important;box-shadow:0 0 18px rgba(44,174,255,.30)}

/* ---------- Cartes/actions génériques : sensation de clic sans surcharge ---------- */
.scp-root :where(.scp-theme-card,.scp-qcm-card,.scp-learning-card,.scp-ref-card,.scp-adaptive-resource-card,.scp-crm-scenario-card,.scp-p7-scenario-card,.scp-challenge-card)[role="button"],
.scp-root .scp-theme-card{
  border-color:rgba(82,199,255,.24);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 12px 28px rgba(0,0,0,.11);
}
.scp-root .scp-theme-card:hover{border-color:rgba(82,199,255,.60);box-shadow:var(--scp-ui-glow);transform:translateY(-2px)}

/* ---------- Nouvel accueil, sans perte d'aucun accès ---------- */
.scp-launcher{
  background:
    radial-gradient(circle at 78% -12%,rgba(27,142,224,.22),transparent 34%),
    radial-gradient(circle at 8% 105%,rgba(12,88,149,.16),transparent 36%),
    linear-gradient(145deg,#03111f,#061a2c 52%,#041321)!important;
}
.scp-switch-wrap{
  width:min(calc(100vw - clamp(18px,3.5vw,74px)),1920px)!important;
  border:1px solid rgba(82,199,255,.15)!important;
  background:
    linear-gradient(155deg,rgba(8,34,57,.98),rgba(4,19,33,.995) 72%),
    #061522!important;
  box-shadow:0 28px 80px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.045)!important;
}
.scp-switch-head{align-items:center!important;border-bottom-color:rgba(82,199,255,.13)!important}
.scp-switch-brand-copy span,.scp-switch-welcome-copy{color:#91adc1!important}
.scp-switch-section{margin-top:clamp(14px,1.2vw,22px)}
.scp-switch-section:first-of-type{margin-top:clamp(8px,.8vw,14px)}
.scp-switch-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 2px 9px}
.scp-switch-section-eyebrow{margin:0 0 3px;color:#50c3ff;font-size:clamp(8px,.64vw,11px);font-weight:900;letter-spacing:.17em;text-transform:uppercase}
.scp-switch-section-title{margin:0;color:#f6fbff;font-size:clamp(14px,1.18vw,20px);font-weight:800;letter-spacing:-.01em}
.scp-switch-section-help{width:32px;height:32px;display:grid;place-items:center;padding:0;border-radius:10px;color:#6dd1ff;font-weight:900}
.scp-switch-grid{gap:clamp(8px,.8vw,14px)!important}
.scp-switch-grid-levels{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.scp-switch-grid-learn,.scp-switch-grid-experience,.scp-switch-grid-framework{grid-template-columns:repeat(5,minmax(0,1fr))!important}
.scp-switch{
  min-height:clamp(94px,12.8dvh,142px)!important;
  padding:clamp(11px,.9vw,17px)!important;
  border:1px solid rgba(82,199,255,.27)!important;
  border-radius:15px!important;
  background:linear-gradient(150deg,rgba(13,48,78,.94),rgba(7,29,49,.99))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 11px 24px rgba(0,0,0,.16)!important;
}
.scp-switch:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(105deg,rgba(255,255,255,.035),transparent 42%)}
.scp-switch:hover{border-color:color-mix(in srgb,var(--led) 62%,#52c7ff)!important;box-shadow:0 0 0 1px color-mix(in srgb,var(--led) 20%,transparent),0 12px 30px rgba(0,0,0,.18),0 0 22px color-mix(in srgb,var(--led) 13%,transparent)!important}
.scp-switch-icon{background:linear-gradient(145deg,rgba(18,81,129,.34),rgba(10,47,78,.42))!important;border-color:rgba(82,199,255,.20)!important}
.scp-switch-label{font-size:clamp(11.5px,.88vw,16px)!important;margin-top:clamp(7px,.55vw,10px)!important}
.scp-switch-foot{justify-content:flex-end!important;margin-top:4px!important}
.scp-switch-sub{display:none!important}
.scp-switch-code{font-size:clamp(7px,.52vw,10px)!important;color:color-mix(in srgb,var(--led) 74%,#a7bdd0)!important}
.scp-switch-help{border-color:rgba(82,199,255,.34)!important;background:rgba(8,47,78,.88)!important;color:#6dd1ff!important}
.scp-switch-led{display:none!important}
.scp-switch-footer{margin-top:clamp(16px,1.4vw,24px)!important;border-top-color:rgba(82,199,255,.12)!important}

/* ---------- Popups ---------- */
.scp-root .scp-help-modal,.scp-root .scp-modal{
  border-color:rgba(82,199,255,.30);
  background:linear-gradient(155deg,rgba(10,40,66,.99),rgba(5,24,41,.995));
  box-shadow:0 34px 90px rgba(0,0,0,.52),0 0 0 1px rgba(82,199,255,.08);
}
.scp-root .scp-help-block{border-color:rgba(82,199,255,.16);background:rgba(10,47,77,.50)}
.scp-root .scp-help-icon{color:#60cbff;border-color:rgba(82,199,255,.30);background:rgba(16,92,146,.22)}

/* ---------- Tablettes : priorité à la lisibilité et à la zone tactile ---------- */
@media (orientation:landscape) and (min-width:768px) and (max-width:1366px){
  .scp-main{padding:22px clamp(18px,2.3vw,30px) 66px}
  .scp-root .scp-knowledge-level-tab{min-height:50px}
  .scp-root .scp-premium-internal-nav{grid-template-columns:repeat(5,minmax(0,1fr));position:relative;top:auto}
  .scp-switch-wrap{padding:15px 17px 18px!important}
  .scp-switch-head{padding-bottom:10px!important;margin-bottom:8px!important}
  .scp-switch-section{margin-top:10px}
  .scp-switch-section-head{margin-bottom:7px}
  .scp-switch{min-height:90px!important}
}

@media (orientation:portrait) and (min-width:621px) and (max-width:1100px){
  .scp-main{padding:22px 20px 76px}
  .scp-page-head{align-items:flex-start}
  .scp-root .scp-knowledge-level-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .scp-root .scp-progress-hub-nav{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
  .scp-root .scp-premium-internal-nav{grid-template-columns:repeat(3,minmax(0,1fr));position:relative;top:auto}
  .scp-switch-grid-levels{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .scp-switch-grid-learn,.scp-switch-grid-experience,.scp-switch-grid-framework{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .scp-switch{min-height:112px!important}
  .scp-switch-wrap{max-height:none!important;margin:0!important}
}

@media (max-width:620px){
  .scp-page-head{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:start}
  .scp-page-head-actions{justify-content:flex-start}
  .scp-page-help-pill span{display:none}
  .scp-page-help-pill{width:42px;padding:0;justify-content:center}
  .scp-root .scp-knowledge-level-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:7px}
  .scp-root .scp-knowledge-level-tab{min-height:48px;padding:8px;font-size:.8rem}
  .scp-root .scp-progress-hub-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
  .scp-root .scp-premium-internal-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
  .scp-switch-section-head{align-items:center}
  .scp-switch-grid-levels,.scp-switch-grid-learn,.scp-switch-grid-experience,.scp-switch-grid-framework{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .scp-switch{min-height:104px!important}
}

/* ---------- Mode jour : même hiérarchie, sans perdre le contraste ---------- */
.scp-root[data-ui-theme="light"]{
  --scp-ui-button:#eaf4fb;
  --scp-ui-button-hover:#dceef9;
  --scp-ui-button-border:rgba(15,96,152,.32);
  --scp-ui-glow:0 0 0 1px rgba(18,132,197,.14),0 10px 24px rgba(31,94,139,.12);
  --scp-ui-active-glow:0 0 0 1px rgba(20,143,218,.38),0 10px 24px rgba(24,122,184,.18),inset 0 1px 0 rgba(255,255,255,.55);
}
.scp-root[data-ui-theme="light"] :where(
  .scp-btn,.scp-nav-btn,.scp-reg-subtheme-tab,.scp-learning-subtheme-tab,.scp-game-tab,
  .scp-reg-ana-nav-btn,.scp-reg-ana-filter-chip,.scp-reg-progress-control,.scp-ref-nav-btn,
  .scp-premium-internal-tab,.scp-progress-hub-tab,.scp-admin-progress-tab,.scp-flash-practice-button,
  .scp-p7-mini-btn,.scp-ref-icon-btn,.scp-adaptive-confidence-button,.scp-history-filter,
  .scp-objective-action,.scp-knowledge-level-tab,.scp-switch-section-help,.scp-page-help-pill
){background:linear-gradient(145deg,#f9fcfe,#e8f3fa);border-color:rgba(16,99,156,.28);color:#17364c;box-shadow:0 6px 16px rgba(43,77,101,.08)}
.scp-root[data-ui-theme="light"] .scp-option{background:linear-gradient(145deg,#fff,#eef7fc);border-color:rgba(16,99,156,.24)}
.scp-root[data-ui-theme="light"] .scp-knowledge-level-nav,
.scp-root[data-ui-theme="light"] .scp-progress-hub-nav,
.scp-root[data-ui-theme="light"] .scp-premium-internal-nav,
.scp-root[data-ui-theme="light"] .scp-admin-progress-nav{background:linear-gradient(145deg,#f8fbfd,#eef5f9)!important;border-color:rgba(16,99,156,.18)!important}

@media (prefers-reduced-motion:reduce){
  .scp-root :where(button,.scp-option,.scp-switch,.scp-theme-card){transition:none!important;animation:none!important;scroll-behavior:auto!important}
}

/* Explications contextuelles : le texte est conservé dans le DOM mais présenté en popup. */
.scp-root .scp-inline-explanation-trigger{
  display:inline-flex;align-items:center;gap:7px;margin-top:9px;min-height:34px;padding:6px 10px;
  border:1px solid rgba(82,199,255,.30);border-radius:10px;
  background:linear-gradient(145deg,rgba(12,55,89,.82),rgba(7,35,59,.92));
  color:#9bdefd;font:inherit;font-size:.72rem;font-weight:800;cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);transition:.18s ease;
}
.scp-root .scp-inline-explanation-trigger:hover{border-color:rgba(82,199,255,.66);background:linear-gradient(145deg,rgba(16,74,119,.92),rgba(8,43,72,.96));color:#e9f9ff;box-shadow:var(--scp-ui-glow);transform:translateY(-1px)}
.scp-root .scp-inline-explanation-trigger svg{width:15px;height:15px}
@media(max-width:620px){.scp-root .scp-inline-explanation-trigger span{display:none}.scp-root .scp-inline-explanation-trigger{width:36px;padding:0;justify-content:center}}

/* ---------- Couverture complète des contrôles interactifs historiques ----------
   Les anciens modules conservent leur logique et leurs classes ; cette couche
   ne change que leur perception tactile/visuelle afin qu'un bouton reste
   identifiable en mode nuit sur toutes les pages. */
.scp-root :where(
  .scp-auth-tab,.scp-account-action,.scp-offline-btn,.scp-card-help-btn,
  .scp-reg-toc-qcm,.scp-reg-ana-signal,.scp-reg-ana-strength,
  .scp-crm-module-row,.scp-crm-scenario-card,.scp-crm-retex-card,.scp-crm-option,
  .scp-r360-format,.scp-r360-history-row,.scp-r360-choice,
  .scp-ref-scope,.scp-ref-favorite,.scp-ref-match,.scp-ref-resume,
  .scp-ref-reader-back,.scp-ref-reader-close,.scp-ref-reader-expand,.scp-ref-reader-fav,
  .scp-ref-view-toggle,.scp-p7-history-row,.scp-p7-option,
  .scp-btn-apprentissage,.scp-btn-game,.scp-btn-reglementarite,
  .scp-objectives-next-action,.scp-adaptive-option
){
  border-color:rgba(82,199,255,.30)!important;
  background:linear-gradient(145deg,rgba(14,48,78,.94),rgba(8,32,54,.98))!important;
  color:#eef9ff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 7px 18px rgba(0,0,0,.12);
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
}
.scp-root :where(
  .scp-auth-tab,.scp-account-action,.scp-offline-btn,.scp-card-help-btn,
  .scp-reg-toc-qcm,.scp-reg-ana-signal,.scp-reg-ana-strength,
  .scp-crm-module-row,.scp-crm-scenario-card,.scp-crm-retex-card,.scp-crm-option,
  .scp-r360-format,.scp-r360-history-row,.scp-r360-choice,
  .scp-ref-scope,.scp-ref-favorite,.scp-ref-match,.scp-ref-resume,
  .scp-ref-reader-back,.scp-ref-reader-close,.scp-ref-reader-expand,.scp-ref-reader-fav,
  .scp-ref-view-toggle,.scp-p7-history-row,.scp-p7-option,
  .scp-btn-apprentissage,.scp-btn-game,.scp-btn-reglementarite,
  .scp-objectives-next-action,.scp-adaptive-option
):hover:not(:disabled){
  border-color:rgba(82,199,255,.70)!important;
  background:linear-gradient(145deg,rgba(19,67,109,.97),rgba(9,40,68,.99))!important;
  box-shadow:var(--scp-ui-glow)!important;
}
.scp-root :where(
  .scp-auth-tab.is-active,.scp-ref-scope.is-active,.scp-r360-format.is-selected,
  .scp-adaptive-option.is-selected
){
  border-color:rgba(91,210,255,.90)!important;
  background:linear-gradient(145deg,#0b74dc 0%,#0b5ebc 48%,#084987 100%)!important;
  color:#fff!important;
  box-shadow:var(--scp-ui-active-glow)!important;
}

/* États métier : la couleur sémantique garde toujours la priorité. */
.scp-root .scp-crm-option.is-best,
.scp-root .scp-adaptive-option.is-correct{
  border-color:rgba(91,220,158,.68)!important;
  background:linear-gradient(145deg,rgba(27,116,86,.68),rgba(10,64,55,.88))!important;
  color:#e8fff5!important;
  box-shadow:0 0 0 1px rgba(91,220,158,.16),0 10px 24px rgba(23,123,86,.14)!important;
}
.scp-root .scp-crm-option.is-selected:not(.is-best),
.scp-root .scp-adaptive-option.is-wrong{
  border-color:rgba(238,170,83,.68)!important;
  background:linear-gradient(145deg,rgba(122,77,23,.62),rgba(70,43,18,.84))!important;
  color:#fff4dc!important;
}
.scp-root .scp-r360-choice.is-reference:not(.is-selected){
  border-color:rgba(91,220,158,.48)!important;
  background:linear-gradient(145deg,rgba(20,83,68,.46),rgba(8,45,43,.72))!important;
}
.scp-root .scp-ref-favorite.is-active,
.scp-root .scp-ref-reader-fav.is-active{
  border-color:rgba(255,134,161,.52)!important;
  background:linear-gradient(145deg,rgba(120,38,66,.72),rgba(73,24,48,.88))!important;
  color:#ffd5df!important;
}
.scp-root .scp-account-action.is-danger{
  border-color:rgba(240,101,107,.40)!important;
  background:linear-gradient(145deg,rgba(104,30,42,.52),rgba(63,21,31,.72))!important;
  color:#ffd8db!important;
}
.scp-root .scp-offline-btn.is-ready{border-color:rgba(76,214,146,.58)!important;background:linear-gradient(145deg,rgba(28,112,79,.48),rgba(11,65,53,.70))!important;color:#caffdf!important}
.scp-root .scp-offline-btn.is-downloading{border-color:rgba(255,199,92,.58)!important;background:linear-gradient(145deg,rgba(126,82,13,.48),rgba(76,50,13,.72))!important;color:#ffe4a8!important}
.scp-root .scp-offline-btn.is-offline{border-color:#70cff4!important;background:linear-gradient(145deg,#0878b1,#07527c)!important;color:#fff!important}
.scp-root .scp-offline-btn.is-offline-incomplete{border-color:#ffb642!important;background:linear-gradient(145deg,#7b4d08,#553608)!important;color:#fff0cb!important}

/* Cartes-actions : bord plus lisible sans les transformer en gros boutons lumineux. */
.scp-root :where(
  .scp-reg-category-card,.scp-theme-card,.scp-qcm-card,.scp-learning-card,
  .scp-adaptive-resource-card,.scp-progress-hub-card[role="button"],
  .scp-mission-card,.scp-collection-card,.scp-ref-card
){
  border-color:rgba(82,199,255,.28)!important;
}
.scp-root :where(
  .scp-reg-category-card,.scp-theme-card,.scp-qcm-card,.scp-learning-card,
  .scp-adaptive-resource-card,.scp-progress-hub-card[role="button"],
  .scp-mission-card,.scp-collection-card,.scp-ref-card
):hover{
  border-color:rgba(82,199,255,.62)!important;
  box-shadow:var(--scp-ui-glow)!important;
}

/* Icônes de commande de l'accueil / bandeau : visibles comme contrôles tactiles. */
.scp-root :where(.scp-switch-profile,.scp-switch-logout,.scp-switch-tool){
  border:1px solid rgba(82,199,255,.30)!important;
  background:linear-gradient(145deg,rgba(14,48,78,.92),rgba(8,32,54,.98))!important;
  color:#eef9ff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 6px 16px rgba(0,0,0,.12)!important;
}
.scp-root :where(.scp-switch-profile,.scp-switch-logout,.scp-switch-tool):hover{
  border-color:rgba(82,199,255,.70)!important;
  background:linear-gradient(145deg,rgba(19,67,109,.97),rgba(9,40,68,.99))!important;
  box-shadow:var(--scp-ui-glow)!important;
}
.scp-root .scp-switch-footer-link{
  border-color:rgba(82,199,255,.18)!important;
  background:rgba(10,43,70,.42)!important;
  color:#9bdcff!important;
}
.scp-root .scp-switch-footer-link:hover{border-color:rgba(82,199,255,.48)!important;background:rgba(16,70,112,.62)!important;color:#eefaff!important}

/* Cibles purement techniques : aucune décoration pour ne pas casser les couvertures. */
.scp-root .scp-ref-cover-open{box-shadow:none!important;background:transparent!important;border:0!important}
.scp-root .scp-p7-bb-dot{box-shadow:none}

/* Mode jour des contrôles historiques. */
.scp-root[data-ui-theme="light"] :where(
  .scp-auth-tab,.scp-account-action,.scp-offline-btn,.scp-card-help-btn,
  .scp-reg-toc-qcm,.scp-reg-ana-signal,.scp-reg-ana-strength,
  .scp-crm-module-row,.scp-crm-scenario-card,.scp-crm-retex-card,.scp-crm-option,
  .scp-r360-format,.scp-r360-history-row,.scp-r360-choice,.scp-ref-scope,
  .scp-ref-favorite,.scp-ref-match,.scp-ref-resume,.scp-ref-reader-back,
  .scp-ref-reader-close,.scp-ref-reader-expand,.scp-ref-reader-fav,.scp-ref-view-toggle,
  .scp-p7-history-row,.scp-p7-option,.scp-adaptive-option
){
  background:linear-gradient(145deg,#ffffff,#edf6fb)!important;
  border-color:rgba(15,96,152,.25)!important;
  color:#17364c;
  box-shadow:0 6px 16px rgba(43,77,101,.07);
}

/* Veille réglementaire : accusé de lecture visible, état lu conservé en vert. */
.scp-root .scp-regwatch-ack{
  border-color:rgba(82,199,255,.30)!important;
  background:linear-gradient(145deg,rgba(14,48,78,.94),rgba(8,32,54,.98))!important;
  color:#dff4ff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 7px 18px rgba(0,0,0,.12);
}
.scp-root .scp-regwatch-ack:hover{border-color:rgba(82,199,255,.70)!important;background:linear-gradient(145deg,rgba(19,67,109,.97),rgba(9,40,68,.99))!important;box-shadow:var(--scp-ui-glow)!important}
.scp-root .scp-regwatch-ack.is-read{border-color:rgba(57,201,148,.62)!important;background:linear-gradient(145deg,rgba(24,111,82,.56),rgba(10,62,52,.76))!important;color:#caffea!important;box-shadow:0 0 0 1px rgba(57,201,148,.13),0 9px 20px rgba(25,120,86,.12)!important}

/* Navigation mobile et micro-épreuve Expert : mêmes repères actif/inactif. */
.scp-root .scp-mobile-nav button,
.scp-root .scp-expert-memory-options button{
  border:1px solid rgba(82,199,255,.28)!important;
  background:linear-gradient(145deg,rgba(14,48,78,.94),rgba(8,32,54,.98))!important;
  color:#eaf7ff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 5px 14px rgba(0,0,0,.11);
}
.scp-root .scp-mobile-nav button:hover,
.scp-root .scp-expert-memory-options button:hover{
  border-color:rgba(82,199,255,.68)!important;
  background:linear-gradient(145deg,rgba(19,67,109,.97),rgba(9,40,68,.99))!important;
  box-shadow:var(--scp-ui-glow)!important;
}
.scp-root .scp-mobile-nav button.is-active{
  border-color:rgba(91,210,255,.90)!important;
  background:linear-gradient(145deg,#0b74dc 0%,#0b5ebc 48%,#084987 100%)!important;
  color:#fff!important;
  box-shadow:var(--scp-ui-active-glow)!important;
}

/* ======================================================================
   2.40.01 — ALIGNEMENT VISUEL SUR LA MAQUETTE VALIDÉE
   Cible : bleu nuit profond, contours cyan nets, cartes horizontales,
   état actif bleu électrique, typographie blanche, icônes encadrées.
   Cette couche reste strictement UI : aucun moteur, aucune donnée métier.
   ====================================================================== */
.scp-root{
  --scp-ui-bg-0:#020b17;
  --scp-ui-bg-1:#041426;
  --scp-ui-bg-2:#071c31;
  --scp-ui-surface:#071b30;
  --scp-ui-surface-2:#09233d;
  --scp-ui-surface-3:#0b2b49;
  --scp-ui-line:rgba(63,168,255,.34);
  --scp-ui-line-soft:rgba(63,168,255,.18);
  --scp-ui-blue:#1499ff;
  --scp-ui-blue-2:#006bd9;
  --scp-ui-blue-3:#004a9c;
  --scp-ui-text:#f5f9ff;
  --scp-ui-muted:#a9c1d9;
  --scp-ui-shadow:0 12px 30px rgba(0,0,0,.22);
  --scp-ui-card-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 9px 22px rgba(0,0,0,.18);
  background:
    radial-gradient(circle at 78% -12%,rgba(0,125,232,.16),transparent 35%),
    linear-gradient(145deg,var(--scp-ui-bg-0),var(--scp-ui-bg-1) 52%,#061a2d 100%)!important;
  color:var(--scp-ui-text);
}

/* Bandeau supérieur : même silhouette sobre que la proposition validée. */
.scp-root .scp-topbar{
  height:78px;
  grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto;
  padding:0 clamp(18px,3vw,42px);
  background:linear-gradient(180deg,rgba(3,17,33,.985),rgba(3,20,38,.97))!important;
  border-bottom:1px solid rgba(54,164,255,.22)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.20)!important;
}
.scp-root .scp-brand-mark{background:rgba(0,137,255,.08);border-color:rgba(55,174,255,.34);color:#35b5ff}
.scp-root .scp-brand-copy strong{font-size:19px;color:#fff}
.scp-root .scp-brand-copy span{color:#8eaec9}
.scp-root .scp-icon-btn,
.scp-root .scp-top-actions .scp-btn{
  min-width:42px;min-height:42px;
  border-radius:11px!important;
  border:1px solid rgba(65,173,255,.34)!important;
  background:linear-gradient(145deg,rgba(10,40,70,.90),rgba(4,22,40,.98))!important;
  color:#f6fbff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}

/* Pages internes : plus d'air, largeur exploitable sur tablette paysage. */
.scp-root .scp-main{padding:26px clamp(22px,3.2vw,52px) 72px}
.scp-root .scp-page-head{padding:2px 0 20px;margin-bottom:16px;border-bottom:0!important}
.scp-root .scp-page-title{font-size:clamp(28px,3vw,42px);font-weight:760;letter-spacing:-.035em;color:#fff}
.scp-root .scp-eyebrow{color:#28b5ff;letter-spacing:.22em;font-weight:850}
.scp-root .scp-page-head-actions .scp-global-score,
.scp-root .scp-global-score{
  border:1px solid rgba(54,166,255,.42);
  border-radius:16px;
  background:linear-gradient(145deg,rgba(8,37,65,.96),rgba(4,22,40,.98));
  box-shadow:var(--scp-ui-card-shadow);
}

/* Tous les bandeaux de navigation deviennent de vrais contrôles tactiles. */
.scp-root :where(.scp-premium-internal-nav,.scp-progress-hub-nav,.scp-admin-progress-nav,.scp-reg-ana-nav,.scp-reg-progress-controls){
  padding:9px!important;
  gap:8px!important;
  border:1px solid rgba(63,168,255,.27)!important;
  border-radius:16px!important;
  background:linear-gradient(145deg,rgba(7,29,52,.97),rgba(4,21,39,.99))!important;
  box-shadow:var(--scp-ui-card-shadow)!important;
}
.scp-root :where(.scp-premium-internal-tab,.scp-progress-hub-tab,.scp-admin-progress-tab,.scp-reg-ana-nav-btn,.scp-reg-progress-control){
  min-height:50px!important;
  border:1px solid rgba(63,168,255,.23)!important;
  border-radius:11px!important;
  background:linear-gradient(145deg,rgba(11,43,74,.94),rgba(6,28,49,.98))!important;
  color:#edf7ff!important;
  font-weight:740!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.028)!important;
}
.scp-root :where(.scp-premium-internal-tab,.scp-progress-hub-tab,.scp-admin-progress-tab,.scp-reg-ana-nav-btn,.scp-reg-progress-control):hover{
  border-color:rgba(66,183,255,.64)!important;
  background:linear-gradient(145deg,rgba(15,61,102,.97),rgba(7,36,63,.99))!important;
  box-shadow:0 0 0 1px rgba(41,164,255,.10),0 9px 24px rgba(0,87,170,.17)!important;
}
.scp-root :where(.scp-premium-internal-tab.is-active,.scp-progress-hub-tab.is-active,.scp-admin-progress-tab.is-active,.scp-reg-ana-nav-btn.is-active,.scp-reg-progress-control.is-active,[aria-selected="true"].scp-progress-hub-tab){
  border-color:#28b9ff!important;
  background:linear-gradient(145deg,#149dff 0%,#0877e7 42%,#0750b2 100%)!important;
  color:white!important;
  box-shadow:0 0 0 1px rgba(80,204,255,.36),0 0 22px rgba(0,126,255,.35),inset 0 1px 0 rgba(255,255,255,.25)!important;
}

/* Sélecteur Progression / Novice / Praticien / Expert : apparence de la maquette. */
.scp-root .scp-knowledge-level-nav{
  margin:8px 0 22px!important;
  padding:10px!important;
  gap:12px!important;
  border-radius:16px!important;
  border:1px solid rgba(63,168,255,.26)!important;
  background:linear-gradient(145deg,rgba(7,29,52,.98),rgba(4,21,39,.99))!important;
}
.scp-root .scp-knowledge-level-tab{
  min-height:60px!important;
  border-radius:12px!important;
  border:1px solid rgba(70,176,255,.34)!important;
  background:linear-gradient(145deg,rgba(10,43,75,.96),rgba(5,27,49,.99))!important;
  color:#f4f9ff!important;
  font-size:.94rem!important;
  font-weight:780!important;
}
.scp-root .scp-knowledge-level-tab svg{width:25px!important;height:25px!important;color:#4ebcff!important}
.scp-root .scp-knowledge-level-tab.is-active{
  border-color:#35c0ff!important;
  background:linear-gradient(145deg,#179fff 0%,#0879ec 42%,#064dac 100%)!important;
  box-shadow:0 0 0 1px rgba(84,207,255,.32),0 0 26px rgba(0,126,255,.38),inset 0 1px 0 rgba(255,255,255,.25)!important;
}
.scp-root .scp-knowledge-level-tab.is-active svg{color:#fff!important}

/* Cartes principales : format court, bord net et icône contenue comme la proposition. */
.scp-root :where(.scp-theme-card,.scp-reg-category-card,.scp-learning-card,.scp-adaptive-resource-card,.scp-progress-hub-card[role="button"],.scp-mission-card,.scp-collection-card,.scp-ref-card){
  border:1px solid rgba(61,169,255,.32)!important;
  border-radius:14px!important;
  background:linear-gradient(145deg,rgba(8,33,59,.98),rgba(4,23,43,.995))!important;
  box-shadow:var(--scp-ui-card-shadow)!important;
}
.scp-root .scp-theme-card{
  min-height:142px!important;
  padding:18px 20px!important;
  border-left:1px solid rgba(61,169,255,.32)!important;
}
.scp-root .scp-theme-card::before{display:none!important}
.scp-root .scp-theme-card::after{content:"›"!important;width:auto!important;height:auto!important;right:18px!important;top:50%!important;transform:translateY(-50%)!important;border-radius:0!important;background:none!important;color:#56c2ff!important;font-size:30px!important;line-height:1!important;opacity:.95!important}
.scp-root .scp-theme-icon,
.scp-root :where(.scp-kpi-icon,.scp-reg-category-icon,.scp-learning-card-icon,.scp-adaptive-resource-icon){
  border:1px solid rgba(49,174,255,.42)!important;
  border-radius:11px!important;
  background:linear-gradient(145deg,rgba(7,84,145,.34),rgba(4,38,70,.48))!important;
  color:#29aaff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.scp-root .scp-theme-card h3{font-size:16px!important;color:#fff!important;margin-top:12px!important;padding-right:26px}
.scp-root .scp-theme-card p{color:#b5c9da!important;font-size:12px!important;padding-right:28px}
.scp-root :where(.scp-theme-score,.scp-count-badge){color:#75c9ff!important}
.scp-root :where(.scp-theme-card,.scp-reg-category-card,.scp-learning-card,.scp-adaptive-resource-card,.scp-progress-hub-card[role="button"]):hover{
  transform:translateY(-2px)!important;
  border-color:rgba(58,191,255,.72)!important;
  background:linear-gradient(145deg,rgba(10,47,82,.99),rgba(5,29,51,.995))!important;
  box-shadow:0 0 0 1px rgba(35,161,255,.10),0 12px 28px rgba(0,90,170,.17)!important;
}

/* QCM, listes, référentiels et scénarios : même profondeur sans casser la sémantique. */
.scp-root :where(.scp-qcm-card,.scp-panel,.scp-question-panel,.scp-history-row,.scp-ref-match,.scp-ref-row,.scp-crm-module-row,.scp-r360-history-row,.scp-p7-history-row,.scp-expert-entry-main,.scp-expert-entry-side,.scp-expert-cycle-card,.scp-expert-cockpit-card,.scp-expert-cert-card,.scp-expert-progress-space){
  border-color:rgba(61,169,255,.28)!important;
  background:linear-gradient(145deg,rgba(8,32,57,.97),rgba(4,22,41,.99))!important;
  box-shadow:var(--scp-ui-card-shadow)!important;
}
.scp-root .scp-qcm-card{border-left:1px solid rgba(61,169,255,.28)!important}
.scp-root .scp-question-panel{border-radius:17px!important}

/* Options/réponses : distinction immédiate entre inactif et sélectionné. */
.scp-root .scp-option{
  min-height:54px;
  border:1px solid rgba(63,168,255,.30)!important;
  border-radius:12px!important;
  background:linear-gradient(145deg,rgba(10,42,72,.94),rgba(5,27,48,.98))!important;
  color:#eef8ff!important;
}
.scp-root .scp-option:hover{border-color:rgba(65,188,255,.70)!important;background:linear-gradient(145deg,rgba(15,62,104,.96),rgba(7,36,62,.99))!important}
.scp-root .scp-option.is-selected{border-color:#37c0ff!important;background:linear-gradient(145deg,#0d76d8,#0756a5)!important;box-shadow:0 0 20px rgba(0,128,255,.24)!important}

/* Accueil : même charte, plus proche visuellement du dashboard validé. */
.scp-launcher{
  background:
    radial-gradient(circle at 78% -12%,rgba(0,127,235,.17),transparent 36%),
    linear-gradient(145deg,#020b17,#041426 52%,#061a2d)!important;
}
.scp-switch-wrap{
  width:min(calc(100vw - clamp(20px,4vw,72px)),1900px)!important;
  border:1px solid rgba(55,169,255,.19)!important;
  border-radius:19px!important;
  background:linear-gradient(145deg,rgba(4,20,37,.99),rgba(3,15,29,.995))!important;
  box-shadow:0 24px 58px rgba(0,0,0,.34)!important;
}
.scp-switch-head{align-items:center!important;border-bottom:1px solid rgba(55,169,255,.18)!important}
.scp-switch-head-title{font-size:clamp(23px,2vw,38px)!important;color:#fff!important}
.scp-switch-welcome-copy{color:#a6bdd1!important}
.scp-switch-section{margin-top:clamp(14px,1.25vw,22px)!important}
.scp-switch-section-eyebrow{color:#26b6ff!important;letter-spacing:.20em!important}
.scp-switch-section-title{color:#fff!important}
.scp-switch-grid-levels{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.scp-switch-grid-learn,.scp-switch-grid-experience,.scp-switch-grid-framework{grid-template-columns:repeat(5,minmax(0,1fr))!important}
.scp-switch{
  min-height:118px!important;
  border:1px solid rgba(62,171,255,.32)!important;
  border-radius:13px!important;
  background:linear-gradient(145deg,rgba(8,34,60,.98),rgba(4,23,42,.995))!important;
  box-shadow:var(--scp-ui-card-shadow)!important;
}
.scp-switch:hover{
  border-color:rgba(57,190,255,.72)!important;
  background:linear-gradient(145deg,rgba(11,51,87,.99),rgba(5,30,53,.995))!important;
  box-shadow:0 0 0 1px rgba(37,163,255,.10),0 12px 28px rgba(0,91,174,.16)!important;
}
.scp-switch-icon{
  border:1px solid rgba(50,176,255,.38)!important;
  background:linear-gradient(145deg,rgba(6,82,142,.30),rgba(4,37,68,.46))!important;
}
.scp-switch-label{font-size:clamp(12px,1.05vw,18px)!important;color:#fff!important}
/* Les descriptions longues de l'accueil restent disponibles via le ? popup. */
.scp-switch-sub{display:none!important}
.scp-switch-foot{justify-content:flex-end!important;margin-top:auto!important}
.scp-switch-code{color:#68c9ff!important}
.scp-switch-help,.scp-switch-section-help{
  border-color:rgba(53,180,255,.42)!important;
  background:linear-gradient(145deg,rgba(8,68,115,.52),rgba(4,37,68,.70))!important;
  color:#71d0ff!important;
}
.scp-switch-footer{border-top:1px solid rgba(55,169,255,.17)!important}

/* Popups d'explication : présentation cohérente, aucun texte d'aide perdu. */
.scp-root :where(.scp-modal,.scp-help-modal){
  border:1px solid rgba(62,177,255,.40)!important;
  border-radius:18px!important;
  background:linear-gradient(155deg,rgba(6,27,48,.995),rgba(2,15,29,.998))!important;
  box-shadow:0 28px 80px rgba(0,0,0,.55),0 0 0 1px rgba(32,148,255,.08)!important;
  color:#edf8ff!important;
}
.scp-root :where(.scp-help-icon,.scp-launcher-help-icon){border-color:rgba(56,183,255,.42)!important;background:rgba(7,71,124,.34)!important;color:#34b8ff!important}
.scp-root .scp-modal-backdrop{background:rgba(0,7,15,.72)!important;backdrop-filter:blur(8px)!important}

/* Responsive tablette : même composition, sans écraser les libellés. */
@media (orientation:landscape) and (min-width:768px) and (max-width:1366px){
  .scp-root .scp-main{padding:22px 24px 64px}
  .scp-root .scp-page-title{font-size:clamp(27px,3vw,36px)}
  .scp-root .scp-premium-internal-tab{font-size:.72rem!important;padding-inline:8px!important}
  .scp-root .scp-knowledge-level-tab{min-height:56px!important}
  .scp-root .scp-theme-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .scp-root .scp-theme-card{min-height:132px!important;padding:16px!important}
  .scp-switch-grid-levels{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .scp-switch-grid-learn,.scp-switch-grid-experience,.scp-switch-grid-framework{grid-template-columns:repeat(5,minmax(0,1fr))!important}
  .scp-switch{min-height:104px!important;padding:12px!important}
}
@media (orientation:portrait) and (min-width:621px) and (max-width:1100px){
  .scp-root .scp-premium-internal-nav{grid-template-columns:repeat(3,minmax(0,1fr))!important;position:static!important}
  .scp-root .scp-knowledge-level-nav{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .scp-root .scp-theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .scp-switch-grid-levels,.scp-switch-grid-learn,.scp-switch-grid-experience,.scp-switch-grid-framework{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .scp-switch{min-height:112px!important}
}
@media (max-width:620px){
  .scp-root .scp-premium-internal-nav{grid-template-columns:repeat(2,minmax(0,1fr))!important;position:static!important}
  .scp-root .scp-theme-grid{grid-template-columns:1fr!important}
  .scp-root .scp-theme-card{min-height:118px!important}
}

/* Mode jour : conserver la même géométrie et des boutons nettement visibles. */
.scp-root[data-ui-theme="light"] :where(.scp-theme-card,.scp-reg-category-card,.scp-learning-card,.scp-adaptive-resource-card,.scp-panel,.scp-qcm-card){
  background:linear-gradient(145deg,#ffffff,#eef6fb)!important;
  border-color:rgba(20,112,177,.25)!important;
  box-shadow:0 9px 22px rgba(37,82,115,.08)!important;
}


/* ======================================================================
   Crew Institut 2.40.02 — QA responsive de production
   Corrige les conflits de cascade introduits par la couche Premium 2.40.01.
   Cibles vérifiées : iPad paysage/portrait, iPhone paysage/portrait,
   petits téléphones et barres de navigation à forte densité.
   ====================================================================== */

/* Les règles globales Premium ont une spécificité supérieure aux anciens
   breakpoints d'app.css : on rétablit ici explicitement la géométrie mobile. */
@media (orientation:landscape) and (min-width:768px) and (max-width:1366px){
  .scp-root .scp-topbar{
    height:72px!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    gap:10px!important;
    padding-left:max(14px,env(safe-area-inset-left))!important;
    padding-right:max(14px,env(safe-area-inset-right))!important;
  }
  .scp-root .scp-main{padding:22px clamp(18px,2.3vw,30px) 66px!important}
  .scp-root .scp-page-head{gap:14px!important}
  .scp-root .scp-page-title{font-size:clamp(27px,3vw,36px)!important}
  .scp-root .scp-premium-internal-tab{min-height:48px!important;font-size:.76rem!important;padding-inline:8px!important}
  .scp-root .scp-knowledge-level-tab{min-height:56px!important}
  .scp-root .scp-theme-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .scp-root .scp-theme-card{min-height:132px!important;padding:16px!important}
  .scp-switch-grid-levels{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .scp-switch-grid-learn,.scp-switch-grid-experience,.scp-switch-grid-framework{grid-template-columns:repeat(5,minmax(0,1fr))!important}
  .scp-switch{min-height:104px!important;padding:12px!important}
}

/* iPad 10/11 pouces paysage et tablettes proches de 1024 px : les groupes de
   cinq cartes deviennent trop serrés. Trois colonnes assurent une vraie cible
   tactile et des libellés non écrasés, sans changer les contenus. */
@media (orientation:landscape) and (min-width:768px) and (max-width:1100px){
  .scp-switch-grid-learn,.scp-switch-grid-experience,.scp-switch-grid-framework{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .scp-switch{min-height:112px!important}
  .scp-root .scp-premium-internal-nav{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

@media (orientation:portrait) and (min-width:621px) and (max-width:1100px){
  .scp-root .scp-topbar{
    height:68px!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    gap:9px!important;
    padding-left:max(11px,env(safe-area-inset-left))!important;
    padding-right:max(11px,env(safe-area-inset-right))!important;
  }
  .scp-root .scp-main{padding:22px 20px 82px!important}
  .scp-root .scp-page-head{align-items:flex-start!important;gap:14px!important}
  .scp-root .scp-page-title{font-size:clamp(28px,4.4vw,38px)!important}
  .scp-root .scp-knowledge-level-nav{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .scp-root .scp-progress-hub-nav{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
  .scp-root .scp-premium-internal-nav{grid-template-columns:repeat(3,minmax(0,1fr))!important;position:static!important}
  .scp-root .scp-theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .scp-switch-grid-levels,.scp-switch-grid-learn,.scp-switch-grid-experience,.scp-switch-grid-framework{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .scp-switch{min-height:132px!important}
}

@media (max-width:620px){
  .scp-root{overflow-x:hidden!important}
  .scp-root .scp-topbar{
    height:62px!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:6px!important;
    padding-left:max(8px,env(safe-area-inset-left))!important;
    padding-right:max(8px,env(safe-area-inset-right))!important;
  }
  .scp-root .scp-brand{justify-content:flex-start!important;min-width:0!important}
  .scp-root .scp-brand-copy{min-width:0!important}
  .scp-root .scp-brand-copy strong{font-size:14px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .scp-root .scp-brand-copy span{display:none!important}
  .scp-root .scp-top-actions{gap:5px!important}
  .scp-root .scp-icon-btn{width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;padding:0!important}
  .scp-root .scp-main{padding:16px 13px calc(92px + env(safe-area-inset-bottom))!important}
  .scp-root .scp-page-head{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;align-items:start!important}
  .scp-root .scp-page-head-actions{justify-content:flex-start!important;width:100%!important}
  .scp-root .scp-page-title{font-size:clamp(23px,7vw,31px)!important;line-height:1.1!important}
  .scp-root .scp-global-score{min-width:116px!important;padding:12px 14px!important}
  .scp-root .scp-global-score strong{font-size:30px!important}
  .scp-root .scp-premium-internal-nav,.scp-root .scp-progress-hub-nav,.scp-root .scp-admin-progress-nav{grid-template-columns:repeat(2,minmax(0,1fr))!important;position:static!important}
  .scp-root .scp-premium-internal-tab,.scp-root .scp-progress-hub-tab,.scp-root .scp-admin-progress-tab{min-height:48px!important;font-size:.78rem!important;padding:8px!important}
  .scp-root .scp-knowledge-level-nav{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;padding:7px!important}
  .scp-root .scp-knowledge-level-tab{min-height:48px!important;padding:8px!important;font-size:.8rem!important}
  .scp-root .scp-theme-grid{grid-template-columns:1fr!important}
  .scp-root .scp-theme-card{min-height:118px!important;padding:14px!important}
  /* IMPORTANT : 2.40.01 réimposait deux colonnes ici après home-switchpanel.css. */
  .scp-switch-grid-levels,.scp-switch-grid-learn,.scp-switch-grid-experience,.scp-switch-grid-framework{grid-template-columns:minmax(0,1fr)!important}
  .scp-switch{min-height:132px!important;padding:15px!important}
  .scp-switch-footer-link{min-height:44px!important}
  .scp-root .scp-option{min-height:52px!important;padding:12px!important}
}

@media (max-width:420px){
  .scp-root .scp-main{padding-left:10px!important;padding-right:10px!important}
  .scp-root .scp-page-title{font-size:24px!important}
  .scp-root .scp-icon-btn{width:38px!important;min-width:38px!important;height:38px!important;min-height:38px!important}
  .scp-root .scp-premium-internal-nav,.scp-root .scp-progress-hub-nav,.scp-root .scp-admin-progress-nav{gap:6px!important;padding:7px!important}
  .scp-root .scp-premium-internal-tab,.scp-root .scp-progress-hub-tab,.scp-root .scp-admin-progress-tab{font-size:.74rem!important}
  .scp-switch{min-height:126px!important;padding:14px!important}
}

/* ========================================================================== */
/* Crew Institut 2.40.05 — États actifs bleu premium + Expert Signature UI   */
/* Couche strictement visuelle : aucun calcul, QCM, historique ou Firestore.  */
/* ========================================================================== */

.scp-root{
  --scp-active-blue-1:#24b8ff;
  --scp-active-blue-2:#0a82ec;
  --scp-active-blue-3:#075fc3;
  --scp-active-blue-4:#063e83;
  --scp-active-edge:rgba(119,221,255,.92);
  --scp-active-halo:0 0 0 1px rgba(105,215,255,.42),0 10px 26px rgba(0,112,235,.32),0 0 26px rgba(39,175,255,.20),inset 0 1px 0 rgba(255,255,255,.24);
  --scp-expert-surface:rgba(5,24,43,.96);
  --scp-expert-surface-2:rgba(8,37,65,.94);
  --scp-expert-line:rgba(88,202,255,.24);
  --scp-expert-line-strong:rgba(102,211,255,.52);
  --scp-expert-muted:#91b6cb;
  --scp-expert-text:#f4fbff;
}

/* Bouton / onglet actif : état franchement promu, exclusivement en nuances de bleu. */
.scp-root :where(
  .scp-nav-btn.is-active,
  .scp-reg-subtheme-tab.is-active,
  .scp-learning-subtheme-tab.is-active,
  .scp-game-tab.is-active,
  .scp-reg-ana-nav-btn.is-active,
  .scp-reg-ana-filter-chip.is-active,
  .scp-reg-progress-control.is-active,
  .scp-premium-internal-tab.is-active,
  .scp-progress-hub-tab.is-active,
  .scp-admin-progress-tab.is-active,
  .scp-knowledge-level-tab.is-active,
  .scp-auth-tab.is-active,
  .scp-ref-scope.is-active,
  .scp-ref-icon-btn.is-active,
  .scp-national-filter.is-active,
  .scp-r360-format.is-selected,
  .scp-r360-choice.is-selected,
  .scp-adaptive-confidence-button.is-selected,
  .scp-adaptive-option.is-selected,
  [aria-current="page"].scp-btn,
  [aria-current="page"].scp-nav-btn,
  [aria-selected="true"].scp-progress-hub-tab,
  [aria-selected="true"].scp-premium-internal-tab,
  [aria-selected="true"].scp-admin-progress-tab,
  [aria-pressed="true"].scp-ref-icon-btn
){
  border-color:var(--scp-active-edge)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,0) 34%),
    linear-gradient(135deg,var(--scp-active-blue-1) 0%,var(--scp-active-blue-2) 26%,var(--scp-active-blue-3) 62%,var(--scp-active-blue-4) 100%)!important;
  color:#fff!important;
  box-shadow:var(--scp-active-halo)!important;
  text-shadow:0 1px 8px rgba(0,37,91,.34)!important;
  filter:saturate(1.08)!important;
}
.scp-root :where(
  .scp-nav-btn.is-active,
  .scp-reg-subtheme-tab.is-active,
  .scp-learning-subtheme-tab.is-active,
  .scp-game-tab.is-active,
  .scp-reg-ana-nav-btn.is-active,
  .scp-reg-ana-filter-chip.is-active,
  .scp-reg-progress-control.is-active,
  .scp-premium-internal-tab.is-active,
  .scp-progress-hub-tab.is-active,
  .scp-admin-progress-tab.is-active,
  .scp-knowledge-level-tab.is-active,
  .scp-auth-tab.is-active,
  .scp-ref-scope.is-active,
  .scp-ref-icon-btn.is-active,
  .scp-national-filter.is-active,
  .scp-r360-format.is-selected,
  .scp-r360-choice.is-selected,
  .scp-adaptive-confidence-button.is-selected
) svg{
  color:#fff!important;
  filter:drop-shadow(0 0 7px rgba(192,238,255,.55));
}

/* Les états métier correct/faux conservent leur sémantique et ne sont pas recolorés. */
.scp-root .scp-adaptive-option.is-correct,
.scp-root .scp-crm-option.is-best{filter:none!important}
.scp-root .scp-adaptive-option.is-wrong,
.scp-root .scp-crm-option.is-selected:not(.is-best){filter:none!important}

/* ---------- Expert : accueil / cockpit ---------- */
.scp-root .scp-expert-entry-hero{
  gap:18px!important;
  margin:18px 0 20px!important;
}
.scp-root .scp-expert-entry-main,
.scp-root .scp-expert-entry-side{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border:1px solid var(--scp-expert-line-strong)!important;
  border-radius:28px!important;
  background:
    radial-gradient(circle at 92% 5%,rgba(58,184,255,.20),transparent 31%),
    radial-gradient(circle at 8% 95%,rgba(8,104,221,.15),transparent 34%),
    linear-gradient(145deg,rgba(8,39,69,.985),rgba(4,21,38,.995))!important;
  box-shadow:0 26px 70px rgba(0,0,0,.28),0 0 0 1px rgba(74,190,255,.07),inset 0 1px 0 rgba(255,255,255,.07)!important;
}
.scp-root .scp-expert-entry-main:before,
.scp-root .scp-expert-entry-side:before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  pointer-events:none;
  background:linear-gradient(110deg,rgba(255,255,255,.055),transparent 24%,transparent 72%,rgba(69,191,255,.045));
}
.scp-root .scp-expert-entry-main{padding:clamp(25px,4.5vw,42px)!important}
.scp-root .scp-expert-entry-main .scp-eyebrow,
.scp-root .scp-expert-cycle-card .scp-eyebrow,
.scp-root .scp-expert-progress-space .scp-eyebrow{
  display:inline-flex;
  width:max-content;
  align-items:center;
  min-height:26px;
  padding:5px 9px;
  border:1px solid rgba(91,211,255,.30);
  border-radius:999px;
  background:rgba(25,143,222,.10);
  color:#8fdcff!important;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.105em;
}
.scp-root .scp-expert-entry-main h2{
  max-width:760px;
  margin:12px 0 10px!important;
  color:var(--scp-expert-text)!important;
  font-size:clamp(1.8rem,4.4vw,2.8rem)!important;
  line-height:1.08!important;
  letter-spacing:-.04em!important;
}
.scp-root .scp-expert-entry-main>p:last-of-type{color:#b8d0de!important;line-height:1.68!important}
.scp-root .scp-expert-entry-steps{gap:12px!important;margin-top:24px!important}
.scp-root .scp-expert-entry-step{
  position:relative;
  min-width:0;
  padding:17px 17px 18px!important;
  border:1px solid rgba(91,205,255,.19)!important;
  border-radius:19px!important;
  background:linear-gradient(145deg,rgba(18,63,99,.62),rgba(6,31,54,.78))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045)!important;
}
.scp-root .scp-expert-entry-step strong{
  width:36px!important;height:36px!important;
  border-color:rgba(116,221,255,.55)!important;
  background:linear-gradient(145deg,#0b8df2,#0751a4)!important;
  color:#fff!important;
  box-shadow:0 7px 18px rgba(0,107,224,.25),inset 0 1px 0 rgba(255,255,255,.22)!important;
}
.scp-root .scp-expert-entry-step h3{margin-top:12px!important;color:#ecf9ff!important}
.scp-root .scp-expert-entry-step p{color:#8fb1c5!important}

.scp-root .scp-expert-entry-side{padding:22px!important}
.scp-root .scp-expert-entry-side-stats{gap:11px!important}
.scp-root .scp-expert-entry-stat{
  min-height:88px;
  padding:15px!important;
  border:1px solid rgba(97,208,255,.21)!important;
  border-radius:17px!important;
  background:linear-gradient(145deg,rgba(15,62,100,.65),rgba(5,29,51,.82))!important;
}
.scp-root .scp-expert-entry-stat strong{color:#f7fcff!important;font-size:1.3rem!important;letter-spacing:-.02em}
.scp-root .scp-expert-entry-stat span{color:#89aec3!important;font-weight:700}
.scp-root .scp-expert-entry-actions{gap:11px!important}
.scp-root .scp-expert-entry-actions .scp-btn{min-height:52px!important;border-radius:14px!important;font-weight:900!important}
.scp-root .scp-expert-entry-note{padding-top:2px;color:#7fa6bc!important}

.scp-root .scp-expert-entry-strip{gap:12px!important;margin-bottom:20px!important}
.scp-root .scp-expert-entry-strip-card{
  position:relative;
  overflow:hidden;
  min-height:112px;
  padding:17px!important;
  border:1px solid rgba(86,198,255,.20)!important;
  border-radius:20px!important;
  background:linear-gradient(145deg,rgba(10,43,73,.96),rgba(5,25,44,.99))!important;
  box-shadow:0 15px 38px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.scp-root .scp-expert-entry-strip-card:before,
.scp-root .scp-expert-cockpit-card:before,
.scp-root .scp-expert-progress-kpi:before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;
  width:3px;
  border-radius:3px;
  background:linear-gradient(180deg,#45c4ff,#0872dc 56%,rgba(8,114,220,.15));
  box-shadow:0 0 15px rgba(44,178,255,.22);
}
.scp-root .scp-expert-entry-strip-card strong{color:#eaf8ff!important;font-size:1.28rem!important}
.scp-root .scp-expert-entry-strip-card span{color:#afd0e1!important;font-weight:800}
.scp-root .scp-expert-entry-strip-card small{color:#769bb0!important}

/* ---------- Expert : cycle annuel et cockpit analytique ---------- */
.scp-root .scp-expert-cycle-banner{gap:18px!important;margin:20px 0!important}
.scp-root .scp-expert-cycle-card,
.scp-root .scp-expert-cert-card,
.scp-root .scp-expert-cockpit-card{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(91,205,255,.25)!important;
  background:
    radial-gradient(circle at 100% 0,rgba(45,168,255,.10),transparent 38%),
    linear-gradient(145deg,rgba(8,39,67,.97),rgba(5,24,43,.995))!important;
  box-shadow:0 20px 52px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.04)!important;
}
.scp-root .scp-expert-cycle-card{padding:23px!important;border-radius:24px!important}
.scp-root .scp-expert-cert-card{padding:23px!important;border-radius:24px!important}
.scp-root .scp-expert-cycle-head h2{margin:10px 0 7px!important;color:#f3fbff!important;font-size:clamp(1.25rem,2.6vw,1.55rem)!important}
.scp-root .scp-expert-cycle-head p{color:#91b1c4!important}
.scp-root .scp-expert-deadline,
.scp-root .scp-expert-progress-deadline{
  min-width:145px;
  padding:13px 15px;
  border:1px solid rgba(101,213,255,.30);
  border-radius:16px;
  background:linear-gradient(145deg,rgba(13,83,141,.40),rgba(6,42,75,.58));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.scp-root .scp-expert-deadline strong,
.scp-root .scp-expert-progress-deadline strong{color:#eaf9ff!important;font-size:1.45rem!important;letter-spacing:-.025em}
.scp-root .scp-expert-deadline span,
.scp-root .scp-expert-progress-deadline span{display:block;margin-top:3px;color:#8fc2dc!important;font-size:.72rem;font-weight:800;line-height:1.35}
.scp-root .scp-expert-drain{margin-top:20px!important;padding:15px 16px;border:1px solid rgba(91,204,255,.17);border-radius:17px;background:rgba(2,20,37,.38)}
.scp-root .scp-expert-drain-head,.scp-root .scp-expert-drain-note{color:#93b7ca!important}
.scp-root .scp-expert-drain-head strong{color:#dff6ff!important}
.scp-root .scp-expert-drain-track,
.scp-root .scp-expert-progress-jauge-track{
  height:11px!important;
  border:1px solid rgba(94,204,255,.10);
  background:rgba(2,15,28,.70)!important;
  box-shadow:inset 0 1px 4px rgba(0,0,0,.30)!important;
}
.scp-root .scp-expert-drain-track span,
.scp-root .scp-expert-progress-jauge-track span{
  background:linear-gradient(90deg,#075dbf 0%,#098bee 48%,#49c7ff 100%)!important;
  box-shadow:0 0 19px rgba(30,159,255,.32)!important;
}
.scp-root .scp-expert-cert-badge{
  border-color:rgba(104,213,255,.30)!important;
  background:rgba(23,133,205,.10)!important;
  color:#91ddff!important;
}
.scp-root .scp-expert-cert-card h3{color:#f0faff!important}
.scp-root .scp-expert-cert-card p{color:#8fb0c3!important}
.scp-root .scp-expert-cert-card.is-certified{
  border-color:rgba(100,216,255,.48)!important;
  background:radial-gradient(circle at 100% 0,rgba(71,197,255,.15),transparent 40%),linear-gradient(145deg,rgba(6,51,79,.98),rgba(4,27,48,.99))!important;
}
.scp-root .scp-expert-cert-card.is-certified .scp-expert-cert-badge{color:#c8f2ff!important}

.scp-root .scp-expert-cockpit{gap:12px!important;margin-bottom:20px!important}
.scp-root .scp-expert-cockpit-card{
  min-height:125px;
  padding:18px 18px 17px 20px!important;
  border-radius:20px!important;
}
.scp-root .scp-expert-cockpit-card strong{color:#f5fbff!important;font-size:1.55rem!important;letter-spacing:-.03em}
.scp-root .scp-expert-cockpit-card span{margin-top:5px!important;color:#afd0df!important;font-weight:800}
.scp-root .scp-expert-cockpit-card small{margin-top:9px!important;color:#7599ae!important;line-height:1.45!important}

/* ---------- QCM Expert en session : lecture plus premium, sans toucher au moteur ---------- */
.scp-root.scp-expert-immersive-session .scp-main{
  background:
    radial-gradient(circle at 50% -12%,rgba(19,136,226,.17),transparent 36%),
    radial-gradient(circle at 10% 45%,rgba(22,104,211,.07),transparent 28%);
}
.scp-root.scp-expert-immersive-session .scp-reg-quiz-wrap{
  width:min(100%,1020px)!important;
  margin-inline:auto!important;
}
.scp-root.scp-expert-immersive-session .scp-reg-quiz-navigation{
  margin-bottom:12px;
  padding:7px;
  border:1px solid rgba(86,197,255,.15);
  border-radius:15px;
  background:rgba(5,26,46,.72);
  backdrop-filter:blur(12px);
}
.scp-root.scp-expert-immersive-session .scp-quiz-meta{
  align-items:center!important;
  margin:0 0 12px!important;
  padding:11px 13px;
  border:1px solid rgba(93,204,255,.18);
  border-radius:15px;
  background:linear-gradient(145deg,rgba(10,45,76,.76),rgba(5,27,48,.84));
}
.scp-root.scp-expert-immersive-session .scp-quiz-meta strong{color:#8fdcff!important}
.scp-root .scp-expert-immersive-pill{
  border-color:rgba(97,211,255,.32)!important;
  background:linear-gradient(145deg,rgba(9,109,191,.25),rgba(5,63,116,.28))!important;
  color:#b9ecff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.scp-root.scp-expert-immersive-session .scp-reg-quiz-timer{
  margin:0 0 11px!important;
  padding:15px 17px!important;
  border:1px solid rgba(88,202,255,.28)!important;
  border-radius:17px!important;
  background:radial-gradient(circle at 100% 0,rgba(45,174,255,.10),transparent 40%),linear-gradient(145deg,rgba(8,40,69,.96),rgba(5,24,42,.99))!important;
  box-shadow:0 16px 38px rgba(0,0,0,.17),inset 0 1px 0 rgba(255,255,255,.04)!important;
}
.scp-root.scp-expert-immersive-session .scp-reg-quiz-timer-copy strong{color:#eaf9ff!important}
.scp-root.scp-expert-immersive-session .scp-reg-quiz-timer-copy span{color:#89acbf!important}
.scp-root.scp-expert-immersive-session .scp-reg-quiz-timer-value{color:#86dcff!important;font-weight:900!important}
.scp-root.scp-expert-immersive-session .scp-reg-quiz-timer-track{height:7px!important;background:rgba(2,17,31,.76)!important}
.scp-root.scp-expert-immersive-session .scp-reg-quiz-timer-track span{background:linear-gradient(90deg,#0873dc,#25b8ff)!important;box-shadow:0 0 13px rgba(27,165,255,.30)}

.scp-root.scp-expert-immersive-session .scp-expert-strikes{gap:10px!important;margin-bottom:12px!important}
.scp-root.scp-expert-immersive-session .scp-expert-strike{
  border-color:rgba(87,198,255,.18)!important;
  background:linear-gradient(145deg,rgba(9,43,73,.82),rgba(5,27,47,.91))!important;
  border-radius:14px!important;
}
.scp-root.scp-expert-immersive-session .scp-expert-strike:not(.is-danger) strong{color:#c8eeff!important}
.scp-root.scp-expert-immersive-session .scp-progress-segments{gap:5px!important;margin:12px 0 18px!important}
.scp-root.scp-expert-immersive-session .scp-progress-segments span{height:6px!important;background:rgba(85,184,235,.10)!important}
.scp-root.scp-expert-immersive-session .scp-progress-segments span.is-done{background:linear-gradient(90deg,#0873da,#42c5ff)!important;box-shadow:0 0 9px rgba(35,172,255,.18)}
.scp-root.scp-expert-immersive-session .scp-question-panel{
  padding:clamp(22px,3.4vw,34px)!important;
  border:1px solid rgba(92,204,255,.27)!important;
  border-radius:23px!important;
  background:
    radial-gradient(circle at 100% 0,rgba(44,166,255,.08),transparent 32%),
    linear-gradient(145deg,rgba(8,38,66,.98),rgba(4,23,41,.995))!important;
  box-shadow:0 24px 64px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.045)!important;
}
.scp-root.scp-expert-immersive-session .scp-reg-question-labels{margin-bottom:11px!important}
.scp-root.scp-expert-immersive-session .scp-question-ref{
  display:inline-flex;
  padding:5px 9px;
  border:1px solid rgba(95,207,255,.22);
  border-radius:999px;
  background:rgba(12,91,154,.18);
  color:#91d9f8!important;
}
.scp-root.scp-expert-immersive-session .scp-question{
  margin-bottom:25px!important;
  color:#f5fbff!important;
  font-size:clamp(1.08rem,2.3vw,1.48rem)!important;
  line-height:1.52!important;
  letter-spacing:-.012em;
}
.scp-root.scp-expert-immersive-session .scp-options{gap:11px!important}
.scp-root.scp-expert-immersive-session .scp-option{
  min-height:58px;
  padding:14px 15px!important;
  border:1px solid rgba(91,201,255,.20)!important;
  border-radius:15px!important;
  background:linear-gradient(145deg,rgba(12,48,80,.84),rgba(5,29,50,.92))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.scp-root.scp-expert-immersive-session .scp-option:hover{
  border-color:rgba(100,216,255,.55)!important;
  background:linear-gradient(145deg,rgba(15,69,113,.93),rgba(6,37,64,.97))!important;
  box-shadow:0 10px 28px rgba(0,91,181,.14),inset 0 1px 0 rgba(255,255,255,.05)!important;
}
.scp-root.scp-expert-immersive-session .scp-option.is-selected,
.scp-root.scp-expert-immersive-session .scp-option[aria-pressed="true"]{
  border-color:#6ed7ff!important;
  background:linear-gradient(135deg,rgba(10,132,235,.82),rgba(6,77,154,.92))!important;
  box-shadow:0 0 0 1px rgba(99,211,255,.20),0 12px 30px rgba(0,98,212,.22),inset 0 1px 0 rgba(255,255,255,.11)!important;
}
.scp-root.scp-expert-immersive-session .scp-option-letter{
  width:30px!important;height:30px!important;
  border-radius:9px!important;
  border-color:rgba(104,205,250,.26)!important;
  background:rgba(3,23,42,.42);
  color:#9ec4d8!important;
}
.scp-root.scp-expert-immersive-session .scp-option.is-selected .scp-option-letter,
.scp-root.scp-expert-immersive-session .scp-option[aria-pressed="true"] .scp-option-letter{
  border-color:#b4edff!important;
  background:rgba(255,255,255,.10)!important;
  color:#fff!important;
}
.scp-root.scp-expert-immersive-session .scp-option-text{color:#d8eaf4!important}
.scp-root.scp-expert-immersive-session .scp-quiz-actions{margin-top:20px!important}
.scp-root.scp-expert-immersive-session .scp-quiz-actions .scp-btn-primary{min-height:52px!important;padding-inline:24px!important;border-radius:14px!important;font-weight:900!important}

/* ---------- Progression Expert : véritable tableau de performance ---------- */
.scp-root .scp-progress-hub-expert{--level-accent:#24b8ff!important}
.scp-root .scp-expert-progress-space{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  margin:20px 0!important;
  padding:clamp(23px,4.3vw,38px)!important;
  border:1px solid rgba(95,208,255,.37)!important;
  border-radius:30px!important;
  background:
    radial-gradient(circle at 92% -5%,rgba(50,184,255,.18),transparent 31%),
    radial-gradient(circle at -4% 100%,rgba(7,103,214,.13),transparent 32%),
    linear-gradient(145deg,rgba(7,35,61,.99),rgba(4,20,37,.995))!important;
  box-shadow:0 30px 78px rgba(0,0,0,.28),0 0 0 1px rgba(68,184,255,.06),inset 0 1px 0 rgba(255,255,255,.055)!important;
  color:#fff!important;
}
.scp-root .scp-expert-progress-space:after{
  content:"";
  position:absolute;
  z-index:-1;
  right:-80px;top:-120px;
  width:340px;height:340px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(71,197,255,.10),transparent 67%);
  pointer-events:none;
}
.scp-root .scp-expert-progress-head{gap:22px!important;margin-bottom:22px!important}
.scp-root .scp-expert-progress-head h2{
  margin:11px 0 8px!important;
  color:#f4fbff!important;
  font-size:clamp(1.5rem,3.2vw,2.18rem)!important;
  letter-spacing:-.035em!important;
}
.scp-root .scp-expert-progress-head p:last-child{color:#92b2c5!important;line-height:1.62!important}
.scp-root .scp-expert-progress-jauge{
  margin:17px 0 22px!important;
  padding:16px 17px;
  border:1px solid rgba(91,203,255,.18);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(12,55,90,.48),rgba(4,28,49,.58));
}
.scp-root .scp-expert-progress-jauge-head{margin-bottom:10px!important;color:#92b7ca!important}
.scp-root .scp-expert-progress-jauge-head strong{color:#dcf5ff!important}
.scp-root .scp-expert-progress-grid{gap:12px!important;margin:18px 0 22px!important}
.scp-root .scp-expert-progress-kpi{
  position:relative;
  overflow:hidden;
  min-height:112px;
  padding:17px 16px 16px 19px!important;
  border:1px solid rgba(88,201,255,.20)!important;
  border-radius:19px!important;
  background:linear-gradient(145deg,rgba(11,47,78,.90),rgba(5,27,47,.97))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.scp-root .scp-expert-progress-kpi strong{color:#f4fbff!important;font-size:1.5rem!important;letter-spacing:-.028em}
.scp-root .scp-expert-progress-kpi span{margin-top:7px!important;color:#90b5c9!important;font-weight:750;line-height:1.35}
.scp-root .scp-expert-progress-actions{
  gap:11px!important;
  padding-top:2px;
}
.scp-root .scp-expert-progress-actions .scp-btn{min-height:50px!important;border-radius:14px!important;font-weight:900!important}
.scp-root .scp-admin-expert-progress{margin:0!important}

/* Jour : Expert reste premium mais gagne un peu de lumière sans devenir blanc. */
.scp-root[data-ui-theme="light"] .scp-expert-entry-main,
.scp-root[data-ui-theme="light"] .scp-expert-entry-side,
.scp-root[data-ui-theme="light"] .scp-expert-cycle-card,
.scp-root[data-ui-theme="light"] .scp-expert-cert-card,
.scp-root[data-ui-theme="light"] .scp-expert-cockpit-card,
.scp-root[data-ui-theme="light"] .scp-expert-progress-space,
.scp-root[data-ui-theme="light"].scp-expert-immersive-session .scp-question-panel,
.scp-root[data-ui-theme="light"].scp-expert-immersive-session .scp-reg-quiz-timer{
  box-shadow:0 22px 55px rgba(19,72,111,.16),inset 0 1px 0 rgba(255,255,255,.08)!important;
}

/* Responsive Expert : aucune carte ne doit forcer la largeur iPad/iPhone. */
@media (orientation:landscape) and (min-width:768px) and (max-width:1100px){
  .scp-root .scp-expert-entry-hero{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr)!important}
  .scp-root .scp-expert-entry-strip{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .scp-root .scp-expert-cockpit{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .scp-root .scp-expert-progress-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media (orientation:portrait) and (min-width:621px) and (max-width:1100px){
  .scp-root .scp-expert-entry-hero{grid-template-columns:1fr!important}
  .scp-root .scp-expert-entry-side{order:0!important}
  .scp-root .scp-expert-entry-strip,
  .scp-root .scp-expert-cockpit,
  .scp-root .scp-expert-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .scp-root .scp-expert-cycle-banner{grid-template-columns:1fr!important}
}
@media (max-width:620px){
  .scp-root .scp-expert-entry-main,
  .scp-root .scp-expert-entry-side{border-radius:22px!important}
  .scp-root .scp-expert-entry-main{padding:21px 18px!important}
  .scp-root .scp-expert-entry-side{padding:18px!important;order:0!important}
  .scp-root .scp-expert-entry-main h2{font-size:clamp(1.55rem,8vw,2.1rem)!important}
  .scp-root .scp-expert-entry-steps,
  .scp-root .scp-expert-entry-strip,
  .scp-root .scp-expert-cockpit,
  .scp-root .scp-expert-progress-grid{grid-template-columns:1fr!important}
  .scp-root .scp-expert-entry-side-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .scp-root .scp-expert-cycle-card,.scp-root .scp-expert-cert-card{border-radius:20px!important;padding:19px!important}
  .scp-root .scp-expert-deadline,.scp-root .scp-expert-progress-deadline{width:100%;min-width:0;box-sizing:border-box;text-align:left!important}
  .scp-root .scp-expert-progress-space{padding:20px 17px!important;border-radius:23px!important}
  .scp-root.scp-expert-immersive-session .scp-quiz-meta{align-items:flex-start!important;flex-direction:column!important}
  .scp-root.scp-expert-immersive-session .scp-question-panel{padding:20px 16px!important;border-radius:20px!important}
  .scp-root.scp-expert-immersive-session .scp-option{min-height:56px!important;padding:13px!important}
  .scp-root.scp-expert-immersive-session .scp-quiz-actions .scp-btn-primary{width:100%!important}
}
@media (max-width:360px){
  .scp-root .scp-expert-entry-side-stats{grid-template-columns:1fr!important}
  .scp-root .scp-expert-entry-stat{min-height:0!important}
  .scp-root .scp-expert-entry-main,.scp-root .scp-expert-entry-side,.scp-root .scp-expert-progress-space{border-radius:18px!important}
}


/* Crew Institut 2.40.12 — navigation interne discrète, sans bleu fluorescent. */
.scp-root :where(
  .scp-premium-internal-tab.is-active,
  .scp-progress-hub-tab.is-active,
  .scp-admin-progress-tab.is-active,
  .scp-reg-ana-nav-btn.is-active,
  .scp-reg-progress-control.is-active,
  [aria-selected="true"].scp-progress-hub-tab
){
  color:#dcecf5!important;
  border-color:rgba(112,178,211,.28)!important;
  background:linear-gradient(145deg,rgba(19,67,94,.72),rgba(8,39,59,.88))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 4px 12px rgba(0,0,0,.08)!important;
  text-shadow:none!important;
  filter:none!important;
}
.scp-root[data-ui-theme="light"] :where(
  .scp-premium-internal-tab.is-active,
  .scp-progress-hub-tab.is-active,
  .scp-admin-progress-tab.is-active,
  .scp-reg-ana-nav-btn.is-active,
  .scp-reg-progress-control.is-active,
  [aria-selected="true"].scp-progress-hub-tab
){
  color:#16445d!important;
  border-color:rgba(42,105,139,.22)!important;
  background:linear-gradient(145deg,#e9f3f8,#dcebf2)!important;
  box-shadow:inset 0 1px 0 #fff,0 3px 10px rgba(40,80,105,.06)!important;
}


/* Crew Institut 2.40.14 — navigation Novice/Praticien volontairement subtile. */
.scp-root .scp-reg-ana-nav{
  border-color:rgba(126,165,184,.12)!important;
  background:rgba(5,24,36,.46)!important;
  box-shadow:none!important;
}
.scp-root .scp-reg-ana-nav-btn{
  min-height:44px!important;
  border-color:rgba(125,173,201,.11)!important;
  background:rgba(255,255,255,.018)!important;
  color:#9fb9c8!important;
  box-shadow:none!important;
  text-shadow:none!important;
  filter:none!important;
}
.scp-root .scp-reg-ana-nav-btn:hover{
  border-color:rgba(126,180,205,.22)!important;
  background:rgba(42,84,108,.18)!important;
  color:#dcecf5!important;
  box-shadow:none!important;
}
.scp-root .scp-reg-ana-nav-btn.is-active{
  border-color:rgba(126,180,205,.25)!important;
  background:linear-gradient(145deg,rgba(28,66,88,.70),rgba(8,36,53,.82))!important;
  color:#e3f1f7!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
  text-shadow:none!important;
  filter:none!important;
}
.scp-root[data-ui-theme="light"] .scp-reg-ana-nav{border-color:rgba(43,94,120,.12)!important;background:rgba(245,250,252,.92)!important}
.scp-root[data-ui-theme="light"] .scp-reg-ana-nav-btn{border-color:rgba(43,94,120,.10)!important;background:rgba(255,255,255,.72)!important;color:#587182!important}
.scp-root[data-ui-theme="light"] .scp-reg-ana-nav-btn.is-active{border-color:rgba(43,94,120,.20)!important;background:linear-gradient(145deg,#edf5f8,#e1edf2)!important;color:#214d63!important;box-shadow:inset 0 1px 0 #fff!important}
