/* Simulador del examen de transportista · usa los tokens de styles.css (--navy, --gold, --ivory, --cream, --ink, --mut, --line) */
.sim{--ok:#1F7A4D;--ok-bg:#E8F4EC;--ko:#B3261E;--ko-bg:#FBEAE8;display:grid;gap:18px}
.sim-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px}
.sim-card h3{font-size:1.25rem;margin-bottom:6px}
.sim-mut{color:var(--mut)}.sim-peq{font-size:.85rem}
.sim-modos{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.sim-modo{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:10px}
.sim-modo p{color:var(--mut);font-size:.95rem;flex:1}
.sim-modo:first-child{border:2px solid var(--gold)}
.sim-materias{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin:14px 0}
.sim-mat{text-align:left;background:var(--ivory);border:1px solid var(--line);border-radius:10px;padding:12px 14px;font:inherit;cursor:pointer;color:var(--ink)}
.sim-mat:hover,.sim-mat:focus-visible{border-color:var(--gold)}
.sim-mat b{color:var(--gold2);margin-right:4px}.sim-mat small{display:block;color:var(--mut);font-size:.8rem;margin-top:2px}
.sim-fila{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.sim .btn-ghost{background:#fff;border:1px solid var(--line);color:var(--navy);border-radius:10px;padding:11px 16px;font:600 .95rem Inter,system-ui,sans-serif;cursor:pointer}
.sim .btn-ghost:hover{border-color:var(--navy)}
.sim button:disabled{opacity:.45;cursor:default}
.sim .btn{border:0;cursor:pointer;font-family:inherit}
.sim-mini{padding:7px 12px!important;font-size:.85rem!important}
.sim-link{background:none;border:0;padding:0;font:inherit;color:var(--navy);text-decoration:underline;cursor:pointer}
.sim-aviso{background:#FFF7E0;border:1px solid #EBD48A;border-radius:12px;padding:14px 16px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.sim-barra{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;align-items:center;font-size:.95rem}
.sim-chip{display:inline-block;background:var(--cream);border-radius:20px;padding:2px 10px;font-size:.8rem;color:var(--navy);margin-left:6px}
.sim-reloj{font-variant-numeric:tabular-nums;font-weight:700;color:var(--navy)}.sim-poco{color:var(--ko)}
.sim-prog{height:6px;background:var(--cream);border-radius:6px;overflow:hidden}.sim-prog i{display:block;height:100%;background:var(--gold)}
.sim-q{font-size:1.12rem;font-weight:600;color:var(--ink);margin-bottom:16px;line-height:1.5}
.sim-caso{white-space:pre-line;font-weight:400;font-size:1rem;background:var(--ivory);border-radius:10px;padding:16px;max-height:60vh;overflow:auto}
.sim-ops{display:grid;gap:10px}
.sim-op{display:flex;gap:12px;align-items:flex-start;text-align:left;width:100%;background:#fff;border:1.5px solid var(--line);border-radius:10px;padding:13px 14px;font:inherit;color:var(--ink);cursor:pointer;line-height:1.45}
.sim-op:hover:not(:disabled){border-color:var(--navy)}
.sim .sim-op:disabled{opacity:1;cursor:default}
.sim-ops-caso .sim-txt{white-space:pre-line;font-size:.95rem}
.sim-letra{flex:0 0 28px;height:28px;border-radius:50%;background:var(--cream);color:var(--navy);display:grid;place-items:center;font-weight:700;font-size:.9rem}
.sim-sel{border-color:var(--navy);background:#EEF2F8}.sim-sel .sim-letra{background:var(--navy);color:#fff}
.sim-bien{border-color:var(--ok);background:var(--ok-bg)}.sim-bien .sim-letra{background:var(--ok);color:#fff}
.sim-mal{border-color:var(--ko);background:var(--ko-bg)}.sim-mal .sim-letra{background:var(--ko);color:#fff}
.sim-expl{margin-top:14px;border-radius:10px;padding:12px 14px;font-size:.95rem}
.sim-expl-ok{background:var(--ok-bg)}.sim-expl-ko{background:var(--ko-bg)}
.sim-cod{color:var(--mut);font-size:.8rem;margin-left:4px}
.sim-nav{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}
.sim-nav .btn{margin-left:auto}
.sim-marcada{border-color:var(--gold)!important;color:var(--gold2)!important}
.sim-mapa summary{cursor:pointer;color:var(--navy);font-weight:600}
.sim-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:6px;margin-top:12px}
.sim-grid button{border:1px solid var(--line);background:#fff;border-radius:6px;padding:6px 0;font:600 .8rem Inter,system-ui,sans-serif;cursor:pointer;color:var(--ink)}
.sim-grid .h{background:var(--navy);color:#fff;border-color:var(--navy)}
.sim-grid .m{box-shadow:inset 0 0 0 2px var(--gold)}
.sim-grid .a{outline:2px solid var(--gold);outline-offset:1px}
.sim-fin{text-align:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:center}
.sim-res{text-align:center}
.sim-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;color:var(--gold2);font-weight:700}
.sim-nota{margin:10px 0}.sim-nota b{display:block;font:800 3.4rem 'Playfair Display',Georgia,serif;color:var(--navy);line-height:1.1;font-variant-numeric:tabular-nums}
.sim-nota.ko b{color:var(--ko)}.sim-nota span{color:var(--mut)}
.sim-veredicto{font-weight:700;font-size:1.1rem;margin:6px 0 12px}.sim-veredicto.ok{color:var(--ok)}.sim-veredicto.ko{color:var(--ko)}
.sim-cifras{list-style:none;display:flex;flex-wrap:wrap;gap:8px 22px;justify-content:center;margin:8px 0 12px}
.sim-tabla{width:100%;border-collapse:collapse;font-size:.92rem;font-variant-numeric:tabular-nums}
.sim-tabla th,.sim-tabla td{padding:8px 6px;border-bottom:1px solid var(--line);text-align:left}
.sim-tabla th{color:var(--mut);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}
.sim-card:has(.sim-tabla){overflow-x:auto}
.sim-ok{color:var(--ok);font-weight:600}.sim-ko{color:var(--ko);font-weight:600}
.sim-rev{border-top:1px solid var(--line);padding:10px 0}.sim-rev summary{cursor:pointer;font-weight:600}
.sim-rev p{margin-top:8px}.sim-mal-t{color:var(--ko)}.sim-bien-t{color:var(--ok)}
.sim-cta{background:var(--navy);color:#fff;border-radius:14px;padding:18px 20px;line-height:1.6}
.sim-cta a{color:var(--gold);text-decoration:underline}
.sim-cargando{text-align:center;color:var(--mut)}
.sim-spin{width:34px;height:34px;border:3px solid var(--cream);border-top-color:var(--gold);border-radius:50%;margin:6px auto 12px;animation:simg 1s linear infinite}
@keyframes simg{to{transform:rotate(360deg)}}
.sim-muestra{display:grid;gap:12px}
.sim-muestra details{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 16px}
.sim-muestra summary{cursor:pointer;font-weight:600}
.sim-muestra ol{margin:10px 0 6px 22px}
@media (max-width:600px){.sim-card{padding:16px}.sim-q{font-size:1.02rem}.sim-nav .btn{margin-left:0;flex:1 1 100%}.sim-nota b{font-size:2.8rem}}
