diff --git a/src/lib/components/ui/station-board/StaffServicesGrid.svelte b/src/lib/components/ui/station-board/StaffServicesGrid.svelte
new file mode 100644
index 0000000..96e855d
--- /dev/null
+++ b/src/lib/components/ui/station-board/StaffServicesGrid.svelte
@@ -0,0 +1,431 @@
+
+
+
| Arr | +Dep | +||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| ID | +Orig | +Dest | +Plt | +Sch | +Act | +Sch | +Act | +||||
| {service.h} | +{service.og.t} | +{service.dt.t} | +{service.p || '-'} | + + + {#if service.wtp} +Pass | +{formatUkTime(service.wtp)} | + ++ + {service.c + ? '-' + : delayClassFromTimePair(service.wtp, service.atp || service.etp) === 'delay-rt' + ? 'RT' + : formatUkTime(service.atp || service.etp)} + + | + {:else} +{formatUkTime(service.sta)} | + + ++ + {service.c + ? '-' + : delayClassFromTimePair(service.sta, service.ata || service.eta) === 'delay-rt' + ? 'RT' + : formatUkTime(service.ata || service.eta)} + + | + +{formatUkTime(service.std)} | + + ++ + {service.c + ? '-' + : delayClassFromTimePair(service.std, service.atd || service.etd) === 'delay-rt' + ? 'RT' + : formatUkTime(service.atd || service.etd)} + + | + {/if} +|
| + {service.o} + | +|||||||||||
| + {service.cr.r} + {#if service.cr.l} + {service.cr.n ? 'near' : 'at'} + {service.cr.l} + {/if} + | +|||||||||||
| + {service.dr.r} + {#if service.dr.l} + {service.dr.n ? 'near' : 'at'} + {service.dr.l} + {/if} + | +|||||||||||