.exam-year-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:1rem;
}
.exam-year-card{
  position:relative;
  overflow:hidden;
  min-height:220px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  color:inherit;
  text-decoration:none;
  background:linear-gradient(180deg,var(--surface),rgba(24,27,39,.72));
  border:1px solid var(--border);
  border-radius:14px;
  padding:1.3rem;
  transition:.18s ease;
}
.exam-year-card:hover{transform:translateY(-4px);border-color:var(--card-accent,var(--accent))}
.exam-year-card::before{
  content:"";
  position:absolute;
  right:-95px;
  bottom:-115px;
  width:245px;
  height:245px;
  background:radial-gradient(circle,var(--glow,rgba(244,184,96,.14)),transparent 68%);
}
.exam-year-card > *{position:relative;z-index:1}
.exam-count{font-family:var(--mono);font-size:.78rem;color:var(--muted)}
.exam-shell{max-width:820px;margin:0 auto;padding:2rem 1.2rem 5rem}
.exam-toolbar{
  position:sticky;
  top:0;
  z-index:50;
  margin:0 -1.2rem 1.4rem;
  padding:.8rem 1.2rem;
  background:rgba(12,14,22,.9);
  border-bottom:1px solid var(--border);
  backdrop-filter:blur(14px);
  display:flex;
  justify-content:space-between;
  gap:1rem;
  align-items:center;
  flex-wrap:wrap;
}
.exam-toolbar a{
  font-family:var(--mono);
  font-size:.72rem;
  color:var(--accent2);
  text-decoration:none;
  border:1px solid rgba(110,195,201,.26);
  border-radius:999px;
  padding:.45rem .7rem;
}
.exam-score{font-family:var(--mono);font-size:.78rem;color:var(--muted)}
.exam-question{
  margin:1.25rem 0;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:10px;
  padding:1.35rem 1.5rem;
  border-top:3px solid var(--card-accent,var(--accent3));
}
.exam-question.is-correct{border-color:rgba(74,222,128,.45);border-top-color:var(--green)}
.exam-question.is-wrong{border-color:rgba(232,122,139,.45);border-top-color:var(--rose)}
.exam-meta{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:.75rem}
.exam-topic{font-family:var(--mono);font-size:.72rem;color:var(--accent3);text-transform:uppercase;letter-spacing:.12em;font-weight:600}
.exam-points{font-family:var(--mono);font-size:.7rem;color:var(--dim);white-space:nowrap}
.exam-title{font-family:var(--serif);font-size:1.35rem;line-height:1.18;margin:0 0 .8rem;color:var(--text)}
.exam-instruction{
  display:inline-flex;
  margin:0 0 .85rem;
  padding:.35rem .6rem;
  border:1px solid rgba(110,195,201,.25);
  border-radius:999px;
  color:var(--accent2);
  background:rgba(110,195,201,.06);
  font-family:var(--mono);
  font-size:.68rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.exam-prompt{white-space:pre-line;color:#d4dbed;font-size:.96rem;line-height:1.65;margin-bottom:1rem}
.exam-options{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem}
.exam-option{
  width:100%;
  text-align:left;
  display:flex;
  align-items:flex-start;
  gap:.7rem;
  padding:.72rem .9rem;
  border-radius:6px;
  border:1px solid var(--border);
  cursor:pointer;
  transition:all .14s;
  font-size:.92rem;
  line-height:1.5;
  background:rgba(0,0,0,.15);
  color:#c9d0e3;
  font-family:var(--sans);
  text-transform:none;
  letter-spacing:0;
}
.exam-option:hover{border-color:var(--accent3);background:rgba(183,148,232,.05);color:var(--text)}
.exam-option input{margin-top:.25rem;accent-color:var(--accent3);flex:0 0 auto}
.exam-option.correct{border-color:var(--green);background:rgba(74,222,128,.08);color:#b8e8c6}
.exam-option.wrong{border-color:var(--rose);background:rgba(232,122,139,.08);color:#e0c8cc}
.exam-actions{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap;margin-top:1rem}
.exam-actions button,.guidance-toggle{
  font-family:var(--mono);
  font-size:.7rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  border-radius:4px;
  padding:.58rem .85rem;
  border:1px solid var(--border);
  background:var(--surface2);
  color:var(--muted);
  cursor:pointer;
}
.exam-actions button.primary{color:var(--accent);border-color:rgba(244,184,96,.35);background:rgba(244,184,96,.08)}
.exam-feedback,.exam-guidance{
  display:none;
  margin-top:1rem;
  padding:.9rem 1rem;
  border-radius:7px;
  font-size:.9rem;
  line-height:1.6;
  white-space:pre-line;
}
.exam-feedback.show,.exam-guidance.show{display:block}
.exam-feedback.right{background:rgba(74,222,128,.08);border-left:3px solid var(--green);color:#b8e8c6}
.exam-feedback.wrong{background:rgba(232,122,139,.06);border-left:3px solid var(--rose);color:#e0c8cc}
.exam-guidance{background:rgba(110,195,201,.06);border-left:3px solid var(--accent2);color:#d4dbed}
.cloze-list{display:grid;gap:.75rem;margin-top:1rem}
.cloze-row{
  display:grid;
  grid-template-columns:minmax(110px,.35fr) 1fr;
  gap:.7rem;
  align-items:center;
}
.cloze-label{font-family:var(--mono);font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.09em}
.cloze-row select,.short-answer input,.essay-box textarea,.placement-row select,.classify-row select{
  width:100%;
  padding:.65rem .75rem;
  background:#0a0c14;
  border:1px solid var(--border);
  border-radius:6px;
  color:var(--text);
  font-family:var(--sans);
  letter-spacing:0;
  text-transform:none;
}
.placement-card,.classify-card{
  margin-top:1rem;
  padding:1rem;
  border:1px solid var(--border);
  border-radius:9px;
  background:rgba(0,0,0,.12);
}
.placement-note{
  color:var(--muted);
  font-size:.88rem;
  margin-bottom:.8rem;
}
.placement-list,.classify-list{display:grid;gap:.65rem}
.placement-row,.classify-row{
  display:grid;
  grid-template-columns:minmax(150px,.38fr) 1fr;
  gap:.7rem;
  align-items:center;
}
.placement-target,.classify-row span{
  color:#d4dbed;
  font-weight:600;
}
.short-answer{display:grid;gap:.7rem;margin-top:1rem}
.essay-box textarea{min-height:130px;resize:vertical;line-height:1.55}
.exam-figures{
  display:grid;
  gap:1rem;
  margin:1rem 0;
}
.exam-figure{
  display:block;
  max-width:100%;
  border:1px solid var(--border);
  border-radius:8px;
  margin:0;
  background:#fff;
}
.exam-note{
  margin:1rem 0;
  padding:.85rem 1rem;
  border:1px dashed var(--border);
  border-radius:8px;
  color:var(--muted);
  font-size:.9rem;
}
@media(max-width:760px){
  .exam-shell{padding:1.4rem .9rem 4rem}
  .exam-toolbar{margin:0 -.9rem 1rem;padding:.75rem .9rem}
  .exam-question{padding:1.15rem}
  .cloze-row,.placement-row,.classify-row{grid-template-columns:1fr}
}
