/* Keep the document covered until its initial view is complete. */
html.page-loading body > :not(#page-loader) { visibility: hidden !important; }
#page-loader {
  position: fixed; inset: 0; z-index: 2147483647;
  display: grid; place-items: center;
  background: #f8f1e8 url(/images/bg/paper.webp) center bottom / cover no-repeat; color: #574633;
  font-family: sans-serif;
}
html:not(.page-loading) #page-loader, #page-loader[hidden] { display: none !important; }
.page-loader-inner { display: flex; flex-direction: column; align-items: center; width: 100%; }
.page-loader-image { display: block; width: min(72vw, 340px); max-height: 65dvh; object-fit: contain; }
.page-loader-text { margin: 0; font-size: 15px; font-weight: 600; letter-spacing: -.02em; text-align: center; }
.page-loader-retry { display: none; margin-top: 18px; padding: 9px 22px; border: 1px solid #826a50; border-radius: 20px; background: transparent; color: inherit; font: inherit; cursor: pointer; }
.page-loader-stalled .page-loader-retry { display: block; }
@media (prefers-reduced-motion: no-preference) {
  .page-loader-image { animation: page-loader-bob 1.8s ease-in-out infinite; }
  @keyframes page-loader-bob { 50% { transform: translateY(-8px); } }
}
