/* With scripting disabled the authored still illustrations remain available. */
html.model-loading-enabled::before,html.model-loading-enabled::after {
  content: ''; position: fixed; pointer-events: none; visibility: hidden; opacity: 0;
  transition: opacity .18s ease,visibility 0s .18s;
}
html.model-loading-enabled::before { z-index: 998; inset: 0; background: var(--model-entry-surface,#050505); }
html.model-loading-enabled::after {
  z-index: 999; width: 58px; height: 58px; left: calc(50% - 29px); top: calc(50% - 29px);
  background: url('/assets/sam-signature-mark.svg') center/contain no-repeat;
  filter: var(--model-entry-ink,invert(1));
}
html.model-entry-pending::before,html.model-entry-pending::after { visibility: visible; opacity: 1; pointer-events: auto; transition: none; }
/* The original full signature owns homepage reload presentation. */
html.is-preloading.model-entry-pending::before,html.is-preloading.model-entry-pending::after { visibility: hidden; opacity: 0; pointer-events: none; }
html.model-entry-pending :is(main,.site-header,.skip-link) { opacity: 0 !important; }
html.model-loading-enabled :is(.work-study,.aces-machine,.orrery-character,.orrery-material-stage) > canvas { transition: none; }
html.model-loading-enabled :is(.work-study,.aces-machine,.orrery-character,.orrery-material-stage):not([data-model-state=ready]) > canvas { opacity: 0; }
html.model-loading-enabled :is(.work-study,.aces-machine,.orrery-character,.orrery-material-stage):not([data-model-state=fallback]) > svg {
  opacity: 0; visibility: hidden; transition: none;
}
html.model-loading-enabled :is(.work-study,.aces-machine,.orrery-character,.orrery-material-stage)[data-model-state=fallback] > svg {
  visibility: visible; transition: none;
}
html.model-loading-enabled :is(.work-study,.aces-machine,.orrery-character,.orrery-material-stage):not([data-model-state=ready]):not([data-model-state=fallback]) {
  pointer-events: none;
}
@media(prefers-reduced-motion:reduce) {
  html.model-loading-enabled::before,html.model-loading-enabled::after { transition: none; }
}
