.assessment-entry{margin:0 0 22px;padding:20px 22px;border:1px solid #cfe3fb;border-radius:24px;background:linear-gradient(135deg,#f8fbff,#eef7ff);display:flex;gap:22px;align-items:center;justify-content:space-between;box-shadow:0 10px 30px rgba(30,86,160,.08)}
.assessment-entry-copy h2,.assessment-progress-section h2{margin:.1rem 0 .35rem}.assessment-entry-copy p{margin:.2rem 0;color:#52708f}.assessment-entry-actions{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:12px;min-width:min(480px,48%)}
.assessment-status-card{display:flex;flex-direction:column;gap:3px;padding:14px 16px;border:1px solid #d8e5f4;border-radius:18px;background:#fff;text-decoration:none;color:#173760}.assessment-status-card span{font-size:.82rem;color:#57708a}.assessment-status-card strong{font-size:1.2rem}.assessment-status-card small{color:#74879a}.assessment-status-card.is-done{border-color:#8cd5b2;background:#f2fff8}.assessment-status-card.is-locked{opacity:.7}
.assessment-progress-section{margin:22px 0;padding:20px;border-radius:24px;background:#fff;border:1px solid #dce8f5}.assessment-progress-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.assessment-progress-grid article{padding:18px;border-radius:18px;background:#f5f9ff;border:1px solid #deebf8;display:flex;flex-direction:column;gap:6px}.assessment-progress-grid strong{font-size:2rem;color:#173760}.assessment-progress-grid strong span{font-size:1rem;color:#60758b}.assessment-progress-grid a{font-weight:700;color:#236bd8;text-decoration:none}.assessment-progress-grid .assessment-gain{background:linear-gradient(135deg,#effaf5,#f6fbff)}
#view-assessment{max-width:1080px;margin:0 auto;padding:24px}.assessment-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.assessment-heading h1{margin:.15rem 0}.assessment-heading p{color:#5c7187}.assessment-phase{display:grid;place-items:center;width:88px;height:88px;border-radius:28px;font-size:1.25rem;font-weight:900;color:#fff;background:linear-gradient(135deg,#236bd8,#173760);box-shadow:0 14px 34px rgba(35,107,216,.22)}.assessment-phase.post{background:linear-gradient(135deg,#19a866,#087b4d)}
.assessment-form{display:grid;gap:14px}.assessment-question{margin:0;padding:18px 20px 20px;border:1px solid #dce8f5;border-radius:20px;background:#fff}.assessment-question legend{display:flex;gap:10px;align-items:flex-start;font-weight:800;color:#173760;padding:0 8px}.assessment-question legend span{flex:0 0 32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#eaf3ff;color:#236bd8}.assessment-options{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:14px}.assessment-options label{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid #dce8f5;border-radius:14px;cursor:pointer;background:#fafcff}.assessment-options label:has(input:checked){border-color:#236bd8;background:#edf5ff}.assessment-options input{margin-top:4px;accent-color:#236bd8}.assessment-submit-bar{position:sticky;bottom:12px;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;border:1px solid #cfe0f3;border-radius:18px;background:rgba(255,255,255,.96);box-shadow:0 10px 28px rgba(25,66,110,.14);backdrop-filter:blur(10px)}.assessment-submit-bar div{display:flex;flex-direction:column}.assessment-submit-bar small{color:#6a7c8f}
.assessment-result-card{max-width:720px;margin:40px auto;padding:36px;border:1px solid #d8e5f4;border-radius:28px;background:#fff;text-align:center;box-shadow:0 16px 40px rgba(25,66,110,.12)}.assessment-result-icon{width:76px;height:76px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:#eaf8f0;color:#11945a;font-size:2.2rem;font-weight:900}.assessment-score{display:flex;align-items:baseline;justify-content:center;gap:8px;margin:12px 0}.assessment-score strong{font-size:4rem;color:#173760}.assessment-score span{font-size:1.5rem;color:#61778c}.assessment-gain-note{margin:14px auto;padding:12px 16px;border-radius:14px;background:#eff7ff;color:#173760;font-weight:800}.assessment-result-actions{display:flex;justify-content:center;gap:10px;margin-top:22px}
.cloud-assessment-report{margin-bottom:18px}.cloud-assessment-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.cloud-assessment-summary article{padding:14px;border-radius:16px;background:#f4f8fd}.cloud-assessment-summary strong{display:block;font-size:1.55rem;color:#173760}.assessment-pass{color:#138a55;font-weight:800}.assessment-wait{color:#73859a}.assessment-fail{color:#c05640;font-weight:800}
@media(max-width:800px){.assessment-entry{align-items:stretch;flex-direction:column}.assessment-entry-actions{min-width:0;width:100%}.assessment-progress-grid,.assessment-options,.cloud-assessment-summary{grid-template-columns:1fr}.assessment-submit-bar{position:static;align-items:stretch;flex-direction:column}.assessment-submit-bar button{width:100%}.assessment-heading{align-items:flex-start}.assessment-phase{width:68px;height:68px;border-radius:22px}}

/* PA demo mode: presentation/testing data only; never persisted to server. */
.pa-demo-actions{display:flex;gap:.55rem;flex-wrap:wrap;justify-content:flex-end}
.pa-demo-banner{margin:0 0 1rem;padding:.85rem 1rem;border:2px solid #f59e0b;border-radius:14px;background:#fffbeb;color:#92400e;display:flex;gap:.45rem 1rem;align-items:center;flex-wrap:wrap}
.pa-demo-banner strong{font-weight:800;letter-spacing:.02em}
.pa-demo-banner span{font-size:.92rem}
.cloud-assessment-report.is-demo{outline:3px solid rgba(245,158,11,.28);outline-offset:2px}
.cloud-assessment-report.is-demo .cloud-assessment-summary article{background:#fffbeb}
@media(max-width:720px){.pa-demo-actions{justify-content:flex-start}.pa-demo-banner{align-items:flex-start;flex-direction:column}}

/* Teacher question bank */
.teacher-exam-bank{margin-bottom:1rem}.exam-bank-actions{display:flex;gap:.5rem;flex-wrap:wrap}.exam-bank-actions .is-active{background:#173760;color:#fff;border-color:#173760}.exam-bank-note{display:flex;gap:.75rem;align-items:flex-start;margin:.75rem 0 1rem;padding:.8rem 1rem;border-radius:14px;background:#f7fbff;border:1px solid #d8e8f7}.exam-bank-note strong{color:#173760;white-space:nowrap}.exam-bank-meta{display:flex;gap:.7rem;align-items:baseline;flex-wrap:wrap;margin-bottom:.8rem}.exam-bank-meta strong{font-size:1.05rem;color:#173760}.exam-bank-meta span{color:#62748a}.exam-bank-questions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.exam-bank-question{border:1px solid #dde6ef;border-radius:16px;padding:1rem;background:#fff}.exam-q-head{display:flex;gap:.65rem;align-items:flex-start}.exam-q-head>span{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:9px;background:#173760;color:#fff;font-weight:800}.exam-q-head strong{line-height:1.45}.exam-q-options{margin:.75rem 0 0 2.45rem;display:grid;gap:.35rem}.exam-q-options>div{display:grid;grid-template-columns:24px 1fr auto;gap:.35rem;padding:.35rem .45rem;border-radius:8px}.exam-q-options .is-answer{background:#eaf8ef;color:#14532d}.exam-q-options b{font-size:.78rem;color:#15803d}.exam-bank-actions button{white-space:nowrap}@media(max-width:900px){.exam-bank-questions{grid-template-columns:1fr}.exam-bank-actions{width:100%}.exam-bank-actions button{flex:1 1 180px}}

/* v0.9.13.1 Post-test gate: P.6 assessment unlocks after Sequence, Loop and Debug checkpoints. */
.assessment-post-lock .assessment-result-icon{background:#fff4df;color:#9a5c00}.assessment-gate-count{display:flex;justify-content:center;align-items:baseline;gap:.4rem;margin:1rem 0}.assessment-gate-count strong{font-size:2.6rem;color:#173760}.assessment-gate-count span{color:#61778c;font-weight:700}.assessment-gate-list{list-style:none;margin:1rem auto 0;padding:0;max-width:560px;display:grid;gap:.65rem;text-align:left}.assessment-gate-list li{display:flex;gap:.8rem;align-items:center;padding:.8rem .9rem;border:1px solid #dce8f5;border-radius:14px;background:#f8fbff}.assessment-gate-list li>span{flex:0 0 34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#e7eef7;color:#5f7186;font-weight:900}.assessment-gate-list li div{display:flex;flex-direction:column}.assessment-gate-list li small{color:#72849a}.assessment-gate-list li.is-done{background:#f1fbf5;border-color:#9dd8b9}.assessment-gate-list li.is-done>span{background:#1aa566;color:#fff}.assessment-status-card.is-locked{cursor:pointer}
