/* France Collège — exercices de révision (pages/eleve/revision-exercices.html) */
.rx-status{padding:12px 16px;border-radius:16px;background:#fff7dd;border:1px solid #edd89a;color:#6b4a00;font-weight:800}
.rx-status.on{background:#e8f7ee;border-color:#bfe8d0;color:#11703f}
.rx-series{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:0 0 18px}
.rx-serie{display:flex;flex-direction:column;gap:4px;padding:14px;border-radius:16px;border:2px solid #dbe4f3;background:#fff;font:inherit;cursor:pointer;text-align:left;min-height:64px}
.rx-serie strong{font-size:17px;color:#10234f}
.rx-serie small{color:#56627a;font-weight:700}
.rx-serie.done{border-color:#7fd3a5;background:#f1fbf5}
.rx-serie:hover{border-color:#1769d7}
.rx-custom h3{margin:0 0 10px}
.rx-form{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}
.rx-form label{display:flex;flex-direction:column;gap:4px;font-weight:800;font-size:14px;flex:1 1 150px}
.rx-form select{min-height:44px;border-radius:12px;border:1px solid #c9d4e8;padding:6px 10px;font:inherit;background:#fff}
.rx-sheet{display:flex;flex-direction:column;gap:12px}
.rx-q{background:#fff;border:2px solid #e2e8f3;border-radius:18px;padding:14px 16px;transition:border-color .2s}
.rx-q.ok{border-color:#2fb36d;background:#f4fcf7}
.rx-q.mid{border-color:#e9b949;background:#fffbef}
.rx-q.ko{border-color:#e46a6a;background:#fff6f6}
.rx-qh{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:6px;font-size:13px;font-weight:900}
.rx-num{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#10234f;color:#fff;font-size:15px}
.rx-type{padding:3px 10px;border-radius:999px;background:#eef3fc;color:#1d4c9a}
.rx-lvl{color:#a06b00}
.rx-pts{margin-left:auto;color:#56627a}
.rx-text{font-size:17px;line-height:1.55;margin:4px 0 10px;overflow-wrap:anywhere}
.rx-opts{display:grid;gap:8px}
.rx-opts label{display:flex;gap:10px;align-items:center;padding:10px 12px;border:1px solid #d6dff0;border-radius:12px;cursor:pointer;min-height:44px;background:#fbfcff}
.rx-opts label:has(input:checked){border-color:#1769d7;background:#eaf2ff}
.rx-opts input{width:20px;height:20px;flex:0 0 auto}
.rx-vf{grid-template-columns:1fr 1fr}
.rx-in{font:inherit;font-size:17px;border:2px solid #c9d4e8;border-radius:12px;padding:8px 12px;min-height:44px;background:#fff;max-width:100%}
.rx-in:focus{border-color:#1769d7;outline:none}
.rx-in.wide{width:100%}
.rx-in.hole{width:9em;min-height:36px;padding:4px 8px;margin:2px 4px;font-size:16px}
.rx-in.area{width:100%;resize:vertical;line-height:1.6}
.rx-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.rx-order{list-style:decimal;padding-left:28px;margin:0;display:grid;gap:6px}
.rx-order li{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid #d6dff0;border-radius:12px;background:#fbfcff}
.rx-order li span{flex:1}
.rx-order button{width:40px;height:40px;border-radius:10px;border:1px solid #c9d4e8;background:#fff;cursor:pointer;font-size:14px}
.rx-assoc{display:grid;gap:8px}
.rx-assoc label{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:10px;align-items:center;font-weight:700}
.rx-assoc select{min-height:44px;border-radius:12px;border:1px solid #c9d4e8;padding:6px 8px;font:inherit;max-width:100%}
.rx-audio{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 8px}
.rx-focus{font-size:13px;font-weight:800;color:#56627a}
.rx-say .rx-target{font-size:22px;font-weight:900;color:#10234f;margin:0 0 4px}
.rx-tip{margin:0 0 8px;color:#6b4a00;font-weight:700}
.rx-heard{font-style:italic;color:#1d4c9a;min-height:1.2em;margin:4px 0 0}
.rx-fb:empty{display:none}
.rx-fb{margin-top:10px;padding-top:10px;border-top:1px dashed #d6dff0}
.rx-mark{font-weight:900}
.rx-q.ok .rx-mark{color:#11703f}.rx-q.ko .rx-mark{color:#b42318}.rx-q.mid .rx-mark{color:#8a5f00}
.rx-sol{margin-top:6px}
.rx-expl{margin-top:6px;padding:8px 12px;background:#f3f6fc;border-radius:12px;color:#26324d}
.rx-diff{margin-top:6px;line-height:1.9;font-size:16px}
.rx-diff .bad s{color:#b42318}.rx-diff .bad b,.rx-diff .miss b{color:#11703f}
.rx-submit{position:sticky;bottom:10px;display:flex;justify-content:center;z-index:5}
.rx-submit .ev-btn{box-shadow:0 10px 24px rgba(16,35,79,.25);font-size:18px;padding:12px 26px}
.rx-result{display:flex;gap:18px;align-items:center;margin:18px 0 10px;padding:18px;border-radius:22px;color:#fff;background:linear-gradient(135deg,#1769d7,#5b35b3)}
.rx-result.great{background:linear-gradient(135deg,#14874f,#1769d7)}
.rx-result.low{background:linear-gradient(135deg,#b35200,#c2410c)}
.rx-result h3{margin:0 0 4px;font-size:22px}.rx-result p{margin:0;font-weight:700}
.rx-note{display:flex;align-items:baseline;gap:2px;background:rgba(255,255,255,.18);border-radius:18px;padding:10px 16px}
.rx-note span{font-size:44px;font-weight:1000;line-height:1}.rx-note small{font-size:18px;font-weight:900}
.rx-after{margin-top:12px;flex-wrap:wrap}
.rx-lock{margin:12px 0;padding:16px;border-radius:18px;background:#fff7dd;border:2px dashed #e0b43f}
.rx-lock strong{font-size:17px}.rx-lock p{margin:6px 0 10px}
.rx-modal{position:fixed;inset:0;background:rgba(10,20,45,.55);display:grid;place-items:center;padding:16px;z-index:1000}
.rx-modal-in{background:#fff;border-radius:20px;padding:16px;max-width:520px;width:100%;box-shadow:0 20px 50px rgba(0,0,0,.3)}
@media (max-width:640px){
  .rx-text{font-size:16px}
  .rx-assoc label{grid-template-columns:1fr}
  .rx-result{flex-direction:column;text-align:center}
  .rx-vf{grid-template-columns:1fr 1fr}
  .rx-pts{margin-left:0}
}
/* ---------- impression : fiche et corrigé (abonnement) ---------- */
@media print{
  .rp{font-family:Arial,Helvetica,sans-serif;font-size:11.5pt;color:#000}
  .rp-head{display:flex;justify-content:space-between;gap:20px;border:2px solid #000;border-radius:10px;padding:10px 14px;margin-bottom:12px}
  .rp-head h1{font-size:17pt;margin:0 0 4px}.rp-head p{margin:0;font-weight:bold}
  .rp.key .rp-head{background:#eee}
  .rp-id{font-size:11pt;line-height:1.9;white-space:nowrap}
  .rp-note{font-style:italic;margin:0 0 10px}
  .rp-q{border-bottom:1px solid #bbb;padding:8px 0 10px;page-break-inside:avoid}
  .rp-qh{font-size:10pt;text-transform:uppercase;letter-spacing:.03em;color:#333}
  .rp-qh span{text-transform:none}
  .rp-q p{margin:4px 0}
  .rp-choices{list-style:none;padding-left:10px;margin:4px 0}
  .rp-blank{display:inline-block;width:3.5cm;border-bottom:1px solid #000;height:1em}
  .rp-lines .line{border-bottom:1px dotted #555;height:24px}
  .rp-small{font-size:9.5pt;color:#444}
  .rp-assoc td{vertical-align:top;padding-right:30px;line-height:1.9}
  .rp-sol{margin-top:4px;padding:4px 8px;border-left:4px solid #000;background:#f2f2f2}
  .rp-expl{margin-top:4px;font-size:10.5pt;color:#222}
}
