:root {
  --fluent-icon-stroke: currentColor;
  --fluent-icon-accent: #facc15;
}

.fluent-icon-host,
i[class^="fa-"],
i[class*=" fa-"] {
  display: inline-grid !important;
  place-items: center !important;
  width: 1.2em !important;
  height: 1.2em !important;
  min-width: 1.2em !important;
  line-height: 1 !important;
  vertical-align: -0.16em !important;
  font-family: inherit !important;
  font-style: normal !important;
  font-weight: 400 !important;
  speak: never;
}

.fluent-icon-host svg,
i[class^="fa-"] > svg,
i[class*=" fa-"] > svg {
  width: 1em;
  height: 1em;
  display: block;
  overflow: visible;
  stroke: currentColor;
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

i[class^="fa-"]::before,
i[class*=" fa-"]::before,
i[class^="fa-"]::after,
i[class*=" fa-"]::after {
  content: none !important;
  display: none !important;
}

.school-module-icon,
.module-section-icon,
.metric-icon,
.role-badge i,
.permission-module-card i,
.btn-icon,
.icon-btn i,
.password-toggle i,
.btn-guardian-access i,
.usuario-avatar,
.action-icon,
.kpi-icon,
.fluent-icon-tile {
  --fluent-icon-accent: #facc15;
}

.school-module-icon > i,
.module-section-icon > i,
.metric-icon > i,
.permission-module-card i,
.role-badge i {
  filter: drop-shadow(0 1px 1px rgba(15, 42, 86, .12));
}

.fluent-icon-host[data-tone="win11"],
.school-module-icon,
.module-section-icon,
.metric-icon {
  border-radius: 14px;
}
/* Fluent replacements for legacy FontAwesome pseudo-icons on login. */
body.is-login #loginLogo::after {
  content: "" !important;
  width: .48em !important;
  height: .48em !important;
  border: .08em solid currentColor !important;
  border-radius: .14em !important;
  box-shadow: 0 -.28em 0 -.2em currentColor !important;
  font-family: inherit !important;
  display: inline-block !important;
}

body.is-login .login-form label:not(.login-remember)::before {
  content: "" !important;
  position: absolute !important;
  z-index: 1 !important;
  top: 29px !important;
  left: 14px !important;
  width: 15px !important;
  height: 15px !important;
  color: #0061bd !important;
  font-family: inherit !important;
  display: block !important;
  box-sizing: border-box !important;
}

body.is-login .login-form label:nth-child(1)::before {
  border: 2px solid currentColor !important;
  border-radius: 999px !important;
  box-shadow: 0 10px 0 -5px currentColor !important;
}

body.is-login .login-form label:nth-child(2)::before {
  width: 14px !important;
  height: 12px !important;
  top: 32px !important;
  border: 2px solid currentColor !important;
  border-radius: 4px !important;
  box-shadow: 0 -7px 0 -4px currentColor !important;
}