/* Compact activity feedback; no panel, preview, orbit or simulated percent. */
.loading-route.ers-loading { padding: 24px; color: var(--ers-ink, #282522); }
#app > .ers-loading { min-height: 100svh; background: var(--ers-ground, #faf8f5); }
.ers-opening-surface { width: fit-content; max-width: min(320px, 100%); display: grid; justify-items: center; gap: 12px; text-align: center; }
.ers-loader-heading { display: flex; align-items: center; justify-content: center; gap: 10px; max-width: 100%; }
.ers-loader-logo { width: 34px; height: 24px; object-fit: contain; flex: 0 0 auto; }
.ers-loader-heading > strong { color: var(--ers-ink, #282522); font-size: 13px; font-weight: 500; line-height: 1.5; }
.ers-opening-surface > p { margin: 0; color: var(--ers-muted, #756d65); font-size: 12px; line-height: 1.6; }
.ers-opening-surface > p:empty { display: none; }
.ers-loader-pulses { display: inline-flex; align-items: center; gap: 4px; height: 12px; flex: 0 0 auto; }
.ers-loader-pulses i {
  display: block; width: 4px; height: 4px; border-radius: 50%; background: var(--ers-orange, #c45112);
  animation: ers-loader-pulse 1.6s ease-in-out infinite; will-change: opacity;
}
.ers-loader-pulses i:nth-child(2) { animation-delay: -.8s; }
.ers-loader-pulses i:nth-child(3) { animation-delay: -.4s; }
@keyframes ers-loader-pulse { 0%, 100% { opacity: .25; } 50% { opacity: 1; } }
.ers-opening-recovery { display: flex; justify-content: center; }
.ers-opening-recovery[hidden] { display: none !important; }
.ers-opening-recovery button { padding: 9px 14px; border: 0; border-radius: 7px; background: var(--ers-primary, #c45112); color: #fff; font-family: inherit; font-size: 12px; font-weight: 600; cursor: pointer; }
.ers-opening-recovery button:focus-visible { outline: 2px solid var(--ers-orange); outline-offset: 3px; }
.ers-loading.is-error .ers-loader-pulses { display: none; }
/* Essential activity remains perceptible under the portal's global motion override. */
@media (prefers-reduced-motion: reduce) {
  .ers-loading .ers-loader-pulses i {
    animation-name: ers-loader-fade !important; animation-duration: 1.6s !important;
    animation-iteration-count: infinite !important; will-change: opacity;
  }
}
@keyframes ers-loader-fade { 0%, 100% { opacity: .25; } 50% { opacity: 1; } }
