.vl-icon{width:22px;height:22px;flex:none;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.vl-diagram{width:150px;height:64px;display:block}.vl-diagram rect{fill:#d9e8f5;stroke:#315a82}.vl-diagram path{fill:none;stroke:#173f68;stroke-width:1.5}.vl-diagram text{font:10px sans-serif;fill:#173f68}
.vl-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.vl-legend section{border:1px solid #cfdae6;border-radius:8px;padding:10px}.vl-legend strong{font-size:13px}.vl-legend small{display:block;font-size:12px}
.vl-menu{display:grid;gap:8px}.vl-menu button,.vl-relations button[data-vl-link]{display:flex;gap:8px;align-items:center;text-align:left;margin:6px 0}
.vl-phase-tools{grid-column:1/3;display:flex;flex-wrap:wrap;gap:3px;margin-top:3px}.vl-phase-tools button{display:inline-flex;gap:4px;align-items:center;width:auto!important;min-height:26px;padding:3px 5px!important;border:1px solid #b4c8dc!important;border-radius:5px;background:#edf4fa!important;color:#163b61!important;font-size:10px!important;text-align:left}.vl-phase-tools .vl-icon{width:16px;height:16px}.vl-phase-tools button[data-vl-relations]{max-width:100%}.vl-phase-tools button[data-vl-menu]{font-weight:700}
.vl-grid .weekly-label.vl-selected{background:#e4effa}.vl-grid .gantt-segment.vl-selected{outline:2px solid #173f68;outline-offset:1px}.vl-grid [data-kind="p"]:focus-visible{outline:3px solid #ac6700}
.vl-grid .vl-port{position:absolute;top:calc(50% - 31px);width:24px!important;height:24px!important;padding:0!important;border:0!important;background:transparent!important;color:#163f69!important;z-index:7;touch-action:none;opacity:0;pointer-events:none;cursor:crosshair}.vl-port svg{display:block;width:24px;height:24px;fill:#fff;stroke:currentColor;stroke-width:2}.vl-port.vl-start{left:-12px}.vl-port.vl-end{right:-12px}.vl-port.vl-selected,.vl-port:focus-visible,.vl-linking .vl-port{opacity:1;pointer-events:auto}.vl-port:focus-visible{outline:2px solid #a45b00;border-radius:50%}.vl-port.vl-allowed svg{fill:#d7f0df;stroke:#23683c}.vl-linking .vl-port:hover svg{fill:#f7e6a8}
.vl-lines .vl-line,.vl-lines .vl-tip{fill:none;stroke:#315c87;stroke-width:2;pointer-events:none;stroke-linejoin:round}.vl-lines .vl-hit{fill:none;stroke:transparent;stroke-width:10;pointer-events:stroke;cursor:pointer}.vl-connector:focus{outline:none}.vl-connector:focus .vl-line,.vl-connector.vl-highlight .vl-line,.vl-connector.vl-highlight .vl-tip{stroke:#9b4c00;stroke-width:3}.vl-lines .vl-same .vl-line{stroke-dasharray:5 3}.vl-link-label{font:10px sans-serif;fill:#163f69;stroke:#fff;stroke-width:3;paint-order:stroke;pointer-events:all;cursor:pointer}.vl-connector:focus .vl-link-label{font-weight:800}
.vl-provisional{position:fixed;inset:0;width:100vw;height:100vh;z-index:10000;pointer-events:none}.vl-provisional path{fill:none;stroke:#174d7d;stroke-width:2;stroke-dasharray:5 3}.vl-gesture-tip{position:fixed;max-width:320px;padding:8px;background:#183d63;color:white;border-radius:7px;font-size:12px;z-index:10001;pointer-events:none}
@media print{.vl-port,.vl-phase-tools button[data-vl-menu],.vl-provisional,.vl-gesture-tip{display:none!important}.vl-lines .vl-line,.vl-lines .vl-tip{stroke:#111}.vl-link-label{fill:#111}}
.vl-legend-dialog{width:min(820px,94vw)}
.vl-grid .vl-bar-menu{position:absolute;top:calc(50% + 17px);left:0;width:27px!important;height:25px;padding:2px!important;background:#fff!important;border:1px solid #94aec6!important;color:#153d66!important;z-index:7;opacity:0;pointer-events:none}.vl-bar-menu.vl-selected,.vl-bar-menu:focus-visible{opacity:1;pointer-events:auto}
@media print{.vl-bar-menu{display:none!important}}
.vl-grid .week-cell:has(>.vl-port.vl-selected),.vl-grid .week-cell:has(>.vl-bar-menu.vl-selected),.vl-linking .week-cell:has(>.vl-port){z-index:6}
.vl-grid .vl-port.vl-start{left:-24px}.vl-grid .vl-port.vl-end{right:-24px}
