create-lupine 1.0.13 → 1.0.15

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.
Files changed (42) hide show
  1. package/index.js +32 -2
  2. package/package.json +1 -1
  3. package/templates/common/AI_CONTEXT.md +245 -50
  4. package/templates/common/dev/cp-folder.js +2 -6
  5. package/templates/cv-starter/web/src/index.html +1 -1
  6. package/templates/doc-starter/web/src/index.html +1 -1
  7. package/templates/hello-world/web/src/index.html +1 -1
  8. package/templates/hello-world/web/src/index.tsx +54 -15
  9. package/templates/hello-world/web/src/styles/global.css +63 -0
  10. package/templates/responsive-starter/api/package.json +6 -0
  11. package/templates/responsive-starter/api/resources/config_default.json +6 -0
  12. package/templates/responsive-starter/api/resources/install.sqlite.sql +4 -0
  13. package/templates/responsive-starter/api/src/index.ts +4 -0
  14. package/templates/responsive-starter/api/src/service/root-api.ts +18 -0
  15. package/templates/responsive-starter/lupine.json +23 -0
  16. package/templates/responsive-starter/web/assets/favicon.ico +0 -0
  17. package/templates/responsive-starter/web/package.json +6 -0
  18. package/templates/responsive-starter/web/src/app-icons.ts +72 -0
  19. package/templates/responsive-starter/web/src/components/input-history-component.tsx +93 -0
  20. package/templates/responsive-starter/web/src/components/mine-about-page.tsx +86 -0
  21. package/templates/responsive-starter/web/src/components/mine-premium-page.tsx +80 -0
  22. package/templates/responsive-starter/web/src/components/mine-settings-page.tsx +219 -0
  23. package/templates/responsive-starter/web/src/components/mobile-top-search-menu.tsx +119 -0
  24. package/templates/responsive-starter/web/src/components/note-detail.tsx +116 -0
  25. package/templates/responsive-starter/web/src/components/note-edit.tsx +154 -0
  26. package/templates/responsive-starter/web/src/components/note-search-page.tsx +193 -0
  27. package/templates/responsive-starter/web/src/components/search-input.tsx +95 -0
  28. package/templates/responsive-starter/web/src/components/side-menu-content.tsx +178 -0
  29. package/templates/responsive-starter/web/src/frames/app-responsive-frame.tsx +46 -0
  30. package/templates/responsive-starter/web/src/index.html +16 -0
  31. package/templates/responsive-starter/web/src/index.tsx +42 -0
  32. package/templates/responsive-starter/web/src/pages/about-page.tsx +43 -0
  33. package/templates/responsive-starter/web/src/pages/finance-page.tsx +46 -0
  34. package/templates/responsive-starter/web/src/pages/home-page.tsx +452 -0
  35. package/templates/responsive-starter/web/src/pages/mine-page.tsx +325 -0
  36. package/templates/responsive-starter/web/src/pages/tools-page.tsx +46 -0
  37. package/templates/responsive-starter/web/src/services/local-notes-service.ts +87 -0
  38. package/templates/responsive-starter/web/src/services/mine-service.ts +45 -0
  39. package/templates/responsive-starter/web/src/styles/app.css +0 -0
  40. package/templates/responsive-starter/web/src/styles/base-css.ts +65 -0
  41. package/templates/responsive-starter/web/src/styles/global.css +2143 -0
  42. package/templates/responsive-starter/web/src/styles/theme.ts +16 -0
@@ -0,0 +1,2143 @@
1
+ /*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
2
+ html,
3
+ body,
4
+ div,
5
+ span,
6
+ iframe,
7
+ h1,
8
+ h2,
9
+ h3,
10
+ h4,
11
+ h5,
12
+ h6,
13
+ p,
14
+ pre,
15
+ a,
16
+ img,
17
+ b,
18
+ u,
19
+ i,
20
+ center,
21
+ dl,
22
+ dt,
23
+ dd,
24
+ ol,
25
+ ul,
26
+ li,
27
+ fieldset,
28
+ form,
29
+ label,
30
+ legend,
31
+ table,
32
+ caption,
33
+ tbody,
34
+ tfoot,
35
+ thead,
36
+ tr,
37
+ th,
38
+ td {
39
+ margin: 0;
40
+ padding: 0;
41
+ border: 0;
42
+ font-size: 100%;
43
+ font: inherit;
44
+ vertical-align: baseline;
45
+ }
46
+
47
+ applet,
48
+ object,
49
+ article,
50
+ aside,
51
+ canvas,
52
+ details,
53
+ embed,
54
+ figure,
55
+ figcaption,
56
+ footer,
57
+ header,
58
+ hgroup,
59
+ blockquote,
60
+ menu,
61
+ nav,
62
+ output,
63
+ ruby,
64
+ section,
65
+ summary,
66
+ time,
67
+ mark,
68
+ audio,
69
+ video,
70
+ abbr,
71
+ acronym,
72
+ address,
73
+ big,
74
+ cite,
75
+ code,
76
+ del,
77
+ dfn,
78
+ em,
79
+ ins,
80
+ kbd,
81
+ q,
82
+ s,
83
+ samp,
84
+ small,
85
+ strike,
86
+ strong,
87
+ sub,
88
+ sup,
89
+ tt,
90
+ var {
91
+ margin: 0;
92
+ padding: 0;
93
+ border: 0;
94
+ font-size: 100%;
95
+ font: inherit;
96
+ vertical-align: baseline;
97
+ }
98
+
99
+ /* HTML5 display-role reset for older browsers */
100
+ article,
101
+ aside,
102
+ details,
103
+ figcaption,
104
+ figure,
105
+ footer,
106
+ header,
107
+ hgroup,
108
+ menu,
109
+ nav,
110
+ section {
111
+ display: block;
112
+ }
113
+
114
+ /**
115
+ * 1. Correct the line height in all browsers.
116
+ * 2. Prevent adjustments of font size after orientation changes in iOS.
117
+ */
118
+
119
+ html {
120
+ line-height: 115%;
121
+ /* 1 */
122
+ -webkit-text-size-adjust: 100%;
123
+ /* 2 */
124
+ }
125
+
126
+ /* line-height=1 means the line-height is the same as the font-size.
127
+ This causes the font to slightly overflow the line (scroll showing).
128
+ */
129
+ /* body {
130
+ line-height: 115%;
131
+ } */
132
+
133
+ ol,
134
+ ul {
135
+ list-style: none;
136
+ }
137
+
138
+ blockquote,
139
+ q {
140
+ quotes: none;
141
+ }
142
+
143
+ blockquote:before,
144
+ blockquote:after,
145
+ q:before,
146
+ q:after {
147
+ content: '';
148
+ content: none;
149
+ }
150
+
151
+ table {
152
+ border-collapse: collapse;
153
+ border-spacing: 0;
154
+ }
155
+
156
+ *,
157
+ *:before,
158
+ *:after {
159
+ box-sizing: border-box;
160
+ /* default is content-box */
161
+ }
162
+
163
+ html,
164
+ body {
165
+ width: 100%;
166
+ height: 100%;
167
+ margin: 0;
168
+ padding: 0;
169
+ touch-action: none;
170
+ overflow: hidden;
171
+ }
172
+
173
+ /* h1 {
174
+ font-size: 2.5rem;
175
+ }
176
+
177
+ h2 {
178
+ font-size: 2rem;
179
+ }
180
+
181
+ h3 {
182
+ font-size: 1.375rem;
183
+ }
184
+
185
+ h4 {
186
+ font-size: 1.125rem;
187
+ }
188
+
189
+ h5 {
190
+ font-size: 1rem;
191
+ }
192
+
193
+ h6 {
194
+ font-size: 0.875rem;
195
+ } */
196
+
197
+ /* Grouping content
198
+ ========================================================================== */
199
+
200
+ /**
201
+ * 1. Add the correct box sizing in Firefox.
202
+ * 2. Show the overflow in Edge and IE.
203
+ */
204
+
205
+ hr {
206
+ box-sizing: content-box;
207
+ /* 1 */
208
+ height: 0;
209
+ /* 1 */
210
+ overflow: visible;
211
+ /* 2 */
212
+ }
213
+
214
+ /**
215
+ * 1. Correct the inheritance and scaling of font size in all browsers.
216
+ * 2. Correct the odd `em` font sizing in all browsers.
217
+ */
218
+
219
+ pre {
220
+ font-family: monospace, monospace;
221
+ /* 1 */
222
+ font-size: 1em;
223
+ /* 2 */
224
+ }
225
+
226
+ /* Text-level semantics
227
+ ========================================================================== */
228
+
229
+ /**
230
+ * 1. Remove the bottom border in Chrome 57-
231
+ * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
232
+ */
233
+
234
+ abbr[title] {
235
+ border-bottom: none;
236
+ /* 1 */
237
+ text-decoration: underline;
238
+ /* 2 */
239
+ text-decoration: underline dotted;
240
+ /* 2 */
241
+ }
242
+
243
+ /**
244
+ * Add the correct font weight in Chrome, Edge, and Safari.
245
+ */
246
+
247
+ b,
248
+ strong {
249
+ font-weight: bolder;
250
+ }
251
+
252
+ /**
253
+ * 1. Correct the inheritance and scaling of font size in all browsers.
254
+ * 2. Correct the odd `em` font sizing in all browsers.
255
+ */
256
+
257
+ code,
258
+ kbd,
259
+ samp {
260
+ font-family: monospace, monospace;
261
+ /* 1 */
262
+ font-size: 1em;
263
+ /* 2 */
264
+ }
265
+
266
+ /**
267
+ * Add the correct font size in all browsers.
268
+ */
269
+
270
+ small {
271
+ font-size: 80%;
272
+ }
273
+
274
+ /**
275
+ * Prevent `sub` and `sup` elements from affecting the line height in
276
+ * all browsers.
277
+ */
278
+
279
+ sub,
280
+ sup {
281
+ font-size: 75%;
282
+ line-height: 0;
283
+ position: relative;
284
+ vertical-align: baseline;
285
+ }
286
+
287
+ sub {
288
+ bottom: -0.25em;
289
+ }
290
+
291
+ sup {
292
+ top: -0.5em;
293
+ }
294
+
295
+ /* Embedded content
296
+ ========================================================================== */
297
+
298
+ /* Forms
299
+ ========================================================================== */
300
+
301
+ /**
302
+ * 1. Change the font styles in all browsers.
303
+ * 2. Remove the margin in Firefox and Safari.
304
+ */
305
+
306
+ button,
307
+ input,
308
+ optgroup,
309
+ select,
310
+ textarea {
311
+ font-family: inherit;
312
+ /* 1 */
313
+ font-size: 100%;
314
+ /* 1 */
315
+ line-height: 1.15;
316
+ /* 1 */
317
+ margin: 0;
318
+ /* 2 */
319
+ }
320
+
321
+ /**
322
+ * Show the overflow in Edge.
323
+ */
324
+
325
+ button,
326
+ input {
327
+ overflow: visible;
328
+ }
329
+
330
+ /**
331
+ * Remove the inheritance of text transform in Edge, Firefox, and IE.
332
+ * 1. Remove the inheritance of text transform in Firefox.
333
+ */
334
+
335
+ button,
336
+ select {
337
+ /* 1 */
338
+ text-transform: none;
339
+ }
340
+
341
+ /**
342
+ * Correct the inability to style clickable types in iOS and Safari.
343
+ */
344
+
345
+ button,
346
+ [type='button'],
347
+ [type='reset'],
348
+ [type='submit'] {
349
+ -webkit-appearance: button;
350
+ }
351
+
352
+ /**
353
+ * Remove the inner border and padding in Firefox.
354
+ */
355
+
356
+ button::-moz-focus-inner,
357
+ [type='button']::-moz-focus-inner,
358
+ [type='reset']::-moz-focus-inner,
359
+ [type='submit']::-moz-focus-inner {
360
+ border-style: none;
361
+ padding: 0;
362
+ }
363
+
364
+ /**
365
+ * Restore the focus styles unset by the previous rule.
366
+ */
367
+
368
+ button:-moz-focusring,
369
+ [type='button']:-moz-focusring,
370
+ [type='reset']:-moz-focusring,
371
+ [type='submit']:-moz-focusring {
372
+ outline: 1px dotted ButtonText;
373
+ }
374
+
375
+ /**
376
+ * Correct the padding in Firefox.
377
+ */
378
+
379
+ fieldset {
380
+ padding: 0.35em 0.75em 0.625em;
381
+ }
382
+
383
+ /**
384
+ * 1. Correct the text wrapping in Edge and IE.
385
+ * 2. Correct the color inheritance from `fieldset` elements in IE.
386
+ * 3. Remove the padding so developers are not caught out when they zero out
387
+ * `fieldset` elements in all browsers.
388
+ */
389
+
390
+ legend {
391
+ box-sizing: border-box;
392
+ /* 1 */
393
+ color: inherit;
394
+ /* 2 */
395
+ display: table;
396
+ /* 1 */
397
+ max-width: 100%;
398
+ /* 1 */
399
+ padding: 0;
400
+ /* 3 */
401
+ white-space: normal;
402
+ /* 1 */
403
+ }
404
+
405
+ /**
406
+ * Add the correct vertical alignment in Chrome, Firefox, and Opera.
407
+ */
408
+
409
+ progress {
410
+ vertical-align: baseline;
411
+ }
412
+
413
+ /**
414
+ * Correct the cursor style of increment and decrement buttons in Chrome.
415
+ */
416
+
417
+ [type='number']::-webkit-inner-spin-button,
418
+ [type='number']::-webkit-outer-spin-button {
419
+ height: auto;
420
+ }
421
+
422
+ /**
423
+ * 1. Correct the odd appearance in Chrome and Safari.
424
+ * 2. Correct the outline style in Safari.
425
+ */
426
+
427
+ [type='search'] {
428
+ -webkit-appearance: textfield;
429
+ /* 1 */
430
+ outline-offset: -2px;
431
+ /* 2 */
432
+ }
433
+
434
+ /**
435
+ * Remove the inner padding in Chrome and Safari on macOS.
436
+ */
437
+
438
+ [type='search']::-webkit-search-decoration {
439
+ -webkit-appearance: none;
440
+ }
441
+
442
+ /**
443
+ * 1. Correct the inability to style clickable types in iOS and Safari.
444
+ * 2. Change font properties to `inherit` in Safari.
445
+ */
446
+
447
+ ::-webkit-file-upload-button {
448
+ -webkit-appearance: button;
449
+ /* 1 */
450
+ font: inherit;
451
+ /* 2 */
452
+ }
453
+
454
+ /* lupine.web system */
455
+ .lupine-root {
456
+ width: 100%;
457
+ height: 100%;
458
+ }
459
+
460
+ /* to make this tag as a ghost tag in Lupine.js system */
461
+ fragment {
462
+ display: contents;
463
+ }
464
+
465
+ ::-webkit-scrollbar {
466
+ background-color: var(--scrollbar-bg);
467
+ width: 12px;
468
+ height: 12px;
469
+ border-radius: 6px;
470
+ }
471
+
472
+ ::-webkit-scrollbar-track {
473
+ background-color: transparent;
474
+ }
475
+
476
+ ::-webkit-scrollbar-thumb {
477
+ background-color: var(--scrollbar-thumb-bg);
478
+ -webkit-border-radius: 6px;
479
+ background-clip: padding-box;
480
+ border: 2px solid transparent;
481
+ border-width: 3px 3px 3px 2px;
482
+ /* min-height: 45px; */
483
+ }
484
+
485
+ ::-webkit-scrollbar-thumb:hover,
486
+ ::-webkit-scrollbar-thumb:active {
487
+ background-color: var(--scrollbar-active-thumb-bg);
488
+ }
489
+
490
+ ::-webkit-scrollbar-corner {
491
+ background: transparent;
492
+ }
493
+
494
+ /* you need to set overflow to auto */
495
+ .no-scrollbar-container {
496
+ scrollbar-width: none;
497
+ -webkit-overflow-scrolling: touch;
498
+ }
499
+ .no-scrollbar-container::-webkit-scrollbar {
500
+ display: none;
501
+ }
502
+ /* -------------------------- */
503
+
504
+ .row-box > * {
505
+ display: inline-block;
506
+ align-self: center;
507
+ }
508
+
509
+ .row-box {
510
+ display: flex;
511
+ flex-wrap: wrap;
512
+ }
513
+
514
+ /* grid system */
515
+ :root {
516
+ --grid-gutter: 1rem;
517
+ }
518
+
519
+ .d-grid {
520
+ display: grid;
521
+ gap: 0.5rem;
522
+ }
523
+
524
+ .grid-gap {
525
+ gap: 0.5rem;
526
+ }
527
+ .grid-gap-0 {
528
+ gap: 0;
529
+ }
530
+ .grid-gap-ss {
531
+ gap: 0.15rem;
532
+ }
533
+ .grid-gap-s {
534
+ gap: 0.35rem;
535
+ }
536
+ .grid-gap-m {
537
+ gap: 0.75rem;
538
+ }
539
+ .grid-gap-l {
540
+ gap: 1rem;
541
+ }
542
+ .grid-gap-ll {
543
+ gap: 1.5rem;
544
+ }
545
+
546
+ .container {
547
+ margin: 0 auto;
548
+ width: 100%;
549
+ }
550
+
551
+ .row {
552
+ display: flex;
553
+ flex-wrap: wrap;
554
+ justify-content: flex-start;
555
+ margin-left: calc(var(--grid-gutter) / -2);
556
+ margin-right: calc(var(--grid-gutter) / -2);
557
+ }
558
+
559
+ .row.reverse {
560
+ flex-direction: row-reverse;
561
+ }
562
+
563
+ .col {
564
+ flex: 1;
565
+ }
566
+
567
+ .col,
568
+ [class*=' col-'],
569
+ [class^='col-'] {
570
+ margin: calc(var(--grid-gutter) / 2) calc(var(--grid-gutter) / 2);
571
+ }
572
+ /* for a column with fixed width */
573
+ .col-0 {
574
+ width: auto;
575
+ }
576
+
577
+ .col-1 {
578
+ flex: 0 0 calc((100% / (12 / 1)) - var(--grid-gutter));
579
+ max-width: calc((100% / (12 / 1)) - var(--grid-gutter));
580
+ }
581
+
582
+ .col-2 {
583
+ flex: 0 0 calc((100% / (12 / 2)) - var(--grid-gutter));
584
+ max-width: calc((100% / (12 / 2)) - var(--grid-gutter));
585
+ }
586
+
587
+ .col-3 {
588
+ flex: 0 0 calc((100% / (12 / 3)) - var(--grid-gutter));
589
+ max-width: calc((100% / (12 / 3)) - var(--grid-gutter));
590
+ }
591
+
592
+ .col-4 {
593
+ flex: 0 0 calc((100% / (12 / 4)) - var(--grid-gutter));
594
+ max-width: calc((100% / (12 / 4)) - var(--grid-gutter));
595
+ }
596
+
597
+ .col-5 {
598
+ flex: 0 0 calc((100% / (12 / 5)) - var(--grid-gutter));
599
+ max-width: calc((100% / (12 / 5)) - var(--grid-gutter));
600
+ }
601
+
602
+ .col-6 {
603
+ flex: 0 0 calc((100% / (12 / 6)) - var(--grid-gutter));
604
+ max-width: calc((100% / (12 / 6)) - var(--grid-gutter));
605
+ }
606
+
607
+ .col-7 {
608
+ flex: 0 0 calc((100% / (12 / 7)) - var(--grid-gutter));
609
+ max-width: calc((100% / (12 / 7)) - var(--grid-gutter));
610
+ }
611
+
612
+ .col-8 {
613
+ flex: 0 0 calc((100% / (12 / 8)) - var(--grid-gutter));
614
+ max-width: calc((100% / (12 / 8)) - var(--grid-gutter));
615
+ }
616
+
617
+ .col-9 {
618
+ flex: 0 0 calc((100% / (12 / 9)) - var(--grid-gutter));
619
+ max-width: calc((100% / (12 / 9)) - var(--grid-gutter));
620
+ }
621
+
622
+ .col-10 {
623
+ flex: 0 0 calc((100% / (12 / 10)) - var(--grid-gutter));
624
+ max-width: calc((100% / (12 / 10)) - var(--grid-gutter));
625
+ }
626
+
627
+ .col-11 {
628
+ flex: 0 0 calc((100% / (12 / 11)) - var(--grid-gutter));
629
+ max-width: calc((100% / (12 / 11)) - var(--grid-gutter));
630
+ }
631
+
632
+ .col-12 {
633
+ flex: 0 0 calc((100% / (12 / 12)) - var(--grid-gutter));
634
+ max-width: calc((100% / (12 / 12)) - var(--grid-gutter));
635
+ }
636
+
637
+ .col-full {
638
+ flex: 1;
639
+ }
640
+
641
+ @media screen and (max-width: 767px) {
642
+ .container {
643
+ width: 100%;
644
+ }
645
+
646
+ .col,
647
+ [class*='col-'],
648
+ [class^='col-'] {
649
+ flex: 0 1 100%;
650
+ max-width: 100%;
651
+ }
652
+ }
653
+
654
+ @media screen and (min-width: 991px) {
655
+ .col-1-md {
656
+ flex: 0 0 calc((100% / (12 / 1)) - var(--grid-gutter));
657
+ max-width: calc((100% / (12 / 1)) - var(--grid-gutter));
658
+ }
659
+
660
+ .col-2-md {
661
+ flex: 0 0 calc((100% / (12 / 2)) - var(--grid-gutter));
662
+ max-width: calc((100% / (12 / 2)) - var(--grid-gutter));
663
+ }
664
+
665
+ .col-3-md {
666
+ flex: 0 0 calc((100% / (12 / 3)) - var(--grid-gutter));
667
+ max-width: calc((100% / (12 / 3)) - var(--grid-gutter));
668
+ }
669
+
670
+ .col-4-md {
671
+ flex: 0 0 calc((100% / (12 / 4)) - var(--grid-gutter));
672
+ max-width: calc((100% / (12 / 4)) - var(--grid-gutter));
673
+ }
674
+
675
+ .col-5-md {
676
+ flex: 0 0 calc((100% / (12 / 5)) - var(--grid-gutter));
677
+ max-width: calc((100% / (12 / 5)) - var(--grid-gutter));
678
+ }
679
+
680
+ .col-6-md {
681
+ flex: 0 0 calc((100% / (12 / 6)) - var(--grid-gutter));
682
+ max-width: calc((100% / (12 / 6)) - var(--grid-gutter));
683
+ }
684
+
685
+ .col-7-md {
686
+ flex: 0 0 calc((100% / (12 / 7)) - var(--grid-gutter));
687
+ max-width: calc((100% / (12 / 7)) - var(--grid-gutter));
688
+ }
689
+
690
+ .col-8-md {
691
+ flex: 0 0 calc((100% / (12 / 8)) - var(--grid-gutter));
692
+ max-width: calc((100% / (12 / 8)) - var(--grid-gutter));
693
+ }
694
+
695
+ .col-9-md {
696
+ flex: 0 0 calc((100% / (12 / 9)) - var(--grid-gutter));
697
+ max-width: calc((100% / (12 / 9)) - var(--grid-gutter));
698
+ }
699
+
700
+ .col-10-md {
701
+ flex: 0 0 calc((100% / (12 / 10)) - var(--grid-gutter));
702
+ max-width: calc((100% / (12 / 10)) - var(--grid-gutter));
703
+ }
704
+
705
+ .col-11-md {
706
+ flex: 0 0 calc((100% / (12 / 11)) - var(--grid-gutter));
707
+ max-width: calc((100% / (12 / 11)) - var(--grid-gutter));
708
+ }
709
+
710
+ .col-12-md {
711
+ flex: 0 0 calc((100% / (12 / 12)) - var(--grid-gutter));
712
+ max-width: calc((100% / (12 / 12)) - var(--grid-gutter));
713
+ }
714
+ }
715
+
716
+ @media screen and (min-width: 1399px) {
717
+ .col-1-lg {
718
+ flex: 0 0 calc((100% / (12 / 1)) - var(--grid-gutter));
719
+ max-width: calc((100% / (12 / 1)) - var(--grid-gutter));
720
+ }
721
+
722
+ .col-2-lg {
723
+ flex: 0 0 calc((100% / (12 / 2)) - var(--grid-gutter));
724
+ max-width: calc((100% / (12 / 2)) - var(--grid-gutter));
725
+ }
726
+
727
+ .col-3-lg {
728
+ flex: 0 0 calc((100% / (12 / 3)) - var(--grid-gutter));
729
+ max-width: calc((100% / (12 / 3)) - var(--grid-gutter));
730
+ }
731
+
732
+ .col-4-lg {
733
+ flex: 0 0 calc((100% / (12 / 4)) - var(--grid-gutter));
734
+ max-width: calc((100% / (12 / 4)) - var(--grid-gutter));
735
+ }
736
+
737
+ .col-5-lg {
738
+ flex: 0 0 calc((100% / (12 / 5)) - var(--grid-gutter));
739
+ max-width: calc((100% / (12 / 5)) - var(--grid-gutter));
740
+ }
741
+
742
+ .col-6-lg {
743
+ flex: 0 0 calc((100% / (12 / 6)) - var(--grid-gutter));
744
+ max-width: calc((100% / (12 / 6)) - var(--grid-gutter));
745
+ }
746
+
747
+ .col-7-lg {
748
+ flex: 0 0 calc((100% / (12 / 7)) - var(--grid-gutter));
749
+ max-width: calc((100% / (12 / 7)) - var(--grid-gutter));
750
+ }
751
+
752
+ .col-8-lg {
753
+ flex: 0 0 calc((100% / (12 / 8)) - var(--grid-gutter));
754
+ max-width: calc((100% / (12 / 8)) - var(--grid-gutter));
755
+ }
756
+
757
+ .col-9-lg {
758
+ flex: 0 0 calc((100% / (12 / 9)) - var(--grid-gutter));
759
+ max-width: calc((100% / (12 / 9)) - var(--grid-gutter));
760
+ }
761
+
762
+ .col-10-lg {
763
+ flex: 0 0 calc((100% / (12 / 10)) - var(--grid-gutter));
764
+ max-width: calc((100% / (12 / 10)) - var(--grid-gutter));
765
+ }
766
+
767
+ .col-11-lg {
768
+ flex: 0 0 calc((100% / (12 / 11)) - var(--grid-gutter));
769
+ max-width: calc((100% / (12 / 11)) - var(--grid-gutter));
770
+ }
771
+
772
+ .col-12-lg {
773
+ flex: 0 0 calc((100% / (12 / 12)) - var(--grid-gutter));
774
+ max-width: calc((100% / (12 / 12)) - var(--grid-gutter));
775
+ }
776
+ }
777
+ /* -------------------------- */
778
+
779
+ body {
780
+ background-color: var(--primary-bg-color);
781
+ color: var(--primary-color);
782
+ font-size: var(--font-size-base);
783
+ line-height: var(--line-height-base);
784
+ font-family: var(--font-family-base);
785
+ font-weight: var(--font-weight-base);
786
+ }
787
+
788
+ .safe-area-pt {
789
+ padding-top: constant(safe-area-inset-top);
790
+ padding-top: env(safe-area-inset-top);
791
+ }
792
+
793
+ .safe-area-pb {
794
+ padding-bottom: constant(safe-area-inset-bottom);
795
+ padding-bottom: env(safe-area-inset-bottom);
796
+ }
797
+
798
+ .safe-area-pl {
799
+ padding-left: constant(safe-area-inset-left);
800
+ padding-left: env(safe-area-inset-left);
801
+ }
802
+
803
+ .safe-area-pr {
804
+ padding-right: constant(safe-area-inset-right);
805
+ padding-right: env(safe-area-inset-right);
806
+ }
807
+ .safe-area-pall {
808
+ padding-top: constant(safe-area-inset-top);
809
+ padding-top: env(safe-area-inset-top);
810
+ padding-bottom: constant(safe-area-inset-bottom);
811
+ padding-bottom: env(safe-area-inset-bottom);
812
+ padding-left: constant(safe-area-inset-left);
813
+ padding-left: env(safe-area-inset-left);
814
+ padding-right: constant(safe-area-inset-right);
815
+ padding-right: env(safe-area-inset-right);
816
+ }
817
+
818
+ .safe-area-mt {
819
+ margin-top: constant(safe-area-inset-top);
820
+ margin-top: env(safe-area-inset-top);
821
+ }
822
+
823
+ .safe-area-mb {
824
+ margin-bottom: constant(safe-area-inset-bottom);
825
+ margin-bottom: env(safe-area-inset-bottom);
826
+ }
827
+
828
+ .safe-area-ml {
829
+ margin-left: constant(safe-area-inset-left);
830
+ margin-left: env(safe-area-inset-left);
831
+ }
832
+
833
+ .safe-area-mr {
834
+ margin-right: constant(safe-area-inset-right);
835
+ margin-right: env(safe-area-inset-right);
836
+ }
837
+ .safe-area-mall {
838
+ margin-top: constant(safe-area-inset-top);
839
+ margin-top: env(safe-area-inset-top);
840
+ margin-bottom: constant(safe-area-inset-bottom);
841
+ margin-bottom: env(safe-area-inset-bottom);
842
+ margin-left: constant(safe-area-inset-left);
843
+ margin-left: env(safe-area-inset-left);
844
+ margin-right: constant(safe-area-inset-right);
845
+ margin-right: env(safe-area-inset-right);
846
+ }
847
+
848
+ input.base-css[type='text'],
849
+ input.base-css[type='password'],
850
+ input.base-css[type='email'],
851
+ input.base-css[type='number'],
852
+ input.base-css[type='url'],
853
+ input.base-css[type='search'],
854
+ input.base-css[type='tel'],
855
+ input.base-css[type='date'],
856
+ input.base-css[type='datetime-local'],
857
+ input.base-css[type='month'],
858
+ input.base-css[type='time'],
859
+ input.base-css[type='week'],
860
+ input.base-css[type='file'],
861
+ input.base-css[type='color'],
862
+ select.base-css,
863
+ textarea.base-css {
864
+ color: var(--primary-color);
865
+ background: transparent;
866
+ }
867
+
868
+ select.base-css option {
869
+ color: var(--primary-color);
870
+ background-color: var(--primary-bg-color);
871
+ }
872
+
873
+ select.base-css option:checked {
874
+ color: var(--activatable-color-selected);
875
+ background-color: var(--activatable-bg-color-selected);
876
+ }
877
+
878
+ input.base-css[type='checkbox'],
879
+ input.base-css[type='radio'] {
880
+ position: relative;
881
+ appearance: none;
882
+ border: 1px solid;
883
+ border-color: var(--primary-color);
884
+ width: 0.9rem;
885
+ height: 0.9rem;
886
+ transition: all 0.3s;
887
+ box-shadow: var(--input-box-shadow);
888
+ }
889
+
890
+ input.base-css[type='checkbox']::after,
891
+ input.base-css[type='radio']::after {
892
+ content: '';
893
+ position: absolute;
894
+ display: none;
895
+ }
896
+
897
+ input.base-css[type='checkbox']:checked::after,
898
+ input.base-css[type='radio']:checked::after {
899
+ display: inline-block;
900
+ }
901
+
902
+ input.base-css[type='radio']::after,
903
+ input.base-css[type='radio'] {
904
+ border-radius: 50%;
905
+ }
906
+
907
+ input.base-css[type='radio']:checked::after {
908
+ top: 50%;
909
+ left: 50%;
910
+ height: 0;
911
+ width: 0;
912
+ border: 3px solid var(--primary-color);
913
+ margin: -3px 0 0 -3px;
914
+ }
915
+
916
+ input.base-css[type='checkbox']:checked::after {
917
+ left: 4px;
918
+ top: 0px;
919
+ width: 5px;
920
+ height: 10px;
921
+ border: solid var(--primary-color);
922
+ border-width: 0 2px 3px 0;
923
+ transform: rotate(45deg);
924
+ }
925
+
926
+ input.base-css[type='text'][readonly='true']::placeholder,
927
+ input.base-css[type='text'][disabled='true']::placeholder {
928
+ opacity: 0.4;
929
+ /* filter: blur(.9px); */
930
+ /* text-shadow: 0 2px 4px rgba(0, 0, 0, .5); */
931
+ }
932
+
933
+ .input-base {
934
+ line-height: 1.1;
935
+ height: var(--input-height);
936
+ padding: var(--input-padding);
937
+ border: var(--primary-border);
938
+ border-radius: var(--border-radius-m);
939
+ transition: all 0.3s;
940
+ box-shadow: var(--input-box-shadow);
941
+ color: var(--input-color);
942
+ background-color: var(--input-bg-color);
943
+ }
944
+
945
+ .input-base:focus {
946
+ border: var(--input-border-focus);
947
+ outline: 0;
948
+ }
949
+
950
+ .button-base {
951
+ display: flex;
952
+ align-items: center;
953
+ justify-content: center;
954
+ line-height: 1.1;
955
+ height: var(--button-height);
956
+ cursor: pointer;
957
+ transition: all 0.3s;
958
+ border-radius: var(--border-radius-m);
959
+ vertical-align: baseline;
960
+ border: var(--button-border);
961
+ padding: var(--button-padding);
962
+ color: var(--button-color);
963
+ background: var(--button-bg);
964
+ box-shadow: var(--button-box-shadow);
965
+ }
966
+
967
+ .button-base:not(:disabled):hover {
968
+ /* filter: brightness(95%); */
969
+ background: var(--button-bg-hover);
970
+ }
971
+
972
+ .button-base:not(:disabled):active {
973
+ filter: brightness(85%);
974
+ background: var(--button-bg-hover);
975
+ }
976
+
977
+ input.input-base[type='radio'],
978
+ input.input-base[type='checkbox'] {
979
+ width: 2.1rem;
980
+ height: 2.1rem;
981
+ padding: 0;
982
+ /* accent-color: #0a74c9; */
983
+ box-shadow: unset;
984
+ /* opacity: var(--primary-opacity); */
985
+ position: relative;
986
+ appearance: none;
987
+ aspect-ratio: 1;
988
+ /* background-color: var(--primary-bg-color); */
989
+ border: 3px solid var(--primary-border-color);
990
+ border-radius: 6px;
991
+ }
992
+ input.input-base[type='checkbox']:checked {
993
+ background-color: var(--primary-accent-color);
994
+ }
995
+ input.input-base[type='checkbox']:checked::after {
996
+ content: '';
997
+ position: absolute;
998
+ border: solid var(--primary-bg-color);
999
+ border-width: 0 4px 4px 0;
1000
+ transform: rotate(35deg);
1001
+ left: 29%;
1002
+ top: 6%;
1003
+ width: 40%;
1004
+ height: 70%;
1005
+ }
1006
+ input.input-base[type='radio'] {
1007
+ border-radius: 50%;
1008
+ }
1009
+ input.input-base[type='radio']:checked::after {
1010
+ content: '';
1011
+ position: absolute;
1012
+ left: 10%;
1013
+ top: 10%;
1014
+ width: 80%;
1015
+ height: 80%;
1016
+ border-radius: 50%;
1017
+ background-color: var(--primary-accent-color);
1018
+ }
1019
+
1020
+ .input-ss {
1021
+ padding: 0.1rem 0.6rem;
1022
+ font-size: 0.65rem;
1023
+ border-radius: 2px;
1024
+ height: auto;
1025
+ }
1026
+
1027
+ .button-ss {
1028
+ padding: 0.1rem 0.3rem;
1029
+ font-size: 0.65rem;
1030
+ border-radius: 2px;
1031
+ height: auto;
1032
+ }
1033
+
1034
+ .input-s {
1035
+ padding: 0.2rem 0.6rem;
1036
+ font-size: 0.85rem;
1037
+ border-radius: 3px;
1038
+ height: auto;
1039
+ }
1040
+
1041
+ .button-s {
1042
+ padding: 0.2rem 0.6rem;
1043
+ font-size: 0.85rem;
1044
+ border-radius: 3px;
1045
+ height: auto;
1046
+ }
1047
+
1048
+ .input-l {
1049
+ padding: 0.4rem 0.6rem;
1050
+ font-size: 1.5rem;
1051
+ border-radius: 6px;
1052
+ height: auto;
1053
+ }
1054
+
1055
+ .button-l {
1056
+ padding: 0.4rem 1.2rem;
1057
+ font-size: 1.5rem;
1058
+ border-radius: 6px;
1059
+ height: auto;
1060
+ }
1061
+
1062
+ .input-ll {
1063
+ padding: 0.5rem 0.6rem;
1064
+ font-size: 2rem;
1065
+ border-radius: 10px;
1066
+ height: auto;
1067
+ }
1068
+
1069
+ .button-ll {
1070
+ padding: 0.5rem 1.5rem;
1071
+ font-size: 2rem;
1072
+ border-radius: 10px;
1073
+ height: auto;
1074
+ }
1075
+
1076
+ label.input-label {
1077
+ display: flex;
1078
+ align-items: center;
1079
+ column-gap: 0.2rem;
1080
+ }
1081
+
1082
+ .label-ss {
1083
+ font-size: 0.65rem;
1084
+ }
1085
+
1086
+ .label-s {
1087
+ font-size: 0.85rem;
1088
+ }
1089
+
1090
+ .label-l {
1091
+ font-size: 1.5rem;
1092
+ }
1093
+
1094
+ .label-ll {
1095
+ font-size: 2rem;
1096
+ }
1097
+
1098
+ input.input-base.input-ss[type='radio'],
1099
+ input.input-base.input-ss[type='checkbox'] {
1100
+ width: 1rem;
1101
+ height: 1rem;
1102
+ border-width: 1px;
1103
+ }
1104
+ input.input-base.input-ss[type='checkbox']:checked::after {
1105
+ border-width: 0 2px 2px 0;
1106
+ }
1107
+ input.input-base.input-ss[type='radio']:checked::after {
1108
+ left: 12%;
1109
+ }
1110
+
1111
+ input.input-base.input-s[type='radio'],
1112
+ input.input-base.input-s[type='checkbox'] {
1113
+ width: 1.4rem;
1114
+ height: 1.4rem;
1115
+ border-width: 2px;
1116
+ }
1117
+ input.input-base.input-s[type='checkbox']:checked::after {
1118
+ border-width: 0 3px 3px 0;
1119
+ }
1120
+
1121
+ input.input-base.input-l[type='radio'],
1122
+ input.input-base.input-l[type='checkbox'] {
1123
+ width: 2.6rem;
1124
+ height: 2.6rem;
1125
+ }
1126
+
1127
+ input.input-base.input-ll[type='radio'],
1128
+ input.input-base.input-ll[type='checkbox'] {
1129
+ width: 3.3rem;
1130
+ height: 3.3rem;
1131
+ }
1132
+
1133
+ /* checkbox and radio don't have readonly attribute. and ".disabled" should be behind */
1134
+ /* input.base-css[type="checkbox"]:disabled,
1135
+ input.base-css[type="radio"]:disabled,
1136
+ input.base-css[type="checkbox"]:disabled::after,
1137
+ input.base-css[type="radio"]:disabled::after,
1138
+ input.base-css[type='text'][readonly="true"],
1139
+ input.base-css[type='text'][disabled="true"],
1140
+ input.base-css[type='button']:disabled,
1141
+ input.base-css[type='button'][disabled],
1142
+ input.base-css[type='button'][disabled="true"],
1143
+ button.base-css:disabled,
1144
+ button.base-css[disabled],
1145
+ button.base-css[disabled="true"],
1146
+ .base-css.disabled, */
1147
+ input.input-base[type='checkbox']:disabled,
1148
+ input.input-base[type='radio']:disabled,
1149
+ input.input-base[type='checkbox']:disabled::after,
1150
+ input.input-base[type='radio']:disabled::after,
1151
+ input.input-base[type='text'][readonly='true'],
1152
+ input.input-base[type='text'][disabled='true'],
1153
+ input.input-base[type='button']:disabled,
1154
+ input.input-base[type='button'][disabled],
1155
+ input.input-base[type='button'][disabled='true'],
1156
+ .input-base.disabled,
1157
+ select.input-base[disabled='true'],
1158
+ button.button-base:disabled,
1159
+ button.button-base[disabled],
1160
+ button.button-base[disabled='true'],
1161
+ .button-base.disabled,
1162
+ .input-label.disabled {
1163
+ color: var(--primary-color-disabled);
1164
+ border-color: var(--primary-color-disabled);
1165
+ opacity: var(--primary-disabled-opacity);
1166
+ cursor: not-allowed;
1167
+ }
1168
+
1169
+ button.input-base:disabled,
1170
+ button.input-base[disabled],
1171
+ button.input-base[disabled='true'],
1172
+ .input-base.disabled {
1173
+ color: var(--primary-color-disabled);
1174
+ border-color: var(--primary-color-disabled);
1175
+ }
1176
+
1177
+ /* for inputs with a border and label */
1178
+ .input-field {
1179
+ position: relative;
1180
+ margin: 20px 0;
1181
+ }
1182
+
1183
+ .input-field input,
1184
+ .input-field textarea {
1185
+ display: inline-block;
1186
+ padding: 26px;
1187
+ }
1188
+
1189
+ .input-field span {
1190
+ color: #aaa;
1191
+ position: absolute;
1192
+ pointer-events: none;
1193
+ left: 10px;
1194
+ top: 20px;
1195
+ transition: 0.3s;
1196
+ }
1197
+
1198
+ .input-field input:focus + span,
1199
+ .input-field input:not(:placeholder-shown) + span,
1200
+ .input-field textarea:focus + span,
1201
+ .input-field textarea:not(:placeholder-shown) + span {
1202
+ top: -6px;
1203
+ left: 10px;
1204
+ font-size: small;
1205
+ background-color: var(--primary-bg-color);
1206
+ padding: 0 5px 0 5px;
1207
+ }
1208
+
1209
+ .input-field input:focus:invalid + span,
1210
+ .input-field input:not(:placeholder-shown):invalid + span,
1211
+ .input-field textarea:focus:invalid + span,
1212
+ .input-field textarea:not(:placeholder-shown):invalid + span {
1213
+ color: red;
1214
+ }
1215
+
1216
+ .success-text {
1217
+ padding: var(--space-m);
1218
+ color: var(--success-color);
1219
+ }
1220
+
1221
+ .info-text {
1222
+ padding: var(--space-m);
1223
+ color: var(--info-color);
1224
+ }
1225
+
1226
+ .warning-text {
1227
+ padding: var(--space-m);
1228
+ color: var(--warning-color);
1229
+ }
1230
+
1231
+ .error-text {
1232
+ padding: var(--space-m);
1233
+ color: var(--error-color);
1234
+ }
1235
+
1236
+ .success-bg {
1237
+ padding: var(--space-m);
1238
+ color: var(--notice-color-with-bg);
1239
+ background-color: var(--success-bg-color);
1240
+ border-radius: var(--border-radius-m);
1241
+ }
1242
+
1243
+ .info-bg {
1244
+ padding: var(--space-m);
1245
+ color: var(--notice-color-with-bg);
1246
+ background-color: var(--info-bg-color);
1247
+ border-radius: var(--border-radius-m);
1248
+ }
1249
+
1250
+ .warning-bg {
1251
+ padding: var(--space-m);
1252
+ color: var(--notice-color-with-bg);
1253
+ background-color: var(--warning-bg-color);
1254
+ border-radius: var(--border-radius-m);
1255
+ }
1256
+
1257
+ .error-bg {
1258
+ padding: var(--space-m);
1259
+ color: var(--notice-color-with-bg);
1260
+ background-color: var(--error-bg-color);
1261
+ border-radius: var(--border-radius-m);
1262
+ }
1263
+
1264
+ .page-title {
1265
+ font-size: var(--font-size-title);
1266
+ }
1267
+
1268
+ .page-subtitle {
1269
+ font-size: var(--font-size-subtitle);
1270
+ }
1271
+
1272
+ .page-paragraph {
1273
+ font-size: var(--font-size-paragraph);
1274
+ }
1275
+
1276
+ .page-paragraph-s {
1277
+ font-size: var(--font-size-paragraph-s);
1278
+ }
1279
+
1280
+ .h1-l {
1281
+ margin-block: 0px;
1282
+ font-size: var(--font-size-h1-l);
1283
+ }
1284
+
1285
+ h1,
1286
+ .h1 {
1287
+ margin-block: 0px;
1288
+ font-size: var(--font-size-h1);
1289
+ }
1290
+
1291
+ h2,
1292
+ .h2 {
1293
+ font-size: var(--font-size-h2);
1294
+ }
1295
+
1296
+ h3,
1297
+ .h3 {
1298
+ font-size: var(--font-size-h3);
1299
+ }
1300
+
1301
+ .h3-5 {
1302
+ font-size: var(--font-size-h3-5);
1303
+ }
1304
+
1305
+ h4,
1306
+ .h4 {
1307
+ font-size: var(--font-size-h4);
1308
+ }
1309
+
1310
+ .h4-5 {
1311
+ font-size: var(--font-size-h4-5);
1312
+ }
1313
+
1314
+ h5,
1315
+ .h5 {
1316
+ font-size: var(--font-size-h5);
1317
+ }
1318
+
1319
+ h6,
1320
+ .h6 {
1321
+ font-size: var(--font-size-h6);
1322
+ }
1323
+
1324
+ .h6-s {
1325
+ font-size: var(--font-size-h6-s);
1326
+ }
1327
+
1328
+ .break-all {
1329
+ word-break: break-all;
1330
+ overflow-wrap: break-word;
1331
+ line-break: anywhere;
1332
+ }
1333
+
1334
+ .border {
1335
+ border: var(--primary-border);
1336
+ }
1337
+
1338
+ .b-top {
1339
+ border-top: solid 1px var(--primary-border-color);
1340
+ }
1341
+
1342
+ .b-right {
1343
+ border-right: solid 1px var(--primary-border-color);
1344
+ }
1345
+
1346
+ .b-bottom {
1347
+ border-bottom: solid 1px var(--primary-border-color);
1348
+ }
1349
+
1350
+ .b-left {
1351
+ border-left: solid 1px var(--primary-border-color);
1352
+ }
1353
+
1354
+ .b-radius-s {
1355
+ border-radius: var(--border-radius-s);
1356
+ }
1357
+
1358
+ .b-radius-m {
1359
+ border-radius: var(--border-radius-m);
1360
+ }
1361
+
1362
+ .b-radius-l {
1363
+ border-radius: var(--border-radius-l);
1364
+ }
1365
+
1366
+ .bold {
1367
+ font-weight: 700;
1368
+ }
1369
+
1370
+ .italic {
1371
+ font-style: italic;
1372
+ }
1373
+
1374
+ .underline {
1375
+ text-decoration: underline;
1376
+ }
1377
+
1378
+ .no-underline {
1379
+ text-decoration: none;
1380
+ }
1381
+
1382
+ .align-left {
1383
+ text-align: left;
1384
+ }
1385
+
1386
+ .align-center {
1387
+ text-align: center;
1388
+ }
1389
+
1390
+ .align-right {
1391
+ text-align: right;
1392
+ }
1393
+
1394
+ .ellipsis,
1395
+ .ellipsis-1rows {
1396
+ max-width: 100%;
1397
+ overflow: hidden;
1398
+ text-overflow: ellipsis;
1399
+ white-space: nowrap;
1400
+ }
1401
+
1402
+ .ellipsis-2rows {
1403
+ display: -webkit-box;
1404
+ -webkit-line-clamp: 2;
1405
+ line-clamp: 2;
1406
+ -webkit-box-orient: vertical;
1407
+ overflow: hidden;
1408
+ text-overflow: ellipsis;
1409
+ word-break: break-all;
1410
+ }
1411
+
1412
+ .ellipsis-3rows {
1413
+ display: -webkit-box;
1414
+ -webkit-line-clamp: 3;
1415
+ line-clamp: 3;
1416
+ -webkit-box-orient: vertical;
1417
+ overflow: hidden;
1418
+ text-overflow: ellipsis;
1419
+ word-break: break-all;
1420
+ }
1421
+
1422
+ .ellipsis-4rows {
1423
+ display: -webkit-box;
1424
+ -webkit-line-clamp: 4;
1425
+ line-clamp: 4;
1426
+ -webkit-box-orient: vertical;
1427
+ overflow: hidden;
1428
+ text-overflow: ellipsis;
1429
+ word-break: break-all;
1430
+ }
1431
+
1432
+ .ellipsis-6rows {
1433
+ display: -webkit-box;
1434
+ -webkit-line-clamp: 6;
1435
+ line-clamp: 6;
1436
+ -webkit-box-orient: vertical;
1437
+ overflow: hidden;
1438
+ text-overflow: ellipsis;
1439
+ word-break: break-all;
1440
+ }
1441
+
1442
+ .align-top {
1443
+ vertical-align: top;
1444
+ }
1445
+
1446
+ .align-middle {
1447
+ vertical-align: middle;
1448
+ }
1449
+
1450
+ .align-bottom {
1451
+ vertical-align: bottom;
1452
+ }
1453
+
1454
+ .align-baseline {
1455
+ vertical-align: baseline;
1456
+ }
1457
+
1458
+ .m-auto {
1459
+ margin: auto;
1460
+ }
1461
+
1462
+ .mt-auto {
1463
+ margin-top: auto;
1464
+ }
1465
+
1466
+ .mr-auto {
1467
+ margin-right: auto;
1468
+ }
1469
+
1470
+ .mb-auto {
1471
+ margin-bottom: auto;
1472
+ }
1473
+
1474
+ .ml-auto {
1475
+ margin-left: auto;
1476
+ }
1477
+
1478
+ .mx-auto {
1479
+ margin-left: auto;
1480
+ margin-right: auto;
1481
+ }
1482
+
1483
+ .my-auto {
1484
+ margin-top: auto;
1485
+ margin-bottom: auto;
1486
+ }
1487
+
1488
+ .m-0 {
1489
+ margin: 0;
1490
+ }
1491
+
1492
+ .mt-0 {
1493
+ margin-top: 0;
1494
+ }
1495
+
1496
+ .mr-0 {
1497
+ margin-right: 0;
1498
+ }
1499
+
1500
+ .mb-0 {
1501
+ margin-bottom: 0;
1502
+ }
1503
+
1504
+ .ml-0 {
1505
+ margin-left: 0;
1506
+ }
1507
+
1508
+ .mx-0 {
1509
+ margin-left: 0;
1510
+ margin-right: 0;
1511
+ }
1512
+
1513
+ .my-0 {
1514
+ margin-top: 0;
1515
+ margin-bottom: 0;
1516
+ }
1517
+
1518
+ .m-ss {
1519
+ margin: var(--space-ss);
1520
+ }
1521
+
1522
+ .mt-ss {
1523
+ margin-top: var(--space-ss);
1524
+ }
1525
+
1526
+ .mr-ss {
1527
+ margin-right: var(--space-ss);
1528
+ }
1529
+
1530
+ .mb-ss {
1531
+ margin-bottom: var(--space-ss);
1532
+ }
1533
+
1534
+ .ml-ss {
1535
+ margin-left: var(--space-ss);
1536
+ }
1537
+
1538
+ .mx-ss {
1539
+ margin-left: var(--space-ss);
1540
+ margin-right: var(--space-ss);
1541
+ }
1542
+
1543
+ .my-ss {
1544
+ margin-top: var(--space-ss);
1545
+ margin-bottom: var(--space-ss);
1546
+ }
1547
+
1548
+ .m-s {
1549
+ margin: var(--space-s);
1550
+ }
1551
+
1552
+ .mt-s {
1553
+ margin-top: var(--space-s);
1554
+ }
1555
+
1556
+ .mr-s {
1557
+ margin-right: var(--space-s);
1558
+ }
1559
+
1560
+ .mb-s {
1561
+ margin-bottom: var(--space-s);
1562
+ }
1563
+
1564
+ .ml-s {
1565
+ margin-left: var(--space-s);
1566
+ }
1567
+
1568
+ .mx-s {
1569
+ margin-left: var(--space-s);
1570
+ margin-right: var(--space-s);
1571
+ }
1572
+
1573
+ .my-s {
1574
+ margin-top: var(--space-s);
1575
+ margin-bottom: var(--space-s);
1576
+ }
1577
+
1578
+ .m-m {
1579
+ margin: var(--space-m);
1580
+ }
1581
+
1582
+ .mt-m {
1583
+ margin-top: var(--space-m);
1584
+ }
1585
+
1586
+ .mr-m {
1587
+ margin-right: var(--space-m);
1588
+ }
1589
+
1590
+ .mb-m {
1591
+ margin-bottom: var(--space-m);
1592
+ }
1593
+
1594
+ .ml-m {
1595
+ margin-left: var(--space-m);
1596
+ }
1597
+
1598
+ .mx-m {
1599
+ margin-left: var(--space-m);
1600
+ margin-right: var(--space-m);
1601
+ }
1602
+
1603
+ .my-m {
1604
+ margin-top: var(--space-m);
1605
+ margin-bottom: var(--space-m);
1606
+ }
1607
+
1608
+ .m-l {
1609
+ margin: var(--space-l);
1610
+ }
1611
+
1612
+ .mt-l {
1613
+ margin-top: var(--space-l);
1614
+ }
1615
+
1616
+ .mr-l {
1617
+ margin-right: var(--space-l);
1618
+ }
1619
+
1620
+ .mb-l {
1621
+ margin-bottom: var(--space-l);
1622
+ }
1623
+
1624
+ .ml-l {
1625
+ margin-left: var(--space-l);
1626
+ }
1627
+
1628
+ .mx-l {
1629
+ margin-left: var(--space-l);
1630
+ margin-right: var(--space-l);
1631
+ }
1632
+
1633
+ .my-l {
1634
+ margin-top: var(--space-l);
1635
+ margin-bottom: var(--space-l);
1636
+ }
1637
+
1638
+ .m-ll {
1639
+ margin: var(--space-ll);
1640
+ }
1641
+
1642
+ .mt-ll {
1643
+ margin-top: var(--space-ll);
1644
+ }
1645
+
1646
+ .mr-ll {
1647
+ margin-right: var(--space-ll);
1648
+ }
1649
+
1650
+ .mb-ll {
1651
+ margin-bottom: var(--space-ll);
1652
+ }
1653
+
1654
+ .ml-ll {
1655
+ margin-left: var(--space-ll);
1656
+ }
1657
+
1658
+ .mx-ll {
1659
+ margin-left: var(--space-ll);
1660
+ margin-right: var(--space-ll);
1661
+ }
1662
+
1663
+ .my-ll {
1664
+ margin-top: var(--space-ll);
1665
+ margin-bottom: var(--space-ll);
1666
+ }
1667
+
1668
+ .p-0 {
1669
+ padding: 0;
1670
+ }
1671
+
1672
+ .pt-0 {
1673
+ padding-top: 0;
1674
+ }
1675
+
1676
+ .pr-0 {
1677
+ padding-right: 0;
1678
+ }
1679
+
1680
+ .pb-0 {
1681
+ padding-bottom: 0;
1682
+ }
1683
+
1684
+ .pl-0 {
1685
+ padding-left: 0;
1686
+ }
1687
+
1688
+ .px-0 {
1689
+ padding-left: 0;
1690
+ padding-right: 0;
1691
+ }
1692
+
1693
+ .py-0 {
1694
+ padding-top: 0;
1695
+ padding-bottom: 0;
1696
+ }
1697
+
1698
+ .p-ss {
1699
+ padding: var(--space-ss);
1700
+ }
1701
+
1702
+ .pt-ss {
1703
+ padding-top: var(--space-ss);
1704
+ }
1705
+
1706
+ .pr-ss {
1707
+ padding-right: var(--space-ss);
1708
+ }
1709
+
1710
+ .pb-ss {
1711
+ padding-bottom: var(--space-ss);
1712
+ }
1713
+
1714
+ .pl-ss {
1715
+ padding-left: var(--space-ss);
1716
+ }
1717
+
1718
+ .py-ss {
1719
+ padding-top: var(--space-ss);
1720
+ padding-bottom: var(--space-ss);
1721
+ }
1722
+
1723
+ .px-ss {
1724
+ padding-left: var(--space-ss);
1725
+ padding-right: var(--space-ss);
1726
+ }
1727
+
1728
+ .p-s {
1729
+ padding: var(--space-s);
1730
+ }
1731
+
1732
+ .pt-s {
1733
+ padding-top: var(--space-s);
1734
+ }
1735
+
1736
+ .pr-s {
1737
+ padding-right: var(--space-s);
1738
+ }
1739
+
1740
+ .pb-s {
1741
+ padding-bottom: var(--space-s);
1742
+ }
1743
+
1744
+ .pl-s {
1745
+ padding-left: var(--space-s);
1746
+ }
1747
+
1748
+ .py-s {
1749
+ padding-top: var(--space-s);
1750
+ padding-bottom: var(--space-s);
1751
+ }
1752
+
1753
+ .px-s {
1754
+ padding-left: var(--space-s);
1755
+ padding-right: var(--space-s);
1756
+ }
1757
+
1758
+ .p-m {
1759
+ padding: var(--space-m);
1760
+ }
1761
+
1762
+ .pt-m {
1763
+ padding-top: var(--space-m);
1764
+ }
1765
+
1766
+ .pr-m {
1767
+ padding-right: var(--space-m);
1768
+ }
1769
+
1770
+ .pb-m {
1771
+ padding-bottom: var(--space-m);
1772
+ }
1773
+
1774
+ .pl-m {
1775
+ padding-left: var(--space-m);
1776
+ }
1777
+
1778
+ .py-m {
1779
+ padding-top: var(--space-m);
1780
+ padding-bottom: var(--space-m);
1781
+ }
1782
+
1783
+ .px-m {
1784
+ padding-left: var(--space-m);
1785
+ padding-right: var(--space-m);
1786
+ }
1787
+
1788
+ .p-l {
1789
+ padding: var(--space-l);
1790
+ }
1791
+
1792
+ .pt-l {
1793
+ padding-top: var(--space-l);
1794
+ }
1795
+
1796
+ .pr-l {
1797
+ padding-right: var(--space-l);
1798
+ }
1799
+
1800
+ .pb-l {
1801
+ padding-bottom: var(--space-l);
1802
+ }
1803
+
1804
+ .pl-l {
1805
+ padding-left: var(--space-l);
1806
+ }
1807
+
1808
+ .py-l {
1809
+ padding-top: var(--space-l);
1810
+ padding-bottom: var(--space-l);
1811
+ }
1812
+
1813
+ .px-l {
1814
+ padding-left: var(--space-l);
1815
+ padding-right: var(--space-l);
1816
+ }
1817
+
1818
+ .p-ll {
1819
+ padding: var(--space-ll);
1820
+ }
1821
+
1822
+ .pt-ll {
1823
+ padding-top: var(--space-ll);
1824
+ }
1825
+
1826
+ .pr-ll {
1827
+ padding-right: var(--space-ll);
1828
+ }
1829
+
1830
+ .pb-ll {
1831
+ padding-bottom: var(--space-ll);
1832
+ }
1833
+
1834
+ .pl-ll {
1835
+ padding-left: var(--space-ll);
1836
+ }
1837
+
1838
+ .py-ll {
1839
+ padding-top: var(--space-ll);
1840
+ padding-bottom: var(--space-ll);
1841
+ }
1842
+
1843
+ .px-ll {
1844
+ padding-left: var(--space-ll);
1845
+ padding-right: var(--space-ll);
1846
+ }
1847
+
1848
+ .w-25p {
1849
+ width: 25%;
1850
+ }
1851
+ .w-75p {
1852
+ width: 75%;
1853
+ }
1854
+
1855
+ .w-33p {
1856
+ width: 33.333%;
1857
+ }
1858
+ .w-77p {
1859
+ width: 77.777%;
1860
+ }
1861
+
1862
+ .w-50p {
1863
+ width: 50%;
1864
+ }
1865
+
1866
+ .w-100p {
1867
+ width: 100%;
1868
+ }
1869
+ .w-auto {
1870
+ width: auto;
1871
+ }
1872
+
1873
+ .h-100p {
1874
+ height: 100%;
1875
+ }
1876
+ .h-auto {
1877
+ height: auto;
1878
+ }
1879
+
1880
+ .d-unset {
1881
+ display: unset;
1882
+ }
1883
+
1884
+ .d-none {
1885
+ display: none !important;
1886
+ }
1887
+
1888
+ .d-flex {
1889
+ display: flex;
1890
+ }
1891
+
1892
+ .align-items-center {
1893
+ align-items: center;
1894
+ }
1895
+ .justify-content-center {
1896
+ justify-content: center;
1897
+ }
1898
+
1899
+ .flex-1 {
1900
+ flex: 1;
1901
+ }
1902
+
1903
+ .flex-column {
1904
+ flex-direction: column;
1905
+ }
1906
+
1907
+ .flex-row {
1908
+ flex-direction: row;
1909
+ }
1910
+ .p-relative {
1911
+ position: relative;
1912
+ }
1913
+
1914
+ /* .f-wrap {
1915
+ flex-wrap: wrap
1916
+ }
1917
+
1918
+ .items-start {
1919
+ align-items: flex-start
1920
+ }
1921
+
1922
+ .items-end {
1923
+ align-items: flex-end
1924
+ }
1925
+
1926
+ .items-center {
1927
+ align-items: center
1928
+ }
1929
+
1930
+ .items-baseline {
1931
+ align-items: baseline
1932
+ }
1933
+
1934
+ .items-stretch {
1935
+ align-items: stretch
1936
+ }
1937
+
1938
+ .self-start {
1939
+ align-self: flex-start
1940
+ }
1941
+
1942
+ .self-end {
1943
+ align-self: flex-end
1944
+ }
1945
+
1946
+ .self-center {
1947
+ align-self: center
1948
+ }
1949
+
1950
+ .self-baseline {
1951
+ align-self: baseline
1952
+ }
1953
+
1954
+ .self-stretch {
1955
+ align-self: stretch
1956
+ }
1957
+
1958
+ .justify-start {
1959
+ justify-content: flex-start
1960
+ }
1961
+
1962
+ .justify-end {
1963
+ justify-content: flex-end
1964
+ }
1965
+
1966
+ .justify-center {
1967
+ justify-content: center
1968
+ }
1969
+
1970
+ .justify-between {
1971
+ justify-content: space-between
1972
+ }
1973
+
1974
+ .justify-around {
1975
+ justify-content: space-around
1976
+ }
1977
+
1978
+ .justify-evenly {
1979
+ justify-content: space-evenly
1980
+ }
1981
+
1982
+ .content-start {
1983
+ align-content: flex-start
1984
+ }
1985
+
1986
+ .content-end {
1987
+ align-content: flex-end
1988
+ }
1989
+
1990
+ .content-center {
1991
+ align-content: center
1992
+ }
1993
+
1994
+ .content-between {
1995
+ align-content: space-between
1996
+ }
1997
+
1998
+ .content-around {
1999
+ align-content: space-around
2000
+ }
2001
+
2002
+ .content-stretch {
2003
+ align-content: stretch
2004
+ }
2005
+
2006
+ .overflow-auto {
2007
+ overflow: auto;
2008
+ }
2009
+
2010
+ .overflow-x-auto {
2011
+ overflow-x: auto;
2012
+ }
2013
+
2014
+ .overflow-y-auto {
2015
+ overflow-y: auto;
2016
+ } */
2017
+
2018
+ /* for common coponents */
2019
+
2020
+ /* for setting pages */
2021
+ .setting-section-group {
2022
+ padding-bottom: 16px;
2023
+ }
2024
+ .setting-section-title {
2025
+ font-size: 15px;
2026
+ padding: 8px 0;
2027
+ }
2028
+ .setting-section-block {
2029
+ display: flex;
2030
+ flex-direction: column;
2031
+ flex: 1;
2032
+ background-color: var(--ss-group-bg-color);
2033
+ border-radius: 8px;
2034
+ padding: 4px 8px;
2035
+ }
2036
+ .setting-section-item {
2037
+ display: flex;
2038
+ flex-direction: row;
2039
+ align-items: center;
2040
+ justify-content: space-between;
2041
+ padding: 8px 4px;
2042
+ border-bottom: 1px dotted var(--primary-border-color);
2043
+ cursor: pointer;
2044
+ }
2045
+ .setting-section-item:last-child {
2046
+ border-bottom: none;
2047
+ }
2048
+ .setting-section-item-text {
2049
+ font-size: 15px;
2050
+ }
2051
+ .setting-section-item-icon {
2052
+ font-size: 20px;
2053
+ margin-right: 8px;
2054
+ }
2055
+ .setting-section-item-icon.text {
2056
+ font-size: 11px;
2057
+ }
2058
+
2059
+ .setting-section-row-btn {
2060
+ width: 100%;
2061
+ display: flex;
2062
+ flex-direction: row;
2063
+ height: 46px;
2064
+ padding: 10px 20px;
2065
+ border-radius: 10px;
2066
+ color: var(--ss-row-btn-color);
2067
+ background-color: var(--ss-row-btn-bg-color);
2068
+ align-items: center;
2069
+ justify-content: center;
2070
+ cursor: pointer;
2071
+ }
2072
+ .setting-section-row-btn i.ifc-icon {
2073
+ margin: 0 8px;
2074
+ color: var(--ss-row-btn-color);
2075
+ font-size: 26px;
2076
+ }
2077
+ .setting-section-row-btn.warning,
2078
+ .setting-section-row-btn.warning i.ifc-icon {
2079
+ color: var(--ss-row-btn-warn-color);
2080
+ }
2081
+ /* tips inside button */
2082
+ .setting-section-row-btn-tips {
2083
+ color: var(--ss-row-btn-warn-color);
2084
+ position: absolute;
2085
+ top: 0;
2086
+ left: 50%;
2087
+ transform: translateX(-50%);
2088
+ }
2089
+
2090
+ /* colors should be after others, so it can overwrite others */
2091
+ .color-inherit {
2092
+ color: inherit;
2093
+ }
2094
+ .color-red {
2095
+ color: red;
2096
+ }
2097
+ .color-green {
2098
+ color: green;
2099
+ }
2100
+ .color-blue {
2101
+ color: blue;
2102
+ }
2103
+ .color-yellow {
2104
+ color: yellow;
2105
+ }
2106
+ .color-gray {
2107
+ color: gray;
2108
+ }
2109
+ .color-black {
2110
+ color: black;
2111
+ }
2112
+ .color-white {
2113
+ color: white;
2114
+ }
2115
+
2116
+ .back-color-inherit {
2117
+ background-color: inherit;
2118
+ }
2119
+ .back-color-red {
2120
+ background-color: red;
2121
+ }
2122
+ .back-color-green {
2123
+ background-color: green;
2124
+ }
2125
+ .back-color-blue {
2126
+ background-color: blue;
2127
+ }
2128
+ .back-color-yellow {
2129
+ background-color: yellow;
2130
+ }
2131
+ .back-color-gray {
2132
+ background-color: gray;
2133
+ }
2134
+ .back-color-black {
2135
+ background-color: black;
2136
+ }
2137
+ .back-color-white {
2138
+ background-color: white;
2139
+ }
2140
+
2141
+ .cursor-pointer {
2142
+ cursor: pointer;
2143
+ }