"매 CSS architecture 의 핵심: scope + composition + design tokens + 매 minimize specificity wars". 매 2010s OOCSS / BEM / SMACSS, 매 2017 CSS-in-JS, 매 2020 utility-first (Tailwind), 매 2024 native CSS (cascade layers, container queries, :has(), nesting, view transitions). 매 2026 현재 Tailwind v4 + CSS Modules + design-token system 의 dominant.
매 핵심
매 architecture pillars
Scoping: 매 CSS Modules / Shadow DOM / Tailwind atomic / Vue scoped.
Tokens: 매 design tokens (--color-primary) — 매 single source of truth.
Cascade layers: 매 @layer — 매 explicit specificity ordering.
Container queries: 매 component-level responsive (not viewport).
Logical properties: 매 margin-inline — 매 i18n RTL/LTR free.
매 modern CSS features (2026 baseline)
@layer reset, base, components, utilities;
@container (min-width: 30rem) { ... }
:has(> img) parent selector.
Native nesting & (no preprocessor needed).
view-transition-name: card-hero; for smooth navigation.
color-mix(in oklch, var(--brand) 80%, white).
매 응용
Design systems (Radix, shadcn/ui, Material 3).
Multi-brand white-label apps (token theming).
Email templates (limited subset).
Cross-platform (web + React Native via NativeWind).
언제: 매 component CSS scaffolding, 매 token system design, 매 Tailwind class consolidation, 매 legacy CSS refactor (BEM → cascade layers).
언제 X: 매 pixel-perfect designer review — 매 visual diff tooling 사용.
❌ 안티패턴
!important 의 남용: 매 specificity war — 매 cascade layers 로 해결.
Magic numbers (top: 17px): 매 token / spacing scale 의 사용.
Global selectors (div { ... }): 매 leakage — 매 scoped 사용.
Inline styles for everything (CSS-in-JS overuse): 매 runtime cost.
Ignoring prefers-reduced-motion: 매 a11y violation.
Pixel-only sizing: 매 rem / em / clamp() 의 사용.
🧪 검증 / 중복
Verified (MDN cascade layers, web.dev container queries, Tailwind v4 docs 2025, CSS Working Group specs).