.iecpd-journey{--iecpd-ink:#06465a;--iecpd-gold:#bc9b6b;--iecpd-border:#dedfd9;color:var(--iecpd-ink);font-size:16px;line-height:1.6;margin-block:24px}
.iecpd-panel{padding:clamp(24px,4vw,42px);margin:24px 0;border:1px solid #dedfd9;border-radius:8px;background:#fff;box-sizing:border-box}
/* Preserve the live-session card inside the dashboard's content reset. */
#tj-cv-course-content-body .iecpd-panel[aria-label="Next live session"]{padding:clamp(24px,3vw,36px);margin:16px 0 32px;border:1px solid #e1e5eb;border-radius:12px;background:#fff;box-sizing:border-box}
#tj-cv-course-content-body .iecpd-panel[aria-label="Next live session"] h2{margin:0 0 18px!important;font-size:clamp(24px,2.5vw,30px)!important;line-height:1.25!important;color:#203d64!important}
#tj-cv-course-content-body .iecpd-panel[aria-label="Next live session"] a.iecpd-button{padding:12px 24px;min-height:48px;max-width:100%;border-radius:8px;color:#fff!important;background:#314ea1;text-align:center;box-sizing:border-box}
#tj-cv-course-content-body .iecpd-panel[aria-label="Next live session"] a.iecpd-button:hover{background:#233d86;color:#fff!important}
#tj-cv-course-content-body .iecpd-panel[aria-label="Next live session"] a.iecpd-button:focus-visible{outline:3px solid #314ea1;outline-offset:4px}
@media(max-width:650px){#tj-cv-course-content-body .iecpd-panel[aria-label="Next live session"]{padding:22px 18px;margin:12px 0 24px}#tj-cv-course-content-body .iecpd-panel[aria-label="Next live session"] a.iecpd-button{width:100%}}
.learndash-wrapper .iecpd-panel h2{font-size:clamp(25px,3vw,32px);line-height:1.2;margin:0 0 16px;color:#06465a}
.learndash-wrapper .iecpd-panel h3{font-size:20px;line-height:1.45;color:#06465a}
.iecpd-eyebrow{font-size:12px!important;line-height:1.5;text-transform:uppercase;letter-spacing:.1em;font-weight:600;color:#687269;margin:0 0 8px!important}
.iecpd-local-banner{font-size:13px!important;padding:12px 16px;background:#f5f2eb;border-radius:4px;margin:0 0 20px!important;color:#615138}
.iecpd-step-nav{display:flex;gap:12px 24px;flex-wrap:wrap;border-bottom:1px solid #dedfd9;padding-bottom:18px;font-size:14px}
.iecpd-step-nav a,.iecpd-checklist a,.iecpd-text-link{color:#06465a!important;text-decoration:underline!important;text-underline-offset:4px}
.iecpd-checklist{display:grid;grid-template-columns:1fr 1fr;gap:12px;list-style:none!important;padding:0!important;margin:26px 0!important}
.iecpd-checklist li{display:flex;gap:14px;padding:20px;border:1px solid #dedfd9;border-radius:6px;margin:0!important;background:#fafaf7}
.iecpd-checklist .is-complete{background:#f1f6f1;border-color:#c9d6c9}
.iecpd-checklist a{font-weight:600}.iecpd-checklist p{font-size:14px;line-height:1.5;margin:5px 0 0!important}
.iecpd-check{font-size:23px;line-height:1.2;color:#657a61}
.iecpd-certificate-state{border-top:1px solid #dedfd9;padding-top:20px;margin:20px 0}
.iecpd-certificate-state p{font-size:14px;margin:4px 0!important}
.iecpd-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}
.iecpd-badge{white-space:nowrap;font-size:12px;padding:5px 10px;border-radius:30px;background:#f3f0e8;color:#66502e}.iecpd-badge.is-complete{background:#e9f1e8;color:#315332}
.iecpd-note,.iecpd-objectives,.iecpd-demo{padding:18px 20px;background:#f7f6f1;border-left:3px solid #bc9b6b;margin:20px 0;font-size:14px;line-height:1.6}
.iecpd-objectives summary,.iecpd-demo summary{cursor:pointer;font-weight:600}.iecpd-objectives ol{padding-left:22px;margin:16px 0 0}.iecpd-objectives li{margin-bottom:8px}
.iecpd-form{max-width:850px}.iecpd-field{margin:28px 0}.iecpd-field>label,.iecpd-field legend{display:block;font-weight:600;font-size:16px;line-height:1.5;color:#06465a;margin-bottom:10px}
.iecpd-required{display:inline-block;font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.05em;color:#6c7068;margin-left:6px}
.learndash-wrapper .iecpd-form select,.learndash-wrapper .iecpd-form textarea{display:block;box-sizing:border-box;width:100%;max-width:100%;min-height:48px;border:1px solid #b5bdb5;border-radius:4px;background:#fff;color:#06465a;padding:12px 14px;font:inherit;line-height:1.5;box-shadow:none;margin-top:8px}
.learndash-wrapper .iecpd-form select{padding-right:35px;appearance:auto;background-image:none;white-space:normal}
.learndash-wrapper .iecpd-form textarea{min-height:132px;resize:vertical}
.iecpd-field fieldset{border:0;padding:0;margin:0;min-width:0}.iecpd-field legend{float:none;width:auto}.iecpd-modality-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.iecpd-modality-grid label{font-size:14px;font-weight:500}
.iecpd-check-list{display:grid;gap:10px}.iecpd-check-list label,.iecpd-consent{display:flex!important;gap:12px;align-items:flex-start;font-size:14px!important;font-weight:400!important;cursor:pointer;line-height:1.6}
.iecpd-form input[type=checkbox]{width:20px;height:20px;min-width:20px;margin:3px 0 0;accent-color:#446b42;appearance:auto;position:static;opacity:1}
.iecpd-hint{font-size:13px!important;line-height:1.6;color:#697167;margin:8px 0!important}.iecpd-hint a{color:#06465a;text-decoration:underline}
.iecpd-button,.learndash-wrapper .iecpd-button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;padding:12px 24px;border:1px solid #314ea1;border-radius:4px;background:#314ea1;color:#fff!important;font-size:15px;font-weight:600;line-height:1.4;text-decoration:none!important;cursor:pointer}
.iecpd-button:hover,.learndash-wrapper .iecpd-button:hover{background:#233d86;border-color:#233d86}.iecpd-button:disabled{opacity:.65;cursor:wait}
.iecpd-certificate-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;margin-top:20px}
.iecpd-certificate-actions:empty{display:none}
/* Match the dashboard's ID specificity so its generic link/reset rules cannot flatten the primary action. */
:is(#tj-cv-course-content-body,.tj-cv-cert,.iecpd-journey) a.iecpd-certificate-download{display:inline-flex!important;align-items:center;justify-content:center;gap:12px;box-sizing:border-box;min-height:52px;max-width:100%;padding:14px 24px!important;border:1px solid #314ea1!important;border-radius:8px!important;background:#314ea1!important;color:#fff!important;font-family:inherit!important;font-size:15px!important;font-weight:600!important;line-height:1.4!important;letter-spacing:normal!important;text-align:center;text-decoration:none!important;box-shadow:0 2px 4px rgb(20 40 80 / 10%);transition:background-color .15s ease,box-shadow .15s ease}
:is(#tj-cv-course-content-body,.tj-cv-cert,.iecpd-journey) a.iecpd-certificate-download:hover{background:#233d86!important;border-color:#233d86!important;color:#fff!important;box-shadow:0 4px 10px rgb(20 40 80 / 16%)}
:is(#tj-cv-course-content-body,.tj-cv-cert,.iecpd-journey) a.iecpd-certificate-download:focus-visible{outline:3px solid #314ea1!important;outline-offset:4px!important}
.iecpd-certificate-download .iecpd-download-icon{flex:0 0 16px;font-size:21px!important;line-height:1!important;border-bottom:1.5px solid currentColor;padding-bottom:2px;color:inherit!important}
.iecpd-certificate-actions .iecpd-text-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:14px!important;line-height:1.5}
.tj-cv-cert .iecpd-certificate-download{margin-top:12px!important;min-width:240px}
@media(max-width:650px){.iecpd-certificate-actions{align-items:stretch;gap:12px}.iecpd-certificate-actions>a{width:100%;justify-content:center}.tj-cv-cert .iecpd-certificate-download{width:100%;min-width:0}}
@media(prefers-reduced-motion:reduce){a.iecpd-certificate-download{transition:none!important}}
.iecpd-journey :focus-visible,#iecpd-assessment-review :focus-visible{outline:3px solid #314ea1;outline-offset:3px}
.iecpd-success{padding:15px 18px;background:#edf4ec;color:#325831;font-size:14px;border-radius:4px}.iecpd-errors{padding:18px;background:#fff1ed;color:#912e20;border-left:3px solid #a43a2a}.iecpd-errors a{color:#912e20!important;text-decoration:underline}
.iecpd-field-error{color:#912e20;font-size:14px;margin:8px 0}.iecpd-form [aria-invalid=true]{border-color:#a43a2a!important}.iecpd-next{padding:24px 0}.iecpd-submit-state{font-size:14px;margin-left:16px}
.iecpd-answer-review{margin:24px 0!important;padding-left:24px!important}.iecpd-answer-review li{padding:20px 0;border-top:1px solid #dedfd9;margin:0!important}.iecpd-answer-review p{font-size:15px;line-height:1.6}.iecpd-answer-review h3{margin:8px 0 16px}
@media(max-width:650px){.iecpd-checklist,.iecpd-modality-grid{grid-template-columns:1fr}.iecpd-panel{padding:22px 18px}.iecpd-section-heading{align-items:flex-start}.iecpd-step-nav{gap:12px 18px}.iecpd-badge{font-size:11px}.iecpd-form select{font-size:16px!important}.iecpd-objectives{padding:16px}.iecpd-button{width:100%;box-sizing:border-box}}

/* Session-bound recorded catch-up prototype. */
.iecpd-replay-player{position:relative;overflow:hidden;border-radius:8px;background:#0f1c2c;aspect-ratio:16/9;margin:24px 0}
.iecpd-replay-player iframe{width:100%;height:100%;border:0;display:block}
.iecpd-mock-player{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;color:#fff;background:linear-gradient(135deg,#152d4d,#092f3c)}
.iecpd-mock-player [data-replay-clock]{font:600 18px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace}
.iecpd-replay-meter{height:10px;overflow:hidden;border-radius:99px;background:#e2e8ea;margin:20px 0 12px}
.iecpd-replay-meter span{display:block;height:100%;background:#314ea1;transition:width .2s ease}
.iecpd-replay-progress p{margin:8px 0!important}
.iecpd-button.is-disabled{opacity:.55;cursor:not-allowed}
.iecpd-demo pre{max-height:360px;overflow:auto;padding:14px;background:#fff;font-size:12px;white-space:pre-wrap}
@media(prefers-reduced-motion:reduce){.iecpd-replay-meter span{transition:none}}

/* James's programme introduction: scoped to this content on course and dashboard views. */
:is(.learndash-wrapper,#tj-cv-course-content-body) .iecpd-programme-intro{color:inherit;font-size:16px;line-height:1.7}
:is(.learndash-wrapper,#tj-cv-course-content-body) .iecpd-programme-intro h2{margin:0 0 24px!important;color:#203d64!important;font-size:clamp(26px,3vw,34px)!important;line-height:1.25!important}
:is(.learndash-wrapper,#tj-cv-course-content-body) .iecpd-programme-intro h3{margin:32px 0 16px!important;color:#203d64!important;font-size:clamp(21px,2vw,25px)!important;line-height:1.3!important}
:is(.learndash-wrapper,#tj-cv-course-content-body) .iecpd-programme-intro p{margin:0 0 18px!important;line-height:1.7}
:is(.learndash-wrapper,#tj-cv-course-content-body) .iecpd-programme-intro ul{list-style:disc!important;margin:0 0 24px!important;padding-left:24px!important}
:is(.learndash-wrapper,#tj-cv-course-content-body) .iecpd-programme-intro li{display:list-item;list-style:disc!important;margin:0 0 8px!important;padding-left:3px;line-height:1.7}
:is(.learndash-wrapper,#tj-cv-course-content-body) .iecpd-programme-intro .iecpd-programme-start{margin:28px 0 36px!important}
:is(.learndash-wrapper,#tj-cv-course-content-body) .iecpd-programme-intro a.iecpd-button{padding:14px 24px!important;min-height:52px;max-width:100%;box-sizing:border-box;border-radius:8px;color:#fff!important;text-align:center;line-height:1.5!important}
:is(.learndash-wrapper,#tj-cv-course-content-body) .iecpd-programme-intro a.iecpd-button:focus-visible{outline:3px solid #314ea1;outline-offset:4px}

/* Make the recording prerequisite clear before the monthly data form. */
.iecpd-catchup .iecpd-catchup-unlock{padding:16px 20px;margin:20px 0 0!important;border:1px solid #efcbc6;border-radius:8px;background:#fff5f3;color:#912e20!important;font-size:16px!important;font-weight:700!important;line-height:1.6!important}
.iecpd-catchup .iecpd-catchup-unlock strong{color:inherit;font-weight:700}
