:root { --assessment-bg: #111425; --assessment-panel: #191d33; --assessment-line: rgba(255,255,255,.11); --assessment-text: #f5f7ff; --assessment-muted: #aeb5ce; --assessment-accent: #ffbf00; --assessment-green: #37e58c; --assessment-red: #ff6b78; }
.assessment-page { max-width: 1120px; margin: 10rem auto 5rem; padding: 0 2rem; color: var(--assessment-text); }
.assessment-narrow { max-width: 860px; }
.assessment-heading, .attempt-topbar { display:flex; align-items:flex-start; justify-content:space-between; gap:2rem; margin-bottom:2.5rem; }
.assessment-heading h1, .attempt-topbar h1 { font-size: clamp(2.8rem, 4vw, 4.6rem); line-height:1.1; margin:.5rem 0 1rem; color:#fff; text-transform:none; }
.assessment-heading p { color:var(--assessment-muted); font-size:1.6rem; max-width:720px; line-height:1.7; }
.assessment-eyebrow { display:block; color:var(--assessment-accent); text-transform:uppercase; letter-spacing:.16em; font-weight:800; font-size:1.1rem; }
.assessment-panel, .question-card, .assessment-summary, .attempt-history, .result-hero { background:linear-gradient(145deg, rgba(30,35,61,.98), rgba(19,22,40,.98)); border:1px solid var(--assessment-line); border-radius:1.6rem; box-shadow:0 20px 50px rgba(0,0,0,.2); }
.assessment-panel { padding:2.5rem; }
.assessment-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.8rem; }
.assessment-field { display:flex; flex-direction:column; gap:.7rem; color:#fff; font-size:1.35rem; font-weight:700; }
.assessment-field-wide { grid-column:1/-1; }
.assessment-field input, .assessment-field textarea, .assessment-field select, .alternative-row input:last-child { width:100%; color:#fff; background:#0e1120; border:1px solid var(--assessment-line); border-radius:.9rem; padding:1.2rem 1.3rem; font-size:1.4rem; outline:none; }
.assessment-field input:focus, .assessment-field textarea:focus, .assessment-field select:focus, .alternative-row input:last-child:focus { border-color:var(--assessment-accent); box-shadow:0 0 0 3px rgba(255,191,0,.12); }
.assessment-field small { color:var(--assessment-muted); font-weight:400; }
.assessment-options { display:flex; flex-wrap:wrap; gap:1.2rem 2.4rem; padding:2rem 0; color:#fff; font-size:1.35rem; }
.assessment-options label, .question-active { display:flex; align-items:center; gap:.8rem; }
.assessment-options input, .question-active input { accent-color:var(--assessment-accent); }
.assessment-time-field { max-width:320px; margin-bottom:2rem; }
.assessment-btn { display:inline-flex; justify-content:center; align-items:center; border:1px solid transparent; border-radius:.9rem; padding:1.1rem 1.6rem; font-size:1.35rem; font-weight:800; cursor:pointer; text-decoration:none; transition:.2s ease; }
.assessment-btn-primary { background:var(--assessment-accent); color:#171717; }
.assessment-btn-primary:hover { transform:translateY(-1px); box-shadow:0 8px 24px rgba(255,191,0,.22); color:#171717; }
.assessment-btn-muted { background:rgba(255,255,255,.06); border-color:var(--assessment-line); color:#fff; }
.assessment-btn-block { display:flex; width:100%; margin-top:2rem; }
.question-builder-header { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin:3rem 0 1.5rem; }
.question-builder-header h2, .attempt-history h2 { color:#fff; font-size:2.3rem; margin:.4rem 0 0; }
.question-card { padding:2rem; margin-bottom:1.5rem; }
.question-card-header { display:flex; justify-content:space-between; gap:1rem; align-items:center; margin-bottom:1.4rem; font-size:1.5rem; }
.question-actions { display:flex; gap:.6rem; }
.question-actions button { border:1px solid var(--assessment-line); background:#0e1120; color:#fff; border-radius:.6rem; padding:.65rem .9rem; cursor:pointer; }
.question-active { color:var(--assessment-muted); font-size:1.25rem; margin:1rem 0; }
.alternatives-list { display:grid; gap:.9rem; }
.alternative-row { display:grid; grid-template-columns:auto 3.4rem 1fr; align-items:center; gap:.8rem; }
.alternative-row input[type=radio], .student-alternatives input { accent-color:var(--assessment-accent); }
.alternative-letter { display:inline-flex; align-items:center; justify-content:center; width:3.2rem; height:3.2rem; border-radius:.8rem; background:rgba(255,191,0,.12); color:var(--assessment-accent); font-weight:900; font-size:1.35rem; }
.assessment-form-actions { display:flex; justify-content:flex-end; gap:1rem; margin-top:2rem; }
.assessment-alert { padding:1.3rem 1.6rem; margin-bottom:1.5rem; border-radius:1rem; font-size:1.35rem; line-height:1.6; }
.assessment-alert-success { background:rgba(55,229,140,.11); border:1px solid rgba(55,229,140,.35); color:#bdf8d8; }
.assessment-alert-error { background:rgba(255,107,120,.11); border:1px solid rgba(255,107,120,.35); color:#ffd2d6; }
.assessment-alert ul { margin:.7rem 0 0 1.8rem; }
.assessment-summary { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; padding:1.8rem; margin:2rem 0; color:var(--assessment-muted); font-size:1.35rem; text-align:center; }
.assessment-summary b { color:#fff; }
.attempt-history { padding:2rem; margin-top:2rem; }
.attempt-history a { display:flex; justify-content:space-between; color:#fff; padding:1.2rem 0; border-bottom:1px solid var(--assessment-line); font-size:1.3rem; }
.assessment-back-link { display:inline-block; color:var(--assessment-muted); margin-top:2rem; font-size:1.3rem; }
.preview-question p, .result-question p { font-size:1.5rem; color:#fff; margin:1rem 0; }
.preview-alternative, .result-alternative { padding:1rem 1.2rem; border:1px solid var(--assessment-line); border-radius:.8rem; margin:.7rem 0; color:var(--assessment-muted); font-size:1.3rem; }
.preview-alternative b, .result-alternative b { color:var(--assessment-accent); margin-right:.7rem; }
.preview-correct { border-color:rgba(55,229,140,.5); background:rgba(55,229,140,.09); color:#d2fae5; }
.attempt-topbar { align-items:center; }
.countdown { min-width:150px; text-align:center; background:rgba(255,191,0,.1); border:1px solid rgba(255,191,0,.35); color:var(--assessment-accent); padding:1.2rem; border-radius:1rem; font:800 2.2rem/1 monospace; }
.save-status { color:var(--assessment-muted); font-size:1.2rem; margin:-1rem 0 1.5rem; }
.save-status-error { color:var(--assessment-red); }
.question-number { color:var(--assessment-accent); font-size:1.1rem; font-weight:800; text-transform:uppercase; letter-spacing:.1em; }
.student-question h2 { color:#fff; font-size:1.7rem; line-height:1.5; margin:1rem 0 1.4rem; }
.student-alternatives { display:grid; gap:.9rem; }
.student-alternatives label { display:grid; grid-template-columns:auto 3.4rem 1fr; align-items:center; gap:1rem; border:1px solid var(--assessment-line); border-radius:1rem; padding:1.1rem; color:#fff; font-size:1.35rem; cursor:pointer; }
.student-alternatives label:has(input:checked) { border-color:var(--assessment-accent); background:rgba(255,191,0,.07); }
.result-hero { padding:3rem; text-align:center; }
.result-hero h1 { color:#fff; font-size:3.2rem; margin:.8rem 0; }
.result-score { font-size:5rem; font-weight:900; color:var(--assessment-accent); }
.result-hero p, .result-hero small { color:var(--assessment-muted); font-size:1.35rem; }
.result-approved { border-color:rgba(55,229,140,.4); }
.result-approved .result-score { color:var(--assessment-green); }
.result-failed { border-color:rgba(255,107,120,.35); }
.text-success { color:var(--assessment-green); }.text-danger { color:var(--assessment-red); }
.result-alternative small { float:right; color:inherit; }.selected-wrong { border-color:rgba(255,107,120,.4); background:rgba(255,107,120,.08); }
@media(max-width:720px){.assessment-page{margin-top:8rem;padding:0 1.2rem}.assessment-heading,.attempt-topbar{flex-direction:column}.assessment-grid,.assessment-summary{grid-template-columns:1fr}.assessment-panel{padding:1.4rem}.question-builder-header{align-items:flex-start;flex-direction:column}.assessment-form-actions{flex-direction:column}.assessment-btn{width:100%}.alternative-row{grid-template-columns:auto 2.8rem 1fr}.countdown{width:100%}}
