/*! JointJS React v4.3.1 (2026-07-07) - React bindings and hooks for JointJS to build interactive diagrams and graphs.

This Source Code Form is subject to the terms of the Mozilla Public
License, v. 2.0. If a copy of the MPL was not distributed with this
file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/@layer joint;@layer joint{:root{--jj-color-dark-900: #6f859b;--jj-color-dark-800: #566c81;--jj-color-dark-700: #425567;--jj-color-dark-600: #344351;--jj-color-dark-500: #293a49;--jj-color-dark-400: #253544;--jj-color-dark-300: #202f3e;--jj-color-dark-200: #1a2733;--jj-color-dark-100: #131e29;--jj-color-light-100: #f5f6f8;--jj-color-light-125: #f3f6f8;--jj-color-light-150: #f0f4f7;--jj-color-light-200: #eaf0f4;--jj-color-light-300: #e4ebf1;--jj-color-light-400: #dde6ed;--jj-color-light-500: #cfdbe4;--jj-color-light-600: #c1cfda;--jj-color-light-700: #a6b6c5;--jj-color-light-800: #8a9eb0;--jj-color-light-900: #6f859b;--jj-color-success: #36a18b;--jj-color-destructive: #e03131;--jj-color-valid: #566c81;--jj-color-invalid: #868e96;--jj-radius-sm: 2px;--jj-radius-md: 3px;--jj-radius-lg: 4px;--jj-space-xs: 2px;--jj-space-sm: 4px;--jj-space-md: 6px;--jj-space-lg: 10px;--jj-stroke-width: 2px;--jj-color-primary: var(--jj-color-dark-500);--jj-color-primary-contrast: var(--jj-color-light-100);--jj-color-surface: var(--jj-color-light-100);--jj-color-shape-surface: var(--jj-color-light-150);--jj-color-shape-border: var(--jj-color-light-800);--jj-color-link: var(--jj-color-light-800);--jj-color-tool: var(--jj-color-light-100);--jj-color-tool-border: var(--jj-color-light-900);--jj-color-text: var(--jj-color-dark-200);--jj-color-border: var(--jj-color-light-500);--jj-color-border-subtle: var(--jj-color-light-200);--jj-drag-cursor: move;--jj-dragging-cursor: move;--jj-port-drag-cursor: crosshair;--jj-port-dragging-cursor: crosshair;--jj-transition-duration: .2s}@media(min-resolution:1.5dppx){:root{--jj-stroke-width: 1.5px}}}@layer joint{:root{--jj-box-color: var(--jj-color-shape-surface);--jj-box-hover-border-color: var(--jj-color-primary);--jj-box-fg-color: var(--jj-color-text);--jj-box-border-color: var(--jj-color-shape-border);--jj-box-border-width: var(--jj-stroke-width);--jj-box-border-radius: var(--jj-radius-lg);--jj-box-padding: 8px 12px;--jj-box-font-size: 14px;--jj-box-font-family: sans-serif}.jj-is-measuring{opacity:0;pointer-events:none}.jj-box{background:var(--jj-box-color);color:var(--jj-box-fg-color);border-width:var(--jj-box-border-width);border-style:solid;border-color:var(--jj-box-border-color);border-radius:var(--jj-box-border-radius);padding:var(--jj-box-padding);font-size:var(--jj-box-font-size);font-family:var(--jj-box-font-family);transition:border-color var(--jj-transition-duration)}.jj-box:hover{border-color:var(--jj-box-hover-border-color);cursor:var(--jj-drag-cursor)}}@layer joint{:root{--jj-port-color: var(--jj-color-surface);--jj-port-border-color: var(--jj-color-link);--jj-port-border-width: var(--jj-stroke-width);--jj-port-label-color: var(--jj-color-light-900);--jj-port-label-font-size: 10px;--jj-port-label-font-family: Arial, sans-serif}.jj-port{fill:var(--jj-port-color);stroke:var(--jj-port-border-color);stroke-width:var(--jj-port-border-width);transition:fill var(--jj-transition-duration),stroke var(--jj-transition-duration),stroke-width var(--jj-transition-duration)}.jj-port[magnet=active]{cursor:var(--jj-port-drag-cursor)}.jj-port-label{fill:var(--jj-port-label-color);font-size:var(--jj-port-label-font-size);font-family:var(--jj-port-label-font-family)}}@layer joint{:root{--jj-link-label-bg-color: var(--jj-color-light-200);--jj-link-label-color: var(--jj-color-text);--jj-link-label-font-size: 10px;--jj-link-label-font-family: Arial, sans-serif;--jj-link-label-border-color: var(--jj-color-light-700);--jj-link-label-border-width: var(--jj-stroke-width);--jj-link-label-border-radius: var(--jj-radius-sm)}.jj-link-label{fill:var(--jj-link-label-color);font-size:var(--jj-link-label-font-size);font-family:var(--jj-link-label-font-family)}.jj-link-label-bg{fill:var(--jj-link-label-bg-color);stroke:var(--jj-link-label-border-color);stroke-width:var(--jj-link-label-border-width);transition:stroke var(--jj-transition-duration)}.jj-link-label-bg:hover{stroke:var( --jj-color-light-900)}rect.jj-link-label-bg{rx:var(--jj-link-label-border-radius);ry:var(--jj-link-label-border-radius)}}@layer joint{:root{--jj-link-color: var(--jj-color-link);--jj-link-hover-color: var(--jj-color-primary);--jj-link-width: var(--jj-stroke-width);--jj-link-dash: none;--jj-link-line-cap: butt;--jj-link-connecting-color: var(--jj-color-link);--jj-link-connecting-width: var(--jj-stroke-width);--jj-link-connecting-dash: 8 4}.jj-link-line{stroke:var(--jj-link-color);stroke-width:var(--jj-link-width);stroke-dasharray:var(--jj-link-dash);stroke-linecap:var(--jj-link-line-cap);transition:stroke var(--jj-transition-duration)}.jj-link-wrapper:hover+.jj-link-line{stroke:var(--jj-link-hover-color)}.jj-is-connecting{--jj-link-color: var(--jj-link-connecting-color);--jj-link-width: var(--jj-link-connecting-width);--jj-link-dash: var(--jj-link-connecting-dash)}.jj-is-snapped{--jj-link-color: var(--jj-color-primary)}}@layer joint{:root{--jj-paper-color: var(--jj-color-light-300);--jj-paper-grid-color: var(--jj-color-light-700);--jj-highlighter-connecting-color: var(--jj-color-primary);--jj-highlighter-embedding-color: var(--jj-color-primary);--jj-port-hover-color: var(--jj-color-shape-surface);--jj-port-hover-border-color: var(--jj-color-link);--jj-port-hover-border-width: calc(var(--jj-stroke-width) * 2);--jj-port-available-color: var(--jj-color-dark-800);--jj-port-available-border-color: var(--jj-color-dark-800);--jj-port-available-border-width: var(--jj-port-border-width);--jj-port-connecting-color: var(--jj-color-primary);--jj-port-connecting-border-color: var(--jj-color-primary);--jj-port-connecting-border-width: var(--jj-port-border-width);--jj-box-available-border-color: var(--jj-color-valid)}.jj-paper{background-color:var(--jj-paper-color);height:-webkit-fill-available;height:stretch}.jj-port[magnet=active]:not(.jj-is-magnet-available):hover{fill:var(--jj-port-hover-color);stroke:var(--jj-port-hover-border-color);stroke-width:var(--jj-port-hover-border-width)}.jj-port.jj-is-magnet-available{fill:var(--jj-port-available-color);stroke:var(--jj-port-available-border-color);stroke-width:var(--jj-port-available-border-width)}.jj-port.jj-is-connecting{fill:var(--jj-port-connecting-color);stroke:var(--jj-port-connecting-border-color);stroke-width:var(--jj-port-connecting-border-width)}.jj-is-dragging .jj-port[magnet=active]{cursor:var(--jj-port-dragging-cursor)}.jj-is-dragging .jj-box{cursor:var(--jj-dragging-cursor)}.jj-is-element-available .jj-box{border-color:var(--jj-box-available-border-color)}.jj-magnet-highlighter{transition:opacity var(--jj-transition-duration) ease;opacity:1}@starting-style{.jj-magnet-highlighter{opacity:0}}}:root{--bg: #ffffff;--text: #1a1d23;--muted: #8b8f99;--line-muted: #c7cad1;--row-a: #fbfbfd;--row-b: #f2f3f6;--border: #e4e6eb;--accent-soft: #eef4ff}@media(prefers-color-scheme:dark){:root{--bg: #16181d;--text: #eef0f3;--muted: #7d818c;--line-muted: #3a3e47;--row-a: #1b1e24;--row-b: #20232a;--border: #2b2e36;--accent-soft: #1c2740}}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}.timeline-app{margin-top:-2rem;width:100vw;height:100vh;overflow:hidden;display:flex;align-items:center;justify-content:center}.timeline-content{display:flex;flex-direction:column;align-items:start;padding:24px;gap:16px}.timeline-header h1{font-size:22px;margin:0 0 4px}.timeline-header p{margin:0;color:var(--muted);font-size:14px;max-width:720px}.timeline-body{display:flex;gap:24px;align-items:flex-start;flex:1}.canvas-scroll{overflow:auto;border:1px solid var(--border);border-radius:10px;background:var(--bg);flex-shrink:0;max-width:100%}.team-row-bg{fill:var(--row-a);transition:opacity .15s ease}.team-row-bg--b{fill:var(--row-b)}.team-row-highlight{fill:var(--accent-soft);stroke:#2563eb;stroke-width:1.5}.team-row-label{fill:var(--text);font-size:13px;font-weight:600;transition:fill .15s ease}.team-row-label--dimmed{fill:var(--muted)}.axis-header-bg{fill:var(--bg)}.axis-gridline,.axis-baseline{stroke:var(--border);stroke-width:1}.axis-label{fill:var(--muted);font-size:11px;text-anchor:middle}.player-path{transition:stroke .15s ease,stroke-width .15s ease,opacity .15s ease}.player-label{font-size:12px;font-weight:600}.legend{width:240px;flex-shrink:0;border:1px solid var(--border);border-radius:10px;padding:16px}.legend-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.legend-header h2{font-size:14px;margin:0;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.legend-reset{font-size:12px;border:1px solid var(--border);background:transparent;color:var(--text);border-radius:6px;padding:4px 8px;cursor:pointer}.legend-reset:hover{background:var(--row-b)}.legend-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;max-height:460px;overflow-y:auto}.legend-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;cursor:pointer}.legend-item--hovered{background:var(--row-b)}.legend-swatch{width:10px;height:10px;border-radius:50%;flex-shrink:0}.legend-name{flex:1;font-size:13px}.legend-name--hidden{color:var(--muted);text-decoration:line-through}.legend-position{font-size:11px;color:var(--muted)}.legend-hint{font-size:11px;color:var(--muted);margin:12px 0 0;line-height:1.4}
