/* Course-specific extensions to the supplied v1.6.6 platform. */
.zpotc .module-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.zpotc .reading{max-width:76ch!important;width:100%;overflow-wrap:anywhere}
.zpotc .lesson-goal{font-size:15px;color:#65748a;background:#f6f8fa;border-radius:8px;padding:15px 18px;margin:0 0 24px}
.zpotc .screen-heading{font-size:clamp(24px,2.5vw,32px);margin-top:30px}
.zpotc .lesson-objective{display:block;font-size:13px;color:#65748a;font-weight:400;margin-top:5px;line-height:1.5}
.zpotc .mode-bar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;border-bottom:1px solid #e3e8ee;padding:8px 0 18px;margin-bottom:25px}
.zpotc fieldset{min-width:0}.zpotc .field{border:0;padding:0;margin:28px 0}
.zpotc .field legend{font-weight:700;font-size:16px;line-height:1.5;margin-bottom:12px;padding:0}
.zpotc .choice-label{display:flex;align-items:flex-start;gap:12px;padding:13px 15px;margin:8px 0;border:1px solid #dce4ec;border-radius:8px;font-size:15px;font-weight:400;line-height:1.55;cursor:pointer}
.zpotc .choice-label:hover{background:#fffaf4;border-color:#e39a37}.zpotc .choice-label.is-selected{background:#fff8ee;border-color:#e39a37}
.zpotc .choice-label input{flex:0 0 auto;width:18px;height:18px;margin:3px 0 0;accent-color:#122743}
.zpotc .reading textarea{font-size:16px;line-height:1.6;min-height:100px;max-width:100%}
.zpotc details{border:1px solid #dce4ec;border-radius:8px;padding:13px 17px;margin:20px 0}.zpotc summary{font-weight:650;cursor:pointer}.zpotc details[open]>summary{margin-bottom:14px}
.zpotc .practice-steps{padding-left:23px}.zpotc .practice-steps li{padding-left:5px;margin:15px 0}
.zpotc .prewrap{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit}
.zpotc .plan-editor{margin:30px 0;border-bottom:1px solid #e3e8ee;padding-bottom:14px}.zpotc .plan-editor textarea{width:100%;line-height:1.6}
.zpotc .plan-editor details p{max-height:300px;overflow:auto}
.zpotc .zpotc-link:focus-visible,.zpotc a:focus-visible{outline:3px solid #e39a37;outline-offset:3px}
.zpotc h1:focus{outline:none}.zpotc .zpotc-save-warning{padding:14px 24px;background:#fff0cf;color:#122743;border-bottom:1px solid #e39a37}
.zpotc .zpotc-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.zpotc .zpotc-top{flex-wrap:wrap}.zpotc .zpotc-top-actions{flex-wrap:wrap}
.zpotc .zpotc-course-name{max-width:320px}.zpotc .option{min-width:0;overflow-wrap:anywhere}
.zpotc .zpotc-print-plan{margin:28px 0;border:1px solid #dce4ec;background:#fff;max-width:850px;font:14px/1.6 Arial,sans-serif}
.zpotc .zpotc-print-plan .plan-page{min-height:0;height:auto;display:flex;flex-direction:column;border-bottom:1px solid #dce4ec}
.zpotc .zpotc-print-plan .plan-page-head{padding:18px 24px}.zpotc .zpotc-print-plan .plan-page-head img{height:55px;width:130px}
.zpotc .zpotc-print-plan .plan-hero{padding:28px}.zpotc .zpotc-print-plan .plan-hero h1{font-size:30px}
.zpotc .zpotc-print-plan .plan-block h2{font-size:24px;margin:22px 0 12px;break-after:avoid}
.zpotc .zpotc-print-plan .plan-block p{font:14px/1.65 Arial,sans-serif;overflow-wrap:anywhere;white-space:normal}
.zpotc .zpotc-print-plan .plan-page-foot{flex-wrap:wrap}
.zpotc .cert-preview{overflow:hidden;border:1px solid #dce4ec;border-radius:10px;margin:24px 0;background:#fff}
.zpotc .cert-preview .zp-certificate{padding:35px 22px;text-align:center;background:white;border:8px solid #e39a37;margin:12px;display:flex;flex-direction:column;align-items:center;color:#122743}
.zpotc .zp-cert-logo img{width:190px;height:auto;max-height:100px;object-fit:contain;margin:15px 0 25px}
.zpotc .zp-cert-body h1{font-size:30px}.zpotc .zp-cert-body h2{font-size:29px;overflow-wrap:anywhere}.zpotc .zp-cert-body h3{font-size:27px}
.zpotc .zp-cert-body p{font-size:14px}.zpotc .zp-cert-divider{border-top:1px solid #dce4ec;margin:25px auto;width:80%}.zpotc .zp-cert-bottom{font-size:12px;margin:20px auto 12px}
@media(max-width:1050px){.zpotc .module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:780px){.zpotc .module-grid{grid-template-columns:1fr}.zpotc .zpotc-top-actions .zpotc-link{display:inline-block;font-size:12px}.zpotc .zpotc-top-actions{width:100%;justify-content:space-between;gap:8px}.zpotc .mode-bar{align-items:flex-start}.zpotc .choice-label{padding:12px}.zpotc .reading{font-size:16px}.zpotc .zpotc-print-plan .plan-inner{padding:18px}.zpotc .zpotc-print-plan .plan-hero{padding:20px}.zpotc .zpotc-print-plan .plan-hero h1{font-size:25px}.zpotc .zpotc-print-plan .plan-page-head{padding:14px;font-size:9px}.zpotc .zpotc-print-plan .plan-page-head img{width:105px}.zpotc .actions .btn{max-width:100%}.zpotc .zpotc-footer-content{gap:15px}.zpotc .zpotc-print-plan{margin:20px 0}.zpotc .zp-cert-body h1{font-size:24px}}
.zpotc .layout>main.panel{min-width:0;width:100%;overflow-wrap:anywhere}

.zpotc .footer-nav .btn:not(.secondary):not(:disabled){background:#e39a37;border-color:#e39a37;color:#122743}
.zpotc .footer-nav .btn:not(.secondary):not(:disabled):hover{background:#f0b562}
.zpotc .completion-help{border-left:3px solid #e39a37;background:#fff8f1;padding:16px 20px;margin-top:24px}
.zpotc .completion-help ul{padding-left:20px;margin:8px 0}.zpotc .completion-help .zpotc-link{text-align:left;font-size:inherit}
.zpotc .completion-ready{color:#315744;font-weight:650}.zpotc .lesson-booking{border-top:1px solid #dce4ec;padding-top:18px;font-size:14px}
.zpotc .booking-invitation{background:#fff8f1;border-top:3px solid #e39a37;border-radius:10px;padding:clamp(22px,4vw,36px);margin-top:36px}
.zpotc .booking-invitation h2{font-size:clamp(27px,3vw,36px);max-width:700px}.zpotc .booking-invitation p{max-width:720px}
.zpotc .booking-invitation .btn{display:inline-block;text-decoration:none;background:#e39a37;border-color:#e39a37;color:#122743}

.zpotc .lesson-booking a{color:#122743;text-decoration-color:#e39a37;text-underline-offset:3px;font-weight:650}

.zpotc .course-completion-action{margin-top:32px;padding-top:24px;border-top:1px solid #dce4ec}
.zpotc .course-completion-action .btn:not(:disabled),.zpotc .completion-plan-review .btn:not(.secondary){background:#e39a37;border-color:#e39a37;color:#122743}
.zpotc .completion-plan-review{background:#fff8f1;border-left:3px solid #e39a37;padding:22px;margin:26px 0}
.zpotc .completion-plan-review h2{font-size:28px}.zpotc .completion-plan-review details{margin-top:18px}
.zpotc .completion-plan-review .actions{margin-top:22px}.zpotc .course-completion-action .small{margin-top:14px}

.zpotc .zpotc-print-plan{border:1px solid #dce4ec;border-radius:12px;overflow:hidden}.zpotc .zpotc-print-plan .plan-page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:2px solid #e39a37;margin:0 26px;padding:24px 0;color:#65748a;font-size:10px;letter-spacing:.06em}.zpotc .zpotc-print-plan .plan-page-head img{width:114px;height:auto;max-width:35%;object-fit:contain}.zpotc .zpotc-print-plan .plan-hero{margin:24px 26px 0;padding:26px;background:#122743;color:white;border-radius:6px}.zpotc .zpotc-print-plan .plan-hero h1{color:white;font-size:30px}.zpotc .zpotc-print-plan .plan-hero>p:first-child{color:#e39a37;font-size:11px;letter-spacing:.07em}.zpotc .zpotc-print-plan .plan-hero p:last-child{font-size:12px;color:#e0e8f0}.zpotc .zpotc-print-plan .plan-person{font-weight:700;font-size:16px}.zpotc .zpotc-print-plan .plan-inner{padding:14px 26px 26px}.zpotc .plan-section-number{display:inline-block;color:#a36c23;font:700 12px/1.4 Arial,sans-serif;min-width:30px;vertical-align:middle}.zpotc .zpotc-print-plan .plan-block h2{border-bottom:1px solid #dce4ec;padding-bottom:10px;margin-top:26px;font-size:23px}.zpotc .zpotc-print-plan .plan-page-foot{display:flex;justify-content:space-between;gap:16px;padding:14px 26px;font-size:10px;color:#65748a;border-top:1px solid #dce4ec}.zpotc .zpotc-print-plan .plan-quote{border-left:3px solid #e39a37;background:#fff8f1;padding:18px;margin:22px 0}.zpotc .zpotc-print-plan .plan-prompt{margin:18px 0}.zpotc .zpotc-print-plan .plan-write{height:34px;border-bottom:1px solid #dce4ec}

.zpotc .pdf-save-status{padding:12px 16px;background:#fff8f1;border-left:3px solid #e39a37;font-size:14px;color:#122743;overflow-wrap:anywhere}

.zpotc .review-confirmation{margin:28px 0 18px;padding:22px;border:1px solid #dce4ec;border-radius:10px;background:#f7f9fb}
.zpotc .review-confirmation.is-confirmed{border-color:#b7cfc1;background:#f1f7f3}.zpotc .review-confirmation-message{margin:16px 0 0}.zpotc .review-confirmation-message:focus{outline:none}.zpotc .review-confirmation-message strong{font-size:16px}.zpotc .review-confirmation-message p{font-size:14px;margin:6px 0 14px;max-width:680px}.zpotc .review-confirmation.is-confirmed .btn:disabled{opacity:1;background:#315744;border-color:#315744;color:#fff;cursor:default}.zpotc .review-confirmation .btn{max-width:100%;white-space:normal}.zpotc .plan-tools{padding-bottom:8px;gap:12px}
.zpotc .email-preview{margin:26px 0;border:1px solid #dce4ec;border-radius:12px;padding:clamp(18px,3vw,28px);background:#f7f9fb;overflow-wrap:anywhere}
.zpotc .email-preview-heading h2{font-size:29px;margin:7px 0 12px}.zpotc .email-preview-heading>p:last-child{font-size:14px;color:#65748a;max-width:650px}.zpotc .email-draft-sheet{border:1px solid #dce4ec;border-radius:9px;background:white;margin-top:22px;overflow:hidden}.zpotc .email-subject{padding:16px 20px;border-bottom:1px solid #dce4ec;display:grid;gap:5px}.zpotc .email-subject span{font-size:11px;color:#65748a;letter-spacing:.08em;text-transform:uppercase}.zpotc .email-subject strong{font-size:14px;font-weight:650}.zpotc .email-message{padding:18px 20px;max-height:360px;overflow:auto;font-size:14px;line-height:1.65}.zpotc .email-message p{margin:0 0 12px}.zpotc .email-message p:last-child{margin-bottom:0}.zpotc .email-attachment{border-left:3px solid #e39a37;padding:16px 18px;background:#fff8f1;margin-top:20px}.zpotc .email-attachment p{font-size:14px;margin:8px 0 16px}.zpotc .email-privacy-note{font-size:12px;color:#65748a;margin-top:16px}.zpotc .email-preview .actions{margin-top:20px}

.zpotc .completion-welcome h1{font-size:clamp(32px,4vw,46px)}.zpotc .completion-documents{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:26px 0}.zpotc .completion-document-card{padding:24px;border:1px solid #dce4ec;border-top:3px solid #e39a37;border-radius:10px;background:#fff8f1;min-width:0}.zpotc .completion-document-card h2{font-size:27px;margin:10px 0 14px}.zpotc .completion-document-card .btn{max-width:100%;white-space:normal}.zpotc .completion-preview{margin:18px 0}.zpotc .completion-document-card .actions{margin-top:12px}
.zpotc .cert-preview{max-width:710px;margin:24px auto}.zpotc .cert-preview .zp-certificate{width:auto;max-width:none;margin:12px;padding:35px clamp(12px,3vw,35px);display:block;text-align:center}.zpotc .cert-preview .zp-cert-logo,.zpotc .cert-preview .zp-cert-body,.zpotc .cert-preview .zp-cert-bottom{width:100%;max-width:none;text-align:center;margin-left:auto;margin-right:auto}.zpotc .cert-preview .zp-cert-logo img{display:block;width:180px;height:auto;max-width:55%;margin:10px auto 28px}.zpotc .cert-preview .zp-cert-body h1,.zpotc .cert-preview .zp-cert-body h2,.zpotc .cert-preview .zp-cert-body h3,.zpotc .cert-preview .zp-cert-body h4,.zpotc .cert-preview .zp-cert-body p,.zpotc .cert-preview .zp-cert-bottom p,.zpotc .cert-preview .zp-cert-bottom small{width:100%;max-width:none;text-align:center;margin-left:auto;margin-right:auto}.zpotc .cert-preview .zp-cert-body h1{font-size:clamp(19px,3vw,30px);margin:0 0 24px}.zpotc .cert-preview .zp-cert-body h2{font-size:clamp(21px,3vw,29px);overflow-wrap:anywhere}.zpotc .cert-preview .zp-cert-body h3{font-size:clamp(22px,3vw,28px);margin-top:24px}.zpotc .cert-preview .zp-cert-body p{font-size:clamp(11px,1.8vw,14px)}.zpotc .cert-preview .zp-cert-body .zp-cert-topics{max-width:470px;font-size:12px;line-height:1.7}.zpotc .cert-preview .zp-cert-bottom{margin-top:36px;font-size:11px}.zpotc .cert-preview .zp-cert-bottom small{display:block;font-size:9px;line-height:1.5;margin-top:18px}
.zpotc .zpotc-print-plan .plan-hero{padding:20px 24px}.zpotc .zpotc-print-plan .plan-hero h1{font-size:clamp(25px,4vw,34px);margin:10px 0 14px}.zpotc .plan-example-notice{margin:20px 26px 0;padding:15px 18px;border-left:3px solid #e39a37;background:#fff8f1}.zpotc .plan-example-notice strong{font-size:11px;letter-spacing:.06em}.zpotc .plan-example-notice p{margin:8px 0 0;font-size:13px}.zpotc .plan-introduction{padding:0 26px}.zpotc .plan-part-title{padding:24px 26px 0;font-size:28px!important}.zpotc .zpotc-print-plan .plan-entry{margin:18px 0}.zpotc .zpotc-print-plan .plan-entry-label{font:700 12px/1.5 Arial,sans-serif;color:#65748a;letter-spacing:0;margin:0 0 5px}.zpotc .zpotc-print-plan .plan-entry p{margin:0 0 8px}.zpotc .zpotc-print-plan .plan-block--response>h2,.zpotc .zpotc-print-plan .plan-block--practice>h2{background:#fff8f1;border-left:3px solid #e39a37;padding:12px 14px}
@media(max-width:680px){.zpotc .completion-documents{grid-template-columns:1fr}.zpotc .completion-document-card{padding:20px}}

.zpotc .help-page{max-width:760px;margin:0 auto}.zpotc .help-intro h1{font-size:clamp(32px,4vw,44px);margin:10px 0 16px}.zpotc .help-intro>p:last-of-type{color:#65748a;max-width:58ch;font-size:16px;line-height:1.7}.zpotc .help-intro .actions{margin-top:22px;gap:12px}.zpotc .help-essential{background:#fff8f1;border-left:3px solid #e39a37;padding:18px 20px;margin:28px 0}.zpotc .help-essential strong{font-size:16px}.zpotc .help-essential p{font-size:14px;line-height:1.65;margin:7px 0 0;max-width:65ch}.zpotc .help-topics{display:grid;gap:12px}.zpotc .help-topics details{padding:0;border:1px solid #dce4ec;border-radius:10px;background:#fff;overflow:hidden;margin:0}.zpotc .help-topics summary{padding:18px 20px;cursor:pointer;color:#122743;font-size:17px;font-weight:700;line-height:1.45}.zpotc .help-topics summary::marker{color:#a36c23}.zpotc .help-topic-hint{display:block;font-size:12px;font-weight:400;color:#65748a;margin:5px 0 0 18px}.zpotc .help-topics details[open] summary{border-bottom:1px solid #dce4ec;background:#f7f9fb}.zpotc .help-topic-body{padding:6px 20px 18px;max-width:70ch}.zpotc .help-topic-body p{font-size:15px;line-height:1.75;margin:14px 0}.zpotc .help-topic-body .btn{display:inline-block;text-decoration:none;max-width:100%;white-space:normal;font-size:14px;margin-top:6px}.zpotc .help-urgent{font-size:13px!important;padding-top:12px;border-top:1px solid #dce4ec;color:#65748a}.zpotc .help-source-list{padding-left:20px;font-size:14px}.zpotc .help-source-list li{margin:12px 0}.zpotc .help-source-list a{color:#122743;text-decoration-color:#e39a37;text-underline-offset:3px;overflow-wrap:anywhere}.zpotc .help-reset{margin-top:32px;padding:22px;border:1px solid #dce4ec;border-radius:10px;background:#f7f9fb}.zpotc .help-reset h2{font-size:26px;margin:8px 0 14px}.zpotc .help-reset>p:not(.eyebrow),.zpotc .help-reset-confirm p{font-size:14px;line-height:1.75;max-width:65ch}.zpotc .help-reset .reset-start{font-size:14px;margin-top:7px}.zpotc .help-reset-confirm{border-top:1px solid #dce4ec;padding-top:20px;margin-top:20px}.zpotc .help-reset-confirm strong{font-size:16px}.zpotc .reset-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-start;margin-top:20px}.zpotc .reset-actions .btn{font-size:14px;max-width:100%;white-space:normal}.zpotc .reset-actions .reset-danger{background:#fff;border-color:#a43d37;color:#8d2f29}.zpotc .reset-actions .reset-danger:hover{background:#fff1ef}.zpotc .help-bottom-actions{margin-top:24px}
@media(max-width:620px){.zpotc .help-topics summary{padding:16px;font-size:16px}.zpotc .help-topic-body{padding:4px 16px 16px}.zpotc .help-reset{padding:18px}.zpotc .reset-actions{flex-direction:column;align-items:stretch}.zpotc .reset-actions .btn{width:100%}}

.zpotc .reading>p{max-width:69ch;line-height:1.8;margin:0 0 20px}.zpotc .lesson-bullets{padding-left:24px;margin:20px 0 26px;max-width:67ch}.zpotc .lesson-bullets li{padding-left:6px;margin:12px 0;line-height:1.7}.zpotc .lesson-concepts{margin:24px 0 28px;border-top:1px solid #dce4ec}.zpotc .lesson-concepts>div{padding:17px 0;border-bottom:1px solid #dce4ec;display:grid;grid-template-columns:minmax(145px,1fr) 2fr;gap:20px}.zpotc .lesson-concepts dt{font-weight:700;font-size:15px;line-height:1.6;color:#122743}.zpotc .lesson-concepts dd{margin:0;font-size:16px;line-height:1.75;color:#243b57}.zpotc .lesson-example{margin:26px 0;padding:20px 24px;border-left:3px solid #e39a37;background:#fff8f1}.zpotc .lesson-example figcaption{font-size:12px;font-weight:700;color:#65748a;margin-bottom:10px}.zpotc .lesson-example blockquote{margin:0;font:23px/1.5 Georgia,serif;color:#122743}.zpotc .lesson-practice-guidance{padding:17px 20px;border-left:2px solid #dce4ec;background:#f7f9fb;margin:24px 0}.zpotc .lesson-practice-guidance strong{font-size:13px;color:#65748a}.zpotc .lesson-practice-guidance p{font-size:14px;line-height:1.75;margin:7px 0 0}.zpotc .lesson-activity-note{font-size:14px;line-height:1.75;padding:18px 20px;background:#fff8f1;border-left:3px solid #e39a37;margin:24px 0}.zpotc .practice-steps{list-style:none;counter-reset:practice-step;padding:0;margin:26px 0}.zpotc .practice-steps li{counter-increment:practice-step;position:relative;padding:0 0 18px 46px;margin:0 0 18px;border-bottom:1px solid #dce4ec;line-height:1.75}.zpotc .practice-steps li:last-child{border-bottom:0;padding-bottom:0}.zpotc .practice-steps li::before{content:counter(practice-step);position:absolute;left:0;top:0;width:28px;height:28px;border-radius:50%;background:#fff8f1;color:#9b6b26;font-size:13px;line-height:28px;text-align:center;font-weight:700}.zpotc .lesson-summary{margin:28px 0;padding:22px;border:1px solid #dce4ec;border-radius:9px;background:#f7f9fb}.zpotc .lesson-summary h3{font-size:25px;margin:0 0 20px}.zpotc .lesson-summary dl{margin:0}.zpotc .lesson-summary dl>div{margin:18px 0}.zpotc .lesson-summary dt{font-size:12px;font-weight:700;color:#65748a;margin-bottom:6px}.zpotc .lesson-summary dd{margin:0}.zpotc .lesson-summary dd p{margin:0;line-height:1.75}.zpotc .lesson-summary ul{margin:0;padding-left:20px}.zpotc .lesson-summary li{margin:8px 0;padding-left:3px;line-height:1.7}.zpotc .reading>.btn{margin:12px 0 20px;max-width:100%;white-space:normal}.zpotc .reading>details{margin:24px 0}.zpotc .reading>fieldset{margin-top:30px}
@media(max-width:620px){.zpotc .lesson-concepts>div{grid-template-columns:1fr;gap:7px;padding:16px 0}.zpotc .lesson-example{padding:18px}.zpotc .lesson-example blockquote{font-size:21px}.zpotc .lesson-summary{padding:18px}.zpotc .practice-steps li{padding-left:40px}}

/* A direct homepage link, separate from the existing return-to-resources action. */
.zpotc .zpotc-top .zpotc-home{display:inline-flex;align-items:center;min-height:44px;padding:8px 0;color:#fff8f1!important;opacity:1;font-size:13px;font-weight:600;text-decoration:none}
.zpotc .zpotc-top .zpotc-home:hover{text-decoration:underline;text-underline-offset:4px}
.zpotc .zpotc-top .zpotc-home:focus-visible{outline:3px solid #e39a37;outline-offset:4px}
@media(max-width:780px){.zpotc .zpotc-top-actions{flex-wrap:wrap;gap:10px 14px}.zpotc .zpotc-top .zpotc-home{font-size:12px}}
