/* RC154R3: initial HTML/CSS loading, independent of module evaluation. */
body.tarot-page #tarot-app #boot-state.rc154r3-entry-state { text-align: center; }
body.tarot-page #tarot-app .rc154r3-entry-loading {
  position: relative;
  width: 112px;
  aspect-ratio: 2 / 3;
  margin: 22px auto;
  padding: 0;
  background: #eee8da;
  outline: 1px solid #c8c2b5;
  border-radius: 8px;
  box-shadow: 0 7px 20px rgba(39, 44, 34, .12);
}
body.tarot-page #tarot-app .rc154r3-entry-loading[hidden] { display: none !important; }
body.tarot-page #tarot-app .rc154r3-entry-viewport {
  position: absolute;
  inset: 3%;
  display: block;
  overflow: hidden;
  border-radius: 4px;
}
body.tarot-page #tarot-app .rc154r3-entry-strip {
  display: block;
  width: 600%;
  max-width: none;
  height: 100%;
  margin: 0;
  padding: 0;
  user-select: none;
  pointer-events: none;
  transform: translateX(0);
  animation: rc154r3-entry-frames 1.2s steps(6, end) infinite;
}
body.tarot-page #tarot-app .rc154r3-entry-loading[data-page-hidden="true"] .rc154r3-entry-strip {
  animation-play-state: paused;
}
@keyframes rc154r3-entry-frames {
  from { transform: translateX(0); }
  to { transform: translateX(-100%); }
}
@media (max-width: 500px) {
  body.tarot-page #tarot-app .rc154r3-entry-loading { width: 96px; }
}
@media (prefers-reduced-motion: reduce) {
  body.tarot-page #tarot-app .rc154r3-entry-strip { animation: none; transform: translateX(0); }
}
