


.po-cours, .po-cours *, .po-cours *::before, .po-cours *::after { box-sizing: border-box; }
.po-cours {
    --c-ink: #15203c;
    --c-body: #1e293b;
    --c-soft: #475569;
    --c-mut: #64748b;
    --c-rule: #e2e8f0;
    --c-paper: #ffffff;
    --c-deep: #f8fafc;
    --c-blue: #2563eb;
    --c-navy: #1e3faf;
    --c-blue-soft: #e8f1ff;
    --c-green: #15803d;
    --c-green-soft: #f0fdf4;
    --c-amber: #b45309;
    --c-amber-soft: #fffbeb;
    --c-red: #b91c1c;
    --c-red-soft: #fef2f2;
    --c-orange1: #ff6b35;
    --c-orange2: #f7931e;
    font-family: 'Plus Jakarta Sans', -apple-system, 'Segoe UI', sans-serif;
    color: var(--c-body);
    line-height: 1.7;
    font-size: 16.5px;
    background: var(--c-paper);
}
.po-cours h1, .po-cours h2, .po-cours h3, .po-cours h4, .po-cours p, .po-cours ol, .po-cours ul, .po-cours figure { margin: 0; padding: 0; }
.po-cours ol, .po-cours ul { padding-left: 22px; margin-bottom: 16px; }
.po-cours li { margin-bottom: 6px; }
.po-cours a { color: var(--c-blue); text-decoration: underline; text-decoration-color: rgba(37,99,235,0.35); text-underline-offset: 3px; }
.po-cours a:hover { text-decoration-color: var(--c-blue); }
.po-cours .pc-wrap { max-width: 860px; margin: 0 auto; padding: 0 20px; }



.po-cours .pc-topgap { height: 1px; margin-bottom: -1px; }
.po-cours .pc-topbar { position: relative; z-index: auto; background: #fff; border-bottom: 1px solid var(--c-rule); }


.po-cours .pc-topbar.fixe { position: fixed; top: 0; left: 0; right: 0; z-index: 9998; background: rgba(255,255,255,0.96); backdrop-filter: blur(8px); box-shadow: 0 6px 18px rgba(21,32,60,0.07); }


.po-cours .pc-topbar-in { position: relative; max-width: 860px; margin: 0 auto; padding: 9px 20px 11px; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; font-size: 13px; color: var(--c-mut); }
.po-cours .pc-tb-pill { appearance: none; cursor: pointer; font-family: inherit; display: inline-flex; align-items: center; gap: 5px; min-width: 0; font-size: 12.5px; font-weight: 700; color: var(--c-navy); background: var(--c-blue-soft); border: 1px solid rgba(37,99,235,0.16); padding: 6px 10px 6px 12px; border-radius: 999px; white-space: nowrap; transition: background .2s ease, transform .15s ease; }
.po-cours .pc-tb-pill .lbl { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.po-cours .pc-tb-pill .pc-tb-chev { flex-shrink: 0; }
.po-cours .pc-tb-cs { display: none; }
.po-cours .pc-tb-pill:hover { background: #dbe9ff; transform: translateY(-1px); }
.po-cours .pc-tb-chev { width: 13px; height: 13px; transition: transform .2s ease; }
.po-cours .pc-tb-pill[aria-expanded="true"] .pc-tb-chev { transform: rotate(180deg); }


.po-cours .pc-bar { position: relative; flex: 1 1 100%; order: 99; height: 14px; border-radius: 999px; background: var(--c-rule); overflow: hidden; min-width: 0; }
.po-cours .pc-bar > span { display: block; height: 100%; width: 0; border-radius: 999px; background: linear-gradient(90deg, var(--c-orange1), var(--c-orange2)); transition: width .4s ease; }
.po-cours .pc-bar-pct { position: absolute; inset: 0; display: flex; align-items: center; justify-content: flex-end; padding-right: 9px; font-style: normal; font-size: 10px; font-weight: 800; color: #1e2b4f; letter-spacing: .02em; font-variant-numeric: tabular-nums; pointer-events: none; }
 
.po-cours .pc-tb-cta { appearance: none; cursor: pointer; font-family: inherit; font-size: 11.5px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; color: #fff; background: linear-gradient(135deg, var(--c-orange1), var(--c-orange2)); border: none; border-radius: 999px; padding: 9px 14px; white-space: nowrap; transition: transform .15s ease; }
.po-cours .pc-tb-cta:hover { transform: translateY(-1px); }
.po-cours .pc-tb-cta:active { transform: scale(0.97); }

 
.po-cours .pc-tb-panel { position: absolute; top: calc(100% + 8px); left: 50%; transform: translateX(-50%); width: min(400px, calc(100vw - 24px)); max-height: min(430px, 62vh); overflow: auto; background: #fff; border: 1.5px solid #dbe6f6; border-radius: 16px; box-shadow: 0 18px 44px rgba(16,15,91,0.18); padding: 10px 10px 0; z-index: 9999; }
.po-cours .pc-tb-panel[hidden] { display: none; }


.po-cours .pc-tb-panel::after { content: ""; position: sticky; bottom: 0; display: block; height: 10px; margin-top: 0; pointer-events: none; }
.po-cours .pc-tb-panel.scr::after { height: 46px; margin-top: -36px; background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%232563eb" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round"><path d="M6 9l6 6 6-6"/></svg>') center bottom 7px / 15px 15px no-repeat, linear-gradient(rgba(255,255,255,0), #ffffff 60%); opacity: 1; transition: opacity .25s ease; }
.po-cours .pc-tb-panel.scr.fin::after { opacity: 0; }
.po-cours .pc-tb-panel-t { display: block; font-size: 10.5px; font-weight: 800; text-transform: uppercase; letter-spacing: .09em; color: #8494b5; padding: 6px 10px 8px; }
.po-cours .pc-tb-item { display: flex; align-items: center; gap: 10px; width: 100%; box-sizing: border-box; padding: 9px 10px; border-radius: 11px; text-decoration: none; color: var(--c-body); font-size: 13.5px; font-weight: 600; }
.po-cours a.pc-tb-item:hover { background: var(--c-blue-soft); }
.po-cours .pc-tb-item .n { flex-shrink: 0; width: 24px; height: 24px; border-radius: 8px; display: grid; place-items: center; background: #eef2f8; color: var(--c-navy); font-size: 12px; font-weight: 800; }
.po-cours .pc-tb-item .t { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.po-cours .pc-tb-item .m { flex-shrink: 0; font-size: 11px; font-weight: 700; color: #94a3b8; }
.po-cours .pc-tb-item.cur { background: var(--c-blue-soft); color: var(--c-ink); }
.po-cours .pc-tb-item.cur .m { color: var(--c-blue); }
.po-cours .pc-tb-item.done .n { background: #10b981; color: #fff; }
.po-cours .pc-tb-item.soon { opacity: 0.55; }
.po-cours .pc-tb-panel-hub { display: block; text-align: center; margin-top: 6px; padding: 10px; border-top: 1px solid var(--c-rule); font-size: 12.5px; font-weight: 700; color: var(--c-blue); text-decoration: none; }
 
.po-cours .pc-tb-switch { display: flex; align-items: center; gap: 2px; background: #eef2f8; border: 1px solid #dbe3f0; border-radius: 999px; padding: 4px; margin: 2px 4px 10px; }
.po-cours .pc-tb-switch .ps { flex: 1; text-align: center; padding: 8px 6px; border-radius: 999px; font-size: 12.5px; font-weight: 800; letter-spacing: .01em; color: #475569; text-decoration: none; white-space: nowrap; transition: background .15s ease, color .15s ease; }
.po-cours .pc-tb-switch .ps:hover { color: var(--c-navy); background: #fff; }
.po-cours .pc-tb-switch .ps.cur { background: var(--c-navy); color: #fff; }
 
.po-cours .pc-tb-compte { background: linear-gradient(135deg, #2563eb, #1e3faf); }
.po-cours .pc-tb-compte:hover { filter: brightness(1.08); }



.po-cours .pog-overlay, .po-cours .pog-overlay * { box-sizing: border-box; margin: 0; padding: 0; }
.po-cours .pog-overlay { position: fixed; inset: 0; z-index: 100000; display: grid; place-items: center; padding: 14px; background: rgba(13,20,40,0.62); backdrop-filter: blur(5px); font-family: 'Plus Jakarta Sans', -apple-system, 'Segoe UI', sans-serif; animation: pogOvIn .25s ease; }
.po-cours .pog-overlay[hidden] { display: none; }
@keyframes pogOvIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes pogPopIn { from { opacity: 0; transform: translateY(14px) scale(0.97); } to { opacity: 1; transform: none; } }
@keyframes pogSheetIn { from { transform: translateY(100%); } to { transform: none; } }
@keyframes pogBounce { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-6px); } }
@media (prefers-reduced-motion: reduce) { .po-cours .pog-overlay, .po-cours .pog-modal, .po-cours .pog-sign svg { animation: none !important; } }
.po-cours .pog-modal { position: relative; width: min(640px, 100%); max-height: min(94vh, 960px); overflow: auto; overscroll-behavior: contain; background: #edf0f7; border: 1.5px solid #dbe6f6; border-radius: 24px; box-shadow: 0 30px 80px rgba(10,16,40,0.45); animation: pogPopIn .3s cubic-bezier(0.34,1.4,0.64,1); scrollbar-width: thin; scrollbar-color: rgba(30,63,175,0.35) transparent; outline: none; }
.po-cours .pog-modal::-webkit-scrollbar { width: 7px; }
.po-cours .pog-modal::-webkit-scrollbar-track { background: transparent; }
.po-cours .pog-modal::-webkit-scrollbar-thumb { background: rgba(30,63,175,0.28); border-radius: 999px; }
.po-cours .pog-hero { position: relative; overflow: hidden; text-align: center; padding: 26px clamp(18px,4vw,28px) 32px; background: radial-gradient(340px 220px at 88% -20%, rgba(61,155,255,0.22), transparent 65%), radial-gradient(300px 200px at -8% 118%, rgba(255,107,53,0.14), transparent 60%), linear-gradient(150deg, #0e1a3d 0%, #15203c 55%, #1b2a52 100%); }
.po-cours .pog-hero-in { position: relative; z-index: 1; }
.po-cours .pog-sign { position: absolute; z-index: 0; opacity: 0.9; }
.po-cours .pog-sign svg { animation: pogBounce 3.6s ease-in-out infinite; filter: drop-shadow(0 8px 16px rgba(0,0,0,0.35)); }
.po-cours .pog-sign--stop { left: 12px; top: 14px; transform: rotate(-9deg); }
.po-cours .pog-sign--50 { right: 14px; bottom: 32px; transform: rotate(7deg); }
.po-cours .pog-sign--50 svg { animation-duration: 4.2s; animation-delay: .5s; }
.po-cours .pog-x { position: absolute; top: 8px; right: 10px; z-index: 2; appearance: none; border: none; background: transparent; cursor: pointer; font-size: 26px; line-height: 1; color: #93a5c9; padding: 6px; font-family: inherit; }
.po-cours .pog-plaque { display: inline-flex; align-items: stretch; background: #a11e33; border-radius: 7px; padding: 3px; box-shadow: 0 6px 18px rgba(161,30,51,0.45); line-height: 1; }
.po-cours .pog-plaque .pl-band { display: flex; align-items: center; background: #153a9e; border-radius: 4px 0 0 4px; padding: 0 4px; }
.po-cours .pog-plaque .pl-tx { display: flex; align-items: center; color: #a11e33; white-space: nowrap; background: linear-gradient(180deg,#f0f2f7 0%,#ffffff 42%,#dde3ec 100%); font-family: 'Archivo Black','Arial Black',sans-serif; font-size: 15px; letter-spacing: 0.04em; padding: 7px 13px; border-radius: 0 4px 4px 0; }
.po-cours .pog-h { margin: 14px auto 0; max-width: 560px; font-size: clamp(21px,3.8vw,27px); font-weight: 800; line-height: 1.2; letter-spacing: -0.5px; color: #fff; }
.po-cours .pog-sub { margin: 9px auto 0; max-width: 520px; font-size: 14px; line-height: 1.6; color: #b8c5e2; }
.po-cours .pog-chips { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px; margin-top: 13px; }
.po-cours .pog-chip { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 700; color: #fff; background: rgba(255,255,255,0.1); border: 1px solid rgba(255,255,255,0.25); border-radius: 999px; padding: 5px 12px; }
.po-cours .pog-body { position: relative; padding: 20px clamp(14px,4vw,26px) 22px; text-align: center; }
.po-cours .pog-garantie { display: flex; gap: 12px; align-items: center; text-align: left; position: relative; z-index: 2; background: linear-gradient(135deg,#e9f8f1,#f6fdf9); border: 1.5px solid #b9e9d3; border-radius: 16px; padding: 13px 16px; margin: -42px 0 18px; box-shadow: 0 14px 32px rgba(6,78,59,0.2); }
.po-cours .pog-garantie svg { flex-shrink: 0; }
.po-cours .pog-garantie .t1 { font-size: 14.5px; font-weight: 800; color: #047857; line-height: 1.35; }
.po-cours .pog-garantie .t2 { font-size: 12px; font-weight: 600; color: #3d5568; line-height: 1.5; margin-top: 2px; }
.po-cours .pog-toggle { display: flex; gap: 4px; background: #fff; border-radius: 999px; padding: 6px; box-shadow: 0 12px 30px rgba(16,15,91,0.12); max-width: 460px; margin: 0 auto; }
.po-cours .pog-tab { flex: 1; display: flex; align-items: center; justify-content: center; gap: 8px; appearance: none; border: none; cursor: pointer; font-family: inherit; font-size: 14px; font-weight: 800; border-radius: 999px; padding: 12px 14px; transition: all .25s ease; white-space: nowrap; min-width: 0; background: transparent; color: #64748b; }
.po-cours .pog-tab[data-offer="sim"].is-active { background: linear-gradient(135deg,#2f6bff,#1e3faf); color: #fff; box-shadow: 0 8px 20px rgba(37,99,235,0.35); }
.po-cours .pog-tab[data-offer="prem"].is-active { background: linear-gradient(135deg,#1b2a52,#0c1226); color: #fff; box-shadow: 0 8px 20px rgba(12,18,38,0.4); }
.po-cours .pog-tab-badge { font-size: 10.5px; font-weight: 800; color: #fff; background: linear-gradient(135deg,#ff8a3d,#f7931e); border-radius: 999px; padding: 3px 8px; }
.po-cours .pog-tab[data-offer="prem"].is-active .pog-tab-badge { color: #15203c; background: #ffd23f; }
.po-cours .pog-card { display: none; margin-top: 18px; background: #fff; border-radius: 24px; overflow: hidden; box-shadow: 0 24px 60px rgba(16,15,91,0.16); text-align: center; }
.po-cours .pog-card.is-active { display: block; }
.po-cours .pog-card-hero { padding: 24px 22px 26px; }
.po-cours .pog-card--sim .pog-card-hero { background: radial-gradient(320px 160px at 50% -30%, rgba(255,255,255,0.35), transparent 70%), linear-gradient(160deg,#2f6bff 0%,#1e3faf 100%); }
.po-cours .pog-card--prem .pog-card-hero { background: radial-gradient(320px 160px at 50% -30%, rgba(61,155,255,0.3), transparent 70%), linear-gradient(160deg,#1b2a52 0%,#0c1226 100%); }
.po-cours .pog-ribbon { display: inline-flex; align-items: center; gap: 7px; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.08em; color: #fff; background: linear-gradient(135deg,#ff8a3d,#f7931e); border-radius: 999px; padding: 6px 14px; box-shadow: 0 6px 16px rgba(247,147,30,0.45); }
.po-cours .pog-card h3 { margin: 12px 0 0; font-size: clamp(23px,4vw,28px); font-weight: 800; letter-spacing: -0.4px; color: #fff; }
.po-cours .pog-card-desc { margin: 9px auto 0; max-width: 420px; font-size: 13.5px; line-height: 1.6; color: rgba(235,242,255,0.85); }
.po-cours .pog-card--prem .pog-card-desc { color: rgba(214,224,245,0.8); }
.po-cours .pog-price-row { display: inline-flex; align-items: center; gap: 10px; margin-top: 14px; flex-wrap: wrap; justify-content: center; }
.po-cours .pog-price { display: inline-flex; align-items: baseline; gap: 8px; background: rgba(255,255,255,0.12); border: 1.5px solid rgba(255,255,255,0.35); border-radius: 14px; padding: 10px 24px; }
.po-cours .pog-price .big { font-size: 31px; font-weight: 800; letter-spacing: -0.6px; color: #fff; }
.po-cours .pog-price .per { font-size: 13px; font-weight: 700; color: rgba(235,242,255,0.8); }
.po-cours .pog-price s { font-size: 12.5px; font-weight: 600; color: rgba(214,224,245,0.55); }
.po-cours .pog-promo { display: inline-flex; align-items: center; gap: 5px; font-size: 12px; font-weight: 800; color: #fff; background: linear-gradient(135deg,#10b981,#059669); border-radius: 999px; padding: 8px 14px; box-shadow: 0 6px 16px rgba(16,185,129,0.4); }
.po-cours .pog-feats { padding: 14px 22px 4px; text-align: left; }
.po-cours .pog-feat { display: flex; gap: 11px; align-items: flex-start; padding: 11px 0; border-bottom: 1px solid #eef1f6; }
.po-cours .pog-feat:last-of-type { border-bottom: none; }
.po-cours .pog-feat-ic { width: 30px; height: 30px; border-radius: 9px; display: grid; place-items: center; flex-shrink: 0; }
.po-cours .pog-card--sim .pog-feat-ic { background: linear-gradient(135deg,#2f6bff,#1e3faf); }
.po-cours .pog-card--prem .pog-feat-ic { background: linear-gradient(135deg,#ff8a3d,#f76b1c); }
.po-cours .pog-feat-tx { font-size: 13px; line-height: 1.45; color: #64748b; }
.po-cours .pog-feat-tx strong { display: block; font-size: 14px; color: #15203c; }
.po-cours .pog-cta { display: flex; align-items: center; justify-content: center; gap: 12px; margin: 14px clamp(14px,4vw,22px) 0; min-height: 54px; text-decoration: none; font-size: 14.5px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.04em; color: #fff; background: linear-gradient(100deg,#f65e2e 0%,#f7931e 60%,#ffa53d 100%); border-radius: 16px; padding: 17px 20px; box-shadow: 0 12px 28px rgba(255,107,53,0.45); transition: transform .15s ease; }
.po-cours .pog-cta:hover { transform: translateY(-1px); }
.po-cours .pog-cta:active { transform: scale(0.98); }
.po-cours .pog-under { display: flex; align-items: center; justify-content: center; gap: 6px; margin-top: 10px; font-size: 12px; font-weight: 600; color: #475569; }
.po-cours .pog-note { margin: 12px auto 0; max-width: 460px; text-align: center; font-size: 11px; line-height: 1.55; color: #8a96ad; }
.po-cours .pog-details { margin: 16px auto 0; max-width: 480px; text-align: left; background: #fff; border: 1px solid #e2e8f5; border-radius: 12px; padding: 10px 15px; }
.po-cours .pog-details summary { cursor: pointer; font-size: 12px; font-weight: 700; color: #5a6b8c; user-select: none; list-style: none; }
.po-cours .pog-details summary::-webkit-details-marker { display: none; }
.po-cours .pog-details p { margin: 7px 0 0; font-size: 11px; line-height: 1.6; color: #8a96ad; }
.po-cours .pog-later { appearance: none; border: none; background: transparent; cursor: pointer; font-family: inherit; font-size: 13.5px; font-weight: 700; color: #64748b; text-decoration: underline; text-underline-offset: 3px; margin-top: 12px; padding: 8px 14px; }
.po-cours .pog-foot { margin-top: 2px; font-size: 11.5px; font-weight: 600; color: #94a3b8; }
@media (max-width: 767px) {
  .po-cours .pog-overlay { padding: 0; background: #edf0f7; backdrop-filter: none; }
  .po-cours .pog-modal { width: 100%; height: 100%; max-height: none; border: none; border-radius: 0; animation: pogSheetIn .35s cubic-bezier(0.32,0.72,0.29,1); }
  

  .po-cours .pog-x { position: sticky; top: 10px; z-index: 3; margin: 10px 12px -48px auto; width: 38px; height: 38px; border-radius: 50%; font-size: 21px; color: #fff; background: rgba(13,20,40,0.45); backdrop-filter: blur(6px); display: grid; place-items: center; padding: 0; }
  .po-cours .pog-hero { padding: 20px 18px 40px; }
  .po-cours .pog-h { font-size: 22px; max-width: 340px; }
  .po-cours .pog-sub { font-size: 13px; max-width: 330px; }
  .po-cours .pog-sign--stop svg { width: 42px; height: 42px; }
  .po-cours .pog-sign--50 { bottom: 44px; }
  .po-cours .pog-sign--50 svg { width: 40px; height: 40px; }
  .po-cours .pog-body { padding: 0 14px calc(26px + env(safe-area-inset-bottom)); }
  .po-cours .pog-garantie { margin-top: -24px; padding: 12px 14px; }
  .po-cours .pog-garantie .t1 { font-size: 13.5px; }
  .po-cours .pog-garantie .t2 { font-size: 11.5px; }
  .po-cours .pog-toggle { position: sticky; top: 10px; z-index: 5; padding: 5px; box-shadow: 0 12px 30px rgba(16,15,91,0.18); }
  .po-cours .pog-tab { font-size: 13.5px; padding: 13px 10px; min-height: 46px; }
  .po-cours .pog-card { margin-top: 14px; border-radius: 22px; }
  .po-cours .pog-card-hero { padding: 22px 16px; }
  .po-cours .pog-card h3 { font-size: 23px; }
  .po-cours .pog-card-desc { font-size: 12.5px; max-width: 330px; }
  .po-cours .pog-price .big { font-size: 28px; }
  .po-cours .pog-feats { padding: 10px 16px 2px; }
  .po-cours .pog-feat-tx { font-size: 12.5px; }
  .po-cours .pog-feat-tx strong { font-size: 13.5px; }
  .po-cours .pog-cta { font-size: 14px; padding: 15px 16px; }
}

.po-cours .pc-tb-pt { display: none; }
.po-cours .pc-tb-cta { margin-left: auto; flex-shrink: 0; }
@media (max-width: 640px) {
  .po-cours .pc-topbar-in { gap: 7px 8px; padding: 9px 12px 10px; }
  .po-cours .pc-tb-x { display: none; }
  .po-cours .pc-tb-pt { display: inline; }
  .po-cours .pc-tb-cl { display: none; }
  .po-cours .pc-tb-cs { display: inline; }
  .po-cours .pc-tb-cta { font-size: 10.5px; padding: 8px 11px; }
  .po-cours .pc-bar { height: 12px; }
  .po-cours .pc-bar-pct { font-size: 9.5px; padding-right: 7px; }
}

 
.po-cours .pc-head { padding-top: 26px; margin-bottom: 26px; }
.po-cours .pc-chip { display: inline-flex; align-items: center; gap: 7px; font-size: 12px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; color: var(--c-navy); background: var(--c-blue-soft); border: 1px solid rgba(37,99,235,.18); border-radius: 99px; padding: 6px 14px; margin-bottom: 14px; }
.po-cours h1 { font-size: clamp(28px, 5vw, 40px); font-weight: 800; line-height: 1.15; letter-spacing: -0.6px; color: var(--c-ink); margin-bottom: 10px; }
.po-cours .pc-meta { display: flex; flex-wrap: wrap; gap: 8px 22px; font-size: 13.5px; color: var(--c-mut); }
.po-cours .pc-meta strong { color: var(--c-ink); font-weight: 700; }

 
.po-cours .pc-body h2 { font-size: clamp(21px, 3.6vw, 27px); font-weight: 800; letter-spacing: -0.3px; color: var(--c-ink); margin: 40px 0 14px; scroll-margin-top: 70px; }
.po-cours .pc-body h3 { font-size: clamp(17.5px, 2.8vw, 20px); font-weight: 700; color: var(--c-ink); margin: 28px 0 10px; }
.po-cours .pc-body p { margin-bottom: 16px; }
.po-cours .pc-body strong { color: var(--c-ink); }

 


.po-cours .pc-exam, .po-cours .pc-piege, .po-cours .pc-memo, .po-cours .pc-def { border-radius: 16px; padding: 16px 19px; margin: 20px 0; font-size: 15.5px; line-height: 1.65; border: 1.5px solid transparent; }
.po-cours .pc-exam  { background: linear-gradient(135deg, #eef4ff, #f6f9ff); border-color: #d7e4fb; }
.po-cours .pc-piege { background: linear-gradient(135deg, #fdeeee, #fff6f6); border-color: #f6d5d5; }
.po-cours .pc-memo  { background: linear-gradient(135deg, #e9f8f1, #f4fcf8); border-color: #cdeede; }
.po-cours .pc-def   { background: linear-gradient(135deg, #fff4e8, #fffaf3); border-color: #f8e0c4; }
.po-cours .pc-exam > strong:first-child, .po-cours .pc-piege > strong:first-child, .po-cours .pc-memo > strong:first-child, .po-cours .pc-def > strong:first-child { display: inline-flex; align-items: center; gap: 7px; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.1em; color: #fff; padding: 5px 12px; border-radius: 999px; margin: 0 6px 8px 0; vertical-align: middle; }
.po-cours .pc-exam > strong:first-child, .po-cours .pc-piege > strong:first-child, .po-cours .pc-memo > strong:first-child, .po-cours .pc-def > strong:first-child { position: relative; }
.po-cours .pc-exam > strong:first-child::before, .po-cours .pc-piege > strong:first-child::before, .po-cours .pc-memo > strong:first-child::before, .po-cours .pc-def > strong:first-child::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: rgba(255,255,255,0.85); }
.po-cours .pc-exam  > strong:first-child { background: linear-gradient(135deg, #2563eb, #1e3faf); box-shadow: 0 5px 13px rgba(37,99,235,0.3); }
.po-cours .pc-piege > strong:first-child { background: linear-gradient(135deg, #ef4444, #b91c1c); box-shadow: 0 5px 13px rgba(239,68,68,0.3); }
.po-cours .pc-memo  > strong:first-child { background: linear-gradient(135deg, #10b981, #047857); box-shadow: 0 5px 13px rgba(16,185,129,0.3); }
.po-cours .pc-def   > strong:first-child { background: linear-gradient(135deg, #f59e0b, #d97706); box-shadow: 0 5px 13px rgba(245,158,11,0.3); }
.po-cours .pc-exam strong:not(:first-child)  { color: var(--c-navy); }
.po-cours .pc-piege strong:not(:first-child) { color: var(--c-red); }
.po-cours .pc-memo strong:not(:first-child)  { color: var(--c-green); }
.po-cours .pc-def strong:not(:first-child)   { color: #b45309; }

 
.po-cours .pc-fig { margin: 20px 0; }
.po-cours .pc-fig img { max-width: 100%; height: auto; border-radius: 12px; border: 1px solid var(--c-rule); display: block; }
.po-cours .pc-fig figcaption { font-size: 13px; color: var(--c-mut); margin-top: 8px; }
 
.po-cours .pc-fig figcaption .pc-credit { display: block; margin-top: 4px; font-size: 11px; opacity: .72; }
.po-cours .pc-fig figcaption .pc-credit a { color: inherit; text-decoration: underline; }



.po-cours .pc-figs2 .pc-fig { margin: 26px 0; background: #fff; border: 1px solid #e7ecf5; border-radius: 16px; overflow: hidden; display: flex; flex-direction: column; box-shadow: 0 12px 28px -16px rgba(21, 32, 60, 0.22); }
.po-cours .pc-figs2 .pc-fig img { border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
.po-cours .pc-figs2 .pc-fig figcaption { margin: auto 0 0; padding: 11px 16px 13px; font-size: 13px; font-weight: 600; line-height: 1.5; color: #3d4c6e; background: #f8fafd; border-top: 1px solid #eef2f8; }
.po-cours .pc-figs2 .pc-fig.fig-panneau img { width: auto; max-height: 205px; margin: auto; padding: 22px 16px 16px; }
.po-cours .pc-figs2 .pc-fig.fig-panneau figcaption { text-align: center; }
.po-cours .pc-figs2 .pc-fig.fig-visuel img { width: 100%; }
.po-cours .pc-figrow { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; margin: 26px 0; }
.po-cours .pc-figrow .pc-fig { margin: 0 !important; }
.po-cours .pc-figrow .pc-fig.fig-panneau img { max-height: 175px; padding: 20px 12px 14px; }
@media (max-width: 560px) {
  .po-cours .pc-figrow { gap: 10px; margin: 22px 0; }
  .po-cours .pc-figrow .pc-fig.fig-panneau img { max-height: 132px; padding: 15px 10px 10px; }
  .po-cours .pc-figrow .pc-fig figcaption { font-size: 12px; padding: 9px 10px 11px; }
  .po-cours .pc-figs2 .pc-fig.fig-panneau img { max-height: 165px; }
}
.po-cours .pc-table-wrap { overflow-x: auto; margin: 20px 0; border: 1px solid var(--c-rule); border-radius: 12px; }
.po-cours .pc-table { width: 100%; border-collapse: collapse; font-size: 14.5px; min-width: 480px; }
.po-cours .pc-table th { background: var(--c-deep); text-align: left; font-weight: 700; color: var(--c-ink); padding: 10px 14px; border-bottom: 2px solid var(--c-rule); }
.po-cours .pc-table td { padding: 10px 14px; border-bottom: 1px solid var(--c-rule); vertical-align: top; }
.po-cours .pc-table tr:last-child td { border-bottom: none; }
/* P2 (03/10/2026) : une ombre au bord tant qu'il reste à glisser (tableaux complexes),
   et sous 600 px les tableaux simples deviennent des cartes (po-cours-ux.js pose pc-cartes) */
.po-cours .pc-table-wrap { -webkit-overflow-scrolling: touch; background: linear-gradient(to right, #fff 30%, rgba(255,255,255,0)) 0 0 / 40px 100% no-repeat local, linear-gradient(to left, #fff 30%, rgba(255,255,255,0)) 100% 0 / 40px 100% no-repeat local, radial-gradient(farthest-side at 0 50%, rgba(21,32,60,.18), transparent) 0 0 / 14px 100% no-repeat scroll, radial-gradient(farthest-side at 100% 50%, rgba(21,32,60,.18), transparent) 100% 0 / 14px 100% no-repeat scroll; }
@media (max-width: 600px) {
  .po-cours .pc-table-wrap.pc-cartes-wrap { overflow: visible; border: 0; border-radius: 0; background: none; }
  .po-cours .pc-table.pc-cartes { min-width: 0; }
  .po-cours .pc-table.pc-cartes, .po-cours .pc-table.pc-cartes tbody, .po-cours .pc-table.pc-cartes tr, .po-cours .pc-table.pc-cartes td { display: block; width: 100%; }
  .po-cours .pc-table.pc-cartes tr.pc-tete { display: none; }
  .po-cours .pc-table.pc-cartes tr { background: #fff; border: 1px solid var(--c-rule); border-radius: 12px; margin: 0 0 10px; padding: 6px 0; }
  .po-cours .pc-table.pc-cartes tr:last-child { margin-bottom: 0; }
  .po-cours .pc-table.pc-cartes td { border: 0; padding: 5px 14px; }
  .po-cours .pc-table.pc-cartes td:first-child { font-weight: 800; color: var(--c-ink); padding-top: 9px; }
  .po-cours .pc-table.pc-cartes td[data-label]::before { content: attr(data-label); display: block; font-size: 11px; font-weight: 800; letter-spacing: .5px; text-transform: uppercase; color: var(--c-soft); margin-bottom: 1px; }
  .po-cours .pc-table.pc-cartes tr.pc-ligne-img { display: grid; grid-template-columns: 84px minmax(0, 1fr); gap: 12px; align-items: center; padding: 10px 12px; }
  .po-cours .pc-table.pc-cartes tr.pc-ligne-img td { padding: 0; font-weight: 600; }
  .po-cours .pc-table.pc-cartes tr.pc-ligne-img img { width: 84px; height: auto; display: block; }
  .po-cours .pc-table.pc-cartes-court tr { display: grid; grid-template-columns: repeat(var(--pc-n, 3), minmax(0, 1fr)); padding: 6px 0 9px; }
  .po-cours .pc-table.pc-cartes-court tr.pc-tete { display: none; }
  .po-cours .pc-table.pc-cartes-court td { width: auto; padding: 4px 6px 2px 14px; display: flex; flex-direction: column; justify-content: flex-end; }
  .po-cours .pc-table.pc-cartes-court td:first-child { grid-column: 1 / -1; padding: 8px 14px 4px; }
}

 
.po-cours .pc-quiz { border: 2px solid var(--c-blue); border-radius: 16px; padding: 22px 24px; margin: 36px 0; background: var(--c-paper); }
.po-cours .pc-quiz-head { display: flex; align-items: center; gap: 10px; font-weight: 800; font-size: 18px; color: var(--c-ink); margin-bottom: 6px; }
.po-cours .pc-quiz-sub { font-size: 14px; color: var(--c-soft); margin-bottom: 14px; }

 
.po-cours .pc-cta { border: 1px solid var(--c-rule); border-radius: 16px; padding: 22px 26px; margin: 30px 0; background: linear-gradient(115deg, #fdf6ef, #f4f7fd); display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; }
.po-cours .pc-cta p { margin: 0; font-size: 15.5px; max-width: 520px; }
.po-cours .pc-cta .pc-btn { display: inline-block; background: linear-gradient(135deg, var(--c-orange1), var(--c-orange2)); color: #fff; text-decoration: none; font-weight: 800; font-size: 15px; padding: 13px 24px; border-radius: 999px; box-shadow: 0 6px 18px rgba(255,107,53,0.3); transition: transform .15s; white-space: nowrap; }
.po-cours .pc-cta .pc-btn:hover { transform: translateY(-2px); }

 
@media (max-width: 560px) {   }

 
.po-cours .pc-done { display: flex; justify-content: center; margin: 26px 0 8px; }
.po-cours .pc-done button { font-family: inherit; font-size: 15px; font-weight: 800; color: var(--c-green); background: var(--c-green-soft); border: 2px solid rgba(21,128,61,.3); border-radius: 999px; padding: 12px 26px; cursor: pointer; transition: all .2s; }
.po-cours .pc-done button:hover { border-color: var(--c-green); }
.po-cours .pc-done button.ok { background: var(--c-green); color: #fff; border-color: var(--c-green); }

 
.po-cours .pch-hero { padding: 40px 0 26px; }
.po-cours .pch-hero .pc-chip { margin-bottom: 16px; }
.po-cours .pch-lede { font-size: 17.5px; color: var(--c-soft); max-width: 680px; margin: 12px 0 20px; }
.po-cours .pch-strip { display: flex; flex-wrap: wrap; gap: 8px 24px; font-size: 13.5px; color: var(--c-mut); margin-bottom: 8px; }
.po-cours .pch-strip strong { color: var(--c-ink); }



.po-cours .pch-uni { position: relative; overflow: hidden; border-radius: 26px; margin: 26px 0 0; padding: 46px 44px; background: linear-gradient(118deg, #f6f9fd 0%, #eaf1fb 52%, #e4edfb 100%); border: 1px solid rgba(21,32,60,.07); box-shadow: 0 10px 30px rgba(21,32,60,.06); }


.po-cours .pch-uni-tx { position: relative; z-index: 2; max-width: 66%; }
.po-cours .pch-uni h1 { margin-bottom: 0; font-size: 34px; line-height: 1.14; letter-spacing: -0.7px; }
.po-cours .pch-uni .pch-lede { max-width: 500px; margin: 14px 0 24px; }




.po-cours .pch-uni-vis { position: absolute; top: 0; right: 0; bottom: 0; width: 43%; z-index: 1; }
.po-cours .pch-uni-vis img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 62% center;
  -webkit-mask-image: linear-gradient(to right, transparent 0, #000 34%);
          mask-image: linear-gradient(to right, transparent 0, #000 34%); }
 
.po-cours .pch-proof { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-top: 18px; font-size: 13.5px; color: var(--c-mut); }
.po-cours .pch-proof b { color: var(--c-ink); font-weight: 800; }
.po-cours .pch-proof i { color: var(--c-rule); font-style: normal; }
.po-cours .pch-stars { display: inline-flex; gap: 2px; color: #f5a524; }
.po-cours .pch-stars svg { width: 15px; height: 15px; }


.po-cours .pch-facts { display: flex; flex-wrap: nowrap; width: max-content; gap: 0 18px; margin-top: 26px; }
.po-cours .pch-fact { display: inline-flex; align-items: center; gap: 9px; }
.po-cours .pch-fact em { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; flex-shrink: 0; border-radius: 11px; background: #fff; box-shadow: 0 3px 10px rgba(21,32,60,.09); }
.po-cours .pch-fact em .pc-ic { width: 17px; height: 17px; color: var(--c-blue); }
.po-cours .pch-fact b { display: block; font-size: 14px; font-weight: 800; color: var(--c-ink); line-height: 1.25; white-space: nowrap; }
.po-cours .pch-fact i { display: block; font-size: 11.5px; font-style: normal; color: var(--c-mut); line-height: 1.3; white-space: nowrap; }
 
.po-cours .pch-acts { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.po-cours .pch-go { display: inline-flex; align-items: center; gap: 10px; background: linear-gradient(135deg, #ff6b35, #f7931e); color: #fff; font-weight: 800; font-size: 15.5px; text-decoration: none; padding: 15px 26px; border-radius: 999px; box-shadow: 0 12px 26px rgba(255,107,53,.34); transition: transform .18s ease, box-shadow .18s ease; }
.po-cours .pch-go svg { width: 18px; height: 18px; transition: transform .18s ease; }
.po-cours .pch-go:hover { transform: translateY(-2px); box-shadow: 0 16px 32px rgba(255,107,53,.42); }
.po-cours .pch-go:hover svg { transform: translateX(3px); }
.po-cours .pch-go2 { display: inline-flex; align-items: center; color: var(--c-navy); font-weight: 800; font-size: 15px; text-decoration: none; padding: 14px 20px; border-radius: 999px; border: 1.5px solid rgba(21,32,60,.16); background: rgba(255,255,255,.7); transition: border-color .18s ease, background .18s ease; }
.po-cours .pch-go2:hover { border-color: var(--c-navy); background: #fff; }


.po-cours .pch-tip { display: flex; align-items: center; gap: 14px; margin: 22px 0 26px; padding: 14px 18px; border-radius: 16px; background: #fff; border: 1px solid var(--c-rule); box-shadow: 0 2px 10px rgba(21,32,60,.05); }
.po-cours .pch-tip img { width: 44px; height: 44px; border-radius: 50%; flex-shrink: 0; background: #fff; border: 2px solid #fff; box-shadow: 0 4px 12px rgba(21,32,60,.18); }
.po-cours .pch-tip p { margin: 0; font-size: 14.5px; line-height: 1.55; color: var(--c-soft); }
.po-cours .pch-tip p b { color: var(--c-ink); }
.po-cours .pch-tip-who { margin-left: auto; flex-shrink: 0; font-size: 12px; font-weight: 800; color: var(--c-mut); white-space: nowrap; }
 
.po-cours .pch-gar { display: flex; align-items: center; gap: 16px; margin: 0 0 30px; padding: 16px 20px; border-radius: 18px; background: linear-gradient(135deg, #13224a 0%, #15203c 55%, #1b2a52 100%); box-shadow: 0 14px 34px rgba(16,15,91,.22); }
.po-cours .pch-gar-tx { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.po-cours .pch-gar-tx b { color: #fff; font-size: 16px; font-weight: 800; line-height: 1.3; }
.po-cours .pch-gar-tx b span { color: #ffd23f; }
.po-cours .pch-gar-tx > span { color: #b9c6e2; font-size: 13.5px; line-height: 1.5; }
.po-cours .pch-gar-go { margin-left: auto; flex-shrink: 0; background: linear-gradient(135deg, #ff6b35, #f7931e); color: #fff; font-family: inherit; font-weight: 800; font-size: 14.5px; border: 0; cursor: pointer; padding: 13px 24px; border-radius: 999px; box-shadow: 0 10px 22px rgba(255,107,53,.34); transition: transform .18s ease; }
.po-cours .pch-gar-go:hover { transform: translateY(-2px); }
@media (prefers-reduced-motion: reduce) {
  .po-cours .pch-go, .po-cours .pch-go svg, .po-cours .pch-gar-go { transition: none; }
  .po-cours .pch-go:hover, .po-cours .pch-gar-go:hover { transform: none; }
}
 
@media (max-width: 980px) {
  .po-cours .pch-uni { padding: 38px 32px; }
  .po-cours .pch-uni h1 { font-size: 32px; }
  .po-cours .pch-uni-tx { max-width: 64%; }
  .po-cours .pch-uni-vis { width: 44%; opacity: .85; }
  .po-cours .pch-facts { gap: 0 14px; }
  .po-cours .pch-fact i { font-size: 11px; }
}


@media (max-width: 720px) {
  .po-cours .pch-uni { margin: 16px 0 0; padding: 0 0 22px; border-radius: 20px; }
  .po-cours .pch-uni-vis { position: relative; width: 100%; height: 160px; opacity: 1; }
  .po-cours .pch-uni-vis img { object-position: 60% 42%;
    -webkit-mask-image: linear-gradient(to bottom, #000 58%, transparent);
            mask-image: linear-gradient(to bottom, #000 58%, transparent); }
  .po-cours .pch-uni-tx { max-width: none; padding: 0 18px; margin-top: -14px; }
  .po-cours .pch-uni h1 { font-size: 27px; line-height: 1.15; letter-spacing: -0.4px; }
  .po-cours .pch-uni .pch-lede { font-size: 15.5px; line-height: 1.55; margin: 12px 0 18px; }
   
  .po-cours .pch-go { width: 100%; justify-content: center; padding: 15px 20px; }
  .po-cours .pch-go2 { display: none; }
   
  

  .po-cours .pch-facts { display: grid; grid-template-columns: 1fr 1fr; width: auto; gap: 14px 12px; margin-top: 22px; }
  .po-cours .pch-proof { margin-top: 13px; font-size: 13px; }
  .po-cours .pch-fact { gap: 9px; }
  .po-cours .pch-fact em { width: 36px; height: 36px; border-radius: 10px; }
  .po-cours .pch-fact em .pc-ic { width: 18px; height: 18px; }
  .po-cours .pch-fact b { font-size: 14px; }
  .po-cours .pch-fact i { font-size: 12px; }
  .po-cours .pch-tip { gap: 11px; padding: 12px 14px; margin: 16px 0 20px; }
  .po-cours .pch-tip img { width: 38px; height: 38px; }
  .po-cours .pch-tip p { font-size: 13.5px; line-height: 1.5; }
  .po-cours .pch-tip-who { display: none; }
  

  .po-cours .pch-gar { flex-wrap: wrap; gap: 10px; padding: 15px 16px; margin: 0 0 24px; }
  .po-cours .pch-gar .pc-plaque { display: none; }
  .po-cours .pch-gar-tx { flex: 1 1 100%; }
  .po-cours .pch-gar-tx b { font-size: 15.5px; }
  .po-cours .pch-gar-tx > span { font-size: 12.5px; line-height: 1.45; }
  .po-cours .pch-gar-go { margin: 2px 0 0; width: 100%; padding: 13px 20px; font-size: 14px; }
}
.po-cours .pch-resume { display: none; border: 2px solid var(--c-blue); border-radius: 16px; padding: 16px 20px; margin: 18px 0; background: var(--c-blue-soft); align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; }
.po-cours .pch-resume.on { display: flex; }
.po-cours .pch-resume p { margin: 0; font-size: 15px; }
.po-cours .pch-resume a { display: inline-block; background: var(--c-blue); color: #fff; text-decoration: none; font-weight: 800; font-size: 14px; padding: 10px 20px; border-radius: 999px; }

.po-cours .pch-chap { border: 1px solid var(--c-rule); border-radius: 16px; margin: 0 0 14px; background: var(--c-paper); overflow: hidden; }
.po-cours .pch-chap-head { display: flex; align-items: center; gap: 14px; padding: 16px 20px; }
.po-cours .pch-num { flex-shrink: 0; width: 40px; height: 40px; border-radius: 12px; display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 16px; background: var(--c-deep); color: var(--c-ink); border: 1px solid var(--c-rule); }
.po-cours .pch-chap.done .pch-num { background: var(--c-green); color: #fff; border-color: var(--c-green); }
.po-cours .pch-chap-head h2 { font-size: 17.5px; font-weight: 800; color: var(--c-ink); flex: 1; min-width: 0; }
.po-cours .pch-chap-meta { font-size: 12.5px; color: var(--c-mut); white-space: nowrap; }
.po-cours .pch-lecons { border-top: 1px solid var(--c-rule); }
.po-cours .pch-lecon { display: flex; align-items: center; gap: 12px; padding: 12px 20px 12px 74px; text-decoration: none; border-bottom: 1px solid var(--c-deep); font-size: 15px; color: var(--c-body); transition: background .15s; }
.po-cours a.pch-lecon:hover { background: var(--c-deep); }
.po-cours .pch-lecon:last-child { border-bottom: none; }
.po-cours .pch-dot { flex-shrink: 0; width: 18px; height: 18px; border-radius: 50%; border: 2px solid var(--c-rule); display: inline-flex; align-items: center; justify-content: center; font-size: 11px; color: #fff; }
.po-cours .pch-lecon.done .pch-dot { background: var(--c-green); border-color: var(--c-green); }
.po-cours .pch-lecon.done .pch-dot { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E"); background-size: 11px 11px; background-position: center; background-repeat: no-repeat; }
.po-cours .pch-lecon .t { flex: 1; min-width: 0; font-weight: 600; }
.po-cours .pch-lecon .d { font-size: 12.5px; color: var(--c-mut); white-space: nowrap; }
.po-cours .pch-lecon.soon { opacity: .55; cursor: default; }
.po-cours .pch-lecon.soon .d { font-weight: 700; color: var(--c-amber); }
@media (max-width: 560px) { .po-cours .pch-lecon { padding-left: 20px; } }

.po-cours .pch-lecon--actions { display: grid; grid-template-columns: 18px minmax(0, 1fr) auto; gap: 12px; }
.po-cours .pch-lecon--actions:hover { background: #f8fafc; }
.po-cours .pch-actions { display: flex; align-items: center; gap: 8px; }
.po-cours .pch-actions .d { margin-right: 5px; }
.po-cours a.pch-action { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 6px; min-height: 0; padding: 8px 13px; border: 0; border-radius: 999px; font-family: 'Plus Jakarta Sans', system-ui, -apple-system, 'Segoe UI', sans-serif; font-size: 12.5px; font-weight: 800; line-height: 1.2; color: #fff; background: linear-gradient(135deg, #ff6b35, #f7931e); box-shadow: 0 8px 18px -8px rgba(255,107,53,.55); text-decoration: none; white-space: nowrap; transition: transform .2s ease; }
.po-cours a.pch-action:hover { transform: translateY(-1px); color: #fff; background: linear-gradient(135deg, #ff6b35, #f7931e); }
.po-cours .pch-actions a.pch-action--cours { background: #fff; color: #15203c; border: 1.5px solid #e7ecf3; box-shadow: none; }
.po-cours .pch-actions a.pch-action--cours:hover { border-color: #2563eb; color: #15203c; background: #fff; }
.po-cours a.pch-action:focus-visible { outline: 3px solid var(--c-blue); outline-offset: 3px; }
.po-cours .pch-chap-examen { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 13px 20px 13px 74px; background: #f1f6ff; border-top: 1px solid #dbe7ff; }
.po-cours .pch-examen-titre { color: #1e3faf; font-size: 13px; font-weight: 800; line-height: 1.4; }
.po-cours .pch-examen-titre small { display: block; margin-top: 2px; color: #4b64a8; font-size: 11.5px; font-weight: 600; }
.po-cours a.pch-action--examen { background: linear-gradient(135deg, #2563eb, #1e3faf); box-shadow: 0 8px 18px -8px rgba(37,99,235,.5); }
.po-cours a.pch-action--examen:hover { background: linear-gradient(135deg, #2563eb, #1e3faf); color: #fff; }
.po-cours #quiz { scroll-margin-top: 90px; }
.po-cours #video { scroll-margin-top: 90px; }
@media (max-width: 700px) {
  .po-cours .pch-chap-head { display: grid; grid-template-columns: 40px minmax(0, 1fr) 20px; gap: 2px 12px; }
  .po-cours .pch-chap-head .pch-chap-img { display: none; }
  .po-cours .pch-chap-head .pch-num { grid-column: 1; grid-row: 1 / 3; }
  .po-cours .pch-chap-head h2 { grid-column: 2; grid-row: 1; overflow-wrap: anywhere; }
  .po-cours .pch-chap-head .pch-chap-meta { grid-column: 2; grid-row: 2; }
  .po-cours .pch-chap-head .pch-chev { grid-column: 3; grid-row: 1 / 3; }
  .po-cours .pch-lecon--actions { grid-template-columns: 18px minmax(0, 1fr); padding-left: 20px; gap: 8px 10px; }
  .po-cours .pch-lecon--actions > .pch-dot { align-self: start; margin-top: 2px; }
  .po-cours .pch-actions { grid-column: 2; flex-wrap: wrap; }
  .po-cours .pch-actions .d { margin-right: auto; }
  .po-cours .pch-chap-examen { padding-left: 20px; flex-wrap: wrap; }
}

.po-cours .pch-note { background: var(--c-deep); border: 1px solid var(--c-rule); border-radius: 14px; padding: 16px 20px; margin: 24px 0; font-size: 14.5px; color: var(--c-soft); }
.po-cours .pch-note strong { color: var(--c-ink); }

 
.po-cours .pch-launch { border: 1px solid var(--c-rule); border-radius: 16px; padding: 18px 22px; margin: 0 0 18px; background: var(--c-paper); box-shadow: 0 6px 24px rgba(21,32,60,0.06); }
.po-cours .pch-launch .chip { display: inline-block; font-size: 11.5px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.08em; color: #fff; background: linear-gradient(135deg, var(--c-orange1), var(--c-orange2)); padding: 5px 13px; border-radius: 999px; margin-bottom: 10px; box-shadow: 0 4px 12px rgba(255,107,53,0.3); }
.po-cours .pch-launch p { font-size: 15px; color: var(--c-soft); margin: 0; line-height: 1.65; }

 
.po-cours .pch-free { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin: 0 0 22px; }
@media (max-width: 700px) { .po-cours .pch-free { grid-template-columns: 1fr; } }
.po-cours .pch-free-card { display: flex; flex-direction: column; gap: 5px; border: 1px solid var(--c-rule); border-radius: 14px; padding: 16px 18px; text-decoration: none; background: var(--c-paper); transition: border-color .2s, transform .15s; }
.po-cours .pch-free-card:hover { border-color: var(--c-blue); transform: translateY(-2px); }
.po-cours .pch-free-card b { font-size: 15px; color: var(--c-ink); }
.po-cours .pch-free-card span { font-size: 13.5px; color: var(--c-soft); line-height: 1.5; }

 
.po-cours .pc-ic { width: 18px; height: 18px; vertical-align: -3.5px; margin-right: 7px; flex-shrink: 0; }
.po-cours .pch-free-card b { display: flex; align-items: center; }
.po-cours .pch-free-card .pc-ic { color: var(--c-blue); }
.po-cours .pc-quiz-head .pc-ic { width: 20px; height: 20px; color: var(--c-blue); }
.po-cours .pc-meta .pc-ic { width: 15px; height: 15px; vertical-align: -2.5px; margin-right: 5px; color: var(--c-mut); }
.po-cours .pc-done button { display: inline-flex; align-items: center; gap: 8px; }
.po-cours .pc-done button .pc-ic { width: 16px; height: 16px; margin: 0; }



.po-cours .pc-guide { position: relative; border-radius: 20px; padding: 20px 22px 16px; margin: 44px 0 26px; background: linear-gradient(135deg, #13224a 0%, #15203c 55%, #1b2a52 100%); box-shadow: 0 14px 34px rgba(16, 15, 91, 0.22); }
.po-cours .pc-guide::before { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: 0; border-radius: 20px; background: radial-gradient(240px 210px at 92% -25%, rgba(61,155,255,0.3), transparent 65%); pointer-events: none; }
.po-cours .pc-guide::after { content: ""; position: absolute; left: 34px; top: -9px; width: 18px; height: 18px; background: #13224a; transform: rotate(45deg); border-radius: 4px; }
.po-cours .pc-guide-top { position: relative; z-index: 2; display: flex; align-items: center; gap: 11px; margin: -46px 0 12px; }
.po-cours .pc-guide-top img { width: 58px; height: 58px; border-radius: 50%; border: 3px solid #fff; box-shadow: 0 8px 22px rgba(16,15,91,0.35); background: #fff; animation: pcGuide 3.2s ease-in-out infinite; }
@keyframes pcGuide { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-5px); } }
@media (prefers-reduced-motion: reduce) { .po-cours .pc-guide-top img { animation: none; } }
.po-cours .pc-guide-top .k { display: inline-flex; align-items: center; background: linear-gradient(135deg, #ff6b35, #f7931e); color: #fff; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.1em; padding: 6px 13px; border-radius: 999px; box-shadow: 0 6px 16px rgba(255,107,53,0.4); margin-top: 8px; }
.po-cours .pc-guide .q { position: relative; z-index: 1; font-size: 15.5px; color: #f2f6ff; margin: 0 0 10px; line-height: 1.65; }


.po-cours .pc-guide .q strong, .po-cours .pc-guide .q b { color: #ffd23f; }
.po-cours .pc-guide .who { position: relative; z-index: 1; font-size: 12.5px; color: #93a5c9; margin: 0; padding-bottom: 2px; }
.po-cours .pc-guide .who a { color: #fff; font-weight: 700; text-decoration: none; }
.po-cours .pc-guide .who a:hover { text-decoration: underline; text-decoration-color: rgba(255,255,255,0.5); }
@media (max-width: 560px) { .po-cours .pc-guide { padding: 18px 17px 14px; } }

 
.po-cours .pc-plaque { display: inline-flex; align-items: stretch; background: #a11e33; border-radius: 7px; padding: 3px; box-shadow: 0 4px 12px rgba(161,30,51,0.28); line-height: 1; flex-shrink: 0; }
.po-cours .pc-plaque .pl-band { display: flex; align-items: center; background: #153a9e; border-radius: 4px 0 0 4px; padding: 0 3px; }
.po-cours .pc-plaque .pl-band svg { width: 13px; height: 26px; display: block; }
.po-cours .pc-plaque .pl-tx { display: flex; align-items: center; background: linear-gradient(180deg, #f0f2f7 0%, #ffffff 42%, #dde3ec 100%); color: #a11e33; font-family: 'Archivo Black', 'Arial Black', sans-serif; font-weight: 900; font-size: 13px; letter-spacing: 0.04em; padding: 5px 10px; border-radius: 0 4px 4px 0; white-space: nowrap; }
.po-cours .pc-plaque.lg .pl-band svg { width: 16px; height: 32px; }
.po-cours .pc-plaque.lg .pl-tx { font-size: 16px; padding: 6px 14px; }
.po-cours .pch-hero-top { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 14px; }
.po-cours .pch-hero-top .pc-chip { margin-bottom: 0; }

 
.po-cours .pc-cta-jeu { position: relative; overflow: hidden; border: none; background: linear-gradient(135deg, #13224a 0%, #15203c 55%, #1b2a52 100%); box-shadow: 0 12px 32px rgba(16, 15, 91, 0.18); border-radius: 18px; }
.po-cours .pc-cta-jeu::before { content: ""; position: absolute; top: -60%; left: 30%; width: 300px; height: 300px; background: radial-gradient(circle, rgba(61,155,255,0.22), transparent 65%); pointer-events: none; }
.po-cours .pc-cta-jeu::after { content: ""; position: absolute; left: 24px; right: 24px; bottom: 12px; height: 3px; background: repeating-linear-gradient(90deg, #ffd75e 0 14px, transparent 14px 30px); border-radius: 2px; opacity: 0.9; }
.po-cours .pc-cta-jeu > * { position: relative; z-index: 1; }
.po-cours .pc-cta-jeu { padding-bottom: 30px; }
.po-cours .pc-cta-tx { flex: 1; min-width: 220px; }
.po-cours .pc-cta-tx b { display: block; color: #ffffff; font-size: 16.5px; margin-bottom: 4px; }
.po-cours .pc-cta-tx span { display: block; color: #b8c5e2; font-size: 14px; line-height: 1.55; }
.po-cours .pc-cta-jeu .pc-btn { box-shadow: 0 8px 22px rgba(255,107,53,0.45); }
@media (max-width: 640px) { .po-cours .pc-cta-jeu { flex-direction: column; align-items: flex-start; } }





.po-cours .pc-refs { margin: 30px 0 0; padding: 12px 18px; background: #f6f8fc; border: 1px solid #e7ecf5; border-radius: 14px; }
.po-cours .pc-refs ul { margin: 10px 0 4px; padding: 0 0 0 18px; }
.po-cours .pc-refs .pc-refs-det { margin: 0; }
.po-cours .pc-refs .pc-refs-det summary { cursor: pointer; list-style: none; display: inline-flex; align-items: center; gap: 7px; font-size: 12.5px; font-weight: 700; color: #5a6b8c; user-select: none; }
.po-cours .pc-refs .pc-refs-det summary::-webkit-details-marker { display: none; }
.po-cours .pc-refs .pc-refs-det summary::before { content: ""; width: 7px; height: 7px; border-right: 2px solid #8494b5; border-bottom: 2px solid #8494b5; transform: rotate(-45deg); transition: transform .2s ease; }
.po-cours .pc-refs .pc-refs-det[open] summary::before { transform: rotate(45deg); }
.po-cours .pc-refs li { font-size: 12.5px; color: #5a6b8c; line-height: 1.6; margin: 0 0 4px; }
.po-cours .pc-refs .pc-refs-trust { margin: 0; font-size: 12.5px; color: #5a6b8c; line-height: 1.6; }
.po-cours .pc-refs a { color: var(--c-blue); font-weight: 600; text-decoration: none; }
.po-cours .pc-refs a:hover { text-decoration: underline; }



.po-cours .pch-chap { scroll-margin-top: 60px; }




 
.po-cours .pc-tldr { position: relative; margin: 0 0 26px; padding: 20px 22px 16px; border-radius: 18px; background: linear-gradient(135deg, #f2f7ff 0%, #eef2f8 100%); border: 1.5px solid #d9e6fb; overflow: hidden; }
.po-cours .pc-tldr::before { content: ""; position: absolute; top: -70px; right: -70px; width: 190px; height: 190px; background: radial-gradient(circle, rgba(61,155,255,0.18), transparent 65%); pointer-events: none; }
.po-cours .pc-tldr-chip { display: inline-flex; align-items: center; gap: 7px; background: linear-gradient(135deg, #ff6b35, #f7931e); color: #fff; font-size: 11.5px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.08em; padding: 6px 13px; border-radius: 999px; box-shadow: 0 5px 14px rgba(255,107,53,0.35); margin-bottom: 13px; }
.po-cours .pc-tldr-chip::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 3px rgba(255,255,255,0.35); }
.po-cours .pc-tldr ul { margin: 0 0 10px; padding: 0; list-style: none; }
.po-cours .pc-tldr li { position: relative; padding: 5px 0 5px 26px; font-size: 15px; line-height: 1.55; color: #26334f; }
.po-cours .pc-tldr li::before { content: ""; position: absolute; left: 2px; top: 9px; width: 15px; height: 15px; background: linear-gradient(135deg, #2563eb, #1e3faf); clip-path: polygon(54% 0, 21% 56%, 45% 56%, 40% 100%, 79% 42%, 55% 42%); }
.po-cours .pc-tldr .pc-tldr-more { margin: 0; font-size: 12.5px; color: #64748b; font-weight: 600; }

 
.po-cours .pc-check { position: relative; margin: 40px 0 28px; padding: 26px 18px 16px; border-radius: 18px; background: linear-gradient(160deg, #f6f9ff 0%, #eef2f8 100%); border: 1.5px solid #dbe6f6; box-shadow: 0 10px 26px rgba(16,15,91,0.09); }
.po-cours .pc-check > .pcx-tab { top: -15px; left: 16px; }
.po-cours .pc-check > .pcx-tab i { background: linear-gradient(135deg, #2563eb, #1e3faf); }
.po-cours .pc-check.poke { animation: pcPoke .55s cubic-bezier(0.34,1.56,0.64,1); }
@keyframes pcPoke { 0% { transform: scale(1) rotate(0); } 30% { transform: scale(1.015) rotate(-0.5deg); } 60% { transform: scale(1.01) rotate(0.4deg); } 100% { transform: scale(1) rotate(0); } }
@keyframes pcPop { 0% { transform: scale(1); } 45% { transform: scale(1.06); } 100% { transform: scale(1); } }
@keyframes pcShake { 0%, 100% { transform: translateX(0); } 20% { transform: translateX(-5px); } 40% { transform: translateX(5px); } 60% { transform: translateX(-3px); } 80% { transform: translateX(3px); } }
@media (prefers-reduced-motion: reduce) { .po-cours .pc-check.poke, .po-cours .pc-check .opts button.good, .po-cours .pc-check .opts button.bad, .po-cours .pcx-opt.good, .po-cours .pcx-opt.bad { animation: none; } }
.po-cours .pc-check .q { margin: 0 0 12px; font-size: 15.5px; font-weight: 800; color: var(--c-ink); }
.po-cours .pc-check .opts { display: flex; flex-wrap: wrap; gap: 9px; }
.po-cours .pc-check .opts button { appearance: none; cursor: pointer; font-family: inherit; font-size: 14px; font-weight: 700; color: var(--c-body); background: #fff; border: 1.5px solid #dbe4f2; border-radius: 999px; padding: 10px 18px; transition: transform .15s ease, background .2s ease, border-color .2s ease, color .2s ease, box-shadow .2s ease; }
.po-cours .pc-check .opts button:hover:not(:disabled) { transform: translateY(-1px); border-color: var(--c-blue); box-shadow: 0 6px 16px rgba(37,99,235,0.12); }
.po-cours .pc-check .opts button:active { transform: scale(0.97); }
.po-cours .pc-check.done .opts button { cursor: default; opacity: 0.5; transform: none; }
.po-cours .pc-check .opts button.good { background: #10b981; border-color: #10b981; color: #fff; opacity: 1 !important; animation: pcPop .35s cubic-bezier(0.34,1.56,0.64,1); box-shadow: 0 6px 18px rgba(16,185,129,0.35); }
.po-cours .pc-check .opts button.bad { background: #fdecec; border-color: #ef4444; color: #991b1b; opacity: 1 !important; animation: pcShake .4s ease; }
.po-cours .pc-check .fb { display: none; margin: 13px 0 0; font-size: 13.5px; line-height: 1.55; font-weight: 600; padding: 12px 15px; border-radius: 12px; }
.po-cours .pc-check .fb.on { display: block; }
.po-cours .pc-check .fb.ok { background: #e9f9f1; border: 1.5px solid #b9e9d3; color: #047857; }
.po-cours .pc-check .fb.ko { background: #fdeeee; border: 1.5px solid #f6cfcf; color: #b91c1c; }

 
.po-cours .pc-audio { display: flex; align-items: center; gap: 14px; margin: 18px 0 28px; padding: 13px 16px; border-radius: 16px; background: linear-gradient(135deg, #13224a 0%, #15203c 60%, #1b2a52 100%); box-shadow: 0 10px 26px rgba(16,15,91,0.22); position: relative; overflow: hidden; }
.po-cours .pc-audio::before { content: ""; position: absolute; top: -60%; right: -10%; width: 220px; height: 220px; background: radial-gradient(circle, rgba(61,155,255,0.25), transparent 65%); pointer-events: none; }
.po-cours .pc-audio > * { position: relative; z-index: 1; }
.po-cours .pc-audio .pa-play { flex-shrink: 0; width: 46px; height: 46px; border-radius: 50%; border: none; cursor: pointer; display: grid; place-items: center; background: linear-gradient(135deg, #ff6b35, #f7931e); color: #fff; box-shadow: 0 8px 20px rgba(255,107,53,0.45); transition: transform .2s ease; }
.po-cours .pc-audio .pa-play:hover { transform: scale(1.07); }
.po-cours .pc-audio .pa-play:active { transform: scale(0.95); }
.po-cours .pc-audio .pa-play svg { width: 19px; height: 19px; fill: #fff; }
.po-cours .pc-audio .pa-mid { flex: 1; min-width: 0; }
.po-cours .pc-audio .pa-t { font-size: 13px; font-weight: 800; color: #fff; margin: 0 0 7px; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.po-cours .pc-audio .pa-t .d { font-weight: 600; color: #93a5c9; font-size: 12px; }
.po-cours .pc-audio .pa-bar { position: relative; height: 6px; border-radius: 999px; background: rgba(255,255,255,0.14); cursor: pointer; }
.po-cours .pc-audio .pa-fill { position: absolute; top: 0; bottom: 0; left: 0; width: 0; border-radius: 999px; background: linear-gradient(90deg, #ff6b35, #ffb43d); }
.po-cours .pc-audio .pa-speed { flex-shrink: 0; appearance: none; border: 1px solid rgba(255,255,255,0.25); background: rgba(255,255,255,0.1); color: #fff; font-family: inherit; font-size: 12px; font-weight: 800; padding: 7px 12px; border-radius: 999px; cursor: pointer; transition: background .2s ease; }
.po-cours .pc-audio .pa-speed:hover { background: rgba(255,255,255,0.2); }
@media (max-width: 560px) { .po-cours .pc-audio { gap: 11px; padding: 12px 13px; } .po-cours .pc-audio .pa-play { width: 42px; height: 42px; } }



.po-cours .pc-video { margin: 0 0 28px; }
.po-cours .pcv-face { display: flex; align-items: stretch; gap: 0; width: 100%; padding: 0; cursor: pointer;
  font-family: inherit; text-align: left; border: 1px solid var(--c-rule); border-radius: 16px; overflow: hidden;
  background: #fff; box-shadow: 0 4px 16px rgba(21,32,60,.07); transition: box-shadow .18s ease, transform .18s ease; }
.po-cours .pcv-face:hover { box-shadow: 0 10px 28px rgba(21,32,60,.14); transform: translateY(-1px); }
.po-cours .pcv-face img { width: 208px; height: 117px; object-fit: cover; flex: 0 0 auto; display: block; background: #15203c; }
.po-cours .pcv-play { position: absolute; left: 104px; top: 50%; transform: translate(-50%, -50%); width: 48px; height: 48px;
  border-radius: 50%; background: rgba(255,107,53,.95); display: flex; align-items: center; justify-content: center;
  box-shadow: 0 6px 18px rgba(255,107,53,.45); }
.po-cours .pcv-play svg { width: 22px; height: 22px; fill: #fff; margin-left: 3px; }
.po-cours .pcv-face { position: relative; }
.po-cours .pcv-tx { display: flex; flex-direction: column; justify-content: center; gap: 5px; padding: 14px 20px; min-width: 0; }
.po-cours .pcv-tx b { font-size: 16.5px; font-weight: 800; color: var(--c-ink); line-height: 1.25; }
.po-cours .pcv-tx i { font-style: normal; font-size: 13.5px; color: var(--c-mut); line-height: 1.4; }
 
.po-cours .pc-video.on { position: relative; padding-top: 56.25%; border-radius: 16px; overflow: hidden; background: #000;
  box-shadow: 0 14px 34px rgba(21,32,60,.18); }
.po-cours .pc-video.on iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
@media (max-width: 560px) {
  .po-cours .pcv-face { flex-direction: column; }
  .po-cours .pcv-face img { width: 100%; height: 168px; }
  .po-cours .pcv-play { left: 50%; top: 84px; }
  .po-cours .pcv-tx { padding: 13px 15px 15px; }
  .po-cours .pcv-tx b { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) { .po-cours .pcv-face { transition: none; } .po-cours .pcv-face:hover { transform: none; } }
.po-cours .pc-video-grand { margin: 6px 0 14px; }
.po-cours .pc-video-grand .pcv-face { flex-direction: column; border-radius: 20px; box-shadow: 0 14px 34px rgba(21,32,60,.16); }
.po-cours .pc-video-grand .pcv-img { position: relative; display: block; width: 100%; aspect-ratio: 16 / 9; min-height: 0; overflow: hidden; background: #15203c; }
.po-cours .pc-video-grand .pcv-face img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.po-cours .pc-video-grand .pcv-play { left: 50%; top: 50%; width: 76px; height: 76px; box-shadow: 0 10px 30px rgba(255,107,53,.5), 0 0 0 8px rgba(255,255,255,.18); }
.po-cours .pc-video-grand .pcv-play svg { width: 32px; height: 32px; margin-left: 5px; }
.po-cours .pc-video-grand .pcv-tx { flex-direction: row; align-items: baseline; flex-wrap: wrap; gap: 4px 10px; padding: 12px 18px 13px; }
.po-cours .pc-video-grand .pcv-tx b { font-size: 15.5px; }
.po-cours .pc-video-grand .pcv-tx i { font-size: 13px; }
.po-cours .pc-video-grand.on { margin: 6px 0 14px; border-radius: 20px; }
/* 01/10/2026 lecteur-yt : lecteur piloté, reprise à la pause, écran de fin maison */
.po-cours .pc-video.on .pcv-yt, .po-cours .pc-video.on .pcv-yt iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.po-cours .pc-video .pcv-pause { position: absolute; inset: 0; z-index: 2; width: 100%; height: 100%; margin: 0; padding: 0; border: 0;
  background: rgba(10,16,34,.62); cursor: pointer; }
.po-cours .pc-video .pcv-pause[hidden] { display: none; }
.po-cours .pc-video .pcv-pause .pcv-play { left: 50%; top: 50%; width: 76px; height: 76px; box-shadow: 0 10px 30px rgba(255,107,53,.5), 0 0 0 8px rgba(255,255,255,.18); }
.po-cours .pc-video .pcv-pause .pcv-play svg { width: 32px; height: 32px; margin-left: 5px; }
.po-cours .pc-video.on.fin { padding-top: 0; background: #0f1a36; }
.po-cours .pcv-fin { box-sizing: border-box; width: 100%; aspect-ratio: 16 / 9; display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 18px; padding: 22px 18px; text-align: center; background: radial-gradient(80% 90% at 50% 30%, #1d4ed8 0%, #15203c 62%, #0b1226 100%); }
.po-cours .pcv-fin-t { margin: 0; max-width: 30ch; color: #fff; font-size: 20px; font-weight: 800; line-height: 1.3; }
.po-cours .pcv-fin-b { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
.po-cours .pcv-fin-b a, .po-cours .pcv-fin-b button { display: inline-flex; align-items: center; min-height: 46px; padding: 0 20px; border-radius: 999px;
  font: inherit; font-size: 15px; font-weight: 800; text-decoration: none; cursor: pointer; border: 0; }
.po-cours .pcv-fin-quiz { color: #fff; background: linear-gradient(135deg, #ff6b35, #f7931e); box-shadow: 0 8px 22px rgba(255,107,53,.4); }
.po-cours .pcv-fin-next { color: #15203c; background: #fff; }
.po-cours .pcv-fin-b .pcv-fin-revoir { color: #dce7ff; background: transparent; border: 1px solid rgba(255,255,255,.35); }
@media (max-width: 560px) {
  .po-cours .pc-video .pcv-pause .pcv-play { width: 64px; height: 64px; top: 50%; }
  .po-cours .pcv-fin { aspect-ratio: auto; min-height: 220px; gap: 14px; padding: 18px 12px; }
  .po-cours .pcv-fin-t { font-size: 17px; }
  .po-cours .pcv-fin-b a, .po-cours .pcv-fin-b button { min-height: 42px; padding: 0 16px; font-size: 14px; }
}
.po-cours .pc-audio-mini { gap: 11px; margin: 0 0 26px; padding: 8px 14px 8px 8px; border-radius: 999px; }
.po-cours .pc-audio-mini::before { display: none; }
.po-cours .pc-audio-mini .pa-play { width: 36px; height: 36px; box-shadow: 0 4px 12px rgba(255,107,53,.35); }
.po-cours .pc-audio-mini .pa-play svg { width: 15px; height: 15px; }
.po-cours .pc-audio-mini .pa-mid { display: flex; align-items: center; gap: 12px; }
.po-cours .pc-audio-mini .pa-t { margin: 0; flex: 0 0 auto; font-size: 13px; white-space: nowrap; }
.po-cours .pc-audio-mini .pa-bar { flex: 1 1 auto; height: 5px; }
.po-cours .pc-audio-mini .pa-speed { padding: 5px 10px; font-size: 11.5px; }
@media (max-width: 560px) {
  .po-cours .pc-video-grand { margin: 4px -4px 12px; }
  .po-cours .pc-video-grand .pcv-play { width: 64px; height: 64px; }
  .po-cours .pc-video-grand .pcv-play svg { width: 27px; height: 27px; }
  .po-cours .pc-video-grand .pcv-tx { padding: 11px 14px 12px; }
  .po-cours .pc-audio-mini { padding: 7px 12px 7px 7px; }
  .po-cours .pc-audio-mini .pa-t .d { display: none; }
}



.po-cours .pc-sprint { position: relative; isolation: isolate; overflow: hidden; margin: 56px 0 10px; padding: 22px 22px 22px; border-radius: 26px; background: radial-gradient(420px 260px at 100% 0%, rgba(61,155,255,0.26), transparent 62%), radial-gradient(360px 240px at 0% 100%, rgba(255,107,53,0.16), transparent 60%), linear-gradient(155deg, #0c1737 0%, #15203c 55%, #1b2a52 100%); box-shadow: 0 22px 50px rgba(16,15,91,0.30); }
.po-cours .pc-sprint::before { content: ""; position: absolute; inset: 0; z-index: -1; background-image: radial-gradient(rgba(255,255,255,0.07) 1px, transparent 1px); background-size: 18px 18px; -webkit-mask-image: linear-gradient(180deg, #000, transparent 55%); mask-image: linear-gradient(180deg, #000, transparent 55%); pointer-events: none; }
.po-cours .pc-sprint .spr-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 14px; }
.po-cours .pc-sprint .spr-tag { display: inline-flex; align-items: center; gap: 8px; padding: 5px 13px 5px 5px; border-radius: 999px; background: rgba(255,255,255,0.09); border: 1px solid rgba(255,255,255,0.16); color: #fff; font-size: 11.5px; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; line-height: 1; }
.po-cours .pc-sprint .spr-tag i { display: inline-grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: linear-gradient(135deg, #ff6b35, #f7931e); box-shadow: 0 4px 12px rgba(255,107,53,0.45); color: #fff; }
.po-cours .pc-sprint .spr-tag svg { width: 14px; height: 14px; }
.po-cours .pc-sprint .spr-count { font-size: 12px; font-weight: 800; letter-spacing: 0.08em; color: #9fb2d8; font-variant-numeric: tabular-nums; }
.po-cours .pc-sprint .spr-head { margin: 0 0 16px; text-align: left; }
.po-cours .pc-sprint .spr-head b { display: block; color: #fff; font-size: 21px; line-height: 1.25; font-weight: 800; letter-spacing: -0.015em; }
.po-cours .pc-sprint .spr-head span { display: block; margin-top: 6px; color: #9fb2d8; font-size: 13.5px; font-weight: 600; line-height: 1.5; }
.po-cours .pc-sprint .spr-bars { display: flex; gap: 5px; margin: 0 0 18px; }
.po-cours .pc-sprint .spr-bars i { flex: 1 1 0; height: 4px; border-radius: 999px; background: rgba(255,255,255,0.16); overflow: hidden; }
.po-cours .pc-sprint .spr-bars b { display: block; width: 0; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #ff6b35, #ffb43d); transition: width .35s cubic-bezier(.2,.8,.2,1); }
.po-cours .pc-sprint .spr-bars i.on b { width: 100%; }
.po-cours .pc-sprint .spr-stage { position: relative; padding-bottom: 22px; outline: none; }
.po-cours .pc-sprint .spr-stage:focus-visible .spr-card { box-shadow: 0 0 0 3px #ffb43d, 0 24px 56px rgba(4,10,30,0.42); }
.po-cours .pc-sprint .spr-ghost { position: absolute; left: 0; right: 0; top: 0; bottom: 22px; border-radius: 22px; background: #fff; transition: opacity .3s ease; }
.po-cours .pc-sprint .spr-ghost.g1 { transform: translateY(11px) scale(0.95); opacity: 0.5; }
.po-cours .pc-sprint .spr-ghost.g2 { transform: translateY(22px) scale(0.9); opacity: 0.24; }
.po-cours .pc-sprint .spr-card { position: relative; display: flex; flex-direction: column; background: #fff; border-radius: 22px; padding: 20px 22px 22px; box-shadow: 0 24px 56px rgba(4,10,30,0.42); cursor: pointer; touch-action: pan-y; -webkit-tap-highlight-color: transparent; -webkit-user-select: none; user-select: none; }
.po-cours .pc-sprint .spr-card::before { content: ""; position: absolute; left: 22px; right: 22px; top: 0; height: 4px; border-radius: 0 0 6px 6px; background: var(--spr-c, #ff6b35); }
.po-cours .pc-sprint .spr-card.def { --spr-c: #d97706; --spr-bg: rgba(245,158,11,0.14); }
.po-cours .pc-sprint .spr-card.exam { --spr-c: #2563eb; --spr-bg: rgba(37,99,235,0.11); }
.po-cours .pc-sprint .spr-card.memo { --spr-c: #059669; --spr-bg: rgba(16,185,129,0.13); }
.po-cours .pc-sprint .spr-card.piege { --spr-c: #dc2626; --spr-bg: rgba(239,68,68,0.11); }
.po-cours .pc-sprint .spr-card.fin { --spr-c: #10b981; cursor: default; }
.po-cours .pc-sprint .spr-in { display: flex; flex-direction: column; flex: 1 1 auto; }
.po-cours .pc-sprint .spr-kind { display: inline-flex; align-self: flex-start; align-items: center; gap: 7px; margin: 4px 0 14px; padding: 5px 12px 5px 5px; border-radius: 999px; background: var(--spr-bg); color: var(--spr-c); font-size: 11px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; line-height: 1; }
.po-cours .pc-sprint .spr-kind i { display: inline-grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; background: var(--spr-c); color: #fff; }
.po-cours .pc-sprint .spr-kind svg { width: 13px; height: 13px; }
.po-cours .pc-sprint .spr-kind em { font-style: normal; }
.po-cours .pc-sprint .spr-body { font-size: 16.5px; line-height: 1.62; color: #1e293b; }
.po-cours .pc-sprint .spr-body > :last-child { margin-bottom: 0; }
.po-cours .pc-sprint .spr-body strong { color: #0f172a; }
.po-cours .pc-sprint .spr-fin { flex: 1 1 auto; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; padding: 8px 0; text-align: center; }
.po-cours .pc-sprint .spr-fin .ok { display: grid; place-items: center; width: 64px; height: 64px; margin-bottom: 6px; border-radius: 50%; background: linear-gradient(135deg, #10b981, #059669); color: #fff; box-shadow: 0 12px 28px rgba(16,185,129,0.4); animation: sprOk .5s cubic-bezier(.3,1.6,.5,1); }
.po-cours .pc-sprint .spr-fin .ok svg { width: 32px; height: 32px; }
.po-cours .pc-sprint .spr-fin b { font-size: 22px; font-weight: 800; color: #15203c; letter-spacing: -0.01em; }
.po-cours .pc-sprint .spr-fin small { max-width: 30ch; font-size: 14px; font-weight: 600; line-height: 1.5; color: #64748b; }
.po-cours .pc-sprint .spr-go { display: inline-flex; align-items: center; gap: 9px; margin-top: 10px; padding: 13px 22px; border-radius: 14px; background: linear-gradient(135deg, #ff6b35, #f7931e); color: #fff; font-size: 15px; font-weight: 800; text-decoration: none; box-shadow: 0 12px 26px rgba(255,107,53,0.42); transition: transform .15s ease, box-shadow .2s ease; }
.po-cours .pc-sprint .spr-go:hover { transform: translateY(-1px); box-shadow: 0 16px 32px rgba(255,107,53,0.52); color: #fff; }
.po-cours .pc-sprint .spr-go svg { width: 17px; height: 17px; }
.po-cours .pc-sprint .spr-card.out-l { animation: sprOutL .15s ease-in forwards; }
.po-cours .pc-sprint .spr-card.out-r { animation: sprOutR .15s ease-in forwards; }
.po-cours .pc-sprint .spr-card.in-r { animation: sprInR .34s cubic-bezier(.2,.9,.25,1.12); }
.po-cours .pc-sprint .spr-card.in-l { animation: sprInL .34s cubic-bezier(.2,.9,.25,1.12); }
@keyframes sprOutL { to { opacity: 0; transform: translateX(-36px) rotate(-2deg); } }
@keyframes sprOutR { to { opacity: 0; transform: translateX(36px) rotate(2deg); } }
@keyframes sprInR { from { opacity: 0; transform: translateX(40px) rotate(2deg) scale(0.98); } to { opacity: 1; transform: none; } }
@keyframes sprInL { from { opacity: 0; transform: translateX(-40px) rotate(-2deg) scale(0.98); } to { opacity: 1; transform: none; } }
@keyframes sprOk { from { opacity: 0; transform: scale(0.4); } to { opacity: 1; transform: none; } }
.po-cours .pc-sprint .spr-foot { display: flex; align-items: center; gap: 10px; margin-top: 16px; }
.po-cours .pc-sprint .spr-foot button { appearance: none; border: 0; cursor: pointer; font-family: inherit; display: inline-flex; align-items: center; justify-content: center; gap: 9px; height: 54px; border-radius: 16px; transition: transform .15s ease, background .2s ease, box-shadow .2s ease, opacity .2s ease; }
.po-cours .pc-sprint .spr-foot .prev { flex: 0 0 54px; background: rgba(255,255,255,0.1); border: 1.5px solid rgba(255,255,255,0.22); color: #fff; }
.po-cours .pc-sprint .spr-foot .prev:hover { background: rgba(255,255,255,0.18); }
.po-cours .pc-sprint .spr-foot .prev[disabled] { opacity: 0.3; cursor: default; }
.po-cours .pc-sprint .spr-foot .next { flex: 1 1 auto; background: linear-gradient(135deg, #ff6b35, #f7931e); color: #fff; font-size: 16px; font-weight: 800; letter-spacing: 0.01em; box-shadow: 0 12px 26px rgba(255,107,53,0.42); }
.po-cours .pc-sprint .spr-foot .next:hover { transform: translateY(-1px); box-shadow: 0 16px 32px rgba(255,107,53,0.52); }
.po-cours .pc-sprint .spr-foot .next.rejouer { background: rgba(255,255,255,0.1); border: 1.5px solid rgba(255,255,255,0.22); box-shadow: none; font-size: 15px; }
.po-cours .pc-sprint .spr-foot .next.rejouer:hover { background: rgba(255,255,255,0.18); box-shadow: none; }
.po-cours .pc-sprint .spr-foot button:active { transform: scale(0.97); }
.po-cours .pc-sprint .spr-foot svg { width: 19px; height: 19px; }
@media (max-width: 560px) {
  .po-cours .pc-sprint { margin: 44px -6px 10px; padding: 18px 16px 18px; border-radius: 22px; }
  .po-cours .pc-sprint .spr-head b { font-size: 19px; }
  .po-cours .pc-sprint .spr-head span { font-size: 13px; }
  .po-cours .pc-sprint .spr-card { padding: 18px 18px 20px; border-radius: 20px; }
  .po-cours .pc-sprint .spr-ghost { border-radius: 20px; }
  .po-cours .pc-sprint .spr-body { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .po-cours .pc-sprint .spr-card.out-l, .po-cours .pc-sprint .spr-card.out-r, .po-cours .pc-sprint .spr-card.in-l, .po-cours .pc-sprint .spr-card.in-r, .po-cours .pc-sprint .spr-fin .ok { animation: none; }
  .po-cours .pc-sprint .spr-bars b { transition: none; }
}
.po-cours .pc-wrap > .pc-refs:last-child { margin-bottom: 48px; }



.po-cours .pc-mono-row { display: flex; align-items: stretch; gap: 9px; margin: -10px 0 20px; }
.po-cours .pc-mono-row button { flex: 1 1 0; justify-content: center; }
.po-cours .iat { display: inline-flex; align-items: center; justify-content: center; font-style: normal; font-size: 9px; font-weight: 800; letter-spacing: 0.06em; padding: 2px 6px; border-radius: 6px; background: linear-gradient(135deg, #13224a, #1b2a52); color: #ffd23f; margin-left: 7px; }
.po-cours .pc-mono-row button, .po-cours .pc-check .pc-mono-go { appearance: none; cursor: pointer; font-family: inherit; display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; font-weight: 700; color: #1e3faf; background: #fff; border: 1.5px solid #d9e6fb; border-radius: 999px; padding: 7px 13px; transition: transform .15s ease, background .2s ease, border-color .2s ease; }
.po-cours .pc-mono-row button:hover { transform: translateY(-1px); border-color: #2563eb; background: #f5f9ff; }
.po-cours .pc-mono-row button svg, .po-cours .pc-check .pc-mono-go svg { width: 13px; height: 13px; }
.po-cours .pc-check .pc-mono-go { margin-top: 10px; }
.po-cours .pc-mono-rep { display: block; margin: 12px 0 20px; padding: 14px 16px; border-radius: 16px; border-bottom-left-radius: 5px; background: linear-gradient(135deg, #eef4ff, #f7faff); border: 1.5px solid #d9e6fb; animation: pcMonoIn .3s ease; }
.po-cours .pc-check .pc-mono-rep { margin-bottom: 4px; }
@keyframes pcMonoIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.po-cours .pc-mono-tx { display: block; }
.po-cours .pc-mono-tx .who { display: flex; align-items: center; gap: 7px; font-size: 10.5px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.07em; color: #1e3faf; margin-bottom: 6px; }
.po-cours .pc-mono-tx .who .iat { margin-left: 0; }

.po-cours .pc-mono-tx .msg { font-size: 14px; line-height: 1.6; color: #1e293b; }

.po-cours .pc-mono-tx .msg i { display: inline-block; width: 6px; height: 6px; margin-right: 3px; border-radius: 50%; background: #94a3b8; animation: ppDot 1s infinite; font-style: normal; }
.po-cours .pc-mono-tx .msg i:nth-child(2) { animation-delay: .18s; }
.po-cours .pc-mono-tx .msg i:nth-child(3) { animation-delay: .36s; }
@keyframes ppDot { 0%,100% { transform: translateY(0); opacity: .5; } 50% { transform: translateY(-4px); opacity: 1; } }
 
.po-cours .pc-body > ul { list-style: none; margin: 14px 0 20px; padding: 0; }
.po-cours .pc-body > ul > li { position: relative; padding: 5px 0 5px 30px; }
.po-cours .pc-body > ul > li::before { content: ""; position: absolute; left: 2px; top: 8px; width: 16px; height: 16px; background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><rect x="5.2" y="5.2" width="13.6" height="13.6" rx="2.6" transform="rotate(45 12 12)" fill="%23ffcf33" stroke="%23ffffff" stroke-width="1.8"/></svg>') center/contain no-repeat; filter: drop-shadow(0 2px 4px rgba(16,15,91,0.28)); }

 
@media (prefers-reduced-motion: no-preference) {
  .po-cours .pc-body > .pc-rvl { opacity: 0; transform: translateY(14px); transition: opacity .5s ease, transform .5s cubic-bezier(0.22,1,0.36,1); }
  .po-cours .pc-body > .pc-rvl.in { opacity: 1; transform: none; }
}
.pc-burst { position: fixed; z-index: 100010; width: 9px; height: 9px; border-radius: 2px; pointer-events: none; animation: pcBurst .9s cubic-bezier(0.22,1,0.36,1) forwards; }
@keyframes pcBurst { 0% { transform: translate(0,0) rotate(0); opacity: 1; } 100% { transform: translate(var(--dx), var(--dy)) rotate(var(--rot)); opacity: 0; } }

 
.po-cours .pc-exquiz { position: relative; margin: 40px 0 28px; padding: 44px 18px 22px; border-radius: 22px; background: linear-gradient(160deg, #f6f9ff 0%, #eef2f8 100%); border: 1.5px solid #dbe6f6; box-shadow: 0 14px 36px rgba(16,15,91,0.1); }
.po-cours .pc-exquiz::before { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: 0; border-radius: 22px; background: radial-gradient(320px 200px at 8% -10%, rgba(37,99,235,0.08), transparent 65%), radial-gradient(300px 200px at 96% 110%, rgba(255,107,53,0.09), transparent 65%); pointer-events: none; }
.po-cours .pc-exquiz > * { position: relative; z-index: 1; }
.po-cours .pcx-tab { position: absolute; top: -17px; left: 18px; z-index: 2; display: inline-flex; align-items: center; gap: 8px; background: #fff; border: 1.5px solid #dbe6f6; border-radius: 999px; padding: 5px 15px 5px 5px; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.08em; color: var(--c-ink); box-shadow: 0 8px 20px rgba(16,15,91,0.12); }
.po-cours .pcx-tab i { display: inline-grid; place-items: center; width: 26px; height: 26px; border-radius: 999px; background: linear-gradient(135deg, #ff6b35, #f7931e); color: #fff; }
.po-cours .pcx-tab i svg { width: 14px; height: 14px; }
.po-cours .pc-exquiz { scroll-margin-top: 60px; }
.po-cours .pcx { max-width: 560px; margin: 0 auto; }

 
.po-cours .pcx-intro { text-align: center; display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 8px 0 4px; }
.po-cours .pcx-intro b { color: var(--c-ink); font-size: 22px; font-weight: 800; letter-spacing: -0.01em; }
.po-cours .pcx-intro .s { color: var(--c-mut); font-size: 14.5px; line-height: 1.6; max-width: 400px; }
.po-cours .pcx-chips { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
.po-cours .pcx-chips span { display: inline-flex; align-items: center; font-size: 12.5px; font-weight: 800; padding: 6px 14px; border-radius: 999px; }
.po-cours .pcx-chips .obj { background: var(--c-blue-soft); color: var(--c-navy); border: 1px solid rgba(37,99,235,0.18); }
.po-cours .pcx-chips .rec { background: #fff; color: #5a6b8c; border: 1.5px solid #dbe4f2; }
.po-cours .pcx-chips .rec.ok { background: #e9f9f1; color: #047857; border-color: #b9e9d3; }
.po-cours .pcx-go, .po-cours .pcx-re { appearance: none; cursor: pointer; font-family: inherit; display: inline-flex; align-items: center; justify-content: center; gap: 9px; margin-top: 8px; padding: 15px 30px; border: none; border-radius: 999px; background: linear-gradient(135deg, #ff6b35, #f7931e); color: #fff; font-size: 15px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.04em; box-shadow: 0 12px 28px rgba(255,107,53,0.4); transition: transform .2s ease, box-shadow .2s ease; }
.po-cours .pcx-go:hover { transform: translateY(-2px); box-shadow: 0 16px 34px rgba(255,107,53,0.5); }
.po-cours .pcx-go:active { transform: scale(0.97); }
.po-cours .pcx-go svg, .po-cours .pcx-next svg { width: 16px; height: 16px; }

 
.po-cours .pcx-top { display: flex; justify-content: space-between; align-items: center; margin: 0 0 10px; font-size: 12px; font-weight: 800; color: #8494b5; text-transform: uppercase; letter-spacing: 0.07em; }
.po-cours .pcx-top .pcx-score { color: #047857; background: #e9f9f1; border: 1px solid #b9e9d3; padding: 4px 11px; border-radius: 999px; text-transform: none; letter-spacing: 0; font-size: 12.5px; }
.po-cours .pcx-route { position: relative; height: 12px; border-radius: 999px; background: #dfe6f2; overflow: hidden; }
.po-cours .pcx-route .fill { position: absolute; top: 0; bottom: 0; left: 0; width: 0; border-radius: 999px; background: linear-gradient(90deg, #ff6b35, #ffb43d); transition: width .5s cubic-bezier(0.22,1,0.36,1); }
.po-cours .pcx-route .dash { position: absolute; left: 6px; right: 6px; top: 50%; height: 2px; transform: translateY(-50%); background: repeating-linear-gradient(90deg, rgba(255,255,255,0.95) 0 9px, transparent 9px 20px); border-radius: 2px; pointer-events: none; }
.po-cours .pcx-dots { display: flex; gap: 5px; flex-wrap: wrap; margin: 9px 0 16px; }
.po-cours .pcx-dots i { width: 7px; height: 7px; border-radius: 50%; background: #d6deeb; transition: all .25s ease; }
.po-cours .pcx-dots i.cur { background: #fff; box-shadow: 0 0 0 2px var(--c-blue); }
.po-cours .pcx-dots i.ok { background: #10b981; }
.po-cours .pcx-dots i.ko { background: #ef4444; }

 


.po-cours .pcx-img { display: block; width: auto; max-width: 100%; max-height: 300px; border-radius: 14px; border: 1.5px solid #e2e9f4; margin: 0 auto 14px; min-width: 160px; min-height: 80px; background: #eef2f8; }
.po-cours .pcx-q { display: flex; gap: 12px; align-items: flex-start; margin: 0 0 14px; }
.po-cours .pcx-q p { margin: 0; color: var(--c-ink); font-size: 17px; font-weight: 700; line-height: 1.55; }
.po-cours .pcx-au { flex-shrink: 0; appearance: none; cursor: pointer; font-family: inherit; display: inline-flex; align-items: center; gap: 7px; border: 1.5px solid rgba(37,99,235,0.25); background: var(--c-blue-soft); color: var(--c-navy); font-size: 12.5px; font-weight: 800; padding: 8px 14px; border-radius: 999px; transition: background .2s ease, transform .15s ease; }
.po-cours .pcx-au:hover { background: #dbe9ff; transform: translateY(-1px); }
.po-cours .pcx-au svg { width: 15px; height: 15px; }

 
.po-cours .pcx-opts { display: flex; flex-direction: column; gap: 10px; }
.po-cours .pcx-opt { appearance: none; cursor: pointer; font-family: inherit; display: flex; align-items: center; gap: 12px; text-align: left; width: 100%; background: #fff; border: 1.5px solid #dbe4f2; border-radius: 14px; padding: 12px 14px; transition: transform .15s ease, border-color .2s ease, box-shadow .2s ease, background .2s ease; }
.po-cours .pcx-opt .l { flex-shrink: 0; display: inline-grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; background: #eef2f8; color: #5a6b8c; font-size: 13px; font-weight: 800; transition: background .2s ease, color .2s ease; }
.po-cours .pcx-opt .x { font-size: 14.5px; font-weight: 700; color: var(--c-body); line-height: 1.45; }
.po-cours .pcx-opt:hover:not(:disabled) { transform: translateY(-1px); border-color: var(--c-blue); box-shadow: 0 8px 20px rgba(37,99,235,0.12); }
.po-cours .pcx-opt:disabled { cursor: default; opacity: 0.55; }
.po-cours .pcx-opt.good { opacity: 1; background: #e9f9f1; border-color: #10b981; animation: pcPop .35s cubic-bezier(0.34,1.56,0.64,1); }
.po-cours .pcx-opt.good .l { background: #10b981; color: #fff; }
.po-cours .pcx-opt.good .x { color: #065f46; }
.po-cours .pcx-opt.bad { opacity: 1; background: #fdecec; border-color: #ef4444; animation: pcShake .4s ease; }
.po-cours .pcx-opt.bad .l { background: #ef4444; color: #fff; }
.po-cours .pcx-opt.bad .x { color: #991b1b; }

 
.po-cours .pcx-fb { margin-top: 14px; padding: 16px; border-radius: 16px; }
.po-cours .pcx-fb.ok { background: #e9f9f1; border: 1.5px solid #b9e9d3; }
.po-cours .pcx-fb.ko { background: #fdeeee; border: 1.5px solid #f6cfcf; }
.po-cours .pcx-fb .h { display: flex; align-items: center; gap: 10px; margin-bottom: 6px; }
.po-cours .pcx-fb .h b { font-size: 15.5px; font-weight: 800; line-height: 1.35; }
.po-cours .pcx-fb.ok .h b { color: #047857; }
.po-cours .pcx-fb.ko .h b { color: #b91c1c; }
.po-cours .pcx-feu { flex-shrink: 0; width: 19px; height: 42px; filter: drop-shadow(0 3px 6px rgba(16,15,91,0.25)); }
.po-cours .pcx-fb p { margin: 0 0 12px; font-size: 14px; line-height: 1.6; color: #33415e; }
.po-cours .pcx-next { appearance: none; cursor: pointer; font-family: inherit; display: flex; align-items: center; justify-content: center; gap: 9px; width: 100%; padding: 14px 20px; border: none; border-radius: 14px; font-size: 14.5px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.05em; color: #fff; transition: transform .15s ease, box-shadow .2s ease; }
.po-cours .pcx-fb.ok .pcx-next { background: linear-gradient(135deg, #10b981, #059669); box-shadow: 0 10px 24px rgba(16,185,129,0.35); }
.po-cours .pcx-fb.ko .pcx-next { background: linear-gradient(135deg, #2563eb, #1e3faf); box-shadow: 0 10px 24px rgba(37,99,235,0.3); }
.po-cours .pcx-next:hover { transform: translateY(-1px); }
.po-cours .pcx-next:active { transform: scale(0.98); }

 
.po-cours .pcx-res { text-align: center; display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 10px 0 4px; }
.po-cours .pcx-ring { position: relative; width: 128px; height: 128px; margin-bottom: 4px; }
.po-cours .pcx-ring svg { width: 100%; height: 100%; transform: rotate(-90deg); }
.po-cours .pcx-ring circle { fill: none; stroke-width: 11; }
.po-cours .pcx-ring .bg { stroke: #dfe6f2; }
.po-cours .pcx-ring .val { stroke: #ef4444; stroke-linecap: round; transition: stroke-dashoffset 1s cubic-bezier(0.22,1,0.36,1); }
.po-cours .pcx-res.win .pcx-ring .val { stroke: #10b981; }
.po-cours .pcx-ring .pct { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); font-size: 30px; font-weight: 900; letter-spacing: -0.02em; color: var(--c-ink); }
.po-cours .pcx-ring .pct i { font-style: normal; font-size: 16px; font-weight: 800; color: #8494b5; margin-left: 1px; }
.po-cours .pcx-res b { color: var(--c-ink); font-size: 20px; font-weight: 800; }
.po-cours .pcx-res .d { color: var(--c-mut); font-size: 14px; line-height: 1.6; max-width: 380px; }
.po-cours .pcx-recap { display: flex; flex-direction: column; align-items: center; gap: 7px; margin-top: 6px; }
.po-cours .pcx-recap .t { font-size: 10.5px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.09em; color: #8494b5; }
.po-cours .pcx-recap .pcx-dots { margin: 0; justify-content: center; }
.po-cours .pcx-recap .pcx-dots i { width: 9px; height: 9px; }
.po-cours .pcx-stats { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-top: 4px; }
.po-cours .pcx-stats span { font-size: 12.5px; font-weight: 700; color: #5a6b8c; background: #fff; border: 1.5px solid #dbe4f2; padding: 6px 13px; border-radius: 999px; }


.po-cours .pcx-upsell { position: relative; overflow: hidden; display: flex; flex-direction: column; align-items: center; gap: 11px; width: 100%; margin-top: 20px; padding: 26px 20px 22px; text-align: center; border-radius: 20px; background: radial-gradient(300px 190px at 90% -18%, rgba(61,155,255,0.22), transparent 65%), radial-gradient(260px 170px at -6% 115%, rgba(255,107,53,0.16), transparent 60%), linear-gradient(150deg, #0e1a3d 0%, #15203c 55%, #1b2a52 100%); box-shadow: 0 20px 48px -18px rgba(10, 16, 40, .7); }
.po-cours .pcx-up-sign { position: absolute; top: 13px; right: 13px; transform: rotate(8deg); filter: drop-shadow(0 8px 16px rgba(0,0,0,.35)); opacity: .95; }
.po-cours .pcx-up-badge { display: inline-flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; color: #fff; background: linear-gradient(135deg, #10b981, #059669); border-radius: 999px; padding: 6px 14px; box-shadow: 0 6px 16px rgba(16, 185, 129, .45); }
 
.po-cours .pcx-up-badge--nav { background: linear-gradient(135deg, #2f6bff, #1e3faf); box-shadow: 0 6px 16px rgba(37, 99, 235, .45); }


.po-cours .pcx-res .pcx-up-t { color: #fff; font-size: clamp(19px, 4.6vw, 24px); font-weight: 800; line-height: 1.18; letter-spacing: -.4px; max-width: 24ch; text-wrap: balance; }
.po-cours .pcx-res .pcx-up-t em { font-style: normal; color: #ffd23f; }
.po-cours .pcx-res .pcx-up-s { color: #b8c5e2; font-size: 13.5px; line-height: 1.55; max-width: 46ch; }
.po-cours .pcx-res .pcx-up-s b { color: #fff; font-size: inherit; font-weight: 800; }
.po-cours .pcx-up-go { display: inline-flex; align-items: center; justify-content: center; gap: 10px; margin-top: 4px; padding: 16px 28px; border: 0; border-radius: 999px; background: linear-gradient(100deg, #f65e2e 0%, #f7931e 60%, #ffa53d 100%); color: #fff; font-family: inherit; font-size: 15px; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; cursor: pointer; box-shadow: 0 12px 28px rgba(255, 107, 53, .5); transition: transform .15s ease; animation: pcxUpGlow 2.6s ease-in-out infinite; }
.po-cours .pcx-up-go:hover { transform: translateY(-1px); }
.po-cours .pcx-up-go:active { transform: scale(.98); }
.po-cours .pcx-up-go svg { width: 17px; height: 17px; }
@keyframes pcxUpGlow { 0%, 100% { box-shadow: 0 12px 28px rgba(255, 107, 53, .5); } 50% { box-shadow: 0 12px 34px rgba(255, 107, 53, .85), 0 0 0 7px rgba(255, 107, 53, .12); } }
@media (prefers-reduced-motion: reduce) { .po-cours .pcx-up-go { animation: none; } }


@media (max-width: 420px) { .po-cours .pcx-res .pcx-up-go { font-size: 13px; letter-spacing: .01em; padding: 15px 14px; gap: 7px; } }
.po-cours .pcx-up-foot { display: inline-flex; align-items: center; gap: 6px; font-size: 11.5px; font-weight: 600; color: #8fa3c8; }


.po-cours .pcx-res .pcx-ln { display: flex; align-items: center; gap: 12px; width: 100%; margin-top: 16px; padding: 13px 14px; border-radius: 16px; background: #0f172a; color: #fff; text-decoration: none; text-align: left; box-shadow: 0 14px 30px -16px rgba(15, 23, 42, .6); transition: transform .15s; }
.po-cours .pcx-res .pcx-ln:hover { transform: translateY(-1px); }
.po-cours .pcx-res .pcx-ln-k { flex: 0 0 auto; display: flex; flex-direction: column; align-items: center; justify-content: center; min-width: 58px; padding: 8px 6px; border-radius: 12px; background: rgba(255, 255, 255, .06); font-size: 22px; font-weight: 800; line-height: 1; color: #ffd166; }
.po-cours .pcx-res .pcx-ln-k small { font-size: 8.5px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: #ffb3c1; margin-top: 4px; white-space: nowrap; }
.po-cours .pcx-res .pcx-ln-t { flex: 1; font-size: 12.5px; line-height: 1.4; color: #c3cfe2; }
.po-cours .pcx-res .pcx-ln-t b { display: block; font-size: 13.5px; font-weight: 800; color: #fff; margin-bottom: 2px; }
.po-cours .pcx-res .pcx-ln-go { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 6px; padding: 10px 14px; border-radius: 999px; background: #d5163e; color: #fff; font-size: 12.5px; font-weight: 800; white-space: nowrap; }
.po-cours .pcx-res .pcx-ln-go svg { width: 14px; height: 14px; }
@media (max-width: 480px) { .po-cours .pcx-res .pcx-ln { flex-wrap: wrap; } .po-cours .pcx-res .pcx-ln-go { width: 100%; justify-content: center; } }
.po-cours .pcx-acts { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin-top: 12px; width: 100%; }
.po-cours .pcx-suiv { display: flex; flex-direction: column; align-items: center; gap: 2px; text-decoration: none; background: linear-gradient(135deg, #ff6b35, #f7931e); color: #fff !important; padding: 13px 26px; border-radius: 16px; box-shadow: 0 12px 28px rgba(255,107,53,0.4); transition: transform .2s ease, box-shadow .2s ease; max-width: 100%; }
.po-cours .pcx-suiv:hover { transform: translateY(-2px); box-shadow: 0 16px 34px rgba(255,107,53,0.5); }
.po-cours .pcx-suiv span { font-size: 13.5px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.05em; }
.po-cours .pcx-suiv small { font-size: 12px; font-weight: 600; color: rgba(255,255,255,0.9); max-width: 320px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.po-cours .pcx-re { margin-top: 0; padding: 13px 24px; font-size: 13px; background: #fff; color: #33415e; border: 1.5px solid #dbe4f2; box-shadow: none; }
.po-cours .pcx-re:hover { border-color: #b9c9e4; transform: translateY(-1px); box-shadow: none; }
.po-cours .pcx-relire { appearance: none; cursor: pointer; font-family: inherit; padding: 13px 24px; border-radius: 999px; font-size: 13px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.04em; background: transparent; color: #5a6b8c; border: 1.5px dashed #b9c9e4; transition: color .2s ease, border-color .2s ease; }
.po-cours .pcx-relire:hover { color: var(--c-navy); border-color: var(--c-navy); }
@media (max-width: 560px) { .po-cours .pc-exquiz { padding: 40px 12px 16px; } .po-cours .pcx-q { flex-direction: column-reverse; gap: 9px; } .po-cours .pcx-q .pcx-au { align-self: flex-start; } }



.po-cours .pc-nav { display: flex; align-items: stretch; margin: 26px 0 8px;
  border: 1.5px solid #e2e9f4; border-radius: 14px; background: #fff; overflow: hidden; }


.po-cours .pc-nav-fin { margin: 22px 0 40px; }
.po-cours .pc-nav .pcnav-prev { flex: 0 1 31%; min-width: 0; display: flex; flex-direction: column;
  justify-content: center; gap: 2px; padding: 13px 16px; border: 0; border-radius: 0;
  background: transparent; text-decoration: none; transition: background .2s ease; }
.po-cours .pc-nav .pcnav-prev:hover { transform: none; background: #f5f8fd; }
.po-cours .pc-nav .pcnav-prev .lbl { font-size: 10px; font-weight: 800; text-transform: uppercase;
  letter-spacing: 0.07em; color: #93a2bd; }
 
.po-cours .pc-nav .pcnav-prev .ttl { font-size: 13px; font-weight: 700; color: var(--c-ink);
  line-height: 1.25; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }


.po-cours .pc-nav .pcnav-next { flex: 1 1 69%; min-width: 0; position: relative; overflow: hidden;
  display: flex; flex-wrap: wrap; align-items: center; gap: 4px 14px; padding: 13px 16px;
  border-radius: 0; border-left: 1.5px solid #e2e9f4; box-shadow: none; text-decoration: none;
  background: linear-gradient(90deg, rgba(255,107,53,0.05), rgba(247,147,30,0.11));
  transition: background .2s ease; }
.po-cours .pc-nav .pcnav-next:hover { transform: none;
  background: linear-gradient(90deg, rgba(255,107,53,0.10), rgba(247,147,30,0.18)); }
.po-cours .pc-nav .pcnav-next .k { flex: 0 0 100%; font-size: 10px; font-weight: 800;
  text-transform: uppercase; letter-spacing: 0.07em; color: #d2691e; }


.po-cours .pc-nav .pcnav-next .t { flex: 1 1 0; min-width: 0; font-size: 14px; font-weight: 800;
  color: var(--c-navy); line-height: 1.25; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.po-cours .pc-nav .pcnav-next .go { flex: 0 0 auto; margin: 0; align-self: center;
  display: inline-flex; align-items: center; gap: 7px; background: linear-gradient(135deg, #ff6b35, #f7931e);
  border: 0; color: #fff; font-size: 11px; font-weight: 800; text-transform: uppercase;
  letter-spacing: 0.04em; padding: 7px 13px; border-radius: 999px; white-space: nowrap;
  box-shadow: 0 4px 12px rgba(255,107,53,0.32); }
.po-cours .pc-nav .pcnav-next .go svg { width: 14px; height: 14px; }


@media (max-width: 720px) {
  .po-cours .pc-nav { flex-direction: column; }
  .po-cours .pc-nav .pcnav-prev { flex: 1 1 auto; width: 100%; order: 1; }
  .po-cours .pc-nav .pcnav-next { flex: 1 1 auto; width: 100%; order: 0; border-left: 0;
    border-bottom: 1.5px solid #e2e9f4; }
  .po-cours .pc-nav .pcnav-prev .ttl,
  .po-cours .pc-nav .pcnav-next .t { white-space: normal; overflow: visible; }
  .po-cours .pc-nav .pcnav-next .t { flex: 1 1 100%; }
  

  .po-cours .pc-nav .pcnav-next .go { flex: 1 1 100%; width: 100%; margin-top: 10px;
    align-self: stretch; justify-content: center; white-space: normal;
    padding: 12px 16px; font-size: 12px; }
}









.pc-rfxt-lock .po-rfxt-cta { background: linear-gradient(180deg, #94a3b8, #64748b); box-shadow: 0 10px 26px rgba(71, 85, 105, .30), inset 0 1px 0 rgba(255, 255, 255, .2); }
.pc-rfxt-lock .po-rfxt-ctaw { animation: none; }
.pc-rfxt-lock .po-rfxt-cta i { display: none; }


.po-cours .pc-rfxt-lock .pc-btn { background: linear-gradient(180deg, #94a3b8, #64748b); box-shadow: 0 10px 26px rgba(71, 85, 105, .30); }

 
.po-cours .pch-chap-head[data-pc-fold-head] { cursor: pointer; user-select: none; }
.po-cours .pch-chev { width: 20px; height: 20px; color: #64748b; flex-shrink: 0; transition: transform .25s ease; }
.po-cours .pch-chap.plie .pch-chev { transform: rotate(-90deg); }
.po-cours .pch-chap.plie .pch-lecons { display: none; }

 
.po-cours a.pc-tb-cta { display: inline-block; text-decoration: none; line-height: 1.2; text-align: center; }



.po-cours .pcp-wrap { padding-top: 26px; }
.po-cours .pcp-cartes { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 16px; margin: 18px 0 22px; }
.po-cours .pcp-carte { position: relative; display: flex; flex-direction: column; background: #fff; border: 2px solid #e7ecf3; border-radius: 20px; padding: 0; overflow: hidden; text-decoration: none; color: var(--c-ink); box-shadow: 0 20px 44px -22px rgba(20, 30, 60, .32); transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.po-cours .pcp-carte:hover { transform: translateY(-3px); box-shadow: 0 26px 52px -22px rgba(20, 30, 60, .42); }
.po-cours .pcp-img { display: block; }
.po-cours .pcp-img img { display: block; width: 100%; height: 148px; object-fit: cover; }
.po-cours .pcp-corps { display: flex; flex-direction: column; gap: 8px; padding: 16px 20px 16px; flex: 1; }
.po-cours .pcp-etape { font-size: 10.5px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: #2563eb; }
 
.po-cours .pcp-carte--theorie { border-color: #bfdbfe; }
.po-cours .pcp-carte--theorie:hover { border-color: #60a5fa; }
.po-cours .pcp-carte--theorie .pcp-etape { color: #2563eb; }
.po-cours .pcp-carte--tpr { border-color: #fed7aa; }
.po-cours .pcp-carte--tpr:hover { border-color: #fb923c; }
.po-cours .pcp-carte--tpr .pcp-etape { color: #ea700b; }
.po-cours .pcp-carte--pratique { border-color: #1e3faf; }
.po-cours .pcp-carte--pratique:hover { border-color: #15203c; }
.po-cours .pcp-carte--pratique .pcp-etape { color: #1e3faf; }
.po-cours .pcp-titre { font-size: 18px; font-weight: 800; letter-spacing: -.2px; line-height: 1.25; color: var(--c-navy); }
.po-cours .pcp-desc { font-size: 13px; font-weight: 600; line-height: 1.55; color: var(--c-mut); flex: 1; }
.po-cours .pcp-metas { display: flex; flex-wrap: wrap; gap: 6px; }
.po-cours .pcp-metas span { font-size: 11.5px; font-weight: 700; color: #475569; background: #eef2f8; border-radius: 999px; padding: 4px 10px; }
.po-cours .pcp-bar { display: none; height: 8px; border-radius: 999px; background: #eef2f8; overflow: hidden; margin-top: 2px; }
.po-cours .pcp-bar.on { display: block; }
.po-cours .pcp-bar i { display: block; height: 100%; border-radius: 999px; background: linear-gradient(90deg, #ff6b35, #f7931e); }
.po-cours .pcp-go { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 6px; font-size: 13.5px; font-weight: 800; color: #ff6b35; }
.po-cours .pcp-go svg { width: 18px; height: 18px; transition: transform .2s ease; }
.po-cours .pcp-carte:hover .pcp-go svg { transform: translateX(3px); }
.po-cours .pcp-liens { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 18px; margin: 4px 0 10px; font-size: 12.5px; font-weight: 700; color: var(--c-mut); }
.po-cours .pcp-liens a { color: #2563eb; text-decoration: none; }
.po-cours .pcp-liens a:hover { text-decoration: underline; }



@media (max-width: 640px) {
  .po-cours .pcp-wrap { padding-top: 6px; }
  .po-cours .pcp-wrap .pch-hero { padding: 4px 0 10px; }
  .po-cours .pcp-wrap .pch-hero h1 { font-size: 27px; line-height: 1.12; letter-spacing: -0.5px; margin-bottom: 8px; }
  .po-cours .pcp-wrap .pch-lede { font-size: 15px; line-height: 1.55; margin: 8px 0 13px; }
  .po-cours .pcp-wrap .pch-strip { gap: 6px 14px; font-size: 12.5px; margin-bottom: 2px; }
  .po-cours .pcp-cartes { margin: 12px 0 18px; }
}



.po-cours .pch-offres { margin: 26px 0 8px; }



.po-cours .pc-tb-univ[hidden] { display: none !important; }



.po-cours .pcp-conf { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 0; background: #fff; border: 1.5px solid #e7ecf3; border-radius: 20px; box-shadow: 0 16px 38px -24px rgba(20, 30, 60, .25); margin: 4px 0 18px; overflow: hidden; }
.po-cours .pcp-conf-item { display: flex; flex-direction: column; gap: 7px; padding: 18px 20px; border-left: 1.5px solid #eef2f8; }
.po-cours .pcp-conf-item:first-child { border-left: 0; }
.po-cours .pcp-conf-item b { font-size: 14.5px; font-weight: 800; letter-spacing: -.1px; color: var(--c-navy); }
.po-cours .pcp-conf-item > span:last-child { font-size: 12.5px; font-weight: 600; line-height: 1.55; color: var(--c-mut); }
.po-cours .pcp-conf-avatars { display: flex; align-items: center; height: 26px; }
.po-cours .pcp-conf-avatars i { width: 24px; height: 24px; border-radius: 999px; border: 2px solid #fff; margin-left: -7px; }
.po-cours .pcp-conf-avatars i:first-child { margin-left: 0; }
.po-cours .pcp-conf-avatars i:nth-child(1) { background: #2563eb; }
.po-cours .pcp-conf-avatars i:nth-child(2) { background: #ff6b35; }
.po-cours .pcp-conf-avatars i:nth-child(3) { background: #1e3faf; }
.po-cours .pcp-conf-avatars i:nth-child(4) { background: #f7931e; }
.po-cours .pcp-conf-ic { display: flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 9px; background: #eefdf4; color: #0a7d33; }
.po-cours .pcp-conf-ic svg { width: 17px; height: 17px; }
.po-cours .pcp-conf-ic--or { background: #fff3ea; color: #ff6b35; }
@media (max-width: 760px) {
  .po-cours .pcp-conf-item { border-left: 0; border-top: 1.5px solid #eef2f8; }
  .po-cours .pcp-conf-item:first-child { border-top: 0; }
}



.po-cours .pch-note { margin: 12px 20px 14px; font-size: 13.5px; font-weight: 600; color: var(--c-mut); line-height: 1.6; }



.po-cours .pch-membre { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; background: #fff; border: 2px solid #e7ecf3; border-radius: 20px; padding: 18px 20px; margin: 22px 0 10px; box-shadow: 0 16px 38px -24px rgba(20, 30, 60, .25); }
.po-cours .pch-membre--complet { background: linear-gradient(135deg, #f6fefa, #eefdf4); border-color: #a9e3c3; }
.po-cours .pch-membre-ic { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 12px; background: #eefdf4; color: #0a7d33; flex-shrink: 0; }
.po-cours .pch-membre-ic svg { width: 24px; height: 24px; }
.po-cours .pch-membre .tx { flex: 1; min-width: 220px; }
.po-cours .pch-membre .tx b { display: block; font-size: 15.5px; font-weight: 800; color: var(--c-navy); margin-bottom: 3px; }
.po-cours .pch-membre--complet .tx b { color: #0a7d33; }
.po-cours .pch-membre .tx span { display: block; font-size: 13px; font-weight: 600; line-height: 1.55; color: var(--c-mut); }
.po-cours .pch-membre-btn { display: inline-block; background: linear-gradient(135deg, #ff6b35, #f7931e); color: #fff; font-weight: 800; font-size: 13.5px; border-radius: 999px; padding: 12px 22px; text-decoration: none; transition: transform .2s ease; white-space: nowrap; }
.po-cours .pch-membre-btn:hover { transform: translateY(-1px); }
.po-cours .pch-membre-btn--sec { background: #fff; color: #15203c; border: 1.5px solid #d9e2ef; }

 
.po-cours .pch-chap-img { width: 46px; height: 46px; border-radius: 12px; object-fit: cover; flex-shrink: 0; box-shadow: inset 0 0 0 1px rgba(21, 32, 60, .06); }
@media (max-width: 560px) { .po-cours .pch-chap-img { width: 40px; height: 40px; } }



.po-cours .pc-signaux { margin: 26px 0 8px !important; padding: 0 !important; }
.po-cours .pc-sgx-det { background: linear-gradient(180deg, #f8fafd, #f1f5fb); border: 1px solid #dfe7f3; border-radius: 16px; overflow: hidden; }
.po-cours .pc-sgx-det summary { cursor: pointer; list-style: none; display: flex; align-items: center; gap: 12px; padding: 14px 18px; user-select: none; }
.po-cours .pc-sgx-det summary::-webkit-details-marker { display: none; }
.po-cours .pc-sgx-det summary:hover .pc-sgx-t { color: #2563eb; }
.po-cours .pc-sgx-badge { flex: 0 0 auto; width: 40px; height: 40px; display: grid; place-items: center; background: #fff; border: 1px solid #e3eaf5; border-radius: 12px; box-shadow: 0 2px 6px rgba(21, 32, 60, .06); }
.po-cours .pc-sgx-t { flex: 1; display: flex; flex-direction: column; gap: 2px; font-weight: 800; color: #15203c; font-size: 15.5px; line-height: 1.25; transition: color .15s ease; }
.po-cours .pc-sgx-t em { font-style: normal; font-weight: 600; font-size: 12.5px; color: #5a6b8c; }
.po-cours .pc-sgx-n { flex: 0 0 auto; min-width: 27px; height: 27px; padding: 0 9px; display: inline-flex; align-items: center; justify-content: center; background: #15203c; color: #fff; border-radius: 999px; font-size: 12.5px; font-weight: 800; }
.po-cours .pc-sgx-chev { flex: 0 0 auto; width: 8px; height: 8px; border-right: 2.4px solid #8494b5; border-bottom: 2.4px solid #8494b5; transform: rotate(45deg); transition: transform .2s ease; margin-top: -3px; }
.po-cours .pc-sgx-det[open] .pc-sgx-chev { transform: rotate(-135deg); margin-top: 3px; }
.po-cours .pc-sgx-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; padding: 4px 16px 8px; }
.po-cours .pc-sgx-it { margin: 0 !important; padding: 12px 10px !important; background: #fff; border: 1px solid #e7ecf5; border-radius: 14px; text-align: center; display: flex; flex-direction: column; gap: 9px; }
.po-cours .pc-sgx-img { display: grid; place-items: center; height: 84px; }
.po-cours .pc-sgx-img img { max-height: 84px !important; max-width: 100% !important; width: auto !important; height: auto !important; box-shadow: none !important; border: 0 !important; border-radius: 0 !important; }
.po-cours .pc-sgx-it figcaption { display: flex; flex-direction: column; gap: 2px; }
.po-cours .pc-sgx-it figcaption b { font-size: 12px; font-weight: 800; color: #2563eb; letter-spacing: .4px; }
.po-cours .pc-sgx-it figcaption span { font-size: 12.5px; line-height: 1.35; color: #3d4c6e; font-weight: 600; }
.po-cours .pc-sgx-foot { margin: 4px 16px 14px !important; font-size: 12px; color: #5a6b8c; }
.po-cours .pc-sgx-foot a { color: #2563eb; font-weight: 700; }
@media (max-width: 560px) {
  .po-cours .pc-sgx-grid { grid-template-columns: repeat(auto-fill, minmax(116px, 1fr)); gap: 8px; padding: 2px 12px 6px; }
  .po-cours .pc-sgx-t em { display: none; }
  .po-cours .pc-sgx-det summary { padding: 13px 14px; }
  .po-cours .pc-sgx-img { height: 70px; }
  .po-cours .pc-sgx-img img { max-height: 70px !important; }
}



.pc-valide { margin: 72px 0 64px !important; padding: 0 !important; }
.pcv-toggle { display: flex; justify-content: center; gap: 4px; background: #fff; border: 1.5px solid #dfe7f3; border-radius: 999px; padding: 4px; width: max-content; max-width: 100%; margin: 0 auto; position: relative; z-index: 20; box-shadow: 0 8px 22px -10px rgba(21, 32, 60, .28); }
.pcv-tab { display: inline-flex; align-items: center; gap: 7px; border: 0 !important; background: none; border-radius: 999px !important; padding: 9px 18px !important; font-weight: 800; font-size: 13.5px; color: #5a6b8c; cursor: pointer; font-family: inherit; line-height: 1; transition: background .15s ease, color .15s ease; }
.pcv-tab svg { flex: none; }
.pcv-tab.actif { background: #15203c !important; color: #fff !important; }
.pcv-tab:not(.actif):hover { background: #f0f6ff; color: #15203c; }
.pcv-pane[hidden] { display: none !important; }
.pcv-pane .po-rfxt-wrap { margin: 20px 0 0 !important; }
.pc-rfxt-train .po-rfxt-stamp { display: none !important; }
.pc-valide .pc-exquiz { display: none; }
.pc-valide.lance [data-pcv-cover] { display: none; }
.pc-valide.lance .pc-exquiz:not([hidden]) { display: block; margin-top: 14px; }
@media (max-width: 560px) {
  .pc-valide { margin: 52px 0 46px !important; }
  .pcv-tab { padding: 8px 13px !important; font-size: 12.5px; }
}

 
.po-cours .pcx-img { cursor: zoom-in; }
.pc-zoom { position: fixed; inset: 0; background: rgba(10, 14, 26, .92); display: none; align-items: center; justify-content: center; z-index: 100000; cursor: zoom-out; padding: 2vh 2vw; }
.pc-zoom.on { display: flex; }
.pc-zoom img { max-width: 96vw; max-height: 96vh; border-radius: 10px; background: #fff; }

.po-cours .pch-avec-video.pch-uni { margin-bottom: 28px; }
.po-cours .pch-avec-video .pch-uni-tx { max-width: none; }
.po-cours .pch-avec-video .pch-lede { max-width: none; }
.po-cours .pch-uni-grid { display: flex; flex-direction: column; gap: 22px; }
.po-cours .pch-uni-media { display: contents; }
.po-cours .pch-avec-video .pch-vid { order: 0; }
.po-cours .pch-avec-video .pch-uni-tx { order: 1; }
.po-cours .pch-avec-video .pch-facts { order: 2; flex-wrap: wrap; width: auto; gap: 14px 22px; margin-top: 0; }
.po-cours .pch-vid { position: relative; }
.po-cours .pch-vid-face { position: relative; display: block; width: 100%; aspect-ratio: 16 / 9; padding: 0; border: 0; border-radius: 20px; overflow: hidden; cursor: pointer; background: #0a1024; box-shadow: 0 24px 50px rgba(21,32,60,.28), 0 0 0 1px rgba(21,32,60,.08); transition: transform .22s ease, box-shadow .22s ease; }
.po-cours .pch-vid img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform .5s ease; }
.po-cours .pch-vid-play { position: absolute; left: 50%; top: 50%; width: 84px; height: 84px; margin: -42px 0 0 -42px; display: flex; align-items: center; justify-content: center; border-radius: 50%; background: rgba(255,255,255,.95); box-shadow: 0 14px 34px rgba(0,0,0,.38), 0 0 0 10px rgba(255,255,255,.18); transition: transform .22s ease; }
.po-cours .pch-vid-play svg { width: 34px; height: 34px; margin-left: 5px; fill: #1d4ed8; }
.po-cours .pch-vid-cap { position: absolute; left: 16px; top: 16px; padding: 8px 14px; border-radius: 999px; background: rgba(8,12,28,.62); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); color: #fff; font-size: 13.5px; line-height: 1.2; }
.po-cours .pch-vid-cap b { font-weight: 800; }
.po-cours .pch-vid-face:hover { transform: translateY(-3px); box-shadow: 0 30px 60px rgba(21,32,60,.34), 0 0 0 1px rgba(21,32,60,.08); }
.po-cours .pch-vid-face:hover img { transform: scale(1.03); }
.po-cours .pch-vid-face:hover .pch-vid-play { transform: scale(1.07); }
.po-cours .pch-vid-face:focus-visible { outline: 3px solid #2563eb; outline-offset: 3px; }
.po-cours .pch-uni-pied { position: relative; z-index: 2; display: grid; gap: 16px; margin-top: 24px; padding-top: 22px; border-top: 1px solid rgba(21,32,60,.09); }
.po-cours .pch-gar2 { display: flex; align-items: center; gap: 16px; padding: 18px 20px; border-radius: 16px; background: linear-gradient(115deg, #e4f7ed, #f5fcf8); border: 1px solid #acdfc7; box-shadow: 0 3px 12px rgba(17,105,64,.05); color: #126344; text-decoration: none; transition: transform .18s ease, box-shadow .18s ease; }
.po-cours .pch-gar2:hover { transform: translateY(-2px); box-shadow: 0 12px 26px rgba(17,105,64,.13); }
.po-cours .pch-gar2-ic { display: flex; align-items: center; justify-content: center; width: 50px; height: 50px; border-radius: 14px; flex-shrink: 0; background: linear-gradient(145deg, #13aa76, #078159); color: #fff; box-shadow: 0 3px 8px rgba(8,127,89,.22); }
.po-cours .pch-gar2-ic svg { width: 27px; height: 27px; }
.po-cours .pch-gar2-tx { display: flex; flex-direction: column; gap: 4px; flex: 1; min-width: 0; }
.po-cours .pch-gar2-tx small { font-size: 10.5px; font-weight: 800; letter-spacing: .8px; text-transform: uppercase; color: #377b5e; }
.po-cours .pch-gar2-tx b { font-size: 17px; font-weight: 800; line-height: 1.3; color: #095d3d; }
.po-cours .pch-gar2-tx > span { font-size: 13.5px; line-height: 1.5; color: #2f6b53; }
.po-cours .pch-gar2-tx i { margin-top: 2px; font-style: normal; font-size: 13.5px; font-weight: 600; color: #36745b; }
.po-cours .pch-gar2-go { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; flex-shrink: 0; border-radius: 50%; background: #fff; border: 1px solid #acdfc7; color: #078159; }
.po-cours .pch-gar2-go svg { width: 16px; height: 16px; transition: transform .18s ease; }
.po-cours .pch-gar2:hover .pch-gar2-go svg { transform: translateX(2px); }
.po-cours .pch-wen { display: flex; align-items: center; gap: 22px; align-self: center; }
.po-cours .pch-wen-carte { position: relative; flex: 0 0 116px; width: 116px; height: 146px; margin-top: 30px; border-radius: 18px; background: linear-gradient(165deg, #2c4280, #101b3a 65%); box-shadow: 0 0 0 2px rgba(255,170,90,.85), 0 0 22px rgba(255,120,50,.32), 0 14px 30px rgba(21,32,60,.28); }
.po-cours .pch-wen-photo { position: absolute; left: 0; right: 0; top: -40px; bottom: 34px; overflow: hidden; }
.po-cours .pch-wen-photo img { position: absolute; left: 50%; bottom: -4px; width: 146px; max-width: none; height: 146px; margin-left: -73px; object-fit: contain; }
.po-cours .pch-wen-nom { position: absolute; left: 0; right: 0; bottom: 0; height: 40px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; border-radius: 0 0 18px 18px; background: linear-gradient(180deg, rgba(9,16,38,.7), rgba(9,16,38,.98) 45%); }
.po-cours .pch-wen-nom b { font-size: 12.5px; font-weight: 800; line-height: 1; color: #fff; }
.po-cours .pch-wen-nom i { font-style: normal; font-size: 8.5px; font-weight: 800; letter-spacing: .2em; text-transform: uppercase; color: #ffb04d; white-space: nowrap; }
.po-cours .pch-wen-cit { margin: 0; padding: 0; border: 0; }
.po-cours .pch-wen-cit small { display: block; margin-bottom: 6px; font-size: 11px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: #d9730d; }
.po-cours .pch-wen-cit p { margin: 0; font-size: 17px; font-weight: 700; line-height: 1.5; letter-spacing: -.01em; color: var(--c-ink); }
@media (min-width: 1000px) {
  .po-cours .pch-avec-video.pch-uni { width: min(1160px, calc(100vw - 48px)); margin-left: calc((100% - min(1160px, calc(100vw - 48px))) / 2); padding: 44px 48px 32px; }
  .po-cours .pch-uni-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.22fr); gap: 44px; align-items: center; }
  .po-cours .pch-uni-media { display: flex; flex-direction: column; gap: 20px; }
  .po-cours .pch-avec-video .pch-uni-tx { order: 0; }
  .po-cours .pch-avec-video h1 { font-size: 36px; }
  .po-cours .pch-avec-video .pch-facts { flex-wrap: nowrap; justify-content: space-between; gap: 0 12px; }
  .po-cours .pch-uni-pied { grid-template-columns: minmax(0, 1fr) minmax(0, 1.22fr); gap: 44px; align-items: center; margin-top: 32px; padding-top: 28px; }
  .po-cours .pch-uni-pied > :only-child { grid-column: 1 / -1; }
}
@media (min-width: 721px) and (max-width: 999px) {
  .po-cours .pch-avec-video.pch-uni { padding: 28px 28px 26px; }
}
@media (max-width: 720px) {
  .po-cours .pch-avec-video.pch-uni { padding: 14px 14px 20px; margin-bottom: 20px; }
  .po-cours .pch-avec-video .pch-uni-tx { padding: 0 4px; margin-top: 0; }
  .po-cours .pch-avec-video .pch-facts { padding: 0 4px; }
  .po-cours .pch-uni-grid { gap: 18px; }
  .po-cours .pch-vid-face { border-radius: 14px; }
  .po-cours .pch-vid-play { width: 60px; height: 60px; margin: -30px 0 0 -30px; box-shadow: 0 10px 26px rgba(0,0,0,.35), 0 0 0 7px rgba(255,255,255,.18); }
  .po-cours .pch-vid-play svg { width: 24px; height: 24px; margin-left: 4px; }
  .po-cours .pch-vid-cap { left: 10px; top: 10px; font-size: 12px; padding: 6px 11px; }
  .po-cours .pch-uni-pied { margin-top: 20px; padding-top: 18px; }
  .po-cours .pch-gar2 { padding: 14px; }
  .po-cours .pch-wen { gap: 16px; padding: 0 4px; }
  .po-cours .pch-wen-cit p { font-size: 15.5px; }
}
@media (prefers-reduced-motion: reduce) {
  .po-cours .pch-vid-face, .po-cours .pch-vid img, .po-cours .pch-vid-play, .po-cours .pch-gar2, .po-cours .pch-gar2-go svg { transition: none; }
  .po-cours .pch-vid-face:hover, .po-cours .pch-vid-face:hover img, .po-cours .pch-vid-face:hover .pch-vid-play, .po-cours .pch-gar2:hover, .po-cours .pch-gar2:hover .pch-gar2-go svg { transform: none; }
}
.po-vid-modal { position: fixed; inset: 0; z-index: 2147483000; display: flex; align-items: center; justify-content: center; padding: 56px 20px 20px; background: rgba(6,10,24,.86); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); opacity: 0; transition: opacity .2s ease; }
.po-vid-modal.on { opacity: 1; }
.po-vid-box { position: relative; width: min(1120px, 100%, calc((100vh - 96px) * 16 / 9)); aspect-ratio: 16 / 9; }
.po-vid-box iframe { display: block; width: 100%; height: 100%; border: 0; border-radius: 14px; background: #000; box-shadow: 0 30px 80px rgba(0,0,0,.5); }
.po-vid-close { position: absolute; top: -48px; right: 0; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; padding: 0; border: 0; border-radius: 50%; background: rgba(255,255,255,.14); color: #fff; cursor: pointer; transition: background .18s ease; }
.po-vid-close:hover { background: rgba(255,255,255,.26); }
.po-vid-close svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; }
@media (prefers-reduced-motion: reduce) { .po-vid-modal { transition: none; } }
.po-cours .pvq { --pvq-nv: #15203c; --pvq-bl: #2563eb; --pvq-or1: #ff6b35; --pvq-or2: #f7931e; --pvq-gr: #10b981; --pvq-rd: #ef4444; --pvq-ln: #e3e9f3; --pvq-mt: #64748b; }
.po-cours .pvq { position: relative; margin: 44px 0 16px; border-radius: 26px; background: #fff; border: 1px solid var(--pvq-ln); box-shadow: 0 24px 60px rgba(21,32,60,0.10); overflow: hidden; color: #1e293b; line-height: 1.5; scroll-margin-top: 70px; }
.po-cours .pvq * { box-sizing: border-box; }
.po-cours .pvq [hidden] { display: none !important; }
.po-cours .pvq .pc-exquiz { margin: 0; padding: 0; background: none; border: 0; border-radius: 0; box-shadow: none; }
.po-cours .pvq .pc-exquiz::before { display: none; }
.po-cours .pvq-hd { position: relative; isolation: isolate; padding: 18px 20px 16px; color: #fff; background: radial-gradient(380px 200px at 100% 0%, rgba(61,155,255,0.28), transparent 62%), linear-gradient(155deg, #0c1737 0%, #15203c 60%, #1b2a52 100%); }
.po-cours .pvq-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.po-cours .pvq-tag { display: inline-flex; align-items: center; gap: 8px; padding: 5px 13px 5px 5px; border-radius: 999px; background: rgba(255,255,255,0.09); border: 1px solid rgba(255,255,255,0.16); font-size: 11.5px; font-weight: 800; letter-spacing: 0.11em; text-transform: uppercase; line-height: 1; }
.po-cours .pvq-tag i { display: inline-grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: linear-gradient(135deg, var(--pvq-or1), var(--pvq-or2)); box-shadow: 0 4px 12px rgba(255,107,53,0.45); }
.po-cours .pvq-tag svg { width: 14px; height: 14px; }
.po-cours .pvq-n { font-size: 12.5px; font-weight: 800; letter-spacing: 0.06em; color: #9fb2d8; font-variant-numeric: tabular-nums; }
.po-cours .pvq-sub { margin: 10px 0 14px; font-size: 14px; font-weight: 600; color: #b9c6e2; }
.po-cours .pvq-sub b { color: #fff; }
.po-cours .pvq-road { position: relative; height: 34px; border-radius: 12px; background: linear-gradient(180deg, #27324f, #1d2742); box-shadow: inset 0 2px 6px rgba(0,0,0,0.35); }
.po-cours .pvq-road::before { content: ""; position: absolute; left: 14px; right: 40px; top: 50%; height: 3px; margin-top: -1.5px; background: repeating-linear-gradient(90deg, rgba(255,210,63,0.55) 0 14px, transparent 14px 26px); }
.po-cours .pvq-road .done { position: absolute; left: 0; top: 0; bottom: 0; width: 0; border-radius: 12px; background: linear-gradient(90deg, rgba(255,107,53,0), rgba(255,107,53,0.35)); transition: width .5s cubic-bezier(.2,.8,.2,1); }
.po-cours .pvq-car { position: absolute; top: 50%; left: 6px; width: 46px; height: 24px; margin-top: -12px; transform: translateX(0); transition: transform .6s cubic-bezier(.2,.8,.2,1); will-change: transform; filter: drop-shadow(0 4px 6px rgba(0,0,0,0.35)); }
.po-cours .pvq-flag { position: absolute; right: 8px; top: 50%; width: 22px; height: 22px; margin-top: -11px; }
.po-cours .pvq-bd { padding: 20px 20px 22px; }
.po-cours .pvq-qh { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 0 0 12px; }
.po-cours .pvq-qn { font-size: 12px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; color: var(--pvq-bl); }
.po-cours .pvq-au { appearance: none; border: 1.5px solid #d9e4f5; background: #f5f9ff; color: #1e3faf; border-radius: 999px; padding: 7px 13px; font: inherit; font-size: 13px; font-weight: 700; display: inline-flex; align-items: center; gap: 7px; cursor: pointer; }
.po-cours .pvq-au svg { width: 16px; height: 16px; }
.po-cours .pvq-au.on { background: #1e3faf; color: #fff; border-color: #1e3faf; }
.po-cours .pvq-img { display: block; width: 100%; max-height: 300px; object-fit: contain; background: #f3f6fb; border-radius: 18px; margin: 0 0 14px; }
.po-cours .pvq-q { margin: 0 0 16px; font-size: 19px; line-height: 1.4; font-weight: 800; color: var(--pvq-nv); letter-spacing: -0.01em; }
.po-cours .pvq-opts { display: grid; gap: 10px; }
.po-cours .pvq-opt { appearance: none; display: flex; align-items: center; gap: 13px; width: 100%; padding: 14px 15px; border: 2px solid var(--pvq-ln); border-radius: 16px; background: #fff; font: inherit; font-size: 16px; font-weight: 650; line-height: 1.4; color: #1e293b; text-align: left; cursor: pointer; transition: border-color .15s ease, background .15s ease, transform .12s ease, box-shadow .15s ease; -webkit-tap-highlight-color: transparent; }
.po-cours .pvq-opt:hover { border-color: #b9ccef; box-shadow: 0 6px 16px rgba(37,99,235,0.08); }
.po-cours .pvq-opt:active { transform: scale(0.985); }
.po-cours .pvq-opt .l { flex: 0 0 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: #eef3fb; color: var(--pvq-nv); font-size: 14px; font-weight: 800; transition: background .15s ease, color .15s ease; }
.po-cours .pvq-opt.ok { border-color: var(--pvq-gr); background: #ecfdf5; }
.po-cours .pvq-opt.ok .l { background: var(--pvq-gr); color: #fff; }
.po-cours .pvq-opt.ko { border-color: var(--pvq-rd); background: #fef2f2; animation: pvqShake .35s ease; }
.po-cours .pvq-opt.ko .l { background: var(--pvq-rd); color: #fff; }
.po-cours .pvq-opt.dim { opacity: 0.5; }
.po-cours .pvq-opt[disabled] { cursor: default; }
@keyframes pvqShake { 20% { transform: translateX(-6px); } 40% { transform: translateX(6px); } 60% { transform: translateX(-4px); } 80% { transform: translateX(3px); } }
@keyframes pvqUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
@keyframes pvqPulse { 0%, 100% { box-shadow: 0 14px 30px rgba(255,107,53,0.45); } 50% { box-shadow: 0 14px 38px rgba(255,107,53,0.7); } }
.po-cours .pvq-fb { margin-top: 14px; padding: 16px; border-radius: 18px; animation: pvqUp .3s cubic-bezier(.2,.9,.3,1.1); }
.po-cours .pvq-fb.ok { background: linear-gradient(135deg, #ecfdf5, #f4fff9); border: 1.5px solid #bbf0d6; }
.po-cours .pvq-fb.ko { background: linear-gradient(135deg, #fff4f2, #fffaf8); border: 1.5px solid #ffd3c9; }
.po-cours .pvq-fb .t { display: flex; align-items: center; gap: 10px; font-size: 16px; font-weight: 800; line-height: 1.4; color: var(--pvq-nv); }
.po-cours .pvq-fb .t svg { flex: 0 0 18px; width: 18px; height: 40px; }
.po-cours .pvq-fb p { margin: 8px 0 0; font-size: 15px; line-height: 1.55; color: #334155; }
.po-cours .pvq-next { appearance: none; border: 0; margin-top: 14px; width: 100%; height: 52px; border-radius: 15px; background: var(--pvq-nv); color: #fff; font: inherit; font-size: 16px; font-weight: 800; display: inline-flex; align-items: center; justify-content: center; gap: 9px; cursor: pointer; box-shadow: 0 10px 22px rgba(21,32,60,0.22); transition: transform .15s ease; }
.po-cours .pvq-next:active { transform: scale(0.98); }
.po-cours .pvq svg { flex-shrink: 0; }
.po-cours .pvq-next svg, .po-cours .pvq-acc button svg, .po-cours .pvq-flow svg { width: 18px; height: 18px; }
.po-cours .pvq-res { animation: pvqUp .35s ease; }
.po-cours .pvq-hero { display: flex; align-items: center; gap: 16px; }
.po-cours .pvq-ring { position: relative; flex: 0 0 104px; width: 104px; height: 104px; }
.po-cours .pvq-ring svg { width: 100%; height: 100%; transform: rotate(-90deg); }
.po-cours .pvq-ring .bg { fill: none; stroke: #eef2f8; stroke-width: 11; }
.po-cours .pvq-ring .val { fill: none; stroke-width: 11; stroke-linecap: round; transition: stroke-dashoffset 1.1s cubic-bezier(.2,.8,.2,1); }
.po-cours .pvq-ring .pct { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; font-size: 28px; font-weight: 800; color: var(--pvq-nv); letter-spacing: -0.02em; }
.po-cours .pvq-ring .pct small { font-size: 14px; margin-left: 1px; padding-top: 6px; }
.po-cours .pvq-rt { display: block; font-size: 21px; line-height: 1.25; font-weight: 800; color: var(--pvq-nv); letter-spacing: -0.015em; }
.po-cours .pvq-rd { display: block; margin: 4px 0 0; font-size: 14.5px; line-height: 1.45; color: var(--pvq-mt); }
.po-cours .pvq-dots { display: flex; flex-wrap: wrap; gap: 5px; margin: 12px 0 0; }
.po-cours .pvq-dots i { width: 9px; height: 9px; border-radius: 50%; background: #dfe6f1; }
.po-cours .pvq-dots i.ok { background: var(--pvq-gr); }
.po-cours .pvq-dots i.ko { background: var(--pvq-rd); }
.po-cours .pvq-flow { display: flex; gap: 10px; margin-top: 16px; }
.po-cours .pvq-flow a, .po-cours .pvq-flow button { flex: 1; appearance: none; height: 52px; border-radius: 15px; font: inherit; font-size: 15.5px; font-weight: 800; white-space: nowrap; display: inline-flex; align-items: center; justify-content: center; gap: 8px; text-decoration: none; cursor: pointer; }
.po-cours .pvq-flow .suiv { background: var(--pvq-nv); color: #fff; border: 0; box-shadow: 0 10px 22px rgba(21,32,60,0.22); }
.po-cours .pvq-flow .re { flex: 0 0 auto; padding: 0 18px; background: #fff; color: var(--pvq-nv); border: 2px solid var(--pvq-ln); }
.po-cours .pvq .pvq-flow a { color: #fff; text-decoration: none; }
.po-cours .pvq-acc { margin-top: 14px; padding: 18px; border-radius: 22px; background: linear-gradient(135deg, #f3f7ff, #fbfdff); border: 1.5px solid #d9e6fb; }
.po-cours .pvq-acc .h { display: flex; align-items: center; gap: 11px; }
.po-cours .pvq-acc .h i { flex: 0 0 38px; height: 38px; border-radius: 12px; display: grid; place-items: center; background: linear-gradient(135deg, #2563eb, #1e3faf); color: #fff; box-shadow: 0 8px 18px rgba(37,99,235,0.3); }
.po-cours .pvq-acc .h svg { width: 20px; height: 20px; }
.po-cours .pvq-acc .h b { display: block; font-size: 16.5px; line-height: 1.3; font-weight: 800; color: var(--pvq-nv); }
.po-cours .pvq-acc .h span span { display: block; margin-top: 2px; font-size: 13.5px; line-height: 1.45; color: var(--pvq-mt); }
.po-cours .pvq-acc form { display: grid; gap: 8px; margin-top: 14px; }
.po-cours .pvq-acc input[type=text], .po-cours .pvq-acc input[type=email] { width: 100%; height: 48px; padding: 0 14px; border: 1.5px solid #d6e0ef; border-radius: 13px; background: #fff; font: inherit; font-size: 16px; color: var(--pvq-nv); }
.po-cours .pvq-acc input:focus { outline: none; border-color: var(--pvq-bl); box-shadow: 0 0 0 3px rgba(37,99,235,0.14); }
.po-cours .pvq-acc .pvq-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; opacity: 0; }
.po-cours .pvq-acc button { appearance: none; border: 0; height: 50px; border-radius: 13px; background: var(--pvq-bl); color: #fff; font: inherit; font-size: 15.5px; font-weight: 800; display: inline-flex; align-items: center; justify-content: center; gap: 8px; cursor: pointer; box-shadow: 0 10px 22px rgba(37,99,235,0.28); }
.po-cours .pvq-acc button[disabled] { opacity: 0.7; cursor: default; }
.po-cours .pvq-acc-msg { margin: 2px 0 0; padding: 11px 13px; border-radius: 12px; font-size: 13.5px; line-height: 1.5; font-weight: 600; color: #b3402a; background: #fff7f5; border: 1.5px solid #f5c2b8; }
.po-cours .pvq-acc-msg.bon { color: #065f46; background: #ecfdf5; border-color: #bbf0d6; }
.po-cours .pvq .pcx-ln { margin-top: 14px; }
@media (max-width: 560px) {
  .po-cours .pvq { margin: 36px -6px 14px; border-radius: 22px; }
  .po-cours .pvq-hd { padding: 16px 16px 14px; }
  .po-cours .pvq-bd { padding: 18px 16px 20px; }
  .po-cours .pvq-img { max-height: 200px; }
  .po-cours .pvq-q { font-size: 18px; }
  .po-cours .pvq-opt { padding: 13px; font-size: 15.5px; }
}
@media (prefers-reduced-motion: reduce) {
  .po-cours .pvq * { animation: none !important; transition: none !important; }
}
.po-cours .pvq .pcx-ln { display: flex; align-items: center; gap: 12px; width: 100%; margin-top: 16px; padding: 13px 14px; border-radius: 16px; background: #0f172a; color: #fff; text-decoration: none; text-align: left; box-shadow: 0 14px 30px -16px rgba(15, 23, 42, .6); transition: transform .15s; }
.po-cours .pvq .pcx-ln:hover { transform: translateY(-1px); }
.po-cours .pvq .pcx-ln-k { flex: 0 0 auto; display: flex; flex-direction: column; align-items: center; justify-content: center; min-width: 58px; padding: 8px 6px; border-radius: 12px; background: rgba(255, 255, 255, .06); font-size: 22px; font-weight: 800; line-height: 1; color: #ffd166; }
.po-cours .pvq .pcx-ln-k small { font-size: 8.5px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: #ffb3c1; margin-top: 4px; white-space: nowrap; }
.po-cours .pvq .pcx-ln-t { flex: 1; font-size: 12.5px; line-height: 1.4; color: #c3cfe2; }
.po-cours .pvq .pcx-ln-t b { display: block; font-size: 13.5px; font-weight: 800; color: #fff; margin-bottom: 2px; }
.po-cours .pvq .pcx-ln-go { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 6px; padding: 10px 14px; border-radius: 999px; background: #d5163e; color: #fff; font-size: 12.5px; font-weight: 800; white-space: nowrap; }
.po-cours .pvq .pcx-ln-go svg { width: 14px; height: 14px; }
.po-cours .pvq-hr { display: inline-flex; align-items: center; gap: 10px; }
.po-cours .pvq-fsb { appearance: none; display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 12px 0 10px; border-radius: 999px; border: 1px solid rgba(255,255,255,0.22); background: rgba(255,255,255,0.08); color: #fff; font: inherit; font-size: 12.5px; font-weight: 800; line-height: 1; cursor: pointer; transition: background .2s; }
.po-cours .pvq-fsb:hover { background: rgba(255,255,255,0.16); }
.po-cours .pvq-fsb svg { width: 15px; height: 15px; }
html.pvq-fs-on, html.pvq-fs-on body { overflow: hidden !important; }
.po-cours .pvq.pvq-fs { position: fixed !important; top: 0 !important; right: 0 !important; bottom: 0 !important; left: 0 !important; z-index: 2147483000 !important; width: 100% !important; max-width: none !important; height: 100% !important; margin: 0 !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; overflow-x: hidden !important; overflow-y: auto !important; -webkit-overflow-scrolling: touch; overscroll-behavior: contain; background: #fff; }
.po-cours .pvq.pvq-fs .pvq-hd { position: sticky; top: 0; z-index: 3; padding-top: max(16px, env(safe-area-inset-top)); }
.po-cours .pvq.pvq-fs .pvq-sub { display: none; }
.po-cours .pvq.pvq-fs .pvq-row { margin-bottom: 12px; }
.po-cours .pvq.pvq-fs .pvq-hd > *, .po-cours .pvq.pvq-fs .pvq-bd { max-width: 780px; margin-left: auto; margin-right: auto; }
.po-cours .pvq.pvq-fs .pvq-bd { padding-bottom: max(32px, env(safe-area-inset-bottom)); }
.po-cours .pvq.pvq-fs .pvq-img { max-height: 42vh; }
.po-cours .pvq-mega { --pm-or1: #ff6b35; --pm-or2: #f7931e; position: relative; isolation: isolate; margin: 26px 0 34px; padding: 3px; border-radius: 30px; overflow: hidden; background: #1b2a52; color: #fff; line-height: 1.5; box-shadow: 0 30px 70px rgba(12,23,55,0.34), 0 18px 60px rgba(255,107,53,0.20); }
.po-cours .pvq-mega * { box-sizing: border-box; }
.po-cours .pvq-mega [hidden] { display: none !important; }
.po-cours .pvq-mega::before { content: ""; position: absolute; top: -60%; left: -60%; width: 220%; height: 220%; z-index: -1; background: conic-gradient(from 0deg, transparent 0 52%, rgba(255,107,53,0.95) 64%, #ffd23f 71%, rgba(61,155,255,0.95) 80%, transparent 90%); animation: pmSpin 7s linear infinite; }
.po-cours .pvq-mega-in { position: relative; overflow: hidden; padding: 26px 26px 22px; border-radius: 28px; background: radial-gradient(520px 300px at 100% 0%, rgba(255,107,53,0.26), transparent 60%), radial-gradient(460px 320px at 0% 100%, rgba(37,99,235,0.32), transparent 62%), linear-gradient(160deg, #0a1330 0%, #111c42 55%, #172a5c 100%); }
.po-cours .pvq-mega-in::before { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: 0; pointer-events: none; background-image: linear-gradient(rgba(255,255,255,0.05) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.05) 1px, transparent 1px); background-size: 28px 28px; -webkit-mask-image: radial-gradient(ellipse at 75% 35%, #000 15%, transparent 72%); mask-image: radial-gradient(ellipse at 75% 35%, #000 15%, transparent 72%); }
.po-cours .pvq-mega-in > * { position: relative; }
.po-cours .pm-tag { display: inline-flex; align-items: center; gap: 9px; padding: 5px 14px 5px 5px; border-radius: 999px; background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.15); font-size: 11.5px; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; color: #ffdcb0; }
.po-cours .pm-tag i { display: inline-grid; place-items: center; flex: 0 0 26px; width: 26px; height: 26px; border-radius: 50%; background: linear-gradient(135deg, #ffd23f, #ff9f1c); color: #2a1a00; box-shadow: 0 4px 12px rgba(255,180,40,0.45); }
.po-cours .pm-tag svg { width: 14px; height: 14px; }
.po-cours .pm-grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr); gap: 22px; align-items: center; margin-top: 16px; }
.po-cours .pm-t { display: block; font-size: 33px; line-height: 1.08; font-weight: 800; letter-spacing: -0.03em; color: #fff; text-wrap: balance; }
.po-cours .pm-t em { font-style: normal; background: linear-gradient(90deg, #ffd23f, #ff9f1c 45%, #ff6b35); -webkit-background-clip: text; background-clip: text; color: transparent; }
.po-cours .pm-s { display: block; margin-top: 12px; font-size: 15px; line-height: 1.6; color: #c7d3ee; }
.po-cours .pm-s b { color: #fff; }
.po-cours .pm-gar { display: flex; align-items: center; gap: 10px; margin-top: 16px; padding: 9px 14px 9px 9px; border-radius: 15px; background: linear-gradient(135deg, rgba(16,185,129,0.22), rgba(16,185,129,0.06)); border: 1px solid rgba(52,211,153,0.38); font-size: 14.5px; line-height: 1.35; font-weight: 800; color: #d1fae5; }
.po-cours .pm-gar i { display: grid; place-items: center; flex: 0 0 34px; width: 34px; height: 34px; border-radius: 11px; background: linear-gradient(135deg, #10b981, #059669); color: #fff; box-shadow: 0 6px 16px rgba(16,185,129,0.4); }
.po-cours .pm-gar svg { width: 19px; height: 19px; }
.po-cours .pm-mock { position: relative; height: 262px; perspective: 900px; }
.po-cours .pm-scr { position: absolute; top: 9%; right: 6%; bottom: 9%; left: 9%; display: flex; flex-direction: column; gap: 8px; padding: 12px; border-radius: 18px; background: #fff; color: #15203c; box-shadow: 0 34px 60px rgba(0,0,0,0.5), 0 0 0 1px rgba(255,255,255,0.25); transform: rotateY(-16deg) rotateX(8deg) rotateZ(1deg); transform-origin: 60% 50%; animation: pmFloat 6s ease-in-out infinite; }
.po-cours .pm-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; font-size: 11px; font-weight: 800; letter-spacing: 0.04em; color: #64748b; }
.po-cours .pm-chrono { position: relative; display: inline-grid; place-items: center; width: 30px; height: 30px; }
.po-cours .pm-chrono svg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; transform: rotate(-90deg); }
.po-cours .pm-chrono circle { fill: none; stroke-width: 3.5; }
.po-cours .pm-chrono .bg { stroke: #e2e8f0; }
.po-cours .pm-chrono .v { stroke: #ff6b35; stroke-linecap: round; stroke-dasharray: 94.25; animation: pmChrono 15s linear infinite; }
.po-cours .pm-chrono b { position: relative; font-size: 10.5px; color: #15203c; }
.po-cours .pm-sign { flex: 1 1 auto; min-height: 0; display: grid; place-items: center; border-radius: 12px; background: linear-gradient(180deg, #e8f1ff, #f6f9ff); }
.po-cours .pm-sign img { display: block; width: auto; max-width: 70%; height: auto; max-height: 90px; }
.po-cours .pm-ans { display: grid; gap: 5px; }
.po-cours .pm-ans i { display: block; height: 11px; border-radius: 6px; background: #e8eef7; }
.po-cours .pm-ans i:nth-child(3) { width: 72%; }
.po-cours .pm-ans i.ok { animation: pmOk 4.5s ease-in-out infinite; }
.po-cours .pm-flt { position: absolute; z-index: 2; display: inline-flex; align-items: center; gap: 6px; padding: 7px 11px; border-radius: 999px; background: rgba(255,255,255,0.96); color: #15203c; font-size: 11.5px; font-weight: 800; white-space: nowrap; box-shadow: 0 12px 26px rgba(0,0,0,0.32); }
.po-cours .pm-flt svg { width: 14px; height: 14px; color: #2563eb; }
.po-cours .pm-flt.f1 { top: 40%; left: 0; animation: pmBob 4.6s ease-in-out infinite; }
.po-cours .pm-flt.f2 { right: 0; bottom: 30%; animation: pmBob 5.2s ease-in-out -2s infinite; }
.po-cours .pm-flt.f2 svg { color: #10b981; }
.po-cours .pm-stamp { position: absolute; z-index: 3; bottom: 1%; left: 3%; padding: 7px 13px; border: 3px solid #10b981; border-radius: 12px; background: rgba(236,253,245,0.97); color: #059669; font-size: 15px; font-weight: 900; letter-spacing: 0.01em; white-space: nowrap; box-shadow: 0 12px 28px rgba(16,185,129,0.38); opacity: 0; transform: rotate(-8deg); }
.po-cours .pvq-mega.pm-vu .pm-stamp { animation: pmStamp .7s cubic-bezier(.2,1.6,.4,1) .5s forwards; }
.po-cours .pm-film { background: #0b1220; color: #fff; }
.po-cours .pm-film .pm-top { color: #9fb2d8; }
.po-cours .pm-film .pm-chrono .bg { stroke: rgba(255,255,255,0.15); }
.po-cours .pm-film .pm-chrono b { color: #fff; }
.po-cours .pm-route { position: relative; flex: 1 1 auto; min-height: 0; overflow: hidden; border-radius: 12px; background: #4f9a4b; }
.po-cours .pm-route .ciel { position: absolute; top: 0; left: 0; right: 0; height: 42%; background: linear-gradient(180deg, #6fa8f5, #cfe3ff); }
.po-cours .pm-route .sol { position: absolute; left: 0; right: 0; bottom: 0; height: 58%; background: linear-gradient(180deg, #555d70, #2f3542); -webkit-clip-path: polygon(42% 0, 58% 0, 100% 100%, 0 100%); clip-path: polygon(42% 0, 58% 0, 100% 100%, 0 100%); }
.po-cours .pm-route .ligne { position: absolute; bottom: 0; left: 50%; width: 4px; height: 58%; margin-left: -2px; background: repeating-linear-gradient(0deg, #fff 0 10px, transparent 10px 20px); animation: pmRoad .7s linear infinite; }
.po-cours .pm-route .risque { position: absolute; bottom: 30%; left: 14%; width: 13px; height: 22px; border-radius: 7px 7px 3px 3px; background: #ffd23f; box-shadow: 0 0 0 2px rgba(0,0,0,0.25); animation: pmWalk 4.5s ease-in-out infinite; }
.po-cours .pm-route .clic { position: absolute; bottom: 30%; left: 30%; width: 38px; height: 38px; margin: 0 0 -8px -12px; border-radius: 50%; border: 3px solid #ff6b35; animation: pmClic 4.5s ease-out infinite; }
.po-cours .pm-film .pm-bar { height: 5px; border-radius: 3px; background: rgba(255,255,255,0.15); overflow: hidden; }
.po-cours .pm-film .pm-bar i { display: block; height: 100%; width: 0; border-radius: 3px; background: linear-gradient(90deg, #ff6b35, #ffd23f); animation: pmBar 4.5s linear infinite; }
.po-cours .pm-km { padding: 3px 9px; border-radius: 999px; background: #eef4ff; color: #1e3faf; }
.po-cours .pm-map { position: relative; flex: 1 1 auto; min-height: 0; overflow: hidden; border-radius: 12px; background: #eef2e4; }
.po-cours .pm-map svg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.po-cours .pm-map .rue { fill: none; stroke: #fff; stroke-width: 7; }
.po-cours .pm-map .trajet { fill: none; stroke: #ff6b35; stroke-width: 4; stroke-linecap: round; stroke-dasharray: 320; stroke-dashoffset: 320; animation: pmTrace 4.5s ease-in-out infinite; }
.po-cours .pm-map .p1, .po-cours .pm-map .p2 { position: absolute; width: 22px; height: 22px; transform: translate(-50%, -100%); }
.po-cours .pm-map .p1 { left: 8%; top: 87%; color: #2563eb; }
.po-cours .pm-map .p2 { left: 91%; top: 18%; color: #e11d48; }
.po-cours .pm-map .p1 svg, .po-cours .pm-map .p2 svg { width: 100%; height: 100%; fill: #fff; }
.po-cours a.pm-go { position: relative; isolation: isolate; overflow: hidden; display: flex; align-items: center; justify-content: center; gap: 12px; width: 100%; min-height: 66px; margin-top: 22px; padding: 12px 22px; border-radius: 18px; background: linear-gradient(135deg, var(--pm-or1), var(--pm-or2)); color: #fff; text-decoration: none; text-align: center; font-size: 19px; line-height: 1.25; font-weight: 800; letter-spacing: -0.01em; box-shadow: 0 18px 40px rgba(255,107,53,0.5), inset 0 1px 0 rgba(255,255,255,0.35); transition: transform .15s ease; }
.po-cours a.pm-go:hover { color: #fff; transform: translateY(-2px); }
.po-cours a.pm-go:active { transform: scale(0.985); }
.po-cours a.pm-go::after { content: ""; position: absolute; z-index: -1; top: 0; bottom: 0; left: -40%; width: 28%; transform: skewX(-20deg); background: linear-gradient(90deg, transparent, rgba(255,255,255,0.55), transparent); animation: pmShine 3.4s ease-in-out infinite; }
.po-cours a.pm-go svg { flex: 0 0 22px; width: 22px; height: 22px; animation: pmNudge 1.6s ease-in-out infinite; }
.po-cours .pm-btns { display: grid; grid-template-columns: repeat(auto-fit, minmax(96px, 1fr)); gap: 8px; margin-top: 22px; }
.po-cours .pm-btns > span { display: block; }
.po-cours .pm-btns a { display: flex; align-items: center; justify-content: center; height: 56px; padding: 0 10px; border-radius: 15px; background: linear-gradient(135deg, var(--pm-or1), var(--pm-or2)); color: #fff; text-decoration: none; font-size: 15px; font-weight: 800; box-shadow: 0 12px 26px rgba(255,107,53,0.42), inset 0 1px 0 rgba(255,255,255,0.3); transition: transform .15s ease; }
.po-cours .pm-btns a:hover { color: #fff; transform: translateY(-2px); }
.po-cours .pm-price { display: block; margin-top: 12px; text-align: center; font-size: 14px; font-weight: 700; color: #aebbd9; }
.po-cours .pm-price b { font-size: 15px; color: #fff; }
.po-cours .pvq-mega a.pm-lien2 { display: block; margin-top: 10px; text-align: center; font-size: 13.5px; font-weight: 700; color: #a9c8ff; text-decoration: underline; text-underline-offset: 3px; }
.po-cours .pm-proof { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 6px; margin-top: 14px; padding-top: 13px; border-top: 1px solid rgba(255,255,255,0.09); font-size: 12.5px; color: #9fb2d8; }
.po-cours .pm-proof .st { font-size: 13px; letter-spacing: 1px; color: #ffd23f; }
.po-cours .pm-proof b { color: #fff; }
.po-cours .pvq-slot .pvq-mega { margin: 18px 0 0; }
.po-cours .pvq-mega:not(.pm-on)::before, .po-cours .pvq-mega:not(.pm-on) * { animation-play-state: paused !important; }
@keyframes pmSpin { to { transform: rotate(360deg); } }
@keyframes pmFloat { 0%, 100% { transform: rotateY(-16deg) rotateX(8deg) rotateZ(1deg) translateY(0); } 50% { transform: rotateY(-11deg) rotateX(6deg) rotateZ(0deg) translateY(-8px); } }
@keyframes pmBob { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-7px); } }
@keyframes pmOk { 0%, 48% { background: #e8eef7; box-shadow: none; } 56%, 90% { background: #10b981; box-shadow: 0 0 0 3px rgba(16,185,129,0.25); } 100% { background: #e8eef7; box-shadow: none; } }
@keyframes pmChrono { from { stroke-dashoffset: 0; } to { stroke-dashoffset: 94.25; } }
@keyframes pmShine { 0% { left: -40%; } 55%, 100% { left: 130%; } }
@keyframes pmNudge { 0%, 100% { transform: translateX(0); } 50% { transform: translateX(4px); } }
@keyframes pmRoad { from { background-position: 0 0; } to { background-position: 0 20px; } }
@keyframes pmWalk { 0% { left: 12%; } 60%, 100% { left: 34%; } }
@keyframes pmClic { 0%, 50% { transform: scale(0); opacity: 0; } 54% { transform: scale(0.6); opacity: 1; } 80%, 100% { transform: scale(1.7); opacity: 0; } }
@keyframes pmBar { from { width: 0; } to { width: 100%; } }
@keyframes pmTrace { 0% { stroke-dashoffset: 320; } 70%, 100% { stroke-dashoffset: 0; } }
@keyframes pmStamp { 0% { opacity: 0; transform: rotate(-8deg) scale(2.2); } 100% { opacity: 1; transform: rotate(-8deg) scale(1); } }
@media (max-width: 760px) {
  .po-cours .pm-grid { grid-template-columns: 1fr; gap: 8px; }
  .po-cours .pm-mock { height: 240px; max-width: 420px; width: 100%; margin: 4px auto 0; }
  .po-cours .pm-sign img { max-height: 72px; }
}
@media (max-width: 560px) {
  .po-cours .pvq-mega { margin: 22px -6px 28px; border-radius: 26px; }
  .po-cours .pvq-mega-in { padding: 20px 16px 18px; border-radius: 24px; }
  .po-cours .pm-t { font-size: 27px; }
  .po-cours .pm-s { font-size: 14.5px; }
  .po-cours .pm-mock { height: 230px; }
  .po-cours .pm-sign img { max-height: 64px; }
  .po-cours .pm-flt { font-size: 10.5px; padding: 6px 9px; }
  .po-cours a.pm-go { min-height: 60px; font-size: 17px; padding: 10px 16px; }
  .po-cours .pvq-slot .pvq-mega { margin: 16px -4px 0; }
}
@media (max-width: 380px) {
  .po-cours .pvq-fsb span { display: none; }
  .po-cours .pvq-fsb { padding: 0 9px; }
  .po-cours .pm-t { font-size: 24px; }
}
@media (prefers-reduced-motion: reduce) {
  .po-cours .pvq-mega *, .po-cours .pvq-mega::before, .po-cours a.pm-go::after { animation: none !important; transition: none !important; }
  .po-cours .pm-stamp { opacity: 1; }
  .po-cours .pm-ans i.ok { background: #10b981; }
  .po-cours .pm-map .trajet { stroke-dashoffset: 0; }
  .po-cours .pm-film .pm-bar i { width: 60%; }
}
.po-cours .ptv { position: relative; margin: 34px 0; padding: 18px; border-radius: 24px; background: linear-gradient(180deg, #f4f8ff, #fff 70%); border: 1.5px solid #dbe6f7; box-shadow: 0 18px 44px rgba(21,32,60,0.08); line-height: 1.5; }
.po-cours .ptv * { box-sizing: border-box; }
.po-cours .ptv-hd { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; }
.po-cours .ptv-tag { display: inline-flex; align-items: center; gap: 9px; font-size: 12px; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; color: #1e3faf; }
.po-cours .ptv-tag i { display: inline-grid; place-items: center; flex: 0 0 28px; width: 28px; height: 28px; border-radius: 50%; background: linear-gradient(135deg, #ff6b35, #f7931e); color: #fff; box-shadow: 0 6px 14px rgba(255,107,53,0.35); }
.po-cours .ptv-tag svg { width: 13px; height: 13px; }
.po-cours .ptv-meta { font-size: 12.5px; font-weight: 800; color: #64748b; font-variant-numeric: tabular-nums; }
.po-cours .ptv-s { display: block; margin: 8px 0 14px; font-size: 14.5px; line-height: 1.55; color: #475569; }
.po-cours .ptv-lock { isolation: isolate; overflow: hidden; padding: 20px; border: 0; border-radius: 26px; color: #fff; background: radial-gradient(420px 260px at 100% 0%, rgba(255,107,53,0.24), transparent 60%), radial-gradient(420px 300px at 0% 100%, rgba(37,99,235,0.30), transparent 62%), linear-gradient(160deg, #0a1330, #111c42 55%, #172a5c); box-shadow: 0 26px 60px rgba(12,23,55,0.32); }
.po-cours .ptv-lock .ptv-tag { color: #ffdcb0; }
.po-cours .ptv-lock .ptv-tag i { background: linear-gradient(135deg, #ffd23f, #ff9f1c); color: #2a1a00; box-shadow: 0 4px 12px rgba(255,180,40,0.45); }
.po-cours .ptv-lock .ptv-meta { color: #9fb2d8; }
.po-cours .ptv-scr { position: relative; overflow: hidden; aspect-ratio: 16 / 9; margin: 14px 0 18px; border-radius: 18px; background: #0b1220; box-shadow: 0 22px 44px rgba(0,0,0,0.42), 0 0 0 1px rgba(255,255,255,0.14); }
.po-cours .ptv-scr .ciel { position: absolute; top: 0; left: 0; right: 0; height: 44%; background: linear-gradient(180deg, #6fa8f5, #d4e6ff); }
.po-cours .ptv-scr .sol { position: absolute; left: 0; right: 0; bottom: 0; height: 56%; background: linear-gradient(180deg, #5a6275, #2f3542); -webkit-clip-path: polygon(44% 0, 56% 0, 100% 100%, 0 100%); clip-path: polygon(44% 0, 56% 0, 100% 100%, 0 100%); }
.po-cours .ptv-scr .ligne { position: absolute; bottom: 0; left: 50%; width: 5px; height: 56%; margin-left: -2.5px; background: repeating-linear-gradient(0deg, #fff 0 12px, transparent 12px 24px); animation: ptvRoute .8s linear infinite; }
.po-cours .ptv-scr .r1 { position: absolute; bottom: 26%; left: 16%; width: 16px; height: 30px; border-radius: 8px 8px 4px 4px; background: #ffd23f; box-shadow: 0 0 0 2px rgba(0,0,0,0.25); animation: ptvPieton 5s ease-in-out infinite; }
.po-cours .ptv-scr .r2 { position: absolute; bottom: 40%; right: 30%; width: 34px; height: 20px; border-radius: 6px; background: #e11d48; box-shadow: 0 0 0 2px rgba(0,0,0,0.2); }
.po-cours .ptv-scr .clic { position: absolute; bottom: 24%; left: 30%; width: 48px; height: 48px; margin: 0 0 -10px -16px; border-radius: 50%; border: 3px solid #ff6b35; animation: ptvClic 5s ease-out infinite; }
.po-cours .ptv-scr::after { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; background: linear-gradient(180deg, rgba(10,19,48,0.25) 0%, rgba(10,19,48,0) 30%, rgba(10,19,48,0) 62%, rgba(10,19,48,0.6) 100%); }
.po-cours .ptv-vid, .po-cours .pm-vid { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; background: #0b1220; }
.po-cours .ptv-lk { position: absolute; z-index: 2; top: 50%; left: 50%; display: grid; place-items: center; width: 64px; height: 64px; margin: -32px 0 0 -32px; border-radius: 50%; background: rgba(255,255,255,0.16); border: 2px solid rgba(255,255,255,0.6); color: #fff; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); animation: ptvHalo 2.4s ease-out infinite; }
.po-cours .ptv-lk svg { width: 30px; height: 30px; }
.po-cours .ptv-film { position: absolute; z-index: 2; top: 10px; left: 10px; padding: 4px 10px; border-radius: 999px; background: rgba(10,19,48,0.6); color: #fff; font-size: 11.5px; font-weight: 800; letter-spacing: 0.03em; }
.po-cours .ptv-bar { position: absolute; z-index: 2; left: 12px; right: 12px; bottom: 10px; height: 5px; border-radius: 3px; background: rgba(255,255,255,0.22); overflow: hidden; }
.po-cours .ptv-bar i { display: block; width: 38%; height: 100%; border-radius: 3px; background: linear-gradient(90deg, #ff6b35, #ffd23f); }
.po-cours .ptv-t { display: block; font-size: 23px; line-height: 1.2; font-weight: 800; letter-spacing: -0.02em; color: #fff; text-wrap: balance; }
.po-cours .ptv-t em { font-style: normal; background: linear-gradient(90deg, #ffd23f, #ff9f1c 45%, #ff6b35); -webkit-background-clip: text; background-clip: text; color: transparent; }
.po-cours .ptv-lock .ptv-s { margin: 8px 0 0; color: #c7d3ee; }
.po-cours a.ptv-go { position: relative; isolation: isolate; overflow: hidden; display: flex; align-items: center; justify-content: center; gap: 11px; width: 100%; min-height: 60px; margin-top: 18px; padding: 10px 20px; border-radius: 17px; background: linear-gradient(135deg, #ff6b35, #f7931e); color: #fff; text-decoration: none; text-align: center; font-size: 17.5px; line-height: 1.25; font-weight: 800; box-shadow: 0 16px 36px rgba(255,107,53,0.48), inset 0 1px 0 rgba(255,255,255,0.35); transition: transform .15s ease; }
.po-cours a.ptv-go:hover { color: #fff; transform: translateY(-2px); }
.po-cours a.ptv-go::after { content: ""; position: absolute; z-index: -1; top: 0; bottom: 0; left: -40%; width: 28%; transform: skewX(-20deg); background: linear-gradient(90deg, transparent, rgba(255,255,255,0.55), transparent); animation: pmShine 3.4s ease-in-out infinite; }
.po-cours a.ptv-go svg { flex: 0 0 20px; width: 20px; height: 20px; }
.po-cours .ptv-price { display: block; margin-top: 11px; text-align: center; font-size: 14px; font-weight: 700; color: #aebbd9; }
.po-cours .ptv-price b { color: #fff; }
.po-cours .ptv-lock a.ptv-lien { display: block; margin-top: 8px; text-align: center; font-size: 13.5px; font-weight: 700; color: #a9c8ff; text-decoration: underline; text-underline-offset: 3px; }
@keyframes ptvRoute { from { background-position: 0 0; } to { background-position: 0 24px; } }
@keyframes ptvPieton { 0% { left: 12%; } 60%, 100% { left: 30%; } }
@keyframes ptvClic { 0%, 52% { transform: scale(0); opacity: 0; } 56% { transform: scale(0.6); opacity: 1; } 82%, 100% { transform: scale(1.7); opacity: 0; } }
@keyframes ptvHalo { 0% { box-shadow: 0 0 0 0 rgba(255,255,255,0.45); } 100% { box-shadow: 0 0 0 22px rgba(255,255,255,0); } }
@media (max-width: 560px) {
  .po-cours .ptv { margin: 28px -6px; padding: 16px 14px; }
  .po-cours .ptv-t { font-size: 20px; }
  .po-cours a.ptv-go { font-size: 16px; min-height: 56px; }
}
@media (prefers-reduced-motion: reduce) {
  .po-cours .ptv *, .po-cours a.ptv-go::after { animation: none !important; transition: none !important; }
}
.po-cours .pm-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 16px; }
.po-cours .pm-stats.n4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.po-cours .pm-stats > span { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 11px 6px 10px; border-radius: 14px; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.13); text-align: center; }
.po-cours .pm-stats b { display: block; font-size: 27px; line-height: 1; font-weight: 800; letter-spacing: -0.02em; background: linear-gradient(90deg, #ffd23f, #ff9f1c 50%, #ff6b35); -webkit-background-clip: text; background-clip: text; color: transparent; font-variant-numeric: tabular-nums; }
.po-cours .pm-stats i { display: block; margin-top: 5px; font-style: normal; font-size: 11.5px; line-height: 1.25; font-weight: 700; color: #c7d3ee; }
.po-cours .ptv-lock .pm-stats { margin-top: 14px; }
@media (max-width: 560px) {
  .po-cours .pm-stats.n4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .po-cours .pm-stats b { font-size: 24px; }
}

.po-cours .pch-gar-lecon { margin: 22px 0; }

/* ── 07/10/2026 LECTEUR v3.1 DES LEÇONS (Wen : « comme l'accueil ») ──
   La vignette de chaque leçon est un petit film en motion design, tiré de sa miniature YouTube : l'accroche qui claque
   (blanc puis jaune, qui tremble de temps en temps), le panneau qui jaillit avec ses ondes de choc (ou la photo posée
   en carte), la nappe bleue qui respire, la caméra qui avance, un reflet de lumière qui passe. Le bouton de lecture
   est au centre avec son halo, la légende en verre en bas à droite, comme le film de l'accueil. Sous le cadre, le
   reflet de la vignette où tombent des mini panneaux (pas de panneaux autour de la souris : ils gênaient le sommaire). Tout s'efface
   quand la vidéo démarre. Pleine largeur sur téléphone. La composition est en cqw : mêmes proportions à toutes les
   tailles. Styles du reflet et de la composition hors .pcv3 : le reflet est posé à côté du cadre. ── */
.po-cours .pcv3 { position: relative; margin: 4px 0 0; aspect-ratio: 16 / 9; border-radius: 22px; overflow: hidden; background: #070d1f; isolation: isolate;
  box-shadow: none;
  transition: border-radius .5s ease, box-shadow .5s ease; }
.po-cours .pcv3.on { padding-top: 0; border-radius: 22px; box-shadow: none; }
.po-cours .pcv3.fin { aspect-ratio: auto; }
.po-cours .pcv3 .pcv-face { position: absolute; inset: 0; z-index: 5; display: block; width: 100%; height: 100%; margin: 0; padding: 0; border: 0; border-radius: 0;
  background: none; box-shadow: none; transform: none; overflow: hidden; cursor: pointer; font: inherit; color: #fff; text-align: left; }
.po-cours .pcv3 .pcv-face:hover { box-shadow: none; transform: none; }
.po-cours .pcv3 .pcv-face:focus-visible { outline: 3px solid #2563eb; outline-offset: -3px; }

/* la composition */
.po-cours .pcv-v { position: absolute; inset: 0; z-index: 1; display: block; overflow: hidden; container-type: inline-size; pointer-events: none; text-align: left;
  background: radial-gradient(90% 110% at 78% 42%, #141d38 0%, #0a1022 52%, #04060e 100%); transition: transform 1.4s cubic-bezier(.2,.8,.2,1); }
.po-cours .pcv-v::after { content: ""; position: absolute; inset: 0; z-index: 4; background: radial-gradient(58% 62% at 50% 50%, rgba(7,13,31,0), rgba(7,13,31,.3)), linear-gradient(180deg, rgba(7,13,31,0) 64%, rgba(7,13,31,.5)); }
.po-cours .pcv-v img { display: block; max-width: none; margin: 0; padding: 0; border: 0; border-radius: 0; box-shadow: none; background: none; }
.po-cours .pcv-cam { position: absolute; inset: 0; display: block; transform-origin: 80% 43%; animation: pcvCam 16s ease-in-out infinite alternate; }
.po-cours .pcv-nappe { position: absolute; left: 80cqw; top: 24cqw; width: 64cqw; height: 64cqw; margin: -32cqw 0 0 -32cqw; border-radius: 50%;
  background: radial-gradient(circle, rgba(29,78,216,.55) 0%, rgba(29,78,216,.22) 42%, transparent 68%); animation: pcvNappe 6s ease-in-out infinite; }
.po-cours .pcv-onde { position: absolute; left: 80cqw; top: 24cqw; width: 43.75cqw; height: 43.75cqw; margin: -21.875cqw 0 0 -21.875cqw; border-radius: 50%;
  border: max(1.5px, .23cqw) solid rgba(96,165,250,.28); }
.po-cours .pcv-onde2 { width: 54.7cqw; height: 54.7cqw; margin: -27.35cqw 0 0 -27.35cqw; border-color: rgba(96,165,250,.14); }
.po-cours .pcv-choc { position: absolute; left: 80cqw; top: 24cqw; width: 30cqw; height: 30cqw; margin: -15cqw 0 0 -15cqw; border-radius: 50%;
  border: max(2px, .35cqw) solid rgba(130,185,255,.6); box-shadow: 0 0 2cqw rgba(59,130,246,.35); opacity: 0; animation: pcvChoc 3.6s cubic-bezier(.2,.7,.3,1) .9s infinite; }
.po-cours .pcv-choc.pcv-c2 { animation-delay: 2.1s; }
.po-cours .pcv-choc.pcv-c3 { animation-delay: 3.3s; }
/* le visuel de la miniature : il jaillit, puis flotte */
.po-cours .pcv-vis { position: absolute; z-index: 2; left: calc(80cqw - var(--vw) / 2); top: calc(24cqw - var(--vh) / 2); width: var(--vw); height: var(--vh);
  animation: pcvJaillit .95s cubic-bezier(.2,.9,.3,1.25) .15s both; }
.po-cours .pcv-vis-in { position: absolute; inset: 0; display: block; will-change: transform; animation: pcvFlotte 5.5s ease-in-out 1.2s infinite; }
.po-cours .pcv-vis-panneau img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; transform: rotate(-6deg);
  filter: drop-shadow(0 0 4.7cqw rgba(29,78,216,.55)) drop-shadow(0 2.3cqw 4.7cqw rgba(0,0,0,.75)); }
.po-cours .pcv-vis-photo .pcv-vis-flou { position: absolute; left: -7%; top: -7%; width: 114%; height: 114%; object-fit: cover; border-radius: 3.4cqw; filter: blur(2.8cqw) saturate(1.5); opacity: .55; }
.po-cours .pcv-vis-cadre { position: absolute; inset: 0; display: block; overflow: hidden; border-radius: 2.3cqw; transform: rotate(-3deg);
  box-shadow: 0 0 0 max(1px, .16cqw) rgba(255,255,255,.16), 0 .16cqw .3cqw rgba(0,0,0,.35), 0 1.4cqw 2.8cqw rgba(0,0,0,.45), 0 3.3cqw 7.5cqw rgba(0,0,0,.6), 0 0 7cqw rgba(29,78,216,.42); }
.po-cours .pcv-vis-cadre img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.po-cours .pcv-vis-cadre::after { content: ""; position: absolute; inset: 0; border-radius: inherit; box-shadow: inset 0 0 0 1px rgba(255,255,255,.24);
  background: linear-gradient(135deg, rgba(255,255,255,.22) 0%, rgba(255,255,255,.07) 26%, rgba(255,255,255,0) 46%); }
.po-cours .pcv-vis-cadre::before { content: ""; position: absolute; z-index: 1; top: -20%; bottom: -20%; left: -40%; width: 22%; transform: skewX(-18deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.35), transparent); animation: pcvLueur 5.5s ease-in-out 2.6s infinite; }
/* l'accroche, à gauche */
.po-cours .pcv-texte { position: absolute; z-index: 3; left: 4.6cqw; top: 6.6cqw; width: 34cqw; display: flex; flex-direction: column; align-items: flex-start;
  color: #fff; font-family: 'Plus Jakarta Sans', system-ui, sans-serif; }
.po-cours .pcv-pills { display: flex; flex-wrap: wrap; gap: .8cqw; margin: 0 0 2.1cqw; }
.po-cours .pcv-pills i { display: inline-block; font-style: normal; font-weight: 800; line-height: 1; white-space: nowrap; text-transform: uppercase; border-radius: 99px; }
.po-cours .pcv-pill { font-size: 1.5cqw; letter-spacing: .14em; color: #ffd23f; background: rgba(255,210,63,.12); border: max(1px, .16cqw) solid rgba(255,210,63,.4);
  padding: .75cqw 1.5cqw; animation: pcvPop .5s cubic-bezier(.2,.9,.3,1.5) .3s both; }
.po-cours .pcv-pilln { font-size: 1.4cqw; letter-spacing: .1em; color: #0b1020; background: linear-gradient(135deg, #ffc247, #ff9330); padding: .85cqw 1.4cqw;
  box-shadow: 0 .5cqw 1.4cqw rgba(255,140,50,.3); transform-origin: 0 50%; animation: pcvPop .5s cubic-bezier(.2,.9,.3,1.5) .45s both; }
.po-cours .pcv-court { display: none; }
.po-cours .pcv-t { display: block; margin: 0; font-weight: 800; line-height: 1.02; letter-spacing: -.035em; text-wrap: balance; }
.po-cours .pcv-l1 { display: block; color: #fff; text-shadow: 0 .5cqw 1.7cqw rgba(0,0,0,.9); animation: pcvMonte .6s cubic-bezier(.2,.8,.2,1) .6s both; }
.po-cours .pcv-l2 { display: block; color: #ffd23f; transform-origin: 0 60%; text-shadow: 0 .3cqw 0 rgba(6,9,20,.5), 0 .6cqw 2cqw rgba(0,0,0,.85);
  animation: pcvFrappe .6s cubic-bezier(.2,.9,.3,1.25) 1.15s both; }
.po-cours .pcv-l2 > span { display: inline-block; animation: pcvSecoue 4.5s ease-in-out 3.2s infinite; }
.po-cours .pcv-sous { display: block; margin-top: 1.7cqw; font-size: 2.15cqw; font-weight: 700; line-height: 1.25; color: #dce7ff; text-shadow: 0 .25cqw 1.1cqw rgba(0,0,0,.7);
  animation: pcvMonte .6s cubic-bezier(.2,.8,.2,1) 1.6s both; }
.po-cours .pcv-eclat { position: absolute; inset: 0; z-index: 5; display: block; overflow: hidden; }
.po-cours .pcv-eclat::after { content: ""; position: absolute; top: -20%; bottom: -20%; left: -30%; width: 14%; transform: skewX(-18deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.12), transparent); animation: pcvEclat 7s ease-in-out 2.4s infinite; }
@container (max-width: 520px) {
  .po-cours .pcv-pills .pcv-pill, .po-cours .pcv-sous, .po-cours .pcv-pills .pcv-long { display: none; }
  .po-cours .pcv-court { display: inline; }
  .po-cours .pcv-pilln { font-size: max(1.4cqw, 9px); padding: .5em .9em; }
  .po-cours .pcv-pills { margin-bottom: 2.6cqw; }
}

/* le bouton de lecture au centre et sa légende, ceux du film de l'accueil */
.po-cours .pcv3 .pcv-rond { position: absolute; left: 50%; top: 50%; z-index: 7; width: 76px; height: 76px; margin: -38px 0 0 -38px; border-radius: 50%; display: grid; place-items: center;
  background: linear-gradient(135deg, #ff6b35, #f7931e); box-shadow: 0 22px 48px -14px rgba(255,107,53,.85), inset 0 1px 0 rgba(255,255,255,.42), inset 0 -8px 18px rgba(180,50,0,.22);
  transition: transform .45s cubic-bezier(.2,.9,.3,1.35); }
.po-cours .pcv3 .pcv-rond svg { width: 39px; height: 39px; margin: 0; fill: #fff; filter: drop-shadow(0 2px 3px rgba(120,30,0,.3)); }
.po-cours .pcv3 .pcv-halo, .po-cours .pcv3 .pcv-halo::after { position: absolute; left: 50%; top: 50%; z-index: 6; width: 76px; height: 76px; margin: -38px 0 0 -38px; border-radius: 50%;
  border: 2px solid rgba(255,176,122,.75); animation: pcvHalo 2.6s cubic-bezier(.2,.7,.3,1) infinite; }
.po-cours .pcv3 .pcv-halo::after { content: ""; left: 0; top: 0; margin: -2px 0 0 -2px; animation-delay: 1.3s; }
.po-cours .pcv3 .pcv-leg { position: absolute; right: 10px; bottom: 10px; z-index: 7; display: flex; flex-direction: column; align-items: flex-end; gap: 3px; padding: 7px 11px;
  border-radius: 12px; color: #fff; text-align: right; background: rgba(7,13,31,.46); -webkit-backdrop-filter: blur(12px) saturate(140%); backdrop-filter: blur(12px) saturate(140%);
  border: 1px solid rgba(255,255,255,.14); animation: pcvMonte .6s cubic-bezier(.2,.8,.2,1) 1.9s both; }
.po-cours .pcv3 .pcv-leg b { font-size: 15px; font-weight: 800; line-height: 1.1; color: #fff; }
.po-cours .pcv3 .pcv-leg i { font-style: normal; font-size: 12px; font-weight: 600; line-height: 1.2; color: rgba(255,255,255,.75); white-space: nowrap; }
@media (min-width: 641px) {
  .po-cours .pcv3 .pcv-rond, .po-cours .pcv3 .pcv-halo, .po-cours .pcv3 .pcv-halo::after { width: 96px; height: 96px; margin: -48px 0 0 -48px; }
  .po-cours .pcv3 .pcv-halo::after { margin: -2px 0 0 -2px; }
  .po-cours .pcv3 .pcv-rond svg { width: 50px; height: 50px; }
  .po-cours .pcv3 .pcv-leg { right: 16px; bottom: 16px; padding: 10px 16px; border-radius: 14px; }
  .po-cours .pcv3 .pcv-leg b { font-size: 17px; }
  .po-cours .pcv3 .pcv-leg i { font-size: 13px; }
}
@media (hover: hover) {
  .po-cours .pcv3 .pcv-face:hover .pcv-v { transform: scale(1.025); }
  .po-cours .pcv3 .pcv-face:hover .pcv-rond { transform: scale(1.09); }
}
.po-cours .pcv3 .pcv-face:focus-visible .pcv-rond { transform: scale(1.09); box-shadow: 0 0 0 4px rgba(255,176,122,.55), 0 22px 48px -14px rgba(255,107,53,.85); }


/* pendant la lecture : la reprise après une pause, le même bouton que l'accueil */
.po-cours .pcv3 .pcv-pause { background: rgba(7,13,31,.28); }
.po-cours .pcv3 .pcv-pause .pcv-play { width: 76px; height: 76px; background: linear-gradient(135deg, #ff6b35, #f7931e);
  box-shadow: 0 22px 48px -14px rgba(255,107,53,.85), inset 0 1px 0 rgba(255,255,255,.42), inset 0 -8px 18px rgba(180,50,0,.22); }
.po-cours .pcv3 .pcv-pause .pcv-play svg { width: 39px; height: 39px; margin: 0; }
@media (min-width: 641px) {
  .po-cours .pcv3 .pcv-pause .pcv-play { width: 96px; height: 96px; }
  .po-cours .pcv3 .pcv-pause .pcv-play svg { width: 50px; height: 50px; }
}

/* l'écran de fin (v3.5, Wen) : toujours le même fond (la route de nuit floutée), un seul bouton, fort */
.po-cours .pcv3 .pcv-fin { position: relative; isolation: isolate; overflow: hidden; display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 12px; padding: 24px 22px; text-align: center; background: #0a1230; animation: pcvFin .6s cubic-bezier(.2,.8,.2,1) both; }
.po-cours .pcv3 .pcv-fin-fond { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; max-width: none; margin: 0; object-fit: cover;
  transform: scale(1.04); animation: pcvFond 20s ease-in-out infinite alternate; }
.po-cours .pcv3 .pcv-fin::before { content: ""; position: absolute; inset: 0; z-index: -1; background: radial-gradient(70% 85% at 50% 50%, rgba(7,13,31,.28), rgba(7,13,31,.74)); }
.po-cours .pcv3 .pcv-fin-sceau { position: relative; display: grid; place-items: center; width: 60px; height: 60px; border-radius: 50%;
  background: linear-gradient(135deg, #ffd23f, #f7931e); color: #15203c; animation: pcvPop .55s cubic-bezier(.2,.9,.3,1.5) .05s both; }
.po-cours .pcv3 .pcv-fin-sceau::after { content: ""; position: absolute; inset: -6px; border-radius: 50%; border: 2px solid rgba(255,210,63,.6); animation: pcvHalo 2.4s cubic-bezier(.2,.7,.3,1) 1s infinite; }
.po-cours .pcv3 .pcv-fin-sceau svg { width: 32px; height: 32px; fill: none; stroke: #15203c; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.po-cours .pcv3 .pcv-fin-sur { margin: 0; font-size: 13px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; color: #ffd23f; animation: pcvMonte .6s cubic-bezier(.2,.8,.2,1) .15s both; }
.po-cours .pcv3 .pcv-fin-t { margin: 0 0 6px; max-width: 20ch; color: #fff; font-size: clamp(22px, 3.4vw, 36px); font-weight: 800; line-height: 1.15; letter-spacing: -.02em;
  text-shadow: 0 2px 18px rgba(0,0,0,.55); animation: pcvMonte .6s cubic-bezier(.2,.8,.2,1) .25s both; }
.po-cours .pcv3 .pcv-fin-go { position: relative; overflow: hidden; isolation: isolate; display: inline-flex; align-items: center; gap: 14px; min-height: 62px; padding: 0 10px 0 30px;
  border-radius: 999px; background: linear-gradient(135deg, #ff6b35, #f7931e); color: #fff !important; font-size: 19px; font-weight: 800; line-height: 1.2; text-decoration: none !important;
  white-space: nowrap; box-shadow: 0 14px 34px -12px rgba(255,107,53,.75), inset 0 1px 0 rgba(255,255,255,.4); animation: pcvMonte .6s cubic-bezier(.2,.8,.2,1) .4s both;
  transition: transform .25s cubic-bezier(.2,.9,.3,1.3), box-shadow .25s ease; }
.po-cours .pcv3 .pcv-fin-go::after { content: ""; position: absolute; top: -40%; bottom: -40%; left: -60px; width: 46px; transform: rotate(20deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.55), transparent); pointer-events: none; animation: pcvRefletBouton 3.6s ease-in-out 1.2s infinite; }
.po-cours .pcv3 .pcv-fin-go:hover { transform: translateY(-2px) scale(1.02); box-shadow: 0 18px 40px -12px rgba(255,107,53,.85), inset 0 1px 0 rgba(255,255,255,.4); }
.po-cours .pcv3 .pcv-fin-go:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
.po-cours .pcv3 .pcv-fin-go i { display: grid; place-items: center; flex: none; width: 44px; height: 44px; border-radius: 50%; background: rgba(255,255,255,.22); animation: pcvPousse 2.3s ease-in-out 1.6s infinite; }
.po-cours .pcv3 .pcv-fin-go svg { width: 20px; height: 20px; fill: none; stroke: #fff; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; }
.po-cours .pcv3 .pcv-fin-go[hidden] { display: none; }
@keyframes pcvFond { from { transform: scale(1.04); } to { transform: scale(1.12) translateX(-1.5%); } }
@media (max-width: 640px) {
  .po-cours .pcv3 .pcv-fin { gap: 9px; padding: 20px 16px; min-height: 236px; }
  .po-cours .pcv3 .pcv-fin-sceau { width: 46px; height: 46px; }
  .po-cours .pcv3 .pcv-fin-sceau svg { width: 25px; height: 25px; }
  .po-cours .pcv3 .pcv-fin-sur { font-size: 11.5px; }
  .po-cours .pcv3 .pcv-fin-t { font-size: 21px; }
  .po-cours .pcv3 .pcv-fin-go { min-height: 54px; padding: 0 8px 0 22px; font-size: 16.5px; gap: 10px; }
  .po-cours .pcv3 .pcv-fin-go i { width: 38px; height: 38px; }
}

/* le sommaire de la vidéo (v3.4, Wen) : une carte, à droite du film sur grand écran (« c'est épic », validé le 07/10),
   sous le film ailleurs, dans les marges de la page. Chaque chapitre : numéro, titre, début et durée ; celui en cours
   se remplit, ceux vus jusqu'au bout sont cochés ; en bas, le quiz de la leçon. */
.po-cours .pcv-scene { margin: 0 0 30px; }
.po-cours .pcv-som { position: relative; min-width: 0; margin: 14px 0 0; border-radius: 20px; background: #fff;
  box-shadow: 0 0 0 1px rgba(21,32,60,.1); }
.po-cours .pcv-som-in { display: flex; flex-direction: column; padding: 14px 10px 10px; }
.po-cours .pcv-som-tete { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 4px; width: calc(100% - 12px); margin: 0 6px 6px; padding: 0 104px 10px 0;
  border: 0; border-bottom: 1px solid #eef2f8; border-radius: 0; background: none; box-shadow: none; color: inherit; font: inherit; text-align: left; cursor: pointer; }
.po-cours .pcv-som-tete:focus-visible { outline: 3px solid #2563eb; outline-offset: 4px; }
.po-cours .pcv-som-sur { display: block; }
.po-cours .pcv-som-encours { display: block; font-size: 12.5px; font-weight: 700; line-height: 1.3; color: #15203c; }
.po-cours .pcv-som-encours[hidden] { display: none; }
/* le bouton « Voir / Masquer » : sur téléphone, il dit clairement que le sommaire s'ouvre (Wen, 07/10) */
.po-cours .pcv-som-ouvrir { position: absolute; right: 0; top: 50%; display: inline-flex; align-items: center; gap: 7px; margin-top: -16px; height: 32px; padding: 0 12px 0 14px;
  border-radius: 999px; background: linear-gradient(135deg, #ff6b35, #f7931e); color: #fff; font-size: 13px; font-weight: 800; line-height: 1; box-shadow: 0 4px 12px rgba(255,107,53,.3); }
.po-cours .pcv-som-chev { display: block; width: 7px; height: 7px; margin: -4px 0 0; border-right: 2.2px solid #fff; border-bottom: 2.2px solid #fff; transform: rotate(45deg); transition: transform .25s ease, margin .25s ease; }
.po-cours .pcv-som.ouvert .pcv-som-chev { margin: 3px 0 0; transform: rotate(-135deg); }
.po-cours .pcv-som-o2 { display: none; }
.po-cours .pcv-som.ouvert .pcv-som-o1 { display: none; }
.po-cours .pcv-som.ouvert .pcv-som-o2 { display: inline; }
@media (max-width: 1099px) {
  .po-cours .pcv-som:not(.ouvert) .pcv-som-tete { margin-bottom: 0; padding-bottom: 2px; border-bottom: 0; }
  .po-cours .pcv-som:not(.ouvert) .pcv-som-l, .po-cours .pcv-som:not(.ouvert) .pcv-som-quiz { display: none; }
  .po-cours .pcv-som:not(.ouvert) .pcv-som-in { padding-bottom: 12px; }
}
.po-cours .pcv-som-sur { margin: 0; font-size: 12px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: #ff6b35; }
.po-cours .pcv-som-meta { display: flex; gap: 10px; margin: 0; font-size: 12.5px; font-weight: 600; color: #64748b; white-space: nowrap; }
.po-cours .pcv-som-meta span + span::before { content: "·"; margin-right: 10px; color: #cbd5e1; }
.po-cours .pcv-som-l { display: flex; flex-direction: column; gap: 1px; margin: 0; padding: 0; list-style: none; }
.po-cours .pcv-som-l li { margin: 0; padding: 0; list-style: none; }
.po-cours .pcv-som-l li::before { content: none; }
.po-cours .pcv-som-l li::marker { content: none; }
.po-cours .pcv-chip { position: relative; overflow: hidden; display: flex; align-items: center; gap: 10px; width: 100%; margin: 0; padding: 7px 10px 9px;
  border: 0; border-radius: 14px; background: none; color: #15203c; font: inherit; text-align: left; cursor: pointer; box-shadow: none; transition: background .2s ease; }
.po-cours .pcv-chip:hover { background: #f5f7fb; }
.po-cours .pcv-chip:focus-visible { outline: 3px solid #2563eb; outline-offset: 1px; }
.po-cours .pcv-chip.actif { background: #fff4ee; }
.po-cours .pcv-som-n { flex: none; display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: #eef2f8; color: #15203c;
  font-size: 12.5px; font-weight: 800; font-variant-numeric: tabular-nums; transition: background .3s ease, color .3s ease; }
.po-cours .pcv-chip.vu .pcv-som-n { color: transparent; background: #22c55e url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5.5 12.5l4.2 4.2L18.5 8' fill='none' stroke='%23fff' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 15px no-repeat; }
.po-cours .pcv-chip.actif .pcv-som-n { color: #fff; background: linear-gradient(135deg, #ff6b35, #f7931e); box-shadow: 0 4px 10px rgba(255,107,53,.35); }
.po-cours .pcv-som-tx { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.po-cours .pcv-som-tx b { font-size: 14px; font-weight: 700; line-height: 1.25; color: #15203c; }
.po-cours .pcv-som-tx small { font-size: 12px; font-weight: 600; line-height: 1.25; color: #8592a8; font-variant-numeric: tabular-nums; }
.po-cours .pcv-chip-p { position: absolute; left: 10px; right: 10px; bottom: 3px; height: 3px; border-radius: 3px; background: linear-gradient(90deg, #ff6b35, #f7931e);
  transform-origin: 0 50%; transform: scaleX(var(--p, 0)); transition: transform .5s linear; }
.po-cours .pcv-som-quiz { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 8px 0 0; padding: 11px 12px 11px 16px; border-radius: 14px;
  background: #15203c; color: #fff !important; font-size: 14px; font-weight: 800; text-decoration: none !important; transition: background .2s ease; }
.po-cours .pcv-som-quiz:hover { background: #1e2d55; }
.po-cours .pcv-som-quiz[hidden] { display: none; }
.po-cours .pcv-som-quiz i { display: grid; place-items: center; flex: none; width: 28px; height: 28px; border-radius: 50%; background: linear-gradient(135deg, #ff6b35, #f7931e); }
.po-cours .pcv-som-quiz svg { width: 14px; height: 14px; fill: none; stroke: #fff; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; }
@media (min-width: 1100px) {
  .po-cours .pcv-scene.avec-som { display: grid; grid-template-columns: minmax(0, 1fr) 340px; grid-template-areas: "video som"; column-gap: 22px; align-items: start;
    width: min(1180px, calc(100vw - 64px)); margin-left: calc(50% - min(590px, calc(50vw - 32px))); }
  .po-cours .pcv-scene.avec-som > #video { grid-area: video; }
  .po-cours .pcv-scene.avec-som > .pcv-som { grid-area: som; align-self: stretch; margin: 4px 0 0; border-radius: 22px;
    box-shadow: 0 0 0 1px rgba(21,32,60,.1); }
  .po-cours .pcv-scene.avec-som .pcv-som-in { position: absolute; inset: 0; padding: 16px 12px 12px; }
  .po-cours .pcv-scene.avec-som .pcv-som-tete { padding-right: 0; cursor: default; pointer-events: none; }
  .po-cours .pcv-scene.avec-som .pcv-som-ouvrir, .po-cours .pcv-scene.avec-som .pcv-som-encours { display: none; }
  .po-cours .pcv-scene.avec-som .pcv-som-l { flex: 1; min-height: 0; overflow-x: hidden; overflow-y: auto; scrollbar-width: thin; }
  .po-cours .pcv-scene.avec-som .pcv-chip { padding: 6px 10px 8px; }
}

@keyframes pcvCam { from { transform: scale(1.001); } to { transform: scale(1.06); } }
@keyframes pcvNappe { 0%, 100% { opacity: .85; transform: scale(.96); } 50% { opacity: 1; transform: scale(1.05); } }
@keyframes pcvChoc { 0% { opacity: 0; transform: scale(.55); } 12% { opacity: .9; } 100% { opacity: 0; transform: scale(1.9); } }
@keyframes pcvJaillit { 0% { transform: scale(.35) rotate(-24deg); } 60% { transform: scale(1.08) rotate(3deg); } 100% { transform: none; } }
@keyframes pcvFlotte { 0%, 100% { transform: translateY(0) rotate(0); } 50% { transform: translateY(-3%) rotate(1.2deg); } }
@keyframes pcvLueur { 0%, 70% { left: -40%; } 100% { left: 130%; } }
@keyframes pcvPop { from { opacity: 0; transform: scale(.4); } to { opacity: 1; transform: none; } }
@keyframes pcvMonte { from { opacity: 0; transform: translateY(.55em); } to { opacity: 1; transform: none; } }
@keyframes pcvFrappe { 0% { opacity: 0; transform: scale(1.9) rotate(-5deg); } 60% { opacity: 1; transform: scale(.95); } 100% { opacity: 1; transform: none; } }
@keyframes pcvSecoue { 0%, 84%, 100% { transform: none; } 86% { transform: translateX(-.07em) rotate(-1.6deg); } 88% { transform: translateX(.07em) rotate(1.6deg); }
  90% { transform: translateX(-.05em) rotate(-.8deg); } 92% { transform: translateX(.04em); } 94% { transform: none; } }
@keyframes pcvEclat { 0%, 70% { left: -30%; } 100% { left: 130%; } }
@keyframes pcvHalo { 0% { transform: scale(1); opacity: .85; } 100% { transform: scale(2.1); opacity: 0; } }
@keyframes pcvFin { from { opacity: 0; } to { opacity: 1; } }
@keyframes pcvRefletBouton { 0%, 70% { left: -50px; opacity: 0; } 74% { opacity: 1; } 96%, 100% { left: calc(100% + 30px); opacity: 0; } }
@keyframes pcvPousse { 0%, 60%, 100% { transform: none; } 75% { transform: translateX(3px); } }

@media (max-width: 640px) {
  .po-cours .pcv3 { width: auto; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }
  .po-cours .pcv3, .po-cours .pcv3.on { border-radius: 0; box-shadow: none; }
  .po-cours .pcv3 .pcv-fin-b .pcv-verre { font-size: 15.5px; padding: 6px 6px 6px 18px; }
  .po-cours .pcv3 .pcv-verre i { width: 34px; height: 34px; }
}
@media (prefers-reduced-motion: reduce) {
  .po-cours .pcv-v, .po-cours .pcv-v *, .po-cours .pcv-v *::before, .po-cours .pcv-v *::after, .po-cours .pcv3 .pcv-halo, .po-cours .pcv3 .pcv-halo::after,
  .po-cours .pcv3 .pcv-leg, .po-cours .pcv3 .pcv-fin, .po-cours .pcv3 .pcv-fin *, .po-cours .pcv3 .pcv-fin *::after { animation: none !important; transition: none !important; }
  .po-cours .pcv-choc { display: none; }
}

/* ── 07/10/2026 (Wen) : le résumé audio dans le bloc « L'essentiel », en clair, avec sa durée ── */
/* le bloc devient une carte blanche à plat, comme le sommaire de la vidéo (le bleu pâle paraissait gris à côté de la barre audio ; pas d'ombre : Wen, 07/10) */
.po-cours .pc-tldr { background: #fff; border: 1px solid rgba(21,32,60,.1); border-radius: 20px; box-shadow: none; }
.po-cours .pc-tldr::before { content: none; }
.po-cours .pc-tldr .pc-audio-tldr { margin: 0 0 12px; padding: 7px 12px 7px 7px; gap: 11px; border-radius: 999px; background: #f4f7fd; box-shadow: 0 0 0 1px #e3eaf6; }
.po-cours .pc-tldr .pc-audio-tldr::before { display: none; }
.po-cours .pc-tldr .pc-audio-tldr .pa-play { width: 38px; height: 38px; box-shadow: 0 4px 12px rgba(255,107,53,.35); }
.po-cours .pc-tldr .pc-audio-tldr .pa-play svg { width: 15px; height: 15px; }
.po-cours .pc-tldr .pc-audio-tldr .pa-mid { display: flex; align-items: center; gap: 12px; }
.po-cours .pc-tldr .pc-audio-tldr .pa-t { flex: 0 0 auto; margin: 0; color: #15203c; font-size: 13.5px; white-space: nowrap; }
.po-cours .pc-tldr .pc-audio-tldr .pa-t .d { color: #64748b; font-size: 12.5px; }
.po-cours .pc-tldr .pc-audio-tldr .pa-bar { flex: 1 1 auto; min-width: 24px; height: 5px; background: #e2e8f0; }
.po-cours .pc-tldr .pc-audio-tldr .pa-speed { padding: 5px 10px; font-size: 11.5px; color: #15203c; border-color: #cbd5e1; background: #fff; }
.po-cours .pc-tldr .pc-audio-tldr .pa-speed:hover { background: #eef2f8; }

/* ── 07/10/2026 (Wen) : les infos sous le titre d'une leçon, regroupées en deux lignes sur téléphone ── */
.po-cours .pc-meta .pcm-c, .po-cours .pc-meta .pc-ic-m { display: none; }
@media (max-width: 560px) {
  .po-cours .pc-meta { gap: 6px 14px; font-size: 12.5px; }
  .po-cours .pc-meta .pcm-l { display: none; }
  .po-cours .pc-meta .pcm-c { display: inline; }
  .po-cours .pc-meta .pc-ic-m { display: inline-block; }
  .po-cours .pc-tldr .pc-audio-tldr .pa-l { display: none; }
  .po-cours .pc-tldr .pc-audio-tldr .pa-t { font-size: 13px; }
}

/* ── 07/10/2026 (Wen) : l'en-tête des leçons v3, aussi large que le film et son sommaire, titre modernisé ── */
.po-cours .pc-head-v3 .pc-head-sur { display: inline-flex; align-items: center; margin: 0 0 10px; padding: 6px 12px; border-radius: 999px; background: #eef4ff; color: #1d4ed8;
  font-size: 12px; font-weight: 800; letter-spacing: .08em; line-height: 1.2; text-transform: uppercase; }
.po-cours .pc-head-v3 h1 { letter-spacing: -.025em; line-height: 1.12; }
.po-cours .pc-head-v3 .pc-h1-b { color: #1d4ed8; }
.po-cours .pc-head-v3 .pcm-chap { display: none; }
.po-cours .pc-head-v3 .pc-meta .pc-ic-m { display: inline-block; }
@media (min-width: 1100px) {
  .po-cours .pc-head-v3 { width: min(1180px, calc(100vw - 64px)); margin-left: calc(50% - min(590px, calc(50vw - 32px))); }
  .po-cours .pc-head-v3 h1 { font-size: clamp(34px, 3vw, 44px); }
}

/* ── 07/10/2026 (Wen) : le prof IA réservé aux élèves payants : l'invitation qui remplace les deux boutons, et sa fenêtre ── */
.po-cours .pc-ia-cta { display: flex; align-items: center; gap: 14px; width: 100%; margin: 6px 0 22px; padding: 12px 14px; border: 1.5px solid transparent; border-radius: 18px;
  background: linear-gradient(#fff, #fff) padding-box, linear-gradient(135deg, #ff6b35, #f7931e 45%, #2563eb) border-box; color: #15203c; font: inherit; text-align: left; cursor: pointer;
  transition: transform .2s ease; }
.po-cours .pc-ia-cta:hover { transform: translateY(-1px); }
.po-cours .pc-ia-cta:focus-visible { outline: 3px solid #2563eb; outline-offset: 2px; }
.po-cours .pc-ia-cta-ic { flex: none; display: grid; place-items: center; width: 42px; height: 42px; border-radius: 13px; background: linear-gradient(135deg, #ff6b35, #f7931e); color: #fff; }
.po-cours .pc-ia-cta-ic svg { width: 22px; height: 22px; }
.po-cours .pc-ia-cta-tx { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.po-cours .pc-ia-cta-tx b { font-size: 15px; font-weight: 800; line-height: 1.3; color: #15203c; }
.po-cours .pc-ia-cta-tx small { font-size: 13px; font-weight: 600; line-height: 1.35; color: #64748b; }
.po-cours .pc-ia-cta-go { flex: none; padding: 9px 15px; border-radius: 999px; background: #15203c; color: #fff; font-size: 13.5px; font-weight: 800; line-height: 1; }
.po-cours .pc-ia-fond { position: fixed; inset: 0; z-index: 100000; display: grid; place-items: center; padding: 20px; background: rgba(7,13,31,.55); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); }
.po-cours .pc-ia-fond[hidden] { display: none; }
.po-cours .pc-ia-boite { position: relative; width: min(440px, 100%); max-height: calc(100vh - 40px); overflow-y: auto; padding: 28px 26px 22px; border-radius: 24px; background: #fff;
  color: #15203c; text-align: left; outline: none; animation: pcIaEntre .35s cubic-bezier(.2,.9,.3,1.2) both; }
.po-cours .pc-ia-x { position: absolute; top: 12px; right: 12px; width: 36px; height: 36px; margin: 0; padding: 0; border: 0; border-radius: 50%; background: #f1f5f9; color: #15203c;
  font-size: 22px; line-height: 1; cursor: pointer; }
.po-cours .pc-ia-logo { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 16px; background: linear-gradient(135deg, #ff6b35, #f7931e); color: #fff; }
.po-cours .pc-ia-logo svg { width: 28px; height: 28px; }
.po-cours .pc-ia-sur { margin: 16px 0 6px; font-size: 12px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: #1d4ed8; }
.po-cours .pc-ia-titre { margin: 0 0 8px; padding: 0; font-size: 23px; font-weight: 800; line-height: 1.2; letter-spacing: -.02em; color: #15203c; }
.po-cours .pc-ia-intro { margin: 0 0 14px; font-size: 15px; line-height: 1.5; color: #475569; }
.po-cours .pc-ia-l { margin: 0 0 20px; padding: 0; list-style: none; }
.po-cours .pc-ia-l li { position: relative; margin: 0; padding: 7px 0 7px 30px; font-size: 14.5px; line-height: 1.45; color: #334155; list-style: none; }
.po-cours .pc-ia-l li::before { content: ""; position: absolute; left: 0; top: 8px; width: 20px; height: 20px; border-radius: 50%; background: #22c55e url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5.5 12.5l4.2 4.2L18.5 8' fill='none' stroke='%23fff' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px no-repeat; }
.po-cours .pc-ia-go { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; min-height: 54px; border-radius: 16px; background: linear-gradient(135deg, #ff6b35, #f7931e);
  color: #fff !important; font-size: 17px; font-weight: 800; text-decoration: none !important; }
.po-cours .pc-ia-go i { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: rgba(255,255,255,.22); }
.po-cours .pc-ia-go svg { width: 15px; height: 15px; fill: none; stroke: #fff; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; }
.po-cours .pc-ia-pied { margin: 14px 0 0; text-align: center; font-size: 13px; line-height: 1.5; color: #64748b; }
.po-cours .pc-ia-pied a { color: #1d4ed8; font-weight: 700; }
@keyframes pcIaEntre { from { opacity: 0; transform: translateY(14px) scale(.97); } to { opacity: 1; transform: none; } }
@media (max-width: 560px) {
  .po-cours .pc-ia-fond { place-items: end center; padding: 0; }
  .po-cours .pc-ia-boite { width: 100%; max-height: 88vh; border-radius: 24px 24px 0 0; padding: 26px 20px calc(20px + env(safe-area-inset-bottom)); }
  .po-cours .pc-ia-cta { gap: 12px; padding: 11px 12px; }
  .po-cours .pc-ia-cta-go { display: none; }
}
@media (prefers-reduced-motion: reduce) { .po-cours .pc-ia-boite { animation: none; } }

/* ═══ CEL : les questions à une ou plusieurs bonnes réponses (quiz de la leçon, mini-questions) ═══
   L'écran dit « Une seule réponse » ou « Plusieurs réponses », comme l'examen du code ; pour une
   question à plusieurs réponses, l'élève coche puis valide. */
.po-cours .pvq-mode, .po-cours .pcx-mode, .po-cours .pc-check-mode { display: inline-flex; align-items: center; margin: 0 0 12px; padding: 4px 11px; border-radius: 999px; background: #eef4ff; color: #1e3faf; font-size: 12px; font-weight: 800; letter-spacing: .02em; line-height: 1.3; }
.po-cours .pvq-mode.plus, .po-cours .pcx-mode.plus, .po-cours .pc-check-mode { background: #fff3ea; color: #b45309; }
.po-cours .pvq-opt.sel { border-color: #2563eb; background: #f1f6ff; box-shadow: 0 0 0 3px rgba(37,99,235,0.12); }
.po-cours .pvq-opt.sel .l { background: #2563eb; color: #fff; }
.po-cours .pcx-opt.sel { border-color: #2563eb; background: #f1f6ff; box-shadow: 0 0 0 3px rgba(37,99,235,0.12); }
.po-cours .pcx-opt.sel .l { background: #2563eb; color: #fff; }
.po-cours .pc-check .opts button.sel { border-color: #2563eb; background: #2563eb; color: #fff; }
.po-cours .pvq-valider, .po-cours .pcx-valider, .po-cours .pc-check-val { appearance: none; border: 0; display: flex; align-items: center; justify-content: center; width: 100%; height: 52px; margin-top: 14px; border-radius: 15px; background: linear-gradient(135deg, #ff6b35, #f7931e); color: #fff; font: inherit; font-size: 16px; font-weight: 800; cursor: pointer; box-shadow: 0 10px 22px -8px rgba(255,107,53,0.55); transition: transform .15s ease, opacity .15s ease; -webkit-tap-highlight-color: transparent; }
.po-cours .pc-check-val { display: inline-flex; width: auto; height: auto; padding: 10px 22px; border-radius: 999px; font-size: 14px; margin-top: 12px; }
.po-cours .pvq-valider:active, .po-cours .pcx-valider:active, .po-cours .pc-check-val:active { transform: scale(0.98); }
.po-cours .pvq-valider[disabled], .po-cours .pcx-valider[disabled], .po-cours .pc-check-val[disabled] { opacity: .45; cursor: not-allowed; box-shadow: none; transform: none; }
.po-cours .pvq-valider[hidden], .po-cours .pcx-valider[hidden], .po-cours .pc-check-val[hidden] { display: none; }
@media (prefers-reduced-motion: reduce) { .po-cours .pvq-valider, .po-cours .pcx-valider, .po-cours .pc-check-val { transition: none; } }
/* CEL : le crédit d'une image sous licence (Wikimedia CC BY-SA, etc.), sous l'image du quiz */
.po-cours .pq-credit { margin: -8px 0 12px; font-size: 11px; line-height: 1.35; color: #64748b; text-align: center; }
