Skip to the main content
Menu

Edition 02 / the working component system

Every detail, in one language.

Use the classes in this reference and the exact values in theme.json. These components inherit this identity's fonts, colors, proportions, and controls.

Typography

Display / playfair

Stay in a different light.

Reading text is 16px with a 1.7 line height and a maximum line length of 65 characters. A useful hierarchy is a first-class part of the system.

A house in another light

Color & surfaces

Slate night
#3E4552

Moonlight
#C4CDDC

Table linen
#F4ECDD

Brass
#C3A276

Ink on paper and ink on accent are approved normal-text pairings. Support color is a decorative surface until a specific text pairing is checked.

Controls

Buttons are at least 48px tall. Focus is visible. Keep existing handlers, links, and form behavior when applying the theme.

Cards & information

01 / The rooms

Rooms with a point of view

Considered spaces that make room for a different rhythm.

02 / The table

A table to gather at

Seasonal pleasures and the good feeling of being well hosted.

03 / The house

A personal kind of place

Thoughtful details that feel collected rather than imposed.

Forms

Notices

This is an informational component. Use the ink / accent pairing for clear, readable supporting information. Connect status text to your real application state.

Tables

Theme system specifications
ElementValuePurpose
Spacing unit4pxA consistent compositional rhythm
Body text16px / 1.7Comfortable, readable content
Controls48px minimumUseful touch and keyboard targets

Accordions

How do I install this exact theme?

Download the complete kit. Read INSTALL.md, run install-theme.mjs against your project, and attach the exact data-openform attribute to your root or intended subtree.

Can I use it with my existing application?

Yes. Use theme.css and map your components to the provided of-* classes. Preserve your routes, application data, interactions, and actual business content.

The complete identity

Maison Lune complete visual identity