.feed-card{display:grid;gap:7px;color:var(--text-primary);background:linear-gradient(135deg,#192a42,#111a2a);border:1px solid #334866;border-radius:14px;padding:20px;text-decoration:none}
.feed-card:hover,.feed-card:focus-visible{background:#263c5b;border-color:#81abf3}
.feed-card span{display:block;color:#aabbd2;font-size:13px}
.feed-card b{font-size:19px}
.feed-card em{color:#80aeff;font-size:13px;font-style:normal;font-weight:700;margin-top:6px}
.feed-summary{grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:20px}
.feed-summary .metric strong{font-size:20px;overflow-wrap:anywhere}
.window-nav{display:flex;gap:8px;margin:-12px 0 24px}
.window-nav a{padding:8px 13px;border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);font-size:13px;font-weight:700;text-decoration:none}
.window-nav a:hover,.window-nav a.is-active{color:var(--text-primary);background:var(--surface-2);border-color:var(--border-hover)}
.window-nav a.is-active{color:var(--accent)}
.chart-section{overflow:hidden}
.chart-section>header .status{align-self:flex-start;flex:none;width:max-content;height:auto;min-width:0;min-height:0;aspect-ratio:auto;padding:4px 8px;line-height:1.2}
.feed-chart{display:block;width:100%;height:auto;min-height:180px;overflow:visible}
.feed-chart .chart-tick line{stroke:#33445c;stroke-width:1}
.feed-chart .chart-tick text,.feed-chart .axis-label{fill:#9eafc7;font-size:12px;font-variant-numeric:tabular-nums}
.feed-chart rect{fill:#5f98f2}
.feed-chart rect:hover{fill:#82b1ff}
.latency-chart polyline{fill:none;stroke-linecap:round;stroke-linejoin:round}
.latency-chart .latency-average{stroke:#80aeff;stroke-width:3}
.latency-chart .latency-max{stroke:#d39b58;stroke-width:1.5;opacity:.75}
.latency-point{stroke:#121d2d;stroke-width:1.5;opacity:.12}
.latency-point:hover{opacity:1;stroke-width:2}
.latency-point:focus{opacity:1;outline:none;stroke:#fff;stroke-width:2.5}
.latency-point.average{fill:#80aeff}
.latency-point.maximum{fill:#d39b58}
.status.receiving,.status.connected,.status.live,.status.in_progress,.status.completed{color:#86efac;background:#153e31;border-color:#28765b}
.status.connecting{color:#b9d4ff;background:#1b3960;border-color:#5273a4}
.status.planned,.status.forecast,.status.activated{color:#b9d4ff;background:#1b3960;border-color:#5273a4}
.status.altered{color:#fde68a;background:#493b18;border-color:#90752a}
.status.disconnected,.status.stopped,.status.error,.status.deactivated,.status.cancelled,.status.skipped{color:#fecaca;background:#48262b;border-color:#a94d5c}
.chart-tooltip{position:fixed;z-index:1000;max-width:260px;padding:8px 11px;color:#f4f7fc;background:#080d15;border:1px solid #536987;border-radius:8px;box-shadow:0 8px 26px #0009;font-size:12px;font-weight:700;line-height:1.35;pointer-events:none;white-space:nowrap}
.chart-tooltip[hidden]{display:none}
.chart-legend{display:flex;justify-content:space-between;gap:16px;color:var(--text-secondary);font-size:11px}
.chart-legend{justify-content:flex-start;margin:10px 0}
.chart-legend span{display:flex;align-items:center;gap:6px}
.chart-legend i{display:block;width:18px;height:3px;background:#80aeff}
.chart-legend i.maximum{background:#d39b58}
.chart-empty{color:var(--text-secondary);padding:34px 0;text-align:center}
@media(width<=1050px){.feed-summary{grid-template-columns:repeat(3,1fr)}}
@media(width<=760px){.feed-summary{grid-template-columns:repeat(2,1fr)}.feed-chart{min-height:130px}}
@media(width<=480px){.feed-summary{grid-template-columns:1fr}.window-nav{margin-top:0}}
.text-link{align-self:flex-start;color:#80aeff;font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}.text-link:hover{text-decoration:underline}.timetable-search{display:grid;grid-template-columns:minmax(260px,1fr) minmax(170px,220px) auto;align-items:end;gap:12px;margin-bottom:20px;padding:18px;background:var(--surface-1);border:1px solid var(--border);border-radius:14px}.timetable-search label{display:grid;gap:7px;color:var(--text-secondary);font-size:12px;font-weight:700}.timetable-search input{width:100%;height:42px;padding:0 12px;color:var(--text-primary);background:#101927;border:1px solid #405476;border-radius:8px;font:inherit}.timetable-search input:focus{outline:2px solid #5f98f2;outline-offset:1px}.timetable-search button{height:42px;padding:0 18px;color:#08111e;background:#80aeff;border:0;border-radius:8px;font-weight:800;cursor:pointer}.timetable-search button:hover{background:#a7c7ff}.timetable-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.timetable-summary .metric:last-child strong{font-size:16px}.timetable-detail{border-color:#405f8c}.timetable-detail header .status{vertical-align:middle}.timetable-table td{white-space:nowrap}.timetable-table td:nth-child(4),.timetable-table td:nth-child(5){white-space:normal;min-width:170px}.timetable-table a{color:#9ec2ff}.timetable-table small,.journey-calls small{display:block;margin-top:3px;color:var(--text-secondary);font-size:11px}.journey-calls small.expected{color:#9ec2ff}.journey-calls small.actual{color:#86efac}.journey-calls tr.is-cancelled td{opacity:.72;background:#351f25}.journey-calls tr.is-cancelled strong{text-decoration:line-through}.schedule-type{display:inline-flex;padding:3px 7px;border:1px solid #536987;border-radius:999px;color:#c1cee0;font-size:10px;font-weight:700}.schedule-type.O,.schedule-type.N{color:#b9d4ff;background:#1b3960;border-color:#5273a4}.schedule-type.C{color:#fecaca;background:#48262b;border-color:#a94d5c}.pagination{display:flex;justify-content:space-between;gap:16px;margin-top:18px}.pagination a{padding:8px 12px;color:#b9d4ff;background:#1b2940;border:1px solid #405476;border-radius:8px;text-decoration:none;font-size:13px;font-weight:700}.pagination a:hover{background:#263c5b;border-color:#81abf3}@media(width<=900px){.timetable-summary{grid-template-columns:repeat(2,1fr)}}@media(width<=760px){.timetable-search{grid-template-columns:1fr}.timetable-summary{grid-template-columns:1fr}.timetable-search button{width:100%}}
.journey-identifiers{color:var(--text-secondary);font-size:12px}.journey-source-key{display:flex;flex-wrap:wrap;gap:16px;margin:0 0 14px;color:var(--text-secondary);font-size:12px;font-weight:700}.journey-source-key span{display:flex;align-items:center;gap:7px}.journey-source-key i{width:9px;height:9px;border-radius:50%;background:#aabbd2}.journey-source-key i.darwin{background:#80aeff}.journey-source-key i.trust{background:#62d99a}.journey-calls th,.journey-calls td{vertical-align:top}.journey-calls th:first-child,.journey-calls td:first-child{width:1%;min-width:0;padding-left:5px;padding-right:5px;text-align:center;white-space:nowrap}.journey-calls td:nth-child(2){min-width:145px}.journey-calls th:nth-child(3),.journey-calls th:nth-child(4),.journey-calls th:nth-child(5),.journey-calls th:nth-child(6),.journey-calls td:nth-child(3),.journey-calls td:nth-child(4),.journey-calls td:nth-child(5),.journey-calls td:nth-child(6){text-align:center}.journey-calls td:nth-child(3),.journey-calls td:nth-child(4),.journey-calls td:nth-child(5){min-width:112px}.journey-time-group{display:grid;justify-items:center;gap:4px}.journey-time-row{display:flex;align-items:baseline;justify-content:center;gap:4px;white-space:nowrap}.journey-time-row small{margin:0;color:var(--text-secondary)}.journey-time-row strong{font-variant-numeric:tabular-nums}.journey-time-row.expected strong{color:#9ec2ff}.journey-time-row.actual strong{color:#86efac}.journey-time-row.public-time{padding-top:3px;border-top:1px solid #2b3a50}.journey-empty{color:#71839b;font-size:11px;white-space:nowrap}.journey-platform{display:grid;justify-items:center;gap:7px;min-width:80px}.journey-platform .live-platform strong{color:#9ec2ff}.journey-calls tr.is-cancelled .status{text-decoration:none}@media(width<=760px){.journey-source-key{gap:10px}.journey-calls td:nth-child(2){min-width:130px}.journey-calls td:nth-child(3),.journey-calls td:nth-child(4),.journey-calls td:nth-child(5){min-width:108px}}
.journey-live-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 14px}.journey-live-summary article{display:grid;gap:5px;padding:12px 14px;background:#111c2c;border:1px solid var(--border);border-radius:10px}.journey-live-summary article.darwin{border-color:#3d6396}.journey-live-summary article.trust{border-color:#28765b}.journey-live-summary span{color:var(--text-secondary);font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.journey-live-summary strong{font-size:13px}.journey-list-sources{display:flex;flex-wrap:wrap;gap:5px}.live-source{display:inline-flex;padding:3px 7px;border:1px solid;border-radius:999px;font-size:10px;font-weight:800}.live-source.darwin{color:#b9d4ff;background:#1b3960;border-color:#5273a4}.live-source.trust{color:#a7f3d0;background:#153e31;border-color:#28765b}@media(width<=760px){.journey-live-summary{grid-template-columns:1fr}}
.trust-movements{border-color:#28765b}.trust-movements table a{color:#9ec2ff}.trust-movements td:nth-child(4){min-width:170px}.trust-movements td:last-child{white-space:nowrap}
.journey-data-block{margin:0 0 18px;padding:14px;background:#101927;border:1px solid var(--border);border-radius:10px}.journey-data-block h3{margin:0 0 10px;font-size:13px}.journey-data-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));align-items:start;gap:12px 18px;margin:0;white-space:normal}.journey-data-grid dt{color:var(--text-secondary);font-size:8px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.journey-data-grid dd{margin:2px 0 0;color:var(--text-primary);font-size:10px;overflow-wrap:anywhere}
