/* Mimitos · Veterinarias cerca y turnos (assets/js/mascotas-vets.js). Usa los tokens de mascotas.css. */
.vx{display:flex;flex-direction:column;gap:20px;min-width:0}
.vx-tabs{gap:8px}
.vx-tabs .chip{flex:1 1 auto;min-width:0}
@media(max-width:400px){.vx-tabs .chip{padding:0 12px;font-size:14px}}

/* dónde buscar */
.vx-loc{gap:14px}
.vx-loc h2{font-size:18px}
.vx-area{display:flex;flex-direction:column;gap:6px}
.vx-area label{font-weight:600;font-size:14px}
.vx-area-r{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.vx-area input{min-height:48px;border-radius:14px;border:0;box-shadow:inset 0 0 0 1px var(--line2);background:var(--card);padding:0 14px;min-width:0}
.vx-area input:focus-visible{outline:2.5px solid var(--act);outline-offset:1px}
/* error del campo (dirección no encontrada, sin permiso de ubicación): --late sobre --late-bg, AA */
.vx-err{margin:0;padding:10px 14px;border-radius:var(--r-s);background:var(--late-bg);color:var(--late);font-size:14.5px;font-weight:500}
.vx-area input[aria-invalid="true"]{box-shadow:inset 0 0 0 1.5px var(--late)}
.vx-loc-acts{display:grid;grid-template-columns:1fr;gap:8px}
@media(min-width:560px){.vx-loc-acts{grid-template-columns:1fr 1fr}}

/* barra de ubicación: siempre arriba de la lista y del mapa */
.vx-bar{display:flex;flex-direction:column;gap:2px;min-width:0;padding:8px 8px 8px 16px;border-radius:var(--r);background:var(--card);box-shadow:var(--sh1)}
.vx-bar-r{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}
.vx-zone{display:inline-flex;align-items:center;gap:6px;min-height:44px;align-self:flex-start;font-size:14.5px;color:var(--act);font-weight:600}
.vx-zone svg.i,.vx-zone-on svg.i,.vx-zrow svg.i{width:16px;height:16px;color:var(--heart)}
.vx-zone-on{display:inline-flex;align-items:center;gap:6px;min-height:32px;font:500 11.5px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink3)}
.vx-zrow{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:8px 8px 8px 14px;border-radius:var(--r-s);background:var(--sunk);font-size:14.5px;color:var(--ink2)}
.vx-zrow>span:first-child{display:inline-flex;align-items:center;gap:6px;min-width:0}
.vx-zrow b{color:var(--ink);font-weight:600}
.vx-zbtns{display:flex;gap:8px}

/* combobox: sugerencias de Google (cada opción 52 px, más que los 44 de mínimo) */
.vx-sug-box{display:flex;flex-direction:column;gap:8px}
.vx-sug-box:empty{display:none}
.vx-area small.dim{font-size:13px}
.vx-sug{list-style:none;margin:0;padding:6px;border-radius:var(--r-s);background:var(--card);box-shadow:var(--sh2);display:flex;flex-direction:column;gap:2px}
.vx-opt{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;min-height:52px;padding:6px 10px;border-radius:10px;cursor:pointer}
.vx-opt svg.i{width:18px;height:18px;color:var(--ink3)}
.vx-opt b{display:block;font-weight:600;font-size:15px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vx-opt small{display:block;font-size:13px;color:var(--ink2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vx-opt:hover{background:var(--paper)}
.vx-opt[aria-selected="true"]{background:var(--act-soft);box-shadow:inset 0 0 0 2px var(--act)}
.vx-sug-attr{padding:0 0 0 8px}
.vx-sug-msg{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:14.5px;color:var(--ink2)}
.vx-area-r a.btn{color:#fff;text-decoration:none}
.vx-bar-t{display:flex;align-items:center;gap:10px;min-width:0;font-size:15px;color:var(--ink2)}
.vx-bar-t>svg.i{flex:none;width:18px;height:18px;color:var(--act)}
.vx-bar-t>span{min-width:0;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.35;overflow-wrap:anywhere}
.vx-bar-t b{color:var(--ink);font-weight:600}
.vx-bar .btn{flex:none;min-width:96px}

/* mi veterinaria y motivo */
.vx-mine{gap:14px}
.vx-mine-h{display:flex;gap:12px;align-items:center}
.vx-mine-h h2{font-size:18px}
.vx-mine-h small{display:block;font-size:13.5px}
.vx-mine .btns .btn{flex:1 1 auto}
.vx-why small{display:block;font-size:13.5px}
.vx-mine-t{flex:1;min-width:0}
.vx-mine-t h2,.vx-mine-t b{overflow-wrap:anywhere}
.vx-mine-ed{display:flex;gap:2px;flex:none;align-self:flex-start}
.vx-mine-ed .link{min-height:44px;min-width:44px;padding:0 6px;font-size:13.5px}
.vx-mine-list{display:flex;flex-direction:column;gap:10px}
/* Inicio: compacta (nombre + Cambiar/Quitar; debajo, la acción y los íconos) */
.vx-mine-home{gap:6px;padding:10px 12px 12px 16px}
.vx-mine-home .vx-mine-h{align-items:flex-start}
.vx-mine-home .vx-mine-t{padding-top:6px}
.vx-mine-home .vx-mine-t .eyebrow{display:block;font-size:11px}
.vx-mine-home .vx-mine-t b{display:block;font-size:15.5px;line-height:1.3}
.vx-mine-row{display:flex;gap:6px;align-items:center}
.vx-mine-row .btn{flex:1 1 auto}
.vx-mine[tabindex="-1"]:focus{outline:2px solid var(--act);outline-offset:3px}

/* resultados: lista y mapa (escritorio: lado a lado) */
.vx-res{display:flex;flex-direction:column;gap:14px;min-width:0}
.vx-list{display:flex;flex-direction:column;gap:8px;min-width:0}
.vx-map{border-radius:var(--r);overflow:hidden;box-shadow:var(--sh1);background:var(--sunk);aspect-ratio:4/3;max-height:340px}
.vx-map iframe{display:block;width:100%;height:100%;border:0}
@media(min-width:1024px){
  .vx-res{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:24px;align-items:start}
  .vx-map{order:2;position:sticky;top:96px;aspect-ratio:auto;height:min(560px,calc(100vh - 140px));max-height:none}
}
.vx-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:start}
.vx-row[aria-current="true"]{background:var(--act-soft)}
.vx-n{width:28px;height:28px;border-radius:50%;background:var(--sunk);color:var(--ink2);display:grid;place-items:center;font:600 13px/1 var(--f);font-variant-numeric:tabular-nums;margin-top:2px}
.vx-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:6px}
.vx-stars{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:var(--ink2)}
.vx-stars svg.i{width:15px;height:15px;fill:#B7791F;stroke:#B7791F}
.vx-stars b{color:var(--ink);font-weight:600}
.vx-row>svg.i{margin-top:6px}

/* atribución de Google: texto "Google Maps", Roboto 400, 12–16 px, #5E5E5E (contraste 6,5:1 sobre el papel) */
.vx-attr{font:400 12px/1.4 Roboto,Arial,sans-serif;color:#5E5E5E;padding:10px 0 0 2px;margin:0}
.vx-credits{font-size:12.5px}

.vx-busy{display:flex;flex-direction:column;gap:8px}
.vx-msg textarea{min-height:104px}
dialog .vx-attr{padding-top:12px}

@media(prefers-reduced-motion:no-preference){
  .vx-row{transition:background .2s var(--ease)}
  .vx-res{animation:vxIn .3s var(--ease) both}
  @keyframes vxIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
}

/* los links con forma de botón dentro de las hojas (WhatsApp, Llamar, Cómo llegar) no heredan el color de .fbody a */
.fbody a.btn{color:#fff;font-weight:600}
.fbody a.btn.ghost{color:var(--ink)}
.fbody a.btn.soft{color:var(--act)}

/* "Probar por WhatsApp" (fijo): aclaración chica debajo */
.vx-wa-note{font-size:12.5px;margin:-2px 0 0;flex-basis:100%}
