Skip to content

Conversation

@pftg
Copy link
Member

@pftg pftg commented Sep 26, 2025

Summary by CodeRabbit

  • New Features

    • Improved Services pages with consistent, full-height sections and standalone variants for hero, overview, clients, and CTA.
  • Style

    • Added utilities for form padding, focus transitions, flexible gaps, and standard body text.
    • Consolidated button styles; no functional changes expected.
    • Refined rich text and grid/homepage layouts to target core components more precisely.
    • Removed legacy builder-specific and node-specific overrides, which may slightly adjust spacing or widths in edge cases.
  • Chores

    • CSS cleanup and duplication removal for maintainability.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Sep 26, 2025

Caution

Review failed

The pull request is closed.

Walkthrough

CSS refactors narrow selectors from FL-prefixed classes to custom .c-* classes, add Services component styles (including duplicates), introduce utility classes, migrate button styles, remove FL-specific layout/form/animation rules, delete a node-patterns stylesheet, drop several node width rules, and add Services classes to a services template.

Changes

Cohort / File(s) Summary
Selector scope narrowed (.fl- → .c-*)*
themes/beaver/assets/css/beaver-grid-layout.css, themes/beaver/assets/css/components/c-typography.scss, themes/beaver/assets/css/fl-homepage-layout.css
Removed .fl-* selectors from grouped rules, limiting styles to .c-* classes (rows, rich-text, columns).
Services feature styling + markup
themes/beaver/assets/css/component-bundle.css, themes/beaver/layouts/services/single.html
Added Services layout styles (hero, overview, clients, CTA), including standalone variants; identical block duplicated once. Applied new .c-services-* classes in the services template.
Utility classes added
themes/beaver/assets/css/components/css-utilities.scss
Introduced .u-form-field-padding, .u-form-field-transition, .u-gap-md, .u-flex-gap, .u-text-body.
Buttons migration
themes/beaver/assets/css/components.css
Removed base .c-button visual/layout props and .c-button--large; comments indicate migration to buttons-migration.css.
FL-specific/layout rules removed
themes/beaver/assets/css/fl-component-layout.css, themes/beaver/assets/css/fl-node-patterns.css, themes/beaver/assets/css/fl-service-detail-layout.css, themes/beaver/assets/css/fl-use-cases-layout.css
Deleted video fallback, form/animation styles, node-specific widths; fully removed fl-node-patterns.css; dropped fixed widths for specific .fl-node-* selectors.

Sequence Diagram(s)

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

Suggested reviewers

  • dgorodnichy

Poem

Hop, hop—new classes in a row,
Services stand tall, in tidy flow.
FL leaves the meadow, C sprouts through,
Utilities bloom in fresh-set dew.
Buttons migrate, patterns prune—
Thump-thump! CSS sings a cleaner tune. 🐰✨

✨ Finishing touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch refact/components-fixes-3

📜 Recent review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 53b31b0 and 6317806.

📒 Files selected for processing (11)
  • themes/beaver/assets/css/beaver-grid-layout.css (2 hunks)
  • themes/beaver/assets/css/component-bundle.css (1 hunks)
  • themes/beaver/assets/css/components.css (2 hunks)
  • themes/beaver/assets/css/components/c-typography.scss (1 hunks)
  • themes/beaver/assets/css/components/css-utilities.scss (1 hunks)
  • themes/beaver/assets/css/fl-component-layout.css (0 hunks)
  • themes/beaver/assets/css/fl-homepage-layout.css (1 hunks)
  • themes/beaver/assets/css/fl-node-patterns.css (0 hunks)
  • themes/beaver/assets/css/fl-service-detail-layout.css (0 hunks)
  • themes/beaver/assets/css/fl-use-cases-layout.css (0 hunks)
  • themes/beaver/layouts/services/single.html (4 hunks)

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

pftg added 22 commits September 26, 2025 19:40
- Removed .fl-row from dual-class pseudo-element declarations
- Keep only .c-row BEM classes for consistency
- Tests pass, build clean
- Removed .fl-row:after from dual-class pseudo-element declarations
- Keep only .c-row:after BEM class for consistency
- FL-row dual-class cleanup completed for beaver-grid-layout.css
- Removed .fl-col from dual-class column declarations
- Keep only .c-column BEM class for consistency
- FL-column dual-class cleanup completed
- Removed .fl-photo from dual-class photo declarations
- Keep only .c-photo BEM class for consistency
- FL-photo dual-class cleanup completed
- Removed .fl-rich-text from dual-class typography declarations
- Keep only .c-rich-text BEM class for consistency
- FL-rich-text dual-class cleanup completed
- Added .c-services-hero class to hero section div alongside FL classes
- Implemented shameless green CSS with critical FL-Builder styles
- Added min-height: 100vh and display: flex for proper layout
- Tests passing - visual regression resolved
- Dual-class approach maintains FL compatibility
- Added .c-services-overview class to overview section div alongside FL classes
- Implemented shameless green CSS with FL-Builder flexbox styles
- Added min-height: 100vh and display: flex for consistency
- Tests passing - dual-class approach working well
- 2 of 5 priority sections now have BEM equivalents
- Add .c-services-clients class to client case studies section at line 178
- Apply shameless green FL-Builder replication with flexbox styles
- Maintain visual parity with existing FL-Builder layout
- Visual regression tests pass (0 failures)
- Add .c-services-cta class to final CTA section at line 260
- Apply shameless green FL-Builder replication pattern
- Maintain visual parity with existing FL-Builder layout
- Visual regression tests pass (0 failures)
- Complete priority components migration for services template
- Step 1 of flocking rules: identify most alike patterns
- Remove incomplete .c-button definition from components.css
- Full definition remains in buttons-migration.css
- Eliminates duplication between files
- Remove incomplete .c-button--large from components.css
- Keep complete definition in buttons-migration.css
- Eliminates padding conflict (32px vs 40px horizontal)
- Single source of truth for large button styling
- Add .u-form-field-padding utility (padding: 0.75rem 1rem)
- Add .u-form-field-transition utility for focus states
- Consolidates 3 duplicate padding patterns
- Consolidates 3 duplicate transition patterns
- Prepared for field pattern replacement
- Add .u-gap-md utility (gap: 1rem)
- Add .u-flex-gap utility (display: flex + gap: 1rem)
- Consolidates 10+ duplicate gap: 1rem patterns
- Consolidates 5+ duplicate flex + gap combinations
- Ready for pattern replacement across components
* Add .u-text-body utility for font-size: 1rem + line-height: 1.5
* Consolidates 8+ duplicate instances found in forms.css
* Common pattern used across form fields and controls
- Remove .fl-animation, .fl-animated classes (confirmed unused)
- Eliminate 8 lines of animation-related CSS
- First step in FL-Builder CSS cleanup to reduce file size
- Remove .fl-bg-video-fallback class (confirmed unused)
- Eliminate 9 lines of background video CSS
- Continue FL-Builder CSS cleanup
- Remove .fl-form-field, .fl-form-error, .fl-form-error-message, .fl-form-button-disabled
- Eliminate 20 lines of form-related CSS (confirmed unused)
- Continue FL-Builder CSS size reduction
- Removed single-occurrence FL node pattern from fl-use-cases-layout.css
- Pattern only had width: 25% rule
- Tests passed: 39 runs, 57 assertions, 0 failures
- Part of Phase 3 FL-Builder cleanup
- Removed single-occurrence FL node pattern from fl-component-layout.css
- Pattern only had width: 100% rule
- Tests passed: 39 runs, 57 assertions, 0 failures
- Part of Phase 3 FL-Builder cleanup
- Removed single-occurrence FL node pattern from fl-component-layout.css
- Pattern only had width: 26% rule
- Tests passed: 39 runs, 57 assertions, 0 failures
- Part of Phase 3 FL-Builder cleanup
@pftg pftg force-pushed the refact/components-fixes-3 branch from 88b0781 to 6317806 Compare September 26, 2025 17:40
@pftg pftg requested a review from Copilot September 26, 2025 17:41
Copy link

Copilot AI left a comment

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 implements a systematic refactoring to clean up CSS patterns and consolidate duplicate styles by introducing BEM-style components and utility classes. The changes focus on removing redundant FL-Builder-specific styles while maintaining functionality.

  • Add new component classes (c-services-hero, c-services-overview, etc.) to HTML templates
  • Remove unused CSS rules and consolidate duplicate patterns into utility classes
  • Eliminate entire CSS files that contained redundant styles (fl-node-patterns.css)

Reviewed Changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
themes/beaver/layouts/services/single.html Adds BEM component classes to existing FL-Builder div elements
themes/beaver/assets/css/fl-use-cases-layout.css Removes unused .fl-node-73fx8mcb9lte width rule
themes/beaver/assets/css/fl-service-detail-layout.css Removes unused .fl-node-2il86phfbmex width rule
themes/beaver/assets/css/fl-node-patterns.css Completely removes file containing form-specific FL-Builder styles
themes/beaver/assets/css/fl-homepage-layout.css Consolidates .fl-col selector into existing .c-column rule
themes/beaver/assets/css/fl-component-layout.css Removes multiple unused CSS rules and consolidates selectors
themes/beaver/assets/css/components/css-utilities.scss Adds utility classes for form fields, layout gaps, and typography
themes/beaver/assets/css/components/c-typography.scss Consolidates .fl-rich-text selector into existing .c-rich-text rule
themes/beaver/assets/css/components.css Moves button styles to consolidation file and updates comments
themes/beaver/assets/css/component-bundle.css Adds new services component styles with FL-Builder integration
themes/beaver/assets/css/beaver-grid-layout.css Consolidates .fl-row selectors into existing .c-row rules

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Comment on lines +2821 to +2830
.c-services-hero.fl-row-default-height .fl-row-content-wrap {
min-height: 100vh;
display: flex;
}

/* Services Hero - Pure BEM (Final Consolidation) */
.c-services-hero .fl-row-content-wrap {
min-height: 100vh;
display: flex;
}
Copy link

Copilot AI Sep 26, 2025

Choose a reason for hiding this comment

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

These two selectors have identical styles. The second selector (.c-services-hero .fl-row-content-wrap) is more general and would apply to elements matching the first selector as well. Consider removing the redundant first selector or clarify the distinction between them.

Copilot uses AI. Check for mistakes.
Comment on lines +2833 to +2842
.c-services-overview.fl-row-default-height .fl-row-content-wrap {
min-height: 100vh;
display: flex;
}

/* Services Overview - Pure BEM (Final Consolidation) */
.c-services-overview .fl-row-content-wrap {
min-height: 100vh;
display: flex;
}
Copy link

Copilot AI Sep 26, 2025

Choose a reason for hiding this comment

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

Duplicate CSS rules with identical styles. The more general selector (.c-services-overview .fl-row-content-wrap) makes the first one redundant. Consider consolidating these into a single rule.

Copilot uses AI. Check for mistakes.
Comment on lines +2845 to +2854
.c-services-clients.fl-row-default-height .fl-row-content-wrap {
min-height: 100vh;
display: flex;
}

/* Services Clients - Pure BEM (Final Consolidation) */
.c-services-clients .fl-row-content-wrap {
min-height: 100vh;
display: flex;
}
Copy link

Copilot AI Sep 26, 2025

Choose a reason for hiding this comment

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

Another instance of duplicate CSS rules. The pattern repeats across services components where the more specific selector is redundant when the general one exists.

Copilot uses AI. Check for mistakes.
Comment on lines +2864 to +2879
.c-services-hero-standalone {
min-height: 100vh;
display: flex;
width: 100%;
}

.c-services-overview-standalone {
min-height: 100vh;
display: flex;
width: 100%;
}

.c-services-clients-standalone {
min-height: 100vh;
display: flex;
width: 100%;
Copy link

Copilot AI Sep 26, 2025

Choose a reason for hiding this comment

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

These three standalone component classes have identical styles (min-height: 100vh, display: flex, width: 100%). Consider creating a shared utility class like .u-full-height-flex to reduce duplication.

Suggested change
.c-services-hero-standalone {
min-height: 100vh;
display: flex;
width: 100%;
}
.c-services-overview-standalone {
min-height: 100vh;
display: flex;
width: 100%;
}
.c-services-clients-standalone {
min-height: 100vh;
display: flex;
width: 100%;
/* Utility class for full-height flex containers */
.u-full-height-flex {
min-height: 100vh;
display: flex;
width: 100%;
}
/* Standalone BEM Components use the utility class for shared styles */
.c-services-hero-standalone,
.c-services-overview-standalone,
.c-services-clients-standalone {
/* Add the utility class in markup, or use this selector for shared styles */
/* If additional component-specific styles are needed, add them below */
/* For now, all share the .u-full-height-flex styles */

Copilot uses AI. Check for mistakes.
@pftg pftg merged commit a03475e into master Sep 26, 2025
2 checks passed
@pftg pftg deleted the refact/components-fixes-3 branch September 26, 2025 17:46
@coderabbitai coderabbitai bot mentioned this pull request Sep 29, 2025
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