Skip to content

Space header: tighten the description→body gap - #453

Merged
rbuergi merged 1 commit into
mainfrom
fix/space-header-spacing
Jul 13, 2026
Merged

rbuergi merged 1 commit into
mainfrom
fix/space-header-spacing

Conversation

@rbuergi

@rbuergi rbuergi commented Jul 13, 2026

Copy link
Copy Markdown
Contributor

The space header's bottom padding + divider + the body's 24px top padding stacked into a ~56px gap between a space's description and its first body element (visible on the course landing pages). Trims header bottom padding 16→8 and body top padding 24→12 — a modest global density improvement. No change to the header structure or the in-body catalog's bottom breathing room.

🤖 Generated with Claude Code

The header's bottom padding + divider + the body's 24px top padding stacked into an
airy gap between a space's description and its first content element. Trim the header
bottom padding (16->8) and the body top padding (24->12) — a modest, global density
improvement; no change to the header's own structure or the catalog's bottom room.

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

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR reduces vertical whitespace between a Space header (description area) and the start of the Space body content to improve global page density (notably on course landing pages).

Changes:

  • Reduced Space header container vertical padding to tighten spacing before the divider.
  • Reduced Space body top padding so it doesn’t stack with the header spacing.
  • Updated inline comments to explain the spacing rationale.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 270 to 272
var container = Controls.Stack
.WithStyle("flex-shrink: 0; padding: 24px 0 16px 0; width: 100%;");
.WithStyle("flex-shrink: 0; padding: 20px 0 8px 0; width: 100%;");

@github-actions

Copy link
Copy Markdown
Contributor

Test Results (shard 2)

672 tests  ±0   383 ✅ ±0   1m 25s ⏱️ -11s
 10 suites ±0   289 💤 ±0 
 10 files   ±0     0 ❌ ±0 

Results for commit 430d0fb. ± Comparison against base commit 5b52a2b.

@github-actions

Copy link
Copy Markdown
Contributor

Test Results (shard 3)

719 tests  ±0   718 ✅ ±0   2m 40s ⏱️ ±0s
 10 suites ±0     1 💤 ±0 
 10 files   ±0     0 ❌ ±0 

Results for commit 430d0fb. ± Comparison against base commit 5b52a2b.

@github-actions

Copy link
Copy Markdown
Contributor

Test Results (shard 4)

1 596 tests  ±0   1 596 ✅ ±0   3m 8s ⏱️ +13s
   10 suites ±0       0 💤 ±0 
   10 files   ±0       0 ❌ ±0 

Results for commit 430d0fb. ± Comparison against base commit 5b52a2b.

@github-actions

Copy link
Copy Markdown
Contributor

Test Results (shard 1)

1 069 tests  ±0   1 064 ✅ ±0   5m 8s ⏱️ -18s
    9 suites ±0       5 💤 ±0 
    9 files   ±0       0 ❌ ±0 

Results for commit 430d0fb. ± Comparison against base commit 5b52a2b.

@github-actions

Copy link
Copy Markdown
Contributor

Test Results (shard 5)

  9 files  ±  0    9 suites  ±0   5m 7s ⏱️ +57s
804 tests +203  803 ✅ +203  1 💤 ±0  0 ❌ ±0 
852 runs  +242  851 ✅ +242  1 💤 ±0  0 ❌ ±0 

Results for commit 430d0fb. ± Comparison against base commit 5b52a2b.

This pull request removes 21 and adds 224 tests. Note that renamed tests count towards both.
MeshWeaver.Persistence.Test.CourseCellExecutionTest ‑ EveryGreenCell_ExecutesInKernel(relativePath: "CSharpBasics/Module01/Theory/01-HelloControls.md", cellId: "stackoflabels")
MeshWeaver.Persistence.Test.CourseCellExecutionTest ‑ EveryGreenCell_ExecutesInKernel(relativePath: "CSharpBasics/Module02/Theory/01-WorkingWithData.md", cellId: "productgrid")
MeshWeaver.Persistence.Test.MapContentCollectionTest ‑ MapContentCollection_AccessContent_ResolvesPathCorrectly
MeshWeaver.Persistence.Test.MapContentCollectionTest ‑ MapContentCollection_AccessNestedContent_ResolvesPathCorrectly
MeshWeaver.Persistence.Test.MapContentCollectionTest ‑ MapContentCollection_GetAllConfigs_ReturnsAllCollections
MeshWeaver.Persistence.Test.MapContentCollectionTest ‑ MapContentCollection_RegistersCollectionWithCorrectBasePath
MeshWeaver.Persistence.Test.MapContentCollectionTest ‑ MapContentCollection_WithEmptySubdirectory_UsesSourceBasePath
MeshWeaver.Persistence.Test.MapContentCollectionTest ‑ MapContentCollection_WithMissingSourceCollection_ReturnsNullConfig
MeshWeaver.Persistence.Test.MapContentCollectionTest ‑ UcrContentPath_WithExplicitCollection_UsesSpecifiedCollection
MeshWeaver.Persistence.Test.MapContentCollectionTest ‑ UcrContentPath_WithoutSlash_UsesDefaultContentCollection
…
MeshWeaver.Hosting.Monolith.Test.CessionLayoutAreaTest ‑ MotorXL_LayoutArea_ReturnsContent
MeshWeaver.Hosting.Monolith.Test.ChangeFeedVersionGateTest ‑ ReceivedOwnerWrites_DoNotResubscribe_ButStaleAnnouncementDoes
MeshWeaver.Hosting.Monolith.Test.CodeEditRecompileTest ‑ CodeEdit_ExplicitRelease_IsUpToDate_RecompilesOnSourceChange
MeshWeaver.Hosting.Monolith.Test.CodeEditRecompileTest ‑ FailedCompile_PreservesErrorLogAndDoesNotCreateRelease
MeshWeaver.Hosting.Monolith.Test.CodeEditRecompileTest ‑ IsDirty_FlipsTrueOnSourceEdit_FalseAfterCompile
MeshWeaver.Hosting.Monolith.Test.CodeEditRecompileTest ‑ NodeType_RequestedReleasePath_PinsToHistoricalRelease
MeshWeaver.Hosting.Monolith.Test.CodeEditRecompileTest ‑ PressingCompileButton_SetsRequestedReleaseAt_AndProducesNewRelease
MeshWeaver.Hosting.Monolith.Test.CompileFinishAndDisposeTest ‑ FailedCompile_StillReachesTerminalDisposedState_NotStuck
MeshWeaver.Hosting.Monolith.Test.CompileFinishAndDisposeTest ‑ TriggeredCompile_FinishesGeneration_AndActivityReachesTerminalDisposedState
MeshWeaver.Hosting.Monolith.Test.CompileLeafStabilityTest ‑ CompileAndGetConfigurations_FreshNodeTypes_AllEmitWithinBound
…

@github-actions

Copy link
Copy Markdown
Contributor

Test Results (shard 0)

938 tests  ±0   938 ✅ ±0   6m 28s ⏱️ +12s
 11 suites ±0     0 💤 ±0 
 11 files   ±0     0 ❌ ±0 

Results for commit 430d0fb. ± Comparison against base commit 5b52a2b.

@github-actions

Copy link
Copy Markdown
Contributor

Test Results

   59 files  ±  0     59 suites  ±0   23m 58s ⏱️ +52s
5 798 tests +203  5 502 ✅ +203  296 💤 ±0  0 ❌ ±0 
5 846 runs  +242  5 550 ✅ +242  296 💤 ±0  0 ❌ ±0 

Results for commit 430d0fb. ± Comparison against base commit 5b52a2b.

This pull request removes 21 and adds 224 tests. Note that renamed tests count towards both.
MeshWeaver.Persistence.Test.CourseCellExecutionTest ‑ EveryGreenCell_ExecutesInKernel(relativePath: "CSharpBasics/Module01/Theory/01-HelloControls.md", cellId: "stackoflabels")
MeshWeaver.Persistence.Test.CourseCellExecutionTest ‑ EveryGreenCell_ExecutesInKernel(relativePath: "CSharpBasics/Module02/Theory/01-WorkingWithData.md", cellId: "productgrid")
MeshWeaver.Persistence.Test.MapContentCollectionTest ‑ MapContentCollection_AccessContent_ResolvesPathCorrectly
MeshWeaver.Persistence.Test.MapContentCollectionTest ‑ MapContentCollection_AccessNestedContent_ResolvesPathCorrectly
MeshWeaver.Persistence.Test.MapContentCollectionTest ‑ MapContentCollection_GetAllConfigs_ReturnsAllCollections
MeshWeaver.Persistence.Test.MapContentCollectionTest ‑ MapContentCollection_RegistersCollectionWithCorrectBasePath
MeshWeaver.Persistence.Test.MapContentCollectionTest ‑ MapContentCollection_WithEmptySubdirectory_UsesSourceBasePath
MeshWeaver.Persistence.Test.MapContentCollectionTest ‑ MapContentCollection_WithMissingSourceCollection_ReturnsNullConfig
MeshWeaver.Persistence.Test.MapContentCollectionTest ‑ UcrContentPath_WithExplicitCollection_UsesSpecifiedCollection
MeshWeaver.Persistence.Test.MapContentCollectionTest ‑ UcrContentPath_WithoutSlash_UsesDefaultContentCollection
…
MeshWeaver.Hosting.Monolith.Test.CessionLayoutAreaTest ‑ MotorXL_LayoutArea_ReturnsContent
MeshWeaver.Hosting.Monolith.Test.ChangeFeedVersionGateTest ‑ ReceivedOwnerWrites_DoNotResubscribe_ButStaleAnnouncementDoes
MeshWeaver.Hosting.Monolith.Test.CodeEditRecompileTest ‑ CodeEdit_ExplicitRelease_IsUpToDate_RecompilesOnSourceChange
MeshWeaver.Hosting.Monolith.Test.CodeEditRecompileTest ‑ FailedCompile_PreservesErrorLogAndDoesNotCreateRelease
MeshWeaver.Hosting.Monolith.Test.CodeEditRecompileTest ‑ IsDirty_FlipsTrueOnSourceEdit_FalseAfterCompile
MeshWeaver.Hosting.Monolith.Test.CodeEditRecompileTest ‑ NodeType_RequestedReleasePath_PinsToHistoricalRelease
MeshWeaver.Hosting.Monolith.Test.CodeEditRecompileTest ‑ PressingCompileButton_SetsRequestedReleaseAt_AndProducesNewRelease
MeshWeaver.Hosting.Monolith.Test.CompileFinishAndDisposeTest ‑ FailedCompile_StillReachesTerminalDisposedState_NotStuck
MeshWeaver.Hosting.Monolith.Test.CompileFinishAndDisposeTest ‑ TriggeredCompile_FinishesGeneration_AndActivityReachesTerminalDisposedState
MeshWeaver.Hosting.Monolith.Test.CompileLeafStabilityTest ‑ CompileAndGetConfigurations_FreshNodeTypes_AllEmitWithinBound
…

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