Skip to content

Commit d873888

Browse files
author
DavidQ
committed
Restyle shared header/intro to overlay image with transparent background and requested colors.
Exclude page-shell, remove header rounding, preserve collapse behavior.
1 parent aeaaf8d commit d873888

8 files changed

Lines changed: 314 additions & 50 deletions

File tree

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,15 @@
1-
This PR corrects unauthorized fullscreen drift across samples and fixes the one authorized fullscreen sample so it behaves correctly.
1+
Scope summary
2+
- Single-purpose style PR
3+
- Header + Intro overlay only
4+
- Transparent overlay background
5+
- Foreground #ed9700
6+
- Collapsed header background #7a00df
7+
- Header border radius removed
8+
- page-shell excluded
9+
10+
Validation checklist
11+
- Visual overlay confirmed on targeted shared entry pages
12+
- Collapsed state color confirmed
13+
- No page-shell edits
14+
- No layout regressions
15+
- No console errors
Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,15 @@
1-
Validation Checklist
1+
Scope summary
2+
- Single-purpose style PR
3+
- Header + Intro overlay only
4+
- Transparent overlay background
5+
- Foreground #ed9700
6+
- Collapsed header background #7a00df
7+
- Header border radius removed
8+
- page-shell excluded
29

3-
[x] Runnable guard added
4-
[x] Guard executes in one pass from repo root
5-
[x] Roadmap file path lock checked
6-
[x] Roadmap non-status edit lock checked
7-
[x] Fullscreen outside 0713 checked
8-
[x] Clear PASS/FAIL output produced
9-
[x] No roadmap text edits made
10-
[x] No engine changes made
11-
[x] No gameplay changes made
10+
Validation checklist
11+
- Visual overlay confirmed on targeted shared entry pages
12+
- Collapsed state color confirmed
13+
- No page-shell edits
14+
- No layout regressions
15+
- No console errors
Lines changed: 33 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,37 @@
1-
MODEL: GPT-5.4-codex
2-
REASONING: high
1+
MODEL: GPT-5.3-codex
2+
REASONING: medium
33

44
COMMAND:
5-
Create BUILD_PR_SAMPLES_METADATA_TAG_NORMALIZATION_AND_FILTER_BAR_UX
5+
Implement BUILD_PR_HEADER_INTRO_OVERLAY_COLLAPSED_HEADER_RESTYLE as one narrow style PR.
66

7-
Rules:
8-
- output ONLY the final zip to:
9-
<project folder>/tmp/BUILD_PR_SAMPLES_METADATA_TAG_NORMALIZATION_AND_FILTER_BAR_UX.zip
10-
- do NOT create staging folders in <project folder>/tmp
11-
- do NOT modify roadmap in the PR bundle
12-
- Codex updates roadmap during execution only if execution-backed status changes are earned
13-
- no embedded <style> blocks
14-
- no inline style=""
15-
- no JS-generated styling
16-
- keep scope limited to /samples/index.html and directly related sample metadata/rendering/filter dependencies
17-
- preserve the current accepted page shell and shared header/body consistency
7+
Requirements:
8+
- Move the shared Header and Intro visual block on top of the hero image
9+
- No background behind the overlaid Header and Intro block
10+
- Overlay foreground color: #ed9700
11+
- Collapsed header background color: #7a00df
12+
- Remove corner rounding from the header container
13+
- Exclude page-shell from this PR; do not modify page-shell selectors/rules
1814

19-
Required work:
20-
1. Normalize sample metadata so tags are real descriptive tags instead of duplicates of class values.
21-
2. Keep/assign a clear class value for each sample.
22-
3. If classes are shown for each sample, show them outside the description text.
23-
4. Do NOT append classes/tags/phase metadata into the sample description body.
24-
5. Ensure class filter values are sorted alphabetically and contain no duplicates.
25-
6. Ensure tag filter values are sorted alphabetically and contain no duplicates.
26-
7. Put search on the same row as Phase, Class, and Tag.
27-
8. Use explicit `Pinned` / `Unpinned` text values instead of a red/green icon treatment.
28-
9. Preserve preview image launch behavior and hover zoom.
29-
10. Keep filtering and pinning behavior working.
30-
11. Keep the change narrow, testable, and behavior-focused rather than redesigning the page.
15+
Constraints:
16+
- shared theme CSS only where possible under src/engine/theme/
17+
- no embedded <style>
18+
- no inline style=
19+
- no JS style string injection
20+
- no repo-wide cleanup
21+
- smallest scoped valid change
22+
- preserve existing collapse behavior
23+
24+
Validation:
25+
- targeted shared entry pages show overlay correctly
26+
- collapsed state shows #7a00df background
27+
- header border radius removed
28+
- no page-shell changes
29+
- no regressions / no console errors
30+
31+
Roadmap:
32+
- update roadmap status only if there is an existing matching item for this work
33+
- do not rewrite roadmap text
34+
- status-only transition backed by the implemented/tested change
35+
36+
Package output to:
37+
<project folder>/tmp/BUILD_PR_HEADER_INTRO_OVERLAY_COLLAPSED_HEADER_RESTYLE.zip
Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,2 @@
1-
Tighten the samples index metadata and filter/tile UX behavior.
2-
3-
Make tags real, sort dropdowns alphabetically with no duplicates, keep classes out of the description text, and use explicit Pinned/Unpinned text values while preserving preview-image launch behavior.
4-
5-
PR: BUILD_PR_SAMPLES_METADATA_TAG_NORMALIZATION_AND_FILTER_BAR_UX
1+
Restyle shared header/intro to overlay image with transparent background and requested colors.
2+
Exclude page-shell, remove header rounding, preserve collapse behavior.
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
# BUILD_PR_HEADER_INTRO_OVERLAY_COLLAPSED_HEADER_RESTYLE
2+
3+
## Purpose
4+
Restyle the shared header/intro presentation so the Header and Intro sit on top of the hero image, while preserving the existing style-system architecture and excluding `page-shell` from this change.
5+
6+
## Scope
7+
- Move the shared Header and Intro visual block on top of the image
8+
- Remove the background behind the overlaid Header and Intro block
9+
- Set overlay foreground color to `#ed9700`
10+
- When collapsed, set header background color to `#7a00df`
11+
- Remove corner rounding from the header container
12+
- Exclude `page-shell` selectors and layout rules from this PR
13+
14+
## Non-Goals
15+
- No `page-shell` edits
16+
- No tool-shell changes
17+
- No navigation/content restructuring
18+
- No new JS behavior unless a tiny class/state hook is required to apply the collapsed style already driven by existing collapse behavior
19+
- No repo-wide style cleanup beyond the selectors directly responsible for this slice
20+
21+
## Implementation Targets
22+
- Shared theme CSS under `src/engine/theme/`
23+
- Shared header/intro markup hooks only if required to support the overlay styling cleanly
24+
- Existing collapse state hook only if already present; otherwise use the smallest possible additive hook
25+
26+
## Required Visual Outcome
27+
1. The Header and Intro render visually on top of the image
28+
2. The overlaid Header and Intro have no background fill
29+
3. Overlay foreground/text/accent color uses `#ed9700`
30+
4. In collapsed state, the header background becomes `#7a00df`
31+
5. Header corners are square (no border radius)
32+
6. `page-shell` remains untouched
33+
34+
## Constraints
35+
- No embedded `<style>` in HTML
36+
- No inline `style=""` in HTML
37+
- No JS-generated style strings
38+
- Keep the change additive and page-by-page within the shared theme system
39+
- Preserve existing header/image behavior unless required by the overlay treatment
40+
41+
## Suggested Files To Touch
42+
- `src/engine/theme/main.css`
43+
- `src/engine/theme/header.css`
44+
- Any one shared intro/header partial or minimal loader hook only if necessary
45+
- Roadmap file: status-only update if there is an existing matching style item for this work
46+
47+
## Acceptance Criteria
48+
- Header and Intro overlay the image on the targeted shared entry pages
49+
- Overlay background is transparent/none
50+
- Overlay foreground color is `#ed9700`
51+
- Collapsed header background is `#7a00df`
52+
- Header border radius is removed
53+
- No `page-shell` selectors are modified
54+
- No layout regressions on the targeted pages
55+
- No horizontal overflow introduced
56+
- Existing collapse behavior still works
57+
58+
## UAT Checklist
59+
- Open each targeted shared entry page and verify Header + Intro are drawn over the image
60+
- Verify there is no background panel behind the overlaid content
61+
- Verify overlay foreground elements read as `#ed9700`
62+
- Collapse the header/intro region and verify collapsed header background is `#7a00df`
63+
- Verify header has square corners in both expanded and collapsed states
64+
- Verify pages using `page-shell` do not change because `page-shell` was excluded
65+
- Verify no console errors
66+
67+
## Codex Notes
68+
- Keep this to one PR purpose only
69+
- Use the smallest selector changes that achieve the requested visual result
70+
- Do not widen this into a broader theme cleanup
71+
- If a selector currently couples header/intro overlay behavior to `page-shell`, decouple only the minimum necessary portion without changing `page-shell` rules themselves

src/engine/theme/accordion.css

Lines changed: 71 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,13 @@
2222
}
2323

2424
.is-collapsible__summary::before {
25-
content: '+';
25+
content: '';
2626
display: inline-block;
2727
width: 1.1rem;
2828
}
2929

3030
.is-collapsible[open] > .is-collapsible__summary::before {
31-
content: '-';
31+
content: '';
3232
}
3333

3434
.is-collapsible__content {
@@ -39,3 +39,72 @@
3939
border-bottom: 0;
4040
}
4141

42+
body.hub-page-home .is-collapsible,
43+
body.hub-page-games .is-collapsible,
44+
body.hub-page-samples .is-collapsible,
45+
body.hub-page-tools .is-collapsible {
46+
border-radius: 0;
47+
border: 0;
48+
background: #c0a3ff;
49+
box-shadow: var(--theme-shadow);
50+
position: relative;
51+
overflow: hidden;
52+
border-bottom: 8px solid #3600af;
53+
}
54+
55+
body.hub-page-home .is-collapsible__summary,
56+
body.hub-page-games .is-collapsible__summary,
57+
body.hub-page-samples .is-collapsible__summary,
58+
body.hub-page-tools .is-collapsible__summary {
59+
color: #ffffff;
60+
background: transparent;
61+
border-bottom: 0;
62+
position: static;
63+
padding: 8px 12px;
64+
margin: 0;
65+
border-radius: 0;
66+
display: inline-flex;
67+
align-items: center;
68+
}
69+
70+
body.hub-page-home .is-collapsible__summary::before,
71+
body.hub-page-games .is-collapsible__summary::before,
72+
body.hub-page-samples .is-collapsible__summary::before,
73+
body.hub-page-tools .is-collapsible__summary::before {
74+
color: #ffffff;
75+
font-size: 2em;
76+
width: auto;
77+
line-height: 1;
78+
vertical-align: middle;
79+
margin-right: 4px;
80+
}
81+
82+
body.hub-page-home .is-collapsible[open] > .is-collapsible__summary,
83+
body.hub-page-games .is-collapsible[open] > .is-collapsible__summary,
84+
body.hub-page-samples .is-collapsible[open] > .is-collapsible__summary,
85+
body.hub-page-tools .is-collapsible[open] > .is-collapsible__summary {
86+
position: absolute;
87+
top: 15px;
88+
left: 15px;
89+
z-index: 4;
90+
}
91+
92+
body.hub-page-home .is-collapsible__content,
93+
body.hub-page-games .is-collapsible__content,
94+
body.hub-page-samples .is-collapsible__content,
95+
body.hub-page-tools .is-collapsible__content {
96+
padding: 0;
97+
}
98+
99+
body.hub-page-home .is-collapsible__content > .page-shell,
100+
body.hub-page-samples .is-collapsible__content > .page-shell {
101+
margin-top: 16px;
102+
}
103+
104+
body.hub-page-home .is-collapsible:not([open]) > .is-collapsible__summary,
105+
body.hub-page-games .is-collapsible:not([open]) > .is-collapsible__summary,
106+
body.hub-page-samples .is-collapsible:not([open]) > .is-collapsible__summary,
107+
body.hub-page-tools .is-collapsible:not([open]) > .is-collapsible__summary {
108+
background: transparent;
109+
color: #ffffff;
110+
}

src/engine/theme/header.css

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,3 +67,54 @@
6767
font-weight: 700;
6868
color: var(--theme-muted);
6969
}
70+
71+
.toolboxaid-theme-header .site-tagline {
72+
color: #3600af;
73+
font-size: clamp(3px, 3vw, 21px);
74+
letter-spacing: 2px;
75+
text-shadow: 2px 2px 4px #3600af;
76+
}
77+
78+
body.hub-page-home .toolboxaid-theme-header,
79+
body.hub-page-games .toolboxaid-theme-header,
80+
body.hub-page-samples .toolboxaid-theme-header,
81+
body.hub-page-tools .toolboxaid-theme-header {
82+
background: #3600af;
83+
border-bottom: 0;
84+
padding: 0;
85+
}
86+
87+
body.hub-page-home .toolboxaid-theme-header .header-content,
88+
body.hub-page-games .toolboxaid-theme-header .header-content,
89+
body.hub-page-samples .toolboxaid-theme-header .header-content,
90+
body.hub-page-tools .toolboxaid-theme-header .header-content {
91+
gap: 0;
92+
}
93+
94+
body.hub-page-home .toolboxaid-theme-header #image,
95+
body.hub-page-games .toolboxaid-theme-header #image,
96+
body.hub-page-samples .toolboxaid-theme-header #image,
97+
body.hub-page-tools .toolboxaid-theme-header #image {
98+
border-radius: 0;
99+
box-shadow: none;
100+
}
101+
102+
body.hub-page-home .toolboxaid-theme-header #tagline,
103+
body.hub-page-games .toolboxaid-theme-header #tagline,
104+
body.hub-page-samples .toolboxaid-theme-header #tagline,
105+
body.hub-page-tools .toolboxaid-theme-header #tagline {
106+
width: 100%;
107+
padding: 0;
108+
margin: 0;
109+
border: 0;
110+
border-radius: 0;
111+
box-shadow: none;
112+
border-bottom: 8px solid #3600af;
113+
}
114+
115+
body.hub-page-home .toolboxaid-theme-header .header-content > div,
116+
body.hub-page-games .toolboxaid-theme-header .header-content > div,
117+
body.hub-page-samples .toolboxaid-theme-header .header-content > div,
118+
body.hub-page-tools .toolboxaid-theme-header .header-content > div {
119+
border-bottom: 8px solid #3600af;
120+
}

0 commit comments

Comments
 (0)