browser-validator
Automatically validate implementations in real browsers after code is written or when user says "test this", "test what you built…
Automatically generate mobile-first responsive CSS/SCSS when creating component styles or mentioning responsive design. Implements standard breakpoints (768px, 1024px), ensures WCAG AA color contrast, creates touch-friendly interfaces (44px minimum targets), adds proper focus
Claude Code
$ npx -y skills add kanopi/cms-cultivator --skill responsive-styling --agent claude-code
Codex
$ npx skills add kanopi/cms-cultivator --skill responsive-styling -a codex -y
Cursor
$ npx skills add kanopi/cms-cultivator --skill responsive-styling -a cursor -y
Gemini CLI
$ npx skills add kanopi/cms-cultivator --skill responsive-styling -a gemini-cli -y
GitHub Copilot
$ npx skills add kanopi/cms-cultivator --skill responsive-styling -a github-copilot -y
OpenCode
$ npx skills add kanopi/cms-cultivator --skill responsive-styling -a opencode -y
Windsurf
$ npx skills add kanopi/cms-cultivator --skill responsive-styling -a windsurf -y
name: responsive-styling description: Automatically generate mobile-first responsive CSS/SCSS when creating component styles or mentioning responsive design. Implements standard breakpoints (768px, 1024px), ensures WCAG AA color contrast, creates touch-friendly interfaces (44px minimum targets), adds proper focus indicators, supports reduced motion, scales typography responsively, and provides detailed technical specifications with exact values.
Generate mobile-first, responsive CSS/SCSS that works across all devices and follows accessibility best practices.
Responsive design is accessibility. Mobile-first is user-first.
1. **Mobile First is Performance First**: Start with constraints, enhance progressively 2. **Accessibility is Non-Negotiable**: WCAG AA compliance is the baseline, not a bonus 3. **Exact Specifications Build Confidence**: Calculate exact contrast ratios, don't estimate 4. **Touch-Friendly by Default**: 44px minimum targets prevent user frustration
This skill automatically activates when:
Before generating responsive styles, determine:
1. **Layout container** → Focus on width, padding, grid/flex 2. **Content block** → Focus on typography, spacing, images 3. **Interactive element** (button, form) → Focus on touch targets, states, transitions 4. **Navigation** → Focus on mobile menu, breakpoint behavior 5. **Media** (images, video) → Focus on aspect ratios, object-fit
**Standard mobile-first breakpoints**:
**When to add breakpoints**:
**WCAG 2.1 Level AA compliance**:
**Interactive states** (buttons, links):
**Priority**: Focus states more important than hover (accessibility)
**Mobile-first sizing**:
**Consistent spacing scale** (choose one):
**Apply consistently**:
User requests responsive styles
↓
Determine component type
↓
Define mobile-first base styles (320px+)
↓
Calculate contrast ratios (WCAG AA)
↓
Add tablet breakpoint (768px+) if layout changes
↓
Add desktop breakpoint (1024px+) if needed
↓
Add all interactive states (focus > hover)
↓
Add reduced motion support
↓
Output mobile-first SCSS with exact valuesAlways write base styles for mobile, then enhance for larger screens:
// ✅ CORRECT: Mobile-first
.component {
font-size: 1rem; // Base mobile style
padding: 1rem;
@media (min-width: 768px) {
font-size: 1.125rem; // Enhance for tablet
padding: 2rem;
}
@media (min-width: 1024px) {
font-size: 1.25rem; // Enhance for desktop
padding: 3rem;
}
}
// ❌ WRONG: Desktop-first
.component {
font-size: 1.25rem;
@media (max-width: 1024px) {
font-size: 1.125rem;
}
@media (max-width: 768px) {
font-size: 1rem;
}
}Use consistent breakpoints:
// Mobile: 320px - 767px (base styles, no media query) // Tablet: 768px - 1023px $breakpoint-tablet: 768px; // Desktop: 1024px+ $breakpoint-desktop: 1024px; // Optional additional breakpoints $breakpoint-mobile-large: 480px; $breakpoint-tablet-large: 960px; $breakpoint-desktop-large: 1280px;
Scale typography appropriately:
.heading-1 {
// Mobile base
font-size: 2rem; // 32px
line-height: 1.2;
font-weight: 700;
margin-bottom: 1rem;
// Tablet
@media (min-width: 768px) {
font-size: 2.5rem; // 40px
margin-bottom: 1.5rem;
}
// Desktop
@media (min-width: 1024px) {
font-size: 3rem; // 48px
margin-bottom: 2rem;
}
}
.body-text {
// Mobile base
font-size: 1rem; // 16px
line-height: 1.6;
// Tablet
@media (min-width: 768px) {
font-size: 1.125rem; // 18px
line-hSpecialist agents and auto-invoked skills for Drupal/WordPress development. Works in Claude Code, Claude Desktop, and OpenAI Codex. Full documentation: What changed in 2.0? CMS Cultivator now focuses on CMS development workflows.
Automatically validate implementations in real browsers after code is written or when user says "test this", "test what you built…
Run the right linting, formatting, and static-analysis commands after changing code, and check it against PHPCS, ESLint,…
Automatically generate conventional commit messages when user has staged changes and mentions committing. Analyzes git diff and…
Generate and maintain patches for Composer-installed packages (Drupal contrib modules, WordPress packages, PHP libraries) using…
Automatically analyze test coverage when user asks which code is tested, mentions coverage gaps, or shows code asking about…
Deterministic cleanup of DDEV and Docker disk usage on OrbStack, Docker Desktop, or any Docker provider. Safely reclaims space by…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.