/* CAPE IT revision questions (generated by make_revision.py) */
.rv{--rv-ink:#1C2541;--rv-paper:#F4EFE3;--rv-deep:#EAE2CF;--rv-rust:#B33A3A;--rv-teal:#3E7C74;--rv-line:#C9BFA3;--rv-white:#FFFDF8;--rv-good:#2F7D4F;--rv-bad:#B33A3A;
  margin:30px 0 10px;background:var(--rv-white);border:1px solid var(--rv-line);border-top:6px solid var(--rv-teal);border-radius:3px;padding:24px 26px;
  font-family:Lora,Georgia,serif;color:var(--rv-ink);box-shadow:0 2px 0 var(--rv-line)}
.rv *{box-sizing:border-box}
.rv-top{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:flex-start;border-bottom:2px solid var(--rv-ink);padding-bottom:12px;margin-bottom:6px}
.rv-tag{font:700 12px 'IBM Plex Mono',monospace;color:var(--rv-rust);letter-spacing:.4px}
.rv h2{font-size:26px;margin:2px 0 4px}
.rv-sub{margin:0;font-size:14px;max-width:620px;color:#3a3323}
.rv-sum{display:flex;flex-direction:column;gap:4px;font:500 12.5px 'IBM Plex Mono',monospace;background:var(--rv-paper);border:1px solid var(--rv-line);border-radius:6px;padding:8px 12px}
.rv-sum b{color:var(--rv-teal)}
.rv-h{font-size:19px;margin:22px 0 2px}
.rv-note{font-size:13.5px;color:#66604a;margin:0 0 10px}
.rv-q{border:1px solid var(--rv-line);border-radius:6px;margin:0 0 12px;padding:12px 14px 10px;background:#fff}
.rv-src,.rv-sh{font:600 11px 'IBM Plex Mono',monospace;color:var(--rv-teal);margin-bottom:6px}
.rv-stem{font-size:15px;line-height:1.5;margin:0 0 8px;padding:0}
.rv-q label{display:flex;gap:8px;align-items:flex-start;padding:6px 8px;border-radius:4px;cursor:pointer;font-size:14.5px;line-height:1.4}
.rv-q label:hover{background:var(--rv-paper)}
.rv-q input{margin-top:3px;accent-color:var(--rv-teal)}
.rv-q label.rv-right{background:#E3F2E1;outline:1.5px solid var(--rv-good)}
.rv-q label.rv-wrong{background:#F8E1E1;outline:1.5px solid var(--rv-bad)}
.rv-fb{display:none;font-size:14px;line-height:1.5;margin-top:8px;padding:8px 10px;border-left:4px solid var(--rv-teal);background:var(--rv-paper)}
.rv-q.rv-done .rv-fb{display:block}
.rv-q.rv-miss .rv-fb{border-left-color:var(--rv-bad)}
.rv-foot{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:6px 0 4px}
.rv-btn{font:600 13px 'IBM Plex Mono',monospace;background:var(--rv-ink);color:#fff;border:1.5px solid var(--rv-ink);border-radius:3px;padding:9px 15px;cursor:pointer}
.rv-btn:hover{background:var(--rv-teal);border-color:var(--rv-teal)}
.rv-ghost{background:transparent;color:var(--rv-ink)}
.rv-score{font:700 14px 'IBM Plex Mono',monospace;color:var(--rv-teal)}
.rv-sq{border:1px solid var(--rv-line);border-radius:6px;padding:14px 16px;margin:0 0 16px;background:#fff}
.rv-intro{font-size:14.5px;line-height:1.55;margin:0 0 8px}
.rv-mk{font:600 12px 'IBM Plex Mono',monospace;color:#66604a;white-space:nowrap}
.rv-part{margin:10px 0 0}
.rv-part p{margin:0 0 6px;font-size:14.5px;line-height:1.5}
.rv-part textarea{width:100%;font:14px/1.5 Lora,Georgia,serif;padding:8px 10px;border:1px solid var(--rv-line);border-radius:4px;background:var(--rv-white);resize:vertical}
.rv-scheme{display:none;margin:8px 0 4px;padding:10px 12px;background:var(--rv-paper);border:1px dashed var(--rv-teal);border-radius:4px}
.rv-sq.rv-open .rv-scheme{display:block}
.rv-scheme label{display:flex;gap:8px;align-items:flex-start;font-size:14px;line-height:1.45;margin:4px 0;cursor:pointer}
.rv-scheme input{margin-top:3px;accent-color:var(--rv-teal)}
.rv-t{border-collapse:collapse;margin:6px 0 8px;font-size:13px;background:#fff}
.rv-t th{background:var(--rv-ink);color:#fff;font:600 11.5px 'IBM Plex Mono',monospace;padding:5px 8px;text-align:left}
.rv-t td{border:1px solid var(--rv-line);padding:5px 8px}
.rv code{font:13px 'IBM Plex Mono',monospace;background:var(--rv-deep);padding:1px 5px;border-radius:3px}
.rv-legal{font-size:12px;color:#66604a;margin:14px 0 0}
.rv-submit{margin:22px 0 0;padding:14px 16px;border:2px solid var(--rv-teal);border-radius:6px;background:var(--rv-paper)}
.rv-submit .rv-h{margin-top:0}
.rv-who{display:flex;gap:12px;flex-wrap:wrap;margin:6px 0 4px}
.rv-who label{display:flex;flex-direction:column;gap:3px;font:600 12px 'IBM Plex Mono',monospace;flex:1 1 220px}
.rv-who input{font:15px Lora,Georgia,serif;padding:8px 10px;border:1px solid var(--rv-line);border-radius:4px;background:#fff}
.rv-send-status{font-size:14px}
.rv-upload{margin:8px 0 2px;padding:10px 12px;border:1px dashed var(--rv-teal);border-radius:4px;background:#fff}
.rv-upload label{display:flex;flex-direction:column;gap:6px;font:600 13px 'IBM Plex Mono',monospace}
.rv-upload input[type=file]{font:13px Lora,Georgia,serif}
.rv-up-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:8px}
.rv-prev{max-width:260px;max-height:200px;border:1px solid var(--rv-line);border-radius:4px}
.rv-up-status{font-size:13.5px;flex:1 1 220px}
.rv-btn:disabled{opacity:.5;cursor:default}
.rv-code{width:100%;font:12px 'IBM Plex Mono',monospace;padding:6px;border:1px solid var(--rv-line);border-radius:4px}
@media (max-width:640px){.rv{padding:18px 14px}.rv-t{display:block;overflow-x:auto}}
@media print{.rv-btn,.rv-foot{display:none}.rv-scheme{display:block}.rv-fb{display:block}}
