# Class CSSThemeCompiler

java.lang.Object
com.codename1.ui.css.CSSThemeCompiler

public class CSSThemeCompiler extends java.lang.Object

Compiles a subset of Codename One CSS into theme properties stored in a `MutableResource`.

### Supported selector syntax

- `UIID`
- `UIID:selected`
- `UIID:pressed`
- `UIID:disabled`
- `*` (mapped to `Component`)
- `:root` (for constants only)

### Supported declarations

- `color`
- `background-color`
- `padding`
- `margin`
- `font-family` (mapped to `font` string for later resolution)
- `cn1-derive`
- `cn1-image-id`
- `cn1-mutable-image`
- border-related properties: `border`, `border-*`, `background-image`, `background-position`, `background-repeat`

### Theme constants

- CSS custom property definitions in `:root`, e.g. `--primary: #ff00ff;`
- `@constants { name: value; other: value; }`
- `var(--name)` dereferencing in declaration values.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static class`
  `CSSThemeCompiler.CSSSyntaxException`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `CSSThemeCompiler()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `compile(String css, MutableResource resources, String themeName)`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### CSSThemeCompiler

    public CSSThemeCompiler()

- ## Method Details

  - ### compile

    public void compile(String css, MutableResource resources, String themeName)