@motion-proto/live-tokens 0.6.2 → 0.8.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 +14 -13
- package/dist-plugin/index.cjs +854 -226
- package/dist-plugin/index.d.cts +2 -1
- package/dist-plugin/index.d.ts +2 -1
- package/dist-plugin/index.js +852 -225
- package/package.json +26 -40
- package/src/{styles → app}/site.css +1 -1
- package/src/{component-editor → editor/component-editor}/BadgeEditor.svelte +8 -82
- package/src/{component-editor → editor/component-editor}/CalloutEditor.svelte +4 -4
- package/src/{component-editor → editor/component-editor}/CardEditor.svelte +28 -76
- package/src/{component-editor → editor/component-editor}/CollapsibleSectionEditor.svelte +37 -30
- package/src/{component-editor → editor/component-editor}/CornerBadgeEditor.svelte +31 -93
- package/src/{component-editor → editor/component-editor}/DialogEditor.svelte +60 -57
- package/src/editor/component-editor/ImageEditor.svelte +30 -0
- package/src/{component-editor → editor/component-editor}/InlineEditActionsEditor.svelte +6 -4
- package/src/editor/component-editor/MenuSelectEditor.svelte +160 -0
- package/src/{component-editor → editor/component-editor}/NotificationEditor.svelte +67 -38
- package/src/{component-editor → editor/component-editor}/ProgressBarEditor.svelte +5 -4
- package/src/{component-editor → editor/component-editor}/RadioButtonEditor.svelte +3 -3
- package/src/editor/component-editor/SectionDividerEditor.svelte +565 -0
- package/src/{component-editor → editor/component-editor}/SegmentedControlEditor.svelte +2 -2
- package/src/{component-editor → editor/component-editor}/StandardButtonsEditor.svelte +29 -21
- package/src/{component-editor → editor/component-editor}/TabBarEditor.svelte +9 -14
- package/src/{component-editor → editor/component-editor}/TableEditor.svelte +9 -18
- package/src/{component-editor → editor/component-editor}/TooltipEditor.svelte +11 -47
- package/src/editor/component-editor/editors.d.ts +10 -0
- package/src/{component-editor → editor/component-editor}/registry.ts +28 -18
- package/src/{component-editor → editor/component-editor}/scaffolding/AngleDial.svelte +54 -15
- package/src/{component-editor → editor/component-editor}/scaffolding/ComponentEditorBase.svelte +3 -51
- package/src/{component-editor → editor/component-editor}/scaffolding/ComponentFileManager.svelte +151 -424
- package/src/{component-editor → editor/component-editor}/scaffolding/ComponentFileMenu.svelte +18 -170
- package/src/{component-editor → editor/component-editor}/scaffolding/ComponentsTab.svelte +2 -2
- package/src/{component-editor → editor/component-editor}/scaffolding/CopyFromMenu.svelte +44 -4
- package/src/{component-editor → editor/component-editor}/scaffolding/FieldsetWrapper.svelte +1 -1
- package/src/{component-editor → editor/component-editor}/scaffolding/LinkageChart.svelte +6 -6
- package/src/{component-editor → editor/component-editor}/scaffolding/LinkedBlock.svelte +6 -12
- package/src/editor/component-editor/scaffolding/NonStylableConfig.svelte +38 -0
- package/src/editor/component-editor/scaffolding/RadialShapePad.svelte +483 -0
- package/src/{component-editor → editor/component-editor}/scaffolding/SaveAsDialog.svelte +66 -12
- package/src/editor/component-editor/scaffolding/ShadowBackdrop.svelte +85 -0
- package/src/editor/component-editor/scaffolding/ShadowBackdropControls.svelte +132 -0
- package/src/editor/component-editor/scaffolding/StateBlock.svelte +345 -0
- package/src/{component-editor → editor/component-editor}/scaffolding/TokenLayout.svelte +17 -12
- package/src/{component-editor → editor/component-editor}/scaffolding/TypeEditor.svelte +13 -1
- package/src/editor/component-editor/scaffolding/VariantGroup.svelte +858 -0
- package/src/{component-editor → editor/component-editor}/scaffolding/buildTypeGroupTokens.ts +1 -0
- package/src/{component-editor → editor/component-editor}/scaffolding/editorContext.ts +19 -9
- package/src/{component-editor → editor/component-editor}/scaffolding/linkedBlock.ts +2 -2
- package/src/{component-editor → editor/component-editor}/scaffolding/types.ts +25 -0
- package/src/{lib → editor/core/components}/componentConfigKeys.ts +8 -0
- package/src/{lib → editor/core/components}/componentConfigService.ts +3 -3
- package/src/{lib → editor/core/components}/componentPersist.ts +11 -9
- package/src/editor/core/flashStatus.ts +30 -0
- package/src/{lib → editor/core/fonts}/fontLoader.ts +2 -2
- package/src/{lib → editor/core/fonts}/fontMigration.ts +4 -4
- package/src/{lib → editor/core/fonts}/fontParse.ts +1 -1
- package/src/editor/core/manifests/manifestService.ts +171 -0
- package/src/editor/core/palettes/familySwap.ts +99 -0
- package/src/{lib → editor/core/palettes}/paletteDerivation.ts +71 -2
- package/src/{lib → editor/core/palettes}/tokenRegistry.ts +9 -6
- package/src/editor/core/productionPulse.ts +37 -0
- package/src/{lib → editor/core/routing}/router.ts +1 -1
- package/src/{lib/files/versionedFileResource.ts → editor/core/storage/files/versionedFileResourceClient.ts} +8 -1
- package/src/{lib → editor/core/store}/editorCore.ts +24 -8
- package/src/{lib → editor/core/store}/editorPersistence.ts +3 -3
- package/src/{lib → editor/core/store}/editorRenderer.ts +2 -2
- package/src/{lib → editor/core/store}/editorStore.ts +222 -28
- package/src/{lib → editor/core/store}/editorTypes.ts +56 -13
- package/src/editor/core/store/gradientSource.ts +192 -0
- package/src/editor/core/themes/migrations/2026-05-19-collapsiblesection-drop-frame-surface.ts +28 -0
- package/src/editor/core/themes/migrations/2026-05-19-sectiondivider-rich-gradient.ts +35 -0
- package/src/editor/core/themes/migrations/2026-05-20-sectiondivider-slim-variants.ts +82 -0
- package/src/editor/core/themes/migrations/2026-05-21-sectiondivider-spacing-to-padding.ts +24 -0
- package/src/editor/core/themes/migrations/2026-05-22-sectiondivider-intrinsics-to-css.ts +81 -0
- package/src/{lib → editor/core/themes}/migrations/index.ts +10 -0
- package/src/{lib → editor/core/themes}/slices/columns.ts +2 -2
- package/src/{lib → editor/core/themes}/slices/components.ts +20 -6
- package/src/{lib → editor/core/themes}/slices/fonts.ts +1 -1
- package/src/{lib → editor/core/themes}/slices/gradients.ts +89 -14
- package/src/{lib → editor/core/themes}/slices/overlays.ts +1 -1
- package/src/{lib → editor/core/themes}/slices/palettes.ts +1 -1
- package/src/{lib → editor/core/themes}/slices/shadows.ts +3 -3
- package/src/{lib → editor/core/themes}/themeInit.ts +8 -8
- package/src/{lib → editor/core/themes}/themeService.ts +6 -6
- package/src/{lib → editor/core/themes}/themeTypes.ts +67 -8
- package/src/editor/index.ts +69 -0
- package/src/{lib → editor/overlay}/ColumnsOverlay.svelte +0 -1
- package/src/{lib → editor/overlay}/LiveEditorOverlay.svelte +80 -129
- package/src/{lib → editor/overlay}/columnsOverlay.ts +2 -2
- package/src/{pages → editor/pages}/ComponentEditorPage.svelte +12 -12
- package/src/{pages → editor/pages}/Editor.svelte +4 -4
- package/src/{pages → editor/pages}/EditorShell.svelte +18 -36
- package/src/{styles → editor/styles}/ui-editor.css +43 -22
- package/src/{styles → editor/styles}/ui-form-controls.css +23 -24
- package/src/{ui → editor/ui}/BezierCurveEditor.svelte +119 -68
- package/src/{ui → editor/ui}/ColorEditPanel.svelte +13 -13
- package/src/{ui → editor/ui}/EditorViewSwitcher.svelte +7 -6
- package/src/editor/ui/FileLoadList.svelte +367 -0
- package/src/editor/ui/FilePill.svelte +80 -0
- package/src/editor/ui/FontStackEditor.svelte +499 -0
- package/src/editor/ui/GradientEditor.svelte +690 -0
- package/src/{ui → editor/ui}/GradientStopPicker.svelte +12 -4
- package/src/editor/ui/ManifestFileManager.svelte +438 -0
- package/src/{ui → editor/ui}/PaletteEditor.svelte +180 -673
- package/src/editor/ui/ProjectFontsSection.svelte +638 -0
- package/src/{ui → editor/ui}/SurfacesTab.svelte +3 -3
- package/src/{ui → editor/ui}/TextTab.svelte +3 -3
- package/src/editor/ui/ThemeFileManager.svelte +783 -0
- package/src/{ui → editor/ui}/UICopyPopover.svelte +4 -4
- package/src/{ui → editor/ui}/UIFontFamilySelector.svelte +6 -7
- package/src/{ui → editor/ui}/UIFontSizeSelector.svelte +4 -1
- package/src/editor/ui/UIInfoPopover.svelte +243 -0
- package/src/editor/ui/UILetterSpacingSelector.svelte +65 -0
- package/src/{ui → editor/ui}/UILineHeightSelector.svelte +5 -5
- package/src/{ui → editor/ui}/UILinkToggle.svelte +2 -2
- package/src/{ui → editor/ui}/UIPaddingSelector.svelte +6 -6
- package/src/{ui → editor/ui}/UIPaletteSelector.svelte +57 -30
- package/src/editor/ui/UIPillButton.svelte +168 -0
- package/src/{ui → editor/ui}/UIRadio.svelte +2 -2
- package/src/{ui → editor/ui}/UIRelinkConfirmPopover.svelte +4 -4
- package/src/editor/ui/UISegmentedControl.svelte +114 -0
- package/src/editor/ui/UISquareButton.svelte +172 -0
- package/src/{ui → editor/ui}/UITokenSelector.svelte +14 -11
- package/src/{ui → editor/ui}/UIVariantSelector.svelte +1 -1
- package/src/{ui → editor/ui}/VariablesTab.svelte +46 -17
- package/src/{ui → editor/ui}/palette/GradientStopEditor.svelte +13 -13
- package/src/{ui → editor/ui}/palette/OverridesPanel.svelte +24 -47
- package/src/{ui → editor/ui}/palette/PaletteBase.svelte +11 -8
- package/src/{ui → editor/ui}/palette/paletteEditorState.ts +1 -1
- package/src/editor/ui/palette/paletteMath.ts +275 -0
- package/src/{ui → editor/ui}/sections/ColumnsSection.svelte +137 -18
- package/src/{ui → editor/ui}/sections/GradientsSection.svelte +8 -8
- package/src/{ui → editor/ui}/sections/OverlaysSection.svelte +18 -18
- package/src/{ui → editor/ui}/sections/ShadowsSection.svelte +23 -23
- package/src/{ui → editor/ui}/sections/TokenScaleTable.svelte +3 -3
- package/src/{components → system/components}/Badge.svelte +0 -36
- package/src/{components → system/components}/Button.svelte +2 -2
- package/src/{components → system/components}/Card.svelte +34 -60
- package/src/{components → system/components}/CollapsibleSection.svelte +25 -2
- package/src/{components → system/components}/CornerBadge.svelte +8 -24
- package/src/{components → system/components}/Dialog.svelte +1 -1
- package/src/system/components/FloatingTokenTags.css +275 -0
- package/src/system/components/FloatingTokenTags.svelte +543 -0
- package/src/{components → system/components}/InlineEditActions.svelte +6 -4
- package/src/system/components/MenuSelect.svelte +229 -0
- package/src/{components → system/components}/Notification.svelte +8 -1
- package/src/{components → system/components}/ProgressBar.svelte +29 -11
- package/src/system/components/SectionDivider.svelte +560 -0
- package/src/{components → system/components}/SegmentedControl.svelte +49 -43
- package/src/{components → system/components}/TabBar.svelte +81 -65
- package/src/{components → system/components}/Table.svelte +17 -3
- package/src/{components → system/components}/Tooltip.svelte +6 -4
- package/src/system/styles/CONVENTIONS.md +178 -0
- package/src/system/styles/fonts.css +20 -0
- package/src/system/styles/tokens.css +601 -0
- package/src/system/styles/tokens.generated.css +544 -0
- package/src/component-editor/ImageEditor.svelte +0 -74
- package/src/component-editor/SectionDividerEditor.svelte +0 -265
- package/src/component-editor/scaffolding/DividerEditor.svelte +0 -94
- package/src/component-editor/scaffolding/GradientCard.svelte +0 -296
- package/src/component-editor/scaffolding/NonStylableConfig.svelte +0 -62
- package/src/component-editor/scaffolding/ShadowBackdrop.svelte +0 -37
- package/src/component-editor/scaffolding/ShadowBackdropControls.svelte +0 -61
- package/src/component-editor/scaffolding/StateBlock.svelte +0 -132
- package/src/component-editor/scaffolding/VariantGroup.svelte +0 -310
- package/src/components/SectionDivider.svelte +0 -483
- package/src/data/google-fonts.json +0 -75
- package/src/lib/index.ts +0 -68
- package/src/lib/presetService.ts +0 -214
- package/src/lib/productionPulse.ts +0 -32
- package/src/styles/fonts.css +0 -30
- package/src/styles/tokens.css +0 -1324
- package/src/ui/FontStackEditor.svelte +0 -361
- package/src/ui/GradientEditor.svelte +0 -470
- package/src/ui/PresetFileManager.svelte +0 -1116
- package/src/ui/ProjectFontsSection.svelte +0 -645
- package/src/ui/ThemeFileManager.svelte +0 -1020
- package/src/ui/UnsavedComponentsDialog.svelte +0 -315
- /package/src/{component-editor → editor/component-editor}/index.ts +0 -0
- /package/src/{component-editor → editor/component-editor}/scaffolding/DemoHeader.svelte +0 -0
- /package/src/{component-editor → editor/component-editor}/scaffolding/componentSectionType.ts +0 -0
- /package/src/{component-editor → editor/component-editor}/scaffolding/componentSources.ts +0 -0
- /package/src/{component-editor → editor/component-editor}/scaffolding/defaultSections.ts +0 -0
- /package/src/{component-editor → editor/component-editor}/scaffolding/siblings.ts +0 -0
- /package/src/{lib → editor/core}/cssVarSync.ts +0 -0
- /package/src/{lib → editor/core/palettes}/oklch.ts +0 -0
- /package/src/{lib → editor/core/routing}/navLinkTypes.ts +0 -0
- /package/src/{lib → editor/core/routing}/parentRouteStore.ts +0 -0
- /package/src/{lib → editor/core/storage}/storage.ts +0 -0
- /package/src/{lib → editor/core/store}/editorConfig.ts +0 -0
- /package/src/{lib → editor/core/store}/editorConfigStore.ts +0 -0
- /package/src/{lib → editor/core/store}/editorKeybindings.ts +0 -0
- /package/src/{lib → editor/core/store}/editorViewStore.ts +0 -0
- /package/src/{lib → editor/core/themes}/migrations/2026-04-24-component-prefix-and-suffix-renames.ts +0 -0
- /package/src/{lib → editor/core/themes}/migrations/2026-04-24-legacy-keys-and-bg-to-canvas.ts +0 -0
- /package/src/{lib → editor/core/themes}/migrations/2026-04-27-segmentedcontrol-disabled-flatten.ts +0 -0
- /package/src/{lib → editor/core/themes}/migrations/2026-05-08-collapsiblesection-frame-and-cleanup.ts +0 -0
- /package/src/{lib → editor/core/themes}/migrations/2026-05-08-collapsiblesection-variant-namespace.ts +0 -0
- /package/src/{lib → editor/core/themes}/migrations/2026-05-10-sectiondivider-gradient-stops.ts +0 -0
- /package/src/{lib → editor/core/themes}/migrations/2026-05-13-primary-to-brand.ts +0 -0
- /package/src/{lib → editor/core/themes}/parsers/globalRootBlock.ts +0 -0
- /package/src/{lib → editor/core/themes}/slices/domainVars.ts +0 -0
- /package/src/{lib → editor/overlay}/overlayState.ts +0 -0
- /package/src/{pages → editor/pages}/ComponentEditorPage.svelte.d.ts +0 -0
- /package/src/{pages → editor/pages}/Editor.svelte.d.ts +0 -0
- /package/src/{ui → editor/ui}/Toggle.svelte +0 -0
- /package/src/{ui → editor/ui}/UIDialog.svelte +0 -0
- /package/src/{ui → editor/ui}/UIFontWeightSelector.svelte +0 -0
- /package/src/{ui → editor/ui}/UIOptionItem.svelte +0 -0
- /package/src/{ui → editor/ui}/UIOptionList.svelte +0 -0
- /package/src/{ui → editor/ui}/UIRadioGroup.svelte +0 -0
- /package/src/{lib → editor/ui}/copyPopover.ts +0 -0
- /package/src/{ui → editor/ui}/curveEngine.ts +0 -0
- /package/src/{ui → editor/ui}/index.ts +0 -0
- /package/src/{ui → editor/ui}/keepInViewport.ts +0 -0
- /package/src/{ui → editor/ui}/palette/ScaleCurveEditor.svelte +0 -0
- /package/src/{lib → editor/ui}/scrollSection.ts +0 -0
- /package/src/{ui → editor/ui}/sections/tokenScales.ts +0 -0
- /package/src/{ui → editor/ui}/variantScales.ts +0 -0
- /package/src/{assets → system/assets}/newspaper.webp +0 -0
- /package/src/{assets → system/assets}/offering.webp +0 -0
- /package/src/{components → system/components}/Callout.svelte +0 -0
- /package/src/{components → system/components}/Image.svelte +0 -0
- /package/src/{components → system/components}/RadioButton.svelte +0 -0
- /package/src/{components → system/components}/types.ts +0 -0
- /package/src/{styles → system/styles}/_padding.scss +0 -0
- /package/src/{styles → system/styles}/fonts/Fraunces/Fraunces-italic-latin-ext.woff2 +0 -0
- /package/src/{styles → system/styles}/fonts/Fraunces/Fraunces-italic-latin.woff2 +0 -0
- /package/src/{styles → system/styles}/fonts/Fraunces/Fraunces-roman-latin-ext.woff2 +0 -0
- /package/src/{styles → system/styles}/fonts/Fraunces/Fraunces-roman-latin.woff2 +0 -0
- /package/src/{styles → system/styles}/fonts/Manrope/Manrope-latin-ext.woff2 +0 -0
- /package/src/{styles → system/styles}/fonts/Manrope/Manrope-latin.woff2 +0 -0
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
* rgba values out to :root, so this component only orchestrates mutations
|
|
7
7
|
* and reads derived display state.
|
|
8
8
|
*/
|
|
9
|
-
import { editorState, mutate, beginSliderGesture } from '../../
|
|
10
|
-
import type { OverlayToken, OverlayChannelGlobals, EditorState } from '../../
|
|
9
|
+
import { editorState, mutate, beginSliderGesture } from '../../core/store/editorStore';
|
|
10
|
+
import type { OverlayToken, OverlayChannelGlobals, EditorState } from '../../core/store/editorTypes';
|
|
11
11
|
|
|
12
12
|
interface Props {
|
|
13
13
|
copiedVar?: string | null;
|
|
@@ -337,20 +337,20 @@
|
|
|
337
337
|
.section {
|
|
338
338
|
display: flex;
|
|
339
339
|
flex-direction: column;
|
|
340
|
-
gap: var(--ui-space-
|
|
340
|
+
gap: var(--ui-space-24);
|
|
341
341
|
}
|
|
342
342
|
|
|
343
343
|
.section-title {
|
|
344
|
-
font-size: var(--ui-font-size-
|
|
344
|
+
font-size: var(--ui-font-size-2xl);
|
|
345
345
|
font-weight: var(--ui-font-weight-semibold);
|
|
346
346
|
color: var(--ui-text-primary);
|
|
347
347
|
margin: 0;
|
|
348
348
|
padding-bottom: var(--ui-space-8);
|
|
349
|
-
border-bottom:
|
|
349
|
+
border-bottom: 2px solid var(--ui-border-high);
|
|
350
350
|
}
|
|
351
351
|
|
|
352
352
|
.group-title {
|
|
353
|
-
font-size: var(--ui-font-size-
|
|
353
|
+
font-size: var(--ui-font-size-lg);
|
|
354
354
|
font-weight: var(--ui-font-weight-semibold);
|
|
355
355
|
color: var(--ui-text-secondary);
|
|
356
356
|
margin: 0;
|
|
@@ -404,7 +404,7 @@
|
|
|
404
404
|
border-radius: var(--ui-radius-md);
|
|
405
405
|
position: relative;
|
|
406
406
|
overflow: hidden;
|
|
407
|
-
border: 1px solid var(--ui-border-
|
|
407
|
+
border: 1px solid var(--ui-border-low);
|
|
408
408
|
background-image:
|
|
409
409
|
linear-gradient(45deg, #ccc 25%, transparent 25%),
|
|
410
410
|
linear-gradient(-45deg, #ccc 25%, transparent 25%),
|
|
@@ -442,7 +442,7 @@
|
|
|
442
442
|
gap: var(--ui-space-8);
|
|
443
443
|
padding: var(--ui-space-12);
|
|
444
444
|
background: var(--ui-surface-lowest);
|
|
445
|
-
border: 1px solid var(--ui-border-
|
|
445
|
+
border: 1px solid var(--ui-border-low);
|
|
446
446
|
border-radius: var(--ui-radius-md);
|
|
447
447
|
margin-top: var(--ui-space-8);
|
|
448
448
|
}
|
|
@@ -517,7 +517,7 @@
|
|
|
517
517
|
text-align: right;
|
|
518
518
|
flex-shrink: 0;
|
|
519
519
|
background: var(--ui-surface-lowest);
|
|
520
|
-
border: 1px solid var(--ui-border-
|
|
520
|
+
border: 1px solid var(--ui-border-low);
|
|
521
521
|
border-radius: var(--ui-radius-sm);
|
|
522
522
|
padding: var(--ui-space-2) var(--ui-space-4);
|
|
523
523
|
-moz-appearance: textfield;
|
|
@@ -532,7 +532,7 @@
|
|
|
532
532
|
|
|
533
533
|
.shadow-slider-input:focus {
|
|
534
534
|
outline: none;
|
|
535
|
-
border-color: var(--ui-border-
|
|
535
|
+
border-color: var(--ui-border-high);
|
|
536
536
|
}
|
|
537
537
|
|
|
538
538
|
.shadow-slider-unit {
|
|
@@ -564,7 +564,7 @@
|
|
|
564
564
|
gap: var(--ui-space-8);
|
|
565
565
|
padding: var(--ui-space-12);
|
|
566
566
|
background: var(--ui-surface-lowest);
|
|
567
|
-
border: 1px solid var(--ui-border-
|
|
567
|
+
border: 1px solid var(--ui-border-low);
|
|
568
568
|
border-radius: var(--ui-radius-md);
|
|
569
569
|
width: 100%;
|
|
570
570
|
min-width: 14rem;
|
|
@@ -576,7 +576,7 @@
|
|
|
576
576
|
gap: var(--ui-space-4);
|
|
577
577
|
margin-top: var(--ui-space-4);
|
|
578
578
|
padding-top: var(--ui-space-8);
|
|
579
|
-
border-top: 1px solid var(--ui-border-
|
|
579
|
+
border-top: 1px solid var(--ui-border-low);
|
|
580
580
|
}
|
|
581
581
|
|
|
582
582
|
.shadow-css-output code {
|
|
@@ -592,7 +592,7 @@
|
|
|
592
592
|
color: var(--ui-text-muted);
|
|
593
593
|
cursor: pointer;
|
|
594
594
|
padding: var(--ui-space-2) var(--ui-space-6);
|
|
595
|
-
border: 1px solid var(--ui-border-
|
|
595
|
+
border: 1px solid var(--ui-border-low);
|
|
596
596
|
border-radius: var(--ui-radius-sm);
|
|
597
597
|
text-align: center;
|
|
598
598
|
transition: color var(--ui-transition-fast), border-color var(--ui-transition-fast);
|
|
@@ -600,7 +600,7 @@
|
|
|
600
600
|
|
|
601
601
|
.shadow-copy-btn:hover {
|
|
602
602
|
color: var(--ui-text-primary);
|
|
603
|
-
border-color: var(--ui-border-
|
|
603
|
+
border-color: var(--ui-border-high);
|
|
604
604
|
}
|
|
605
605
|
|
|
606
606
|
.slider-track {
|
|
@@ -609,7 +609,7 @@
|
|
|
609
609
|
position: relative;
|
|
610
610
|
height: 12px;
|
|
611
611
|
border-radius: var(--ui-radius-sm);
|
|
612
|
-
border: 1px solid var(--ui-border-
|
|
612
|
+
border: 1px solid var(--ui-border-low);
|
|
613
613
|
}
|
|
614
614
|
|
|
615
615
|
.slider-track input[type="range"] {
|
|
@@ -631,7 +631,7 @@
|
|
|
631
631
|
height: 14px;
|
|
632
632
|
border-radius: 2px;
|
|
633
633
|
background: white;
|
|
634
|
-
border: 1px solid var(--ui-border-
|
|
634
|
+
border: 1px solid var(--ui-border-low);
|
|
635
635
|
box-shadow: 0 1px 3px rgba(0,0,0,0.4);
|
|
636
636
|
cursor: pointer;
|
|
637
637
|
}
|
|
@@ -641,7 +641,7 @@
|
|
|
641
641
|
height: 14px;
|
|
642
642
|
border-radius: 2px;
|
|
643
643
|
background: white;
|
|
644
|
-
border: 1px solid var(--ui-border-
|
|
644
|
+
border: 1px solid var(--ui-border-low);
|
|
645
645
|
box-shadow: 0 1px 3px rgba(0,0,0,0.4);
|
|
646
646
|
cursor: pointer;
|
|
647
647
|
}
|
|
@@ -661,7 +661,7 @@
|
|
|
661
661
|
width: 2rem;
|
|
662
662
|
flex-shrink: 0;
|
|
663
663
|
border-radius: var(--ui-radius-sm);
|
|
664
|
-
border: 1px solid var(--ui-border-
|
|
664
|
+
border: 1px solid var(--ui-border-low);
|
|
665
665
|
}
|
|
666
666
|
|
|
667
667
|
.global-color-sliders {
|
|
@@ -18,8 +18,8 @@
|
|
|
18
18
|
seedShadowsFromDom, shadowTokenCss, computeShadowXY,
|
|
19
19
|
SCALE_SHADOW_VARIABLES, defaultShadowOverride,
|
|
20
20
|
type Scope,
|
|
21
|
-
} from '../../
|
|
22
|
-
import type { ShadowToken, ShadowOverrideFlags, EditorState } from '../../
|
|
21
|
+
} from '../../core/store/editorStore';
|
|
22
|
+
import type { ShadowToken, ShadowOverrideFlags, EditorState } from '../../core/store/editorTypes';
|
|
23
23
|
|
|
24
24
|
interface Props {
|
|
25
25
|
copiedVar?: string | null;
|
|
@@ -799,16 +799,16 @@
|
|
|
799
799
|
.section {
|
|
800
800
|
display: flex;
|
|
801
801
|
flex-direction: column;
|
|
802
|
-
gap: var(--ui-space-
|
|
802
|
+
gap: var(--ui-space-24);
|
|
803
803
|
}
|
|
804
804
|
|
|
805
805
|
.section-title {
|
|
806
|
-
font-size: var(--ui-font-size-
|
|
806
|
+
font-size: var(--ui-font-size-2xl);
|
|
807
807
|
font-weight: var(--ui-font-weight-semibold);
|
|
808
808
|
color: var(--ui-text-primary);
|
|
809
809
|
margin: 0;
|
|
810
810
|
padding-bottom: var(--ui-space-8);
|
|
811
|
-
border-bottom:
|
|
811
|
+
border-bottom: 2px solid var(--ui-border-high);
|
|
812
812
|
}
|
|
813
813
|
|
|
814
814
|
.token-info {
|
|
@@ -890,7 +890,7 @@
|
|
|
890
890
|
color: var(--ui-text-muted);
|
|
891
891
|
cursor: pointer;
|
|
892
892
|
padding: var(--ui-space-4) var(--ui-space-8);
|
|
893
|
-
border: 1px solid var(--ui-border-
|
|
893
|
+
border: 1px solid var(--ui-border-low);
|
|
894
894
|
border-radius: var(--ui-radius-sm);
|
|
895
895
|
text-align: center;
|
|
896
896
|
transition: color var(--ui-transition-fast), border-color var(--ui-transition-fast);
|
|
@@ -898,7 +898,7 @@
|
|
|
898
898
|
|
|
899
899
|
.reset-btn:hover {
|
|
900
900
|
color: var(--ui-text-primary);
|
|
901
|
-
border-color: var(--ui-border-
|
|
901
|
+
border-color: var(--ui-border-high);
|
|
902
902
|
}
|
|
903
903
|
|
|
904
904
|
.shadow-box {
|
|
@@ -945,7 +945,7 @@
|
|
|
945
945
|
text-align: right;
|
|
946
946
|
flex-shrink: 0;
|
|
947
947
|
background: var(--ui-surface-lowest);
|
|
948
|
-
border: 1px solid var(--ui-border-
|
|
948
|
+
border: 1px solid var(--ui-border-low);
|
|
949
949
|
border-radius: var(--ui-radius-sm);
|
|
950
950
|
padding: var(--ui-space-2) var(--ui-space-4);
|
|
951
951
|
-moz-appearance: textfield;
|
|
@@ -960,7 +960,7 @@
|
|
|
960
960
|
|
|
961
961
|
.shadow-slider-input:focus {
|
|
962
962
|
outline: none;
|
|
963
|
-
border-color: var(--ui-border-
|
|
963
|
+
border-color: var(--ui-border-high);
|
|
964
964
|
}
|
|
965
965
|
|
|
966
966
|
.shadow-slider-unit {
|
|
@@ -980,7 +980,7 @@
|
|
|
980
980
|
|
|
981
981
|
.dial-ring {
|
|
982
982
|
fill: none;
|
|
983
|
-
stroke: var(--ui-border-
|
|
983
|
+
stroke: var(--ui-border-low);
|
|
984
984
|
stroke-width: 1.5;
|
|
985
985
|
}
|
|
986
986
|
|
|
@@ -996,7 +996,7 @@
|
|
|
996
996
|
}
|
|
997
997
|
|
|
998
998
|
.angle-dial:hover .dial-ring {
|
|
999
|
-
stroke: var(--ui-border-
|
|
999
|
+
stroke: var(--ui-border-high);
|
|
1000
1000
|
}
|
|
1001
1001
|
|
|
1002
1002
|
.angle-dial:hover .dial-handle {
|
|
@@ -1009,7 +1009,7 @@
|
|
|
1009
1009
|
gap: var(--ui-space-4);
|
|
1010
1010
|
margin-top: var(--ui-space-4);
|
|
1011
1011
|
padding-top: var(--ui-space-8);
|
|
1012
|
-
border-top: 1px solid var(--ui-border-
|
|
1012
|
+
border-top: 1px solid var(--ui-border-low);
|
|
1013
1013
|
}
|
|
1014
1014
|
|
|
1015
1015
|
.shadow-css-output code {
|
|
@@ -1025,7 +1025,7 @@
|
|
|
1025
1025
|
color: var(--ui-text-muted);
|
|
1026
1026
|
cursor: pointer;
|
|
1027
1027
|
padding: var(--ui-space-2) var(--ui-space-6);
|
|
1028
|
-
border: 1px solid var(--ui-border-
|
|
1028
|
+
border: 1px solid var(--ui-border-low);
|
|
1029
1029
|
border-radius: var(--ui-radius-sm);
|
|
1030
1030
|
text-align: center;
|
|
1031
1031
|
transition: color var(--ui-transition-fast), border-color var(--ui-transition-fast);
|
|
@@ -1033,7 +1033,7 @@
|
|
|
1033
1033
|
|
|
1034
1034
|
.shadow-copy-btn:hover {
|
|
1035
1035
|
color: var(--ui-text-primary);
|
|
1036
|
-
border-color: var(--ui-border-
|
|
1036
|
+
border-color: var(--ui-border-high);
|
|
1037
1037
|
}
|
|
1038
1038
|
|
|
1039
1039
|
/* Global shadow editor */
|
|
@@ -1046,7 +1046,7 @@
|
|
|
1046
1046
|
gap: var(--ui-space-6);
|
|
1047
1047
|
padding: var(--ui-space-12);
|
|
1048
1048
|
background: var(--ui-surface-lowest);
|
|
1049
|
-
border: 1px solid var(--ui-border-
|
|
1049
|
+
border: 1px solid var(--ui-border-low);
|
|
1050
1050
|
border-radius: var(--ui-radius-md);
|
|
1051
1051
|
width: 18rem;
|
|
1052
1052
|
}
|
|
@@ -1103,7 +1103,7 @@
|
|
|
1103
1103
|
position: relative;
|
|
1104
1104
|
height: 12px;
|
|
1105
1105
|
border-radius: var(--ui-radius-sm);
|
|
1106
|
-
border: 1px solid var(--ui-border-
|
|
1106
|
+
border: 1px solid var(--ui-border-low);
|
|
1107
1107
|
}
|
|
1108
1108
|
|
|
1109
1109
|
.slider-track input[type="range"] {
|
|
@@ -1125,7 +1125,7 @@
|
|
|
1125
1125
|
height: 14px;
|
|
1126
1126
|
border-radius: 2px;
|
|
1127
1127
|
background: white;
|
|
1128
|
-
border: 1px solid var(--ui-border-
|
|
1128
|
+
border: 1px solid var(--ui-border-low);
|
|
1129
1129
|
box-shadow: 0 1px 3px rgba(0,0,0,0.4);
|
|
1130
1130
|
cursor: pointer;
|
|
1131
1131
|
}
|
|
@@ -1135,7 +1135,7 @@
|
|
|
1135
1135
|
height: 14px;
|
|
1136
1136
|
border-radius: 2px;
|
|
1137
1137
|
background: white;
|
|
1138
|
-
border: 1px solid var(--ui-border-
|
|
1138
|
+
border: 1px solid var(--ui-border-low);
|
|
1139
1139
|
box-shadow: 0 1px 3px rgba(0,0,0,0.4);
|
|
1140
1140
|
cursor: pointer;
|
|
1141
1141
|
}
|
|
@@ -1155,7 +1155,7 @@
|
|
|
1155
1155
|
width: 2rem;
|
|
1156
1156
|
flex-shrink: 0;
|
|
1157
1157
|
border-radius: var(--ui-radius-sm);
|
|
1158
|
-
border: 1px solid var(--ui-border-
|
|
1158
|
+
border: 1px solid var(--ui-border-low);
|
|
1159
1159
|
}
|
|
1160
1160
|
|
|
1161
1161
|
.global-color-sliders {
|
|
@@ -1172,7 +1172,7 @@
|
|
|
1172
1172
|
color: var(--ui-text-muted);
|
|
1173
1173
|
cursor: pointer;
|
|
1174
1174
|
padding: var(--ui-space-4) var(--ui-space-8);
|
|
1175
|
-
border: 1px solid var(--ui-border-
|
|
1175
|
+
border: 1px solid var(--ui-border-low);
|
|
1176
1176
|
border-radius: var(--ui-radius-md);
|
|
1177
1177
|
background: var(--ui-surface-low);
|
|
1178
1178
|
transition: color var(--ui-transition-fast), border-color var(--ui-transition-fast);
|
|
@@ -1180,7 +1180,7 @@
|
|
|
1180
1180
|
|
|
1181
1181
|
.bg-picker-btn:hover {
|
|
1182
1182
|
color: var(--ui-text-primary);
|
|
1183
|
-
border-color: var(--ui-border-
|
|
1183
|
+
border-color: var(--ui-border-high);
|
|
1184
1184
|
}
|
|
1185
1185
|
|
|
1186
1186
|
.bg-picker-menu {
|
|
@@ -1192,7 +1192,7 @@
|
|
|
1192
1192
|
max-height: 24rem;
|
|
1193
1193
|
overflow-y: auto;
|
|
1194
1194
|
background: var(--ui-surface-low);
|
|
1195
|
-
border: 1px solid var(--ui-border-
|
|
1195
|
+
border: 1px solid var(--ui-border-low);
|
|
1196
1196
|
border-radius: var(--ui-radius-md);
|
|
1197
1197
|
padding: var(--ui-space-4);
|
|
1198
1198
|
display: flex;
|
|
@@ -1250,7 +1250,7 @@
|
|
|
1250
1250
|
width: 1rem;
|
|
1251
1251
|
height: 1rem;
|
|
1252
1252
|
border-radius: var(--ui-radius-sm);
|
|
1253
|
-
border: 1px solid var(--ui-border-
|
|
1253
|
+
border: 1px solid var(--ui-border-low);
|
|
1254
1254
|
flex-shrink: 0;
|
|
1255
1255
|
}
|
|
1256
1256
|
</style>
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
* Values are read live via getComputedStyle (passed in by the parent through
|
|
13
13
|
* `tokens`), so tokens.css remains the single source of truth.
|
|
14
14
|
*/
|
|
15
|
-
import { editorState } from '../../
|
|
15
|
+
import { editorState } from '../../core/store/editorStore';
|
|
16
16
|
|
|
17
17
|
interface TokenItem {
|
|
18
18
|
variable: string;
|
|
@@ -263,7 +263,7 @@
|
|
|
263
263
|
width: 3.5rem;
|
|
264
264
|
height: 3.5rem;
|
|
265
265
|
background: none;
|
|
266
|
-
border: 2px solid var(--ui-border-
|
|
266
|
+
border: 2px solid var(--ui-border-high);
|
|
267
267
|
}
|
|
268
268
|
|
|
269
269
|
/* Font sizes / icon sizes */
|
|
@@ -339,7 +339,7 @@
|
|
|
339
339
|
align-items: baseline;
|
|
340
340
|
gap: var(--ui-space-12);
|
|
341
341
|
padding: var(--ui-space-4) 0;
|
|
342
|
-
border-bottom: 1px solid var(--ui-border-
|
|
342
|
+
border-bottom: 1px solid var(--ui-border-low);
|
|
343
343
|
}
|
|
344
344
|
|
|
345
345
|
.token-row:last-child {
|
|
@@ -21,14 +21,6 @@
|
|
|
21
21
|
variant?: BadgeVariant;
|
|
22
22
|
size?: 'default' | 'small';
|
|
23
23
|
icon?: string | undefined;
|
|
24
|
-
/** When true, badge is absolutely positioned. Requires the parent to be position: relative. */
|
|
25
|
-
floating?: boolean;
|
|
26
|
-
/** Corner of the positioned parent to attach to when floating. */
|
|
27
|
-
anchor?: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
|
|
28
|
-
/** CSS length to offset from the anchor edges. Defaults to --space-12 (or --space-8 when size='small'). */
|
|
29
|
-
offset?: string | undefined;
|
|
30
|
-
/** When true, badge sits flush in the anchor corner: zero offset and squared corners. */
|
|
31
|
-
flush?: boolean;
|
|
32
24
|
/** Custom icon content. Falls back to `icon` prop's font-icon class. Renamed from `slot="icon"` in 0.5.0. */
|
|
33
25
|
iconSlot?: Snippet;
|
|
34
26
|
children?: Snippet;
|
|
@@ -38,10 +30,6 @@
|
|
|
38
30
|
variant = 'info',
|
|
39
31
|
size = 'default',
|
|
40
32
|
icon = undefined,
|
|
41
|
-
floating = false,
|
|
42
|
-
anchor = 'bottom-right',
|
|
43
|
-
offset = undefined,
|
|
44
|
-
flush = false,
|
|
45
33
|
iconSlot,
|
|
46
34
|
children,
|
|
47
35
|
}: Props = $props();
|
|
@@ -50,10 +38,6 @@
|
|
|
50
38
|
<span
|
|
51
39
|
class="badge badge-{variant}"
|
|
52
40
|
class:badge-small={size === 'small'}
|
|
53
|
-
class:badge-floating={floating}
|
|
54
|
-
class:badge-flush={flush}
|
|
55
|
-
data-anchor={floating ? anchor : undefined}
|
|
56
|
-
style={floating && offset && !flush ? `--badge-offset: ${offset};` : undefined}
|
|
57
41
|
>
|
|
58
42
|
{#if icon}
|
|
59
43
|
<span class="icon"><i class={icon}></i></span>
|
|
@@ -228,7 +212,6 @@
|
|
|
228
212
|
}
|
|
229
213
|
|
|
230
214
|
.badge {
|
|
231
|
-
--badge-offset: var(--space-12);
|
|
232
215
|
display: inline-flex;
|
|
233
216
|
align-items: center;
|
|
234
217
|
gap: var(--space-6);
|
|
@@ -249,22 +232,9 @@
|
|
|
249
232
|
}
|
|
250
233
|
|
|
251
234
|
.badge-small {
|
|
252
|
-
--badge-offset: var(--space-8);
|
|
253
235
|
gap: var(--space-4);
|
|
254
236
|
}
|
|
255
237
|
|
|
256
|
-
.badge-floating {
|
|
257
|
-
position: absolute;
|
|
258
|
-
/* Floating badges are decorative overlays over other content — let clicks
|
|
259
|
-
pass through to whatever owns the underlying surface (links, buttons). */
|
|
260
|
-
pointer-events: none;
|
|
261
|
-
}
|
|
262
|
-
|
|
263
|
-
.badge-floating[data-anchor='top-left'] { top: var(--badge-offset); left: var(--badge-offset); }
|
|
264
|
-
.badge-floating[data-anchor='top-right'] { top: var(--badge-offset); right: var(--badge-offset); }
|
|
265
|
-
.badge-floating[data-anchor='bottom-left'] { bottom: var(--badge-offset); left: var(--badge-offset); }
|
|
266
|
-
.badge-floating[data-anchor='bottom-right'] { bottom: var(--badge-offset); right: var(--badge-offset); }
|
|
267
|
-
|
|
268
238
|
@each $v in $variants {
|
|
269
239
|
.badge-#{$v} {
|
|
270
240
|
--badge-icon-size: var(--badge-#{$v}-icon-size);
|
|
@@ -281,10 +251,4 @@
|
|
|
281
251
|
box-shadow: var(--badge-#{$v}-shadow);
|
|
282
252
|
}
|
|
283
253
|
}
|
|
284
|
-
|
|
285
|
-
/* Flush wins over per-variant radius via source order — declared after @each. */
|
|
286
|
-
.badge-flush {
|
|
287
|
-
--badge-offset: 0;
|
|
288
|
-
border-radius: 0;
|
|
289
|
-
}
|
|
290
254
|
</style>
|
|
@@ -140,6 +140,7 @@
|
|
|
140
140
|
--button-outline-hover-border-width: var(--border-width-1);
|
|
141
141
|
--button-outline-hover-radius: var(--radius-md);
|
|
142
142
|
--button-outline-hover-padding: var(--space-8);
|
|
143
|
+
--button-outline-active-surface: var(--hover);
|
|
143
144
|
--button-outline-disabled-surface: var(--color-transparent);
|
|
144
145
|
--button-outline-disabled-text: var(--text-tertiary);
|
|
145
146
|
--button-outline-disabled-border: var(--border-neutral-faint);
|
|
@@ -226,7 +227,6 @@
|
|
|
226
227
|
|
|
227
228
|
.button {
|
|
228
229
|
cursor: pointer;
|
|
229
|
-
letter-spacing: 0.0125rem;
|
|
230
230
|
display: inline-flex;
|
|
231
231
|
align-items: center;
|
|
232
232
|
justify-content: center;
|
|
@@ -385,7 +385,7 @@
|
|
|
385
385
|
}
|
|
386
386
|
|
|
387
387
|
&:active:not(:disabled) {
|
|
388
|
-
background:
|
|
388
|
+
background: var(--button-outline-active-surface);
|
|
389
389
|
}
|
|
390
390
|
|
|
391
391
|
&:disabled {
|
|
@@ -39,9 +39,10 @@
|
|
|
39
39
|
</div>
|
|
40
40
|
</div>
|
|
41
41
|
|
|
42
|
-
<style>
|
|
42
|
+
<style lang="scss">
|
|
43
|
+
@use '../styles/padding' as *;
|
|
44
|
+
|
|
43
45
|
:global(:root) {
|
|
44
|
-
/* Default */
|
|
45
46
|
--card-default-surface: var(--surface-neutral-high);
|
|
46
47
|
--card-default-border: var(--border-neutral);
|
|
47
48
|
--card-default-border-width: var(--border-width-1);
|
|
@@ -66,30 +67,8 @@
|
|
|
66
67
|
--card-default-body-font-weight: var(--font-weight-normal);
|
|
67
68
|
--card-default-body-line-height: var(--line-height-md);
|
|
68
69
|
|
|
69
|
-
/* Hover */
|
|
70
|
-
--card-hover-surface: var(--surface-neutral-high);
|
|
71
70
|
--card-hover-border: var(--border-neutral-strong);
|
|
72
|
-
--card-hover-border-width: var(--border-width-1);
|
|
73
|
-
--card-hover-radius: var(--radius-lg);
|
|
74
|
-
--card-hover-header-padding: var(--space-16);
|
|
75
|
-
--card-hover-body-padding: var(--space-16);
|
|
76
71
|
--card-hover-shadow: var(--shadow-md);
|
|
77
|
-
--card-hover-blur: var(--blur-none);
|
|
78
|
-
--card-hover-header-surface: var(--color-transparent);
|
|
79
|
-
|
|
80
|
-
--card-hover-title: var(--text-primary);
|
|
81
|
-
--card-hover-title-font-family: var(--font-sans);
|
|
82
|
-
--card-hover-title-font-size: var(--font-size-lg);
|
|
83
|
-
--card-hover-title-font-weight: var(--font-weight-normal);
|
|
84
|
-
--card-hover-title-line-height: var(--line-height-sm);
|
|
85
|
-
|
|
86
|
-
--card-hover-icon-size: var(--icon-size-lg);
|
|
87
|
-
|
|
88
|
-
--card-hover-body: var(--text-secondary);
|
|
89
|
-
--card-hover-body-font-family: var(--font-sans);
|
|
90
|
-
--card-hover-body-font-size: var(--font-size-md);
|
|
91
|
-
--card-hover-body-font-weight: var(--font-weight-normal);
|
|
92
|
-
--card-hover-body-line-height: var(--line-height-md);
|
|
93
72
|
}
|
|
94
73
|
|
|
95
74
|
.card {
|
|
@@ -98,7 +77,7 @@
|
|
|
98
77
|
border-radius: var(--card-default-radius);
|
|
99
78
|
box-shadow: var(--card-default-shadow);
|
|
100
79
|
backdrop-filter: blur(var(--card-default-blur));
|
|
101
|
-
transition:
|
|
80
|
+
transition: border-color var(--duration-150), box-shadow var(--duration-150);
|
|
102
81
|
display: flex;
|
|
103
82
|
flex-direction: column;
|
|
104
83
|
overflow: hidden;
|
|
@@ -106,27 +85,18 @@
|
|
|
106
85
|
|
|
107
86
|
.card:not(.no-hover):hover,
|
|
108
87
|
.card.force-hover {
|
|
109
|
-
|
|
110
|
-
border: var(--card-hover-border-width) solid var(--card-hover-border);
|
|
111
|
-
border-radius: var(--card-hover-radius);
|
|
88
|
+
border-color: var(--card-hover-border);
|
|
112
89
|
box-shadow: var(--card-hover-shadow);
|
|
113
|
-
backdrop-filter: blur(var(--card-hover-blur));
|
|
114
90
|
}
|
|
115
91
|
|
|
116
92
|
.card-header {
|
|
117
93
|
display: flex;
|
|
118
94
|
align-items: center;
|
|
119
95
|
gap: var(--space-8);
|
|
120
|
-
padding
|
|
96
|
+
@include themed-padding(--card-default-header-padding);
|
|
121
97
|
background: var(--card-default-header-surface);
|
|
122
98
|
}
|
|
123
99
|
|
|
124
|
-
.card:not(.no-hover):hover .card-header,
|
|
125
|
-
.card.force-hover .card-header {
|
|
126
|
-
padding: var(--card-hover-header-padding);
|
|
127
|
-
background: var(--card-hover-header-surface);
|
|
128
|
-
}
|
|
129
|
-
|
|
130
100
|
.card.compact .card-header,
|
|
131
101
|
.card.compact .card-body {
|
|
132
102
|
padding: var(--space-8) var(--space-12);
|
|
@@ -137,12 +107,6 @@
|
|
|
137
107
|
color: var(--card-color, var(--card-default-title));
|
|
138
108
|
}
|
|
139
109
|
|
|
140
|
-
.card:not(.no-hover):hover .card-icon,
|
|
141
|
-
.card.force-hover .card-icon {
|
|
142
|
-
font-size: var(--card-hover-icon-size);
|
|
143
|
-
color: var(--card-color, var(--card-hover-title));
|
|
144
|
-
}
|
|
145
|
-
|
|
146
110
|
.card.compact .card-icon {
|
|
147
111
|
font-size: var(--icon-size-md);
|
|
148
112
|
}
|
|
@@ -155,15 +119,6 @@
|
|
|
155
119
|
line-height: var(--card-default-title-line-height);
|
|
156
120
|
}
|
|
157
121
|
|
|
158
|
-
.card:not(.no-hover):hover .card-title,
|
|
159
|
-
.card.force-hover .card-title {
|
|
160
|
-
color: var(--card-hover-title);
|
|
161
|
-
font-family: var(--card-hover-title-font-family);
|
|
162
|
-
font-size: var(--card-hover-title-font-size);
|
|
163
|
-
font-weight: var(--card-hover-title-font-weight);
|
|
164
|
-
line-height: var(--card-hover-title-line-height);
|
|
165
|
-
}
|
|
166
|
-
|
|
167
122
|
.card.compact .card-title {
|
|
168
123
|
font-size: var(--font-size-md);
|
|
169
124
|
}
|
|
@@ -174,17 +129,36 @@
|
|
|
174
129
|
font-size: var(--card-default-body-font-size);
|
|
175
130
|
font-weight: var(--card-default-body-font-weight);
|
|
176
131
|
line-height: var(--card-default-body-line-height);
|
|
177
|
-
padding
|
|
132
|
+
@include themed-padding(--card-default-body-padding);
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
/* Slot content inherits the card's body typography so consumer-side global
|
|
136
|
+
element rules (e.g. site.css `p { font-family: serif }`) don't override
|
|
137
|
+
the card-body-font-family alias. */
|
|
138
|
+
.card-body :global(p),
|
|
139
|
+
.card-body :global(ul),
|
|
140
|
+
.card-body :global(ol),
|
|
141
|
+
.card-body :global(li) {
|
|
142
|
+
font: inherit;
|
|
143
|
+
color: inherit;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
.card-body :global(p) {
|
|
147
|
+
margin: 0 0 var(--space-12);
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
.card-body :global(p:last-child) {
|
|
151
|
+
margin-bottom: 0;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
.card-body :global(ul),
|
|
155
|
+
.card-body :global(ol) {
|
|
156
|
+
margin: var(--space-12) 0;
|
|
157
|
+
padding-left: var(--space-24);
|
|
178
158
|
}
|
|
179
159
|
|
|
180
|
-
.card:
|
|
181
|
-
|
|
182
|
-
color: var(--card-hover-body);
|
|
183
|
-
font-family: var(--card-hover-body-font-family);
|
|
184
|
-
font-size: var(--card-hover-body-font-size);
|
|
185
|
-
font-weight: var(--card-hover-body-font-weight);
|
|
186
|
-
line-height: var(--card-hover-body-line-height);
|
|
187
|
-
padding: var(--card-hover-body-padding);
|
|
160
|
+
.card-body :global(li) {
|
|
161
|
+
margin-bottom: var(--space-4);
|
|
188
162
|
}
|
|
189
163
|
|
|
190
164
|
.card.compact .card-body {
|
|
@@ -147,7 +147,6 @@
|
|
|
147
147
|
--collapsiblesection-divider-expanded-padding: var(--space-4);
|
|
148
148
|
|
|
149
149
|
/* Container — frame (always-on outer chrome) */
|
|
150
|
-
--collapsiblesection-container-frame-surface: var(--surface-canvas);
|
|
151
150
|
--collapsiblesection-container-frame-border: var(--color-transparent);
|
|
152
151
|
--collapsiblesection-container-frame-border-width: var(--border-width-3);
|
|
153
152
|
--collapsiblesection-container-frame-radius: var(--radius-none);
|
|
@@ -270,7 +269,6 @@
|
|
|
270
269
|
}
|
|
271
270
|
|
|
272
271
|
.es-root.variant-container {
|
|
273
|
-
background: var(--collapsiblesection-container-frame-surface);
|
|
274
272
|
border: var(--collapsiblesection-container-frame-border-width) solid var(--collapsiblesection-container-frame-border);
|
|
275
273
|
border-radius: var(--collapsiblesection-container-frame-radius);
|
|
276
274
|
overflow: hidden;
|
|
@@ -286,4 +284,29 @@
|
|
|
286
284
|
@include themed-padding(--collapsiblesection-container-expanded-padding, $h: 2);
|
|
287
285
|
}
|
|
288
286
|
}
|
|
287
|
+
|
|
288
|
+
.section-content {
|
|
289
|
+
color: var(--text-secondary);
|
|
290
|
+
font-size: var(--font-size-md);
|
|
291
|
+
line-height: var(--line-height-md);
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
/* Slot content inherits the section's body typography so consumer-side
|
|
295
|
+
global element rules (e.g. site.css `p { font-family: serif }`) don't
|
|
296
|
+
override the collapsible's intended type styling. */
|
|
297
|
+
.section-content :global(p),
|
|
298
|
+
.section-content :global(ul),
|
|
299
|
+
.section-content :global(ol),
|
|
300
|
+
.section-content :global(li) {
|
|
301
|
+
font: inherit;
|
|
302
|
+
color: inherit;
|
|
303
|
+
}
|
|
304
|
+
|
|
305
|
+
.section-content :global(p) {
|
|
306
|
+
margin: 0 0 var(--space-12);
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
.section-content :global(p:last-child) {
|
|
310
|
+
margin-bottom: 0;
|
|
311
|
+
}
|
|
289
312
|
</style>
|