.memory-page{--rose:#cfc3e7;--muted:#b9b4c5}.memory-page .intro-panel{margin-top:5vh;max-width:510px}.memory-page .intro-panel h1{font-size:clamp(43px,5.1vw,78px);line-height:1.4}.memory-page .intro-panel h1 span{color:#dbcee7}.memory-page .hook{font-size:18px}.memory-page .synopsis{max-width:420px}.memory-page .old-night{display:block;font-size:11px;margin-top:12px}.memory-page .night-tint{background:linear-gradient(90deg,#0a1323b5,transparent 75%)}.memory-page #night-app[data-view=intro] .night-tint{background:linear-gradient(90deg,#101827d9,transparent 76%)}.memory-page .scene-heading{margin-top:24px}.memory-page .scene-heading h2{font-size:26px}.memory-page #relationship{font-size:11px;color:#c4b5ca;min-height:18px}.memory-page .dialogue-shell{margin-top:clamp(160px,26vh,330px);background:linear-gradient(115deg,#151b2af2,#241d2cf2)}.memory-page #ending-summary{font-size:13px;line-height:1.9}.memory-page .scene-meta{flex-wrap:wrap}.memory-page .night-header nav{flex-shrink:0}.memory-page #panel-content button{padding:10px 15px;border:1px solid #d6c9e052;margin:8px 8px 8px 0}.memory-page .case-card small{font-size:11px}.memory-page button:focus-visible,.memory-page a:focus-visible{outline:2px solid #ecd7ff;outline-offset:4px}.memory-page #comparison{position:relative;width:min(530px,86%);margin:20px 0 0 5%;background:#151a28e8;border:1px solid #d0c2d34d;border-radius:4px;padding:14px}.comparison-top{font-size:10px;color:#c5bdce;display:flex;justify-content:space-between;gap:10px;align-items:center}.comparison-top button{padding:7px 10px;border:1px solid #b7a8c9;margin-left:5px;font-size:11px}.comparison-top button[aria-pressed=true]{background:#ded3eb;color:#282333}/* The comparison is actual scene artwork, never a symbolic placeholder. */
.comparison-picture{position:relative;aspect-ratio:16/9;overflow:hidden;background:#242932;margin-top:12px}
.comparison-picture img{display:block;width:100%;height:100%;object-fit:cover}
.comparison-label{position:absolute;left:10px;bottom:10px;padding:5px 8px;background:#151a24d9;font-size:10px;color:#eee6df}
#comparison-caption{font-size:11px;line-height:1.6;margin:10px 0 0;color:#c9c5d4}.memory-page #play:has(#comparison:not([hidden])) .dialogue-shell{margin-top:25px}.memory-page .note-empty{color:#b9b4c5;font-size:13px;line-height:1.9}.memory-page #dialogue{min-height:64px}.memory-page dialog{max-height:85dvh;overflow:auto}
@media(min-height:950px){.memory-page .dialogue-shell{margin-top:31vh}}@media(max-width:850px){.memory-page .intro-panel{max-width:86%;margin-top:30px}.memory-page .dialogue-shell{margin-top:24vh}.memory-page .night-header{padding:0 4%}.memory-page .night-header nav{gap:12px}.memory-page #relationship{font-size:10px}.memory-page .intro-panel h1{font-size:50px}}@media(max-width:480px){.memory-page .dialogue-shell{margin-top:24vh;width:94%}.memory-page .scene-heading{margin-top:10px}.memory-page .scene-heading h2{font-size:21px}.memory-page .intro-panel h1{font-size:42px}.memory-page .hook{font-size:16px}.memory-page #comparison{margin-left:3%;width:94%}.comparison-top{flex-wrap:wrap}.memory-page .dialogue-footer #save-status{margin-left:0}.memory-page .night-choices button{min-height:44px}.memory-page .intro-panel{padding-bottom:30px}}
/* Cinematic reading layout, scoped to the new story; approved title composition stays intact. */
.memory-page #night-app[data-view=play] .night-header{height:62px;border:0;background:linear-gradient(#0b1118aa,transparent);position:relative;z-index:2}
.memory-page #night-app[data-view=play] .brand{font-size:11px;opacity:.65}
.memory-page #night-app[data-view=play] .brand small{display:none}
.memory-page #night-app[data-view=play] .night-tint{background:linear-gradient(0deg,#090e16b0,transparent 36%,transparent 88%,#090e1655)}
.memory-page #night-app[data-view=play] .scene-shade{background:linear-gradient(0deg,#090e1655,transparent 30%)}
.memory-page #play{display:flex;flex-direction:column;min-height:calc(100dvh - 62px);padding-bottom:20px}
.memory-page .scene-heading{margin:10px 5% 20px;max-width:none;text-shadow:0 2px 7px #000}
.memory-page .scene-heading h2,.memory-page .scene-heading>.eyebrow,.memory-page #relationship,.memory-page #line-count,.memory-page .voice-note{display:none}
.memory-page .scene-meta{font-size:11px;color:#f0e9de;opacity:.85}.memory-page .scene-meta time{font-size:12px}
.memory-page .dialogue-shell,.memory-page #play:has(#comparison:not([hidden])) .dialogue-shell{margin:auto auto 0;width:min(1140px,90%);padding:18px 26px 10px;border:0;border-top:1px solid #e3d0b64d;border-radius:0;background:linear-gradient(110deg,#141a20ec,#181b23e3);box-shadow:none;backdrop-filter:blur(8px)}
.memory-page #dialogue{min-height:46px;font-size:17px;line-height:1.9;margin:13px 0 16px}
.memory-page .dialogue-footer{padding-top:6px;border-color:#ffffff12}.memory-page .night-choices:empty{display:none}.memory-page .dialogue-top strong{font-weight:400;font-size:14px;letter-spacing:2px}
/* Every gameplay scene shares one full-viewport canvas. Never stretch the source art. */
.memory-page #night-app[data-view=play] .stage-world{transform:none}
.memory-page #night-app[data-view=play] .stage-backgrounds{inset:0;transform:none}
.memory-page #night-app[data-view=play] .stage-backgrounds img{object-fit:cover}
.memory-page .scenery[data-directed=true] .stage-backgrounds img{filter:none;object-position:calc(var(--shot-x)*1%) calc(var(--shot-y)*1%);transform:scale(var(--shot-scale));transform-origin:calc(var(--shot-x)*1%) calc(var(--shot-y)*1%);transition:transform 1.2s ease,object-position 1.2s ease}
.memory-page .scenery[data-directed=true] .stage-foreground,.memory-page .scenery[data-directed=true] .film-grain{display:none}
.memory-page .scenery[data-motion=off] .stage-backgrounds img{transition:none}
.memory-page .scene-look{align-self:flex-start;margin:4px 5%;padding:9px 14px;border:1px solid #efe0c65c;background:#17202a99;border-radius:30px;font-size:11px;text-shadow:0 1px 5px #000}
.memory-page .detail-image{height:270px;overflow:hidden;margin:20px 0}.memory-page .detail-image img{width:100%;height:100%;object-fit:cover;transform:scale(1.6);transform-origin:50% 65%}.detail-footnote{font-size:11px;color:#b4aabb}
.memory-page #comparison{margin:10px 0 24px 5%;width:min(440px,90%)}
@media(max-width:600px){.memory-page #play{padding-bottom:12px}.memory-page .dialogue-shell{width:94%;padding:14px 17px 10px}.memory-page #dialogue{font-size:15px}.memory-page .night-header nav{gap:11px;font-size:10px}.memory-page .night-header nav>a{display:none}.memory-page .scene-heading{margin:10px 4% 15px}.memory-page .scenery[data-directed=true] .stage-backgrounds img{transform:none}.memory-page .scenery[data-directed=true] .stage-backgrounds{inset:0}.memory-page #look-around{margin-top:18vh}.memory-page .detail-image{height:190px}}
@media(max-height:650px) and (min-width:601px){.memory-page #play{padding-bottom:10px}.memory-page .dialogue-shell{padding:12px 22px 8px}.memory-page #dialogue{font-size:15px;min-height:30px;margin:8px 0}.memory-page .night-choices{gap:5px;margin-bottom:8px}.memory-page .night-choices button{padding:7px 12px}.memory-page .scene-heading{margin:0 5% 8px}}
.memory-page #preview-opening{font-size:12px;color:#e3d5c4;border-color:#e3cba768}
@media(max-width:600px){.memory-page .scene-look{position:absolute;top:calc(22vh + 19vw);left:4%;margin:0!important}}
@media(max-height:750px) and (min-width:601px){.memory-page #comparison{width:330px;padding:10px;margin-bottom:12px}.comparison-top{flex-wrap:wrap;gap:6px}.comparison-picture{margin-top:8px}}
@media(max-width:600px){.memory-page #comparison{margin:8px auto 20px;width:92%;max-width:380px}.memory-page #play:has(#comparison:not([hidden])) .dialogue-shell{margin-top:12px}.memory-page .scene-look{position:static;align-self:flex-start;margin:4px 4% 12px!important}}
