Teyvat PaletteTeyvat colour cards
Scene library
GitHub
Gallery
Stadium of the Sacred Flame in Bright Haze
NatlanDayLuminousFestiveWeightless

Stadium of the Sacred Flame in Bright Haze

Palette

Click a swatch to copy its HEX; hover for the OKLCH value.

Reconstructed gradient

The gradient distilled from the scene, unrolled left to right by stop; the authored angle is 180° (used by the hero and exports), while gallery cards share a uniform 135° sweep.

0%f2fafe22%95c5e352%1e57c674%d7564a100%806577

Why it works

A light source does not have to be the brightest thing in the frame — it can even be darker than the ordinary places in it. The sacred flame at the arena's centre measures L 0.62, chroma 0.165, sitting 0.09 below the frame's median lightness of 0.71, and yet up against the ceiling of its chroma. The bright end was taken long ago by the medium: the brightest 4000 pixels sit at L 1.00, chroma 0.002, with 3,106 of them packed into the blown-out cloud at upper right. Ashveil Peak in Evening Haze argued the same sentence on evidence one notch back — its violet core at L 0.66 and its blue light column at L 0.48 both still stood above that picture's median lightness of 0.38. Here the source drops below the median.

01

The bright end is empty

The frame's median lightness is 0.71 and its p99 is already 1.00: the brightest 4000 pixels average L 1.00 at chroma 0.002–0.003, and 3,106 of them lie inside the blown-out cloud at upper right. That white is not confined to the sky — it pours down into the canyon, where the haze measures L 0.79 and 0.82, brighter than the arena floor at the centre (L 0.75). A light source that wants to win on brightness in a picture like this finds no seat left above it.

02

The same ritual fire, the opposite tool

Take the most chromatic 3% of the fire at the arena's centre: L 0.62, chroma 0.165, 28°, peaking at 0.185 — while the frame's chroma p99 is only 0.154, so it is one of the few things over the line, and yet it sits 0.09 below the frame's median lightness. Basin of Unnumbered Flames is the same kind of hazy Natlan valley, median lightness 0.73 against 0.71 here, and its altar fire — 441 pixels — works through L 0.84, a full 0.11 above that median, at a chroma of only 0.118: one thing, two opposite directions, up there and outward here. Ashveil Peak in Evening Haze is the notch before this one. Quoting its own text: median lightness 0.38, a violet core at L 0.66 / chroma 0.209, a blue light column at L 0.48 / chroma 0.210, and 3817 of the brightest 4000 pixels landing on a patch of empty haze (L 0.87). Those two sources are not the brightest things either, but they still stand above their own median; this fire stands 0.09 below it. Which lets "glowing can only be said in chroma" go one notch further — a source need not merely be less than the brightest, it can be darker than the ordinary places in the picture.

03

The ceiling seats were taken by cloth first

Among the frame's most chromatic 4000 pixels, the 240°–270° clump holds 3,653 of them at a mean chroma of 0.174 — the blue banners strung across the canyon; the most chromatic 3% of one of them measures 262°, chroma 0.184, L 0.49. Warm colours get only 231 pixels (5.8%), though warm holds 15.41% of the frame by area. And yet those 231 average higher than the banners' 3,653 do (0.176 in 30°–60°, 0.177 in 0°–30°). The fire has not won on chroma; it is simply the only warm thing that can reach the ceiling, and small enough that it need not win. To make an element read as glowing, first check whether the top of the lightness range is still free; if it is taken, stop adding brightness and make the element the one outsider hue that reaches the chroma ceiling.

Take these colours with you

CSS variables, a Tailwind v4 theme or SVG — one click to copy into your project.

/* Stadium of the Sacred Flame in Bright Haze · Stadium of the Sacred Flame in Bright Haze — Teyvat Palette */
:root {
  --blown-white: oklch(0.98 0.01 226); /* Blown White #f2fafe */
  --canyon-haze: oklch(0.8 0.066 236); /* Canyon Haze #95c5e3 */
  --banner-blue: oklch(0.49 0.184 262); /* Banner Blue #1e57c6 */
  --sacred-flame: oklch(0.62 0.165 28); /* Sacred Flame #d7564a */
  --cliff-ochre: oklch(0.54 0.044 339); /* Cliff Ochre #806577 */
  --terrace-green: oklch(0.84 0.067 136); /* Terrace Green #b7d5aa */
  --gradient-stadium-of-the-sacred-flame: linear-gradient(180deg, oklch(0.98 0.01 226) 0%, oklch(0.8 0.066 236) 22%, oklch(0.49 0.184 262) 52%, oklch(0.62 0.165 28) 74%, oklch(0.54 0.044 339) 100%);
}

A 1080×1350 PNG carrying the scene, its palette and every value — save it and post it as is.