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-55); 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-search-icon { 621 position: absolute; 622 left: 8px; 623 top: 7px; 624} 625 626.djs-popup-results { 627 margin: 7px 3px 7px 12px; 628 list-style: none; 629 max-height: 280px; 630 overflow: auto; 631 padding-right: 9px; 632} 633 634.djs-popup-group { 635 margin: 0; 636 padding: 0; 637 width: 100%; 638} 639 640.djs-popup-body .entry, 641.djs-popup-body .entry-header { 642 padding: 5px 7px; 643 cursor: default; 644 border-radius: 4px; 645} 646 647.djs-popup-body .entry-header { 648 font-weight: var(--popup-header-font-weight); 649 color: var(--popup-entry-title-color); 650 padding-left: 0; 651} 652 653.djs-popup [class*="icon"] .djs-popup-label, 654.djs-popup-label:not(:first-child) { 655 margin-left: .5em; 656} 657 658.djs-popup [class*="icon"]:before, 659.djs-popup-entry-icon { 660 width: 1em; 661 height: 1em; 662 display: inline-block; 663 font-size: 1.4em; 664 vertical-align: middle; 665} 666 667.djs-popup-body .entry-header:not(:first-child) { 668 margin-top: 8px; 669 margin-bottom: 2px; 670} 671 672.djs-popup-body .entry { 673 display: flex; 674 flex-direction: row; 675 align-items: stretch; 676 height: min-content; 677} 678 679.djs-popup .entry.selected { 680 background-color: var(--popup-entry-hover-color); 681} 682 683.djs-popup .entry.disabled { 684 color: var(--popup-disabled-color); 685 cursor: not-allowed; 686} 687 688.djs-popup-body .entry:not(:first-child) { 689 margin-top: 2px; 690} 691 692.djs-popup-entry-content { 693 display: flex; 694 flex-direction: column; 695 flex: 1; 696 overflow: hidden; 697} 698 699.djs-popup-entry-description { 700 color: var(--popup-description-color); 701} 702 703.djs-popup-label, 704.djs-popup-entry-description { 705 line-height: 1.4em; 706} 707 708.djs-popup .entry, 709.djs-popup .entry-header { 710 margin: 1px; 711} 712 713.djs-popup-title, 714.djs-popup-label, 715.djs-popup-entry-description, 716.djs-popup .entry-header { 717 overflow: hidden; 718 text-overflow: ellipsis; 719 white-space: nowrap; 720} 721 722.djs-popup-entry-name { 723 display: flex; 724} 725 726.djs-popup-body { 727 flex-direction: column; 728 width: auto; 729} 730 731.djs-popup *::-webkit-scrollbar { 732 width: 6px; 733} 734 735.djs-popup *::-webkit-scrollbar-thumb { 736 border-radius: 3px; 737 background-color: rgba(0, 0, 0, 0.2); 738} 739 740.djs-popup *::-webkit-scrollbar-track { 741 box-shadow: none; 742 background: transparent; 743 margin: 0; 744 padding: 5px; 745} 746 747.djs-popup-no-results { 748 padding: 0 12px 12px 12px; 749 color: var(--popup-no-results-color); 750} 751 752.djs-popup-entry-docs { 753 flex: 0; 754 flex-direction: row; 755 align-items: center; 756 padding-left: 5px; 757 display: none; 758} 759 760.djs-popup-body .entry:hover .djs-popup-entry-docs { 761 display: flex; 762} 763 764.djs-popup-entry-docs svg { 765 vertical-align: middle; 766 margin: auto 2px auto 5px; 767} 768 769/** 770 * palette styles 771 */ 772.djs-palette { 773 background: var(--palette-background-color); 774 border: solid 1px var(--palette-border-color); 775 border-radius: 2px; 776} 777 778/** 779 * bendpoints 780 */ 781.djs-segment-dragger, 782.djs-bendpoint { 783 display: none; 784} 785 786.djs-segment-dragger .djs-visual { 787 display: none; 788 789 fill: var(--bendpoint-fill-color); 790 stroke: var(--bendpoint-stroke-color); 791 stroke-width: 1px; 792 stroke-opacity: 1; 793} 794 795.djs-segment-dragger:hover .djs-visual { 796 display: block; 797} 798 799.djs-bendpoint .djs-visual { 800 fill: var(--bendpoint-fill-color); 801 stroke: var(--bendpoint-stroke-color); 802 stroke-width: 1px; 803} 804 805.djs-segment-dragger:hover, 806.djs-bendpoints.hover .djs-segment-dragger, 807.djs-bendpoints.selected .djs-segment-dragger, 808.djs-bendpoint:hover, 809.djs-bendpoints.hover .djs-bendpoint, 810.djs-bendpoints.selected .djs-bendpoint { 811 display: block; 812} 813 814.djs-drag-active .djs-bendpoints * { 815 display: none; 816} 817 818.djs-bendpoints:not(.hover) .floating { 819 display: none; 820} 821 822.djs-segment-dragger:hover .djs-visual, 823.djs-segment-dragger.djs-dragging .djs-visual, 824.djs-bendpoint:hover .djs-visual, 825.djs-bendpoint.floating .djs-visual { 826 fill: var(--bendpoint-fill-color); 827 stroke: var(--bendpoint-stroke-color); 828 stroke-opacity: 1; 829} 830 831.djs-bendpoint.floating .djs-hit { 832 pointer-events: none; 833} 834 835.djs-segment-dragger .djs-hit, 836.djs-bendpoint .djs-hit { 837 fill: none; 838 pointer-events: all; 839} 840 841.djs-segment-dragger.horizontal .djs-hit { 842 cursor: ns-resize; 843} 844 845.djs-segment-dragger.vertical .djs-hit { 846 cursor: ew-resize; 847} 848 849.djs-segment-dragger.djs-dragging .djs-hit { 850 pointer-events: none; 851} 852 853.djs-updating, 854.djs-updating > * { 855 pointer-events: none !important; 856} 857 858.djs-updating .djs-context-pad, 859.djs-updating .djs-outline, 860.djs-updating .djs-bendpoint, 861.djs-multi-select .djs-bendpoint, 862.djs-multi-select .djs-segment-dragger, 863.connect-ok .djs-bendpoint, 864.connect-not-ok .djs-bendpoint, 865.drop-ok .djs-bendpoint, 866.drop-not-ok .djs-bendpoint { 867 display: none !important; 868} 869 870.djs-segment-dragger.djs-dragging, 871.djs-bendpoint.djs-dragging { 872 display: block; 873 opacity: 1.0; 874} 875 876 877/** 878 * tooltips 879 */ 880.djs-tooltip-error { 881 width: 160px; 882 padding: 6px; 883 884 background: var(--tooltip-error-background-color); 885 border: solid 1px var(--tooltip-error-border-color); 886 border-radius: 2px; 887 color: var(--tooltip-error-color); 888 font-size: 12px; 889 line-height: 16px; 890 891 opacity: 0.75; 892} 893 894.djs-tooltip-error:hover { 895 opacity: 1; 896} 897 898 899/** 900 * search pad 901 */ 902.djs-search-open .djs-context-pad { 903 display: none; 904} 905 906.djs-search-open .djs-connection.selected .djs-outline { 907 display: block; 908} 909 910.djs-search-container { 911 position: absolute; 912 top: 20px; 913 left: 0; 914 right: 0; 915 margin-left: auto; 916 margin-right: auto; 917 918 width: 25%; 919 min-width: 300px; 920 max-width: 400px; 921 z-index: 10; 922 923 font-family: var(--search-font-family); 924 font-size: var(--search-font-size); 925 border-radius: 2px; 926 box-shadow: 0px 2px 6px var(--search-shadow-color); 927} 928 929.djs-search-container:not(.open) { 930 display: none; 931} 932 933.djs-search-input { 934 position: relative; 935} 936 937.djs-search-input svg { 938 position: absolute; 939 left: 8px; 940 top: 7px; 941} 942 943.djs-search-input input { 944 font-size: var(--search-font-size); 945 width: 100%; 946 padding: 3px 6px 3px 28px; 947 border: 1px solid var(--search-input-border-color); 948 border-radius: 2px; 949 box-sizing: border-box; 950 line-height: 21px; 951} 952 953.djs-search-input input:focus { 954 background-color: var(--search-input-focus-background-color); 955 border: solid 1px var(--search-input-focus-border-color); 956 outline: none; 957} 958 959.djs-search-results { 960 position: relative; 961 overflow-y: auto; 962 max-height: 200px; 963 background: var(--search-container-background-color); 964} 965 966.djs-search-result { 967 padding: 6px 8px; 968} 969 970.djs-search-result-primary { 971 margin: 0 0 3px; 972 text-overflow: ellipsis; 973 overflow: hidden; 974 white-space: nowrap; 975} 976 977.djs-search-result-secondary { 978 font-family: monospace; 979 margin: 0; 980 text-overflow: ellipsis; 981 overflow: hidden; 982 white-space: nowrap; 983 color: var(--search-result-secondary-color); 984} 985 986.djs-search-result:hover { 987 background: var(--search-result-hover-background-color); 988} 989 990.djs-search-result-selected { 991 background: var(--search-result-hover-background-color); 992} 993 994.djs-search-result-selected:hover { 995 background: var(--search-result-hover-background-color); 996} 997 998.djs-search-open .djs-element .djs-outline { 999 fill: var(--search-preselected-background-color) !important; 1000} 1001 1002/** 1003 * hidden styles 1004 */ 1005.djs-element-hidden, 1006.djs-element-hidden .djs-hit, 1007.djs-element-hidden .djs-outline, 1008.djs-label-hidden .djs-label { 1009 display: none !important; 1010} 1011 1012.djs-element .djs-hit-stroke, 1013.djs-element .djs-hit-click-stroke, 1014.djs-element .djs-hit-all { 1015 cursor: move; 1016}