@robertraaijmakers/pptb-securityplugin 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.css ADDED
@@ -0,0 +1,986 @@
1
+ :root {
2
+ --bg: #f6f2ec;
3
+ --panel: #ffffff;
4
+ --ink: #222118;
5
+ --muted: #6c675f;
6
+ --accent: #d35400;
7
+ --accent-dark: #a84400;
8
+ --border: #e2d8cb;
9
+ --shadow: rgba(0, 0, 0, 0.08);
10
+ --radius: 12px;
11
+ --mono: "Space Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
12
+ --display: "Sora", "Segoe UI", sans-serif;
13
+ }
14
+
15
+ * {
16
+ box-sizing: border-box;
17
+ }
18
+
19
+ body {
20
+ margin: 0;
21
+ font-family: var(--display);
22
+ color: var(--ink);
23
+ background: radial-gradient(circle at top left, #fff6e9, #f0e6da);
24
+ min-height: 100vh;
25
+ }
26
+
27
+ body.theme-dark {
28
+ --bg: #141311;
29
+ --panel: #1d1b18;
30
+ --ink: #f2efe9;
31
+ --muted: #b7afa3;
32
+ --accent: #f39c4a;
33
+ --accent-dark: #cc7f32;
34
+ --border: #3a342e;
35
+ --shadow: rgba(0, 0, 0, 0.45);
36
+ background: radial-gradient(circle at top left, #1f1b17, #120f0d);
37
+ }
38
+
39
+ body.theme-dark .panel,
40
+ body.theme-dark .logs {
41
+ background: var(--panel);
42
+ }
43
+
44
+ body.theme-dark .tab-panel {
45
+ color: var(--ink);
46
+ }
47
+
48
+ body.theme-dark select,
49
+ body.theme-dark .filter-select,
50
+ body.theme-dark .multi-select-button,
51
+ body.theme-dark .multi-select-menu,
52
+ body.theme-dark .btn,
53
+ body.theme-dark .tab-button {
54
+ background: #24201c;
55
+ color: var(--ink);
56
+ border-color: var(--border);
57
+ }
58
+
59
+ body.theme-dark .tab-button.active {
60
+ background: var(--accent);
61
+ border-color: var(--accent);
62
+ color: #1a120b;
63
+ }
64
+
65
+ body.theme-dark .badge {
66
+ background: #2b2621;
67
+ }
68
+
69
+ body.theme-dark .assignment-status-pill {
70
+ background: #2a241f;
71
+ color: var(--ink);
72
+ }
73
+
74
+ body.theme-dark .loading-card {
75
+ background: #241f1b;
76
+ border-color: var(--border);
77
+ }
78
+
79
+ body.theme-dark .loading-progress {
80
+ background: #2b2520;
81
+ }
82
+
83
+ body.theme-dark .table tbody tr:hover {
84
+ background: #231f1b;
85
+ }
86
+
87
+ #app {
88
+ margin: 10px;
89
+ display: flex;
90
+ flex-direction: column;
91
+ gap: 12px;
92
+ }
93
+
94
+ .header {
95
+ display: flex;
96
+ justify-content: space-between;
97
+ align-items: center;
98
+ gap: 16px;
99
+ background: var(--panel);
100
+ padding: 20px 24px;
101
+ border-radius: var(--radius);
102
+ box-shadow: 0 10px 30px var(--shadow);
103
+ }
104
+
105
+ .header-actions {
106
+ display: flex;
107
+ flex-direction: column;
108
+ align-items: flex-end;
109
+ gap: 16px;
110
+ }
111
+
112
+ .header-info {
113
+ display: inline-flex;
114
+ align-items: center;
115
+ gap: 10px;
116
+ }
117
+
118
+ .header-filter {
119
+ display: inline-flex;
120
+ align-items: center;
121
+ gap: 10px;
122
+ padding: 6px 10px;
123
+ border-radius: 999px;
124
+ border: 1px solid var(--border);
125
+ background: #fff;
126
+ }
127
+
128
+ body.theme-dark .header-filter {
129
+ background: #24201c;
130
+ }
131
+
132
+ .toggle-label {
133
+ font-size: 12px;
134
+ text-transform: uppercase;
135
+ letter-spacing: 0.6px;
136
+ color: var(--muted);
137
+ }
138
+
139
+ .btn.theme-toggle {
140
+ padding: 4px;
141
+ width: auto;
142
+ height: auto;
143
+ aspect-ratio: 1 / 1;
144
+ min-width: 30px;
145
+ min-height: 30px;
146
+ max-width: 30px;
147
+ max-height: 30px;
148
+ }
149
+
150
+ .theme-toggle {
151
+ border-radius: 999px;
152
+ background: transparent;
153
+ border: 1px solid var(--border);
154
+ color: var(--ink);
155
+ display: inline-flex;
156
+ align-items: center;
157
+ justify-content: center;
158
+ line-height: 0;
159
+ }
160
+
161
+ body.theme-dark .theme-toggle {
162
+ background: rgba(0, 0, 0, 0.2);
163
+ }
164
+
165
+ .theme-icon {
166
+ width: 100%;
167
+ height: 100%;
168
+ display: block;
169
+ max-width: 100%;
170
+ max-height: 100%;
171
+ pointer-events: none;
172
+ }
173
+
174
+ .theme-icon-sun {
175
+ fill: none;
176
+ stroke: currentColor;
177
+ stroke-width: 1.8;
178
+ stroke-linecap: round;
179
+ stroke-linejoin: round;
180
+ }
181
+
182
+ .theme-icon-moon {
183
+ fill: currentColor;
184
+ stroke: none;
185
+ }
186
+
187
+ .theme-icon-sun {
188
+ display: inline-block;
189
+ }
190
+
191
+ .theme-icon-moon {
192
+ display: none;
193
+ }
194
+
195
+ body.theme-dark .theme-icon-sun {
196
+ display: none;
197
+ }
198
+
199
+ body.theme-dark .theme-icon-moon {
200
+ display: inline-block;
201
+ }
202
+
203
+ .subtitle {
204
+ margin: 6px 0 0;
205
+ color: var(--muted);
206
+ }
207
+
208
+ .badge {
209
+ padding: 8px 12px;
210
+ border-radius: 999px;
211
+ background: #1c1b18;
212
+ color: #fff;
213
+ font-size: 12px;
214
+ letter-spacing: 0.5px;
215
+ text-transform: uppercase;
216
+ }
217
+
218
+ .controls {
219
+ display: grid;
220
+ grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
221
+ gap: 16px;
222
+ background: var(--panel);
223
+ padding: 16px 20px;
224
+ border-radius: var(--radius);
225
+ border: 1px solid var(--border);
226
+ }
227
+
228
+ .controls-group {
229
+ display: contents;
230
+ }
231
+
232
+ .controls-group.hidden {
233
+ display: none;
234
+ }
235
+
236
+ .tabs {
237
+ display: flex;
238
+ gap: 8px;
239
+ padding: 0;
240
+ }
241
+
242
+ .tab-button {
243
+ border: 1px solid var(--border);
244
+ background: #fff;
245
+ border-radius: 999px;
246
+ padding: 6px 14px;
247
+ font-size: 12px;
248
+ text-transform: uppercase;
249
+ letter-spacing: 0.6px;
250
+ cursor: pointer;
251
+ }
252
+
253
+ .tab-button.active {
254
+ background: var(--accent);
255
+ border-color: var(--accent);
256
+ color: #fff;
257
+ }
258
+
259
+ .tab-panel.hidden {
260
+ display: none;
261
+ }
262
+
263
+ .control {
264
+ display: flex;
265
+ flex-direction: column;
266
+ gap: 6px;
267
+ }
268
+
269
+ .toggle {
270
+ display: inline-flex;
271
+ align-items: center;
272
+ gap: 8px;
273
+ }
274
+
275
+ .toggle input {
276
+ display: none;
277
+ }
278
+
279
+ .toggle-track {
280
+ position: relative;
281
+ width: 44px;
282
+ height: 24px;
283
+ border-radius: 999px;
284
+ background: #d8cec1;
285
+ border: 1px solid var(--border);
286
+ transition: background 0.2s ease;
287
+ }
288
+
289
+ .toggle-track::after {
290
+ content: "";
291
+ position: absolute;
292
+ top: 2px;
293
+ left: 2px;
294
+ width: 18px;
295
+ height: 18px;
296
+ border-radius: 50%;
297
+ background: #fff;
298
+ transition: transform 0.2s ease;
299
+ box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
300
+ }
301
+
302
+ .toggle input:checked + .toggle-track {
303
+ background: var(--accent);
304
+ }
305
+
306
+ .toggle input:checked + .toggle-track::after {
307
+ transform: translateX(20px);
308
+ }
309
+
310
+ body.theme-dark .toggle-track {
311
+ background: #2b2621;
312
+ }
313
+
314
+ .role-filter {
315
+ min-width: 200px;
316
+ }
317
+
318
+ .multi-select {
319
+ position: relative;
320
+ }
321
+
322
+ .multi-select-button {
323
+ width: 100%;
324
+ padding: 10px 12px;
325
+ border-radius: 8px;
326
+ border: 1px solid var(--border);
327
+ background: #fff;
328
+ cursor: pointer;
329
+ text-align: left;
330
+ }
331
+
332
+ .multi-select-menu {
333
+ position: absolute;
334
+ top: calc(100% + 6px);
335
+ left: 0;
336
+ right: 0;
337
+ background: #fff;
338
+ border: 1px solid var(--border);
339
+ border-radius: 12px;
340
+ box-shadow: 0 12px 24px var(--shadow);
341
+ padding: 12px;
342
+ z-index: 3;
343
+ }
344
+
345
+ .multi-select-menu.hidden {
346
+ display: none;
347
+ }
348
+
349
+ .multi-select-actions {
350
+ display: flex;
351
+ justify-content: space-between;
352
+ margin-bottom: 8px;
353
+ }
354
+
355
+ .link-button {
356
+ background: none;
357
+ border: none;
358
+ color: var(--accent-dark);
359
+ font-size: 12px;
360
+ text-transform: uppercase;
361
+ letter-spacing: 0.4px;
362
+ cursor: pointer;
363
+ padding: 0;
364
+ }
365
+
366
+ .multi-select-list {
367
+ max-height: 220px;
368
+ overflow-y: auto;
369
+ display: flex;
370
+ flex-direction: column;
371
+ gap: 6px;
372
+ }
373
+
374
+ .multi-select-item {
375
+ display: flex;
376
+ align-items: center;
377
+ gap: 8px;
378
+ font-size: 13px;
379
+ }
380
+
381
+ .checkbox-control {
382
+ justify-content: flex-end;
383
+ }
384
+
385
+ .checkbox-label {
386
+ display: inline-flex;
387
+ align-items: center;
388
+ gap: 10px;
389
+ font-size: 12px;
390
+ text-transform: uppercase;
391
+ letter-spacing: 0.6px;
392
+ color: var(--muted);
393
+ }
394
+
395
+ .checkbox-label input {
396
+ width: 16px;
397
+ height: 16px;
398
+ }
399
+
400
+ label {
401
+ font-size: 12px;
402
+ text-transform: uppercase;
403
+ letter-spacing: 0.6px;
404
+ color: var(--muted);
405
+ }
406
+
407
+ select,
408
+ button {
409
+ font-family: var(--display);
410
+ }
411
+
412
+ select {
413
+ padding: 10px 12px;
414
+ border-radius: 8px;
415
+ border: 1px solid var(--border);
416
+ background: #fff;
417
+ }
418
+
419
+ .btn {
420
+ padding: 10px 16px;
421
+ border-radius: 10px;
422
+ border: 1px solid var(--border);
423
+ background: #fff;
424
+ cursor: pointer;
425
+ font-weight: 600;
426
+ transition: background 150ms ease, border-color 150ms ease, color 150ms ease;
427
+ }
428
+
429
+ .btn:not(:disabled):hover {
430
+ background: #f6efe6;
431
+ border-color: #d4c5b6;
432
+ }
433
+
434
+ body.theme-dark .btn:not(:disabled):hover {
435
+ background: #2a241f;
436
+ border-color: #3f362f;
437
+ }
438
+
439
+ .btn:disabled {
440
+ cursor: not-allowed;
441
+ opacity: 0.55;
442
+ }
443
+
444
+ .btn.primary {
445
+ background: var(--accent);
446
+ color: #fff;
447
+ border-color: var(--accent);
448
+ }
449
+
450
+ .btn.primary:hover {
451
+ background: var(--accent-dark);
452
+ }
453
+
454
+ .summary {
455
+ background: var(--panel);
456
+ padding: 16px 20px;
457
+ border-radius: var(--radius);
458
+ border: 1px solid var(--border);
459
+ font-size: 14px;
460
+ color: var(--muted);
461
+ }
462
+
463
+ .panel {
464
+ background: var(--panel);
465
+ border-radius: var(--radius);
466
+ border: 1px solid var(--border);
467
+ box-shadow: 0 8px 24px var(--shadow);
468
+ overflow-x: auto;
469
+ -webkit-overflow-scrolling: touch;
470
+ position: relative;
471
+ min-height: 420px;
472
+ }
473
+
474
+ .panel-header {
475
+ display: flex;
476
+ justify-content: space-between;
477
+ align-items: flex-start;
478
+ padding: 16px 20px;
479
+ border-bottom: 1px solid var(--border);
480
+ }
481
+
482
+ .panel-header-text {
483
+ display: flex;
484
+ flex-direction: column;
485
+ gap: 4px;
486
+ }
487
+
488
+ .panel-actions {
489
+ display: flex;
490
+ gap: 10px;
491
+ align-items: center;
492
+ }
493
+
494
+ .pending-count {
495
+ min-width: 26px;
496
+ height: 26px;
497
+ padding: 0 8px;
498
+ border-radius: 999px;
499
+ background: var(--accent);
500
+ color: #fff;
501
+ font-size: 12px;
502
+ font-weight: 700;
503
+ display: inline-flex;
504
+ align-items: center;
505
+ justify-content: center;
506
+ }
507
+
508
+ .pending-count.hidden {
509
+ display: none;
510
+ }
511
+
512
+ .panel-body {
513
+ padding: 16px 20px;
514
+ }
515
+
516
+ .assignment-controls {
517
+ display: grid;
518
+ grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
519
+ gap: 16px;
520
+ padding: 16px 20px;
521
+ }
522
+
523
+
524
+ .assignment-list {
525
+ border-top: 1px solid var(--border);
526
+ padding: 16px 20px 20px;
527
+ }
528
+
529
+ .assignment-toolbar {
530
+ display: flex;
531
+ justify-content: flex-end;
532
+ gap: 12px;
533
+ margin-bottom: 12px;
534
+ }
535
+
536
+ .assignment-table {
537
+ overflow-x: auto;
538
+ }
539
+
540
+ .assignment-table .table tbody td {
541
+ vertical-align: middle;
542
+ }
543
+
544
+ .assignment-subtitle {
545
+ font-size: 12px;
546
+ color: var(--muted);
547
+ }
548
+
549
+ .assignment-status-pill {
550
+ padding: 4px 10px;
551
+ border-radius: 999px;
552
+ background: #f0e6da;
553
+ font-size: 11px;
554
+ text-transform: uppercase;
555
+ letter-spacing: 0.4px;
556
+ color: var(--ink);
557
+ }
558
+
559
+ .table-loading {
560
+ position: absolute;
561
+ inset: 76px 0 0 0;
562
+ display: flex;
563
+ align-items: center;
564
+ justify-content: center;
565
+ backdrop-filter: blur(2px);
566
+ z-index: 2;
567
+ }
568
+
569
+ .dashboard-panel .table-loading {
570
+ inset: 0;
571
+ }
572
+
573
+ .table-loading.hidden {
574
+ display: none;
575
+ }
576
+
577
+ .table-empty {
578
+ position: absolute;
579
+ inset: 76px 0 0 0;
580
+ display: flex;
581
+ flex-direction: column;
582
+ align-items: center;
583
+ justify-content: center;
584
+ text-align: center;
585
+ color: var(--muted);
586
+ gap: 6px;
587
+ padding: 24px;
588
+ }
589
+
590
+ .table-empty.hidden {
591
+ display: none;
592
+ }
593
+
594
+ .table-empty-title {
595
+ font-weight: 600;
596
+ color: var(--ink);
597
+ }
598
+
599
+ .dashboard-panel {
600
+ min-height: auto;
601
+ }
602
+
603
+ .dashboard-content {
604
+ padding: 20px;
605
+ display: flex;
606
+ flex-direction: column;
607
+ gap: 20px;
608
+ }
609
+
610
+ .dashboard-grid {
611
+ display: grid;
612
+ grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
613
+ gap: 16px;
614
+ }
615
+
616
+ .dashboard-card {
617
+ background: var(--panel);
618
+ border-radius: var(--radius);
619
+ border: 1px solid var(--border);
620
+ box-shadow: 0 8px 20px var(--shadow);
621
+ padding: 14px 16px;
622
+ }
623
+
624
+ .metric-card {
625
+ display: flex;
626
+ flex-direction: column;
627
+ gap: 6px;
628
+ }
629
+
630
+ .metric-label {
631
+ font-size: 12px;
632
+ text-transform: uppercase;
633
+ letter-spacing: 0.6px;
634
+ color: var(--muted);
635
+ }
636
+
637
+ .metric-value {
638
+ font-size: 28px;
639
+ font-weight: 600;
640
+ color: var(--ink);
641
+ }
642
+
643
+ .dashboard-charts {
644
+ display: grid;
645
+ grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
646
+ gap: 16px;
647
+ }
648
+
649
+ .chart-card {
650
+ min-height: 320px;
651
+ display: flex;
652
+ flex-direction: column;
653
+ gap: 12px;
654
+ position: relative;
655
+ }
656
+
657
+ .chart-title-row {
658
+ display: flex;
659
+ align-items: center;
660
+ justify-content: space-between;
661
+ gap: 12px;
662
+ }
663
+
664
+ .chart-expand {
665
+ font-size: 12px;
666
+ text-transform: uppercase;
667
+ letter-spacing: 0.4px;
668
+ }
669
+
670
+ .chart-card canvas {
671
+ width: 100% !important;
672
+ height: 260px !important;
673
+ }
674
+
675
+ .chart-header {
676
+ display: flex;
677
+ flex-direction: column;
678
+ gap: 4px;
679
+ }
680
+
681
+ .modal {
682
+ position: fixed;
683
+ inset: 0;
684
+ display: flex;
685
+ align-items: center;
686
+ justify-content: center;
687
+ z-index: 50;
688
+ }
689
+
690
+ .modal.hidden {
691
+ display: none;
692
+ }
693
+
694
+ .modal-backdrop {
695
+ position: absolute;
696
+ inset: 0;
697
+ background: rgba(10, 10, 10, 0.6);
698
+ }
699
+
700
+ .modal-content {
701
+ position: relative;
702
+ width: min(1100px, 92vw);
703
+ max-height: 90vh;
704
+ background: var(--panel);
705
+ border-radius: var(--radius);
706
+ border: 1px solid var(--border);
707
+ box-shadow: 0 20px 40px var(--shadow);
708
+ display: flex;
709
+ flex-direction: column;
710
+ overflow: hidden;
711
+ }
712
+
713
+ .modal-header {
714
+ display: flex;
715
+ align-items: center;
716
+ justify-content: space-between;
717
+ padding: 16px 20px;
718
+ border-bottom: 1px solid var(--border);
719
+ }
720
+
721
+ .modal-body {
722
+ padding: 16px 20px 24px;
723
+ overflow: auto;
724
+ position: relative;
725
+ }
726
+
727
+ .chart-empty {
728
+ position: absolute;
729
+ inset: 0;
730
+ display: flex;
731
+ align-items: center;
732
+ justify-content: center;
733
+ text-align: center;
734
+ color: var(--muted);
735
+ font-size: 14px;
736
+ padding: 24px;
737
+ background: rgba(255, 255, 255, 0.75);
738
+ border-radius: var(--radius);
739
+ }
740
+
741
+ body.theme-dark .chart-empty {
742
+ background: rgba(29, 27, 24, 0.85);
743
+ }
744
+
745
+ .chart-empty.hidden {
746
+ display: none;
747
+ }
748
+
749
+ .modal-body canvas {
750
+ width: 100% !important;
751
+ height: 520px !important;
752
+ }
753
+
754
+ .table-empty-text {
755
+ font-size: 13px;
756
+ }
757
+
758
+ .loading-card {
759
+ width: min(360px, 90%);
760
+ background: #fff;
761
+ border: 1px solid var(--border);
762
+ border-radius: 16px;
763
+ padding: 20px;
764
+ box-shadow: 0 10px 30px var(--shadow);
765
+ text-align: center;
766
+ }
767
+
768
+ .loading-title {
769
+ font-weight: 600;
770
+ margin-bottom: 12px;
771
+ }
772
+
773
+ .loading-progress {
774
+ height: 10px;
775
+ border-radius: 999px;
776
+ background: #f0e6da;
777
+ overflow: hidden;
778
+ }
779
+
780
+ .loading-bar {
781
+ height: 100%;
782
+ width: 0;
783
+ background: var(--accent);
784
+ transition: width 200ms ease;
785
+ }
786
+
787
+ .loading-text {
788
+ margin-top: 10px;
789
+ font-size: 12px;
790
+ color: var(--muted);
791
+ }
792
+
793
+ .table.hidden {
794
+ visibility: hidden;
795
+ }
796
+
797
+ .table {
798
+ width: 100%;
799
+ border-collapse: collapse;
800
+ font-size: 14px;
801
+ }
802
+
803
+ .table thead th {
804
+ text-align: left;
805
+ font-size: 12px;
806
+ text-transform: uppercase;
807
+ letter-spacing: 0.6px;
808
+ color: var(--muted);
809
+ padding: 12px 16px;
810
+ border-bottom: 1px solid var(--border);
811
+ }
812
+
813
+ .sort-button {
814
+ border: none;
815
+ background: none;
816
+ padding: 0;
817
+ font: inherit;
818
+ color: inherit;
819
+ text-transform: inherit;
820
+ letter-spacing: inherit;
821
+ cursor: pointer;
822
+ display: inline-flex;
823
+ align-items: center;
824
+ gap: 6px;
825
+ }
826
+
827
+ .info-tooltip {
828
+ display: inline-flex;
829
+ align-items: center;
830
+ justify-content: center;
831
+ width: 18px;
832
+ height: 18px;
833
+ margin-left: 6px;
834
+ border-radius: 999px;
835
+ border: 1px solid var(--border);
836
+ color: var(--muted);
837
+ font-size: 11px;
838
+ font-weight: 700;
839
+ cursor: help;
840
+ position: relative;
841
+ }
842
+
843
+ .info-tooltip::after {
844
+ content: attr(data-tooltip);
845
+ position: absolute;
846
+ bottom: calc(100% + 8px);
847
+ left: 50%;
848
+ transform: translateX(-50%);
849
+ min-width: 220px;
850
+ max-width: 280px;
851
+ padding: 10px 12px;
852
+ border-radius: 8px;
853
+ background: var(--panel);
854
+ color: var(--ink);
855
+ border: 1px solid var(--border);
856
+ box-shadow: 0 8px 20px var(--shadow);
857
+ font-size: 12px;
858
+ text-transform: none;
859
+ letter-spacing: 0;
860
+ line-height: 1.4;
861
+ opacity: 0;
862
+ pointer-events: none;
863
+ transition: opacity 160ms ease, transform 160ms ease;
864
+ z-index: 5;
865
+ }
866
+
867
+ .info-tooltip:hover::after,
868
+ .info-tooltip:focus-visible::after {
869
+ opacity: 1;
870
+ transform: translateX(-50%) translateY(-2px);
871
+ }
872
+
873
+ .sort-button::after {
874
+ content: "";
875
+ display: inline-block;
876
+ width: 0;
877
+ height: 0;
878
+ border-left: 4px solid transparent;
879
+ border-right: 4px solid transparent;
880
+ border-top: 6px solid transparent;
881
+ }
882
+
883
+ .sort-button.sort-asc::after {
884
+ border-top-color: var(--muted);
885
+ }
886
+
887
+ .sort-button.sort-desc::after {
888
+ border-top-color: var(--muted);
889
+ transform: rotate(180deg);
890
+ }
891
+
892
+ .filter-row th {
893
+ padding: 6px 12px 12px;
894
+ }
895
+
896
+ .filter-select {
897
+ width: 100%;
898
+ padding: 6px 8px;
899
+ border-radius: 8px;
900
+ border: 1px solid var(--border);
901
+ background: #fff;
902
+ font-size: 12px;
903
+ text-transform: none;
904
+ letter-spacing: 0;
905
+ }
906
+
907
+ .table tbody td {
908
+ padding: 12px 16px;
909
+ border-bottom: 1px solid var(--border);
910
+ }
911
+
912
+ .table.hide-ownership thead tr:first-child th:nth-child(2),
913
+ .table.hide-ownership thead tr.filter-row th:nth-child(2),
914
+ .table.hide-ownership tbody td:nth-child(2) {
915
+ display: none;
916
+ }
917
+
918
+ .ownership {
919
+ color: var(--muted);
920
+ font-size: 12px;
921
+ text-transform: uppercase;
922
+ letter-spacing: 0.5px;
923
+ }
924
+
925
+ .level-select {
926
+ min-width: 165px;
927
+ }
928
+
929
+ .level-select.pending-change {
930
+ background: #ffe6c7;
931
+ border-color: #e1a56b;
932
+ }
933
+
934
+ body.theme-dark .level-select.pending-change {
935
+ background: #3a2a1e;
936
+ border-color: #b97638;
937
+ }
938
+
939
+ .level-none {
940
+ color: #6d6a63;
941
+ }
942
+
943
+ .level-user {
944
+ color: #5c5b57;
945
+ }
946
+
947
+ .level-businessUnit {
948
+ color: #2f7a3d;
949
+ }
950
+
951
+ .level-parentChild {
952
+ color: #1f6fa8;
953
+ }
954
+
955
+ .level-organization {
956
+ color: #9c2c2c;
957
+ }
958
+
959
+ .table tbody tr:hover {
960
+ background: #fdf9f3;
961
+ }
962
+
963
+ .muted {
964
+ color: var(--muted);
965
+ }
966
+
967
+ .logs {
968
+ background: var(--panel);
969
+ border-radius: var(--radius);
970
+ border: 1px solid var(--border);
971
+ padding: 16px 20px;
972
+ }
973
+
974
+ .logs pre {
975
+ font-family: var(--mono);
976
+ font-size: 12px;
977
+ margin: 0;
978
+ white-space: pre-wrap;
979
+ }
980
+
981
+ @media (max-width: 960px) {
982
+ .table {
983
+ display: block;
984
+ overflow-x: auto;
985
+ }
986
+ }