/* LeColor · ventana de reserva de la visita técnica */
html.cita-lock{overflow:hidden}
.cita-ov{position:fixed;inset:0;z-index:1300;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(15,30,46,.58);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);overscroll-behavior:contain}
.cita-ov[hidden]{display:none}
.cita{position:relative;width:100%;max-width:640px;max-height:min(92vh,880px);overflow:auto;overscroll-behavior:contain;padding:clamp(22px,4vw,40px);background:#FAFAF8;color:#475569;border-radius:26px;box-shadow:0 40px 90px -30px rgba(15,30,46,.7);font:400 16px/1.55 var(--sans,'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif);outline:none}
.cita h2{margin:0 36px 8px 0;font:600 clamp(1.7rem,4.2vw,2.25rem)/1.08 var(--serif,'Cormorant Garamond',Georgia,serif);color:#0F1E2E}
.cita-sub{margin:0 0 18px;font-size:.98rem;color:#475569;max-width:52ch}
.cita-x{position:absolute;top:14px;right:14px;display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:50%;background:#fff;color:#0F1E2E;box-shadow:0 1px 3px rgba(15,30,46,.25);cursor:pointer}
.cita-x:hover{background:#F1EFEA}
.cita-x svg{width:20px;height:20px}
.cita :focus-visible{outline:2px solid #0F1E2E;outline-offset:2px}
.cita-g{margin:0 0 16px;padding:0;border:0;min-width:0}
.cita-g legend{padding:0;margin:0 0 8px;font:600 .9rem/1.3 var(--sans,'Inter',system-ui,sans-serif);color:#0F1E2E}
.cita-g.is-invalid{padding:8px;margin-inline:-8px;border-radius:14px;box-shadow:0 0 0 2px #D9232A}
.cita-dias,.cita-horas{display:flex;flex-wrap:wrap;gap:8px}
.cdia,.chora{position:relative;display:block}
.cdia input,.chora input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.cdia span,.chora span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-width:78px;min-height:48px;padding:6px 14px;border:1.5px solid #7C8B96;border-radius:14px;background:#fff;color:#0F1E2E;font:600 .95rem/1.2 var(--sans,'Inter',system-ui,sans-serif);transition:background-color .2s,border-color .2s,color .2s}
.cdia span b{font-weight:600;text-transform:uppercase;font-size:.72rem;letter-spacing:.06em;color:#64748B}
.cdia input:checked+span,.chora input:checked+span{background:#0F1E2E;border-color:#0F1E2E;color:#fff}
.cdia input:checked+span b{color:rgba(255,255,255,.75)}
.cdia input:focus-visible+span,.chora input:focus-visible+span{outline:2px solid #0F1E2E;outline-offset:3px}
.cdia:hover input:not(:checked):not(:disabled)+span,.chora:hover input:not(:checked):not(:disabled)+span{border-color:#0F1E2E;background:#F1EFEA}
.chora.off span{border-style:dashed;border-color:#C5CCD2;background:#F1EFEA;color:#8895A0;text-decoration:line-through}
.chora.off small{font-size:.66rem;font-weight:600;text-decoration:none;display:block;letter-spacing:.02em}
.chora.off input{cursor:not-allowed}
.cita-urg{display:flex;align-items:center;gap:10px;margin-top:12px;font-weight:600;color:#0F1E2E;cursor:pointer}
.cita-urg input,.cita-cons input{flex:none;width:20px;height:20px;margin:0;accent-color:#0F1E2E}
.cita-otra{margin-top:10px}
.cita-otra label{display:block;margin-bottom:6px;font:600 .875rem/1.3 var(--sans,'Inter',system-ui,sans-serif);color:#0F1E2E}
.cita-otra input[type=date]{min-height:48px;width:100%;max-width:260px;padding:0 12px}
.cita-nota{margin:6px 0 0;font-size:.82rem;color:#64748B}
.cita-info,.cita-vacio{margin:8px 0 0;font-size:.9rem;color:#64748B}
.cita-vacio a{color:#0F1E2E}
.cita-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.cfld{display:flex;flex-direction:column;gap:6px;margin:0 0 14px;min-width:0}
.cfld label{font:600 .875rem/1.3 var(--sans,'Inter',system-ui,sans-serif);color:#0F1E2E}
.cfld .opt{font-weight:400;color:#64748B}
.cita input[type=text],.cita input[type=tel],.cita input[type=date],.cita textarea{width:100%;min-height:50px;padding:0 14px;border:1.5px solid #7C8B96;border-radius:12px;background:#fff;color:#0F1E2E;font:400 1rem/1.2 var(--sans,'Inter',system-ui,sans-serif)}
.cita textarea{padding:12px 14px;line-height:1.5;resize:vertical;min-height:84px}
.cita input[type=text]:focus,.cita input[type=tel]:focus,.cita input[type=date]:focus,.cita textarea:focus,
.cita input[type=text]:focus-visible,.cita input[type=tel]:focus-visible,.cita input[type=date]:focus-visible,.cita textarea:focus-visible{outline:none;border-color:#0F1E2E;box-shadow:0 0 0 3px rgba(15,30,46,.12)}
.cita .is-invalid,.cita [aria-invalid="true"]{border-color:#D9232A}
.cita input.is-invalid,.cita textarea.is-invalid{box-shadow:0 0 0 3px rgba(217,35,42,.12)}
.cita-est{margin:0 0 14px;padding:10px 14px;border-radius:12px;background:#EEF3F0;color:#0F1E2E;font-size:.9rem}
.cita-cons{display:flex;gap:12px;align-items:flex-start;margin:4px 0 12px;font-size:.875rem;line-height:1.45;cursor:pointer}
.cita-cons a{color:#0F1E2E}
.cita-err{margin:0 0 12px;padding:10px 14px;border-radius:12px;background:#FBE9EA;color:#8E1A20;font-weight:600;font-size:.92rem}
.cita-err[hidden]{display:none}
.cita-act{display:flex;flex-wrap:wrap;gap:10px}
.cita-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border:1.5px solid #0F1E2E;border-radius:99px;background:#fff;color:#0F1E2E;font:600 1rem/1 var(--sans,'Inter',system-ui,sans-serif);text-decoration:none;cursor:pointer;transition:background-color .2s,transform .2s}
.cita-btn:hover{background:#F1EFEA}
.cita-btn.p{background:#0F1E2E;color:#fff}
.cita-btn.p:hover{background:#0A1520;transform:translateY(-1px)}
.cita-btn:disabled{opacity:.6;cursor:progress;transform:none}
.cita-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.cita-ok{text-align:left}
.cita-okico{display:grid;place-items:center;width:52px;height:52px;margin-bottom:14px;border-radius:50%;background:#188038;color:#fff}
.cita-okico svg{width:26px;height:26px}
.cita-big{margin:0 0 8px;font:600 clamp(1.3rem,3.4vw,1.6rem)/1.25 var(--serif,'Cormorant Garamond',Georgia,serif);color:#0F1E2E}
@media (max-width:560px){
  .cita-ov{align-items:flex-end;padding:0}
  .cita{max-width:none;max-height:94vh;border-radius:24px 24px 0 0;padding:22px 18px 26px}
  .cita-row{grid-template-columns:minmax(0,1fr)}
  .cita-btn{width:100%}
  .cita-horas{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
  .cdia span{min-width:72px}
  .chora span{min-width:0;padding:6px 2px;font-size:.9rem}
  .chora.off small{font-size:.58rem}
}
@media (prefers-reduced-motion:no-preference){
  .cita{animation:citaIn .28s cubic-bezier(.22,.7,.12,1)}
  @keyframes citaIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
}
