.tool-link{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:9px;padding:.65rem .9rem;font-weight:700;font-size:.9rem;background:white;color:var(--navy)}
.q-name-form{max-width:440px;display:grid;gap:.8rem}.q-name-form label{font-size:1.15rem;font-weight:700}.q-name-form input,.teacher-field input,.teacher-field select{width:100%;min-height:46px;padding:.7rem .85rem;border:2px solid #b7c7d9;border-radius:9px;font:inherit;color:var(--navy);background:white}.q-name-form button{justify-self:start;margin-top:.4rem}.q-error{margin:1rem 0 0;background:#fce7e7;border:1px solid #bf5555;color:#872222;border-radius:9px;padding:.8rem 1rem}.q-error[hidden]{display:none}.q-progress{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.95rem;color:#52657b;margin-bottom:.6rem}.recorded-quiz progress{height:8px;width:100%;accent-color:var(--accent);margin-bottom:1.3rem;display:block}.recorded-quiz .question{font-size:1.25rem;line-height:1.4}.q-stimulus{background:#f1f5fa;border-radius:12px;padding:1rem;display:flex;justify-content:center;margin-bottom:1rem}.q-stimulus code{font-size:1.35rem;white-space:pre-wrap;line-height:1.6}.q-colour{width:180px;height:90px;border:2px solid #9cadbf;border-radius:8px}.q-answers button:disabled{opacity:1;color:var(--navy);cursor:default}.q-answers .q-correct{background:#e1f5ea;border-color:#238356}.q-answers .q-wrong{background:#fce4e4;border-color:#b34444}.q-answers .q-pending{border-color:var(--accent)}.q-feedback{margin-top:1.1rem;padding:1rem;border-radius:10px;line-height:1.5}.q-feedback p{margin-top:.35rem}.q-good{background:#e1f5ea;color:#145638}.q-revisit{background:#fff1d9;color:#654412}.q-finished{text-align:center;padding:1rem;line-height:1.7}.q-saved{display:block;font-size:2.8rem;color:#207c51}.q-score{font-size:3rem;font-weight:700;line-height:1.3;margin:.75rem 0}.q-score span{font-size:1.6rem;color:#52657b}.q-link{padding:.75rem 1rem;border-radius:9px}.q-feedback:focus,.question:focus{outline:2px solid var(--accent);outline-offset:4px}
@media(max-width:700px){.tools{flex-wrap:wrap;justify-content:flex-end;gap:.35rem}.tool-link{font-size:.85rem;padding:.5rem .65rem}.modes{flex-wrap:wrap}.modes a{flex:1 0 28%;min-width:0}.q-progress{font-size:.85rem}}
