1/** 2 * color definitions 3 */ 4.djs-parent { 5 --color-grey-225-10-15: hsl(225, 10%, 15%); 6 --color-grey-225-10-35: hsl(225, 10%, 35%); 7 --color-grey-225-10-55: hsl(225, 10%, 55%); 8 --color-grey-225-10-75: hsl(225, 10%, 75%); 9 --color-grey-225-10-80: hsl(225, 10%, 80%); 10 --color-grey-225-10-85: hsl(225, 10%, 85%); 11 --color-grey-225-10-90: hsl(225, 10%, 90%); 12 --color-grey-225-10-95: hsl(225, 10%, 95%); 13 --color-grey-225-10-97: hsl(225, 10%, 97%); 14 15 --color-blue-205-100-45: hsl(205, 100%, 45%); 16 --color-blue-205-100-45-opacity-30: hsla(205, 100%, 45%, 30%); 17 --color-blue-205-100-50: hsl(205, 100%, 50%); 18 --color-blue-205-100-50-opacity-15: hsla(205, 100%, 50%, 15%); 19 --color-blue-205-100-70: hsl(205, 100%, 75%); 20 --color-blue-205-100-95: hsl(205, 100%, 95%); 21 22 --color-green-150-86-44: hsl(150, 86%, 44%); 23 24 --color-red-360-100-40: hsl(360, 100%, 40%); 25 --color-red-360-100-45: hsl(360, 100%, 45%); 26 --color-red-360-100-92: hsl(360, 100%, 92%); 27 --color-red-360-100-97: hsl(360, 100%, 97%); 28 29 --color-white: hsl(0, 0%, 100%); 30 --color-black: hsl(0, 0%, 0%); 31 --color-black-opacity-10: hsla(0, 0%, 0%, 10%); 32 --color-black-opacity-30: hsla(0, 0%, 0%, 30%); 33 34 --canvas-fill-color: var(--color-white); 35 36 --bendpoint-fill-color: var(--color-blue-205-100-45); 37 --bendpoint-stroke-color: var(--canvas-fill-color); 38 39 --context-pad-entry-background-color: var(--color-white); 40 --context-pad-entry-hover-background-color: var(--color-grey-225-10-95); 41 42 --element-dragger-color: var(--color-blue-205-100-50); 43 --element-hover-outline-fill-color: var(--color-blue-205-100-45); 44 --element-selected-outline-stroke-color: var(--color-blue-205-100-50); 45 --element-selected-outline-secondary-stroke-color: var(--color-blue-205-100-70); 46 47 --lasso-fill-color: var(--color-blue-205-100-50-opacity-15); 48 --lasso-stroke-color: var(--element-selected-outline-stroke-color); 49 50 --palette-entry-color: var(--color-grey-225-10-15); 51 --palette-entry-hover-color: var(--color-blue-205-100-45); 52 --palette-entry-selected-color: var(--color-blue-205-100-50); 53 --palette-separator-color: var(--color-grey-225-10-75); 54 --palette-toggle-hover-background-color: var(--color-grey-225-10-55); 55 --palette-background-color: var(--color-grey-225-10-97); 56 --palette-border-color: var(--color-grey-225-10-75); 57 58 --popup-font-family: "IBM Plex Sans", sans-serif; 59 --popup-font-size: 14px; 60 --popup-header-entry-selected-color: var(--color-blue-205-100-50); 61 --popup-header-font-weight: bolder; 62 --popup-header-group-divider-color: var(--color-grey-225-10-75); 63 --popup-background-color: var(--color-white); 64 --popup-border-color: transparent; 65 --popup-shadow-color: var(--color-black-opacity-30); 66 --popup-disabled-color: var(--color-grey-225-10-35); 67 --popup-description-color: var(--color-grey-225-10-35); 68 --popup-no-results-color: var(--color-grey-225-10-55); 69 --popup-entry-title-color: var(--color-grey-225-10-55); 70 --popup-entry-hover-color: var(--color-grey-225-10-95); 71 --popup-search-border-color: var(--color-grey-225-10-75); 72 --popup-search-focus-border-color: var(--color-blue-205-100-50); 73 --popup-search-focus-background-color: var(--color-blue-205-100-95); 74 75 --resizer-fill-color: var(--color-blue-205-100-45); 76 --resizer-stroke-color: var(--canvas-fill-color); 77 78 --search-font-family: "IBM Plex Sans", sans-serif; 79 --search-font-size: 14px; 80 --search-container-background-color: var(--color-white); 81 --search-shadow-color: var(--color-black-opacity-30); 82 --search-input-border-color: var(--color-grey-225-10-75); 83 --search-input-focus-border-color: var(--color-blue-205-100-50); 84 --search-input-focus-background-color: var(--color-blue-205-100-95); 85 --search-result-hover-background-color: var(--color-grey-225-10-95); 86 --search-result-secondary-color: var(--color-grey-225-10-55); 87 --search-preselected-background-color: var(--color-blue-205-100-50-opacity-15); 88 89 --shape-attach-allowed-stroke-color: var(--color-blue-205-100-50); 90 --shape-connect-allowed-fill-color: var(--color-grey-225-10-97); 91 --shape-drop-allowed-fill-color: var(--color-grey-225-10-97); 92 --shape-drop-not-allowed-fill-color: var(--color-red-360-100-97); 93 --shape-resize-preview-stroke-color: var(--color-blue-205-100-50); 94 95 --snap-line-stroke-color: var(--color-blue-205-100-45-opacity-30); 96 97 --space-tool-crosshair-stroke-color: var(--color-black); 98 99 --tooltip-error-background-color: var(--color-red-360-100-97); 100 --tooltip-error-border-color: var(--color-red-360-100-45); 101 --tooltip-error-color: var(--color-red-360-100-45); 102} 103 104/** 105 * SVG styles 106 */ 107 108.djs-container svg.drop-not-ok { 109 background: var(--shape-drop-not-allowed-fill-color) !important; 110} 111 112.djs-container svg.new-parent { 113 background: var(--shape-drop-allowed-fill-color) !important; 114} 115 116.djs-container svg:focus { 117 outline-offset: -1px; 118} 119 120/** 121 * outline styles 122 */ 123 124.djs-outline, 125.djs-selection-outline { 126 fill: none; 127 shape-rendering: geometricPrecision; 128 stroke-width: 2px; 129} 130 131.djs-outline { 132 visibility: hidden; 133} 134 135.djs-selection-outline { 136 stroke: var(--element-selected-outline-stroke-color); 137} 138 139.djs-element.selected .djs-outline { 140 visibility: visible; 141 142 stroke: var(--element-selected-outline-stroke-color); 143} 144 145.djs-connection.selected .djs-outline { 146 display: none; 147} 148 149.djs-multi-select .djs-element.selected .djs-outline, 150.djs-dragging-active-lasso .djs-element.selected .djs-outline { 151 stroke: var(--element-selected-outline-secondary-stroke-color); 152 display: block; 153} 154 155.djs-shape.connect-ok .djs-visual > :nth-child(1) { 156 fill: var(--shape-connect-allowed-fill-color) !important; 157} 158 159.djs-shape.connect-not-ok .djs-visual > :nth-child(1), 160.djs-shape.drop-not-ok .djs-visual > :nth-child(1) { 161 fill: var(--shape-drop-not-allowed-fill-color) !important; 162} 163 164.djs-shape.new-parent .djs-visual > :nth-child(1) { 165 fill: var(--shape-drop-allowed-fill-color) !important; 166} 167 168 169/* Override move cursor during drop and connect */ 170.drop-not-ok, 171.connect-not-ok, 172.drop-not-ok *, 173.connect-not-ok * { 174 cursor: not-allowed !important; 175} 176 177.drop-ok, 178.connect-ok, 179.drop-ok *, 180.connect-ok * { 181 cursor: default !important; 182} 183 184.djs-element.attach-ok .djs-visual > :nth-child(1) { 185 stroke-width: 5px !important; 186 stroke: var(--shape-attach-allowed-stroke-color) !important; 187} 188 189.djs-frame.connect-not-ok .djs-visual > :nth-child(1), 190.djs-frame.drop-not-ok .djs-visual > :nth-child(1) { 191 stroke-width: 3px !important; 192 stroke: var(--shape-drop-not-allowed-fill-color) !important; 193 fill: none !important; 194} 195 196/** 197* Selection box style 198* 199*/ 200.djs-lasso-overlay { 201 fill: var(--lasso-fill-color); 202 stroke: var(--lasso-stroke-color); 203 stroke-width: 2px; 204 shape-rendering: geometricPrecision; 205 pointer-events: none; 206} 207 208/** 209 * Resize styles 210 */ 211.djs-resize-overlay { 212 fill: none; 213 214 stroke-dasharray: 5 1 3 1; 215 stroke: var(--shape-resize-preview-stroke-color); 216 217 pointer-events: none; 218} 219 220.djs-resizer-hit { 221 fill: none; 222 pointer-events: all; 223} 224 225.djs-resizer-visual { 226 fill: var(--resizer-fill-color); 227 stroke-width: 1px; 228 stroke: var(--resizer-stroke-color); 229 shape-rendering: geometricPrecision; 230} 231 232.djs-resizer:hover .djs-resizer-visual { 233 stroke: var(--resizer-stroke-color); 234 stroke-opacity: 1; 235} 236 237.djs-cursor-resize-ns, 238.djs-resizer-n, 239.djs-resizer-s { 240 cursor: ns-resize; 241} 242 243.djs-cursor-resize-ew, 244.djs-resizer-e, 245.djs-resizer-w { 246 cursor: ew-resize; 247} 248 249.djs-cursor-resize-nwse, 250.djs-resizer-nw, 251.djs-resizer-se { 252 cursor: nwse-resize; 253} 254 255.djs-cursor-resize-nesw, 256.djs-resizer-ne, 257.djs-resizer-sw { 258 cursor: nesw-resize; 259} 260 261.djs-shape.djs-resizing > .djs-outline { 262 visibility: hidden !important; 263} 264 265.djs-shape.djs-resizing > .djs-resizer { 266 visibility: hidden; 267} 268 269.djs-dragger > .djs-resizer { 270 visibility: hidden; 271} 272 273/** 274 * drag styles 275 */ 276.djs-dragger * { 277 fill: none !important; 278 stroke: var(--element-dragger-color) !important; 279} 280 281.djs-dragger tspan, 282.djs-dragger text { 283 fill: var(--element-dragger-color) !important; 284 stroke: none !important; 285} 286 287.djs-dragger marker circle, 288.djs-dragger marker path, 289.djs-dragger marker polygon, 290.djs-dragger marker polyline, 291.djs-dragger marker rect { 292 fill: var(--element-dragger-color) !important; 293 stroke: none !important; 294} 295 296.djs-dragger marker text, 297.djs-dragger marker tspan { 298 fill: none !important; 299 stroke: var(--element-dragger-color) !important; 300} 301 302.djs-dragging, 303.djs-dragging > * { 304 opacity: 0.3 !important; 305 pointer-events: none !important; 306} 307 308/** 309 * no pointer events for visual 310 */ 311.djs-visual, 312.djs-outline { 313 pointer-events: none; 314} 315 316.djs-element.attach-ok .djs-hit { 317 stroke-width: 60px !important; 318} 319 320/** 321 * all pointer events for hit shape 322 */ 323.djs-element > .djs-hit-all, 324.djs-element > .djs-hit-no-move { 325 pointer-events: all; 326} 327 328.djs-element > .djs-hit-stroke, 329.djs-element > .djs-hit-click-stroke { 330 pointer-events: stroke; 331} 332 333/** 334 * shape / connection basic styles 335 */ 336.djs-connection .djs-visual { 337 stroke-width: 2px; 338 fill: none; 339} 340 341.djs-cursor-grab { 342 cursor: -webkit-grab; 343 cursor: -moz-grab; 344 cursor: grab; 345} 346 347.djs-cursor-grabbing { 348 cursor: -webkit-grabbing; 349 cursor: -moz-grabbing; 350 cursor: grabbing; 351} 352 353.djs-cursor-crosshair { 354 cursor: crosshair; 355} 356 357.djs-cursor-move { 358 cursor: move; 359} 360 361.djs-cursor-resize-ns { 362 cursor: ns-resize; 363} 364 365.djs-cursor-resize-ew { 366 cursor: ew-resize; 367} 368 369 370/** 371 * snapping 372 */ 373.djs-snap-line { 374 stroke: var(--snap-line-stroke-color); 375 stroke-linecap: round; 376 stroke-width: 2px; 377 pointer-events: none; 378} 379 380/** 381 * snapping 382 */ 383.djs-crosshair { 384 stroke: var(--space-tool-crosshair-stroke-color); 385 stroke-linecap: round; 386 stroke-width: 1px; 387 pointer-events: none; 388 shape-rendering: geometricPrecision; 389 stroke-dasharray: 5, 5; 390} 391 392/** 393 * palette 394 */ 395 396.djs-palette { 397 position: absolute; 398 left: 20px; 399 top: 20px; 400 401 box-sizing: border-box; 402 width: 48px; 403} 404 405.djs-palette .separator { 406 margin: 5px; 407 padding-top: 5px; 408 409 border: none; 410 border-bottom: solid 1px var(--palette-separator-color); 411 412 clear: both; 413} 414 415.djs-palette .entry:before { 416 vertical-align: initial; 417} 418 419.djs-palette .djs-palette-toggle { 420 cursor: pointer; 421} 422 423.djs-palette .entry, 424.djs-palette .djs-palette-toggle { 425 color: var(--palette-entry-color); 426 font-size: 30px; 427 428 text-align: center; 429} 430 431.djs-palette .entry { 432 float: left; 433} 434 435.djs-palette .entry img { 436 max-width: 100%; 437} 438 439.djs-palette .djs-palette-entries:after { 440 content: ''; 441 display: table; 442 clear: both; 443} 444 445.djs-palette .djs-palette-toggle:hover { 446 background: var(--palette-toggle-hover-background-color); 447} 448 449.djs-palette .entry:hover { 450 color: var(--palette-entry-hover-color); 451} 452 453.djs-palette .highlighted-entry { 454 color: var(--palette-entry-selected-color) !important; 455} 456 457.djs-palette .entry, 458.djs-palette .djs-palette-toggle { 459 width: 46px; 460 height: 46px; 461 line-height: 46px; 462 cursor: default; 463} 464 465/** 466 * Palette open / two-column layout is controlled via 467 * classes on the palette. Events to hook into palette 468 * changed life-cycle are available in addition. 469 */ 470.djs-palette.two-column.open { 471 width: 94px; 472} 473 474.djs-palette:not(.open) .djs-palette-entries { 475 display: none; 476} 477 478.djs-palette:not(.open) { 479 overflow: hidden; 480} 481 482.djs-palette.open .djs-palette-toggle { 483 display: none; 484} 485 486/** 487 * context-pad 488 */ 489.djs-context-pad { 490 position: absolute; 491 display: none; 492 pointer-events: none; 493 line-height: 1; 494 width: 72px; 495 z-index: 100; 496} 497 498.djs-context-pad .entry { 499 width: 22px; 500 height: 22px; 501 text-align: center; 502 display: inline-block; 503 font-size: 22px; 504 margin: 0 2px 2px 0; 505 506 border-radius: 3px; 507 508 cursor: default; 509 510 background-color: var(--context-pad-entry-background-color); 511 box-shadow: 0 0 2px 1px var(--context-pad-entry-background-color); 512 pointer-events: all; 513 vertical-align: middle; 514} 515 516.djs-context-pad .entry:hover { 517 background: var(--context-pad-entry-hover-background-color); 518} 519 520.djs-context-pad.open { 521 display: block; 522} 523 524/** 525 * popup styles 526 */ 527.djs-popup { 528 line-height: 1; 529 box-sizing: border-box; 530 width: min-content; 531 background: var(--popup-background-color); 532 overflow: hidden; 533 position: fixed; 534 z-index: 200; 535 box-shadow: 0px 2px 6px var(--popup-shadow-color); 536 border: solid 1px var(--popup-border-color); 537 min-width: 120px; 538 outline: none; 539 font-size: var(--popup-font-size); 540 font-family: var(--popup-font-family); 541} 542 543.djs-popup-search input { 544 width: 100%; 545 box-sizing: border-box; 546 font-size: var(--popup-font-size); 547 padding: 3px 6px 3px 28px; 548 border-radius: 2px; 549 border: solid 1px var(--popup-search-border-color); 550 line-height: 21px; 551} 552 553.djs-popup-search input:focus { 554 background-color: var(--popup-search-focus-background-color); 555 border: solid 1px var(--popup-search-focus-border-color); 556 outline: none; 557} 558 559.djs-popup-header { 560 display: flex; 561 align-items: stretch; 562 line-height: 20px; 563 margin: 10px 12px 10px 12px; 564} 565 566.djs-popup-header .entry { 567 border-radius: 2px; 568} 569 570.djs-popup button.entry { 571 padding: 0; 572 background: transparent; 573 border: 0; 574} 575 576.djs-popup-header .entry.active { 577 color: var(--popup-header-entry-selected-color); 578} 579 580.djs-popup-header .entry.disabled { 581 color: inherit; 582} 583 584.djs-popup-header-group { 585 display: flex; 586 flex-direction: row; 587 align-items: center; 588 list-style: none; 589 margin: 0; 590 padding: 0; 591} 592 593.djs-popup-header-group .entry { 594 display: flex; 595 flex-direction: row; 596 align-items: center; 597} 598 599.djs-popup-header-group + .djs-popup-header-group:before { 600 content: ''; 601 width: 1px; 602 height: 20px; 603 background: var(--popup-header-group-divider-color); 604 margin: 0 5px; 605} 606 607.djs-popup-search { 608 position: relative; 609 width: auto; 610 margin: 10px 12px; 611} 612 613.djs-popup-title { 614 font-size: var(--popup-font-size); 615 font-weight: var(--popup-header-font-weight); 616 flex: 1; 617 margin: 0; 618} 619 620.djs-popup-breadcrumbs { 621 display: flex; 622 line-height: 20px; 623 margin: 10px 12px; 624} 625 626.djs-popup-breadcrumbs-item { 627 display: inline-flex; 628 min-width: 0; 629 padding: 0; 630 margin: 0; 631 background: transparent; 632 border: 0; 633 outline: none; 634 appearance: none; 635 color: var(--popup-description-color); 636 font: inherit; 637 cursor: pointer; 638 overflow: hidden; 639 text-overflow: ellipsis; 640 white-space: nowrap; 641} 642 643.djs-popup-breadcrumbs-item--separator::before { 644 display: inline-block; 645 content: '/'; 646 color: var(--popup-description-color); 647 margin: 0 4px; 648} 649 650.djs-popup-breadcrumbs-item:hover { 651 color: inherit; 652 text-decoration: underline; 653} 654 655.djs-popup-breadcrumbs-item:focus-visible { 656 outline: 1px solid var(--popup-search-focus-border-color); 657 outline-offset: 2px; 658} 659 660.djs-popup-breadcrumbs-item--back { 661 align-items: center; 662 justify-content: center; 663 flex-shrink: 0; 664 padding: 2px 3px; 665 margin-right: 6px; 666 border: 1px solid var(--popup-search-border-color); 667 border-radius: 4px; 668} 669 670.djs-popup-breadcrumbs-item--back:hover { 671 background: #f2f3f5; 672} 673 674.djs-popup-breadcrumbs-item--current { 675 font-weight: var(--popup-header-font-weight); 676 color: inherit; 677 cursor: default; 678} 679 680.djs-popup-breadcrumbs-item--current:hover { 681 text-decoration: none; 682} 683 684.djs-popup-entry-chevron { 685 display: flex; 686 align-items: center; 687 margin-left: 6px; 688 color: var(--popup-description-color); 689} 690 691.djs-popup-search-icon { 692 position: absolute; 693 left: 8px; 694 top: 7px; 695} 696 697.djs-popup-search-count { 698 margin: 0 12px; 699 font-size: 11px; 700 color: var(--popup-description-color); 701} 702 703.djs-popup-results { 704 margin: 7px 3px 7px 12px; 705 list-style: none; 706 max-height: 280px; 707 overflow: auto; 708 padding-right: 9px; 709} 710 711.djs-popup-group { 712 margin: 0; 713 padding: 0; 714 width: 100%; 715} 716 717.djs-popup-body .entry, 718.djs-popup-body .entry-header { 719 padding: 5px 7px; 720 cursor: default; 721 border-radius: 4px; 722} 723 724.djs-popup-body .entry-header { 725 font-weight: var(--popup-header-font-weight); 726 color: var(--popup-entry-title-color); 727 padding-left: 0; 728} 729 730.djs-popup [class*="icon"] .djs-popup-label, 731.djs-popup-label:not(:first-child) { 732 margin-left: .5em; 733} 734 735.djs-popup [class*="icon"]:before, 736.djs-popup-entry-icon { 737 width: 1em; 738 height: 1em; 739 display: inline-block; 740 font-size: 1.4em; 741 vertical-align: middle; 742} 743 744.djs-popup-body .entry-header:not(:first-child) { 745 margin-top: 8px; 746 margin-bottom: 2px; 747} 748 749.djs-popup-body .entry { 750 display: flex; 751 flex-direction: row; 752 align-items: stretch; 753 height: min-content; 754} 755 756.djs-popup .entry.selected { 757 background-color: var(--popup-entry-hover-color); 758} 759 760.djs-popup .entry.disabled { 761 color: var(--popup-disabled-color); 762 cursor: not-allowed; 763} 764 765.djs-popup-body .entry:not(:first-child) { 766 margin-top: 2px; 767} 768 769.djs-popup-entry-content { 770 display: flex; 771 flex-direction: column; 772 flex: 1; 773} 774 775.djs-popup-entry-description { 776 font-size: .9em; 777 margin-top: .25em; 778 779 color: var(--popup-description-color); 780} 781 782.djs-popup-label, 783.djs-popup-entry-description { 784 line-height: 1.4em; 785} 786 787.djs-popup .entry, 788.djs-popup .entry-header { 789 margin: 1px; 790} 791 792.djs-popup-body { 793 flex-direction: column; 794 width: auto; 795} 796 797.djs-popup *::-webkit-scrollbar { 798 width: 6px; 799} 800 801.djs-popup *::-webkit-scrollbar-thumb { 802 border-radius: 3px; 803 background-color: rgba(0, 0, 0, 0.2); 804} 805 806.djs-popup *::-webkit-scrollbar-track { 807 box-shadow: none; 808 background: transparent; 809 margin: 0; 810 padding: 5px; 811} 812 813.djs-popup-no-results { 814 padding: 0 12px 12px 12px; 815 color: var(--popup-no-results-color); 816} 817 818.djs-popup-entry-docs { 819 display: none; 820 margin-left: 3px; 821 color: var(--popup-description-color); 822} 823 824.djs-popup-body .entry:focus-within .djs-popup-entry-docs, 825.djs-popup-body .entry:focus .djs-popup-entry-docs, 826.djs-popup-body .entry:hover .djs-popup-entry-docs { 827 display: inline; 828} 829 830.djs-popup-entry-docs svg { 831 vertical-align: middle; 832 margin: 2px; 833} 834 835/** 836 * palette styles 837 */ 838.djs-palette { 839 background: var(--palette-background-color); 840 border: solid 1px var(--palette-border-color); 841 border-radius: 2px; 842} 843 844/** 845 * bendpoints 846 */ 847.djs-segment-dragger, 848.djs-bendpoint { 849 display: none; 850} 851 852.djs-segment-dragger .djs-visual { 853 display: none; 854 855 fill: var(--bendpoint-fill-color); 856 stroke: var(--bendpoint-stroke-color); 857 stroke-width: 1px; 858 stroke-opacity: 1; 859} 860 861.djs-segment-dragger:hover .djs-visual { 862 display: block; 863} 864 865.djs-bendpoint .djs-visual { 866 fill: var(--bendpoint-fill-color); 867 stroke: var(--bendpoint-stroke-color); 868 stroke-width: 1px; 869} 870 871.djs-segment-dragger:hover, 872.djs-bendpoints.hover .djs-segment-dragger, 873.djs-bendpoints.selected .djs-segment-dragger, 874.djs-bendpoint:hover, 875.djs-bendpoints.hover .djs-bendpoint, 876.djs-bendpoints.selected .djs-bendpoint { 877 display: block; 878} 879 880.djs-drag-active .djs-bendpoints * { 881 display: none; 882} 883 884.djs-bendpoints:not(.hover) .floating { 885 display: none; 886} 887 888.djs-segment-dragger:hover .djs-visual, 889.djs-segment-dragger.djs-dragging .djs-visual, 890.djs-bendpoint:hover .djs-visual, 891.djs-bendpoint.floating .djs-visual { 892 fill: var(--bendpoint-fill-color); 893 stroke: var(--bendpoint-stroke-color); 894 stroke-opacity: 1; 895} 896 897.djs-bendpoint.floating .djs-hit { 898 pointer-events: none; 899} 900 901.djs-segment-dragger .djs-hit, 902.djs-bendpoint .djs-hit { 903 fill: none; 904 pointer-events: all; 905} 906 907.djs-segment-dragger.horizontal .djs-hit { 908 cursor: ns-resize; 909} 910 911.djs-segment-dragger.vertical .djs-hit { 912 cursor: ew-resize; 913} 914 915.djs-segment-dragger.djs-dragging .djs-hit { 916 pointer-events: none; 917} 918 919.djs-updating, 920.djs-updating > * { 921 pointer-events: none !important; 922} 923 924.djs-updating .djs-context-pad, 925.djs-updating .djs-outline, 926.djs-updating .djs-bendpoint, 927.djs-multi-select .djs-bendpoint, 928.djs-multi-select .djs-segment-dragger, 929.connect-ok .djs-bendpoint, 930.connect-not-ok .djs-bendpoint, 931.drop-ok .djs-bendpoint, 932.drop-not-ok .djs-bendpoint { 933 display: none !important; 934} 935 936.djs-segment-dragger.djs-dragging, 937.djs-bendpoint.djs-dragging { 938 display: block; 939 opacity: 1.0; 940} 941 942 943/** 944 * tooltips 945 */ 946.djs-tooltip-error { 947 width: 160px; 948 padding: 6px; 949 950 background: var(--tooltip-error-background-color); 951 border: solid 1px var(--tooltip-error-border-color); 952 border-radius: 2px; 953 color: var(--tooltip-error-color); 954 font-size: 12px; 955 line-height: 16px; 956 957 opacity: 0.75; 958} 959 960.djs-tooltip-error:hover { 961 opacity: 1; 962} 963 964 965/** 966 * search pad 967 */ 968.djs-search-open .djs-context-pad { 969 display: none; 970} 971 972.djs-search-open .djs-connection.selected .djs-outline { 973 display: block; 974} 975 976.djs-search-container { 977 position: absolute; 978 top: 20px; 979 left: 0; 980 right: 0; 981 margin-left: auto; 982 margin-right: auto; 983 984 width: 25%; 985 min-width: 300px; 986 max-width: 400px; 987 z-index: 10; 988 989 font-family: var(--search-font-family); 990 font-size: var(--search-font-size); 991 border-radius: 2px; 992 box-shadow: 0px 2px 6px var(--search-shadow-color); 993} 994 995.djs-search-container:not(.open) { 996 display: none; 997} 998 999.djs-search-input { 1000 position: relative; 1001} 1002 1003.djs-search-input svg { 1004 position: absolute; 1005 left: 8px; 1006 top: 7px; 1007} 1008 1009.djs-search-input input { 1010 font-size: var(--search-font-size); 1011 width: 100%; 1012 padding: 3px 6px 3px 28px; 1013 border: 1px solid var(--search-input-border-color); 1014 border-radius: 2px; 1015 box-sizing: border-box; 1016 line-height: 21px; 1017} 1018 1019.djs-search-input input:focus { 1020 background-color: var(--search-input-focus-background-color); 1021 border: solid 1px var(--search-input-focus-border-color); 1022 outline: none; 1023} 1024 1025.djs-search-results { 1026 position: relative; 1027 overflow-y: auto; 1028 max-height: 200px; 1029 background: var(--search-container-background-color); 1030} 1031 1032.djs-search-result { 1033 padding: 6px 8px; 1034} 1035 1036.djs-search-result-primary { 1037 margin: 0 0 3px; 1038 text-overflow: ellipsis; 1039 overflow: hidden; 1040 white-space: nowrap; 1041} 1042 1043.djs-search-result-secondary { 1044 font-family: monospace; 1045 margin: 0; 1046 text-overflow: ellipsis; 1047 overflow: hidden; 1048 white-space: nowrap; 1049 color: var(--search-result-secondary-color); 1050} 1051 1052.djs-search-result:hover { 1053 background: var(--search-result-hover-background-color); 1054} 1055 1056.djs-search-result-selected { 1057 background: var(--search-result-hover-background-color); 1058} 1059 1060.djs-search-result-selected:hover { 1061 background: var(--search-result-hover-background-color); 1062} 1063 1064.djs-search-open .djs-element .djs-outline { 1065 fill: var(--search-preselected-background-color) !important; 1066} 1067 1068/** 1069 * hidden styles 1070 */ 1071.djs-element-hidden, 1072.djs-element-hidden .djs-hit, 1073.djs-element-hidden .djs-outline, 1074.djs-label-hidden .djs-label { 1075 display: none !important; 1076} 1077 1078.djs-element .djs-hit-stroke, 1079.djs-element .djs-hit-click-stroke, 1080.djs-element .djs-hit-all { 1081 cursor: move; 1082}