From claude-skills
Provides an anti-AI-slop design system for premium interfaces with dark-first OKLCH color, fluid clamp() typography, DTCG tokens, View Transitions API, and specific CSS patterns for typography, color, and spacing.
How this skill is triggered — by the user, by Claude, or both
Slash command
/claude-skills:10-experience-and-design-systemorg:website_buildThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Build anti-AI-slop premium interfaces: dark-first OKLCH color, fluid `clamp()` type, DTCG tokens, View Transitions on every public-facing surface.
Build anti-AI-slop premium interfaces: dark-first OKLCH color, fluid clamp() type, DTCG tokens, View Transitions on every public-facing surface.
Apple Test — after every design: two elements compete → remove one; crowded → add whitespace; busy type → reduce sizes, increase weight contrast; final feel: effortless, inevitable.
rgba(0,0,0,0.81) · Text shadow 1px 1px 1px rgba(255,255,255,0.333) · Box shadow 2px 2px 2px rgba(0,0,0,0.69)font-display:swaptext-wrap:balance headings, text-wrap:pretty paragraphs:root {
--text-xs: clamp(0.75rem, 0.7rem + 0.25vw, 0.875rem);
--text-sm: clamp(0.875rem, 0.8rem + 0.375vw, 1rem);
--text-base: clamp(1rem, 0.9rem + 0.5vw, 1.125rem);
--text-lg: clamp(1.125rem, 1rem + 0.625vw, 1.25rem);
--text-xl: clamp(1.25rem, 1rem + 1.25vw, 1.5rem);
--text-2xl: clamp(1.5rem, 1.1rem + 2vw, 2rem);
--text-3xl: clamp(2rem, 1.5rem + 2.5vw, 3rem);
--text-4xl: clamp(2.5rem, 1.5rem + 5vw, 4.5rem);
--text-hero: clamp(3rem, 2rem + 5vw, 6rem);
}
:root {
color-scheme: light dark;
--bg-primary: #060610; --bg-secondary: #0a0a1a; --bg-tertiary: #121225;
--bg-card: #0f0f1f; --bg-elevated: #1a1a35;
--text-primary: #f0f0f5; --text-secondary: #a0a0b5; --text-muted: #606080;
--accent-cyan: #00E5FF; --accent-blue: #50AAE3; --accent-purple: #8B5CF6;
--gradient-primary: linear-gradient(135deg, #00E5FF, #50AAE3);
--gradient-accent: linear-gradient(135deg, #50AAE3, #8B5CF6);
--border-subtle: rgba(255,255,255,0.06); --border-hover: rgba(255,255,255,0.12);
--shadow-sm: 0 1px 2px rgba(0,0,0,0.3); --shadow-md: 0 4px 12px rgba(0,0,0,0.4);
--shadow-lg: 0 8px 32px rgba(0,0,0,0.5); --shadow-glow: 0 0 20px rgba(0,229,255,0.15);
}
#000 (use #060610) · Never #fff (use #f0f0f5)color-scheme:light dark · data-theme="dark|light" user override · localStorage persistence · prefers-color-scheme system default · Always provide togglecolor-mix() · Relative oklch(from var(--brand) l c calc(h + 30)) · light-dark() theme-aware@layer reset, base, tokens, components, utilities, overrides;
container-type:inline-size, @container) · :has() replaces JS@scope bounded styling · Anchor positioning replaces Floating UI · Scroll-state queries @container scroll-state(stuck: top) (Baseline 2026)if() · Typed attr() · sibling-index() / sibling-count() stagger: transition-delay: calc((sibling-index() - 1) * 40ms)appearance:base-select native <select> (Chrome 135+) · @supports for progressive enhancement@scope · Anchor positioning · Scroll-state queries · @starting-style · interpolate-size: allow-keywords · field-sizing: content · text-wrap: pretty · @property.tokens / .tokens.json, MIME application/design-tokens+json$value (required), $type, $description, $deprecated, $extensions"$value": "{base.color}" · $ref JSON Pointer · Group $type inheritance · $root for base + variants · $extends for deep merge$ prefix, no {} / . in namesDESIGN.md: plain-text markdown; sections: Visual Theme, Color Palette, Typography, Spacing + Layout, Components, Elevationclamp(1rem,3vw,3rem)clamp(4rem,8vw,8rem), border between; grid auto-fit minmax(280px,1fr), 1fr at 768pxrgba(6,6,16,0.85), blur(16px)cursor:pointer, hover state, focus-visible (3px cyan, 2px offset), active (scale 0.98), transition (0.2s color, 0.1s transform). WCAG 2.2 — min 24×24px targets, focus not obscured by sticky headers, dragging alternatives required, accessible auth.
Every link/button/card MUST visually differ across :default | :hover | :focus-visible | :active — NEVER let two states look identical.
translateY(-1px) · Focus-visible → 3px cyan ring 2px offset (distinct from hover) · Active → scale(0.98) + immediate color confirmAudit gate: Playwright cycles each interactive element through 4 states → screenshots → diff ≥3px pixel-difference between adjacent states or fail.
.underline-hover{position:relative}
.underline-hover::after{content:"";position:absolute;z-index:1;left:51%;right:51%;bottom:0;background:var(--brand-accent);height:1px;transition:left .3s ease-out,right .3s ease-out}
.underline-hover:hover::after,.underline-hover:focus-visible::after{left:0;right:0}
var(--brand-accent) / theme equivalent — never hard-coded #hex.
Generates distinctive production-grade frontend UIs for web components, pages, and apps with bold creative designs avoiding generic AI aesthetics.
Generates distinctive, production-grade frontend code for web components, pages, and apps with bold, creative UX designs in styles like brutalist or retro-futuristic, avoiding generic AI aesthetics.
Applies production-grade UI/UX design with anti-AI-slop enforcement, covering typography, color, accessibility, and responsive layout for React/TypeScript components.
npx claudepluginhub heymegabyte/claude-skills