/* One SVG world coordinate system for source art, endcaps and wheel contact. */
.carriage-art.aligned-art{display:block;overflow:visible;max-width:none;height:auto;transform:none}
.carriage-slot{left:calc(50% + var(--position)*var(--carriage-width));width:calc(var(--span)*var(--carriage-width));height:auto;bottom:0;transform:translateX(-50%);align-items:flex-end}
.carriage-slot .aligned-art{width:100%;height:auto;max-height:none;flex:none}
.carriage-slot.is-selected{z-index:1}
/* SVG viewport bottom is only ten world units below the common rail datum. */
.carriage-window{bottom:29px}
@media(max-width:650px){.carriage-window{bottom:24px}}
/* Fixed position, outside document flow: departure never shifts lobby actions. */
.lobby-journey-label{position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:5;display:flex;align-items:center;gap:7px;padding:7px 12px;border-radius:20px;border:1px solid #cbd8cd;background:#f2f1eaed;color:#577163;font-size:11px}
.lobby-journey-label[hidden]{display:none}
.is-on-journey .wagon-load-overlay{visibility:hidden}
.is-on-journey .carriage-track{filter:grayscale(.5);opacity:.58}
.slot-travelling .slot-mini{filter:grayscale(.5);opacity:.58}
.slot-mini>.consist-art{width:100%;height:auto;max-height:35px;overflow:visible}
/* 42 metres always occupy the same responsive width, for every composition. */
.carriage-window{--carriage-width:94%}
