Teyvat PaletteTeyvat colour cards
Scene library
GitHub
Gallery
Mt. Laixin in Drifting Haze
LiyueDayLimpidWeightlessAiry

Mt. Laixin in Drifting 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 135° (used by the hero and exports), while gallery cards share a uniform 135° sweep.

0%e9fdfe18%beeefc40%87dbfe60%c9887f82%4485ae100%57a485

Why it works

The light in a high-key picture is not at its brightest point — it is in the one patch that gives up its chroma. And what that patch is worth is set by how much achromatic area the frame has left. Mt. Laixin's lightness median is 0.86 and its p99 is 0.98: only 0.12 of headroom remains, so pushing lightness upward is no longer an option. Of the 4000 brightest pixels, 3843 crowd into a single cell at L 0.98 and chroma 0.021 — the only patch in the frame below the grey threshold of 0.025 — and only 2.67% of the picture can do that at all, the least of the four high-key Liyue landscapes (Minlin 6.25%, the Sea of Clouds 7.72%, Dragon-Queller 10.88%). The scarcer grey is, the louder one patch of it rings.

01

Only 0.12 left above

Lightness runs p01 0.43 / p50 0.86 / p99 0.98 — all the headroom above the median is 0.12, while below it there is 0.43. This picture can no longer point at anything by being brighter. Of the 4000 brightest pixels, 3843 land in one cell centred at (0.07, 0.52): not the sky, but the mist pierced by sun halfway up the left slope. It sits only 0.12 above the median, yet it has handed its chroma down to 0.021. What makes it read as "the light comes in here" is that 0.021, not that 0.98. To nominate a light source in a bright picture, stop pushing lightness up — the ceiling is long since full — and push chroma down.

02

The less grey there is, the louder one grey rings

Only 2.67% of the frame falls below chroma 0.025. The same caliper on 〈Adventurers' Guild (Liyue) in Autumn Sun〉 returns 42.38%: that picture buys "no dominant hue" with four tenths of grey, while Mt. Laixin squeezes its achromatic share to under a sixteenth of that, so the one patch left becomes the only one in the room. And it is not where you would assume — the haze filling the valley measures L 0.92 / chroma 0.053 / 218°, while the sky overhead is more saturated at L 0.85 / chroma 0.095 / 227°. The sky is more chromatic than the mist, which is why the opening in this picture is on the left slope and not overhead. Laying grey down buys quiet; cutting grey off buys focus. One quantity, two directions.

03

The other focal point is kept in the hue ledger

This picture has two places to land, and they are not on the same axis. Pixels whose hue falls in 330°–90° and whose chroma reaches 0.025 number just 3241 in the whole frame, 0.37% of it; 2948 of them — 91% — crowd into a rectangle starting at (0.50, 0.28), 0.14 wide and 0.13 tall: the clump of orange-red autumn trees on the rim of the floating terrace. That rectangle is 1.8% of the frame, averaging L 0.69 / chroma 0.082 with a peak of 0.168. The mist wins by driving chroma toward zero; the trees win because the frame holds no second warm. Their lightnesses are 0.98 and 0.69, and neither wins on lightness. A bright picture may have two focal points — provided you keep them in two separate ledgers.

Take these colours with you

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

/* Mt. Laixin in Drifting Haze · Mt. Laixin in Drifting Haze — Teyvat Palette */
:root {
  --valley-gap-white: oklch(0.98 0.021 199); /* Valley-Gap White #e9fdfe */
  --drifting-haze: oklch(0.92 0.053 218); /* Drifting Haze #beeefc */
  --high-sky: oklch(0.85 0.095 227); /* High Sky #87dbfe */
  --terrace-maple: oklch(0.69 0.082 28); /* Terrace Maple #c9887f */
  --arch-indigo: oklch(0.59 0.092 239); /* Arch Indigo #4485ae */
  --cliff-moss: oklch(0.66 0.09 166); /* Cliff Moss #57a485 */
  --gradient-mt-laixin: linear-gradient(135deg, oklch(0.98 0.021 199) 0%, oklch(0.92 0.053 218) 18%, oklch(0.85 0.095 227) 40%, oklch(0.69 0.082 28) 60%, oklch(0.59 0.092 239) 82%, oklch(0.66 0.09 166) 100%);
}

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