/* Tipografia comun para acciones Vincula.
 * Se carga al final del conjunto :app para evitar que cada vista reduzca
 * nuevamente el texto de sus botones. */
.vincula-site :is(
  .vincula-hero__primary,
  .vincula-navbar__cta,
  .vincula-footer__cta,
  .home-outline-link,
  .nosotros-button,
  .nosotros-cta__secondary,
  .profesionales-section__button,
  .profesional-profile__primary,
  .profesional-profile__secondary,
  .profesional-profile__aside-button,
  .servicios-admin-button,
  .servicio-feature-card__link,
  .servicio-show-hero__cta,
  .servicio-show-summary__button,
  .convenios-admin-button,
  .convenios-filtros__submit,
  .convenio-show__button,
  .experiencias-primary-button,
  .experiencias-filtros__submit,
  .experiencia-form__submit,
  .publicaciones-admin-button,
  .publicaciones-filtros__submit,
  .vincula-form__submit,
  .vincula-form-card__secondary,
  .vincula-index-create-button,
  .vincula-auth-danger__button
) {
  min-height: 48px;
  padding: 12px 22px;
  font-family: var(--vincula-body-font);
  font-size: clamp(1rem, .97rem + .1vw, 1.06rem);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
  text-rendering: optimizeLegibility;
}

/* Acciones secundarias que visualmente funcionan como enlaces. */
.vincula-site :is(
  .vincula-hero__secondary,
  .profesional-card__link,
  .servicio-show-profesional__link,
  .publicacion-read-link,
  .convenio-card__details,
  .convenio-card__external,
  .experiencia-card__link,
  .experiencias-admin-link,
  .experiencia-admin-card__action,
  .convenios-filtros__clear,
  .experiencias-filtros__clear,
  .publicaciones-filtros__clear,
  .vincula-auth-link,
  .vincula-footer__link-button
) {
  font-family: var(--vincula-body-font);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0;
  text-rendering: optimizeLegibility;
}

/* Los selectores de publicacion son botones segmentados y necesitan
 * una superficie comoda sin perder su forma compacta. */
.vincula-site .publicaciones-switch__link {
  min-height: 46px;
  padding: 11px 18px;
  font-family: var(--vincula-body-font);
  font-size: .98rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
}

@media (max-width: 575.98px) {
  .vincula-site :is(
    .vincula-hero__primary,
    .home-outline-link,
    .nosotros-button,
    .nosotros-cta__secondary,
    .profesionales-section__button,
    .servicio-feature-card__link,
    .servicio-show-hero__cta,
    .servicio-show-summary__button,
    .vincula-form__submit,
    .vincula-index-create-button
  ) {
    min-height: 50px;
    padding-inline: 20px;
  }
}

/* La barra usa selectores mas especificos para su composicion. */
.vincula-site .vincula-navbar .vincula-navbar__cta {
  min-height: 46px;
  padding: 11px 21px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
}

/* Selects de formularios y filtros
 *
 * Reemplazamos la flecha nativa para mantener una separación consistente del
 * borde derecho en todos los navegadores. Los selectores múltiples conservan
 * su apariencia nativa porque no utilizan un chevron desplegable.
 */
select:not([multiple]) {
  padding-right: 3.35rem !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9' fill='none'%3E%3Cpath d='M1.5 1.5 7 7l5.5-5.5' stroke='%23785EF0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 1.2rem center !important;
  background-size: 14px 9px !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
}

select:not([multiple]):disabled {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9' fill='none'%3E%3Cpath d='M1.5 1.5 7 7l5.5-5.5' stroke='%239993A2' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}
