@donotdev/ui 0.0.8 → 0.0.9
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/AuthHeader.d.ts +1 -1
- package/dist/components/auth/AuthHeader.d.ts.map +1 -1
- package/dist/components/auth/AuthMenu.d.ts +2 -1
- package/dist/components/auth/AuthMenu.d.ts.map +1 -1
- package/dist/components/auth/AuthMenu.js +1 -1
- package/dist/components/common/AppLoading.d.ts +1 -1
- package/dist/components/common/AppLoading.d.ts.map +1 -1
- package/dist/components/common/AppLoading.js +0 -1
- package/dist/components/common/Loader.d.ts +4 -4
- package/dist/components/common/Loader.d.ts.map +1 -1
- package/dist/components/common/Loader.js +11 -12
- package/dist/components/common/LoadingMessage.d.ts +1 -9
- package/dist/components/common/LoadingMessage.d.ts.map +1 -1
- package/dist/components/common/LoadingMessage.js +0 -1
- package/dist/components/common/LoadingScreen.d.ts +1 -9
- package/dist/components/common/LoadingScreen.d.ts.map +1 -1
- package/dist/components/common/LoadingScreen.js +0 -1
- package/dist/components/common/RedirectOverlay.js +1 -1
- package/dist/components/common/TechBento.d.ts.map +1 -1
- package/dist/components/common/TechBento.js +1 -0
- package/dist/components/layout/components/FloatingLanguageSwitcher.d.ts +1 -9
- package/dist/components/layout/components/FloatingLanguageSwitcher.d.ts.map +1 -1
- package/dist/components/layout/components/FloatingLanguageSwitcher.js +0 -1
- package/dist/components/layout/components/header/CacheSettings.d.ts.map +1 -1
- package/dist/components/layout/components/header/HeaderMenu.d.ts.map +1 -1
- package/dist/components/layout/components/header/SettingsMenu.d.ts.map +1 -1
- package/dist/components/layout/components/header/SettingsMenu.js +0 -1
- package/dist/components/layout/components/header/ThemeToggle.d.ts +1 -1
- package/dist/components/layout/components/header/ThemeToggle.d.ts.map +1 -1
- package/dist/components/layout/components/header/ThemeToggle.js +5 -4
- package/dist/crud/components/DisplayFieldRenderer.d.ts +3 -11
- package/dist/crud/components/DisplayFieldRenderer.d.ts.map +1 -1
- package/dist/crud/components/DisplayFieldRenderer.js +3 -2
- package/dist/crud/components/EntityDisplayRenderer.d.ts +2 -2
- package/dist/crud/components/fields/display/AvatarFieldDisplay.d.ts +2 -2
- package/dist/crud/components/fields/display/BadgeFieldDisplay.d.ts +2 -2
- package/dist/crud/components/fields/display/ButtonFieldDisplay.d.ts +2 -2
- package/dist/crud/components/fields/display/CheckboxFieldDisplay.d.ts +2 -2
- package/dist/crud/components/fields/display/DateFieldDisplay.d.ts +3 -11
- package/dist/crud/components/fields/display/DateFieldDisplay.d.ts.map +1 -1
- package/dist/crud/components/fields/display/DateFieldDisplay.js +0 -1
- package/dist/crud/components/fields/display/DropdownDisplay.d.ts +2 -2
- package/dist/crud/components/fields/display/FileFieldDisplay.d.ts +2 -2
- package/dist/crud/components/fields/display/GeoPointFieldDisplay.d.ts +3 -11
- package/dist/crud/components/fields/display/GeoPointFieldDisplay.d.ts.map +1 -1
- package/dist/crud/components/fields/display/GeoPointFieldDisplay.js +0 -1
- package/dist/crud/components/fields/display/HiddenFieldDisplay.d.ts +3 -3
- package/dist/crud/components/fields/display/HiddenFieldDisplay.d.ts.map +1 -1
- package/dist/crud/components/fields/display/HiddenFieldDisplay.js +0 -9
- package/dist/crud/components/fields/display/ImageFieldDisplay.d.ts +3 -11
- package/dist/crud/components/fields/display/ImageFieldDisplay.d.ts.map +1 -1
- package/dist/crud/components/fields/display/ImageFieldDisplay.js +0 -1
- package/dist/crud/components/fields/display/LinkFieldDisplay.d.ts +3 -11
- package/dist/crud/components/fields/display/LinkFieldDisplay.d.ts.map +1 -1
- package/dist/crud/components/fields/display/LinkFieldDisplay.js +0 -1
- package/dist/crud/components/fields/display/MapFieldDisplay.d.ts +3 -11
- package/dist/crud/components/fields/display/MapFieldDisplay.d.ts.map +1 -1
- package/dist/crud/components/fields/display/MapFieldDisplay.js +0 -1
- package/dist/crud/components/fields/display/MultiDropdownDisplay.d.ts +3 -11
- package/dist/crud/components/fields/display/MultiDropdownDisplay.d.ts.map +1 -1
- package/dist/crud/components/fields/display/MultiDropdownDisplay.js +0 -1
- package/dist/crud/components/fields/display/MultiInputTextFieldDisplay.d.ts +3 -11
- package/dist/crud/components/fields/display/MultiInputTextFieldDisplay.d.ts.map +1 -1
- package/dist/crud/components/fields/display/MultiInputTextFieldDisplay.js +0 -1
- package/dist/crud/components/fields/display/NumberFieldDisplay.d.ts +3 -11
- package/dist/crud/components/fields/display/NumberFieldDisplay.d.ts.map +1 -1
- package/dist/crud/components/fields/display/NumberFieldDisplay.js +0 -1
- package/dist/crud/components/fields/display/PasswordFieldDisplay.d.ts +3 -3
- package/dist/crud/components/fields/display/PasswordFieldDisplay.d.ts.map +1 -1
- package/dist/crud/components/fields/display/PasswordFieldDisplay.js +0 -1
- package/dist/crud/components/fields/display/PhoneNumberDisplay.d.ts +3 -11
- package/dist/crud/components/fields/display/PhoneNumberDisplay.d.ts.map +1 -1
- package/dist/crud/components/fields/display/PhoneNumberDisplay.js +0 -1
- package/dist/crud/components/fields/display/RadioFieldDisplay.d.ts +3 -11
- package/dist/crud/components/fields/display/RadioFieldDisplay.d.ts.map +1 -1
- package/dist/crud/components/fields/display/RadioFieldDisplay.js +0 -1
- package/dist/crud/components/fields/display/RangeFieldDisplay.d.ts +3 -11
- package/dist/crud/components/fields/display/RangeFieldDisplay.d.ts.map +1 -1
- package/dist/crud/components/fields/display/RangeFieldDisplay.js +0 -1
- package/dist/crud/components/fields/display/ReferenceFieldDisplay.d.ts +3 -11
- package/dist/crud/components/fields/display/ReferenceFieldDisplay.d.ts.map +1 -1
- package/dist/crud/components/fields/display/ReferenceFieldDisplay.js +0 -1
- package/dist/crud/components/fields/display/RichTextDisplay.d.ts +25 -0
- package/dist/crud/components/fields/display/RichTextDisplay.d.ts.map +1 -0
- package/dist/crud/components/fields/display/RichTextDisplay.js +104 -0
- package/dist/crud/components/fields/display/TextAreaDisplay.d.ts +3 -11
- package/dist/crud/components/fields/display/TextAreaDisplay.d.ts.map +1 -1
- package/dist/crud/components/fields/display/TextAreaDisplay.js +0 -1
- package/dist/crud/components/fields/display/TextFieldDisplay.d.ts +2 -2
- package/dist/crud/components/fields/display/TimestampFieldDisplay.d.ts +3 -11
- package/dist/crud/components/fields/display/TimestampFieldDisplay.d.ts.map +1 -1
- package/dist/crud/components/fields/display/TimestampFieldDisplay.js +0 -1
- package/dist/crud/components/fields/display/index.d.ts +1 -0
- package/dist/crud/components/fields/display/index.d.ts.map +1 -1
- package/dist/crud/components/fields/display/index.js +1 -0
- package/dist/dndev.css +401 -84
- package/dist/index.js +64 -4
- package/dist/internal/common/ErrorFallback.d.ts +1 -10
- package/dist/internal/common/ErrorFallback.d.ts.map +1 -1
- package/dist/internal/common/GlobalErrorFallback.d.ts +1 -9
- package/dist/internal/common/GlobalErrorFallback.d.ts.map +1 -1
- package/dist/internal/common/RouteErrorFallback.js +1 -1
- package/dist/internal/devtools/components/DebugDialog.d.ts.map +1 -1
- package/dist/internal/devtools/components/DebugDialog.js +3 -1
- package/dist/internal/devtools/components/MaskedValue.d.ts.map +1 -1
- package/dist/internal/devtools/components/MaskedValue.js +1 -1
- package/dist/internal/devtools/components/StoresTab.js +1 -1
- package/dist/internal/initializers/BaseStoresInitializer.d.ts.map +1 -1
- package/dist/internal/initializers/BaseStoresInitializer.js +1 -2
- package/dist/internal/initializers/NextJsStoresInitializer.d.ts.map +1 -1
- package/dist/internal/layout/DnDevLayout.d.ts.map +1 -1
- package/dist/internal/layout/DnDevLayout.js +4 -5
- package/dist/internal/layout/components/AutoMetaTags.d.ts.map +1 -1
- package/dist/internal/layout/components/footer/FooterLegalLinks.js +2 -2
- package/dist/internal/layout/config/defaults.d.ts +0 -10
- package/dist/internal/layout/config/defaults.d.ts.map +1 -1
- package/dist/internal/layout/config/defaults.js +12 -1
- package/dist/internal/layout/config/presets/admin.d.ts.map +1 -1
- package/dist/internal/layout/config/presets/admin.js +7 -2
- package/dist/internal/layout/config/presets/blog.d.ts.map +1 -1
- package/dist/internal/layout/config/presets/blog.js +7 -1
- package/dist/internal/layout/config/presets/docs.d.ts.map +1 -1
- package/dist/internal/layout/config/presets/docs.js +7 -5
- package/dist/internal/layout/config/presets/game.d.ts.map +1 -1
- package/dist/internal/layout/config/presets/game.js +7 -2
- package/dist/internal/layout/config/presets/moolti.d.ts.map +1 -1
- package/dist/internal/layout/config/presets/moolti.js +10 -3
- package/dist/internal/layout/zones/DnDevFooter.d.ts +1 -13
- package/dist/internal/layout/zones/DnDevFooter.d.ts.map +1 -1
- package/dist/internal/layout/zones/DnDevHeader.d.ts +1 -14
- package/dist/internal/layout/zones/DnDevHeader.d.ts.map +1 -1
- package/dist/internal/layout/zones/DnDevMergedBar.d.ts +2 -14
- package/dist/internal/layout/zones/DnDevMergedBar.d.ts.map +1 -1
- package/dist/internal/layout/zones/DnDevMergedBar.js +11 -3
- package/dist/internal/layout/zones/DnDevSidebar.d.ts +1 -14
- package/dist/internal/layout/zones/DnDevSidebar.d.ts.map +1 -1
- package/dist/routing/AuthGuard.d.ts.map +1 -1
- package/dist/routing/GoTo.d.ts +3 -1
- package/dist/routing/GoTo.d.ts.map +1 -1
- package/dist/routing/GoTo.js +6 -2
- package/dist/routing/GoToDialog.d.ts +1 -1
- package/dist/routing/GoToDialog.d.ts.map +1 -1
- package/dist/routing/GoToDialog.js +3 -5
- package/dist/routing/NavigationItem.d.ts +1 -1
- package/dist/routing/NavigationItem.d.ts.map +1 -1
- package/dist/routing/NavigationItem.js +0 -1
- package/dist/routing/hooks/hooks.next.js +1 -1
- package/dist/routing/hooks/hooks.vite.js +1 -1
- package/dist/routing/hooks/useNavigate.next.d.ts.map +1 -1
- package/dist/routing/hooks/useNavigate.next.js +1 -1
- package/dist/routing/hooks/useNavigate.vite.d.ts.map +1 -1
- package/dist/routing/useGoTo.d.ts.map +1 -1
- package/dist/styles/index.css +401 -84
- package/dist/utils/assetResolver.d.ts +1 -1
- package/dist/utils/assetResolver.d.ts.map +1 -1
- package/dist/utils/assetResolver.js +1 -2
- package/dist/utils/index.d.ts +0 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +0 -1
- package/dist/utils/tList.d.ts +1 -1
- package/dist/utils/tList.d.ts.map +1 -1
- package/dist/utils/useAuthSafe.d.ts +0 -33
- package/dist/utils/useAuthSafe.d.ts.map +1 -1
- package/dist/utils/useAuthSafe.js +34 -1
- package/dist/utils/useCrudSafe.d.ts +12 -6
- package/dist/utils/useCrudSafe.d.ts.map +1 -1
- package/dist/utils/useCrudSafe.js +9 -6
- package/dist/utils/useOAuthSafe.d.ts.map +1 -1
- package/dist/utils/useStripeBillingSafe.d.ts +1 -34
- package/dist/utils/useStripeBillingSafe.d.ts.map +1 -1
- package/dist/utils/useStripeBillingSafe.js +34 -1
- package/dist/vite-routing/AppRoutes.d.ts +1 -1
- package/dist/vite-routing/AppRoutes.d.ts.map +1 -1
- package/dist/vite-routing/AppRoutes.js +0 -1
- package/dist/vite-routing/RootLayout.d.ts.map +1 -1
- package/dist/vite-routing/RootLayout.js +3 -6
- package/package.json +1 -1
package/dist/styles/index.css
CHANGED
|
@@ -2724,6 +2724,34 @@ em {
|
|
|
2724
2724
|
|
|
2725
2725
|
/* Label styling moved to patterns.css (.dndev-interactive-label) */
|
|
2726
2726
|
|
|
2727
|
+
/* Loading state */
|
|
2728
|
+
|
|
2729
|
+
[data-loading] {
|
|
2730
|
+
cursor: wait;
|
|
2731
|
+
pointer-events: none;
|
|
2732
|
+
}
|
|
2733
|
+
|
|
2734
|
+
/* Button spinner - inherits size from button font-size */
|
|
2735
|
+
|
|
2736
|
+
.dndev-button-spinner {
|
|
2737
|
+
flex-shrink: 0;
|
|
2738
|
+
}
|
|
2739
|
+
|
|
2740
|
+
/* Progress ring for upload percentage */
|
|
2741
|
+
|
|
2742
|
+
.dndev-button-progress {
|
|
2743
|
+
display: inline-flex;
|
|
2744
|
+
align-items: center;
|
|
2745
|
+
justify-content: center;
|
|
2746
|
+
flex-shrink: 0;
|
|
2747
|
+
}
|
|
2748
|
+
|
|
2749
|
+
.dndev-progress-ring {
|
|
2750
|
+
width: 1em;
|
|
2751
|
+
height: 1em;
|
|
2752
|
+
transform: rotate(-90deg);
|
|
2753
|
+
}
|
|
2754
|
+
|
|
2727
2755
|
/* packages/components/src/atomic/Calendar/Calendar.css */
|
|
2728
2756
|
|
|
2729
2757
|
/**
|
|
@@ -4612,49 +4640,81 @@ em {
|
|
|
4612
4640
|
margin-inline-start: var(--gap-sm);
|
|
4613
4641
|
}
|
|
4614
4642
|
|
|
4615
|
-
/* Floating
|
|
4643
|
+
/* Floating Fieldset - native border-cutting via legend */
|
|
4616
4644
|
|
|
4617
|
-
.dndev-floating-
|
|
4618
|
-
position:
|
|
4619
|
-
|
|
4620
|
-
|
|
4621
|
-
|
|
4622
|
-
|
|
4623
|
-
|
|
4624
|
-
|
|
4625
|
-
|
|
4626
|
-
padding: 0 var(--gap-sm);
|
|
4627
|
-
line-height: 1;
|
|
4628
|
-
color: var(--foreground);
|
|
4645
|
+
.dndev-floating-fieldset {
|
|
4646
|
+
position: relative;
|
|
4647
|
+
border: var(--border-hairline) solid var(--line-2);
|
|
4648
|
+
border-radius: var(--radius-interactive);
|
|
4649
|
+
margin: 0;
|
|
4650
|
+
padding: 0;
|
|
4651
|
+
background-color: transparent;
|
|
4652
|
+
transition: all var(--dur-normal) var(--ease-in-out);
|
|
4653
|
+
text-align: start;
|
|
4629
4654
|
}
|
|
4630
4655
|
|
|
4631
|
-
|
|
4656
|
+
.dndev-floating-fieldset:hover {
|
|
4657
|
+
border-color: var(--ring);
|
|
4658
|
+
}
|
|
4632
4659
|
|
|
4633
|
-
.dndev-floating
|
|
4634
|
-
|
|
4635
|
-
|
|
4636
|
-
|
|
4637
|
-
|
|
4638
|
-
|
|
4660
|
+
.dndev-floating-fieldset:focus-within {
|
|
4661
|
+
border-color: var(--ring);
|
|
4662
|
+
box-shadow: 0 0 0 2px var(--ring);
|
|
4663
|
+
}
|
|
4664
|
+
|
|
4665
|
+
.dndev-floating-fieldset[data-disabled='true'] {
|
|
4666
|
+
opacity: var(--opacity-muted);
|
|
4667
|
+
cursor: not-allowed;
|
|
4639
4668
|
}
|
|
4640
4669
|
|
|
4641
|
-
/*
|
|
4670
|
+
/* Legend sits on border - browser natively cuts border */
|
|
4642
4671
|
|
|
4643
|
-
.dndev-floating
|
|
4644
|
-
|
|
4672
|
+
.dndev-floating-legend {
|
|
4673
|
+
margin-inline-start: var(--gap-sm);
|
|
4674
|
+
padding: 0 var(--gap-sm);
|
|
4675
|
+
font-size: var(--font-size-xs);
|
|
4676
|
+
font-weight: 500;
|
|
4677
|
+
line-height: 1;
|
|
4678
|
+
color: var(--foreground);
|
|
4679
|
+
}
|
|
4680
|
+
|
|
4681
|
+
.dndev-floating-legend label {
|
|
4682
|
+
cursor: default;
|
|
4683
|
+
display: inline-flex;
|
|
4684
|
+
align-items: center;
|
|
4685
|
+
gap: var(--gap-tight);
|
|
4645
4686
|
}
|
|
4646
4687
|
|
|
4647
|
-
.dndev-floating-
|
|
4688
|
+
.dndev-floating-fieldset[data-disabled='true'] .dndev-floating-legend {
|
|
4648
4689
|
color: var(--muted-foreground);
|
|
4649
4690
|
}
|
|
4650
4691
|
|
|
4651
|
-
.dndev-floating-
|
|
4692
|
+
.dndev-floating-legend[data-truncate='true'] {
|
|
4652
4693
|
max-width: calc(100% - var(--gap-md) * 2);
|
|
4653
4694
|
overflow: hidden;
|
|
4654
4695
|
text-overflow: ellipsis;
|
|
4655
4696
|
white-space: nowrap;
|
|
4656
4697
|
}
|
|
4657
4698
|
|
|
4699
|
+
/* Remove border from inner input since fieldset has it */
|
|
4700
|
+
|
|
4701
|
+
.dndev-floating-fieldset .dndev-input {
|
|
4702
|
+
border: none;
|
|
4703
|
+
border-radius: var(--radius-interactive);
|
|
4704
|
+
box-shadow: none;
|
|
4705
|
+
}
|
|
4706
|
+
|
|
4707
|
+
.dndev-floating-fieldset .dndev-input:hover {
|
|
4708
|
+
border-color: transparent;
|
|
4709
|
+
}
|
|
4710
|
+
|
|
4711
|
+
.dndev-floating-fieldset .dndev-input:focus,
|
|
4712
|
+
.dndev-floating-fieldset .dndev-input:focus-visible {
|
|
4713
|
+
border-color: transparent;
|
|
4714
|
+
box-shadow: none;
|
|
4715
|
+
outline: none;
|
|
4716
|
+
}
|
|
4717
|
+
|
|
4658
4718
|
/* packages/components/src/atomic/List/List.css */
|
|
4659
4719
|
|
|
4660
4720
|
.dndev-list {
|
|
@@ -5642,50 +5702,210 @@ em {
|
|
|
5642
5702
|
display: flex;
|
|
5643
5703
|
flex-direction: column;
|
|
5644
5704
|
z-index: var(--z-modal);
|
|
5645
|
-
|
|
5705
|
+
background: var(--card);
|
|
5706
|
+
/* Ensure background is opaque */
|
|
5707
|
+
color: var(--card-foreground);
|
|
5708
|
+
box-shadow: var(--shadow-xl);
|
|
5709
|
+
/* Focus Tunnel: Deep elevation */
|
|
5710
|
+
overflow: hidden;
|
|
5711
|
+
/* Scroll Trap: Container clips overflow */
|
|
5712
|
+
|
|
5713
|
+
/* Motion Physics: Base state */
|
|
5714
|
+
will-change: transform, opacity;
|
|
5646
5715
|
|
|
5647
|
-
/*
|
|
5716
|
+
/* Open state animation - "Heavy" ease for premium feel */
|
|
5648
5717
|
}
|
|
5649
5718
|
|
|
5719
|
+
.dndev-sheet-content[data-state='open'] {
|
|
5720
|
+
animation: sheet-slide-in var(--dur-heavy) var(--ease-heavy);
|
|
5721
|
+
}
|
|
5722
|
+
|
|
5723
|
+
/* Closed state animation */
|
|
5724
|
+
|
|
5725
|
+
.dndev-sheet-content[data-state='closed'] {
|
|
5726
|
+
animation: sheet-slide-out var(--dur-normal) var(--ease-in-out);
|
|
5727
|
+
}
|
|
5728
|
+
|
|
5729
|
+
/* Sheet positioning by side - SPATIAL METAPHOR */
|
|
5730
|
+
|
|
5731
|
+
/* RIGHT / LEFT (Desktop Panels) */
|
|
5732
|
+
|
|
5650
5733
|
.dndev-sheet-content[data-side='right'],.dndev-sheet-content[data-side='left'] {
|
|
5651
5734
|
top: 0;
|
|
5652
5735
|
bottom: 0;
|
|
5653
5736
|
width: 80%;
|
|
5654
5737
|
max-width: 56rem;
|
|
5738
|
+
/* Standard panel width */
|
|
5739
|
+
height: 100%;
|
|
5740
|
+
/* Full height */
|
|
5741
|
+
border-radius: 0;
|
|
5742
|
+
/* Square edges for panel metaphor */
|
|
5655
5743
|
}
|
|
5656
5744
|
|
|
5657
5745
|
.dndev-sheet-content[data-side='right'] {
|
|
5746
|
+
/* Physical positioning: right edge */
|
|
5658
5747
|
right: 0;
|
|
5748
|
+
left: auto;
|
|
5749
|
+
/* Border on logical start (left in LTR, right in RTL) */
|
|
5750
|
+
border-inline-start: var(--border-hairline) solid var(--line-1);
|
|
5659
5751
|
}
|
|
5660
5752
|
|
|
5661
5753
|
.dndev-sheet-content[data-side='left'] {
|
|
5754
|
+
/* Physical positioning: left edge */
|
|
5662
5755
|
left: 0;
|
|
5756
|
+
right: auto;
|
|
5757
|
+
/* Border on logical end (right in LTR, left in RTL) */
|
|
5758
|
+
border-inline-end: var(--border-hairline) solid var(--line-1);
|
|
5663
5759
|
}
|
|
5664
5760
|
|
|
5761
|
+
/* TOP / BOTTOM (Mobile Cards) */
|
|
5762
|
+
|
|
5665
5763
|
.dndev-sheet-content[data-side='top'],.dndev-sheet-content[data-side='bottom'] {
|
|
5666
5764
|
left: 0;
|
|
5667
5765
|
right: 0;
|
|
5668
|
-
|
|
5669
|
-
|
|
5670
|
-
|
|
5766
|
+
/* Card metaphor: Detached from opposite edge */
|
|
5767
|
+
height: auto;
|
|
5768
|
+
max-height: 92dvh;
|
|
5769
|
+
/* Never touch top edge */
|
|
5770
|
+
width: 100%;
|
|
5771
|
+
margin-left: auto;
|
|
5772
|
+
margin-right: auto;
|
|
5773
|
+
|
|
5774
|
+
/* On larger screens, constrain width */
|
|
5671
5775
|
}
|
|
5672
5776
|
|
|
5777
|
+
@media (width >=768px) {
|
|
5778
|
+
|
|
5779
|
+
.dndev-sheet-content[data-side='top'],.dndev-sheet-content[data-side='bottom'] {
|
|
5780
|
+
max-width: 56rem;
|
|
5781
|
+
width: 90%;
|
|
5782
|
+
border-radius: var(--radius-lg);
|
|
5783
|
+
/* Fully rounded card on desktop */
|
|
5784
|
+
}
|
|
5785
|
+
}
|
|
5786
|
+
|
|
5673
5787
|
.dndev-sheet-content[data-side='top'] {
|
|
5674
5788
|
top: 0;
|
|
5789
|
+
border-bottom: var(--border-hairline) solid var(--line-1);
|
|
5790
|
+
/* Rounded bottom corners only */
|
|
5791
|
+
border-bottom-left-radius: var(--radius-lg);
|
|
5792
|
+
border-bottom-right-radius: var(--radius-lg);
|
|
5675
5793
|
}
|
|
5676
5794
|
|
|
5677
5795
|
.dndev-sheet-content[data-side='bottom'] {
|
|
5678
5796
|
bottom: 0;
|
|
5797
|
+
border-top: var(--border-hairline) solid var(--line-1);
|
|
5798
|
+
/* Rounded top corners only */
|
|
5799
|
+
border-top-left-radius: var(--radius-lg);
|
|
5800
|
+
border-top-right-radius: var(--radius-lg);
|
|
5679
5801
|
}
|
|
5680
5802
|
|
|
5803
|
+
/* DRAG HANDLE PILL - Visual affordance for draggable sheets */
|
|
5804
|
+
|
|
5805
|
+
.dndev-sheet-drag-handle {
|
|
5806
|
+
width: 2.5rem;
|
|
5807
|
+
height: 0.25rem;
|
|
5808
|
+
background: var(--line-2);
|
|
5809
|
+
border-radius: var(--radius-full);
|
|
5810
|
+
margin: var(--gap-sm) auto 0;
|
|
5811
|
+
flex-shrink: 0;
|
|
5812
|
+
cursor: grab;
|
|
5813
|
+
transition: background-color var(--dur-fast) var(--ease-in-out);
|
|
5814
|
+
}
|
|
5815
|
+
|
|
5816
|
+
.dndev-sheet-drag-handle:active {
|
|
5817
|
+
cursor: grabbing;
|
|
5818
|
+
}
|
|
5819
|
+
|
|
5820
|
+
/* Positioning for bottom sheets */
|
|
5821
|
+
|
|
5822
|
+
.dndev-sheet-content[data-side='bottom'] > .dndev-sheet-drag-handle {
|
|
5823
|
+
margin-top: var(--gap-sm);
|
|
5824
|
+
margin-bottom: 0;
|
|
5825
|
+
}
|
|
5826
|
+
|
|
5827
|
+
/* Positioning for top sheets */
|
|
5828
|
+
|
|
5829
|
+
.dndev-sheet-content[data-side='top'] > .dndev-sheet-drag-handle {
|
|
5830
|
+
margin-top: max(var(--gap-sm), env(safe-area-inset-top));
|
|
5831
|
+
margin-bottom: 0;
|
|
5832
|
+
}
|
|
5833
|
+
|
|
5834
|
+
/* HEADER - Pinned, No Padding (Tight Layout) */
|
|
5835
|
+
|
|
5836
|
+
/* Industry standard: Title always on start, X always on end (consistent across all sides) */
|
|
5837
|
+
|
|
5681
5838
|
.dndev-sheet-header {
|
|
5682
5839
|
display: flex;
|
|
5683
5840
|
align-items: center;
|
|
5684
5841
|
justify-content: space-between;
|
|
5685
5842
|
gap: var(--gap-md);
|
|
5686
5843
|
flex-shrink: 0;
|
|
5844
|
+
/* Never shrink */
|
|
5687
5845
|
min-height: var(--touch-target);
|
|
5688
|
-
|
|
5846
|
+
/* No padding - tight layout: [ Title X ] */
|
|
5847
|
+
padding-block: 0;
|
|
5848
|
+
/* RTL-aware: padding on logical start only */
|
|
5849
|
+
padding-inline-start: var(--gap-md);
|
|
5850
|
+
padding-inline-end: 0; /* X button has its own spacing */
|
|
5851
|
+
border-bottom: var(--border-hairline) solid var(--line-1);
|
|
5852
|
+
/* Separator */
|
|
5853
|
+
|
|
5854
|
+
/* Thumb Ergonomics: Top Safe Area (only for top sheets) */
|
|
5855
|
+
}
|
|
5856
|
+
|
|
5857
|
+
.dndev-sheet-content[data-side='top'] .dndev-sheet-header {
|
|
5858
|
+
padding-top: max(0, env(safe-area-inset-top));
|
|
5859
|
+
}
|
|
5860
|
+
|
|
5861
|
+
/* Adjust header padding when drag handle is present (sibling selector) */
|
|
5862
|
+
|
|
5863
|
+
.dndev-sheet-content[data-side='bottom'] .dndev-sheet-drag-handle ~ .dndev-sheet-header,
|
|
5864
|
+
.dndev-sheet-content[data-side='top'] .dndev-sheet-drag-handle ~ .dndev-sheet-header {
|
|
5865
|
+
padding-top: 0;
|
|
5866
|
+
}
|
|
5867
|
+
|
|
5868
|
+
/* BODY - Scrollable */
|
|
5869
|
+
|
|
5870
|
+
.dndev-sheet-body {
|
|
5871
|
+
flex: 1;
|
|
5872
|
+
/* Consumes available space */
|
|
5873
|
+
overflow-y: auto;
|
|
5874
|
+
/* Independent scroll */
|
|
5875
|
+
overflow-x: hidden;
|
|
5876
|
+
padding: var(--gap-md);
|
|
5877
|
+
overscroll-behavior: contain;
|
|
5878
|
+
/* Prevent body scroll chaining */
|
|
5879
|
+
}
|
|
5880
|
+
|
|
5881
|
+
/* FOOTER - Pinned */
|
|
5882
|
+
|
|
5883
|
+
.dndev-sheet-footer {
|
|
5884
|
+
flex-shrink: 0;
|
|
5885
|
+
/* Never shrink */
|
|
5886
|
+
padding: var(--gap-md);
|
|
5887
|
+
border-top: var(--border-hairline) solid var(--line-1);
|
|
5888
|
+
/* Separator */
|
|
5889
|
+
display: flex;
|
|
5890
|
+
flex-direction: column-reverse;
|
|
5891
|
+
/* Mobile-first stacking */
|
|
5892
|
+
gap: var(--gap-sm);
|
|
5893
|
+
|
|
5894
|
+
/* Desktop: Row layout */
|
|
5895
|
+
}
|
|
5896
|
+
|
|
5897
|
+
@media (width >=640px) {
|
|
5898
|
+
|
|
5899
|
+
.dndev-sheet-footer {
|
|
5900
|
+
flex-direction: row;
|
|
5901
|
+
justify-content: flex-end;
|
|
5902
|
+
}
|
|
5903
|
+
}
|
|
5904
|
+
|
|
5905
|
+
.dndev-sheet-footer {
|
|
5906
|
+
|
|
5907
|
+
/* Thumb Ergonomics: Bottom Safe Area (Home Indicator) */
|
|
5908
|
+
padding-bottom: max(var(--gap-md), env(safe-area-inset-bottom));
|
|
5689
5909
|
}
|
|
5690
5910
|
|
|
5691
5911
|
.dndev-sheet-title {
|
|
@@ -5695,19 +5915,72 @@ em {
|
|
|
5695
5915
|
}
|
|
5696
5916
|
|
|
5697
5917
|
.dndev-sheet-close {
|
|
5698
|
-
|
|
5699
|
-
|
|
5700
|
-
|
|
5918
|
+
/* Position relative - flex handles alignment */
|
|
5919
|
+
position: relative;
|
|
5920
|
+
margin-inline-start: auto;
|
|
5921
|
+
/* Push to end (RTL-aware: end = right in LTR, left in RTL) */
|
|
5701
5922
|
opacity: var(--opacity-muted);
|
|
5923
|
+
/* No padding - tight spacing */
|
|
5924
|
+
padding: 0;
|
|
5925
|
+
/* RTL-aware: padding on logical end only */
|
|
5926
|
+
padding-inline-end: var(--gap-md);
|
|
5927
|
+
padding-inline-start: 0;
|
|
5702
5928
|
}
|
|
5703
5929
|
|
|
5704
5930
|
.dndev-sheet-close:hover {
|
|
5705
5931
|
opacity: 1;
|
|
5706
5932
|
}
|
|
5707
5933
|
|
|
5708
|
-
|
|
5709
|
-
|
|
5710
|
-
|
|
5934
|
+
/* ===========================
|
|
5935
|
+
ANIMATIONS (Motion Physics)
|
|
5936
|
+
=========================== */
|
|
5937
|
+
|
|
5938
|
+
/* Slide In/Out Keyframes - Context Aware */
|
|
5939
|
+
|
|
5940
|
+
@keyframes sheet-slide-in {
|
|
5941
|
+
from {
|
|
5942
|
+
opacity: 0;
|
|
5943
|
+
transform: var(--slide-enter-transform);
|
|
5944
|
+
}
|
|
5945
|
+
|
|
5946
|
+
to {
|
|
5947
|
+
opacity: 1;
|
|
5948
|
+
transform: translate(0, 0);
|
|
5949
|
+
}
|
|
5950
|
+
}
|
|
5951
|
+
|
|
5952
|
+
@keyframes sheet-slide-out {
|
|
5953
|
+
from {
|
|
5954
|
+
opacity: 1;
|
|
5955
|
+
transform: translate(0, 0);
|
|
5956
|
+
}
|
|
5957
|
+
|
|
5958
|
+
to {
|
|
5959
|
+
opacity: 0;
|
|
5960
|
+
transform: var(--slide-exit-transform);
|
|
5961
|
+
}
|
|
5962
|
+
}
|
|
5963
|
+
|
|
5964
|
+
/* Define Transforms based on Side */
|
|
5965
|
+
|
|
5966
|
+
.dndev-sheet-content[data-side='right'] {
|
|
5967
|
+
--slide-enter-transform: translateX(100%);
|
|
5968
|
+
--slide-exit-transform: translateX(100%);
|
|
5969
|
+
}
|
|
5970
|
+
|
|
5971
|
+
.dndev-sheet-content[data-side='left'] {
|
|
5972
|
+
--slide-enter-transform: translateX(-100%);
|
|
5973
|
+
--slide-exit-transform: translateX(-100%);
|
|
5974
|
+
}
|
|
5975
|
+
|
|
5976
|
+
.dndev-sheet-content[data-side='bottom'] {
|
|
5977
|
+
--slide-enter-transform: translateY(100%);
|
|
5978
|
+
--slide-exit-transform: translateY(100%);
|
|
5979
|
+
}
|
|
5980
|
+
|
|
5981
|
+
.dndev-sheet-content[data-side='top'] {
|
|
5982
|
+
--slide-enter-transform: translateY(-100%);
|
|
5983
|
+
--slide-exit-transform: translateY(-100%);
|
|
5711
5984
|
}
|
|
5712
5985
|
|
|
5713
5986
|
/* packages/components/src/atomic/Skeleton/Skeleton.css */
|
|
@@ -6380,7 +6653,8 @@ em {
|
|
|
6380
6653
|
|
|
6381
6654
|
.dndev-switch-label {
|
|
6382
6655
|
font-size: var(--font-size-sm);
|
|
6383
|
-
transition:
|
|
6656
|
+
transition:
|
|
6657
|
+
color var(--dur-normal) var(--ease-in-out),
|
|
6384
6658
|
font-weight var(--dur-normal) var(--ease-in-out);
|
|
6385
6659
|
white-space: nowrap;
|
|
6386
6660
|
}
|
|
@@ -6389,16 +6663,14 @@ em {
|
|
|
6389
6663
|
|
|
6390
6664
|
.dndev-switch-with-labels:not(:has(.dndev-switch[data-state='checked']))
|
|
6391
6665
|
.dndev-switch-label-unchecked,
|
|
6392
|
-
.dndev-switch-with-labels[data-checked='false']
|
|
6393
|
-
.dndev-switch-label-unchecked {
|
|
6666
|
+
.dndev-switch-with-labels[data-checked='false'] .dndev-switch-label-unchecked {
|
|
6394
6667
|
color: var(--foreground);
|
|
6395
6668
|
font-weight: var(--font-weight-medium);
|
|
6396
6669
|
}
|
|
6397
6670
|
|
|
6398
6671
|
.dndev-switch-with-labels:has(.dndev-switch[data-state='checked'])
|
|
6399
6672
|
.dndev-switch-label-unchecked,
|
|
6400
|
-
.dndev-switch-with-labels[data-checked='true']
|
|
6401
|
-
.dndev-switch-label-unchecked {
|
|
6673
|
+
.dndev-switch-with-labels[data-checked='true'] .dndev-switch-label-unchecked {
|
|
6402
6674
|
color: var(--muted-foreground);
|
|
6403
6675
|
font-weight: var(--font-weight-normal);
|
|
6404
6676
|
}
|
|
@@ -6407,16 +6679,14 @@ em {
|
|
|
6407
6679
|
|
|
6408
6680
|
.dndev-switch-with-labels:has(.dndev-switch[data-state='checked'])
|
|
6409
6681
|
.dndev-switch-label-checked,
|
|
6410
|
-
.dndev-switch-with-labels[data-checked='true']
|
|
6411
|
-
.dndev-switch-label-checked {
|
|
6682
|
+
.dndev-switch-with-labels[data-checked='true'] .dndev-switch-label-checked {
|
|
6412
6683
|
color: var(--foreground);
|
|
6413
6684
|
font-weight: var(--font-weight-medium);
|
|
6414
6685
|
}
|
|
6415
6686
|
|
|
6416
6687
|
.dndev-switch-with-labels:not(:has(.dndev-switch[data-state='checked']))
|
|
6417
6688
|
.dndev-switch-label-checked,
|
|
6418
|
-
.dndev-switch-with-labels[data-checked='false']
|
|
6419
|
-
.dndev-switch-label-checked {
|
|
6689
|
+
.dndev-switch-with-labels[data-checked='false'] .dndev-switch-label-checked {
|
|
6420
6690
|
color: var(--muted-foreground);
|
|
6421
6691
|
font-weight: var(--font-weight-normal);
|
|
6422
6692
|
}
|
|
@@ -6457,6 +6727,12 @@ em {
|
|
|
6457
6727
|
background-color: color-mix(in oklab, var(--accent) 15%, transparent);
|
|
6458
6728
|
}
|
|
6459
6729
|
|
|
6730
|
+
/* Cursor pointer for clickable rows */
|
|
6731
|
+
|
|
6732
|
+
.dndev-table-row.dndev-cursor-pointer {
|
|
6733
|
+
cursor: pointer;
|
|
6734
|
+
}
|
|
6735
|
+
|
|
6460
6736
|
/* Zebra striping for data tables */
|
|
6461
6737
|
|
|
6462
6738
|
.dndev-table-body .dndev-table-row:nth-child(even) {
|
|
@@ -6551,8 +6827,8 @@ em {
|
|
|
6551
6827
|
/* Input components inside grid cells should be borderless and fit snugly */
|
|
6552
6828
|
|
|
6553
6829
|
.dndev-table-grid .dndev-table-cell .dndev-input,
|
|
6554
|
-
.dndev-table-grid .dndev-table-cell input[type=
|
|
6555
|
-
.dndev-table-grid .dndev-table-cell input[type=
|
|
6830
|
+
.dndev-table-grid .dndev-table-cell input[type='text'],
|
|
6831
|
+
.dndev-table-grid .dndev-table-cell input[type='number'] {
|
|
6556
6832
|
border: none;
|
|
6557
6833
|
background: transparent;
|
|
6558
6834
|
width: 100%;
|
|
@@ -8155,6 +8431,10 @@ h4[data-variant='code'] {
|
|
|
8155
8431
|
pointer-events: auto;
|
|
8156
8432
|
}
|
|
8157
8433
|
|
|
8434
|
+
.dndev-cursor-pointer {
|
|
8435
|
+
cursor: pointer;
|
|
8436
|
+
}
|
|
8437
|
+
|
|
8158
8438
|
.dndev-aspect-video {
|
|
8159
8439
|
aspect-ratio: 16 / 9;
|
|
8160
8440
|
}
|
|
@@ -8721,10 +9001,7 @@ main[role='main'][data-routing-animation='none'] {
|
|
|
8721
9001
|
max-height: 100dvh;
|
|
8722
9002
|
overflow: hidden;
|
|
8723
9003
|
display: grid;
|
|
8724
|
-
/*
|
|
8725
|
-
/* Footer starts at sidebar edge (column 2) - when sidebar-width is 0px, footer starts at left edge */
|
|
8726
|
-
/* Footer grows with content wrapping. For pixel-perfect calc() accuracy when footer wraps,
|
|
8727
|
-
implement ResizeObserver to update --footer-height dynamically. */
|
|
9004
|
+
/* Grid structure: 3 rows, 2 columns */
|
|
8728
9005
|
grid-template-areas:
|
|
8729
9006
|
'header header'
|
|
8730
9007
|
'sidebar main'
|
|
@@ -8735,15 +9012,61 @@ main[role='main'][data-routing-animation='none'] {
|
|
|
8735
9012
|
);
|
|
8736
9013
|
grid-template-columns: var(--sidebar-width) 1fr;
|
|
8737
9014
|
|
|
8738
|
-
/*
|
|
9015
|
+
/* Mobile: No footer grid row - footer is inside main */
|
|
9016
|
+
/* When mergedBar is shown, header is hidden but grid still needs space for mergedBar */
|
|
8739
9017
|
}
|
|
8740
9018
|
|
|
8741
|
-
|
|
8742
|
-
|
|
8743
|
-
|
|
8744
|
-
|
|
8745
|
-
|
|
9019
|
+
@media (width <= 1023px) {
|
|
9020
|
+
|
|
9021
|
+
.dndev-layout {
|
|
9022
|
+
grid-template-areas:
|
|
9023
|
+
'header header'
|
|
9024
|
+
'sidebar main';
|
|
9025
|
+
grid-template-rows: var(--header-height) 1fr;
|
|
9026
|
+
|
|
9027
|
+
/* Presets with mergedBar: header is hidden, but grid still allocates space for mergedBar */
|
|
9028
|
+
/* No extra padding needed - grid spacing is sufficient */
|
|
9029
|
+
}
|
|
9030
|
+
.dndev-layout[data-layout='admin'],.dndev-layout[data-layout='moolti'],.dndev-layout[data-layout='game'],.dndev-layout[data-layout='docs'] {
|
|
9031
|
+
/* Grid already accounts for header-height, mergedBar is fixed and doesn't need extra padding */
|
|
9032
|
+
}
|
|
9033
|
+
}
|
|
9034
|
+
|
|
9035
|
+
/* Footer containers: show/hide based on breakpoint */
|
|
9036
|
+
|
|
9037
|
+
.footer-mobile {
|
|
9038
|
+
display: none;
|
|
9039
|
+
/* No margin-top: auto - footer scrolls with content on mobile */
|
|
9040
|
+
/* No flex-shrink: 0 - footer is in normal flow, not stuck at bottom */
|
|
9041
|
+
}
|
|
9042
|
+
|
|
9043
|
+
.footer-desktop {
|
|
9044
|
+
display: contents; /* Children (footer element) participate in grid */
|
|
9045
|
+
}
|
|
9046
|
+
|
|
9047
|
+
@media (width <= 1023px) {
|
|
9048
|
+
.footer-mobile {
|
|
9049
|
+
display: block;
|
|
9050
|
+
}
|
|
9051
|
+
|
|
9052
|
+
.footer-desktop {
|
|
9053
|
+
display: none;
|
|
9054
|
+
}
|
|
9055
|
+
|
|
9056
|
+
/* Game: No mobile footer - navigation in MergedBar */
|
|
9057
|
+
[data-layout='game'] .footer-mobile {
|
|
9058
|
+
display: none;
|
|
8746
9059
|
}
|
|
9060
|
+
}
|
|
9061
|
+
|
|
9062
|
+
/* Presets with no footer at all */
|
|
9063
|
+
|
|
9064
|
+
[data-layout='moolti'] .footer-mobile,
|
|
9065
|
+
[data-layout='moolti'] .footer-desktop,
|
|
9066
|
+
[data-layout='plain'] .footer-mobile,
|
|
9067
|
+
[data-layout='plain'] .footer-desktop {
|
|
9068
|
+
display: none;
|
|
9069
|
+
}
|
|
8747
9070
|
|
|
8748
9071
|
/* ===========================
|
|
8749
9072
|
LAYOUT ZONE POSITIONING RULES
|
|
@@ -8758,6 +9081,8 @@ header[role='banner'] {
|
|
|
8758
9081
|
grid-area: header;
|
|
8759
9082
|
box-sizing: border-box;
|
|
8760
9083
|
height: var(--header-height);
|
|
9084
|
+
min-height: var(--header-height);
|
|
9085
|
+
max-height: var(--header-height);
|
|
8761
9086
|
position: relative;
|
|
8762
9087
|
z-index: var(--z-header);
|
|
8763
9088
|
contain: layout style;
|
|
@@ -8784,7 +9109,9 @@ header[role='banner'] {
|
|
|
8784
9109
|
align-items: center;
|
|
8785
9110
|
flex-shrink: 0;
|
|
8786
9111
|
height: 100%;
|
|
9112
|
+
max-height: 100%;
|
|
8787
9113
|
gap: var(--gap-sm);
|
|
9114
|
+
overflow: hidden;
|
|
8788
9115
|
}
|
|
8789
9116
|
|
|
8790
9117
|
.header-end {
|
|
@@ -8792,8 +9119,11 @@ header[role='banner'] {
|
|
|
8792
9119
|
align-items: center;
|
|
8793
9120
|
justify-content: flex-end;
|
|
8794
9121
|
flex-shrink: 0;
|
|
9122
|
+
height: 100%;
|
|
9123
|
+
max-height: 100%;
|
|
8795
9124
|
margin-inline-start: auto;
|
|
8796
9125
|
gap: var(--gap-sm);
|
|
9126
|
+
overflow: hidden;
|
|
8797
9127
|
}
|
|
8798
9128
|
|
|
8799
9129
|
/* Viewport-centered center content - absolutely positioned overlay */
|
|
@@ -9085,11 +9415,17 @@ main[role='main'] > *:not(.breadcrumbs-container):first-of-type,main[role='main'
|
|
|
9085
9415
|
/* Page content grows */
|
|
9086
9416
|
}
|
|
9087
9417
|
|
|
9088
|
-
|
|
9089
|
-
|
|
9090
|
-
|
|
9418
|
+
/* Desktop: Footer stays at bottom of viewport */
|
|
9419
|
+
|
|
9420
|
+
@media (width > 1023px) {
|
|
9421
|
+
main[role='main'] > *:last-child {
|
|
9422
|
+
flex-shrink: 0;
|
|
9423
|
+
/* Footer stays at bottom */
|
|
9424
|
+
}
|
|
9091
9425
|
}
|
|
9092
9426
|
|
|
9427
|
+
/* Mobile: Footer scrolls with content (no flex-shrink needed) */
|
|
9428
|
+
|
|
9093
9429
|
/* Footer: Full width by default, app presets start after sidebar */
|
|
9094
9430
|
|
|
9095
9431
|
/* box-sizing: border-box ensures borders are included in height */
|
|
@@ -9122,26 +9458,6 @@ footer[role='contentinfo'] > * {
|
|
|
9122
9458
|
padding-inline-end: var(--content-padding);
|
|
9123
9459
|
}
|
|
9124
9460
|
|
|
9125
|
-
/* Game: Hide footer on tablet/mobile - merged into GameMergedBar */
|
|
9126
|
-
|
|
9127
|
-
@media (width <= 1023px) {
|
|
9128
|
-
[data-layout='game']:root footer[role='contentinfo'] {
|
|
9129
|
-
display: none;
|
|
9130
|
-
}
|
|
9131
|
-
}
|
|
9132
|
-
|
|
9133
|
-
/* Moolti: No footer (built into sidebar) */
|
|
9134
|
-
|
|
9135
|
-
[data-layout='moolti']:root footer[role='contentinfo'] {
|
|
9136
|
-
display: none;
|
|
9137
|
-
}
|
|
9138
|
-
|
|
9139
|
-
/* Plain: No footer (full-screen apps) */
|
|
9140
|
-
|
|
9141
|
-
[data-layout='plain']:root footer[role='contentinfo'] {
|
|
9142
|
-
display: none;
|
|
9143
|
-
}
|
|
9144
|
-
|
|
9145
9461
|
/* Footer text styles */
|
|
9146
9462
|
|
|
9147
9463
|
footer[role='contentinfo'] .footer-copyright {
|
|
@@ -9186,7 +9502,7 @@ footer[role='contentinfo'] a:not(.dndev-interactive):hover {
|
|
|
9186
9502
|
|
|
9187
9503
|
.merged-bar[data-position='top'] {
|
|
9188
9504
|
top: 0;
|
|
9189
|
-
height:
|
|
9505
|
+
height: var(--header-height);
|
|
9190
9506
|
border-bottom: 2px solid var(--border);
|
|
9191
9507
|
padding-top: env(safe-area-inset-top);
|
|
9192
9508
|
}
|
|
@@ -9214,7 +9530,7 @@ footer[role='contentinfo'] a:not(.dndev-interactive):hover {
|
|
|
9214
9530
|
min-height: 0;
|
|
9215
9531
|
}
|
|
9216
9532
|
|
|
9217
|
-
/* Mobile (<1024px): Show merged-bar, hide zones
|
|
9533
|
+
/* Mobile (<1024px): Show merged-bar, hide zones */
|
|
9218
9534
|
|
|
9219
9535
|
@media (width <= 1023px) {
|
|
9220
9536
|
/* Presets with mergedBar: top (admin, moolti, game, docs) */
|
|
@@ -9229,7 +9545,8 @@ footer[role='contentinfo'] a:not(.dndev-interactive):hover {
|
|
|
9229
9545
|
[data-layout='moolti'] .dndev-layout,
|
|
9230
9546
|
[data-layout='game'] .dndev-layout,
|
|
9231
9547
|
[data-layout='docs'] .dndev-layout {
|
|
9232
|
-
padding-top
|
|
9548
|
+
/* Remove padding-top - grid already accounts for header-height, mergedBar is fixed and doesn't affect grid flow */
|
|
9549
|
+
/* Content won't go under mergedBar because grid positions main after header row */
|
|
9233
9550
|
}
|
|
9234
9551
|
|
|
9235
9552
|
[data-layout='admin'] header[role='banner'],
|
|
@@ -139,5 +139,5 @@ export declare function resolveLogo(customPath?: string): string;
|
|
|
139
139
|
* @author AMBROISE PARK Consulting
|
|
140
140
|
*/
|
|
141
141
|
export declare function resolveFaviconSet(): FaviconSet;
|
|
142
|
-
export
|
|
142
|
+
export {};
|
|
143
143
|
//# sourceMappingURL=assetResolver.d.ts.map
|