@keenmate/pure-admin-core 2.3.6 → 2.5.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.
- package/README.md +23 -29
- package/dist/css/main.css +68 -148
- package/package.json +1 -5
- package/snippets/AUDIT.md +94 -0
- package/snippets/alerts.html +264 -89
- package/snippets/badges.html +193 -61
- package/snippets/buttons.html +178 -0
- package/snippets/callouts.html +210 -129
- package/snippets/cards.html +383 -200
- package/snippets/checkbox-lists.html +199 -65
- package/snippets/code.html +55 -11
- package/snippets/command-palette.html +401 -111
- package/snippets/comparison.html +144 -93
- package/snippets/customization.html +311 -104
- package/snippets/data-display.html +584 -0
- package/snippets/detail-panel.html +470 -138
- package/snippets/filter-card.html +246 -0
- package/snippets/forms.html +408 -308
- package/snippets/grid.html +253 -141
- package/snippets/layout.html +379 -480
- package/snippets/lists.html +144 -47
- package/snippets/loaders.html +64 -39
- package/snippets/manifest.json +330 -280
- package/snippets/modal-dialogs.html +137 -64
- package/snippets/modals.html +221 -151
- package/snippets/notifications.html +285 -0
- package/snippets/popconfirm.html +213 -19
- package/snippets/profile.html +290 -330
- package/snippets/statistics.html +247 -0
- package/snippets/tables.html +359 -150
- package/snippets/tabs.html +129 -45
- package/snippets/timeline.html +123 -56
- package/snippets/toasts.html +179 -31
- package/snippets/tooltips.html +199 -81
- package/snippets/typography.html +183 -58
- package/snippets/utilities.html +511 -415
- package/snippets/virtual-scroll.html +201 -75
- package/snippets/web-daterangepicker.html +369 -189
- package/snippets/web-multiselect.html +360 -124
- package/src/scss/core-components/_alerts.scss +51 -12
- package/src/scss/core-components/_pagers.scss +1 -1
- package/src/scss/core-components/_popconfirm.scss +35 -13
- package/src/scss/core-components/_profile.scss +18 -8
- package/src/scss/core-components/_statistics.scss +12 -12
- package/src/scss/core-components/_tables.scss +2 -134
- package/src/scss/variables/_components.scss +17 -2
- package/scripts/download-themes.js +0 -351
package/snippets/grid.html
CHANGED
|
@@ -4,12 +4,32 @@
|
|
|
4
4
|
Native Flexbox Grid Reference
|
|
5
5
|
================================ -->
|
|
6
6
|
|
|
7
|
-
<!-- RESPONSIVE BREAKPOINTS -->
|
|
8
7
|
<!--
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
RESPONSIVE STRATEGY — IMPORTANT:
|
|
9
|
+
Responsive column classes (pa-col-sm-*, pa-col-md-*, pa-col-lg-*,
|
|
10
|
+
pa-col-xl-*) use CSS `@container` queries, NOT `@media`. They only
|
|
11
|
+
activate inside a containment context.
|
|
12
|
+
|
|
13
|
+
- Inside the framework's .pa-layout__main: works automatically (that
|
|
14
|
+
element sets container-type: inline-size).
|
|
15
|
+
- Anywhere else: wrap the grid in an element with the .pa-cq utility
|
|
16
|
+
(also container-type: inline-size) or set the container-type
|
|
17
|
+
yourself. Without it, the responsive classes silently do nothing.
|
|
18
|
+
|
|
19
|
+
Visibility helpers (pa-hide, pa-show, -bp, -below-bp) use @media and
|
|
20
|
+
do NOT need the containment context.
|
|
21
|
+
|
|
22
|
+
BREAKPOINTS (from $grid-breakpoints):
|
|
23
|
+
sm: 576px (container/viewport width ≥ 576px)
|
|
24
|
+
md: 768px (also = $mobile-breakpoint)
|
|
11
25
|
lg: 992px
|
|
12
26
|
xl: 1200px
|
|
27
|
+
|
|
28
|
+
AUTO-STACK ON MOBILE:
|
|
29
|
+
Below $mobile-breakpoint (768px), bare percentage/fraction columns
|
|
30
|
+
(pa-col-50, pa-col-1-3, etc.) auto-stack to 100% width, and offsets
|
|
31
|
+
are reset. To keep a non-stacked layout on phones, use explicit
|
|
32
|
+
responsive classes (pa-col-sm-50 won't stack, pa-col-50 will).
|
|
13
33
|
-->
|
|
14
34
|
|
|
15
35
|
|
|
@@ -69,18 +89,8 @@
|
|
|
69
89
|
</div>
|
|
70
90
|
|
|
71
91
|
|
|
72
|
-
<!-- FIFTHS
|
|
92
|
+
<!-- FIFTHS, SIXTHS, TWELFTHS (fraction aliases) -->
|
|
73
93
|
|
|
74
|
-
<!-- Five equal columns -->
|
|
75
|
-
<div class="pa-row">
|
|
76
|
-
<div class="pa-col-20">Fifth</div>
|
|
77
|
-
<div class="pa-col-20">Fifth</div>
|
|
78
|
-
<div class="pa-col-20">Fifth</div>
|
|
79
|
-
<div class="pa-col-20">Fifth</div>
|
|
80
|
-
<div class="pa-col-20">Fifth</div>
|
|
81
|
-
</div>
|
|
82
|
-
|
|
83
|
-
<!-- Using fraction aliases -->
|
|
84
94
|
<div class="pa-row">
|
|
85
95
|
<div class="pa-col-2-5">Two fifths</div>
|
|
86
96
|
<div class="pa-col-3-5">Three fifths</div>
|
|
@@ -91,19 +101,11 @@
|
|
|
91
101
|
<div class="pa-col-4-5">Four fifths</div>
|
|
92
102
|
</div>
|
|
93
103
|
|
|
94
|
-
|
|
95
|
-
<!-- SIXTHS (16.67%, 83.33%) -->
|
|
96
|
-
|
|
97
|
-
<!-- Using fraction aliases -->
|
|
98
104
|
<div class="pa-row">
|
|
99
105
|
<div class="pa-col-1-6">One sixth</div>
|
|
100
106
|
<div class="pa-col-5-6">Five sixths</div>
|
|
101
107
|
</div>
|
|
102
108
|
|
|
103
|
-
|
|
104
|
-
<!-- TWELFTHS (8.33%, etc.) -->
|
|
105
|
-
|
|
106
|
-
<!-- Using fraction aliases -->
|
|
107
109
|
<div class="pa-row">
|
|
108
110
|
<div class="pa-col-1-12">1/12</div>
|
|
109
111
|
<div class="pa-col-11-12">11/12</div>
|
|
@@ -117,7 +119,7 @@
|
|
|
117
119
|
|
|
118
120
|
<!-- 5% INCREMENT COLUMNS -->
|
|
119
121
|
|
|
120
|
-
<!--
|
|
122
|
+
<!-- Available sizes: 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100 -->
|
|
121
123
|
<div class="pa-row">
|
|
122
124
|
<div class="pa-col-15">15%</div>
|
|
123
125
|
<div class="pa-col-85">85%</div>
|
|
@@ -129,7 +131,34 @@
|
|
|
129
131
|
</div>
|
|
130
132
|
|
|
131
133
|
|
|
132
|
-
<!--
|
|
134
|
+
<!-- AUTO COLUMNS (no fixed width) -->
|
|
135
|
+
|
|
136
|
+
<!-- .pa-col: auto-equal width (flex: 1) — fills remaining space, shares equally with siblings -->
|
|
137
|
+
<div class="pa-row">
|
|
138
|
+
<div class="pa-col">Auto-equal</div>
|
|
139
|
+
<div class="pa-col">Auto-equal</div>
|
|
140
|
+
<div class="pa-col">Auto-equal</div>
|
|
141
|
+
</div>
|
|
142
|
+
|
|
143
|
+
<!-- .pa-col-auto: content-sized (flex: 0 0 auto) — shrinks to its content width -->
|
|
144
|
+
<div class="pa-row">
|
|
145
|
+
<div class="pa-col-auto">Just the text width</div>
|
|
146
|
+
<div class="pa-col">Fills the rest</div>
|
|
147
|
+
</div>
|
|
148
|
+
|
|
149
|
+
<!-- Mix and match — fixed + auto + content -->
|
|
150
|
+
<div class="pa-row">
|
|
151
|
+
<div class="pa-col-25">Fixed 25%</div>
|
|
152
|
+
<div class="pa-col">Fills remaining</div>
|
|
153
|
+
<div class="pa-col-auto">Content</div>
|
|
154
|
+
</div>
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
<!--
|
|
158
|
+
RESPONSIVE GRID
|
|
159
|
+
Requires @container context. Works out of the box inside the framework
|
|
160
|
+
layout (.pa-layout__main); elsewhere wrap in .pa-cq.
|
|
161
|
+
-->
|
|
133
162
|
|
|
134
163
|
<!-- Mobile: full width, Tablet+: half width -->
|
|
135
164
|
<div class="pa-row">
|
|
@@ -145,23 +174,17 @@
|
|
|
145
174
|
<div class="pa-col-100 pa-col-sm-50 pa-col-md-1-3 pa-col-lg-25">Multi-breakpoint</div>
|
|
146
175
|
</div>
|
|
147
176
|
|
|
148
|
-
<!--
|
|
149
|
-
<div class="pa-
|
|
150
|
-
<div class="pa-
|
|
151
|
-
|
|
152
|
-
</div>
|
|
153
|
-
|
|
154
|
-
<!-- Three-column responsive with fractions -->
|
|
155
|
-
<div class="pa-row">
|
|
156
|
-
<div class="pa-col-100 pa-col-sm-50 pa-col-lg-1-3">Column 1</div>
|
|
157
|
-
<div class="pa-col-100 pa-col-sm-50 pa-col-lg-1-3">Column 2</div>
|
|
158
|
-
<div class="pa-col-100 pa-col-sm-50 pa-col-lg-1-3">Column 3</div>
|
|
177
|
+
<!-- Standalone grid with explicit containment context -->
|
|
178
|
+
<div class="pa-cq">
|
|
179
|
+
<div class="pa-row">
|
|
180
|
+
<div class="pa-col-100 pa-col-md-50">Responsive works because of .pa-cq</div>
|
|
181
|
+
<div class="pa-col-100 pa-col-md-50">Responsive works because of .pa-cq</div>
|
|
182
|
+
</div>
|
|
159
183
|
</div>
|
|
160
184
|
|
|
161
185
|
|
|
162
|
-
<!-- NESTED GRIDS -->
|
|
186
|
+
<!-- NESTED GRIDS — nested .pa-row resets its own margin -->
|
|
163
187
|
|
|
164
|
-
<!-- Grid inside grid -->
|
|
165
188
|
<div class="pa-row">
|
|
166
189
|
<div class="pa-col-50">
|
|
167
190
|
<div class="pa-row">
|
|
@@ -177,29 +200,49 @@
|
|
|
177
200
|
|
|
178
201
|
<!-- ROW MODIFIERS -->
|
|
179
202
|
|
|
180
|
-
<!--
|
|
203
|
+
<!-- Gutter / spacing -->
|
|
181
204
|
<div class="pa-row pa-row--no-gutter">
|
|
182
|
-
<div class="pa-col-50">No gutter</div>
|
|
183
|
-
<div class="pa-col-50">
|
|
205
|
+
<div class="pa-col-50">No gutter between me</div>
|
|
206
|
+
<div class="pa-col-50">and me</div>
|
|
184
207
|
</div>
|
|
185
208
|
|
|
186
|
-
<!--
|
|
209
|
+
<!-- Horizontal alignment of children -->
|
|
187
210
|
<div class="pa-row pa-row--center">
|
|
188
|
-
<div class="pa-col-1-3">
|
|
211
|
+
<div class="pa-col-1-3">Centred</div>
|
|
212
|
+
</div>
|
|
213
|
+
|
|
214
|
+
<div class="pa-row pa-row--end">
|
|
215
|
+
<div class="pa-col-1-3">End-aligned</div>
|
|
189
216
|
</div>
|
|
190
217
|
|
|
191
|
-
<!-- Space between columns -->
|
|
192
218
|
<div class="pa-row pa-row--between">
|
|
193
|
-
<div class="pa-col-25">
|
|
194
|
-
<div class="pa-col-25">
|
|
219
|
+
<div class="pa-col-25">Space</div>
|
|
220
|
+
<div class="pa-col-25">Between</div>
|
|
221
|
+
</div>
|
|
222
|
+
|
|
223
|
+
<div class="pa-row pa-row--around">
|
|
224
|
+
<div class="pa-col-25">Space</div>
|
|
225
|
+
<div class="pa-col-25">Around</div>
|
|
226
|
+
</div>
|
|
227
|
+
|
|
228
|
+
<!-- Vertical alignment of children -->
|
|
229
|
+
<div class="pa-row pa-row--top">
|
|
230
|
+
<div class="pa-col-50">Top aligned</div>
|
|
231
|
+
</div>
|
|
232
|
+
<div class="pa-row pa-row--middle">
|
|
233
|
+
<div class="pa-col-50">Middle aligned</div>
|
|
234
|
+
</div>
|
|
235
|
+
<div class="pa-row pa-row--bottom">
|
|
236
|
+
<div class="pa-col-50">Bottom aligned</div>
|
|
237
|
+
</div>
|
|
238
|
+
<div class="pa-row pa-row--stretch">
|
|
239
|
+
<div class="pa-col-50">Stretch vertically (default, included for explicitness)</div>
|
|
195
240
|
</div>
|
|
196
241
|
|
|
197
|
-
<!-- Same
|
|
242
|
+
<!-- Same-height cards (normalises card heights across columns) -->
|
|
198
243
|
<div class="pa-row pa-row--same-height">
|
|
199
244
|
<div class="pa-col-1-3">
|
|
200
|
-
<div class="pa-card">
|
|
201
|
-
<div class="pa-card__body">Short</div>
|
|
202
|
-
</div>
|
|
245
|
+
<div class="pa-card"><div class="pa-card__body">Short</div></div>
|
|
203
246
|
</div>
|
|
204
247
|
<div class="pa-col-1-3">
|
|
205
248
|
<div class="pa-card">
|
|
@@ -211,23 +254,24 @@
|
|
|
211
254
|
</div>
|
|
212
255
|
</div>
|
|
213
256
|
<div class="pa-col-1-3">
|
|
214
|
-
<div class="pa-card">
|
|
215
|
-
<div class="pa-card__body">Medium</div>
|
|
216
|
-
</div>
|
|
257
|
+
<div class="pa-card"><div class="pa-card__body">Medium</div></div>
|
|
217
258
|
</div>
|
|
218
259
|
</div>
|
|
219
260
|
|
|
220
|
-
<!-- Vertical alignment -->
|
|
221
|
-
<div class="pa-row pa-row--top">
|
|
222
|
-
<div class="pa-col-50">Top aligned</div>
|
|
223
|
-
</div>
|
|
224
261
|
|
|
225
|
-
|
|
226
|
-
|
|
262
|
+
<!-- COLUMN MODIFIERS -->
|
|
263
|
+
|
|
264
|
+
<!-- --no-padding: kill the gutter on a single column (e.g., full-bleed card) -->
|
|
265
|
+
<div class="pa-row">
|
|
266
|
+
<div class="pa-col-50 pa-col--no-padding">No padding on this column</div>
|
|
267
|
+
<div class="pa-col-50">Normal gutter</div>
|
|
227
268
|
</div>
|
|
228
269
|
|
|
229
|
-
|
|
230
|
-
|
|
270
|
+
<!-- --grow / --shrink: adjust flex-grow / flex-shrink individually -->
|
|
271
|
+
<div class="pa-row">
|
|
272
|
+
<div class="pa-col-auto">Fixed-size</div>
|
|
273
|
+
<div class="pa-col-auto pa-col--grow">Grows to fill extra space</div>
|
|
274
|
+
<div class="pa-col-auto">Fixed-size</div>
|
|
231
275
|
</div>
|
|
232
276
|
|
|
233
277
|
|
|
@@ -250,89 +294,157 @@
|
|
|
250
294
|
|
|
251
295
|
<!-- Two-thirds content + one-third sidebar -->
|
|
252
296
|
<div class="pa-row">
|
|
253
|
-
<div class="pa-col-100 pa-col-md-2-3">
|
|
254
|
-
|
|
255
|
-
</div>
|
|
256
|
-
<div class="pa-col-100 pa-col-md-1-3">
|
|
257
|
-
Sidebar (1/3)
|
|
258
|
-
</div>
|
|
297
|
+
<div class="pa-col-100 pa-col-md-2-3">Main content area (2/3)</div>
|
|
298
|
+
<div class="pa-col-100 pa-col-md-1-3">Sidebar (1/3)</div>
|
|
259
299
|
</div>
|
|
260
300
|
|
|
261
301
|
|
|
262
302
|
<!-- OFFSET COLUMNS -->
|
|
263
303
|
|
|
264
|
-
<!-- Offset from left -->
|
|
265
|
-
<div class="pa-row">
|
|
266
|
-
<div class="pa-col-50 pa-offset-25">Offset 25% from
|
|
267
|
-
</div>
|
|
268
|
-
|
|
269
|
-
<div class="pa-row">
|
|
270
|
-
<div class="pa-col-1-3 pa-offset-35">Offset 35% from
|
|
271
|
-
</div>
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
<!--
|
|
280
|
-
|
|
281
|
-
<!--
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
<!--
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
<!--
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
<!--
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
<!--
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
304
|
+
<!-- Offset from reading start (left in LTR, right in RTL) — uses margin-inline-start -->
|
|
305
|
+
<div class="pa-row">
|
|
306
|
+
<div class="pa-col-50 pa-offset-25">Offset 25% from start</div>
|
|
307
|
+
</div>
|
|
308
|
+
|
|
309
|
+
<div class="pa-row">
|
|
310
|
+
<div class="pa-col-1-3 pa-offset-35">Offset 35% from start</div>
|
|
311
|
+
</div>
|
|
312
|
+
|
|
313
|
+
<!-- Responsive offset (only at md+) -->
|
|
314
|
+
<div class="pa-row">
|
|
315
|
+
<div class="pa-col-100 pa-col-md-50 pa-offset-md-25">Offset only at md+</div>
|
|
316
|
+
</div>
|
|
317
|
+
|
|
318
|
+
|
|
319
|
+
<!-- VISIBILITY HELPERS (use @media, NOT @container — unlike responsive columns) -->
|
|
320
|
+
|
|
321
|
+
<!-- Always hidden / always shown -->
|
|
322
|
+
<div class="pa-hide">Never visible</div>
|
|
323
|
+
<div class="pa-show">Always visible</div>
|
|
324
|
+
|
|
325
|
+
<!-- Breakpoint-up (hide or show at that breakpoint and wider) -->
|
|
326
|
+
<div class="pa-hide-md">Hidden at md and wider</div>
|
|
327
|
+
<div class="pa-show-md">Visible at md and wider (hidden below)</div>
|
|
328
|
+
|
|
329
|
+
<!-- Breakpoint-down (hide or show below that breakpoint) -->
|
|
330
|
+
<div class="pa-hide-below-md">Hidden below md (visible at md and wider)</div>
|
|
331
|
+
<div class="pa-show-below-md">Visible below md (hidden at md and wider)</div>
|
|
332
|
+
|
|
333
|
+
<!-- Common pattern: desktop-only sidebar hidden on mobile -->
|
|
334
|
+
<div class="pa-row">
|
|
335
|
+
<div class="pa-col-100 pa-col-md-25 pa-hide-below-md">Desktop-only sidebar</div>
|
|
336
|
+
<div class="pa-col-100 pa-col-md-75">Main content</div>
|
|
337
|
+
</div>
|
|
338
|
+
|
|
339
|
+
|
|
340
|
+
<!-- ================================
|
|
341
|
+
COMPONENT REFERENCE
|
|
342
|
+
================================ -->
|
|
343
|
+
|
|
344
|
+
<!--
|
|
345
|
+
BREAKPOINTS ($grid-breakpoints map):
|
|
346
|
+
sm: 576px md: 768px lg: 992px xl: 1200px
|
|
347
|
+
$mobile-breakpoint = 768px (auto-stack threshold)
|
|
348
|
+
|
|
349
|
+
CONTAINMENT CONTEXT:
|
|
350
|
+
Responsive column classes require a container-query ancestor:
|
|
351
|
+
- .pa-layout__main framework default (set automatically)
|
|
352
|
+
- .pa-cq helper class (container-type: inline-size)
|
|
353
|
+
|
|
354
|
+
Without one, pa-col-{sm,md,lg,xl}-* silently do nothing.
|
|
355
|
+
Visibility helpers use @media so they work anywhere.
|
|
356
|
+
|
|
357
|
+
ROW CONTAINER (.pa-row):
|
|
358
|
+
- .pa-row Flex wrap container (-gutter margin-inline)
|
|
359
|
+
- .pa-row--no-gutter Remove horizontal gutter from row + children
|
|
360
|
+
- .pa-row--center justify-content: center
|
|
361
|
+
- .pa-row--end justify-content: flex-end
|
|
362
|
+
- .pa-row--between justify-content: space-between
|
|
363
|
+
- .pa-row--around justify-content: space-around
|
|
364
|
+
- .pa-row--top align-items: flex-start
|
|
365
|
+
- .pa-row--middle align-items: center
|
|
366
|
+
- .pa-row--bottom align-items: flex-end
|
|
367
|
+
- .pa-row--stretch align-items: stretch (default; explicit form)
|
|
368
|
+
- .pa-row--same-height .pa-card inside each column stretches to 100%
|
|
369
|
+
|
|
370
|
+
COLUMNS — AUTO / CONTENT:
|
|
371
|
+
- .pa-col flex: 1 (auto-equal with siblings)
|
|
372
|
+
- .pa-col-auto flex: 0 0 auto (content width)
|
|
373
|
+
|
|
374
|
+
COLUMNS — PERCENTAGE (5% increments):
|
|
375
|
+
.pa-col-{5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100}
|
|
376
|
+
|
|
377
|
+
COLUMNS — FRACTIONS (intuitive aliases):
|
|
378
|
+
1-2 (50%) 1-3 (33.333%) 2-3 (66.667%)
|
|
379
|
+
1-4 (25%) 3-4 (75%)
|
|
380
|
+
1-5 (20%) 2-5 (40%) 3-5 (60%) 4-5 (80%)
|
|
381
|
+
1-6 (16.667%) 5-6 (83.333%)
|
|
382
|
+
1-12 (8.333%) 5-12 (41.667%) 7-12 (58.333%) 11-12 (91.667%)
|
|
383
|
+
|
|
384
|
+
COLUMNS — RESPONSIVE (prefix with -sm / -md / -lg / -xl):
|
|
385
|
+
.pa-col-md-50 becomes 50% at md+
|
|
386
|
+
.pa-col-lg-1-3 becomes 1/3 at lg+
|
|
387
|
+
.pa-col-sm-auto becomes content-width at sm+
|
|
388
|
+
|
|
389
|
+
COLUMN MODIFIERS:
|
|
390
|
+
- .pa-col--no-padding Zero the column's gutter padding
|
|
391
|
+
- .pa-col--grow flex-grow: 1 (fills extra space)
|
|
392
|
+
- .pa-col--shrink flex-shrink: 1
|
|
393
|
+
|
|
394
|
+
OFFSETS (5% increments, 5..95):
|
|
395
|
+
- .pa-offset-{5,10,...,95} margin-inline-start
|
|
396
|
+
- .pa-offset-{bp}-{size} responsive, requires @container context
|
|
397
|
+
|
|
398
|
+
VISIBILITY HELPERS (@media, works anywhere):
|
|
399
|
+
- .pa-hide / .pa-show Always hidden / always shown
|
|
400
|
+
- .pa-hide-{bp} / .pa-show-{bp} At breakpoint and wider
|
|
401
|
+
- .pa-hide-below-{bp} / .pa-show-below-{bp} Below breakpoint
|
|
402
|
+
|
|
403
|
+
AUTO BEHAVIOURS:
|
|
404
|
+
- Below 768px ($mobile-breakpoint), bare percentage and fraction columns
|
|
405
|
+
(pa-col-50, pa-col-1-3, etc.) become 100% width; offsets reset to 0.
|
|
406
|
+
Use pa-col-sm-* / pa-col-md-* to override.
|
|
407
|
+
- Columns inside .pa-card__body lose their bottom padding to prevent
|
|
408
|
+
conflict with card padding.
|
|
409
|
+
- Nested .pa-row resets its own margin-inline to 0 so nested grids
|
|
410
|
+
align cleanly with their parent column's padding.
|
|
411
|
+
- min-width: 0 on every column prevents flex overflow from wide content
|
|
412
|
+
(long URLs, long words, etc.) forcing the row wider than the container.
|
|
413
|
+
|
|
414
|
+
STRUCTURE PATTERNS:
|
|
415
|
+
|
|
416
|
+
Responsive stat-card row:
|
|
417
|
+
<div class="pa-row">
|
|
418
|
+
<div class="pa-col-100 pa-col-sm-50 pa-col-lg-25">…</div>
|
|
419
|
+
<div class="pa-col-100 pa-col-sm-50 pa-col-lg-25">…</div>
|
|
420
|
+
<div class="pa-col-100 pa-col-sm-50 pa-col-lg-25">…</div>
|
|
421
|
+
<div class="pa-col-100 pa-col-sm-50 pa-col-lg-25">…</div>
|
|
422
|
+
</div>
|
|
423
|
+
|
|
424
|
+
Sidebar + content layout:
|
|
425
|
+
<div class="pa-row">
|
|
426
|
+
<div class="pa-col-100 pa-col-md-25 pa-hide-below-md">Sidebar</div>
|
|
427
|
+
<div class="pa-col-100 pa-col-md-75">Main</div>
|
|
428
|
+
</div>
|
|
429
|
+
|
|
430
|
+
Content + auto-sized trailing element:
|
|
431
|
+
<div class="pa-row">
|
|
432
|
+
<div class="pa-col">Main content (fills)</div>
|
|
433
|
+
<div class="pa-col-auto">Button</div>
|
|
434
|
+
</div>
|
|
435
|
+
|
|
436
|
+
Same-height cards across columns:
|
|
437
|
+
<div class="pa-row pa-row--same-height">
|
|
438
|
+
<div class="pa-col-1-3"><div class="pa-card">…</div></div>
|
|
439
|
+
<div class="pa-col-1-3"><div class="pa-card">…</div></div>
|
|
440
|
+
<div class="pa-col-1-3"><div class="pa-card">…</div></div>
|
|
441
|
+
</div>
|
|
442
|
+
|
|
443
|
+
Standalone grid outside the framework layout:
|
|
444
|
+
<div class="pa-cq">
|
|
445
|
+
<div class="pa-row">
|
|
446
|
+
<div class="pa-col-100 pa-col-md-50">…</div>
|
|
447
|
+
<div class="pa-col-100 pa-col-md-50">…</div>
|
|
448
|
+
</div>
|
|
449
|
+
</div>
|
|
450
|
+
-->
|