@@ -229,25 +229,25 @@ Each Lit component with `static styles` needs a corresponding entry in `componen
229229| ** Card** | ` card.ts ` | ` :host ` , ` section ` , ` ::slotted(*) ` | Uses ` > section ` child combinator |
230230| ** Text** | ` text.ts ` | ` :host ` , ` h1-h5 ` (uses ` :where() ` ) | Paragraph margin reset added |
231231| ** Divider** | ` divider.ts ` | ` :host ` , ` hr ` | Added margin to match browser default |
232- | ** TextField** | ` text-field.ts ` | ` :host ` , ` input ` , ` label ` , ` textarea ` | Multiline support added |
232+ | ** TextField** | ` text-field.ts ` | ` :host ` , ` input ` , ` label ` , ` textarea ` | Uses ` :where() ` for element selectors. Multiline support added |
233233| ** Button** | ` button.ts ` | ` :host ` | Simple display/flex |
234234| ** Icon** | ` icon.ts ` | ` :host ` | Simple display/flex |
235235| ** Column** | ` column.ts ` | ` :host ` , ` section ` , attribute selectors | Uses ` data-alignment ` and ` data-distribution ` |
236236| ** Row** | ` row.ts ` | ` :host ` , ` section ` , attribute selectors | Uses ` data-alignment ` and ` data-distribution ` |
237237| ** List** | ` list.ts ` | ` :host ` , ` section ` , ` ::slotted(*) ` | All fixtures pass 0% including cards inside lists |
238- | ** Image** | ` image.ts ` | ` :host ` , ` img ` | All usage hints pass 0% |
239- | ** Slider** | ` slider.ts ` | ` :host ` , ` input[type="range"] ` | Basic slider passes 0% |
238+ | ** Image** | ` image.ts ` | ` :host ` , ` img ` | Uses ` :where() ` for ` img ` . All usage hints pass 0% |
239+ | ** Slider** | ` slider.ts ` | ` :host ` , ` input[type="range"] ` | Uses ` :where() ` for ` input ` . Basic slider passes 0% |
240240| ** Tabs** | ` tabs.ts ` | ` :host ` , ` section ` , ` button ` | All fixtures pass 0% |
241- | ** CheckBox** | ` checkbox.ts ` | ` :host ` , ` input ` | Works via path binding |
242- | ** DateTimeInput** | ` datetime-input.ts ` | ` :host ` , ` input ` | React uses HTML5 inputs directly |
241+ | ** CheckBox** | ` checkbox.ts ` | ` :host ` , ` input ` | Uses ` :where() ` for ` input ` . Works via path binding |
242+ | ** DateTimeInput** | ` datetime-input.ts ` | ` :host ` , ` input ` | Uses ` :where() ` for ` input ` . React uses HTML5 inputs directly |
243243
244244### 🔄 Need Investigation
245245
246246| Component | Lit File | Styles | Issue |
247247| -----------| ----------| --------| -------|
248- | ** Modal** | ` modal.ts ` | ` :host ` , ` dialog ` , ` #controls ` , ` button ` | No test fixtures yet |
249- | ** Video** | ` video.ts ` | ` :host ` , ` video ` | No test fixtures yet |
250- | ** AudioPlayer** | ` audio.ts ` | ` :host ` , ` audio ` | No test fixtures yet |
248+ | ** Modal** | ` modal.ts ` | ` :host ` , ` dialog ` , ` #controls ` , ` button ` | Uses ` :where() ` for ` dialog ` . No test fixtures yet |
249+ | ** Video** | ` video.ts ` | ` :host ` , ` video ` | Uses ` :where() ` for ` video ` . No test fixtures yet |
250+ | ** AudioPlayer** | ` audio.ts ` | ` :host ` , ` audio ` | Uses ` :where() ` for ` audio ` . No test fixtures yet |
251251
252252### ⚠️ Lit Renderer Issues
253253
@@ -294,8 +294,8 @@ Pass CSS variables via inline style:
294294```
295295
296296```css
297- /* componentSpecificStyles */
298- .a2ui-surface .a2ui-image img {
297+ /* componentSpecificStyles — use :where() so utility classes (e.g. layout-el-cv) can override */
298+ :where( .a2ui-surface .a2ui-image) img {
299299 object - fit : var (-- object - fit , fill );
300300}
301301```
@@ -314,11 +314,11 @@ dialog section #controls button { ... }
314314
315315### Form Elements
316316
317- Form inputs already have some shared styles. Component-specific overrides should be scoped :
317+ Form inputs already have some shared styles. Component-specific overrides use `:where()` so theme utility classes can override them :
318318
319319```css
320- /* DateTimeInput specific */
321- .a2ui-surface .a2ui-datetime-input input {
320+ /* DateTimeInput specific — :where() keeps specificity at (0,0,1) to match Lit's bare `input` selector */
321+ :where( .a2ui-surface .a2ui-datetime-input) input {
322322 border - radius : 8px ;
323323 padding : 8px ;
324324 border : 1px solid #ccc ;
0 commit comments