Skip to content

style(portal): align page headings and rework the Timesheets toolbar - #60

Merged
furqan-debug merged 6 commits into
mainfrom
style/consistent-page-headings
Sep 17, 2026
Merged

furqan-debug merged 6 commits into
mainfrom
style/consistent-page-headings

Conversation

@mhuzaifa2904

Copy link
Copy Markdown
Collaborator
  • An eyebrow above the title pushed the heading down a line on Team Overview, Profile, Projects and Security. The eyebrow now renders above the title without occupying layout space, so the text stays and the heading doesn't move. It returns to normal flow below md, where the container's 16px of padding leaves no room above.
  • A back button above the title did the same on Edit Project and Change Plan. Those are removed, which also removes the "Back to Projects" text as requested. Both pages are still reachable from the sidebar and browser Back, but neither has a back affordance of its own now.
  • Timesheets doesn't use PageLayout. Its header was px-8 py-6, putting the title 24px higher and 8px further left than every other page; its toolbar was px-8 too. Both match now.
  • Daily/Weekly/Calendar swaps to the left, with the date, timezone, member filter, Filter and Add time on the right. The three groups were siblings of a wrapping flex row, which is why the switcher sat beside the date while the member controls wrapped underneath — a plain reorder would have split the two filter rows. They're one right-aligned group now, so flex-wrap is gone and the row aligns to the top rather than the centre.
  • The toolbar rises 40px — 24px of header padding plus 16px of its own — to sit where PageLayout puts its actions.
  • The filter group rises another 24px above the switcher's line, via a negative margin. The two groups are different heights, so any alignment rule ties one's position to the other's.

Muhammad Huzaifa and others added 6 commits September 18, 2026 03:19
PageLayout sets p-4 md:px-10 md:py-12, so a page using it plainly — Reports
and Screenshots — puts its <h1> 48px down and 40px in. Three pages sat
elsewhere:

- Team Overview carried an eyebrow above the title. Nothing else in the
  screenshots has one, and it pushed the heading a line lower.
- Edit Project carried a back button above the title, which pushed it
  lower again by a different amount.
- Timesheets does not use PageLayout at all. Its own header was px-8 py-6,
  so the title sat 24px higher and 8px further left than every other page.
  Its toolbar was px-8 too and has been brought to the same left edge.

Removing the back button also removes the "Back to Projects" text, which
was asked for separately. Projects is still reachable from the sidebar and
from browser Back, but that page now has no back affordance of its own.

Profile, Projects, Security and Change Plan have the same eyebrow and
back-button offsets. They were not in scope here and are unchanged, so
they still sit lower than the rest.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Applies the same rule to the four pages left over: Profile, Projects and
Security each carried an eyebrow above the title, and Change Plan carried
a back button. Both push the <h1> below where Reports and Screenshots put
it.

No page passes `eyebrow` or `backButton` now, so every PageLayout page
starts its heading in the same place. The props stay on the component —
nothing uses them, but they are a reasonable thing for a page to want.

Change Plan loses its "Back to Billing" affordance, as Edit Project lost
"Back to Projects". Billing is still reachable from Settings and from
browser Back.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The previous commits aligned the headings by deleting the eyebrow from the
four pages that had one. The text was wanted; only its effect on the
heading's position was not.

The eyebrow now renders above the title without occupying layout space, so
a page carrying one puts its <h1> at exactly the same height as one that
does not. WORKSPACE ANALYTICS & INSIGHTS, ACCOUNT & IDENTITY, PORTFOLIO &
ASSETS and ACCOUNT SECURITY are all back, unchanged.

It stays in flow below md, where the container's 16px of padding leaves no
room to sit above the title.

The back buttons are not restored — those were removed on request, not as
a side effect of alignment.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Daily/Weekly/Calendar moves to the left of the toolbar; the date,
timezone, member filter, Filter and Add time move to the right.

The three groups used to be siblings of a wrapping flex row, which is why
the switcher ended up alongside the date while the member controls wrapped
underneath. The two filter rows are now one group, stacked and aligned to
the right edge, so the switcher can hold the left on its own.

flex-wrap is gone with it — two children, no wrapping to do — and the row
aligns to the top rather than the centre, since the right side is two rows
tall and the left is one.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
24px of header bottom padding plus 16px of toolbar top padding sat between
the description and the date control. PageLayout bottom-aligns its actions
against the heading block with nothing but pb-1, so every page using it
put its date control 40px higher than this one.

Both paddings drop to match, which moves the whole toolbar up by 40px.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The toolbar row aligns its two groups to the top, so the date, timezone,
member filter, Filter and Add time started level with the view switcher on
the left. This lifts that group 24px above that line.

A negative margin rather than a different alignment: the two groups are
different heights, so aligning them by any rule ties this group's position
to the switcher's. The header's right side is empty, so the group rises
into it without meeting the heading, which sits on the left.

Desktop only. Below 900px the toolbar is a single column and there is
nothing to raise it past.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Sep 17, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
trackowl Ready Ready Preview Sep 17, 2026 10:57pm UTC

@furqan-debug
furqan-debug merged commit d0e7096 into main Sep 17, 2026
4 checks passed

This branch was successfully deployed

2 active deployments
Preview – trackowl — a0c0a459 Deployed Sep 17, 2026 by vercel[bot]
Preview – trackowl-admin — a0c0a459 Deployed Sep 17, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants