@font-face{font-family:CourseSans;src:url('assets/NotoSans-Regular.ttf') format('truetype');font-display:swap}
:root{--navy:#102b44;--ink:#253c50;--muted:#607080;--gold:#b68233;--teal:#14b8a6;--teal-deep:#087b72;--teal-soft:#eef8f5;--blue:#087b72;--paper:#f5f4ef;--line:#dce1e3;--good:#146348;--bad:#a33131}
*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 CourseSans,system-ui,sans-serif}button,input,textarea,select{font:inherit}a{color:var(--blue)}button,a,input,select,textarea,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--teal-deep);outline-offset:3px}.skip{position:absolute;left:12px;top:-100px}.skip:focus{top:8px;background:#fff;z-index:20;padding:10px}.site-header{height:82px;display:flex;align-items:center;gap:28px;justify-content:space-between;padding:0 max(24px,calc((100vw - 1200px)/2));border-bottom:1px solid var(--line);background:#fff}.brand{font:800 26px/1.2 system-ui,sans-serif;color:var(--navy);text-decoration:none}.brand span{color:var(--teal-deep)}.site-header>a:last-child{font-size:14px}.header-label,.eyebrow{font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:var(--blue)}.header-label{margin-right:auto;padding-left:25px;border-left:1px solid var(--line)}.eyebrow{margin:0 0 14px}.welcome{max-width:1200px;margin:auto;padding:72px 24px 80px;display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:start}.welcome-copy{padding-top:14px}.welcome-copy h1{font-family:Georgia,serif;font-size:clamp(35px,3.8vw,50px);line-height:1.17;font-weight:500;letter-spacing:-.035em;margin:20px 0 25px;color:var(--navy)}.welcome-copy h1 em{font-weight:400;color:var(--teal-deep)}.lead{font-size:20px;line-height:1.4;color:var(--navy)}.course-facts{display:flex;gap:28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:23px 0;margin:30px 0}.course-facts span{font-size:12px;color:var(--muted)}.course-facts strong{display:block;font-size:18px;color:var(--navy);margin-bottom:3px}.approval-card{display:flex;gap:20px;align-items:center}.approval-card img{flex-shrink:0;object-fit:contain;border-radius:4px}.approval-card strong{font-size:14px}.approval-card p{font-size:12px;margin:5px 0}.auth-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:34px;box-shadow:0 18px 55px #102b4408}.auth-card h2{font-family:Georgia,serif;font-size:30px;font-weight:500;margin:8px 0 15px}.auth-card p{font-size:14px}.auth-card>details{border-top:1px solid var(--line);margin-top:25px;padding-top:20px}summary{cursor:pointer;font-weight:650;font-size:14px}.small{font-size:12px;color:var(--muted)}.message{min-height:1.5em}.bad{color:var(--bad)}.good{color:var(--good)}h1,h2,h3{color:var(--navy);line-height:1.3}h2{font-size:26px}h3{font-size:20px}label{display:block;font-size:14px;font-weight:650;margin:18px 0 8px}input,select,textarea{width:100%;border:1px solid #9aaab5;border-radius:7px;padding:12px;background:#fff;color:var(--ink)}textarea{min-height:90px;resize:vertical}button{border:1px solid transparent;border-radius:7px;background:var(--teal-deep);color:#fff;padding:12px 18px;font-size:14px;font-weight:650;cursor:pointer;min-height:44px}button:hover{background:#06675f}button:disabled{opacity:.5;cursor:default}.button-secondary{background:#fff;border-color:var(--line);color:var(--navy)}.button-secondary:hover{background:#edf3f5}.text-button{background:transparent;color:var(--blue);padding:5px 10px}.text-button:hover{background:#e6edf0}#login-form button{width:100%;margin-top:18px}.account-tools{max-width:1200px;margin:auto;padding:18px 24px;display:flex;align-items:center;justify-content:space-between;font-size:13px;gap:16px;overflow-wrap:anywhere}#access-message{max-width:680px;margin:35px auto}.course-shell{max-width:1200px;margin:8px auto 50px;display:grid;grid-template-columns:290px minmax(0,1fr);gap:24px;padding:0 24px}.course-sidebar{position:sticky;top:24px;align-self:start;padding:24px 8px 24px 0}.course-sidebar h1{font-size:21px}.progress-track{height:6px;background:#dfe5e5;border-radius:8px;overflow:hidden;margin-top:26px}.progress-track span{display:block;height:100%;background:var(--teal);transition:width .3s}#unit-nav{display:grid;gap:7px;margin:22px 0}#unit-nav button{background:transparent;color:var(--ink);border:1px solid transparent;text-align:left;font-size:13px;padding:12px}#unit-nav button.active{background:var(--teal-soft);border-color:#b7dcd5;box-shadow:0 5px 12px #102b4406}#unit-nav button.done::after{content:' ✓';color:var(--good)}.course-content{background:#fff;border:1px solid var(--line);border-radius:15px;padding:36px;min-width:0}.notice{font-size:12px;background:#edf4ef;border:1px solid #d6e4da;border-radius:7px;padding:13px 16px;margin-bottom:26px}#test-notice{background:#fff0e7;color:#8c341c}#unit-content{font-size:16px}#unit-content h2{font-family:Georgia,serif;font-size:31px;font-weight:500;margin:16px 0 24px}#unit-content h3{font-size:19px;margin-top:30px}#unit-content pre{background:#102b44;color:#fff;border-radius:10px;padding:22px;white-space:pre-wrap;line-height:1.8;font-size:14px;overflow-wrap:anywhere}#unit-content li{margin:8px 0}#unit-content table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;margin:22px 0;font-size:13px}th,td{padding:12px;border:1px solid var(--line);text-align:left}th{background:#f0f4f4}.study-note{background:#f3f8f4;border-left:3px solid var(--teal);padding:18px 22px;margin:24px 0}.study-note h3{margin-top:0!important}.lesson-footer,.lesson-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:20px;margin-top:30px;border-top:1px solid var(--line)}.lesson-footer strong{font-size:14px}.lesson-footer p{margin:5px 0;max-width:350px}.lesson-actions{border:0;padding:0}.panel{margin-top:40px;padding-top:30px;border-top:1px solid var(--line)}.check{display:flex;gap:12px;align-items:flex-start;font-weight:400}.check input{width:18px;height:18px;flex-shrink:0;margin-top:4px}.exam-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.exam-heading h2{margin:8px 0}.exam-heading>div:last-child{text-align:right;white-space:nowrap}#exam-timer{font-size:24px;font-variant-numeric:tabular-nums;display:block}.question{margin:27px 0;border:1px solid var(--line);border-radius:10px;padding:20px;min-width:0}.question legend{font-size:15px;font-weight:650;padding:0 6px;line-height:1.6}.option{display:flex;align-items:flex-start;gap:12px;padding:10px;border:1px solid transparent;border-radius:6px;margin:7px 0;font-weight:400}.option:has(input:checked){background:var(--teal-soft);border-color:#91c9bf}.option input{width:18px;height:18px;flex-shrink:0;margin-top:3px}.rating-row{display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:20px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line)}.rating-row label{margin:0;font-weight:400}.rating-row select{font-size:13px}.review-item{padding:17px 0;border-bottom:1px solid var(--line)}.review-item p,.review-item li{font-size:14px}.certificate-wrap{max-width:1000px;margin:35px auto 60px;padding:0 24px}.certificate-actions{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.certificate-actions p{margin:5px 0;font-size:13px}.certificate{background:#fff;border:2px solid var(--gold);outline:1px solid #d9dde0;outline-offset:-10px;padding:42px;text-align:center;position:relative}.certificate-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.certificate-top img{object-fit:contain}.certificate-name{font:36px/1.3 Georgia,serif;border-bottom:1px solid var(--gold);padding-bottom:15px;margin:20px auto;max-width:600px;overflow-wrap:anywhere}.certificate h3{font:25px/1.4 Georgia,serif;max-width:600px;margin:18px auto}.certificate-facts{display:flex;justify-content:center;gap:35px;margin:30px 0}.certificate-facts strong,.certificate-facts span{display:block}.certificate-facts strong{font-size:16px}.certificate-facts span{font-size:11px;color:var(--muted);margin-top:4px}.certificate-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;margin-top:30px;padding-top:15px;font-size:10px;overflow-wrap:anywhere}.test-watermark{background:#fff0e7;color:#a33131;font-weight:800;padding:12px;margin-bottom:15px}footer{border-top:1px solid var(--line);max-width:1200px;margin:auto;padding:28px 24px 38px;color:var(--muted);font-size:12px}footer>p:nth-child(2){max-width:800px;font-size:11px}footer>div{display:flex;flex-wrap:wrap;gap:22px}footer a{text-decoration:none}
@media(max-width:1000px){.welcome{gap:35px;padding-top:45px}.course-shell{grid-template-columns:240px minmax(0,1fr)}.course-content{padding:25px}.rating-row{grid-template-columns:1fr}.course-facts{gap:18px}}
@media(max-width:760px){.header-label{display:none}.site-header{height:68px}.welcome{grid-template-columns:1fr;padding:35px 22px 45px;gap:28px}.welcome-copy h1{font-size:40px}.auth-card{padding:26px}.course-shell{grid-template-columns:1fr;padding:0 16px;gap:5px}.course-sidebar{position:static;padding:10px 8px}.course-sidebar h1{font-size:23px}#unit-nav{grid-template-columns:1fr 1fr;gap:4px}.course-sidebar>p:last-child{display:none}.course-content{padding:24px 20px}.account-tools{padding:14px 18px;flex-wrap:wrap}.account-tools>div{margin-left:auto}.certificate{padding:25px 20px}.certificate-top img{width:70px;height:70px}.certificate-name{font-size:28px}.certificate h3{font-size:21px}.certificate-facts{gap:20px;flex-wrap:wrap}.certificate-bottom{flex-direction:column;gap:6px}.certificate-actions{align-items:flex-start;flex-direction:column}.lesson-footer{align-items:flex-start;flex-direction:column}.question{padding:14px}.option{padding:9px 2px}#access-message{margin:20px 16px}.brand{font-size:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{body{background:#fff}body>*:not(main),main>*:not(#completion-panel),.certificate-actions,#certificate-message{display:none!important}.certificate-wrap{display:block!important;margin:0;padding:0;max-width:none}.certificate{padding:25px;break-inside:avoid}.certificate-name{font-size:30px}a{color:inherit;text-decoration:none}@page{size:letter landscape;margin:12mm}}

input[type="checkbox"],input[type="radio"]{accent-color:var(--teal-deep)}
