.train-transport{position:absolute;z-index:35;left:50%;bottom:10px;transform:translateX(-50%);width:max-content;max-width:calc(100% - 24px);padding:7px 10px;border:1px solid #ffffffa0;border-radius:16px;background:#fffdf2ed;color:#34245a;box-shadow:0 3px 12px #0002;font:600 13px system-ui,sans-serif}
.stage:not(.is-playing) .train-transport{bottom:112px}
.transport-buttons,.transport-seek{display:flex;align-items:center;gap:6px;justify-content:center}
.train-transport button,.passage-editor button{font:inherit;min-height:36px;padding:5px 10px;border:1px solid #b4a7cf;border-radius:10px;background:#f4efff;color:#34245a;cursor:pointer}
.train-transport button:disabled{opacity:.5;cursor:default}
.transport-seek{margin-top:4px;font-size:11px}.transport-seek input{width:160px;min-width:60px;flex:1}.transport-seek output{min-width:95px}
.passage-editor{position:absolute;z-index:36;left:50%;bottom:180px;transform:translateX(-50%);width:580px;max-width:calc(100% - 24px);max-height:40%;overflow:auto;box-sizing:border-box;padding:12px;border-radius:14px;border:2px solid #b4a7cf;background:#fffdf5f5;color:#34245a;font:14px system-ui,sans-serif;box-shadow:0 6px 25px #0003}
.passage-editor[hidden]{display:none}.passage-title,.passage-fields{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.passage-title{justify-content:space-between}.passage-fields input{width:58px;font:inherit}.passage-editor p{margin:8px 0;font-size:12px}.passage-editor button[aria-pressed=true]{background:#d4f5df;border-color:#278142}
.editing-passage #score{cursor:crosshair}.passage-boundary ellipse{stroke:#278142;stroke-width:4}
.adult-ambiance .train-transport{color:#203e48;background:#fffdf2ed}
@media(max-width:900px),(max-width:1000px) and (max-height:550px){.train-transport{padding:5px 7px;max-width:calc(100% - 14px);font-size:11px}.train-transport button{padding:5px 7px;min-height:36px}.stage:not(.is-playing) .train-transport{bottom:12px}.stage{padding-bottom:85px!important}.stage.is-playing{padding-bottom:85px!important}.passage-editor{bottom:94px;max-height:30%}.transport-seek input{width:110px}}
@media(max-width:1000px) and (max-height:550px) and (orientation:landscape){.train-transport{display:flex;gap:8px;align-items:center;font-size:11px;bottom:4px!important}.transport-seek{margin:0}.transport-seek>input{width:85px}.transport-seek output{display:none}.stage{padding-bottom:48px!important}.stage.is-playing{padding-bottom:48px!important}.passage-editor{bottom:50px;max-height:45%}}

/* The transport bar owns Stop and loading cancellation. Keep the scene Play at rest. */
.stage #play.scene-play:not([data-state="idle"]){display:none!important}
