/* Pantallas del participante alineadas con el paquete aprobado. */
body{background:linear-gradient(130deg,#edf8ff,#fcfdff 55%,#f0f8ff);color:#0a215c;font-family:Nunito,Arial,sans-serif}
body::before,body::after{display:none}
main{background:white;border:1px solid #d4e6f7;border-radius:14px;box-shadow:none;min-width:0;max-width:100%;padding:22px}
h1,h2{color:#0a215c;font-family:Nunito,Arial,sans-serif;font-weight:900}
input,select{min-height:48px;border:1px solid #b9d3ed;border-radius:8px;max-width:100%;color:#0a215c}
button{min-height:44px;border-radius:8px;box-shadow:none;font-family:Nunito,Arial,sans-serif}
.change,.join-team,#evaluationJoinBtn,#raceJoinBtn{background:#096ced;color:#fff;border:1px solid #096ced;box-shadow:none;border-radius:8px;min-height:48px}
#evaluationOptions button,#raceOptions button{background:#fff;color:#0a215c;border:1px solid #c3dbf5;border-radius:9px;box-shadow:none;white-space:normal;overflow-wrap:anywhere;height:auto;min-height:52px}
#evaluationOptions button:disabled,#raceOptions button:disabled{opacity:1}
.participant-brand{display:flex;align-items:center;gap:12px;margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid #e0edf8}
.participant-brand img{width:48px;height:48px;object-fit:contain}.participant-brand strong{display:block;font-size:1.2rem;color:#0a215c}.participant-brand small{color:#1469d5;font-size:.82rem}
.participant-home{display:inline-block;color:#1a5cae;font-size:.85rem;min-height:44px;padding:12px 0;text-decoration:none}
@media(max-width:420px){body{padding:12px}main{padding:16px}.participant-brand strong{font-size:1.05rem}.participant-brand img{width:38px;height:38px}h1{font-size:1.6rem}}

/* Concurso: el teléfono funciona como pulsador y control de respuestas. */
#gameScreen #questionText,#gameScreen #questionVisual{display:none!important}
#gameScreen .contest-common-hint{text-align:center;color:#405c9e;font-size:1rem;margin:12px 0}
#gameScreen .contest-countdown{background:#e8f5ff;border:1px solid #badfff;border-radius:16px;padding:12px;text-align:center;color:#005bd8;margin:12px 0}
#gameScreen .contest-countdown[hidden]{display:none}
#gameScreen .contest-countdown span{display:block;font-size:.9rem}
#gameScreen .contest-countdown strong{display:block;font-size:3rem;font-variant-numeric:tabular-nums;line-height:1.2}
#gameScreen .contest-countdown.is-urgent{background:#fff5df;color:#955b00;border-color:#f4cc7c}
#gameScreen.contest-answering .buzz-stage{display:none}
#gameScreen #answerOptions.show{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#gameScreen .answer-button{display:grid;place-items:center;min-height:88px;padding:14px;background:#006aff;border:1px solid #006aff;border-radius:16px;box-shadow:none}
#gameScreen .answer-letter{background:transparent;color:white;font-size:2.1rem;width:auto;height:auto}
#gameScreen .buzz-stage{margin:16px 0}#gameScreen #topicText{font-size:.85rem}

#gameScreen #answerOptions.show{grid-template-columns:1fr}#gameScreen .answer-button{grid-template-columns:40px minmax(0,1fr);gap:12px;text-align:left;min-height:68px;color:#fff;line-height:1.45}#gameScreen .answer-letter{font-size:1.5rem}#gameScreen .contest-option-text{font-size:1rem;overflow-wrap:anywhere;justify-self:start}
/* Opciones de Concurso: tarjetas ligeras y legibles para respuestas largas. */
#gameScreen .answer-button{background:#fff;color:#173c85;border:1px solid #bfd9f7;border-radius:12px;box-shadow:none;font-weight:400;padding:14px 16px;gap:14px}
#gameScreen .answer-button .answer-letter{display:grid;place-items:center;width:34px;height:34px;border:1px solid #9fc7f6;border-radius:50%;background:#f1f7ff;color:#0064dc;font-size:1.2rem;font-weight:600;box-shadow:none}
#gameScreen .answer-button .contest-option-text{font-weight:400;line-height:1.5}
#gameScreen .answer-button:hover:not(:disabled){background:#f4f9ff;border-color:#66a9f6;box-shadow:none;transform:none}
#gameScreen .answer-button:active:not(:disabled){background:#e8f3ff}
#gameScreen .answer-button:focus-visible{outline:3px solid #81b9ff;outline-offset:2px}
#gameScreen .answer-button:disabled{background:#f7f9fc;color:#65758b;border-color:#d9e2ed;opacity:1}
.game-student-entry{border:1px solid #cce0f8;border-radius:14px;background:#fff;padding:14px;margin-bottom:18px}
.game-student-entry .entry-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.game-student-entry .entry-choices button{background:#f3f9ff;color:#0056c9;border:1px solid #bdd8ff;border-radius:12px;min-height:64px;box-shadow:none;font-size:15px;padding:10px}
.game-student-entry form label{display:block;margin-top:12px}
.game-student-entry form input{width:100%;box-sizing:border-box}
.game-student-entry .entry-note{font-size:13px;color:#425d81;margin:10px 0 0}

#gameScreen.contest-ended>:not(#participantReplay){display:none!important}#participantReplay{padding:16px 0}#participantReplay h2{color:#071759;font-size:24px}#participantReplay p{line-height:1.5}#participantReplay button{width:100%;min-height:48px;border:1px solid #006aff;border-radius:10px;box-shadow:none;background:#006aff;color:white;font:700 16px Nunito,Arial,sans-serif;padding:12px}#participantReplay button:disabled{background:#edf5ff;color:#4962ad;border-color:#cfe2fa;opacity:1}
