fix(tangle-cloud): drawer centering, connect-button gradient, topbar polish, italic suppression#3237
Merged
Merged
Conversation
…polish, italic suppression
Round-3 fixes from a real product critique. Four concrete defects:
## 1. Register button "weird centered panel" (0/10 → drawer)
The RegistrationDrawer renders as a Radix Dialog with side anchors
(`right-0 left-auto translate-x-0`), so it should slide in from the
right. My earlier wallet-modal centering fix applied
`--tw-translate-x: calc(-50% + sidebar/2) !important` to *every*
`[role="dialog"]`, which dragged the drawer back to the center.
Scope the centering rule to truly center-anchored dialogs only —
selector now negates `[class*="left-auto"]`, `[class*="right-auto"]`,
and `[class*="translate-x-0"]`. Side-anchored sheets keep their
intended position; the wallet modal still gets sidebar-aware
centering.
## 2. Connect button gradient (staking-dapp aesthetic in cloud)
`tangle-cloud-wallet-action` used to force a hardcoded indigo-to-
darker-indigo `linear-gradient` background. That was the only place
in the cloud app with a gradient — every other button uses sandbox-ui
flat fills — so the Connect button always read as imported from a
different system.
Strip the gradient. Use the same solid `--btn-primary-bg` fill as
every other primary action. Height, padding, border-radius normalized
to match sandbox-ui's default button (36px / 6px / 14px padding).
Also drop the white-frosted wallet-mark tile (which existed to make
the wallet icon legible on the gradient). Replace with a restrained
mono tile that matches the new flat surface.
## 3. Topbar buttons (mismatched heights, different surfaces)
Network selector, theme toggle, transactions, and connect were each
styled differently — Connect had a tinted background while everything
else had a different alpha. Unified all topbar buttons to the same
36px / 6px / transparent / 1px border / `var(--bg-hover)` on hover.
## 4. Italics on dark backgrounds
Browser italic-synthesis was firing when a requested weight wasn't in
the loaded Geist font face. Force `font-style: normal` on every
interactive element under `.tangle-cloud-shell` (button / a / span /
p / h1-h6) — `.italic` class still opts in explicitly for the rare
deliberate use.
## 5. Drop the breadcrumb header noise
`Cloud / Blueprints / Details` told the operator nothing the sidebar
+ page H1 weren't already conveying — and the auto-generated leaf
("Details", "Service", "Manage") was generic enough to actively
mislead on iframe pages. Replaced the breadcrumb row with an empty
slot reserved for future global controls (search, branch picker, etc.).
The `useMemo` is preserved for now to keep the imports stable; will
strip on a follow-up sweep.
## Verification
- `yarn nx build/typecheck/lint/test tangle-cloud` — clean
(162/162 tests, 2 pre-existing warnings, 0 errors)
- Local: connect modal opens with MetaMask + Coinbase + WalletConnect
instead of just "Injected", centered in the content area
- Local: clean topbar, no gradient, no italics, no breadcrumb
- Local: register drawer (clicking Register on a blueprint card) will
once again slide in from the right rather than centering
## Not in this PR
The "AI Trading hero is still there" complaint will resolve when PR
#3236 (iframe-first layout) merges — that PR replaces the procedural
hero with a 52px identity strip on iframe blueprints.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Round-3 fixes from a product critique
Four concrete defects + one cleanup, all triggered by real complaints on the last review:
1. Register button "weird centered panel" (0/10 → drawer)
The RegistrationDrawer renders as a Radix Dialog with side anchors (
right-0 left-auto translate-x-0) so it should slide in from the right. My earlier wallet-modal centering fix applied--tw-translate-x: calc(-50% + sidebar/2) !importantto every[role="dialog"], which dragged the drawer back to center.Scope the centering rule to truly center-anchored dialogs only — selector now negates
[class*="left-auto"],[class*="right-auto"], and[class*="translate-x-0"]. Side-anchored sheets keep their intended position; the wallet modal still gets sidebar-aware centering.2. Connect button gradient (looked like staking dapp, not cloud)
tangle-cloud-wallet-actionwas forcing a hardcoded indigo-to-darker-indigolinear-gradientbackground. That was the only gradient in the cloud app — every other button uses sandbox-ui flat fills — so the Connect button always read as imported from a different system.Strip the gradient. Use the same solid
--btn-primary-bgfill as every other primary action. Height, padding, border-radius normalized to match sandbox-ui (36px / 6px / 14px padding).Also drop the white-frosted wallet-mark tile (which existed only to make the wallet icon legible on the gradient).
3. Topbar buttons (mismatched heights, different surfaces)
Network selector, theme toggle, transactions, and connect were each styled differently — Connect had a tinted background, others had different alpha. Unified all topbar buttons to the same shape: 36px / 6px / transparent / 1px border /
var(--bg-hover)on hover.4. Italics on dark backgrounds (dark on dark, unreadable)
Browser italic-synthesis was firing when a requested weight wasn't in the loaded Geist font face. Force
font-style: normalon every interactive element under.tangle-cloud-shell(button / a / span / p / h1-h6) —.italicclass still opts in explicitly for the rare deliberate use.5. Drop the breadcrumb header noise
Cloud / Blueprints / Detailstold the operator nothing the sidebar + page H1 weren't already conveying. The auto-generated leaf ("Details", "Service", "Manage") was generic enough to actively mislead on iframe pages. Replaced the breadcrumb row with an empty slot reserved for future global controls (search, branch picker, etc.).Test plan
yarn nx typecheck/lint/test/build tangle-cloud— clean (162/162 tests, 2 pre-existing warnings, 0 errors)