*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#f5f6f8;color:#1d2733}header{height:64px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;background:white;border-bottom:1px solid #dfe3e8}.dev{margin-left:10px;font-size:12px;border:1px solid #bbb;padding:2px 6px;border-radius:4px}.page{max-width:1200px;margin:32px auto;padding:0 24px}.auth{min-height:100vh;display:grid;place-items:center;padding:24px}.panel{width:100%;max-width:420px;background:white;padding:32px;border:1px solid #dfe3e8;border-radius:10px}.panel form{display:grid;gap:16px}label{display:grid;gap:6px;font-weight:600}input{padding:11px;border:1px solid #bcc4ce;border-radius:6px;font:inherit}button,.button{display:inline-block;padding:10px 14px;border:0;border-radius:6px;background:#26384c;color:white;text-decoration:none;font:inherit;cursor:pointer}.linkbtn{background:transparent;color:#26384c;padding:6px}.error{padding:10px;margin:12px 0;background:#fff0f0;border:1px solid #d88}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.card{background:white;border:1px solid #dfe3e8;border-radius:8px;padding:18px}.card h3{margin:8px 0}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:.06em;color:#5c6773}.assignment{border-left:4px solid #6b7280}section{margin-top:32px}
#h5p-container{min-height:300px}
.completion-banner{display:flex;gap:18px;align-items:flex-start;background:#eef8f0;border:1px solid #b9ddc0;border-left:5px solid #2f7d3e;border-radius:10px;padding:20px;margin:24px 0}.completion-banner h2{margin:0 0 8px}.completion-banner p{margin:6px 0}.completion-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#2f7d3e;color:#fff;font-size:26px;font-weight:700;flex:0 0 auto}.review-options{margin-top:26px;background:#fff;border:1px solid #dfe3e8;border-radius:10px;padding:16px 18px}.review-options summary{cursor:pointer;font-size:1.05rem;font-weight:700}.review-options>p{margin:14px 0 20px}.review-grid{margin-top:8px}.completed-format{border:2px solid #2f7d3e;background:#f7fcf8}.button.secondary{background:#eef1f4;color:#26384c;border:1px solid #b8c0c8}
