@trilogy-ds/styles 0.0.1-beta-110 → 0.0.1-beta-112

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 (55) hide show
  1. package/dist/default/trilogy-mangled.css +1 -1
  2. package/dist/default/trilogy-partials.css +1 -1
  3. package/dist/default/trilogy.css +1 -1
  4. package/framework/src/base/_color.scss +17 -9
  5. package/framework/src/base/_generic.scss +1 -1
  6. package/framework/src/base/_helpers.scss +5 -2
  7. package/framework/src/components/_accordion.scss +6 -13
  8. package/framework/src/components/_all.scss +1 -1
  9. package/framework/src/components/_autolayout2.scss +38 -0
  10. package/framework/src/components/_card.scss +1 -1
  11. package/framework/src/components/_divider.scss +15 -11
  12. package/framework/src/components/_fab.scss +19 -20
  13. package/framework/src/components/_level.scss +120 -0
  14. package/framework/src/components/_media.scss +64 -0
  15. package/framework/src/components/_modal.scss +3 -7
  16. package/framework/src/components/_pagination.scss +121 -48
  17. package/framework/src/components/_plus-symbol.scss +1 -1
  18. package/framework/src/components/_price.scss +27 -32
  19. package/framework/src/components/_segmented-control.scss +2 -2
  20. package/framework/src/components/_stepper.scss +2 -2
  21. package/framework/src/components/_timeline.scss +118 -26
  22. package/framework/src/elements/_alert.scss +3 -1
  23. package/framework/src/elements/_all.scss +1 -0
  24. package/framework/src/elements/_autocomplete.scss +3 -3
  25. package/framework/src/elements/_badge.scss +7 -10
  26. package/framework/src/elements/_box.scss +2 -2
  27. package/framework/src/elements/_button.scss +2 -2
  28. package/framework/src/elements/_chips.scss +3 -3
  29. package/framework/src/elements/_dot.scss +6 -0
  30. package/framework/src/elements/_entry.scss +1 -1
  31. package/framework/src/elements/_form.scss +14 -14
  32. package/framework/src/elements/_icon.scss +1 -1
  33. package/framework/src/elements/_loader.scss +1 -1
  34. package/framework/src/elements/_other.scss +37 -0
  35. package/framework/src/elements/_progress.scss +5 -5
  36. package/framework/src/elements/_sticker.scss +1 -1
  37. package/framework/src/elements/_switch.scss +4 -4
  38. package/framework/src/elements/_table.scss +11 -11
  39. package/framework/src/elements/_tag.scss +3 -3
  40. package/framework/src/elements/_textarea.scss +1 -18
  41. package/framework/src/elements/_toaster.scss +2 -2
  42. package/framework/src/grid/_columns.scss +751 -284
  43. package/framework/src/grid/_rows.scss +42 -44
  44. package/framework/src/layout/_section.scss +18 -1
  45. package/framework/src/theming/buttons_partial.scss +2 -2
  46. package/framework/src/theming/common_partials.scss +1 -1
  47. package/framework/src/utilities/_all.scss +0 -1
  48. package/framework/src/utilities/_background.scss +3 -7
  49. package/framework/src/utilities/_colors.scss +10 -28
  50. package/framework/src/utilities/_derived-variables.scss +3 -3
  51. package/framework/src/utilities/_initial-variables.scss +29 -1
  52. package/framework/src/utilities/_mixins.scss +10 -9
  53. package/package.json +3 -3
  54. package/framework/src/components/_autolayout.scss +0 -290
  55. package/framework/src/utilities/_a11y.scss +0 -13
@@ -1,344 +1,449 @@
1
1
  @use 'sass:math';
2
2
 
3
- $columnWidth: calc((100% / (var(--ColumnFraction))) - ((((var(--ColumnFraction)) - 1) / (var(--ColumnFraction))) * var(--ColumnGap)));
4
- $offsetWidth: calc((100% / (var(--offset))) - ((((var(--offset)) - 1) / (var(--offset))) * var(--ColumnGap)) + var(--ColumnGap));
5
-
6
- $columnSize : (
7
- "gapless" : 0,
8
- "1" : math.div(12, 1),
9
- "2" : math.div(12, 2),
10
- "3" : math.div(12, 3),
11
- "4" : math.div(12, 4),
12
- "5" : math.div(12, 5),
13
- "6" : math.div(12, 6),
14
- "7" : math.div(12, 7),
15
- "8" : math.div(12, 8),
16
- "9" : math.div(12, 9),
17
- "10" : math.div(12, 10),
18
- "11" : math.div(12, 11),
19
- "12" : math.div(12, 12),
20
- "full" : math.div(12, 12),
21
- "half" : math.div(12, 6)
22
- );
23
-
24
- $columnNumber : 12;
25
- %flex-none {
26
- flex: none;
27
- }
3
+ .column {
4
+ display: block;
5
+ flex-basis: 0;
6
+ flex-grow: 1;
7
+ flex-shrink: 1;
8
+ padding: $column-gap-tablet-desktop;
9
+
10
+ @include mobile {
11
+ padding: $column-gap-mobile;
12
+ }
13
+
14
+ &.is-vcentered {
15
+ align-self: center;
16
+ }
17
+
18
+ .columns.is-mobile > &.is-narrow {
19
+ flex: none;
20
+ }
21
+
22
+ .columns.is-mobile > &.is-full {
23
+ flex: none;
24
+ width: 100%;
25
+ }
26
+
27
+ .columns.is-mobile > &.is-three-quarters {
28
+ flex: none;
29
+ width: 75%;
30
+ }
31
+
32
+ .columns.is-mobile > &.is-two-thirds {
33
+ flex: none;
34
+ width: 66.6666%;
35
+ }
36
+
37
+ .columns.is-mobile > &.is-half {
38
+ flex: none;
39
+ width: 50%;
40
+ }
28
41
 
42
+ .columns.is-mobile > &.is-one-third {
43
+ flex: none;
44
+ width: 33.3333%;
45
+ }
46
+
47
+ .columns.is-mobile > &.is-one-quarter {
48
+ flex: none;
49
+ width: 25%;
50
+ }
51
+
52
+ .columns.is-mobile > &.is-one-fifth {
53
+ flex: none;
54
+ width: 20%;
55
+ }
56
+
57
+ .columns.is-mobile > &.is-two-fifths {
58
+ flex: none;
59
+ width: 40%;
60
+ }
61
+
62
+ .columns.is-mobile > &.is-three-fifths {
63
+ flex: none;
64
+ width: 60%;
65
+ }
29
66
 
30
- $gap :
31
- 4px,
32
- 8px,
33
- 12px,
34
- 16px,
35
- 24px,
36
- 32px,
37
- 40px,
38
- 48px,
39
- 54px,
40
- 62px
41
- ;
42
-
43
- .columns{
44
- display: flex;
45
- --ColumnGap: 24px;
46
-
47
- %flex-none {
67
+ .columns.is-mobile > &.is-four-fifths {
48
68
  flex: none;
69
+ width: 80%;
49
70
  }
50
71
 
51
- @for $i from 1 through $columnNumber {
52
- &.has-#{$i}-cols > .column { @extend %flex-none; }
72
+ .columns.is-mobile > &.is-offset-three-quarters {
73
+ margin-left: 75%;
53
74
  }
54
75
 
55
- .column[class*="is-"]:not(.is-narrow){
56
- width: #{$columnWidth};
76
+ .columns.is-mobile > &.is-offset-two-thirds {
77
+ margin-left: 66.6666%;
57
78
  }
58
79
 
80
+ .columns.is-mobile > &.is-offset-half {
81
+ margin-left: 50%;
82
+ }
83
+
84
+ .columns.is-mobile > &.is-offset-one-third {
85
+ margin-left: 33.3333%;
86
+ }
87
+
88
+ .columns.is-mobile > &.is-offset-one-quarter {
89
+ margin-left: 25%;
90
+ }
91
+
92
+ .columns.is-mobile > &.is-offset-one-fifth {
93
+ margin-left: 20%;
94
+ }
59
95
 
96
+ .columns.is-mobile > &.is-offset-two-fifths {
97
+ margin-left: 40%;
98
+ }
99
+
100
+ .columns.is-mobile > &.is-offset-three-fifths {
101
+ margin-left: 60%;
102
+ }
60
103
 
61
- &.has-1-cols > .column:not(.is-narrow),
62
- &.has-2-cols > .column:not(.is-narrow),
63
- &.has-3-cols > .column:not(.is-narrow),
64
- &.has-4-cols > .column:not(.is-narrow),
65
- &.has-5-cols > .column:not(.is-narrow),
66
- &.has-6-cols > .column:not(.is-narrow),
67
- &.has-7-cols > .column:not(.is-narrow),
68
- &.has-8-cols > .column:not(.is-narrow),
69
- &.has-9-cols > .column:not(.is-narrow),
70
- &.has-10-cols > .column:not(.is-narrow),
71
- &.has-11-cols > .column:not(.is-narrow),
72
- &.has-12-cols > .column:not(.is-narrow)
73
- {
74
- width: #{$columnWidth};
104
+ .columns.is-mobile > &.is-offset-four-fifths {
105
+ margin-left: 80%;
75
106
  }
76
107
 
77
108
  @for $i from 1 through 12 {
78
- &.has-#{$i}-cols > .column{
79
- --ColumnFraction: #{$i};
109
+ .columns.is-mobile > &.is-#{$i} {
80
110
  flex: none;
111
+ width: percentage(math.div($i, 12));
112
+ }
113
+
114
+ .columns.is-mobile > &.is-offset-#{$i} {
115
+ margin-left: percentage(math.div($i, 12));
81
116
  }
82
117
  }
83
118
 
84
- @each $key, $value in $columnSize{
85
- > .column.is-#{$key} {
119
+ @include mobile {
120
+ &.is-narrow-mobile {
86
121
  flex: none;
87
- --ColumnFraction: #{$value};
88
122
  }
89
123
 
90
- .column.is-offset-#{$key} {
91
- --offset: #{$value};
92
- margin-left: $offsetWidth;
124
+ &.is-full-mobile {
125
+ flex: none;
126
+ width: 100%;
93
127
  }
94
- }
95
128
 
129
+ &.is-three-quarters-mobile {
130
+ flex: none;
131
+ width: 75%;
132
+ }
96
133
 
134
+ &.is-two-thirds-mobile {
135
+ flex: none;
136
+ width: 66.6666%;
137
+ }
97
138
 
139
+ &.is-half-mobile {
140
+ flex: none;
141
+ width: 50%;
142
+ }
98
143
 
99
- @for $i from 1 through length($gap) {
100
- $item: nth($gap, $i);
101
- &.is-mobile.has-gap-#{$i} {
102
- gap: $item;
103
- .column {
104
- --ColumnGap: #{$item};
105
- }
144
+ &.is-one-third-mobile {
145
+ flex: none;
146
+ width: 33.3333%;
106
147
  }
107
148
 
108
- @include tablet{
109
- &.has-gap-#{$i}:not(.is-desktop) {
110
- gap: $item;
111
- .column {
112
- --ColumnGap: #{$item};
113
- }
114
- }
149
+ &.is-one-quarter-mobile {
150
+ flex: none;
151
+ width: 25%;
115
152
  }
116
153
 
117
- @include desktop{
118
- &.has-gap-#{$i},
119
- &.has-gap-#{$i}-desktop {
120
- gap: $item;
121
- .column {
122
- --ColumnGap: #{$item};
123
- }
124
- }
154
+ &.is-one-fifth-mobile {
155
+ flex: none;
156
+ width: 20%;
125
157
  }
126
158
 
127
- @include widescreen{
128
- &.has-gap-#{$i}-widescreen {
129
- gap: $item;
130
- .column {
131
- --ColumnGap: #{$item};
132
- }
133
- }
159
+ &.is-two-fifths-mobile {
160
+ flex: none;
161
+ width: 40%;
134
162
  }
135
163
 
136
- @include fullhd{
137
- &.has-gap-#{$i}-fullhd {
138
- gap: $item;
139
- .column {
140
- --ColumnGap: #{$item};
141
- }
142
- }
164
+ &.is-three-fifths-mobile {
165
+ flex: none;
166
+ width: 60%;
143
167
  }
144
168
 
145
- }
169
+ &.is-four-fifths-mobile {
170
+ flex: none;
171
+ width: 80%;
172
+ }
146
173
 
174
+ &.is-offset-three-quarters-mobile {
175
+ margin-left: 75%;
176
+ }
147
177
 
178
+ &.is-offset-two-thirds-mobile {
179
+ margin-left: 66.6666%;
180
+ }
148
181
 
149
- @include mobile{
150
- &.is-peek{
151
- padding-right: 15%;
182
+ &.is-offset-half-mobile {
183
+ margin-left: 50%;
152
184
  }
153
- @for $i from 0 through 12 {
154
- &.has-#{$i}-cols-mobile > .column{
155
- --ColumnFraction: #{$i};
156
- flex: none;
157
- }
185
+
186
+ &.is-offset-one-third-mobile {
187
+ margin-left: 33.3333%;
158
188
  }
159
189
 
160
- @each $key, $value in $columnSize{
161
- & > .column.is-#{$key}-mobile {
162
- flex: none;
163
- --ColumnFraction: #{$value};
164
- }
190
+ &.is-offset-one-quarter-mobile {
191
+ margin-left: 25%;
192
+ }
165
193
 
166
- &.is-mobile > .column.is-offset-#{$key}-mobile {
167
- --offset: #{$value};
168
- margin-left: $offsetWidth;
169
- }
194
+ &.is-offset-one-fifth-mobile {
195
+ margin-left: 20%;
170
196
  }
171
197
 
172
- }
198
+ &.is-offset-two-fifths-mobile {
199
+ margin-left: 40%;
200
+ }
173
201
 
174
- @include tablet{
202
+ &.is-offset-three-fifths-mobile {
203
+ margin-left: 60%;
204
+ }
175
205
 
176
- @for $i from 0 through 12 {
177
- &.has-#{$i}-cols-tablet > .column{
178
- --ColumnFraction: #{$i};
179
- flex: none;
180
- }
206
+ &.is-offset-four-fifths-mobile {
207
+ margin-left: 80%;
181
208
  }
182
209
 
183
- @each $key, $value in $columnSize{
184
- > .column.is-#{$key}-tablet {
210
+ @for $i from 1 through 12 {
211
+ &.is-#{$i}-mobile {
185
212
  flex: none;
186
- --ColumnFraction: #{$value};
213
+ width: percentage(math.div($i, 12));
187
214
  }
188
215
 
189
- .column.is-offset-#{$key}-tablet {
190
- --offset: #{$value};
191
- margin-left: $offsetWidth;
216
+ &.is-offset-#{$i}-mobile {
217
+ margin-left: percentage(math.div($i, 12));
192
218
  }
193
219
  }
194
-
195
220
  }
196
221
 
197
- @include touch{
222
+ @include tablet {
223
+ &.is-narrow,
224
+ &.is-narrow-tablet {
225
+ flex: none;
226
+ }
198
227
 
199
- @for $i from 0 through 12 {
200
- &.has-#{$i}-cols-touch > .column{
201
- --ColumnFraction: #{$i};
202
- flex: none;
203
- }
228
+ &.is-full,
229
+ &.is-full-tablet {
230
+ flex: none;
231
+ width: 100%;
204
232
  }
205
233
 
206
- @each $key, $value in $columnSize{
207
- > .column.is-#{$key}-touch {
208
- flex: none;
209
- --ColumnFraction: #{$value};
210
- }
234
+ &.is-three-quarters,
235
+ &.is-three-quarters-tablet {
236
+ flex: none;
237
+ width: 75%;
238
+ }
211
239
 
212
- > .column.is-offset-#{$key}-touch {
213
- --offset: #{$value};
214
- margin-left: $offsetWidth;
215
- }
240
+ &.is-two-thirds,
241
+ &.is-two-thirds-tablet {
242
+ flex: none;
243
+ width: 66.6666%;
216
244
  }
217
245
 
218
- }
246
+ &.is-half,
247
+ &.is-half-tablet {
248
+ flex: none;
249
+ width: 50%;
250
+ }
219
251
 
220
- @include desktop{
252
+ &.is-one-third,
253
+ &.is-one-third-tablet {
254
+ flex: none;
255
+ width: 33.3333%;
256
+ }
221
257
 
222
- @for $i from 0 through 12 {
223
- &.has-#{$i}-cols-desktop > .column{
224
- --ColumnFraction: #{$i};
225
- flex: none;
226
- }
258
+ &.is-one-quarter,
259
+ &.is-one-quarter-tablet {
260
+ flex: none;
261
+ width: 25%;
227
262
  }
228
263
 
229
- @each $key, $value in $columnSize{
230
- > .column.is-#{$key}-desktop {
231
- flex: none;
232
- --ColumnFraction: #{$value};
233
- }
264
+ &.is-one-fifth,
265
+ &.is-one-fifth-tablet {
266
+ flex: none;
267
+ width: 20%;
268
+ }
234
269
 
235
- > .column.is-offset-#{$key}-desktop {
236
- --offset: #{$value};
237
- margin-left: $offsetWidth;
238
- }
270
+ &.is-two-fifths,
271
+ &.is-two-fifths-tablet {
272
+ flex: none;
273
+ width: 40%;
239
274
  }
240
275
 
241
- }
276
+ &.is-three-fifths,
277
+ &.is-three-fifths-tablet {
278
+ flex: none;
279
+ width: 60%;
280
+ }
242
281
 
243
- @include widescreen{
282
+ &.is-four-fifths,
283
+ &.is-four-fifths-tablet {
284
+ flex: none;
285
+ width: 80%;
286
+ }
244
287
 
245
- @for $i from 0 through 12 {
246
- &.has-#{$i}-cols-widescreen > .column{
247
- --ColumnFraction: #{$i};
248
- flex: none;
249
- }
288
+ &.is-offset-three-quarters,
289
+ &.is-offset-three-quarters-tablet {
290
+ margin-left: 75%;
250
291
  }
251
292
 
252
- @each $key, $value in $columnSize{
253
- > .column.is-#{$key}-widescreen{
254
- flex: none;
255
- --ColumnFraction: #{$value};
256
- }
293
+ &.is-offset-two-thirds,
294
+ &.is-offset-two-thirds-tablet {
295
+ margin-left: 66.6666%;
296
+ }
257
297
 
258
- > .is-offset-#{$key}-widescreen {
259
- --offset: #{$value};
260
- margin-left: $offsetWidth;
261
- }
298
+ &.is-offset-half,
299
+ &.is-offset-half-tablet {
300
+ margin-left: 50%;
262
301
  }
263
302
 
264
- }
303
+ &.is-offset-one-third,
304
+ &.is-offset-one-third-tablet {
305
+ margin-left: 33.3333%;
306
+ }
265
307
 
266
- @include fullhd{
308
+ &.is-offset-one-quarter,
309
+ &.is-offset-one-quarter-tablet {
310
+ margin-left: 25%;
311
+ }
267
312
 
268
- @for $i from 0 through 12 {
269
- &.has-#{$i}-cols-fullhd > .column{
270
- --ColumnFraction: #{$i};
271
- flex: none;
272
- }
313
+ &.is-offset-one-fifth,
314
+ &.is-offset-one-fifth-tablet {
315
+ margin-left: 20%;
273
316
  }
274
317
 
275
- @each $key, $value in $columnSize{
276
- > .column.is-#{$key}-fullhd{
277
- flex: none;
278
- --ColumnFraction: #{$value};
279
- }
318
+ &.is-offset-two-fifths,
319
+ &.is-offset-two-fifths-tablet {
320
+ margin-left: 40%;
321
+ }
280
322
 
281
- > .column.is-offset-#{$key}-fullhd {
282
- --offset: #{$value};
283
- margin-left: $offsetWidth;
284
- }
323
+ &.is-offset-three-fifths,
324
+ &.is-offset-three-fifths-tablet {
325
+ margin-left: 60%;
285
326
  }
286
327
 
287
- }
328
+ &.is-offset-four-fifths,
329
+ &.is-offset-four-fifths-tablet {
330
+ margin-left: 80%;
331
+ }
288
332
 
289
- @include mobile {
290
- --ColumnGap: 16px;
291
- &:not(.is-mobile){
292
- flex-direction: column;
293
- > .column,
294
- > .column[class*="is-"]{
295
- --ColumnFraction: 1;
333
+ @for $i from 1 through 12 {
334
+ &.is-#{$i},
335
+ &.is-#{$i}-tablet {
336
+ flex: none;
337
+ width: percentage(math.div($i, 12));
296
338
  }
297
- }
298
- }
299
- @include tablet-only{
300
- &.is-desktop{
301
- flex-direction: column;
302
- > .column,
303
- > .column[class*="is-"]{
304
- --ColumnFraction: 1;
339
+
340
+ &.is-offset-#{$i},
341
+ &.is-offset-#{$i}-tablet {
342
+ margin-left: percentage(math.div($i, 12));
305
343
  }
306
344
  }
307
345
  }
308
346
 
347
+ @include touch {
348
+ &.is-narrow-touch {
349
+ flex: none;
350
+ }
309
351
 
352
+ &.is-full-touch {
353
+ flex: none;
354
+ width: 100%;
355
+ }
310
356
 
311
- }
357
+ &.is-three-quarters-touch {
358
+ flex: none;
359
+ width: 75%;
360
+ }
312
361
 
362
+ &.is-two-thirds-touch {
363
+ flex: none;
364
+ width: 66.6666%;
365
+ }
313
366
 
367
+ &.is-half-touch {
368
+ flex: none;
369
+ width: 50%;
370
+ }
314
371
 
315
- .column {
316
- display: block;
317
- flex-basis: 0;
318
- flex-grow: 1;
319
- flex-shrink: 1;
320
- &.is-vcentered {
321
- align-self: center;
322
- }
372
+ &.is-one-third-touch {
373
+ flex: none;
374
+ width: 33.3333%;
375
+ }
323
376
 
377
+ &.is-one-quarter-touch {
378
+ flex: none;
379
+ width: 25%;
380
+ }
324
381
 
325
- @include mobile {
326
- &.is-narrow-mobile {
382
+ &.is-one-fifth-touch {
327
383
  flex: none;
384
+ width: 20%;
328
385
  }
329
- }
330
386
 
331
- @include tablet {
332
- &.is-narrow,
333
- &.is-narrow-tablet {
387
+ &.is-two-fifths-touch {
334
388
  flex: none;
389
+ width: 40%;
335
390
  }
336
391
 
337
- }
392
+ &.is-three-fifths-touch {
393
+ flex: none;
394
+ width: 60%;
395
+ }
338
396
 
339
- @include touch {
340
- &.is-narrow-touch {
397
+ &.is-four-fifths-touch {
341
398
  flex: none;
399
+ width: 80%;
400
+ }
401
+
402
+ &.is-offset-three-quarters-touch {
403
+ margin-left: 75%;
404
+ }
405
+
406
+ &.is-offset-two-thirds-touch {
407
+ margin-left: 66.6666%;
408
+ }
409
+
410
+ &.is-offset-half-touch {
411
+ margin-left: 50%;
412
+ }
413
+
414
+ &.is-offset-one-third-touch {
415
+ margin-left: 33.3333%;
416
+ }
417
+
418
+ &.is-offset-one-quarter-touch {
419
+ margin-left: 25%;
420
+ }
421
+
422
+ &.is-offset-one-fifth-touch {
423
+ margin-left: 20%;
424
+ }
425
+
426
+ &.is-offset-two-fifths-touch {
427
+ margin-left: 40%;
428
+ }
429
+
430
+ &.is-offset-three-fifths-touch {
431
+ margin-left: 60%;
432
+ }
433
+
434
+ &.is-offset-four-fifths-touch {
435
+ margin-left: 80%;
436
+ }
437
+
438
+ @for $i from 1 through 12 {
439
+ &.is-#{$i}-touch {
440
+ flex: none;
441
+ width: percentage(math.div($i, 12));
442
+ }
443
+
444
+ &.is-offset-#{$i}-touch {
445
+ margin-left: percentage(math.div($i, 12));
446
+ }
342
447
  }
343
448
  }
344
449
 
@@ -346,6 +451,103 @@ $gap :
346
451
  &.is-narrow-desktop {
347
452
  flex: none;
348
453
  }
454
+
455
+ &.is-full-desktop {
456
+ flex: none;
457
+ width: 100%;
458
+ }
459
+
460
+ &.is-three-quarters-desktop {
461
+ flex: none;
462
+ width: 75%;
463
+ }
464
+
465
+ &.is-two-thirds-desktop {
466
+ flex: none;
467
+ width: 66.6666%;
468
+ }
469
+
470
+ &.is-half-desktop {
471
+ flex: none;
472
+ width: 50%;
473
+ }
474
+
475
+ &.is-one-third-desktop {
476
+ flex: none;
477
+ width: 33.3333%;
478
+ }
479
+
480
+ &.is-one-quarter-desktop {
481
+ flex: none;
482
+ width: 25%;
483
+ }
484
+
485
+ &.is-one-fifth-desktop {
486
+ flex: none;
487
+ width: 20%;
488
+ }
489
+
490
+ &.is-two-fifths-desktop {
491
+ flex: none;
492
+ width: 40%;
493
+ }
494
+
495
+ &.is-three-fifths-desktop {
496
+ flex: none;
497
+ width: 60%;
498
+ }
499
+
500
+ &.is-four-fifths-desktop {
501
+ flex: none;
502
+ width: 80%;
503
+ }
504
+
505
+ &.is-offset-three-quarters-desktop {
506
+ margin-left: 75%;
507
+ }
508
+
509
+ &.is-offset-two-thirds-desktop {
510
+ margin-left: 66.6666%;
511
+ }
512
+
513
+ &.is-offset-half-desktop {
514
+ margin-left: 50%;
515
+ }
516
+
517
+ &.is-offset-one-third-desktop {
518
+ margin-left: 33.3333%;
519
+ }
520
+
521
+ &.is-offset-one-quarter-desktop {
522
+ margin-left: 25%;
523
+ }
524
+
525
+ &.is-offset-one-fifth-desktop {
526
+ margin-left: 20%;
527
+ }
528
+
529
+ &.is-offset-two-fifths-desktop {
530
+ margin-left: 40%;
531
+ }
532
+
533
+ &.is-offset-three-fifths-desktop {
534
+ margin-left: 60%;
535
+ }
536
+
537
+ &.is-offset-four-fifths-desktop {
538
+ margin-left: 80%;
539
+ }
540
+
541
+ @for $i from 1 through 12 {
542
+ &.is-#{$i}-desktop {
543
+ flex: none;
544
+ width: percentage(math.div($i, 12));
545
+ }
546
+
547
+ &.is-offset-#{$i}-desktop {
548
+ margin-left: percentage(math.div($i, 12));
549
+ }
550
+ }
349
551
  }
350
552
 
351
553
  @include widescreen {
@@ -353,66 +555,263 @@ $gap :
353
555
  flex: none;
354
556
  }
355
557
 
558
+ &.is-full-widescreen {
559
+ flex: none;
560
+ width: 100%;
561
+ }
562
+
563
+ &.is-three-quarters-widescreen {
564
+ flex: none;
565
+ width: 75%;
566
+ }
567
+
568
+ &.is-two-thirds-widescreen {
569
+ flex: none;
570
+ width: 66.6666%;
571
+ }
572
+
573
+ &.is-half-widescreen {
574
+ flex: none;
575
+ width: 50%;
576
+ }
577
+
578
+ &.is-one-third-widescreen {
579
+ flex: none;
580
+ width: 33.3333%;
581
+ }
582
+
583
+ &.is-one-quarter-widescreen {
584
+ flex: none;
585
+ width: 25%;
586
+ }
587
+
588
+ &.is-one-fifth-widescreen {
589
+ flex: none;
590
+ width: 20%;
591
+ }
592
+
593
+ &.is-two-fifths-widescreen {
594
+ flex: none;
595
+ width: 40%;
596
+ }
597
+
598
+ &.is-three-fifths-widescreen {
599
+ flex: none;
600
+ width: 60%;
601
+ }
602
+
603
+ &.is-four-fifths-widescreen {
604
+ flex: none;
605
+ width: 80%;
606
+ }
607
+
608
+ &.is-offset-three-quarters-widescreen {
609
+ margin-left: 75%;
610
+ }
611
+
612
+ &.is-offset-two-thirds-widescreen {
613
+ margin-left: 66.6666%;
614
+ }
615
+
616
+ &.is-offset-half-widescreen {
617
+ margin-left: 50%;
618
+ }
619
+
620
+ &.is-offset-one-third-widescreen {
621
+ margin-left: 33.3333%;
622
+ }
623
+
624
+ &.is-offset-one-quarter-widescreen {
625
+ margin-left: 25%;
626
+ }
627
+
628
+ &.is-offset-one-fifth-widescreen {
629
+ margin-left: 20%;
630
+ }
631
+
632
+ &.is-offset-two-fifths-widescreen {
633
+ margin-left: 40%;
634
+ }
635
+
636
+ &.is-offset-three-fifths-widescreen {
637
+ margin-left: 60%;
638
+ }
639
+
640
+ &.is-offset-four-fifths-widescreen {
641
+ margin-left: 80%;
642
+ }
643
+
644
+ @for $i from 1 through 12 {
645
+ &.is-#{$i}-widescreen {
646
+ flex: none;
647
+ width: percentage(math.div($i, 12));
648
+ }
649
+
650
+ &.is-offset-#{$i}-widescreen {
651
+ margin-left: percentage(math.div($i, 12));
652
+ }
653
+ }
356
654
  }
357
655
 
358
656
  @include fullhd {
359
657
  &.is-narrow-fullhd {
360
658
  flex: none;
361
659
  }
660
+
661
+ &.is-full-fullhd {
662
+ flex: none;
663
+ width: 100%;
664
+ }
665
+
666
+ &.is-three-quarters-fullhd {
667
+ flex: none;
668
+ width: 75%;
669
+ }
670
+
671
+ &.is-two-thirds-fullhd {
672
+ flex: none;
673
+ width: 66.6666%;
674
+ }
675
+
676
+ &.is-half-fullhd {
677
+ flex: none;
678
+ width: 50%;
679
+ }
680
+
681
+ &.is-one-third-fullhd {
682
+ flex: none;
683
+ width: 33.3333%;
684
+ }
685
+
686
+ &.is-one-quarter-fullhd {
687
+ flex: none;
688
+ width: 25%;
689
+ }
690
+
691
+ &.is-one-fifth-fullhd {
692
+ flex: none;
693
+ width: 20%;
694
+ }
695
+
696
+ &.is-two-fifths-fullhd {
697
+ flex: none;
698
+ width: 40%;
699
+ }
700
+
701
+ &.is-three-fifths-fullhd {
702
+ flex: none;
703
+ width: 60%;
704
+ }
705
+
706
+ &.is-four-fifths-fullhd {
707
+ flex: none;
708
+ width: 80%;
709
+ }
710
+
711
+ &.is-offset-three-quarters-fullhd {
712
+ margin-left: 75%;
713
+ }
714
+
715
+ &.is-offset-two-thirds-fullhd {
716
+ margin-left: 66.6666%;
717
+ }
718
+
719
+ &.is-offset-half-fullhd {
720
+ margin-left: 50%;
721
+ }
722
+
723
+ &.is-offset-one-third-fullhd {
724
+ margin-left: 33.3333%;
725
+ }
726
+
727
+ &.is-offset-one-quarter-fullhd {
728
+ margin-left: 25%;
729
+ }
730
+
731
+ &.is-offset-one-fifth-fullhd {
732
+ margin-left: 20%;
733
+ }
734
+
735
+ &.is-offset-two-fifths-fullhd {
736
+ margin-left: 40%;
737
+ }
738
+
739
+ &.is-offset-three-fifths-fullhd {
740
+ margin-left: 60%;
741
+ }
742
+
743
+ &.is-offset-four-fifths-fullhd {
744
+ margin-left: 80%;
745
+ }
746
+
747
+ @for $i from 1 through 12 {
748
+ &.is-#{$i}-fullhd {
749
+ flex: none;
750
+ width: percentage(math.div($i, 12));
751
+ }
752
+
753
+ &.is-offset-#{$i}-fullhd {
754
+ margin-left: percentage(math.div($i, 12));
755
+ }
756
+ }
362
757
  }
363
758
  }
364
759
 
365
760
  .columns {
366
- gap : 24px;
761
+ margin-left: -$column-gap-tablet-desktop;
762
+ margin-right: -$column-gap-tablet-desktop;
763
+ margin-top: -$column-gap-tablet-desktop;
367
764
 
368
- &.is-scrollable {
765
+ &.is-inlined {
369
766
  position: relative;
767
+ width: 100%;
370
768
  padding-bottom: 8px;
371
769
  flex-wrap: nowrap;
372
770
  overflow-x: auto;
373
771
  display: flex !important;
374
772
  scroll-behavior: smooth;
375
773
  scroll-snap-type: x mandatory;
376
- margin: -8px;
377
- padding: 8px;
378
- scroll-padding: 8px;
379
774
 
380
- >.column {
775
+ > .column {
381
776
  scroll-snap-align: start;
382
- &:last-child{
383
- scroll-snap-align: end;
384
- }
385
777
  }
386
- &:not(.has-scrollbar){
387
- &::-webkit-scrollbar {
388
- scrollbar-width: none;
389
- }
778
+
779
+ &::-webkit-scrollbar {
780
+ height: 8px;
390
781
  }
391
- &.has-scrollbar{
392
- &::-webkit-scrollbar {
393
- height: 8px;
394
- }
395
782
 
396
- &::-webkit-scrollbar-track {
397
- background-color: getColor('neutral');
398
- border-radius: 8px;
399
- margin: 0 8px;
400
- }
783
+ &::-webkit-scrollbar-track {
784
+ background-color: getBGColor('font');
785
+ border-radius: var(--radius);
786
+ margin: 0 8px;
787
+ }
401
788
 
402
- &::-webkit-scrollbar-thumb {
403
- background-color: getColor('main-fade');
404
- border-radius: var(--radius);
405
- }
789
+ &::-webkit-scrollbar-thumb {
790
+ background: getColor('main');
791
+ border-radius: var(--radius);
406
792
  }
407
793
  }
408
794
 
795
+ &:last-child {
796
+ margin-bottom: -$column-gap-tablet-desktop;
797
+ }
798
+
409
799
  &:not(:last-child) {
410
- margin-bottom: $column-gap-tablet-desktop;
800
+ margin-bottom: calc(15px - #{$column-gap-tablet-desktop});
411
801
  }
412
802
 
413
803
  @include mobile {
414
- gap : 16px;
804
+ margin-left: -$column-gap-mobile;
805
+ margin-right: -$column-gap-mobile;
806
+ margin-top: -$column-gap-mobile;
807
+
808
+ &:last-child {
809
+ margin-bottom: -$column-gap-mobile;
810
+ }
415
811
 
812
+ &:not(:last-child) {
813
+ margin-bottom: calc(15px - #{$column-gap-mobile});
814
+ }
416
815
  }
417
816
 
418
817
  // Modifiers
@@ -421,7 +820,22 @@ $gap :
421
820
  }
422
821
 
423
822
  &.is-gapless {
424
- gap: 0;
823
+ margin-left: 0;
824
+ margin-right: 0;
825
+ margin-top: 0;
826
+
827
+ & > .column {
828
+ margin: 0;
829
+ padding: 0 !important;
830
+ }
831
+
832
+ &:not(:last-child) {
833
+ margin-bottom: 15px;
834
+ }
835
+
836
+ &:last-child {
837
+ margin-bottom: 0;
838
+ }
425
839
  }
426
840
 
427
841
  &.is-mobile {
@@ -451,35 +865,88 @@ $gap :
451
865
  // Responsiveness
452
866
  @include tablet {
453
867
  &:not(.is-desktop) {
454
- flex-direction: row;
868
+ display: flex;
455
869
  }
456
870
  }
457
871
 
458
872
  @include desktop {
459
873
  // Modifiers
460
874
  &.is-desktop {
461
- flex-direction: row;
875
+ display: flex;
462
876
  }
463
877
  }
464
- @include mobile{
465
- &.is-fullbleed {
466
- width: 100vw !important;
467
- margin-left: 50%;
468
- transform: translateX(-50%);
469
- padding: 24px;
470
- }
471
- &.is-fullbleed {
472
- scroll-padding: 24px;
473
- }
474
- &.is-fullbleed.is-scrollable .column{
475
- scroll-snap-align: start;
476
- scroll-padding: 24px;
878
+ }
879
+
880
+ @if $variable-columns {
881
+ .columns.is-variable {
882
+ --columnGap: 7.5px;
883
+
884
+ margin-left: calc(-1 * var(--columnGap));
885
+ margin-right: calc(-1 * var(--columnGap));
886
+
887
+ > .column {
888
+ padding-left: var(--columnGap);
889
+ padding-right: var(--columnGap);
477
890
  }
478
- .scroll-view{
479
- overflow: inherit;
891
+
892
+ @for $i from 0 through 12 {
893
+ &.is-#{$i} {
894
+ --columnGap: #{$i * 2.5px};
895
+ }
896
+
897
+ @include mobile {
898
+ &.is-#{$i}-mobile {
899
+ --columnGap: #{$i * 2.5px};
900
+ }
901
+ }
902
+
903
+ @include tablet {
904
+ &.is-#{$i}-tablet {
905
+ --columnGap: #{$i * 2.5px};
906
+ }
907
+ }
908
+
909
+ @include tablet-only {
910
+ &.is-#{$i}-tablet-only {
911
+ --columnGap: #{$i * 2.5px};
912
+ }
913
+ }
914
+
915
+ @include touch {
916
+ &.is-#{$i}-touch {
917
+ --columnGap: #{$i * 2.5px};
918
+ }
919
+ }
920
+
921
+ @include desktop {
922
+ &.is-#{$i}-desktop {
923
+ --columnGap: #{$i * 2.5px};
924
+ }
925
+ }
926
+
927
+ @include desktop-only {
928
+ &.is-#{$i}-desktop-only {
929
+ --columnGap: #{$i * 2.5px};
930
+ }
931
+ }
932
+
933
+ @include widescreen {
934
+ &.is-#{$i}-widescreen {
935
+ --columnGap: #{$i * 2.5px};
936
+ }
937
+ }
938
+
939
+ @include widescreen-only {
940
+ &.is-#{$i}-widescreen-only {
941
+ --columnGap: #{$i * 2.5px};
942
+ }
943
+ }
944
+
945
+ @include fullhd {
946
+ &.is-#{$i}-fullhd {
947
+ --columnGap: #{$i * 2.5px};
948
+ }
949
+ }
480
950
  }
481
951
  }
482
952
  }
483
- :root{
484
- --slider-size:min(100%, 1348px);
485
- }