/* Calendar accents decorate the selected scene; they never replace terrain. */
.seasonal-particles { position: absolute; inset: 0; z-index: 4; display: block; width: 100%; height: 100%; pointer-events: none; }
.seasonal-decorations { position: absolute; z-index: 3; inset: 0; pointer-events: none; }
.seasonal-lantern { position: absolute; bottom: 2px; display: block; width: clamp(32px, 4.2vw, 58px); height: auto; }
.seasonal-lantern-left { left: 4%; transform: rotate(-5deg); }
.seasonal-lantern-right { right: 4%; width: clamp(28px, 3.6vw, 49px); transform: rotate(5deg); }
.seasonal-lantern svg, .seasonal-scatter svg, .seasonal-blossom svg { display: block; width: 100%; height: auto; overflow: visible; }
.seasonal-pumpkin-glow { fill: #f6c56c; opacity: 0; transition: opacity 1.2s ease; }
.seasonal-pumpkin-face { fill: #795a3c; transition: fill 1.2s ease, filter 1.2s ease; }
html:is([data-room-phase="dusk"],[data-room-phase="night"]) .seasonal-pumpkin-face { fill: #ffe3a0; filter: drop-shadow(0 0 4px #f7c76f); }
html:is([data-room-phase="dusk"],[data-room-phase="night"]) .seasonal-pumpkin-glow { opacity: .24; filter: blur(7px); }
html[data-room-phase="night"] .seasonal-lantern svg > path { filter: brightness(.75); }
.seasonal-scatter { position: absolute; bottom: 1px; display: block; width: clamp(56px, 8vw, 105px); opacity: .82; }
.seasonal-scatter-left { left: 11%; }
.seasonal-scatter-right { right: 9%; transform: scaleX(-1); }
.seasonal-blossom { position: absolute; bottom: 2px; left: 14%; display: block; width: clamp(32px, 4vw, 46px); }
html[data-room-phase="night"] :is(.seasonal-scatter,.seasonal-blossom) { filter: brightness(.48); }
/* Match canopy paint only; bark, fruit, buildings and cloud layers retain their identity. */
html[data-room-season="autumn"] .grove-scene:not([data-background-preset="alpine-distance"]) .grove-tree g[fill="#398b6d"] { fill: #a48456; }
html[data-room-season="autumn"] .grove-scene:not([data-background-preset="alpine-distance"]) .grove-tree g[fill="#54a677"] { fill: #c09c5d; }
html[data-room-season="autumn"] .grove-scene:not([data-background-preset="alpine-distance"]) .grove-tree g[fill="#79bc81"] { fill: #d8b771; }
html[data-room-season="autumn"] .grove-scene:not([data-background-preset="alpine-distance"]) .grove-tree g[stroke="#98ce8f"] { stroke: #e8cd91; }
html[data-room-season="autumn"] .grove-undergrowth path[fill="#6aaf76"] { fill: #9aa66b; }
html[data-room-season="autumn"] .grove-drifting-leaf { background: #c6a15f; }
html[data-room-season="autumn"] .terrain-soil { fill: #91a26b; }
html[data-room-season="autumn"] .terrain-edge { stroke: #acb37c; }
html[data-room-season="autumn"][data-room-phase="day"] .grove-scene[data-background-preset="leafy-grove"] { --grove-sky-top: #bcd8df; --grove-sky-middle: #e3e9e0; --grove-sky-horizon: #f3e6cc; --grove-far-hill: #c8ccb3; --grove-near-hill: #a8b68d; }
html[data-room-season="spring"] .grove-tree g[fill="#54a677"] { fill: #78ae7e; }
html[data-room-season="spring"] .grove-tree g[fill="#79bc81"] { fill: #a2cd91; }
html[data-room-season="spring"] .terrain-edge { stroke: #a6ca83; }
html[data-room-season="winter"] .grove-tree g[fill="#398b6d"] { fill: #456f69; }
html[data-room-season="winter"] .grove-tree g[fill="#54a677"] { fill: #709586; }
html[data-room-season="winter"] .grove-tree g[fill="#79bc81"] { fill: #a7bca3; }
html[data-room-season="winter"] .grove-tree g[stroke="#98ce8f"] { stroke: #dce4d5; }
html[data-room-season="winter"][data-room-phase="day"] .grove-scene[data-background-preset="leafy-grove"] { --grove-sky-top: #bdd5df; --grove-sky-middle: #e3e8e7; --grove-sky-horizon: #ebeee4; --grove-far-hill: #c4d0cb; --grove-near-hill: #a5bab0; }
html[data-room-season="winter"] .terrain-edge { stroke: #c5d2b6; }
@media (prefers-reduced-motion: reduce) { .seasonal-particles { display: none; } .seasonal-pumpkin-face,.seasonal-pumpkin-glow { transition: none; } }
html[data-desktop="companion"] :is(.seasonal-particles,.seasonal-decorations),
html[data-android-overlay="true"] :is(.seasonal-particles,.seasonal-decorations) { display: none !important; }
