:root { --paper:#f7faff; }
body,.atelier-room { background:#f7faff; }
.atelier-paper { opacity:.14; }
.stitch-wallpaper { position:absolute; inset:0; overflow:hidden; pointer-events:none; }
.stitch-side { position:absolute; top:88px; bottom:40px; width:10px; opacity:.38; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='16' viewBox='0 0 10 16'%3E%3Cpath d='m2 2 5 5m0-5L2 7m0 4 5 5m0-5-5 5' fill='none' stroke='%2393aabd' stroke-width='.8'/%3E%3C/svg%3E"); background-repeat:repeat-y; }
.stitch-left { left:25px; }
.stitch-right { right:25px; }
.stitch-motif { position:absolute; width:190px; aspect-ratio:1; opacity:.8; scale:.6; transition:opacity .6s,visibility .6s; }
body[data-scene="gate"] .stitch-motif { opacity:0; visibility:hidden; }
.stitch-motif :is(svg,img),.stitched-bookmark :is(svg,img),.stitched-flourish :is(svg,img) { display:block; width:100%; height:100%; object-fit:contain; }
.stitch-rabbit { bottom:18%; left:4%; width:180px; }
.stitch-bow { top:12%; right:4%; width:175px; }
.stitch-hat { top:20%; left:2%; width:150px; }
.stitch-orb { bottom:12%; right:4%; width:180px; }
.stitch-star { top:47%; right:5%; width:48px; opacity:.45; }
.atelier-room[data-room^="works-"] .stitch-rabbit { left:-8px; bottom:9%; }
.atelier-room[data-room^="works-"] .stitch-orb { right:-8px; bottom:4%; }
.atelier-room[data-room^="works-"] .stitch-hat { left:-8px; top:26%; }
.atelier-room[data-room^="works-"] .stitch-bow { width:135px; right:-8px; top:16%; }
.atelier-room[data-room^="works-"] .stitch-star { top:51%; right:1%; width:36px; }
.page-frame { border-color:#bdcbd9; border-style:dashed; }
.page-frame>i { display:none; }
.works-scene>.works-heading { background:transparent; }
.stitched-bookmark { position:absolute; width:96px; height:96px; right:-3%; top:-1%; z-index:2; pointer-events:none; transform:rotate(8deg); opacity:.8; }
.stitched-bookmark,.stitched-flourish,.cinema-thread { scale:.6; }
.book-fastener { display:none; }
.stitched-flourish { display:block; position:absolute; pointer-events:none; width:100px; height:100px; opacity:.8; }
.media-room-hero>.stitched-flourish { right:16px; top:-8px; width:145px; height:145px; z-index:6; transform:rotate(8deg); }
.graphic-stage-heading { position:relative; }
.graphic-stage-heading>.stitched-flourish { left:47%; bottom:-2px; width:100px; height:100px; }
.screening-intro { position:relative; padding-right:70px; }
.screening-intro>.stitched-flourish { right:-2px; top:8px; width:75px; height:75px; }
.journey-header>.stitched-flourish { right:13px; top:-27px; width:100px; height:100px; }
.journey-header .field-fastener { display:none; }
.media-room-hero.tactile-journal { background:#e6edf5; }
.tactile-journal .media-room-backdrop>img { opacity:.035; }
.tactile-journal .media-room-backdrop>span { background-image:none; background-color:#f0f5fb; opacity:.76; }
.tactile-journal .media-room-hero::after { border-color:#bdc9d7; }
.book-sleeve { background:linear-gradient(119deg,#e3ecf45e,#fff9 18%,#e6edf630 19%,#e0e9f560 73%,#ffffffa0 74%,#e1eaf650 77%); }
.tactile-journal .media-room-copy::after { opacity:.8; }
.graphic-gallery .gallery-filters button,.tactile-note .media-note-tag,.tactile-note .media-archive-tab { border-style:dashed; }
.neon-thread { animation:stitched-drift 7s ease-in-out infinite; }
.neon-thread>:is(svg,img) { filter:brightness(1.15) saturate(1.2); }
.neon-filament { position:absolute; inset:0; pointer-events:none; -webkit-mask:var(--thread-art) center/contain no-repeat; mask:var(--thread-art) center/contain no-repeat; background:currentColor; color:#4baed6; animation:pixel-neon 9s ease-in-out infinite; }
.neon-thread:nth-child(even),.neon-thread:nth-child(even)>.neon-filament { animation-delay:-3s; }
@keyframes pixel-neon {
 0%,100% { color:#43a8d0; opacity:.7; filter:drop-shadow(0 0 2px #70cdf0) drop-shadow(0 0 5px #70cdf066); }
 34% { color:#df75b2; opacity:.95; filter:drop-shadow(0 0 3px #eb97cd) drop-shadow(0 0 7px #eaa5d666); }
 68% { color:#50bfa1; opacity:.8; filter:drop-shadow(0 0 2px #85dcc5) drop-shadow(0 0 5px #9ce7d266); }
}
@keyframes stitched-drift { 0%,100% { translate:0 -3px; rotate:-1.5deg; } 50% { translate:0 4px; rotate:1.5deg; } }
body.is-screening .neon-thread,body.is-screening .neon-filament,body.page-is-hidden .neon-thread,body.page-is-hidden .neon-filament,body[data-scene="gate"] .neon-thread,body[data-scene="gate"] .neon-filament { animation-play-state:paused; }
body.is-screening .stitch-motif { opacity:.25; }
@media(max-width:820px) {
 .stitch-side { top:84px; bottom:30px; width:6px; opacity:.26; }
 .stitch-left { left:12px; }
 .stitch-right { right:12px; }
 .stitch-motif { width:130px; }
 .stitch-rabbit { left:-10px; bottom:27%; width:55px; }
 .stitch-orb { right:-10px; bottom:12%; width:58px; }
 .stitch-bow { top:14%; right:8px; width:44px; }
 .stitch-hat { top:15%; left:8px; width:44px; }
 .stitch-star { width:30px; right:3%; }
 .stitched-bookmark { width:70px; height:70px; right:-1%; top:0; }
 .atelier-room[data-room^="works-"] .stitch-rabbit { left:-91px; }
 .atelier-room[data-room^="works-"] .stitch-orb { right:-94px; }
 .atelier-room[data-room^="works-"] .stitch-hat,.atelier-room[data-room^="works-"] .stitch-bow { display:none; }
}
@media(max-width:650px) {
 .media-room-hero>.stitched-flourish { top:-14px; right:7px; width:78px; height:78px; }
 .graphic-stage-heading>.stitched-flourish { display:none; }
 .screening-intro { padding-right:46px; }
 .screening-intro>.stitched-flourish { width:47px; height:47px; top:15px; }
 .journey-header>.stitched-flourish { width:65px; height:65px; right:0; top:-18px; }
}
@media(forced-colors:active) { .stitch-wallpaper,.stitched-flourish,.stitched-bookmark { display:none; } }
@media(prefers-reduced-motion:reduce) { .neon-thread,.neon-filament { animation:none; } .neon-thread { translate:none; rotate:none; } .neon-filament { opacity:.45; } .stitch-motif { transition:none; } }
