/* The approved MARS instrument: cut housing, phosphor lettering, lamps and Gary.
   The surrounding frame already owns the screen. This component adds no panel. */
.q-altitude{position:relative;width:100%;height:100%;container-type:size;isolation:isolate;transition:opacity .25s ease-in}
/* a film's picture under the instrument (altitude.js underFilm): it hides at once and comes back over .25 s */
.q-altitude.q-altitude--film{opacity:0;transition:none}
@media(prefers-reduced-motion:reduce){.q-altitude{transition:none}}
:root[data-reduced-motion="true"] .q-altitude{transition:none}
.q-altitude img{position:absolute;display:block;max-width:none;image-rendering:pixelated;pointer-events:none;user-select:none}
.q-altitude__housing{inset:0;width:100%;height:100%;object-fit:contain;z-index:-1}
.q-altitude__rail{position:absolute;left:7%;top:5%;bottom:5%;width:13%;background:url(/runtime/quit/altitude-art/rail.png) center/100% auto repeat-y}
/* The band names are the instrument's drawn lettering (images); the multipliers are live readouts, so they are in the
   readable display face (owner order, 25 Oct 2026), at the size where x10,000 keeps the footprint the pixel face had in
   the housing (.6 em a character, 12cqw against VT323's 16cqw at .4 em). */
.q-altitude__bands{position:absolute;inset:0;list-style:none;margin:0;padding:0;font:600 12cqw/1 var(--t-font-display,"QUIT Display",monospace)}
.q-altitude__bands>li{position:absolute;left:25%;right:3%;top:var(--band-y);height:10%;padding:0;margin:0;transform:translateY(-50%);color:#09c84a}
.q-altitude__word{left:0;top:6%;width:auto!important;height:32%!important;max-width:100%!important;object-fit:contain;object-position:left}
.q-altitude__multiple{position:absolute;top:44%;left:0;line-height:1;white-space:nowrap}
.q-altitude__lamp{width:21%!important;height:auto!important;left:-26%;top:17%;opacity:0}
.q-altitude__bands>li[aria-current="step"]{color:#ff7612}
/* the log scale (the owner, 20:05): a floor row crowded by its neighbours keeps its tick and screen-reader name only */
.q-altitude__bands>li[data-compact="true"] .q-altitude__word,.q-altitude__bands>li[data-compact="true"] .q-altitude__multiple,.q-altitude__bands>li[data-compact="true"] .q-altitude__lamp{visibility:hidden}
.q-altitude__bands>li[aria-current="step"] .q-altitude__word{filter:hue-rotate(-105deg) saturate(1.8) brightness(1.2)}
.q-altitude__bands>li[aria-current="step"] .q-altitude__lamp{opacity:1}
.q-altitude__gary{left:0;top:0;width:23%!important;height:auto!important;transform:translateY(-50%);transition:transform .55s ease-in-out;filter:drop-shadow(1px 1px 0 #020805)}
.q-altitude__gary[hidden]{display:none}
.q-altitude__tick{position:absolute;left:9%;width:9%;height:0;top:var(--tick-y);border-top:max(1px,.6cqw) solid #09c84a;opacity:.7;transform:translateY(-50%);pointer-events:none}
.q-altitude__lit{position:absolute;left:7%;width:13%;top:var(--lit-top);height:var(--lit-height);background:#ff7612;opacity:.35;mix-blend-mode:screen;pointer-events:none;transition:top .55s ease-in-out,height .55s ease-in-out}
.q-altitude__lit[hidden]{display:none}
@media(prefers-reduced-motion:reduce){.q-altitude__lit{transition:none}}
.q-altitude__sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(prefers-reduced-motion:reduce){.q-altitude__gary{transition:none}}
:root[data-reduced-motion="true"] .q-altitude__gary{transition:none}
/* On phones the instrument sits in a floor frame, whose pictures fade in with opacity only (loading.css). The marker
   keeps its glide there, and still drops it under reduced motion. */
[data-quit-frame-host] .frame-surface .q-altitude img.q-altitude__gary{transition:transform .55s ease-in-out,opacity .18s ease-out}
@media(prefers-reduced-motion:reduce){[data-quit-frame-host] .frame-surface .q-altitude img.q-altitude__gary{transition:none}}
:root[data-reduced-motion="true"] [data-quit-frame-host] .frame-surface .q-altitude img.q-altitude__gary{transition:none}
/* LIVEWATCH (16 Oct, the show live at 390): on a phone the instrument lies over the stage's art without its housing (the
   floor frame's pictures give way to the live show, frames.css), and its floor numbers were 9 px type on the orange sky,
   the current one orange on orange. There it names only the floors altitude.js nearLabels picks (data-near), each
   centred on its tick in the instrument's lettering on a chip of its dark glass, at a quarter of the instrument's width
   (13.5 px at 390, 12.4 at 360, 11 at 320, the size at which x10,000 still fits it there; 7 to 8.6 px before), a row
   running to its right edge. The desktop instrument is unchanged. Since the owner order of 25 Oct 2026 the chips are in
   the readable display face at the pixel face's cap height (21cqw, 11 px at 390), set against the right edge, so the
   wider x10,000 reaches left over the rail rather than past the screen. */
[data-device="phone"] .q-altitude__bands{font-size:21cqw}
[data-device="phone"] .q-altitude__bands>li{right:0}
[data-device="phone"] .q-altitude__multiple{top:50%;left:auto;right:0;transform:translateY(-50%);padding:.12em .1em .04em;background:#050b08;box-shadow:0 0 0 1px #12502d}
[data-device="phone"] .q-altitude__bands>li:not([data-near="true"]) .q-altitude__multiple{visibility:hidden}
/* Design pass, 22 Oct 2026: a named floor's chip sits over its own word on a phone (MARS, PENTHOUSE, ROOF and CUBICLE
   collided at 393 and 360), so on the rows that show a chip the chip alone names the floor. */
[data-device="phone"] .q-altitude__bands>li[data-near="true"] .q-altitude__word{visibility:hidden}
