.assignment-section,.remediation-section,.certificates-section{padding-top:72px}.assignment-header,.remediation-header,.certificates-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.assignment-header h2,.remediation-header h2,.certificates-header h2{margin:14px 0 8px;color:var(--ink);font-family:var(--font-display);font-size:clamp(27px,3vw,42px)}.assignment-header h2 em,.remediation-header h2 em,.certificates-header h2 em{color:var(--gold)}.assignment-header p,.remediation-header p,.certificates-header p{max-width:650px;color:var(--muted);line-height:1.6;font-size:12px}.assignment-builder{display:grid;grid-template-columns:1.5fr .8fr .8fr 1.2fr auto;align-items:end;gap:10px;margin-top:20px;padding:16px;border:1px solid var(--line);background:#0a1728b8}.assignment-builder label{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:10px}.assignment-builder input,.assignment-builder select{min-width:0;padding:10px;color:var(--ink);background:#030c18cc;border:1px solid var(--line)}.assignment-builder .primary-action{display:flex;align-items:center;gap:6px;white-space:nowrap}.assignment-result{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;padding:12px 15px;border:1px solid rgba(241,198,107,.35);background:#f1c66b12}.assignment-result span{display:grid;gap:4px;min-width:0}.assignment-result strong{color:var(--gold)}.assignment-result small{overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.assignment-result button,.assignment-result a,.assignment-banner a{display:flex;align-items:center;gap:6px;padding:8px 10px;color:var(--gold);background:transparent;border:1px solid rgba(241,198,107,.3);font-size:10px;text-decoration:none}.assignment-banner{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:22px;padding:14px 18px;border-left:3px solid var(--gold);background:#f1c66b14}.assignment-banner div{display:grid;gap:3px}.assignment-banner strong{color:var(--ink);font-family:var(--font-display)}.assignment-banner small{color:var(--muted);font-size:10px}.remediation-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:14px;margin-top:22px}.remediation-list{display:grid;gap:10px}.remediation-card{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px;border:1px solid var(--line);background:#0a1728b8}.remediation-card h3{margin:4px 0;color:var(--ink);font-family:var(--font-display)}.remediation-card p{margin:0;color:var(--muted);font-size:10px}.remediation-card button,.retry-actions button:not(.primary-action),.certificate-card button{display:flex;align-items:center;gap:6px;color:var(--gold);background:transparent;border:1px solid rgba(241,198,107,.3);padding:8px 10px;font-size:10px;white-space:nowrap}.retry-panel,.remediation-empty{min-height:250px}.retry-panel>p{color:var(--ink);line-height:1.6}.retry-panel label{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:10px}.retry-panel input{margin-top:4px;padding:10px;color:var(--ink);background:#030c18cc;border:1px solid var(--line)}.retry-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.hint-stack{display:grid;gap:7px;margin:12px 0}.hint-stack p{display:flex;gap:6px;margin:0;padding:8px;color:var(--gold);background:#f1c66b14;font-size:10px}.remediation-empty{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:8px}.remediation-empty svg{color:var(--gold)}.remediation-empty h3{margin:0;color:var(--ink);font-family:var(--font-display)}.remediation-empty p{max-width:430px;color:var(--muted);font-size:11px;line-height:1.6}.certificate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}.certificate-card{display:flex;align-items:center;gap:12px;min-height:120px;padding:16px;border:1px solid var(--line);background:#0a1728b8}.certificate-card--unlocked{border-color:#f1c66b8c;box-shadow:0 0 24px #f1c66b14}.certificate-seal{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;color:var(--gold);border:1px solid var(--gold);border-radius:50%}.certificate-card h3{margin:5px 0;color:var(--ink);font-family:var(--font-display)}.certificate-card p{margin:0;color:var(--muted);font-size:10px;line-height:1.5}.certificate-card button{margin-left:auto}.certificate-lock{margin-left:auto;color:var(--muted);font-size:10px}.certificate-print{display:none}@media (max-width:950px){.assignment-builder{grid-template-columns:repeat(2,minmax(0,1fr))}.assignment-builder .primary-action{justify-content:center}.remediation-grid{grid-template-columns:1fr}}@media (max-width:650px){.assignment-header,.remediation-header,.certificates-header{align-items:flex-start;flex-direction:column}.assignment-builder{grid-template-columns:1fr}.assignment-result,.assignment-banner{align-items:flex-start;flex-direction:column}.assignment-result{width:100%}.assignment-result small{max-width:calc(100vw - 70px)}.certificate-grid{grid-template-columns:1fr}.certificate-card{align-items:flex-start;flex-wrap:wrap}.certificate-card button,.certificate-lock{margin-left:54px}}@media print{body[data-certificate] *{visibility:hidden!important}body[data-certificate] .certificate-print,body[data-certificate] .certificate-print *{visibility:visible!important}body[data-certificate] .certificate-print{display:flex;position:absolute;inset:0;align-items:center;justify-content:center;flex-direction:column;gap:18px;padding:60px;color:#0b1c31;text-align:center;border:18px solid #0b1c31}body[data-certificate] .certificate-print svg{color:#c89d3c}body[data-certificate] .certificate-print h1{color:#0b1c31;font-family:Georgia,serif;font-size:44px}body[data-certificate] .certificate-print strong{color:#b48527;font-family:Georgia,serif;font-size:34px}body[data-certificate] .certificate-print p{max-width:520px;color:#29384b;font-size:16px;line-height:1.6}}
