.session-home{font:12px system-ui;color:#c5d8e4;padding:9px 12px;text-decoration:none}.service-duty{position:absolute;top:92px;right:16px;width:min(325px,calc(100vw - 32px));background:#101c29ed;border:1px solid #3f5368;color:#dce8f1;padding:14px;z-index:8;font:12px system-ui;border-top:3px solid #d8b16a}.service-duty summary{cursor:pointer;font-size:10px;letter-spacing:.09em}.service-duty output{float:right;font-variant-numeric:tabular-nums}.duty-status{font-size:13px;line-height:1.6;color:#f0cf8f}.duty-table div{padding:7px 0;border-top:1px solid #ffffff14;font-variant-numeric:tabular-nums}.duty-table .current{color:#fff;font-weight:700}.service-duty small{display:block;font-size:10px;color:#93a9bb;margin-top:12px}body[data-session=pro] :is(#operator,#passengerMode,#visitStation,#auto,#holdNextSignal,#releaseNextSignal,#skipStop,#simRate,#cruiseSpeed),body[data-session=passenger] :is(#operator,#help,#toggleDesk,.drive-panel,.systems-strip,#announcements,#passengerMode),body[data-session=free] :is(#passengerMode,#visitStation){display:none!important}body[data-session=passenger] .views :is([data-view=cab],[data-view=exterior]){display:none!important}body[data-session=pro] .station-row,body[data-session=passenger] .station-row{pointer-events:none;cursor:default}

body[data-session=pro] :is(#networkConnections,#districtNetwork){display:none!important}

/* Camera chooser must remain above the duty card on small screens. */
body[data-session=pro] .views{z-index:25}body[data-session=pro] #bottomToolbar{z-index:30;height:auto;min-height:58px;flex-wrap:wrap} .pro-equipment{display:flex;gap:4px;align-items:center}.pro-equipment button{white-space:nowrap}
