refactor(ui): buttons stop using weights the system doesn't have
CI & Build / Python lint (push) Successful in 4s
CI & Build / Plugin hooks (push) Successful in 12s
CI & Build / integration (push) Successful in 21s
CI & Build / TypeScript typecheck (push) Successful in 35s
CI & Build / Python tests (push) Successful in 1m10s
CI & Build / Build & push image (push) Successful in 36s

Eleven buttons set font-weight 600. The house style permits exactly two
weights, 400 and 500, and says so explicitly — 600 and 700 are not part of the
system. Every auth Submit, plus Invite, Toggle, Confirm-delete, Add-share,
the OAuth button and the assist Reject.

Now var(--fs-weight-medium), which is 500. Buttons get very slightly lighter.

Small on its own, but it is the third kind of drift the same five auth views
have now produced: geometry that differed per file, an accent fill the style
forbids, and a weight the system does not define. None of the three was a
deliberate choice — each is what happens when a button is written by copying
the nearest existing one.

Weight declarations only. No geometry, no colour, no templates.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UaYUaouG9jjhATyuxCKrQs
This commit is contained in:
2026-08-01 22:19:16 -04:00
co-authored by Claude Opus 5
parent f491b6d7b9
commit 97b93bcaea
8 changed files with 11 additions and 11 deletions
@@ -188,7 +188,7 @@ const markers: Record<DiffLine["type"], string> = {
cursor: pointer;
font-size: 0.8rem;
font-family: inherit;
font-weight: 600;
font-weight: var(--fs-weight-medium);
}
.iap-btn-accept {
background: var(--color-success, #22c55e);
+1 -1
View File
@@ -343,7 +343,7 @@ onMounted(async () => {
border: none;
border-radius: 6px;
font-size: 0.85rem;
font-weight: 600;
font-weight: var(--fs-weight-medium);
cursor: pointer;
transition: opacity 0.15s;
white-space: nowrap;
+1 -1
View File
@@ -146,7 +146,7 @@ async function handleSubmit() {
border-radius: var(--radius-sm);
cursor: pointer;
font-size: 0.95rem;
font-weight: 600;
font-weight: var(--fs-weight-medium);
}
.btn-submit:disabled {
opacity: 0.6;
+2 -2
View File
@@ -185,7 +185,7 @@ function loginWithOAuth() {
border-radius: var(--radius-sm);
cursor: pointer;
font-size: 0.95rem;
font-weight: 600;
font-weight: var(--fs-weight-medium);
}
.btn-submit:disabled {
opacity: 0.6;
@@ -217,7 +217,7 @@ function loginWithOAuth() {
border-radius: var(--radius-sm);
cursor: pointer;
font-size: 0.95rem;
font-weight: 600;
font-weight: var(--fs-weight-medium);
}
.btn-oauth:hover {
background: var(--color-bg-hover, var(--color-border));
+1 -1
View File
@@ -256,7 +256,7 @@ async function handleSubmit() {
border-radius: var(--radius-sm);
cursor: pointer;
font-size: 0.95rem;
font-weight: 600;
font-weight: var(--fs-weight-medium);
}
.btn-submit:disabled {
opacity: 0.6;
+1 -1
View File
@@ -225,7 +225,7 @@ async function handleSubmit() {
border-radius: var(--radius-sm);
cursor: pointer;
font-size: 0.95rem;
font-weight: 600;
font-weight: var(--fs-weight-medium);
}
.btn-submit:disabled {
opacity: 0.6;
+1 -1
View File
@@ -204,7 +204,7 @@ async function handleSubmit() {
border-radius: var(--radius-sm);
cursor: pointer;
font-size: 0.95rem;
font-weight: 600;
font-weight: var(--fs-weight-medium);
}
.btn-submit:disabled {
opacity: 0.6;
+3 -3
View File
@@ -336,7 +336,7 @@ function formatDate(iso: string): string {
border-radius: var(--radius-sm);
cursor: pointer;
font-size: 0.9rem;
font-weight: 600;
font-weight: var(--fs-weight-medium);
white-space: nowrap;
}
.btn-invite:disabled {
@@ -386,7 +386,7 @@ function formatDate(iso: string): string {
border-radius: var(--radius-sm);
cursor: pointer;
font-size: 0.9rem;
font-weight: 600;
font-weight: var(--fs-weight-medium);
white-space: nowrap;
}
.btn-toggle:disabled {
@@ -503,7 +503,7 @@ function formatDate(iso: string): string {
border-radius: var(--radius-sm);
cursor: pointer;
font-size: 0.8rem;
font-weight: 600;
font-weight: var(--fs-weight-medium);
margin-right: 0.25rem;
}
.btn-confirm-delete:hover:not(:disabled) {