:root{font-family:system-ui,sans-serif;color:#153d41;background:#f6f8f5;line-height:1.6}*{box-sizing:border-box}body{margin:0}header{background:#fff;border-bottom:1px solid #dce5dc;display:flex;justify-content:space-between;align-items:center;padding:1.25rem max(5vw,1rem)}a{color:#176765}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #d28b22;outline-offset:4px}.brand{font-weight:800;text-decoration:none;font-size:1.3rem;display:flex;align-items:center;gap:.75rem}.brand img{width:3rem;height:3rem;object-fit:contain}.header-actions{display:flex;align-items:center;gap:1rem}#switch-user{background:#ecf4f1;color:#153d41;border:1px solid #b7cdca;padding:.45rem .7rem;font-size:.9rem}main{max-width:1080px;margin:3rem auto;padding:0 1.25rem}h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.15;max-width:760px}h2{line-height:1.2}.eyebrow{font-size:.85rem;letter-spacing:.12em;font-weight:700}#welcome{max-width:780px;padding-bottom:2rem}.button,button{display:inline-block;background:#176765;color:white;padding:.8rem 1.15rem;border:0;border-radius:.5rem;text-decoration:none;font:inherit;cursor:pointer}.note,footer{font-size:.9rem;color:#4b6263}.note{max-width:600px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:1.25rem}.card{background:white;padding:1.5rem;border:1px solid #dce5dc;border-radius:.8rem}.card img{width:120px;height:auto}.card ul{padding-left:1.25rem}.card li{margin:.65rem 0}.card li button{background:none;color:#176765;padding:.25rem 0;text-align:left;text-decoration:underline}video{width:100%;max-height:65vh;background:#000;border-radius:.6rem}fieldset{border:1px solid #b7cdca;border-radius:.6rem;padding:1rem;margin:1.5rem 0;min-width:0}legend{font-weight:700;padding:0 .5rem}fieldset label{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;border-radius:.4rem;cursor:pointer}fieldset label:hover{background:#eaf1ec}input[type=radio]{flex:none;width:1.2rem;height:1.2rem;margin-top:.25rem;accent-color:#176765}button:disabled{opacity:.65;cursor:wait}#lesson{margin-top:3rem;scroll-margin-top:1rem}#lesson:focus{outline:0}footer{max-width:1080px;padding:2rem 1.25rem;margin:auto}[hidden]{display:none!important}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
#portal-links{display:flex;gap:1rem;flex-wrap:wrap;background:#eaf1ec;border-radius:.7rem;padding:1rem;margin-bottom:2rem}
#portal-links a{font-weight:700}
#lesson,#library,#director{padding-top:2rem;border-top:1px solid #dce5dc;margin-top:3rem}
#lesson{max-width:850px}
#lesson p{max-width:75ch}
#lesson audio{display:block;max-width:100%;margin:1rem 0}
.course-completion{border-top:1px solid #dce5dc;margin-top:1.5rem;padding-top:.5rem}
.course-completion h3{font-size:1rem}
.report-centre{background:white;border:1px solid #dce5dc;border-radius:.8rem;padding:1rem 1.5rem;margin:1.25rem 0}
.report-row{border-top:1px solid #dce5dc;padding:1rem 0}
.report-row>button{background:none;color:#176765;padding:0;text-align:left;text-decoration:underline;font-weight:700}
.report-row p{margin:.4rem 0}
.employee-detail{background:#f6f8f5;border-radius:.6rem;padding:1rem;margin-top:1rem}
.record{border-top:1px solid #dce5dc;padding:.75rem 0}
.record h5,.record h6{font-size:1rem;margin:.5rem 0}
.record ul{margin:.25rem 0 1rem}
.record form{display:grid;gap:.75rem;margin-top:1rem;max-width:34rem}
.record label{display:grid;font-weight:700}
.record textarea{min-height:5rem;font:inherit;padding:.5rem;border:1px solid #9ab8b1;border-radius:.4rem}
.certificate{max-width:800px;min-height:600px;background:#fff;border:8px double #176765;padding:4rem;margin:2rem auto;text-align:center}
.certificate h1{margin:1rem auto}
.certificate strong{display:block;font-size:2rem}
@media(max-width:650px){header{align-items:flex-start;gap:1rem}.header-actions{flex-direction:column;align-items:flex-end}.header-actions span{display:none}.brand{font-size:1.1rem}.brand img{width:2.3rem;height:2.3rem}}
@media print{body{background:#fff}.certificate{border:8px double #176765;min-height:80vh;margin:0;max-width:none}header,footer,#switch-user{display:none!important}}
