/* Static grain is confined to image leaves; preserve each existing image grade.
   Existing profiled photos get the same plate inside their original filter. */
@media screen and (forced-colors:none) and (prefers-contrast:no-preference) {
 html[data-ar-grain-ready][data-ar-grain-enabled="true"] body[data-ar-page="home"] #main-content-home :is(img.ar-scene-art,img.ar-contact-art,img.home-library-doorway){filter:url('#ar-static-photo-grain')}
 html[data-ar-grain-ready][data-ar-grain-enabled="true"] body[data-ar-page="home"] #main-content-home img.home-library-garden{filter:saturate(.96) contrast(1.025) url('#ar-static-photo-grain')}
 html[data-ar-grain-ready][data-ar-grain-enabled="true"] body[data-ar-page="ministry"] img.m-avacyn-photo{filter:url('#ar-static-photo-grain')}
 html[data-ar-grain-ready][data-ar-grain-enabled="true"] body[data-ar-page="studio"] .artist-banner > img.ar-studio-slot-image:not([data-ar-photo-profile]){filter:url('#ar-static-photo-grain')}
}
/* Games page backdrop plates: exactly half the old .04 / .045 intensity.
   No additions to embedded game canvases, controls, scenery motion or composition. */
.hub-world-scenery::after{opacity:.02}
.hub-fantasy-scene::after{opacity:.0225}
html[data-ar-grain-enabled="false"] :is(.hub-world-scenery,.hub-fantasy-scene)::after,
body[data-library-theme="simple"] :is(.hub-world-scenery,.hub-fantasy-scene)::after{display:none!important}
@media(forced-colors:active),(prefers-contrast:more),(prefers-reduced-transparency:reduce),print {
 .hub-world-scenery::after,.hub-fantasy-scene::after{display:none!important}
}

/* Issue 34 supersedes half-grain ONLY for Classic (theme="full").
   Keep the existing sigil and content untouched; replace the scenery's grain
   plate with smooth black top/side falloff below the z-index:1 content shell. */
body[data-library-theme="full"] .hub-world-scenery::after{
 background:linear-gradient(180deg,#000c 0,transparent 330px),linear-gradient(90deg,#000d 0,transparent 25%,transparent 75%,#000d 100%);
 background-size:100% 100%;background-repeat:no-repeat;opacity:1;
}
/* Reuse the two existing bounded atmosphere spans. Only transform/opacity
   animate; there is no blur, filtered text, image noise or extra viewport layer. */
body[data-library-theme="full"] .hub-scene-light{
 left:12%;top:130px;width:min(660px,64vw);height:360px;
 background:radial-gradient(ellipse at 46% 38%,#d9c29c12,transparent 70%);
 opacity:.42;animation:ar-classic-light-r34 31s ease-in-out -11s infinite alternate;animation-play-state:paused;
}
body[data-library-theme="full"] .hub-scene-mist{
 display:block;left:-9%;top:90px;width:min(780px,66vw);height:520px;
 background:radial-gradient(ellipse at 12% 48%,#0009,transparent 72%);
 opacity:.48;animation:ar-classic-shadow-r34 43s ease-in-out -17s infinite alternate;animation-play-state:paused;
}
body[data-library-theme="full"] .hub-dust i{width:2px;height:2px;box-shadow:0 0 5px #b3a48a60}
body[data-library-theme="full"] .hub-dust i:nth-child(n+9){display:none}
@keyframes ar-classic-light-r34{from{opacity:.32;transform:translate3d(-8px,0,0)}to{opacity:.56;transform:translate3d(13px,7px,0)}}
@keyframes ar-classic-shadow-r34{from{opacity:.42;transform:translate3d(-10px,-4px,0)}to{opacity:.64;transform:translate3d(20px,9px,0)}}
@media(max-width:700px){
 body[data-library-theme="full"] .hub-world-scenery::after{background:linear-gradient(180deg,#000b,transparent 230px),linear-gradient(90deg,#0009,transparent 18%,transparent 82%,#0009);opacity:1}
 body[data-library-theme="full"] .hub-scene-light{left:2%;width:88vw;height:280px}
 body[data-library-theme="full"] .hub-scene-mist{left:-12%;width:85vw;height:390px}
 body[data-library-theme="full"] .hub-dust i:nth-child(n+5){display:none}
}
/* Existing lifecycle controls pause these reused layers while offscreen,
   hidden, in the chooser, Sanctuary, or an embedded player. Extra guardrails
   below also suppress decoration for low-resource/accessibility preferences. */
html[data-ar-grain-enabled="false"] body[data-library-theme="full"] :is(.hub-scene-atmosphere,.hub-dust){display:none!important}
@media(prefers-reduced-motion:reduce){
 body[data-library-theme="full"] :is(.hub-scene-light,.hub-scene-mist){animation:none!important;transform:none!important}
 body[data-library-theme="full"] .hub-dust{display:none!important}
}
@media(forced-colors:active),(prefers-contrast:more),(prefers-reduced-transparency:reduce),print{
 body[data-library-theme="full"] :is(.hub-scene-atmosphere,.hub-dust){display:none!important}
}
