···11+## Context
22+33+The recent settings redesign established a cleaner creator UI language with fewer nested surfaces and less visual stacking, but the form builder still uses a heavier panel treatment. Because the builder is one of the most frequently used creator surfaces, the mismatch is now more noticeable.
44+55+The current builder also lets the block list define page height. On long forms, the left column keeps extending downward while the right editor area often leaves large empty zones in the viewport, making the whole page feel unbalanced and forcing more scrolling than necessary.
66+77+## Goals / Non-Goals
88+99+**Goals:**
1010+- Make the form builder feel visually closer to the newer settings UI.
1111+- Reduce unnecessary surface layering, nested cards, and decorative separation in the builder.
1212+- Keep the master-detail editing model intact.
1313+- Make the left block/navigation column scroll independently for long forms.
1414+- Preserve the existing editing, publishing, and response-review workflows.
1515+1616+**Non-Goals:**
1717+- Changing the supported block types or editing capabilities.
1818+- Reworking form validation, persistence, or public runner behavior.
1919+- Turning the builder into a fully split-pane resizable layout.
2020+- Introducing a new design system or dependency.
2121+2222+## Decisions
2323+2424+### 1. Keep the builder as a two-column master-detail layout
2525+The builder should stay structurally familiar: block navigation on the left, detail editor on the right. The change is about better balance and calmer presentation, not a new interaction model.
2626+2727+**Alternatives considered:**
2828+- Collapse into a single-column accordion/editor flow: rejected because it would slow down navigation for larger forms.
2929+- Move block navigation into a drawer: rejected because constant access to block order is central to the builder experience.
3030+3131+### 2. Make the left block list independently scrollable within the viewport
3232+Instead of letting the block list continue growing the whole page, the builder should constrain the navigation column and allow its list area to scroll independently.
3333+3434+**Why:**
3535+- Long forms stay manageable.
3636+- The right editor panel remains meaningfully present while navigating deep block lists.
3737+- The page avoids becoming disproportionately tall.
3838+3939+**Alternatives considered:**
4040+- Let the entire page scroll only: rejected because it creates large empty regions beside shorter editor panels.
4141+- Make both panes fixed-height and independently scrollable everywhere: rejected because the editor side should remain more natural for variable settings content.
4242+4343+### 3. Reduce nested surface treatments inside the builder
4444+The builder should remove or soften extra card-within-card patterns, excessive borders, and layered elevation where they are not helping comprehension.
4545+4646+**Why:**
4747+- Matches the flatter, more intentional settings redesign.
4848+- Keeps focus on content hierarchy rather than container hierarchy.
4949+- Makes dense editing screens feel lighter.
5050+5151+**Alternatives considered:**
5252+- Remove all panel distinction entirely: rejected because the builder still benefits from clear left/right structural separation.
5353+5454+### 4. Use section dividers and spacing before adding new containers
5555+Where the current UI uses stacked boxes for separation, prefer spacing, typographic hierarchy, and divider lines first.
5656+5757+**Why:**
5858+- Produces a calmer editing surface.
5959+- Reduces visual clutter without losing structure.
6060+6161+### 5. Preserve mobile friendliness even if scroll behavior is desktop-oriented
6262+Independent pane scrolling should be primarily a desktop/tablet enhancement. On smaller screens, the builder should remain functional and avoid brittle fixed-height behavior.
6363+6464+**Alternatives considered:**
6565+- Force the same constrained-height behavior on every breakpoint: rejected because it risks awkward small-screen interactions.
6666+6767+## Risks / Trade-offs
6868+6969+- **Independent left-column scrolling can feel disconnected if not visually obvious** → Keep the navigation panel boundary clear and ensure the scroll region is naturally discoverable.
7070+- **Reducing layers too aggressively can make sections blur together** → Preserve strong hierarchy with headings, spacing, and selective borders.
7171+- **Viewport-constrained heights can be fragile with sticky headers or browser chrome** → Use resilient CSS sizing and test across common creator screen sizes.
7272+- **Long editor content may still require page scrolling** → Accept this; the primary problem to solve is runaway page height from the block list, not removing page scroll entirely.
7373+7474+## Migration Plan
7575+7676+- No database or API migration is required.
7777+- Update builder layout and supporting components together so the new visual system and scroll behavior ship consistently.
7878+- If rollback is needed, the builder can revert to the previous layout without affecting saved data.
7979+8080+## Open Questions
8181+8282+- Whether the left column should have a fixed max height or a viewport-relative sticky layout. Initial recommendation: viewport-relative constrained layout.
8383+- Whether add-block controls should remain inside the same scroll region as the block list or be pinned within the sidebar. Initial recommendation: keep them visible without excessive scrolling if practical.
···11+## Why
22+33+The settings redesign made creator surfaces feel calmer and more intentional, while the form builder still feels comparatively layered and visually heavy. The builder also becomes awkward on long forms because the left block list keeps extending the page while the right editing panel leaves large empty areas, making navigation and editing less efficient.
44+55+## What Changes
66+77+- Refine the form builder visual hierarchy to reduce stacked surfaces, nested cards, and other overly layered treatments.
88+- Bring the builder’s surface language closer to the newer settings UI so creator pages feel more consistent.
99+- Keep the builder’s master-detail structure while simplifying how sections, panels, and controls are visually separated.
1010+- Make the left block list independently scrollable so large forms do not make the entire page excessively tall.
1111+- Keep the right editing panel usable alongside long block lists without leaving most of the viewport empty during deep scrolling.
1212+- Preserve existing builder capabilities for block editing, publishing, settings, and responses while improving layout behavior.
1313+1414+## Capabilities
1515+1616+### New Capabilities
1717+- None.
1818+1919+### Modified Capabilities
2020+- `conversational-form-builder`: Update builder layout behavior and presentation so it stays editing-focused, visually lighter, and more usable for long forms.
2121+- `minimal-ui-surfaces`: Extend the minimal-surface design approach to the builder so creator UI uses fewer layered containers and less decorative separation.
2222+2323+## Impact
2424+2525+- Affected areas: builder layout, builder panel composition, block list scrolling behavior, and shared creator surface styling.
2626+- Likely code: `components/form-builder.tsx`, `components/form-builder-panels.tsx`, related UI components, and global surface tokens/styles.
2727+- No expected database or API changes.
···11+## MODIFIED Requirements
22+33+### Requirement: Builder exposes block editing through a master-detail layout
44+The system SHALL present a builder interface with an ordered block list for navigation and reordering and a separate editor panel for the selected block's settings. For long forms, the builder SHALL keep the navigation list usable without making the entire page grow unbounded from the block column alone.
55+66+#### Scenario: Creator selects a block
77+- **WHEN** an authenticated creator selects a block in the block list
88+- **THEN** the system displays that block's editable settings in the editor panel
99+1010+#### Scenario: Creator works on a long form
1111+- **WHEN** an authenticated creator opens a form with many blocks
1212+- **THEN** the builder keeps the block list navigable without requiring the full page height to expand indefinitely with the left column
1313+1414+### Requirement: Builder chrome stays focused on editing
1515+The system SHALL present the creator builder with concise, editing-focused chrome that emphasizes form status, navigation, and editing actions. The builder SHALL avoid promotional hero copy, decorative overview treatments, and overly layered surface nesting that compete with the editing workflow.
1616+1717+#### Scenario: Creator opens the builder
1818+- **WHEN** an authenticated creator opens an owned form in the builder
1919+- **THEN** the system shows the form title, current status, and core actions needed to edit, publish, copy the link, or review responses without marketing-style framing
2020+2121+#### Scenario: Creator reads helper copy in the builder
2222+- **WHEN** an authenticated creator views builder headings, descriptions, or empty states
2323+- **THEN** the system uses short task-oriented copy that explains the current editing context without persuasive or ornamental language
2424+2525+#### Scenario: Creator views builder surfaces
2626+- **WHEN** an authenticated creator uses the builder
2727+- **THEN** the system organizes the layout with restrained layering and clear section hierarchy rather than stacked decorative containers
···11+## ADDED Requirements
22+33+### Requirement: Builder uses restrained surface layering
44+The system SHALL present the creator builder with a minimal surface hierarchy that prefers spacing, dividers, and clear typography over multiple nested cards or heavy stacked containers.
55+66+#### Scenario: Creator compares builder sections
77+- **WHEN** an authenticated creator views the builder navigation and editing areas
88+- **THEN** the system separates major regions clearly without relying on excessive nested surface treatments
99+1010+#### Scenario: Creator scans dense builder content
1111+- **WHEN** an authenticated creator works through builder settings for a form with many blocks
1212+- **THEN** the builder maintains a calm, low-clutter presentation instead of compounding layered boxes within the editing flow
···11+## 1. Layout structure
22+33+- [x] 1.1 Refine the builder’s top-level layout to use a calmer, less layered visual structure.
44+- [x] 1.2 Simplify nested builder panels and section containers where spacing or dividers can replace extra surfaces.
55+- [x] 1.3 Align the builder’s visual language with the flatter settings UI while preserving master-detail editing.
66+77+## 2. Long-form builder behavior
88+99+- [x] 2.1 Constrain the left builder column so the block list does not grow the entire page indefinitely.
1010+- [x] 2.2 Make the block list independently scrollable for forms with many blocks.
1111+- [x] 2.3 Keep add-block controls and block navigation usable within the updated sidebar behavior.
1212+- [x] 2.4 Verify the right editor panel still works naturally with variable-length settings content.
1313+1414+## 3. Builder polish
1515+1616+- [x] 3.1 Review builder headings, dividers, and supporting copy so the screen feels concise and editing-focused.
1717+- [x] 3.2 Remove or soften decorative treatments that make the builder feel heavier than settings.
1818+- [x] 3.3 Ensure the updated layout remains usable on smaller screens without brittle fixed-height behavior.
1919+2020+## 4. Verification
2121+2222+- [x] 4.1 Verify long forms no longer make the builder page excessively tall from the left column alone.
2323+- [x] 4.2 Verify block selection, reordering, adding, and settings editing still work in the new layout.
2424+- [x] 4.3 Verify the builder feels visually consistent with the settings redesign.
2525+- [x] 4.4 Run the production build and fix any layout or type issues introduced by the change.
···3131- **THEN** the system removes that block from the current form structure
32323333### Requirement: Builder exposes block editing through a master-detail layout
3434-The system SHALL present a builder interface with an ordered block list for navigation and reordering and a separate editor panel for the selected block's settings.
3434+The system SHALL present a builder interface with an ordered block list for navigation and reordering and a separate editor panel for the selected block's settings. For long forms, the builder SHALL keep the navigation list usable without making the entire page grow unbounded from the block column alone.
35353636#### Scenario: Creator selects a block
3737- **WHEN** an authenticated creator selects a block in the block list
3838- **THEN** the system displays that block's editable settings in the editor panel
3939+4040+#### Scenario: Creator works on a long form
4141+- **WHEN** an authenticated creator opens a form with many blocks
4242+- **THEN** the builder keeps the block list navigable without requiring the full page height to expand indefinitely with the left column
39434044### Requirement: Question blocks support required state and type-specific configuration
4145The system SHALL allow question blocks to be marked as required and SHALL support type-specific configuration for placeholders and choice options. Text blocks SHALL NOT be answerable and SHALL NOT expose a required setting.
···6468- **THEN** the system marks the form as unavailable for new public submissions
65696670### Requirement: Builder chrome stays focused on editing
6767-The system SHALL present the creator builder with concise, editing-focused chrome that emphasizes form status, navigation, and editing actions. The builder SHALL avoid promotional hero copy or decorative overview treatments that compete with the editing workflow.
7171+The system SHALL present the creator builder with concise, editing-focused chrome that emphasizes form status, navigation, and editing actions. The builder SHALL avoid promotional hero copy, decorative overview treatments, and overly layered surface nesting that compete with the editing workflow.
68726973#### Scenario: Creator opens the builder
7074- **WHEN** an authenticated creator opens an owned form in the builder
···7377#### Scenario: Creator reads helper copy in the builder
7478- **WHEN** an authenticated creator views builder headings, descriptions, or empty states
7579- **THEN** the system uses short task-oriented copy that explains the current editing context without persuasive or ornamental language
8080+8181+#### Scenario: Creator views builder surfaces
8282+- **WHEN** an authenticated creator uses the builder
8383+- **THEN** the system organizes the layout with restrained layering and clear section hierarchy rather than stacked decorative containers
76847785### Requirement: Creator can configure post-submission completion content
7886The system SHALL allow an authenticated creator to edit the completion content for an owned form, including a completion heading, supporting message, and an optional follow-up link label and URL.
+11
openspec/specs/minimal-ui-surfaces/spec.md
···2525#### Scenario: Creator has no forms yet
2626- **WHEN** an authenticated creator opens an empty dashboard
2727- **THEN** the system shows a concise empty state that explains the next action without sales-oriented or poetic product language
2828+2929+### Requirement: Builder uses restrained surface layering
3030+The system SHALL present the creator builder with a minimal surface hierarchy that prefers spacing, dividers, and clear typography over multiple nested cards or heavy stacked containers.
3131+3232+#### Scenario: Creator compares builder sections
3333+- **WHEN** an authenticated creator views the builder navigation and editing areas
3434+- **THEN** the system separates major regions clearly without relying on excessive nested surface treatments
3535+3636+#### Scenario: Creator scans dense builder content
3737+- **WHEN** an authenticated creator works through builder settings for a form with many blocks
3838+- **THEN** the builder maintains a calm, low-clutter presentation instead of compounding layered boxes within the editing flow