juxscript 1.0.118 → 1.0.120

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.
@@ -24,8 +24,10 @@ export class ElementSkin extends BaseSkin {
24
24
  }
25
25
  updateSkin(state) {
26
26
  // 1. Tag Replacement Logic (uses state.tag)
27
- if (this.root) {
28
- const newRoot = document.createElement(state.tag.toLowerCase());
27
+ const currentTag = this.root ? this.root.tagName.toLowerCase() : '';
28
+ const desiredTag = (state.tag || 'div').toLowerCase();
29
+ if (this.root && currentTag !== desiredTag) {
30
+ const newRoot = document.createElement(desiredTag);
29
31
  if (this.root.parentNode) {
30
32
  this.root.parentNode.replaceChild(newRoot, this.root);
31
33
  }
@@ -227,3 +227,35 @@ button, input, select, textarea {
227
227
  display: flex;
228
228
  flex-direction: column;
229
229
  }
230
+
231
+ /* --- Layout Regions --- */
232
+
233
+ .layout-header {
234
+ background-color: var(--color-surface-base);
235
+ border-bottom: 1px solid var(--color-border);
236
+ /* Horizontal alignment usually handled by inner grid/flex, vertical centering is safe default here */
237
+ justify-content: center;
238
+ z-index: 50;
239
+ }
240
+
241
+ .layout-hero {
242
+ background-color: var(--color-background-alt);
243
+ position: relative;
244
+ /* Often the hero cell itself centers its children */
245
+ align-items: center;
246
+ justify-content: center;
247
+ }
248
+
249
+ .layout-features {
250
+ background-color: var(--color-background);
251
+ /* Ensure content doesn't just jam against edges if inner wrapper misses padding */
252
+ position: relative;
253
+ }
254
+
255
+ .layout-footer {
256
+ background-color: var(--color-background-inverse);
257
+ color: var(--color-text-secondary);
258
+ border-top: 1px solid var(--color-border);
259
+ align-items: center;
260
+ justify-content: center;
261
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "juxscript",
3
- "version": "1.0.118",
3
+ "version": "1.0.120",
4
4
  "type": "module",
5
5
  "description": "A JavaScript UX authorship platform",
6
6
  "main": "./index.js",