Five interaction patterns built entirely from cssvars.css — no custom CSS rules, no JavaScript. Every open/close/hover state is driven by native HTML (<details>, :checked, :hover) or the browser's own resize behavior.
.dropdown-state / .dropdown-menu mechanism as the context menu, but the panel holds rich content (heading, text, actions) instead of a .menu list — this is really the same primitive with different contents..tooltip / .tooltip-body — the framework already reveals .tooltip-body on :hover. Widening it with .tooltip3x and filling it with real content turns the tooltip primitive into a hover card, zero new CSS.Reviewed by @kim.majali KM Kim Majali Creator, CSS Vars Framework Building dependency-free, zero-JS CSS tooling. 500+ utility classes, one stylesheet. 128 repos 4.2k stars on Jul 29.
.modal-state / .modal / .modal__inner. Without JS the list can't live-filter as you type, so it's presented as a grouped, always-visible command list — a real "type to filter" experience is the one honest JS trade-off in this set.Suggested
Navigation
.modal primitive used for the Command Bar — larger input, centered higher on screen, results grouped by type.
Built with love in by Kim Majali, EITO team, and contributors.