/* Scoped lesson workflow: content and existing activities keep their own styles. */
#steps512.steps512{display:block}
/* Native choice controls must not inherit the full-width text-input rule512. */
#workspace512 input[type="radio"],#workspace512 input[type="checkbox"]{appearance:auto;width:22px;height:22px;min-width:22px;max-width:22px;min-height:22px;max-height:22px;padding:0;flex:0 0 22px;margin:3px 0 0;align-self:start}
#workspace512 .delivery516{min-width:0;max-width:100%}
#workspace512 .choices519{width:100%;max-width:100%;min-width:0;min-inline-size:0;margin-inline:0}
#workspace512 .choices519 legend{max-width:100%;white-space:normal;overflow-wrap:anywhere}
#workspace512 .delivery516 .choice519{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:start;min-width:0;max-width:100%;overflow-wrap:anywhere}
#workspace512 .choice519>span,#workspace512 .choice519 strong,#workspace512 .choice519 small{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
.hero512{padding-block:clamp(1.5rem,4vw,2.5rem)}.hero512 h1{max-width:24ch;font-size:clamp(1.8rem,4vw,2.7rem)}.hero512>p{max-width:66ch}.progress519{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:0;margin:0 0 1.25rem;gap:.5rem}.progress519 li{display:flex;gap:.55rem;align-items:center;min-width:0;padding:.7rem .55rem;color:#59657b;font-size:.95rem;border-bottom:3px solid #d9dfeb}.progress519 li span{display:grid;place-items:center;border:1px solid #c3cade;border-radius:50%;width:1.7rem;height:1.7rem;flex:none;font-weight:800}.progress519 li[aria-current]{color:#353085;border-color:#6552bc;font-weight:800}.progress519 li[aria-current] span{background:#5645a3;color:#fff;border-color:#5645a3}.progress519 .done519{color:#22694f;border-color:#8cbaa9}.upload519{padding:clamp(.9rem,3vw,1.4rem);border:1px solid #b8c7df;border-radius:1rem;background:#f2f7ff;margin-block:1rem}.upload519 input[type=file]{width:100%;max-width:100%;font:inherit;background:#fff;border:1px dashed #9daeca;border-radius:.65rem;padding:.9rem}.upload519 input[type=file]::file-selector-button{font:inherit;font-weight:700;padding:.55rem .8rem;border:0;border-radius:.5rem;background:#4c438c;color:#fff;cursor:pointer;margin-right:.7rem}.file519{overflow-wrap:anywhere}.context519{padding:.6rem 1rem;border-left:4px solid #7061b0;background:#f6f3fe;margin-block:1rem}.context519 p{margin:.3rem 0}.context519 details{border:0;padding:0;margin:.35rem 0}.context519 summary{font-size:.92rem}.output519{padding:.8rem 1rem;background:#edf7fa;border-radius:.65rem;color:#24485b}.review-questions519{margin-block:1.5rem}.review-questions519>ol>li{margin-block:1rem;padding:.8rem;background:#f6f8fc;border-radius:.6rem}.choices519{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;border:0;padding:0;min-width:0}.choices519 legend{font-weight:700;padding-block:.6rem}.delivery516 .choice519{margin:0;display:flex;gap:.6rem;align-items:flex-start;padding:1rem;border:2px solid #c3c8df;border-radius:.8rem;background:#fff;cursor:pointer;min-width:0}.choice519:has(input:checked){border-color:#5941a3;background:#f5f0ff}.choice519 input{margin-top:.2rem;min-width:20px;min-height:20px;flex:none;accent-color:#5941a3}.choice519 span{display:grid;gap:.4rem}.choice519 small{font-size:.9rem;line-height:1.45}.choice519:focus-within{outline:3px solid #3772d2;outline-offset:3px}#workspace512 details{scroll-margin-top:1rem}#workspace512 input,#workspace512 select,#workspace512 textarea{font-size:1rem;max-width:100%;box-sizing:border-box}#workspace512 .actions512 button{min-height:48px}.demo-start519{margin-top:1.5rem}#scope519:empty{display:none}.top512 span{font-weight:600}#status512:not(:empty){padding:1rem;border-left:4px solid #5c4ca4;background:#f4f2fc;border-radius:.5rem;overflow-wrap:anywhere}#main512{max-width:1100px}#workspace512 .text-label512{display:grid;gap:.45rem}
@media(max-width:650px){.progress519{gap:.2rem}.progress519 li{display:block;font-size:.76rem;line-height:1.3;padding:.45rem .25rem}.progress519 li span{margin-bottom:.35rem}.choices519{grid-template-columns:1fr}.top512{gap:.65rem}.top512 span{display:none}.top512 button{margin-left:auto}.delivery516 .actions512>*{width:100%}.context519{padding:.5rem .8rem}}
@media(prefers-reduced-motion:reduce){#workspace512 *,#steps512 *{scroll-behavior:auto;animation:none;transition:none}}
@media print{.progress519,.top512,#status512{display:none}}
