.usam-loader {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483647 !important;
  display: grid !important;
  place-items: center !important;
  box-sizing: border-box;
  padding: 24px;
  background: radial-gradient(circle at 50% 38%, #123967 0, #071a36 47%, #041022 100%) !important;
  color: #fff;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .28s ease, visibility .28s ease;
}
.usam-loader[hidden] { display: none !important; }
.usam-loader.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.usam-loader-content {
  width: min(420px, 100%);
  text-align: center;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.usam-loader-mark {
  width: 148px;
  height: 154px;
  position: relative;
  margin: 0 auto 22px;
  filter: drop-shadow(0 18px 30px rgba(0, 0, 0, .25));
}
.usam-loader-face,
.usam-loader-complete {
  position: absolute;
  inset: 0;
  background: url("./usam-isotipo.png") -6px center / auto 164px no-repeat;
}
.usam-loader-face {
  clip-path: polygon(32% 15%, 68% 15%, 74% 23%, 76% 36%, 74% 52%, 77% 63%, 77% 77%, 73% 86%, 27% 86%, 23% 77%, 23% 63%, 26% 52%, 24% 36%, 26% 23%);
}
.usam-loader-complete {
  opacity: 0;
  transition: opacity .36s ease .18s;
}
.usam-loader-lines {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  transition: opacity .2s ease .4s;
}
.usam-loader-line {
  fill: none;
  stroke-width: 5;
  stroke-linecap: butt;
  stroke-linejoin: round;
  animation-duration: 3.6s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}
.usam-loader-line-cyan {
  stroke: #76c2c9;
  animation-name: usam-loader-cyan;
}
.usam-loader-line-blue {
  stroke: #184b81;
  animation-name: usam-loader-blue;
}
.usam-loader-line-red {
  stroke: #98282f;
  animation-name: usam-loader-red;
}
@keyframes usam-loader-cyan {
  0% { stroke: #76c2c9; }
  33.333% { stroke: #184b81; }
  66.667% { stroke: #98282f; }
  100% { stroke: #76c2c9; }
}
@keyframes usam-loader-blue {
  0% { stroke: #184b81; }
  33.333% { stroke: #98282f; }
  66.667% { stroke: #76c2c9; }
  100% { stroke: #184b81; }
}
@keyframes usam-loader-red {
  0% { stroke: #98282f; }
  33.333% { stroke: #76c2c9; }
  66.667% { stroke: #184b81; }
  100% { stroke: #98282f; }
}
.usam-loader.is-finishing .usam-loader-line {
  animation-play-state: paused;
}
.usam-loader.is-finishing .usam-loader-complete { opacity: 1; }
.usam-loader.is-finishing .usam-loader-lines { opacity: 0; }
.usam-loader.is-visible:not(.is-finishing) .usam-loader-complete { transition: none; }
.usam-loader-message {
  margin: 0;
  color: #e8f1ff;
  font-size: clamp(.95rem, 2.5vw, 1.08rem);
  font-weight: 600;
  line-height: 1.5;
}
.usam-loader-detail {
  margin: 9px 0 0;
  color: #a9c2e2;
  font-size: .86rem;
  line-height: 1.45;
}
.usam-loader-detail[hidden] { display: none; }
body.usam-loader-locked { overflow: hidden !important; }
.usam-exam-spinner,
.usam-intra-spinner,
.usam-reformulate-status.is-working::before { display: none !important; }
@media (prefers-reduced-motion: reduce) {
  .usam-loader,
  .usam-loader-complete,
  .usam-loader-lines { transition-duration: .01ms; }
  .usam-loader-line { animation: none !important; }
}
