Principles
The non-negotiables. Read this first.
Start here
LSCSS stands for Layered Semantic CSS. It is a practical front-end architecture system designed to make CSS easier to maintain, safer to change, and less likely to become a shared file that teams avoid maintaining.
LSCSS means: Layered Semantic CSS — a practical system for writing CSS that teams can understand, maintain, and improve without fear.
It combines clear ownership, cascade layers, semantic components, controlled utilities, temporary hacks, and predictable decision-making. The goal is not clever CSS. The goal is calm CSS.
LSCSS reflects a lived way of building CSS over time. Guidance here comes from repeated delivery patterns rather than formal stats.
Most teams do not have a CSS syntax problem. They have an ownership problem.
LSCSS is not a framework. It is a way to organise CSS, so it applies wherever you author stylesheets—alongside any component library or site generator, in plain templates, or in codebases you are improving over time. It does not depend on how you wire up JavaScript in the browser; it only needs a place your CSS can live.
LSCSS is usually a strong fit when most of these are true:
Good CSS should not feel fragile. It should feel boring, predictable, and safe to change.
If nobody is afraid to touch it, the architecture is probably working.