CSS and styling best practices. Use when working with styles, layouts, or theming.
Follow modern CSS architecture patterns:
Use CSS custom properties for theming:
:root {
/* Colors */
--color-primary: #10a37f;
--color-primary-dark: #0d8a6a;
--color-bg: #0f0f0f;
--color-bg-elevated: #1a1a1a;
--color-text: #ffffff;
--color-text-muted: #a0a0a0;
--color-border: #333333;
/* Spacing */
--space-xs: 4px;
--space-sm: 8px;
--space-md: 16px;
--space-lg: 24px;
--space-xl: 32px;
/* Border Radius */
--radius-sm: 8px;
--radius: 12px;
--radius-lg: 16px;
}
Always use <style scoped> in Vue components:
<style scoped>
.card {
background: var(--color-bg-elevated);
border-radius: var(--radius);
}
</style>
Prefer modern layout methods:
/* Flexbox for 1D layouts */
.row {
display: flex;
gap: var(--space-md);
align-items: center;
}
/* Grid for 2D layouts */
.grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
gap: var(--space-lg);
}
Start with mobile styles, add breakpoints for larger screens:
.container {
padding: var(--space-md);
}
@media (min-width: 768px) {
.container {
padding: var(--space-lg);
}
}
@media (min-width: 1024px) {
.container {
padding: var(--space-xl);
max-width: 1200px;
margin: 0 auto;
}
}
Use consistent transitions:
.button {
transition: all 0.2s ease;
}
.button:hover {
transform: translateY(-2px);
}
This project uses dark mode by default. For light mode support:
@media (prefers-color-scheme: light) {
:root {
--color-bg: #ffffff;
--color-text: #1f2937;
}
}
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer