.platform-trajectory{--trajectory-blue:#315cff;--trajectory-cyan:#1da9cb}.trajectory-current{display:grid;grid-template-columns:minmax(260px,1.5fr) repeat(5,minmax(100px,.65fr));background:#fff;border:1px solid var(--rule);border-radius:8px;margin-bottom:18px;overflow:hidden}.trajectory-current>div,.trajectory-current dl{margin:0;padding:15px 16px;border-right:1px solid var(--rule)}.trajectory-current>*:last-child{border-right:0}.trajectory-current span,.trajectory-current dt{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.055em}.trajectory-current strong,.trajectory-current dd{display:block;margin:7px 0 0;font-size:12px;line-height:1.4}.trajectory-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start}.trajectory-lanes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.trajectory-lane{min-width:0;background:#fff;border:1px solid var(--rule);border-radius:8px;overflow:hidden}.trajectory-lane>header{display:flex;justify-content:space-between;gap:12px;padding:15px 16px 12px;border-bottom:1px solid var(--rule)}.trajectory-lane>header span,.trajectory-spine>header span,.trajectory-role{color:var(--trajectory-blue);font-size:9px;font-weight:650;text-transform:uppercase;letter-spacing:.07em}.trajectory-lane[data-role-class=verification]>header span{color:#7a54c9}.trajectory-lane[data-role-class=execution]>header span{color:#0d809f}.trajectory-lane h2,.trajectory-spine h2{font-size:14px;margin:4px 0 0;letter-spacing:-.02em}.trajectory-lane>header small{color:var(--muted);font-size:10px;text-align:right;line-height:1.4}.trajectory-lane>p{color:var(--muted);font-size:11px;line-height:1.5;margin:0;padding:11px 16px;background:#fafbfc;border-bottom:1px solid var(--rule)}.trajectory-roots{padding:12px}.trajectory-root{border:1px solid #dce2eb;border-radius:7px;background:#fff;overflow:hidden}.trajectory-root+ .trajectory-root{margin-top:10px}.trajectory-root>header{padding:13px 13px 10px}.trajectory-packet-summary{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-top:7px}.trajectory-packet-summary strong{display:block;font-size:12px;line-height:1.4}.trajectory-packet-summary small{display:block;color:var(--muted);font-size:10px;margin-top:4px;line-height:1.4}.trajectory-state{display:inline-flex;width:max-content;border-radius:999px;padding:3px 7px;background:#eef2f7;color:#5f6b7c;font-size:9px;text-transform:capitalize;white-space:nowrap}.trajectory-state[data-status=working],.trajectory-state[data-status=running],.trajectory-state[data-status=completed],.trajectory-state[data-status=recorded]{background:#eaf7f1;color:#197252}.trajectory-state[data-status=waiting],.trajectory-state[data-status=blocked],.trajectory-state[data-status=open]{background:#fff3de;color:#895d18}.trajectory-state[data-status=failed],.trajectory-state[data-status=rejected]{background:#fbe9eb;color:#a23e48}.trajectory-root-links{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 13px 11px}.trajectory-root-links a,.trajectory-artifact{color:var(--trajectory-blue);text-decoration:none;font-size:10px}.trajectory-root-links code{color:var(--muted);font-size:9px}.trajectory-artifact{display:block;border-top:1px solid #edf0f4;padding:10px 13px;background:#fafbfe}.trajectory-artifact span,.trajectory-artifact small{display:block}.trajectory-artifact small{color:var(--muted);margin-top:3px}.trajectory-root>details{border-top:1px solid var(--rule)}.trajectory-root>details>summary{padding:10px 13px;cursor:pointer;color:#44536a;font-size:10px;background:#f7f9fc}.trajectory-related,.trajectory-related ul{list-style:none;margin:0;padding:0}.trajectory-related>li{padding:11px 13px;border-top:1px solid #edf0f4}.trajectory-related ul{margin:9px 0 0 10px;padding-left:9px;border-left:1px solid #dce2eb}.trajectory-related ul li{padding:8px 0}.trajectory-related .trajectory-packet-summary{margin:0}.trajectory-related .trajectory-artifact{margin:8px -13px -11px}.trajectory-dependencies,.trajectory-events{padding:12px 13px;border-top:1px solid #edf0f4}.trajectory-root h4{font-size:10px;margin:0 0 9px}.trajectory-root details p{color:var(--muted);font-size:10px;line-height:1.5}.trajectory-dependencies ul,.trajectory-events ol{list-style:none;margin:0;padding:0;display:grid;gap:7px}.trajectory-dependencies li{display:grid;gap:3px}.trajectory-dependencies code,.trajectory-events code{font-size:9px;color:#59677c}.trajectory-dependencies span,.trajectory-events span{font-size:10px;color:var(--muted);line-height:1.4}.trajectory-events li{display:grid;grid-template-columns:52px minmax(80px,.5fr) minmax(0,1fr);gap:7px}.trajectory-events time{font:9px Geist Mono,monospace;color:var(--muted)}.trajectory-spine{position:sticky;top:72px;background:#fff;border:1px solid var(--rule);border-radius:8px;overflow:hidden}.trajectory-spine>header{padding:16px;border-bottom:1px solid var(--rule)}.trajectory-spine ol{list-style:none;margin:0;padding:0}.trajectory-spine li+li{border-top:1px solid var(--rule)}.trajectory-spine li a{display:grid;grid-template-columns:54px minmax(0,1fr);gap:10px;padding:13px 14px;text-decoration:none}.trajectory-spine li a:hover{background:#f8faff}.trajectory-spine time{font:9px Geist Mono,monospace;color:var(--muted);padding-top:2px}.trajectory-spine strong{font-size:11px;line-height:1.4}.trajectory-spine p{font-size:10px;color:var(--muted);line-height:1.45;margin:4px 0 7px}.trajectory-spine footer{border-top:1px solid var(--rule);padding:13px 14px;color:var(--muted);font-size:10px;line-height:1.5}.trajectory-spine>p{padding:15px;color:var(--muted);font-size:11px}@media(max-width:1250px){.trajectory-layout{grid-template-columns:1fr}.trajectory-spine{position:static}.trajectory-current{grid-template-columns:repeat(3,1fr)}.trajectory-current>div{grid-column:span 3}.trajectory-current>*{border-bottom:1px solid var(--rule)}}@media(max-width:900px){.trajectory-lanes{grid-template-columns:1fr}.trajectory-current{grid-template-columns:repeat(2,1fr)}.trajectory-current>div{grid-column:span 2}.trajectory-current>*{border-right:1px solid var(--rule)}}@media(max-width:520px){.trajectory-current{grid-template-columns:1fr}.trajectory-current>div{grid-column:auto}.trajectory-current>*{border-right:0}.trajectory-events li{grid-template-columns:48px minmax(0,1fr)}.trajectory-events span{grid-column:2}}
