@font-face {
  font-family: "ZendtryIcons";
  src: url("/fonts/zendtry_icons.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

/*
 * V24: SVG real, inyectado inline.
 * Ya no dependemos de mask-image para el render visible.
 * La TTF se conserva como catálogo/fallback.
 */
.zicon,
.fa,
.fas,
.far,
.fab,
[class^="fa-"],
[class*=" fa-"] {
  font-style: normal !important;
  font-weight: 400 !important;
  font-variant: normal !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  vertical-align: -0.12em;
  flex: 0 0 auto;
}

.zicon-svg {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 1.08em !important;
  min-width: 1.08em !important;
  height: 1.08em !important;
  overflow: visible !important;
  color: inherit !important;
  font-family: initial !important;
  font-size: inherit;
}

.zicon-svg > svg {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  overflow: visible !important;
  fill: currentColor !important;
  color: inherit !important;
}

.zicon-svg > svg path,
.zicon-svg > svg circle,
.zicon-svg > svg rect,
.zicon-svg > svg polygon,
.zicon-svg > svg ellipse {
  fill: currentColor !important;
}

.zicon-svg > svg line,
.zicon-svg > svg polyline {
  stroke: currentColor !important;
}

/* Fallback sólo si no pudo cargarse el SVG. */
.zicon-font {
  font-family: "ZendtryIcons" !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 1em !important;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.zicon[data-zicon-ready="loading"] {
  opacity: 0;
}

.zicon[data-zicon-ready="true"],
.zicon[data-zicon-ready="font"] {
  opacity: 1;
}

.fa-spin,
.zicon-spin {
  animation: zicon-spin 0.95s linear infinite;
}

@keyframes zicon-spin {
  to { transform: rotate(360deg); }
}
