/* Shared transport for the newspaper and newsroom, including the inline shadow tree. */
:root {
  --motion-ink:#edf6ff; --motion-muted:#a8bfd2; --motion-line:#d0e5ff38;
  --motion-panel:#0b1420; --motion-button:#d9edff0d; --motion-accent:#a1d9ec;
  --motion-track:#c4dff329;
}
html[data-theme=light] {
  --motion-ink:#203348; --motion-muted:#546b80; --motion-line:#42688736;
  --motion-panel:#eaf1f7; --motion-button:#ffffff80; --motion-accent:#467f99;
  --motion-track:#42688729;
}
.motion-controls {
  display:flex; align-items:center; flex-wrap:wrap; gap:12px;
  padding:18px 24px; margin:0; border-top:1px solid var(--motion-line);
  color:var(--motion-ink); background:var(--motion-panel);
  font:12px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.motion-controls .motion-actions { display:flex; align-items:center; gap:8px; flex-shrink:0; }
.motion-controls :is(.motion-button,#play) {
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  width:auto; min-height:44px; padding:10px 16px; margin:0; border-radius:999px;
  border:1px solid var(--motion-line); color:var(--motion-ink);
  background:linear-gradient(145deg,var(--motion-button),transparent);
  box-shadow:inset 0 1px 0 #ffffff16; font:500 11px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  cursor:pointer; white-space:nowrap; transition:background .15s,border-color .15s;
}
.motion-controls :is(.motion-button,#play):hover:not(:disabled) { background:var(--motion-button); border-color:var(--motion-accent); }
.motion-controls :is(.motion-button,#play):disabled { opacity:.45; cursor:default; }
.motion-controls :is(.motion-button,#play)[hidden] { display:none; }
.motion-controls .motion-toggle::before { content:'Ⅱ'; font:12px/1 sans-serif; }
.motion-controls .motion-toggle[data-paused=true]::before { content:'▷'; }
.motion-controls .motion-replay::before { content:'↻'; font:16px/1 sans-serif; }
.motion-controls .motion-progress { display:flex; position:relative; align-items:center; flex:1; min-width:120px; height:32px; background:transparent; }
.motion-controls .motion-progress::before,.motion-controls #progress { display:none; }
.motion-controls #animationScrubber,.motion-controls #team-timeline {
  appearance:none; -webkit-appearance:none; width:100%; min-width:0; height:32px; margin:0;
  background:transparent; border:0; border-radius:0; cursor:pointer; accent-color:var(--motion-accent);
}
.motion-controls :is(#animationScrubber,#team-timeline)::-webkit-slider-runnable-track {
  height:4px; border-radius:999px;
  background:linear-gradient(to right,var(--motion-accent) var(--motion-progress,0%),var(--motion-track) var(--motion-progress,0%));
}
.motion-controls :is(#animationScrubber,#team-timeline)::-webkit-slider-thumb {
  appearance:none; -webkit-appearance:none; width:14px; height:14px; margin-top:-5px;
  border:2px solid var(--motion-accent); border-radius:50%; background:var(--motion-accent); box-shadow:0 1px 5px #0003;
}
.motion-controls :is(#animationScrubber,#team-timeline)::-moz-range-track { height:4px; border-radius:999px; background:var(--motion-track); }
.motion-controls :is(#animationScrubber,#team-timeline)::-moz-range-progress { height:4px; border-radius:999px; background:var(--motion-accent); }
.motion-controls :is(#animationScrubber,#team-timeline)::-moz-range-thumb { width:10px; height:10px; border:2px solid var(--motion-accent); border-radius:50%; background:var(--motion-accent); }
.motion-controls .motion-time { color:var(--motion-muted); font:10px/1.4 ui-monospace,SFMono-Regular,monospace; white-space:nowrap; }
.motion-controls :is(button,input):focus-visible { outline:2px solid var(--motion-accent); outline-offset:4px; }
@media(max-width:700px) {
  .motion-controls { padding:14px 18px; gap:10px; }
  .motion-controls .motion-actions { order:0; }
  .motion-controls .motion-progress { order:2; flex-basis:calc(100% - 100px); }
  .motion-controls .motion-time { order:3; }
  .motion-controls .motion-scenes { margin-left:auto; }
  .motion-controls :is(.motion-button,#play) { padding:10px 12px; font-size:10px; }
}
@media(prefers-reduced-motion:reduce) { .motion-controls :is(.motion-button,#play) { transition:none; } }
