Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
automatic1111
GitHub Repository: automatic1111/stable-diffusion-webui
Path: blob/master/style.css
3048 views
1
/* temporary fix to load default gradio font in frontend instead of backend */
2
3
@import url('webui-assets/css/sourcesanspro.css');
4
5
6
/* temporary fix to hide gradio crop tool until it's fixed https://github.com/gradio-app/gradio/issues/3810 */
7
8
div.gradio-image button[aria-label="Edit"] {
9
display: none;
10
}
11
12
13
/* general gradio fixes */
14
15
:root, .dark{
16
--checkbox-label-gap: 0.25em 0.1em;
17
--section-header-text-size: 12pt;
18
--block-background-fill: transparent;
19
20
}
21
22
.block.padded:not(.gradio-accordion) {
23
padding: 0 !important;
24
}
25
26
div.gradio-container{
27
max-width: unset !important;
28
}
29
30
.hidden{
31
display: none !important;
32
}
33
34
.compact{
35
background: transparent !important;
36
padding: 0 !important;
37
}
38
39
div.form{
40
border-width: 0;
41
box-shadow: none;
42
background: transparent;
43
overflow: visible;
44
gap: 0.5em;
45
}
46
47
.block.gradio-dropdown,
48
.block.gradio-slider,
49
.block.gradio-checkbox,
50
.block.gradio-textbox,
51
.block.gradio-radio,
52
.block.gradio-checkboxgroup,
53
.block.gradio-number,
54
.block.gradio-colorpicker {
55
border-width: 0 !important;
56
box-shadow: none !important;
57
}
58
59
div.gradio-group, div.styler{
60
border-width: 0 !important;
61
background: none;
62
}
63
.gap.compact{
64
padding: 0;
65
gap: 0.2em 0;
66
}
67
68
div.compact{
69
gap: 1em;
70
}
71
72
.gradio-dropdown label span:not(.has-info),
73
.gradio-textbox label span:not(.has-info),
74
.gradio-number label span:not(.has-info)
75
{
76
margin-bottom: 0;
77
}
78
79
.gradio-dropdown ul.options{
80
z-index: 3000;
81
min-width: fit-content;
82
max-width: inherit;
83
white-space: nowrap;
84
}
85
86
@media (pointer:fine) {
87
.gradio-dropdown ul.options li.item {
88
padding: 0.05em 0;
89
}
90
}
91
92
.gradio-dropdown ul.options li.item.selected {
93
background-color: var(--neutral-100);
94
}
95
96
.dark .gradio-dropdown ul.options li.item.selected {
97
background-color: var(--neutral-900);
98
}
99
100
.gradio-dropdown div.wrap.wrap.wrap.wrap{
101
box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
102
}
103
104
.gradio-dropdown:not(.multiselect) .wrap-inner.wrap-inner.wrap-inner{
105
flex-wrap: unset;
106
}
107
108
.gradio-dropdown .single-select{
109
white-space: nowrap;
110
overflow: hidden;
111
}
112
113
.gradio-dropdown .token-remove.remove-all.remove-all{
114
display: none;
115
}
116
117
.gradio-dropdown.multiselect .token-remove.remove-all.remove-all{
118
display: flex;
119
}
120
121
.gradio-slider input[type="number"]{
122
width: 6em;
123
}
124
125
.block.gradio-checkbox {
126
margin: 0.75em 1.5em 0 0;
127
}
128
129
.gradio-html div.wrap{
130
height: 100%;
131
}
132
div.gradio-html.min{
133
min-height: 0;
134
}
135
136
.block.gradio-gallery{
137
background: var(--input-background-fill);
138
}
139
140
.gradio-container .prose a, .gradio-container .prose a:visited{
141
color: unset;
142
text-decoration: none;
143
}
144
145
a{
146
font-weight: bold;
147
cursor: pointer;
148
}
149
150
/* gradio 3.39 puts a lot of overflow: hidden all over the place for an unknown reason. */
151
div.gradio-container, .block.gradio-textbox, div.gradio-group, div.gradio-dropdown{
152
overflow: visible !important;
153
}
154
155
/* align-items isn't enough and elements may overflow in Safari. */
156
.unequal-height {
157
align-content: flex-start;
158
}
159
160
161
/* general styled components */
162
163
.gradio-button.tool{
164
max-width: 2.2em;
165
min-width: 2.2em !important;
166
height: 2.4em;
167
align-self: end;
168
line-height: 1em;
169
border-radius: 0.5em;
170
}
171
172
.gradio-button.secondary-down{
173
background: var(--button-secondary-background-fill);
174
color: var(--button-secondary-text-color);
175
}
176
.gradio-button.secondary-down, .gradio-button.secondary-down:hover{
177
box-shadow: 1px 1px 1px rgba(0,0,0,0.25) inset, 0px 0px 3px rgba(0,0,0,0.15) inset;
178
}
179
.gradio-button.secondary-down:hover{
180
background: var(--button-secondary-background-fill-hover);
181
color: var(--button-secondary-text-color-hover);
182
}
183
184
button.custom-button{
185
border-radius: var(--button-large-radius);
186
padding: var(--button-large-padding);
187
font-weight: var(--button-large-text-weight);
188
border: var(--button-border-width) solid var(--button-secondary-border-color);
189
background: var(--button-secondary-background-fill);
190
color: var(--button-secondary-text-color);
191
font-size: var(--button-large-text-size);
192
display: inline-flex;
193
justify-content: center;
194
align-items: center;
195
transition: var(--button-transition);
196
box-shadow: var(--button-shadow);
197
text-align: center;
198
}
199
200
div.block.gradio-accordion {
201
border: 1px solid var(--block-border-color) !important;
202
border-radius: 8px !important;
203
margin: 2px 0;
204
padding: 8px 8px;
205
}
206
207
input[type="checkbox"].input-accordion-checkbox{
208
vertical-align: sub;
209
margin-right: 0.5em;
210
}
211
212
213
/* txt2img/img2img specific */
214
215
.block.token-counter{
216
position: absolute;
217
display: inline-block;
218
right: 1em;
219
min-width: 0 !important;
220
width: auto;
221
z-index: 100;
222
top: -0.75em;
223
}
224
225
.block.token-counter-visible{
226
display: block !important;
227
}
228
229
.block.token-counter span{
230
background: var(--input-background-fill) !important;
231
box-shadow: 0 0 0.0 0.3em rgba(192,192,192,0.15), inset 0 0 0.6em rgba(192,192,192,0.075);
232
border: 2px solid rgba(192,192,192,0.4) !important;
233
border-radius: 0.4em;
234
}
235
236
.block.token-counter.error span{
237
box-shadow: 0 0 0.0 0.3em rgba(255,0,0,0.15), inset 0 0 0.6em rgba(255,0,0,0.075);
238
border: 2px solid rgba(255,0,0,0.4) !important;
239
}
240
241
.block.token-counter div{
242
display: inline;
243
}
244
245
.block.token-counter span{
246
padding: 0.1em 0.75em;
247
}
248
249
[id$=_subseed_show]{
250
min-width: auto !important;
251
flex-grow: 0 !important;
252
display: flex;
253
}
254
255
[id$=_subseed_show] label{
256
margin-bottom: 0.65em;
257
align-self: end;
258
}
259
260
[id$=_seed_extras] > div{
261
gap: 0.5em;
262
}
263
264
.html-log .comments{
265
padding-top: 0.5em;
266
}
267
268
.html-log .comments:empty{
269
padding-top: 0;
270
}
271
272
.html-log .performance {
273
font-size: 0.85em;
274
color: #444;
275
display: flex;
276
}
277
278
.html-log .performance p{
279
display: inline-block;
280
}
281
282
.html-log .performance p.time, .performance p.vram, .performance p.profile, .performance p.time abbr, .performance p.vram abbr {
283
margin-bottom: 0;
284
color: var(--block-title-text-color);
285
}
286
287
.html-log .performance p.time {
288
}
289
290
.html-log .performance p.vram {
291
margin-left: auto;
292
}
293
294
.html-log .performance p.profile {
295
margin-left: 0.5em;
296
}
297
298
.html-log .performance .measurement{
299
color: var(--body-text-color);
300
font-weight: bold;
301
}
302
303
#txt2img_generate, #img2img_generate {
304
min-height: 4.5em;
305
}
306
307
#txt2img_generate, #img2img_generate {
308
min-height: 4.5em;
309
}
310
.generate-box-compact #txt2img_generate, .generate-box-compact #img2img_generate {
311
min-height: 3em;
312
}
313
314
@media screen and (min-width: 2500px) {
315
#txt2img_gallery, #img2img_gallery {
316
min-height: 768px;
317
}
318
}
319
320
.gradio-gallery .thumbnails img {
321
object-fit: scale-down !important;
322
}
323
#txt2img_actions_column, #img2img_actions_column {
324
gap: 0.5em;
325
}
326
#txt2img_tools, #img2img_tools{
327
gap: 0.4em;
328
}
329
330
.interrogate-col{
331
min-width: 0 !important;
332
max-width: fit-content;
333
gap: 0.5em;
334
}
335
.interrogate-col > button{
336
flex: 1;
337
}
338
339
.generate-box{
340
position: relative;
341
}
342
.gradio-button.generate-box-skip, .gradio-button.generate-box-interrupt, .gradio-button.generate-box-interrupting{
343
position: absolute;
344
width: 50%;
345
height: 100%;
346
display: none;
347
background: #b4c0cc;
348
}
349
.gradio-button.generate-box-skip:hover, .gradio-button.generate-box-interrupt:hover, .gradio-button.generate-box-interrupting:hover{
350
background: #c2cfdb;
351
}
352
.gradio-button.generate-box-interrupt, .gradio-button.generate-box-interrupting{
353
left: 0;
354
border-radius: 0.5rem 0 0 0.5rem;
355
}
356
.gradio-button.generate-box-skip{
357
right: 0;
358
border-radius: 0 0.5rem 0.5rem 0;
359
}
360
361
#img2img_scale_resolution_preview.block{
362
display: flex;
363
align-items: end;
364
}
365
366
#txtimg_hr_finalres .resolution, #img2img_scale_resolution_preview .resolution{
367
font-weight: bold;
368
}
369
370
#txtimg_hr_finalres div.pending, #img2img_scale_resolution_preview div.pending {
371
opacity: 1;
372
transition: opacity 0s;
373
}
374
375
.inactive{
376
opacity: 0.5;
377
}
378
379
[id$=_column_batch]{
380
min-width: min(13.5em, 100%) !important;
381
}
382
383
div.dimensions-tools{
384
min-width: 1.6em !important;
385
max-width: fit-content;
386
flex-direction: column;
387
place-content: center;
388
}
389
390
div#extras_scale_to_tab div.form{
391
flex-direction: row;
392
}
393
394
#img2img_sketch, #img2maskimg, #inpaint_sketch {
395
overflow: overlay !important;
396
resize: auto;
397
background: var(--panel-background-fill);
398
z-index: 5;
399
}
400
401
.image-buttons > .form{
402
justify-content: center;
403
}
404
405
.infotext {
406
overflow-wrap: break-word;
407
}
408
409
#img2img_column_batch{
410
align-self: end;
411
margin-bottom: 0.9em;
412
}
413
414
#img2img_unused_scale_by_slider{
415
visibility: hidden;
416
width: 0.5em;
417
max-width: 0.5em;
418
min-width: 0.5em;
419
}
420
421
div.toprow-compact-stylerow{
422
margin: 0.5em 0;
423
}
424
425
div.toprow-compact-tools{
426
min-width: fit-content !important;
427
max-width: fit-content;
428
}
429
430
/* settings */
431
#quicksettings {
432
align-items: end;
433
}
434
435
#quicksettings > div, #quicksettings > fieldset{
436
max-width: 36em;
437
width: fit-content;
438
flex: 0 1 fit-content;
439
padding: 0;
440
border: none;
441
box-shadow: none;
442
background: none;
443
}
444
#quicksettings > div.gradio-dropdown{
445
min-width: 24em !important;
446
}
447
448
#settings{
449
display: block;
450
}
451
452
#settings > div{
453
border: none;
454
margin-left: 10em;
455
padding: 0 var(--spacing-xl);
456
}
457
458
#settings > div.tab-nav{
459
float: left;
460
display: block;
461
margin-left: 0;
462
width: 10em;
463
}
464
465
#settings > div.tab-nav button{
466
display: block;
467
border: none;
468
text-align: left;
469
white-space: initial;
470
padding: 4px;
471
}
472
473
#settings > div.tab-nav .settings-category{
474
display: block;
475
margin: 1em 0 0.25em 0;
476
font-weight: bold;
477
text-decoration: underline;
478
cursor: default;
479
user-select: none;
480
}
481
482
#settings_result{
483
height: 1.4em;
484
margin: 0 1.2em;
485
}
486
487
table.popup-table{
488
background: var(--body-background-fill);
489
color: var(--body-text-color);
490
border-collapse: collapse;
491
margin: 1em;
492
border: 4px solid var(--body-background-fill);
493
}
494
495
table.popup-table td{
496
padding: 0.4em;
497
border: 1px solid rgba(128, 128, 128, 0.5);
498
max-width: 36em;
499
}
500
501
table.popup-table .muted{
502
color: #aaa;
503
}
504
505
table.popup-table .link{
506
text-decoration: underline;
507
cursor: pointer;
508
font-weight: bold;
509
}
510
511
.ui-defaults-none{
512
color: #aaa !important;
513
}
514
515
#settings span{
516
color: var(--body-text-color);
517
}
518
519
#settings .gradio-textbox, #settings .gradio-slider, #settings .gradio-number, #settings .gradio-dropdown, #settings .gradio-checkboxgroup, #settings .gradio-radio{
520
margin-top: 0.75em;
521
}
522
523
#settings span .settings-comment {
524
display: inline
525
}
526
527
.settings-comment a{
528
text-decoration: underline;
529
}
530
531
.settings-comment .info{
532
opacity: 0.75;
533
}
534
535
.settings-comment .info ol{
536
margin: 0.4em 0 0.8em 1em;
537
}
538
539
#sysinfo_download a.sysinfo_big_link{
540
font-size: 24pt;
541
}
542
543
#sysinfo_download a{
544
text-decoration: underline;
545
}
546
547
#sysinfo_validity{
548
font-size: 18pt;
549
}
550
551
#settings .settings-info{
552
max-width: 48em;
553
border: 1px dotted #777;
554
margin: 0;
555
padding: 1em;
556
}
557
558
559
/* live preview */
560
.progressDiv{
561
position: absolute;
562
height: 20px;
563
background: #b4c0cc;
564
border-radius: 3px !important;
565
top: -14px;
566
left: 0px;
567
width: 100%;
568
}
569
570
.progress-container{
571
position: relative;
572
}
573
574
[id$=_results].mobile{
575
margin-top: 28px;
576
}
577
578
.dark .progressDiv{
579
background: #424c5b;
580
}
581
582
.progressDiv .progress{
583
width: 0%;
584
height: 20px;
585
background: #0060df;
586
color: white;
587
font-weight: bold;
588
line-height: 20px;
589
padding: 0 8px 0 0;
590
text-align: right;
591
border-radius: 3px;
592
overflow: visible;
593
white-space: nowrap;
594
padding: 0 0.5em;
595
}
596
597
.livePreview{
598
position: absolute;
599
z-index: 300;
600
background: var(--background-fill-primary);
601
width: 100%;
602
height: 100%;
603
}
604
605
.livePreview img{
606
position: absolute;
607
object-fit: contain;
608
width: 100%;
609
height: calc(100% - 60px); /* to match gradio's height */
610
}
611
612
/* fullscreen popup (ie in Lora's (i) button) */
613
614
.popup-metadata{
615
color: black;
616
background: white;
617
display: inline-block;
618
padding: 1em;
619
white-space: pre-wrap;
620
}
621
622
.global-popup{
623
display: flex;
624
position: fixed;
625
z-index: 1001;
626
left: 0;
627
top: 0;
628
width: 100%;
629
height: 100%;
630
overflow: auto;
631
}
632
633
.global-popup *{
634
box-sizing: border-box;
635
}
636
637
.global-popup-close:before {
638
content: "×";
639
position: fixed;
640
right: 0.25em;
641
top: 0;
642
cursor: pointer;
643
color: white;
644
font-size: 32pt;
645
}
646
647
.global-popup-close{
648
position: fixed;
649
left: 0;
650
top: 0;
651
width: 100%;
652
height: 100%;
653
background-color: rgba(20, 20, 20, 0.95);
654
}
655
656
.global-popup-inner{
657
display: inline-block;
658
margin: auto;
659
padding: 2em;
660
z-index: 1001;
661
max-height: 90%;
662
max-width: 90%;
663
}
664
665
/* fullpage image viewer */
666
667
#lightboxModal{
668
display: none;
669
position: fixed;
670
z-index: 1001;
671
left: 0;
672
top: 0;
673
width: 100%;
674
height: 100%;
675
overflow: auto;
676
background-color: rgba(20, 20, 20, 0.95);
677
user-select: none;
678
-webkit-user-select: none;
679
flex-direction: column;
680
}
681
682
.modalControls {
683
display: flex;
684
position: absolute;
685
right: 0px;
686
left: 0px;
687
gap: 1em;
688
padding: 1em;
689
background-color:rgba(0,0,0,0);
690
z-index: 1;
691
transition: 0.2s ease background-color;
692
}
693
.modalControls:hover {
694
background-color:rgba(0,0,0, var(--sd-webui-modal-lightbox-toolbar-opacity));
695
}
696
.modalClose {
697
margin-left: auto;
698
}
699
.modalControls span{
700
color: white;
701
text-shadow: 0px 0px 0.25em black;
702
font-size: 35px;
703
font-weight: bold;
704
cursor: pointer;
705
width: 1em;
706
}
707
708
.modalControls span:hover, .modalControls span:focus{
709
color: #999;
710
text-decoration: none;
711
}
712
713
#lightboxModal > img {
714
display: block;
715
margin: auto;
716
width: auto;
717
}
718
719
#lightboxModal > img.modalImageFullscreen{
720
object-fit: contain;
721
height: 100%;
722
width: 100%;
723
min-height: 0;
724
}
725
726
.modalPrev,
727
.modalNext {
728
cursor: pointer;
729
position: absolute;
730
top: 50%;
731
width: auto;
732
padding: 16px;
733
margin-top: -50px;
734
color: white;
735
font-weight: bold;
736
font-size: 20px;
737
transition: 0.6s ease;
738
border-radius: 0 3px 3px 0;
739
user-select: none;
740
-webkit-user-select: none;
741
}
742
743
.modalNext {
744
right: 0;
745
border-radius: 3px 0 0 3px;
746
}
747
748
.modalPrev:hover,
749
.modalNext:hover {
750
background-color: rgba(0, 0, 0, 0.8);
751
}
752
753
#imageARPreview {
754
position: absolute;
755
top: 0px;
756
left: 0px;
757
border: 2px solid red;
758
background: rgba(255, 0, 0, 0.3);
759
z-index: 900;
760
pointer-events: none;
761
display: none;
762
}
763
764
@media (pointer: fine) {
765
.modalPrev:hover,
766
.modalNext:hover,
767
.modalControls:hover ~ .modalPrev,
768
.modalControls:hover ~ .modalNext,
769
.modalControls:hover .cursor {
770
opacity: 1;
771
}
772
773
.modalPrev,
774
.modalNext,
775
.modalControls .cursor {
776
opacity: var(--sd-webui-modal-lightbox-icon-opacity);
777
}
778
}
779
780
/* context menu (ie for the generate button) */
781
782
#context-menu{
783
z-index:9999;
784
position:absolute;
785
display:block;
786
padding:0px 0;
787
border:2px solid var(--primary-800);
788
border-radius:8px;
789
box-shadow:1px 1px 2px var(--primary-500);
790
width: 200px;
791
}
792
793
.context-menu-items{
794
list-style: none;
795
margin: 0;
796
padding: 0;
797
}
798
799
.context-menu-items a{
800
display:block;
801
padding:5px;
802
cursor:pointer;
803
}
804
805
.context-menu-items a:hover{
806
background: var(--primary-700);
807
}
808
809
810
/* extensions */
811
812
#tab_extensions table{
813
border-collapse: collapse;
814
overflow-x: auto;
815
display: block;
816
}
817
818
#tab_extensions table td, #tab_extensions table th{
819
border: 1px solid #ccc;
820
padding: 0.25em 0.5em;
821
}
822
823
#tab_extensions table input[type="checkbox"]{
824
margin-right: 0.5em;
825
appearance: checkbox;
826
}
827
828
#tab_extensions button{
829
max-width: 16em;
830
}
831
832
#tab_extensions input[disabled="disabled"]{
833
opacity: 0.5;
834
}
835
836
.extension-tag{
837
font-weight: bold;
838
font-size: 95%;
839
}
840
841
#available_extensions .info{
842
margin: 0;
843
}
844
845
#available_extensions .info{
846
margin: 0.5em 0;
847
display: flex;
848
margin-top: auto;
849
opacity: 0.80;
850
font-size: 90%;
851
}
852
853
#available_extensions .date_added{
854
margin-right: auto;
855
display: inline-block;
856
}
857
858
#available_extensions .star_count{
859
margin-left: auto;
860
display: inline-block;
861
}
862
863
.compact-checkbox-group div label {
864
padding: 0.1em 0.3em !important;
865
}
866
867
/* extensions tab table row hover highlight */
868
869
#extensions tr:hover td,
870
#config_state_extensions tr:hover td,
871
#available_extensions tr:hover td {
872
background: rgba(0, 0, 0, 0.15);
873
}
874
875
.dark #extensions tr:hover td ,
876
.dark #config_state_extensions tr:hover td ,
877
.dark #available_extensions tr:hover td {
878
background: rgba(255, 255, 255, 0.15);
879
}
880
881
/* replace original footer with ours */
882
883
footer {
884
display: none !important;
885
}
886
887
#footer{
888
text-align: center;
889
}
890
891
#footer div{
892
display: inline-block;
893
}
894
895
#footer .versions{
896
font-size: 85%;
897
opacity: 0.85;
898
}
899
900
/* extra networks UI */
901
902
.extra-page > div.gap{
903
gap: 0;
904
}
905
906
.extra-page-prompts{
907
margin-bottom: 0;
908
}
909
910
.extra-page-prompts.extra-page-prompts-active{
911
margin-bottom: 1em;
912
}
913
914
.extra-networks > div.tab-nav{
915
min-height: 2.7rem;
916
}
917
918
.extra-networks-controls-div{
919
align-self: center;
920
margin-left: auto;
921
}
922
923
.extra-networks > div > [id *= '_extra_']{
924
margin: 0.3em;
925
}
926
927
.extra-networks .tab-nav .search,
928
.extra-networks .tab-nav .sort
929
{
930
margin: 0.3em;
931
align-self: center;
932
width: auto;
933
}
934
935
.extra-networks .tab-nav .search {
936
width: 16em;
937
max-width: 16em;
938
}
939
940
.extra-networks .tab-nav .sort {
941
width: 12em;
942
max-width: 12em;
943
}
944
945
#txt2img_extra_view, #img2img_extra_view {
946
width: auto;
947
}
948
949
.extra-network-pane .nocards{
950
margin: 1.25em 0.5em 0.5em 0.5em;
951
}
952
953
.extra-network-pane .nocards h1{
954
font-size: 1.5em;
955
margin-bottom: 1em;
956
}
957
958
.extra-network-pane .nocards li{
959
margin-left: 0.5em;
960
}
961
962
.extra-network-pane .card .button-row{
963
display: inline-flex;
964
visibility: hidden;
965
color: white;
966
}
967
968
.extra-network-pane .card .button-row {
969
position: absolute;
970
right: 0;
971
z-index: 1;
972
}
973
974
.extra-network-pane .card:hover .button-row{
975
visibility: visible;
976
}
977
978
.extra-network-pane .card-button{
979
color: white;
980
}
981
982
.extra-network-pane .copy-path-button::before {
983
content: "⎘";
984
}
985
986
.extra-network-pane .metadata-button::before{
987
content: "🛈";
988
}
989
990
.extra-network-pane .edit-button::before{
991
content: "🛠";
992
}
993
994
.extra-network-pane .card-button {
995
width: 1.5em;
996
text-shadow: 2px 2px 3px black;
997
color: white;
998
padding: 0.25em 0.1em;
999
}
1000
1001
.extra-network-pane .card-button:hover{
1002
color: red;
1003
}
1004
1005
.extra-network-pane .card .card-button {
1006
font-size: 2rem;
1007
}
1008
1009
.extra-network-pane .card-minimal .card-button {
1010
font-size: 1rem;
1011
}
1012
1013
.standalone-card-preview.card .preview{
1014
position: absolute;
1015
object-fit: cover;
1016
width: 100%;
1017
height:100%;
1018
}
1019
1020
.extra-network-pane .card, .standalone-card-preview.card{
1021
display: inline-block;
1022
margin: 0.5rem;
1023
width: 16rem;
1024
height: 24rem;
1025
box-shadow: 0 0 5px rgba(128, 128, 128, 0.5);
1026
border-radius: 0.2rem;
1027
position: relative;
1028
1029
background-size: auto 100%;
1030
background-position: center;
1031
overflow: hidden;
1032
cursor: pointer;
1033
1034
background-image: url('./file=html/card-no-preview.png')
1035
}
1036
1037
.extra-network-pane .card:hover{
1038
box-shadow: 0 0 2px 0.3em rgba(0, 128, 255, 0.35);
1039
}
1040
1041
.extra-network-pane .card .actions .additional{
1042
display: none;
1043
}
1044
1045
.extra-network-pane .card .actions{
1046
position: absolute;
1047
bottom: 0;
1048
left: 0;
1049
right: 0;
1050
padding: 0.5em;
1051
background: rgba(0,0,0,0.5);
1052
box-shadow: 0 0 0.25em 0.25em rgba(0,0,0,0.5);
1053
text-shadow: 0 0 0.2em black;
1054
}
1055
1056
.extra-network-pane .card .actions *{
1057
color: white;
1058
}
1059
1060
.extra-network-pane .card .actions .name{
1061
font-size: 1.7em;
1062
font-weight: bold;
1063
line-break: anywhere;
1064
}
1065
1066
.extra-network-pane .card .actions .description {
1067
display: block;
1068
max-height: 3em;
1069
white-space: pre-wrap;
1070
line-height: 1.1;
1071
}
1072
1073
.extra-network-pane .card .actions .description:hover {
1074
max-height: none;
1075
}
1076
1077
.extra-network-pane .card .actions:hover .additional{
1078
display: block;
1079
}
1080
1081
.extra-network-pane .card ul{
1082
margin: 0.25em 0 0.75em 0.25em;
1083
cursor: unset;
1084
}
1085
1086
.extra-network-pane .card ul a{
1087
cursor: pointer;
1088
}
1089
1090
.extra-network-pane .card ul a:hover{
1091
color: red;
1092
}
1093
1094
.extra-network-pane .card .preview{
1095
position: absolute;
1096
object-fit: cover;
1097
width: 100%;
1098
height:100%;
1099
}
1100
1101
div.block.gradio-box.edit-user-metadata {
1102
width: 56em;
1103
background: var(--body-background-fill);
1104
padding: 2em !important;
1105
}
1106
1107
.edit-user-metadata .extra-network-name{
1108
font-size: 18pt;
1109
color: var(--body-text-color);
1110
}
1111
1112
.edit-user-metadata .file-metadata{
1113
color: var(--body-text-color);
1114
}
1115
1116
.edit-user-metadata .file-metadata th{
1117
text-align: left;
1118
}
1119
1120
.edit-user-metadata .file-metadata th, .edit-user-metadata .file-metadata td{
1121
padding: 0.3em 1em;
1122
overflow-wrap: anywhere;
1123
word-break: break-word;
1124
}
1125
1126
.edit-user-metadata .wrap.translucent{
1127
background: var(--body-background-fill);
1128
}
1129
.edit-user-metadata .gradio-highlightedtext span{
1130
word-break: break-word;
1131
}
1132
1133
.edit-user-metadata-buttons{
1134
margin-top: 1.5em;
1135
}
1136
1137
div.block.gradio-box.popup-dialog, .popup-dialog {
1138
width: 56em;
1139
background: var(--body-background-fill);
1140
padding: 2em !important;
1141
}
1142
1143
div.block.gradio-box.popup-dialog > div:last-child, .popup-dialog > div:last-child{
1144
margin-top: 1em;
1145
}
1146
1147
div.block.input-accordion{
1148
1149
}
1150
1151
.input-accordion-extra{
1152
flex: 0 0 auto !important;
1153
margin: 0 0.5em 0 auto;
1154
}
1155
1156
div.accordions > div.input-accordion{
1157
min-width: fit-content !important;
1158
}
1159
1160
div.accordions > div.gradio-accordion .label-wrap span{
1161
white-space: nowrap;
1162
margin-right: 0.25em;
1163
}
1164
1165
div.accordions{
1166
gap: 0.5em;
1167
}
1168
1169
div.accordions > div.input-accordion.input-accordion-open{
1170
flex: 1 auto;
1171
flex-flow: column;
1172
}
1173
1174
1175
/* sticky right hand columns */
1176
1177
#img2img_results, #txt2img_results, #extras_results {
1178
position: sticky;
1179
top: 0.5em;
1180
}
1181
1182
body.resizing {
1183
cursor: col-resize !important;
1184
}
1185
1186
body.resizing * {
1187
pointer-events: none !important;
1188
}
1189
1190
body.resizing .resize-handle {
1191
pointer-events: initial !important;
1192
}
1193
1194
.resize-handle {
1195
position: relative;
1196
cursor: col-resize;
1197
grid-column: 2 / 3;
1198
min-width: 16px !important;
1199
max-width: 16px !important;
1200
height: 100%;
1201
}
1202
1203
.resize-handle::after {
1204
content: '';
1205
position: absolute;
1206
top: 0;
1207
bottom: 0;
1208
left: 7.5px;
1209
border-left: 1px dashed var(--border-color-primary);
1210
}
1211
1212
/* ========================= */
1213
.extra-network-pane {
1214
display: flex;
1215
height: calc(100vh - 24rem);
1216
resize: vertical;
1217
min-height: 52rem;
1218
flex-direction: column;
1219
overflow: hidden;
1220
}
1221
1222
.extra-network-pane .extra-network-pane-content-dirs {
1223
display: flex;
1224
flex: 1;
1225
flex-direction: column;
1226
overflow: hidden;
1227
}
1228
1229
.extra-network-pane .extra-network-pane-content-tree {
1230
display: flex;
1231
flex: 1;
1232
overflow: hidden;
1233
}
1234
1235
.extra-network-dirs-hidden .extra-network-dirs{ display: none; }
1236
.extra-network-dirs-hidden .extra-network-tree{ display: none; }
1237
.extra-network-dirs-hidden .resize-handle { display: none; }
1238
.extra-network-dirs-hidden .resize-handle-row { display: flex !important; }
1239
1240
.extra-network-pane .extra-network-tree {
1241
flex: 1;
1242
font-size: 1rem;
1243
border: 1px solid var(--block-border-color);
1244
overflow: clip auto !important;
1245
}
1246
1247
.extra-network-pane .extra-network-cards {
1248
flex: 3;
1249
overflow: clip auto !important;
1250
border: 1px solid var(--block-border-color);
1251
}
1252
1253
.extra-network-pane .extra-network-tree .tree-list {
1254
flex: 1;
1255
display: flex;
1256
flex-direction: column;
1257
padding: 0;
1258
width: 100%;
1259
overflow: hidden;
1260
}
1261
1262
1263
.extra-network-pane .extra-network-cards::-webkit-scrollbar,
1264
.extra-network-pane .extra-network-tree::-webkit-scrollbar {
1265
background-color: transparent;
1266
width: 16px;
1267
}
1268
1269
.extra-network-pane .extra-network-cards::-webkit-scrollbar-track,
1270
.extra-network-pane .extra-network-tree::-webkit-scrollbar-track {
1271
background-color: transparent;
1272
background-clip: content-box;
1273
}
1274
1275
.extra-network-pane .extra-network-cards::-webkit-scrollbar-thumb,
1276
.extra-network-pane .extra-network-tree::-webkit-scrollbar-thumb {
1277
background-color: var(--border-color-primary);
1278
border-radius: 16px;
1279
border: 4px solid var(--background-fill-primary);
1280
}
1281
1282
.extra-network-pane .extra-network-cards::-webkit-scrollbar-button,
1283
.extra-network-pane .extra-network-tree::-webkit-scrollbar-button {
1284
display: none;
1285
}
1286
1287
.extra-network-control {
1288
position: relative;
1289
display: flex;
1290
width: 100%;
1291
padding: 0 !important;
1292
margin-top: 0 !important;
1293
margin-bottom: 0 !important;
1294
font-size: 1rem;
1295
text-align: left;
1296
user-select: none;
1297
background-color: transparent;
1298
border: none;
1299
transition: background 33.333ms linear;
1300
grid-template-rows: min-content;
1301
grid-template-columns: minmax(0, auto) repeat(4, min-content);
1302
grid-gap: 0.1rem;
1303
align-items: start;
1304
}
1305
1306
.extra-network-control small{
1307
color: var(--input-placeholder-color);
1308
line-height: 2.2rem;
1309
margin: 0 0.5rem 0 0.75rem;
1310
}
1311
1312
.extra-network-tree .tree-list--tree {}
1313
1314
/* Remove auto indentation from tree. Will be overridden later. */
1315
.extra-network-tree .tree-list--subgroup {
1316
margin: 0 !important;
1317
padding: 0 !important;
1318
box-shadow: 0.5rem 0 0 var(--body-background-fill) inset,
1319
0.7rem 0 0 var(--neutral-800) inset;
1320
}
1321
1322
/* Set indentation for each depth of tree. */
1323
.extra-network-tree .tree-list--subgroup > .tree-list-item {
1324
margin-left: 0.4rem !important;
1325
padding-left: 0.4rem !important;
1326
}
1327
1328
/* Styles for tree <li> elements. */
1329
.extra-network-tree .tree-list-item {
1330
list-style: none;
1331
position: relative;
1332
background-color: transparent;
1333
}
1334
1335
/* Directory <ul> visibility based on data-expanded attribute. */
1336
.extra-network-tree .tree-list-content+.tree-list--subgroup {
1337
height: 0;
1338
visibility: hidden;
1339
opacity: 0;
1340
}
1341
1342
.extra-network-tree .tree-list-content[data-expanded]+.tree-list--subgroup {
1343
height: auto;
1344
visibility: visible;
1345
opacity: 1;
1346
}
1347
1348
/* File <li> */
1349
.extra-network-tree .tree-list-item--subitem {
1350
padding-top: 0 !important;
1351
padding-bottom: 0 !important;
1352
margin-top: 0 !important;
1353
margin-bottom: 0 !important;
1354
}
1355
1356
/* <li> containing <ul> */
1357
.extra-network-tree .tree-list-item--has-subitem {}
1358
1359
/* BUTTON ELEMENTS */
1360
/* <button> */
1361
.extra-network-tree .tree-list-content {
1362
position: relative;
1363
display: grid;
1364
width: 100%;
1365
padding: 0 !important;
1366
margin-top: 0 !important;
1367
margin-bottom: 0 !important;
1368
font-size: 1rem;
1369
text-align: left;
1370
user-select: none;
1371
background-color: transparent;
1372
border: none;
1373
transition: background 33.333ms linear;
1374
grid-template-rows: min-content;
1375
grid-template-areas: "leading-action leading-visual label trailing-visual trailing-action";
1376
grid-template-columns: min-content min-content minmax(0, auto) min-content min-content;
1377
grid-gap: 0.1rem;
1378
align-items: start;
1379
flex-grow: 1;
1380
flex-basis: 100%;
1381
}
1382
/* Buttons for directories. */
1383
.extra-network-tree .tree-list-content-dir {}
1384
1385
/* Buttons for files. */
1386
.extra-network-tree .tree-list-item--has-subitem .tree-list--subgroup > li:first-child {
1387
padding-top: 0.5rem !important;
1388
}
1389
1390
.dark .extra-network-tree div.tree-list-content:hover {
1391
-webkit-transition: all 0.05s ease-in-out;
1392
transition: all 0.05s ease-in-out;
1393
background-color: var(--neutral-800);
1394
}
1395
1396
.dark .extra-network-tree div.tree-list-content[data-selected] {
1397
background-color: var(--neutral-700);
1398
}
1399
1400
.extra-network-tree div.tree-list-content[data-selected] {
1401
background-color: var(--neutral-300);
1402
}
1403
1404
.extra-network-tree div.tree-list-content:hover {
1405
-webkit-transition: all 0.05s ease-in-out;
1406
transition: all 0.05s ease-in-out;
1407
background-color: var(--neutral-200);
1408
}
1409
1410
/* ==== CHEVRON ICON ACTIONS ==== */
1411
/* Define the animation for the arrow when it is clicked. */
1412
.extra-network-tree .tree-list-content-dir .tree-list-item-action-chevron {
1413
-ms-transform: rotate(135deg);
1414
-webkit-transform: rotate(135deg);
1415
transform: rotate(135deg);
1416
transition: transform 0.2s;
1417
}
1418
1419
.extra-network-tree .tree-list-content-dir[data-expanded] .tree-list-item-action-chevron {
1420
-ms-transform: rotate(225deg);
1421
-webkit-transform: rotate(225deg);
1422
transform: rotate(225deg);
1423
transition: transform 0.2s;
1424
}
1425
1426
.tree-list-item-action-chevron {
1427
display: inline-flex;
1428
/* Uses box shadow to generate a pseudo chevron `>` icon. */
1429
padding: 0.3rem;
1430
box-shadow: 0.1rem 0.1rem 0 0 var(--neutral-200) inset;
1431
transform: rotate(135deg);
1432
}
1433
1434
/* ==== SEARCH INPUT ACTIONS ==== */
1435
/* Add icon to left side of <input> */
1436
.extra-network-control .extra-network-control--search::before {
1437
content: "🔎︎";
1438
position: absolute;
1439
margin: 0.5rem;
1440
font-size: 1rem;
1441
color: var(--input-placeholder-color);
1442
}
1443
1444
.extra-network-control .extra-network-control--search {
1445
display: inline-flex;
1446
position: relative;
1447
}
1448
1449
.extra-network-control .extra-network-control--search .extra-network-control--search-text {
1450
border: 1px solid var(--button-secondary-border-color);
1451
border-radius: 0.5rem;
1452
color: var(--button-secondary-text-color);
1453
background-color: transparent;
1454
width: 100%;
1455
padding-left: 2rem;
1456
line-height: 1rem;
1457
}
1458
1459
1460
.extra-network-control .extra-network-control--search .extra-network-control--search-text::placeholder {
1461
color: var(--input-placeholder-color);
1462
}
1463
1464
1465
/* <input> clear button (x on right side) styling */
1466
.extra-network-control .extra-network-control--search .extra-network-control--search-text::-webkit-search-cancel-button {
1467
-webkit-appearance: none;
1468
appearance: none;
1469
cursor: pointer;
1470
height: 1rem;
1471
width: 1rem;
1472
mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>');
1473
mask-repeat: no-repeat;
1474
mask-position: center center;
1475
mask-size: 100%;
1476
background-color: var(--input-placeholder-color);
1477
}
1478
1479
/* ==== SORT ICON ACTIONS ==== */
1480
.extra-network-control .extra-network-control--sort {
1481
padding: 0.25rem;
1482
display: inline-flex;
1483
cursor: pointer;
1484
justify-self: center;
1485
align-self: center;
1486
}
1487
1488
.extra-network-control .extra-network-control--sort .extra-network-control--sort-icon {
1489
height: 1.5rem;
1490
width: 1.5rem;
1491
mask-repeat: no-repeat;
1492
mask-position: center center;
1493
mask-size: 100%;
1494
background-color: var(--input-placeholder-color);
1495
}
1496
1497
.extra-network-control .extra-network-control--sort[data-sortkey="default"] .extra-network-control--sort-icon {
1498
mask-image: url('data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"><path fill-rule="evenodd" clip-rule="evenodd" d="M1 5C1 3.34315 2.34315 2 4 2H8.43845C9.81505 2 11.015 2.93689 11.3489 4.27239L11.7808 6H13.5H20C21.6569 6 23 7.34315 23 9V11C23 11.5523 22.5523 12 22 12C21.4477 12 21 11.5523 21 11V9C21 8.44772 20.5523 8 20 8H13.5H11.7808H4C3.44772 8 3 8.44772 3 9V10V19C3 19.5523 3.44772 20 4 20H9C9.55228 20 10 20.4477 10 21C10 21.5523 9.55228 22 9 22H4C2.34315 22 1 20.6569 1 19V10V9V5ZM3 6.17071C3.31278 6.06015 3.64936 6 4 6H9.71922L9.40859 4.75746C9.2973 4.3123 8.89732 4 8.43845 4H4C3.44772 4 3 4.44772 3 5V6.17071ZM20.1716 18.7574C20.6951 17.967 21 17.0191 21 16C21 13.2386 18.7614 11 16 11C13.2386 11 11 13.2386 11 16C11 18.7614 13.2386 21 16 21C17.0191 21 17.967 20.6951 18.7574 20.1716L21.2929 22.7071C21.6834 23.0976 22.3166 23.0976 22.7071 22.7071C23.0976 22.3166 23.0976 21.6834 22.7071 21.2929L20.1716 18.7574ZM13 16C13 14.3431 14.3431 13 16 13C17.6569 13 19 14.3431 19 16C19 17.6569 17.6569 19 16 19C14.3431 19 13 17.6569 13 16Z" fill="%23000000"></path></g></svg>');
1499
}
1500
1501
.extra-network-control .extra-network-control--sort[data-sortkey="name"] .extra-network-control--sort-icon {
1502
mask-image: url('data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"><path fill-rule="evenodd" clip-rule="evenodd" d="M17.1841 6.69223C17.063 6.42309 16.7953 6.25 16.5002 6.25C16.2051 6.25 15.9374 6.42309 15.8162 6.69223L11.3162 16.6922C11.1463 17.07 11.3147 17.514 11.6924 17.6839C12.0701 17.8539 12.5141 17.6855 12.6841 17.3078L14.1215 14.1136H18.8789L20.3162 17.3078C20.4862 17.6855 20.9302 17.8539 21.308 17.6839C21.6857 17.514 21.8541 17.07 21.6841 16.6922L17.1841 6.69223ZM16.5002 8.82764L14.7965 12.6136H18.2039L16.5002 8.82764Z" fill="%231C274C"></path><path opacity="0.5" fill-rule="evenodd" clip-rule="evenodd" d="M2.25 7C2.25 6.58579 2.58579 6.25 3 6.25H13C13.4142 6.25 13.75 6.58579 13.75 7C13.75 7.41421 13.4142 7.75 13 7.75H3C2.58579 7.75 2.25 7.41421 2.25 7Z" fill="%231C274C"></path><path opacity="0.5" d="M2.25 12C2.25 11.5858 2.58579 11.25 3 11.25H10C10.4142 11.25 10.75 11.5858 10.75 12C10.75 12.4142 10.4142 12.75 10 12.75H3C2.58579 12.75 2.25 12.4142 2.25 12Z" fill="%231C274C"></path><path opacity="0.5" d="M2.25 17C2.25 16.5858 2.58579 16.25 3 16.25H8C8.41421 16.25 8.75 16.5858 8.75 17C8.75 17.4142 8.41421 17.75 8 17.75H3C2.58579 17.75 2.25 17.4142 2.25 17Z" fill="%231C274C"></path></g></svg>');
1503
}
1504
1505
.extra-network-control .extra-network-control--sort[data-sortkey="date_created"] .extra-network-control--sort-icon {
1506
mask-image: url('data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"><path d="M17 11C14.2386 11 12 13.2386 12 16C12 18.7614 14.2386 21 17 21C19.7614 21 22 18.7614 22 16C22 13.2386 19.7614 11 17 11ZM17 11V9M2 9V15.8C2 16.9201 2 17.4802 2.21799 17.908C2.40973 18.2843 2.71569 18.5903 3.09202 18.782C3.51984 19 4.0799 19 5.2 19H13M2 9V8.2C2 7.0799 2 6.51984 2.21799 6.09202C2.40973 5.71569 2.71569 5.40973 3.09202 5.21799C3.51984 5 4.0799 5 5.2 5H13.8C14.9201 5 15.4802 5 15.908 5.21799C16.2843 5.40973 16.5903 5.71569 16.782 6.09202C17 6.51984 17 7.0799 17 8.2V9M2 9H17M5 3V5M14 3V5M15 16H17M17 16H19M17 16V14M17 16V18" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path></g></svg>');
1507
}
1508
1509
.extra-network-control .extra-network-control--sort[data-sortkey="date_modified"] .extra-network-control--sort-icon {
1510
mask-image: url('data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"><path d="M10 21H6.2C5.0799 21 4.51984 21 4.09202 20.782C3.71569 20.5903 3.40973 20.2843 3.21799 19.908C3 19.4802 3 18.9201 3 17.8V8.2C3 7.0799 3 6.51984 3.21799 6.09202C3.40973 5.71569 3.71569 5.40973 4.09202 5.21799C4.51984 5 5.0799 5 6.2 5H17.8C18.9201 5 19.4802 5 19.908 5.21799C20.2843 5.40973 20.5903 5.71569 20.782 6.09202C21 6.51984 21 7.0799 21 8.2V10M7 3V5M17 3V5M3 9H21M13.5 13.0001L7 13M10 17.0001L7 17M14 21L16.025 20.595C16.2015 20.5597 16.2898 20.542 16.3721 20.5097C16.4452 20.4811 16.5147 20.4439 16.579 20.399C16.6516 20.3484 16.7152 20.2848 16.8426 20.1574L21 16C21.5523 15.4477 21.5523 14.5523 21 14C20.4477 13.4477 19.5523 13.4477 19 14L14.8426 18.1574C14.7152 18.2848 14.6516 18.3484 14.601 18.421C14.5561 18.4853 14.5189 18.5548 14.4903 18.6279C14.458 18.7102 14.4403 18.7985 14.405 18.975L14 21Z" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path></g></svg>');
1511
}
1512
1513
/* ==== SORT DIRECTION ICON ACTIONS ==== */
1514
.extra-network-control .extra-network-control--sort-dir {
1515
padding: 0.25rem;
1516
display: inline-flex;
1517
cursor: pointer;
1518
justify-self: center;
1519
align-self: center;
1520
}
1521
1522
.extra-network-control .extra-network-control--sort-dir .extra-network-control--sort-dir-icon {
1523
height: 1.5rem;
1524
width: 1.5rem;
1525
mask-repeat: no-repeat;
1526
mask-position: center center;
1527
mask-size: 100%;
1528
background-color: var(--input-placeholder-color);
1529
}
1530
1531
.extra-network-control .extra-network-control--sort-dir[data-sortdir="Ascending"] .extra-network-control--sort-dir-icon {
1532
mask-image: url('data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"><path d="M13 12H21M13 8H21M13 16H21M6 7V17M6 7L3 10M6 7L9 10" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path></g></svg>');
1533
}
1534
1535
.extra-network-control .extra-network-control--sort-dir[data-sortdir="Descending"] .extra-network-control--sort-dir-icon {
1536
mask-image: url('data:image/svg+xml,<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"><path d="M13 12H21M13 8H21M13 16H21M6 7V17M6 17L3 14M6 17L9 14" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path></g></svg>');
1537
}
1538
1539
/* ==== TREE VIEW ICON ACTIONS ==== */
1540
.extra-network-control .extra-network-control--tree-view {
1541
padding: 0.25rem;
1542
display: inline-flex;
1543
cursor: pointer;
1544
justify-self: center;
1545
align-self: center;
1546
}
1547
1548
.extra-network-control .extra-network-control--tree-view .extra-network-control--tree-view-icon {
1549
height: 1.5rem;
1550
width: 1.5rem;
1551
mask-image: url('data:image/svg+xml,<svg viewBox="0 0 16 16" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="black"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"><path fill="black" d="M16 10v-4h-11v1h-2v-3h9v-4h-12v4h2v10h3v2h11v-4h-11v1h-2v-5h2v2z"></path></g></svg>');
1552
mask-repeat: no-repeat;
1553
mask-position: center center;
1554
mask-size: 100%;
1555
background-color: var(--input-placeholder-color);
1556
}
1557
1558
.extra-network-control .extra-network-control--enabled {
1559
background-color: rgba(0, 0, 0, 0.1);
1560
border-radius: 0.25rem;
1561
}
1562
1563
.dark .extra-network-control .extra-network-control--enabled {
1564
background-color: rgba(255, 255, 255, 0.15);
1565
}
1566
1567
.extra-network-control .extra-network-control--enabled .extra-network-control--icon{
1568
background-color: var(--button-secondary-text-color);
1569
}
1570
1571
/* ==== REFRESH ICON ACTIONS ==== */
1572
.extra-network-control .extra-network-control--refresh {
1573
padding: 0.25rem;
1574
display: inline-flex;
1575
cursor: pointer;
1576
justify-self: center;
1577
align-self: center;
1578
}
1579
1580
.extra-network-control .extra-network-control--refresh .extra-network-control--refresh-icon {
1581
height: 1.5rem;
1582
width: 1.5rem;
1583
mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="bevel"><path d="M21.5 2v6h-6M21.34 15.57a10 10 0 1 1-.57-8.38"/></svg>');
1584
mask-repeat: no-repeat;
1585
mask-position: center center;
1586
mask-size: 100%;
1587
background-color: var(--input-placeholder-color);
1588
}
1589
1590
.extra-network-control .extra-network-control--refresh-icon:active {
1591
-ms-transform: rotate(180deg);
1592
-webkit-transform: rotate(180deg);
1593
transform: rotate(180deg);
1594
transition: transform 0.2s;
1595
}
1596
1597
/* ==== TREE GRID CONFIG ==== */
1598
1599
/* Text for button. */
1600
.extra-network-tree .tree-list-item-label {
1601
position: relative;
1602
line-height: 1.25rem;
1603
color: var(--button-secondary-text-color);
1604
grid-area: label;
1605
padding-left: 0.5rem;
1606
}
1607
1608
/* Text for button truncated. */
1609
.extra-network-tree .tree-list-item-label--truncate {
1610
overflow: hidden;
1611
text-overflow: ellipsis;
1612
white-space: nowrap;
1613
}
1614
1615
/* Icon for button. */
1616
.extra-network-tree .tree-list-item-visual {
1617
min-height: 1rem;
1618
color: var(--button-secondary-text-color);
1619
pointer-events: none;
1620
align-items: right;
1621
}
1622
1623
1624
/* Icon for button when it is before label. */
1625
.extra-network-tree .tree-list-item-visual--leading {
1626
grid-area: leading-visual;
1627
width: 1rem;
1628
text-align: right;
1629
}
1630
1631
/* Icon for button when it is after label. */
1632
.extra-network-tree .tree-list-item-visual--trailing {
1633
grid-area: trailing-visual;
1634
width: 1rem;
1635
text-align: right;
1636
}
1637
1638
/* Dropdown arrow for button. */
1639
.extra-network-tree .tree-list-item-action--leading {
1640
margin-right: 0.5rem;
1641
margin-left: 0.2rem;
1642
}
1643
1644
.extra-network-tree .tree-list-content-file .tree-list-item-action--leading {
1645
visibility: hidden;
1646
}
1647
1648
.extra-network-tree .tree-list-item-action--leading {
1649
grid-area: leading-action;
1650
}
1651
1652
.extra-network-tree .tree-list-item-action--trailing {
1653
grid-area: trailing-action;
1654
display: inline-flex;
1655
}
1656
1657
.extra-network-tree .tree-list-content .button-row {
1658
display: inline-flex;
1659
visibility: hidden;
1660
color: var(--button-secondary-text-color);
1661
width: 0;
1662
}
1663
1664
.extra-network-tree .tree-list-content:hover .button-row {
1665
visibility: visible;
1666
width: auto;
1667
}
1668
1669