/* Independent study-object motion; illustration sizing belongs to page-art.css. */
html:root body .stationery-stage { position: relative; display: block; min-width: 0; padding-top: 72px; overflow: visible; isolation: isolate; }
html:root body .stationery-orbit {
  position: absolute;
  top: 0;
  left: 12%;
  right: 12%;
  height: 64px;
  pointer-events: none;
  user-select: none;
}
html:root body .stationery-object {
  position: absolute;
  display: block;
  width: 48px;
  height: auto;
  aspect-ratio: 1;
  object-fit: contain;
  transform-origin: 50% 65%;
  animation-play-state: paused;
}
html:root body .stationery-object--book {
  left: 2%;
  top: 17px;
  transform: rotate(-8deg);
}
html:root body .stationery-object--pencil {
  left: calc(50% - 23px);
  top: 0;
  transform: rotate(5deg);
}
html:root body .stationery-object--note {
  right: 1%;
  top: 13px;
  transform: rotate(8deg);
}
.stationery-stage[data-stationery-ready] .stationery-object--book {
  animation: stationery-book 4.6s ease-in-out infinite;
}
.stationery-stage[data-stationery-ready] .stationery-object--pencil {
  animation: stationery-pencil 5.4s cubic-bezier(.45, 0, .55, 1) infinite;
}
.stationery-stage[data-stationery-ready] .stationery-object--note {
  animation: stationery-note 6.2s ease-in-out infinite;
}
html:root body .stationery-stage[data-stationery-ready] .stationery-object {
  animation-play-state: paused;
}
html:root body .stationery-stage[data-stationery-active] .stationery-object {
  animation-play-state: running;
}
@keyframes stationery-book {
  0%, 100% { transform: translateY(0) rotate(-8deg); }
  50% { transform: translateY(-7px) rotate(-3deg); }
}
@keyframes stationery-pencil {
  0%, 100% { transform: rotate(5deg); }
  35% { transform: rotate(-10deg); }
  70% { transform: rotate(12deg); }
}
@keyframes stationery-note {
  0%, 100% { transform: translate(0, 0) rotate(8deg); }
  40% { transform: translate(-6px, -3px) rotate(1deg); }
  75% { transform: translate(3px, -1px) rotate(5deg); }
}
@media (max-width: 540px) {
  html:root body .stationery-stage { padding-top: 62px; }
  html:root body .stationery-orbit { left: 8%; right: 8%; height: 56px; }
  html:root body .stationery-object { width: 42px; }
  html:root body .stationery-object--book { top: 13px; }
  html:root body .stationery-object--pencil { left: calc(50% - 21px); }
  html:root body .stationery-object--note { top: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  html:root body .stationery-stage .stationery-object { animation: none; }
}
