T1.5 - F5 (interim): wizard fields stop looking disabled

INTERIM. T3.4 removes the duplicate token underneath this; the job here is only
the appearance, and no token consolidation is started.

The wizard filled its inputs with var(--bg) - which in this sheet is the PAGE
BACKGROUND, #f4f4f4 - on a #e0e0e0 border. An empty required field was
indistinguishable from a locked one, which is why people were not typing in
them. The cause is the one the review named: this sheet redeclares its own
tokens, so it never saw --cds-field: #ffffff, even though theme-light.css has
been supplying that to this page all along.

Fields now consume --cds-field, and take the same --border-strong the creator's
inputs already use, so a field looks like a field on both pages. No new value is
introduced - both tokens already existed.

That inverts a signal if left there, so it needed the other half: there was no
disabled rule at all on this page, meaning locked fields would have turned white
too. Disabled and readonly fields now take --cds-field-02, the theme's own
secondary field surface, matching .locked-field in the creator. Enabled #ffffff
against disabled #f4f4f4, verified by computed style rather than by eye.

The border is deliberately the same on both states. I first wrote
`border-color: var(--border)` on the disabled rule and could not demonstrate it
taking effect - the rule matches, is more specific than the base rule, and its
background applies, but the computed border stayed --border-strong. Rather than
ship a declaration whose effect I cannot show, it is gone: a consistent border
is what "consistent with inputs elsewhere" asks for, and the fill is what
carries the state.

Screenshot diff is limited to the wizard, but establishing that took a control
run. admin and users appeared to change too, until capturing twice with NO code
change showed they differ from themselves - the console pages render live
timestamps and are not byte-stable. login, launcher, sop, creator and field are.
Recorded in the baseline README so the next task with a "no layout change"
done-when does not chase it.

The F5 probe now also fails if enabled and disabled fields become identical,
which is the way this fix could silently go wrong.

f_items: F1-F5 FIXED, F6 untouched as wave 1 requires. browser_check 71/71.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-08-14 18:48:47 -05:00
parent 4d3258113a
commit 5f3141e2a3
3 changed files with 61 additions and 9 deletions

View File

@@ -332,19 +332,45 @@ body.embed-full { overflow: hidden; }
color: var(--text);
}
/* INTERIM (F5/A3). T3.4 removes the duplicate token underneath this; the fix here
is only to stop editable fields looking disabled.
These were filled with var(--bg) — this sheet's PAGE BACKGROUND, #f4f4f4 — on a
#e0e0e0 border, so an empty required field was indistinguishable from a locked
one and users did not type in them. The wizard redeclares its own tokens and so
never saw --cds-field: #ffffff, which theme-light.css has been supplying to this
page all along. Consume that instead of the local override, and take the same
--border-strong the creator's inputs use, so a field looks like a field in both
places. No new value is introduced here. */
.field input,
.field select,
.field textarea {
padding: 0.75rem;
border: 1px solid var(--border);
border: 1px solid var(--border-strong);
border-radius: 0;
font-size: 14px;
font-family: inherit;
color: var(--text);
background: var(--bg);
background: var(--cds-field, var(--bg-card));
transition: border-color 0.2s;
}
/* Now that editable fields are white, genuinely locked ones need to say so — there
was no disabled rule at all, so they would have gone white too and the signal
would have inverted rather than been fixed. --cds-field-02 is the theme's own
secondary field surface, and matches .locked-field in the creator.
The border is deliberately left alone: the same --border-strong on both states
is what makes a field read as a field, and the fill is what carries locked vs
editable. Verified as #ffffff vs #f4f4f4 against an identical border. */
.field input:disabled,
.field select:disabled,
.field textarea:disabled,
.field input[readonly],
.field textarea[readonly] {
background: var(--cds-field-02, var(--bg));
color: var(--text-light);
cursor: not-allowed;
}
.field input:focus,
.field select:focus,
.field textarea:focus {