/* Simulacros: lista, pantalla de prueba, resultado y clave */
.sim-list{display:grid;gap:16px;margin:24px 0}
.sim-card{border:1px solid var(--line);border-radius:18px;padding:22px 24px;background:#fffef9}
.sim-card-head{display:flex;align-items:center;gap:20px}
.sim-card-head h3{margin:0 0 4px}.sim-card-head p{margin:0;font-size:13px;color:var(--muted)}
.sim-badge{margin-left:auto;font-size:12px;font-weight:800;padding:6px 12px;border-radius:12px;white-space:nowrap}
.sim-badge.ok{background:#e3edd8;color:#2f5a35}.sim-badge.partial{background:#f1e9da;color:#7a5428}.sim-badge.none{background:#eceee8;color:#6b776e}
.sim-history{display:flex;flex-wrap:wrap;gap:4px 16px;margin:12px 0 0 62px;font-size:13px}
.sim-history .link{margin:0;min-height:30px;padding:4px 0;font-size:13px}
.sim-card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;margin:16px 0 0 62px}
.sim-card-actions .primary{width:auto;margin:0}.sim-card-actions .link{margin:0;font-size:14px}
.sim-card-actions .link[disabled]{opacity:.45;cursor:not-allowed}

/* Pantalla de prueba: ocupa toda la ventana */
body.sim-exam-mode{overflow:hidden}
.sim-exam{position:fixed;inset:0;display:flex;flex-direction:column;background:#faf9f4}
.sim-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 20px;border-bottom:1px solid var(--line);background:#f6f7ef}
.sim-bar>div:first-child{display:flex;flex-direction:column}.sim-bar>div:first-child span{font-size:12px;color:var(--muted)}
.sim-bar-center{display:flex;flex-direction:column;align-items:center}
.sim-clock{font-size:26px;font-weight:900;font-variant-numeric:tabular-nums;color:var(--green)}
.sim-clock.low{color:#a4552a}
.sim-count{font-size:12px;color:var(--muted)}
.sim-bar-actions{display:flex;align-items:center;gap:14px}
.sim-bar-actions .primary{width:auto;margin:0;padding:12px 20px}.sim-bar-actions .link{margin:0;font-size:13px}
.sim-tabs{display:none}
.sim-body{flex:1;display:grid;grid-template-columns:minmax(0,1fr) 330px;min-height:0}
.sim-paper{min-height:0;background:#e9ebe3;overflow-y:auto}
.sim-pages{display:grid;gap:14px;padding:16px;max-width:980px;margin:0 auto}
.sim-page{background:#fff;box-shadow:0 1px 4px #293c3522;display:grid;place-items:center;color:var(--muted);font-size:13px}
.sim-page canvas{width:100%;height:auto;display:block}
.sim-loading{padding:30px;text-align:center;color:var(--muted)}
.sim-paper iframe{width:100%;height:100%;border:0;display:block}
.sim-sheet{overflow-y:auto;padding:18px 20px 40px;border-left:1px solid var(--line);background:#fffef9}
.sim-sheet h2{font-size:18px;margin:0 0 6px}.sim-sheet>p{font-size:12px;color:var(--muted);margin:0 0 14px}
.sim-rows{list-style:none;padding:0;margin:0;display:grid;gap:4px}
.sim-row{display:grid;grid-template-columns:34px repeat(4,1fr);gap:6px;align-items:center}
.sim-row>span{font-size:13px;font-weight:800;color:var(--muted);text-align:right;padding-right:4px;font-variant-numeric:tabular-nums}
.sim-row button{min-height:38px;padding:0;justify-content:center;align-items:center;text-align:center;display:flex;line-height:1;border:1px solid #d6ddcf;border-radius:50%;aspect-ratio:1;max-width:42px;width:100%;margin:auto;font-weight:800;font-size:13px;background:#fff}
.sim-row button:hover{border-color:var(--green)}
.sim-row button[aria-pressed="true"]{background:var(--green);border-color:var(--green);color:#fff}
.sim-row button:focus-visible{outline:3px solid #9cc3a8;outline-offset:2px}
#sim-confirm{border:0;border-radius:20px;padding:28px 30px;max-width:440px;color:var(--ink)}
#sim-confirm::backdrop{background:#293c3566}
#sim-confirm .primary{width:auto;margin:0}
.sim-wait{max-width:560px;margin:15vh auto;padding:0 20px;text-align:center}

/* Resultado */
.sim-score{display:flex;align-items:center;gap:40px;margin:26px 0 8px;flex-wrap:wrap}
.sim-ring{--p:0;width:150px;height:150px;border-radius:50%;display:grid;place-content:center;text-align:center;background:radial-gradient(closest-side,#faf9f4 76%,transparent 77%),conic-gradient(var(--green) calc(var(--p)*1%),#e2e6dd 0)}
.sim-ring strong{font-size:38px;line-height:1}.sim-ring span{font-size:13px;color:var(--muted)}
.sim-score .result-stats{margin:0}
.sim-result .study-actions .primary{width:auto;margin:0}.sim-result .study-actions .link{margin:0}
.sim-review-head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-top:36px}
.sim-review-head label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600}
.sim-review-head input{width:17px;height:17px;min-height:17px;margin:0;accent-color:var(--green)}
.sim-review{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px}
.sim-review li{display:grid;grid-template-columns:34px 1fr 1fr;grid-template-rows:auto auto;gap:2px 10px;padding:10px 14px;border-radius:12px;border:1px solid var(--line);font-size:13px;background:#fffef9}
.sim-review li b{grid-row:span 2;font-size:16px;align-self:center}
.sim-review li em{grid-column:2/4;font-style:normal;font-weight:800;font-size:12px}
.sim-review .correct{background:#eef4e8;border-color:#c7d4b5}.sim-review .correct em{color:#2f5a35}
.sim-review .incorrect{background:#f8efe4;border-color:#e2c7a8}.sim-review .incorrect em{color:#8a4f24}
.sim-review .omitted em,.sim-review .unkeyed em{color:var(--muted)}
.sim-review.only-errors .correct,.sim-review.only-errors .unkeyed{display:none}

/* Clave */
.sim-key-wrap summary{cursor:pointer;font-weight:800;color:var(--green);padding:10px 0}
.sim-key-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;margin:14px 0}
.sim-key-grid label{display:grid;grid-template-columns:30px 1fr;grid-template-rows:auto auto;align-items:center;gap:0 6px;padding:6px 10px;border:1px solid var(--line);border-radius:10px;margin:0;font-size:13px}
.sim-key-grid label.usuario{background:#eef4e8}.sim-key-grid label.oficial{background:#eef4e8}.sim-key-grid label.generada{background:#fffef9}.sim-key-grid label.none{background:#f4f4ef}
.sim-key-grid span{font-weight:800;grid-row:span 2}
.sim-key-grid select{min-height:34px;padding:4px 6px;margin:0}
.sim-key-grid small{font-size:10px;color:var(--muted)}
.sim-paste{display:block;font-size:13px;max-width:620px;margin:10px 0}
.sim-key-wrap .primary{width:auto;margin:0}

@media(max-width:860px){
 .sim-bar{flex-wrap:wrap;padding:8px 16px}.sim-bar>div:first-child{display:none}
 .sim-tabs{display:flex;border-bottom:1px solid var(--line);background:#f6f7ef}
 .sim-tabs button{flex:1;justify-content:center;border-radius:0;font-weight:700}
 .sim-tabs button[aria-selected="true"]{box-shadow:inset 0 -3px var(--green);color:var(--green)}
 .sim-body{grid-template-columns:1fr}
 .sim-body[data-show="paper"] .sim-sheet,.sim-body[data-show="sheet"] .sim-paper{display:none}
 .sim-sheet{border-left:0}
 .sim-card-head{flex-wrap:wrap}.sim-badge{margin-left:0}
 .sim-history,.sim-card-actions{margin-left:0}
}
@media(prefers-reduced-motion:reduce){.sim-row button{transition:none}}

/* Revisión con la pregunta en texto */
.sim-review.has-q li{cursor:pointer}.sim-review.has-q li:hover{filter:brightness(.97)}
.sim-review.has-q li:focus-visible{outline:3px solid #bd8639;outline-offset:2px}
.sim-rev{width:min(760px,calc(100% - 24px));max-height:88vh;overflow:auto}
.sim-rev .opt{cursor:default}.sim-rev .opt:disabled{opacity:1;color:inherit}
.sim-mine{align-self:center;margin-left:auto;font-size:11px;font-weight:800;white-space:nowrap}
