mote.css 0.10.6 → 0.10.8

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/CHANGELOG.md CHANGED
@@ -5,7 +5,78 @@ All notable changes to this project are documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
- ## [Unreleased]
8
+ ## [0.10.8] - 2026-10-28
9
+
10
+ ### Fixed (components — round-13 findings)
11
+
12
+ - The sticky site header goes static on paper, so it no longer repeats over
13
+ every printed page. A page that wants a running head re-applies
14
+ `position: sticky` in its own print CSS.
15
+
16
+ ### Fixed (docs — round-13 findings)
17
+
18
+ - The phone-record recipe keeps one label column for the whole table
19
+ (`--records-label`, 7rem by default) instead of a fixed 6rem track, so
20
+ longer labels no longer wrap and every record's labels line up. The label
21
+ keeps `text-align: start`, so a right-aligned numeric column no longer
22
+ drags the label away from its value.
23
+ - The phone-record recipe now covers `<caption>` and row headers
24
+ (`th[scope="row"]`), and its print guard restores the table, the hidden
25
+ header row and the caption: the phone layout hides the header, so a print
26
+ rule that only reverted `display` would have printed a table with no
27
+ columns.
28
+ - The phone-record recipe now states that the transform branch does not need
29
+ `.mote-table-scroll`, and that a table serving both branches must release
30
+ the panel cap in the narrow query (`--mote-table-max: none`) — the shipped
31
+ 60vh cap otherwise crops the records it contains.
32
+ - Status on a table row now has a documented page rule, and the status
33
+ reference states that progress and meter inherit a status while badges and
34
+ buttons are gated.
35
+ - Small clarifications: an exclusive `<details name>` group spans the whole
36
+ document; badge scale follows the surrounding font size, not the body;
37
+ definition lists need one column in a narrow rail; a left-rail contents
38
+ list is a `nav` before `main`; Chromium repeats `tfoot` totals across page
39
+ breaks; `.mote-card-media` sizes a direct `img` or `video` child.
40
+
41
+ ### Added (docs — round-13 findings)
42
+
43
+ - A reusable-dialog example: one `<dialog>` filled from the trigger before
44
+ `showModal()`. mote ships no JavaScript and the docs keep saying so.
45
+
46
+ ### Tests
47
+
48
+ - The published phone-record recipe is pinned by a docs-source check
49
+ (`tests/docs-recipes.cjs`), which also fails if a code sample leaks a live
50
+ tag into the page.
51
+ - The regression fixture asserts that mote's sticky header is sticky on
52
+ screen and static on paper.
53
+
54
+ ### Evaluation
55
+
56
+ - Thirteenth round: ten independent agents built ten new page types against
57
+ v0.10.7. All ten would use mote again; no library failure was confirmed.
58
+ The round surfaced the recipe, print and documentation gaps fixed here.
59
+
60
+ ## [0.10.7] - 2026-10-26
61
+
62
+ ### Fixed (docs — round-12 findings)
63
+
64
+ - The contents rail now includes the identified “Narrow screens: scroll or
65
+ transform” subsection. A regression check keeps the rail's links synchronized
66
+ with every identified `h2`–`h4` heading in the docs page.
67
+
68
+ ### Added (docs — round-12 findings)
69
+
70
+ - Added copy-ready recipes for narrow definition lists, dense tables that
71
+ become phone-readable records, and headers that give navigation its own row.
72
+ - Added a narrow-page TOC recipe that places the TOC before `main` in source
73
+ order; on narrow screens, the shell's column layout preserves that relative
74
+ order visually, native focus order follows DOM order, and the contents
75
+ disclosure starts closed.
76
+ - Added the complete disclosure print workflow: it opens every panel, removes
77
+ exclusive-group names while printing, and restores the original state.
78
+ - Clarified that `.mote-doc` paper layout is page-owned, while mote ships the
79
+ light paper palette and table expansion.
9
80
 
10
81
  ## [0.10.6] - 2026-10-26
11
82
 
@@ -772,7 +843,9 @@ Components:
772
843
  - Opt-in helpers: `.mote-container`, `.mote-muted`, `.mote-note` surfaces.
773
844
  - Element gallery demo page (`demo.html`).
774
845
 
775
- [Unreleased]: https://gitlab.com/abmach/mote/compare/v0.10.6...HEAD
846
+ [Unreleased]: https://gitlab.com/abmach/mote/compare/v0.10.8...HEAD
847
+ [0.10.8]: https://gitlab.com/abmach/mote/compare/v0.10.7...v0.10.8
848
+ [0.10.7]: https://gitlab.com/abmach/mote/compare/v0.10.6...v0.10.7
776
849
  [0.10.6]: https://gitlab.com/abmach/mote/compare/v0.10.5...v0.10.6
777
850
  [0.10.5]: https://gitlab.com/abmach/mote/compare/v0.10.4...v0.10.5
778
851
  [0.10.4]: https://gitlab.com/abmach/mote/compare/v0.10.3...v0.10.4
package/README.md CHANGED
@@ -151,7 +151,7 @@ mote is class-optional by design — elements are styled from tags alone; these
151
151
  | Component | Hook |
152
152
  |---|---|
153
153
  | Document layout (landmark grid) | `.mote-doc` on `<body>` — `:has()` reads your `header`/`nav`/`main`/`aside`/`footer` |
154
- | Sticky site header / nav pills | `body > header` — semantic; `.mote-header`/`.mote-nav` only for shells wrapped in a `<div>` |
154
+ | Sticky site header / nav pills | `body > header` — semantic; `.mote-header`/`.mote-nav` only for shells wrapped in a `<div>`; goes static on paper |
155
155
  | Semantic buttons (gated) | `class="mote-success"` etc. on the button itself — themed sections never recolor actions |
156
156
  | Ghost buttons | `.mote-ghost` — transparent fill; status tints from the button's own class (gated like solids) |
157
157
  | Solid button on any element | `.mote-btn` — the full solid recipe for anchors, spans; status classes gated |
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * mote.components.css — opt-in components for mote.css.
3
- * v0.10.6 · MIT
3
+ * v0.10.8 · MIT
4
4
  * https://gitlab.com/abmach/mote · mirror: https://github.com/abmach/mote
5
5
  *
6
6
  * Requires mote.css loaded first (provides the --mote-* tokens).
@@ -168,6 +168,15 @@ a:where(.mote-badge):hover {
168
168
  padding-block: 0.7rem;
169
169
  }
170
170
 
171
+ /* On paper the bar must not repeat over every sheet: a sticky header is
172
+ screen chrome, and the browser paints it on each page it can. Pages that
173
+ want a running head re-apply position: sticky in their own print CSS. */
174
+ @media print {
175
+ :where(body > header, .mote-header) {
176
+ position: static;
177
+ }
178
+ }
179
+
171
180
  /* Long navs scroll inside the bar — they never wrap to a second line
172
181
  or push the rest of the row (brand, toggle) off it. min-width lets
173
182
  the nav yield space before the surrounding row needs to. */
package/mote.css CHANGED
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * mote.css — a mote of styling for plain HTML.
3
- * v0.10.6 · MIT
3
+ * v0.10.8 · MIT
4
4
  * https://gitlab.com/abmach/mote · mirror: https://github.com/abmach/mote
5
5
  *
6
6
  * The smallest thing that can carry style:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mote.css",
3
- "version": "0.10.6",
3
+ "version": "0.10.8",
4
4
  "bugs": {
5
5
  "url": "https://gitlab.com/abmach/mote/-/issues"
6
6
  },