/* Reservador de Citas Akkinio. Se adapta a la web que lo incrusta con estas variables (en el contenedor o más arriba):
   --cz-texto, --cz-suave (texto secundario), --cz-fondo (fichas), --cz-linea, --cz-activo (fondo de lo elegido),
   --cz-activo-texto, --cz-radio. La letra la hereda. Por defecto, blanco y negro sobre claro. */
.cz{--_t:var(--cz-texto,#111);--_s:var(--cz-suave,#5b5b5b);--_f:var(--cz-fondo,#fff);--_l:var(--cz-linea,#d9d6d0);--_a:var(--cz-activo,#111);--_at:var(--cz-activo-texto,#fff);--_r:var(--cz-radio,4px);color:var(--_t);font:inherit}
.cz *{box-sizing:border-box}
.cz-paso{border:0;margin:0 0 20px;padding:0;min-width:0}
.cz-tit{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--_s);margin:0 0 10px;padding:0}
.cz-tit button{font:inherit;letter-spacing:0;text-transform:none;font-size:.86rem;font-weight:600;background:none;border:0;color:var(--_t);text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:4px 0}
.cz-srv{display:grid;gap:8px}
.cz-op{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:52px;padding:12px 16px;border:1px solid var(--_l);border-radius:var(--_r);background:var(--_f);color:var(--_t);font:inherit;font-weight:600;text-align:left;cursor:pointer;transition:border-color .15s,background .15s,color .15s}
.cz-op small{font-weight:500;color:var(--_s);white-space:nowrap}
.cz-op:hover{border-color:var(--_t)}
.cz-op[aria-pressed="true"]{background:var(--_a);border-color:var(--_a);color:var(--_at)}
.cz-op[aria-pressed="true"] small{color:inherit;opacity:.8}
.cz-op:focus-visible,.cz-dia:focus-visible,.cz-hora:focus-visible,.cz-btn:focus-visible,.cz input:focus-visible{outline:2px solid var(--_t);outline-offset:2px}
.cz-dias{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:6px;margin:0 -2px;padding-inline:2px;scrollbar-width:thin}
.cz-dia{flex:0 0 64px;scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 4px;border:1px solid var(--_l);border-radius:var(--_r);background:var(--_f);color:var(--_t);font:inherit;cursor:pointer}
.cz-dia b{font-size:1.25rem;line-height:1.1}
.cz-dia span{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--_s)}
.cz-dia[aria-pressed="true"]{background:var(--_a);border-color:var(--_a);color:var(--_at)}
.cz-dia[aria-pressed="true"] span{color:inherit;opacity:.85}
.cz-dia:disabled{opacity:.35;cursor:not-allowed;text-decoration:line-through}
.cz-horas{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:8px}
.cz-hora{min-height:46px;border:1px solid var(--_l);border-radius:var(--_r);background:var(--_f);color:var(--_t);font:inherit;font-weight:600;cursor:pointer}
.cz-hora:hover{border-color:var(--_t)}
.cz-hora[aria-pressed="true"]{background:var(--_a);border-color:var(--_a);color:var(--_at)}
.cz-franja{grid-column:1/-1;font-size:.8rem;color:var(--_s);margin:6px 0 0}
.cz-vacio{font-size:.95rem;color:var(--_s);margin:0}
.cz-campos{display:grid;gap:12px}
.cz-campo label{display:block;font-size:.86rem;font-weight:600;margin-bottom:6px}
.cz-campo label small{font-weight:400;color:var(--_s)}
.cz input[type=text],.cz input[type=tel],.cz input[type=email]{width:100%;min-height:50px;padding:12px 14px;border:1px solid var(--_l);border-radius:var(--_r);background:var(--_f);color:var(--_t);font:inherit;font-size:16px}
.cz-acepto{display:flex;gap:10px;align-items:flex-start;font-size:.84rem;line-height:1.45;color:var(--_s)}
.cz-acepto input{margin-top:3px;width:18px;height:18px;flex:none;accent-color:var(--_a)}
.cz-acepto a{color:inherit}
.cz-trampa{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.cz-resumen{padding:12px 14px;border-left:3px solid var(--_t);background:rgba(127,127,127,.12);background:color-mix(in srgb,var(--_f) 92%,var(--_t));font-size:.95rem;line-height:1.45;margin:0 0 14px}
.cz-btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:54px;padding:14px 20px;border:1px solid var(--_a);border-radius:var(--_r);background:var(--_a);color:var(--_at);font:inherit;font-weight:700;font-size:1rem;cursor:pointer}
.cz-btn:disabled{opacity:.55;cursor:progress}
.cz-btn.cz-sec{background:transparent;color:var(--_t);border-color:var(--_l)}
.cz-error{margin:10px 0 0;padding:10px 12px;border:1px solid #b3261e;border-radius:var(--_r);color:#b3261e;background:#fff;font-size:.92rem}
.cz-hecho{text-align:left}
.cz-hecho h3{margin:0 0 8px;font-size:1.4rem}
.cz-hecho p{margin:0 0 12px;line-height:1.5}
.cz-hecho .cz-btn{margin-top:8px}
.cz-cargando{font-size:.92rem;color:var(--_s)}
@media (prefers-reduced-motion:reduce){.cz *{transition:none!important}}
