with one click
css-styling
Write modern, maintainable CSS using best practices for layouts, responsive design, animations, and CSS architecture. Use when styling websites, fixing CSS issues, or implementing designs.
Menu
Write modern, maintainable CSS using best practices for layouts, responsive design, animations, and CSS architecture. Use when styling websites, fixing CSS issues, or implementing designs.
Writes, edits, and creates dbt models following best practices. Use when user needs to create new dbt SQL models, update existing models, or convert raw SQL to dbt format. Handles staging, intermediate, and mart models with proper config blocks, CTEs, and documentation.
Apply Domain-Driven Design, Clean Architecture, CQRS, and command/query patterns to code reviews and feature design. Use when analyzing or designing code in Application, Service, Infrastructure, DataAccess, Validation, Domain, or Functions projects, or when addressing architectural concerns, layering, mapping, entities, value objects, repositories, or validators in the Rome Repair Order Service.
Analyzes and refactors code using Domain-Driven Design principles. Use when refactoring domain models, identifying DDD anti-patterns, improving domain clarity, or applying tactical/strategic DDD patterns.
Guide for DDD strategic design - analyzing domains through structured questioning, conducting stakeholder interviews (PM/domain experts/users), and producing Bounded Context analysis, Context Maps, and Ubiquitous Language. Use when user needs help understanding domain boundaries, planning domain interviews, or structuring DDD strategic artifacts.
Win competitive rounds: run a clean process, deliver value previews before asking, coordinate partners, and manage timelines. Use when you're trying to close a 'must win' deal against other funds.
End-to-end associate workflow with time-boxed gates: thesis -> sourcing -> meetings -> diligence -> memo, ending with either IC-ready memo or explicit kill decision. Use when you need to run the full pipeline for a sector or a specific deal.
| name | css-styling |
| description | Write modern, maintainable CSS using best practices for layouts, responsive design, animations, and CSS architecture. Use when styling websites, fixing CSS issues, or implementing designs. |
When writing CSS:
*, *::before, *::after {
box-sizing: border-box;
}
* {
margin: 0;
padding: 0;
}
html {
-webkit-text-size-adjust: none;
text-size-adjust: none;
}
body {
min-height: 100vh;
line-height: 1.5;
-webkit-font-smoothing: antialiased;
}
img, picture, video, canvas, svg {
display: block;
max-width: 100%;
}
input, button, textarea, select {
font: inherit;
}
p, h1, h2, h3, h4, h5, h6 {
overflow-wrap: break-word;
}
:root {
/* Colors */
--color-primary: #2563eb;
--color-primary-dark: #1d4ed8;
--color-secondary: #64748b;
--color-success: #22c55e;
--color-error: #ef4444;
/* Typography */
--font-sans: system-ui, -apple-system, sans-serif;
--font-mono: ui-monospace, monospace;
--text-xs: 0.75rem;
--text-sm: 0.875rem;
--text-base: 1rem;
--text-lg: 1.125rem;
--text-xl: 1.25rem;
--text-2xl: 1.5rem;
--text-3xl: 1.875rem;
/* Spacing */
--space-1: 0.25rem;
--space-2: 0.5rem;
--space-3: 0.75rem;
--space-4: 1rem;
--space-6: 1.5rem;
--space-8: 2rem;
--space-12: 3rem;
--space-16: 4rem;
/* Borders */
--radius-sm: 0.25rem;
--radius-md: 0.375rem;
--radius-lg: 0.5rem;
--radius-full: 9999px;
/* Shadows */
--shadow-sm: 0 1px 2px rgba(0,0,0,0.05);
--shadow-md: 0 4px 6px rgba(0,0,0,0.1);
--shadow-lg: 0 10px 15px rgba(0,0,0,0.1);
/* Transitions */
--transition-fast: 150ms ease;
--transition-normal: 300ms ease;
}
/* Dark mode */
@media (prefers-color-scheme: dark) {
:root {
--color-bg: #0f172a;
--color-text: #f1f5f9;
}
}
/* Center anything */
.center {
display: flex;
justify-content: center;
align-items: center;
}
/* Space between */
.space-between {
display: flex;
justify-content: space-between;
align-items: center;
}
/* Stack vertically */
.stack {
display: flex;
flex-direction: column;
gap: var(--space-4);
}
/* Wrap items */
.flex-wrap {
display: flex;
flex-wrap: wrap;
gap: var(--space-4);
}
/* Auto-fit responsive grid */
.grid-auto {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: var(--space-6);
}
/* Fixed columns */
.grid-3 {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: var(--space-4);
}
/* Sidebar layout */
.with-sidebar {
display: grid;
grid-template-columns: 300px 1fr;
gap: var(--space-8);
}
/* Holy grail layout */
.holy-grail {
display: grid;
grid-template:
"header header header" auto
"nav main aside" 1fr
"footer footer footer" auto
/ 200px 1fr 200px;
min-height: 100vh;
}
/* Mobile-first breakpoints */
/* Base: Mobile */
@media (min-width: 640px) {
/* Tablet */
}
@media (min-width: 1024px) {
/* Desktop */
}
@media (min-width: 1280px) {
/* Large desktop */
}
/* Container queries */
.card-container {
container-type: inline-size;
}
@container (min-width: 400px) {
.card {
display: flex;
}
}
/* Clamp for fluid typography */
h1 {
font-size: clamp(2rem, 5vw, 4rem);
}
Buttons:
.btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: var(--space-2);
padding: var(--space-3) var(--space-6);
font-weight: 500;
border-radius: var(--radius-md);
border: none;
cursor: pointer;
transition: all var(--transition-fast);
}
.btn-primary {
background: var(--color-primary);
color: white;
}
.btn-primary:hover {
background: var(--color-primary-dark);
}
.btn:focus-visible {
outline: 2px solid var(--color-primary);
outline-offset: 2px;
}
Cards:
.card {
background: white;
border-radius: var(--radius-lg);
box-shadow: var(--shadow-md);
overflow: hidden;
}
.card-body {
padding: var(--space-6);
}
.card-title {
font-size: var(--text-xl);
font-weight: 600;
margin-bottom: var(--space-2);
}
Forms:
.input {
width: 100%;
padding: var(--space-3) var(--space-4);
border: 1px solid #e2e8f0;
border-radius: var(--radius-md);
font-size: var(--text-base);
transition: border-color var(--transition-fast);
}
.input:focus {
outline: none;
border-color: var(--color-primary);
box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}
.input:invalid {
border-color: var(--color-error);
}
/* Fade in */
@keyframes fadeIn {
from { opacity: 0; }
to { opacity: 1; }
}
.fade-in {
animation: fadeIn var(--transition-normal) ease-out;
}
/* Slide up */
@keyframes slideUp {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.slide-up {
animation: slideUp var(--transition-normal) ease-out;
}
/* Respect user preferences */
@media (prefers-reduced-motion: reduce) {
*, *::before, *::after {
animation-duration: 0.01ms !important;
transition-duration: 0.01ms !important;
}
}
/* Visually hidden (accessible) */
.visually-hidden {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border: 0;
}
/* Truncate text */
.truncate {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
/* Line clamp */
.line-clamp-2 {
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}
will-change sparinglytransform and opacity for animationscontain for isolated components// In functions.php or plugin file
function theme_enqueue_styles() {
// Main stylesheet
wp_enqueue_style(
'theme-style',
get_stylesheet_uri(),
array(),
wp_get_theme()->get('Version')
);
// Additional CSS
wp_enqueue_style(
'theme-custom',
get_template_directory_uri() . '/assets/css/custom.css',
array('theme-style'),
'1.0.0'
);
}
add_action('wp_enqueue_scripts', 'theme_enqueue_styles');
// Admin styles
function theme_admin_styles() {
wp_enqueue_style(
'theme-admin',
get_template_directory_uri() . '/assets/css/admin.css',
array(),
'1.0.0'
);
}
add_action('admin_enqueue_scripts', 'theme_admin_styles');
// Register RTL stylesheet
wp_enqueue_style('theme-style', get_stylesheet_uri());
wp_style_add_data('theme-style', 'rtl', 'replace');
// Or with suffix
wp_style_add_data('theme-style', 'rtl', get_template_directory_uri() . '/assets/css/style-rtl.css');
/* Use logical properties for automatic RTL */
.element {
margin-inline-start: 1rem; /* margin-left in LTR, margin-right in RTL */
padding-inline-end: 1rem; /* padding-right in LTR, padding-left in RTL */
text-align: start; /* left in LTR, right in RTL */
}
/* Or use [dir] attribute */
[dir="rtl"] .element {
margin-left: 0;
margin-right: 1rem;
}
// Editor styles
function theme_editor_styles() {
add_theme_support('editor-styles');
add_editor_style('assets/css/editor-style.css');
}
add_action('after_setup_theme', 'theme_editor_styles');
// Block styles
function theme_block_styles() {
wp_enqueue_block_style('core/button', array(
'handle' => 'theme-button-style',
'src' => get_template_directory_uri() . '/assets/css/blocks/button.css',
));
}
add_action('init', 'theme_block_styles');
{
"version": 2,
"settings": {
"color": {
"palette": [
{ "slug": "primary", "color": "#2563eb", "name": "Primary" },
{ "slug": "secondary", "color": "#64748b", "name": "Secondary" }
]
},
"spacing": {
"units": ["px", "rem", "%"],
"spacingScale": { "steps": 7 }
},
"typography": {
"fontFamilies": [
{ "slug": "system", "fontFamily": "system-ui, sans-serif", "name": "System" }
]
}
}
}
/* Use WordPress CSS variables from theme.json */
.element {
color: var(--wp--preset--color--primary);
font-family: var(--wp--preset--font-family--system);
padding: var(--wp--preset--spacing--40);
}
/* Match WordPress admin colors */
.wp-admin .my-plugin-box {
background: #f0f0f1;
border: 1px solid #c3c4c7;
border-radius: 4px;
}
/* Use admin color scheme variables */
.wp-admin .my-button {
background: var(--wp-admin-theme-color, #2271b1);
color: var(--wp-admin-theme-color-darker-10, #135e96);
}
/* Responsive admin */
@media screen and (max-width: 782px) {
.wp-admin .my-plugin-box {
padding: 12px;
}
}
wp_add_inline_style() for dynamic CSS