@subroh0508/marp-theme-canvas 0.1.2 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/README.ja.md +11 -9
  2. package/README.md +11 -9
  3. package/css/black-canvas/common-layout/columns.css +213 -0
  4. package/css/black-canvas/common-layout/flex.css +89 -0
  5. package/css/black-canvas/common-layout/text-align.css +73 -0
  6. package/css/{white-canvas/element → black-canvas/component}/heading.css +0 -1
  7. package/css/black-canvas/component/hr.css +12 -0
  8. package/css/black-canvas/component/section.css +8 -1
  9. package/css/{white-canvas/element → black-canvas/decorator}/hr.css +0 -13
  10. package/css/black-canvas/{pattern → slide-pattern}/display.css +1 -0
  11. package/css/{white-canvas/pattern → black-canvas/slide-pattern}/section.css +1 -0
  12. package/css/black-canvas/{pattern → slide-pattern}/title.css +1 -0
  13. package/css/black-canvas.css +228 -15
  14. package/css/white-canvas/common-layout/columns.css +213 -0
  15. package/css/white-canvas/common-layout/flex.css +89 -0
  16. package/css/white-canvas/common-layout/text-align.css +73 -0
  17. package/css/{black-canvas/element → white-canvas/component}/heading.css +0 -1
  18. package/css/white-canvas/component/hr.css +12 -0
  19. package/css/white-canvas/component/section.css +8 -1
  20. package/css/{black-canvas/element → white-canvas/decorator}/hr.css +0 -13
  21. package/css/white-canvas/{pattern → slide-pattern}/display.css +1 -0
  22. package/css/{black-canvas/pattern → white-canvas/slide-pattern}/section.css +1 -0
  23. package/css/white-canvas/{pattern → slide-pattern}/title.css +1 -0
  24. package/css/white-canvas.css +228 -15
  25. package/package.json +12 -9
  26. package/scss/black-canvas/{component → common-layout}/columns.scss +1 -1
  27. package/scss/black-canvas/common-layout/flex.scss +5 -0
  28. package/scss/black-canvas/common-layout/text-align.scss +5 -0
  29. package/scss/black-canvas/{element → component}/blockquote.scss +1 -1
  30. package/scss/black-canvas/{element → component}/code.scss +1 -1
  31. package/scss/black-canvas/{element → component}/heading.scss +1 -1
  32. package/scss/black-canvas/{element → component}/hr.scss +1 -1
  33. package/scss/black-canvas/{element → component}/link.scss +1 -1
  34. package/scss/black-canvas/{element → component}/list.scss +1 -1
  35. package/scss/black-canvas/{element → component}/paragraph.scss +1 -1
  36. package/scss/black-canvas/{element → component}/prettylights/dark.scss +1 -1
  37. package/scss/black-canvas/component/section.scss +2 -1
  38. package/scss/black-canvas/{element → component}/table.scss +1 -1
  39. package/scss/black-canvas/{element → component}/text-decorator.scss +1 -1
  40. package/scss/black-canvas/decorator/hr.scss +9 -0
  41. package/scss/black-canvas/{pattern → slide-pattern}/agenda.scss +1 -1
  42. package/scss/black-canvas/{pattern → slide-pattern}/display.scss +2 -1
  43. package/scss/black-canvas/{pattern → slide-pattern}/section.scss +2 -1
  44. package/scss/black-canvas/{pattern → slide-pattern}/title.scss +2 -1
  45. package/scss/black-canvas/{pattern → slide-pattern}/toc.scss +1 -1
  46. package/scss/black-canvas.scss +22 -19
  47. package/scss/canvas/CLAUDE.md +4 -3
  48. package/scss/canvas/_index.scss +23 -22
  49. package/scss/canvas/common-layout/CLAUDE.md +44 -0
  50. package/scss/canvas/{component → common-layout}/_columns.scss +4 -0
  51. package/scss/canvas/common-layout/_flex.scss +105 -0
  52. package/scss/canvas/common-layout/_text-align.scss +87 -0
  53. package/scss/canvas/component/CLAUDE.md +15 -10
  54. package/scss/canvas/{element → component}/_heading.scss +0 -1
  55. package/scss/canvas/component/_hr.scss +22 -0
  56. package/scss/canvas/component/_section.scss +14 -2
  57. package/scss/canvas/{element → component}/prettylights/CLAUDE.md +1 -1
  58. package/scss/canvas/decorator/CLAUDE.md +41 -0
  59. package/scss/canvas/decorator/_hr.scss +26 -0
  60. package/scss/canvas/{pattern → slide-pattern}/CLAUDE.md +1 -1
  61. package/scss/canvas/{pattern → slide-pattern}/_display.scss +3 -1
  62. package/scss/canvas/{pattern → slide-pattern}/_section.scss +3 -1
  63. package/scss/canvas/{pattern → slide-pattern}/_title.scss +3 -1
  64. package/scss/white-canvas/{component → common-layout}/columns.scss +1 -1
  65. package/scss/white-canvas/common-layout/flex.scss +5 -0
  66. package/scss/white-canvas/common-layout/text-align.scss +5 -0
  67. package/scss/white-canvas/{element → component}/blockquote.scss +1 -1
  68. package/scss/white-canvas/{element → component}/code.scss +1 -1
  69. package/scss/white-canvas/{element → component}/heading.scss +1 -1
  70. package/scss/white-canvas/{element → component}/hr.scss +1 -1
  71. package/scss/white-canvas/{element → component}/link.scss +1 -1
  72. package/scss/white-canvas/{element → component}/list.scss +1 -1
  73. package/scss/white-canvas/{element → component}/paragraph.scss +1 -1
  74. package/scss/white-canvas/{element → component}/prettylights/light.scss +1 -1
  75. package/scss/white-canvas/component/section.scss +2 -1
  76. package/scss/white-canvas/{element → component}/table.scss +1 -1
  77. package/scss/white-canvas/{element → component}/text-decorator.scss +1 -1
  78. package/scss/white-canvas/decorator/hr.scss +9 -0
  79. package/scss/white-canvas/{pattern → slide-pattern}/agenda.scss +1 -1
  80. package/scss/white-canvas/{pattern → slide-pattern}/display.scss +2 -1
  81. package/scss/white-canvas/{pattern → slide-pattern}/section.scss +2 -1
  82. package/scss/white-canvas/{pattern → slide-pattern}/title.scss +2 -1
  83. package/scss/white-canvas/{pattern → slide-pattern}/toc.scss +1 -1
  84. package/scss/white-canvas.scss +22 -19
  85. package/scss/canvas/element/CLAUDE.md +0 -52
  86. package/scss/canvas/element/_hr.scss +0 -36
  87. /package/css/black-canvas/{element → component}/blockquote.css +0 -0
  88. /package/css/black-canvas/{element → component}/code.css +0 -0
  89. /package/css/black-canvas/{element → component}/link.css +0 -0
  90. /package/css/black-canvas/{element → component}/list.css +0 -0
  91. /package/css/black-canvas/{element → component}/paragraph.css +0 -0
  92. /package/css/black-canvas/{element → component}/prettylights/dark.css +0 -0
  93. /package/css/black-canvas/{element → component}/table.css +0 -0
  94. /package/css/black-canvas/{element → component}/text-decorator.css +0 -0
  95. /package/css/black-canvas/{pattern → slide-pattern}/agenda.css +0 -0
  96. /package/css/black-canvas/{pattern → slide-pattern}/toc.css +0 -0
  97. /package/css/white-canvas/{element → component}/blockquote.css +0 -0
  98. /package/css/white-canvas/{element → component}/code.css +0 -0
  99. /package/css/white-canvas/{element → component}/link.css +0 -0
  100. /package/css/white-canvas/{element → component}/list.css +0 -0
  101. /package/css/white-canvas/{element → component}/paragraph.css +0 -0
  102. /package/css/white-canvas/{element → component}/prettylights/light.css +0 -0
  103. /package/css/white-canvas/{element → component}/table.css +0 -0
  104. /package/css/white-canvas/{element → component}/text-decorator.css +0 -0
  105. /package/css/white-canvas/{pattern → slide-pattern}/agenda.css +0 -0
  106. /package/css/white-canvas/{pattern → slide-pattern}/toc.css +0 -0
  107. /package/scss/canvas/{element → component}/_blockquote.scss +0 -0
  108. /package/scss/canvas/{element → component}/_code.scss +0 -0
  109. /package/scss/canvas/{element → component}/_link.scss +0 -0
  110. /package/scss/canvas/{element → component}/_list.scss +0 -0
  111. /package/scss/canvas/{element → component}/_paragraph.scss +0 -0
  112. /package/scss/canvas/{element → component}/_table.scss +0 -0
  113. /package/scss/canvas/{element → component}/_text-decorator.scss +0 -0
  114. /package/scss/canvas/{element → component}/prettylights/_base.scss +0 -0
  115. /package/scss/canvas/{element → component}/prettylights/_dark.scss +0 -0
  116. /package/scss/canvas/{element → component}/prettylights/_index.scss +0 -0
  117. /package/scss/canvas/{element → component}/prettylights/_light.scss +0 -0
  118. /package/scss/canvas/{pattern → slide-pattern}/_agenda.scss +0 -0
  119. /package/scss/canvas/{pattern → slide-pattern}/_toc.scss +0 -0
package/README.ja.md CHANGED
@@ -19,6 +19,8 @@
19
19
  - **SCSSモジュール**: 必要なスタイルだけを個別にインポート可能
20
20
  - **GitHub風シンタックスハイライト**: prettylightsベースのコードハイライト
21
21
  - **マルチカラムレイアウト**: 2カラム・3カラムレイアウトに対応
22
+ - **Flexアラインメントユーティリティ**: Tailwind風のjustify-content・align-itemsクラス
23
+ - **テキストアラインメントユーティリティ**: Tailwind風のtext-alignクラス
22
24
 
23
25
  ## インストール
24
26
 
@@ -207,14 +209,14 @@ Canvasのスタイルはモジュール化されており、独自テーマ作
207
209
  scss/
208
210
  ├── canvas/ # ベースmixin(@useでインポート可能)
209
211
  │ ├── token/ # デザイントークン(色、タイポグラフィ)
210
- │ ├── element/ # HTML要素スタイル(見出し、テーブル、コード等)
211
- │ ├── component/ # 複合コンポーネント(セクション、ヘッダー、フッター等)
212
- └── pattern/ # ページレイアウトパターン(タイトル、目次、アジェンダ等)
212
+ │ ├── component/ # HTML要素単体・組み合わせのスタイル(見出し、テーブル、コード、セクション等)
213
+ │ ├── common-layout/ # 複数のslide-patternから参照される再利用可能なレイアウト定義
214
+ ├── decorator/ # 明示的なクラス指定が必要な装飾スタイル
215
+ │ └── slide-pattern/ # ページレイアウトパターン(タイトル、目次、アジェンダ等)
213
216
  ├── white-canvas/ # ライトテーマ設定
214
217
  │ ├── token/ # テーマ固有のトークン
215
- │ ├── element/ # 要素の設定
216
218
  │ ├── component/ # コンポーネントの設定
217
- │ └── pattern/ # パターンの設定
219
+ │ └── slide-pattern/ # スライドパターンの設定
218
220
  ├── black-canvas/ # ダークテーマ設定
219
221
  │ └── (white-canvasと同じ構造)
220
222
  ├── white-canvas.scss # ライトテーマのエントリーポイント
@@ -231,9 +233,9 @@ scss/
231
233
  */
232
234
 
233
235
  // ベースmixinをインポート
234
- @use '@subroh0508/marp-theme-canvas/scss/canvas/element/heading' as heading;
236
+ @use '@subroh0508/marp-theme-canvas/scss/canvas/component/heading' as heading;
235
237
  @use '@subroh0508/marp-theme-canvas/scss/canvas/component/section' as section;
236
- @use '@subroh0508/marp-theme-canvas/scss/canvas/pattern/title' as title;
238
+ @use '@subroh0508/marp-theme-canvas/scss/canvas/slide-pattern/title' as title;
237
239
 
238
240
  // Google Fonts
239
241
  @import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700;900&display=swap');
@@ -281,7 +283,7 @@ scss/
281
283
 
282
284
  ```scss
283
285
  // テーマ設定ファイルをインポート
284
- @use '@subroh0508/marp-theme-canvas/scss/white-canvas/element/heading';
286
+ @use '@subroh0508/marp-theme-canvas/scss/white-canvas/component/heading';
285
287
  @use '@subroh0508/marp-theme-canvas/scss/white-canvas/component/section';
286
288
  ```
287
289
 
@@ -293,7 +295,7 @@ import '@subroh0508/marp-theme-canvas/white-canvas.css'
293
295
  import '@subroh0508/marp-theme-canvas/black-canvas.css'
294
296
 
295
297
  // 個別のCSSモジュールをインポート
296
- import '@subroh0508/marp-theme-canvas/white-canvas/element/heading.css'
298
+ import '@subroh0508/marp-theme-canvas/white-canvas/component/heading.css'
297
299
  ```
298
300
 
299
301
  ## 開発
package/README.md CHANGED
@@ -19,6 +19,8 @@ A simple and minimal Marp theme. A design that eliminates unnecessary decoration
19
19
  - **SCSS Modules**: Import only the styles you need
20
20
  - **GitHub-style Syntax Highlighting**: Code highlighting based on prettylights
21
21
  - **Multi-column Layout**: Support for 2-column and 3-column layouts
22
+ - **Flex Alignment Utilities**: Tailwind-style justify-content and align-items classes
23
+ - **Text Alignment Utilities**: Tailwind-style text-align classes
22
24
 
23
25
  ## Installation
24
26
 
@@ -207,14 +209,14 @@ Canvas styles are modularized and can be imported individually when creating cus
207
209
  scss/
208
210
  ├── canvas/ # Base mixins (importable via @use)
209
211
  │ ├── token/ # Design tokens (color, typography)
210
- │ ├── element/ # HTML element styles (heading, table, code, etc.)
211
- │ ├── component/ # Composite components (section, header, footer, etc.)
212
- └── pattern/ # Page layout patterns (title, toc, agenda, etc.)
212
+ │ ├── component/ # Styles for HTML elements and their combinations (heading, table, code, section, etc.)
213
+ │ ├── common-layout/ # Reusable layout definitions referenced by multiple slide patterns
214
+ ├── decorator/ # Decorative styles requiring explicit class specification
215
+ │ └── slide-pattern/ # Page layout patterns (title, toc, agenda, etc.)
213
216
  ├── white-canvas/ # Light theme configuration
214
217
  │ ├── token/ # Theme-specific tokens
215
- │ ├── element/ # Element configurations
216
218
  │ ├── component/ # Component configurations
217
- │ └── pattern/ # Pattern configurations
219
+ │ └── slide-pattern/ # Slide pattern configurations
218
220
  ├── black-canvas/ # Dark theme configuration
219
221
  │ └── (same structure as white-canvas)
220
222
  ├── white-canvas.scss # Light theme entry point
@@ -231,9 +233,9 @@ Import base mixins from `canvas/` to create custom themes:
231
233
  */
232
234
 
233
235
  // Import base mixins
234
- @use '@subroh0508/marp-theme-canvas/scss/canvas/element/heading' as heading;
236
+ @use '@subroh0508/marp-theme-canvas/scss/canvas/component/heading' as heading;
235
237
  @use '@subroh0508/marp-theme-canvas/scss/canvas/component/section' as section;
236
- @use '@subroh0508/marp-theme-canvas/scss/canvas/pattern/title' as title;
238
+ @use '@subroh0508/marp-theme-canvas/scss/canvas/slide-pattern/title' as title;
237
239
 
238
240
  // Google Fonts
239
241
  @import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700;900&display=swap');
@@ -281,7 +283,7 @@ You can also import pre-configured theme files:
281
283
 
282
284
  ```scss
283
285
  // Import theme configuration files
284
- @use '@subroh0508/marp-theme-canvas/scss/white-canvas/element/heading';
286
+ @use '@subroh0508/marp-theme-canvas/scss/white-canvas/component/heading';
285
287
  @use '@subroh0508/marp-theme-canvas/scss/white-canvas/component/section';
286
288
  ```
287
289
 
@@ -293,7 +295,7 @@ import '@subroh0508/marp-theme-canvas/white-canvas.css'
293
295
  import '@subroh0508/marp-theme-canvas/black-canvas.css'
294
296
 
295
297
  // Import individual CSS modules
296
- import '@subroh0508/marp-theme-canvas/white-canvas/element/heading.css'
298
+ import '@subroh0508/marp-theme-canvas/white-canvas/component/heading.css'
297
299
  ```
298
300
 
299
301
  ## Development
@@ -0,0 +1,213 @@
1
+ :root {
2
+ --cols-gap: 1em;
3
+ }
4
+
5
+ section.cols {
6
+ flex-direction: row;
7
+ gap: var(--cols-gap);
8
+ }
9
+ section.cols > .col {
10
+ flex: 1;
11
+ min-width: 0;
12
+ display: flex;
13
+ flex-direction: column;
14
+ }
15
+ section.cols > .col > *,
16
+ section.cols > .col p > * {
17
+ max-width: 100%;
18
+ }
19
+ section.cols > .col-1 {
20
+ flex: 1;
21
+ min-width: 0;
22
+ display: flex;
23
+ flex-direction: column;
24
+ }
25
+ section.cols > .col-1 > *,
26
+ section.cols > .col-1 p > * {
27
+ max-width: 100%;
28
+ }
29
+ section.cols > .col-2 {
30
+ flex: 2;
31
+ min-width: 0;
32
+ display: flex;
33
+ flex-direction: column;
34
+ }
35
+ section.cols > .col-2 > *,
36
+ section.cols > .col-2 p > * {
37
+ max-width: 100%;
38
+ }
39
+ section.cols > .col-3 {
40
+ flex: 3;
41
+ min-width: 0;
42
+ display: flex;
43
+ flex-direction: column;
44
+ }
45
+ section.cols > .col-3 > *,
46
+ section.cols > .col-3 p > * {
47
+ max-width: 100%;
48
+ }
49
+ section.cols > .col-4 {
50
+ flex: 4;
51
+ min-width: 0;
52
+ display: flex;
53
+ flex-direction: column;
54
+ }
55
+ section.cols > .col-4 > *,
56
+ section.cols > .col-4 p > * {
57
+ max-width: 100%;
58
+ }
59
+ section.cols > .col-6 {
60
+ flex: 6;
61
+ min-width: 0;
62
+ display: flex;
63
+ flex-direction: column;
64
+ }
65
+ section.cols > .col-6 > *,
66
+ section.cols > .col-6 p > * {
67
+ max-width: 100%;
68
+ }
69
+ section.cols > .col-7 {
70
+ flex: 7;
71
+ min-width: 0;
72
+ display: flex;
73
+ flex-direction: column;
74
+ }
75
+ section.cols > .col-7 > *,
76
+ section.cols > .col-7 p > * {
77
+ max-width: 100%;
78
+ }
79
+ section.cols > .col-8 {
80
+ flex: 8;
81
+ min-width: 0;
82
+ display: flex;
83
+ flex-direction: column;
84
+ }
85
+ section.cols > .col-8 > *,
86
+ section.cols > .col-8 p > * {
87
+ max-width: 100%;
88
+ }
89
+ section.cols > .col-9 {
90
+ flex: 9;
91
+ min-width: 0;
92
+ display: flex;
93
+ flex-direction: column;
94
+ }
95
+ section.cols > .col-9 > *,
96
+ section.cols > .col-9 p > * {
97
+ max-width: 100%;
98
+ }
99
+ section.cols > .col-10 {
100
+ flex: 10;
101
+ min-width: 0;
102
+ display: flex;
103
+ flex-direction: column;
104
+ }
105
+ section.cols > .col-10 > *,
106
+ section.cols > .col-10 p > * {
107
+ max-width: 100%;
108
+ }
109
+ section .cols {
110
+ display: flex;
111
+ gap: var(--cols-gap);
112
+ width: 100%;
113
+ }
114
+ section .cols > .col {
115
+ flex: 1;
116
+ min-width: 0;
117
+ display: flex;
118
+ flex-direction: column;
119
+ }
120
+ section .cols > .col > *,
121
+ section .cols > .col p > * {
122
+ max-width: 100%;
123
+ }
124
+ section .cols > .col-1 {
125
+ flex: 1;
126
+ min-width: 0;
127
+ display: flex;
128
+ flex-direction: column;
129
+ }
130
+ section .cols > .col-1 > *,
131
+ section .cols > .col-1 p > * {
132
+ max-width: 100%;
133
+ }
134
+ section .cols > .col-2 {
135
+ flex: 2;
136
+ min-width: 0;
137
+ display: flex;
138
+ flex-direction: column;
139
+ }
140
+ section .cols > .col-2 > *,
141
+ section .cols > .col-2 p > * {
142
+ max-width: 100%;
143
+ }
144
+ section .cols > .col-3 {
145
+ flex: 3;
146
+ min-width: 0;
147
+ display: flex;
148
+ flex-direction: column;
149
+ }
150
+ section .cols > .col-3 > *,
151
+ section .cols > .col-3 p > * {
152
+ max-width: 100%;
153
+ }
154
+ section .cols > .col-4 {
155
+ flex: 4;
156
+ min-width: 0;
157
+ display: flex;
158
+ flex-direction: column;
159
+ }
160
+ section .cols > .col-4 > *,
161
+ section .cols > .col-4 p > * {
162
+ max-width: 100%;
163
+ }
164
+ section .cols > .col-6 {
165
+ flex: 6;
166
+ min-width: 0;
167
+ display: flex;
168
+ flex-direction: column;
169
+ }
170
+ section .cols > .col-6 > *,
171
+ section .cols > .col-6 p > * {
172
+ max-width: 100%;
173
+ }
174
+ section .cols > .col-7 {
175
+ flex: 7;
176
+ min-width: 0;
177
+ display: flex;
178
+ flex-direction: column;
179
+ }
180
+ section .cols > .col-7 > *,
181
+ section .cols > .col-7 p > * {
182
+ max-width: 100%;
183
+ }
184
+ section .cols > .col-8 {
185
+ flex: 8;
186
+ min-width: 0;
187
+ display: flex;
188
+ flex-direction: column;
189
+ }
190
+ section .cols > .col-8 > *,
191
+ section .cols > .col-8 p > * {
192
+ max-width: 100%;
193
+ }
194
+ section .cols > .col-9 {
195
+ flex: 9;
196
+ min-width: 0;
197
+ display: flex;
198
+ flex-direction: column;
199
+ }
200
+ section .cols > .col-9 > *,
201
+ section .cols > .col-9 p > * {
202
+ max-width: 100%;
203
+ }
204
+ section .cols > .col-10 {
205
+ flex: 10;
206
+ min-width: 0;
207
+ display: flex;
208
+ flex-direction: column;
209
+ }
210
+ section .cols > .col-10 > *,
211
+ section .cols > .col-10 p > * {
212
+ max-width: 100%;
213
+ }
@@ -0,0 +1,89 @@
1
+ section.justify-start {
2
+ justify-content: flex-start;
3
+ }
4
+ section.justify-end {
5
+ justify-content: flex-end;
6
+ }
7
+ section.justify-center {
8
+ justify-content: center;
9
+ }
10
+ section.justify-between {
11
+ justify-content: space-between;
12
+ }
13
+ section.justify-around {
14
+ justify-content: space-around;
15
+ }
16
+ section.justify-evenly {
17
+ justify-content: space-evenly;
18
+ }
19
+ section.items-start {
20
+ align-items: flex-start;
21
+ }
22
+ section.items-end {
23
+ align-items: flex-end;
24
+ }
25
+ section.items-center {
26
+ align-items: center;
27
+ }
28
+ section.items-baseline {
29
+ align-items: baseline;
30
+ }
31
+ section.items-stretch {
32
+ align-items: stretch;
33
+ }
34
+
35
+ .col.justify-start,
36
+ [class^=col-].justify-start,
37
+ [class*=" col-"].justify-start {
38
+ justify-content: flex-start;
39
+ }
40
+ .col.justify-end,
41
+ [class^=col-].justify-end,
42
+ [class*=" col-"].justify-end {
43
+ justify-content: flex-end;
44
+ }
45
+ .col.justify-center,
46
+ [class^=col-].justify-center,
47
+ [class*=" col-"].justify-center {
48
+ justify-content: center;
49
+ }
50
+ .col.justify-between,
51
+ [class^=col-].justify-between,
52
+ [class*=" col-"].justify-between {
53
+ justify-content: space-between;
54
+ }
55
+ .col.justify-around,
56
+ [class^=col-].justify-around,
57
+ [class*=" col-"].justify-around {
58
+ justify-content: space-around;
59
+ }
60
+ .col.justify-evenly,
61
+ [class^=col-].justify-evenly,
62
+ [class*=" col-"].justify-evenly {
63
+ justify-content: space-evenly;
64
+ }
65
+ .col.items-start,
66
+ [class^=col-].items-start,
67
+ [class*=" col-"].items-start {
68
+ align-items: flex-start;
69
+ }
70
+ .col.items-end,
71
+ [class^=col-].items-end,
72
+ [class*=" col-"].items-end {
73
+ align-items: flex-end;
74
+ }
75
+ .col.items-center,
76
+ [class^=col-].items-center,
77
+ [class*=" col-"].items-center {
78
+ align-items: center;
79
+ }
80
+ .col.items-baseline,
81
+ [class^=col-].items-baseline,
82
+ [class*=" col-"].items-baseline {
83
+ align-items: baseline;
84
+ }
85
+ .col.items-stretch,
86
+ [class^=col-].items-stretch,
87
+ [class*=" col-"].items-stretch {
88
+ align-items: stretch;
89
+ }
@@ -0,0 +1,73 @@
1
+ section.text-left p {
2
+ text-align: left;
3
+ }
4
+ section.text-center p {
5
+ text-align: center;
6
+ }
7
+ section.text-right p {
8
+ text-align: right;
9
+ }
10
+ section.text-justify p {
11
+ text-align: justify;
12
+ }
13
+ section.text-start p {
14
+ text-align: start;
15
+ }
16
+ section.text-end p {
17
+ text-align: end;
18
+ }
19
+ section.text-has-img-left p:has(img:not(.emoji)) {
20
+ text-align: left;
21
+ }
22
+ section.text-has-img-center p:has(img:not(.emoji)) {
23
+ text-align: center;
24
+ }
25
+ section.text-has-img-right p:has(img:not(.emoji)) {
26
+ text-align: right;
27
+ }
28
+
29
+ .col.text-left p,
30
+ [class^=col-].text-left p,
31
+ [class*=" col-"].text-left p {
32
+ text-align: left;
33
+ }
34
+ .col.text-center p,
35
+ [class^=col-].text-center p,
36
+ [class*=" col-"].text-center p {
37
+ text-align: center;
38
+ }
39
+ .col.text-right p,
40
+ [class^=col-].text-right p,
41
+ [class*=" col-"].text-right p {
42
+ text-align: right;
43
+ }
44
+ .col.text-justify p,
45
+ [class^=col-].text-justify p,
46
+ [class*=" col-"].text-justify p {
47
+ text-align: justify;
48
+ }
49
+ .col.text-start p,
50
+ [class^=col-].text-start p,
51
+ [class*=" col-"].text-start p {
52
+ text-align: start;
53
+ }
54
+ .col.text-end p,
55
+ [class^=col-].text-end p,
56
+ [class*=" col-"].text-end p {
57
+ text-align: end;
58
+ }
59
+ .col.text-has-img-left p:has(img:not(.emoji)),
60
+ [class^=col-].text-has-img-left p:has(img:not(.emoji)),
61
+ [class*=" col-"].text-has-img-left p:has(img:not(.emoji)) {
62
+ text-align: left;
63
+ }
64
+ .col.text-has-img-center p:has(img:not(.emoji)),
65
+ [class^=col-].text-has-img-center p:has(img:not(.emoji)),
66
+ [class*=" col-"].text-has-img-center p:has(img:not(.emoji)) {
67
+ text-align: center;
68
+ }
69
+ .col.text-has-img-right p:has(img:not(.emoji)),
70
+ [class^=col-].text-has-img-right p:has(img:not(.emoji)),
71
+ [class*=" col-"].text-has-img-right p:has(img:not(.emoji)) {
72
+ text-align: right;
73
+ }
@@ -46,7 +46,6 @@ h2 {
46
46
  font-weight: var(--h2-font-weight);
47
47
  line-height: var(--h2-line-height);
48
48
  color: var(--h2-color-text);
49
- margin: 0 0 0.8em;
50
49
  }
51
50
 
52
51
  h3 {
@@ -0,0 +1,12 @@
1
+ :root {
2
+ --hr-height: 1px;
3
+ --hr-width: 100%;
4
+ --hr-color: var(--color-grey-medium);
5
+ }
6
+
7
+ hr {
8
+ width: var(--hr-width);
9
+ border: none;
10
+ border-top: var(--hr-height) solid var(--hr-color);
11
+ margin: 0 0 1em;
12
+ }
@@ -6,12 +6,13 @@
6
6
  --base-font-family: var(--font-family-base);
7
7
  --base-font-size: var(--font-size-base);
8
8
  --base-line-height: var(--line-height-normal);
9
+ --base-section-title-height: calc(var(--font-size-xl) * var(--line-height-tight) + var(--font-size-xl) * 0.8em / 1em);
9
10
  }
10
11
 
11
12
  section {
12
13
  width: 1920px;
13
14
  height: 1080px;
14
- padding: var(--base-padding-y) var(--base-padding-x);
15
+ padding: calc(var(--base-padding-y) + var(--base-section-title-height)) var(--base-padding-x) var(--base-padding-y);
15
16
  background-color: var(--base-color-bg);
16
17
  color: var(--base-color-text);
17
18
  font-family: var(--base-font-family);
@@ -22,3 +23,9 @@ section {
22
23
  box-sizing: border-box;
23
24
  overflow: hidden;
24
25
  }
26
+
27
+ section > h2:first-child {
28
+ position: absolute;
29
+ top: var(--base-padding-y);
30
+ left: var(--base-padding-x);
31
+ }
@@ -1,16 +1,3 @@
1
- :root {
2
- --hr-height: 1px;
3
- --hr-width: 100%;
4
- --hr-color: var(--color-grey-light);
5
- }
6
-
7
- hr {
8
- width: var(--hr-width);
9
- border: none;
10
- border-top: var(--hr-height) solid var(--hr-color);
11
- margin: 0 0 1em;
12
- }
13
-
14
1
  section.hr-solid hr {
15
2
  width: var(--hr-width);
16
3
  border: none;
@@ -1,6 +1,7 @@
1
1
  section.display {
2
2
  --display-font-size: var(--font-size-3xl);
3
3
  --display-font-weight: var(--font-weight-bold);
4
+ padding-top: var(--base-padding-y);
4
5
  justify-content: center;
5
6
  align-items: center;
6
7
  }
@@ -1,6 +1,7 @@
1
1
  section.section {
2
2
  --section-font-size: var(--font-size-xxl);
3
3
  --section-font-weight: bold;
4
+ padding-top: var(--base-padding-y);
4
5
  justify-content: center;
5
6
  }
6
7
  section.section p {
@@ -1,6 +1,7 @@
1
1
  section.title {
2
2
  --title-h1-font-size: var(--font-size-3xl);
3
3
  --title-metadata-color-text: var(--color-grey-medium);
4
+ padding-top: var(--base-padding-y);
4
5
  justify-content: center;
5
6
  }
6
7
  section.title h1 {