/* ==========================================================
   EMTEL Icon Label System v2.2.44
   Centraliza iconografia SVG para labels de formularios, filtros y vistas.
   No usa emojis ni puntos decorativos como identificador principal.
   ========================================================== */
label.field > span:first-child,
.field > span:first-child {
  display: inline-flex;
  align-items: center;
  gap: .42rem;
}
.field-label-icon {
  display: inline-grid;
  place-items: center;
  width: 1rem;
  height: 1rem;
  min-width: 1rem;
  color: var(--color-primary-strong, #1d4ed8);
  opacity: .86;
}
.field-label-icon .icon-svg,
.field-label-icon svg {
  width: 1rem;
  height: 1rem;
  stroke-width: 2.2;
}
.field-label-text { min-width: 0; }
.card__head h3 > .icon,
.card__head h3 > [data-icon],
.section-heading h2 > .icon,
.tool-access-heading h2 > .icon {
  margin-right: .45rem;
  color: var(--color-primary-strong, #1d4ed8);
}
.category-title-icon {
  display: inline-grid;
  place-items: center;
  width: 1.1rem;
  height: 1.1rem;
  margin-right: .42rem;
  color: var(--category-accent, var(--color-primary-strong, #1d4ed8));
  vertical-align: -.18em;
}
.category-title-icon .icon-svg { width: 1.1rem; height: 1.1rem; }
.category-dot { display: none !important; }
.note-observation-dot {
  display: inline-flex !important;
  align-items: center;
  gap: .25rem;
  width: auto !important;
  height: auto !important;
  border-radius: .55rem !important;
}
.note-observation-dot::before {
  content: '';
  display: inline-block;
  width: .72rem;
  height: .72rem;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h16v16H4z'/%3E%3Cpath d='M8 8h8'/%3E%3Cpath d='M8 12h8'/%3E%3Cpath d='M8 16h5'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h16v16H4z'/%3E%3Cpath d='M8 8h8'/%3E%3Cpath d='M8 12h8'/%3E%3Cpath d='M8 16h5'/%3E%3C/svg%3E") center/contain no-repeat;
}
.icon-audit-card {
  border: 1px solid rgba(37, 99, 235, .16);
  background: linear-gradient(135deg, rgba(37,99,235,.06), rgba(14,165,233,.04));
}
.tool-access-program-toggle {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(240px, .8fr) repeat(2, minmax(180px, 1fr));
  gap: .85rem;
  padding: .85rem;
  border: 1px solid rgba(37, 99, 235, .14);
  border-radius: 1rem;
  background: rgba(37, 99, 235, .045);
}
.tool-access-program-toggle.is-disabled [data-tool-program-credentials] { display: none; }
.tool-access-enabled-pill {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  font-weight: 700;
  color: var(--color-primary-strong, #1d4ed8);
}
@media (max-width: 860px) {
  .tool-access-program-toggle { grid-template-columns: 1fr; }
}
