/* Pagina de reserva de la evaluacion inicial (8-nov-2026). Usa las variables de style.css. */
.rv{margin-top:clamp(1.5rem,4vw,2.5rem);max-width:46rem}
.rv__t{display:flex;align-items:center;gap:.75rem;font-family:var(--f-titulo);font-weight:800;font-size:clamp(1.25rem,2.6vw,1.625rem);line-height:1.15;letter-spacing:-.02em;margin:clamp(2rem,5vw,3rem) 0 1rem}
.pag .rv__t{margin:clamp(2rem,5vw,3rem) 0 1rem}
.rv__n{flex:none;display:inline-grid;place-items:center;width:2rem;height:2rem;border:1px solid var(--oro);border-radius:50%;color:var(--oro);font:800 .9375rem/1 var(--f-texto)}
.rv__pers{display:flex;flex-wrap:wrap;gap:.6rem}
.rv__op,.rv__dia,.rv__hora{font:700 1rem/1 var(--f-texto);color:var(--texto);background:transparent;border:1px solid var(--filete);border-radius:.6rem;cursor:pointer;transition:border-color .2s var(--suave),background-color .2s var(--suave),color .2s var(--suave)}
.rv__op{min-height:3rem;padding:0 1.25rem}
.rv__op:hover:not([aria-checked="true"]),.rv__hora:hover:not([aria-pressed="true"]){border-color:var(--oro)}
.rv__op[aria-checked="true"],.rv__dia[aria-pressed="true"],.rv__hora[aria-pressed="true"]{background:var(--naranja);border-color:var(--naranja);color:var(--bg)}
.pag p.rv__nota{margin-top:1rem;font-size:.9375rem}
.rv__cal{border:1px solid var(--filete);border-radius:.9rem;padding:clamp(.9rem,3vw,1.4rem);background:var(--bg2)}
.rv__mes{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.9rem}
.rv__mes strong{font:800 1.125rem/1.2 var(--f-titulo);text-transform:capitalize}
.rv__nav{width:2.75rem;height:2.75rem;display:inline-grid;place-items:center;border:1px solid var(--filete);border-radius:50%;background:transparent;color:var(--texto);font-size:1.25rem;cursor:pointer}
.rv__nav:hover:not(:disabled){border-color:var(--oro)}
.rv__nav:disabled{opacity:.3;cursor:default}
.rv__rejilla{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.3rem}
.rv__sem{padding:.25rem 0 .4rem;text-align:center;font:700 .75rem/1 var(--f-texto);letter-spacing:.06em;color:var(--sec);text-transform:uppercase}
.rv__dia,.rv__vacio{height:3rem;display:grid;place-items:center;border-radius:.5rem}
.rv__dia{padding:0}
.rv__dia:disabled{border-color:transparent;color:rgba(242,242,242,.28);cursor:default}
.rv__dia.libre{border-color:var(--oro)}
.rv__dia.libre:hover:not([aria-pressed="true"]){background:rgba(212,164,74,.14)}
.rv__horas{margin-top:1.25rem}
.rv__horas h3{margin:0 0 .6rem;font-size:1rem}
.rv__lista{display:flex;flex-wrap:wrap;gap:.6rem}
.rv__hora{min-height:3.25rem;padding:.5rem 1.1rem;display:grid;gap:.25rem;text-align:left}
.rv__hora small{font:600 .75rem/1.1 var(--f-texto);opacity:.8}
.rv__cargando,.rv__vacioMsg{color:var(--sec)}
.rv__form{margin-top:.5rem}
.pag p.rv__elegida{padding:.9rem 1rem;border-left:3px solid var(--naranja);background:var(--bg2);color:var(--texto);font-weight:700}
.rv__campo{margin-top:1.1rem;display:grid;gap:.4rem}
.rv__campo label{font-weight:700;font-size:.9375rem}
.rv__campo input{width:100%;min-height:3rem;padding:0 .9rem;background:var(--bg2);color:var(--texto);border:1px solid var(--filete);border-radius:.6rem;font:400 1rem/1.4 var(--f-texto)}
.rv__campo input:focus{outline:2px solid var(--oro);outline-offset:2px;border-color:var(--oro)}
.pag p.rv__ayuda{font-size:.8125rem;color:var(--sec)}
.rv__trampa{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.rv__ck{display:flex;gap:.8rem;align-items:flex-start;margin:1.4rem 0 1rem;font-size:.9375rem;line-height:1.5;color:var(--sec);cursor:pointer}
.rv__ck input{flex:none;width:1.4rem;height:1.4rem;margin-top:.1rem;accent-color:var(--naranja)}
.pag p.rv__error{margin:0 0 1rem;padding:.8rem 1rem;border:1px solid var(--naranja);border-radius:.6rem;color:var(--texto);background:rgba(255,107,26,.1)}
.rv__form .btn[disabled]{opacity:.55;cursor:wait}
.rv__listo{margin-top:2rem;padding:clamp(1.25rem,4vw,2rem);border:1px solid var(--oro);border-radius:.9rem;background:var(--bg2)}
.rv__listo .rv__t{margin-top:0}
.pag p.rv__resumen{color:var(--texto);font-size:1.125rem;font-weight:700}
@media (max-width:30rem){
  .rv__pers{flex-wrap:nowrap;gap:.4rem}
  .rv__op{flex:1 1 0;min-width:0;padding:0 .4rem;font-size:.9375rem}
  .rv__rejilla{gap:.2rem}
}
@media (prefers-reduced-motion:reduce){.rv__op,.rv__dia,.rv__hora{transition:none}}
