revise_auth-jets 0.3.0 → 0.3.2

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.
@@ -0,0 +1,1563 @@
1
+ @import "tailwindcss/base";
2
+ @import "tailwindcss/components";
3
+ @import "tailwindcss/utilities";
4
+
5
+
6
+ // actiontext
7
+ .link_to_embed {
8
+ white-space: normal;
9
+
10
+ @apply mt-4 md:ml-4;
11
+
12
+ [data-behavior='embed_url'] {
13
+ @apply block md:ml-3 md:inline-block;
14
+ }
15
+ }
16
+
17
+ .trix-content {
18
+ img {
19
+ display: inline-block;
20
+ max-width: 100%;
21
+ height: auto;
22
+ }
23
+
24
+ .attachment-gallery {
25
+ > action-text-attachment,
26
+ > .attachment {
27
+ flex: 1 0 33%;
28
+ padding: 0 0.5em;
29
+ max-width: 33%;
30
+ }
31
+
32
+ &.attachment-gallery--2,
33
+ &.attachment-gallery--4 {
34
+ > action-text-attachment,
35
+ > .attachment {
36
+ flex-basis: 50%;
37
+ max-width: 50%;
38
+ }
39
+ }
40
+ }
41
+
42
+ .embed {
43
+ display: inline-block;
44
+ line-height: 1;
45
+ margin: 1em 0 !important;
46
+ padding: 0 !important;
47
+ width: 100%;
48
+ }
49
+
50
+ iframe, twitter-widget {
51
+ display: inline-block !important;
52
+ }
53
+ }
54
+
55
+ /* Trix attachment formatting */
56
+ .attachment--preview {
57
+ margin: 0.6em 0;
58
+ text-align: center;
59
+ width: 100%;
60
+ }
61
+
62
+ /* Tribute styles */
63
+ .tribute-container {
64
+ border-radius: 4px;
65
+ border: 1px solid rgba(0,0,0,0.1);
66
+ box-shadow: 0 0 4px rgba(0,0,0,0.1), 0 5px 20px rgba(0,0,0,0.05);
67
+
68
+ ul {
69
+ list-style-type: none;
70
+ margin: 0;
71
+ padding: 0;
72
+ }
73
+
74
+ li {
75
+ background: #fff;
76
+ padding: 0.2em 1em;
77
+ min-width: 15em;
78
+ max-width: 100%;
79
+ }
80
+
81
+ .highlight {
82
+ @apply bg-blue-500;
83
+ color: #fff;
84
+
85
+ span {
86
+ font-weight: bold;
87
+ }
88
+ }
89
+ }
90
+
91
+ /* Tweet embeds */
92
+ blockquote.twitter-tweet {
93
+ display: inline-block;
94
+ font-family: "Helvetica Neue", Roboto, "Segoe UI", Calibri, sans-serif;
95
+ font-size: 12px;
96
+ font-weight: bold;
97
+ line-height: 16px;
98
+ border-color: #eee #ddd #bbb;
99
+ border-radius: 5px;
100
+ border-style: solid;
101
+ border-width: 1px;
102
+ box-shadow: 0 1px 3px rgba(0,0,0,0.15);
103
+ margin: 10px 5px;
104
+ padding: 0 16px 16px;
105
+ max-width: 468px
106
+ }
107
+
108
+ blockquote.twitter-tweet p {
109
+ font-size: 16px;
110
+ font-weight: normal;
111
+ line-height: 20px
112
+ }
113
+
114
+ blockquote.twitter-tweet a {
115
+ color: inherit;
116
+ font-weight: normal;
117
+ text-decoration: none;
118
+ outline: 0 none
119
+ }
120
+
121
+ blockquote.twitter-tweet a:hover,blockquote.twitter-tweet a:focus {
122
+ text-decoration: underline
123
+ }
124
+
125
+ blockquote.twitter-tweet {
126
+ position: relative;
127
+ background: white;
128
+ padding: 72px 20px 28px !important;
129
+ box-shadow: none;
130
+ border: 1px solid #e1e8ed;
131
+ border-radius: 4px;
132
+ margin: 0;
133
+ font-style: normal;
134
+ text-align: left;
135
+ width: 500px;
136
+ max-width: 100%
137
+ }
138
+
139
+ @media (max-width: 369px) {
140
+ blockquote.twitter-tweet {
141
+ padding:60px 17.5px 21.5px !important
142
+ }
143
+ }
144
+
145
+ blockquote.twitter-tweet:before {
146
+ content: 'Follow';
147
+ position: absolute;
148
+ top: 20px;
149
+ right: 20px;
150
+ padding: 5.5px 12px 6.5px 33px;
151
+ background: url("data:image/svg+xml,%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m18.89 7.012c.808-.496 1.343-1.173 1.605-2.034-.786.417-1.569.703-2.351.861-.703-.756-1.593-1.14-2.66-1.14-1.043 0-1.924.366-2.643 1.078-.715.717-1.076 1.588-1.076 2.605 0 .309.039.585.117.819-3.076-.105-5.622-1.381-7.628-3.837-.34.601-.51 1.213-.51 1.846 0 1.301.549 2.332 1.645 3.089-.625-.053-1.176-.211-1.645-.47 0 .929.273 1.705.82 2.388.549.676 1.254 1.107 2.115 1.291-.312.08-.641.118-.979.118-.312 0-.533-.026-.664-.083.23.757.664 1.371 1.291 1.841.625.472 1.344.721 2.152.743-1.332 1.045-2.855 1.562-4.578 1.562-.422 0-.721-.006-.902-.038 1.697 1.102 3.586 1.649 5.676 1.649 2.139 0 4.029-.542 5.674-1.626 1.645-1.078 2.859-2.408 3.639-3.974.784-1.564 1.172-3.192 1.172-4.892v-.468c.758-.57 1.371-1.212 1.84-1.921-.68.293-1.383.492-2.11.593z' fill='%23ccc'/%3E%3C/svg%3E") 9px center no-repeat;
152
+ background-size: 21px;
153
+ border: 1px solid #ccc;
154
+ border-radius: 4px;
155
+ color: #ccc;
156
+ font-size: 14px
157
+ }
158
+
159
+ @media (max-width: 369px) {
160
+ blockquote.twitter-tweet:before {
161
+ display:none
162
+ }
163
+ }
164
+
165
+ blockquote.twitter-tweet:after {
166
+ content: '';
167
+ position: absolute;
168
+ top: 20px;
169
+ left: 20px;
170
+ width: 36px;
171
+ height: 36px;
172
+ background: #eee url("data:image/svg+xml,%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m12 12c2.21 0 4-1.795 4-4 0-2.21-1.79-4-4-4s-4 1.79-4 4c0 2.205 1.79 4 4 4zm0 2c-2.665 0-8 1.335-8 4v2h16v-2c0-2.665-5.335-4-8-4z' fill='%23444'/%3E%3C/svg%3E") center center no-repeat;
173
+ border-radius: 4px
174
+ }
175
+
176
+ @media (max-width: 369px) {
177
+ blockquote.twitter-tweet:after {
178
+ top:17.5px;
179
+ left: 17.5px
180
+ }
181
+ }
182
+
183
+ blockquote.twitter-tweet p {
184
+ white-space: pre-wrap;
185
+ margin: 0 0 28px
186
+ }
187
+
188
+ @media (max-width: 369px) {
189
+ blockquote.twitter-tweet p {
190
+ font-size:14px;
191
+ margin-bottom: 16px
192
+ }
193
+ }
194
+
195
+ blockquote.twitter-tweet a {
196
+ border: 0;
197
+ box-shadow: none;
198
+ color: #2b7bb9
199
+ }
200
+
201
+ blockquote.twitter-tweet>a {
202
+ color: #888
203
+ }
204
+
205
+ // alert
206
+ .alert {
207
+ @apply bg-gray-100 text-gray-700 p-4 rounded text-sm font-sans;
208
+ @apply dark:bg-gray-800 dark:text-white;
209
+
210
+ svg {
211
+ @apply text-gray-400;
212
+ }
213
+
214
+ &.alert-info {
215
+ @apply bg-blue-50 text-blue-700;
216
+ @apply dark:bg-gray-800 dark:text-blue-400;
217
+
218
+ svg {
219
+ @apply text-blue-400;
220
+ }
221
+ }
222
+
223
+ &.alert-success {
224
+ @apply bg-green-50 text-green-700;
225
+ @apply dark:bg-gray-800 dark:text-green-400;
226
+
227
+ svg {
228
+ @apply text-green-400;
229
+ }
230
+ }
231
+
232
+ &.alert-error {
233
+ @apply bg-red-50 text-red-700;
234
+ @apply dark:bg-gray-800 dark:text-red-400;
235
+
236
+
237
+ svg {
238
+ @apply text-red-400;
239
+ }
240
+ }
241
+
242
+ &.alert-warning {
243
+ @apply bg-yellow-50 text-yellow-700;
244
+ @apply dark:bg-gray-800 dark:text-yellow-400;
245
+
246
+ svg {
247
+ @apply text-yellow-400;
248
+ }
249
+ }
250
+
251
+ a {
252
+ @apply font-semibold;
253
+ }
254
+ }
255
+
256
+ .notice {
257
+ @apply bg-gray-100 flex items-center text-sm justify-center font-medium p-4;
258
+ @apply dark:bg-gray-800;
259
+
260
+ &.notice-info {
261
+ @apply bg-blue-50 text-blue-700;
262
+ @apply dark:bg-gray-800 dark:text-blue-400;
263
+
264
+ svg {
265
+ @apply text-blue-400;
266
+ }
267
+ }
268
+
269
+ &.notice-success {
270
+ @apply bg-green-50 text-green-700;
271
+ @apply dark:bg-gray-800 dark:text-green-400;
272
+
273
+ svg {
274
+ @apply text-green-400;
275
+ }
276
+ }
277
+
278
+ &.notice-error {
279
+ @apply bg-red-50 text-red-700;
280
+ @apply dark:bg-gray-800 dark:text-red-400;
281
+
282
+ svg {
283
+ @apply text-red-400;
284
+ }
285
+ }
286
+
287
+ &.notice-warning {
288
+ @apply bg-yellow-50 text-yellow-700;
289
+ @apply dark:bg-gray-800 dark:text-yellow-400;
290
+
291
+ svg {
292
+ @apply text-yellow-400;
293
+ }
294
+ }
295
+ }
296
+
297
+ // animation
298
+ .animated {
299
+ -webkit-animation-duration: 0.5s;
300
+ animation-duration: 0.5s;
301
+ -webkit-animation-fill-mode: both;
302
+ animation-fill-mode: both;
303
+ }
304
+
305
+ @-webkit-keyframes fadeIn {
306
+ from {
307
+ opacity: 0;
308
+ }
309
+
310
+ to {
311
+ opacity: 1;
312
+ }
313
+ }
314
+
315
+ @keyframes fadeIn {
316
+ from {
317
+ opacity: 0;
318
+ }
319
+
320
+ to {
321
+ opacity: 1;
322
+ }
323
+ }
324
+
325
+ .fadeIn {
326
+ -webkit-animation-name: fadeIn;
327
+ animation-name: fadeIn;
328
+ }
329
+
330
+ // announcements
331
+ .announcement-new {
332
+ @apply bg-blue-100 text-blue-600;
333
+ }
334
+
335
+ .announcement-fix {
336
+ @apply bg-red-100 text-red-600;
337
+ }
338
+
339
+ .announcement-update {
340
+ @apply bg-green-100 text-green-600;
341
+ }
342
+
343
+ .announcement-improvement {
344
+ @apply bg-purple-100 text-purple-600;
345
+ }
346
+
347
+ .unread-announcements span:before {
348
+ @apply inline-block w-2 h-2 mr-1.5 rounded-full bg-red-500 content-[''];
349
+ }
350
+
351
+ // avatars
352
+ .avatar {
353
+ font-size: 13px;
354
+ font-weight: 600;
355
+ position: relative;
356
+ display: inline-flex;
357
+ width: 3rem;
358
+ height: 3rem;
359
+ min-width: 14px;
360
+ color: #fff;
361
+ align-items: center;
362
+ justify-content: center;
363
+
364
+ .avatar-small {
365
+ position: absolute;
366
+ border-radius: 50%;
367
+ height: 16px;
368
+ width: 16px;
369
+ bottom: 0;
370
+ right: 0;
371
+ box-shadow: 0 0 0 2px #fff;
372
+ }
373
+ }
374
+
375
+ // base
376
+ body {
377
+ display: flex;
378
+ flex-direction: column;
379
+ min-height: 100vh;
380
+ /* mobile viewport bug fix */
381
+ min-height: -webkit-fill-available;
382
+ }
383
+ .main {
384
+ flex: 1;
385
+ }
386
+
387
+ a {
388
+ @apply text-blue-600;
389
+
390
+ &:hover,
391
+ &:focus {
392
+ @apply text-blue-500;
393
+
394
+ transform: none;
395
+ }
396
+ }
397
+
398
+ ul {
399
+ @apply list-disc list-inside;
400
+ }
401
+
402
+ ol {
403
+ @apply list-decimal list-inside;
404
+ }
405
+
406
+ .table {
407
+ @apply w-full;
408
+ th, td {
409
+ @apply align-top;
410
+ }
411
+
412
+ }
413
+
414
+ .table-responsive {
415
+ @apply block w-full overflow-x-auto;
416
+ }
417
+
418
+ // buttons
419
+ /* Hotwire's version of data-disable-with */
420
+ button .when-disabled { display: none; }
421
+ button[disabled] .when-disabled { display: initial; }
422
+ button .when-enabled { display: initial; }
423
+ button[disabled] .when-enabled { display: none; }
424
+
425
+ @layer components {
426
+ .btn {
427
+ @apply inline-flex text-sm font-semibold text-center px-4 py-0 rounded-md no-underline items-center justify-between shadow-sm focus:outline-none focus:ring-2 focus:ring-offset-2;
428
+
429
+ height: 40px;
430
+ transition: ease 0.3s background, ease 0.3s transform, ease 0.2s color;
431
+
432
+ &:hover,
433
+ &:focus {
434
+ @apply cursor-pointer;
435
+ }
436
+
437
+ &:disabled {
438
+ @apply opacity-75 cursor-not-allowed;
439
+ }
440
+ }
441
+
442
+ .btn-small {
443
+ @apply px-3 text-sm;
444
+
445
+ height: 32px;
446
+ line-height: 32px;
447
+ }
448
+
449
+ .btn-large {
450
+ @apply text-base px-6;
451
+
452
+ height: 48px;
453
+ line-height: 48px;
454
+ }
455
+
456
+ .btn-primary {
457
+ @apply bg-blue-600 text-white focus:ring-blue-500;
458
+
459
+ &:hover,
460
+ &:focus {
461
+ @apply bg-blue-500 text-white;
462
+ }
463
+
464
+ &.btn-outline {
465
+ @apply bg-transparent border border-blue-500 text-blue-500 shadow-none;
466
+
467
+ &:hover,
468
+ &:focus {
469
+ @apply bg-blue-500 text-white;
470
+ }
471
+ }
472
+ }
473
+
474
+ .btn-secondary {
475
+ @apply bg-green-600 text-white focus:ring-green-500;
476
+
477
+ &:hover,
478
+ &:focus {
479
+ @apply bg-green-500 text-white;
480
+ }
481
+
482
+ &.btn-outline {
483
+ @apply bg-transparent border border-green-500 text-green-600 shadow-none;
484
+
485
+ &:hover,
486
+ &:focus {
487
+ @apply bg-green-500 text-white;
488
+ }
489
+ }
490
+ }
491
+
492
+ .btn-tertiary {
493
+ @apply bg-neutral-800 text-white focus:ring-neutral-700;
494
+
495
+ &:hover,
496
+ &:focus {
497
+ @apply bg-neutral-700 text-white;
498
+ }
499
+
500
+ &.btn-outline {
501
+ @apply bg-transparent border border-neutral-500 text-neutral-800 dark:text-neutral-100 shadow-none;
502
+
503
+ &:hover,
504
+ &:focus {
505
+ @apply bg-neutral-700 text-white;
506
+ }
507
+ }
508
+ }
509
+
510
+ .btn-danger {
511
+ @apply bg-red-600 text-white focus:ring-red-500;
512
+
513
+ &:hover,
514
+ &:focus {
515
+ @apply bg-red-500 text-white;
516
+ }
517
+
518
+ &.btn-outline {
519
+ @apply bg-transparent border border-red-500 text-red-500 shadow-none;
520
+
521
+ &:hover,
522
+ &:focus {
523
+ @apply bg-red-500 text-white;
524
+ }
525
+ }
526
+ }
527
+
528
+ .btn-gray {
529
+ @apply bg-gray-100 text-gray-800 hover:bg-gray-200 hover:text-gray-800 focus:ring-gray-600;
530
+ }
531
+
532
+ .btn-light-gray {
533
+ @apply bg-gray-100 text-gray-800 hover:bg-gray-200 hover:text-gray-800 focus:ring-gray-600 dark:bg-gray-700 dark:text-gray-200;
534
+ }
535
+
536
+ .btn-white {
537
+ @apply bg-white border border-gray-300 text-gray-700 hover:bg-gray-50 hover:text-gray-700 focus:ring-blue-500;
538
+
539
+ &.primary {
540
+ @apply text-blue-600;
541
+ }
542
+
543
+ &.secondary {
544
+ @apply text-green-600;
545
+ }
546
+
547
+ &.tertiary {
548
+ @apply text-gray-600;
549
+ }
550
+
551
+ &.gray {
552
+ @apply text-gray-700;
553
+ }
554
+ }
555
+
556
+ .btn-link {
557
+ @apply text-blue-500 bg-transparent shadow-none;
558
+
559
+ &:hover,
560
+ &:focus {
561
+ @apply text-blue-600;
562
+
563
+ transform: none;
564
+ }
565
+ }
566
+
567
+ .btn-light-blue {
568
+ @apply text-blue-700 bg-blue-100 focus:ring-blue-700;
569
+ }
570
+
571
+ .btn-light-green {
572
+ @apply text-green-700 bg-green-100 focus:ring-green-700;
573
+ }
574
+
575
+ .btn-light-red {
576
+ @apply text-red-700 bg-red-100 focus:ring-red-700;
577
+ }
578
+
579
+ .btn-expanded, .btn-block {
580
+ @apply flex justify-center w-full;
581
+ }
582
+ }
583
+
584
+ // code
585
+ pre {
586
+ @apply text-sm mb-6;
587
+
588
+ code.hljs {
589
+ @apply rounded p-4;
590
+ }
591
+
592
+ }
593
+
594
+ code {
595
+ @apply text-red-500 text-sm;
596
+ }
597
+
598
+ // connected account
599
+ @layer components {
600
+ .bg-twitter { background: #4099ff; }
601
+ .bg-facebook { background: #3B5998; }
602
+ .bg-google_oauth2 { background: #D34836; }
603
+
604
+ .text-twitter { color: #4099ff; }
605
+ .text-facebook { color: #3B5998; }
606
+ .text-google_oauth2 { color: #D34836; }
607
+ }
608
+
609
+ .btn-twitter {
610
+ @apply bg-twitter text-white;
611
+ }
612
+
613
+ .btn-facebook {
614
+ @apply bg-facebook text-white;
615
+ }
616
+
617
+ .btn-github {
618
+ @apply bg-gray-500 text-white;
619
+ }
620
+
621
+ .btn-google_oauth2 {
622
+ @apply bg-google_oauth2 text-white;
623
+ }
624
+
625
+ .btn-microsoft_graph {
626
+ @apply bg-white text-slate-900 border border-slate-900;
627
+ }
628
+
629
+ // direct upload
630
+ .direct-upload {
631
+ display: inline-block;
632
+ position: relative;
633
+ padding: 2px 4px;
634
+ margin: 0 3px 3px 0;
635
+ border: 1px solid rgba(0, 0, 0, 0.3);
636
+ border-radius: 3px;
637
+ font-size: 11px;
638
+ line-height: 13px;
639
+ }
640
+
641
+ .direct-upload--pending {
642
+ opacity: 0.6;
643
+ }
644
+
645
+ .direct-upload__progress {
646
+ position: absolute;
647
+ top: 0;
648
+ left: 0;
649
+ bottom: 0;
650
+ opacity: 0.2;
651
+ background: #0076ff;
652
+ transition: width 120ms ease-out, opacity 60ms 60ms ease-in;
653
+ transform: translate3d(0, 0, 0);
654
+ }
655
+
656
+ .direct-upload--complete .direct-upload__progress {
657
+ opacity: 0.4;
658
+ }
659
+
660
+ .direct-upload--error {
661
+ border-color: red;
662
+ }
663
+
664
+ input[type=file][data-direct-upload-url][disabled] {
665
+ display: none;
666
+ }
667
+
668
+ // docs
669
+ .docs-main {
670
+ min-height: calc(100vh - 64px);
671
+ }
672
+
673
+ .image-placeholder {
674
+ height: 180px;
675
+
676
+ @apply bg-gray-300 flex items-center justify-center;
677
+ }
678
+
679
+ // forms
680
+ .form-group {
681
+ @apply mb-6 relative;
682
+ }
683
+
684
+ .form-input {
685
+ &[disabled] {
686
+ @apply bg-gray-200;
687
+ }
688
+ }
689
+
690
+ /* non-input elements (like the Stripe card form) can be styled to look like an input */
691
+ div.form-control {
692
+ -webkit-appearance: none;
693
+ -moz-appearance: none;
694
+ appearance: none;
695
+ background-color: #fff;
696
+ border-width: 1px;
697
+ padding-top: .5rem;
698
+ padding-right: .75rem;
699
+ padding-bottom: .5rem;
700
+ padding-left: .75rem;
701
+ font-size: 1rem;
702
+ line-height: 1.5rem;
703
+ }
704
+
705
+ @layer components {
706
+ .form-control {
707
+ @apply form-input block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-primary-600 sm:text-sm sm:leading-6;
708
+ @apply dark:bg-gray-700 dark:ring-gray-600 dark:placeholder-gray-300/50 dark:text-white dark:focus:ring-primary-500;
709
+
710
+ &[disabled], &[readonly] {
711
+ @apply bg-gray-200 dark:bg-gray-600;
712
+ }
713
+
714
+ &.error {
715
+ @apply border-red-300 dark:border-red-600;
716
+ }
717
+ }
718
+ }
719
+
720
+ select {
721
+ @apply sm:text-sm;
722
+ }
723
+
724
+ select:not([multiple]) {
725
+ @apply w-full mt-1 rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-primary-600 sm:text-sm sm:leading-6;
726
+ @apply dark:bg-gray-700 dark:ring-gray-600 dark:placeholder-gray-300/50 dark:text-white dark:focus:ring-primary-500;
727
+
728
+ &[disabled] {
729
+ @apply bg-gray-200 dark:bg-gray-600;
730
+ }
731
+ }
732
+
733
+ select[multiple] {
734
+ @apply w-full mt-1 rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-primary-600 sm:text-sm sm:leading-6;
735
+ @apply dark:bg-gray-700 dark:ring-gray-600 dark:placeholder-gray-300/50 dark:text-white dark:focus:ring-primary-500;
736
+
737
+ &[disabled] {
738
+ @apply bg-gray-200 dark:bg-gray-600;
739
+ }
740
+ }
741
+
742
+ label,
743
+ .label {
744
+ @apply block text-sm font-medium leading-5 text-gray-700 mb-1;
745
+ @apply dark:text-gray-100;
746
+ }
747
+
748
+ .form-hint {
749
+ @apply text-gray-600 dark:text-gray-300/75 text-xs italic;
750
+
751
+ &.error {
752
+ @apply text-red-500 text-sm italic leading-normal mt-1;
753
+ }
754
+ }
755
+
756
+ .caret {
757
+ @apply pointer-events-none absolute inset-y-0 right-0 flex items-center px-2 text-gray-800;
758
+ }
759
+
760
+ form.inline {
761
+ .form-group {
762
+ @apply flex justify-start items-center;
763
+ }
764
+
765
+ .form-group .input {
766
+ @apply flex-1;
767
+ }
768
+
769
+ .form-group .label {
770
+ @apply w-1/4;
771
+ }
772
+ }
773
+
774
+ /* Fix flatpickr */
775
+ .flatpickr-current-month .flatpickr-monthDropdown-months {
776
+ display: inline-block;
777
+ }
778
+
779
+ .form-checkbox {
780
+ @apply rounded border-gray-300 text-primary-600 focus:ring-primary-600;
781
+ @apply dark:border-white/10 dark:checked:bg-current dark:bg-white/5 dark:focus:ring-offset-gray-900;
782
+
783
+ &[disabled] {
784
+ @apply bg-gray-200 dark:bg-gray-600;
785
+ }
786
+ }
787
+
788
+ [type='checkbox'] {
789
+ @apply form-checkbox;
790
+ }
791
+
792
+ .form-radio {
793
+ @apply border-gray-300 text-primary-600 focus:ring-primary-600 dark:border-white/10 dark:bg-white/5 dark:focus:ring-offset-gray-900;
794
+
795
+ &[disabled] {
796
+ @apply bg-gray-200 dark:bg-gray-600;
797
+ }
798
+ }
799
+
800
+ [type='radio'] {
801
+ @apply form-radio;
802
+ }
803
+
804
+ .input-file {
805
+ height: auto;
806
+ z-index: 2;
807
+ cursor: pointer;
808
+
809
+ @apply opacity-0 inline-block pl-0 pr-0 py-3 px-3 overflow-hidden absolute border-none;
810
+
811
+ + label {
812
+ @apply inline-flex text-sm font-bold text-center px-4 py-0 rounded no-underline items-center justify-between cursor-pointer;
813
+
814
+ height: 40px;
815
+ line-height: 40px;
816
+ transition: ease 0.3s background, ease 0.3s transform, ease 0.2s color;
817
+
818
+ @apply btn;
819
+ @apply btn-tertiary;
820
+
821
+ &:focus {
822
+ outline: 1px dotted #000;
823
+ outline: -webkit-focus-ring-color auto 5px;
824
+ }
825
+ }
826
+ }
827
+
828
+ .switch, .toggle {
829
+ @apply relative;
830
+
831
+ input[type="checkbox"] {
832
+ @apply absolute top-2 left-0 opacity-0;
833
+
834
+ &:checked {
835
+ + label {
836
+ &:before {
837
+ @apply bg-blue-600 dark:bg-blue-400;
838
+ }
839
+
840
+ &:after {
841
+ @apply translate-x-[26px];
842
+ }
843
+ }
844
+ }
845
+ }
846
+
847
+ label {
848
+ @apply relative pl-16 pt-0.5 hover:cursor-pointer;
849
+
850
+ &:before {
851
+ @apply absolute bg-gray-200 dark:bg-gray-700 top-0 left-0 rounded-3xl h-6 w-[50px] content-[""] transition-colors duration-200 ease-in;
852
+ }
853
+
854
+ &:after {
855
+ @apply absolute top-0.5 left-0.5 rounded-full w-5 h-5 bg-white dark:bg-gray-400 content-[""] transition-transform duration-200 ease-in;
856
+ }
857
+ }
858
+ }
859
+
860
+ // icons
861
+ .icon-xs {
862
+ width: 12px;
863
+ height: auto;
864
+ }
865
+
866
+ .icon-sm {
867
+ width: 16px;
868
+ height: auto;
869
+ }
870
+
871
+ .icon {
872
+ width: 20px;
873
+ height: auto;
874
+ }
875
+
876
+ .icon-lg {
877
+ width: 32px;
878
+ height: auto;
879
+ }
880
+
881
+ .icon-xl {
882
+ width: 36px;
883
+ height: auto;
884
+ }
885
+
886
+ .icon-2xl {
887
+ width: 48px;
888
+ height: auto;
889
+ }
890
+
891
+ .icon-3xl {
892
+ width: 64px;
893
+ height: auto;
894
+ }
895
+
896
+ // iframe
897
+ /* A couple handy classes for responsive YouTube and other iframe embeds */
898
+ .embed-container {
899
+ position: relative;
900
+ padding-bottom: 56.25%;
901
+ height: 0;
902
+ overflow: hidden;
903
+ max-width: 100%;
904
+ }
905
+ .embed-container iframe, .embed-container object, .embed-container embed {
906
+ position: absolute;
907
+ top: 0;
908
+ left: 0;
909
+ width: 100%;
910
+ height: 100%;
911
+ }
912
+
913
+ // nav
914
+ .nav-link {
915
+ @apply block no-underline text-gray-500 hover:text-gray-800 dark:text-gray-200 dark:hover:text-gray-300 px-2 py-1 text-base font-medium whitespace-nowrap;
916
+ line-height: 30px;
917
+
918
+ &.active {
919
+ @apply font-semibold;
920
+ }
921
+
922
+ &:focus {
923
+ @apply text-gray-900;
924
+ }
925
+ }
926
+
927
+ @media (min-width: 1024px) {
928
+ .nav-link {
929
+ @apply inline-flex my-0 mr-3;
930
+ line-height: 40px;
931
+ }
932
+ }
933
+
934
+ /* Highlights unread notifications with background color */
935
+ [data-notifications-target="notification"]:not([data-read-at]) {
936
+ @apply bg-gray-100;
937
+ }
938
+
939
+ /* Highlights uninteracted notifications with blue dot */
940
+ [data-notifications-target="notification"]:not([data-interacted-at]) {
941
+ [uninteracted] {
942
+ @apply block;
943
+ }
944
+ }
945
+
946
+ .dropdown-menu {
947
+ min-width: 100%;
948
+
949
+ @screen lg {
950
+ min-width: 200px;
951
+ }
952
+ }
953
+
954
+ // pagination
955
+ /* Light Jumpstart theme for Pagy's default renderer */
956
+
957
+ .pagination {
958
+ @apply inline-flex flex-wrap items-center justify-start;
959
+
960
+ .page {
961
+ &:first-child a, &:first-child {
962
+ @apply rounded-tl rounded-bl;
963
+ }
964
+
965
+ &:last-child a, &:last-child {
966
+ @apply rounded-tr rounded-br;
967
+ }
968
+ }
969
+
970
+ .disabled, .gap {
971
+ @apply border relative block leading-tight bg-white text-gray-500 no-underline py-2 px-3;
972
+ @apply dark:bg-gray-800 dark:text-gray-400 dark:border-gray-600;
973
+ margin-left: -1px;
974
+ }
975
+
976
+ .page {
977
+ &.active {
978
+ @apply z-10 border border-blue-500 bg-blue-500 text-white relative block leading-tight no-underline py-2 px-3;
979
+ @apply dark:bg-blue-800 dark:text-gray-200 dark:border-blue-600;
980
+ margin-left: -1px;
981
+ }
982
+
983
+ a {
984
+ @apply border relative block leading-tight bg-white text-blue-500 no-underline py-2 px-3;
985
+ @apply dark:bg-gray-800 dark:text-gray-200 dark:border-gray-600;
986
+ margin-left: -1px;
987
+
988
+ &:hover {
989
+ @apply bg-gray-200 dark:bg-gray-700;
990
+ }
991
+ }
992
+ }
993
+ }
994
+
995
+ // tabs
996
+ .tab-active {
997
+ background: linear-gradient(116deg, #3957F4 22%, #2F87EE 90%);
998
+ border-radius: 4px 4px 0px 0px;
999
+
1000
+ a {
1001
+ @apply text-white;
1002
+
1003
+ &:hover,
1004
+ &:focus {
1005
+ background: linear-gradient(308deg, #3957F4 24%, #2F87EE 80%);
1006
+ border-radius: 4px 4px 0px 0px;
1007
+
1008
+ @apply text-gray-300;
1009
+ }
1010
+ }
1011
+ }
1012
+
1013
+ // trix
1014
+ @charset "UTF-8";
1015
+ trix-editor {
1016
+ @apply form-control;
1017
+ border-radius: 3px;
1018
+ margin: 0;
1019
+ padding: 0.4em 0.6em;
1020
+ min-height: 5em;
1021
+ outline: none;
1022
+ border-top-left-radius: 0;
1023
+ border-top-right-radius: 0;
1024
+ }
1025
+ trix-toolbar {
1026
+ @apply form-control;
1027
+ border-bottom: none;
1028
+ border-bottom-left-radius: 0;
1029
+ border-bottom-right-radius: 0;
1030
+ padding: 0;
1031
+ }
1032
+ trix-toolbar * {
1033
+ box-sizing: border-box;
1034
+ }
1035
+ trix-toolbar .trix-button-row {
1036
+ display: flex;
1037
+ flex-wrap: nowrap;
1038
+ justify-content: space-between;
1039
+ overflow-x: auto;
1040
+ }
1041
+ trix-toolbar .trix-button-group {
1042
+ display: flex;
1043
+ }
1044
+ @media (max-device-width: 768px) {
1045
+ trix-toolbar .trix-button-group:not(:first-child) {
1046
+ margin-left: 0;
1047
+ }
1048
+ }
1049
+ trix-toolbar .trix-button-group-spacer {
1050
+ flex-grow: 1;
1051
+ }
1052
+ @media (max-device-width: 768px) {
1053
+ trix-toolbar .trix-button-group-spacer {
1054
+ display: none;
1055
+ }
1056
+ }
1057
+ trix-toolbar .trix-button {
1058
+ position: relative;
1059
+ float: left;
1060
+ color: rgba(0, 0, 0, 0.6);
1061
+ font-size: 0.75em;
1062
+ font-weight: 600;
1063
+ white-space: nowrap;
1064
+ padding: 0 0.5em;
1065
+ margin: 0;
1066
+ outline: none;
1067
+ border: none;
1068
+ border-radius: 0;
1069
+ background: transparent;
1070
+ }
1071
+ trix-toolbar .trix-button.trix-active {
1072
+ background: #cbeefa;
1073
+ color: black;
1074
+ }
1075
+ trix-toolbar .trix-button:not(:disabled) {
1076
+ cursor: pointer;
1077
+ }
1078
+ trix-toolbar .trix-button:disabled {
1079
+ color: rgba(0, 0, 0, 0.125);
1080
+ }
1081
+ @media (max-device-width: 768px) {
1082
+ trix-toolbar .trix-button {
1083
+ letter-spacing: -0.01em;
1084
+ padding: 0 0.3em;
1085
+ }
1086
+ }
1087
+ trix-toolbar .trix-button--icon {
1088
+ font-size: inherit;
1089
+ width: 2.2em;
1090
+ height: 2.0em;
1091
+ max-width: calc(0.8em + 4vw);
1092
+ text-indent: -9999px;
1093
+ }
1094
+ @media (max-device-width: 768px) {
1095
+ trix-toolbar .trix-button--icon {
1096
+ height: 2em;
1097
+ max-width: calc(0.8em + 3.5vw);
1098
+ }
1099
+ }
1100
+ trix-toolbar .trix-button--icon::before {
1101
+ display: inline-block;
1102
+ position: absolute;
1103
+ top: 0;
1104
+ right: 0;
1105
+ bottom: 0;
1106
+ left: 0;
1107
+ opacity: 0.6;
1108
+ content: "";
1109
+ background-position: center;
1110
+ background-repeat: no-repeat;
1111
+ }
1112
+ @media (max-device-width: 768px) {
1113
+ trix-toolbar .trix-button--icon::before {
1114
+ right: 6%;
1115
+ left: 6%;
1116
+ }
1117
+ }
1118
+ trix-toolbar .trix-button--icon.trix-active::before {
1119
+ opacity: 1;
1120
+ }
1121
+ trix-toolbar .trix-button--icon:disabled::before {
1122
+ opacity: 0.125;
1123
+ }
1124
+ trix-toolbar .trix-button--icon-attach::before {
1125
+ background-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%3E%3Cpath%20d%3D%22M16.5%206v11.5a4%204%200%201%201-8%200V5a2.5%202.5%200%200%201%205%200v10.5a1%201%200%201%201-2%200V6H10v9.5a2.5%202.5%200%200%200%205%200V5a4%204%200%201%200-8%200v12.5a5.5%205.5%200%200%200%2011%200V6h-1.5z%22%2F%3E%3C%2Fsvg%3E);
1126
+ top: 8%;
1127
+ bottom: 4%;
1128
+ }
1129
+ trix-toolbar .trix-button--icon-bold::before {
1130
+ background-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%3E%3Cpath%20d%3D%22M15.6%2011.8c1-.7%201.6-1.8%201.6-2.8a4%204%200%200%200-4-4H7v14h7c2.1%200%203.7-1.7%203.7-3.8%200-1.5-.8-2.8-2.1-3.4zM10%207.5h3a1.5%201.5%200%201%201%200%203h-3v-3zm3.5%209H10v-3h3.5a1.5%201.5%200%201%201%200%203z%22%2F%3E%3C%2Fsvg%3E);
1131
+ }
1132
+ trix-toolbar .trix-button--icon-italic::before {
1133
+ background-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%3E%3Cpath%20d%3D%22M10%205v3h2.2l-3.4%208H6v3h8v-3h-2.2l3.4-8H18V5h-8z%22%2F%3E%3C%2Fsvg%3E);
1134
+ }
1135
+ trix-toolbar .trix-button--icon-link::before {
1136
+ background-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%3E%3Cpath%20d%3D%22M9.88%2013.7a4.3%204.3%200%200%201%200-6.07l3.37-3.37a4.26%204.26%200%200%201%206.07%200%204.3%204.3%200%200%201%200%206.06l-1.96%201.72a.91.91%200%201%201-1.3-1.3l1.97-1.71a2.46%202.46%200%200%200-3.48-3.48l-3.38%203.37a2.46%202.46%200%200%200%200%203.48.91.91%200%201%201-1.3%201.3z%22%2F%3E%3Cpath%20d%3D%22M4.25%2019.46a4.3%204.3%200%200%201%200-6.07l1.93-1.9a.91.91%200%201%201%201.3%201.3l-1.93%201.9a2.46%202.46%200%200%200%203.48%203.48l3.37-3.38c.96-.96.96-2.52%200-3.48a.91.91%200%201%201%201.3-1.3%204.3%204.3%200%200%201%200%206.07l-3.38%203.38a4.26%204.26%200%200%201-6.07%200z%22%2F%3E%3C%2Fsvg%3E);
1137
+ }
1138
+ trix-toolbar .trix-button--icon-strike::before {
1139
+ background-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%3E%3Cpath%20d%3D%22M12.73%2014l.28.14c.26.15.45.3.57.44.12.14.18.3.18.5%200%20.3-.15.56-.44.75-.3.2-.76.3-1.39.3A13.52%2013.52%200%200%201%207%2014.95v3.37a10.64%2010.64%200%200%200%204.84.88c1.26%200%202.35-.19%203.28-.56.93-.37%201.64-.9%202.14-1.57s.74-1.45.74-2.32c0-.26-.02-.51-.06-.75h-5.21zm-5.5-4c-.08-.34-.12-.7-.12-1.1%200-1.29.52-2.3%201.58-3.02%201.05-.72%202.5-1.08%204.34-1.08%201.62%200%203.28.34%204.97%201l-1.3%202.93c-1.47-.6-2.73-.9-3.8-.9-.55%200-.96.08-1.2.26-.26.17-.38.38-.38.64%200%20.27.16.52.48.74.17.12.53.3%201.05.53H7.23zM3%2013h18v-2H3v2z%22%2F%3E%3C%2Fsvg%3E);
1140
+ }
1141
+ trix-toolbar .trix-button--icon-quote::before {
1142
+ background-image: url(data:image/svg+xml,%3Csvg%20version%3D%221%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%3E%3Cpath%20d%3D%22M6%2017h3l2-4V7H5v6h3zm8%200h3l2-4V7h-6v6h3z%22%2F%3E%3C%2Fsvg%3E);
1143
+ }
1144
+ trix-toolbar .trix-button--icon-heading-1::before {
1145
+ background-image: url(data:image/svg+xml,%3Csvg%20version%3D%221%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%3E%3Cpath%20d%3D%22M12%209v3H9v7H6v-7H3V9h9zM8%204h14v3h-6v12h-3V7H8V4z%22%2F%3E%3C%2Fsvg%3E);
1146
+ }
1147
+ trix-toolbar .trix-button--icon-code::before {
1148
+ background-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%3E%3Cpath%20d%3D%22M18.2%2012L15%2015.2l1.4%201.4L21%2012l-4.6-4.6L15%208.8l3.2%203.2zM5.8%2012L9%208.8%207.6%207.4%203%2012l4.6%204.6L9%2015.2%205.8%2012z%22%2F%3E%3C%2Fsvg%3E);
1149
+ }
1150
+ trix-toolbar .trix-button--icon-bullet-list::before {
1151
+ background-image: url(data:image/svg+xml,%3Csvg%20version%3D%221%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%3E%3Cpath%20d%3D%22M4%204a2%202%200%201%200%200%204%202%202%200%200%200%200-4zm0%206a2%202%200%201%200%200%204%202%202%200%200%200%200-4zm0%206a2%202%200%201%200%200%204%202%202%200%200%200%200-4zm4%203h14v-2H8v2zm0-6h14v-2H8v2zm0-8v2h14V5H8z%22%2F%3E%3C%2Fsvg%3E);
1152
+ }
1153
+ trix-toolbar .trix-button--icon-number-list::before {
1154
+ background-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%3E%3Cpath%20d%3D%22M2%2017h2v.5H3v1h1v.5H2v1h3v-4H2v1zm1-9h1V4H2v1h1v3zm-1%203h1.8L2%2013.1v.9h3v-1H3.2L5%2010.9V10H2v1zm5-6v2h14V5H7zm0%2014h14v-2H7v2zm0-6h14v-2H7v2z%22%2F%3E%3C%2Fsvg%3E);
1155
+ }
1156
+ trix-toolbar .trix-button--icon-undo::before {
1157
+ background-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%3E%3Cpath%20d%3D%22M12.5%208c-2.6%200-5%201-6.9%202.6L2%207v9h9l-3.6-3.6A8%208%200%200%201%2020%2016l2.4-.8a10.5%2010.5%200%200%200-10-7.2z%22%2F%3E%3C%2Fsvg%3E);
1158
+ }
1159
+ trix-toolbar .trix-button--icon-redo::before {
1160
+ background-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%3E%3Cpath%20d%3D%22M18.4%2010.6a10.5%2010.5%200%200%200-16.9%204.6L4%2016a8%208%200%200%201%2012.7-3.6L13%2016h9V7l-3.6%203.6z%22%2F%3E%3C%2Fsvg%3E);
1161
+ }
1162
+ trix-toolbar .trix-button--icon-decrease-nesting-level::before {
1163
+ background-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%3E%3Cpath%20d%3D%22M3%2019h19v-2H3v2zm7-6h12v-2H10v2zm-8.3-.3l2.8%202.9L6%2014.2%204%2012l2-2-1.4-1.5L1%2012l.7.7zM3%205v2h19V5H3z%22%2F%3E%3C%2Fsvg%3E);
1164
+ }
1165
+ trix-toolbar .trix-button--icon-increase-nesting-level::before {
1166
+ background-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%3E%3Cpath%20d%3D%22M3%2019h19v-2H3v2zm7-6h12v-2H10v2zm-6.9-1L1%2014.2l1.4%201.4L6%2012l-.7-.7-2.8-2.8L1%209.9%203.1%2012zM3%205v2h19V5H3z%22%2F%3E%3C%2Fsvg%3E);
1167
+ }
1168
+ trix-toolbar .trix-dialogs {
1169
+ position: relative;
1170
+ }
1171
+ trix-toolbar .trix-dialog {
1172
+ position: absolute;
1173
+ top: 0;
1174
+ left: 0;
1175
+ right: 0;
1176
+ font-size: 0.75em;
1177
+ padding: 15px 10px;
1178
+ background: #fff;
1179
+ box-shadow: 0 0.3em 1em #ccc;
1180
+ border-top: 2px solid #888;
1181
+ border-radius: 5px;
1182
+ z-index: 5;
1183
+ }
1184
+ trix-toolbar .trix-input--dialog {
1185
+ font-size: inherit;
1186
+ font-weight: normal;
1187
+ padding: 0.5em 0.8em;
1188
+ margin: 0 10px 0 0;
1189
+ border-radius: 3px;
1190
+ border: 1px solid #bbb;
1191
+ background-color: #fff;
1192
+ box-shadow: none;
1193
+ outline: none;
1194
+ -webkit-appearance: none;
1195
+ -moz-appearance: none;
1196
+ }
1197
+ trix-toolbar .trix-input--dialog.validate:invalid {
1198
+ box-shadow: #F00 0px 0px 1.5px 1px;
1199
+ }
1200
+ trix-toolbar .trix-button--dialog {
1201
+ @apply btn btn-small btn-primary;
1202
+ font-size: inherit;
1203
+ }
1204
+ trix-toolbar .trix-dialog--link {
1205
+ max-width: 600px;
1206
+ }
1207
+ trix-toolbar .trix-dialog__link-fields {
1208
+ display: flex;
1209
+ align-items: baseline;
1210
+ }
1211
+ trix-toolbar .trix-dialog__link-fields .trix-input {
1212
+ flex: 1;
1213
+ width: 100%;
1214
+ }
1215
+ trix-toolbar .trix-dialog__link-fields .trix-button-group {
1216
+ flex: 0 0 content;
1217
+ margin: 0;
1218
+
1219
+ .trix-button--dialog:last-of-type {
1220
+ @apply ml-1;
1221
+ }
1222
+ }
1223
+ @media (max-device-width: 768px) {
1224
+ trix-toolbar .trix-dialog__link-fields {
1225
+ display: block;
1226
+
1227
+ .trix-button-group {
1228
+ @apply mt-2;
1229
+ }
1230
+ }
1231
+ }
1232
+
1233
+ trix-editor [data-trix-mutable]:not(.attachment__caption-editor) {
1234
+ -webkit-user-select: none;
1235
+ -moz-user-select: none;
1236
+ -ms-user-select: none;
1237
+ user-select: none;
1238
+ }
1239
+
1240
+ trix-editor [data-trix-mutable]::-moz-selection,
1241
+ trix-editor [data-trix-cursor-target]::-moz-selection, trix-editor [data-trix-mutable] ::-moz-selection {
1242
+ background: none;
1243
+ }
1244
+ trix-editor [data-trix-mutable]::selection,
1245
+ trix-editor [data-trix-cursor-target]::selection, trix-editor [data-trix-mutable] ::selection {
1246
+ background: none;
1247
+ }
1248
+
1249
+ trix-editor [data-trix-mutable].attachment__caption-editor:focus::-moz-selection {
1250
+ background: highlight;
1251
+ }
1252
+ trix-editor [data-trix-mutable].attachment__caption-editor:focus::selection {
1253
+ background: highlight;
1254
+ }
1255
+
1256
+ trix-editor [data-trix-mutable].attachment.attachment--file {
1257
+ box-shadow: 0 0 0 2px highlight;
1258
+ border-color: transparent;
1259
+ }
1260
+ trix-editor [data-trix-mutable].attachment img {
1261
+ box-shadow: 0 0 0 2px highlight;
1262
+ }
1263
+ trix-editor .attachment {
1264
+ position: relative;
1265
+ }
1266
+ trix-editor .attachment:hover {
1267
+ cursor: default;
1268
+ }
1269
+ trix-editor .attachment--preview .attachment__caption:hover {
1270
+ cursor: text;
1271
+ }
1272
+ trix-editor .attachment__progress {
1273
+ position: absolute;
1274
+ z-index: 1;
1275
+ height: 20px;
1276
+ top: calc(50% - 10px);
1277
+ left: 5%;
1278
+ width: 90%;
1279
+ opacity: 0.9;
1280
+ transition: opacity 200ms ease-in;
1281
+ }
1282
+ trix-editor .attachment__progress[value="100"] {
1283
+ opacity: 0;
1284
+ }
1285
+ trix-editor .attachment__caption-editor {
1286
+ display: inline-block;
1287
+ width: 100%;
1288
+ margin: 0;
1289
+ padding: 0;
1290
+ font-size: inherit;
1291
+ font-family: inherit;
1292
+ line-height: inherit;
1293
+ color: inherit;
1294
+ text-align: center;
1295
+ vertical-align: top;
1296
+ border: none;
1297
+ outline: none;
1298
+ -webkit-appearance: none;
1299
+ -moz-appearance: none;
1300
+ }
1301
+ trix-editor .attachment__toolbar {
1302
+ position: absolute;
1303
+ z-index: 1;
1304
+ top: -0.9em;
1305
+ left: 0;
1306
+ width: 100%;
1307
+ text-align: center;
1308
+ }
1309
+ trix-editor .trix-button-group {
1310
+ display: inline-flex;
1311
+ }
1312
+ trix-editor .trix-button {
1313
+ position: relative;
1314
+ float: left;
1315
+ color: #666;
1316
+ white-space: nowrap;
1317
+ font-size: 80%;
1318
+ padding: 0 0.8em;
1319
+ margin: 0;
1320
+ outline: none;
1321
+ border: none;
1322
+ border-radius: 0;
1323
+ background: transparent;
1324
+ }
1325
+ trix-editor .trix-button:not(:first-child) {
1326
+ border-left: 1px solid #ccc;
1327
+ }
1328
+ trix-editor .trix-button.trix-active {
1329
+ background: #cbeefa;
1330
+ }
1331
+ trix-editor .trix-button:not(:disabled) {
1332
+ cursor: pointer;
1333
+ }
1334
+ trix-editor .trix-button--remove {
1335
+ text-indent: -9999px;
1336
+ display: inline-block;
1337
+ padding: 0;
1338
+ outline: none;
1339
+ width: 1.8em;
1340
+ height: 1.8em;
1341
+ line-height: 1.8em;
1342
+ border-radius: 50%;
1343
+ background-color: #fff;
1344
+ border: 2px solid highlight;
1345
+ box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.25);
1346
+ }
1347
+ trix-editor .trix-button--remove::before {
1348
+ display: inline-block;
1349
+ position: absolute;
1350
+ top: 0;
1351
+ right: 0;
1352
+ bottom: 0;
1353
+ left: 0;
1354
+ opacity: 0.7;
1355
+ content: "";
1356
+ background-image: url(data:image/svg+xml,%3Csvg%20height%3D%2224%22%20width%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M19%206.4L17.6%205%2012%2010.6%206.4%205%205%206.4l5.6%205.6L5%2017.6%206.4%2019l5.6-5.6%205.6%205.6%201.4-1.4-5.6-5.6z%22%2F%3E%3Cpath%20d%3D%22M0%200h24v24H0z%22%20fill%3D%22none%22%2F%3E%3C%2Fsvg%3E);
1357
+ background-position: center;
1358
+ background-repeat: no-repeat;
1359
+ background-size: 90%;
1360
+ }
1361
+ trix-editor .trix-button--remove:hover {
1362
+ border-color: #333;
1363
+ }
1364
+ trix-editor .trix-button--remove:hover::before {
1365
+ opacity: 1;
1366
+ }
1367
+ trix-editor .attachment__metadata-container {
1368
+ position: relative;
1369
+ }
1370
+ trix-editor .attachment__metadata {
1371
+ position: absolute;
1372
+ left: 50%;
1373
+ top: 2em;
1374
+ transform: translate(-50%, 0);
1375
+ max-width: 90%;
1376
+ padding: 0.1em 0.6em;
1377
+ font-size: 0.8em;
1378
+ color: #fff;
1379
+ background-color: rgba(0, 0, 0, 0.7);
1380
+ border-radius: 3px;
1381
+ }
1382
+ trix-editor .attachment__metadata .attachment__name {
1383
+ display: inline-block;
1384
+ max-width: 100%;
1385
+ vertical-align: bottom;
1386
+ overflow: hidden;
1387
+ text-overflow: ellipsis;
1388
+ white-space: nowrap;
1389
+ }
1390
+ trix-editor .attachment__metadata .attachment__size {
1391
+ margin-left: 0.2em;
1392
+ white-space: nowrap;
1393
+ }
1394
+
1395
+ .trix-content {
1396
+ line-height: 1.5;
1397
+ }
1398
+ .trix-content * {
1399
+ box-sizing: border-box;
1400
+ margin: 0;
1401
+ padding: 0;
1402
+ }
1403
+ .trix-content h1 {
1404
+ font-size: 1.2em;
1405
+ line-height: 1.2;
1406
+ }
1407
+ .trix-content blockquote {
1408
+ border: 0 solid #ccc;
1409
+ border-left-width: 0.3em;
1410
+ margin-left: 0.3em;
1411
+ padding-left: 0.6em;
1412
+ }
1413
+ .trix-content [dir=rtl] blockquote,
1414
+ .trix-content blockquote[dir=rtl] {
1415
+ border-width: 0;
1416
+ border-right-width: 0.3em;
1417
+ margin-right: 0.3em;
1418
+ padding-right: 0.6em;
1419
+ }
1420
+ .trix-content li {
1421
+ margin-left: 1em;
1422
+ }
1423
+ .trix-content [dir=rtl] li {
1424
+ margin-right: 1em;
1425
+ }
1426
+ .trix-content pre {
1427
+ display: inline-block;
1428
+ width: 100%;
1429
+ vertical-align: top;
1430
+ font-family: monospace;
1431
+ font-size: 0.9em;
1432
+ padding: 0.5em;
1433
+ white-space: pre;
1434
+ background-color: #eee;
1435
+ overflow-x: auto;
1436
+ }
1437
+ .trix-content img {
1438
+ max-width: 100%;
1439
+ height: auto;
1440
+ }
1441
+ .trix-content .attachment {
1442
+ display: inline-block;
1443
+ position: relative;
1444
+ max-width: 100%;
1445
+ }
1446
+ .trix-content .attachment a {
1447
+ color: inherit;
1448
+ text-decoration: none;
1449
+ }
1450
+ .trix-content .attachment a:hover, .trix-content .attachment a:visited:hover {
1451
+ color: inherit;
1452
+ }
1453
+ .trix-content .attachment__caption {
1454
+ text-align: center;
1455
+ }
1456
+ .trix-content .attachment__caption .attachment__name + .attachment__size::before {
1457
+ content: ' · ';
1458
+ }
1459
+ .trix-content .attachment--preview {
1460
+ width: 100%;
1461
+ text-align: center;
1462
+ }
1463
+ .trix-content .attachment--preview .attachment__caption {
1464
+ color: #666;
1465
+ font-size: 0.9em;
1466
+ line-height: 1.2;
1467
+ }
1468
+ .trix-content .attachment--file {
1469
+ color: #333;
1470
+ line-height: 1;
1471
+ margin: 0 2px 2px 2px;
1472
+ padding: 0.4em 1em;
1473
+ border: 1px solid #bbb;
1474
+ border-radius: 5px;
1475
+ }
1476
+ .trix-content .attachment-gallery {
1477
+ display: flex;
1478
+ flex-wrap: wrap;
1479
+ position: relative;
1480
+
1481
+ }
1482
+ .trix-content .attachment-gallery .attachment {
1483
+ flex: 1 0 33%;
1484
+ padding: 0 0.5em;
1485
+ max-width: 33%;
1486
+
1487
+ }
1488
+ .trix-content .attachment-gallery.attachment-gallery--2 .attachment, .trix-content .attachment-gallery.attachment-gallery--4 .attachment {
1489
+ flex-basis: 50%;
1490
+ max-width: 50%;
1491
+ }
1492
+
1493
+
1494
+ /* JSP customizations */
1495
+ html.dark .trix-content pre {
1496
+ @apply bg-gray-800 text-white;
1497
+ }
1498
+
1499
+ // typography
1500
+ .font-display {
1501
+ @apply text-5xl font-bold leading-tight tracking-tight;
1502
+ }
1503
+
1504
+
1505
+ h1, .h1 {
1506
+ @apply text-4xl font-bold leading-tight tracking-tight;
1507
+ }
1508
+
1509
+ h2, .h2 {
1510
+ @apply text-3xl font-bold leading-tight;
1511
+ }
1512
+
1513
+ h3, .h3 {
1514
+ @apply text-2xl font-bold leading-normal;
1515
+ }
1516
+
1517
+ h4, .h4 {
1518
+ @apply text-xl font-bold leading-normal;
1519
+ }
1520
+
1521
+ h5, .h5 {
1522
+ @apply text-lg font-bold leading-normal;
1523
+ }
1524
+
1525
+ h6, .h6 {
1526
+ @apply font-bold;
1527
+ }
1528
+
1529
+ .link {
1530
+ @apply text-blue-500;
1531
+
1532
+ &:hover,
1533
+ &:focus {
1534
+ @apply text-blue-600;
1535
+ }
1536
+ }
1537
+
1538
+ // util
1539
+ .sr-only {
1540
+ border: 0;
1541
+ clip: rect(0, 0, 0, 0);
1542
+ height: 1px;
1543
+ overflow: hidden;
1544
+ padding: 0;
1545
+ position: absolute;
1546
+ white-space: nowrap;
1547
+ width: 1px;
1548
+ }
1549
+
1550
+ .transition {
1551
+ transition: ease-in-out 0.2s all;
1552
+ }
1553
+
1554
+ /* Chrome, Safari and Opera */
1555
+ .no-scrollbar::-webkit-scrollbar {
1556
+ display: none;
1557
+ }
1558
+
1559
+ .no-scrollbar {
1560
+ -ms-overflow-style: none; /* IE and Edge */
1561
+ scrollbar-width: none; /* Firefox */
1562
+ }
1563
+