/* Le Coudreo V13 · visual atmosphere, independent from the accessibility controls. */
.coudreo-snow-canvas{
  position:fixed;inset:0;display:block;width:100%;height:100%;
  pointer-events:none!important;user-select:none;z-index:18;
  contain:strict;isolation:isolate;
}
.coudreo-snow-canvas[hidden]{display:none!important}
html.motion-off .coudreo-snow-canvas,html.coudreo-high-contrast .coudreo-snow-canvas{display:none!important}
/* A gentle cross-document dissolve where the browser supports it. No SPA router. */
@view-transition{navigation:auto}
::view-transition-old(root){animation:coudreo-page-away .18s ease-out both}
::view-transition-new(root){animation:coudreo-page-arrive .2s ease-out both}
@keyframes coudreo-page-away{to{opacity:0}}
@keyframes coudreo-page-arrive{from{opacity:0}to{opacity:1}}
/* The glints are static: focus and hover, never blinking or automatic shimmer. */
.event-feature,.village-advent,.event-door,.portal,.journal-button,.event-button{
  -webkit-tap-highlight-color:transparent;
}
.event-feature{box-shadow:0 18px 45px rgba(18,45,31,.12)}
.latest-issue{box-shadow:0 12px 35px rgba(31,51,34,.07)}
.event-door:focus-visible,.village-paths a:focus-visible,.village-advent:focus-visible{
  outline:3px solid #a76524;outline-offset:5px;
}
.village-paths a:focus-visible,.village-advent:focus-visible{outline-color:#ffe2a2}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
  .event-door,.village-advent,.journal-button,.event-button{
    transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
  }
  .event-door:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(22,56,37,.12)}
  .journal-button:hover,.event-button:hover{transform:translateY(-1px)}
}
html.motion-off::view-transition-group(*),html.motion-off::view-transition-old(root),html.motion-off::view-transition-new(root){animation:none!important}
html.motion-off .event-door,html.motion-off .village-advent,html.motion-off .journal-button,html.motion-off .event-button{transition:none!important;transform:none!important}
@media(prefers-reduced-motion:reduce){
  @view-transition{navigation:none}
  .coudreo-snow-canvas{display:none!important}
  ::view-transition-group(*),::view-transition-old(root),::view-transition-new(root){animation:none!important}
}
@media(forced-colors:active){
  .coudreo-snow-canvas{display:none!important}
  .event-feature,.latest-issue{box-shadow:none}
}
@media print{.coudreo-snow-canvas{display:none!important}}
