:root{color-scheme:light;--navy:#14213d;--blue:#2456bd;--sky:#eff4ff;--ink:#1b2540;--muted:#596781;--border:#dbe2ed;--bg:#f6f8fc;--white:#fff;--green:#16714e;--red:#a32e3c;--radius:18px}
*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.5}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.site{min-height:100vh;display:flex;flex-direction:column}.topbar{background:var(--navy);color:white;min-height:76px;display:flex;align-items:center;justify-content:space-between;padding:12px max(22px,calc((100vw - 1080px)/2));gap:12px}.brand{display:flex;align-items:center;gap:11px;font-weight:850;letter-spacing:.08em}.brand-icon{width:37px;height:37px;border-radius:11px;display:grid;place-items:center;color:var(--navy);background:#f6d778;font-weight:850;font-size:23px}.header-note{opacity:.8;font-size:14px}.main{width:min(100% - 36px,900px);margin:42px auto;flex:1}.panel{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 35px rgba(17,34,76,.045);padding:clamp(22px,5vw,45px)}.center{text-align:center}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:750;font-size:12px;color:var(--blue)}h1,h2,h3{line-height:1.17;margin:12px 0 18px;letter-spacing:-.025em}h1{font-size:clamp(30px,5vw,46px)}h2{font-size:clamp(25px,4vw,34px)}h3{font-size:20px}p{margin:12px 0;color:var(--muted)}.lead{font-size:18px;max-width:650px;margin:0 auto 22px}.illustration{margin:auto;width:90px;height:90px;border-radius:28px;display:grid;place-items:center;background:var(--sky);font-size:40px;color:var(--blue)}.datebox{display:inline-flex;align-items:center;gap:9px;background:var(--sky);color:#173f95;padding:12px 18px;border-radius:14px;font-weight:750;margin:12px 0 22px}.button{appearance:none;border:0;border-radius:13px;padding:15px 25px;min-height:52px;font-weight:750;transition:background .15s ease,transform .1s}.button:hover:not(:disabled){transform:translateY(-1px)}.primary{background:var(--blue);color:#fff}.primary:hover:not(:disabled){background:#17459f}.ghost{background:#fff;border:1px solid var(--border);color:var(--ink)}.ghost:hover{background:#f5f7fc}.button.large{min-width:260px;font-size:18px;padding:18px 24px}.small{min-height:40px;padding:8px 14px;font-size:14px}.status{border-radius:13px;padding:14px 17px;margin:18px 0;font-size:15px;text-align:left}.status.info{background:#eff4ff;color:#1b4d9d}.status.good{background:#eaf8f0;color:#145f44}.status.warn{background:#fff4df;color:#7c4c0d}.status.error{background:#fff0f1;color:#9f2738}.strip{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-bottom:17px}.pill{border:1px solid var(--border);border-radius:100px;padding:5px 11px;color:var(--muted);font-size:13px;font-weight:700}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0 30px}.step{padding:12px 8px;background:#f3f5f9;border:1px solid var(--border);border-radius:11px;text-align:center;font-size:13px;color:var(--muted);font-weight:700}.step.current{background:#e9f0ff;color:#124da8;border-color:#b9cdf4}.step.done{background:#e9f7ef;color:var(--green);border-color:#bbdfcb}.instruction-list{padding:0;margin:25px 0;list-style:none}.instruction-list li{position:relative;padding:13px 15px 13px 43px;border-bottom:1px solid var(--border);color:var(--ink)}.instruction-list li:before{content:'✓';position:absolute;left:15px;color:var(--green);font-weight:900}.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:24px}.actions.end{justify-content:flex-end}.exam-head{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:17px}.timer{background:#eaf2ff;border-radius:14px;color:#174aa5;padding:8px 16px;font-size:25px;font-variant-numeric:tabular-nums;font-weight:850;min-width:120px;text-align:center}.timer.critical{background:#ffedef;color:#b12d3e}.question-title{margin-bottom:10px}.question-id{font-size:14px;color:var(--muted);font-weight:600}.question-text{font-size:clamp(19px,2.8vw,24px);font-weight:700;line-height:1.4;white-space:pre-wrap;margin:18px 0 22px}.question-img{display:block;max-width:100%;max-height:420px;object-fit:contain;border:1px solid var(--border);border-radius:12px;margin:10px 0 20px}.options{display:grid;gap:10px}.option{display:flex;align-items:center;gap:13px;text-align:left;border:1.5px solid var(--border);border-radius:13px;background:#fff;padding:14px 16px;width:100%;color:var(--ink)}.option:hover{border-color:#8eacf0;background:#f8faff}.option.selected{border-color:#265ac8;background:#edf3ff}.letter{display:grid;place-items:center;min-width:34px;height:34px;border-radius:8px;background:#f0f3f9;font-weight:850}.option.selected .letter{background:#285ab6;color:#fff}.questionnav{display:flex;flex-wrap:wrap;gap:7px;margin:22px 0 0}.qdot{min-width:42px;height:42px;background:#fff;border:1px solid #cfd9e8;border-radius:10px;color:#32415e;font-size:14px;font-weight:750}.qdot.active{background:#2251ad;color:white;border-color:#2251ad}.qdot.answered:not(.active){border-color:#43a178;background:#ecf8f1;color:#13663d}.qdot:focus-visible,.option:focus-visible,.button:focus-visible{outline:3px solid #f6ca57;outline-offset:2px}.progress{height:8px;border-radius:10px;background:#ecf0f6;overflow:hidden;margin:15px 0}.progress span{display:block;height:100%;background:#2d67cf;transition:width .2s}.triad-row{border:1px solid var(--border);border-radius:13px;padding:13px 14px;margin:9px 0;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:15px}.triad-heading{font-size:13px;color:var(--muted);text-align:center}.triad-row label{display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:14px}.triad-row input{accent-color:#255ab8;width:19px;height:19px}.footer{text-align:center;font-size:12px;color:var(--muted);padding:20px}.score{font-size:70px;font-weight:850;line-height:1;color:var(--blue);margin:16px 0}.score span{font-size:20px;color:var(--muted)}.resultrow{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid var(--border);padding:15px 0;text-align:left}.muted{font-size:14px;color:var(--muted)}.spinner{border:3px solid #dce7fd;border-top-color:#285cc4;width:40px;height:40px;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{to{transform:rotate(360deg)}}.anchor{color:var(--blue);text-decoration:underline;text-underline-offset:3px;cursor:pointer;background:none;border:0;padding:4px}.centered-actions{justify-content:center}.note{font-size:13px;color:var(--muted)}
@media(max-width:580px){.topbar{padding:13px 18px}.header-note{display:none}.main{width:calc(100% - 22px);margin:18px auto}.panel{padding:20px 16px}.steps{gap:4px}.step{font-size:11px;padding:10px 5px}.actions{flex-direction:column}.actions .button{width:100%}.triad-row{grid-template-columns:1fr auto auto;gap:7px}.triad-row label{flex-direction:column;font-size:12px}.timer{font-size:21px}.resultrow{font-size:14px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}

/* Figuras grandes: zoom local sin llamadas al servidor. */
.image-zoom{position:fixed;inset:0;z-index:30;background:rgba(9,19,42,.96);display:flex;flex-direction:column;color:#fff}
.zoom-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 15px;background:#172647;min-height:65px}
.zoom-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;display:flex;align-items:flex-start;justify-content:flex-start;padding:16px}
.zoom-scroll img{display:block;width:max(860px,75vw);max-width:none;height:auto;object-fit:contain;background:white;border-radius:9px}
@media(min-width:1200px){.zoom-scroll img{width:min(1100px,90vw)}}
@media(max-width:580px){.zoom-scroll{padding:10px}.zoom-header{font-size:14px}.zoom-scroll img{width:860px}}

/* Comprensión lectora: texto completo accesible durante cualquiera de sus siete preguntas.
   La lectura se envía una sola vez, sin repetirla en cada pregunta. */
.reading-panel{border:1px solid #b7cbe8;border-radius:14px;background:#f5f9ff;margin:16px 0 21px;overflow:hidden}
.reading-panel summary{cursor:pointer;padding:14px 16px;color:#163a77;font-weight:750;background:#e9f1ff;line-height:1.5}
.reading-panel summary:focus-visible{outline:3px solid #e6bd53;outline-offset:-3px}
.reading-text{padding:7px 17px 10px;max-height:360px;overflow-y:auto;overscroll-behavior:contain;line-height:1.7;font-size:15px;color:#24324a}
.reading-text p{margin:13px 0}
@media(max-width:580px){.reading-text{max-height:42vh;font-size:14px;padding:5px 13px 8px}.reading-panel summary{font-size:14px;padding:12px}}

/* Tríadas 36: elección de DOS afirmaciones sin orden; no equivale a Más/Menos */
.triad2-options{display:grid;gap:12px;margin:18px 0 24px}
.triad2-option{display:flex;gap:14px;align-items:flex-start;padding:16px;border:1.5px solid #ccd6e2;border-radius:12px;cursor:pointer;background:var(--surface,#fff);line-height:1.48}
.triad2-option.chosen{border-color:#2363b3;background:#eaf3ff}
.triad2-option input{min-width:22px;width:22px;height:22px;accent-color:#2363b3;margin:2px 0 0}
.triad2-option span:not(.triad2-letter){flex:1}
.triad2-letter{flex:0 0 22px;font-weight:800;color:#184a83;text-align:center}

/* Aviso permanente en el despliegue de QA con contenido ficticio. */
body.qa-preview::before{content:'ENTORNO DE PRUEBAS · PREGUNTAS FICTICIAS · NO ES EL EXAMEN';display:block;position:sticky;top:0;z-index:999;background:#5a271b;color:white;text-align:center;padding:10px 12px;font:700 13px/1.3 sans-serif;letter-spacing:.04em;}

/* Introducción de respuestas de cuadernillos impresos (sin cronómetros). */
.paper-entry-option{border-top:1px solid var(--border);margin:30px auto 0;padding:25px 6px 0;max-width:660px}
.paper-entry-option strong{font-size:20px}.paper-entry-option p{margin:7px 0 15px}
.paper-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:22px 0 26px}
.paper-tab{font:inherit;font-weight:700;display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;min-height:74px;padding:10px;border-radius:12px;border:1px solid var(--border);color:var(--ink);background:#f6f8fc}
.paper-tab.active{background:#e9f0ff;border-color:#2460b9;color:#16478e}
.paper-tab span{font-size:12px;color:var(--muted)}
.paper-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:22px 0 30px}
.paper-row{display:flex;align-items:center;justify-content:space-between;gap:9px;border:1px solid var(--border);background:#f9fbfe;border-radius:11px;padding:9px 10px;min-height:65px}
.paper-qnumber{font-weight:700;font-size:14px;white-space:nowrap}
.paper-select{font:inherit;border-radius:9px;border:1px solid #abbad2;background:white;color:#14213d;padding:9px 10px;min-height:43px;max-width:60%;min-width:104px;text-overflow:ellipsis}
.paper-select:focus-visible,.paper-tab:focus-visible{outline:3px solid #3062c4;outline-offset:2px}
.paper-actions{margin-top:30px}
@media(max-width:760px){.paper-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.paper-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:500px){.paper-grid{grid-template-columns:1fr}.paper-row{min-height:58px}.paper-select{min-width:150px}.paper-tab{min-height:62px}}
