:root{--tinta:#20123a;--morado:#5b2bd6;--morado-suave:#efe9ff;--naranja:#ff7139;--amarillo:#ffbd4f;--magenta-texto:#8a0b4f;--fondo:#fbf9ff;--borde:#d9cff2;--gris:#5e5475}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,sans-serif;color:var(--tinta);background:var(--fondo)}h1,h2{font-family:Space Grotesk,Inter,sans-serif;letter-spacing:-.5px;margin:0}a{color:var(--morado);font-weight:600}.barra{background:var(--tinta);padding:16px 24px;flex-wrap:wrap;gap:12px;justify-content:space-between}.barra,.logo{color:#fff;display:flex;align-items:center}.logo{text-decoration:none;gap:10px;font:700 26px Space Grotesk,sans-serif}.logo span{background:var(--naranja);color:var(--tinta);width:36px;height:36px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:22px}.etiqueta-qa{background:var(--amarillo);color:var(--tinta);border-radius:999px;padding:4px 12px;font-size:13px;font-weight:700}.centro{max-width:480px;margin:0 auto;padding:40px 20px 64px;display:flex;flex-direction:column;gap:20px}.ancho{max-width:760px}.tarjeta{background:#fff;border:1px solid #e4ddf5;border-radius:24px;padding:28px;gap:18px;box-shadow:0 8px 24px rgba(32,18,58,.06)}.campo,.tarjeta{display:flex;flex-direction:column}.campo{gap:8px}.campo label{font-weight:600;font-size:15px}.campo small{color:var(--gris);font-size:14px}input{width:100%;height:52px;padding:0 16px;border:2px solid var(--borde);border-radius:14px;font:500 17px Inter,sans-serif;color:var(--tinta);background:#fff}input:focus{outline:none;border-color:var(--morado);box-shadow:0 0 0 4px #e6dcff}button{font-family:Inter,sans-serif;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid var(--morado);outline-offset:2px}.boton{min-height:56px;padding:0 24px;border-radius:16px;border:none;background:var(--morado);color:#fff;font-weight:700;font-size:18px}.boton-claro{min-height:44px;padding:0 16px;border-radius:12px;border:2px solid #cfc3f2;background:transparent;color:#fff}.aviso,.boton-claro{font-weight:600;font-size:15px}.aviso{border-radius:14px;padding:14px 16px}.aviso-error{background:#ffe4ec;color:var(--magenta-texto)}.aviso-ok{background:#ffe7b8;color:var(--tinta)}.texto{margin:0;font-size:17px;line-height:1.5;color:var(--gris)}.dato{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid #f1eef7;font-size:16px}.dato span:first-child{color:var(--gris)}.dato span:last-child{font-weight:600;text-align:right;overflow-wrap:anywhere}.insignia{align-self:flex-start;background:var(--amarillo);color:var(--tinta);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}.menu{display:flex;flex-wrap:wrap;gap:8px}.menu-item{min-height:48px;padding:0 18px;border-radius:14px;border:2px solid var(--borde);background:#fff;color:var(--tinta);font-weight:600;font-size:16px;text-decoration:none;display:flex;align-items:center}.menu-item.activo{background:var(--tinta);border-color:var(--tinta);color:#fff}.suave{background:#f4f0ff;box-shadow:none}.fila{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:14px 0;border-top:1px solid #f1eef7}.fila-titulo{font-weight:700;font-size:17px}.fila-detalle{font-size:15px;color:var(--gris)}.boton-borde{min-height:44px;padding:0 16px;border-radius:12px;border:2px solid var(--borde);background:#fff;color:var(--tinta);font-weight:600;font-size:14px}.pildoras{display:flex;flex-wrap:wrap;gap:8px}.pildora{min-height:44px;padding:0 16px;border-radius:999px;border:2px solid var(--borde);background:#fff;color:var(--tinta);font-weight:600;font-size:15px;text-decoration:none;display:flex;align-items:center}.pildora.activa{background:var(--morado);border-color:var(--morado);color:#fff}.leyenda{display:flex;flex-wrap:wrap;gap:16px;font-size:14px;font-weight:600}.leyenda span{display:flex;align-items:center;gap:8px}.muestra{width:18px;height:18px;border-radius:6px;background:#f1eef7;border:1px solid var(--borde);display:inline-block}.muestra.abierto{background:var(--morado);border-color:var(--morado)}.grilla-caja{overflow-x:auto}.grilla{min-width:620px;display:grid;grid-template-columns:62px repeat(7,minmax(0,1fr));grid-gap:6px;gap:6px;align-items:center}.grilla-dia{font-weight:700;font-size:14px;text-align:center}.grilla-hora{font-weight:600;font-size:14px}.bloque{min-height:44px;border-radius:10px;border:1px solid var(--borde);background:#f1eef7;color:#4a4160;font-weight:600;font-size:12px}.bloque.abierto{background:var(--morado);border-color:var(--morado);color:#fff}.hueso{background:#e9e3f7;border-radius:12px}.hueso-titulo{height:40px;width:55%}.hueso-menu{height:48px;width:80%}.hueso-linea{height:22px;width:100%}.hueso-linea.corta{width:60%}.duracion{display:flex;flex-direction:column;gap:10px;background:#f4f0ff;border-radius:16px;padding:16px}.duracion-titulo{font-weight:700;font-size:16px}.duracion small{color:var(--gris);font-size:14px;line-height:1.4}button.pildora{cursor:pointer;font-family:Inter,sans-serif}.bloque.bajo{min-height:36px}.pasos{list-style:none;margin:0;padding:0;flex-wrap:wrap}.paso,.pasos{display:flex;gap:8px}.paso{padding:8px 14px 8px 8px;border-radius:999px;background:#fff;border:1px solid #e4ddf5;font-weight:600;font-size:14px}.paso,.paso span{align-items:center}.paso span{width:28px;height:28px;border-radius:50%;background:#e4ddf5;display:flex;justify-content:center}.paso.actual{background:var(--tinta);border-color:var(--tinta);color:#fff}.paso.actual span{background:var(--naranja);color:var(--tinta)}.paso.hecho span{background:var(--morado);color:#fff}.rotulo{font-weight:600;font-size:15px}.pildora.cuadrada{border-radius:14px;min-height:48px;font-size:16px;text-align:left;padding:8px 18px}.dias{flex-wrap:wrap;gap:8px}.dia,.dias{display:flex}.dia{width:72px;padding:8px 0;border-radius:14px;border:2px solid var(--borde);background:#fff;color:var(--tinta);flex-direction:column;align-items:center;gap:2px}.dia b{font:700 22px Space Grotesk,sans-serif}.dia small{font-size:12px;font-weight:600}.horas{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));grid-gap:8px;gap:8px}.hora{min-height:50px;border-radius:14px;border:2px solid var(--borde);background:#fff;color:var(--tinta);font-weight:600;font-size:17px}.dia.activo,.hora.activo{background:var(--morado);border-color:var(--morado);color:#fff}.botones{display:flex;flex-wrap:wrap;gap:12px}.crece{flex:1 1 220px}.boton-borde:disabled,.boton:disabled{opacity:.6;cursor:wait}.boton-borde.grande{min-height:56px;padding:0 24px;border-radius:16px;font-size:17px}.texto.fuerte{color:var(--tinta)}.aviso-pago{background:#fff3e0;border:2px solid var(--naranja);font-weight:500;line-height:1.5;font-size:16px}.boton-pago{background:var(--naranja);color:var(--tinta);text-decoration:none;display:flex;align-items:center;justify-content:center}.enlace-publico{overflow-wrap:anywhere;font-weight:600}.dia.sin{background:#f1eef7;border-color:#f1eef7;color:#6b6282;cursor:not-allowed}.dia.sin b{text-decoration:line-through}.nota{color:var(--gris);font-size:14px}.logo span{font-size:20px}select{width:100%;height:52px;padding:0 12px;border:2px solid var(--borde);border-radius:14px;font:500 17px Inter,sans-serif;color:var(--tinta);background:#fff}select:focus{outline:none;border-color:var(--morado);box-shadow:0 0 0 4px #e6dcff}.enlace-boton{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.boton-claro.enlace-boton,.boton.enlace-boton{color:#fff}.boton-borde.enlace-boton{color:var(--tinta)}.portada{display:flex;flex-direction:column;gap:10px}.portada-titulo{font-size:clamp(30px,6vw,44px);line-height:1.1;letter-spacing:-1px}.buscador{display:flex;flex-direction:column;gap:16px}.buscador-fila{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}.campo.crece{flex:1 1 260px}.resultados{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.resultado{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding:16px 18px;border:2px solid var(--borde);border-radius:16px;background:#fff;color:var(--tinta);text-decoration:none;font-weight:700;font-size:18px}.resultado:hover{border-color:var(--morado)}.resultado-ir{background:var(--morado);color:#fff;border-radius:12px;padding:10px 16px;font-size:15px}