@fluid-theme/core 0.4.3 → 2.0.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.
Files changed (80) hide show
  1. package/AGENTS.md +6 -29
  2. package/CHANGELOG.md +543 -2
  3. package/CLAUDE.md +193 -14
  4. package/GEMINI.md +6 -45
  5. package/README.md +17 -8
  6. package/assets/js/compare.js +77 -0
  7. package/assets/js/fit-text.js +103 -0
  8. package/assets/js/lightbox.js +153 -0
  9. package/assets/js/scroll-reveal.js +72 -0
  10. package/assets/js/toc-build.mjs +86 -0
  11. package/assets/js/toc.js +384 -0
  12. package/dist/fluid-1x.min.css +4 -0
  13. package/dist/fluid-fonts.min.css +2 -0
  14. package/dist/fluid-legacy-1x.css +3 -0
  15. package/dist/fluid-nav.min.css +3 -0
  16. package/dist/fluid-toc.min.css +3 -0
  17. package/dist/fluid-zero.min.css +3 -0
  18. package/dist/fluid.min.css +3 -2
  19. package/dist/fonts/OFL-newsreader.txt +93 -0
  20. package/dist/fonts/OFL-schibsted-grotesk.txt +93 -0
  21. package/dist/fonts/newsreader-latin-opsz-italic.woff2 +0 -0
  22. package/dist/fonts/newsreader-latin-opsz-normal.woff2 +0 -0
  23. package/dist/fonts/schibsted-grotesk-latin-wght-italic.woff2 +0 -0
  24. package/dist/fonts/schibsted-grotesk-latin-wght-normal.woff2 +0 -0
  25. package/fluid-agent-kit/README.md +1 -0
  26. package/fluid-agent-kit/skills/accessibility.md +3 -1
  27. package/fluid-agent-kit/skills/css-conventions.md +22 -5
  28. package/fluid-agent-kit/skills/image-optimization.md +2 -0
  29. package/fluid-agent-kit/skills/preset-composition.md +108 -0
  30. package/package.json +29 -3
  31. package/src/animations/scroll-reveal.css +75 -193
  32. package/src/components/accordion.css +6 -47
  33. package/src/components/alert.css +47 -88
  34. package/src/components/avatar.css +4 -20
  35. package/src/components/badge.css +25 -48
  36. package/src/components/button.css +69 -175
  37. package/src/components/card.css +146 -481
  38. package/src/components/chip.css +46 -12
  39. package/src/components/compare.css +234 -0
  40. package/src/components/dropdown.css +10 -67
  41. package/src/components/empty-state.css +4 -0
  42. package/src/components/form.css +113 -81
  43. package/src/components/gallery.css +252 -0
  44. package/src/components/hero.css +203 -88
  45. package/src/components/indicator.css +23 -117
  46. package/src/components/loading.css +7 -29
  47. package/src/components/modal.css +12 -65
  48. package/src/components/nav-modes.css +261 -0
  49. package/src/components/nav.css +324 -392
  50. package/src/components/search-input.css +4 -2
  51. package/src/components/step-indicator.css +26 -27
  52. package/src/components/table.css +64 -171
  53. package/src/components/toc.css +254 -0
  54. package/src/components/tooltip.css +5 -46
  55. package/src/core/base.css +393 -547
  56. package/src/core/reset.css +17 -5
  57. package/src/core/tokens.css +426 -2276
  58. package/src/fluid.css +258 -17
  59. package/src/fonts/OFL-newsreader.txt +93 -0
  60. package/src/fonts/OFL-schibsted-grotesk.txt +93 -0
  61. package/src/fonts/fluid-fonts.css +55 -0
  62. package/src/fonts/newsreader-latin-opsz-italic.woff2 +0 -0
  63. package/src/fonts/newsreader-latin-opsz-normal.woff2 +0 -0
  64. package/src/fonts/schibsted-grotesk-latin-wght-italic.woff2 +0 -0
  65. package/src/fonts/schibsted-grotesk-latin-wght-normal.woff2 +0 -0
  66. package/src/layouts/positioning.css +6 -3
  67. package/src/legacy-1x.css +61 -0
  68. package/src/sections/cta.css +33 -101
  69. package/src/sections/features.css +42 -219
  70. package/src/sections/footer.css +53 -134
  71. package/src/sections/stats.css +40 -153
  72. package/src/sections/team.css +24 -113
  73. package/src/sections/testimonials.css +34 -148
  74. package/src/zero/base.css +166 -0
  75. package/src/zero/tokens.css +64 -0
  76. package/src/zero.css +20 -0
  77. package/src/components/scroll-progress.css +0 -104
  78. package/src/components/settings-panel.css +0 -603
  79. package/src/components/themed-images.css +0 -229
  80. package/src/components/version-badge.css +0 -70
@@ -55,10 +55,11 @@
55
55
  resize: vertical;
56
56
  }
57
57
 
58
- /* Text overflow prevention */
58
+ /* Text overflow prevention: a long word breaks rather than overflow.
59
+ No automatic hyphens anywhere: at a 58ch measure they showed as
60
+ "di-mensions" and "lap-top" (data-text-overflow="hyphenate" opts in). */
59
61
  :where(p, h1, h2, h3, h4, h5, h6, li, figcaption) {
60
62
  overflow-wrap: break-word;
61
- hyphens: auto;
62
63
  }
63
64
 
64
65
  /* Headings - tighter line height for larger text */
@@ -85,11 +86,19 @@
85
86
  text-underline-offset: 0.2em;
86
87
  }
87
88
 
88
- /* Anchor links within same page */
89
- :where(a[href^="#"]) {
89
+ /* Scroll targets keep breathing room below sticky headers.
90
+ (scroll-margin only has effect on the TARGET element, never
91
+ the clicked link.) Pages with taller sticky navs override. */
92
+ :where([id]) {
90
93
  scroll-margin-block-start: 2rem;
91
94
  }
92
95
 
96
+ /* The hidden attribute always wins — components that set their
97
+ own display (flex/grid) must never resurrect hidden content */
98
+ [hidden] {
99
+ display: none !important;
100
+ }
101
+
93
102
  /* Focus styles - visible only for keyboard navigation */
94
103
  :focus-visible {
95
104
  outline: 2px solid var(--color-focus, currentColor);
@@ -107,11 +116,14 @@
107
116
  border-spacing: 0;
108
117
  }
109
118
 
110
- /* Fieldset - remove default styling */
119
+ /* Fieldset - remove default styling. Browsers give a fieldset
120
+ min-inline-size: min-content, so a wide child (a table, a row of inputs)
121
+ made the whole page wider than a phone; 0 lets it shrink like a div. */
111
122
  :where(fieldset) {
112
123
  border: none;
113
124
  padding: 0;
114
125
  margin: 0;
126
+ min-inline-size: 0;
115
127
  }
116
128
 
117
129
  /* Legend - reset positioning */