/* Stable cab: the notice occupies the same reserved line with or without a takeover. */
.lever-instrument{height:auto;align-self:stretch;transform:none}
.driving-controls .cab-lever{flex:1;width:100%;height:0;min-height:0;aspect-ratio:auto;margin:0}
.driving-controls .lever-target{flex:none;margin:3px 0 0}
.driving-controls .drive-takeover{grid-column:1;grid-row:2;position:static;align-self:center;margin:0;font-size:10px;line-height:1.45;display:block;min-width:0;color:#89623d}
.driving-controls .drive-takeover[hidden]{display:none}
.driving-controls:has(.drive-takeover:not([hidden])) [data-drive-note]{visibility:hidden}
.cab-lever svg .dial-tick{stroke:#8b9a8a;stroke-width:.8}
.cab-lever svg .dial-tick.major{stroke:#587163;stroke-width:1.3}
.cab-lever svg .dial-value{font:6px var(--sans);fill:#607263;text-anchor:middle;dominant-baseline:middle}
.cab-lever svg .dial-limit{stroke:#ba8967;stroke-width:3;stroke-linecap:round;opacity:.8}
/* The platform ends sit inside the 2% scene feather. The meadow itself is untouched. */
.stop-target{height:7px;border:0;border-left:2px solid #759779;border-right:2px solid #759779;border-radius:2px;background:linear-gradient(0deg,#a7cfa868,#c5e3ad18);box-shadow:0 0 8px #a7cfa842;transition:background .2s;opacity:1}
.stop-target:after{content:'';position:absolute;bottom:0;left:0;right:0;border-bottom:1px dashed #608c637a}
.stop-target>span{bottom:24px;transform:none;box-shadow:0 2px 5px #314d3810;font-size:10px;padding:3px 7px}
.stop-target i{top:auto;bottom:5px;height:15px;left:50%;border-left:1px solid #7a8878}
.stop-target i:before{content:'S';position:absolute;bottom:12px;left:-5px;display:grid;place-items:center;width:10px;height:10px;background:#f4f1df;border:1px solid #829282;border-radius:2px;font:700 7px var(--sans);color:#53745a}
.stop-target.in-target{background:linear-gradient(0deg,#91c88a80,#badc9d28);border-color:#5b8961}
.stop-target.stopped{opacity:1;animation:stop-settled .4s 2.2s forwards}
.stop-target.stopped:not(.successful){background:#d8cfab45;border-color:#a19a7e}
.stop-target.settled{opacity:0;animation:none}
@keyframes stop-settled{to{opacity:0}}
/* A turning sheet has two opaque faces. Stationary content changes only when it lands. */
.book-stage .journal-spread>.journal-leaf:first-child{transform:none;transition:none}
.book-stage.opening:not(.single-page) .journal-spread>.journal-leaf:first-child{visibility:visible}
.book-stage .book-cover-back.journal-leaf{position:absolute;inset:0;margin:0;min-height:0;box-sizing:border-box;transform:rotateY(180deg);border:1px solid #c5b68f;border-radius:5px 1px 1px 5px;box-shadow:inset -8px 0 14px #6b4e3618;text-align:left}
.book-stage .book-cover-back .page-number{position:absolute}
.book-turn-sheet{position:absolute;transform-style:preserve-3d;z-index:7;pointer-events:none}
.book-stage .book-turn-sheet>.journal-leaf{position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;box-sizing:border-box;backface-visibility:hidden;transition:none;box-shadow:0 3px 12px #39261922}
.book-stage .book-turn-sheet>.book-turn-front{transform:rotateY(0deg)}
.book-stage .book-turn-sheet>.book-turn-back{transform:rotateY(180deg)}
.book-stage.is-turning .journal-tabs{visibility:hidden}
.book-stage.single-page{max-width:380px;margin:auto;transform:none}
.book-stage.single-page .journal-spread{display:block;aspect-ratio:auto;min-height:430px}
.book-stage.single-page .journal-spread>.journal-leaf{display:block;min-height:430px;padding:35px 30px;margin:0;border-radius:5px}
.book-stage.single-page .book-cover{left:0;width:100%;height:430px}
.book-stage.single-page .book-cover-back{background:#e8d5ad}
.book-stage.single-page .book-turn-sheet>.journal-leaf{padding:35px 30px;min-height:0}
.book-stage:not(.single-page) .journal-spread{display:grid;grid-template-columns:1fr 1fr;aspect-ratio:1.48;min-height:0}
.book-stage:not(.single-page) .journal-spread>.journal-leaf{display:block;min-height:0;margin:0;padding:9% 9% 10%}
@media(prefers-reduced-motion:reduce){.stop-target.stopped{animation-duration:.01s}.lever-instrument{transition:none}}
@media(min-width:651px) and (max-height:800px){.journey-follow .cab-lever{width:210px;max-width:100%;height:auto;aspect-ratio:180/128;flex:0 1 auto}}
@media(max-width:650px){
 .journey-follow>.module-heading{margin-bottom:8px}
 .journey-follow .announcement-space{min-height:48px;margin:4px 0 12px}
 .journey-follow .announcement-card{display:grid;grid-template-columns:16px minmax(0,1fr) auto;gap:6px;padding:6px;max-width:100%}
 .journey-follow .announcement-card p{font-size:10px;line-height:1.4;margin:0}
 .journey-follow .announcement-card>.button{font-size:9px;padding:6px}
 .journey-follow .travel-readouts{gap:7px;margin:0}
 .journey-follow .travel-readouts small{margin-bottom:3px}
 .journey-follow .travel-readouts>div{padding:3px 5px}
 .journey-follow .travel-readouts>div:first-child{display:flex;align-items:baseline;gap:8px}
 .journey-follow .travel-readouts>div:first-child strong{font-size:15px}
 .in-journey .rail-footer{display:none}
 .rail-app.in-journey .rail-workspace main{min-height:100dvh;padding-bottom:6px}
}
@media(max-width:650px){
 .journey-follow .travel-readouts{grid-template-columns:1.15fr .65fr 1fr;gap:5px}
 .journey-follow .travel-readouts>div:first-child{grid-column:1;grid-row:1;display:block}
 .journey-follow .travel-readouts>div:first-child strong{font-size:13px;line-height:1.3}
 .journey-follow .travel-readouts .arrival-readout{grid-column:3;grid-row:1}
 .journey-follow .arrival-time{gap:3px}
}
.book-stage.opening .journal-spread{box-shadow:none}
@media(min-width:651px){.illustrated-book .modal-body{padding:40px 32px 45px!important}}
