{"version":3,"sources":["../src/styles/common-layout.ts","../src/styles/common-typography.ts","../src/styles/common-utilities.ts","../src/styles/common.ts","../src/styles/page.ts","../src/styles/responsive.ts"],"names":["createStyles","BREAKPOINTS"],"mappings":";;;;;;AAYO,SAAS,YAAA,CAAa,EAAE,KAAA,EAAO,CAAA,EAAG,KAAI,EAAc;AACzD,EAAA,OAAO;AAAA;AAAA;AAAA,IAIL,aAAA,EAAe,GAAA;AAAA,eAAA,EACF,EAAE,SAAS,CAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKxB,WAAA,EAAa,GAAA;AAAA,kBAAA,EACG,EAAE,gBAAgB,CAAA;AAAA,qBAAA,EACf,EAAE,cAAc,CAAA;AAAA,eAAA,EACtB,EAAE,SAAS,CAAA;AAAA,kBAAA,EACR,EAAE,iBAAiB,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAInC,YAAA,EAAc,GAAA;AAAA;AAAA,uBAAA,EAEO,EAAE,QAAQ,CAAA;AAAA,iBAAA,EAChB,EAAE,SAAS,CAAA;AAAA,oBAAA,EACR,EAAE,gBAAgB,CAAA;AAAA,uBAAA,EACf,EAAE,cAAc,CAAA;AAAA;;AAAA;AAAA,oBAAA,EAInB,EAAE,gBAAgB,CAAA;AAAA,uBAAA,EACf,EAAE,cAAc,CAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKrC,WAAA,EAAa,GAAA;AAAA;AAAA;AAAA,eAAA,EAGA,EAAE,SAAS,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIxB,YAAA,EAAc,GAAA;AAAA;AAAA;AAAA;AAAA,qBAAA,EAIK,EAAE,QAAQ,CAAA;AAAA,sBAAA,EACT,EAAE,SAAS,CAAA;AAAA,+BAAA,EACF,EAAE,oBAAoB,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAInD,SAAA,EAAW,GAAA;AAAA;AAAA;AAAA;AAAA,qBAAA,EAIQ,EAAE,QAAQ,CAAA;AAAA;AAAA,WAAA,EAEpB,EAAE,QAAQ,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAInB,SAAA,EAAW,GAAA;AAAA;AAAA;AAAA,WAAA,EAGF,EAAE,QAAQ,CAAA;AAAA,qBAAA,EACA,EAAE,QAAQ,CAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAK7B,QAAA,EAAU,GAAA;AAAA,kBAAA,EACM,EAAE,gBAAgB,CAAA;AAAA,qBAAA,EACf,EAAE,cAAc,CAAA;AAAA,eAAA,EACtB,EAAE,SAAS,CAAA;AAAA;;AAAA;AAAA,mBAAA,EAIP,EAAE,gBAAgB,CAAA;AAAA,qBAAA,EAChB,EAAE,gBAAgB,CAAA;AAAA,eAAA,EACxB,EAAE,gBAAgB,CAAA;AAAA;AAAA;;AAAA;AAAA,mBAAA,EAKd,EAAE,QAAQ,CAAA;AAAA,eAAA,EACd,EAAE,kBAAkB,CAAA;AAAA,oBAAA,EACf,EAAE,QAAQ,CAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAK5B,UAAA,EAAY,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA,eAAA,EAKC,MAAA,CAAO,CAAA,CAAE,SAAS,CAAA,GAAI,CAAC,CAAA;AAAA,aAAA,EACzB,EAAE,kBAAkB,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI/B,gBAAA,EAAkB,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAUlB,aAAA,EAAe,GAAA;AAAA,kBAAA,EACC,EAAE,aAAa,CAAA;AAAA,eAAA,EAClB,EAAE,SAAS,CAAA;AAAA,qBAAA,EACL,EAAE,cAAc,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAInC,uBAAA,EAAyB,GAAA;AAAA;AAAA;AAAA,kBAAA,EAGT,EAAE,aAAa,CAAA;AAAA,eAAA,EAClB,EAAE,SAAS,CAAA;AAAA,qBAAA,EACL,EAAE,cAAc,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAMnC,WAAA,EAAa,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAQb,iBAAA,EAAmB,GAAA;AAAA;AAAA;AAAA;AAAA,kBAAA,EAIH,EAAE,aAAa,CAAA;AAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAO/B,WAAA,EAAa,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAQb,sBAAA,EAAwB,GAAA;AAAA;AAAA;AAAA;AAAA,kBAAA,EAIR,EAAE,aAAa,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAM/B,YAAA,EAAc,GAAA;AAAA;AAAA,WAAA,EAEL,EAAE,QAAQ,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAInB,UAAA,EAAY,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKZ,UAAA,EAAY,GAAA;AAAA;AAAA;AAAA,WAAA,EAGH,EAAE,QAAQ,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAInB,gBAAA,EAAkB,GAAA;AAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAOlB,cAAA,EAAgB,GAAA;AAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAOhB,WAAA,EAAa,GAAA;AAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAOb,cAAA,EAAgB,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAShB,YAAA,EAAc,GAAA;AAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IASd,YAAA,EAAc,GAAA;AAAA;AAAA;AAAA;AAAA,kBAAA,EAIE,EAAE,gBAAgB,CAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKlC,aAAA,EAAe,GAAA;AAAA,iBAAA,EACA,EAAE,SAAS,CAAA;AAAA,+BAAA,EACG,EAAE,oBAAoB,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAQnD,eAAA,EAAiB,GAAA;AAAA,eAAA,EACJ,EAAE,SAAS,CAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAMxB,WAAA,EAAa,GAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAMb,oBAAA,EAAsB,GAAA;AAAA,kBAAA,EACN,EAAE,QAAQ,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI1B,gBAAA,EAAkB,GAAA;AAAA,kBAAA,EACF,EAAE,QAAQ,CAAA;AAAA,eAAA,EACb,EAAE,SAAS,CAAA;AAAA,kBAAA,EACR,EAAE,aAAa,CAAA;AAAA,qBAAA,EACZ,EAAE,cAAc,CAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAOnC,QAAA,EAAU,GAAA;AAAA,eAAA,EACG,EAAE,SAAS,CAAA;AAAA;AAAA,qBAAA,EAEL,EAAE,SAAS,CAAA;AAAA,qBAAA,EACX,EAAE,cAAc,CAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKnC,cAAA,EAAgB,GAAA;AAAA,kBAAA,EACA,EAAE,cAAc,CAAA;AAAA,6BAAA,EACL,EAAE,YAAY,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIzC,gBAAA,EAAkB,GAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAQlB,SAAA,EAAW,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAA,EAKK,EAAE,aAAa,CAAA;AAAA;AAAA,8BAAA,EAEH,EAAE,oBAAoB,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIlD,WAAA,EAAa,GAAA;AAAA,eAAA,EACA,CAAA,CAAE,SAAS,CAAA,GAAA,EAAM,CAAA,CAAE,SAAS,CAAA;AAAA;AAAA;AAAA;AAAA,+BAAA,EAIZ,EAAE,oBAAoB,CAAA;AAAA;AAAA,kBAAA,EAEnC,EAAE,gBAAgB,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIlC,YAAA,EAAc,GAAA;AAAA;AAAA;AAAA;AAAA,eAAA,EAID,EAAE,SAAS,CAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAOxB,gBAAA,EAAkB,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKlB,gBAAA,EAAkB,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKlB,aAAA,EAAe,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAOf,0BAAA,EAA4B,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAA;AAAA,GAM9B;AACF;;;AC/VO,SAAS,gBAAA,CAAiB,EAAE,KAAA,EAAO,CAAA,EAAG,KAAI,EAAc;AAC7D,EAAA,OAAO;AAAA;AAAA;AAAA,IAIL,QAAA,EAAU,GAAA;AAAA,iBAAA,EACK,EAAE,UAAU,CAAA;AAAA,aAAA,EAChB,EAAE,iBAAiB,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI9B,WAAA,EAAa,GAAA;AAAA,aAAA,EACF,EAAE,YAAY,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIzB,aAAA,EAAe,GAAA;AAAA,aAAA,EACJ,EAAE,kBAAkB,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI/B,YAAA,EAAc,GAAA;AAAA,aAAA,EACH,EAAE,iBAAiB,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI9B,QAAA,EAAU,GAAA;AAAA,mBAAA,EACO,EAAE,gBAAgB,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAInC,SAAA,EAAW,GAAA;AAAA,iBAAA,EACI,EAAE,UAAU,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI3B,QAAA,EAAU,GAAA;AAAA,aAAA,EACC,EAAE,YAAY,CAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKzB,QAAA,EAAU,GAAA;AAAA;AAAA;AAAA,aAAA,EAGC,EAAE,YAAY,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAMzB,YAAA,EAAc,GAAA;AAAA,iBAAA,EACC,EAAE,UAAU,CAAA;AAAA,mBAAA,EACV,EAAE,gBAAgB,CAAA;AAAA,qBAAA,EAChB,EAAE,QAAQ,CAAA;AAAA,aAAA,EAClB,EAAE,YAAY,CAAA;AAAA;AAAA;AAAA,WAAA,EAGhB,EAAE,QAAQ,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAInB,SAAA,EAAW,GAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAQX,UAAA,EAAY,GAAA;AAAA,iBAAA,EACG,EAAE,UAAU,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI3B,YAAA,EAAc,GAAA;AAAA,iBAAA,EACC,EAAE,QAAQ,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIzB,UAAA,EAAY,GAAA;AAAA,iBAAA,EACG,EAAE,UAAU,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAM3B,UAAA,EAAY,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKZ,UAAA,EAAY,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKZ,UAAA,EAAY,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKZ,UAAA,EAAY,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKZ,UAAA,EAAY,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKZ,UAAA,EAAY,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKZ,aAAA,EAAe,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKf,aAAA,EAAe,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKf,QAAA,EAAU,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAOV,UAAA,EAAY,GAAA;AAAA;AAAA;AAAA,aAAA,EAGD,EAAE,YAAY,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIzB,SAAA,EAAW,GAAA;AAAA;AAAA,aAAA,EAEA,EAAE,kBAAkB,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI/B,eAAA,EAAiB,GAAA;AAAA;AAAA,IAAA;AAAA,GAGnB;AACF;;;ACvJO,SAAS,aAAA,CAAc,EAAE,KAAA,EAAO,CAAA,EAAG,KAAI,EAAc;AAC1D,EAAA,OAAO;AAAA;AAAA;AAAA,IAIL,YAAA,EAAc,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAOd,YAAA,EAAc,GAAA;AAAA,mBAAA,EACG,EAAE,QAAQ,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI3B,WAAA,EAAa,GAAA;AAAA,kBAAA,EACG,EAAE,QAAQ,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI1B,cAAA,EAAgB,GAAA;AAAA,qBAAA,EACG,EAAE,QAAQ,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI7B,cAAA,EAAgB,GAAA;AAAA,qBAAA,EACG,EAAE,QAAQ,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI7B,cAAA,EAAgB,GAAA;AAAA,qBAAA,EACG,EAAE,QAAQ,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI7B,WAAA,EAAa,GAAA;AAAA,kBAAA,EACG,EAAE,QAAQ,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI1B,WAAA,EAAa,GAAA;AAAA,kBAAA,EACG,EAAE,QAAQ,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI1B,YAAA,EAAc,GAAA;AAAA,mBAAA,EACG,EAAE,QAAQ,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI3B,aAAA,EAAe,GAAA;AAAA,oBAAA,EACG,EAAE,QAAQ,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAM5B,SAAA,EAAW,GAAA;AAAA,eAAA,EACE,EAAE,SAAS,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIxB,SAAA,EAAW,GAAA;AAAA,eAAA,EACE,EAAE,SAAS,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIxB,SAAA,EAAW,GAAA;AAAA,eAAA,EACE,EAAE,SAAS,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIxB,mBAAA,EAAqB,GAAA;AAAA,oBAAA,EACH,EAAE,SAAS,CAAA;AAAA,qBAAA,EACV,EAAE,SAAS,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI9B,iBAAA,EAAmB,GAAA;AAAA,mBAAA,EACF,EAAE,SAAS,CAAA;AAAA,sBAAA,EACR,EAAE,SAAS,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAM/B,SAAA,EAAW,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKX,QAAA,EAAU,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKV,QAAA,EAAU,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKV,QAAA,EAAU,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKV,UAAA,EAAY,GAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAMZ,UAAA,EAAY,GAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAMZ,SAAA,EAAW,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAOX,YAAA,EAAc,GAAA;AAAA,aAAA,EACH,EAAE,YAAY,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIzB,YAAA,EAAc,GAAA;AAAA,aAAA,EACH,EAAE,YAAY,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIzB,YAAA,EAAc,GAAA;AAAA,aAAA,EACH,EAAE,YAAY,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIzB,UAAA,EAAY,GAAA;AAAA,aAAA,EACD,EAAE,UAAU,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIvB,kBAAA,EAAoB,GAAA;AAAA,aAAA,EACT,EAAE,kBAAkB,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI/B,iBAAA,EAAmB,GAAA;AAAA,aAAA,EACR,EAAE,iBAAiB,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAM9B,cAAA,EAAgB,GAAA;AAAA,qBAAA,EACG,EAAE,cAAc,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAInC,gBAAA,EAAkB,GAAA;AAAA,qBAAA,EACC,EAAE,YAAY,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIjC,cAAA,EAAgB,GAAA;AAAA,qBAAA,EACG,EAAE,cAAc,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAInC,YAAA,EAAc,GAAA;AAAA,+BAAA,EACe,EAAE,oBAAoB,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAInD,gBAAA,EAAkB,GAAA;AAAA,6BAAA,EACS,EAAE,YAAY,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAMzC,WAAA,EAAa,GAAA;AAAA,kBAAA,EACG,EAAE,gBAAgB,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIlC,QAAA,EAAU,GAAA;AAAA,kBAAA,EACM,EAAE,aAAa,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI/B,cAAA,EAAgB,GAAA;AAAA,kBAAA,EACA,EAAE,cAAc,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAMhC,QAAA,EAAU,GAAA;AAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAOV,SAAA,EAAW,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IASX,cAAA,EAAgB,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKhB,YAAA,EAAc,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAOd,aAAA,EAAe,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKf,aAAA,EAAe,GAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKf,QAAA,EAAU,GAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAQV,iBAAA,EAAmB,GAAA;AAAA,cAAA,EACP,EAAE,QAAQ,CAAA;AAAA,4BAAA,EACI,EAAE,oBAAoB,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA;AAAA,IAMhD,UAAA,EAAY,GAAA;AAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAOZ,UAAA,EAAY,GAAA;AAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAOZ,UAAA,EAAY,GAAA;AAAA;AAAA;AAAA;AAAA,IAAA;AAAA,GAKd;AACF;;;AC5PO,SAAS,kBAAA,GAAqB;AACnC,EAAA,OAAOA,sBAAA,CAAa,CAAC,EAAE,KAAA,EAAO,KAAI,KAAM;AAGtC,IAAA,MAAM,IAAA,GAAkB;AAAA,MACtB,KAAA;AAAA,MACA;AAAA,KACF;AAEA,IAAA,OAAO;AAAA,MACL,GAAG,aAAa,IAAI,CAAA;AAAA,MACpB,GAAG,iBAAiB,IAAI,CAAA;AAAA,MACxB,GAAG,cAAc,IAAI;AAAA,KACvB;AAAA,EACF,CAAC,CAAA;AACH;ACzBO,SAAS,gBAAA,GAAmB;AACjC,EAAA,OAAOA,sBAAAA,CAAa,CAAC,EAAE,KAAA,EAAO,KAAI,MAAO;AAAA;AAAA,IAEvC,QAAA,EAAU,GAAA;AAAA;AAAA;AAAA,WAAA,EAGD,MAAM,QAAQ,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIvB,UAAA,EAAY,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA,WAAA,EAKH,MAAM,QAAQ,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIvB,UAAA,EAAY,GAAA;AAAA;AAAA;AAAA,WAAA,EAGH,MAAM,QAAQ,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIvB,gBAAA,EAAkB,GAAA;AAAA;AAAA;AAAA,WAAA,EAGT,MAAM,QAAQ,CAAA;AAAA,sBAAA,EACH,MAAM,SAAS,CAAA;AAAA,+BAAA,EACN,MAAM,oBAAoB,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIvD,aAAA,EAAe,GAAA;AAAA,kBAAA,EACC,MAAM,gBAAgB,CAAA;AAAA,qBAAA,EACnB,MAAM,cAAc,CAAA;AAAA,eAAA,EAC1B,MAAM,SAAS,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI5B,QAAA,EAAU,GAAA;AAAA;AAAA;AAAA,eAAA,EAGG,MAAM,SAAS,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAI5B,WAAA,EAAa,GAAA;AAAA,qBAAA,EACM,MAAM,QAAQ,CAAA;;AAAA;AAAA,mBAAA,EAGhB,MAAM,UAAU,CAAA;AAAA,qBAAA,EACd,MAAM,gBAAgB,CAAA;AAAA,eAAA,EAC5B,MAAM,gBAAgB,CAAA;AAAA,uBAAA,EACd,MAAM,QAAQ,CAAA;AAAA,wBAAA,EACb,MAAM,SAAS,CAAA;AAAA,iCAAA,EACN,MAAM,oBAAoB,CAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKzD,UAAA,EAAY,GAAA;AAAA;AAAA;AAAA,WAAA,EAGH,MAAM,QAAQ,CAAA;AAAA,mBAAA,EACN,MAAM,SAAS,CAAA;AAAA,4BAAA,EACN,MAAM,oBAAoB,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIpD,UAAA,EAAY,GAAA;AAAA,mBAAA,EACK,MAAM,SAAS,CAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAIhC,kBAAA,EAAoB,GAAA;AAAA,qBAAA,EACD,MAAM,QAAQ,CAAA;;AAAA;AAAA,uBAAA,EAGZ,MAAM,QAAQ,CAAA;AAAA;AAAA,IAAA;AAAA,GAGrC,CAAE,CAAA;AACJ;ACrFO,SAAS,sBAAA,GAAyB;AACvC,EAAA,OAAOA,sBAAAA,CAAa,CAAC,EAAE,GAAA,EAAK,OAAM,MAAO;AAAA;AAAA,IAEvC,cAAA,EAAgB,GAAA;AAAA,yBAAA,EACOC,6BAAA,CAAY,KAAK,CAAC,CAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAMzC,eAAA,EAAiB,GAAA;AAAA,yBAAA,EACMA,8BAAY,EAAE,CAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAMrC,cAAA,EAAgB,GAAA;AAAA,yBAAA,EACOA,6BAAA,CAAY,KAAK,CAAC,CAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAMzC,eAAA,EAAiB,GAAA;AAAA,yBAAA,EACMA,8BAAY,EAAE,CAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAMrC,mBAAA,EAAqB,GAAA;AAAA;AAAA,iBAAA,EAENA,8BAAY,EAAE,CAAA;AAAA;AAAA,iBAAA,EAEd,MAAM,SAAS,CAAA;;AAAA,yBAAA,EAEPA,6BAAA,CAAY,KAAK,CAAC,CAAA;AAAA,mBAAA,EACxB,MAAM,SAAS,CAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAKhC,cAAA,EAAgB,GAAA;AAAA;AAAA,WAAA,EAEP,MAAM,SAAS,CAAA;AAAA;;AAAA,yBAAA,EAGDA,6BAAA,CAAY,KAAK,CAAC,CAAA;AAAA;AAAA;;AAAA,yBAAA,EAIlBA,6BAAA,CAAY,KAAK,CAAC,CAAA;AAAA;AAAA;AAAA,IAAA,CAAA;AAAA;AAAA,IAMzC,cAAA,EAAgB,GAAA;AAAA;AAAA,WAAA,EAEP,MAAM,SAAS,CAAA;;AAAA,yBAAA,EAEDA,6BAAA,CAAY,KAAK,CAAC,CAAA;AAAA;AAAA;AAAA,IAAA;AAAA,GAI3C,CAAE,CAAA;AACJ","file":"chunk-XNK73QDU.cjs","sourcesContent":["/**\n * 通用样式 - 布局部分\n *\n * 页面容器、卡片、Flex、面板、列表项、定位等布局相关样式。\n * 由 common.ts 组合使用，不直接对外导出。\n */\n\nimport type { StyleDeps } from './style-types';\n\n/**\n * 布局样式定义\n */\nexport function layoutStyles({ token: t, css }: StyleDeps) {\n  return {\n    // ==================== 页面 / 容器 ====================\n\n    /** 页面容器 */\n    pageContainer: css`\n      padding: ${t.paddingLG}px;\n      min-height: 100%;\n    `,\n\n    /** 卡片包装器 */\n    cardWrapper: css`\n      background: ${t.colorBgContainer};\n      border-radius: ${t.borderRadiusLG}px;\n      padding: ${t.paddingLG}px;\n      box-shadow: ${t.boxShadowTertiary};\n    `,\n\n    /** 表格包装器 */\n    tableWrapper: css`\n      .ant-pro-table-search {\n        margin-bottom: ${t.marginMD}px;\n        padding: ${t.paddingMD}px;\n        background: ${t.colorBgContainer};\n        border-radius: ${t.borderRadiusLG}px;\n      }\n\n      .ant-table-wrapper {\n        background: ${t.colorBgContainer};\n        border-radius: ${t.borderRadiusLG}px;\n      }\n    `,\n\n    /** 表单包装器 */\n    formWrapper: css`\n      max-width: 800px;\n      margin: 0 auto;\n      padding: ${t.paddingLG}px;\n    `,\n\n    /** 详情页头部 */\n    detailHeader: css`\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      margin-bottom: ${t.marginLG}px;\n      padding-bottom: ${t.paddingMD}px;\n      border-bottom: 1px solid ${t.colorBorderSecondary};\n    `,\n\n    /** 操作栏 */\n    actionBar: css`\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      margin-bottom: ${t.marginMD}px;\n      flex-wrap: wrap;\n      gap: ${t.marginSM}px;\n    `,\n\n    /** 搜索/筛选栏 */\n    filterBar: css`\n      display: flex;\n      align-items: center;\n      gap: ${t.marginSM}px;\n      margin-bottom: ${t.marginMD}px;\n      flex-wrap: wrap;\n    `,\n\n    /** 统计卡片 */\n    statCard: css`\n      background: ${t.colorBgContainer};\n      border-radius: ${t.borderRadiusLG}px;\n      padding: ${t.paddingLG}px;\n      text-align: center;\n\n      .stat-value {\n        font-size: ${t.fontSizeHeading2}px;\n        font-weight: ${t.fontWeightStrong};\n        color: ${t.colorTextHeading};\n        line-height: 1.2;\n      }\n\n      .stat-label {\n        font-size: ${t.fontSize}px;\n        color: ${t.colorTextSecondary};\n        margin-top: ${t.marginXS}px;\n      }\n    `,\n\n    /** 空状态容器 */\n    emptyState: css`\n      display: flex;\n      flex-direction: column;\n      align-items: center;\n      justify-content: center;\n      padding: ${Number(t.paddingLG) * 2}px;\n      color: ${t.colorTextSecondary};\n    `,\n\n    /** 加载状态容器 */\n    loadingContainer: css`\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      min-height: 200px;\n    `,\n\n    // ==================== 容器样式 ====================\n\n    /** 灰色背景容器 */\n    grayContainer: css`\n      background: ${t.colorBgLayout};\n      padding: ${t.paddingSM}px;\n      border-radius: ${t.borderRadiusSM}px;\n    `,\n\n    /** 可滚动灰色容器 */\n    scrollableGrayContainer: css`\n      max-height: 300px;\n      overflow: auto;\n      background: ${t.colorBgLayout};\n      padding: ${t.paddingSM}px;\n      border-radius: ${t.borderRadiusSM}px;\n    `,\n\n    // ==================== 头像样式 ====================\n\n    /** 小头像 */\n    avatarSmall: css`\n      width: 40px;\n      height: 40px;\n      border-radius: 50%;\n      object-fit: cover;\n    `,\n\n    /** 头像占位符 */\n    avatarPlaceholder: css`\n      width: 40px;\n      height: 40px;\n      border-radius: 50%;\n      background: ${t.colorBgLayout};\n      display: flex;\n      align-items: center;\n      justify-content: center;\n    `,\n\n    /** 大头像 */\n    avatarLarge: css`\n      width: 60px;\n      height: 60px;\n      border-radius: 50%;\n      object-fit: cover;\n    `,\n\n    /** 大头像占位符 */\n    avatarLargePlaceholder: css`\n      width: 60px;\n      height: 60px;\n      border-radius: 50%;\n      background: ${t.colorBgLayout};\n    `,\n\n    // ==================== Flex 布局 ====================\n\n    /** 两列布局行 */\n    twoColumnRow: css`\n      display: flex;\n      gap: ${t.marginLG}px;\n    `,\n\n    /** 列项 */\n    columnItem: css`\n      flex: 1;\n    `,\n\n    /** 水平居中对齐 */\n    flexCenter: css`\n      display: flex;\n      align-items: center;\n      gap: ${t.marginXS}px;\n    `,\n\n    /** 垂直居中对齐 */\n    flexCenterColumn: css`\n      display: flex;\n      flex-direction: column;\n      align-items: center;\n    `,\n\n    /** 水平垂直居中 */\n    flexCenterBoth: css`\n      display: flex;\n      justify-content: center;\n      align-items: center;\n    `,\n\n    /** 两端对齐 */\n    flexBetween: css`\n      display: flex;\n      justify-content: space-between;\n      align-items: center;\n    `,\n\n    /** 全高度 Flex 容器 - 用于填充剩余空间 */\n    fullHeightFlex: css`\n      flex: 1;\n      display: flex;\n      flex-direction: column;\n      overflow: hidden;\n      min-height: 0;\n    `,\n\n    /** 全屏高度 Flex 容器 */\n    fullViewFlex: css`\n      display: flex;\n      flex-direction: column;\n      min-height: 100vh;\n    `,\n\n    // ==================== 页面布局 ====================\n\n    /** 吸顶头部 */\n    stickyHeader: css`\n      position: sticky;\n      top: 0;\n      z-index: 100;\n      background: ${t.colorBgContainer};\n      flex-shrink: 0;\n    `,\n\n    /** 页面头部栏 */\n    pageHeaderBar: css`\n      padding: 0 ${t.paddingLG}px;\n      border-bottom: 1px solid ${t.colorBorderSecondary};\n      display: flex;\n      align-items: center;\n      min-height: 48px;\n      position: relative;\n    `,\n\n    /** 内容区域居中布局 */\n    contentCentered: css`\n      padding: ${t.paddingLG}px;\n      display: flex;\n      justify-content: center;\n    `,\n\n    /** 内容卡片容器 */\n    contentCard: css`\n      max-width: 1000px;\n      width: 100%;\n    `,\n\n    /** 详情内容区域 */\n    detailContentSection: css`\n      margin-top: ${t.marginMD}px;\n    `,\n\n    /** 详情内容框 */\n    detailContentBox: css`\n      margin-top: ${t.marginXS}px;\n      padding: ${t.paddingSM}px;\n      background: ${t.colorBgLayout};\n      border-radius: ${t.borderRadiusSM}px;\n      white-space: pre-wrap;\n    `,\n\n    // ==================== 列表项 ====================\n\n    /** 列表项基础 */\n    listItem: css`\n      padding: ${t.paddingXS}px;\n      cursor: pointer;\n      margin-bottom: ${t.marginXXS}px;\n      border-radius: ${t.borderRadiusSM}px;\n      transition: all 0.2s;\n    `,\n\n    /** 列表项选中态 */\n    listItemActive: css`\n      background: ${t.colorPrimaryBg};\n      border-left: 3px solid ${t.colorPrimary};\n    `,\n\n    /** 列表项非选中态 */\n    listItemInactive: css`\n      background: transparent;\n      border-left: 3px solid transparent;\n    `,\n\n    // ==================== 面板 ====================\n\n    /** 侧边面板 */\n    sidePanel: css`\n      width: 400px;\n      flex-shrink: 0;\n      display: flex;\n      flex-direction: column;\n      background: ${t.colorBgLayout};\n      overflow: hidden;\n      border-right: 1px solid ${t.colorBorderSecondary};\n    `,\n\n    /** 面板头部 */\n    panelHeader: css`\n      padding: ${t.paddingSM}px ${t.paddingMD}px;\n      display: flex;\n      justify-content: space-between;\n      align-items: center;\n      border-bottom: 1px solid ${t.colorBorderSecondary};\n      flex-shrink: 0;\n      background: ${t.colorBgContainer};\n    `,\n\n    /** 面板内容滚动区 */\n    panelContent: css`\n      flex: 1;\n      overflow-y: auto;\n      overflow-x: hidden;\n      padding: ${t.paddingXS}px;\n      min-height: 0;\n    `,\n\n    // ==================== 定位 ====================\n\n    /** 相对定位 */\n    positionRelative: css`\n      position: relative;\n    `,\n\n    /** 绝对定位 */\n    positionAbsolute: css`\n      position: absolute;\n    `,\n\n    /** 固定定位 */\n    positionFixed: css`\n      position: fixed;\n    `,\n\n    // ==================== 全屏加载 ====================\n\n    /** 全屏加载容器 */\n    loadingContainerFullscreen: css`\n      display: flex;\n      justify-content: center;\n      align-items: center;\n      height: 100vh;\n    `,\n  };\n}\n","/**\n * 通用样式 - 排版部分\n *\n * 文字颜色、字号、字重、标题、统计数字等排版相关样式。\n * 由 common.ts 组合使用，不直接对外导出。\n */\n\nimport type { StyleDeps } from './style-types';\n\n/**\n * 排版样式定义\n */\nexport function typographyStyles({ token: t, css }: StyleDeps) {\n  return {\n    // ==================== 文字样式 ====================\n\n    /** 辅助文字样式 - 用于次要说明文字 */\n    helpText: css`\n      font-size: ${t.fontSizeSM}px;\n      color: ${t.colorTextTertiary};\n    `,\n\n    /** 主色文字 */\n    primaryText: css`\n      color: ${t.colorPrimary};\n    `,\n\n    /** 次要文字 */\n    secondaryText: css`\n      color: ${t.colorTextSecondary};\n    `,\n\n    /** 三级文字（最淡） */\n    tertiaryText: css`\n      color: ${t.colorTextTertiary};\n    `,\n\n    /** 加粗文字 */\n    boldText: css`\n      font-weight: ${t.fontWeightStrong};\n    `,\n\n    /** 小字号文字 */\n    smallText: css`\n      font-size: ${t.fontSizeSM}px;\n    `,\n\n    /** 链接样式 */\n    linkText: css`\n      color: ${t.colorPrimary};\n      cursor: pointer;\n    `,\n\n    /** 代码/等宽字体样式 */\n    codeText: css`\n      font-family: monospace;\n      cursor: pointer;\n      color: ${t.colorPrimary};\n    `,\n\n    // ==================== 标题样式 ====================\n\n    /** 区块标题 */\n    sectionTitle: css`\n      font-size: ${t.fontSizeLG}px;\n      font-weight: ${t.fontWeightStrong};\n      margin-bottom: ${t.marginMD}px;\n      color: ${t.colorPrimary};\n      display: flex;\n      align-items: center;\n      gap: ${t.marginXS}px;\n    `,\n\n    /** 页面标题 */\n    pageTitle: css`\n      font-size: 16px;\n      font-weight: 500;\n    `,\n\n    // ==================== 字体 ====================\n\n    /** 字体大小 - 小 */\n    fontSizeSm: css`\n      font-size: ${t.fontSizeSM}px;\n    `,\n\n    /** 字体大小 - 基础 */\n    fontSizeBase: css`\n      font-size: ${t.fontSize}px;\n    `,\n\n    /** 字体大小 - 大 */\n    fontSizeLg: css`\n      font-size: ${t.fontSizeLG}px;\n    `,\n\n    // --- 固定字号工具类（不跟随 token，用于精确控制字号的场景） ---\n\n    /** 字体大小 - 12px (固定值) */\n    fontSize12: css`\n      font-size: 12px;\n    `,\n\n    /** 字体大小 - 13px */\n    fontSize13: css`\n      font-size: 13px;\n    `,\n\n    /** 字体大小 - 14px */\n    fontSize14: css`\n      font-size: 14px;\n    `,\n\n    /** 字体大小 - 16px */\n    fontSize16: css`\n      font-size: 16px;\n    `,\n\n    /** 字体大小 - 20px */\n    fontSize20: css`\n      font-size: 20px;\n    `,\n\n    /** 字体大小 - 32px（大数字统计） */\n    fontSize32: css`\n      font-size: 32px;\n    `,\n\n    /** 字重 - 中等 */\n    fontWeight500: css`\n      font-weight: 500;\n    `,\n\n    /** 字重 - 粗体 */\n    fontWeight600: css`\n      font-weight: 600;\n    `,\n\n    /** 等宽字体 */\n    fontMono: css`\n      font-family: monospace;\n    `,\n\n    // ==================== 统计 ====================\n\n    /** 统计数字 - 大 */\n    statNumber: css`\n      font-size: 32px;\n      font-weight: 600;\n      color: ${t.colorPrimary};\n    `,\n\n    /** 统计标签 */\n    statLabel: css`\n      font-size: 12px;\n      color: ${t.colorTextSecondary};\n    `,\n\n    /** 统计卡片内边距 */\n    statCardPadding: css`\n      padding-top: 10px;\n    `,\n  };\n}\n","/**\n * 通用样式 - 工具类部分\n *\n * 间距、宽度、颜色、背景、边框、溢出处理、交互、图标、分隔线等工具类样式。\n * 由 common.ts 组合使用，不直接对外导出。\n */\n\nimport type { StyleDeps } from './style-types';\n\n/**\n * 工具类样式定义\n */\nexport function utilityStyles({ token: t, css }: StyleDeps) {\n  return {\n    // ==================== 操作 ====================\n\n    /** 操作按钮右对齐 */\n    actionsRight: css`\n      margin-left: auto;\n    `,\n\n    // ==================== 间距 (margin) ====================\n\n    /** 左间距 - 小 */\n    marginLeftSm: css`\n      margin-left: ${t.marginXS}px;\n    `,\n\n    /** 上间距 - 小 */\n    marginTopSm: css`\n      margin-top: ${t.marginXS}px;\n    `,\n\n    /** 下间距 - 小 */\n    marginBottomSm: css`\n      margin-bottom: ${t.marginXS}px;\n    `,\n\n    /** 下间距 - 中 */\n    marginBottomMd: css`\n      margin-bottom: ${t.marginMD}px;\n    `,\n\n    /** 下间距 - 大 */\n    marginBottomLg: css`\n      margin-bottom: ${t.marginLG}px;\n    `,\n\n    /** 上间距 - 中 */\n    marginTopMd: css`\n      margin-top: ${t.marginMD}px;\n    `,\n\n    /** 上间距 - 大 */\n    marginTopLg: css`\n      margin-top: ${t.marginLG}px;\n    `,\n\n    /** 左间距 - 中 */\n    marginLeftMd: css`\n      margin-left: ${t.marginMD}px;\n    `,\n\n    /** 右间距 - 中 */\n    marginRightMd: css`\n      margin-right: ${t.marginMD}px;\n    `,\n\n    // ==================== 间距 (padding) ====================\n\n    /** 内边距 - 小 */\n    paddingSm: css`\n      padding: ${t.paddingSM}px;\n    `,\n\n    /** 内边距 - 中 */\n    paddingMd: css`\n      padding: ${t.paddingMD}px;\n    `,\n\n    /** 内边距 - 大 */\n    paddingLg: css`\n      padding: ${t.paddingLG}px;\n    `,\n\n    /** 水平内边距 - 大 */\n    paddingHorizontalLg: css`\n      padding-left: ${t.paddingLG}px;\n      padding-right: ${t.paddingLG}px;\n    `,\n\n    /** 垂直内边距 - 中 */\n    paddingVerticalMd: css`\n      padding-top: ${t.paddingMD}px;\n      padding-bottom: ${t.paddingMD}px;\n    `,\n\n    // ==================== 宽度 ====================\n\n    /** 全宽度 */\n    fullWidth: css`\n      width: 100%;\n    `,\n\n    /** 固定宽度 - 150px */\n    width150: css`\n      width: 150px;\n    `,\n\n    /** 固定宽度 - 200px */\n    width200: css`\n      width: 200px;\n    `,\n\n    /** 固定宽度 - 400px */\n    width400: css`\n      width: 400px;\n    `,\n\n    /** 最大宽度容器 - 适中 */\n    maxWidthMd: css`\n      max-width: 800px;\n      width: 100%;\n    `,\n\n    /** 最大宽度容器 - 大 */\n    maxWidthLg: css`\n      max-width: 1000px;\n      width: 100%;\n    `,\n\n    /** 自动换行 */\n    wordBreak: css`\n      word-break: break-all;\n    `,\n\n    // ==================== 颜色 ====================\n\n    /** 主色 */\n    colorPrimary: css`\n      color: ${t.colorPrimary};\n    `,\n\n    /** 成功色 */\n    colorSuccess: css`\n      color: ${t.colorSuccess};\n    `,\n\n    /** 警告色 */\n    colorWarning: css`\n      color: ${t.colorWarning};\n    `,\n\n    /** 错误色 */\n    colorError: css`\n      color: ${t.colorError};\n    `,\n\n    /** 文本次要色 */\n    colorTextSecondary: css`\n      color: ${t.colorTextSecondary};\n    `,\n\n    /** 文本三级色 */\n    colorTextTertiary: css`\n      color: ${t.colorTextTertiary};\n    `,\n\n    // ==================== 边框 ====================\n\n    /** 圆角 - 小 */\n    borderRadiusSm: css`\n      border-radius: ${t.borderRadiusSM}px;\n    `,\n\n    /** 圆角 - 基础 */\n    borderRadiusBase: css`\n      border-radius: ${t.borderRadius}px;\n    `,\n\n    /** 圆角 - 大 */\n    borderRadiusLg: css`\n      border-radius: ${t.borderRadiusLG}px;\n    `,\n\n    /** 底边框 */\n    borderBottom: css`\n      border-bottom: 1px solid ${t.colorBorderSecondary};\n    `,\n\n    /** 左边框 - 选中状态 */\n    borderLeftActive: css`\n      border-left: 3px solid ${t.colorPrimary};\n    `,\n\n    // ==================== 背景 ====================\n\n    /** 背景 - 容器色 */\n    bgContainer: css`\n      background: ${t.colorBgContainer};\n    `,\n\n    /** 背景 - 布局色 */\n    bgLayout: css`\n      background: ${t.colorBgLayout};\n    `,\n\n    /** 背景 - 主色浅底 */\n    bgPrimaryLight: css`\n      background: ${t.colorPrimaryBg};\n    `,\n\n    // ==================== 溢出处理 ====================\n\n    /** 单行省略 */\n    ellipsis: css`\n      overflow: hidden;\n      text-overflow: ellipsis;\n      white-space: nowrap;\n    `,\n\n    /** 多行省略（2行） */\n    ellipsis2: css`\n      overflow: hidden;\n      text-overflow: ellipsis;\n      display: -webkit-box;\n      -webkit-line-clamp: 2;\n      -webkit-box-orient: vertical;\n    `,\n\n    /** 隐藏溢出 */\n    overflowHidden: css`\n      overflow: hidden;\n    `,\n\n    /** 自动滚动 */\n    overflowAuto: css`\n      overflow: auto;\n    `,\n\n    // ==================== 交互 ====================\n\n    /** 鼠标指针 */\n    cursorPointer: css`\n      cursor: pointer;\n    `,\n\n    /** 默认鼠标 */\n    cursorDefault: css`\n      cursor: default;\n    `,\n\n    /** 禁用状态 */\n    disabled: css`\n      opacity: 0.5;\n      pointer-events: none;\n    `,\n\n    // ==================== 分隔线 ====================\n\n    /** 水平分隔线 */\n    dividerHorizontal: css`\n      margin: ${t.marginXS}px 0;\n      border-top: 1px solid ${t.colorBorderSecondary};\n    `,\n\n    // ==================== 图标 ====================\n\n    /** 图标大小 - 16px */\n    iconSize16: css`\n      font-size: 16px;\n      width: 16px;\n      height: 16px;\n    `,\n\n    /** 图标大小 - 20px */\n    iconSize20: css`\n      font-size: 20px;\n      width: 20px;\n      height: 20px;\n    `,\n\n    /** 图标大小 - 24px */\n    iconSize24: css`\n      font-size: 24px;\n      width: 24px;\n      height: 24px;\n    `,\n  };\n}\n","/**\n * 通用 antd-style 样式工厂\n *\n * 基于 antd token 系统，提供页面容器、卡片、表格、表单、操作栏，\n * 以及文字、Flex 布局、间距、颜色、溢出处理、面板、统计等通用工具类。\n *\n * 样式定义按关注点拆分为三个子文件:\n * - common-layout.ts: 页面容器、Flex、面板、列表项、定位等布局样式\n * - common-typography.ts: 文字颜色、字号、字重、标题、统计数字等排版样式\n * - common-utilities.ts: 间距、宽度、颜色、背景、边框、溢出、交互等工具类\n */\n\nimport { createStyles } from 'antd-style';\nimport { layoutStyles } from './common-layout';\nimport { typographyStyles } from './common-typography';\nimport { utilityStyles } from './common-utilities';\nimport type { CssFn, StyleDeps, TokenValues } from './style-types';\n\n/**\n * 创建通用样式\n *\n * @example\n * ```tsx\n * const useCommonStyles = createCommonStyles();\n *\n * function MyPage() {\n *   const { styles } = useCommonStyles();\n *   return (\n *     <div className={styles.pageContainer}>\n *       <div className={styles.cardWrapper}>\n *         <ProTable className={styles.tableWrapper} />\n *       </div>\n *     </div>\n *   );\n * }\n * ```\n */\nexport function createCommonStyles() {\n  return createStyles(({ token, css }) => {\n    // token 在 antd-style 中类型为 GlobalToken，但子文件仅需字符串插值，\n    // 使用 TokenValues 简化类型（Record<string, string | number>）\n    const deps: StyleDeps = {\n      token: token as unknown as TokenValues,\n      css: css as unknown as CssFn,\n    };\n\n    return {\n      ...layoutStyles(deps),\n      ...typographyStyles(deps),\n      ...utilityStyles(deps),\n    };\n  });\n}\n","/**\n * 页面级通用样式\n */\n\nimport { createStyles } from 'antd-style';\n\n/**\n * 创建列表页/详情页通用样式\n *\n * @example\n * ```tsx\n * const usePageStyles = createPageStyles();\n *\n * function UserListPage() {\n *   const { styles } = usePageStyles();\n *   return (\n *     <div className={styles.listPage}>\n *       <div className={styles.listHeader}>\n *         <h2>用户列表</h2>\n *         <Button type=\"primary\">新增</Button>\n *       </div>\n *       <ProTable />\n *     </div>\n *   );\n * }\n * ```\n */\nexport function createPageStyles() {\n  return createStyles(({ token, css }) => ({\n    /** 列表页 */\n    listPage: css`\n      display: flex;\n      flex-direction: column;\n      gap: ${token.marginMD}px;\n    `,\n\n    /** 列表页头部 */\n    listHeader: css`\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      flex-wrap: wrap;\n      gap: ${token.marginSM}px;\n    `,\n\n    /** 详情页 */\n    detailPage: css`\n      display: flex;\n      flex-direction: column;\n      gap: ${token.marginLG}px;\n    `,\n\n    /** 详情页头部 (带返回按钮) */\n    detailPageHeader: css`\n      display: flex;\n      align-items: center;\n      gap: ${token.marginMD}px;\n      padding-bottom: ${token.paddingMD}px;\n      border-bottom: 1px solid ${token.colorBorderSecondary};\n    `,\n\n    /** 详情内容区域 */\n    detailContent: css`\n      background: ${token.colorBgContainer};\n      border-radius: ${token.borderRadiusLG}px;\n      padding: ${token.paddingLG}px;\n    `,\n\n    /** 表单页 */\n    formPage: css`\n      max-width: 960px;\n      margin: 0 auto;\n      padding: ${token.paddingLG}px;\n    `,\n\n    /** 表单区块 */\n    formSection: css`\n      margin-bottom: ${token.marginLG}px;\n\n      .section-title {\n        font-size: ${token.fontSizeLG}px;\n        font-weight: ${token.fontWeightStrong};\n        color: ${token.colorTextHeading};\n        margin-bottom: ${token.marginMD}px;\n        padding-bottom: ${token.paddingSM}px;\n        border-bottom: 1px solid ${token.colorBorderSecondary};\n      }\n    `,\n\n    /** 表单底部操作栏 */\n    formFooter: css`\n      display: flex;\n      justify-content: center;\n      gap: ${token.marginMD}px;\n      padding-top: ${token.paddingLG}px;\n      border-top: 1px solid ${token.colorBorderSecondary};\n    `,\n\n    /** 标签页内容区 */\n    tabContent: css`\n      padding-top: ${token.paddingMD}px;\n    `,\n\n    /** 描述列表区域 */\n    descriptionSection: css`\n      margin-bottom: ${token.marginLG}px;\n\n      .ant-descriptions-header {\n        margin-bottom: ${token.marginSM}px;\n      }\n    `,\n  }));\n}\n","/**\n * 响应式样式工具\n */\n\nimport { createStyles } from 'antd-style';\nimport { BREAKPOINTS } from '../constants/ui';\n\n/**\n * 创建响应式辅助样式\n *\n * 提供在不同断点下显示/隐藏元素的辅助类名。\n *\n * @example\n * ```tsx\n * const useResponsiveStyles = createResponsiveStyles();\n *\n * function MyComponent() {\n *   const { styles } = useResponsiveStyles();\n *   return (\n *     <>\n *       <div className={styles.hiddenOnMobile}>桌面端内容</div>\n *       <div className={styles.visibleOnMobile}>移动端内容</div>\n *     </>\n *   );\n * }\n * ```\n */\nexport function createResponsiveStyles() {\n  return createStyles(({ css, token }) => ({\n    /** 移动端隐藏 (宽度 < 768px 时隐藏) */\n    hiddenOnMobile: css`\n      @media (max-width: ${BREAKPOINTS.md - 1}px) {\n        display: none !important;\n      }\n    `,\n\n    /** 仅移动端可见 (宽度 < 768px 时显示) */\n    visibleOnMobile: css`\n      @media (min-width: ${BREAKPOINTS.md}px) {\n        display: none !important;\n      }\n    `,\n\n    /** 平板及以下隐藏 (宽度 < 992px 时隐藏) */\n    hiddenOnTablet: css`\n      @media (max-width: ${BREAKPOINTS.lg - 1}px) {\n        display: none !important;\n      }\n    `,\n\n    /** 仅平板及以下可见 */\n    visibleOnTablet: css`\n      @media (min-width: ${BREAKPOINTS.lg}px) {\n        display: none !important;\n      }\n    `,\n\n    /** 响应式容器: 移动端全宽，桌面端限制最大宽度 */\n    responsiveContainer: css`\n      width: 100%;\n      max-width: ${BREAKPOINTS.xl}px;\n      margin: 0 auto;\n      padding: 0 ${token.paddingMD}px;\n\n      @media (max-width: ${BREAKPOINTS.md - 1}px) {\n        padding: 0 ${token.paddingSM}px;\n      }\n    `,\n\n    /** 响应式网格: 移动端单列，平板双列，桌面端三列 */\n    responsiveGrid: css`\n      display: grid;\n      gap: ${token.paddingMD}px;\n      grid-template-columns: repeat(3, 1fr);\n\n      @media (max-width: ${BREAKPOINTS.lg - 1}px) {\n        grid-template-columns: repeat(2, 1fr);\n      }\n\n      @media (max-width: ${BREAKPOINTS.md - 1}px) {\n        grid-template-columns: 1fr;\n      }\n    `,\n\n    /** 响应式 Flex: 移动端垂直，桌面端水平 */\n    responsiveFlex: css`\n      display: flex;\n      gap: ${token.paddingMD}px;\n\n      @media (max-width: ${BREAKPOINTS.md - 1}px) {\n        flex-direction: column;\n      }\n    `,\n  }));\n}\n"]}