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