Test check (iii) and fix two bugs it exposed in the application-CSS scan

Plan step 41(iii): fixtures/tests for every literal kind (colour, radius,
shadow, font size/weight, line height, letter spacing, easing, duration) and
an off-scale media query, plus material-scheme.css excluded by name and by
its generated header wherever it sits among the scanned paths. Also adds a
fixture proving Tailwind-shaped bare words in running prose are never read
as classes.

Two fixes found by writing the fixtures rather than only the implementation:
a directly-scanned .css file was also running through the Blade/PHP/JS checks
(the same file's `ease-in-out` in a `transition` value tripped the old scale
check a second time), so a CSS file is now check (iii)'s alone; and
`withoutTokenFunctions()` leaves a `var()`/`calc()` call's own name and
parentheses standing once its arguments are blanked, which
`isSafeLiteralValue()` did not yet recognise as the same "nothing to see
here" as an empty value.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Qwx5USif3wFFmxtHg5U1g9
This commit is contained in:
Andreas Reinhold / reini
2026-09-15 08:16:15 +02:00
co-authored by Claude Sonnet 5
parent b998683762
commit 09f4edd31d
6 changed files with 84 additions and 2 deletions
@@ -0,0 +1,25 @@
/* comments are ignored */
.card {
color: #ff0000;
background: rgb(0, 0, 0);
border-radius: 12px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
font-size: 14px;
font-weight: 600;
line-height: 1.4;
letter-spacing: 0.02em;
transition: opacity 200ms ease-in-out;
}
.fine {
border-radius: var(--md-sys-shape-corner-lg);
color: var(--md-sys-color-primary);
padding: calc(var(--md-sys-measurement-space100) * 2);
border: 0;
}
@media (min-width: 700px) {
.card {
display: flex;
}
}
@@ -0,0 +1,7 @@
/*
* Material 3 colour roles, generated by Google's material-color-utilities (spec 2025).
*/
:root {
--md-sys-color-primary: #6750a4;
}
@@ -0,0 +1,3 @@
:root {
--md-sys-color-primary: #6750a4;
}