neon_sakura 0.1.15 → 0.1.16

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bcef8d801e409bcd6abd9b75f7201c59bf3ec0016cdc986b1e2567bd678bc05d
4
- data.tar.gz: 1ae306581c72eca8530410c82e17871c8793e1762d3b3c807023c5f512903eb0
3
+ metadata.gz: 4f40cc6a10ef8ecdf747f833434cdeb1c70a5b9fc88fb2ea184dd0cd067cb9fd
4
+ data.tar.gz: 07cfd6927106c79075fc7d3fd6d7f6a613c3156da5aa8237c3e8d693c7a6b9ed
5
5
  SHA512:
6
- metadata.gz: cb8b462006c846918b80d856754c67cb8d6b8e579d09d3795e4844974d867a0313074101c3ddf8b1fb3befc3c350b5d50df37c1895e5b9b7145112896310eeb9
7
- data.tar.gz: acff10e454961d40460e0b7b7b9445a9055a5ccbbad22caaee4ed95ede53f47933f7229d7c93d52e7fedde75b836d9fd571362e10087bd2b9dd9ba08c1bfe9b4
6
+ metadata.gz: e8841c19e30f87aedbf2951a511f5deb24b282963f2c17eaf206d63ee94e10030b8fe9ac11996d5bd034441a1f0e817f2fff93d1a846b533c98c521c3603cdda
7
+ data.tar.gz: 0dc727fff7ae8f2f79627ed4bd7a7b065cf908ac6aad20c35101533e47951789a285153b20cf9453e8af7b30510c93f83769a26af9c3fb72b53561a22645a6a7
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- neon_sakura (0.1.15)
4
+ neon_sakura (0.1.16)
5
5
  propshaft (>= 1.3.2)
6
6
  rails (>= 8.0.0)
7
7
 
@@ -386,7 +386,7 @@ CHECKSUMS
386
386
  minitest-reporters (1.8.0) sha256=8ce5280fb73ad3178ae525454df169b6f28c1b38b1d088ea91815d3a370ba384
387
387
  mocha (3.1.0) sha256=75f42d69ebfb1f10b32489dff8f8431d37a418120ecdfc07afe3bc183d4e1d56
388
388
  multi_xml (0.9.1) sha256=7ce766b59c17241ed62976caeae1fae9b2431b263398c35396239a68c4a64e57
389
- neon_sakura (0.1.15)
389
+ neon_sakura (0.1.16)
390
390
  net-imap (0.6.4) sha256=9a5598c67a3022c284d98430ef1d4948e7dbdb62596f61081ea8ca933270a02b
391
391
  net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3
392
392
  net-protocol (0.2.2) sha256=aa73e0cba6a125369de9837b8d8ef82a61849360eba0521900e2c3713aa162a8
@@ -0,0 +1,487 @@
1
+ /*
2
+ * bootstrap-compat.css
3
+ * Provides Bootstrap 5 class name aliases for apps migrating away from Bootstrap CDN.
4
+ * IMPORTANT: Never redefine class names already defined in neon_sakura utility files.
5
+ * Only adds NEW aliases that Bootstrap apps expect but neon_sakura does not provide.
6
+ */
7
+
8
+ /* =========================================================================
9
+ Grid System (Bootstrap 12-column via CSS Grid)
10
+ ========================================================================= */
11
+
12
+ .container {
13
+ width: 100%;
14
+ max-width: 1200px;
15
+ margin-inline: auto;
16
+ padding-inline: 1rem;
17
+ }
18
+
19
+ .container-fluid {
20
+ width: 100%;
21
+ padding-inline: 1rem;
22
+ }
23
+
24
+ .row {
25
+ display: flex;
26
+ flex-wrap: wrap;
27
+ margin-inline: -0.75rem;
28
+ }
29
+
30
+ .col {
31
+ flex: 1 0 0%;
32
+ padding-inline: 0.75rem;
33
+ }
34
+
35
+ .col-12 {
36
+ flex: 0 0 100%;
37
+ max-width: 100%;
38
+ padding-inline: 0.75rem;
39
+ }
40
+
41
+ .col-11 {
42
+ flex: 0 0 91.6667%;
43
+ max-width: 91.6667%;
44
+ padding-inline: 0.75rem;
45
+ }
46
+
47
+ .col-10 {
48
+ flex: 0 0 83.3333%;
49
+ max-width: 83.3333%;
50
+ padding-inline: 0.75rem;
51
+ }
52
+
53
+ .col-9 {
54
+ flex: 0 0 75%;
55
+ max-width: 75%;
56
+ padding-inline: 0.75rem;
57
+ }
58
+
59
+ .col-8 {
60
+ flex: 0 0 66.6667%;
61
+ max-width: 66.6667%;
62
+ padding-inline: 0.75rem;
63
+ }
64
+
65
+ .col-7 {
66
+ flex: 0 0 58.3333%;
67
+ max-width: 58.3333%;
68
+ padding-inline: 0.75rem;
69
+ }
70
+
71
+ .col-6 {
72
+ flex: 0 0 50%;
73
+ max-width: 50%;
74
+ padding-inline: 0.75rem;
75
+ }
76
+
77
+ .col-5 {
78
+ flex: 0 0 41.6667%;
79
+ max-width: 41.6667%;
80
+ padding-inline: 0.75rem;
81
+ }
82
+
83
+ .col-4 {
84
+ flex: 0 0 33.3333%;
85
+ max-width: 33.3333%;
86
+ padding-inline: 0.75rem;
87
+ }
88
+
89
+ .col-3 {
90
+ flex: 0 0 25%;
91
+ max-width: 25%;
92
+ padding-inline: 0.75rem;
93
+ }
94
+
95
+ .col-2 {
96
+ flex: 0 0 16.6667%;
97
+ max-width: 16.6667%;
98
+ padding-inline: 0.75rem;
99
+ }
100
+
101
+ .col-1 {
102
+ flex: 0 0 8.3333%;
103
+ max-width: 8.3333%;
104
+ padding-inline: 0.75rem;
105
+ }
106
+
107
+ @media (width >= 576px) {
108
+ .col-sm-12 {
109
+ flex: 0 0 100%;
110
+ max-width: 100%;
111
+ padding-inline: 0.75rem;
112
+ }
113
+
114
+ .col-sm-6 {
115
+ flex: 0 0 50%;
116
+ max-width: 50%;
117
+ padding-inline: 0.75rem;
118
+ }
119
+
120
+ .col-sm-4 {
121
+ flex: 0 0 33.3333%;
122
+ max-width: 33.3333%;
123
+ padding-inline: 0.75rem;
124
+ }
125
+
126
+ .col-sm-3 {
127
+ flex: 0 0 25%;
128
+ max-width: 25%;
129
+ padding-inline: 0.75rem;
130
+ }
131
+ }
132
+
133
+ @media (width >= 768px) {
134
+ .col-md-12 {
135
+ flex: 0 0 100%;
136
+ max-width: 100%;
137
+ padding-inline: 0.75rem;
138
+ }
139
+
140
+ .col-md-6 {
141
+ flex: 0 0 50%;
142
+ max-width: 50%;
143
+ padding-inline: 0.75rem;
144
+ }
145
+
146
+ .col-md-4 {
147
+ flex: 0 0 33.3333%;
148
+ max-width: 33.3333%;
149
+ padding-inline: 0.75rem;
150
+ }
151
+
152
+ .col-md-3 {
153
+ flex: 0 0 25%;
154
+ max-width: 25%;
155
+ padding-inline: 0.75rem;
156
+ }
157
+ }
158
+
159
+ @media (width >= 992px) {
160
+ .col-lg-12 {
161
+ flex: 0 0 100%;
162
+ max-width: 100%;
163
+ padding-inline: 0.75rem;
164
+ }
165
+
166
+ .col-lg-10 {
167
+ flex: 0 0 83.3333%;
168
+ max-width: 83.3333%;
169
+ padding-inline: 0.75rem;
170
+ }
171
+
172
+ .col-lg-8 {
173
+ flex: 0 0 66.6667%;
174
+ max-width: 66.6667%;
175
+ padding-inline: 0.75rem;
176
+ }
177
+
178
+ .col-lg-6 {
179
+ flex: 0 0 50%;
180
+ max-width: 50%;
181
+ padding-inline: 0.75rem;
182
+ }
183
+
184
+ .col-lg-4 {
185
+ flex: 0 0 33.3333%;
186
+ max-width: 33.3333%;
187
+ padding-inline: 0.75rem;
188
+ }
189
+
190
+ .col-lg-3 {
191
+ flex: 0 0 25%;
192
+ max-width: 25%;
193
+ padding-inline: 0.75rem;
194
+ }
195
+ }
196
+
197
+ /* =========================================================================
198
+ Display utilities (Bootstrap names not in neon_sakura)
199
+ ========================================================================= */
200
+
201
+ .d-none { display: none !important; }
202
+ .d-block { display: block !important; }
203
+ .d-inline { display: inline !important; }
204
+ .d-inline-block { display: inline-block !important; }
205
+ .d-flex { display: flex !important; }
206
+ .d-inline-flex { display: inline-flex !important; }
207
+ .d-grid { display: grid !important; }
208
+
209
+ @media (width >= 576px) {
210
+ .d-sm-none { display: none !important; }
211
+ .d-sm-block { display: block !important; }
212
+ .d-sm-flex { display: flex !important; }
213
+ }
214
+
215
+ @media (width >= 768px) {
216
+ .d-md-none { display: none !important; }
217
+ .d-md-block { display: block !important; }
218
+ .d-md-flex { display: flex !important; }
219
+ .d-md-inline { display: inline !important; }
220
+ }
221
+
222
+ @media (width >= 992px) {
223
+ .d-lg-none { display: none !important; }
224
+ .d-lg-block { display: block !important; }
225
+ .d-lg-flex { display: flex !important; }
226
+ }
227
+
228
+ /* =========================================================================
229
+ Flex utilities (Bootstrap names not in neon_sakura)
230
+ ========================================================================= */
231
+
232
+ .flex-row { flex-direction: row !important; }
233
+ .align-items-center { align-items: center !important; }
234
+ .align-items-start { align-items: flex-start !important; }
235
+ .align-items-end { align-items: flex-end !important; }
236
+ .justify-content-start { justify-content: flex-start !important; }
237
+ .justify-content-end { justify-content: flex-end !important; }
238
+ .justify-content-center { justify-content: center !important; }
239
+ .justify-content-between { justify-content: space-between !important; }
240
+ .justify-content-around { justify-content: space-around !important; }
241
+ .flex-shrink-0 { flex-shrink: 0 !important; }
242
+ .flex-grow-1 { flex-grow: 1 !important; }
243
+
244
+ @media (width >= 768px) {
245
+ .justify-content-md-end { justify-content: flex-end !important; }
246
+ }
247
+
248
+ /* =========================================================================
249
+ Spacing utilities (Bootstrap names missing from neon_sakura)
250
+ Note: mb-1 through mb-4, gap-2 through gap-4 already exist in utility-spacing.css
251
+ These add the missing Bootstrap-named values not yet defined.
252
+ ========================================================================= */
253
+
254
+ .mb-0 { margin-bottom: 0 !important; }
255
+ .mb-5 { margin-bottom: 3rem !important; }
256
+ .mt-0 { margin-top: 0 !important; }
257
+ .mt-1 { margin-top: 0.25rem !important; }
258
+ .mt-2 { margin-top: 0.5rem !important; }
259
+ .mt-3 { margin-top: 0.75rem !important; }
260
+ .mt-4 { margin-top: 1rem !important; }
261
+ .mt-5 { margin-top: 3rem !important; }
262
+ .ms-0 { margin-inline-start: 0 !important; }
263
+ .ms-1 { margin-inline-start: 0.25rem !important; }
264
+ .ms-2 { margin-inline-start: 0.5rem !important; }
265
+ .ms-3 { margin-inline-start: 0.75rem !important; }
266
+ .ms-auto { margin-inline-start: auto !important; }
267
+ .me-0 { margin-inline-end: 0 !important; }
268
+ .me-1 { margin-inline-end: 0.25rem !important; }
269
+ .me-2 { margin-inline-end: 0.5rem !important; }
270
+ .me-3 { margin-inline-end: 0.75rem !important; }
271
+ .me-4 { margin-inline-end: 1rem !important; }
272
+ .me-auto { margin-inline-end: auto !important; }
273
+ .mx-0 { margin-inline: 0 !important; }
274
+ .my-0 { margin-block: 0 !important; }
275
+ .my-2 { margin-block: 0.5rem !important; }
276
+ .my-3 { margin-block: 0.75rem !important; }
277
+ .my-4 { margin-block: 1rem !important; }
278
+ .my-5 { margin-block: 3rem !important; }
279
+ .p-0 { padding: 0 !important; }
280
+ .p-1 { padding: 0.25rem !important; }
281
+ .p-2 { padding: 0.5rem !important; }
282
+ .p-3 { padding: 0.75rem !important; }
283
+ .p-4 { padding: 1rem !important; }
284
+ .p-5 { padding: 3rem !important; }
285
+ .pb-0 { padding-bottom: 0 !important; }
286
+ .pb-2 { padding-bottom: 0.5rem !important; }
287
+ .pb-3 { padding-bottom: 0.75rem !important; }
288
+ .pb-4 { padding-bottom: 1rem !important; }
289
+ .pt-0 { padding-top: 0 !important; }
290
+ .pt-1 { padding-top: 0.25rem !important; }
291
+ .pt-2 { padding-top: 0.5rem !important; }
292
+ .pt-4 { padding-top: 1rem !important; }
293
+ .px-0 { padding-inline: 0 !important; }
294
+ .px-2 { padding-inline: 0.5rem !important; }
295
+ .px-3 { padding-inline: 0.75rem !important; }
296
+ .px-5 { padding-inline: 3rem !important; }
297
+ .py-0 { padding-block: 0 !important; }
298
+ .py-1 { padding-block: 0.25rem !important; }
299
+ .py-2 { padding-block: 0.5rem !important; }
300
+ .py-5 { padding-block: 3rem !important; }
301
+ .gap-1 { gap: 0.25rem !important; }
302
+
303
+ /* =========================================================================
304
+ Sizing utilities
305
+ ========================================================================= */
306
+
307
+ .w-100 { width: 100% !important; }
308
+ .h-100 { height: 100% !important; }
309
+ .mw-100 { max-width: 100% !important; }
310
+ .vw-100 { width: 100vw !important; }
311
+
312
+ /* =========================================================================
313
+ Typography utilities (Bootstrap names missing from neon_sakura)
314
+ Note: text-center, text-muted, font-bold, font-semibold already exist
315
+ ========================================================================= */
316
+
317
+ .text-start { text-align: start !important; }
318
+ .text-end { text-align: end !important; }
319
+ .text-nowrap { white-space: nowrap !important; }
320
+ .text-break { overflow-wrap: break-word !important; }
321
+ .text-uppercase { text-transform: uppercase !important; }
322
+ .text-lowercase { text-transform: lowercase !important; }
323
+ .text-capitalize { text-transform: capitalize !important; }
324
+ .fw-bold { font-weight: 700 !important; }
325
+ .fw-semibold { font-weight: 600 !important; }
326
+ .fw-normal { font-weight: 400 !important; }
327
+ .fw-light { font-weight: 300 !important; }
328
+ .fst-italic { font-style: italic !important; }
329
+ .small { font-size: 0.875rem !important; }
330
+ .fs-1 { font-size: 2.5rem !important; }
331
+ .fs-2 { font-size: 2rem !important; }
332
+ .fs-3 { font-size: 1.75rem !important; }
333
+ .fs-4 { font-size: 1.5rem !important; }
334
+ .fs-5 { font-size: 1.25rem !important; }
335
+ .fs-6 { font-size: 1rem !important; }
336
+ .lh-1 { line-height: 1 !important; }
337
+ .lh-sm { line-height: 1.25 !important; }
338
+
339
+ @media (width >= 768px) {
340
+ .text-md-end { text-align: end !important; }
341
+ .text-md-start { text-align: start !important; }
342
+ }
343
+
344
+ /* =========================================================================
345
+ Color utilities (semantic Bootstrap names)
346
+ ========================================================================= */
347
+
348
+ .text-primary { color: var(--color-accent) !important; }
349
+ .text-secondary { color: var(--color-text-secondary) !important; }
350
+ .text-success { color: var(--color-notification) !important; }
351
+ .text-danger { color: var(--color-alert) !important; }
352
+ .text-warning { color: var(--color-warning, #f59e0b) !important; }
353
+ .text-info { color: var(--color-accent) !important; }
354
+ .text-dark { color: var(--color-text-primary) !important; }
355
+ .text-light { color: var(--color-text-muted) !important; }
356
+ .text-white { color: #fff !important; }
357
+ .text-black { color: #000 !important; }
358
+
359
+ .bg-primary {
360
+ background-color: var(--color-accent) !important;
361
+ color: white !important;
362
+ }
363
+
364
+ .bg-secondary {
365
+ background-color: var(--color-surface-elevated) !important;
366
+ }
367
+
368
+ .bg-success {
369
+ background-color: var(--color-notification) !important;
370
+ color: white !important;
371
+ }
372
+
373
+ .bg-danger {
374
+ background-color: var(--color-alert) !important;
375
+ color: white !important;
376
+ }
377
+
378
+ .bg-warning {
379
+ background-color: var(--color-warning, #f59e0b) !important;
380
+ }
381
+
382
+ .bg-info {
383
+ background-color: var(--color-accent) !important;
384
+ color: white !important;
385
+ }
386
+
387
+ .bg-light {
388
+ background-color: var(--color-surface) !important;
389
+ }
390
+
391
+ .bg-dark {
392
+ background-color: var(--color-surface-elevated) !important;
393
+ }
394
+
395
+ .bg-white {
396
+ background-color: var(--color-surface-elevated) !important;
397
+ }
398
+
399
+ .bg-transparent {
400
+ background-color: transparent !important;
401
+ }
402
+
403
+ /* =========================================================================
404
+ Border utilities
405
+ ========================================================================= */
406
+
407
+ .border-0 { border: none !important; }
408
+ .border-top { border-top: 1px solid var(--color-border) !important; }
409
+ .border-bottom { border-bottom: 1px solid var(--color-border) !important; }
410
+ .border-start { border-inline-start: 1px solid var(--color-border) !important; }
411
+ .border-end { border-inline-end: 1px solid var(--color-border) !important; }
412
+ .border-primary { border-color: var(--color-accent) !important; }
413
+ .border-secondary { border-color: var(--color-border) !important; }
414
+ .border-danger { border-color: var(--color-alert) !important; }
415
+ .border-success { border-color: var(--color-notification) !important; }
416
+ .rounded { border-radius: 0.375rem !important; }
417
+ .rounded-0 { border-radius: 0 !important; }
418
+ .rounded-1 { border-radius: 0.25rem !important; }
419
+ .rounded-2 { border-radius: 0.375rem !important; }
420
+ .rounded-3 { border-radius: 0.5rem !important; }
421
+ .rounded-circle { border-radius: 50% !important; }
422
+ .rounded-pill { border-radius: 9999px !important; }
423
+
424
+ /* =========================================================================
425
+ Shadow utilities
426
+ ========================================================================= */
427
+
428
+ .shadow { box-shadow: 0 0.5rem 1rem rgb(0,0,0,0.15) !important; }
429
+ .shadow-sm { box-shadow: 0 0.125rem 0.25rem rgb(0,0,0,0.075) !important; }
430
+ .shadow-lg { box-shadow: 0 1rem 3rem rgb(0,0,0,0.175) !important; }
431
+ .shadow-none { box-shadow: none !important; }
432
+
433
+ /* =========================================================================
434
+ Overflow / position utilities
435
+ ========================================================================= */
436
+
437
+ .overflow-auto { overflow: auto !important; }
438
+ .overflow-hidden { overflow: hidden !important; }
439
+ .position-relative { position: relative !important; }
440
+ .position-absolute { position: absolute !important; }
441
+ .position-fixed { position: fixed !important; }
442
+ .position-sticky { position: sticky !important; }
443
+ .top-0 { top: 0 !important; }
444
+ .bottom-0 { bottom: 0 !important; }
445
+ .start-0 { inset-inline-start: 0 !important; }
446
+ .end-0 { inset-inline-end: 0 !important; }
447
+ .z-3 { z-index: 3 !important; }
448
+
449
+ /* =========================================================================
450
+ Misc layout utilities
451
+ ========================================================================= */
452
+
453
+ .float-start { float: inline-start !important; }
454
+ .float-end { float: inline-end !important; }
455
+ .float-none { float: none !important; }
456
+
457
+ .clearfix::after {
458
+ content: "";
459
+ display: block;
460
+ clear: both;
461
+ }
462
+
463
+ .sr-only, .visually-hidden {
464
+ position: absolute;
465
+ width: 1px;
466
+ height: 1px;
467
+ padding: 0;
468
+ margin: -1px;
469
+ overflow: hidden;
470
+ clip-path: inset(50%);
471
+ white-space: nowrap;
472
+ border: 0;
473
+ }
474
+
475
+ .img-fluid {
476
+ max-width: 100%;
477
+ height: auto;
478
+ }
479
+ .text-decoration-none { text-decoration: none !important; }
480
+ .text-decoration-underline { text-decoration: underline !important; }
481
+ .user-select-none { user-select: none !important; }
482
+ .cursor-pointer { cursor: pointer !important; }
483
+ .opacity-0 { opacity: 0 !important; }
484
+ .opacity-25 { opacity: 0.25 !important; }
485
+ .opacity-50 { opacity: 0.5 !important; }
486
+ .opacity-75 { opacity: 0.75 !important; }
487
+ .opacity-100 { opacity: 1 !important; }