/* Reasoning GP CPD courses: slide player (assets/course-player.js). Uses site.css tokens. */
.cp-wrap{max-width:1040px;margin:0 auto}
#rgpcourse{--cp-acc:var(--course-accent,#0c4a47)}
.cp-meta{color:var(--muted);font-size:14px;margin:6px 0}
.cp-home-head{background:var(--surface);border:1px solid var(--line);border-left:5px solid var(--cp-acc);border-radius:12px;padding:16px 18px;margin:0 0 16px}
.cp-bar{height:6px;background:var(--line);border-radius:6px;overflow:hidden;margin:8px 0}
.cp-bar span{display:block;height:100%;background:var(--cp-acc);transition:width .25s}
.cp-access{background:#fbf3e2;border:1px solid #e6cf9f;border-radius:12px;padding:14px 16px;margin:0 0 16px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.cp-access p{margin:0;flex:1 1 260px}
.cp-obj{margin:0 0 16px}.cp-obj h2{font-size:19px;margin:0 0 6px}.cp-obj ul{margin:0;padding-left:20px;line-height:1.55}
.cp-lessons{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:8px}
.cp-li a{display:flex;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px;color:inherit;text-decoration:none}
.cp-li a:hover{border-color:var(--cp-acc)}
.cp-li-n{flex:0 0 34px;height:34px;border-radius:50%;background:var(--cp-acc);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}
.cp-li.done .cp-li-n{background:#2b7a3e}.cp-li.locked .cp-li-n{background:#9aa0a8}
.cp-li-t{flex:1;min-width:0;display:flex;flex-direction:column}.cp-li-t small{color:var(--muted);font-size:13px;margin-top:2px}
.cp-li-s{font-size:13px;font-weight:700;color:#2b7a3e}
.cp-li-final a{border-style:dashed}
.cp-refs{margin:16px 0;font-size:14px}.cp-refs summary{cursor:pointer;font-weight:700}
.cp-crumb{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:0 0 10px;font-size:14px;color:var(--muted)}
.cp-crumb a{color:var(--cp-acc);font-weight:700;text-decoration:none}
.cp-deck{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px;display:flex;flex-direction:column}
.cp-deck:fullscreen{border-radius:0;padding:2vh 4vw;justify-content:center;background:#fff}
.cp-deck:fullscreen .cp-slide{font-size:clamp(18px,2.1vw,28px);min-height:72vh}
.cp-stage{outline:none}
.cp-slide{min-height:430px;box-sizing:border-box;padding:26px 30px;border-radius:10px;background:linear-gradient(180deg,#fff,#fbfbfd);border:1px solid var(--line);font-size:17px;line-height:1.55;color:#14212b;min-width:0;max-width:100%;overflow-wrap:anywhere}
.cp-slide.cp-first{border-top:6px solid var(--cp-acc)}
.cp-kick{margin:0 0 4px;font:700 12px/1.3 'DM Sans',Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--cp-acc)}
.cp-st{margin:0 0 14px;font-family:'Source Serif 4',Georgia,serif;font-size:1.65em;line-height:1.2;color:#14212b}
.cp-body p{margin:0 0 .7em}.cp-body ul,.cp-body ol{margin:0 0 .8em;padding-left:1.3em}.cp-body li{margin:.25em 0}
.cp-body a,.cp-note a{color:var(--cp-acc);font-weight:600}
.cp-tw{overflow-x:auto;margin:0 0 .8em;max-width:100%}
.cp-table{border-collapse:collapse;width:100%;font-size:.86em}
.cp-table th,.cp-table td{border:1px solid #d6d8de;padding:6px 9px;text-align:left;vertical-align:top}
.cp-table th{background:#eef4f3}
.cp-cap{font-size:.78em;color:var(--muted);margin:.3em 0 0}
.cp-call{border-radius:10px;padding:10px 14px;margin:0 0 .8em;border-left:5px solid}
.cp-teal{background:#e8f3f1;border-color:#0c4a47}.cp-red{background:#fbeceb;border-color:#b3261e}.cp-amber{background:#fbf3e2;border-color:#b07a1f}
.cp-stat{display:flex;align-items:baseline;gap:12px;margin:0 0 .7em;flex-wrap:wrap}
.cp-stat-v{font:700 2em/1 'Source Serif 4',Georgia,serif;color:var(--cp-acc)}.cp-stat-l{flex:1 1 200px}
.cp-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:18px}
.cp-cols>div{min-width:0}
.cp-see{font-size:.85em;color:var(--muted);border-top:1px dashed var(--line);padding-top:.6em;margin-top:.6em}
.cp-ctrl{display:flex;align-items:center;gap:10px;margin-top:10px;flex-wrap:wrap}
.cp-count{flex:1;text-align:center;font-size:14px;color:var(--muted)}
.cp-fs{border:1px solid var(--line);background:none;border-radius:8px;padding:7px 10px;font:inherit;font-size:13px;cursor:pointer;color:var(--muted)}
.cp-notes .cp-note{margin:10px 0 0;padding:10px 14px;border-radius:10px;background:#f5f2fa;border-left:4px solid #5b3a8c;font-size:15px;line-height:1.5}
.cp-check .cp-q{border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin:0 0 12px}
.cp-check legend{font-weight:700;padding:0 4px;line-height:1.45}
.cp-opt{display:block;width:100%;text-align:left;margin:6px 0;padding:8px 12px;border:1px solid #cfd3da;border-radius:8px;background:#fff;font:inherit;font-size:.92em;line-height:1.4;cursor:pointer}
.cp-opt:hover{border-color:var(--cp-acc)}.cp-opt.ok{background:#e8f4eb;border-color:#2b7a3e}.cp-opt.no{background:#fbeceb;border-color:#b3261e}
.cp-exp{margin:8px 0 0;padding:8px 10px;border-radius:8px;font-size:.9em}.cp-exp.ok{background:#e8f4eb}.cp-exp.no{background:#fbeceb}
.cp-ok{color:#2b7a3e;font-weight:700}
.hb-quiz fieldset{border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin:0 0 12px;background:var(--surface)}
.hb-quiz legend{font-weight:700;padding:0 4px;line-height:1.45}
.hb-quiz label{display:block;padding:5px 0;line-height:1.45;cursor:pointer}
.hb-exp{margin:8px 0 0;padding:8px 10px;border-radius:8px;font-size:14px}.hb-exp.ok{background:#e8f4eb}.hb-exp.no{background:#fbeceb}
.hb-ok{color:#2b7a3e;font-weight:700}.hb-no{color:#8a3a20;font-weight:700}.hb-result{margin:14px 0}
/* catalogue */
.crs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:14px;margin:16px 0}
.crs-card{background:var(--surface);border:1px solid var(--line);border-top:5px solid var(--a,#0c4a47);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:8px;color:inherit;text-decoration:none}
.crs-card:hover{box-shadow:0 4px 14px rgba(0,0,0,.08)}
.crs-card h3{margin:0;font-family:'Source Serif 4',Georgia,serif;font-size:20px}
.crs-card p{margin:0;font-size:14.5px;line-height:1.5}.crs-card .m{color:var(--muted);font-size:13px}
.crs-card .g{margin-top:auto;font-weight:700;color:var(--a,#0c4a47)}
@media (max-width:600px){
  .cp-slide{min-height:0;padding:18px 16px;font-size:16px}
  .cp-st{font-size:1.4em}
  .cp-deck{padding:8px}
  .cp-fs{display:none}
}
@media print{.cp-ctrl,.cp-bar,.cp-crumb{display:none}}
/* buttons (same look as the Shop) */
#rgpcourse .cg-btn{display:inline-flex;align-items:center;justify-content:center;font:inherit;font-size:14px;font-weight:700;padding:9px 16px;border-radius:8px;border:1px solid var(--cp-acc);background:#fff;color:var(--cp-acc);text-decoration:none;line-height:1.2;cursor:pointer}
#rgpcourse .cg-btn.pri{background:var(--cp-acc);color:#fff}
#rgpcourse .cg-btn:hover{filter:brightness(1.1)}
#rgpcourse .cg-btn:disabled{opacity:.45;cursor:default;filter:none}
#rgpcourse .cp-home-head .cg-btn,#rgpcourse>.cg-btn{margin-top:8px}
@media (max-width:600px){.cp-slide{padding:16px 12px}.cp-check .cp-q{padding:8px 8px;margin:0 0 10px}.cp-opt{padding:8px 10px}}
/* narration */
.cp-aud{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:0 0 10px;font-size:14px}
.cp-play{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:999px;background:var(--cp-acc);color:#fff;font:inherit;font-weight:700;padding:8px 16px;cursor:pointer}
.cp-play::before{content:'';width:0;height:0;border-left:9px solid #fff;border-top:6px solid transparent;border-bottom:6px solid transparent}
.cp-play.on::before{width:9px;height:11px;border:0;border-left:3px solid #fff;border-right:3px solid #fff;box-sizing:border-box}
.cp-play:disabled{opacity:.4;cursor:default}
.cp-vid{display:inline-flex;align-items:center;gap:6px;cursor:pointer;color:var(--muted)}
.cp-rate{font:inherit;font-size:13px;padding:5px 8px;border:1px solid var(--line);border-radius:8px;background:#fff}
.cp-trans{margin:10px 0 0;font-size:14.5px;line-height:1.55;color:#333}.cp-trans summary{cursor:pointer;font-weight:700;color:var(--muted)}
.cp-trans p{margin:6px 0 0;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 14px}
/* CPD hub quick links (pages/courses.html) */
.crs-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;margin:0 0 22px}
.crs-link{display:flex;flex-direction:column;gap:4px;background:var(--surface);border:1px solid var(--line);border-left:5px solid #0c4a47;border-radius:12px;padding:12px 14px;color:inherit;text-decoration:none}
.crs-link:first-child{border-left-color:#b0532b}
.crs-link b{font-size:16px}.crs-link span{font-size:13px;color:var(--muted);line-height:1.4}
.crs-link:hover{box-shadow:0 4px 14px rgba(0,0,0,.08)}
