Each state lives inside its own weather.
Backgrounds are not wallpapers. They are the surface the UI emerges from. Type lifts out of fog; cards condense out of valley light; the eclipse only appears for rare focus moments. Six named atmospheres, one for each runtime state Naya genuinely needs to hold.
Dawn Emergence
soft, returning, low contrast
First light over a slow ridge. The kind of brightness that doesn't ask anything of you yet. Naya uses this when you're coming back to the day and the surface needs to stay quiet enough to be entered.
Pairs with Re-entry · morning
Blue Fog Hold
muted, recovery, depth
Cold valley fog rolling across distant ridges. Visibility narrows, the layers stay legible. Naya uses this when you're recovering and the interface needs to hold a small number of things very quietly.
Pairs with Recovering · midday lull
Twilight Ridge
re-entry, orientation
The hour the light decides what kind of evening this is going to be. Used when the user has been away and Naya is showing them where they left off — neither asleep nor at full pace.
Pairs with Re-entry · returning from a long block
Dusk Valley
capable, alert, still
Long shadows, warm horizon, no urgency. This is Naya's default weather — the one most of the app lives inside. Capable of depth, never demanding it.
Pairs with Calm · default surface
Eclipse
rare focus, intentional pause
An interruption in the day that the user chose. Eclipse only appears when Naya is asked to hold focus around one rare, intentional thing — and recedes the moment the user no longer needs it.
Pairs with High capacity · deep work
Late Moon
reflection, decompression
Cloud cover, a held moon, no warmth pushed at the user. Naya uses this when the day is over, capacity is low, and the only thing the interface should do is hold what was carried.
Pairs with Overloaded · late evening
The room is part of the product.
Most apps treat the background as decoration — a brand surface to be ignored. Naya treats it as the first signal the user receives about what kind of attention is wanted from them. The interface that emerges from Late Moon does not ask the same thing as the interface that emerges from Eclipse.
Atmosphere persists across navigation. It changes only with runtime state, never with routing. The user's session has a weather, and the weather follows them between Today, Continuity, Capture, Regulation, and Horizon.
Each atmosphere ships as a vector composition — there is no photographic dependency. The system can shift between weathers in a single ease curve without loading a single byte of image.