/* Background light is below text; large artwork has a clipped light layer. */
.main-shell { position:relative; z-index:1; }
.ambient-stage { position:fixed; inset:0; z-index:0; pointer-events:none; overflow:hidden; contain:strict; }
.ambient-page-light,.ambient-surface-light {
  position:absolute; left:0; top:0; width:760px; height:680px; pointer-events:none;
  opacity:0; transition:opacity 1000ms cubic-bezier(.22,.61,.36,1); will-change:transform,opacity;
}
.ambient-page-light {
  background:radial-gradient(ellipse,rgb(231 205 150 / .15) 0%,rgb(205 187 145 / .105) 20%,rgb(132 154 126 / .055) 45%,rgb(122 145 126 / .018) 62%,transparent 76%);
}
.ambient-surface-light {
  z-index:1; width:720px; height:620px; mix-blend-mode:screen;
  background:radial-gradient(ellipse,rgb(248 218 157 / .24) 0%,rgb(227 201 148 / .15) 21%,rgb(180 178 137 / .07) 43%,rgb(146 166 148 / .018) 62%,transparent 76%);
}
.ambient-visible .ambient-page-light,.ambient-visible .ambient-surface-light { opacity:1; transition-duration:300ms; }
[data-ambient-input="touch"] .ambient-page-light,[data-ambient-input="touch"] .ambient-surface-light { transition-duration:1200ms; }
.ambient-visible[data-ambient-input="touch"] .ambient-page-light,.ambient-visible[data-ambient-input="touch"] .ambient-surface-light { transition-duration:300ms; }
[data-theme="light"] .ambient-page-light {
  background:radial-gradient(ellipse,rgb(255 253 233 / .67) 0%,rgb(255 249 222 / .42) 23%,rgb(255 245 215 / .15) 48%,transparent 76%);
}
.hero-sign { z-index:2; }
.story-cover { isolation:isolate; }
.ambient-off .ambient-stage,.ambient-off .ambient-surface-light { display:none; }
.effects-toggle[aria-pressed="false"] { opacity:.55; }
.atmosphere { position:absolute; inset:0; pointer-events:none; z-index:1; overflow:hidden; opacity:.24; }
.atmosphere::before { content:''; position:absolute; inset:42% -20% -20%; background:radial-gradient(ellipse at 50% 75%,#b4c2b41c,transparent 60%); animation:mist-drift 28s ease-in-out infinite alternate; }
.rain-line { position:absolute; top:-25%; width:1px; height:36px; background:linear-gradient(transparent,#a8b2ab90); transform:rotate(13deg); animation:rain-fall 4.8s linear infinite; opacity:.65; }
.rain-line:nth-child(2n) { height:20px; opacity:.3; }
.ambient-off .atmosphere,.ambient-simple .atmosphere,.ambient-reduced .atmosphere { display:none; }
.ambient-off .hero-art { transform:none!important; }
@keyframes rain-fall { from{translate:0 -60px}to{translate:-90px 680px} }
@keyframes mist-drift { from{transform:translateX(-3%)}to{transform:translateX(5%)} }
@media(max-width:800px) {
  .ambient-page-light { width:490px; height:490px; }
  .ambient-surface-light { width:430px; height:430px; }
}
@media(prefers-reduced-motion:reduce) {
  .atmosphere { display:none; }
  .hero-art { transform:none!important; }
  .ambient-page-light,.ambient-surface-light { transition:none!important; }
}
