.mvds-world-object{position:absolute;box-sizing:border-box;transform:translate(-50%,-50%);pointer-events:auto;text-decoration:none;line-height:1.25;user-select:none;touch-action:manipulation}
.mvds-object-fountain{display:block;line-height:0}
.mvds-object-fountain img{display:block;width:100%;height:auto;max-width:none;animation:none;transition:none}
.mvds-object-info{display:grid;place-items:center;aspect-ratio:1;min-width:44px;min-height:44px;padding:0;border:2px solid #b29a69;border-radius:50%;background:linear-gradient(135deg,#fbf5de,#d9c9a6);color:#264c49;box-shadow:0 2px 4px #0005,inset 0 0 0 3px #fff5;font:italic bold clamp(20px,2vw,36px)/1 Georgia,serif;cursor:pointer}
.mvds-object-billboard{container-type:inline-size;display:block;min-width:80px;padding:8px;border:2px solid #634d33;border-radius:5px;background:linear-gradient(100deg,#82613e,#a58250 48%,#765638);box-shadow:2px 5px 7px #0005;color:#fff6d9;overflow-wrap:anywhere}
.mvds-object-billboard:before,.mvds-object-billboard:after{content:'';position:absolute;top:calc(100% - 2px);width:8px;height:14px;background:#725534;border:1px solid #57402b;z-index:-1}
.mvds-object-billboard:before{left:10%;transform:rotate(8deg)}.mvds-object-billboard:after{right:10%;transform:rotate(-8deg)}
.mvds-board-face{display:block;padding:clamp(6px,5cqw,18px);border:1px solid #bba47e;background:linear-gradient(145deg,#29493e,#1c332c);text-align:center;box-shadow:inset 0 0 8px #0005}
.mvds-board-face strong{display:block;font:600 clamp(14px,10cqw,30px)/1.15 Georgia,serif;white-space:pre-wrap}
.mvds-board-face>span{display:block;margin-top:.65em;font:clamp(12px,7cqw,22px)/1.35 Georgia,serif;white-space:pre-wrap}
.mvds-world-object:focus-visible{outline:3px solid #135e96;outline-offset:4px}
.mvds-world-dialog{box-sizing:border-box;width:min(540px,calc(100% - 28px));max-height:85vh;max-height:85svh;padding:32px 26px 26px;border:1px solid #baa47c;border-radius:10px;background:#fbf7eb;color:#243d36;box-shadow:0 14px 60px #0006;overflow:auto;overscroll-behavior:contain;line-height:1.6}
.mvds-world-dialog::backdrop{background:#142a29aa}
.mvds-world-dialog h2{margin:0 30px 18px 0;font:600 1.5rem/1.2 Georgia,serif}
.mvds-world-dialog-content{white-space:pre-wrap;overflow-wrap:anywhere;font:16px/1.65 system-ui,sans-serif}
.mvds-world-dialog-close{position:absolute;top:8px;right:8px;min-width:44px;min-height:44px;padding:6px;border:0;background:transparent;color:inherit;font:28px/1 system-ui,sans-serif;cursor:pointer}
.mvds-world-dialog-close:focus-visible{outline:3px solid #135e96;outline-offset:-3px}
@media(prefers-reduced-motion:reduce){.mvds-world-object,.mvds-world-dialog{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* One shared clock keeps the head lift exactly aligned with the mouse run. */
.mvds-object-bookcat{height:100%;transform:none;pointer-events:none;line-height:0}
.mvds-bookcat-cat{position:absolute;display:block;aspect-ratio:780/724;transform:translate(-50%,-50%);pointer-events:auto;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;cursor:pointer;min-width:0;min-height:0}
.mvds-bookcat-sprite{display:block;width:100%;height:100%;background-image:var(--bookcat-image);background-repeat:no-repeat;background-size:278.462% 100%;background-position:0 0;transform-origin:50% 75%;animation:mvds-bookcat-breathe 4.8s ease-in-out infinite,mvds-bookcat-look 56s steps(1,end) infinite}
.mvds-bookcat-mouse{position:absolute;aspect-ratio:582/724;background:var(--bookcat-image) no-repeat 100% 0/373.196% 100%;opacity:0;pointer-events:none;transform:translate(-50%,-50%) scaleX(var(--mouse-direction));animation:mvds-bookcat-run 56s linear infinite}
.mvds-bookcat-cat:focus-visible{outline:3px solid #135e96;outline-offset:2px;border-radius:30%}
@keyframes mvds-bookcat-breathe{0%,100%{transform:scaleY(1)}50%{transform:scaleY(1.018)}}
@keyframes mvds-bookcat-look{0%,64.99%,78%,100%{background-position:0 0}65%,77.99%{background-position:57% 0}}
@keyframes mvds-bookcat-run{0%,64.99%{left:var(--mouse-start);opacity:0}65%{left:var(--mouse-start);opacity:0}65.5%{opacity:1}70.5%{opacity:1}71%{left:var(--mouse-end);opacity:0}100%{left:var(--mouse-end);opacity:0}}
.mvds-bookcat-paused .mvds-bookcat-sprite,.mvds-bookcat-paused .mvds-bookcat-mouse,.mvds-bookcat-offscreen .mvds-bookcat-sprite,.mvds-bookcat-offscreen .mvds-bookcat-mouse,.mvds-world-hidden .mvds-bookcat-sprite,.mvds-world-hidden .mvds-bookcat-mouse{animation-play-state:paused}
.mvds-bookcat-preview .mvds-bookcat-sprite,.mvds-bookcat-preview .mvds-bookcat-mouse{animation:none}
.mvds-bookcat-preview .mvds-bookcat-cat{cursor:move}
.mvds-bookcat-preview .mvds-bookcat-mouse{left:var(--mouse-start);opacity:.8}
.mvds-bookcat-route{position:absolute;border-bottom:1px dashed #17647b;color:#17647b;font:10px/1.3 system-ui,sans-serif;pointer-events:none}
@media(prefers-reduced-motion:reduce){.mvds-bookcat-sprite,.mvds-bookcat-mouse{animation:none!important}.mvds-bookcat-mouse{opacity:0}}
