/* Playback is a compact floating HUD. No implementation/status paragraphs in its main row. */
.bottom-dock{grid-template-columns:auto minmax(380px,840px) auto;align-items:center;justify-content:space-between;gap:18px}
.bottom-dock footer.transport-hud{display:grid;grid-template-columns:100px minmax(150px,1fr) 116px 60px;align-items:center;gap:10px;width:100%;padding:6px 10px;border:0;border-radius:12px;background:linear-gradient(90deg,#0b1524a8,#0b152480);backdrop-filter:blur(8px);min-height:46px}
.bottom-dock .replay{display:flex;flex-wrap:nowrap;min-height:32px;gap:2px}
.bottom-dock .replay button{width:32px;height:34px;min-height:34px;padding:0;background:transparent;border-radius:6px;font-size:12px;box-shadow:none}
.bottom-dock .replay button:hover{background:#b1dae51c}.bottom-dock .replay #play{font-size:0}
#play::before{content:'▶';font-size:16px}#play[data-playing=true]::before{content:'Ⅱ';font-size:19px}
.bottom-dock #sequenceControls{display:block;margin:0;padding:0;background:none;min-height:30px;border-radius:0}
#sequenceControls #scanIndex{display:block;width:100%;min-width:0;height:30px;margin:0;accent-color:#b0d6e0;cursor:pointer;touch-action:pan-y}
.transport-time{display:flex;flex-direction:column;min-width:0;gap:2px;text-align:right;text-shadow:0 1px 4px #000}
.transport-time #clock{font-size:11px;white-space:nowrap;font-weight:600;font-variant-numeric:tabular-nums}.transport-time #morphStatus{font-size:9px;line-height:1.1;min-width:0;color:#a9c6d5;white-space:nowrap}
.bottom-dock #weatherSpeed{width:60px;min-height:32px;height:32px;padding:0 4px;border-radius:6px;font-size:11px;background:transparent;text-align:center}
.bottom-dock .camera-tools{align-items:center}.bottom-dock button,.bottom-dock summary{background:#0f1927b3;box-shadow:none}
@media(max-width:1120px){.bottom-dock{grid-template-columns:1fr 1fr;gap:8px}.bottom-dock footer.transport-hud{grid-column:1/-1;grid-row:2;justify-self:center;width:min(840px,100%)}.bottom-dock .camera-tools{grid-column:2;grid-row:1}.bottom-dock .time-options{grid-column:1;grid-row:1}}
@media(max-width:760px){.bottom-dock footer.transport-hud{grid-template-columns:132px minmax(80px,1fr) 60px;grid-template-areas:'buttons time speed' 'timeline timeline timeline';padding:4px 8px 6px;gap:0 6px}.bottom-dock .replay{grid-area:buttons;min-height:44px;gap:0}.bottom-dock .replay button{width:44px;height:44px;min-height:44px}.transport-time{grid-area:time}.transport-time #clock{font-size:10px}.transport-time #morphStatus{font-size:9px}.bottom-dock #weatherSpeed{grid-area:speed;min-height:44px;height:44px}.bottom-dock #sequenceControls{grid-area:timeline;min-height:28px}#sequenceControls #scanIndex{height:28px}.bottom-dock .replay #clock{flex-basis:auto}.scene-bottom{bottom:max(10px,env(safe-area-inset-bottom))}}
@media(max-width:350px){.bottom-dock footer.transport-hud{grid-template-columns:132px minmax(65px,1fr) 54px;gap:0 3px}.bottom-dock #weatherSpeed{width:54px}}

/* One station-local picker replaces the separate calendar and load action. */
.time-trigger{display:grid;gap:2px;text-align:left;line-height:1.1}.time-trigger b{font-size:11px;font-weight:500}.time-trigger small{font-size:10px;color:#b6c9d7}.bottom-dock .time-options>div{width:300px;grid-template-columns:70px minmax(0,1fr);gap:10px;padding:14px}.time-options #zoneLabel{font-size:11px;color:#b6c9d7}.bottom-dock .time-options input[type=date],.bottom-dock .time-options input[type=time],.bottom-dock .time-options select{min-height:40px}.time-options .action-row #now{flex:1}.time-options .check{font-size:12px}.bottom-dock .time-options>summary{min-width:108px;justify-content:flex-start;min-height:40px;height:auto;padding:6px 10px}@media(max-width:760px){.bottom-dock .time-options>div{width:min(300px,calc(100vw - 24px));max-height:calc(100dvh - 240px)}.bottom-dock .time-options>summary{min-height:44px}.bottom-dock .time-options input[type=date],.bottom-dock .time-options input[type=time],.bottom-dock .time-options select,.bottom-dock .time-options #now{min-height:44px}.time-options .check{min-height:44px}}

.time-options .check input{width:16px;height:16px;min-height:0;flex:0 0 16px}

.loading .action-row button{min-width:64px}@media(max-width:760px){.loading .action-row button{min-height:44px}}
