.memory-story-scene{position:relative;border-radius:24px;overflow:hidden;isolation:isolate;background:#ece2c9 var(--world-art) center/cover;min-height:230px;border:2px solid #fff;box-shadow:0 5px 22px #31204b20;margin:12px 0}
.memory-story-scene::before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#ece2c9f5 0%,#ece2c980 30%,#fff2 100%);z-index:-1}
.memory-story-scene #memoryFinaleActors,.memory-story-scene #memoryIntroActors{height:150px;display:flex;align-items:flex-end;justify-content:center;max-width:240px;gap:0;margin:5px auto 0}
.memory-story-scene .memory-actor[data-character="KD01"]{width:48px;height:37.5px;flex:none}
.memory-story-scene .memory-actor[data-character="KD02"]{width:159px;height:150px;flex:none}
#memoryStoryAlbum{display:grid;grid-template-columns:repeat(var(--story-cols,3),minmax(0,1fr));gap:5px;width:min(290px,calc(var(--story-cols,3)*50px + 24px));max-width:100%;box-sizing:border-box;margin:10px auto 0;padding:10px;background:#fffc;border:2px solid #927442;border-radius:15px;box-shadow:0 3px 0 #927442;transition:transform 500ms ease}
.memory-story-card{min-width:0;aspect-ratio:1;background:#fff;border:1px solid #cfc2dc;border-radius:8px;display:grid;place-items:center;overflow:hidden;transition:transform 500ms ease}
.memory-story-card .item-svg,.memory-story-card .memory-figure{display:block;width:100%;height:100%}.memory-story-card .memory-figure img{display:block;max-width:100%;max-height:100%;object-fit:contain}
#memoryStoryFinale[data-step="0"] #memoryStoryAlbum{transform:rotate(-2deg)}
#memoryStoryFinale[data-step="0"] .memory-story-card:nth-child(odd){transform:rotate(-7deg) translateY(2px)}
#memoryStoryFinale[data-step="0"] .memory-story-card:nth-child(even){transform:rotate(6deg) translateY(-2px)}
.memory-story-line{background:#fffc;padding:10px 12px;border-radius:16px;margin:10px!important;min-height:62px;color:#342047;font-size:1rem!important;line-height:1.35}
.memory-story-controls{display:flex;justify-content:center;min-height:44px}.memory-story-controls button{min-height:44px}.memory-story-controls [hidden]{display:none!important}
#memoryStoryIntro{max-width:480px;text-align:center}#memoryStoryIntro h2{margin:0 0 6px}#memoryStoryIntro .primary-button{min-height:44px;white-space:normal}#memoryStoryIntro #memoryStoryGoal{font-size:1rem}
.memory-story-backs{display:flex;gap:8px;justify-content:center;padding-top:14px}.memory-story-backs span{width:48px;height:62px;border:3px solid white;border-radius:9px;background:#69489c;box-shadow:0 3px 7px #30244944}.memory-story-backs span:first-child{transform:rotate(-9deg)}.memory-story-backs span:last-child{transform:rotate(9deg)}
html[data-memory-background="true"] .memory-story-scene *,html[data-kd-host-paused="true"] .memory-story-scene *{transition:none;animation-play-state:paused}
@media(max-height:460px){.memory-story-scene #memoryFinaleActors,.memory-story-scene #memoryIntroActors{height:100px}.memory-story-scene .memory-actor[data-character="KD01"]{width:32px;height:25px}.memory-story-scene .memory-actor[data-character="KD02"]{width:106px;height:100px}.memory-story-scene{min-height:180px}#memoryStoryAlbum{max-width:220px}}
@media(prefers-reduced-motion:reduce){#memoryStoryAlbum,.memory-story-card{transition:none}#memoryStoryFinale[data-step="0"] #memoryStoryAlbum,#memoryStoryFinale[data-step="0"] .memory-story-card{transform:none}}

#memoryStoryDetails{margin:8px 0}#memoryStoryDetails summary{cursor:pointer;min-height:44px;padding:10px;color:#5930ac;font-weight:700}#memoryStoryDetails summary:focus-visible{outline:3px solid #da9840;outline-offset:2px;border-radius:8px}

/* WD136: the existing introduction fits a short landscape screen. */
@media(min-width:590px) and (max-height:460px){
 #memoryStoryIntro[open]{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);column-gap:14px;row-gap:8px;max-width:720px;width:calc(100% - 28px);padding:16px}
 #memoryStoryIntro h2{grid-column:1/-1;font-size:24px;margin:0}
 #memoryStoryIntro .memory-story-scene{grid-column:1;grid-row:2/span 2;min-height:0;margin:0}
 #memoryStoryIntro .memory-story-backs{padding-top:6px}
 #memoryStoryIntro .memory-story-backs span{width:34px;height:44px}
 #memoryStoryIntro #memoryIntroActors{height:90px;margin-top:2px}
 #memoryStoryIntro .memory-actor[data-character="KD01"]{width:28.8px;height:22.5px}
 #memoryStoryIntro .memory-actor[data-character="KD02"]{width:95.4px;height:90px}
 #memoryStoryIntro .memory-story-line{min-height:0;font-size:14px!important;padding:6px;margin:6px!important}
 #memoryStoryIntro #memoryStoryGoal{grid-column:2;grid-row:2;align-self:end;margin:0}
 #memoryStoryIntro #memoryStoryPlay{grid-column:2;grid-row:3;align-self:start;justify-self:center;width:fit-content}
}

/* WD167: an actual found card is nudged into place, never cloned. */
#memoryStoryFinale[data-arranging] #memoryStoryAlbum { position:relative; z-index:2; transform:none; }
#memoryStoryFinale[data-arranging] #memoryFinaleActors { margin-bottom:0; }
#memoryStoryFinale[data-arranging] .memory-arranged-card { transition:none; transform:none; }
#memoryStoryFinale[data-arranging][data-step="0"] #memoryStoryAlbum .memory-arranged-card { transform:none; }
#memoryStoryFinale[data-arranging] .memory-story-card { transition:none; }
