revise_auth-jets 0.3.0 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -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
+