@matteoaliano/forest-ui 0.2.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/theme.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/theme/tokens.ts","../src/theme/palette.ts","../src/theme/typography.ts","../src/theme/components.ts","../src/theme/shadows.ts","../src/theme/index.ts"],"names":["shadows","createTheme"],"mappings":";;;;;;;AAOO,IAAM,MAAA,GAAS;AAAA,EACpB,IAAA,EAAM;AAAA,IACJ,KAAA,EAAO,SAAA;AAAA,IACP,KAAA,EAAO,SAAA;AAAA,IACP,WAAA,EAAa;AAAA,GACf;AAAA,EAEA,KAAA,EAAO;AAAA,IACL,EAAA,EAAI,SAAA;AAAA,IACJ,EAAA,EAAI,SAAA;AAAA,IACJ,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK;AAAA,GACP;AAAA,EAEA,IAAA,EAAM;AAAA,IACJ,EAAA,EAAI,SAAA;AAAA,IACJ,EAAA,EAAI,SAAA;AAAA,IACJ,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK;AAAA,GACP;AAAA,EAEA,KAAA,EAAO;AAAA,IACL,EAAA,EAAI,SAAA;AAAA,IACJ,EAAA,EAAI,SAAA;AAAA,IACJ,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK;AAAA,GACP;AAAA,EAEA,OAAA,EAAS;AAAA,IACP,EAAA,EAAI,SAAA;AAAA,IACJ,EAAA,EAAI,SAAA;AAAA,IACJ,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK;AAAA,GACP;AAAA,EAEA,OAAA,EAAS;AAAA,IACP,EAAA,EAAI,SAAA;AAAA,IACJ,EAAA,EAAI,SAAA;AAAA,IACJ,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK;AAAA,GACP;AAAA,EAEA,IAAA,EAAM;AAAA,IACJ,EAAA,EAAI,SAAA;AAAA,IACJ,EAAA,EAAI,SAAA;AAAA,IACJ,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK,SAAA;AAAA,IACL,GAAA,EAAK;AAAA;AAET;AAIO,IAAM,OAAA,GAAU;AAAA,EACrB,IAAA,EAAM,CAAA;AAAA,EACN,GAAA,EAAK,CAAA;AAAA,EACL,EAAA,EAAI,CAAA;AAAA,EACJ,EAAA,EAAI,CAAA;AAAA,EACJ,EAAA,EAAI,CAAA;AAAA,EACJ,EAAA,EAAI,EAAA;AAAA,EACJ,EAAA,EAAI,EAAA;AAAA,EACJ,KAAA,EAAO,EAAA;AAAA,EACP,KAAA,EAAO,EAAA;AAAA,EACP,KAAA,EAAO,EAAA;AAAA,EACP,KAAA,EAAO,EAAA;AAAA,EACP,KAAA,EAAO,EAAA;AAAA,EACP,KAAA,EAAO,EAAA;AAAA,EACP,KAAA,EAAO,EAAA;AAAA,EACP,KAAA,EAAO,EAAA;AAAA,EACP,MAAA,EAAQ,GAAA;AAAA,EACR,MAAA,EAAQ;AACV;AAIO,IAAM,MAAA,GAAS;AAAA,EACpB,IAAA,EAAM,CAAA;AAAA,EACN,GAAA,EAAK,CAAA;AAAA,EACL,EAAA,EAAI,CAAA;AAAA,EACJ,EAAA,EAAI,CAAA;AAAA,EACJ,EAAA,EAAI,CAAA;AAAA,EACJ,EAAA,EAAI,EAAA;AAAA,EACJ,EAAA,EAAI,EAAA;AAAA,EACJ,KAAA,EAAO,EAAA;AAAA,EACP,KAAA,EAAO,EAAA;AAAA,EACP,KAAA,EAAO,EAAA;AAAA,EACP,IAAA,EAAM;AACR;AAIO,IAAM,OAAA,GAAU;AAAA,EACrB,EAAA,EAAI,2BAAA;AAAA,EACJ,EAAA,EAAI,sDAAA;AAAA,EACJ,EAAA,EAAI,wDAAA;AAAA,EACJ,EAAA,EAAI,0DAAA;AAAA,EACJ,EAAA,EAAI,0DAAA;AAAA,EACJ,KAAA,EAAO,+BAAA;AAAA,EACP,KAAA,EAAO;AACT,CAAA;AAIO,IAAM,UAAA,GAAa;AAAA,EACxB,KAAA,EAAO,2BAAA;AAAA,EACP,aAAA,EAAe,sDAAA;AAAA,EACf,aAAA,EAAe,iFAAA;AAAA,EACf,IAAA,EAAM,2BAAA;AAAA,EACN,YAAA,EAAc,sDAAA;AAAA,EACd,YAAA,EAAc,iFAAA;AAAA,EACd,KAAA,EAAO,2BAAA;AAAA,EACP,aAAA,EAAe;AACjB;AAIO,IAAM,UAAA,GAAa;AAEnB,IAAM,QAAA,GAAW;AAAA,EACtB,GAAA,EAAK,EAAA;AAAA,EACL,EAAA,EAAI,EAAA;AAAA,EACJ,EAAA,EAAI,EAAA;AAAA,EACJ,EAAA,EAAI,EAAA;AAAA,EACJ,EAAA,EAAI,EAAA;AAAA,EACJ,EAAA,EAAI;AACN;AAEO,IAAM,UAAA,GAAa;AAAA,EACxB,GAAA,EAAK,MAAA;AAAA,EACL,EAAA,EAAI,MAAA;AAAA,EACJ,EAAA,EAAI,MAAA;AAAA,EACJ,EAAA,EAAI,MAAA;AAAA,EACJ,EAAA,EAAI,MAAA;AAAA,EACJ,EAAA,EAAI;AACN;AAEO,IAAM,UAAA,GAAa;AAAA,EACxB,OAAA,EAAS,GAAA;AAAA,EACT,MAAA,EAAQ,GAAA;AAAA,EACR,QAAA,EAAU,GAAA;AAAA,EACV,IAAA,EAAM;AACR;AAIO,IAAM,OAAA,GAAU;AAAA,EACrB,OAAO,EAAE,QAAA,EAAU,IAAI,UAAA,EAAY,MAAA,EAAQ,eAAe,SAAA,EAAU;AAAA,EACpE,IAAI,EAAE,QAAA,EAAU,IAAI,UAAA,EAAY,MAAA,EAAQ,eAAe,SAAA,EAAU;AAAA,EACjE,IAAI,EAAE,QAAA,EAAU,IAAI,UAAA,EAAY,MAAA,EAAQ,eAAe,SAAA,EAAU;AAAA,EACjE,IAAI,EAAE,QAAA,EAAU,IAAI,UAAA,EAAY,MAAA,EAAQ,eAAe,SAAA,EAAU;AAAA,EACjE,EAAA,EAAI,EAAE,QAAA,EAAU,EAAA,EAAI,YAAY,MAAA,EAAO;AAAA,EACvC,EAAA,EAAI,EAAE,QAAA,EAAU,EAAA,EAAI,YAAY,MAAA;AAClC;AAIO,IAAM,SAAA,GAAY;AAAA,EACvB,eAAA,EAAiB,IAAA;AAAA,EACjB,cAAA,EAAgB,EAAA;AAAA,EAChB,aAAA,EAAe;AACjB;AAIO,IAAM,MAAA,GAAS;AAAA,EACpB,GAAA,EAAK,GAAA;AAAA,EACL,EAAA,EAAI,GAAA;AAAA,EACJ,EAAA,EAAI,GAAA;AAAA,EACJ,EAAA,EAAI,GAAA;AAAA,EACJ,EAAA,EAAI,GAAA;AAAA,EACJ,EAAA,EAAI,GAAA;AAAA,EACJ,KAAA,EAAO,IAAA;AAAA,EACP,KAAA,EAAO,IAAA;AAAA,EACP,KAAA,EAAO,IAAA;AAAA,EACP,KAAA,EAAO,IAAA;AAAA,EACP,KAAA,EAAO;AACT;;;ACnOO,IAAM,OAAA,GAA0B;AAAA,EACrC,OAAA,EAAS;AAAA,IACP,IAAA,EAAM,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA;AAAA,IACtB,KAAA,EAAO,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA;AAAA,IACvB,IAAA,EAAM,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA;AAAA,IACtB,YAAA,EAAc,OAAO,IAAA,CAAK;AAAA,GAC5B;AAAA,EACA,SAAA,EAAW;AAAA,IACT,IAAA,EAAM,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,IACrB,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,IACtB,IAAA,EAAM,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,IACrB,YAAA,EAAc,OAAO,IAAA,CAAK;AAAA,GAC5B;AAAA,EACA,KAAA,EAAO;AAAA,IACL,IAAA,EAAM,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA;AAAA,IACtB,KAAA,EAAO,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA;AAAA,IACvB,IAAA,EAAM,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA;AAAA,IACtB,YAAA,EAAc,OAAO,IAAA,CAAK;AAAA,GAC5B;AAAA,EACA,OAAA,EAAS;AAAA,IACP,IAAA,EAAM,MAAA,CAAO,OAAA,CAAQ,GAAG,CAAA;AAAA,IACxB,KAAA,EAAO,MAAA,CAAO,OAAA,CAAQ,GAAG,CAAA;AAAA,IACzB,IAAA,EAAM,MAAA,CAAO,OAAA,CAAQ,GAAG,CAAA;AAAA,IACxB,YAAA,EAAc,OAAO,IAAA,CAAK;AAAA,GAC5B;AAAA,EACA,OAAA,EAAS;AAAA,IACP,IAAA,EAAM,MAAA,CAAO,OAAA,CAAQ,GAAG,CAAA;AAAA,IACxB,KAAA,EAAO,MAAA,CAAO,OAAA,CAAQ,GAAG,CAAA;AAAA,IACzB,IAAA,EAAM,MAAA,CAAO,OAAA,CAAQ,GAAG,CAAA;AAAA,IACxB,YAAA,EAAc,OAAO,IAAA,CAAK;AAAA,GAC5B;AAAA,EACA,IAAA,EAAM;AAAA,IACJ,IAAA,EAAM,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,IACrB,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,IACtB,IAAA,EAAM,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,IACrB,YAAA,EAAc,OAAO,IAAA,CAAK;AAAA,GAC5B;AAAA,EACA,UAAA,EAAY;AAAA,IACV,OAAA,EAAS,OAAO,IAAA,CAAK,KAAA;AAAA,IACrB,KAAA,EAAO,OAAO,IAAA,CAAK;AAAA,GACrB;AAAA,EACA,IAAA,EAAM;AAAA,IACJ,OAAA,EAAS,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,IACxB,SAAA,EAAW,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,IAC1B,QAAA,EAAU,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA,GAC3B;AAAA,EACA,OAAA,EAAS,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,EACxB,MAAA,EAAQ;AAAA,IACN,MAAA,EAAQ,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,IACvB,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,EAAE,CAAA;AAAA,IACrB,QAAA,EAAU,MAAA,CAAO,KAAA,CAAM,EAAE,CAAA;AAAA,IACzB,QAAA,EAAU,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,IACzB,kBAAA,EAAoB,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA;AAEvC;;;ACtDO,IAAM,UAAA,GAAwC;AAAA,EACnD,UAAA;AAAA,EACA,mBAAmB,UAAA,CAAW,OAAA;AAAA,EAC9B,kBAAkB,UAAA,CAAW,MAAA;AAAA,EAC7B,gBAAgB,UAAA,CAAW,IAAA;AAAA;AAAA,EAG3B,EAAA,EAAI;AAAA,IACF,QAAA,EAAU,QAAQ,EAAA,CAAG,QAAA;AAAA,IACrB,UAAA,EAAY,QAAQ,EAAA,CAAG,UAAA;AAAA,IACvB,aAAA,EAAe,QAAQ,EAAA,CAAG,aAAA;AAAA,IAC1B,YAAY,UAAA,CAAW;AAAA,GACzB;AAAA,EACA,EAAA,EAAI;AAAA,IACF,QAAA,EAAU,QAAQ,EAAA,CAAG,QAAA;AAAA,IACrB,UAAA,EAAY,QAAQ,EAAA,CAAG,UAAA;AAAA,IACvB,aAAA,EAAe,QAAQ,EAAA,CAAG,aAAA;AAAA,IAC1B,YAAY,UAAA,CAAW;AAAA,GACzB;AAAA,EACA,EAAA,EAAI;AAAA,IACF,QAAA,EAAU,QAAQ,EAAA,CAAG,QAAA;AAAA,IACrB,UAAA,EAAY,QAAQ,EAAA,CAAG,UAAA;AAAA,IACvB,aAAA,EAAe,QAAQ,EAAA,CAAG,aAAA;AAAA,IAC1B,YAAY,UAAA,CAAW;AAAA,GACzB;AAAA,EACA,EAAA,EAAI;AAAA,IACF,QAAA,EAAU,QAAQ,EAAA,CAAG,QAAA;AAAA,IACrB,UAAA,EAAY,QAAQ,EAAA,CAAG,UAAA;AAAA,IACvB,YAAY,UAAA,CAAW;AAAA,GACzB;AAAA,EACA,EAAA,EAAI;AAAA,IACF,QAAA,EAAU,QAAQ,EAAA,CAAG,QAAA;AAAA,IACrB,UAAA,EAAY,QAAQ,EAAA,CAAG,UAAA;AAAA,IACvB,YAAY,UAAA,CAAW;AAAA,GACzB;AAAA,EACA,EAAA,EAAI;AAAA,IACF,UAAU,QAAA,CAAS,EAAA;AAAA,IACnB,YAAY,UAAA,CAAW,EAAA;AAAA,IACvB,YAAY,UAAA,CAAW;AAAA,GACzB;AAAA,EACA,SAAA,EAAW;AAAA,IACT,UAAU,QAAA,CAAS,EAAA;AAAA,IACnB,YAAY,UAAA,CAAW,EAAA;AAAA,IACvB,YAAY,UAAA,CAAW;AAAA,GACzB;AAAA,EACA,SAAA,EAAW;AAAA,IACT,UAAU,QAAA,CAAS,EAAA;AAAA,IACnB,YAAY,UAAA,CAAW,EAAA;AAAA,IACvB,YAAY,UAAA,CAAW;AAAA,GACzB;AAAA,EACA,KAAA,EAAO;AAAA,IACL,UAAU,QAAA,CAAS,EAAA;AAAA,IACnB,YAAY,UAAA,CAAW,EAAA;AAAA,IACvB,YAAY,UAAA,CAAW;AAAA,GACzB;AAAA,EACA,KAAA,EAAO;AAAA,IACL,UAAU,QAAA,CAAS,EAAA;AAAA,IACnB,YAAY,UAAA,CAAW,EAAA;AAAA,IACvB,YAAY,UAAA,CAAW;AAAA,GACzB;AAAA,EACA,OAAA,EAAS;AAAA,IACP,UAAU,QAAA,CAAS,EAAA;AAAA,IACnB,YAAY,UAAA,CAAW,EAAA;AAAA,IACvB,YAAY,UAAA,CAAW;AAAA,GACzB;AAAA,EACA,QAAA,EAAU;AAAA,IACR,UAAU,QAAA,CAAS,GAAA;AAAA,IACnB,YAAY,UAAA,CAAW,GAAA;AAAA,IACvB,YAAY,UAAA,CAAW,MAAA;AAAA,IACvB,aAAA,EAAe,WAAA;AAAA,IACf,aAAA,EAAe;AAAA,GACjB;AAAA,EACA,MAAA,EAAQ;AAAA,IACN,UAAU,QAAA,CAAS,EAAA;AAAA,IACnB,YAAY,UAAA,CAAW,EAAA;AAAA,IACvB,YAAY,UAAA,CAAW,QAAA;AAAA,IACvB,aAAA,EAAe;AAAA;AAEnB;;;AC9EO,IAAM,UAAA,GAAgC;AAAA;AAAA,EAE3C,SAAA,EAAW;AAAA,IACT,YAAA,EAAc;AAAA,MACZ,gBAAA,EAAkB;AAAA,KACpB;AAAA,IACA,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,cAAc,MAAA,CAAO,EAAA;AAAA,QACrB,UAAA,EAAY,GAAA;AAAA,QACZ,iBAAA,EAAmB;AAAA,UACjB,WAAW,UAAA,CAAW;AAAA;AACxB,OACF;AAAA,MACA,SAAA,EAAW;AAAA,QACT,OAAA,EAAS,WAAA;AAAA,QACT,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY;AAAA,OACd;AAAA,MACA,UAAA,EAAY;AAAA,QACV,OAAA,EAAS,WAAA;AAAA,QACT,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY;AAAA,OACd;AAAA,MACA,SAAA,EAAW;AAAA,QACT,OAAA,EAAS,UAAA;AAAA,QACT,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY;AAAA,OACd;AAAA,MACA,gBAAA,EAAkB;AAAA,QAChB,eAAA,EAAiB,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA;AAAA,QACjC,SAAA,EAAW;AAAA,UACT,eAAA,EAAiB,MAAA,CAAO,KAAA,CAAM,GAAG;AAAA;AACnC,OACF;AAAA,MACA,eAAA,EAAiB;AAAA,QACf,WAAA,EAAa,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA;AAAA,QAC7B,KAAA,EAAO,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA;AAAA,QACvB,SAAA,EAAW;AAAA,UACT,eAAA,EAAiB,MAAA,CAAO,KAAA,CAAM,EAAE,CAAA;AAAA,UAChC,WAAA,EAAa,MAAA,CAAO,KAAA,CAAM,GAAG;AAAA;AAC/B,OACF;AAAA,MACA,WAAA,EAAa;AAAA,QACX,KAAA,EAAO,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA;AAAA,QACvB,SAAA,EAAW;AAAA,UACT,eAAA,EAAiB,MAAA,CAAO,KAAA,CAAM,EAAE;AAAA;AAClC;AACF;AACF,GACF;AAAA;AAAA,EAGA,cAAA,EAAgB;AAAA,IACd,YAAA,EAAc;AAAA,MACZ,gBAAA,EAAkB;AAAA,KACpB;AAAA,IACA,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,cAAc,MAAA,CAAO;AAAA,OACvB;AAAA,MACA,OAAA,EAAS;AAAA,QACP,sBAAA,EAAwB;AAAA,UACtB,WAAA,EAAa,CAAA,UAAA,EAAa,MAAA,CAAO,KAAA,CAAM,GAAG,CAAC,CAAA;AAAA;AAC7C;AACF;AACF,GACF;AAAA;AAAA,EAGA,MAAA,EAAQ;AAAA,IACN,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,WAAW,OAAA,CAAa,EAAA;AAAA,QACxB,SAAA,EAAW;AAAA,UACT,WAAW,OAAA,CAAa;AAAA,SAC1B;AAAA,QACA,iBAAA,EAAmB;AAAA,UACjB,WAAW,UAAA,CAAW;AAAA;AACxB,OACF;AAAA,MACA,OAAA,EAAS;AAAA,QACP,eAAA,EAAiB,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA;AAAA,QACjC,SAAA,EAAW;AAAA,UACT,eAAA,EAAiB,MAAA,CAAO,KAAA,CAAM,GAAG;AAAA;AACnC;AACF;AACF,GACF;AAAA;AAAA,EAGA,YAAA,EAAc;AAAA,IACZ,YAAA,EAAc;AAAA,MACZ,OAAA,EAAS,UAAA;AAAA,MACT,IAAA,EAAM;AAAA;AACR,GACF;AAAA,EACA,gBAAA,EAAkB;AAAA,IAChB,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,cAAc,MAAA,CAAO,EAAA;AAAA,QACrB,0CAAA,EAA4C;AAAA,UAC1C,WAAA,EAAa,MAAA,CAAO,KAAA,CAAM,GAAG;AAAA,SAC/B;AAAA,QACA,gDAAA,EAAkD;AAAA,UAChD,WAAA,EAAa,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA;AAAA,UAC7B,WAAA,EAAa,CAAA;AAAA,UACb,WAAW,UAAA,CAAW;AAAA,SACxB;AAAA,QACA,8CAAA,EAAgD;AAAA,UAC9C,WAAA,EAAa,MAAA,CAAO,KAAA,CAAM,GAAG;AAAA,SAC/B;AAAA,QACA,0DAAA,EAA4D;AAAA,UAC1D,WAAA,EAAa,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA;AAAA,UAC7B,WAAW,UAAA,CAAW;AAAA;AACxB,OACF;AAAA,MACA,cAAA,EAAgB;AAAA,QACd,WAAA,EAAa,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA,OAC9B;AAAA,MACA,KAAA,EAAO;AAAA,QACL,OAAA,EAAS,WAAA;AAAA,QACT,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY,MAAA;AAAA,QACZ,gBAAA,EAAkB;AAAA,UAChB,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,UACtB,OAAA,EAAS;AAAA;AACX,OACF;AAAA,MACA,cAAA,EAAgB;AAAA,QACd,OAAA,EAAS,UAAA;AAAA,QACT,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY;AAAA;AACd;AACF,GACF;AAAA,EACA,aAAA,EAAe;AAAA,IACb,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY,GAAA;AAAA,QACZ,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,QACtB,eAAA,EAAiB;AAAA,UACf,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA,SACxB;AAAA,QACA,aAAA,EAAe;AAAA,UACb,KAAA,EAAO,MAAA,CAAO,KAAA,CAAM,GAAG;AAAA;AACzB;AACF;AACF,GACF;AAAA,EACA,iBAAA,EAAmB;AAAA,IACjB,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY,MAAA;AAAA,QACZ,SAAA,EAAW,CAAA;AAAA,QACX,UAAA,EAAY,CAAA;AAAA,QACZ,aAAA,EAAe;AAAA,UACb,KAAA,EAAO,MAAA,CAAO,KAAA,CAAM,GAAG;AAAA;AACzB;AACF;AACF,GACF;AAAA;AAAA,EAGA,SAAA,EAAW;AAAA,IACT,YAAA,EAAc;AAAA,MACZ,IAAA,EAAM;AAAA,KACR;AAAA,IACA,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA;AACxB;AACF,GACF;AAAA;AAAA,EAGA,eAAA,EAAiB;AAAA,IACf,cAAA,EAAgB;AAAA,MACd,KAAA,EAAO;AAAA,QACL,cAAc,MAAA,CAAO,EAAA;AAAA,QACrB,WAAW,OAAA,CAAa,EAAA;AAAA,QACxB,MAAA,EAAQ,CAAA,UAAA,EAAa,MAAA,CAAO,IAAA,CAAK,GAAG,CAAC,CAAA,CAAA;AAAA,QACrC,SAAA,EAAW;AAAA,OACb;AAAA,MACA,MAAA,EAAQ;AAAA,QACN,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY,MAAA;AAAA,QACZ,OAAA,EAAS,WAAA;AAAA,QACT,eAAA,EAAiB;AAAA,UACf,eAAA,EAAiB,MAAA,CAAO,IAAA,CAAK,EAAE;AAAA,SACjC;AAAA,QACA,yBAAA,EAA2B;AAAA,UACzB,eAAA,EAAiB,MAAA,CAAO,KAAA,CAAM,EAAE;AAAA;AAClC,OACF;AAAA,MACA,OAAA,EAAS;AAAA,QACP,OAAA,EAAS;AAAA;AACX;AACF,GACF;AAAA;AAAA,EAGA,WAAA,EAAa;AAAA,IACX,YAAA,EAAc;AAAA,MACZ,aAAA,EAAe;AAAA,KACjB;AAAA,IACA,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,QACtB,cAAc,MAAA,CAAO,EAAA;AAAA,QACrB,OAAA,EAAS,CAAA;AAAA,QACT,KAAA,EAAO,EAAA;AAAA,QACP,MAAA,EAAQ,EAAA;AAAA,QACR,SAAA,EAAW;AAAA,UACT,eAAA,EAAiB,aAAA;AAAA,UACjB,KAAA,EAAO,MAAA,CAAO,KAAA,CAAM,GAAG;AAAA,SACzB;AAAA,QACA,eAAA,EAAiB;AAAA,UACf,KAAA,EAAO,MAAA,CAAO,KAAA,CAAM,GAAG;AAAA,SACzB;AAAA,QACA,qBAAA,EAAuB;AAAA,UACrB,KAAA,EAAO,MAAA,CAAO,KAAA,CAAM,GAAG;AAAA,SACzB;AAAA,QACA,oBAAA,EAAsB;AAAA,UACpB,OAAA,EAAS,MAAA;AAAA,UACT,WAAW,UAAA,CAAW,KAAA;AAAA,UACtB,cAAc,MAAA,CAAO;AAAA,SACvB;AAAA,QACA,gBAAA,EAAkB;AAAA,UAChB,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA;AACxB;AACF;AACF,GACF;AAAA;AAAA,EAGA,QAAA,EAAU;AAAA,IACR,YAAA,EAAc;AAAA,MACZ,aAAA,EAAe;AAAA,KACjB;AAAA,IACA,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,QACtB,OAAA,EAAS,CAAA;AAAA,QACT,SAAA,EAAW;AAAA,UACT,eAAA,EAAiB,aAAA;AAAA,UACjB,KAAA,EAAO,MAAA,CAAO,KAAA,CAAM,GAAG;AAAA,SACzB;AAAA,QACA,eAAA,EAAiB;AAAA,UACf,KAAA,EAAO,MAAA,CAAO,KAAA,CAAM,GAAG;AAAA,SACzB;AAAA,QACA,qBAAA,EAAuB;AAAA,UACrB,KAAA,EAAO,MAAA,CAAO,KAAA,CAAM,GAAG;AAAA,SACzB;AAAA,QACA,oBAAA,EAAsB;AAAA,UACpB,OAAA,EAAS,MAAA;AAAA,UACT,WAAW,UAAA,CAAW,KAAA;AAAA,UACtB,cAAc,MAAA,CAAO;AAAA,SACvB;AAAA,QACA,gBAAA,EAAkB;AAAA,UAChB,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA;AACxB;AACF;AACF,GACF;AAAA;AAAA,EAGA,SAAA,EAAW;AAAA,IACT,YAAA,EAAc;AAAA,MACZ,aAAA,EAAe;AAAA,KACjB;AAAA,IACA,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,KAAA,EAAO,EAAA;AAAA,QACP,MAAA,EAAQ,EAAA;AAAA,QACR,OAAA,EAAS;AAAA,OACX;AAAA,MACA,UAAA,EAAY;AAAA,QACV,OAAA,EAAS,CAAA;AAAA,QACT,eAAA,EAAiB;AAAA,UACf,SAAA,EAAW,kBAAA;AAAA,UACX,KAAA,EAAO,OAAO,IAAA,CAAK,KAAA;AAAA,UACnB,sBAAA,EAAwB;AAAA,YACtB,eAAA,EAAiB,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA;AAAA,YACjC,OAAA,EAAS;AAAA;AACX,SACF;AAAA,QACA,wCAAA,EAA0C;AAAA,UACxC,eAAA,EAAiB,MAAA,CAAO,KAAA,CAAM,GAAG;AAAA,SACnC;AAAA,QACA,qCAAA,EAAuC;AAAA,UACrC,WAAW,UAAA,CAAW;AAAA,SACxB;AAAA,QACA,iCAAA,EAAmC;AAAA,UACjC,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA,SACxB;AAAA,QACA,mCAAA,EAAqC;AAAA,UACnC,OAAA,EAAS;AAAA;AACX,OACF;AAAA,MACA,KAAA,EAAO;AAAA,QACL,KAAA,EAAO,EAAA;AAAA,QACP,MAAA,EAAQ,EAAA;AAAA,QACR,SAAA,EAAW;AAAA,OACb;AAAA,MACA,KAAA,EAAO;AAAA,QACL,cAAc,MAAA,CAAO,IAAA;AAAA,QACrB,eAAA,EAAiB,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,QAChC,OAAA,EAAS;AAAA;AACX;AACF,GACF;AAAA;AAAA,EAGA,eAAA,EAAiB;AAAA,IACf,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,cAAc,MAAA,CAAO,EAAA;AAAA,QACrB,WAAA,EAAa,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,QAC5B,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,QACtB,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY,GAAA;AAAA,QACZ,UAAA,EAAY,MAAA;AAAA,QACZ,OAAA,EAAS,UAAA;AAAA,QACT,aAAA,EAAe,MAAA;AAAA,QACf,SAAA,EAAW;AAAA,UACT,eAAA,EAAiB,MAAA,CAAO,IAAA,CAAK,EAAE;AAAA,SACjC;AAAA,QACA,gBAAA,EAAkB;AAAA,UAChB,eAAA,EAAiB,MAAA,CAAO,KAAA,CAAM,EAAE,CAAA;AAAA,UAChC,KAAA,EAAO,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA;AAAA,UACvB,WAAA,EAAa,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA;AAAA,UAC7B,SAAA,EAAW;AAAA,YACT,eAAA,EAAiB,MAAA,CAAO,KAAA,CAAM,GAAG;AAAA;AACnC,SACF;AAAA,QACA,iBAAA,EAAmB;AAAA,UACjB,WAAW,UAAA,CAAW;AAAA;AACxB;AACF;AACF,GACF;AAAA,EACA,oBAAA,EAAsB;AAAA,IACpB,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,cAAc,MAAA,CAAO;AAAA,OACvB;AAAA,MACA,OAAA,EAAS;AAAA,QACP,uBAAA,EAAyB;AAAA,UACvB,cAAc,MAAA,CAAO,EAAA;AAAA,UACrB,UAAA,EAAY;AAAA,SACd;AAAA,QACA,iBAAA,EAAmB;AAAA,UACjB,cAAc,MAAA,CAAO;AAAA;AACvB;AACF;AACF,GACF;AAAA;AAAA,EAKA,OAAA,EAAS;AAAA,IACP,YAAA,EAAc;AAAA,MACZ,SAAA,EAAW;AAAA,KACb;AAAA,IACA,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,cAAc,MAAA,CAAO,EAAA;AAAA,QACrB,MAAA,EAAQ,CAAA,UAAA,EAAa,MAAA,CAAO,IAAA,CAAK,GAAG,CAAC,CAAA,CAAA;AAAA,QACrC,eAAA,EAAiB,OAAO,IAAA,CAAK,KAAA;AAAA,QAC7B,QAAA,EAAU;AAAA;AACZ;AACF,GACF;AAAA,EACA,cAAA,EAAgB;AAAA,IACd,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,OAAA,EAAS,MAAA;AAAA,QACT,cAAA,EAAgB;AAAA,UACd,aAAA,EAAe;AAAA;AACjB;AACF;AACF,GACF;AAAA,EACA,aAAA,EAAe;AAAA,IACb,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,OAAA,EAAS;AAAA,OACX;AAAA,MACA,KAAA,EAAO;AAAA,QACL,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY,GAAA;AAAA,QACZ,UAAA,EAAY;AAAA,OACd;AAAA,MACA,SAAA,EAAW;AAAA,QACT,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY,MAAA;AAAA,QACZ,SAAA,EAAW;AAAA,OACb;AAAA,MACA,MAAA,EAAQ;AAAA,QACN,SAAA,EAAW,EAAA;AAAA,QACX,WAAA,EAAa;AAAA;AACf;AACF,GACF;AAAA;AAAA,EAGA,QAAA,EAAU;AAAA,IACR,YAAA,EAAc;AAAA,MACZ,SAAA,EAAW;AAAA,KACb;AAAA,IACA,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,eAAA,EAAiB;AAAA,OACnB;AAAA,MACA,OAAA,EAAS;AAAA,QACP,cAAc,MAAA,CAAO;AAAA,OACvB;AAAA,MACA,UAAA,EAAY;AAAA,QACV,WAAW,OAAA,CAAa,EAAA;AAAA,QACxB,MAAA,EAAQ,CAAA,UAAA,EAAa,MAAA,CAAO,IAAA,CAAK,GAAG,CAAC,CAAA;AAAA,OACvC;AAAA,MACA,UAAA,EAAY;AAAA,QACV,WAAW,OAAA,CAAa,EAAA;AAAA,QACxB,MAAA,EAAQ,CAAA,UAAA,EAAa,MAAA,CAAO,IAAA,CAAK,GAAG,CAAC,CAAA;AAAA,OACvC;AAAA,MACA,UAAA,EAAY;AAAA,QACV,WAAW,OAAA,CAAa,EAAA;AAAA,QACxB,MAAA,EAAQ,CAAA,UAAA,EAAa,MAAA,CAAO,IAAA,CAAK,GAAG,CAAC,CAAA;AAAA,OACvC;AAAA,MACA,UAAA,EAAY;AAAA,QACV,WAAW,OAAA,CAAa,EAAA;AAAA,QACxB,MAAA,EAAQ,CAAA,UAAA,EAAa,MAAA,CAAO,IAAA,CAAK,GAAG,CAAC,CAAA;AAAA,OACvC;AAAA,MACA,UAAA,EAAY;AAAA,QACV,WAAW,OAAA,CAAa,EAAA;AAAA,QACxB,MAAA,EAAQ,CAAA,UAAA,EAAa,MAAA,CAAO,IAAA,CAAK,GAAG,CAAC,CAAA;AAAA,OACvC;AAAA,MACA,WAAA,EAAa;AAAA,QACX,SAAA,EAAW,QAAa,KAAK,CAAA;AAAA,QAC7B,MAAA,EAAQ,CAAA,UAAA,EAAa,MAAA,CAAO,IAAA,CAAK,GAAG,CAAC,CAAA;AAAA,OACvC;AAAA,MACA,WAAA,EAAa;AAAA,QACX,SAAA,EAAW,QAAa,KAAK,CAAA;AAAA,QAC7B,MAAA,EAAQ,CAAA,UAAA,EAAa,MAAA,CAAO,IAAA,CAAK,GAAG,CAAC,CAAA;AAAA;AACvC;AACF,GACF;AAAA;AAAA,EAGA,YAAA,EAAc;AAAA,IACZ,YAAA,EAAc;AAAA,MACZ,cAAA,EAAgB,IAAA;AAAA,MAChB,SAAA,EAAW;AAAA,KACb;AAAA,IACA,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,MAAA,EAAQ,CAAA,UAAA,EAAa,MAAA,CAAO,IAAA,CAAK,GAAG,CAAC,CAAA,CAAA;AAAA,QACrC,cAAc,MAAA,CAAO,EAAA;AAAA,QACrB,oBAAA,EAAsB;AAAA,UACpB,YAAA,EAAc;AAAA,SAChB;AAAA,QACA,UAAA,EAAY;AAAA,UACV,OAAA,EAAS;AAAA,SACX;AAAA,QACA,gBAAA,EAAkB;AAAA,UAChB,MAAA,EAAQ,CAAA;AAAA,UACR,YAAA,EAAc,CAAA;AAAA,UACd,cAAc,MAAA,CAAO;AAAA;AACvB;AACF;AACF,GACF;AAAA,EACA,mBAAA,EAAqB;AAAA,IACnB,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,OAAA,EAAS,QAAA;AAAA,QACT,SAAA,EAAW,EAAA;AAAA,QACX,gBAAA,EAAkB;AAAA,UAChB,SAAA,EAAW,EAAA;AAAA,UACX,YAAA,EAAc,CAAA,UAAA,EAAa,MAAA,CAAO,IAAA,CAAK,GAAG,CAAC,CAAA;AAAA;AAC7C,OACF;AAAA,MACA,OAAA,EAAS;AAAA,QACP,MAAA,EAAQ,QAAA;AAAA,QACR,gBAAA,EAAkB;AAAA,UAChB,MAAA,EAAQ;AAAA;AACV;AACF;AACF,GACF;AAAA,EACA,mBAAA,EAAqB;AAAA,IACnB,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,OAAA,EAAS;AAAA;AACX;AACF,GACF;AAAA;AAAA,EAGA,SAAA,EAAW;AAAA,IACT,YAAA,EAAc;AAAA,MACZ,SAAA,EAAW,CAAA;AAAA,MACX,KAAA,EAAO;AAAA,KACT;AAAA,IACA,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,YAAA,EAAc,CAAA,UAAA,EAAa,MAAA,CAAO,IAAA,CAAK,GAAG,CAAC,CAAA,CAAA;AAAA,QAC3C,eAAA,EAAiB,OAAO,IAAA,CAAK;AAAA;AAC/B;AACF,GACF;AAAA,EACA,UAAA,EAAY;AAAA,IACV,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,SAAA,EAAW,EAAA;AAAA,QACX,2BAAA,EAA6B;AAAA,UAC3B,SAAA,EAAW;AAAA;AACb,OACF;AAAA,MACA,KAAA,EAAO;AAAA,QACL,SAAA,EAAW,EAAA;AAAA,QACX,2BAAA,EAA6B;AAAA,UAC3B,SAAA,EAAW;AAAA;AACb;AACF;AACF,GACF;AAAA;AAAA,EAGA,OAAA,EAAS;AAAA,IACP,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,cAAc,MAAA,CAAO,EAAA;AAAA,QACrB,UAAA,EAAY,GAAA;AAAA,QACZ,QAAA,EAAU;AAAA;AACZ;AACF,GACF;AAAA;AAAA,EAGA,mBAAA,EAAqB;AAAA,IACnB,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,UAAA,EAAY,CAAA;AAAA,QACZ,GAAA,EAAK;AAAA,OACP;AAAA,MACA,KAAA,EAAO;AAAA,QACL,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY,MAAA;AAAA,QACZ,UAAA,EAAY,GAAA;AAAA,QACZ,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA;AACxB;AACF,GACF;AAAA;AAAA,EAGA,QAAA,EAAU;AAAA,IACR,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,cAAA,EAAgB,UAAA;AAAA,QAChB,aAAA,EAAe;AAAA;AACjB;AACF,GACF;AAAA,EACA,YAAA,EAAc;AAAA,IACZ,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,YAAA,EAAc,CAAA,UAAA,EAAa,MAAA,CAAO,IAAA,CAAK,GAAG,CAAC,CAAA,CAAA;AAAA,QAC3C,OAAA,EAAS,WAAA;AAAA,QACT,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY,MAAA;AAAA,QACZ,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA,OACxB;AAAA,MACA,IAAA,EAAM;AAAA,QACJ,eAAA,EAAiB,MAAA,CAAO,IAAA,CAAK,EAAE,CAAA;AAAA,QAC/B,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,QACtB,UAAA,EAAY,GAAA;AAAA,QACZ,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY;AAAA,OACd;AAAA,MACA,IAAA,EAAM;AAAA,QACJ,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA;AACxB;AACF,GACF;AAAA,EACA,YAAA,EAAc;AAAA,IACZ,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,eAAA,EAAiB,MAAA,CAAO,IAAA,CAAK,EAAE,CAAA;AAAA,QAC/B,YAAA,EAAc,CAAA,UAAA,EAAa,MAAA,CAAO,IAAA,CAAK,GAAG,CAAC,CAAA;AAAA;AAC7C;AACF,GACF;AAAA,EACA,WAAA,EAAa;AAAA,IACX,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,kCAAA,EAAoC;AAAA,UAClC,MAAA,EAAQ;AAAA,SACV;AAAA,QACA,SAAA,EAAW;AAAA,UACT,eAAA,EAAiB,MAAA,CAAO,IAAA,CAAK,EAAE;AAAA,SACjC;AAAA,QACA,gBAAA,EAAkB;AAAA,UAChB,eAAA,EAAiB,MAAA,CAAO,KAAA,CAAM,EAAE,CAAA;AAAA,UAChC,SAAA,EAAW;AAAA,YACT,eAAA,EAAiB,MAAA,CAAO,KAAA,CAAM,EAAE;AAAA;AAClC;AACF;AACF;AACF,GACF;AAAA,EACA,iBAAA,EAAmB;AAAA,IACjB,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,cAAc,MAAA,CAAO,EAAA;AAAA,QACrB,MAAA,EAAQ,CAAA,UAAA,EAAa,MAAA,CAAO,IAAA,CAAK,GAAG,CAAC,CAAA,CAAA;AAAA,QACrC,SAAA,EAAW;AAAA;AACb;AACF,GACF;AAAA;AAAA,EAGA,QAAA,EAAU;AAAA,IACR,cAAA,EAAgB;AAAA,MACd,QAAA,EAAU;AAAA,QACR,UAAA,EAAY,GAAA;AAAA,QACZ,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY,MAAA;AAAA,QACZ,QAAA,EAAU,EAAA;AAAA,QACV,MAAA,EAAQ,EAAA;AAAA,QACR,cAAc,MAAA,CAAO;AAAA,OACvB;AAAA,MACA,YAAA,EAAc;AAAA,QACZ,eAAA,EAAiB,MAAA,CAAO,KAAA,CAAM,GAAG;AAAA,OACnC;AAAA,MACA,UAAA,EAAY;AAAA,QACV,eAAA,EAAiB,MAAA,CAAO,KAAA,CAAM,GAAG;AAAA,OACnC;AAAA,MACA,YAAA,EAAc;AAAA,QACZ,eAAA,EAAiB,MAAA,CAAO,OAAA,CAAQ,GAAG;AAAA,OACrC;AAAA,MACA,YAAA,EAAc;AAAA,QACZ,eAAA,EAAiB,MAAA,CAAO,OAAA,CAAQ,GAAG;AAAA,OACrC;AAAA,MACA,GAAA,EAAK;AAAA,QACH,QAAA,EAAU,CAAA;AAAA,QACV,MAAA,EAAQ,CAAA;AAAA,QACR,cAAc,MAAA,CAAO;AAAA;AACvB;AACF,GACF;AAAA;AAAA,EAGA,UAAA,EAAY;AAAA,IACV,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,WAAA,EAAa,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA;AAC9B;AACF,GACF;AAAA;AAAA,EAGA,OAAA,EAAS;AAAA,IACP,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,OAAA,EAAS;AAAA;AACX;AACF,GACF;AAAA,EACA,iBAAA,EAAmB;AAAA,IACjB,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,cAAc,MAAA,CAAO,EAAA;AAAA,QACrB,OAAA,EAAS,UAAA;AAAA,QACT,SAAA,EAAW;AAAA,UACT,eAAA,EAAiB,MAAA,CAAO,IAAA,CAAK,EAAE;AAAA,SACjC;AAAA,QACA,gBAAA,EAAkB;AAAA,UAChB,eAAA,EAAiB,MAAA,CAAO,KAAA,CAAM,EAAE,CAAA;AAAA,UAChC,KAAA,EAAO,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA;AAAA,UACvB,SAAA,EAAW;AAAA,YACT,eAAA,EAAiB,MAAA,CAAO,KAAA,CAAM,GAAG;AAAA;AACnC;AACF;AACF;AACF,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,QAAA,EAAU,EAAA;AAAA,QACV,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA;AACxB;AACF,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,cAAA,EAAgB;AAAA,MACd,OAAA,EAAS;AAAA,QACP,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY,MAAA;AAAA,QACZ,UAAA,EAAY,GAAA;AAAA,QACZ,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA,OACxB;AAAA,MACA,SAAA,EAAW;AAAA,QACT,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY,MAAA;AAAA,QACZ,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA;AACxB;AACF,GACF;AAAA;AAAA,EAGA,UAAA,EAAY;AAAA,IACV,cAAA,EAAgB;AAAA,MACd,OAAA,EAAS;AAAA,QACP,eAAA,EAAiB,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,QAChC,KAAA,EAAO,OAAO,IAAA,CAAK,KAAA;AAAA,QACnB,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY,MAAA;AAAA,QACZ,UAAA,EAAY,GAAA;AAAA,QACZ,OAAA,EAAS,UAAA;AAAA,QACT,cAAc,MAAA,CAAO,EAAA;AAAA,QACrB,WAAW,OAAA,CAAa;AAAA,OAC1B;AAAA,MACA,KAAA,EAAO;AAAA,QACL,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA;AACxB;AACF,GACF;AAAA;AAAA,EAGA,QAAA,EAAU;AAAA,IACR,YAAA,EAAc;AAAA,MACZ,OAAA,EAAS;AAAA,KACX;AAAA,IACA,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,cAAc,MAAA,CAAO,EAAA;AAAA,QACrB,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY,MAAA;AAAA,QACZ,OAAA,EAAS;AAAA,OACX;AAAA,MACA,aAAA,EAAe;AAAA,QACb,eAAA,EAAiB,MAAA,CAAO,KAAA,CAAM,EAAE,CAAA;AAAA,QAChC,KAAA,EAAO,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA;AAAA,QACvB,MAAA,EAAQ,CAAA,UAAA,EAAa,MAAA,CAAO,KAAA,CAAM,GAAG,CAAC,CAAA,CAAA;AAAA,QACtC,kBAAA,EAAoB;AAAA,UAClB,KAAA,EAAO,MAAA,CAAO,KAAA,CAAM,GAAG;AAAA;AACzB,OACF;AAAA,MACA,eAAA,EAAiB;AAAA,QACf,eAAA,EAAiB,MAAA,CAAO,OAAA,CAAQ,EAAE,CAAA;AAAA,QAClC,KAAA,EAAO,MAAA,CAAO,OAAA,CAAQ,GAAG,CAAA;AAAA,QACzB,MAAA,EAAQ,CAAA,UAAA,EAAa,MAAA,CAAO,OAAA,CAAQ,GAAG,CAAC,CAAA,CAAA;AAAA,QACxC,kBAAA,EAAoB;AAAA,UAClB,KAAA,EAAO,MAAA,CAAO,OAAA,CAAQ,GAAG;AAAA;AAC3B,OACF;AAAA,MACA,eAAA,EAAiB;AAAA,QACf,eAAA,EAAiB,MAAA,CAAO,OAAA,CAAQ,EAAE,CAAA;AAAA,QAClC,KAAA,EAAO,MAAA,CAAO,OAAA,CAAQ,GAAG,CAAA;AAAA,QACzB,MAAA,EAAQ,CAAA,UAAA,EAAa,MAAA,CAAO,OAAA,CAAQ,GAAG,CAAC,CAAA,CAAA;AAAA,QACxC,kBAAA,EAAoB;AAAA,UAClB,KAAA,EAAO,MAAA,CAAO,OAAA,CAAQ,GAAG;AAAA;AAC3B,OACF;AAAA,MACA,YAAA,EAAc;AAAA,QACZ,eAAA,EAAiB,MAAA,CAAO,IAAA,CAAK,EAAE,CAAA;AAAA,QAC/B,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,QACtB,MAAA,EAAQ,CAAA,UAAA,EAAa,MAAA,CAAO,IAAA,CAAK,GAAG,CAAC,CAAA,CAAA;AAAA,QACrC,kBAAA,EAAoB;AAAA,UAClB,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA;AACxB,OACF;AAAA,MACA,IAAA,EAAM;AAAA,QACJ,OAAA,EAAS;AAAA;AACX;AACF,GACF;AAAA,EACA,aAAA,EAAe;AAAA,IACb,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,UAAA,EAAY,GAAA;AAAA,QACZ,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY,MAAA;AAAA,QACZ,YAAA,EAAc;AAAA;AAChB;AACF,GACF;AAAA;AAAA,EAGA,WAAA,EAAa;AAAA,IACX,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,eAAA,EAAiB;AAAA;AACnB;AACF,GACF;AAAA;AAAA,EAGA,SAAA,EAAW;AAAA,IACT,cAAA,EAAgB;AAAA,MACd,KAAA,EAAO;AAAA,QACL,cAAc,MAAA,CAAO,EAAA;AAAA,QACrB,WAAW,OAAA,CAAa,EAAA;AAAA,QACxB,OAAA,EAAS;AAAA;AACX;AACF,GACF;AAAA,EACA,cAAA,EAAgB;AAAA,IACd,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY,MAAA;AAAA,QACZ,UAAA,EAAY,GAAA;AAAA,QACZ,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,QACtB,OAAA,EAAS;AAAA;AACX;AACF,GACF;AAAA,EACA,gBAAA,EAAkB;AAAA,IAChB,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,OAAA,EAAS,WAAA;AAAA,QACT,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY,MAAA;AAAA,QACZ,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA;AACxB;AACF,GACF;AAAA,EACA,gBAAA,EAAkB;AAAA,IAChB,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,OAAA,EAAS,aAAA;AAAA,QACT,GAAA,EAAK;AAAA;AACP;AACF,GACF;AAAA;AAAA,EAGA,iBAAA,EAAmB;AAAA,IACjB,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,cAAc,MAAA,CAAO,IAAA;AAAA,QACrB,MAAA,EAAQ,CAAA;AAAA,QACR,eAAA,EAAiB,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA,OAClC;AAAA,MACA,eAAA,EAAiB;AAAA,QACf,eAAA,EAAiB,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA;AAAA,QACjC,cAAc,MAAA,CAAO;AAAA,OACvB;AAAA,MACA,iBAAA,EAAmB;AAAA,QACjB,eAAA,EAAiB,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,QAChC,cAAc,MAAA,CAAO;AAAA;AACvB;AACF,GACF;AAAA,EACA,mBAAA,EAAqB;AAAA,IACnB,cAAA,EAAgB;AAAA,MACd,YAAA,EAAc;AAAA,QACZ,KAAA,EAAO,MAAA,CAAO,KAAA,CAAM,GAAG;AAAA,OACzB;AAAA,MACA,cAAA,EAAgB;AAAA,QACd,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA;AACxB;AACF,GACF;AAAA;AAAA,EAGA,WAAA,EAAa;AAAA,IACX,YAAA,EAAc;AAAA,MACZ,SAAA,EAAW;AAAA,KACb;AAAA,IACA,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,eAAA,EAAiB,MAAA,CAAO,IAAA,CAAK,GAAG;AAAA,OAClC;AAAA,MACA,OAAA,EAAS;AAAA,QACP,cAAc,MAAA,CAAO;AAAA,OACvB;AAAA,MACA,QAAA,EAAU;AAAA,QACR,cAAc,MAAA,CAAO;AAAA;AACvB;AACF,GACF;AAAA;AAAA,EAGA,kBAAA,EAAoB;AAAA,IAClB,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM;AAAA,QACJ,eAAA,EAAiB,MAAA,CAAO,IAAA,CAAK,GAAG,CAAA;AAAA,QAChC,KAAA,EAAO,OAAO,IAAA,CAAK,KAAA;AAAA,QACnB,cAAc,MAAA,CAAO,EAAA;AAAA,QACrB,WAAW,OAAA,CAAa,EAAA;AAAA,QACxB,QAAA,EAAU,EAAA;AAAA,QACV,UAAA,EAAY,MAAA;AAAA,QACZ,UAAA,EAAY,GAAA;AAAA,QACZ,OAAA,EAAS;AAAA;AACX;AACF,GACF;AAAA;AAAA,EAGA,aAAA,EAAe;AAAA,IACb,YAAA,EAAc;AAAA,MACZ,cAAA,EAAgB;AAAA,QACd,EAAA,EAAI,IAAA;AAAA,QACJ,EAAA,EAAI,IAAA;AAAA,QACJ,EAAA,EAAI,IAAA;AAAA,QACJ,EAAA,EAAI,IAAA;AAAA,QACJ,EAAA,EAAI,IAAA;AAAA,QACJ,EAAA,EAAI,IAAA;AAAA,QACJ,SAAA,EAAW,GAAA;AAAA,QACX,SAAA,EAAW,GAAA;AAAA,QACX,KAAA,EAAO,GAAA;AAAA,QACP,KAAA,EAAO,GAAA;AAAA,QACP,OAAA,EAAS,MAAA;AAAA,QACT,QAAA,EAAU;AAAA;AACZ;AACF;AAEJ;;;AC35BO,IAAMA,QAAAA,GAAmB;AAAA,EAC9B,MAAA;AAAA;AAAA,EACA,OAAA,CAAa,EAAA;AAAA;AAAA,EACb,OAAA,CAAa,EAAA;AAAA;AAAA,EACb,OAAA,CAAa,EAAA;AAAA;AAAA,EACb,OAAA,CAAa,EAAA;AAAA;AAAA,EACb,OAAA,CAAa,EAAA;AAAA;AAAA,EACb,OAAA,CAAa,EAAA;AAAA;AAAA,EACb,OAAA,CAAa,EAAA;AAAA;AAAA,EACb,OAAA,CAAa,EAAA;AAAA;AAAA,EACb,OAAA,CAAa,EAAA;AAAA;AAAA,EACb,OAAA,CAAa,EAAA;AAAA;AAAA,EACb,OAAA,CAAa,EAAA;AAAA;AAAA,EACb,OAAA,CAAa,EAAA;AAAA;AAAA,EACb,QAAa,KAAK,CAAA;AAAA;AAAA,EAClB,QAAa,KAAK,CAAA;AAAA;AAAA,EAClB,QAAa,KAAK,CAAA;AAAA;AAAA,EAClB,QAAa,KAAK,CAAA;AAAA;AAAA,EAClB,QAAa,KAAK,CAAA;AAAA;AAAA,EAClB,QAAa,KAAK,CAAA;AAAA;AAAA,EAClB,QAAa,KAAK,CAAA;AAAA;AAAA,EAClB,QAAa,KAAK,CAAA;AAAA;AAAA,EAClB,QAAa,KAAK,CAAA;AAAA;AAAA,EAClB,QAAa,KAAK,CAAA;AAAA;AAAA,EAClB,QAAa,KAAK,CAAA;AAAA;AAAA,EAClB,QAAa,KAAK;AAAA;AACpB;;;ACzBO,IAAM,kBAAA,GAAmC;AAAA,EAC9C,OAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAA;AAAA,EACA,OAAA,EAAAA,QAAAA;AAAA,EACA,KAAA,EAAO;AAAA,IACL,YAAA,EAAc;AAAA;AAElB;AAEO,IAAM,WAAA,GAAcC,mBAAY,kBAAkB","file":"theme.js","sourcesContent":["/**\n * Design tokens extracted from Figma.\n * These are the primitive values that the semantic theme references.\n */\n\n// ─── Primitive Colors ───────────────────────────────────────────────\n\nexport const colors = {\n base: {\n white: \"#ffffff\",\n black: \"#000000\",\n transparent: \"#ffffff00\",\n },\n\n brand: {\n 25: \"#fcfaff\",\n 50: \"#f9f5ff\",\n 100: \"#f4ebff\",\n 200: \"#e9d7fe\",\n 300: \"#d6bbfb\",\n 400: \"#b692f6\",\n 500: \"#9e77ed\",\n 600: \"#7f56d9\",\n 700: \"#6941c6\",\n 800: \"#53389e\",\n 900: \"#42307d\",\n 950: \"#2c1c5f\",\n },\n\n gray: {\n 25: \"#fcfcfd\",\n 50: \"#f9fafb\",\n 100: \"#f2f4f7\",\n 200: \"#eaecf0\",\n 300: \"#d0d5dd\",\n 400: \"#98a2b3\",\n 500: \"#667085\",\n 600: \"#475467\",\n 700: \"#344054\",\n 800: \"#182230\",\n 900: \"#101828\",\n 950: \"#0c111d\",\n },\n\n error: {\n 25: \"#fffbfa\",\n 50: \"#fef3f2\",\n 100: \"#fee4e2\",\n 200: \"#fecdca\",\n 300: \"#fda29b\",\n 400: \"#f97066\",\n 500: \"#f04438\",\n 600: \"#d92d20\",\n 700: \"#b42318\",\n 800: \"#912018\",\n 900: \"#7a271a\",\n 950: \"#55160c\",\n },\n\n warning: {\n 25: \"#fffcf5\",\n 50: \"#fffaeb\",\n 100: \"#fef0c7\",\n 200: \"#fedf89\",\n 300: \"#fec84b\",\n 400: \"#fdb022\",\n 500: \"#f79009\",\n 600: \"#dc6803\",\n 700: \"#b54708\",\n 800: \"#93370d\",\n 900: \"#7a2e0e\",\n 950: \"#4e1d09\",\n },\n\n success: {\n 25: \"#f6fef9\",\n 50: \"#ecfdf3\",\n 100: \"#dcfae6\",\n 200: \"#abefc6\",\n 300: \"#75e0a7\",\n 400: \"#47cd89\",\n 500: \"#17b26a\",\n 600: \"#079455\",\n 700: \"#067647\",\n 800: \"#085d3a\",\n 900: \"#074d31\",\n 950: \"#053321\",\n },\n\n blue: {\n 25: \"#f5faff\",\n 50: \"#eff8ff\",\n 100: \"#d1e9ff\",\n 200: \"#b2ddff\",\n 300: \"#84caff\",\n 400: \"#53b1fd\",\n 500: \"#2e90fa\",\n 600: \"#1570ef\",\n 700: \"#175cd3\",\n 800: \"#1849a9\",\n 900: \"#194185\",\n 950: \"#102a56\",\n },\n} as const;\n\n// ─── Spacing ────────────────────────────────────────────────────────\n\nexport const spacing = {\n none: 0,\n xxs: 2,\n xs: 4,\n sm: 6,\n md: 8,\n lg: 12,\n xl: 16,\n \"2xl\": 20,\n \"3xl\": 24,\n \"4xl\": 32,\n \"5xl\": 40,\n \"6xl\": 48,\n \"7xl\": 64,\n \"8xl\": 80,\n \"9xl\": 96,\n \"10xl\": 128,\n \"11xl\": 160,\n} as const;\n\n// ─── Border Radius ──────────────────────────────────────────────────\n\nexport const radius = {\n none: 0,\n xxs: 2,\n xs: 4,\n sm: 6,\n md: 8,\n lg: 10,\n xl: 12,\n \"2xl\": 16,\n \"3xl\": 20,\n \"4xl\": 24,\n full: 9999,\n} as const;\n\n// ─── Shadows ────────────────────────────────────────────────────────\n\nexport const shadows = {\n xs: \"0px 1px 2px 0px #1018280d\",\n sm: \"0px 1px 3px 0px #1018281a, 0px 1px 2px 0px #1018280f\",\n md: \"0px 4px 8px -2px #1018281a, 0px 2px 4px -2px #1018280f\",\n lg: \"0px 12px 16px -4px #10182814, 0px 4px 6px -2px #10182808\",\n xl: \"0px 20px 24px -4px #10182814, 0px 8px 8px -4px #10182808\",\n \"2xl\": \"0px 24px 48px -12px #1018282e\",\n \"3xl\": \"0px 32px 64px -12px #10182824\",\n} as const;\n\n// ─── Focus Rings ────────────────────────────────────────────────────\n\nexport const focusRings = {\n brand: \"0px 0px 0px 4px #9e77ed3d\",\n brandShadowXs: \"0px 1px 2px 0px #1018280d, 0px 0px 0px 4px #9e77ed3d\",\n brandShadowSm: \"0px 1px 3px 0px #1018281a, 0px 1px 2px 0px #1018280f, 0px 0px 0px 4px #9e77ed3d\",\n gray: \"0px 0px 0px 4px #98a2b324\",\n grayShadowXs: \"0px 1px 2px 0px #1018280d, 0px 0px 0px 4px #98a2b324\",\n grayShadowSm: \"0px 1px 3px 0px #1018281a, 0px 1px 2px 0px #1018280f, 0px 0px 0px 4px #98a2b324\",\n error: \"0px 0px 0px 4px #f044383d\",\n errorShadowXs: \"0px 1px 2px 0px #1018280d, 0px 0px 0px 4px #f044383d\",\n} as const;\n\n// ─── Typography ─────────────────────────────────────────────────────\n\nexport const fontFamily = '\"Poppins\", sans-serif';\n\nexport const fontSize = {\n xxs: 11,\n xs: 12,\n sm: 14,\n md: 16,\n lg: 18,\n xl: 20,\n} as const;\n\nexport const lineHeight = {\n xxs: \"16px\",\n xs: \"18px\",\n sm: \"20px\",\n md: \"24px\",\n lg: \"28px\",\n xl: \"30px\",\n} as const;\n\nexport const fontWeight = {\n regular: 400,\n medium: 500,\n semibold: 600,\n bold: 700,\n} as const;\n\n// ─── Display Typography ─────────────────────────────────────────────\n\nexport const display = {\n \"2xl\": { fontSize: 72, lineHeight: \"90px\", letterSpacing: \"-0.02em\" },\n xl: { fontSize: 60, lineHeight: \"72px\", letterSpacing: \"-0.02em\" },\n lg: { fontSize: 48, lineHeight: \"60px\", letterSpacing: \"-0.02em\" },\n md: { fontSize: 36, lineHeight: \"44px\", letterSpacing: \"-0.02em\" },\n sm: { fontSize: 30, lineHeight: \"38px\" },\n xs: { fontSize: 24, lineHeight: \"32px\" },\n} as const;\n\n// ─── Container ──────────────────────────────────────────────────────\n\nexport const container = {\n maxWidthDesktop: 1280,\n paddingDesktop: 32,\n paddingMobile: 16,\n} as const;\n\n// ─── Width Breakpoints ──────────────────────────────────────────────\n\nexport const widths = {\n xxs: 320,\n xs: 384,\n sm: 480,\n md: 560,\n lg: 640,\n xl: 768,\n \"2xl\": 1024,\n \"3xl\": 1280,\n \"4xl\": 1440,\n \"5xl\": 1600,\n \"6xl\": 1920,\n} as const;\n","import type { PaletteOptions } from \"@mui/material/styles\";\nimport { colors } from \"./tokens\";\n\nexport const palette: PaletteOptions = {\n primary: {\n main: colors.brand[600],\n light: colors.brand[400],\n dark: colors.brand[700],\n contrastText: colors.base.white,\n },\n secondary: {\n main: colors.gray[600],\n light: colors.gray[400],\n dark: colors.gray[700],\n contrastText: colors.base.white,\n },\n error: {\n main: colors.error[600],\n light: colors.error[300],\n dark: colors.error[700],\n contrastText: colors.base.white,\n },\n warning: {\n main: colors.warning[600],\n light: colors.warning[300],\n dark: colors.warning[700],\n contrastText: colors.base.white,\n },\n success: {\n main: colors.success[600],\n light: colors.success[300],\n dark: colors.success[700],\n contrastText: colors.base.white,\n },\n info: {\n main: colors.blue[600],\n light: colors.blue[300],\n dark: colors.blue[700],\n contrastText: colors.base.white,\n },\n background: {\n default: colors.base.white,\n paper: colors.base.white,\n },\n text: {\n primary: colors.gray[900],\n secondary: colors.gray[700],\n disabled: colors.gray[500],\n },\n divider: colors.gray[200],\n action: {\n active: colors.gray[600],\n hover: colors.gray[50],\n selected: colors.brand[50],\n disabled: colors.gray[400],\n disabledBackground: colors.gray[100],\n },\n};\n","import type { TypographyVariantsOptions } from \"@mui/material/styles\";\nimport { fontFamily, display, fontSize, lineHeight, fontWeight } from \"./tokens\";\n\nexport const typography: TypographyVariantsOptions = {\n fontFamily,\n fontWeightRegular: fontWeight.regular,\n fontWeightMedium: fontWeight.medium,\n fontWeightBold: fontWeight.bold,\n\n // Display styles → MUI headings\n h1: {\n fontSize: display.xl.fontSize,\n lineHeight: display.xl.lineHeight,\n letterSpacing: display.xl.letterSpacing,\n fontWeight: fontWeight.semibold,\n },\n h2: {\n fontSize: display.lg.fontSize,\n lineHeight: display.lg.lineHeight,\n letterSpacing: display.lg.letterSpacing,\n fontWeight: fontWeight.semibold,\n },\n h3: {\n fontSize: display.md.fontSize,\n lineHeight: display.md.lineHeight,\n letterSpacing: display.md.letterSpacing,\n fontWeight: fontWeight.semibold,\n },\n h4: {\n fontSize: display.sm.fontSize,\n lineHeight: display.sm.lineHeight,\n fontWeight: fontWeight.semibold,\n },\n h5: {\n fontSize: display.xs.fontSize,\n lineHeight: display.xs.lineHeight,\n fontWeight: fontWeight.semibold,\n },\n h6: {\n fontSize: fontSize.xl,\n lineHeight: lineHeight.xl,\n fontWeight: fontWeight.semibold,\n },\n subtitle1: {\n fontSize: fontSize.lg,\n lineHeight: lineHeight.lg,\n fontWeight: fontWeight.medium,\n },\n subtitle2: {\n fontSize: fontSize.md,\n lineHeight: lineHeight.md,\n fontWeight: fontWeight.medium,\n },\n body1: {\n fontSize: fontSize.md,\n lineHeight: lineHeight.md,\n fontWeight: fontWeight.regular,\n },\n body2: {\n fontSize: fontSize.sm,\n lineHeight: lineHeight.sm,\n fontWeight: fontWeight.regular,\n },\n caption: {\n fontSize: fontSize.xs,\n lineHeight: lineHeight.xs,\n fontWeight: fontWeight.regular,\n },\n overline: {\n fontSize: fontSize.xxs,\n lineHeight: lineHeight.xxs,\n fontWeight: fontWeight.medium,\n textTransform: \"uppercase\",\n letterSpacing: \"0.08em\",\n },\n button: {\n fontSize: fontSize.sm,\n lineHeight: lineHeight.sm,\n fontWeight: fontWeight.semibold,\n textTransform: \"none\",\n },\n};\n","import type { Components, Theme } from \"@mui/material/styles\";\nimport { colors, radius, focusRings, shadows as tokenShadows } from \"./tokens\";\n\nexport const components: Components<Theme> = {\n // ─── Button ─────────────────────────────────────────────────────\n MuiButton: {\n defaultProps: {\n disableElevation: true,\n },\n styleOverrides: {\n root: {\n borderRadius: radius.md,\n fontWeight: 600,\n \"&:focus-visible\": {\n boxShadow: focusRings.brandShadowXs,\n },\n },\n sizeLarge: {\n padding: \"12px 20px\",\n fontSize: 16,\n lineHeight: \"24px\",\n },\n sizeMedium: {\n padding: \"10px 16px\",\n fontSize: 14,\n lineHeight: \"20px\",\n },\n sizeSmall: {\n padding: \"8px 14px\",\n fontSize: 14,\n lineHeight: \"20px\",\n },\n containedPrimary: {\n backgroundColor: colors.brand[600],\n \"&:hover\": {\n backgroundColor: colors.brand[700],\n },\n },\n outlinedPrimary: {\n borderColor: colors.brand[300],\n color: colors.brand[700],\n \"&:hover\": {\n backgroundColor: colors.brand[50],\n borderColor: colors.brand[300],\n },\n },\n textPrimary: {\n color: colors.brand[700],\n \"&:hover\": {\n backgroundColor: colors.brand[50],\n },\n },\n },\n },\n\n // ─── Button Group ───────────────────────────────────────────────\n MuiButtonGroup: {\n defaultProps: {\n disableElevation: true,\n },\n styleOverrides: {\n root: {\n borderRadius: radius.md,\n },\n grouped: {\n \"&:not(:last-of-type)\": {\n borderRight: `1px solid ${colors.brand[700]}`,\n },\n },\n },\n },\n\n // ─── FAB ────────────────────────────────────────────────────────\n MuiFab: {\n styleOverrides: {\n root: {\n boxShadow: tokenShadows.md,\n \"&:hover\": {\n boxShadow: tokenShadows.lg,\n },\n \"&:focus-visible\": {\n boxShadow: focusRings.brandShadowSm,\n },\n },\n primary: {\n backgroundColor: colors.brand[600],\n \"&:hover\": {\n backgroundColor: colors.brand[700],\n },\n },\n },\n },\n\n // ─── TextField / Input ──────────────────────────────────────────\n MuiTextField: {\n defaultProps: {\n variant: \"outlined\",\n size: \"small\",\n },\n },\n MuiOutlinedInput: {\n styleOverrides: {\n root: {\n borderRadius: radius.md,\n \"&:hover .MuiOutlinedInput-notchedOutline\": {\n borderColor: colors.brand[300],\n },\n \"&.Mui-focused .MuiOutlinedInput-notchedOutline\": {\n borderColor: colors.brand[600],\n borderWidth: 1,\n boxShadow: focusRings.brand,\n },\n \"&.Mui-error .MuiOutlinedInput-notchedOutline\": {\n borderColor: colors.error[300],\n },\n \"&.Mui-error.Mui-focused .MuiOutlinedInput-notchedOutline\": {\n borderColor: colors.error[600],\n boxShadow: focusRings.error,\n },\n },\n notchedOutline: {\n borderColor: colors.gray[300],\n },\n input: {\n padding: \"10px 14px\",\n fontSize: 16,\n lineHeight: \"24px\",\n \"&::placeholder\": {\n color: colors.gray[500],\n opacity: 1,\n },\n },\n inputSizeSmall: {\n padding: \"8px 12px\",\n fontSize: 14,\n lineHeight: \"20px\",\n },\n },\n },\n MuiInputLabel: {\n styleOverrides: {\n root: {\n fontSize: 14,\n fontWeight: 500,\n color: colors.gray[700],\n \"&.Mui-focused\": {\n color: colors.gray[700],\n },\n \"&.Mui-error\": {\n color: colors.error[600],\n },\n },\n },\n },\n MuiFormHelperText: {\n styleOverrides: {\n root: {\n fontSize: 14,\n lineHeight: \"20px\",\n marginTop: 6,\n marginLeft: 0,\n \"&.Mui-error\": {\n color: colors.error[600],\n },\n },\n },\n },\n\n // ─── Select ─────────────────────────────────────────────────────\n MuiSelect: {\n defaultProps: {\n size: \"small\",\n },\n styleOverrides: {\n icon: {\n color: colors.gray[500],\n },\n },\n },\n\n // ─── Autocomplete ───────────────────────────────────────────────\n MuiAutocomplete: {\n styleOverrides: {\n paper: {\n borderRadius: radius.md,\n boxShadow: tokenShadows.lg,\n border: `1px solid ${colors.gray[200]}`,\n marginTop: 4,\n },\n option: {\n fontSize: 16,\n lineHeight: \"24px\",\n padding: \"10px 14px\",\n \"&.Mui-focused\": {\n backgroundColor: colors.gray[50],\n },\n '&[aria-selected=\"true\"]': {\n backgroundColor: colors.brand[50],\n },\n },\n listbox: {\n padding: 4,\n },\n },\n },\n\n // ─── Checkbox ───────────────────────────────────────────────────\n MuiCheckbox: {\n defaultProps: {\n disableRipple: true,\n },\n styleOverrides: {\n root: {\n color: colors.gray[300],\n borderRadius: radius.xs,\n padding: 0,\n width: 20,\n height: 20,\n \"&:hover\": {\n backgroundColor: \"transparent\",\n color: colors.brand[600],\n },\n \"&.Mui-checked\": {\n color: colors.brand[600],\n },\n \"&.Mui-checked:hover\": {\n color: colors.brand[700],\n },\n \"&.Mui-focusVisible\": {\n outline: \"none\",\n boxShadow: focusRings.brand,\n borderRadius: radius.xs,\n },\n \"&.Mui-disabled\": {\n color: colors.gray[300],\n },\n },\n },\n },\n\n // ─── Radio ──────────────────────────────────────────────────────\n MuiRadio: {\n defaultProps: {\n disableRipple: true,\n },\n styleOverrides: {\n root: {\n color: colors.gray[300],\n padding: 0,\n \"&:hover\": {\n backgroundColor: \"transparent\",\n color: colors.brand[600],\n },\n \"&.Mui-checked\": {\n color: colors.brand[600],\n },\n \"&.Mui-checked:hover\": {\n color: colors.brand[700],\n },\n \"&.Mui-focusVisible\": {\n outline: \"none\",\n boxShadow: focusRings.brand,\n borderRadius: radius.full,\n },\n \"&.Mui-disabled\": {\n color: colors.gray[300],\n },\n },\n },\n },\n\n // ─── Switch ─────────────────────────────────────────────────────\n MuiSwitch: {\n defaultProps: {\n disableRipple: true,\n },\n styleOverrides: {\n root: {\n width: 44,\n height: 24,\n padding: 0,\n },\n switchBase: {\n padding: 2,\n \"&.Mui-checked\": {\n transform: \"translateX(20px)\",\n color: colors.base.white,\n \"& + .MuiSwitch-track\": {\n backgroundColor: colors.brand[600],\n opacity: 1,\n },\n },\n \"&.Mui-checked:hover + .MuiSwitch-track\": {\n backgroundColor: colors.brand[700],\n },\n \"&.Mui-focusVisible .MuiSwitch-thumb\": {\n boxShadow: focusRings.brand,\n },\n \"&.Mui-disabled .MuiSwitch-thumb\": {\n color: colors.gray[100],\n },\n \"&.Mui-disabled + .MuiSwitch-track\": {\n opacity: 0.5,\n },\n },\n thumb: {\n width: 20,\n height: 20,\n boxShadow: \"0px 1px 2px 0px #1018280d\",\n },\n track: {\n borderRadius: radius.full,\n backgroundColor: colors.gray[200],\n opacity: 1,\n },\n },\n },\n\n // ─── Toggle Button ─────────────────────────────────────────────\n MuiToggleButton: {\n styleOverrides: {\n root: {\n borderRadius: radius.md,\n borderColor: colors.gray[300],\n color: colors.gray[700],\n fontSize: 14,\n fontWeight: 600,\n lineHeight: \"20px\",\n padding: \"8px 14px\",\n textTransform: \"none\",\n \"&:hover\": {\n backgroundColor: colors.gray[50],\n },\n \"&.Mui-selected\": {\n backgroundColor: colors.brand[50],\n color: colors.brand[700],\n borderColor: colors.brand[300],\n \"&:hover\": {\n backgroundColor: colors.brand[100],\n },\n },\n \"&:focus-visible\": {\n boxShadow: focusRings.brandShadowXs,\n },\n },\n },\n },\n MuiToggleButtonGroup: {\n styleOverrides: {\n root: {\n borderRadius: radius.md,\n },\n grouped: {\n \"&:not(:first-of-type)\": {\n borderRadius: radius.md,\n marginLeft: -1,\n },\n \"&:first-of-type\": {\n borderRadius: radius.md,\n },\n },\n },\n },\n\n\n\n // ─── Card ───────────────────────────────────────────────────────\n MuiCard: {\n defaultProps: {\n elevation: 0,\n },\n styleOverrides: {\n root: {\n borderRadius: radius.xl,\n border: `1px solid ${colors.gray[200]}`,\n backgroundColor: colors.base.white,\n overflow: \"hidden\",\n },\n },\n },\n MuiCardContent: {\n styleOverrides: {\n root: {\n padding: \"24px\",\n \"&:last-child\": {\n paddingBottom: \"24px\",\n },\n },\n },\n },\n MuiCardHeader: {\n styleOverrides: {\n root: {\n padding: \"24px 24px 0 24px\",\n },\n title: {\n fontSize: 18,\n fontWeight: 600,\n lineHeight: \"28px\",\n },\n subheader: {\n fontSize: 14,\n lineHeight: \"20px\",\n marginTop: 4,\n },\n action: {\n marginTop: -4,\n marginRight: -4,\n },\n },\n },\n\n // ─── Paper ──────────────────────────────────────────────────────\n MuiPaper: {\n defaultProps: {\n elevation: 0,\n },\n styleOverrides: {\n root: {\n backgroundImage: \"none\",\n },\n rounded: {\n borderRadius: radius.lg,\n },\n elevation1: {\n boxShadow: tokenShadows.xs,\n border: `1px solid ${colors.gray[200]}`,\n },\n elevation2: {\n boxShadow: tokenShadows.sm,\n border: `1px solid ${colors.gray[200]}`,\n },\n elevation3: {\n boxShadow: tokenShadows.md,\n border: `1px solid ${colors.gray[200]}`,\n },\n elevation4: {\n boxShadow: tokenShadows.lg,\n border: `1px solid ${colors.gray[200]}`,\n },\n elevation8: {\n boxShadow: tokenShadows.xl,\n border: `1px solid ${colors.gray[200]}`,\n },\n elevation16: {\n boxShadow: tokenShadows[\"2xl\"],\n border: `1px solid ${colors.gray[200]}`,\n },\n elevation24: {\n boxShadow: tokenShadows[\"3xl\"],\n border: `1px solid ${colors.gray[200]}`,\n },\n },\n },\n\n // ─── Accordion ──────────────────────────────────────────────────\n MuiAccordion: {\n defaultProps: {\n disableGutters: true,\n elevation: 0,\n },\n styleOverrides: {\n root: {\n border: `1px solid ${colors.gray[200]}`,\n borderRadius: radius.lg,\n \"&:not(:last-child)\": {\n marginBottom: 8,\n },\n \"&:before\": {\n display: \"none\",\n },\n \"&.Mui-expanded\": {\n margin: 0,\n marginBottom: 8,\n borderRadius: radius.lg,\n },\n },\n },\n },\n MuiAccordionSummary: {\n styleOverrides: {\n root: {\n padding: \"0 24px\",\n minHeight: 56,\n \"&.Mui-expanded\": {\n minHeight: 56,\n borderBottom: `1px solid ${colors.gray[200]}`,\n },\n },\n content: {\n margin: \"12px 0\",\n \"&.Mui-expanded\": {\n margin: \"12px 0\",\n },\n },\n },\n },\n MuiAccordionDetails: {\n styleOverrides: {\n root: {\n padding: \"24px\",\n },\n },\n },\n\n // ─── AppBar ─────────────────────────────────────────────────────\n MuiAppBar: {\n defaultProps: {\n elevation: 0,\n color: \"transparent\",\n },\n styleOverrides: {\n root: {\n borderBottom: `1px solid ${colors.gray[200]}`,\n backgroundColor: colors.base.white,\n },\n },\n },\n MuiToolbar: {\n styleOverrides: {\n root: {\n minHeight: 64,\n \"@media (min-width: 600px)\": {\n minHeight: 64,\n },\n },\n dense: {\n minHeight: 48,\n \"@media (min-width: 600px)\": {\n minHeight: 48,\n },\n },\n },\n },\n\n // ─── Chip ───────────────────────────────────────────────────────\n MuiChip: {\n styleOverrides: {\n root: {\n borderRadius: radius.md,\n fontWeight: 500,\n fontSize: 14,\n },\n },\n },\n\n // ─── Form Control / Label ───────────────────────────────────────\n MuiFormControlLabel: {\n styleOverrides: {\n root: {\n marginLeft: 0,\n gap: 8,\n },\n label: {\n fontSize: 14,\n lineHeight: \"20px\",\n fontWeight: 500,\n color: colors.gray[700],\n },\n },\n },\n\n // ─── Table ───────────────────────────────────────────────────────\n MuiTable: {\n styleOverrides: {\n root: {\n borderCollapse: \"separate\",\n borderSpacing: 0,\n },\n },\n },\n MuiTableCell: {\n styleOverrides: {\n root: {\n borderBottom: `1px solid ${colors.gray[200]}`,\n padding: \"16px 24px\",\n fontSize: 14,\n lineHeight: \"20px\",\n color: colors.gray[600],\n },\n head: {\n backgroundColor: colors.gray[50],\n color: colors.gray[600],\n fontWeight: 500,\n fontSize: 12,\n lineHeight: \"18px\",\n },\n body: {\n color: colors.gray[600],\n },\n },\n },\n MuiTableHead: {\n styleOverrides: {\n root: {\n backgroundColor: colors.gray[50],\n borderBottom: `1px solid ${colors.gray[200]}`,\n },\n },\n },\n MuiTableRow: {\n styleOverrides: {\n root: {\n \"&:last-child td, &:last-child th\": {\n border: 0,\n },\n \"&:hover\": {\n backgroundColor: colors.gray[50],\n },\n \"&.Mui-selected\": {\n backgroundColor: colors.brand[50],\n \"&:hover\": {\n backgroundColor: colors.brand[50],\n },\n },\n },\n },\n },\n MuiTableContainer: {\n styleOverrides: {\n root: {\n borderRadius: radius.xl,\n border: `1px solid ${colors.gray[200]}`,\n boxShadow: \"none\",\n },\n },\n },\n\n // ─── Badge ──────────────────────────────────────────────────────\n MuiBadge: {\n styleOverrides: {\n standard: {\n fontWeight: 500,\n fontSize: 12,\n lineHeight: \"18px\",\n minWidth: 20,\n height: 20,\n borderRadius: radius.full,\n },\n colorPrimary: {\n backgroundColor: colors.brand[600],\n },\n colorError: {\n backgroundColor: colors.error[600],\n },\n colorSuccess: {\n backgroundColor: colors.success[600],\n },\n colorWarning: {\n backgroundColor: colors.warning[600],\n },\n dot: {\n minWidth: 8,\n height: 8,\n borderRadius: radius.full,\n },\n },\n },\n\n // ─── Divider ────────────────────────────────────────────────────\n MuiDivider: {\n styleOverrides: {\n root: {\n borderColor: colors.gray[200],\n },\n },\n },\n\n // ─── List ───────────────────────────────────────────────────────\n MuiList: {\n styleOverrides: {\n root: {\n padding: 4,\n },\n },\n },\n MuiListItemButton: {\n styleOverrides: {\n root: {\n borderRadius: radius.sm,\n padding: \"8px 12px\",\n \"&:hover\": {\n backgroundColor: colors.gray[50],\n },\n \"&.Mui-selected\": {\n backgroundColor: colors.brand[50],\n color: colors.brand[700],\n \"&:hover\": {\n backgroundColor: colors.brand[100],\n },\n },\n },\n },\n },\n MuiListItemIcon: {\n styleOverrides: {\n root: {\n minWidth: 36,\n color: colors.gray[500],\n },\n },\n },\n MuiListItemText: {\n styleOverrides: {\n primary: {\n fontSize: 14,\n lineHeight: \"20px\",\n fontWeight: 500,\n color: colors.gray[700],\n },\n secondary: {\n fontSize: 14,\n lineHeight: \"20px\",\n color: colors.gray[500],\n },\n },\n },\n\n // ─── Tooltip ────────────────────────────────────────────────────\n MuiTooltip: {\n styleOverrides: {\n tooltip: {\n backgroundColor: colors.gray[900],\n color: colors.base.white,\n fontSize: 12,\n lineHeight: \"18px\",\n fontWeight: 600,\n padding: \"8px 12px\",\n borderRadius: radius.md,\n boxShadow: tokenShadows.lg,\n },\n arrow: {\n color: colors.gray[900],\n },\n },\n },\n\n // ─── Alert ──────────────────────────────────────────────────────\n MuiAlert: {\n defaultProps: {\n variant: \"standard\",\n },\n styleOverrides: {\n root: {\n borderRadius: radius.xl,\n fontSize: 14,\n lineHeight: \"20px\",\n padding: \"12px 16px\",\n },\n standardError: {\n backgroundColor: colors.error[50],\n color: colors.error[700],\n border: `1px solid ${colors.error[300]}`,\n \"& .MuiAlert-icon\": {\n color: colors.error[600],\n },\n },\n standardWarning: {\n backgroundColor: colors.warning[50],\n color: colors.warning[700],\n border: `1px solid ${colors.warning[300]}`,\n \"& .MuiAlert-icon\": {\n color: colors.warning[600],\n },\n },\n standardSuccess: {\n backgroundColor: colors.success[50],\n color: colors.success[700],\n border: `1px solid ${colors.success[300]}`,\n \"& .MuiAlert-icon\": {\n color: colors.success[600],\n },\n },\n standardInfo: {\n backgroundColor: colors.blue[50],\n color: colors.blue[700],\n border: `1px solid ${colors.blue[300]}`,\n \"& .MuiAlert-icon\": {\n color: colors.blue[600],\n },\n },\n icon: {\n padding: \"2px 0\",\n },\n },\n },\n MuiAlertTitle: {\n styleOverrides: {\n root: {\n fontWeight: 600,\n fontSize: 14,\n lineHeight: \"20px\",\n marginBottom: 4,\n },\n },\n },\n\n // ─── Backdrop ───────────────────────────────────────────────────\n MuiBackdrop: {\n styleOverrides: {\n root: {\n backgroundColor: \"rgba(16, 24, 40, 0.7)\",\n },\n },\n },\n\n // ─── Dialog ─────────────────────────────────────────────────────\n MuiDialog: {\n styleOverrides: {\n paper: {\n borderRadius: radius.xl,\n boxShadow: tokenShadows.xl,\n padding: 0,\n },\n },\n },\n MuiDialogTitle: {\n styleOverrides: {\n root: {\n fontSize: 18,\n lineHeight: \"28px\",\n fontWeight: 600,\n color: colors.gray[900],\n padding: \"24px 24px 0\",\n },\n },\n },\n MuiDialogContent: {\n styleOverrides: {\n root: {\n padding: \"20px 24px\",\n fontSize: 14,\n lineHeight: \"20px\",\n color: colors.gray[600],\n },\n },\n },\n MuiDialogActions: {\n styleOverrides: {\n root: {\n padding: \"0 24px 24px\",\n gap: 12,\n },\n },\n },\n\n // ─── Progress ───────────────────────────────────────────────────\n MuiLinearProgress: {\n styleOverrides: {\n root: {\n borderRadius: radius.full,\n height: 8,\n backgroundColor: colors.gray[200],\n },\n barColorPrimary: {\n backgroundColor: colors.brand[600],\n borderRadius: radius.full,\n },\n barColorSecondary: {\n backgroundColor: colors.gray[600],\n borderRadius: radius.full,\n },\n },\n },\n MuiCircularProgress: {\n styleOverrides: {\n colorPrimary: {\n color: colors.brand[600],\n },\n colorSecondary: {\n color: colors.gray[600],\n },\n },\n },\n\n // ─── Skeleton ───────────────────────────────────────────────────\n MuiSkeleton: {\n defaultProps: {\n animation: \"wave\",\n },\n styleOverrides: {\n root: {\n backgroundColor: colors.gray[100],\n },\n rounded: {\n borderRadius: radius.md,\n },\n circular: {\n borderRadius: radius.full,\n },\n },\n },\n\n // ─── Snackbar ───────────────────────────────────────────────────\n MuiSnackbarContent: {\n styleOverrides: {\n root: {\n backgroundColor: colors.gray[900],\n color: colors.base.white,\n borderRadius: radius.xl,\n boxShadow: tokenShadows.lg,\n fontSize: 14,\n lineHeight: \"20px\",\n fontWeight: 500,\n padding: \"6px 16px\",\n },\n },\n },\n\n // ─── Typography ─────────────────────────────────────────────────\n MuiTypography: {\n defaultProps: {\n variantMapping: {\n h1: \"h1\",\n h2: \"h2\",\n h3: \"h3\",\n h4: \"h4\",\n h5: \"h5\",\n h6: \"h6\",\n subtitle1: \"p\",\n subtitle2: \"p\",\n body1: \"p\",\n body2: \"p\",\n caption: \"span\",\n overline: \"span\",\n },\n },\n },\n};\n","import type { Shadows } from \"@mui/material/styles\";\nimport { shadows as tokenShadows } from \"./tokens\";\n\n// MUI expects exactly 25 shadow entries (indices 0–24).\n// We map our token shadows to sensible elevation levels.\nexport const shadows: Shadows = [\n \"none\", // 0\n tokenShadows.xs, // 1\n tokenShadows.sm, // 2\n tokenShadows.sm, // 3\n tokenShadows.md, // 4\n tokenShadows.md, // 5\n tokenShadows.md, // 6\n tokenShadows.lg, // 7\n tokenShadows.lg, // 8\n tokenShadows.lg, // 9\n tokenShadows.xl, // 10\n tokenShadows.xl, // 11\n tokenShadows.xl, // 12\n tokenShadows[\"2xl\"], // 13\n tokenShadows[\"2xl\"], // 14\n tokenShadows[\"2xl\"], // 15\n tokenShadows[\"3xl\"], // 16\n tokenShadows[\"3xl\"], // 17\n tokenShadows[\"3xl\"], // 18\n tokenShadows[\"3xl\"], // 19\n tokenShadows[\"3xl\"], // 20\n tokenShadows[\"3xl\"], // 21\n tokenShadows[\"3xl\"], // 22\n tokenShadows[\"3xl\"], // 23\n tokenShadows[\"3xl\"], // 24\n];\n","import { createTheme, type ThemeOptions } from \"@mui/material/styles\";\nimport { palette } from \"./palette\";\nimport { typography } from \"./typography\";\nimport { components } from \"./components\";\nimport { shadows } from \"./shadows\";\n\nexport const forestThemeOptions: ThemeOptions = {\n palette,\n typography,\n components,\n shadows,\n shape: {\n borderRadius: 8,\n },\n};\n\nexport const forestTheme = createTheme(forestThemeOptions);\n\nexport { palette, typography, components, shadows };\nexport * from \"./tokens\";\n"]}
1
+ {"version":3,"sources":["../src/theme/tokens.ts","../src/theme/palette.ts","../src/theme/typography.ts","../src/theme/components.ts","../src/theme/shadows.ts","../src/theme/buildTheme.ts","../src/theme/presets/forest.ts","../src/theme/presets/index.ts","../src/theme/index.ts"],"names":["colors","fontFamily","display","fontSize","lineHeight","fontWeight","radius","focusRings","shadows","createTheme"],"mappings":"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","file":"theme.js","sourcesContent":["/**\n * Design tokens extracted from Figma.\n * These are the primitive values that the semantic theme references.\n */\n\n// ─── Primitive Colors ───────────────────────────────────────────────\n\nexport const colors = {\n base: {\n white: \"#ffffff\",\n black: \"#000000\",\n transparent: \"#ffffff00\",\n },\n\n brand: {\n 25: \"#fcfaff\",\n 50: \"#f9f5ff\",\n 100: \"#f4ebff\",\n 200: \"#e9d7fe\",\n 300: \"#d6bbfb\",\n 400: \"#b692f6\",\n 500: \"#9e77ed\",\n 600: \"#7f56d9\",\n 700: \"#6941c6\",\n 800: \"#53389e\",\n 900: \"#42307d\",\n 950: \"#2c1c5f\",\n },\n\n gray: {\n 25: \"#fcfcfd\",\n 50: \"#f9fafb\",\n 100: \"#f2f4f7\",\n 200: \"#eaecf0\",\n 300: \"#d0d5dd\",\n 400: \"#98a2b3\",\n 500: \"#667085\",\n 600: \"#475467\",\n 700: \"#344054\",\n 800: \"#182230\",\n 900: \"#101828\",\n 950: \"#0c111d\",\n },\n\n error: {\n 25: \"#fffbfa\",\n 50: \"#fef3f2\",\n 100: \"#fee4e2\",\n 200: \"#fecdca\",\n 300: \"#fda29b\",\n 400: \"#f97066\",\n 500: \"#f04438\",\n 600: \"#d92d20\",\n 700: \"#b42318\",\n 800: \"#912018\",\n 900: \"#7a271a\",\n 950: \"#55160c\",\n },\n\n warning: {\n 25: \"#fffcf5\",\n 50: \"#fffaeb\",\n 100: \"#fef0c7\",\n 200: \"#fedf89\",\n 300: \"#fec84b\",\n 400: \"#fdb022\",\n 500: \"#f79009\",\n 600: \"#dc6803\",\n 700: \"#b54708\",\n 800: \"#93370d\",\n 900: \"#7a2e0e\",\n 950: \"#4e1d09\",\n },\n\n success: {\n 25: \"#f6fef9\",\n 50: \"#ecfdf3\",\n 100: \"#dcfae6\",\n 200: \"#abefc6\",\n 300: \"#75e0a7\",\n 400: \"#47cd89\",\n 500: \"#17b26a\",\n 600: \"#079455\",\n 700: \"#067647\",\n 800: \"#085d3a\",\n 900: \"#074d31\",\n 950: \"#053321\",\n },\n\n blue: {\n 25: \"#f5faff\",\n 50: \"#eff8ff\",\n 100: \"#d1e9ff\",\n 200: \"#b2ddff\",\n 300: \"#84caff\",\n 400: \"#53b1fd\",\n 500: \"#2e90fa\",\n 600: \"#1570ef\",\n 700: \"#175cd3\",\n 800: \"#1849a9\",\n 900: \"#194185\",\n 950: \"#102a56\",\n },\n} as const;\n\n// ─── Spacing ────────────────────────────────────────────────────────\n\nexport const spacing = {\n none: 0,\n xxs: 2,\n xs: 4,\n sm: 6,\n md: 8,\n lg: 12,\n xl: 16,\n \"2xl\": 20,\n \"3xl\": 24,\n \"4xl\": 32,\n \"5xl\": 40,\n \"6xl\": 48,\n \"7xl\": 64,\n \"8xl\": 80,\n \"9xl\": 96,\n \"10xl\": 128,\n \"11xl\": 160,\n} as const;\n\n// ─── Border Radius ──────────────────────────────────────────────────\n\nexport const radius = {\n none: 0,\n xxs: 2,\n xs: 4,\n sm: 6,\n md: 8,\n lg: 10,\n xl: 12,\n \"2xl\": 16,\n \"3xl\": 20,\n \"4xl\": 24,\n full: 9999,\n} as const;\n\n// ─── Shadows ────────────────────────────────────────────────────────\n\nexport const shadows = {\n xs: \"0px 1px 2px 0px #1018280d\",\n sm: \"0px 1px 3px 0px #1018281a, 0px 1px 2px 0px #1018280f\",\n md: \"0px 4px 8px -2px #1018281a, 0px 2px 4px -2px #1018280f\",\n lg: \"0px 12px 16px -4px #10182814, 0px 4px 6px -2px #10182808\",\n xl: \"0px 20px 24px -4px #10182814, 0px 8px 8px -4px #10182808\",\n \"2xl\": \"0px 24px 48px -12px #1018282e\",\n \"3xl\": \"0px 32px 64px -12px #10182824\",\n} as const;\n\n// ─── Focus Rings ────────────────────────────────────────────────────\n\nexport const focusRings = {\n brand: \"0px 0px 0px 4px #9e77ed3d\",\n brandShadowXs: \"0px 1px 2px 0px #1018280d, 0px 0px 0px 4px #9e77ed3d\",\n brandShadowSm: \"0px 1px 3px 0px #1018281a, 0px 1px 2px 0px #1018280f, 0px 0px 0px 4px #9e77ed3d\",\n gray: \"0px 0px 0px 4px #98a2b324\",\n grayShadowXs: \"0px 1px 2px 0px #1018280d, 0px 0px 0px 4px #98a2b324\",\n grayShadowSm: \"0px 1px 3px 0px #1018281a, 0px 1px 2px 0px #1018280f, 0px 0px 0px 4px #98a2b324\",\n error: \"0px 0px 0px 4px #f044383d\",\n errorShadowXs: \"0px 1px 2px 0px #1018280d, 0px 0px 0px 4px #f044383d\",\n} as const;\n\n// ─── Typography ─────────────────────────────────────────────────────\n\nexport const fontFamily = '\"Poppins\", sans-serif';\n\nexport const fontSize = {\n xxs: 11,\n xs: 12,\n sm: 14,\n md: 16,\n lg: 18,\n xl: 20,\n} as const;\n\nexport const lineHeight = {\n xxs: \"16px\",\n xs: \"18px\",\n sm: \"20px\",\n md: \"24px\",\n lg: \"28px\",\n xl: \"30px\",\n} as const;\n\nexport const fontWeight = {\n regular: 400,\n medium: 500,\n semibold: 600,\n bold: 700,\n} as const;\n\n// ─── Display Typography ─────────────────────────────────────────────\n\nexport const display = {\n \"2xl\": { fontSize: 72, lineHeight: \"90px\", letterSpacing: \"-0.02em\" },\n xl: { fontSize: 60, lineHeight: \"72px\", letterSpacing: \"-0.02em\" },\n lg: { fontSize: 48, lineHeight: \"60px\", letterSpacing: \"-0.02em\" },\n md: { fontSize: 36, lineHeight: \"44px\", letterSpacing: \"-0.02em\" },\n sm: { fontSize: 30, lineHeight: \"38px\" },\n xs: { fontSize: 24, lineHeight: \"32px\" },\n} as const;\n\n// ─── Container ──────────────────────────────────────────────────────\n\nexport const container = {\n maxWidthDesktop: 1280,\n paddingDesktop: 32,\n paddingMobile: 16,\n} as const;\n\n// ─── Width Breakpoints ──────────────────────────────────────────────\n\nexport const widths = {\n xxs: 320,\n xs: 384,\n sm: 480,\n md: 560,\n lg: 640,\n xl: 768,\n \"2xl\": 1024,\n \"3xl\": 1280,\n \"4xl\": 1440,\n \"5xl\": 1600,\n \"6xl\": 1920,\n} as const;\n","import type { PaletteOptions } from \"@mui/material/styles\";\nimport type { DesignTokens } from \"./types\";\nimport { colors } from \"./tokens\";\n\nexport function buildPalette(tokens: DesignTokens): PaletteOptions {\n const { colors } = tokens;\n\n return {\n primary: {\n main: colors.brand[600],\n light: colors.brand[400],\n dark: colors.brand[700],\n contrastText: colors.base.white,\n },\n secondary: {\n main: colors.gray[600],\n light: colors.gray[400],\n dark: colors.gray[700],\n contrastText: colors.base.white,\n },\n error: {\n main: colors.error[600],\n light: colors.error[300],\n dark: colors.error[700],\n contrastText: colors.base.white,\n },\n warning: {\n main: colors.warning[600],\n light: colors.warning[300],\n dark: colors.warning[700],\n contrastText: colors.base.white,\n },\n success: {\n main: colors.success[600],\n light: colors.success[300],\n dark: colors.success[700],\n contrastText: colors.base.white,\n },\n info: {\n main: colors.blue[600],\n light: colors.blue[300],\n dark: colors.blue[700],\n contrastText: colors.base.white,\n },\n background: {\n default: colors.base.white,\n paper: colors.base.white,\n },\n text: {\n primary: colors.gray[900],\n secondary: colors.gray[700],\n disabled: colors.gray[500],\n },\n divider: colors.gray[200],\n action: {\n active: colors.gray[600],\n hover: colors.gray[50],\n selected: colors.brand[50],\n disabled: colors.gray[400],\n disabledBackground: colors.gray[100],\n },\n };\n}\n\nexport const palette: PaletteOptions = buildPalette({\n colors,\n} as DesignTokens);\n","import type { TypographyVariantsOptions } from \"@mui/material/styles\";\nimport type { DesignTokens } from \"./types\";\nimport { fontFamily, display, fontSize, lineHeight, fontWeight } from \"./tokens\";\n\nexport function buildTypography(tokens: DesignTokens): TypographyVariantsOptions {\n const { fontFamily, display, fontSize, lineHeight, fontWeight } = tokens;\n\n return {\n fontFamily,\n fontWeightRegular: fontWeight.regular,\n fontWeightMedium: fontWeight.medium,\n fontWeightBold: fontWeight.bold,\n\n // Display styles → MUI headings\n h1: {\n fontSize: display.xl.fontSize,\n lineHeight: display.xl.lineHeight,\n letterSpacing: display.xl.letterSpacing,\n fontWeight: fontWeight.semibold,\n },\n h2: {\n fontSize: display.lg.fontSize,\n lineHeight: display.lg.lineHeight,\n letterSpacing: display.lg.letterSpacing,\n fontWeight: fontWeight.semibold,\n },\n h3: {\n fontSize: display.md.fontSize,\n lineHeight: display.md.lineHeight,\n letterSpacing: display.md.letterSpacing,\n fontWeight: fontWeight.semibold,\n },\n h4: {\n fontSize: display.sm.fontSize,\n lineHeight: display.sm.lineHeight,\n fontWeight: fontWeight.semibold,\n },\n h5: {\n fontSize: display.xs.fontSize,\n lineHeight: display.xs.lineHeight,\n fontWeight: fontWeight.semibold,\n },\n h6: {\n fontSize: fontSize.xl,\n lineHeight: lineHeight.xl,\n fontWeight: fontWeight.semibold,\n },\n subtitle1: {\n fontSize: fontSize.lg,\n lineHeight: lineHeight.lg,\n fontWeight: fontWeight.medium,\n },\n subtitle2: {\n fontSize: fontSize.md,\n lineHeight: lineHeight.md,\n fontWeight: fontWeight.medium,\n },\n body1: {\n fontSize: fontSize.md,\n lineHeight: lineHeight.md,\n fontWeight: fontWeight.regular,\n },\n body2: {\n fontSize: fontSize.sm,\n lineHeight: lineHeight.sm,\n fontWeight: fontWeight.regular,\n },\n caption: {\n fontSize: fontSize.xs,\n lineHeight: lineHeight.xs,\n fontWeight: fontWeight.regular,\n },\n overline: {\n fontSize: fontSize.xxs,\n lineHeight: lineHeight.xxs,\n fontWeight: fontWeight.medium,\n textTransform: \"uppercase\",\n letterSpacing: \"0.08em\",\n },\n button: {\n fontSize: fontSize.sm,\n lineHeight: lineHeight.sm,\n fontWeight: fontWeight.semibold,\n textTransform: \"none\",\n },\n };\n}\n\nexport const typography: TypographyVariantsOptions = buildTypography({\n fontFamily,\n display,\n fontSize,\n lineHeight,\n fontWeight,\n} as DesignTokens);\n","import type { Components, Theme } from \"@mui/material/styles\";\nimport type { DesignTokens } from \"./types\";\nimport { colors, radius, focusRings, shadows as tokenShadows } from \"./tokens\";\n\nexport function buildComponents(tokens: DesignTokens): Components<Theme> {\n const { colors, radius, focusRings, shadows: tokenShadows } = tokens;\n\n return {\n // ─── Button ─────────────────────────────────────────────────────\n MuiButton: {\n defaultProps: {\n disableElevation: true,\n },\n styleOverrides: {\n root: {\n borderRadius: radius.md,\n fontWeight: 600,\n \"&:focus-visible\": {\n boxShadow: focusRings.brandShadowXs,\n },\n },\n sizeLarge: {\n padding: \"12px 20px\",\n fontSize: 16,\n lineHeight: \"24px\",\n },\n sizeMedium: {\n padding: \"10px 16px\",\n fontSize: 14,\n lineHeight: \"20px\",\n },\n sizeSmall: {\n padding: \"8px 14px\",\n fontSize: 14,\n lineHeight: \"20px\",\n },\n containedPrimary: {\n backgroundColor: colors.brand[600],\n \"&:hover\": {\n backgroundColor: colors.brand[700],\n },\n },\n outlinedPrimary: {\n borderColor: colors.brand[300],\n color: colors.brand[700],\n \"&:hover\": {\n backgroundColor: colors.brand[50],\n borderColor: colors.brand[300],\n },\n },\n textPrimary: {\n color: colors.brand[700],\n \"&:hover\": {\n backgroundColor: colors.brand[50],\n },\n },\n },\n },\n\n // ─── Button Group ───────────────────────────────────────────────\n MuiButtonGroup: {\n defaultProps: {\n disableElevation: true,\n },\n styleOverrides: {\n root: {\n borderRadius: radius.md,\n },\n grouped: {\n \"&:not(:last-of-type)\": {\n borderRight: `1px solid ${colors.brand[700]}`,\n },\n },\n },\n },\n\n // ─── FAB ────────────────────────────────────────────────────────\n MuiFab: {\n styleOverrides: {\n root: {\n boxShadow: tokenShadows.md,\n \"&:hover\": {\n boxShadow: tokenShadows.lg,\n },\n \"&:focus-visible\": {\n boxShadow: focusRings.brandShadowSm,\n },\n },\n primary: {\n backgroundColor: colors.brand[600],\n \"&:hover\": {\n backgroundColor: colors.brand[700],\n },\n },\n },\n },\n\n // ─── TextField / Input ──────────────────────────────────────────\n MuiTextField: {\n defaultProps: {\n variant: \"outlined\",\n size: \"small\",\n },\n },\n MuiOutlinedInput: {\n styleOverrides: {\n root: {\n borderRadius: radius.md,\n \"&:hover .MuiOutlinedInput-notchedOutline\": {\n borderColor: colors.brand[300],\n },\n\n \"&.Mui-focused .MuiOutlinedInput-notchedOutline\": {\n borderColor: colors.brand[600],\n borderWidth: 1,\n boxShadow: \"none\",\n },\n \"&.Mui-error .MuiOutlinedInput-notchedOutline\": {\n borderColor: colors.error[300],\n },\n\n \"&.Mui-error.Mui-focused .MuiOutlinedInput-notchedOutline\": {\n borderColor: colors.error[600],\n boxShadow: \"none\",\n },\n },\n notchedOutline: {\n borderColor: colors.gray[300],\n },\n input: {\n padding: \"10px 14px\",\n fontSize: 16,\n lineHeight: \"24px\",\n \"&::placeholder\": {\n color: colors.gray[500],\n opacity: 1,\n },\n },\n inputSizeSmall: {\n padding: \"8px 12px\",\n fontSize: 14,\n lineHeight: \"20px\",\n },\n },\n },\n MuiInputLabel: {\n styleOverrides: {\n root: {\n fontSize: 14,\n fontWeight: 500,\n color: colors.gray[700],\n \"&.Mui-focused\": {\n color: colors.gray[700],\n },\n \"&.Mui-error\": {\n color: colors.error[600],\n },\n },\n },\n },\n MuiFormHelperText: {\n styleOverrides: {\n root: {\n fontSize: 14,\n lineHeight: \"20px\",\n marginTop: 6,\n marginLeft: 0,\n \"&.Mui-error\": {\n color: colors.error[600],\n },\n },\n },\n },\n\n // ─── Select ─────────────────────────────────────────────────────\n MuiSelect: {\n defaultProps: {\n size: \"small\",\n },\n styleOverrides: {\n icon: {\n color: colors.gray[500],\n },\n },\n },\n\n // ─── Autocomplete ───────────────────────────────────────────────\n MuiAutocomplete: {\n styleOverrides: {\n paper: {\n borderRadius: radius.md,\n boxShadow: tokenShadows.lg,\n border: `1px solid ${colors.gray[200]}`,\n marginTop: 4,\n },\n option: {\n fontSize: 16,\n lineHeight: \"24px\",\n padding: \"10px 14px\",\n \"&.Mui-focused\": {\n backgroundColor: colors.gray[50],\n },\n '&[aria-selected=\"true\"]': {\n backgroundColor: colors.brand[50],\n },\n },\n listbox: {\n padding: 4,\n },\n },\n },\n\n // ─── Checkbox ───────────────────────────────────────────────────\n MuiCheckbox: {\n defaultProps: {\n disableRipple: true,\n },\n styleOverrides: {\n root: {\n color: colors.gray[300],\n borderRadius: radius.xs,\n padding: 0,\n width: 20,\n height: 20,\n \"&:hover\": {\n backgroundColor: \"transparent\",\n color: colors.brand[600],\n },\n \"&.Mui-checked\": {\n color: colors.brand[600],\n },\n \"&.Mui-checked:hover\": {\n color: colors.brand[700],\n },\n \"&.Mui-focusVisible\": {\n outline: \"none\",\n boxShadow: focusRings.brand,\n borderRadius: radius.xs,\n },\n \"&.Mui-disabled\": {\n color: colors.gray[300],\n },\n },\n },\n },\n\n // ─── Radio ──────────────────────────────────────────────────────\n MuiRadio: {\n defaultProps: {\n disableRipple: true,\n },\n styleOverrides: {\n root: {\n color: colors.gray[300],\n padding: 0,\n \"&:hover\": {\n backgroundColor: \"transparent\",\n color: colors.brand[600],\n },\n \"&.Mui-checked\": {\n color: colors.brand[600],\n },\n \"&.Mui-checked:hover\": {\n color: colors.brand[700],\n },\n \"&.Mui-focusVisible\": {\n outline: \"none\",\n boxShadow: focusRings.brand,\n borderRadius: radius.full,\n },\n \"&.Mui-disabled\": {\n color: colors.gray[300],\n },\n },\n },\n },\n\n // ─── Switch ─────────────────────────────────────────────────────\n MuiSwitch: {\n defaultProps: {\n disableRipple: true,\n },\n styleOverrides: {\n root: {\n width: 44,\n height: 24,\n padding: 0,\n },\n switchBase: {\n padding: 2,\n \"&.Mui-checked\": {\n transform: \"translateX(20px)\",\n color: colors.base.white,\n \"& + .MuiSwitch-track\": {\n backgroundColor: colors.brand[600],\n opacity: 1,\n },\n },\n \"&.Mui-checked:hover + .MuiSwitch-track\": {\n backgroundColor: colors.brand[700],\n },\n \"&.Mui-focusVisible .MuiSwitch-thumb\": {\n boxShadow: focusRings.brand,\n },\n \"&.Mui-disabled .MuiSwitch-thumb\": {\n color: colors.gray[100],\n },\n \"&.Mui-disabled + .MuiSwitch-track\": {\n opacity: 0.5,\n },\n },\n thumb: {\n width: 20,\n height: 20,\n boxShadow: \"0px 1px 2px 0px #1018280d\",\n },\n track: {\n borderRadius: radius.full,\n backgroundColor: colors.gray[200],\n opacity: 1,\n },\n },\n },\n\n // ─── Toggle Button ─────────────────────────────────────────────\n MuiToggleButton: {\n styleOverrides: {\n root: {\n borderRadius: radius.md,\n borderColor: colors.gray[300],\n color: colors.gray[700],\n fontSize: 14,\n fontWeight: 600,\n lineHeight: \"20px\",\n padding: \"8px 14px\",\n textTransform: \"none\",\n \"&:hover\": {\n backgroundColor: colors.gray[50],\n },\n \"&.Mui-selected\": {\n backgroundColor: colors.brand[50],\n color: colors.brand[700],\n borderColor: colors.brand[300],\n \"&:hover\": {\n backgroundColor: colors.brand[100],\n },\n },\n \"&:focus-visible\": {\n boxShadow: focusRings.brandShadowXs,\n },\n },\n },\n },\n MuiToggleButtonGroup: {\n styleOverrides: {\n root: {\n borderRadius: radius.md,\n },\n grouped: {\n \"&:not(:first-of-type)\": {\n borderRadius: radius.md,\n marginLeft: -1,\n },\n \"&:first-of-type\": {\n borderRadius: radius.md,\n },\n },\n },\n },\n\n\n\n // ─── Card ───────────────────────────────────────────────────────\n MuiCard: {\n defaultProps: {\n elevation: 0,\n },\n styleOverrides: {\n root: {\n borderRadius: radius.xl,\n border: `1px solid ${colors.gray[200]}`,\n backgroundColor: colors.base.white,\n overflow: \"hidden\",\n },\n },\n },\n MuiCardContent: {\n styleOverrides: {\n root: {\n padding: \"24px\",\n \"&:last-child\": {\n paddingBottom: \"24px\",\n },\n },\n },\n },\n MuiCardHeader: {\n styleOverrides: {\n root: {\n padding: \"24px 24px 0 24px\",\n },\n title: {\n fontSize: 18,\n fontWeight: 600,\n lineHeight: \"28px\",\n },\n subheader: {\n fontSize: 14,\n lineHeight: \"20px\",\n marginTop: 4,\n },\n action: {\n marginTop: -4,\n marginRight: -4,\n },\n },\n },\n\n // ─── Paper ──────────────────────────────────────────────────────\n MuiPaper: {\n defaultProps: {\n elevation: 0,\n },\n styleOverrides: {\n root: {\n backgroundImage: \"none\",\n },\n rounded: {\n borderRadius: radius.lg,\n },\n elevation1: {\n boxShadow: tokenShadows.xs,\n border: `1px solid ${colors.gray[200]}`,\n },\n elevation2: {\n boxShadow: tokenShadows.sm,\n border: `1px solid ${colors.gray[200]}`,\n },\n elevation3: {\n boxShadow: tokenShadows.md,\n border: `1px solid ${colors.gray[200]}`,\n },\n elevation4: {\n boxShadow: tokenShadows.lg,\n border: `1px solid ${colors.gray[200]}`,\n },\n elevation8: {\n boxShadow: tokenShadows.xl,\n border: `1px solid ${colors.gray[200]}`,\n },\n elevation16: {\n boxShadow: tokenShadows[\"2xl\"],\n border: `1px solid ${colors.gray[200]}`,\n },\n elevation24: {\n boxShadow: tokenShadows[\"3xl\"],\n border: `1px solid ${colors.gray[200]}`,\n },\n },\n },\n\n // ─── Accordion ──────────────────────────────────────────────────\n MuiAccordion: {\n defaultProps: {\n disableGutters: true,\n elevation: 0,\n },\n styleOverrides: {\n root: {\n border: `1px solid ${colors.gray[200]}`,\n borderRadius: radius.lg,\n \"&:not(:last-child)\": {\n marginBottom: 8,\n },\n \"&:before\": {\n display: \"none\",\n },\n \"&.Mui-expanded\": {\n margin: 0,\n marginBottom: 8,\n borderRadius: radius.lg,\n },\n },\n },\n },\n MuiAccordionSummary: {\n styleOverrides: {\n root: {\n padding: \"0 24px\",\n minHeight: 56,\n \"&.Mui-expanded\": {\n minHeight: 56,\n borderBottom: `1px solid ${colors.gray[200]}`,\n },\n },\n content: {\n margin: \"12px 0\",\n \"&.Mui-expanded\": {\n margin: \"12px 0\",\n },\n },\n },\n },\n MuiAccordionDetails: {\n styleOverrides: {\n root: {\n padding: \"24px\",\n },\n },\n },\n\n // ─── AppBar ─────────────────────────────────────────────────────\n MuiAppBar: {\n defaultProps: {\n elevation: 0,\n color: \"transparent\",\n },\n styleOverrides: {\n root: {\n borderBottom: `1px solid ${colors.gray[200]}`,\n backgroundColor: colors.base.white,\n },\n },\n },\n MuiToolbar: {\n styleOverrides: {\n root: {\n minHeight: 64,\n \"@media (min-width: 600px)\": {\n minHeight: 64,\n },\n },\n dense: {\n minHeight: 48,\n \"@media (min-width: 600px)\": {\n minHeight: 48,\n },\n },\n },\n },\n\n // ─── Chip ───────────────────────────────────────────────────────\n MuiChip: {\n styleOverrides: {\n root: {\n borderRadius: radius.md,\n fontWeight: 500,\n fontSize: 14,\n },\n },\n },\n\n // ─── Form Control / Label ───────────────────────────────────────\n MuiFormControlLabel: {\n styleOverrides: {\n root: {\n marginLeft: 0,\n gap: 8,\n },\n label: {\n fontSize: 14,\n lineHeight: \"20px\",\n fontWeight: 500,\n color: colors.gray[700],\n },\n },\n },\n\n // ─── Table ───────────────────────────────────────────────────────\n MuiTable: {\n styleOverrides: {\n root: {\n borderCollapse: \"separate\",\n borderSpacing: 0,\n },\n },\n },\n MuiTableCell: {\n styleOverrides: {\n root: {\n borderBottom: `1px solid ${colors.gray[200]}`,\n padding: \"16px 24px\",\n fontSize: 14,\n lineHeight: \"20px\",\n color: colors.gray[600],\n },\n head: {\n backgroundColor: colors.gray[50],\n color: colors.gray[600],\n fontWeight: 500,\n fontSize: 12,\n lineHeight: \"18px\",\n },\n body: {\n color: colors.gray[600],\n },\n },\n },\n MuiTableHead: {\n styleOverrides: {\n root: {\n backgroundColor: colors.gray[50],\n borderBottom: `1px solid ${colors.gray[200]}`,\n },\n },\n },\n MuiTableRow: {\n styleOverrides: {\n root: {\n \"&:last-child td, &:last-child th\": {\n border: 0,\n },\n \"&:hover\": {\n backgroundColor: colors.gray[50],\n },\n \"&.Mui-selected\": {\n backgroundColor: colors.brand[50],\n \"&:hover\": {\n backgroundColor: colors.brand[50],\n },\n },\n },\n },\n },\n MuiTableContainer: {\n styleOverrides: {\n root: {\n borderRadius: radius.xl,\n border: `1px solid ${colors.gray[200]}`,\n boxShadow: \"none\",\n },\n },\n },\n\n // ─── Badge ──────────────────────────────────────────────────────\n MuiBadge: {\n styleOverrides: {\n standard: {\n fontWeight: 500,\n fontSize: 12,\n lineHeight: \"18px\",\n minWidth: 20,\n height: 20,\n borderRadius: radius.full,\n },\n colorPrimary: {\n backgroundColor: colors.brand[600],\n },\n colorError: {\n backgroundColor: colors.error[600],\n },\n colorSuccess: {\n backgroundColor: colors.success[600],\n },\n colorWarning: {\n backgroundColor: colors.warning[600],\n },\n dot: {\n minWidth: 8,\n height: 8,\n borderRadius: radius.full,\n },\n },\n },\n\n // ─── Divider ────────────────────────────────────────────────────\n MuiDivider: {\n styleOverrides: {\n root: {\n borderColor: colors.gray[200],\n },\n },\n },\n\n // ─── List ───────────────────────────────────────────────────────\n MuiList: {\n styleOverrides: {\n root: {\n padding: 4,\n },\n },\n },\n MuiListItemButton: {\n styleOverrides: {\n root: {\n borderRadius: radius.sm,\n padding: \"8px 12px\",\n \"&:hover\": {\n backgroundColor: colors.gray[50],\n },\n \"&.Mui-selected\": {\n backgroundColor: colors.brand[50],\n color: colors.brand[700],\n \"&:hover\": {\n backgroundColor: colors.brand[100],\n },\n },\n },\n },\n },\n MuiListItemIcon: {\n styleOverrides: {\n root: {\n minWidth: 36,\n color: colors.gray[500],\n },\n },\n },\n MuiListItemText: {\n styleOverrides: {\n primary: {\n fontSize: 14,\n lineHeight: \"20px\",\n fontWeight: 500,\n color: colors.gray[700],\n },\n secondary: {\n fontSize: 14,\n lineHeight: \"20px\",\n color: colors.gray[500],\n },\n },\n },\n\n // ─── Tooltip ────────────────────────────────────────────────────\n MuiTooltip: {\n styleOverrides: {\n tooltip: {\n backgroundColor: colors.gray[900],\n color: colors.base.white,\n fontSize: 12,\n lineHeight: \"18px\",\n fontWeight: 600,\n padding: \"8px 12px\",\n borderRadius: radius.md,\n boxShadow: tokenShadows.lg,\n },\n arrow: {\n color: colors.gray[900],\n },\n },\n },\n\n // ─── Alert ──────────────────────────────────────────────────────\n MuiAlert: {\n defaultProps: {\n variant: \"standard\",\n },\n styleOverrides: {\n root: {\n borderRadius: radius.xl,\n fontSize: 14,\n lineHeight: \"20px\",\n padding: \"12px 16px\",\n },\n standardError: {\n backgroundColor: colors.error[50],\n color: colors.error[700],\n border: `1px solid ${colors.error[300]}`,\n \"& .MuiAlert-icon\": {\n color: colors.error[600],\n },\n },\n standardWarning: {\n backgroundColor: colors.warning[50],\n color: colors.warning[700],\n border: `1px solid ${colors.warning[300]}`,\n \"& .MuiAlert-icon\": {\n color: colors.warning[600],\n },\n },\n standardSuccess: {\n backgroundColor: colors.success[50],\n color: colors.success[700],\n border: `1px solid ${colors.success[300]}`,\n \"& .MuiAlert-icon\": {\n color: colors.success[600],\n },\n },\n standardInfo: {\n backgroundColor: colors.blue[50],\n color: colors.blue[700],\n border: `1px solid ${colors.blue[300]}`,\n \"& .MuiAlert-icon\": {\n color: colors.blue[600],\n },\n },\n icon: {\n padding: \"2px 0\",\n },\n },\n },\n MuiAlertTitle: {\n styleOverrides: {\n root: {\n fontWeight: 600,\n fontSize: 14,\n lineHeight: \"20px\",\n marginBottom: 4,\n },\n },\n },\n\n // ─── Backdrop ───────────────────────────────────────────────────\n MuiBackdrop: {\n styleOverrides: {\n root: {\n backgroundColor: \"rgba(16, 24, 40, 0.7)\",\n },\n },\n },\n\n // ─── Dialog ─────────────────────────────────────────────────────\n MuiDialog: {\n styleOverrides: {\n paper: {\n borderRadius: radius.xl,\n boxShadow: tokenShadows.xl,\n padding: 0,\n },\n },\n },\n MuiDialogTitle: {\n styleOverrides: {\n root: {\n fontSize: 18,\n lineHeight: \"28px\",\n fontWeight: 600,\n color: colors.gray[900],\n padding: \"24px 24px 0\",\n },\n },\n },\n MuiDialogContent: {\n styleOverrides: {\n root: {\n padding: \"20px 24px\",\n fontSize: 14,\n lineHeight: \"20px\",\n color: colors.gray[600],\n },\n },\n },\n MuiDialogActions: {\n styleOverrides: {\n root: {\n padding: \"0 24px 24px\",\n gap: 12,\n },\n },\n },\n\n // ─── Progress ───────────────────────────────────────────────────\n MuiLinearProgress: {\n styleOverrides: {\n root: {\n borderRadius: radius.full,\n height: 8,\n backgroundColor: colors.gray[200],\n },\n barColorPrimary: {\n backgroundColor: colors.brand[600],\n borderRadius: radius.full,\n },\n barColorSecondary: {\n backgroundColor: colors.gray[600],\n borderRadius: radius.full,\n },\n },\n },\n MuiCircularProgress: {\n styleOverrides: {\n colorPrimary: {\n color: colors.brand[600],\n },\n colorSecondary: {\n color: colors.gray[600],\n },\n },\n },\n\n // ─── Skeleton ───────────────────────────────────────────────────\n MuiSkeleton: {\n defaultProps: {\n animation: \"wave\",\n },\n styleOverrides: {\n root: {\n backgroundColor: colors.gray[100],\n },\n rounded: {\n borderRadius: radius.md,\n },\n circular: {\n borderRadius: radius.full,\n },\n },\n },\n\n // ─── Snackbar ───────────────────────────────────────────────────\n MuiSnackbarContent: {\n styleOverrides: {\n root: {\n backgroundColor: colors.gray[900],\n color: colors.base.white,\n borderRadius: radius.xl,\n boxShadow: tokenShadows.lg,\n fontSize: 14,\n lineHeight: \"20px\",\n fontWeight: 500,\n padding: \"6px 16px\",\n },\n },\n },\n\n // ─── Typography ─────────────────────────────────────────────────\n MuiTypography: {\n defaultProps: {\n variantMapping: {\n h1: \"h1\",\n h2: \"h2\",\n h3: \"h3\",\n h4: \"h4\",\n h5: \"h5\",\n h6: \"h6\",\n subtitle1: \"p\",\n subtitle2: \"p\",\n body1: \"p\",\n body2: \"p\",\n caption: \"span\",\n overline: \"span\",\n },\n },\n },\n };\n}\n\nexport const components: Components<Theme> = buildComponents({\n colors,\n radius,\n focusRings,\n shadows: tokenShadows,\n} as DesignTokens);\n","import type { Shadows } from \"@mui/material/styles\";\nimport type { DesignTokens } from \"./types\";\nimport { shadows as tokenShadows } from \"./tokens\";\n\nexport function buildShadows(tokens: DesignTokens): Shadows {\n const tokenShadows = tokens.shadows;\n\n // MUI expects exactly 25 shadow entries (indices 0–24).\n // We map our token shadows to sensible elevation levels.\n return [\n \"none\", // 0\n tokenShadows.xs, // 1\n tokenShadows.sm, // 2\n tokenShadows.sm, // 3\n tokenShadows.md, // 4\n tokenShadows.md, // 5\n tokenShadows.md, // 6\n tokenShadows.lg, // 7\n tokenShadows.lg, // 8\n tokenShadows.lg, // 9\n tokenShadows.xl, // 10\n tokenShadows.xl, // 11\n tokenShadows.xl, // 12\n tokenShadows[\"2xl\"], // 13\n tokenShadows[\"2xl\"], // 14\n tokenShadows[\"2xl\"], // 15\n tokenShadows[\"3xl\"], // 16\n tokenShadows[\"3xl\"], // 17\n tokenShadows[\"3xl\"], // 18\n tokenShadows[\"3xl\"], // 19\n tokenShadows[\"3xl\"], // 20\n tokenShadows[\"3xl\"], // 21\n tokenShadows[\"3xl\"], // 22\n tokenShadows[\"3xl\"], // 23\n tokenShadows[\"3xl\"], // 24\n ];\n}\n\nexport const shadows: Shadows = buildShadows({\n shadows: tokenShadows,\n} as DesignTokens);\n","import { createTheme, type Theme, type ThemeOptions } from \"@mui/material/styles\";\nimport type { DesignTokens } from \"./types\";\nimport { buildPalette } from \"./palette\";\nimport { buildTypography } from \"./typography\";\nimport { buildShadows } from \"./shadows\";\nimport { buildComponents } from \"./components\";\n\n/** Assemble a MUI ThemeOptions object from a full set of design tokens. */\nexport function buildThemeOptions(tokens: DesignTokens): ThemeOptions {\n return {\n palette: buildPalette(tokens),\n typography: buildTypography(tokens),\n components: buildComponents(tokens),\n shadows: buildShadows(tokens),\n shape: {\n borderRadius: tokens.radius.md,\n },\n };\n}\n\n/** Create a fully resolved MUI Theme from a full set of design tokens. */\nexport function buildTheme(tokens: DesignTokens): Theme {\n return createTheme(buildThemeOptions(tokens));\n}\n","import type { ThemePreset } from \"../types\";\nimport * as tokens from \"../tokens\";\n\nexport const forestPreset: ThemePreset = {\n name: \"forest\",\n defaultVariant: \"light\",\n variants: {\n light: {\n tokens: {\n colors: tokens.colors,\n spacing: tokens.spacing,\n radius: tokens.radius,\n shadows: tokens.shadows,\n focusRings: tokens.focusRings,\n fontFamily: tokens.fontFamily,\n fontSize: tokens.fontSize,\n lineHeight: tokens.lineHeight,\n fontWeight: tokens.fontWeight,\n display: tokens.display,\n container: tokens.container,\n widths: tokens.widths,\n },\n },\n },\n};\n","import type { ThemePreset } from \"../types\";\nimport { forestPreset } from \"./forest\";\n\nconst presetRegistry = new Map<string, ThemePreset>();\n\n// Register built-in presets\npresetRegistry.set(forestPreset.name, forestPreset);\n\n/** Get a preset by name. Returns `undefined` if not found. */\nexport function getPreset(name: string): ThemePreset | undefined {\n return presetRegistry.get(name);\n}\n\n/** Register a custom preset (or override a built-in one). */\nexport function registerPreset(preset: ThemePreset): void {\n presetRegistry.set(preset.name, preset);\n}\n\n/** List all registered preset names. */\nexport function getAvailablePresets(): string[] {\n return Array.from(presetRegistry.keys());\n}\n\nexport { forestPreset };\n","import { createTheme, type ThemeOptions } from \"@mui/material/styles\";\nimport { palette } from \"./palette\";\nimport { typography } from \"./typography\";\nimport { components } from \"./components\";\nimport { shadows } from \"./shadows\";\n\nexport const forestThemeOptions: ThemeOptions = {\n palette,\n typography,\n components,\n shadows,\n shape: {\n borderRadius: 8,\n },\n};\n\nexport const forestTheme = createTheme(forestThemeOptions);\n\nexport { palette, typography, components, shadows };\nexport * from \"./tokens\";\n\n// Preset system\nexport { buildTheme, buildThemeOptions } from \"./buildTheme\";\nexport { getPreset, registerPreset, getAvailablePresets, forestPreset } from \"./presets\";\nexport type { DesignTokens, PresetVariantConfig, ThemePreset } from \"./types\";\n"]}
package/dist/theme.mjs CHANGED
@@ -1,3 +1,3 @@
1
- export { colors, components, container, display, focusRings, fontFamily, fontSize, fontWeight, forestTheme, forestThemeOptions, lineHeight, palette, radius, shadows2 as shadows, spacing, typography, widths } from './chunk-2HGULC2Q.mjs';
1
+ export { buildTheme, buildThemeOptions, colors, components, container, display, focusRings, fontFamily, fontSize, fontWeight, forestPreset, forestTheme, forestThemeOptions, getAvailablePresets, getPreset, lineHeight, palette, radius, registerPreset, shadows2 as shadows, spacing, typography, widths } from './chunk-5C6DAZT2.mjs';
2
2
  //# sourceMappingURL=theme.mjs.map
3
3
  //# sourceMappingURL=theme.mjs.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@matteoaliano/forest-ui",
3
- "version": "0.2.0",
3
+ "version": "0.2.1",
4
4
  "description": "Forest Design System — themed MUI components",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",
@@ -41,6 +41,7 @@
41
41
  "devDependencies": {
42
42
  "@emotion/react": "^11.0.0",
43
43
  "@emotion/styled": "^11.0.0",
44
+ "@mui/icons-material": "^7.3.8",
44
45
  "@mui/material": "^7.0.0",
45
46
  "@storybook/addon-essentials": "^8.6.14",
46
47
  "@storybook/blocks": "^8.6.14",