/* The descent is the page, not a 96px ribbon at the bottom of it. The daylight
   half carries a ramp from morning parchment down into evening clay across its
   whole height, so by the time the turn panel arrives the ground has already
   gone to dusk. Every ink still clears 4.5:1 against the darkest stop. */
.daylight,
.page-inner {
    position: relative;
    /* The two lights FIRST, the ramp behind them.
       They were written last in this list and so painted last — which in CSS
       means underneath, because layer one is topmost. Every stop of the ramp
       is an opaque hex, so for as long as this file has existed the warm made
       light at 80% 3% and the cold grown light at 4% 9% have rendered
       nothing at all. The brief's whole mechanism was dead code in the one
       frame every visitor sees: the hero is the only stretch of .daylight
       that no chapter's own opaque background-color covers. */
    /* The morning's low light on the left is warm now. It was a cold mint
       glow (207,233,220), the "grown" half of the model painted on a sunlit
       page, and the design judges found it on the hero and the deck as "a
       mint-cyan haze" and "a blue-cyan stain". The dawn under the hero rises
       on exactly that side; this is its light reaching the top of the page. */
    background-image:
        radial-gradient(ellipse 52% 22% at 80% 3%, rgba(255, 243, 194, 0.7), transparent 70%),
        radial-gradient(ellipse 44% 18% at 4% 9%, rgba(255, 232, 196, 0.42), transparent 70%),
        linear-gradient(180deg,
            var(--day-0) 0%,
            var(--day-1) 14%,
            var(--day-2) 42%,
            var(--day-3) 68%,
            var(--day-4) 86%,
            var(--day-5) 100%);
}

/* ---------------------------------------------------------- the descent -- */

/* The target brief is explicit: the page "opens on parchment ... and darkens
   through dusk into deep moss", and calls an all-cream page "the single largest
   failure", because lantern light only reads as light when there is dark around
   it. Measured, the page had exactly two luminance values — 0.83 and 0.028 —
   with no dusk between them, and #technology bounced back to full daylight
   after the page had already gone dark.

   The dusk ramp already existed in tokens.css and was only ever used for
   gradients. These are its light steps, applied where they belong: each day
   chapter sits a little lower than the one above it, so the parchment run is a
   descent rather than a flat field, and the lantern-lit turn reads as an inset
   in a page that was already on its way down. */
/* background-COLOR, not the shorthand. These are ID selectors, so `background`
   here beat everything and silently reset background-image, -size and -repeat
   along with it — which is why the day chapters could not carry the overgrowth
   the night ones do. A shorthand at specificity 1,0,0 is a quiet veto over
   longhands set anywhere else, and nothing about the descent needs it: each of
   these only ever sets a colour. */
/* Each day chapter also names its own base (what its ground settles into
   before the seam) and the colour it is leaving (what its seam opens with), so
   the descent's three steps dissolve into one another instead of stepping.
   See horizons.css. */
#mission {
    background-color: var(--day-bg-deep);
    --chapter-base: var(--day-bg-deep);
    /* The hero has no ground of its own; it stands on the day ramp above, which
       is at about --day-1 where the hero ends. Without this the first seam on
       the page was the one the other two already dissolve: (241,231,212) over
       (235,221,192) in one row, "a tide line across the landing screen". */
    --seam-from: var(--day-1);
}

#servitor {
    background-color: color-mix(in srgb, var(--dusk-0) 55%, var(--day-bg-deep));
    --chapter-base: color-mix(in srgb, var(--dusk-0) 55%, var(--day-bg-deep));
    --seam-from: var(--day-bg-deep);
}

#technology {
    background-color: var(--dusk-0);
    --chapter-base: var(--dusk-0);
    --seam-from: color-mix(in srgb, var(--dusk-0) 55%, var(--day-bg-deep));
}

