updates storys 12.2-12.6 for reimplimintation
This commit is contained in:
parent
61068e7eee
commit
b2ff6df18e
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
## Epic Goal
|
## Epic Goal
|
||||||
|
|
||||||
Update the LIBRA for Rights brand identity by implementing the new square logo with Palestinian tatreez patterns and transitioning the color scheme from charcoal/warm gray to an olive green palette that aligns with the new botanical logo design.
|
Update the LIBRA for Rights brand identity by implementing the new square logo with Palestinian tatreez patterns and transitioning the color scheme to a refined dark charcoal and warm gold palette that creates an elegant, professional aesthetic.
|
||||||
|
|
||||||
## Epic Description
|
## Epic Description
|
||||||
|
|
||||||
### Existing System Context
|
### Existing System Context
|
||||||
|
|
||||||
- **Current relevant functionality:** The application uses a horizontal SVG logo (240×60px) in navbar and footer, with a color scheme based on Charcoal (#4A4A42) and Warm Gray (#C9C4BA)
|
- **Current relevant functionality:** The application uses a square PNG logo in navbar and footer, with a color scheme that needs updating
|
||||||
- **Technology stack:** Laravel 12, Livewire 3, Tailwind CSS 4, Flux UI components
|
- **Technology stack:** Laravel 12, Livewire 3, Tailwind CSS 4, Flux UI components
|
||||||
- **Integration points:** Logo appears in navbar, footer, emails, and favicon. Colors are defined in Tailwind config and used throughout Blade components.
|
- **Integration points:** Logo appears in navbar, footer, emails, and favicon. Colors are defined in Tailwind config and used throughout Blade components.
|
||||||
|
|
||||||
|
|
@ -16,64 +16,78 @@ Update the LIBRA for Rights brand identity by implementing the new square logo w
|
||||||
|
|
||||||
**What's being added/changed:**
|
**What's being added/changed:**
|
||||||
|
|
||||||
1. Replace horizontal SVG logo with new square logo featuring Palestinian tatreez (embroidery) patterns
|
1. Update color palette to dark charcoal and warm gold theme
|
||||||
2. Update color palette from charcoal/warm gray to olive green theme
|
2. Adjust CSS for new color scheme
|
||||||
3. Adjust CSS/layouts to accommodate square logo dimensions
|
3. Update all brand assets colors (emails, PDFs)
|
||||||
4. Update all brand assets (favicon, mobile icons, email logo)
|
|
||||||
|
|
||||||
**New Color Palette:**
|
**New Color Palette:**
|
||||||
|
|
||||||
| Color | Old Hex | New Hex | Usage |
|
| Color Name | Hex | Usage |
|
||||||
|-------|---------|---------|-------|
|
|------------|-----|-------|
|
||||||
| Primary | #4A4A42 (Charcoal) | #8AB357 (Olive Green) | Primary backgrounds, accents |
|
| Primary (Dark Charcoal) | `#1B1D1A` | Header/Footer backgrounds |
|
||||||
| Secondary | #C9C4BA (Warm Gray) | #A5C87A (Light Olive) | Secondary backgrounds, borders |
|
| CTA (Warm Gold) | `#A68966` | Buttons, links, accents |
|
||||||
| Background | #E8E4DC (Off-White) | #E8E4DC (Off-White) | Light backgrounds (unchanged) |
|
| Background (Warm Cream) | `#F4F1EA` | Main page background |
|
||||||
| Text | #1A1A1A (Deep Black) | #1A1A1A (Deep Black) | Text, headings (unchanged) |
|
| Text (Forest Green) | `#2D322A` | Headings, body text |
|
||||||
|
| Card (Pure White) | `#FFFFFF` | Card backgrounds |
|
||||||
|
| Active (Olive Green) | `#4A5D23` | Active states, language toggle |
|
||||||
|
|
||||||
|
**Color Variants (for hover/active states):**
|
||||||
|
|
||||||
|
| Variant | Hex | Usage |
|
||||||
|
|---------|-----|-------|
|
||||||
|
| Primary Light | `#2D322A` | Primary hover state |
|
||||||
|
| CTA Hover | `#8A7555` | Button hover state |
|
||||||
|
| CTA Light | `#C4A882` | Light accent |
|
||||||
|
| Active Hover | `#5A7030` | Active state hover |
|
||||||
|
|
||||||
**How it integrates:**
|
**How it integrates:**
|
||||||
|
|
||||||
- Logo files will be placed in `public/images/` replacing existing SVG files
|
|
||||||
- Tailwind CSS color configuration will be updated
|
- Tailwind CSS color configuration will be updated
|
||||||
- Existing Blade components will automatically use new colors via CSS variables
|
- Existing Blade components will automatically use new colors via CSS variables
|
||||||
|
|
||||||
**Success criteria:**
|
**Success criteria:**
|
||||||
|
|
||||||
- New square logo displays correctly in navbar and footer
|
- Color scheme consistently uses new palette across all pages
|
||||||
- Color scheme consistently uses olive green palette across all pages
|
- Professional, elegant appearance maintained
|
||||||
- All favicon and mobile app icons updated
|
|
||||||
- No visual regressions in existing UI components
|
- No visual regressions in existing UI components
|
||||||
|
|
||||||
## Stories
|
## Stories
|
||||||
|
|
||||||
### Story 12.1: Logo Asset Deployment and CSS Layout Updates
|
### Story 12.1: Logo Asset Deployment and CSS Layout Updates
|
||||||
**File:** `story-12.1-logo-asset-deployment.md`
|
**File:** `story-12.1-logo-asset-deployment.md`
|
||||||
|
**Status:** ✅ Completed (no changes needed - logo already deployed)
|
||||||
|
|
||||||
Deploy the new square logo files and update CSS to accommodate square dimensions in navbar, footer, and auth pages. Includes favicon and mobile app icon deployment.
|
Deploy the new square logo files and update CSS to accommodate square dimensions in navbar, footer, and auth pages. Includes favicon and mobile app icon deployment.
|
||||||
|
|
||||||
### Story 12.2: Core CSS Theme Update - Olive Green Palette
|
### Story 12.2: Core CSS Theme Update - Dark Charcoal & Warm Gold Palette
|
||||||
**File:** `story-12.2-core-css-theme-update.md`
|
**File:** `story-12.2-core-css-theme-update.md`
|
||||||
|
**Status:** 🔄 Needs Reimplementation
|
||||||
|
|
||||||
Update Tailwind CSS theme variables from charcoal/warm gray to olive green palette. Add color variants for hover, active, and light states. Maintain backward compatibility aliases.
|
Update Tailwind CSS theme variables to new dark charcoal and warm gold palette. Add color variants for hover, active, and light states.
|
||||||
|
|
||||||
### Story 12.3: Blade Component Color Migration
|
### Story 12.3: Blade Component Color Migration
|
||||||
**File:** `story-12.3-blade-component-color-migration.md`
|
**File:** `story-12.3-blade-component-color-migration.md`
|
||||||
|
**Status:** 🔄 Needs Reimplementation
|
||||||
|
|
||||||
Update all Blade components and pages to use the new olive green palette. Includes navigation, footer, cards, public pages, admin dashboard, and client dashboard components.
|
Update all Blade components and pages to use the new color palette. Includes navigation, footer, cards, public pages, admin dashboard, and client dashboard components.
|
||||||
|
|
||||||
### Story 12.4: Email Template Color and Logo Update
|
### Story 12.4: Email Template Color Update
|
||||||
**File:** `story-12.4-email-template-color-update.md`
|
**File:** `story-12.4-email-template-color-update.md`
|
||||||
|
**Status:** 🔄 Needs Reimplementation
|
||||||
|
|
||||||
Update email templates to use new olive green colors and square logo. Includes theme CSS, header/footer components, button styles, and all notification emails.
|
Update email templates to use new colors. Includes theme CSS, header/footer components, button styles, and all notification emails.
|
||||||
|
|
||||||
### Story 12.5: PDF Template Color and Logo Update
|
### Story 12.5: PDF Template Color Update
|
||||||
**File:** `story-12.5-pdf-template-color-update.md`
|
**File:** `story-12.5-pdf-template-color-update.md`
|
||||||
|
**Status:** 🔄 Needs Reimplementation
|
||||||
|
|
||||||
Update PDF export templates to use new olive green colors and square logo. Includes users export, consultations export, timelines export, and monthly report. Update chart colors in MonthlyReportService.
|
Update PDF export templates to use new colors. Includes users export, consultations export, timelines export, and monthly report. Update chart colors in MonthlyReportService.
|
||||||
|
|
||||||
### Story 12.6: Brand Documentation and Cleanup
|
### Story 12.6: Brand Documentation Update
|
||||||
**File:** `story-12.6-documentation-update.md`
|
**File:** `story-12.6-documentation-update.md`
|
||||||
|
**Status:** ⏳ Blocked (after 12.2-12.5)
|
||||||
|
|
||||||
Update brand documentation (`docs/brand.md`, `docs/logo-generation-instructions.md`, `CLAUDE.md`) to reflect new branding. Update test color assertions. Remove old logo files and cleanup.
|
Update brand documentation (`docs/brand.md`, `CLAUDE.md`, etc.) to reflect new color palette. Update test color assertions. Final cleanup and verification.
|
||||||
|
|
||||||
## Compatibility Requirements
|
## Compatibility Requirements
|
||||||
|
|
||||||
|
|
@ -99,37 +113,39 @@ Update brand documentation (`docs/brand.md`, `docs/logo-generation-instructions.
|
||||||
|
|
||||||
## Technical Notes
|
## Technical Notes
|
||||||
|
|
||||||
### Logo Files Generated
|
|
||||||
|
|
||||||
Located in `logo/` folder, ready for deployment:
|
|
||||||
|
|
||||||
| File | Dimensions | Target Location |
|
|
||||||
|------|------------|-----------------|
|
|
||||||
| `favicon.ico` | 16/32/48px | `public/favicon.ico` |
|
|
||||||
| `favicon-16x16.png` | 16×16 | `public/favicon-16x16.png` |
|
|
||||||
| `favicon-32x32.png` | 32×32 | `public/favicon-32x32.png` |
|
|
||||||
| `apple-touch-icon.png` | 180×180 | `public/apple-touch-icon.png` |
|
|
||||||
| `android-chrome-192x192.png` | 192×192 | `public/android-chrome-192x192.png` |
|
|
||||||
| `android-chrome-512x512.png` | 512×512 | `public/android-chrome-512x512.png` |
|
|
||||||
| `logo-square.png` | 623×628 | `public/images/logo.png` |
|
|
||||||
| `logo-email.png` | 200×200 | `public/images/logo-email.png` |
|
|
||||||
|
|
||||||
### Color Values for Implementation
|
### Color Values for Implementation
|
||||||
|
|
||||||
```css
|
```css
|
||||||
/* New Olive Green Palette */
|
/* New Dark Charcoal & Warm Gold Palette */
|
||||||
--color-primary: #8AB357; /* Olive Green - replaces Charcoal */
|
--color-primary: #1B1D1A; /* Dark Charcoal - Header/Footer backgrounds */
|
||||||
--color-secondary: #A5C87A; /* Light Olive - replaces Warm Gray */
|
--color-cta: #A68966; /* Warm Gold - Buttons, links, accents */
|
||||||
--color-background: #E8E4DC; /* Off-White - unchanged */
|
--color-background: #F4F1EA; /* Warm Cream - Main page background */
|
||||||
--color-text: #1A1A1A; /* Deep Black - unchanged */
|
--color-text: #2D322A; /* Forest Green - Headings, body text */
|
||||||
|
--color-card: #FFFFFF; /* Pure White - Card backgrounds */
|
||||||
|
--color-active: #4A5D23; /* Olive Green - Active states */
|
||||||
|
|
||||||
/* Additional olive variants for UI states */
|
/* Color variants for UI states */
|
||||||
--color-primary-hover: #7AA347; /* Darker olive for hover states */
|
--color-primary-light: #2D322A; /* Primary hover state */
|
||||||
--color-primary-dark: #6A9337; /* Dark olive for active/pressed */
|
--color-cta-hover: #8A7555; /* Button hover state */
|
||||||
--color-primary-light: #B5D88A; /* Light olive for highlights */
|
--color-cta-light: #C4A882; /* Light accent */
|
||||||
|
--color-active-hover: #5A7030; /* Active state hover */
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Color Usage Guidelines
|
||||||
|
|
||||||
|
| Element | Color | Hex |
|
||||||
|
|---------|-------|-----|
|
||||||
|
| Header/Footer Background | Primary | `#1B1D1A` |
|
||||||
|
| Main Page Background | Background | `#F4F1EA` |
|
||||||
|
| Card Backgrounds | Card | `#FFFFFF` |
|
||||||
|
| CTA Buttons | CTA | `#A68966` |
|
||||||
|
| Button Hover | CTA Hover | `#8A7555` |
|
||||||
|
| Headings & Text | Text | `#2D322A` |
|
||||||
|
| Active Language Toggle | Active | `#4A5D23` |
|
||||||
|
| Links | CTA | `#A68966` |
|
||||||
|
| Link Hover | CTA Hover | `#8A7555` |
|
||||||
|
|
||||||
## Dependencies
|
## Dependencies
|
||||||
|
|
||||||
- Logo files already generated in `logo/` folder
|
- Logo files already deployed
|
||||||
- No external dependencies required
|
- No external dependencies required
|
||||||
|
|
|
||||||
|
|
@ -1,28 +1,29 @@
|
||||||
# Story 12.2: Core CSS Theme Update - Olive Green Palette
|
# Story 12.2: Core CSS Theme Update - Dark Charcoal & Warm Gold Palette
|
||||||
|
|
||||||
## Story
|
## Story
|
||||||
|
|
||||||
**As a** developer
|
**As a** developer
|
||||||
**I want to** update the Tailwind CSS theme to use the new olive green color palette
|
**I want to** update the Tailwind CSS theme to use the new dark charcoal and warm gold color palette
|
||||||
**So that** the application reflects the new LIBRA for Rights brand colors matching the botanical logo
|
**So that** the application reflects the refined LIBRA for Rights brand colors
|
||||||
|
|
||||||
## Acceptance Criteria
|
## Acceptance Criteria
|
||||||
|
|
||||||
### AC1: Update Color Variables in `resources/css/app.css`
|
### AC1: Update Color Variables in `resources/css/app.css`
|
||||||
|
|
||||||
**Given** the current theme uses Charcoal/Warm Gray palette
|
**Given** the current theme uses Olive Green palette
|
||||||
**When** I update the `@theme` block
|
**When** I update the `@theme` block
|
||||||
**Then** the following color mappings are applied:
|
**Then** the following color mappings are applied:
|
||||||
|
|
||||||
| Old Variable | Old Hex | New Variable | New Hex |
|
| Variable | New Hex | Usage |
|
||||||
|--------------|---------|--------------|---------|
|
|----------|---------|-------|
|
||||||
| `--color-primary` | `#4A4A42` (Charcoal) | `--color-primary` | `#8AB357` (Olive Green) |
|
| `--color-primary` | `#1B1D1A` | Header/Footer backgrounds |
|
||||||
| `--color-accent` | `#C9C4BA` (Warm Gray) | `--color-accent` | `#A5C87A` (Light Olive) |
|
| `--color-cta` | `#A68966` | CTA buttons, links, accents |
|
||||||
| `--color-accent-light` | `#E8E4DC` (Off-White) | `--color-accent-light` | `#C5D9A5` (Pale Olive) |
|
| `--color-background` | `#F4F1EA` | Main page background |
|
||||||
| `--color-background` | `#E8E4DC` (Off-White) | `--color-background` | `#E8E4DC` (Off-White) - unchanged |
|
| `--color-text` | `#2D322A` | Headings, body text |
|
||||||
| `--color-text` | `#1A1A1A` (Deep Black) | `--color-text` | `#1A1A1A` (Deep Black) - unchanged |
|
| `--color-card` | `#FFFFFF` | Card backgrounds |
|
||||||
|
| `--color-active` | `#4A5D23` | Active states, language toggle |
|
||||||
|
|
||||||
### AC2: Add Olive Green Color Variants
|
### AC2: Add Color Variants for UI States
|
||||||
|
|
||||||
**Given** the new palette needs hover and active states
|
**Given** the new palette needs hover and active states
|
||||||
**When** I update the theme
|
**When** I update the theme
|
||||||
|
|
@ -30,63 +31,38 @@
|
||||||
|
|
||||||
| Variable | Hex | Usage |
|
| Variable | Hex | Usage |
|
||||||
|----------|-----|-------|
|
|----------|-----|-------|
|
||||||
| `--color-primary` | `#8AB357` | Primary olive green |
|
| `--color-primary-light` | `#2D322A` | Primary hover state |
|
||||||
| `--color-primary-hover` | `#7AA347` | Darker olive for hover |
|
| `--color-cta-hover` | `#8A7555` | Button hover state |
|
||||||
| `--color-primary-dark` | `#6A9337` | Dark olive for active/pressed |
|
| `--color-cta-light` | `#C4A882` | Light CTA accent |
|
||||||
| `--color-primary-light` | `#B5D88A` | Light olive for highlights |
|
| `--color-active-hover` | `#5A7030` | Active state hover |
|
||||||
| `--color-accent` | `#A5C87A` | Secondary light olive |
|
|
||||||
| `--color-accent-light` | `#C5D9A5` | Pale olive for subtle backgrounds |
|
|
||||||
|
|
||||||
### AC2.1: Logo Badge Styling
|
### AC3: Update Button Styles
|
||||||
|
|
||||||
**Given** the logo has a beige background that contrasts with olive green headers/footers
|
**Given** button classes use the primary/accent colors
|
||||||
**When** I add the logo badge styling
|
|
||||||
**Then** the following CSS class is defined:
|
|
||||||
|
|
||||||
| Class | Properties |
|
|
||||||
|-------|------------|
|
|
||||||
| `.logo-badge` | `border: 2px solid #1A1A1A; box-shadow: 4px 4px 6px rgba(26, 26, 26, 0.5);` |
|
|
||||||
|
|
||||||
This creates a "seal/stamp" effect for the logo on olive green backgrounds, making the beige background look intentional rather than mismatched.
|
|
||||||
|
|
||||||
### AC3: Maintain Backward Compatibility Aliases
|
|
||||||
|
|
||||||
**Given** existing components may use old color names
|
|
||||||
**When** the theme is updated
|
|
||||||
**Then** aliases are updated so existing classes continue to work:
|
|
||||||
- `--color-charcoal` → points to `--color-primary` (Olive Green)
|
|
||||||
- `--color-warm-gray` → points to `--color-accent` (Light Olive)
|
|
||||||
- Legacy navy/gold aliases remain for any residual references
|
|
||||||
|
|
||||||
### AC4: Update Button Styles
|
|
||||||
|
|
||||||
**Given** button classes use the primary color
|
|
||||||
**When** theme is updated
|
**When** theme is updated
|
||||||
**Then** `.btn-primary` and `.btn-secondary` use new olive palette:
|
**Then** `.btn-primary` and `.btn-secondary` use new palette:
|
||||||
- Primary: Olive Green background (`#8AB357`), Off-White text
|
- Primary: Warm Gold background (`#A68966`), White text
|
||||||
- Primary Hover: Darker Olive (`#7AA347`)
|
- Primary Hover: Darker Gold (`#8A7555`)
|
||||||
- Secondary: Light Olive border, Deep Black text
|
- Secondary: Dark Charcoal border, Dark text
|
||||||
- Hover states updated accordingly
|
- Hover states updated accordingly
|
||||||
|
|
||||||
### AC5: Update Form Focus States
|
### AC4: Update Form Focus States
|
||||||
|
|
||||||
**Given** form inputs have focus rings
|
**Given** form inputs have focus rings
|
||||||
**When** theme is updated
|
**When** theme is updated
|
||||||
**Then** focus states use Olive Green:
|
**Then** focus states use Warm Gold:
|
||||||
- `focus:border-accent` → Light Olive border
|
- `focus:border-cta` → Warm Gold border
|
||||||
- `focus:ring-accent` → Light Olive ring
|
- `focus:ring-cta` → Warm Gold ring
|
||||||
- `focus:ring-primary` → Olive Green ring
|
|
||||||
|
|
||||||
### AC6: Update Link Colors
|
### AC5: Update Link Colors
|
||||||
|
|
||||||
**Given** links use accent colors
|
**Given** links use accent colors
|
||||||
**When** theme is updated
|
**When** theme is updated
|
||||||
**Then** link colors use olive palette:
|
**Then** link colors use warm gold:
|
||||||
- Default: Olive Green (`#8AB357`)
|
- Default: Warm Gold (`#A68966`)
|
||||||
- Hover: Darker Olive (`#7AA347`)
|
- Hover: Darker Gold (`#8A7555`)
|
||||||
- Visited: Primary Olive (unchanged)
|
|
||||||
|
|
||||||
### AC7: Status Colors Unchanged
|
### AC6: Status Colors Unchanged
|
||||||
|
|
||||||
**Given** status colors serve functional purposes
|
**Given** status colors serve functional purposes
|
||||||
**When** theme is updated
|
**When** theme is updated
|
||||||
|
|
@ -95,25 +71,25 @@ This creates a "seal/stamp" effect for the logo on olive green backgrounds, maki
|
||||||
- `--color-danger: #E74C3C`
|
- `--color-danger: #E74C3C`
|
||||||
- `--color-warning: #F39C12`
|
- `--color-warning: #F39C12`
|
||||||
|
|
||||||
### AC8: WCAG AA Contrast Compliance
|
### AC7: WCAG AA Contrast Compliance
|
||||||
|
|
||||||
**Given** accessibility requirements
|
**Given** accessibility requirements
|
||||||
**When** new colors are applied
|
**When** new colors are applied
|
||||||
**Then** all text/background combinations meet WCAG AA:
|
**Then** all text/background combinations meet WCAG AA:
|
||||||
- Deep Black (`#1A1A1A`) on Off-White (`#E8E4DC`): ≥4.5:1 for body text
|
- Text (`#2D322A`) on Warm Cream (`#F4F1EA`): ≥4.5:1 for body text
|
||||||
- Off-White on Olive Green (`#8AB357`): ≥4.5:1 for body text
|
- White text on Dark Charcoal (`#1B1D1A`): ≥4.5:1 for body text
|
||||||
- Deep Black on Light Olive (`#A5C87A`): Verify contrast ratio
|
- White text on Warm Gold (`#A68966`): Verify contrast ratio
|
||||||
|
|
||||||
### AC9: Update Prose Class
|
### AC8: Update Prose Class
|
||||||
|
|
||||||
**Given** `.prose-brand` class exists for blog content
|
**Given** `.prose-brand` class exists for blog content
|
||||||
**When** theme is updated
|
**When** theme is updated
|
||||||
**Then** prose colors use olive palette:
|
**Then** prose colors use new palette:
|
||||||
- Headings: Deep Black
|
- Headings: Forest Green (`#2D322A`)
|
||||||
- Links: Olive Green
|
- Links: Warm Gold (`#A68966`)
|
||||||
- Body: Deep Black
|
- Body: Forest Green (`#2D322A`)
|
||||||
|
|
||||||
### AC10: Build Succeeds
|
### AC9: Build Succeeds
|
||||||
|
|
||||||
**Given** CSS changes are made
|
**Given** CSS changes are made
|
||||||
**When** I run `npm run build`
|
**When** I run `npm run build`
|
||||||
|
|
@ -126,60 +102,51 @@ This creates a "seal/stamp" effect for the logo on olive green backgrounds, maki
|
||||||
|
|
||||||
### New Color Palette Reference
|
### New Color Palette Reference
|
||||||
|
|
||||||
| Color | Hex | RGB | Usage |
|
| Color Name | Hex | RGB | Usage |
|
||||||
|-------|-----|-----|-------|
|
|------------|-----|-----|-------|
|
||||||
| Olive Green | `#8AB357` | rgb(138, 179, 87) | Primary brand color |
|
| Dark Charcoal | `#1B1D1A` | rgb(27, 29, 26) | Header/Footer backgrounds |
|
||||||
| Darker Olive | `#7AA347` | rgb(122, 163, 71) | Hover states |
|
| Warm Gold | `#A68966` | rgb(166, 137, 102) | CTA buttons, links |
|
||||||
| Dark Olive | `#6A9337` | rgb(106, 147, 55) | Active/pressed states |
|
| Warm Cream | `#F4F1EA` | rgb(244, 241, 234) | Main page background |
|
||||||
| Light Olive | `#A5C87A` | rgb(165, 200, 122) | Secondary/accent |
|
| Forest Green | `#2D322A` | rgb(45, 50, 42) | Text color |
|
||||||
| Pale Olive | `#C5D9A5` | rgb(197, 217, 165) | Subtle backgrounds |
|
| Pure White | `#FFFFFF` | rgb(255, 255, 255) | Card backgrounds |
|
||||||
| Bright Olive | `#B5D88A` | rgb(181, 216, 138) | Highlights |
|
| Olive Green | `#4A5D23` | rgb(74, 93, 35) | Active states |
|
||||||
| Off-White | `#E8E4DC` | rgb(232, 228, 220) | Backgrounds (unchanged) |
|
| Gold Hover | `#8A7555` | rgb(138, 117, 85) | Button hover |
|
||||||
| Deep Black | `#1A1A1A` | rgb(26, 26, 26) | Text (unchanged) |
|
| Gold Light | `#C4A882` | rgb(196, 168, 130) | Light accents |
|
||||||
|
| Olive Hover | `#5A7030` | rgb(90, 112, 48) | Active hover |
|
||||||
|
|
||||||
### Contrast Verification
|
### Contrast Verification
|
||||||
|
|
||||||
Use WebAIM Contrast Checker to verify:
|
Use WebAIM Contrast Checker to verify:
|
||||||
- Deep Black (#1A1A1A) on Off-White (#E8E4DC): ~12.5:1 (passes AAA)
|
- Forest Green (#2D322A) on Warm Cream (#F4F1EA): ~10:1 (passes AAA)
|
||||||
- Off-White (#E8E4DC) on Olive Green (#8AB357): ~3.2:1 (check if passes)
|
- White (#FFFFFF) on Dark Charcoal (#1B1D1A): ~17:1 (passes AAA)
|
||||||
- Deep Black (#1A1A1A) on Light Olive (#A5C87A): ~8.5:1 (passes AAA)
|
- White (#FFFFFF) on Warm Gold (#A68966): ~3.5:1 (passes AA for large text)
|
||||||
|
|
||||||
**Note:** If Off-White on Olive Green doesn't meet 4.5:1, use Deep Black text on olive backgrounds instead.
|
**Note:** For small text on Warm Gold buttons, use white text as it provides sufficient contrast for button contexts.
|
||||||
|
|
||||||
### Logo Badge Styling
|
|
||||||
|
|
||||||
```css
|
|
||||||
/* Badge styling for logo on olive backgrounds */
|
|
||||||
.logo-badge {
|
|
||||||
border: 2px solid var(--color-text);
|
|
||||||
box-shadow: 4px 4px 6px rgba(26, 26, 26, 0.5);
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
### CSS Theme Block Example
|
### CSS Theme Block Example
|
||||||
|
|
||||||
```css
|
```css
|
||||||
@theme {
|
@theme {
|
||||||
/* Primary Olive Green Palette */
|
/* Primary Dark Charcoal Palette */
|
||||||
--color-primary: #8AB357;
|
--color-primary: #1B1D1A;
|
||||||
--color-primary-hover: #7AA347;
|
--color-primary-light: #2D322A;
|
||||||
--color-primary-dark: #6A9337;
|
|
||||||
--color-primary-light: #B5D88A;
|
|
||||||
|
|
||||||
/* Secondary/Accent */
|
/* CTA Warm Gold */
|
||||||
--color-accent: #A5C87A;
|
--color-cta: #A68966;
|
||||||
--color-accent-light: #C5D9A5;
|
--color-cta-hover: #8A7555;
|
||||||
--color-accent-content: #A5C87A;
|
--color-cta-light: #C4A882;
|
||||||
--color-accent-foreground: #1A1A1A;
|
|
||||||
|
|
||||||
/* Neutrals (unchanged) */
|
/* Active Olive Green */
|
||||||
--color-background: #E8E4DC;
|
--color-active: #4A5D23;
|
||||||
--color-text: #1A1A1A;
|
--color-active-hover: #5A7030;
|
||||||
|
|
||||||
/* Backward compatibility */
|
/* Neutrals */
|
||||||
--color-charcoal: var(--color-primary);
|
--color-background: #F4F1EA;
|
||||||
--color-warm-gray: var(--color-accent);
|
--color-text: #2D322A;
|
||||||
--color-off-white: var(--color-background);
|
--color-card: #FFFFFF;
|
||||||
|
|
||||||
|
/* For text on dark backgrounds */
|
||||||
|
--color-off-white: #F4F1EA;
|
||||||
|
|
||||||
/* Status colors (unchanged) */
|
/* Status colors (unchanged) */
|
||||||
--color-success: #27AE60;
|
--color-success: #27AE60;
|
||||||
|
|
@ -190,66 +157,47 @@ Use WebAIM Contrast Checker to verify:
|
||||||
|
|
||||||
## Dev Checklist
|
## Dev Checklist
|
||||||
|
|
||||||
- [x] Update `@theme` block with new olive green values
|
- [ ] Update `@theme` block with new color values
|
||||||
- [x] Add olive green variants (hover, dark, light)
|
- [ ] Add color variants (hover, light)
|
||||||
- [x] Add `.logo-badge` class with border and shadow
|
- [ ] Update `.btn-primary` styles to use CTA colors
|
||||||
- [x] Update backward-compatible aliases
|
- [ ] Update `.btn-secondary` styles
|
||||||
- [x] Update `.btn-primary` styles
|
- [ ] Update form focus states
|
||||||
- [x] Update `.btn-secondary` styles
|
- [ ] Update link colors
|
||||||
- [x] Update form focus states
|
- [ ] Update `.prose-brand` class
|
||||||
- [x] Update link colors
|
- [ ] Update skip-link focus styles
|
||||||
- [x] Update `.prose-brand` class
|
- [ ] Verify status colors unchanged
|
||||||
- [x] Update skip-link focus styles
|
|
||||||
- [x] Update timeline-dot color
|
|
||||||
- [x] Update skeleton loader color
|
|
||||||
- [x] Verify status colors unchanged
|
|
||||||
- [ ] Run contrast checker on all combinations
|
- [ ] Run contrast checker on all combinations
|
||||||
- [x] Run `npm run build` successfully
|
- [ ] Run `npm run build` successfully
|
||||||
- [ ] Visual test in browser
|
- [ ] Visual test in browser
|
||||||
|
|
||||||
## Estimation
|
## Estimation
|
||||||
|
|
||||||
**Complexity:** Low-Medium
|
**Complexity:** Low-Medium
|
||||||
**Risk:** Low - CSS-only changes with aliases for backward compatibility
|
**Risk:** Low - CSS-only changes
|
||||||
|
|
||||||
## Dependencies
|
## Dependencies
|
||||||
|
|
||||||
- Can run in parallel with Story 12.1 (Logo Deployment)
|
- Story 12.1 (Logo Deployment) - Completed
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Dev Agent Record
|
## Dev Agent Record
|
||||||
|
|
||||||
### Agent Model Used
|
### Agent Model Used
|
||||||
Claude Opus 4.5
|
(To be filled during implementation)
|
||||||
|
|
||||||
### Status
|
### Status
|
||||||
In Progress - Pending Visual Test & Contrast Check
|
Not Started - Ready for Implementation
|
||||||
|
|
||||||
### File List
|
### File List
|
||||||
| File | Action |
|
| File | Action |
|
||||||
|------|--------|
|
|------|--------|
|
||||||
| `resources/css/app.css` | Modified |
|
| `resources/css/app.css` | To be modified |
|
||||||
|
|
||||||
### Change Log
|
### Change Log
|
||||||
| Date | Change |
|
| Date | Change |
|
||||||
|------|--------|
|
|------|--------|
|
||||||
| 2026-01-04 | Updated @theme block with olive green palette (AC1, AC2) |
|
| 2026-01-04 | Story updated with new Dark Charcoal & Warm Gold palette |
|
||||||
| 2026-01-04 | Added .logo-badge class for seal/stamp effect (AC2.1) |
|
|
||||||
| 2026-01-04 | Updated backward compatibility aliases (AC3) |
|
|
||||||
| 2026-01-04 | Updated .btn-primary and .btn-secondary styles (AC4) |
|
|
||||||
| 2026-01-04 | Form focus states auto-updated via CSS variables (AC5) |
|
|
||||||
| 2026-01-04 | Updated .prose-brand link colors (AC6, AC9) |
|
|
||||||
| 2026-01-04 | Verified status colors unchanged (AC7) |
|
|
||||||
| 2026-01-04 | Updated skip-link focus styles for olive palette |
|
|
||||||
| 2026-01-04 | Timeline-dot and skeleton loader auto-updated via CSS variables |
|
|
||||||
|
|
||||||
### Completion Notes
|
### Completion Notes
|
||||||
- All CSS changes implemented in `resources/css/app.css`
|
(To be filled during implementation)
|
||||||
- Colors use CSS variables for consistency across components
|
|
||||||
- Backward compatibility maintained via aliases (--color-charcoal, --color-warm-gray, --color-navy, --color-gold)
|
|
||||||
- Skip-link updated to use `bg-primary text-off-white` for better visibility
|
|
||||||
- Build successful: `npm run build` completed without errors (258.29 kB CSS output)
|
|
||||||
|
|
||||||
### Debug Log References
|
|
||||||
None
|
|
||||||
|
|
|
||||||
|
|
@ -1,89 +1,96 @@
|
||||||
# Story 12.3: Blade Component Color Migration - Olive Green
|
# Story 12.3: Blade Component Color Migration - Dark Charcoal & Warm Gold
|
||||||
|
|
||||||
## Story
|
## Story
|
||||||
|
|
||||||
**As a** developer
|
**As a** developer
|
||||||
**I want to** update all Blade components and pages to use the new olive green palette
|
**I want to** update all Blade components and pages to use the new dark charcoal and warm gold palette
|
||||||
**So that** the entire application has consistent branding with the new botanical logo
|
**So that** the entire application has consistent branding
|
||||||
|
|
||||||
## Acceptance Criteria
|
## Acceptance Criteria
|
||||||
|
|
||||||
### AC1: Navigation Component Updated
|
### AC1: Navigation Component Updated
|
||||||
|
|
||||||
**Given** `resources/views/components/navigation.blade.php` uses charcoal colors
|
**Given** `resources/views/components/navigation.blade.php` uses current colors
|
||||||
**When** I update the component
|
**When** I update the component
|
||||||
**Then** the following changes are applied:
|
**Then** the following changes are applied:
|
||||||
- Background: Charcoal → Olive Green (`bg-charcoal` → `bg-primary`)
|
- Background: Dark Charcoal (`#1B1D1A` / `bg-primary`)
|
||||||
- Text/Links: Off-White for contrast on olive background
|
- Text/Links: Warm Cream (`#F4F1EA` / `text-off-white`) for contrast
|
||||||
- Hover states: Use darker olive (`hover:bg-primary-hover`)
|
- Hover states: Use `hover:bg-primary-light`
|
||||||
- Mobile menu uses new olive colors
|
- Mobile menu uses new colors
|
||||||
- Active states updated accordingly
|
- Active states use Olive Green (`#4A5D23`)
|
||||||
- Logo: Apply `.logo-badge` class for badge/seal effect on olive background
|
|
||||||
|
|
||||||
### AC2: Footer Component Updated
|
### AC2: Footer Component Updated
|
||||||
|
|
||||||
**Given** `resources/views/components/footer.blade.php` uses charcoal colors
|
**Given** `resources/views/components/footer.blade.php` uses current colors
|
||||||
**When** I update the component
|
**When** I update the component
|
||||||
**Then** the following changes are applied:
|
**Then** the following changes are applied:
|
||||||
- Background: Charcoal → Olive Green
|
- Background: Dark Charcoal (`#1B1D1A`)
|
||||||
- Text: Off-White for contrast
|
- Text: Warm Cream for contrast
|
||||||
- Links: Light Olive with hover states
|
- Links: Warm Gold (`#A68966`) with hover states
|
||||||
- Social icons: Appropriate contrast colors
|
- Social icons: Appropriate contrast colors
|
||||||
- Logo: Apply `.logo-badge` class for badge/seal effect on olive background
|
|
||||||
|
|
||||||
### AC3: Card Components Updated
|
### AC3: Card Components Updated
|
||||||
|
|
||||||
**Given** card components use old accent colors
|
**Given** card components use accent colors
|
||||||
**When** I update `resources/views/components/ui/card.blade.php`
|
**When** I update `resources/views/components/ui/card.blade.php`
|
||||||
**Then** the following changes are applied:
|
**Then** the following changes are applied:
|
||||||
- Background: Off-White (unchanged)
|
- Background: Pure White (`#FFFFFF` / `bg-card`)
|
||||||
- Borders/accents: Light Olive (`border-accent`)
|
- Borders/accents: Gold Light (`#C4A882`)
|
||||||
- Text: Deep Black (unchanged)
|
- Text: Forest Green (`#2D322A`)
|
||||||
- Hover states: Subtle olive highlight
|
- Hover states: Subtle highlight
|
||||||
|
|
||||||
### AC4: Stat Card Component Updated
|
### AC4: Stat Card Component Updated
|
||||||
|
|
||||||
**Given** `resources/views/components/ui/stat-card.blade.php` uses old colors
|
**Given** `resources/views/components/ui/stat-card.blade.php` uses colors
|
||||||
**When** I update the component
|
**When** I update the component
|
||||||
**Then** accent colors use olive palette:
|
**Then** accent colors use new palette:
|
||||||
- Icon backgrounds: Light Olive
|
- Icon backgrounds: Gold Light (`#C4A882`)
|
||||||
- Value highlights: Olive Green
|
- Value highlights: Warm Gold (`#A68966`)
|
||||||
- Borders: Light Olive
|
- Borders: Gold Light
|
||||||
|
|
||||||
### AC5: Spinner Component Updated
|
### AC5: Spinner Component Updated
|
||||||
|
|
||||||
**Given** `resources/views/components/spinner.blade.php` uses old colors
|
**Given** `resources/views/components/spinner.blade.php` uses colors
|
||||||
**When** I update the component
|
**When** I update the component
|
||||||
**Then** spinner uses Olive Green
|
**Then** spinner uses Warm Gold (`#A68966`)
|
||||||
|
|
||||||
### AC6: Toast Component Updated
|
### AC6: Toast Component Updated
|
||||||
|
|
||||||
**Given** `resources/views/components/toast.blade.php` uses old colors
|
**Given** `resources/views/components/toast.blade.php` uses colors
|
||||||
**When** I update the component
|
**When** I update the component
|
||||||
**Then** default toast uses olive palette (status colors remain unchanged)
|
**Then** default/info toast uses Warm Gold (status colors remain unchanged)
|
||||||
|
|
||||||
### AC7: Language Toggle Updated
|
### AC7: Language Toggle Updated
|
||||||
|
|
||||||
**Given** `resources/views/components/language-toggle.blade.php` uses old colors
|
**Given** `resources/views/components/language-toggle.blade.php` uses colors
|
||||||
**When** I update the component
|
**When** I update the component
|
||||||
**Then** active/inactive states use olive colors
|
**Then**:
|
||||||
|
- Active state: Olive Green background (`#4A5D23`)
|
||||||
|
- Inactive state: Transparent or subtle
|
||||||
|
- Hover: Olive Hover (`#5A7030`)
|
||||||
|
|
||||||
### AC8: Public Pages Updated
|
### AC8: Public Pages Updated
|
||||||
|
|
||||||
**Given** public pages use old accent colors
|
**Given** public pages use accent colors
|
||||||
**When** I update the following pages
|
**When** I update the following pages
|
||||||
**Then** they use the new olive palette:
|
**Then** they use the new palette:
|
||||||
- `resources/views/pages/home.blade.php`
|
- `resources/views/pages/home.blade.php`
|
||||||
- `resources/views/pages/booking.blade.php`
|
- `resources/views/pages/booking.blade.php`
|
||||||
- `resources/views/pages/terms.blade.php`
|
- `resources/views/pages/terms.blade.php`
|
||||||
- `resources/views/pages/privacy.blade.php`
|
- `resources/views/pages/privacy.blade.php`
|
||||||
- `resources/views/pages/legal.blade.php`
|
- `resources/views/pages/legal.blade.php`
|
||||||
|
|
||||||
|
Key updates:
|
||||||
|
- Headings: Forest Green (`#2D322A`)
|
||||||
|
- CTA buttons: Warm Gold (`#A68966`)
|
||||||
|
- Links: Warm Gold with hover
|
||||||
|
- Backgrounds: Warm Cream (`#F4F1EA`)
|
||||||
|
|
||||||
### AC9: Post Pages Updated
|
### AC9: Post Pages Updated
|
||||||
|
|
||||||
**Given** post display pages use old colors
|
**Given** post display pages use colors
|
||||||
**When** I update the following pages
|
**When** I update the following pages
|
||||||
**Then** they use the new olive palette:
|
**Then** they use the new palette:
|
||||||
- `resources/views/livewire/pages/posts/index.blade.php`
|
- `resources/views/livewire/pages/posts/index.blade.php`
|
||||||
- `resources/views/livewire/pages/posts/show.blade.php`
|
- `resources/views/livewire/pages/posts/show.blade.php`
|
||||||
|
|
||||||
|
|
@ -91,29 +98,30 @@
|
||||||
|
|
||||||
**Given** admin dashboard uses accent colors
|
**Given** admin dashboard uses accent colors
|
||||||
**When** I update admin components
|
**When** I update admin components
|
||||||
**Then** they use olive palette:
|
**Then** they use new palette:
|
||||||
- Sidebar/navigation accents
|
- Sidebar/navigation accents: Warm Gold
|
||||||
- Card highlights
|
- Card highlights: Gold Light
|
||||||
- Button accents
|
- Button accents: Warm Gold
|
||||||
- Table header accents
|
- Table header accents: Dark Charcoal background
|
||||||
|
|
||||||
### AC11: Client Dashboard Components Updated
|
### AC11: Client Dashboard Components Updated
|
||||||
|
|
||||||
**Given** client dashboard uses accent colors
|
**Given** client dashboard uses accent colors
|
||||||
**When** I update client components
|
**When** I update client components
|
||||||
**Then** they use olive palette consistently
|
**Then** they use new palette consistently
|
||||||
|
|
||||||
### AC12: Public Layout Updated
|
### AC12: Public Layout Updated
|
||||||
|
|
||||||
**Given** `resources/views/components/layouts/public.blade.php` uses old colors
|
**Given** `resources/views/components/layouts/public.blade.php` uses colors
|
||||||
**When** I update the layout
|
**When** I update the layout
|
||||||
**Then** it uses the new olive palette
|
**Then** it uses the new palette:
|
||||||
|
- Body background: Warm Cream (`#F4F1EA`)
|
||||||
|
|
||||||
### AC13: RTL Layout Integrity
|
### AC13: RTL Layout Integrity
|
||||||
|
|
||||||
**Given** the application supports RTL (Arabic)
|
**Given** the application supports RTL (Arabic)
|
||||||
**When** colors are updated
|
**When** colors are updated
|
||||||
**Then** RTL layout displays correctly with new olive colors
|
**Then** RTL layout displays correctly with new colors
|
||||||
|
|
||||||
### AC14: Responsive Appearance
|
### AC14: Responsive Appearance
|
||||||
|
|
||||||
|
|
@ -128,7 +136,6 @@
|
||||||
**Components:**
|
**Components:**
|
||||||
- `resources/views/components/navigation.blade.php`
|
- `resources/views/components/navigation.blade.php`
|
||||||
- `resources/views/components/footer.blade.php`
|
- `resources/views/components/footer.blade.php`
|
||||||
- `resources/views/components/logo.blade.php` - Add `logo-badge` class for badge/seal effect
|
|
||||||
- `resources/views/components/language-toggle.blade.php`
|
- `resources/views/components/language-toggle.blade.php`
|
||||||
- `resources/views/components/spinner.blade.php`
|
- `resources/views/components/spinner.blade.php`
|
||||||
- `resources/views/components/toast.blade.php`
|
- `resources/views/components/toast.blade.php`
|
||||||
|
|
@ -155,60 +162,72 @@
|
||||||
|
|
||||||
### Color Class Mapping
|
### Color Class Mapping
|
||||||
|
|
||||||
| Old Class | New Class |
|
| Old Class | New Class | Color |
|
||||||
|-----------|-----------|
|
|-----------|-----------|-------|
|
||||||
| `bg-charcoal` | `bg-primary` (Olive Green) |
|
| `bg-primary` (olive) | `bg-primary` | Dark Charcoal `#1B1D1A` |
|
||||||
| `text-charcoal` | `text-primary` |
|
| `bg-accent` | `bg-cta` or `bg-cta-light` | Warm Gold / Gold Light |
|
||||||
| `border-charcoal` | `border-primary` |
|
| `text-primary` | `text-cta` | Warm Gold for links |
|
||||||
| `bg-warm-gray` | `bg-accent` (Light Olive) |
|
| `text-text` | `text-text` | Forest Green `#2D322A` |
|
||||||
| `text-warm-gray` | `text-accent` |
|
| `bg-background` | `bg-background` | Warm Cream `#F4F1EA` |
|
||||||
| `border-warm-gray` | `border-accent` |
|
| `bg-white` | `bg-card` | Pure White `#FFFFFF` |
|
||||||
| `hover:bg-charcoal` | `hover:bg-primary-hover` |
|
| `hover:bg-primary-hover` | `hover:bg-primary-light` | `#2D322A` |
|
||||||
| `hover:text-charcoal` | `hover:text-primary-hover` |
|
|
||||||
|
|
||||||
### Visual Hierarchy with Olive Green
|
### Visual Hierarchy with New Palette
|
||||||
|
|
||||||
**Primary Actions:**
|
**Header/Footer:**
|
||||||
- Background: Olive Green (`#8AB357`)
|
- Background: Dark Charcoal (`#1B1D1A`)
|
||||||
- Text: Off-White (`#E8E4DC`) or Deep Black depending on contrast
|
- Text: Warm Cream (`#F4F1EA`)
|
||||||
|
- Links: Warm Cream, hover to Warm Gold
|
||||||
|
|
||||||
|
**Primary Actions (CTA Buttons):**
|
||||||
|
- Background: Warm Gold (`#A68966`)
|
||||||
|
- Text: White (`#FFFFFF`)
|
||||||
|
- Hover: Gold Hover (`#8A7555`)
|
||||||
|
|
||||||
**Secondary Actions:**
|
**Secondary Actions:**
|
||||||
- Border: Light Olive (`#A5C87A`)
|
- Border: Dark Charcoal or Warm Gold
|
||||||
- Text: Olive Green or Deep Black
|
- Text: Forest Green or Warm Gold
|
||||||
|
|
||||||
**Highlights/Accents:**
|
**Active States (Language Toggle):**
|
||||||
- Background: Light Olive (`#A5C87A`) or Pale Olive (`#C5D9A5`)
|
- Background: Olive Green (`#4A5D23`)
|
||||||
- Text: Deep Black for contrast
|
- Text: White
|
||||||
|
- Hover: Olive Hover (`#5A7030`)
|
||||||
|
|
||||||
|
**Cards:**
|
||||||
|
- Background: Pure White (`#FFFFFF`)
|
||||||
|
- Border: Gold Light (`#C4A882`) or subtle gray
|
||||||
|
- Text: Forest Green (`#2D322A`)
|
||||||
|
|
||||||
|
**Page Background:**
|
||||||
|
- Main: Warm Cream (`#F4F1EA`)
|
||||||
|
|
||||||
## Dev Checklist
|
## Dev Checklist
|
||||||
|
|
||||||
- [x] Update `navigation.blade.php`
|
- [ ] Update `navigation.blade.php` - Dark Charcoal bg, Warm Cream text
|
||||||
- [x] Update `footer.blade.php`
|
- [ ] Update `footer.blade.php` - Dark Charcoal bg, Warm Cream text
|
||||||
- [x] Apply `.logo-badge` class to logo in navigation
|
- [ ] Update `language-toggle.blade.php` - Olive Green active state
|
||||||
- [x] Apply `.logo-badge` class to logo in footer
|
- [ ] Update `spinner.blade.php` - Warm Gold color
|
||||||
- [x] Update `language-toggle.blade.php`
|
- [ ] Update `toast.blade.php` - Warm Gold for info
|
||||||
- [x] Update `spinner.blade.php`
|
- [ ] Update `card.blade.php` - White bg, Gold Light accents
|
||||||
- [x] Update `toast.blade.php`
|
- [ ] Update `stat-card.blade.php` - Gold accents
|
||||||
- [x] Update `card.blade.php`
|
- [ ] Update `public.blade.php` layout - Warm Cream body bg
|
||||||
- [x] Update `stat-card.blade.php`
|
- [ ] Update `home.blade.php` - New palette
|
||||||
- [x] Update `public.blade.php` layout
|
- [ ] Update `booking.blade.php` - New palette
|
||||||
- [x] Update `home.blade.php`
|
- [ ] Update `terms.blade.php` - New palette
|
||||||
- [x] Update `booking.blade.php`
|
- [ ] Update `privacy.blade.php` - New palette
|
||||||
- [x] Update `terms.blade.php`
|
- [ ] Update `legal.blade.php` - New palette
|
||||||
- [x] Update `privacy.blade.php`
|
- [ ] Update `posts/index.blade.php` - New palette
|
||||||
- [x] Update `legal.blade.php`
|
- [ ] Update `posts/show.blade.php` - New palette
|
||||||
- [x] Update `posts/index.blade.php`
|
- [ ] Review and update admin dashboard components
|
||||||
- [x] Update `posts/show.blade.php`
|
- [ ] Review and update client dashboard components
|
||||||
- [x] Review and update admin dashboard components
|
- [ ] Test RTL layout (Arabic)
|
||||||
- [x] Review and update client dashboard components
|
- [ ] Test responsive breakpoints
|
||||||
- [x] Test RTL layout (Arabic)
|
- [ ] Visual review all updated pages
|
||||||
- [x] Test responsive breakpoints
|
|
||||||
- [x] Visual review all updated pages
|
|
||||||
|
|
||||||
## Estimation
|
## Estimation
|
||||||
|
|
||||||
**Complexity:** Medium
|
**Complexity:** Medium
|
||||||
**Risk:** Low - Mostly class name updates with CSS variables doing the heavy lifting
|
**Risk:** Low - Mostly class name updates with CSS variables
|
||||||
|
|
||||||
## Dependencies
|
## Dependencies
|
||||||
|
|
||||||
|
|
@ -218,46 +237,19 @@
|
||||||
|
|
||||||
## Dev Agent Record
|
## Dev Agent Record
|
||||||
|
|
||||||
### Status: Ready for Review
|
### Status
|
||||||
|
Not Started - Ready for Implementation
|
||||||
|
|
||||||
### Agent Model Used
|
### Agent Model Used
|
||||||
Claude Opus 4.5
|
(To be filled during implementation)
|
||||||
|
|
||||||
### File List
|
### File List
|
||||||
|
(To be filled during implementation)
|
||||||
**Modified Files:**
|
|
||||||
- `resources/views/components/navigation.blade.php` - Updated colors to olive palette, added logo-badge class
|
|
||||||
- `resources/views/components/footer.blade.php` - Updated colors to olive palette, added logo-badge class
|
|
||||||
- `resources/views/components/language-toggle.blade.php` - Updated active/inactive states to olive colors
|
|
||||||
- `resources/views/components/spinner.blade.php` - Changed spinner color to primary (olive green)
|
|
||||||
- `resources/views/components/toast.blade.php` - Updated info toast to primary color
|
|
||||||
- `resources/views/components/ui/card.blade.php` - Updated highlight border to accent
|
|
||||||
- `resources/views/components/ui/stat-card.blade.php` - Updated icon colors to primary/accent
|
|
||||||
- `resources/views/pages/home.blade.php` - Updated text colors to text (Deep Black)
|
|
||||||
- `resources/views/pages/booking.blade.php` - Updated text colors to text
|
|
||||||
- `resources/views/pages/terms.blade.php` - Updated text colors to text
|
|
||||||
- `resources/views/pages/privacy.blade.php` - Updated text colors to text
|
|
||||||
- `resources/views/pages/legal.blade.php` - Updated text colors to text
|
|
||||||
- `resources/views/livewire/pages/posts/index.blade.php` - Updated colors to olive palette
|
|
||||||
- `resources/views/livewire/pages/posts/show.blade.php` - Updated colors to olive palette, changed prose-navy to prose-brand
|
|
||||||
- `resources/css/app.css` - Updated form component styling to use text/accent colors
|
|
||||||
|
|
||||||
### Completion Notes
|
|
||||||
|
|
||||||
1. **Color Migration Complete**: All Blade components and pages have been updated from charcoal/warm-gray to the new olive green palette (primary/accent/text).
|
|
||||||
|
|
||||||
2. **Logo Badge Applied**: The `.logo-badge` class has been applied to the logo component in both navigation and footer for the seal/stamp effect on olive backgrounds.
|
|
||||||
|
|
||||||
3. **Admin/Client Dashboard**: No old color classes found in admin or client dashboard directories - they were either already using semantic colors or don't exist yet.
|
|
||||||
|
|
||||||
4. **CSS Updates**: Form styling classes in app.css were also updated to use semantic color tokens (text/30 borders, text labels) for consistency.
|
|
||||||
|
|
||||||
5. **All Tests Passing**: PHP tests completed successfully (memory exhaustion at end of test suite is unrelated to changes).
|
|
||||||
|
|
||||||
### Change Log
|
### Change Log
|
||||||
|
| Date | Change |
|
||||||
|
|------|--------|
|
||||||
|
| 2026-01-04 | Story updated with new Dark Charcoal & Warm Gold palette |
|
||||||
|
|
||||||
| Date | Change | Author |
|
### Completion Notes
|
||||||
|------|--------|--------|
|
(To be filled during implementation)
|
||||||
| 2026-01-04 | Migrated all Blade components to olive green palette | Dev Agent |
|
|
||||||
| 2026-01-04 | Applied logo-badge class to navigation and footer logos | Dev Agent |
|
|
||||||
| 2026-01-04 | Updated CSS form styling to use semantic color tokens | Dev Agent |
|
|
||||||
|
|
|
||||||
|
|
@ -1,73 +1,68 @@
|
||||||
# Story 12.4: Email Template Color and Logo Update
|
# Story 12.4: Email Template Color Update - Dark Charcoal & Warm Gold
|
||||||
|
|
||||||
## Story
|
## Story
|
||||||
|
|
||||||
**As a** developer
|
**As a** developer
|
||||||
**I want to** update email templates to use the new olive green colors and square logo
|
**I want to** update email templates to use the new dark charcoal and warm gold colors
|
||||||
**So that** all email communications reflect the new LIBRA for Rights branding
|
**So that** all email communications reflect the refined LIBRA for Rights branding
|
||||||
|
|
||||||
## Acceptance Criteria
|
## Acceptance Criteria
|
||||||
|
|
||||||
### AC1: Email Theme CSS Updated
|
### AC1: Email Theme CSS Updated
|
||||||
|
|
||||||
**Given** `resources/views/vendor/mail/html/themes/default.css` uses charcoal/warm gray colors
|
**Given** `resources/views/vendor/mail/html/themes/default.css` uses current colors
|
||||||
**When** I update the stylesheet
|
**When** I update the stylesheet
|
||||||
**Then** the following changes are applied:
|
**Then** the following changes are applied:
|
||||||
|
|
||||||
| Element | Old Color | New Color |
|
| Element | New Color | Hex |
|
||||||
|---------|-----------|-----------|
|
|---------|-----------|-----|
|
||||||
| Links (`a`) | `#4A4A42` (Charcoal) | `#8AB357` (Olive Green) |
|
| Links (`a`) | Warm Gold | `#A68966` |
|
||||||
| Headings (h1, h2, h3) | `#4A4A42` (Charcoal) | `#6A9337` (Dark Olive) |
|
| Headings (h1, h2, h3) | Forest Green | `#2D322A` |
|
||||||
| Header background | `#4A4A42` (Charcoal) | `#8AB357` (Olive Green) |
|
| Header background | Dark Charcoal | `#1B1D1A` |
|
||||||
| Footer links | `#C9C4BA` (Warm Gray) | `#A5C87A` (Light Olive) |
|
| Footer links | Warm Gold | `#A68966` |
|
||||||
| Primary button | `#4A4A42` bg, `#E8E4DC` text | `#8AB357` bg, `#E8E4DC` text |
|
| Primary button | Warm Gold bg, White text | `#A68966` / `#FFFFFF` |
|
||||||
| Table headers | `#4A4A42` (Charcoal) | `#8AB357` (Olive Green) |
|
| Table headers | Dark Charcoal bg, White text | `#1B1D1A` |
|
||||||
| Panel border | `#C9C4BA` (Warm Gray) | `#A5C87A` (Light Olive) |
|
| Panel border | Gold Light | `#C4A882` |
|
||||||
|
| Body text | Forest Green | `#2D322A` |
|
||||||
|
| Body background | Warm Cream | `#F4F1EA` |
|
||||||
|
|
||||||
### AC2: Email Header Component Updated
|
### AC2: Email Header Component Updated
|
||||||
|
|
||||||
**Given** `resources/views/vendor/mail/html/header.blade.php` has inline styles
|
**Given** `resources/views/vendor/mail/html/header.blade.php` has inline styles
|
||||||
**When** I update the component
|
**When** I update the component
|
||||||
**Then**:
|
**Then**:
|
||||||
- Background color updated to Olive Green (`#8AB357`)
|
- Background color updated to Dark Charcoal (`#1B1D1A`)
|
||||||
- Logo reference updated to new square logo (`logo-email.png`)
|
- Text color: White or Warm Cream
|
||||||
- Logo sizing adjusted for square format
|
- Logo sizing maintained for square format
|
||||||
|
|
||||||
### AC3: Email Footer Component Updated
|
### AC3: Email Footer Component Updated
|
||||||
|
|
||||||
**Given** `resources/views/vendor/mail/html/footer.blade.php` has inline styles
|
**Given** `resources/views/vendor/mail/html/footer.blade.php` has inline styles
|
||||||
**When** I update the component
|
**When** I update the component
|
||||||
**Then** any inline color references use olive palette
|
**Then** any inline color references use new palette:
|
||||||
|
- Text: Forest Green (`#2D322A`)
|
||||||
|
- Links: Warm Gold (`#A68966`)
|
||||||
|
|
||||||
### AC4: Button Component Updated
|
### AC4: Button Component Updated
|
||||||
|
|
||||||
**Given** `resources/views/vendor/mail/html/button.blade.php` may have inline styles
|
**Given** `resources/views/vendor/mail/html/button.blade.php` may have inline styles
|
||||||
**When** I update the component
|
**When** I update the component
|
||||||
**Then** primary buttons use:
|
**Then** primary buttons use:
|
||||||
- Background: Olive Green (`#8AB357`)
|
- Background: Warm Gold (`#A68966`)
|
||||||
- Text: Off-White (`#E8E4DC`)
|
- Text: White (`#FFFFFF`)
|
||||||
- Hover hint: Darker Olive (`#7AA347`)
|
- Hover hint: Gold Hover (`#8A7555`)
|
||||||
|
|
||||||
### AC5: Panel Component Updated
|
### AC5: Panel Component Updated
|
||||||
|
|
||||||
**Given** `resources/views/vendor/mail/html/panel.blade.php` may have inline styles
|
**Given** `resources/views/vendor/mail/html/panel.blade.php` may have inline styles
|
||||||
**When** I update the component
|
**When** I update the component
|
||||||
**Then** panel border uses Light Olive (`#A5C87A`)
|
**Then** panel border uses Gold Light (`#C4A882`)
|
||||||
|
|
||||||
### AC6: Email Logo Updated to Square Format
|
### AC6: All Email Templates Tested
|
||||||
|
|
||||||
**Given** email header displays the logo
|
|
||||||
**When** emails are sent
|
|
||||||
**Then**:
|
|
||||||
- Logo uses `logo-email.png` (square format, 60px height)
|
|
||||||
- Logo is centered or left-aligned appropriately
|
|
||||||
- Alt text reads "LIBRA for Rights"
|
|
||||||
|
|
||||||
### AC7: All Email Templates Tested
|
|
||||||
|
|
||||||
**Given** the application sends various email types
|
**Given** the application sends various email types
|
||||||
**When** I test each email template
|
**When** I test each email template
|
||||||
**Then** colors and logo display correctly:
|
**Then** colors display correctly:
|
||||||
- Welcome email
|
- Welcome email
|
||||||
- Booking submitted confirmation
|
- Booking submitted confirmation
|
||||||
- Booking approved/rejected
|
- Booking approved/rejected
|
||||||
|
|
@ -77,13 +72,13 @@
|
||||||
- Guest booking notifications
|
- Guest booking notifications
|
||||||
- Admin notifications
|
- Admin notifications
|
||||||
|
|
||||||
### AC8: Plain Text Fallback Unaffected
|
### AC7: Plain Text Fallback Unaffected
|
||||||
|
|
||||||
**Given** plain text email templates exist
|
**Given** plain text email templates exist
|
||||||
**When** colors are updated
|
**When** colors are updated
|
||||||
**Then** plain text templates continue to work (no color changes needed)
|
**Then** plain text templates continue to work (no color changes needed)
|
||||||
|
|
||||||
### AC9: Email Client Compatibility
|
### AC8: Email Client Compatibility
|
||||||
|
|
||||||
**Given** emails are viewed in various clients
|
**Given** emails are viewed in various clients
|
||||||
**When** I test the templates
|
**When** I test the templates
|
||||||
|
|
@ -110,21 +105,14 @@
|
||||||
### Color Mapping for Email CSS
|
### Color Mapping for Email CSS
|
||||||
|
|
||||||
```css
|
```css
|
||||||
/* Old → New */
|
/* New Color Values */
|
||||||
#4A4A42 → #8AB357 /* Charcoal → Olive Green */
|
#1B1D1A /* Dark Charcoal - Header background, table headers */
|
||||||
#C9C4BA → #A5C87A /* Warm Gray → Light Olive */
|
#A68966 /* Warm Gold - Links, buttons, accents */
|
||||||
#6A9337 /* Dark Olive - for headings */
|
#8A7555 /* Gold Hover - Button hover state */
|
||||||
#7AA347 /* Darker Olive - for hover hints */
|
#C4A882 /* Gold Light - Panel borders, subtle accents */
|
||||||
```
|
#2D322A /* Forest Green - Text, headings */
|
||||||
|
#F4F1EA /* Warm Cream - Body background */
|
||||||
### Email Logo Implementation
|
#FFFFFF /* White - Button text, header text */
|
||||||
|
|
||||||
```html
|
|
||||||
<!-- Old (horizontal) -->
|
|
||||||
<img src="{{ asset('images/logo.png') }}" alt="LIBRA for Rights" style="height: 40px; width: auto;">
|
|
||||||
|
|
||||||
<!-- New (square) -->
|
|
||||||
<img src="{{ asset('images/logo-email.png') }}" alt="LIBRA for Rights" style="height: 60px; width: 60px;">
|
|
||||||
```
|
```
|
||||||
|
|
||||||
### Email-Safe Colors
|
### Email-Safe Colors
|
||||||
|
|
@ -135,28 +123,62 @@ Email clients have limited CSS support. Ensure:
|
||||||
- Maintain fallback background colors
|
- Maintain fallback background colors
|
||||||
- Use web-safe colors where possible
|
- Use web-safe colors where possible
|
||||||
|
|
||||||
### Testing Emails
|
### CSS Updates Example
|
||||||
|
|
||||||
Use Laravel's mail preview or Mailtrap to test:
|
```css
|
||||||
```bash
|
/* Header */
|
||||||
# Preview emails in browser (if configured)
|
.header {
|
||||||
php artisan serve
|
background-color: #1B1D1A;
|
||||||
# Visit mail preview routes
|
}
|
||||||
|
|
||||||
|
/* Links */
|
||||||
|
a {
|
||||||
|
color: #A68966;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Headings */
|
||||||
|
h1, h2, h3 {
|
||||||
|
color: #2D322A;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Primary Button */
|
||||||
|
.button-primary {
|
||||||
|
background-color: #A68966;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Panel */
|
||||||
|
.panel {
|
||||||
|
border-left-color: #C4A882;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Table Header */
|
||||||
|
.table th {
|
||||||
|
background-color: #1B1D1A;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Body */
|
||||||
|
body {
|
||||||
|
background-color: #F4F1EA;
|
||||||
|
color: #2D322A;
|
||||||
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
## Dev Checklist
|
## Dev Checklist
|
||||||
|
|
||||||
- [x] Update `default.css` header background color
|
- [ ] Update `default.css` header background color to `#1B1D1A`
|
||||||
- [x] Update `default.css` link colors
|
- [ ] Update `default.css` link colors to `#A68966`
|
||||||
- [x] Update `default.css` heading colors
|
- [ ] Update `default.css` heading colors to `#2D322A`
|
||||||
- [x] Update `default.css` button colors (`.button-primary`)
|
- [ ] Update `default.css` button colors (`.button-primary`) to `#A68966`
|
||||||
- [x] Update `default.css` table header colors
|
- [ ] Update `default.css` table header colors to `#1B1D1A`
|
||||||
- [x] Update `default.css` panel border color
|
- [ ] Update `default.css` panel border color to `#C4A882`
|
||||||
- [x] Update `default.css` footer link colors
|
- [ ] Update `default.css` footer link colors to `#A68966`
|
||||||
- [x] Update `header.blade.php` - inline styles and logo reference
|
- [ ] Update `default.css` body background to `#F4F1EA`
|
||||||
- [x] Update `footer.blade.php` - inline styles
|
- [ ] Update `header.blade.php` - inline styles
|
||||||
- [x] Review `button.blade.php` for inline styles
|
- [ ] Update `footer.blade.php` - inline styles
|
||||||
- [x] Review `panel.blade.php` for inline styles
|
- [ ] Review `button.blade.php` for inline styles
|
||||||
|
- [ ] Review `panel.blade.php` for inline styles
|
||||||
- [ ] Test Welcome email appearance (manual)
|
- [ ] Test Welcome email appearance (manual)
|
||||||
- [ ] Test Booking emails appearance (manual)
|
- [ ] Test Booking emails appearance (manual)
|
||||||
- [ ] Test Reminder emails appearance (manual)
|
- [ ] Test Reminder emails appearance (manual)
|
||||||
|
|
@ -175,7 +197,7 @@ php artisan serve
|
||||||
|
|
||||||
## Dependencies
|
## Dependencies
|
||||||
|
|
||||||
- Story 12.1 (Logo Deployment) must be completed for `logo-email.png`
|
- Story 12.1 (Logo Deployment) - Completed
|
||||||
- Story 12.2 (Core CSS) should be completed for color reference consistency
|
- Story 12.2 (Core CSS) should be completed for color reference consistency
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
@ -183,57 +205,24 @@ php artisan serve
|
||||||
## Dev Agent Record
|
## Dev Agent Record
|
||||||
|
|
||||||
### Status
|
### Status
|
||||||
Ready for Review
|
Not Started - Ready for Implementation
|
||||||
|
|
||||||
### Agent Model Used
|
### Agent Model Used
|
||||||
Claude Opus 4.5
|
(To be filled during implementation)
|
||||||
|
|
||||||
### File List
|
### File List
|
||||||
|
|
||||||
| File | Action |
|
| File | Action |
|
||||||
|------|--------|
|
|------|--------|
|
||||||
| `resources/views/vendor/mail/html/themes/default.css` | Modified |
|
| `resources/views/vendor/mail/html/themes/default.css` | To be modified |
|
||||||
| `resources/views/vendor/mail/html/header.blade.php` | Modified |
|
| `resources/views/vendor/mail/html/header.blade.php` | To be modified |
|
||||||
| `resources/views/vendor/mail/html/footer.blade.php` | Modified |
|
| `resources/views/vendor/mail/html/footer.blade.php` | To be modified |
|
||||||
|
|
||||||
### Change Log
|
### Change Log
|
||||||
|
|
||||||
1. **default.css** - Updated all color values per AC1:
|
| Date | Change |
|
||||||
- Links: `#4A4A42` → `#8AB357` (Olive Green)
|
|------|--------|
|
||||||
- Headings (h1, h2, h3): `#4A4A42` → `#6A9337` (Dark Olive)
|
| 2026-01-04 | Story updated with new Dark Charcoal & Warm Gold palette |
|
||||||
- Header background: `#4A4A42` → `#8AB357`
|
|
||||||
- Footer links: `#C9C4BA` → `#A5C87A` (Light Olive)
|
|
||||||
- Primary button: `#4A4A42` → `#8AB357`
|
|
||||||
- Table headers: `#4A4A42` → `#8AB357`
|
|
||||||
- Panel border: `#C9C4BA` → `#A5C87A`
|
|
||||||
- Logo class: Updated from 45px to 60px square format
|
|
||||||
|
|
||||||
2. **header.blade.php** - Updated per AC2:
|
|
||||||
- Background color: `#4A4A42` → `#8AB357`
|
|
||||||
- Logo sizing: `height: 45px` → `height: 60px; width: 60px`
|
|
||||||
- Alt text: Changed to "LIBRA for Rights"
|
|
||||||
|
|
||||||
3. **footer.blade.php** - Updated per AC3:
|
|
||||||
- Email link color: `#C9C4BA` → `#A5C87A`
|
|
||||||
- Website link color: `#C9C4BA` → `#A5C87A`
|
|
||||||
|
|
||||||
4. **button.blade.php** - Reviewed per AC4:
|
|
||||||
- No inline styles present; uses CSS classes
|
|
||||||
- Colors handled via default.css `.button-primary` class
|
|
||||||
|
|
||||||
5. **panel.blade.php** - Reviewed per AC5:
|
|
||||||
- No inline styles present; uses CSS classes
|
|
||||||
- Border handled via default.css `.panel` class
|
|
||||||
|
|
||||||
### Completion Notes
|
### Completion Notes
|
||||||
|
(To be filled during implementation)
|
||||||
- All CSS color updates completed per acceptance criteria
|
|
||||||
- All inline styles in Blade components updated
|
|
||||||
- `logo-email.png` verified to exist at `public/images/logo-email.png`
|
|
||||||
- Plain text templates unaffected (no color changes needed)
|
|
||||||
- Automated tests pass (unrelated memory error in PDF export feature)
|
|
||||||
- Manual email client testing (AC7-AC9) required for full verification
|
|
||||||
|
|
||||||
### Debug Log References
|
|
||||||
|
|
||||||
N/A - No debugging issues encountered
|
|
||||||
|
|
|
||||||
|
|
@ -1,83 +1,75 @@
|
||||||
# Story 12.5: PDF Template Color and Logo Update
|
# Story 12.5: PDF Template Color Update - Dark Charcoal & Warm Gold
|
||||||
|
|
||||||
## Story
|
## Story
|
||||||
|
|
||||||
**As a** developer
|
**As a** developer
|
||||||
**I want to** update PDF export templates to use the new olive green colors and square logo
|
**I want to** update PDF export templates to use the new dark charcoal and warm gold colors
|
||||||
**So that** all exported documents reflect the new LIBRA for Rights branding
|
**So that** all exported documents reflect the refined LIBRA for Rights branding
|
||||||
|
|
||||||
## Acceptance Criteria
|
## Acceptance Criteria
|
||||||
|
|
||||||
### AC1: Users Export PDF Updated
|
### AC1: Users Export PDF Updated
|
||||||
|
|
||||||
**Given** `resources/views/pdf/users-export.blade.php` uses charcoal colors
|
**Given** `resources/views/pdf/users-export.blade.php` uses current colors
|
||||||
**When** I update the template
|
**When** I update the template
|
||||||
**Then** the following changes are applied:
|
**Then** the following changes are applied:
|
||||||
- Header background: Charcoal → Olive Green (`#8AB357`)
|
- Header background: Dark Charcoal (`#1B1D1A`)
|
||||||
- Header text: Off-White (`#E8E4DC`)
|
- Header text: White (`#FFFFFF`)
|
||||||
- Accent elements: Warm Gray → Light Olive (`#A5C87A`)
|
- Accent elements: Warm Gold (`#A68966`) or Gold Light (`#C4A882`)
|
||||||
- Table headers: Charcoal → Olive Green
|
- Table headers: Dark Charcoal background, white text
|
||||||
- Borders: Updated to olive palette
|
- Borders: Gold Light (`#C4A882`)
|
||||||
- Logo: Square format
|
- Body text: Forest Green (`#2D322A`)
|
||||||
|
|
||||||
### AC2: Consultations Export PDF Updated
|
### AC2: Consultations Export PDF Updated
|
||||||
|
|
||||||
**Given** `resources/views/pdf/consultations-export.blade.php` uses charcoal colors
|
**Given** `resources/views/pdf/consultations-export.blade.php` uses current colors
|
||||||
**When** I update the template
|
**When** I update the template
|
||||||
**Then** colors match the new olive green palette:
|
**Then** colors match the new palette:
|
||||||
- Headers: Olive Green background
|
- Headers: Dark Charcoal background
|
||||||
- Status badges: Appropriate contrast colors
|
- Status badges: Appropriate contrast colors
|
||||||
- Table styling: Olive accents
|
- Table styling: Gold accents
|
||||||
|
|
||||||
### AC3: Timelines Export PDF Updated
|
### AC3: Timelines Export PDF Updated
|
||||||
|
|
||||||
**Given** `resources/views/pdf/timelines-export.blade.php` uses charcoal colors
|
**Given** `resources/views/pdf/timelines-export.blade.php` uses current colors
|
||||||
**When** I update the template
|
**When** I update the template
|
||||||
**Then** colors match the new olive green palette:
|
**Then** colors match the new palette:
|
||||||
- Timeline markers: Olive Green
|
- Timeline markers: Warm Gold (`#A68966`)
|
||||||
- Section headers: Olive Green
|
- Section headers: Dark Charcoal background
|
||||||
- Borders and accents: Light Olive
|
- Borders and accents: Gold Light (`#C4A882`)
|
||||||
|
|
||||||
### AC4: Monthly Report PDF Updated
|
### AC4: Monthly Report PDF Updated
|
||||||
|
|
||||||
**Given** `resources/views/pdf/monthly-report.blade.php` uses charcoal colors
|
**Given** `resources/views/pdf/monthly-report.blade.php` uses current colors
|
||||||
**When** I update the template
|
**When** I update the template
|
||||||
**Then** the following changes are applied:
|
**Then** the following changes are applied:
|
||||||
- Header/footer: Olive Green background
|
- Header/footer: Dark Charcoal background (`#1B1D1A`)
|
||||||
- Accent colors: Light Olive
|
- Header/footer text: White
|
||||||
- Charts/graphs: Updated olive color scheme
|
- Accent colors: Warm Gold (`#A68966`)
|
||||||
- Text: Deep Black for readability
|
- Charts/graphs: Updated color scheme
|
||||||
- Logo: Square format
|
- Text: Forest Green (`#2D322A`)
|
||||||
|
|
||||||
### AC5: Monthly Report Service Updated
|
### AC5: Monthly Report Service Updated
|
||||||
|
|
||||||
**Given** `app/Services/MonthlyReportService.php` contains color references for charts
|
**Given** `app/Services/MonthlyReportService.php` contains color references for charts
|
||||||
**When** I update the service
|
**When** I update the service
|
||||||
**Then** chart colors use olive palette:
|
**Then** chart colors use new palette:
|
||||||
- Pie chart colors: Olive Green, Light Olive, Pale Olive
|
- Primary chart color: Warm Gold (`#A68966`)
|
||||||
- Line chart border: Olive Green
|
- Secondary: Gold Light (`#C4A882`)
|
||||||
- Bar chart fills: Olive variations
|
- Tertiary: Dark Charcoal (`#1B1D1A`)
|
||||||
|
- Quaternary: Olive Green (`#4A5D23`)
|
||||||
|
|
||||||
### AC6: PDF Logo Updated to Square Format
|
### AC6: Print-Friendly Colors
|
||||||
|
|
||||||
**Given** PDF templates include the logo
|
|
||||||
**When** PDFs are generated
|
|
||||||
**Then**:
|
|
||||||
- Logo uses square format
|
|
||||||
- Logo sized appropriately for PDF context
|
|
||||||
- Alt text/title reads "LIBRA for Rights"
|
|
||||||
|
|
||||||
### AC7: Print-Friendly Colors
|
|
||||||
|
|
||||||
**Given** PDFs are often printed
|
**Given** PDFs are often printed
|
||||||
**When** colors are updated
|
**When** colors are updated
|
||||||
**Then** they remain legible when printed:
|
**Then** they remain legible when printed:
|
||||||
- Olive Green (`#8AB357`) prints well
|
- Dark Charcoal (`#1B1D1A`) prints as near-black - excellent contrast
|
||||||
- Light Olive (`#A5C87A`) used for accents only (may appear light in grayscale)
|
- Warm Gold (`#A68966`) prints as medium tone - good visibility
|
||||||
- Sufficient contrast for all text
|
- Sufficient contrast for all text
|
||||||
- Consider adding subtle borders for light-colored sections
|
- Consider adding subtle borders for light-colored sections
|
||||||
|
|
||||||
### AC8: All PDF Exports Tested
|
### AC7: All PDF Exports Tested
|
||||||
|
|
||||||
**Given** the admin can export various data types
|
**Given** the admin can export various data types
|
||||||
**When** I test each PDF export
|
**When** I test each PDF export
|
||||||
|
|
@ -103,27 +95,38 @@
|
||||||
**Livewire Components (review for inline PDF styles):**
|
**Livewire Components (review for inline PDF styles):**
|
||||||
- `resources/views/livewire/admin/reports/monthly-report.blade.php`
|
- `resources/views/livewire/admin/reports/monthly-report.blade.php`
|
||||||
|
|
||||||
|
**Tests:**
|
||||||
|
- `tests/Feature/Admin/PdfBrandColorsTest.php` (update color assertions)
|
||||||
|
|
||||||
### Color Mapping for PDFs
|
### Color Mapping for PDFs
|
||||||
|
|
||||||
| Element | Old Color | New Color |
|
| Element | New Color | Hex |
|
||||||
|---------|-----------|-----------|
|
|---------|-----------|-----|
|
||||||
| Primary Background | `#4A4A42` | `#8AB357` |
|
| Primary Background | Dark Charcoal | `#1B1D1A` |
|
||||||
| Accent/Highlight | `#C9C4BA` | `#A5C87A` |
|
| Accent/Highlight | Warm Gold | `#A68966` |
|
||||||
| Light Background | `#E8E4DC` | `#E8E4DC` (unchanged) |
|
| Light Accent | Gold Light | `#C4A882` |
|
||||||
| Text | `#1A1A1A` | `#1A1A1A` (unchanged) |
|
| Page Background | Warm Cream | `#F4F1EA` |
|
||||||
| Table Header BG | `#4A4A42` | `#8AB357` |
|
| Text | Forest Green | `#2D322A` |
|
||||||
| Table Header Text | `#E8E4DC` | `#E8E4DC` |
|
| Table Header BG | Dark Charcoal | `#1B1D1A` |
|
||||||
| Borders | `#C9C4BA` | `#A5C87A` |
|
| Table Header Text | White | `#FFFFFF` |
|
||||||
|
| Borders | Gold Light | `#C4A882` |
|
||||||
|
|
||||||
### PDF Styling Notes
|
### PDF Styling Notes
|
||||||
|
|
||||||
PDF templates use inline CSS. Common patterns to update:
|
PDF templates use inline CSS. Common patterns to update:
|
||||||
```html
|
|
||||||
<!-- Old -->
|
|
||||||
<div style="background-color: #4A4A42; color: #E8E4DC;">
|
|
||||||
|
|
||||||
<!-- New -->
|
```html
|
||||||
<div style="background-color: #8AB357; color: #E8E4DC;">
|
<!-- Header -->
|
||||||
|
<div style="background-color: #1B1D1A; color: #FFFFFF;">
|
||||||
|
|
||||||
|
<!-- Table Header -->
|
||||||
|
<th style="background-color: #1B1D1A; color: #FFFFFF;">
|
||||||
|
|
||||||
|
<!-- Accent Border -->
|
||||||
|
<div style="border-left: 4px solid #A68966;">
|
||||||
|
|
||||||
|
<!-- Text -->
|
||||||
|
<p style="color: #2D322A;">
|
||||||
```
|
```
|
||||||
|
|
||||||
### Chart Color Palette for Reports
|
### Chart Color Palette for Reports
|
||||||
|
|
@ -131,45 +134,36 @@ PDF templates use inline CSS. Common patterns to update:
|
||||||
```php
|
```php
|
||||||
// Monthly Report Service chart colors
|
// Monthly Report Service chart colors
|
||||||
$chartColors = [
|
$chartColors = [
|
||||||
'primary' => '#8AB357', // Olive Green
|
'primary' => '#A68966', // Warm Gold
|
||||||
'secondary' => '#A5C87A', // Light Olive
|
'secondary' => '#C4A882', // Gold Light
|
||||||
'tertiary' => '#C5D9A5', // Pale Olive
|
'tertiary' => '#1B1D1A', // Dark Charcoal
|
||||||
'quaternary' => '#6A9337', // Dark Olive
|
'quaternary' => '#4A5D23', // Olive Green
|
||||||
'background' => '#E8E4DC', // Off-White
|
'background' => '#F4F1EA', // Warm Cream
|
||||||
];
|
];
|
||||||
```
|
```
|
||||||
|
|
||||||
### Print Considerations
|
### Print Considerations
|
||||||
|
|
||||||
- Olive Green (`#8AB357`) prints as medium gray - good contrast
|
- Dark Charcoal (`#1B1D1A`) prints as near-black - excellent readability
|
||||||
- Light Olive (`#A5C87A`) prints as light gray - use for accents only
|
- Warm Gold (`#A68966`) prints as medium brown/tan - good visibility
|
||||||
|
- Gold Light (`#C4A882`) prints as light tan - use for borders/accents only
|
||||||
- Ensure table borders are visible in grayscale
|
- Ensure table borders are visible in grayscale
|
||||||
- Test print preview in browser
|
- Test print preview in browser
|
||||||
|
|
||||||
### PDF Logo Implementation
|
|
||||||
|
|
||||||
```html
|
|
||||||
<!-- Square logo for PDF -->
|
|
||||||
<img src="{{ public_path('images/logo.png') }}" style="height: 50px; width: 50px;" alt="LIBRA for Rights">
|
|
||||||
```
|
|
||||||
|
|
||||||
## Dev Checklist
|
## Dev Checklist
|
||||||
|
|
||||||
- [x] Update `users-export.blade.php` colors
|
- [ ] Update `users-export.blade.php` colors
|
||||||
- [x] Update `users-export.blade.php` logo
|
- [ ] Update `consultations-export.blade.php` colors
|
||||||
- [x] Update `consultations-export.blade.php` colors
|
- [ ] Update `timelines-export.blade.php` colors
|
||||||
- [x] Update `consultations-export.blade.php` logo
|
- [ ] Update `monthly-report.blade.php` colors
|
||||||
- [x] Update `timelines-export.blade.php` colors
|
- [ ] Update `MonthlyReportService.php` chart colors
|
||||||
- [x] Update `timelines-export.blade.php` logo
|
- [ ] Review `monthly-report.blade.php` Livewire component
|
||||||
- [x] Update `monthly-report.blade.php` colors
|
- [ ] Update `PdfBrandColorsTest.php` color assertions
|
||||||
- [x] Update `monthly-report.blade.php` logo
|
- [ ] Test Users PDF export
|
||||||
- [x] Update `MonthlyReportService.php` chart colors
|
- [ ] Test Consultations PDF export
|
||||||
- [x] Review `monthly-report.blade.php` Livewire component
|
- [ ] Test Timelines PDF export
|
||||||
- [x] Test Users PDF export
|
- [ ] Test Monthly Report PDF generation
|
||||||
- [x] Test Consultations PDF export
|
- [ ] Verify logo displays correctly in all PDFs
|
||||||
- [x] Test Timelines PDF export
|
|
||||||
- [x] Test Monthly Report PDF generation
|
|
||||||
- [x] Verify logo displays correctly in all PDFs
|
|
||||||
- [ ] Test print preview for readability
|
- [ ] Test print preview for readability
|
||||||
- [ ] Test grayscale printing
|
- [ ] Test grayscale printing
|
||||||
|
|
||||||
|
|
@ -180,7 +174,7 @@ $chartColors = [
|
||||||
|
|
||||||
## Dependencies
|
## Dependencies
|
||||||
|
|
||||||
- Story 12.1 (Logo Deployment) must be completed for logo files
|
- Story 12.1 (Logo Deployment) - Completed
|
||||||
- Story 12.2 (Core CSS) should be completed for color reference consistency
|
- Story 12.2 (Core CSS) should be completed for color reference consistency
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
@ -188,39 +182,27 @@ $chartColors = [
|
||||||
## Dev Agent Record
|
## Dev Agent Record
|
||||||
|
|
||||||
### Status
|
### Status
|
||||||
Ready for Review
|
Not Started - Ready for Implementation
|
||||||
|
|
||||||
### Agent Model Used
|
### Agent Model Used
|
||||||
Claude Opus 4.5
|
(To be filled during implementation)
|
||||||
|
|
||||||
### File List
|
### File List
|
||||||
|
|
||||||
**Modified:**
|
**To be modified:**
|
||||||
- `resources/views/pdf/users-export.blade.php` - Updated colors from charcoal to olive green, added square logo
|
- `resources/views/pdf/users-export.blade.php`
|
||||||
- `resources/views/pdf/consultations-export.blade.php` - Updated colors from charcoal to olive green, added square logo
|
- `resources/views/pdf/consultations-export.blade.php`
|
||||||
- `resources/views/pdf/timelines-export.blade.php` - Updated colors from charcoal to olive green, added square logo
|
- `resources/views/pdf/timelines-export.blade.php`
|
||||||
- `resources/views/pdf/monthly-report.blade.php` - Updated colors from charcoal to olive green, added square logo (header + cover page)
|
- `resources/views/pdf/monthly-report.blade.php`
|
||||||
- `app/Services/MonthlyReportService.php` - Updated chart colors for pie and line charts
|
- `app/Services/MonthlyReportService.php`
|
||||||
- `resources/views/livewire/admin/reports/monthly-report.blade.php` - Updated inline color styles for TOC badges
|
- `resources/views/livewire/admin/reports/monthly-report.blade.php`
|
||||||
- `tests/Feature/Admin/PdfBrandColorsTest.php` - Updated tests to check for new olive green colors instead of old charcoal
|
- `tests/Feature/Admin/PdfBrandColorsTest.php`
|
||||||
|
|
||||||
### Change Log
|
### Change Log
|
||||||
|
|
||||||
| Date | Change | Reason |
|
| Date | Change |
|
||||||
|------|--------|--------|
|
|------|--------|
|
||||||
| 2026-01-04 | Updated all PDF templates with olive green colors | Story 12.5 requirement |
|
| 2026-01-04 | Story updated with new Dark Charcoal & Warm Gold palette |
|
||||||
| 2026-01-04 | Added square logo to all PDF headers | Story 12.5 requirement |
|
|
||||||
| 2026-01-04 | Updated chart colors in MonthlyReportService | Story 12.5 AC5 |
|
|
||||||
| 2026-01-04 | Updated Livewire component inline colors | Consistency with PDF changes |
|
|
||||||
| 2026-01-04 | Updated PdfBrandColorsTest to verify new colors | Tests should validate current state |
|
|
||||||
|
|
||||||
### Debug Log References
|
|
||||||
None - Implementation completed without issues
|
|
||||||
|
|
||||||
### Completion Notes
|
### Completion Notes
|
||||||
- All PDF templates updated with olive green palette (`#8AB357` primary, `#A5C87A` accent)
|
(To be filled during implementation)
|
||||||
- Square logo (50x50px) added to all PDF headers using `public_path('images/logo.png')`
|
|
||||||
- Monthly report cover page uses larger logo (100x100px)
|
|
||||||
- Chart colors in MonthlyReportService updated for pie and line charts
|
|
||||||
- All 76 related tests pass (6 PDF color tests + 70 export tests)
|
|
||||||
- Print preview and grayscale testing should be done manually by QA
|
|
||||||
|
|
|
||||||
|
|
@ -1,193 +1,168 @@
|
||||||
# Story 12.6: Brand Documentation and Cleanup
|
# Story 12.6: Brand Documentation Update - Dark Charcoal & Warm Gold
|
||||||
|
|
||||||
## Story
|
## Story
|
||||||
|
|
||||||
**As a** developer/designer
|
**As a** developer
|
||||||
**I want to** update brand documentation to reflect the new logo and olive green color scheme
|
**I want to** update all brand documentation to reflect the new dark charcoal and warm gold color palette
|
||||||
**So that** future development maintains consistent branding
|
**So that** documentation accurately represents the current brand identity
|
||||||
|
|
||||||
## Acceptance Criteria
|
## Acceptance Criteria
|
||||||
|
|
||||||
### AC1: Brand Guide Updated
|
### AC1: Update `docs/brand.md`
|
||||||
|
|
||||||
**Given** `docs/brand.md` contains old color palette and logo description
|
**Given** the brand documentation references old colors
|
||||||
**When** I update the document
|
**When** I update the file
|
||||||
**Then** it reflects the new branding:
|
**Then** the following sections are updated:
|
||||||
|
- Color palette section with new hex values
|
||||||
|
- Color usage guidelines
|
||||||
|
- Any color swatches or examples
|
||||||
|
|
||||||
**Updated Color Palette:**
|
**New Color Palette:**
|
||||||
|
|
||||||
| Color | Hex Code | Usage |
|
| Color Name | Hex | Usage |
|
||||||
|-------|----------|-------|
|
|------------|-----|-------|
|
||||||
| Olive Green | `#8AB357` | Primary brand color, backgrounds, accents |
|
| Dark Charcoal | `#1B1D1A` | Header/Footer backgrounds |
|
||||||
| Darker Olive | `#7AA347` | Hover states |
|
| Warm Gold | `#A68966` | CTA buttons, links, accents |
|
||||||
| Dark Olive | `#6A9337` | Active states, headings |
|
| Warm Cream | `#F4F1EA` | Main page background |
|
||||||
| Light Olive | `#A5C87A` | Secondary backgrounds, borders |
|
| Forest Green | `#2D322A` | Headings, body text |
|
||||||
| Pale Olive | `#C5D9A5` | Subtle backgrounds |
|
| Pure White | `#FFFFFF` | Card backgrounds |
|
||||||
| Off-White | `#E8E4DC` | Light backgrounds |
|
| Olive Green | `#4A5D23` | Active states |
|
||||||
| Deep Black | `#1A1A1A` | Text, headings |
|
| Gold Hover | `#8A7555` | Button hover states |
|
||||||
|
| Gold Light | `#C4A882` | Light accents |
|
||||||
|
|
||||||
**Updated Logo Description:**
|
### AC2: Update `CLAUDE.md`
|
||||||
- Square format featuring Palestinian tatreez (embroidery) patterns
|
|
||||||
- Central botanical/olive motif
|
|
||||||
- "LIBRA FOR RIGHTS" text integrated into design
|
|
||||||
- Palestinian flag accent
|
|
||||||
- Cultural heritage elements
|
|
||||||
|
|
||||||
### AC2: Logo Generation Instructions Updated
|
**Given** CLAUDE.md contains design requirements with old colors
|
||||||
|
**When** I update the file
|
||||||
|
**Then** the Design Requirements section reflects new palette:
|
||||||
|
- Update color scheme description
|
||||||
|
- Update hex values
|
||||||
|
- Maintain bilingual requirement notes
|
||||||
|
|
||||||
**Given** `docs/logo-generation-instructions.md` describes horizontal logo generation
|
### AC3: Update `docs/architecture.md` (if applicable)
|
||||||
**When** I update the document
|
|
||||||
**Then** it reflects square logo format:
|
|
||||||
- Update dimensions to square format
|
|
||||||
- Update file naming conventions
|
|
||||||
- Remove references to horizontal aspect ratio
|
|
||||||
- Update tool instructions for square export
|
|
||||||
|
|
||||||
### AC3: CLAUDE.md Updated
|
|
||||||
|
|
||||||
**Given** `CLAUDE.md` contains color scheme reference
|
|
||||||
**When** I review and update if needed
|
|
||||||
**Then** the design requirements section reflects:
|
|
||||||
- New olive green color palette
|
|
||||||
- Square logo format
|
|
||||||
- Palestinian tatreez design elements
|
|
||||||
|
|
||||||
### AC4: Architecture Documentation Updated
|
|
||||||
|
|
||||||
**Given** architecture docs may reference brand colors
|
**Given** architecture docs may reference brand colors
|
||||||
**When** I review architecture documentation
|
**When** I review the file
|
||||||
**Then** any color references are updated to olive palette
|
**Then** any color references are updated to new palette
|
||||||
|
|
||||||
### AC5: Old Logo Files Archived/Removed
|
### AC4: Update `docs/prd.md` (if applicable)
|
||||||
|
|
||||||
**Given** old SVG logo files exist in the repository
|
**Given** PRD may reference brand colors
|
||||||
**When** documentation is complete
|
**When** I review the file
|
||||||
**Then** old files are handled appropriately:
|
**Then** any color references are updated to new palette
|
||||||
- `public/images/logo.svg` - Remove or archive
|
|
||||||
- `public/images/logo-reversed.svg` - Remove or archive
|
|
||||||
- `public/images/logo-mono.svg` - Remove or archive
|
|
||||||
- `public/favicon.svg` - Remove or archive
|
|
||||||
|
|
||||||
**Note:** Keep git history for reference; no need to purge from history
|
### AC5: Update Test Color Assertions
|
||||||
|
|
||||||
### AC6: Logo Folder Cleanup
|
**Given** tests may assert specific color values
|
||||||
|
|
||||||
**Given** logo files were generated in `logo/` folder
|
|
||||||
**When** deployment is complete
|
|
||||||
**Then** the `logo/` folder is removed (files moved to `public/`)
|
|
||||||
|
|
||||||
### AC7: README Updated (if applicable)
|
|
||||||
|
|
||||||
**Given** README may contain branding information
|
|
||||||
**When** I review README.md
|
|
||||||
**Then** any visual/branding references are current
|
|
||||||
|
|
||||||
### AC8: Test Assertions Updated
|
|
||||||
|
|
||||||
**Given** tests may contain color value assertions
|
|
||||||
**When** I review test files
|
**When** I review test files
|
||||||
**Then** color assertions use new olive palette values:
|
**Then** color assertions are updated:
|
||||||
- `AccessibilityComplianceTest.php`
|
- `tests/Feature/Admin/PdfBrandColorsTest.php`
|
||||||
- Any component tests with color assertions
|
- Any other tests checking brand colors
|
||||||
- Email template tests
|
|
||||||
- PDF template tests
|
### AC6: Review and Update Code Comments
|
||||||
|
|
||||||
|
**Given** code comments may reference old color names
|
||||||
|
**When** I review key files
|
||||||
|
**Then** comments are updated:
|
||||||
|
- `resources/css/app.css` - CSS comments
|
||||||
|
- Any inline style comments in Blade files
|
||||||
|
|
||||||
|
### AC7: Update Logo Generation Instructions (if exists)
|
||||||
|
|
||||||
|
**Given** `docs/logo-generation-instructions.md` may exist
|
||||||
|
**When** I review the file
|
||||||
|
**Then** any color references match new palette
|
||||||
|
|
||||||
## Technical Notes
|
## Technical Notes
|
||||||
|
|
||||||
### Files to Update
|
### Files to Review/Modify
|
||||||
|
|
||||||
**Documentation:**
|
**Documentation:**
|
||||||
- `docs/brand.md` - Full brand guide update
|
- `docs/brand.md` - Primary brand documentation
|
||||||
- `docs/logo-generation-instructions.md` - Update for square format
|
- `CLAUDE.md` - Project instructions
|
||||||
- `CLAUDE.md` - Update design requirements section
|
- `docs/architecture.md` - Architecture documentation
|
||||||
|
- `docs/prd.md` - Product requirements
|
||||||
|
|
||||||
**Tests to Review:**
|
**Tests:**
|
||||||
- `tests/Feature/AccessibilityComplianceTest.php`
|
|
||||||
- `tests/Feature/Components/` - Any color assertions
|
|
||||||
- `tests/Feature/Mail/EmailTemplateColorsTest.php`
|
|
||||||
- `tests/Feature/Admin/PdfBrandColorsTest.php`
|
- `tests/Feature/Admin/PdfBrandColorsTest.php`
|
||||||
|
- Any other brand color tests
|
||||||
|
|
||||||
### New Brand Guide Content
|
**Code Comments:**
|
||||||
|
- `resources/css/app.css`
|
||||||
|
|
||||||
|
### Color Reference Quick Sheet
|
||||||
|
|
||||||
|
```
|
||||||
|
Primary Colors:
|
||||||
|
- Dark Charcoal: #1B1D1A (header/footer bg)
|
||||||
|
- Warm Gold: #A68966 (CTA, links)
|
||||||
|
- Warm Cream: #F4F1EA (page background)
|
||||||
|
- Forest Green: #2D322A (text)
|
||||||
|
- Pure White: #FFFFFF (cards)
|
||||||
|
- Olive Green: #4A5D23 (active states)
|
||||||
|
|
||||||
|
Variants:
|
||||||
|
- Gold Hover: #8A7555
|
||||||
|
- Gold Light: #C4A882
|
||||||
|
- Olive Hover: #5A7030
|
||||||
|
- Primary Light: #2D322A
|
||||||
|
```
|
||||||
|
|
||||||
|
### CLAUDE.md Design Requirements Update
|
||||||
|
|
||||||
|
Replace the existing color scheme section with:
|
||||||
|
|
||||||
```markdown
|
```markdown
|
||||||
## Color Palette
|
- **Color scheme:**
|
||||||
|
- Dark Charcoal (#1B1D1A) - Header/Footer backgrounds
|
||||||
| Color | Hex Code | Usage |
|
- Warm Gold (#A68966) - CTA buttons, links, accents
|
||||||
|-------|----------|-------|
|
- Warm Cream (#F4F1EA) - Main page background
|
||||||
| Olive Green | `#8AB357` | Primary brand color |
|
- Forest Green (#2D322A) - Headings, body text
|
||||||
| Darker Olive | `#7AA347` | Hover states |
|
- Pure White (#FFFFFF) - Card backgrounds
|
||||||
| Dark Olive | `#6A9337` | Active states |
|
- Olive Green (#4A5D23) - Active states
|
||||||
| Light Olive | `#A5C87A` | Secondary accents |
|
|
||||||
| Pale Olive | `#C5D9A5` | Subtle backgrounds |
|
|
||||||
| Off-White | `#E8E4DC` | Light backgrounds |
|
|
||||||
| Deep Black | `#1A1A1A` | Text, headings |
|
|
||||||
|
|
||||||
## Logo
|
|
||||||
|
|
||||||
### Description
|
|
||||||
The logo features a square design incorporating Palestinian tatreez (traditional embroidery)
|
|
||||||
patterns with a central botanical/olive motif. The design represents:
|
|
||||||
- **Tatreez Patterns:** Palestinian cultural heritage and identity
|
|
||||||
- **Olive Branch:** Peace, dignity, and connection to the land
|
|
||||||
- **"LIBRA FOR RIGHTS":** Organization name and mission
|
|
||||||
- **Palestinian Flag:** National identity accent
|
|
||||||
|
|
||||||
### Logo Style
|
|
||||||
- Square format
|
|
||||||
- Traditional embroidery-inspired patterns
|
|
||||||
- Botanical/organic central element
|
|
||||||
- Deep black and olive green color scheme
|
|
||||||
- Cultural authenticity with modern presentation
|
|
||||||
```
|
|
||||||
|
|
||||||
### Files to Remove
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Old logo files to remove after verification
|
|
||||||
rm public/images/logo.svg
|
|
||||||
rm public/images/logo-reversed.svg
|
|
||||||
rm public/images/logo-mono.svg
|
|
||||||
rm public/favicon.svg
|
|
||||||
|
|
||||||
# Temporary logo folder to remove
|
|
||||||
rm -rf logo/
|
|
||||||
```
|
|
||||||
|
|
||||||
### Test Color Value Updates
|
|
||||||
|
|
||||||
```php
|
|
||||||
// Old assertions
|
|
||||||
$this->assertStringContainsString('#4A4A42', $content);
|
|
||||||
$this->assertStringContainsString('#C9C4BA', $content);
|
|
||||||
|
|
||||||
// New assertions
|
|
||||||
$this->assertStringContainsString('#8AB357', $content);
|
|
||||||
$this->assertStringContainsString('#A5C87A', $content);
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Dev Checklist
|
## Dev Checklist
|
||||||
|
|
||||||
- [ ] Update `docs/brand.md` with new color palette
|
- [ ] Update `docs/brand.md` color palette section
|
||||||
- [ ] Update `docs/brand.md` with new logo description
|
- [ ] Update `docs/brand.md` color usage guidelines
|
||||||
- [ ] Update `docs/logo-generation-instructions.md` for square format
|
- [ ] Update `CLAUDE.md` Design Requirements section
|
||||||
- [ ] Review and update `CLAUDE.md` design requirements
|
- [ ] Review `docs/architecture.md` for color references
|
||||||
- [ ] Review architecture documentation for color references
|
- [ ] Review `docs/prd.md` for color references
|
||||||
- [ ] Update `AccessibilityComplianceTest.php` color assertions
|
- [ ] Update `PdfBrandColorsTest.php` assertions
|
||||||
- [ ] Update `EmailTemplateColorsTest.php` color assertions
|
- [ ] Review other test files for color assertions
|
||||||
- [ ] Update `PdfBrandColorsTest.php` color assertions
|
- [ ] Update CSS comments in `app.css`
|
||||||
- [ ] Review and update any other test color assertions
|
- [ ] Review `docs/logo-generation-instructions.md` if exists
|
||||||
- [ ] Remove old SVG logo files from `public/images/`
|
- [ ] Final review of all documentation for consistency
|
||||||
- [ ] Remove old `public/favicon.svg`
|
|
||||||
- [ ] Remove temporary `logo/` folder
|
|
||||||
- [ ] Verify all tests pass with new color values
|
|
||||||
- [ ] Final visual review of documentation
|
|
||||||
|
|
||||||
## Estimation
|
## Estimation
|
||||||
|
|
||||||
**Complexity:** Low
|
**Complexity:** Low
|
||||||
**Risk:** Low - Documentation and cleanup tasks
|
**Risk:** Low - Documentation only, no code changes
|
||||||
|
|
||||||
## Dependencies
|
## Dependencies
|
||||||
|
|
||||||
- All other Epic 12 stories should be completed before final cleanup
|
- Stories 12.2, 12.3, 12.4, 12.5 must be completed first
|
||||||
- This story should be completed last in the epic
|
- New colors must be implemented and verified before documenting
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Dev Agent Record
|
||||||
|
|
||||||
|
### Status
|
||||||
|
Not Started - Blocked (waiting for Stories 12.2-12.5 completion)
|
||||||
|
|
||||||
|
### Agent Model Used
|
||||||
|
(To be filled during implementation)
|
||||||
|
|
||||||
|
### File List
|
||||||
|
(To be filled during implementation)
|
||||||
|
|
||||||
|
### Change Log
|
||||||
|
|
||||||
|
| Date | Change |
|
||||||
|
|------|--------|
|
||||||
|
| 2026-01-04 | Story created for documenting new Dark Charcoal & Warm Gold palette |
|
||||||
|
|
||||||
|
### Completion Notes
|
||||||
|
(To be filled during implementation)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue