/* Focused motion and seasonal craft, without full-screen filters. */
.atlas-landscape{position:relative;aspect-ratio:1000/420;margin:12px 0;background:#faf0df;border:1px dashed #c99d91;border-radius:45% 14% 35% 12%;overflow:hidden}.atlas-landscape svg{width:100%;height:100%}.atlas-path{fill:none;stroke:#b48e82;stroke-width:3;stroke-dasharray:7 9}.atlas-landmark{position:absolute;border:1px solid #bc92a1;background:#fff8eaeF;padding:8px 14px;min-height:44px;border-radius:20px;font:inherit;box-shadow:0 3px 0 #b48a9733;transition:scale .25s,background .25s}.atlas-landmark.spring{left:10%;top:35%}.atlas-landmark.summer{left:69%;top:30%}.atlas-landmark.autumn{left:17%;top:72%}.atlas-landmark.winter{left:68%;top:72%}.atlas-landmark[aria-pressed=true]{scale:1.08;background:#f9d9e3}.atlas-regions>.atlas-region[hidden]{display:none}.world-object-link{flex:0 0 auto;font-size:11px;padding:10px;color:#fff7e7;background:#745569;border-radius:14px;min-height:36px}
body[data-emotion=emotional] #seasonParticles{opacity:.15}body[data-emotion=calm] #seasonParticles{opacity:.25}body[data-emotion=emotional] .sun-rays,body[data-emotion=emotional] .cloud,body[data-performance-stage="4"] .cloud{animation-play-state:paused}body[data-emotion=emotional] .surprise-pocket{margin-top:50px}body[data-emotion=emotional] .wand-cursor small{display:none}
.pull-ribbon{display:block;position:relative;z-index:1;margin:18px auto 0;padding:10px 22px;min-height:44px;border:0;background:#e8b0c4;color:#51394d;clip-path:polygon(0 0,100% 0,100% 100%,50% 85%,0 100%);translate:0 var(--pull,0px);touch-action:none;font:inherit}.secret-drawer-slide{display:block;width:min(260px,80%);margin:20px auto;accent-color:#a66b83;min-height:44px}.inspect-media:not(.zoomed) img{touch-action:pan-y}.memory-details{padding:16px 0;border-top:1px dashed #b8859d}.memory-details summary{cursor:pointer;min-height:44px;padding:10px 0;color:#835471}.memory-details img{max-width:100%;max-height:320px;object-fit:contain}.memory-details[open]{animation:detail-arrive .25s ease-out}@keyframes detail-arrive{from{opacity:.5;translate:0 4px}to{opacity:1;translate:0 0}}
.music-is-playing .music-dock>summary::after{/* [CHỮ / BIỂU TƯỢNG CSS] Chuỗi sau content là chữ vẽ thêm bằng ::before/::after của bộ chọn này; không phải nội dung album. Chuỗi rỗng tạo lớp trang trí trống. Chỉ đổi phần trong nháy nếu muốn đổi nhãn / biểu tượng. */content:' ◌';display:inline-block;animation:record-turn 8s linear infinite}@keyframes record-turn{to{rotate:360deg}}.motion-paused .music-dock>summary::after{animation:none}
.story-opening{position:fixed;inset:auto 18px 110px;z-index:85;pointer-events:none;text-align:center}.story-opening>span{display:inline-block;padding:12px 24px;background:#fff3e8;border:1px solid #d8b1c6;border-radius:30px;box-shadow:0 5px 20px #74536818}.story-skip{position:fixed;right:22px;bottom:75px;z-index:86;min-height:44px;padding:10px 18px;border:1px solid #bc93a6;border-radius:22px;background:#fff7eb;color:#5b4157}
.memory-montage{background:#f8eddf}.memory-montage .montage-media{padding:15px 0}.memory-montage .montage-note{max-width:48ch;margin:20px auto;font-size:clamp(16px,2vw,21px);line-height:1.8}.memory-montage .montage-date{text-align:center}.memory-montage .montage-media img{border-width:12px 12px 34px;rotate:-1deg}.montage-letter{padding:30px;max-width:52ch;line-height:1.9;background:#fff8e8;border-bottom:1px dashed #cba1a8;white-space:pre-line}.montage-position{font-size:12px;opacity:.7}.memory-montage[data-beat=final] .montage-media{min-height:20vh}
@media(max-width:600px){.atlas-landscape{aspect-ratio:1.6}.atlas-landscape svg{object-fit:cover}.atlas-landmark{font-size:11px;padding:5px 9px}.atlas-landmark.summer,.atlas-landmark.winter{left:60%}.atlas-landmark.autumn,.atlas-landmark.winter{top:69%}.world-object-link{min-height:44px}.story-opening{bottom:130px}.story-skip{bottom:85px}}
@media(prefers-reduced-motion:reduce){.music-is-playing .music-dock>summary::after,.memory-details[open]{animation:none}.atlas-landmark{transition:none}}

.chapter-transition.cover-opening .transition-heart{animation:album-unfold .9s cubic-bezier(.2,.7,.2,1) both;transform-origin:left center}.chapter-transition.cover-opening{background:linear-gradient(100deg,#dba2b8,#fff1db 48%,#f5d8db);box-shadow:inset 12px 0 35px #86556c22}@keyframes album-unfold{from{transform:perspective(800px) rotateY(0) scale(1)}to{transform:perspective(800px) rotateY(-65deg) scale(1.08)}}.scratch-pocket{position:relative;max-width:300px;margin:30px auto;padding:18px 10px;background:#fff4df;color:#5b4053;border:1px dashed #bf8e9f;border-radius:10px}.scratch-pocket p{min-height:110px;padding:15px;white-space:pre-line}.scratch-pocket canvas{position:absolute;inset:18px 10px auto;width:calc(100% - 20px);height:130px;touch-action:none;border-radius:7px}.scratch-pocket canvas[hidden]{display:none}.scratch-pocket button{position:relative;min-height:44px}.polaroid.is-dragging{box-shadow:0 16px 22px #64445433;filter:none}.motion-paused .cover-opening .transition-heart{animation:none}
