@donotdev/ui 0.0.3 → 0.0.4
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/dist/components/auth/AuthMenu.d.ts.map +1 -1
- package/dist/components/auth/AuthMenu.js +4 -4
- package/dist/components/common/FeatureCard.d.ts +7 -19
- package/dist/components/common/FeatureCard.d.ts.map +1 -1
- package/dist/components/common/FeatureCard.js +4 -28
- package/dist/components/common/TechBento.d.ts +15 -3
- package/dist/components/common/TechBento.d.ts.map +1 -1
- package/dist/components/common/TechBento.js +20 -2
- package/dist/dndev.css +258 -151
- package/dist/index.js +4 -4
- package/dist/internal/devtools/DebugTools.js +1 -1
- package/dist/internal/devtools/components/ConfigTab.d.ts.map +1 -1
- package/dist/internal/devtools/components/ConfigTab.js +8 -6
- package/dist/internal/devtools/components/DesignTab.d.ts.map +1 -1
- package/dist/internal/devtools/components/DesignTab.js +256 -45
- package/dist/internal/devtools/components/StoresTab.d.ts.map +1 -1
- package/dist/internal/initializers/BaseStoresInitializer.d.ts.map +1 -1
- package/dist/internal/initializers/BaseStoresInitializer.js +11 -1
- package/dist/internal/layout/components/AutoMetaTags.d.ts.map +1 -1
- package/dist/internal/layout/components/AutoMetaTags.js +6 -1
- package/dist/internal/layout/zones/DnDevFooter.js +2 -2
- package/dist/styles/index.css +258 -151
- package/dist/utils/assetResolver.d.ts.map +1 -1
- package/dist/utils/assetResolver.js +22 -11
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -0
- package/dist/utils/tList.d.ts +30 -0
- package/dist/utils/tList.d.ts.map +1 -0
- package/dist/utils/tList.js +51 -0
- package/dist/vite-routing/AppRoutes.d.ts.map +1 -1
- package/package.json +9 -9
package/dist/dndev.css
CHANGED
|
@@ -22,9 +22,10 @@
|
|
|
22
22
|
Used by: CSS @media queries, JavaScript hooks, responsive components
|
|
23
23
|
Note: CSS variables don't work in @media, so we use hardcoded px values
|
|
24
24
|
=========================== */
|
|
25
|
-
--breakpoint-mobile: 768px;
|
|
26
|
-
--breakpoint-tablet: 1024px;
|
|
27
|
-
--breakpoint-
|
|
25
|
+
--breakpoint-mobile: 768px; /* < 768 = mobile */
|
|
26
|
+
--breakpoint-tablet: 1024px; /* 768-1023 = tablet */
|
|
27
|
+
--breakpoint-laptop: 1440px; /* 1024-1439 = laptop (key layout split) */
|
|
28
|
+
--breakpoint-desktop: 1920px; /* 1440+ = desktop */
|
|
28
29
|
|
|
29
30
|
/* ===========================
|
|
30
31
|
INTERACTIVE ELEMENTS
|
|
@@ -289,28 +290,48 @@
|
|
|
289
290
|
/* Compact (Admin/Data) - Dense, information-dense layouts - Minor Third (1.2×) */
|
|
290
291
|
|
|
291
292
|
[data-density='compact'] {
|
|
292
|
-
|
|
293
|
-
--font-size-
|
|
294
|
-
--font-size-
|
|
295
|
-
--font-size-
|
|
296
|
-
|
|
297
|
-
--
|
|
298
|
-
|
|
299
|
-
|
|
293
|
+
/* Base sizes: Fluid responsiveness for all text, zoom-safe */
|
|
294
|
+
--font-size-base: clamp(0.875rem, 0.8125rem + 0.25vw, 0.9375rem); /* 14-15px fluid */
|
|
295
|
+
--font-size-lg: clamp(1.05rem, 0.9375rem + 0.5vw, 1.125rem); /* 17-18px fluid */
|
|
296
|
+
--font-size-xl: clamp(1.26rem, 1.125rem + 0.75vw, 1.375rem); /* 20-22px fluid */
|
|
297
|
+
/* Display sizes: Musical scale + fluid responsiveness */
|
|
298
|
+
--font-size-2xl: clamp(
|
|
299
|
+
1.512rem,
|
|
300
|
+
1.375rem + 0.75vw,
|
|
301
|
+
1.625rem
|
|
302
|
+
); /* 24-26px fluid */
|
|
303
|
+
--font-size-3xl: clamp(
|
|
304
|
+
1.814rem,
|
|
305
|
+
1.625rem + 1vw,
|
|
306
|
+
2rem
|
|
307
|
+
); /* 29-32px fluid */
|
|
308
|
+
--gap-sm: clamp(0.375rem, 0.3125rem + 0.25vw, 0.5rem); /* 6-8px fluid */
|
|
309
|
+
--gap-md: clamp(0.75rem, 0.625rem + 0.5vw, 0.875rem); /* 12-14px fluid, zoom-safe */
|
|
310
|
+
--gap-lg: clamp(1.5rem, 1.25rem + 1vw, 1.75rem); /* 24-28px fluid, zoom-safe */
|
|
300
311
|
--line-height: 1.2; /* Minor Third - All text */
|
|
301
312
|
}
|
|
302
313
|
|
|
303
314
|
/* Standard (Docs/SaaS) - DEFAULT, balanced for readability */
|
|
304
315
|
|
|
305
316
|
[data-density='standard'] {
|
|
306
|
-
|
|
307
|
-
--font-size-
|
|
308
|
-
--font-size-
|
|
309
|
-
--font-size-
|
|
310
|
-
|
|
311
|
-
--
|
|
312
|
-
|
|
313
|
-
|
|
317
|
+
/* Base sizes: Fluid responsiveness for all text, zoom-safe */
|
|
318
|
+
--font-size-base: clamp(1rem, 0.9375rem + 0.25vw, 1.0625rem); /* 16-17px fluid */
|
|
319
|
+
--font-size-lg: clamp(1.25rem, 1.125rem + 0.5vw, 1.375rem); /* 20-22px fluid */
|
|
320
|
+
--font-size-xl: clamp(1.563rem, 1.375rem + 0.75vw, 1.75rem); /* 25-28px fluid */
|
|
321
|
+
/* Display sizes: Musical scale + fluid responsiveness */
|
|
322
|
+
--font-size-2xl: clamp(
|
|
323
|
+
1.953rem,
|
|
324
|
+
1.75rem + 1vw,
|
|
325
|
+
2.25rem
|
|
326
|
+
); /* 31-36px fluid */
|
|
327
|
+
--font-size-3xl: clamp(
|
|
328
|
+
2.441rem,
|
|
329
|
+
2rem + 1.5vw,
|
|
330
|
+
3rem
|
|
331
|
+
); /* 39-48px fluid - hero text */
|
|
332
|
+
--gap-sm: clamp(0.5rem, 0.4375rem + 0.25vw, 0.625rem); /* 8-10px fluid */
|
|
333
|
+
--gap-md: clamp(1rem, 0.875rem + 0.5vw, 1.25rem); /* 16-20px fluid, zoom-safe */
|
|
334
|
+
--gap-lg: clamp(2rem, 1.75rem + 1vw, 2.5rem); /* 32-40px fluid, zoom-safe */
|
|
314
335
|
--line-height: 1.25; /* Major Third - All text */
|
|
315
336
|
}
|
|
316
337
|
|
|
@@ -542,49 +563,16 @@ a:focus-visible {
|
|
|
542
563
|
border-radius: var(--radius-interactive);
|
|
543
564
|
}
|
|
544
565
|
|
|
545
|
-
/*
|
|
546
|
-
BASE LIST STYLING
|
|
547
|
-
Use text-base styles for lists
|
|
548
|
-
=========================== */
|
|
549
|
-
|
|
550
|
-
/* Content lists only - not navigation menus */
|
|
551
|
-
|
|
552
|
-
main ul,
|
|
553
|
-
main ol,
|
|
554
|
-
article ul,
|
|
555
|
-
article ol {
|
|
556
|
-
font-weight: 500;
|
|
557
|
-
line-height: var(--line-height);
|
|
558
|
-
color: var(--foreground);
|
|
559
|
-
background: transparent !important;
|
|
560
|
-
list-style-position: outside;
|
|
561
|
-
padding-inline-start: var(--gap-lg);
|
|
562
|
-
margin-block: var(--gap-md);
|
|
563
|
-
}
|
|
564
|
-
|
|
565
|
-
main ul,
|
|
566
|
-
article ul {
|
|
567
|
-
list-style-type: disc;
|
|
568
|
-
}
|
|
569
|
-
|
|
570
|
-
main ol,
|
|
571
|
-
article ol {
|
|
572
|
-
list-style-type: decimal;
|
|
573
|
-
}
|
|
566
|
+
/* Main element - no focus outline (programmatic focus for keyboard nav) */
|
|
574
567
|
|
|
575
|
-
main
|
|
576
|
-
|
|
577
|
-
font-weight: 500;
|
|
578
|
-
line-height: var(--line-height);
|
|
579
|
-
color: var(--foreground);
|
|
580
|
-
background: transparent !important;
|
|
581
|
-
margin-block: var(--gap-sm);
|
|
582
|
-
padding-inline-start: var(--gap-sm);
|
|
568
|
+
main:focus-visible {
|
|
569
|
+
outline: none;
|
|
583
570
|
}
|
|
584
571
|
|
|
585
572
|
/* ===========================
|
|
586
|
-
BASE TYPOGRAPHY
|
|
587
|
-
|
|
573
|
+
BASE TYPOGRAPHY - RESET ONLY
|
|
574
|
+
Zero margins, components own their spacing
|
|
575
|
+
Use .prose wrapper for content pages (docs, markdown)
|
|
588
576
|
=========================== */
|
|
589
577
|
|
|
590
578
|
h1,
|
|
@@ -593,49 +581,71 @@ h3,
|
|
|
593
581
|
h4,
|
|
594
582
|
h5,
|
|
595
583
|
h6 {
|
|
596
|
-
font-weight:
|
|
584
|
+
font-weight: var(--font-weight-medium);
|
|
597
585
|
line-height: var(--line-height);
|
|
598
586
|
color: var(--foreground);
|
|
599
587
|
background: transparent;
|
|
600
|
-
margin-block: var(--gap-md);
|
|
601
588
|
}
|
|
602
589
|
|
|
603
590
|
h1 {
|
|
604
591
|
font-family: var(--font-headline);
|
|
605
592
|
font-size: var(--font-size-3xl);
|
|
606
|
-
font-weight:
|
|
593
|
+
font-weight: var(--font-weight-bold);
|
|
607
594
|
letter-spacing: -0.02em;
|
|
608
595
|
}
|
|
609
596
|
|
|
610
597
|
h2 {
|
|
611
598
|
font-family: var(--font-headline);
|
|
612
599
|
font-size: var(--font-size-2xl);
|
|
613
|
-
font-weight:
|
|
600
|
+
font-weight: var(--font-weight-bold);
|
|
614
601
|
letter-spacing: -0.01em;
|
|
615
602
|
}
|
|
616
603
|
|
|
617
604
|
h3 {
|
|
618
605
|
font-size: var(--font-size-xl);
|
|
619
|
-
font-weight:
|
|
606
|
+
font-weight: var(--font-weight-semibold);
|
|
620
607
|
}
|
|
621
608
|
|
|
622
609
|
h4 {
|
|
623
610
|
font-size: var(--font-size-lg);
|
|
624
|
-
font-weight:
|
|
611
|
+
font-weight: var(--font-weight-semibold);
|
|
625
612
|
}
|
|
626
613
|
|
|
627
614
|
h5,
|
|
628
615
|
h6 {
|
|
629
616
|
font-size: var(--font-size-base);
|
|
630
|
-
font-weight:
|
|
617
|
+
font-weight: var(--font-weight-semibold);
|
|
631
618
|
}
|
|
632
619
|
|
|
633
620
|
p {
|
|
634
|
-
font-weight:
|
|
621
|
+
font-weight: var(--font-weight-medium);
|
|
622
|
+
line-height: var(--line-height);
|
|
623
|
+
color: var(--foreground);
|
|
624
|
+
background: transparent;
|
|
625
|
+
}
|
|
626
|
+
|
|
627
|
+
ul,
|
|
628
|
+
ol {
|
|
629
|
+
font-weight: var(--font-weight-medium);
|
|
630
|
+
line-height: var(--line-height);
|
|
631
|
+
color: var(--foreground);
|
|
632
|
+
background: transparent;
|
|
633
|
+
list-style-position: outside;
|
|
634
|
+
}
|
|
635
|
+
|
|
636
|
+
ul {
|
|
637
|
+
list-style-type: disc;
|
|
638
|
+
}
|
|
639
|
+
|
|
640
|
+
ol {
|
|
641
|
+
list-style-type: decimal;
|
|
642
|
+
}
|
|
643
|
+
|
|
644
|
+
li {
|
|
645
|
+
font-weight: var(--font-weight-medium);
|
|
635
646
|
line-height: var(--line-height);
|
|
636
647
|
color: var(--foreground);
|
|
637
648
|
background: transparent;
|
|
638
|
-
margin-block: var(--gap-md);
|
|
639
649
|
}
|
|
640
650
|
|
|
641
651
|
/* Semantic HTML - strong and em */
|
|
@@ -2369,14 +2379,15 @@ em {
|
|
|
2369
2379
|
margin-top: var(--gap-md);
|
|
2370
2380
|
}
|
|
2371
2381
|
|
|
2372
|
-
/* Tech card */
|
|
2382
|
+
/* Tech card - override Card's grid layout for centered content */
|
|
2373
2383
|
|
|
2374
2384
|
.dndev-tech-card {
|
|
2375
2385
|
height: 100%;
|
|
2376
2386
|
min-height: 120px;
|
|
2377
|
-
display: flex;
|
|
2387
|
+
display: flex !important; /* Override Card's grid layout */
|
|
2378
2388
|
align-items: center;
|
|
2379
2389
|
justify-content: center;
|
|
2390
|
+
align-content: center; /* Override Card's align-content: start */
|
|
2380
2391
|
transition:
|
|
2381
2392
|
border-color 0.2s ease,
|
|
2382
2393
|
box-shadow 0.2s ease;
|
|
@@ -2486,7 +2497,8 @@ em {
|
|
|
2486
2497
|
border-inline-end: none;
|
|
2487
2498
|
border-block-start: none;
|
|
2488
2499
|
border-block-end: none;
|
|
2489
|
-
border-radius: var(--radius-interactive) var(--radius-surface)
|
|
2500
|
+
border-radius: var(--radius-interactive) var(--radius-surface)
|
|
2501
|
+
var(--radius-surface) var(--radius-interactive);
|
|
2490
2502
|
overflow: hidden;
|
|
2491
2503
|
}
|
|
2492
2504
|
|
|
@@ -2888,13 +2900,40 @@ em {
|
|
|
2888
2900
|
/* packages/components/src/atomic/CallToAction/CallToAction.css */
|
|
2889
2901
|
|
|
2890
2902
|
.dndev-cta {
|
|
2891
|
-
/*
|
|
2903
|
+
/* Default gradient */
|
|
2892
2904
|
background: linear-gradient(to right, var(--secondary), var(--background));
|
|
2893
2905
|
color: var(--foreground);
|
|
2894
2906
|
/* Padding for background - vertical only, horizontal handled by content */
|
|
2895
2907
|
padding-block: var(--gap-lg);
|
|
2896
2908
|
}
|
|
2897
2909
|
|
|
2910
|
+
/* Tone variants - leverage existing data-tone system */
|
|
2911
|
+
|
|
2912
|
+
.dndev-cta[data-tone='base'] {
|
|
2913
|
+
background: linear-gradient(to right, var(--secondary), var(--background));
|
|
2914
|
+
}
|
|
2915
|
+
|
|
2916
|
+
.dndev-cta[data-tone='muted'] {
|
|
2917
|
+
background: linear-gradient(to right, var(--muted), var(--background));
|
|
2918
|
+
}
|
|
2919
|
+
|
|
2920
|
+
.dndev-cta[data-tone='accent'] {
|
|
2921
|
+
background: linear-gradient(
|
|
2922
|
+
to right,
|
|
2923
|
+
color-mix(in oklab, var(--accent) 10%, transparent),
|
|
2924
|
+
var(--background)
|
|
2925
|
+
);
|
|
2926
|
+
}
|
|
2927
|
+
|
|
2928
|
+
.dndev-cta[data-tone='contrast'] {
|
|
2929
|
+
background: linear-gradient(to right, var(--foreground), var(--background));
|
|
2930
|
+
color: var(--background);
|
|
2931
|
+
}
|
|
2932
|
+
|
|
2933
|
+
.dndev-cta[data-tone='elevated'] {
|
|
2934
|
+
background: linear-gradient(to right, var(--secondary), var(--background));
|
|
2935
|
+
}
|
|
2936
|
+
|
|
2898
2937
|
.dndev-cta-content {
|
|
2899
2938
|
display: flex;
|
|
2900
2939
|
flex-direction: column;
|
|
@@ -2975,19 +3014,35 @@ em {
|
|
|
2975
3014
|
.dndev-card {
|
|
2976
3015
|
display: grid;
|
|
2977
3016
|
gap: var(--gap-md);
|
|
3017
|
+
text-align: start;
|
|
3018
|
+
align-content: start;
|
|
3019
|
+
}
|
|
3020
|
+
|
|
3021
|
+
.dndev-card-header {
|
|
3022
|
+
display: flex;
|
|
3023
|
+
flex-direction: column;
|
|
3024
|
+
}
|
|
3025
|
+
|
|
3026
|
+
.dndev-card-header > .dndev-stack {
|
|
3027
|
+
min-width: 0;
|
|
3028
|
+
}
|
|
3029
|
+
|
|
3030
|
+
.dndev-card-header > .dndev-stack > .dndev-card-title {
|
|
3031
|
+
flex: 1;
|
|
3032
|
+
min-width: 0;
|
|
2978
3033
|
}
|
|
2979
3034
|
|
|
2980
3035
|
.dndev-card-title {
|
|
2981
|
-
font-size: var(--font-size-xl);
|
|
2982
|
-
font-weight: 600;
|
|
2983
|
-
color: inherit; /* Inherit from surface variant */
|
|
2984
3036
|
margin: 0;
|
|
3037
|
+
min-width: 0;
|
|
3038
|
+
word-wrap: break-word;
|
|
2985
3039
|
}
|
|
2986
3040
|
|
|
2987
3041
|
.dndev-card-subtitle {
|
|
2988
|
-
|
|
2989
|
-
|
|
2990
|
-
|
|
3042
|
+
margin-top: 0;
|
|
3043
|
+
margin-bottom: 0;
|
|
3044
|
+
min-width: 0;
|
|
3045
|
+
word-wrap: break-word;
|
|
2991
3046
|
}
|
|
2992
3047
|
|
|
2993
3048
|
/* packages/components/src/atomic/Checkbox/Checkbox.css */
|
|
@@ -3700,9 +3755,35 @@ em {
|
|
|
3700
3755
|
display: grid;
|
|
3701
3756
|
min-width: 0;
|
|
3702
3757
|
width: 100%;
|
|
3758
|
+
/* Default: use mobile columns */
|
|
3759
|
+
grid-template-columns: repeat(var(--grid-cols-mobile, 1), 1fr);
|
|
3760
|
+
}
|
|
3761
|
+
|
|
3762
|
+
/* Responsive columns via media queries */
|
|
3763
|
+
|
|
3764
|
+
/* Tablet: 768px+ */
|
|
3765
|
+
|
|
3766
|
+
@media (min-width: 768px) {
|
|
3767
|
+
.dndev-grid-component {
|
|
3768
|
+
grid-template-columns: repeat(var(--grid-cols-tablet, 1), 1fr);
|
|
3769
|
+
}
|
|
3770
|
+
}
|
|
3771
|
+
|
|
3772
|
+
/* Laptop: 1024px+ (key layout split) */
|
|
3773
|
+
|
|
3774
|
+
@media (min-width: 1024px) {
|
|
3775
|
+
.dndev-grid-component {
|
|
3776
|
+
grid-template-columns: repeat(var(--grid-cols-laptop, 1), 1fr);
|
|
3777
|
+
}
|
|
3703
3778
|
}
|
|
3704
3779
|
|
|
3705
|
-
/*
|
|
3780
|
+
/* Desktop: 1440px+ */
|
|
3781
|
+
|
|
3782
|
+
@media (min-width: 1440px) {
|
|
3783
|
+
.dndev-grid-component {
|
|
3784
|
+
grid-template-columns: repeat(var(--grid-cols-desktop, 1), 1fr);
|
|
3785
|
+
}
|
|
3786
|
+
}
|
|
3706
3787
|
|
|
3707
3788
|
/* Spacing from CSS variables */
|
|
3708
3789
|
|
|
@@ -3847,21 +3928,7 @@ em {
|
|
|
3847
3928
|
}
|
|
3848
3929
|
|
|
3849
3930
|
.dndev-hero-subtitle {
|
|
3850
|
-
font-size: var(--font-size-
|
|
3851
|
-
}
|
|
3852
|
-
|
|
3853
|
-
/* Responsive Content Visibility */
|
|
3854
|
-
|
|
3855
|
-
@media (width < 1024px) {
|
|
3856
|
-
.dndev-hero-section .dndev-desktop-only {
|
|
3857
|
-
display: none !important;
|
|
3858
|
-
}
|
|
3859
|
-
}
|
|
3860
|
-
|
|
3861
|
-
@media (width >= 1024px) {
|
|
3862
|
-
.dndev-hero-section .dndev-mobile-only {
|
|
3863
|
-
display: none !important;
|
|
3864
|
-
}
|
|
3931
|
+
font-size: var(--font-size-lg); /* 20px - muted via component */
|
|
3865
3932
|
}
|
|
3866
3933
|
|
|
3867
3934
|
/* packages/components/src/atomic/HoverCard/HoverCard.css */
|
|
@@ -4174,16 +4241,13 @@ em {
|
|
|
4174
4241
|
.dndev-list {
|
|
4175
4242
|
display: flex;
|
|
4176
4243
|
flex-direction: column;
|
|
4177
|
-
gap: var(--gap-
|
|
4244
|
+
gap: var(--gap-sm);
|
|
4178
4245
|
padding-inline-start: 0; /* Controllable via parent/style prop */
|
|
4246
|
+
margin: 0;
|
|
4179
4247
|
list-style-position: outside;
|
|
4180
|
-
|
|
4248
|
+
text-align: start; /* Always start-aligned, even when parent is centered */
|
|
4181
4249
|
}
|
|
4182
4250
|
|
|
4183
|
-
.dndev-list[data-gap='none'] {
|
|
4184
|
-
gap: var(--gap-none);
|
|
4185
|
-
}
|
|
4186
|
-
|
|
4187
4251
|
.dndev-list[data-gap='tight'] {
|
|
4188
4252
|
gap: var(--gap-sm);
|
|
4189
4253
|
}
|
|
@@ -4232,29 +4296,18 @@ em {
|
|
|
4232
4296
|
font-size: var(--font-size-base);
|
|
4233
4297
|
}
|
|
4234
4298
|
|
|
4235
|
-
/*
|
|
4299
|
+
/* Always use flex layout for consistent alignment */
|
|
4236
4300
|
|
|
4237
4301
|
.dndev-list .dndev-list-item {
|
|
4238
4302
|
font-size: var(--font-size-sm);
|
|
4239
|
-
|
|
4240
|
-
|
|
4241
|
-
|
|
4303
|
+
display: flex;
|
|
4304
|
+
align-items: flex-start;
|
|
4305
|
+
gap: var(--gap-sm);
|
|
4306
|
+
list-style: none; /* Remove native marker */
|
|
4307
|
+
margin-block: 0;
|
|
4308
|
+
padding-inline-start: 0;
|
|
4242
4309
|
}
|
|
4243
4310
|
|
|
4244
|
-
:is(.dndev-list .dndev-list-item)::marker {
|
|
4245
|
-
color: currentColor;
|
|
4246
|
-
}
|
|
4247
|
-
|
|
4248
|
-
/* Only use flex when icon is present */
|
|
4249
|
-
|
|
4250
|
-
:is(.dndev-list .dndev-list-item):has(.dndev-list-item-icon) {
|
|
4251
|
-
display: flex;
|
|
4252
|
-
align-items: center; /* Center vertically */
|
|
4253
|
-
gap: var(--gap-sm);
|
|
4254
|
-
list-style: none; /* Remove native marker when using icon */
|
|
4255
|
-
padding-inline-start: 0; /* Reset padding when flex */
|
|
4256
|
-
}
|
|
4257
|
-
|
|
4258
4311
|
:is(.dndev-list .dndev-list-item) .dndev-list-item-icon {
|
|
4259
4312
|
display: flex;
|
|
4260
4313
|
align-items: center;
|
|
@@ -4609,23 +4662,43 @@ em {
|
|
|
4609
4662
|
margin-inline: auto; /* Self-center in parent */
|
|
4610
4663
|
}
|
|
4611
4664
|
|
|
4612
|
-
.dndev-radio-group[data-cols='2'] {
|
|
4665
|
+
.dndev-radio-group[data-cols='2'] {
|
|
4666
|
+
grid-template-columns: repeat(2, auto);
|
|
4667
|
+
}
|
|
4613
4668
|
|
|
4614
|
-
.dndev-radio-group[data-cols='3'] {
|
|
4669
|
+
.dndev-radio-group[data-cols='3'] {
|
|
4670
|
+
grid-template-columns: repeat(3, auto);
|
|
4671
|
+
}
|
|
4615
4672
|
|
|
4616
|
-
.dndev-radio-group[data-cols='4'] {
|
|
4673
|
+
.dndev-radio-group[data-cols='4'] {
|
|
4674
|
+
grid-template-columns: repeat(4, auto);
|
|
4675
|
+
}
|
|
4617
4676
|
|
|
4618
|
-
.dndev-radio-group[data-cols='5'] {
|
|
4677
|
+
.dndev-radio-group[data-cols='5'] {
|
|
4678
|
+
grid-template-columns: repeat(5, auto);
|
|
4679
|
+
}
|
|
4619
4680
|
|
|
4620
|
-
.dndev-radio-group[data-cols='6'] {
|
|
4681
|
+
.dndev-radio-group[data-cols='6'] {
|
|
4682
|
+
grid-template-columns: repeat(6, auto);
|
|
4683
|
+
}
|
|
4621
4684
|
|
|
4622
|
-
.dndev-radio-group[data-cols='10'] {
|
|
4685
|
+
.dndev-radio-group[data-cols='10'] {
|
|
4686
|
+
grid-template-columns: repeat(10, auto);
|
|
4687
|
+
}
|
|
4623
4688
|
|
|
4624
|
-
.dndev-radio-group[data-cols='12'] {
|
|
4689
|
+
.dndev-radio-group[data-cols='12'] {
|
|
4690
|
+
grid-template-columns: repeat(12, auto);
|
|
4691
|
+
}
|
|
4625
4692
|
|
|
4626
|
-
.dndev-radio-group[data-cols='auto-fit'] {
|
|
4693
|
+
.dndev-radio-group[data-cols='auto-fit'] {
|
|
4694
|
+
grid-template-columns: repeat(auto-fit, minmax(8rem, 1fr));
|
|
4695
|
+
width: 100%;
|
|
4696
|
+
}
|
|
4627
4697
|
|
|
4628
|
-
.dndev-radio-group[data-cols='auto-fill'] {
|
|
4698
|
+
.dndev-radio-group[data-cols='auto-fill'] {
|
|
4699
|
+
grid-template-columns: repeat(auto-fill, minmax(8rem, 1fr));
|
|
4700
|
+
width: 100%;
|
|
4701
|
+
}
|
|
4629
4702
|
|
|
4630
4703
|
/* Variant colors for checked labels - override base pattern */
|
|
4631
4704
|
|
|
@@ -4895,23 +4968,13 @@ em {
|
|
|
4895
4968
|
}
|
|
4896
4969
|
}
|
|
4897
4970
|
|
|
4898
|
-
/* Section title:
|
|
4971
|
+
/* Section title: uppercase, accent color, letter spacing */
|
|
4899
4972
|
|
|
4900
4973
|
.dndev-section-title {
|
|
4901
|
-
display: block;
|
|
4902
|
-
font-size: var(--font-size-lg);
|
|
4903
|
-
font-weight: var(--font-weight-semibold);
|
|
4904
4974
|
text-transform: uppercase;
|
|
4905
4975
|
letter-spacing: 0.2em;
|
|
4906
|
-
color: var(--accent);
|
|
4907
|
-
margin-
|
|
4908
|
-
}
|
|
4909
|
-
|
|
4910
|
-
/* Grid container with default gap */
|
|
4911
|
-
|
|
4912
|
-
.dndev-section-grid {
|
|
4913
|
-
display: grid;
|
|
4914
|
-
gap: var(--gap-md);
|
|
4976
|
+
color: var(--accent) !important;
|
|
4977
|
+
margin-block-end: var(--gap-md);
|
|
4915
4978
|
}
|
|
4916
4979
|
|
|
4917
4980
|
.dndev-section-full-width[data-text-align='start'] .dndev-section-content {
|
|
@@ -6092,7 +6155,7 @@ em {
|
|
|
6092
6155
|
}
|
|
6093
6156
|
|
|
6094
6157
|
.dndev-text-base {
|
|
6095
|
-
font-weight:
|
|
6158
|
+
font-weight: var(--font-weight-medium);
|
|
6096
6159
|
line-height: var(--line-height);
|
|
6097
6160
|
background-color: transparent; /* Text never has background, only color changes */
|
|
6098
6161
|
}
|
|
@@ -6129,28 +6192,36 @@ em {
|
|
|
6129
6192
|
color: var(--destructive);
|
|
6130
6193
|
}
|
|
6131
6194
|
|
|
6195
|
+
.dndev-text-base[data-variant='code'] {
|
|
6196
|
+
font-family: var(--font-mono);
|
|
6197
|
+
font-size: 0.9em;
|
|
6198
|
+
background: var(--muted);
|
|
6199
|
+
padding: 0.1em 0.4em;
|
|
6200
|
+
border-radius: var(--radius-interactive);
|
|
6201
|
+
}
|
|
6202
|
+
|
|
6132
6203
|
/* Level overrides */
|
|
6133
6204
|
|
|
6134
6205
|
.dndev-text-base[data-level='h1'] {
|
|
6135
6206
|
font-size: var(--font-size-3xl);
|
|
6136
|
-
font-weight:
|
|
6207
|
+
font-weight: var(--font-weight-bold);
|
|
6137
6208
|
letter-spacing: -0.02em;
|
|
6138
6209
|
}
|
|
6139
6210
|
|
|
6140
6211
|
.dndev-text-base[data-level='h2'] {
|
|
6141
|
-
font-size: var(--font-size-
|
|
6142
|
-
font-weight:
|
|
6143
|
-
letter-spacing: -0.01em;
|
|
6212
|
+
font-size: var(--font-size-lg);
|
|
6213
|
+
font-weight: var(--font-weight-semibold);
|
|
6144
6214
|
}
|
|
6145
6215
|
|
|
6146
6216
|
.dndev-text-base[data-level='h3'] {
|
|
6147
|
-
font-size: var(--font-size-
|
|
6148
|
-
font-weight:
|
|
6217
|
+
font-size: var(--font-size-lg);
|
|
6218
|
+
font-weight: var(--font-weight-semibold);
|
|
6149
6219
|
}
|
|
6150
6220
|
|
|
6151
6221
|
.dndev-text-base[data-level='h4'] {
|
|
6152
|
-
font-size: var(--font-size-
|
|
6153
|
-
font-weight:
|
|
6222
|
+
font-size: var(--font-size-base);
|
|
6223
|
+
font-weight: var(--font-weight-medium);
|
|
6224
|
+
color: var(--muted-foreground);
|
|
6154
6225
|
}
|
|
6155
6226
|
|
|
6156
6227
|
.dndev-text-base[data-level='body'] {
|
|
@@ -7434,6 +7505,40 @@ h4[data-variant='code'] {
|
|
|
7434
7505
|
border: 0;
|
|
7435
7506
|
}
|
|
7436
7507
|
|
|
7508
|
+
/* ===========================
|
|
7509
|
+
PROSE - SEMANTIC TYPOGRAPHY FOR CONTENT PAGES
|
|
7510
|
+
Wrap docs/markdown/article content in .prose for semantic margins
|
|
7511
|
+
Components are unaffected - they own their own spacing
|
|
7512
|
+
=========================== */
|
|
7513
|
+
|
|
7514
|
+
.prose h1,.prose h2,.prose h3,.prose h4,.prose h5,.prose h6 {
|
|
7515
|
+
margin-block: var(--gap-md);
|
|
7516
|
+
}
|
|
7517
|
+
|
|
7518
|
+
.prose p {
|
|
7519
|
+
margin-block: var(--gap-md);
|
|
7520
|
+
}
|
|
7521
|
+
|
|
7522
|
+
.prose ul,.prose ol {
|
|
7523
|
+
padding-inline-start: var(--gap-lg);
|
|
7524
|
+
margin-block: var(--gap-md);
|
|
7525
|
+
}
|
|
7526
|
+
|
|
7527
|
+
.prose li {
|
|
7528
|
+
margin-block: var(--gap-sm);
|
|
7529
|
+
padding-inline-start: var(--gap-sm);
|
|
7530
|
+
}
|
|
7531
|
+
|
|
7532
|
+
/* First/last child: remove top/bottom margin for clean container edges */
|
|
7533
|
+
|
|
7534
|
+
.prose > :first-child {
|
|
7535
|
+
margin-block-start: 0;
|
|
7536
|
+
}
|
|
7537
|
+
|
|
7538
|
+
.prose > :last-child {
|
|
7539
|
+
margin-block-end: 0;
|
|
7540
|
+
}
|
|
7541
|
+
|
|
7437
7542
|
/* ===========================
|
|
7438
7543
|
SHADOW CONTROL (Universal)
|
|
7439
7544
|
Works with any element
|
|
@@ -7871,18 +7976,20 @@ main[role='main'][data-routing-animation='none'] {
|
|
|
7871
7976
|
display: grid;
|
|
7872
7977
|
/* ONE DRY grid structure: 3 rows, 2 columns */
|
|
7873
7978
|
/* Footer starts at sidebar edge (column 2) - when sidebar-width is 0px, footer starts at left edge */
|
|
7979
|
+
/* Footer grows with content wrapping. For pixel-perfect calc() accuracy when footer wraps,
|
|
7980
|
+
implement ResizeObserver to update --footer-height dynamically. */
|
|
7874
7981
|
grid-template-areas:
|
|
7875
7982
|
'header header'
|
|
7876
7983
|
'sidebar main'
|
|
7877
7984
|
'footer footer';
|
|
7878
|
-
grid-template-rows: var(--header-height) 1fr var(--footer-height);
|
|
7985
|
+
grid-template-rows: var(--header-height) 1fr minmax(var(--footer-height), auto);
|
|
7879
7986
|
grid-template-columns: var(--sidebar-width) 1fr;
|
|
7880
7987
|
|
|
7881
7988
|
/* Game layout: Grid rows adjust based on breakpoint (footer hidden on tablet/mobile) */
|
|
7882
7989
|
}
|
|
7883
7990
|
|
|
7884
7991
|
[data-layout='game']:root .dndev-layout {
|
|
7885
|
-
grid-template-rows: var(--header-height) 1fr var(--footer-height);
|
|
7992
|
+
grid-template-rows: var(--header-height) 1fr minmax(var(--footer-height), auto);
|
|
7886
7993
|
}
|
|
7887
7994
|
|
|
7888
7995
|
/* ===========================
|
|
@@ -8234,7 +8341,7 @@ footer[role='contentinfo'] {
|
|
|
8234
8341
|
grid-area: footer;
|
|
8235
8342
|
box-sizing: border-box;
|
|
8236
8343
|
grid-column: 1 / -1;
|
|
8237
|
-
height: var(--footer-height);
|
|
8344
|
+
min-height: var(--footer-height);
|
|
8238
8345
|
z-index: var(--z-footer);
|
|
8239
8346
|
|
|
8240
8347
|
/* Theme-aware styling - 100% controlled by theme system */
|