/* Mi Ruta B V12 · Ruta Battle: una pista, preguntas limpias y puntaje por rapidez. */
.workspace.focus-battle .page-content.view-battle {
  max-width:900px!important;
}
.battle-question-view {
  max-width:850px;
  width:100%;
  min-width:0;
  margin-inline:auto;
}
.battle-quiz-top {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 8px;
}
.battle-quiz-top>.pill {
  display:inline-flex;
  align-items:center;
  min-height:32px;
  background:#eaf1fc;
  border:1px solid #d9e5f8;
  color:#2457a5;
  font-size:12px;
}
.battle-time-badge {
  display:grid;
  place-items:center;
  flex:0 0 auto;
  width:66px;
  height:44px;
  border:1px solid #ccdff3;
  border-radius:12px;
  background:#f5f9ff;
  color:#2158a3;
  font-size:21px;
  font-variant-numeric:tabular-nums;
  font-weight:850;
}
/* Compartida por toda la competencia. No se crean filas por jugador. */
.battle-mini-track {
  margin:9px auto 25px;
  width:100%;
  max-width:850px;
  padding:8px 5px 0;
}
.battle-mini-track-line {
  position:relative;
  height:74px;
  isolation:isolate;
  min-width:0;
}
.battle-mini-track-line:before {
  content:"";
  display:block;
  position:absolute;
  height:6px;
  border-radius:10px;
  background:linear-gradient(90deg,#cadcf3,#a4bde0);
  width:100%;
  left:0;
  top:55px;
}
.battle-mini-track-line:after {
  content:"";
  display:block;
  position:absolute;
  height:6px;
  border-radius:10px;
  width:100%;
  left:0;
  top:55px;
  background:repeating-linear-gradient(90deg,transparent 0,transparent 12px,#fff9 12px,#fff9 16px);
  pointer-events:none;
}
.battle-track-car {
  width:46px;
  height:34px;
  display:block;
  position:absolute;
  top:calc(24px - var(--level, 0px));
  transform:translateX(-50%);
  z-index:2;
  pointer-events:auto;
  filter:drop-shadow(0 2px 2px rgba(20,47,85,.2));
}
.battle-track-car .battle-car-svg {
  width:46px!important;
  height:34px!important;
  max-width:none!important;
  display:block;
  margin:0;
}
.battle-mini-track-goal {
  position:absolute;
  right:-2px;
  top:16px;
  z-index:1;
  color:#53729c;
  font-size:23px;
}
.battle-mini-track-caption {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  font-size:10px;
  font-weight:600;
  color:#7084a2;
}
.battle-question-view .question {
  font-size:clamp(21px,2.4vw,28px);
  font-weight:770;
  line-height:1.4;
  max-width:100%!important;
  margin:18px 0 20px;
}
.battle-question-view .question-img {
  width:auto!important;
  display:block;
  max-width:100%;
  max-height:290px;
  object-fit:contain;
  margin:5px auto 22px;
}
.battle-question-view .option {
  width:100%!important;
  max-width:100%!important;
  font-size:clamp(13px,1.45vw,15px);
  padding:14px 16px;
  margin:9px 0;
  border-radius:13px;
}
.battle-question-view .battle-send {
  max-width:100%;
  min-height:48px;
}
.battle-waiting {
  border:1px solid #b9ddcf;
  border-radius:13px;
  background:#eaf8f3;
  padding:14px 15px;
  color:#186951;
  font-weight:650;
  text-align:center;
  font-size:13px;
}
.battle-countdown-screen {
  width:100%;
  max-width:850px;
  margin:0 auto;
  text-align:center;
}
.battle-countdown-screen .eyebrow {display:block;margin:18px 0 5px;}
.battle-countdown-number {
  font-size:clamp(92px,20vw,150px);
  font-weight:850;
  line-height:1;
  font-variant-numeric:tabular-nums;
  letter-spacing:-.06em;
  color:#245bbb;
}
.battle-countdown-screen p {font-size:14px;color:#6e83a2;}
.battle-result-points {display:block;font-size:16px;color:#1b437e;margin:12px 0;}
/* Mantener visible solamente la X y el título de la actividad. */
.workspace.focus-battle .battle-focus-header {
  max-width:850px;
  margin-bottom:16px;
}
.workspace.focus-battle .battle-focus-header .eyebrow {
  color:#5b7db0;
}
body.dark .battle-quiz-top>.pill {
  background:#253d5d;
  color:#d5e7ff;
  border-color:#416185;
}
body.dark .battle-time-badge {
  background:#223b5d;
  border-color:#49678d;
  color:#eff6ff;
}
body.dark .battle-mini-track-line:before {background:linear-gradient(90deg,#355273,#5d7eac);}
body.dark .battle-mini-track-line:after {background:repeating-linear-gradient(90deg,transparent 0,transparent 12px,#c6dafb70 12px,#c6dafb70 16px);}
body.dark .battle-mini-track-caption {color:#b4c5dd;}
body.dark .battle-mini-track-goal {color:#c6d7ec;}
body.dark .battle-question-view .option {
  background:#1d304b;
  border-color:#3a5274;
  color:#edf4ff;
}
body.dark .battle-question-view .option .letter {background:#304969;color:#eef5ff;}
body.dark .battle-question-view .option.selected {
  border-color:#91b7f0;
  background:#2b4977;
  color:#fff;
}
body.dark .battle-waiting {background:#193c34;border-color:#397963;color:#d4f8eb;}
body.dark .battle-countdown-screen .battle-countdown-number {color:#bcd5ff;}
body.dark .battle-countdown-screen p {color:#bdcee3;}
body.dark .battle-result-points {color:#dbecff;}
@media(max-width:600px){
  .workspace.focus-battle .page {padding-inline:14px!important;}
  .battle-quiz-top {margin-top:4px;}
  .battle-mini-track {margin-bottom:19px;}
  .battle-question-view .question {font-size:21px;line-height:1.4;}
  .battle-time-badge {width:60px;height:42px;font-size:19px;}
  .battle-track-car {width:38px;height:30px;}
  .battle-track-car .battle-car-svg {width:38px!important;height:30px!important;}
  .battle-question-view .option {font-size:13px;padding:13px 12px;}
}
@media(prefers-reduced-motion:reduce) {
 .battle-mini-track *, .battle-countdown-screen * {transition:none!important;animation:none!important;}
}
