{"version":3,"file":"main.d742d60bf979e8295113.css","mappings":"AAOA,EACI,sBAGJ,wBACI,aACA,uHACA,+HAGJ,KACI,+MACA,eACA,oBAGJ,KACI,SACA,2BACA,kBACA,gBAGJ,YACI,GACI,iBACA,cCVM,CDWN,mBACA,kBCpBK,CDuBT,GACI,iBACA,gBClBM,CDmBN,qBACA,iBC7BK,CDgCT,GACI,cCzBM,CD0BN,oBACA,iBCnCK,CDoCL,iBAGJ,GACI,cChCM,CDiCN,sBACA,iBC1CK,CD2CL,iBAIR,KACI,iBChDS,CDiDT,wCACA,WCjDS,CDoDb,OACI,cAGJ,gBACI,gBCnDU,CDoDV,kCAGJ,GACI,6BErEJ,SACE,WACA,YACA,qBAGF,aACE,oBACA,WAGF,YACE,WACA,YACA,qBAGF,YACE,WACA,YACA,qBAGF,YACE,WACA,WACA,YACA,qBAOF,mBACE,aACA,mBACA,qBACE,2BACA,iBACA,kBACA,oBACA,mBACA,2BACE,0BAKN,gCACE,2BACA,iBACA,kBACA,oBACA,mBAQF,gCAEE,WACA,YAEF,mBACE,iBACA,gBD/DW,CCiEb,oBACE,eDlEW,CCmEX,kBAGF,QACE,iBDvEW,CCwEX,aACA,mBACA,gBDnEY,CCoEZ,iBACA,YACA,kBAEA,uBACA,iBACA,YACA,iBACA,SAEA,oBACE,gBAGF,qBACE,gBACA,gBDrFU,CCsFV,iBACA,YAGF,sBACE,gBACA,gBD5FU,CC6FV,iBACA,YAGF,sBACE,uBAGF,cACE,eAGF,iBACE,+CACA,+CACA,oCACA,+CACE,wCAGJ,mBACE,wCACA,kCACA,+CACA,mDACE,wCACA,oCACA,oCAGJ,kBACE,kCACA,iDACE,wCACA,oCAEF,+BACE,0CAGJ,gBACE,oCACA,wCACA,wCACA,sBACE,+CACA,oCAGJ,0BACE,kCACA,wCACA,6CACA,gCACE,+CACA,oCAGJ,yBACE,kCACA,+BACE,+CACA,oCAKF,0EAEE,WACA,YAEF,wCACE,gBD7KO,CC+KT,yCACE,eDhLO,CCqLT,oCACE,kBAEF,yCACE,OACA,iBDvLO,CCyLT,yCACE,QACA,kBD3LO,CC+LX,wCAEE,mBACA,oCACA,kCACA,6CAQJ,qCAEI,gCACE,cACA,eAEF,iCACE,cACA,gBAUN,yBAEI,gCACE,cACA,eAEF,iCACE,cACA,gBASN,eACE,kBACA,mBACE,WACA,eACA,yBACE,0BAIF,0BACE,0BAKN,kBACE,2BACA,kBACA,SACA,+CACA,aACA,UACA,2CACA,qBACE,gBACA,mBACA,2CACE,6BAGJ,wBACE,OAEF,yBACE,wBAIJ,kBACE,WACA,6CACA,gBAMF,iBACE,4BACA,wCACA,uBACE,eACA,6CAEF,wBACE,mDAEF,qDACE,oBACA,iEACE,WAUJ,wBACE,+CACA,iBD1TS,CC2TT,YACA,WACA,aACA,QACA,mBACA,wCACA,2CACA,4BACE,WACA,YACA,eDrUO,CCuUT,8BACE,YACA,gBACA,iBD1UO,CC2UP,gBACA,YACA,eACA,YACA,wCACE,4CACA,oCAEF,4CACE,YACA,aAGJ,qCACE,kCACA,iBACA,aACA,yCACE,gBAON,+BACE,oCACA,iBACA,aAIJ,aACE,kBACA,qBACA,eACA,4BACE,mBACA,4CACA,kCAEF,mCACE,wCACA,+CACA,iBDvXS,CCwXT,gBACA,YACA,WACA,aACA,8BACA,UAEA,8DACE,cACA,mBACA,gBACA,uBAGF,qDACE,cAGJ,kCACE,kBACA,SACA,aACA,iBACA,gBACA,2CACA,sDACE,gBACA,4CACA,+CACA,eACA,2BACA,4DACE,mDAGJ,kEACE,WACA,2BAEF,2DACE,iBACA,eACA,+EACE,kBDhaK,CCmaT,kEACE,OAEF,mEACE,QAIF,qDACE,4BACA,6BAEF,oDACE,cACA,UAKN,2BAEE,kBACA,kBACA,aACA,eACA,oIACE,aAEF,uCACE,eACA,gBACA,kBACA,oBAGF,+CACE,kBACA,MACA,OACA,YACA,WACA,gBACA,kBACA,+BACA,iBACA,2CAGA,qGACE,6CAIF,iIACE,+CAGJ,yDACE,mBACA,kIACE,kCAGJ,6DACE,oBAGA,2EACE,qDACA,qDAEF,uFACE,cAMJ,6BACE,WACA,aACA,kBACA,WACA,QACA,UACA,YACA,8CACA,yBACA,gCACA,4BACA,wBAQJ,kBACI,wBACA,4BACA,kBACA,qBACA,6BACA,YACA,eACA,wBACE,aAEF,mDACE,iDAEF,4EACE,yDACA,qDACA,iDAEF,iCACE,mBACA,0DACE,oBACA,6CAEF,0DACE,4CAEF,qCACE,oCAGJ,0CACE,wBACA,4BACA,YACA,mEACE,YACA,WACA,SACA,WAKR,yBACI,kBACA,MACA,OACA,QACA,SACA,wDACA,mBACA,uBACA,eACA,6BACE,YACA,WACA,YAEF,+BACE,4DAIN,yBACI,kBACA,WACA,YACA,WACA,SACA,WACA,wCACA,kBACA,uBACA,eAQF,sCACE,cAEF,wCACE,cACA,gBAEF,4CACE,aACA,0DACE,mBD5lBQ,CCgmBV,wDACE,cACA,kBDnmBQ,CCsmBZ,sCACE,aACA,oDACE,cACA,kBD1mBQ,CCgnBZ,wBACE,kBACA,MACA,OACA,YACA,WACA,kBACA,+BACA,+CACA,yDAIJ,mBACE,aACA,eACA,ODvoBW,CCwoBX,6CACE,sDACA,aACA,sBACA,wCACA,kBACA,+CACA,iBDhpBS,CCipBT,kBACA,YACA,gDACE,gBACA,eACA,kBACA,mDACE,mBAGJ,wDACE,eAEF,qDACE,aACA,8BACA,mBACA,wDACE,eAEF,wDACE,aACA,mBACA,ODvqBK,CCwqBL,kBDtqBK,CCuqBL,SACA,4DACE,WACA,YACA,iCACA,2FACE,eACA,gCACA,iGACE,4BAMV,oDACE,kBACA,uDACE,SACA,iBAEF,0DACE,gBDzrBM,CC4rBV,0DACE,YACA,cDrsBO,CCssBP,eDtsBO,CCusBP,mDAEF,mDACE,cDzsBO,CC0sBP,eD1sBO,CC2sBP,mDACA,uDACE,aACA,8BACA,WACA,iBDjtBK,CCktBL,kEACE,gBAIN,iFACE,eACA,gDAEF,oDACE,gDACA,0FACE,oCAGJ,sDACE,WAQN,eACE,WACA,kBACA,oBACA,wBACE,kBACA,aACA,QACA,yBAEF,qCACE,YACA,WACA,YACA,kBACA,iDAEF,wBACE,aACA,QAEF,qBACE,yBACA,iBACA,WAEE,mDACE,cAEF,sDACE,cAEF,yHAEE,SAEF,sDACE,kBAEF,qDACE,mBAGJ,2BACE,kCAEE,gFACE,2BAEF,+EACE,4BAGJ,gDACE,iBACA,iDACA,gBACA,0CACA,kDAEE,6DACE,aACA,8BACA,ODxyBC,CC0yBH,kEACE,WAEF,+DACE,uDACA,eACA,wEACE,WAIN,uDACE,uDACA,4EACE,UAQF,8DACE,gBACA,mBACA,UAKF,+DACE,sDAKF,+EACE,wBACA,wCACA,2FACE,8BAEF,0FACE,+BAKR,gDACE,kBACA,8CACA,0DACE,wDAEF,+DACE,kBACA,kCAGJ,qJAEE,eACA,2BACA,oDAEF,qFACE,+BACA,cAKJ,uBACE,yBACA,mBACA,2CACA,mCACE,sBAEF,kCACE,uBAGJ,4BACE,aACA,SACA,yBAOA,8HACE,4BAEF,6HACE,6BAMR,uGAGI,eAGJ,aACE,WACA,kBACA,kBACE,qBACA,YACA,2BACA,wCACA,oBACA,+CACA,aACA,0BACA,wBACE,eACA,iCAKN,eACE,aACA,mBACA,OD76BW,CC86BX,eACA,gBACA,+CACA,aACA,0BACA,wCACA,eACA,iCAEA,0BACE,aACA,mBACA,OD37BS,CC47BT,mDAGF,sCACE,gBACA,gBAGF,wBACE,iBAGF,sBACE,aACA,mBACA,QAEA,8BACE,eAIJ,yBACE,oBACA,mBACA,uBACA,eACA,kCAOJ,qBACE,eACA,YACA,MACA,OACA,WACA,YACA,uBACA,uBACA,kBACA,kDACA,2BACE,aAEF,6BACE,aAIJ,eACE,kBACA,UACA,WACA,gBACA,iBACA,aACA,sBACA,wCACA,gBACA,cAEE,iCACE,YACA,iBACA,8CACA,4DACA,eACA,oCACA,gBACA,aACA,8BACA,SACA,wCACE,YACA,mBACA,wCACA,+CACA,2BACA,iBACA,mBAGJ,oCACE,YACA,cAEF,kCACE,cD9gCQ,CC+gCR,cACA,gBAEF,kCACE,aACA,yBACA,2BACA,0CACE,gBDxhCM,CC4hCZ,qBACE,gBAUA,4BACE,gCASN,sBACE,+CACA,oCACA,gBACA,gBACA,iBD9jCW,CC+jCX,gBDxjCY,CC2jCd,uBACE,kBACA,wCACA,+CACA,yBACA,wCACA,0BACA,gBAEA,4BACE,YACA,SD5kCS,CC6kCT,8CACA,cACA,kBACA,MACA,OAGF,6BACE,2CACA,yDACE,wDAGJ,gCACE,iDACA,4DACE,qDAGJ,qCACE,mDACA,iEACE,uDAIJ,gCACE,aACA,+BACA,QDzmCS,CC0mCT,oCACE,gBAIJ,8BACE,eACA,kBACA,aACA,gBACA,kCACE,kBACA,UACA,YAEF,iDACE,UAEF,oCACE,6BAIJ,gCACE,cDnoCS,CCqoCT,aACA,yBAOJ,mBACE,UAHe,CAIf,WAJe,CAKf,kBACA,MACA,OACA,kCAGF,eACE,UACA,YACA,kBACA,kCACA,+CAGF,mBACE,0BACA,4BACA,YACA,kBAGF,kBACE,4BACA,YACA,iBACA,SACA,UAGF,gBACE,UACA,YACA,kBACA,YACA,UACA,mBAGF,gBACE,0BACA,+BAGF,gBACE,aACA,oBAGF,gBACE,aACA,oBAOF,SACE,aACA,2BACA,wBACE,aACA,mBACA,QACA,WDhtCS,CCitCT,8BACE,iCACA,eAEF,qCACE,YACA,WACA,cACA,cAEF,sCACE,mBAGJ,6BACE,mBACA,4CACE,gBDluCO,CCmuCP,iBDruCO,CCsuCP,iIAEE,mDACA,gBAIN,2BACE,sBACA,0CACE,qBDhvCO,CCivCP,2BACA,iBDhvCO,CCivCP,6HAEE,iDAIN,6DAEE,2BAOJ,iBACE,kBACA,aACA,mBAIE,uEACE,gBACA,uBACA,YAKF,kEACE,cAGF,8EACE,gBACA,kBACA,uBACA,qBACA,wBAGA,iGACE,aAKN,4CACE,OACA,YAGF,2CACE,kBACA,MACA,SACA,aACA,mBACA,uBACA,WD9yCS,CC+yCT,kCACA,YACA,qDACA,kCACA,eACA,WACA,wBAEA,oDACE,WACA,YAEA,mEACE,kBAIJ,iDACE,6CACA,iCACA,2CAGF,kDACE,uCAGF,iDACE,OACA,qDACA,iBAGF,kDACE,QACA,oDACA,kBAIJ,wCACE,kBACA,qBAEA,8CACE,kBACA,OACA,MACA,SAGF,+CACE,kBACA,QACA,MACA,SAIJ,oCACE,kBACA,qBACA,kCACA,+CACA,kBACA,sCACA,YACA,gBACA,gBAEA,0CACE,OAGF,2CACE,QAIJ,yCACE,aACA,mBACA,QACA,gBACA,2BACA,qCAEA,sDACE,YACA,WACA,cACA,cAGF,uDACE,mBACA,gBACA,uBACA,YAGF,+CACE,6CACA,iCACA,eAGF,iDACE,6CACA,iCACA,eAGF,4DACE,2BACA,+CAGF,qDACE,0BAGF,oDACE,0BAGF,oDACE,kBAQN,YACE,kBACA,YACA,mBACA,4BACA,mBACA,8CACA,oCACA,iBACA,kBACA,UACA,oBACA,uBACA,+BAEE,oCACE,YACA,kBACA,QACA,WACA,gBACA,iBACA,mBACA,qFAIF,mCACE,YACA,kBACA,QACA,UACA,gBACA,iBACA,mBACA,qFAGJ,2BACE,2BACA,kCACE,YACA,kBACA,SACA,SACA,iBACA,iBACA,mBACA,qFAGJ,8BACE,2BACA,qCACE,YACA,kBACA,YACA,SACA,iBACA,iBACA,mBACA,qFAGJ,qBACE,UAGJ,sBACE,kBACA,sBACA,wCACE,UAIJ,YACE,qBACA,WACA,YACA,kCACA,mBACE,qBANJ,YAQE,uCACA,+CACA,gBACE,GACE,kCAGJ,wBACE,GACE,kCChiDN,MACI,0BACA,0BAEA,8BACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BAEA,6BACA,8BACA,8BACA,8BACA,8BACA,8BACA,+BACA,8BACA,8BACA,8BACA,8BAEA,8BACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BAEA,8BACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BAEA,gCACA,iCACA,iCACA,iCACA,iCACA,iCACA,iCACA,iCACA,iCACA,iCAEA,+BACA,gCACA,gCACA,gCACA,gCACA,gCACA,gCACA,gCACA,gCACA,gCAEA,gCACA,gCACA,iCACA,iCACA,iCACA,iCACA,iCACA,iCACA,iCACA,iCACA,iCAEA,gCACA,iCACA,iCACA,iCACA,iCACA,iCACA,iCACA,iCACA,iCACA,iCAEA,gCACA,mCAEA,iCAEA,mCACA,mCACA,mCACA,mCACA,mCACA,mCACA,oCACA,2CACA,yCACA,oCACA,oCAEA,oCACA,oCACA,oCACA,oCACA,oCACA,2CACA,qCACA,0CACA,qCAEA,iCACA,kCACA,kCACA,mCACA,mCACA,oCACA,mCC7HJ,yBAEI,mBAEA,2CACA,iDACA,yDACA,mDAEA,8DACA,8DACA,gDACA,0DACA,8DACA,mDAEA,4CACA,kDACA,mDACA,qDACA,mDACA,iDACA,kDAEA,qDACA,8CACA,qDACA,uDAEA,uDACA,sDACA,gDACA,sDACA,yDACA,uDACA,qDACA,+CAEA,6CACA,kDACA,oDACA,oDACA,gDAEA,4CACA,kDAEA,mDACA,mDACA,uDACA,qDAEA,sDACA,0DACA,wDACA,uDAEA,0DACA,8DACA,4DACA,2DAEA,2DACA,+DAEA,wDACA,4DACA,0DAEA,2DACA,+DACA,6DAEA,sDACA,6DACA,2DACA,0DAEA,sDACA,0DACA,wDAEA,2DACA,+DACA,6DAEA,2DACA,kEAEA,2DACA,+DACA,6DAEA,oDACA,yDAEA,oDACA,iDAEA,kDACA,gDACA,kDACA,gDAEA,mDACA,0DACA,sDACA,uDACA,4DACA,uDAEA,kDACA,oDACA,iDAEA,oDACA,4DAEA,gDACA,kDAEA,8DACA,uDAEA,kEAEA,yDACA,0DACA,yDACA,yDAEA,uDACA,6DAEA,wDACA,uDACA,8DAEA,6DACA,mEACA,uDACA,6DAEA,qDACA,uDACA,2DACA,uDClJJ,kBACI,kBAEA,kDACA,sDACA,6DACA,uDAEA,8DACA,8DACA,gDACA,0DACA,8DACA,mDAEA,iDACA,4DACA,wDACA,yDACA,wDACA,6DACA,0DAEA,yDACA,kDACA,yDACA,0DAEA,2DACA,yDACA,mDACA,0DACA,4DACA,0DACA,8DACA,kDAEA,gDACA,sDACA,wDACA,wDACA,mDAEA,gDACA,sDAEA,gDACA,oDACA,uDACA,kDAEA,0DACA,0DACA,kEAEA,oDACA,uDACA,wDACA,uDAEA,uDACA,2DACA,4DACA,2DAEA,wDACA,4DAEA,oDACA,uDACA,0DAEA,uDACA,2DACA,6DAEA,gEACA,yDACA,4DACA,2DAEA,6DACA,sDACA,wDAEA,uDACA,2DACA,6DAEA,0DACA,iEAEA,yDACA,6DACA,6DAEA,gEACA,iEAEA,mDAEA,iDACA,yDAEA,6CACA,8CACA,8DAEA,8DACA,gEACA,6DAEA,uDACA,6DAEA,uDACA,2DACA,qDAEA,oDACA,iDACA,kDACA,gDACA,kDACA,gDACA,oDACA,yDAEA,mDACA,0DACA,uDACA,4DACA,uDACA,sDAEA,oDACA,iDACA,kDACA,0DACA,6DACA,uDACA,mEACA,6DCnIA,kCACI,wDACA,uDACA,oDACA,2DACA,sDACA,wEACA,oDAEA,qDACA,6DACA,+CACA,iEACA,yDACA,yEACA,2DACA,qEACA,mEAEA,sDACA,8DAGJ,8CACI,4CACA,oCACA,iCAGJ,yDACI,0CAGJ,yGAEI,wCACA,2CACA,2BAGJ,uDACI,2CAGJ,iDACI,kDAGJ,uCACI,mDACA,2BAIA,uEACI,sBACA,kBAEJ,+EACI,WACA,kBACA,QACA,4CACA,gFACA,wEAVJ,yEACI,sBACA,kBAEJ,iFACI,WACA,kBACA,QACA,4CACA,gFACA,wEAVJ,qEACI,sBACA,kBAEJ,6EACI,WACA,kBACA,QACA,4CACA,gFACA,wEAVJ,sEACI,sBACA,kBAEJ,8EACI,WACA,kBACA,QACA,4CACA,gFACA,wEAIR,iEACI,mDArEJ,wCACI,wDACA,uDACA,oDACA,2DACA,sDACA,wEACA,oDAEA,qDACA,6DACA,+CACA,iEACA,yDACA,yEACA,2DACA,qEACA,mEAEA,sDACA,8DAGJ,oDACI,4CACA,oCACA,iCAGJ,+DACI,0CAGJ,qHAEI,wCACA,2CACA,2BAGJ,6DACI,2CAGJ,uDACI,kDAGJ,6CACI,mDACA,2BAIA,6EACI,sBACA,kBAEJ,qFACI,WACA,kBACA,QACA,4CACA,gFACA,wEAVJ,+EACI,sBACA,kBAEJ,uFACI,WACA,kBACA,QACA,4CACA,gFACA,wEAVJ,2EACI,sBACA,kBAEJ,mFACI,WACA,kBACA,QACA,4CACA,gFACA,wEAVJ,4EACI,sBACA,kBAEJ,oFACI,WACA,kBACA,QACA,4CACA,gFACA,wEAIR,uEACI,mDArEJ,0BACI,wDACA,uDACA,oDACA,2DACA,sDACA,wEACA,oDAEA,qDACA,6DACA,+CACA,iEACA,yDACA,yEACA,2DACA,qEACA,mEAEA,sDACA,8DAGJ,sCACI,4CACA,oCACA,iCAGJ,iDACI,0CAGJ,yFAEI,wCACA,2CACA,2BAGJ,+CACI,2CAGJ,yCACI,kDAGJ,+BACI,mDACA,2BAIA,+DACI,sBACA,kBAEJ,uEACI,WACA,kBACA,QACA,4CACA,gFACA,wEAVJ,iEACI,sBACA,kBAEJ,yEACI,WACA,kBACA,QACA,4CACA,gFACA,wEAVJ,6DACI,sBACA,kBAEJ,qEACI,WACA,kBACA,QACA,4CACA,gFACA,wEAVJ,8DACI,sBACA,kBAEJ,sEACI,WACA,kBACA,QACA,4CACA,gFACA,wEAIR,yDACI,mDChFR,mCACI,kDACA,sCACA,oDACA,4CACA,4CAEA,2CACA,2DACA,uDAEA,kDAEA,0CACA,+CACA,uDACA,+CAEA,iDACA,wDAEA,8DACA,qDAEA,4CACA,0CAEA,4CACA,0CAEA,gDC7BA,gCACI,cACA,gBACA,YAEJ,4BACI,gBAEJ,wBACI,cACA,mBAEJ,iQAOI,cAEJ,4JAII,cAEJ,8UAUI,cAEJ,wGAGI,cAEJ,gEAEI,cAEJ,6FAGI,cAEJ,wIAII,cAEJ,8BACI,cAEJ,gCACI,cACA,iBAEJ,+BACI,cAEJ,iCACI,cACA,kBAEJ,+BACI,cACA,iBAEJ,iCACI,cACA,yBAEJ,iCACI,cACA,yBCpFR,8BACE,kBACA,YACA,aACA,OAEA,6DACE,OACA,kBACA,YACA,YAGF,8CACE,YACA,WACA,kBACA,aACA,sBACA,qBACA,uBAEF,8DACE,iBAGF,4CACE,eACA,OACA,SACA,QACA,yBACA,kCACA,4BACA,gEACA,aACA,sBACA,gBACA,2BACA,sBACA,UAEA,4DACE,aACA,sBACA,OACA,gBACA,UACA,oBACA,uBAGF,iDACE,gBACA,kBAGF,oEACE,UACA,aACA,gBACA,+CACA,kCACA,WAEA,0EACE,aAEA,4EACE,aACA,mBACA,kCACA,QACA,eACA,wBAEA,0FACE,WACA,YAGF,gFACE,YAGF,kFACE,6CACA,iCAGF,mFACE,uCAKN,0EACE,OACA,mBACA,YAEA,yFACE,mBACA,gBACA,uBAIJ,kFACE,aACA,yBACA,mBACA,kCACA,cACA,QAIJ,iDACE,wBACA,oCAEA,iEACE,UACA,oBAKN,mDACE,sCAGF,uCACE,iBACA,sBACA,yBACA,qBACA,iBAEA,qDACE,64N;AC7IN,mBACI,eACA,YACA,UACA,aACA,gBACA,aACA,sBACA,WACA,qBACA,mDACA,2BACA,wCACA,kBACA,2CAEA,0BACI,eACA,gBACA,SAGJ,yBACI,kBACA,gBACA,SAEA,2BACI,2BACA,0BAIR,4BACI,aACA,yBACA,U;ACpCR,gBACI,kBACA,iBACA,oBACA,wCACA,wCACA,kBACA,oBACI,YAEJ,oBACI,YAEJ,mBACI,iBACA,oBACA,YACA,kBACA,mBACA,gBACA,gBAEJ,yBACI,gBACA,iBACA,YACA,mBACA,sBACA,2BACI,qBACA,mBACA,2BAGR,yBACI,aACA,uBACA,QAEJ,sBACI,aACA,uBACA,mBACA,kCAGJ,mDACI,yBACA,Y;AChDR,mBACI,kBACA,kBACA,+CACA,kCACA,2CACA,aACA,WACA,gBACA,aACA,sBACA,8BACA,sBACI,gBACA,kBACA,yBACI,kBAIZ,cACI,sBACA,aACA,uBACA,mBACA,YACA,oCACA,gBACA,2CACA,SACA,kBACA,QACA,oCAEA,oDACA,0DACA,kCACA,0BACA,oCAEJ,2CAEI,WACA,cACA,QACA,SACA,kBACA,4CACA,YACA,mCACA,8FAEJ,6BACA,6B;ACrDA,oCACI,gBACA,YACA,aACA,sBACA,mBACA,2BAEA,yDACI,kCACA,mBACA,YACA,mBACA,mCAEA,wEACI,aACA,uBACA,cAGJ,gEACI,cAGJ,kEACI,aACA,uBACA,SACA,mB;AC7BZ,SACI,OAEA,eACI,uBACA,gBACA,mBACA,kBAGJ,kBACI,aACA,yBAKR,yBACI,cACI,cAKR,qCACI,cACI,c;AC1BR,YACE,qBACA,gBAEA,0BACE,YACA,aAIF,uBACE,+CACA,yBACA,kCAEA,qCACI,aAGJ,6BACI,kCAIF,iCACE,aACA,cAMJ,+CACE,4BACA,6BAKN,YACI,sCACA,uCACA,iBACA,YACA,gBACA,UACA,6CACA,8CACA,+CACA,4CACI,aAGJ,uBACI,+CACA,4CACA,eAEA,oCACI,mBAGJ,0CACI,gBACA,+BAEA,mDACI,6CAEJ,iDACI,8CAEJ,0DACI,2BAIR,6BACI,6CACA,uDACI,2B;AChFhB,cACI,mBACA,sBACI,WACA,aACA,mBACA,8BACA,mDACA,+CACA,gBACA,eACA,4BACI,gBAEJ,2BACI,kCACA,kBAEJ,+BACI,iBACA,yBACA,iCAEJ,4CACI,6CACA,eAGR,uBACI,mCACA,uCACI,aACA,+CACA,mBAIJ,0DACI,yB;ACrCZ,gBACI,aACA,2DACI,CAEJ,gBACA,mBACA,sBACI,gBAEJ,qBACI,kCACA,gBACA,kBACA,iBACA,cACA,WAGJ,yBACI,iBAEJ,uBACI,kBACA,+BACI,aACA,mBACA,gBACA,eACA,kBACA,kCACA,uDACI,aAIR,qCACI,kBACA,QACA,OACA,4CACA,iCAGA,qCACI,2BAEJ,2CACI,0BAMhB,qBACI,gBAGJ,6CACI,kCACA,kBACA,mBACA,uBAGJ,wBACI,iBACA,iBAIJ,sCACI,gBACI,wCACA,mD;;AC5ER;IACI,YAAY;AAChB;;ACDA,mBACI,wCACA,YACA,iBAEA,0BACI,iBACA,kCACA,4BAGJ,8CACI,kBACA,aAEA,uDACI,mBACA,kBACA,SACA,yBACA,mEACI,kBACA,YACA,WACA,8BACA,mBACA,qBACA,YACA,WACA,yEACI,eACA,2BAKZ,4DACI,kBACA,QACA,SAMA,iFACI,mBACA,iBAMR,uDACI,gBAEA,0EACI,UAGJ,0EACI,iBAIZ,qCACI,iBACA,kCAEI,2FACI,oBAMA,mGACI,mB;AC5ElB,wCACE,aACA,sBACA,SAGE,2EACE,sBACA,qBAGF,qEACE,WAGF,yEACE,aACA,QAGF,0EACE,aACA,QACA,mBACA,gBAEA,iFACE,eACA,YAEA,+FACE,WACA,YAON,4EACE,aACA,8BAEA,mFACE,mBACA,eAKN,iDACE,kBACA,uDACE,WACA,WACA,kDACA,kBACA,QACA,cAEF,uDACE,kCACA,YACA,kBACA,W;ACjER,wBACE,aACA,Q;ACFF,gCACI,kC;ACDJ,eACE,mDACA,WACA,wBACA,qBACA,gB;ACLF,mCACE,wCACA,WACA,wBACA,qBACA,gB;ACLF,iCACE,oBACA,mBACA,QACA,kBACA,uCACE,eAEF,iDACE,oBACA,mBACA,uBACA,YACA,YACA,yBACA,kBACA,eACA,wBACA,kCAEA,uDACE,oCACA,wCAGF,wDACE,wCAGF,0DACE,oBAGF,gEACE,8BAGJ,4CACE,8CACA,oCACA,YACA,kBACA,kBACA,gBACA,gBACA,aACA,YACA,UAEF,iDACE,aACA,W;ACnDJ,+CACI,gBACA,iBAEA,+CACA,kBAEA,YACA,gBACA,WACA,aACA,QACA,mBACA,wCACA,2CAEJ,2DACI,iBACA,cACA,gBACA,eAEJ,iEACI,eAEJ,qDACI,e;AAxBI,uDACI,gC;ACLZ,gBACI,aACA,qDACA,SAEA,2BACI,aACA,2BACA,M;ACNR,iBACI,aACA,QACA,mBACA,mBAGJ,qBACI,aACA,cAGJ,sBACI,iBACA,wCACA,+CAGJ,kBACI,gBAGJ,iDACI,kBACA,mBACA,+C;ACzBJ,+BACI,aACA,mBACA,SACA,kBACA,eAEA,qCACI,YAGJ,wCACI,aACA,sBAEA,qDACI,kCAIR,qCACI,6C;ACpBR,+BACI,aACA,uBACA,mBAGJ,qCACI,gBAGJ,yCACI,mBACA,kBACA,mBACA,uEACA,yCAGJ,uCACE,GACE,UACA,8BAEF,IACE,UACA,0BAEF,KACE,UACA,8B;AC7BJ,+BACI,aACA,uBACA,mBAGJ,kCACI,gBAGJ,sCACI,mBACA,kBACA,mBACA,oEACA,yCAGJ,oCACE,GACE,UACA,8BAEF,IACE,UACA,0BAEF,KACE,UACA,8B;AC7BJ,+BACI,aACA,uBACA,mBAGJ,kCACI,gBAGJ,sCACI,mBACA,kBACA,mBACA,oEACA,yCAGJ,oCACE,GACE,UACA,6BAEF,IACE,UACA,0BAEF,KACE,UACA,+B;AC7BJ,yCACI,gBACA,kBACA,mBACA,uEAGJ,uCACE,GACE,WACA,yBAEF,IACE,UAEF,IACE,UAEF,KACE,WACA,wB;ACrBJ,+BACI,aACA,uBACA,mBAGJ,mCACI,kBACA,6CACA,kBACA,kBACA,wBACA,yBACA,kBACA,8BACA,mBACA,+EACA,yCAGJ,qFACI,WACA,qBACA,kBACA,MAEJ,2CACI,iCACA,wBACA,yBACA,kBACA,8BACA,mBACA,wEACA,mBAEJ,0CACI,wBACA,wBACA,yBACA,kBACA,8BACA,mBACA,wEACA,iCAGJ,qCACE,GACE,8BAEF,SACE,gD;ACnDA,uBACI,mBACA,mBAIJ,wCACI,mBAEJ,mDACI,gBAEJ,iDACI,wC;ACdR,gCACI,OACA,aAEA,uCACI,OACA,YACA,WACA,iB;ACRR,gCACI,OACA,aAEA,uCACI,OACA,YACA,WACA,iB;ACRR,kCACI,aACA,qBACA,mBAEA,iDACI,OACA,kBACA,+CACA,mBACA,eACA,wCAEA,wDACI,mCAIR,oDACI,cACA,kBACA,gBrCHM,CqCIN,kCACA,mBACA,sC;ACvBJ,0DACI,wC;ACFR,yBACI,uDACA,mDACA,iBvCQS,CuCPT,WvCQS,CuCNT,uCACI,e;ACNJ,oCACI,gBAEA,2CACI,gBACA,iBACA,kBACA,yBACA,4CACA,eACA,gBAEA,iDACI,mBAGJ,iDACI,+B;AClBhB,kCACI,aACA,SACA,mBAEA,yCACI,2BACA,gBAGJ,0CACI,4DACA,aACA,kBAEA,yDACI,aACA,uDACA,kBACA,+BACA,kBAEA,oEACI,kBACA,MACA,OACA,YACA,2CACA,kBACA,8BACA,UAGJ,2DACI,iBACA,kBACA,0BACA,kBACA,UACA,kBAEA,8EACI,oCAIR,iEACI,yBACA,kCACA,2BACA,kBACA,UACA,kBACA,mBAEA,+EACI,+CACA,mBAGJ,wEACI,oCAQpB,oEACI,cACA,iB;ACvEJ,kFACI,mCAGJ,uEACI,UAKJ,yBACI,8EAEI,cAKR,yBACI,8EAEI,gBAOR,qCAEI,8EAEI,cAIR,qCAEI,8EAEI,gB;;ACzCR;IACI,qBAAqB;IACrB,WAAW;IACX,eAAe;IACf,iBAAiB;IACjB,iBAAiB;IACjB,yBAAyB;OACtB,sBAAsB;YACjB,iBAAiB;AAC7B;AACA;IACI,gBAAgB;IAChB,sBAAsB;AAC1B;AACA;IACI,uBAAuB;IACvB,kBAAkB;IAClB,eAAe;AACnB;AACA;IACI,eAAe;AACnB;;;ACrBA;;6BAE6B;AAC7B;IACI,uBAAuB;AAC3B;;AAEA;;6DAE6D;AAC7D;;IAEI,8BAA8B;AAClC;AACA;IACI,8BAA8B;AAClC;AACA;IACI,2BAA2B;AAC/B;AACA;IACI,yBAAyB;AAC7B;AACA;IACI,UAAU;IACV,kBAAkB;IAClB,uBAAuB;IACvB,4BAA4B;AAChC;AACA;IACI,6CAA6C,EAAE,aAAa;AAChE;;AC9BA,sCACI,aACA,cACA,aACA,sBACA,kBAEA,+CACI,kBACA,MACA,OACA,QACA,SACA,iDACA,aACA,uBACA,mBACA,aAGJ,sDACI,aACA,sBACA,cACA,aACA,cACA,UACA,2BAEA,8DACI,W;AC9BZ,0CACI,OAEA,+FACI,OACA,aACA,sBACA,SACA,cAIA,yDACI,yBAKJ,gEACI,iBACA,c;;ACrBZ;IACI,aAAa;AACjB;AACA;IACI,aAAa;AACjB;;;ACJA,wBACI,eACA,aACA,kBACA,gBAEA,sCACI,eACA,gBACA,wDACA,kBACA,YACA,8CACA,kBACA,WACA,iCAGJ,mCACI,4DACA,kBACA,SACA,UAEA,uCACI,WACA,aAEA,gDACI,wBACA,SACA,SACA,YACA,oBACA,2CAIR,0CACI,cACA,aACA,mDACI,yBACA,QACA,SACA,YACA,oBACA,2CAIR,2CACI,cACA,aACA,UAIR,oCACI,kBACA,eAGI,yGACI,SACA,2CACA,oB;AChEZ,aACI,eACA,gBAEA,sBACI,mBACA,gBACA,uBAEA,6BACI,gBACA,uBAEA,+BACI,WAGJ,+BACI,2BAIR,+BACI,cACA,WAIR,uBACI,gCAIR,gBACI,kBACA,eAGJ,mBACI,6CACA,kCAGJ,iBACI,uCACA,2BACA,e;AC/CJ,2BACI,+CACA,kBACA,cAEI,2DACI,a;ACNZ,0DACI,gBACA,aACA,qCACA,SAEJ,iEACI,WACA,S;;ACVR;IACI,+CAA+C;AACnD;AACA;IACI,wBAAwB;AAC5B;AACA;AACA;QACQ,mCAAmC;AAC3C;AACA;QACQ,qCAAqC;AAC7C;AACA;QACQ,wCAAwC;AAChD;AACA;;ACfA,iCACI,aACA,mBACA,QACA,eACA,SAEA,mEACI,SAGJ,0CACI,SACA,YAEA,wDACI,aAGJ,4EACI,QApBZ,iCAwBI,OACA,YACA,wBAGA,kCACA,kCACA,+CACA,iBAGA,aAGA,sCACA,4BAGA,wBACA,qCAEA,qCACI,YAGJ,+CACI,kCACA,WACA,YAGJ,wCAEI,yCAGJ,uCACI,e;AC7DR,6BACI,kBACA,QACA,MACA,UACA,YACA,qDACA,yBACA,aACA,mBACA,uBACA,WAEA,qCACI,cACA,kBACA,SACA,yBACA,eACA,mBACA,kCAGJ,mCACI,iBAEA,2CACI,iCAIR,wCACI,WACA,WAEA,gDACI,2BAGJ,8CACI,iB;ACvCR,0DACI,kBACA,UACA,SACA,YACA,eACA,gBAEA,+DACI,8CAEA,0EACI,kBACA,6CAKZ,2EACI,UACA,QACA,2BAEA,gFACI,wBACA,qCAIR,kGACI,MACA,YAGJ,0EACI,OACA,WACA,kBACA,oDAEA,kFACI,UAIR,+HAEI,gBAGJ,sEACI,mBACA,gBACA,YACA,eACA,kCACA,aACA,aACA,mBACA,eACA,wBAEA,oFACI,WACA,YAGJ,4EACI,6CACA,iCAGJ,6EACI,uCAIR,8EACI,OACA,gBACA,eACA,2BACA,eACA,aACA,mBACA,YACA,gBACA,uBACA,mB;ACzFR,iCACE,aACA,uBAEF,8CACI,iBACA,iBACA,cACA,kBACA,aACA,0B;ACRI,uEACI,gBAEA,2EACI,S;ACJZ,wBACI,+CAIR,mBACI,+CACA,iB1DES,C0DDT,aACA,sBACA,uDACA,8CAGJ,sBACI,oBACA,mBACA,+CACA,iB1DTS,C0DUT,uDACA,8CAGJ,2BACI,aACA,mBACA,uBACA,wCACA,2BACA,4BACA,+BACI,8BACA,oCACI,iBAKZ,8CACI,kBACA,kDACI,mBAIR,iDACI,WACA,kBACA,2BACA,8BACA,qDACI,qBAIR,yBACI,yBACA,+BACI,gBAIR,4CACI,gBACA,aACA,sBACA,O1DzDS,C0D0DT,YACA,kDACI,iBACA,gBAIR,4BACI,WACA,aACA,QACA,kBACA,mBAGJ,6BACI,uDACA,8CAGJ,mCACI,qDACA,8CC1FJ,iBACE,aACA,e;ACHF,4BACI,oBACA,cAEA,2CACE,eACA,gBACA,cAEA,8DACE,aACA,mBACA,UACA,cAEA,oFACE,oBACA,cAEA,4FACE,iBAEA,+FACE,eAGF,8FACE,iBACA,iBACA,kCAIJ,iHACE,cACA,eAIA,4GACE,eACA,gBACA,gBAGF,0HACE,aACA,mBACA,eAEA,6IACE,WACA,gBACA,eAMR,qFACE,gBAEA,6FACE,YACA,WAMN,8DACE,mD;ACvER,6CACE,aACA,aACA,QACA,8B;ACFM,+BACI,8BAKJ,qDACI,2CAEA,+DACI,yC;ACTJ,8EACI,8CACA,0CACA,iBACA,kBACA,eACA,2BACA,OACA,kBACA,kBAEA,oFACI,0CAGJ,uFACI,yCACA,oCAEA,4FACI,gBAIR,uFACI,WACA,mB;AC7BpB,kFACI,mCAGJ,uEACI,UAKJ,yBACE,8EAEE,cAKJ,yBACE,8EAEE,gBAOJ,qCAEE,8EAEE,cAIJ,qCAEE,8EAEE,gB;ACvCA,4CACI,+CACA,kBACA,c;ACJR,YACI,gBACA,SAEJ,gBACI,WACA,aACA,OlEIS,CkEHT,wBACI,cAGR,6CAEI,YACA,+CACA,gBACA,iBlENS,CkEOT,aACA,mBACA,OlETS,CkEUT,mBACA,uBACA,kBAEJ,uBACI,kCAEJ,uBACI,eACA,6BACI,2B;AC/BR,8BACI,kBACA,oCACI,2BAIR,gCACE,W;ACRF,iCACE,gBAEA,4CACE,eACA,gBACA,YACA,2BAGF,6CACE,mDAEA,wDACE,6CACA,uBAEA,uEACE,gCACA,mBAGF,8DACE,wD;ACvBR,oBACE,a;ACDF,mDACI,qBACA,2BACA,UAEJ,sDACI,gBACA,uBACA,mBAKJ,yBACE,sHAGE,cAKJ,yBACE,sHAGE,gBAOJ,qCAEE,sHAGE,aAIF,mHAEE,mBACA,qBAIJ,qCAEE,sHAGE,gBAKJ,gDACE,aACA,sBACA,UAIF,yBACE,gDACE,mBAEA,kDACE,QAON,qCACE,gDACE,sBAEA,kDACE,WAKN,qCACE,gDACE,mBAEA,kDACE,Q;AC7FN,8BACI,WAEA,uCACI,aACA,sBACA,mBACA,8BACA,kBACA,gBACA,YACA,gBAEA,iDACI,kBACA,OACA,SACA,WACA,yCACA,2BACA,UACA,aACA,8BACA,gBAEA,4DACI,UAEJ,6DACI,QAGJ,qDACI,kBAEA,0DACI,aACA,WACA,kCACA,UACA,cACA,QACA,kBACA,6BACA,qCAIA,oEACI,wBAMhB,8CACI,WACA,kBACA,OACA,QACA,aAEA,oDACI,kBACA,WACA,YACA,wDACA,kBACA,UACA,2BAEA,8DACI,wCAGJ,2DACI,qBACA,wCAEA,kEACI,mCAIR,6DACI,eAGJ,2DACI,kBACA,SACA,gCACA,iBACA,oCACA,2B;AC9FpB,qCACI,kBACA,gBACA,YACA,cACA,aACA,sBAEA,sDACI,kBACA,MACA,OACA,WACA,YACA,2CACA,YAGJ,8CACI,OACA,gBACA,aACA,sBACA,c;ACtBJ,uDACI,aACA,+CACA,WACA,kBACA,eACA,2BAEA,6DACI,oCAGJ,gEACI,oCAQA,yEACI,kCACA,gBzEPF,CyEWN,oEACI,kCACA,gBzEZE,C;A0EhBN,wCACI,kBACA,mBACA,+CACA,aACA,8BAEA,8CAEI,gBAGJ,iDACI,aACA,QAIR,mCACI,eAEA,kDACI,kCACA,kB;ACrBA,mFACI,iB;;ACNpB;EACE;;;;;;GAMC;AACH;;ACLI,4CACI,gBAIR,kBACI,mBAEI,yBACI,aACA,QAHR,qBAKI,gBACA,yBACI,WAGR,wBACI,iBACA,wCACA,qBACA,yBACA,iBACA,2CACA,2BACI,YAGA,+CACI,sDAIZ,gCACI,mBAEJ,yCACI,wCAEJ,6BACI,gBCtCR,qCACE,2BACE,iDAKJ,qCACE,2BACE,iDAKJ,UACE,aACA,mBAEA,mBACE,OACA,YACA,gBACA,uBACA,mBAGF,kBACE,cACA,oBACA,mBACA,uBACA,YACA,YACA,yBACA,kBACA,eACA,kCACA,sDAEA,2BACE,WACA,YAEA,sCACE,WACA,YAIJ,wBACE,wCACA,oCAGF,2BACE,mBACA,oCAEA,iCACE,+BACA,oCAKN,sBACE,YAEA,4BACE,gBACA,uBACA,mBAON,yCACE,cACA,gBACA,gBACA,uBACA,mB;ACvFF,kBACI,aACA,mBACA,QAGJ,uBACI,WACA,YACA,kBACA,wDAGJ,iCACI,yCAGJ,oCACI,wCAGJ,kBACI,OACA,aACA,sB;ACxBJ,gCACE,eAMF,qCACE,yCACE,gBAIJ,qCACE,yCACE,c;ACZJ,qCACE,sCACE,gBAIJ,qCACE,sCACE,c;ACVJ,mBACI,oBACA,kBAIJ,sDAEI,aACA,mBACA,OlFDS,CkFET,gBlFMU,CkFLV,gBACA,iBACA,wCACA,kCACA,+CACA,eACA,6EAEA,gGACI,wCACA,oCACA,oCAGJ,sLAEI,mBACA,2CACA,kCACA,4CAGJ,kFACI,WACA,YAKR,2BACI,yBACA,0BACA,kBACA,mBAKJ,mGAGI,iBAIJ,2BACI,uBACA,WlFjDS,CkFkDT,0BACA,oDAEA,yCACI,WACA,YAGJ,gDACI,yCAGJ,2FAEI,gDAMJ,8GAEI,+CACA,2CACA,oCAEA,wJACI,wCACA,oCAIR,uDACI,oDAEA,4EACI,oDAMZ,wCACI,cACA,eAIJ,+CACI,cACA,eAMJ,qCACE,kBACE,gBAIJ,qCACE,kBACE,c;AC7HJ,qCACI,aACA,sBACA,cACA,O;ACJJ,+BACI,cAEA,wCACI,aACA,mBACA,eACA,OACA,cACA,iBAEA,yBARJ,wCASQ,sBACA,UAGJ,iDACI,OACA,YACA,aACA,sBACA,gBAEA,yBAPJ,iDAQQ,eACA,iBACA,SAIR,mDACI,cACA,gBACA,gBACA,YACA,OAEA,4DACI,cACA,OAEA,gFACI,YACA,aAEA,yFACI,gBACA,oCACA,YACA,iBACA,mEACA,OAEA,8LACI,kCACA,2CACA,gBAGJ,qGACI,2CAGJ,yBAlBJ,yFAmBQ,gBACA,iBACA,kCACA,2CACA,aAKZ,yBApCJ,4DAqCQ,iBACA,OAIR,yBAjDJ,mDAkDQ,WACA,eACA,sBACA,YACA,eAKZ,uCACI,aACA,SACA,qBACA,gBAII,0DACI,iBAGJ,yDACI,kBACA,kBAIR,yBAlBJ,uCAmBQ,cACA,uBACA,wBACA,aACA,sBACA,cACA,mBACA,iB;AAhHA,gDACI,O;ACJhB,eACI,YAEA,8BACI,cACA,gBACA,mBAGI,qEACI,gBACA,WACA,YAKZ,wCACI,gBACA,YACA,cACA,aACA,sBAEA,2CACI,OACA,YACA,cAEA,oDACI,eACA,2B;AC/BhB,gCACI,aACA,qCACA,SACA,sCACA,sDACA,8BACA,YACA,mBAEA,uCACI,oBACA,kBACA,aACA,SACA,8BAEA,0CACI,aACA,QAIR,yCACI,oBACA,aACA,yB;AC1BR,4BACI,SAEA,mCACI,aACA,sCACA,kCACA,SACA,YACA,sDAEA,4CACI,oBACA,aACA,2BACA,iDACI,2BACA,gBAIR,4CACI,oBACA,kBACA,aACA,2BACA,QAGJ,2CACI,qBACA,aACA,yBAIR,8CACI,mBAIA,0DACI,aACA,SACA,mBACA,uBACA,kCACA,iBACA,eACA,2BAEA,gEACQ,kC;ACpDpB,iBACI,+CACA,mBAEA,oCACI,eACA,6CACA,aACA,gBACA,mBACA,SAEA,2CACI,OACA,aACA,mBACA,SAEA,2FACI,SACA,cAGJ,6CACI,kCACA,gBACA,cAIR,6CACI,aACA,sBACA,iBACA,kBACA,gBAGJ,+CACI,2BAGJ,yCACI,sDAEA,oDACI,wBAOJ,mDACI,mB;ACrDZ,uCACI,+CACA,kBACA,aACA,SAEA,iDACI,gB;ACPZ,aACI,WACA,+CACA,kBACA,iCACI,YAEJ,wEAEI,iBACA,aACA,8BACA,mBACA,sDACA,mDACA,2BACA,4BACA,SAEJ,uCACI,YACA,4CACA,6CACI,gBAGR,8CACI,oCACA,kBACA,gBACA,aACA,mBACA,QAEJ,kCACI,aACA,QAEJ,iCACI,aACA,8BACA,+BACA,aACA,oBACA,SACA,gBAIR,mBACI,kBACA,+CACA,gBACA,wCACA,+DAEI,2BAEJ,2CACI,oBACA,kBACA,QACA,aACA,sBACA,uBACA,mBACA,kCACA,iDACI,mBACA,eACA,2BACA,kCAGR,0CACI,iBACA,aACA,8BACA,SACA,gBACA,gDACI,kCAEJ,oDACI,uBACA,kBAGR,2CACI,uBACA,qBACA,sDACA,aACA,uBACA,QACA,gBACA,iDACI,kCACA,gBACA,mBAKZ,0BACI,2CACA,oDACI,iDACA,4DAIR,mBACI,6BACA,sBACA,mCACA,2BAGJ,yBACI,GACI,8BACA,UAEJ,IACI,UAEJ,IACI,UAEJ,KACI,6BACA,W;ACpIJ,gDACI,WACA,YAEJ,uDACI,yB;ACLJ,+BACI,YACA,iDACA,qDACA,kBACA,oC;AFLR,aACI,WACA,+CACA,kBACA,iCACI,YAEJ,wEAEI,iBACA,aACA,8BACA,mBACA,sDACA,mDACA,2BACA,4BACA,SAEJ,uCACI,YACA,4CACA,6CACI,gBAGR,8CACI,oCACA,kBACA,gBACA,aACA,mBACA,QAEJ,kCACI,aACA,QAEJ,iCACI,aACA,8BACA,+BACA,aACA,oBACA,SACA,gBAIR,mBACI,kBACA,+CACA,gBACA,wCACA,+DAEI,2BAEJ,2CACI,oBACA,kBACA,QACA,aACA,sBACA,uBACA,mBACA,kCACA,iDACI,mBACA,eACA,2BACA,kCAGR,0CACI,iBACA,aACA,8BACA,SACA,gBACA,gDACI,kCAEJ,oDACI,uBACA,kBAGR,2CACI,uBACA,qBACA,sDACA,aACA,uBACA,QACA,gBACA,iDACI,kCACA,gBACA,mBAKZ,0BACI,2CACA,oDACI,iDACA,4DAIR,mBACI,6BACA,sBACA,mCACA,2BAGJ,yBACI,GACI,8BACA,UAEJ,IACI,UAEJ,IACI,UAEJ,KACI,6BACA,W;AGrIR,eACI,aACA,sBACA,gBAEA,4BACI,OACA,aACA,uBACA,sBAGJ,0BACI,OAEJ,qBACI,iB;AChBR,+BACA,aACA,8BACA,mBACA,kBAEA,iB9FKa,C8FJb,+CAEA,YACA,gBAEA,gB9FMc,C8FLd,iBAEA,mCACE,iBAGF,qCACE,eACA,kCAEA,2BACA,4CAEA,8CACI,2B;AC3BN,cACE,aACA,8BACA,mBACA,kBAEA,iB/FKW,C+FJX,+CAEA,YACA,gBAEA,gB/FMY,C+FLZ,iBAEA,kBACE,iBAGF,oBACE,eACA,kCAEA,2BACA,4CAEA,6BACI,2B;AC3BR,6BACI,+BACA,4BACA,yBAEA,+EACA,mFAEA,mCACI,WAGJ,mCACI,UAEA,yCACI,qCAEJ,uCACI,oCAEJ,wCACI,2C;ACtBZ,sCACI,kBAEA,+CACI,kBACA,MACA,OACA,WACA,YACA,sDACA,uB;ACTR,sBACI,aACA,sBACA,SAEI,qDACI,oDACA,qDACA,4CAGJ,8CACI,8BACA,+BACA,sDAGJ,sCACI,2BACA,4BACA,mDAGJ,qCACI,8BACA,+BACA,sDAGR,gDACI,mDACA,aACA,8BACA,aACA,+CACA,qDACI,aACA,mBACA,SAEJ,sDACI,eACA,kCAEA,2KAEI,2BAIZ,sDACI,aACA,sBACA,2DACI,kCACA,iBAGR,iCACI,kBACA,kCACA,aACA,mBACA,QAEA,wCACI,WACA,WACA,YACA,gBACA,+CAKZ,gCACI,aACA,gBACA,aACA,sBACA,sCACI,kBACA,kCACA,aACA,mBACA,SACA,6CACI,WACA,WACA,YACA,+CAGR,+CACI,wCACA,2CACA,iBACA,mBACA,kBACA,aACA,aACA,mBACA,+DACA,qDACI,eACA,kCACA,oFACI,2BAEJ,8DACI,2BAKZ,yCACI,aACA,yBACA,QAIR,gCACI,OACA,aACA,gBAEA,+CACI,aACA,OACA,gBACA,YACA,UACA,QACA,gBAEA,2DACI,gBAIR,+CACI,gBACA,aACA,kBACA,mBACA,uBACA,QACA,kCAIR,+BACI,kCACA,kBACA,oBACA,kBC3JJ,YACE,kBACA,kCAGF,mEAGI,wBAGJ,uBACI,UACA,2BAGJ,qBACI,UACA,wBAGJ,uBACI,UACA,wBAGJ,qBACI,UACA,2BAGJ,iBACI,8B;AClCJ,8BACI,mB;ACCI,4DACI,mB;ACHZ,iCACI,kBACA,kBACA,+CACA,kCACA,2CACA,4BACA,WACA,gBACA,aACA,sBACA,8BAEA,4CACI,sBACA,aACA,uBACA,mBACA,YACA,oCACA,gBACA,2CACA,SACA,kBACA,QACA,oCACA,oDACA,0DACA,0BACA,oCAEA,gDACI,kCACA,+GAEI,8FAIR,iDACI,2CACA,iHAEI,iGAIR,uGAEI,WACA,cACA,QACA,SACA,kBACA,4CACA,YACA,mCAGJ,2DACA,2D;AC5DR,4BACI,gBAEA,mCACI,YACA,gBACA,aACA,qCACA,SACA,UAEA,6CACI,kBACA,mBACA,gBAEA,6DvGQV,mBACA,gBACA,uBuGRc,kEvGMd,mBACA,gBACA,uBuGLc,4EvGGd,mBACA,gBACA,uBuGCU,sDACI,cACA,eAIR,0CACI,kBAIJ,2CACI,mBACA,iBACA,mBACA,aACA,mBACA,yBAEA,oGACI,kBACA,qBACA,kBACA,mBAEA,4HACI,kBACA,QACA,SACA,gCACA,2BAIA,wIACI,WACA,YAKZ,uDACI,iCAEJ,yDACI,oCAKZ,mDACI,6CAEI,0EACI,+CACA,kBACA,SACA,cAEA,uFACI,Y;ACpFZ,6DACI,gB;ACHR,iBACI,+CACA,kBACA,gBAEA,yBACI,6CACA,aACA,sDAGI,uCACI,mBAKZ,+BACI,kCAEA,uCACI,sDAEA,oDACI,mB;ACxBhB,6BACI,SAEA,mDACI,iBACA,4DACA,qDACA,kBACA,aACA,iBACA,aACA,8BACA,mBAEA,yDACI,eACA,qDAIR,oDACI,4DACA,gBACA,0BACA,aAGI,oFACI,mBAEA,0FACI,cACA,iBACA,kBAEJ,oGACI,kCACA,4CACA,aACA,eAOZ,wDACI,0B;AChDhB,iCACI,iBACA,kBACA,wCACA,4BACA,oBACA,mBACA,QACA,uCACI,mCACA,4BACA,eAGR,2CACI,cACA,aACA,SACA,sBAEJ,oBACI,aACA,8BACA,mB;ACtBA,2CACI,kBACA,eACA,qBACA,iDACI,mCAEA,eAIA,qEACI,mDACA,qDACA,8BACA,qBACA,kBACA,YACA,WACA,WACA,UAEJ,qEACI,UACA,mDACA,qBACA,kBACA,cACA,WACA,YAIR,oDACI,YACA,kBAEA,6DACI,qBAGJ,2DACI,mBACA,aACA,QAEA,sEACI,gDAIR,oEACI,aACA,YAIA,0EACI,qBACA,kCAMhB,4CACI,gBAGA,oDACI,0CAMI,gEACI,mCAGJ,kEACI,wBASJ,iEACI,gCACA,cACA,gBAEA,4EACI,2BACA,iB;AClGxB,8CACI,aACA,sBACA,OACA,YACA,cAEA,sDACI,kCACA,aACA,kBACA,wCACA,cACA,YAGR,qCACI,8CACI,gB;AClBR,sCACI,kCACA,aACA,kBACA,wCAGJ,gCACI,aACA,gDACA,6BACA,kBACA,gDACA,YACA,gBACA,iDACI,YAEJ,gDACI,Y;ACnBR,+BACI,gDACA,6BACA,kBACA,gDACA,iBACA,kBACA,oBACA,cACA,kBAEA,qDACI,kCACA,kBACA,kBAIA,4DACI,kBACA,SACA,SAKR,yCACI,gBACA,uDACA,oBAEA,2DACI,iBAGJ,oDACI,a;AClCJ,8CACI,4BAKJ,+CACI,kCAEJ,8CACI,8BAEJ,8CACI,6B;ACfZ,sCACI,aACA,sBACA,SACA,kCACA,aACA,kBACA,wCACA,c;ACRJ,qCACI,aACA,sBACA,OACA,YACA,qBACA,c;ACNJ,sCACI,aACA,mBACA,SACA,cAIJ,qCACI,sCACI,gB;ACRA,+FACI,+CAKJ,6CACI,YACA,UACA,YACA,e;ACZZ,yBACI,wCACA,kCACA,aACA,aACA,sBACA,OAEA,wCACI,aACA,8BACA,mBACA,mBAEA,sDACI,SACA,UACA,iB;;AClBZ;IACI,6BAA6B;AACjC;;ACDA,gBACI,cACA,YACA,WACA,kBACA,2B;ACJA,qBACI,sDACA,mBACA,iBAIA,gDACI,+CACA,iBACA,kBACA,aACA,WACA,mBACA,gBACA,8BACA,mBACA,SACA,yBACA,2BAEA,yDACI,aAGJ,sDACI,oCAGJ,yDACI,OAGI,sFACI,gBxHjBV,CwHkBU,kCAKJ,qEACI,mCAKZ,yDACI,aACA,8BACA,mBAKZ,+BACI,iB;ACxDR,mBACI,aACA,OACA,sBAEA,qBACI,sDACA,mBACA,iBAGJ,qCACI,mBAEA,oDACI,+CACA,yBACA,kBACA,aACA,WACA,mBACA,gBACA,8BACA,mBACA,SACA,0CACA,2BACA,eAEA,6DACI,aAGJ,0DACI,2CACA,gDAGJ,6DACI,OAGI,mFACI,gBAGJ,oFACI,gBzH7BV,CyH8BU,kCAKZ,6DACI,aACA,8BACA,mBACA,QAEA,oFACI,kCAEA,6FACI,WACA,YAGJ,0FACI,wCACA,oCAOpB,iCACI,iB;AC7ER,oCACI,YACA,aACA,OACA,sBACA,cACA,2BACA,8BAMA,6CAHJ,oCAIQ,kB;AAbJ,8BACI,YAEA,sCACI,kCACA,YACA,+CAKI,0DACI,sCAGJ,2DACI,Y;ACjBpB,0CACI,aACA,sBACA,eACA,SAEF,oDACE,mBAEA,oEACE,gBACA,gBAGF,mEACE,aACA,eACA,S;ACjBN,oCACI,wCACA,aACA,wCACA,aACA,8BACA,mB;ACNJ,mCACI,aACA,Q;ACFJ,oCACI,wCACA,+CACA,kBACA,aACA,yCACI,YACA,c;ACPR,kDACI,gBACA,mBAEJ,sCACE,aACA,8BACA,mB;ACNE,6BACI,gBACA,aACA,sBACA,sCACA,mBACA,6CACA,gBAEA,0CACI,iBACA,aACA,gDACA,+CACA,2BAEA,gDACI,mBAEJ,gDACI,kBAIA,2DACI,2BACA,UAIR,gDACI,6CAEI,iEACI,UAKZ,uDACI,mBAOR,uCACI,aAKJ,sCACI,iB;ACvDZ,6BACI,WACA,YACA,kBACA,YACA,iBACA,2CAGJ,mCACI,kBACA,YAGJ,wCACI,iDAGJ,0CACI,mDAGJ,uCACI,mDAGJ,oCACI,WACA,iB;AC5BJ,oCACI,+CACA,kBACA,gBACA,kCACA,aACA,aACA,sBACA,SACA,gBAEA,wDACI,aACA,mBACA,QACA,eACA,mBACA,+CACA,YACA,kBACA,2BAEA,8DACI,mCACA,0C;ACxBZ,8BACI,+CACA,kBACA,gBAEA,kDACI,kCACA,aACA,sDACA,2BAEA,wDACI,oCACA,2CACA,sFACI,2BACA,kCAIR,2FACI,kCAEA,+HACI,oCAIR,uEACI,2BACA,kCAEA,6EACI,mCAIR,sDACI,aACA,OACA,oBAIR,mDACI,aACA,cAEA,4EACI,aACA,mBACA,SAEA,+EACI,aACA,SACA,mBAEA,mGACI,aAKZ,4EACI,kBACA,kC;AC/DJ,4DACI,aACA,sBACA,S;ACNZ,2CACI,iBACA,qBACA,wCACA,yBACA,iBACA,2CACA,gBACA,8CACI,YAGA,oIACI,sDAGR,8CACI,gBACA,mB;AClBR,8BACI,mBACA,oBACA,+CAEA,4FACI,+B;ACNR,4BACI,cACA,gBAEA,mCACI,gBACA,Y;ACNR,4BACI,YACA,WACA,cAEA,oCACI,+CACA,oBACA,mBACA,aACA,mBACA,Y;ACRA,mEACI,eACA,eACA,WAGJ,+BACI,eAIA,uCACI,Q;ACdhB,cACI,YACA,WACA,aACA,sBACA,sCAEA,sBACI,sDACA,eACA,WACA,kCAEA,+BACI,eACA,aACA,qBAEA,sCACI,SACA,2BACA,iBACA,kBACA,oBAKZ,+BACI,OACA,WACA,4CACA,cAED,wCACI,oBACA,mBACA,+CAGI,uDACI,gCACA,eAIR,iDACI,mBAKX,sBACI,kBACA,mDACA,kC;ACxDR,+BACI,YACA,WACA,aACA,sBACA,sCAEA,uCACI,sDACA,eACA,WACA,kCAEA,gDACI,eACA,aACA,qBAEA,uDACI,SACA,2BACA,iBACA,kBACA,oBAKZ,gDACI,OACA,WACA,4CACA,cAGI,+DACI,gCACA,eAKZ,uCACI,kCACA,kBACA,mD;AC7CR,8BACI,aACA,sBACA,cACA,gBAEA,sCACI,+CACA,oBACA,mBAEA,6DACI,eAKJ,0CACI,aACA,QACA,cACA,mBACA,2BACA,eAEA,iGACI,4BACA,mDAKI,kFACI,aAEJ,iFACI,qBAKZ,uDACI,WACA,4EACI,qBAEJ,2EACI,aAIA,mEACI,qBAOpB,2CACI,OACA,aACA,sBACA,kBACA,uBACA,kCACA,gBAEA,gDACI,eACA,4B;ACtEZ,iCACI,aACA,SACA,YACA,WACA,cAEA,2CACI,MACA,wDACI,YACA,YACA,gBACA,UACA,iCAIR,8CACI,8CACA,mBACA,2D;ACpBJ,2CACI,aACA,QACA,mBACA,mBAEA,8CACI,SACA,UAIR,0GAEI,aACA,kCACA,wCACA,kBAEA,sHACI,aACA,mBAEA,4HACI,gBACA,cACA,OAGJ,4HACI,O;AC/BhB,+BACI,Y;ACCI,qGACI,+CAGR,mCACI,aACA,gBAEA,4EACI,SAGJ,sCACI,gBAEJ,sCACI,iBACA,mB;AClBR,iDACI,aACA,+CACA,WACA,kBACA,eACA,2BAEA,uDACI,oCAGJ,0DACI,oCAQA,mEACI,kCACA,gBjJPF,CiJWN,8DACI,kCACA,gBjJZE,C;AkJlBd,kCACE,kBACA,SACA,UACA,YACA,kCACA,+CACA,wCACA,SAEA,qDACE,2BAEA,uDACE,gBAIJ,qDACE,2BAGF,yCACE,mBACA,kBACA,+CACA,oBAIA,8CACE,kBAEA,gDACE,2BACA,kBACA,cACA,aACA,8BACA,WACA,wCACA,mBACA,YACA,2BAEA,sDACE,qBACA,4CACA,iCAMR,2CACE,aACA,yBAGF,kDACE,kBAEA,0DACE,kBACA,aACA,QACA,YACA,YACA,W;ACpEN,iBACI,wCACA,0BACI,iBACA,YACA,aAEJ,oBACI,c;ACPR,+CACI,wBAIJ,gCACI,8MAEA,+BACA,6DAEA,sCACI,+BACA,YAIR,2CACI,GACI,4MAGJ,IACI,6MAGJ,IACI,6MAGJ,IACI,8MAGJ,IACI,8MAGJ,IACI,8MAGJ,IACI,8MAGJ,IACI,8MAGJ,IACI,8MAGJ,IACI,8MAGJ,KACI,+M;AC1DN,qEACE,2BACA,aACA,mBACA,OACA,uBACA,WACA,YACA,aACA,kBAEA,uEACE,oBAGF,yEACE,OACA,WACA,YACA,2BACA,mBAIA,+EACE,sBACA,6BACA,oCACA,2BACA,mBACA,mBACA,mCACA,kCAIJ,2FACE,YACA,UACA,kBACA,iBACA,cACA,wC;AC9CN,yBACE,iBACA,gBAGF,4CACE,UACA,4CAGF,kDACE,+CACA,kBAGF,wDACE,wDCVM,qCACI,gBACA,YACA,gBAEA,4CACI,UAIA,+CACI,2BACA,UACA,kBAMpB,sCACI,oCACA,2BACA,+CACA,aACA,mBAEA,yDACI,4BACA,aACA,mBACA,SACA,WAEA,kEACI,uCAGJ,kEACI,cACA,e;AC3CZ,SACI,mBAEA,gBACI,kBACA,kBACA,aACA,qBACA,QAEA,sBACI,mCAGJ,yBACI,WACA,cAGJ,sBACI,WACA,uCACA,WACA,OACA,kBAIA,4BACI,+CACA,mBAMR,kCACI,2BACA,iBACA,kBACA,gBACA,cAEA,0CACI,aACA,SACA,mBACA,iBAIA,mDACI,OACA,WACA,cAEJ,mDACI,aACA,QAGJ,gDACI,0CACA,YACA,aAIR,wCACI,0CAGJ,4CACI,kBACA,aAEA,8CACI,cACA,WACA,cACA,WAEA,oDACI,0CACA,YACA,aAOpB,sBACI,gBAIR,qCAKoB,mDACI,aACA,gB;ACvGpB,8BACI,cACA,YAEJ,6BACI,aACA,eACA,YACA,2BACA,mBAEJ,kCACI,aAIA,2EACI,aAGJ,0CACI,eAKZ,sCAEQ,8BACI,aAEJ,6BACI,qBACA,oBAEA,mCACI,sBACA,oCACA,2BACA,mBACA,mBACA,mCACA,kCACA,6B;AC5ChB,gCACI,UACA,aACA,OACA,yBACA,eAEA,iDACI,kBACA,yBACA,aACA,sBACA,SACA,WAEA,iEACI,aACA,QACA,mBACA,WAEA,gFACI,aACA,eACA,oCACA,eACA,gBAGJ,+EACI,aAGJ,gFACI,OACA,aACA,sBACA,kBACA,WAEA,qMAEI,kCACA,kBACA,UACA,QAEA,mNACI,SAGJ,iNACI,UAIR,sFACI,oBACA,iBACA,sCACA,oCACA,WACA,iBACA,YACA,sBAEA,oGACI,aAMhB,kEACI,kCACA,eACA,YACA,yBAEA,gFACI,cACA,WACA,gBACA,aACA,uBACA,mBACA,QACA,8CACA,mCACA,kBACA,kCAMR,yDACI,eACA,WACA,kCACA,SACA,UACA,YACA,YACA,kBAIQ,qNAEI,kCAGJ,8FACI,kCACA,OACA,kCACA,aACA,WAEA,4GACI,cACA,2BACA,YACA,iBACA,iBACA,sBAEA,wHACI,4BACA,6BAOpB,0EACI,cACA,gBAEA,sFACI,eAKZ,iDACI,kBACA,YACA,aACA,0BACA,OACA,MACA,YAMZ,sCACI,gCACI,YACA,0CACI,0BAGA,yDACI,WACA,MACA,OACA,yBACA,0BAEA,yEACI,WACA,mBACA,uFACI,eAQxB,qCAEQ,iDACI,cAGI,gFACI,cAGJ,wNAGI,aAIA,mFACI,yCACA,0CAQZ,yDACI,aACA,wEACI,aAIA,gPAGI,e;AAxNI,2FACI,cAEA,wMAEI,YACA,WAMZ,6EACI,kC;ACpB5B,sBACI,aACA,aACA,sBAEA,+BACI,aACA,mBACA,OACA,0BACA,gBAGJ,iEACI,aACA,aAGJ,sCACI,iCACI,mB;ACpBZ,2BACE,gBACA,wCACA,wCACA,0BACA,2BACA,sCACA,2CAEA,8BACE,iBACA,mBAGF,6BACE,iBAGF,oCACE,gBACA,SACA,aACA,2BACA,8BACA,eAEA,4DACE,4CACA,wCAEA,kEACE,4CAQR,yBACE,aACA,sBACA,YACA,WACA,qBAEA,iCACE,WACA,oBACA,+CACA,kCACA,cACA,aACA,mBACA,8BACA,sBAEA,wCACE,eACA,gBACA,iCACA,SACA,mBACA,OAGF,iDACE,aACA,mBACA,WAEA,8DACE,SAGF,gEACE,aACA,mBACA,uBACA,WACA,YACA,UACA,gBACA,YACA,kBACA,eACA,cACA,aACA,sCAEA,sEACE,eACA,6CAMR,mCACE,WACA,sDACA,kCACA,aACA,sBACA,sBAEA,4CACE,aACA,QACA,kBAEA,yDACE,mDACA,kBAEA,+DACE,eACA,+CAGF,kEACE,kCAEA,wEACE,mBAOV,2CACE,OACA,WACA,mDACA,cAMA,4DACE,aACA,mBACA,kCACA,wCACA,sDACA,oCACA,2BACA,eAEA,qEACE,iBAEA,2FACE,2CAnBC,CAoBD,oCACA,gBACA,kBACA,iBAIJ,oEACE,aACA,uBACA,mBACA,WACA,eAEA,iFACE,YACA,WACA,UAEA,sFACE,SACA,UAKN,yEACE,2BAGF,mEACE,2BACA,uCACA,2BAEA,2EACE,mDAEA,0GACE,6CAzDE,CA6DN,yEACE,gDAEA,wGACE,0CAhEA,CAoEJ,kGACE,qBAvEC,CA2EL,kEACE,OACA,aACA,sBACA,yBAEA,0EACE,QACA,aACA,8BACA,mBAEA,mFACE,YACA,eACA,gBACA,sBACA,uBACA,aACA,mBACA,uBAGF,iFACE,OACA,2BACA,SAIA,sFACE,eAKN,wEACE,aACA,cACA,mBACA,mBAGF,0EACE,aACA,iBACA,kCACA,cACA,cACA,yBAIJ,kEACE,mDAKN,gCACE,OACA,aACA,mBACA,uBACA,kBACA,kCACA,WACA,mD;ACvRJ,wEAEI,+B;ACFJ,+BACI,eACA,oDACA,sCACA,yBACA,SACA,cACA,YACA,WACA,YACA,YACA,mKACA,4CACA,aACA,sBACA,gBAGA,0CACI,gCAIJ,yBAvBJ,+BAwBQ,kBAGJ,2CACI,kBACA,UACA,MACA,SACA,UACA,iBACA,yBACA,aAGA,yBAXJ,2CAYQ,cAIR,uCACI,kCACA,cAGJ,oCACI,QACA,WAGA,gBACA,YAIA,+CAVJ,oCAWQ,gBACA,gBAIJ,yBAhBJ,oCAiBQ,eACA,gBAEA,0CACI,gBAKZ,qCACI,kBACA,YACA,MACA,gBACA,cACA,gBACA,eAGA,gDACI,mBACA,uBACA,uBACA,gBACA,UACA,oBAIR,wCACI,gBACA,0BACA,2BAGJ,gDACI,0BACA,2BAGJ,uCACI,2BAGJ,uCAEI,oGAGJ,uCAEI,oGAIA,0BACA,2B;AC3HR,yBACI,sBACA,iBACA,cAEA,kDACI,iBACA,iBACA,gBAEA,yEACI,UACA,aACA,uBACA,mBAGJ,2EACI,gB;ACfZ,eACA,qBACA,oBAYA,gBACI,yCACA,wCACA,aACA,uBACA,mBACA,YACA,mBACA,yDACA,sBACA,4BACA,yBACA,iCAEA,4CACA,kCACI,sBACA,+DACA,+DAEJ,iCACI,kBACA,cACA,kBACA,kCAGJ,+BACI,sBACA,uBACA,cAEA,wDACI,aACA,WACA,uBACA,mBAEA,6JAEI,WAMhB,yBACI,wBACA,WACA,aAGA,+BACI,gBACA,mBAIJ,gCACI,gBACA,YACA,mBAIR,6CAEI,YACA,uBACA,mBAIA,yBACI,gBAEJ,yBACI,kBAEJ,wBACI,gBACA,mBAIR,yBACI,WAGJ,gDACI,iBACA,kBACA,kBACA,iCACA,mDACI,iBACA,mBAEJ,mDACI,iBACA,qBAEJ,sDACI,cACA,iCACA,kBAEJ,oEACI,mBAEJ,kDACI,mBAEJ,kDACI,2BAEJ,gFACI,2CAEJ,0DACI,iBACA,uEACI,oCAIJ,wEACE,+CAIN,iEACI,mBAGJ,4DACI,gBAEJ,wDACI,yBACA,WACA,kBAEJ,wEACI,wCACA,oCACA,8EACI,iDAEJ,iFACI,+CACA,kCAGR,yEACI,4BACA,mBACA,+BACA,+EACI,+BACA,oCAUZ,uCAEI,mBACA,OACA,aACA,sBAGJ,8BACI,gBArLS,CAsLT,kBACA,WACA,YACA,gBACA,aACA,mBAEA,uCACI,aACA,sBACA,kBACA,gBACA,kBACA,WACA,YACA,uCAEJ,mCACI,4CAEJ,8CACI,wCACA,oCAIR,2BACI,YACA,aACA,sBACA,OAEA,gCACI,4CACA,OAIR,kBACI,kBACA,WACA,SACA,YACA,gBAGJ,uBACI,eArOS,CAsOT,iBhKvOS,CgK0Ob,2FAGI,wBAGJ,4DAEI,UACA,4BAGJ,iCACI,kBAGJ,mBACI,kBACA,aACA,8BACA,eArQY,CAsQZ,wCACI,kBACA,eAxQQ,CAyQR,cACA,WACA,gBACA,mBACA,+CACI,cAEJ,4DACI,UACA,mBAIZ,wBACI,iBACA,aACA,sBACA,uBACA,uBACA,8BACI,gBACA,kBACA,kCACA,cAEJ,2BACI,2BACA,mBAGR,uBACI,YACA,aACA,mBACA,eAEJ,WACI,8CACA,wCACA,YACA,kBACA,sDAEA,0BACI,qDACA,iCACA,gBACA,mBACA,aACA,mBACA,8BACA,kBACA,mBAGJ,6BACI,+CACA,oCACA,gBACA,8DACA,aACA,mBACA,8BACA,kBACA,mBAGR,WACI,YACA,wCACA,WAvUS,CAwUT,+CACA,aACA,mBACA,8BACA,eACA,WACA,4BACI,aACA,mBACA,sBAEJ,uBACI,iBACA,oBACA,WAtVK,CAuVL,WACA,6BACI,eAGR,qCACI,aACA,yCACI,0BACA,eAEJ,4CACI,eACA,gDAGR,yCACI,aACA,aACA,mBACA,6CACI,UACA,eAEJ,gDACI,eACA,mDAGR,0BACI,kBACA,aACA,sBACA,SAEA,8BACI,UACA,iBAEJ,mCACI,aACA,mBACA,iBACA,kBACA,2BACA,mBACA,sBACA,yDACI,iBACA,gBACA,+CACA,iDACA,kBACA,YACA,mBACA,QAEJ,yCACI,oCACA,2BACA,mBACA,mBACA,mCACA,kCAIZ,2BACI,uBACA,2CAEJ,gCACI,YACA,mCACI,kCACA,wCAEA,gDACI,2BACA,sDACI,6CACA,sHACI,mCACA,kCAOhB,0CACI,kBACA,gDACI,kBACA,WACA,UACA,YACA,kCACA,QAKR,yFAEI,eAIZ,sCAEQ,qEACI,aACA,mBACA,gFACI,iDACA,2BAGA,sFACI,sBACA,oCACA,2BACA,mBACA,qCAMhB,wBACI,oCACA,eAneQ,CAoeR,kBACA,MACA,aACA,8CACI,gBACA,4BACA,aACA,OACA,8BACA,mBACA,YACA,gBAEJ,6CACI,WACA,oCACA,eAIQ,wJACI,mCACA,kCAMpB,4BACI,WACA,cA1fK,CA4fL,0CACI,UAEJ,iDACI,WAxgBI,CA8gBZ,sCACI,mBACA,0DACI,mBAGI,4IACI,oCACA,mCAWZ,2EACI,eAKZ,4BACI,oDACA,4BACA,aACA,+BACA,gCACI,iCACA,WAEJ,uCACI,UACA,qCAEJ,kCACI,iBACA,2BACA,mBACA,oBAIR,mCACI,oDACA,4BACA,aACA,mBACA,+BACA,WA1jBS,CA2jBT,uCACI,mCACA,WAEJ,yCACI,iBACA,oCACA,mBACA,oBAIR,eACI,eACA,YACA,WACA,8BACA,sCACA,WArlBY,CAulBZ,4CACI,WACA,sBACA,8BAGQ,yEACI,2CAEJ,uEACI,0CACA,8EACI,UACA,4CAOpB,2CACI,QACA,gBACA,4DACI,2CACA,iBACA,iBACA,kBACA,mBACA,gBACA,uBAEJ,wDACI,kBAGA,kEACI,iDAEJ,qEACI,2CAEJ,mEACI,0CACA,0EACI,UACA,4CAMhB,mCACI,aACA,aAGQ,wHACI,oCACA,mCAGR,uDACI,6CACA,mBAKJ,2EACI,iBAIZ,oBACI,OAEJ,sBACI,YAEJ,wCACI,aACA,QAEJ,sCACI,oDACA,oCACA,iBACA,YACA,cACA,iBACA,oDACA,uBACA,mBACA,gBAEJ,wDACI,UAEJ,4BACI,aACA,8BACA,+CAEJ,yBACI,oBACA,WAEJ,qCACI,iBACA,+CACA,2CAGA,oDACI,iDAMZ,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","sources":["webpack://@flowfuse/flowfuse/./frontend/src/ui-components/stylesheets/ff-core.scss","webpack://@flowfuse/flowfuse/./frontend/src/ui-components/stylesheets/ff-utility.scss","webpack://@flowfuse/flowfuse/./frontend/src/ui-components/stylesheets/ff-components.scss","webpack://@flowfuse/flowfuse/./frontend/src/ui-components/stylesheets/ff-palette.scss","webpack://@flowfuse/flowfuse/./frontend/src/ui-components/stylesheets/ff-theme-light.scss","webpack://@flowfuse/flowfuse/./frontend/src/ui-components/stylesheets/ff-theme-dark.scss","webpack://@flowfuse/flowfuse/./frontend/src/ui-components/stylesheets/ff-flow-renderer.scss","webpack://@flowfuse/flowfuse/./frontend/src/ui-components/stylesheets/ff-vue-datepicker.scss","webpack://@flowfuse/flowfuse/./frontend/src/ui-components/stylesheets/ff-highlight-js.scss","webpack://@flowfuse/flowfuse/./frontend/src/ui-components/stylesheets/ff-immersive-editor.scss","webpack://@flowfuse/flowfuse/./frontend/src/components/CookieConsent.vue","webpack://@flowfuse/flowfuse/./frontend/src/stylesheets/components/empty-state.scss","webpack://@flowfuse/flowfuse/./frontend/src/components/TeamTypeTile.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/PageNotFound.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/SectionTopMenu.vue","webpack://@flowfuse/flowfuse/./frontend/src/ui-components/components/form/ListBox.vue","webpack://@flowfuse/flowfuse/./frontend/src/stylesheets/components/accordion.scss","webpack://@flowfuse/flowfuse/./frontend/src/stylesheets/components/audit-log.scss","webpack://@flowfuse/flowfuse/./frontend/src/components/dialogs/AssetDetailDialog.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/blueprints/BlueprintTile.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/admin/FlowBlueprints/dialogs/ImportFlowBlueprintsDialog.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/admin/FlowBlueprints/index.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/admin/NotificationsHub.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/admin/Template/sections/Catalogues.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/admin/Template/sections/NPMRegistry.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/TextCopier.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/admin/Template/sections/Environment.vue","webpack://@flowfuse/flowfuse/./frontend/src/stylesheets/pages/admin.scss","webpack://@flowfuse/flowfuse/./frontend/src/stylesheets/components/info-card.scss","webpack://@flowfuse/flowfuse/./frontend/src/ui-components/components/PopoverItem.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/icons-animated/Installing.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/icons-animated/Pulling.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/icons-animated/Pushing.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/icons-animated/Restarting.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/icons-animated/Starting.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/device/Overview.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/charts/performance/CpuChart.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/charts/performance/MemoryChart.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/variant-selector/TabSelector.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/variant-selector/OptionTileSelector.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/notices/NoticeBanner.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/dialogs/device-group-management/components/device-list.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/elements/ToggleButtonGroup.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/device/VersionHistory/index.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/dialogs/SnapshotDiffChangePanel.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/dialogs/AssetCompareDialog.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/flow-viewer/FlowViewer.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/drawers/snapshots/SnapshotDetailsDrawer.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/device/VersionHistory/Snapshots/index.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/version-history/timeline/TimelineGraph.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/version-history/timeline/TimelineEvent.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/device/VersionHistory/Timeline/index.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/device/components/AssignDeviceDialog.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/device/index.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/immersive-editor/DrawerTrigger.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/ResizeBar.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/immersive-editor/EditorDrawer.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/immersive-editor/LoadingScreenWrapper.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/device/Editor/index.vue","webpack://@flowfuse/flowfuse/./frontend/src/stylesheets/components/blueprint-selection.scss","webpack://@flowfuse/flowfuse/./frontend/src/pages/instance/Blueprints/BlueprintSelection.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/dialogs/BlueprintSelectorDialog.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/instance/components/InstanceForm.vue","webpack://@flowfuse/flowfuse/./frontend/src/ui-components/components/form/DateTime.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/instance/Settings/Maintenance.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/instance/VersionHistory/index.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/instance/VersionHistory/Timeline/index.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/FileUpload.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/file-browser/cells/FilePath.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/file-browser/VisibilitySelector.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/instance/Assets.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/DevicesBrowser.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/multi-step-forms/StepSlider.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/multi-step-forms/MultiStepForm.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/multi-step-forms/instance/steps/ApplicationStep.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/multi-step-forms/instance/steps/DuplicationStep.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/multi-step-forms/instance/steps/InstanceStep.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/instance/components/InstanceLogs.vue","webpack://@flowfuse/flowfuse/./frontend/src/stylesheets/pages/project.scss","webpack://@flowfuse/flowfuse/./frontend/src/pages/instance/Overview.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/instance/Performance/index.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/instance/ActionButton.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/instance/components/DashboardLink.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/instance/components/EditorLink.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/multi-step-forms/instance/steps/flows-step/BlueprintsSection.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/multi-step-forms/instance/steps/flows-step/ImportFlowsSection.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/multi-step-forms/instance/steps/flows-step/index.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/bill-of-materials/InstancesItem.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/bill-of-materials/VersionsList.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/bill-of-materials/DependencyItem.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/application/DeviceGroup/index.vue","webpack://@flowfuse/flowfuse/./frontend/src/stylesheets/components/pipelines.scss","webpack://@flowfuse/flowfuse/./frontend/src/pages/application/components/cells/DeploymentName.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/pipelines/DeployStageDialog.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/application/Settings/components/RoleRow.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/IconLink.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/components/ApplicationSummaryLabel.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/tiles/InstanceCounter.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Applications/components/Application.vue","webpack://@flowfuse/flowfuse/./frontend/src/stylesheets/components/applications-list.scss","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Applications/index.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/AuditLog.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Billing/components/UsageOverview.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/tiles/MediumTile.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Brokers/Clients/components/BrokerClient.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Brokers/Clients/dialogs/ClientDialog.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Brokers/Clients/index.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Brokers/Docs/components/TopicDocs.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Brokers/Docs/index.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Brokers/Hierarchy/components/TopicSegment.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Brokers/Hierarchy/TopicHierarchy/index.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Brokers/Hierarchy/TopicInspector/PayloadMetadata.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Brokers/Hierarchy/components/TopicSchema.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Brokers/Hierarchy/components/suggestions/TopicSuggestion.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Brokers/Hierarchy/TopicInspector/PayloadSchema.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Brokers/Hierarchy/TopicInspector/index.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Brokers/Hierarchy/index.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Brokers/components/BrokerForm.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Home/components/DashboardSection.vue","webpack://@flowfuse/flowfuse/./frontend/src/ui-components/components/kebab-menu/KebabMenu.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/instance/components/InstanceMinimalStatusBadge.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Home/components/RecentlyModifiedDevices.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Home/components/RecentlyModifiedInstances.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Home/index.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Library/Blueprints.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Library/Registry/components/RegistryEntry.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Library/Registry/Index.vue","webpack://@flowfuse/flowfuse/./frontend/src/stylesheets/components/code-previewer.scss","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Library/TeamLibrary.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Members/components/ApplicationPermissionsRow.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Performance/components/CPUUtilizationCell.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Pipelines/components/TeamPipelineStage.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Pipelines/components/TeamPipeline.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Pipelines/index.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Settings/TeamAdminTools.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Tables/Table/TableExplorer/components/RowsHeader.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Tables/Table/TableExplorer/components/table-cells/text-cell.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Tables/Table/TableExplorer/components/RowsList.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Tables/Table/TableExplorer/drawers/components/TableColumn.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Tables/Table/TableExplorer/drawers/CreateTable.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Tables/Table/TableExplorer/drawers/TableSchema.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Tables/Table/TableExplorer/components/TablesList.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Tables/Table/TableExplorer/index.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Tables/Table/components/TableCredentials.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Tables/components/ChooseDatabase.vue","webpack://@flowfuse/flowfuse/./frontend/src/pages/team/Tables/components/DatabaseForm.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/multi-step-forms/instance/steps/TeamStep.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/dialogs/EducationModal.vue","webpack://@flowfuse/flowfuse/./frontend/src/layouts/Docs.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/ExpertButton.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/NotificationsButton.vue","webpack://@flowfuse/flowfuse/./frontend/src/stylesheets/components/team-list.scss","webpack://@flowfuse/flowfuse/./frontend/src/components/TeamSelection.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/global-search/components/ResultSection.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/global-search/components/SearchTrigger.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/global-search/GlobalSearch.vue","webpack://@flowfuse/flowfuse/./frontend/src/layouts/ImmersiveEditor.vue","webpack://@flowfuse/flowfuse/./frontend/src/stylesheets/components/notifications.scss","webpack://@flowfuse/flowfuse/./frontend/src/components/drawers/LeftDrawer.vue","webpack://@flowfuse/flowfuse/./frontend/src/components/drawers/RightDrawer.vue","webpack://@flowfuse/flowfuse/./frontend/src/stylesheets/pages/login.scss","webpack://@flowfuse/flowfuse/./frontend/src/stylesheets/layouts.scss","webpack://@flowfuse/flowfuse/./frontend/src/stylesheets/transitions.scss","webpack://@flowfuse/flowfuse/./frontend/src/stylesheets/animations.scss","webpack://@flowfuse/flowfuse/./frontend/src/stylesheets/components/charts.scss","webpack://@flowfuse/flowfuse/./frontend/src/stylesheets/common.scss","webpack://@flowfuse/flowfuse/<no source>","webpack://@flowfuse/flowfuse/./node_modules/tailwindcss/index.css","webpack://@flowfuse/flowfuse/./frontend/src/index.css","webpack://@flowfuse/flowfuse/./frontend/src/ui-components/components/Divider.vue","webpack://@flowfuse/flowfuse/./frontend/src/ui-components/components/form/ComboBox.vue"],"sourcesContent":["@use \"../../ui-components/stylesheets/ff-colors.scss\" as *;\n@use \"../../ui-components/stylesheets/ff-utility.scss\" as *;\n\n/*\n  ff-core contains styling on the fundamental HTML elements\n*/\n\n* {\n    box-sizing: border-box;\n}\n\n.transition-fade--color {\n    --time: 0.3s;\n    transition: var(--time) color, var(--time) background-color, var(--time) fill, var(--time) stroke, var(--time) border-color;\n    -webkit-transition: var(--time) color, var(--time) background-color, var(--time) fill, var(--time) stroke, var(--time) border-color;\n}\n\nhtml {\n    font-family: ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,\"Helvetica Neue\",Arial,\"Noto Sans\",sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\";\n    font-size: 14px;\n    line-height: 1.25rem;\n}\n\nbody {\n    margin: 0;\n    color: var(--ff-color-text);\n    position: relative;\n    overflow: hidden;\n}\n\n@layer base {\n    h1 {\n        font-weight: bold;\n        font-size: $ff-funit-xl;\n        line-height: 1.45 * $ff-funit-xl;\n        margin-bottom: $ff-unit-lg;\n    }\n\n    h2 {\n        font-weight: bold;\n        font-size: $ff-funit-lg;\n        line-height: 1.45 * $ff-funit-lg;\n        margin-bottom: $ff-unit-sm;\n    }\n\n    h3 {\n        font-size: $ff-funit-md;\n        line-height: 1.45 * $ff-funit-md;\n        margin-bottom: $ff-unit-sm;\n        font-weight: bold;\n    }\n\n    h4 {\n        font-size: $ff-funit-md;\n        line-height: 1.45 * $ff-funit-sm;\n        margin-bottom: $ff-unit-sm;\n        font-weight: 500;\n    }\n}\n\ncode {\n    border-radius: $ff-unit-sm;\n    border: 1px solid var(--ff-color-border);\n    padding: $ff-unit-md;\n}\n\np code {\n    padding: 0 $ff-unit-xs;\n}\n\n.ff-description {\n    font-size: $ff-funit-sm;\n    color: var(--ff-color-text-subtle);\n}\n\nhr {\n    color: var(--ff-color-border);\n}\n","/*\n    ff-utility contains functional variables and classes for padding/margin and sizings\n*/\n\n// screen sizes\n$ff-screen-sm: 640px;\n$ff-screen-md: 768px;\n$ff-screen-lg: 1024px;\n$ff-screen-xl: 1280px;\n$ff-screen-2xl: 1536px;\n\n// unit\n$ff-unit-xs: 3px;\n$ff-unit-sm: 6px;\n$ff-unit-md: 9px;\n$ff-unit-lg: 18px;\n$ff-unit-xl: 27px;\n\n// font unit\n$ff-funit-xs: 0.75rem;\n$ff-funit-sm: 0.85rem;\n$ff-funit-md: 1rem;\n$ff-funit-lg: 1.5rem;\n$ff-funit-xl: 2rem;\n\n@mixin truncate {\n  white-space: nowrap;\n  overflow: hidden;\n  text-overflow: ellipsis;\n}\n","@use \"../../ui-components/stylesheets/ff-colors.scss\" as *;\n@use \"../../ui-components/stylesheets/ff-utility.scss\" as *;\n\n/*\n  ff-core contains styling on the custom, ff components\n*/\n\n.ff-icon {\n  width: 20px;\n  height: 20px;\n  display: inline-block;\n}\n\n.ff-disabled {\n  pointer-events: none;\n  opacity: 0.4;\n}\n\n.ff-icon-sm {\n  width: 16px;\n  height: 16px;\n  display: inline-block;\n}\n\n.ff-icon-md {\n  width: 20px;\n  height: 20px;\n  display: inline-block;\n}\n\n.ff-icon-lg {\n  width: 24px;\n  width: 24px;\n  height: 24px;\n  display: inline-block;\n}\n\n/*\n  FF Breadcrumb\n*/\n\n.ff-nav-breadcrumb {\n  display: flex;\n  align-items: center;\n  a {\n    color: var(--ff-color-link);\n    font-weight: bold;\n    font-size: 1.25rem;\n    line-height: 1.75rem;\n    white-space: nowrap;\n    &:hover {\n      text-decoration: underline;\n    }\n  }\n}\n\n.ff-nav-breadcrumb--active span {\n  color: var(--ff-color-text);\n  font-weight: bold;\n  font-size: 1.25rem;\n  line-height: 1.75rem;\n  white-space: nowrap;\n}\n\n/*\n  FF Button\n*/\n\n// nested element\n.ff-btn--icon,\n.ff-btn--icon svg {\n  width: 20px;\n  height: 20px;\n}\n.ff-btn--icon-left {\n  margin-left: -$ff-unit-xs;\n  margin-right: $ff-unit-sm;\n}\n.ff-btn--icon-right {\n  margin-left: $ff-unit-sm;\n  margin-right: -$ff-unit-xs;\n}\n\n.ff-btn {\n  border-radius: $ff-unit-sm;\n  display: flex;\n  align-items: center;\n  font-size: $ff-funit-sm;\n  line-height: 20px;\n  height: 32px;\n  position: relative;\n\n  justify-content: center;\n  font-weight: bold;\n  height: auto;\n  padding: $ff-unit-sm 16px;\n  border: 0;\n\n  &.ff-btn-icon {\n    padding: $ff-unit-sm $ff-unit-md;\n  }\n\n  &.ff-btn-small {\n    padding: $ff-unit-xs $ff-unit-sm;\n    font-size: $ff-funit-xs;\n    line-height: 16px;\n    height: 24px;\n  }\n\n  &.ff-btn-medium {\n    padding: $ff-unit-xs $ff-unit-sm;\n    font-size: $ff-funit-xs;\n    line-height: 18px;\n    height: 26px;\n  }\n\n  &.ff-btn-fwidth {\n    justify-content: center;\n  }\n\n  &:hover {\n    cursor: pointer;\n  }\n\n  &--primary {\n    background-color: var(--ff-color-accent-strong);\n    border: 1px solid var(--ff-color-accent-strong);\n    color: var(--ff-color-text-on-brand);\n    &:hover, &.active {\n      background-color: var(--ff-color-accent);\n    }\n  }\n  &--secondary {\n    background-color: var(--ff-color-bg-app);\n    color: var(--ff-color-accent-text);\n    border: 1px solid var(--ff-color-border-accent);\n    &:hover, &.active {\n      background-color: var(--ff-color-accent);\n      border-color: var(--ff-color-accent);\n      color: var(--ff-color-text-on-brand);\n    }\n  }\n  &--tertiary {\n    color: var(--ff-color-accent-text);\n    &:hover, &.active {\n      background-color: var(--ff-color-accent);\n      color: var(--ff-color-text-on-brand);\n    }\n    &[disabled=\"\"] {\n      background-color: transparent !important;\n    }\n  }\n  &--danger {\n    color: var(--ff-color-text-on-brand);\n    background-color: var(--ff-color-danger);\n    border: 1px solid var(--ff-color-danger);\n    &:hover {\n      background-color: var(--ff-color-danger-strong);\n      color: var(--ff-color-text-on-brand);\n    }\n  }\n  &--secondary-danger {\n    color: var(--ff-color-danger-text);\n    background-color: var(--ff-color-bg-app);\n    border: 1px solid var(--ff-color-danger-text);\n    &:hover {\n      background-color: var(--ff-color-danger-strong);\n      color: var(--ff-color-text-on-brand);\n    }\n  }\n  &--tertiary-danger {\n    color: var(--ff-color-danger-text);\n    &:hover {\n      background-color: var(--ff-color-danger-strong);\n      color: var(--ff-color-text-on-brand);\n    }\n  }\n\n  &.ff-btn-small {\n    .ff-btn--icon,\n    .ff-btn--icon svg {\n      width: 16px;\n      height: 16px;\n    }\n    .ff-btn--icon-left {\n      margin-right: $ff-unit-xs;\n    }\n    .ff-btn--icon-right {\n      margin-left: $ff-unit-xs;\n    }\n  }\n\n  &.ff-btn-fwidth {\n    .ff-btn--icon {\n      position: absolute;\n    }\n    .ff-btn--icon-left {\n      left: 0;\n      padding-left: $ff-unit-lg;\n    }\n    .ff-btn--icon-left {\n      right: 0;\n      padding-right: $ff-unit-lg;\n    }\n  }\n\n  &:disabled,\n  &[disabled=true] {\n    cursor: not-allowed;\n    border-color: var(--ff-color-border);\n    color: var(--ff-color-text-subtle);\n    background-color: var(--ff-color-bg-emphasis);\n  }\n}\n\n/*\n  Drawer responsive context\n  Remove icon margins when buttons are in icon-only mode within narrow drawer\n*/\n@container drawer (max-width: 639px) {\n  .ff-btn-icon {\n    .ff-btn--icon-left {\n      margin-left: 0;\n      margin-right: 0;\n    }\n    .ff-btn--icon-right {\n      margin-left: 0;\n      margin-right: 0;\n    }\n  }\n}\n\n/*\n  Viewport responsive context (for pages outside drawer, e.g., instance overview)\n  Remove icon margins when viewport is narrow and buttons are in icon-only mode\n  Breakpoint matches Tailwind's sm breakpoint (640px)\n*/\n@media (max-width: 639px) {\n  .ff-btn-icon {\n    .ff-btn--icon-left {\n      margin-left: 0;\n      margin-right: 0;\n    }\n    .ff-btn--icon-right {\n      margin-left: 0;\n      margin-right: 0;\n    }\n  }\n}\n\n/*\n  FF Kebab Menu\n*/\n\n.ff-kebab-menu {\n  position: relative;\n  >svg {\n    width: 20px;\n    cursor: pointer;\n    &:hover {\n      fill: var(--ff-color-link);\n    }\n  }\n  &.active {\n    >svg {\n      fill: var(--ff-color-link);\n    }\n  }\n}\n\n.ff-kebab-options {\n  color: var(--ff-color-text);\n  position: absolute;\n  top: 24px;\n  border: 1px solid var(--ff-color-border-strong);\n  z-index: 1000;\n  padding: 0;\n  box-shadow: 0px 6px 9px 0px rgba(0, 0, 0, 0.22);\n  li {\n    min-width: 150px;\n    white-space: nowrap;\n    &.ff-kebab-item--danger {\n      color: var(--ff-color-danger);\n    }\n  }\n  &--left {\n    left: 0;\n  }\n  &--right {\n    right: calc(100% - 24px);\n  }\n}\n\n.ff-kebab-divider {\n  height: 1px;\n  background-color: var(--ff-color-bg-emphasis);\n  list-style: none;\n}\n\n/*\n  FF List Item\n*/\nli.ff-kebab-item {\n  padding: 12px 48px 12px 12px;\n  background-color: var(--ff-color-bg-app);\n  &:hover {\n    cursor: pointer;\n    background-color: var(--ff-color-bg-emphasis);\n  }\n  &.active {\n    background-color: var(--ff-color-bg-surface-raised);\n  }\n  &.disabled, :disabled {\n    pointer-events: none;\n    label {\n      opacity: 0.5;\n    }\n  }\n}\n\n/*\n  FF Input\n*/\n\n.ff-input {\n  &.ff-text-input {\n    border: 1px solid var(--ff-color-border-strong);\n    border-radius: $ff-unit-sm;\n    height: 32px;\n    width: 100%;\n    display: flex;\n    gap: 0px;\n    align-items: center;\n    background-color: var(--ff-color-bg-app);\n    border-color: var(--ff-color-border-strong);\n    svg {\n      width: 20px;\n      height: 20px;\n      margin-left: $ff-unit-sm;\n    }\n    input {\n      flex-grow: 1;\n      padding: $ff-unit-sm $ff-unit-md;\n      border-radius: $ff-unit-sm;\n      background: none;\n      height: 100%;\n      border-width: 0;\n      min-width: 0;\n      &[disabled] {\n        background-color: var(--ff-color-bg-surface);\n        color: var(--ff-color-text-disabled);\n      }\n      &:focus-visible {\n        border: none;\n        outline: none;\n      }\n    }\n    &:focus-within {\n      border-color: var(--ff-color-link);\n      border-width: 2px;\n      outline: none;\n      svg {\n        margin-left: $ff-unit-sm - 1px;\n      }\n    }\n  }\n}\n\n.ff-input--error {\n  &.ff-text-input {\n    border-color: var(--ff-color-danger);\n    border-width: 2px;\n    outline: none;\n  }\n}\n\n.ff-dropdown {\n  position: relative;\n  display: inline-block;\n  cursor: pointer;\n  &[disabled=\"true\"] {\n    cursor: not-allowed;\n    background-color: var(--ff-color-bg-surface);\n    color: var(--ff-color-text-subtle);\n  }\n  .ff-dropdown-selected {\n    background-color: var(--ff-color-bg-app);\n    border: 1px solid var(--ff-color-border-strong);\n    border-radius: $ff-unit-sm;\n    padding: $ff-unit-sm $ff-unit-md;\n    height: 32px;\n    width: 100%;\n    display: flex;\n    justify-content: space-between;\n    z-index: 2;\n\n    > .ff-dropdown-selected-item {\n      flex-shrink: 1;\n      white-space: nowrap;\n      overflow: hidden;\n      text-overflow: ellipsis;\n    }\n\n    > .ff-dropdown-icon {\n      flex-shrink: 0;\n    }\n  }\n  .ff-dropdown-options {\n    position: absolute;\n    top: 100%;\n    display: none;\n    max-height: 14rem;\n    overflow-y: auto;\n    box-shadow: 0px 6px 9px 0px rgba(0, 0, 0, 0.22);\n    .ff-dropdown-option {\n      padding: $ff-unit-sm $ff-unit-md;\n      background-color: var(--ff-color-bg-surface);\n      border-bottom: 1px solid var(--ff-color-border);\n      cursor: pointer;\n      transition: ease-in-out .3s;\n      &:hover {\n        background-color: var(--ff-color-bg-surface-raised);\n      }\n    }\n    &.ff-dropdown-options--full-width {\n      width: 100%;\n      border-width: 0 1px 1px 1px;\n    }\n    &.ff-dropdown-options--fit {\n      border-width: 1px;\n      min-width: none;\n      .ff-dropdown-option {\n        padding-right: $ff-unit-xl;\n      }\n    }\n    &.ff-dropdown-options--align-left {\n      left: 0;\n    }\n    &.ff-dropdown-options--align-right {\n      right: 0;\n    }\n  }\n  &.ff-dropdown--open {\n    .ff-dropdown-selected {\n      border-bottom-left-radius: 0;\n      border-bottom-right-radius: 0;\n    }\n    .ff-dropdown-options {\n      display: block;\n      z-index: 2;\n    }\n  }\n}\n\n.ff-checkbox,\n.ff-radio-btn {\n  position: relative;\n  padding-left: 25px;\n  display: flex;\n  cursor: pointer;\n  input[type=checkbox], input[type=radio] {\n    display: none;\n  }\n  label {\n    cursor: pointer;\n    font-weight: 500;\n    font-size: 0.875rem;\n    line-height: 1.25rem;\n  }\n  /* Create a custom checkbox */\n  .checkbox {\n    position: absolute;\n    top: 0;\n    left: 0;\n    height: 16px;\n    width: 16px;\n    margin-left: 4px;\n    border-radius: 4px;\n    background-color: transparent;\n    border: 1px solid;\n    border-color: var(--ff-color-border-strong);\n  }\n  &:hover:not([disabled=true]) {\n    .checkbox {\n      background-color: var(--ff-color-bg-emphasis);\n    }\n  }\n  &:hover:not([disabled=true]) {\n    .checkbox[checked=true] {\n      background-color: var(--ff-color-accent-strong);\n    }\n  }\n  &[disabled=true] {\n    cursor: not-allowed;\n    label, p {\n      color: var(--ff-color-text-subtle);\n    }\n  }\n  &[disabled=true] * {\n    pointer-events: none;\n  }\n  .checkbox {\n    &[checked=true] {\n      background-color: var(--ff-color-checkbox-checked-bg);\n      border-color: var(--ff-color-checkbox-checked-border);\n    }\n    &[checked=true]:after {\n      display: block;\n    }\n  }\n}\n\n.ff-checkbox {\n  .checkbox:after {\n    content: \"\";\n    display: none;\n    position: absolute;\n    left: 4.5px;\n    top: 1px;\n    width: 5px;\n    height: 10px;\n    border: solid var(--ff-color-checkmark-stroke);\n    border-width: 0 2px 2px 0;\n    -webkit-transform: rotate(45deg);\n    -ms-transform: rotate(45deg);\n    transform: rotate(45deg);\n  }\n}\n\n/**\n *  FF Toggle Switch\n */\n\n.ff-toggle-switch {\n    --ff-toggle-width: 54px;\n    --ff-toggle-translate: 20px;\n    position: relative;\n    display: inline-block;\n    width: var(--ff-toggle-width);\n    height: 34px;\n    cursor: pointer;\n    input {\n      display: none;\n    }\n    &.checked .ff-toggle-switch-slider {\n      background-color: var(--ff-color-toggle-track-on);\n    }\n    &.checked .ff-toggle-switch-slider .ff-toggle-switch-button{\n      -webkit-transform: translateX(var(--ff-toggle-translate));\n      -ms-transform: translateX(var(--ff-toggle-translate));\n      transform: translateX(var(--ff-toggle-translate));\n    }\n    &[disabled=true] {\n      cursor: not-allowed;\n      .ff-toggle-switch-slider {\n        pointer-events: none;\n        background-color: var(--ff-color-bg-emphasis);\n      }\n      .ff-toggle-switch-button {\n        background-color: var(--ff-color-bg-surface);\n      }\n      svg {\n        color: var(--ff-color-text-disabled);\n      }\n    }\n    &.ff-toggle-switch--small {\n      --ff-toggle-width: 30px;\n      --ff-toggle-translate: 12px;\n      height: 18px;\n      .ff-toggle-switch-button {\n        height: 14px;\n        width: 14px;\n        left: 2px;\n        bottom: 2px;\n      }\n    }\n}\n\n.ff-toggle-switch-slider {\n    position: absolute;\n    top: 0;\n    left: 0;\n    right: 0;\n    bottom: 0;\n    background-color: var(--ff-color-progress-track-neutral);\n    border-radius: 34px;\n    -webkit-transition: 0.4s;\n    transition: 0.4s;\n    svg {\n      padding: 3px;\n      width: 100%;\n      height: 100%;\n    }\n    &:hover {\n      background-color: var(--ff-color-accent-hover-bg) !important;\n    }\n}\n\n.ff-toggle-switch-button {\n    position: absolute;\n    content: \"\";\n    height: 26px;\n    width: 26px;\n    left: 4px;\n    bottom: 4px;\n    background-color: var(--ff-color-bg-app);\n    border-radius: 50%;\n    -webkit-transition: 0.4s;\n    transition: 0.4s;\n}\n\n/**\n *  FF Radio Group\n */\n\n.ff-radio-group {\n  .ff-radio-group-label {\n    display: block;\n  }\n  .ff-radio-group-options {\n    display: block;\n    margin-top: 1rem;\n  }\n  .ff-radio-group--horizontal {\n    display: flex;\n    .ff-radio-btn {\n      margin-right: $ff-funit-lg;\n    }\n  }\n  .ff-radio-group--vertical {\n    .ff-radio-btn {\n      display: block;\n      margin-bottom: $ff-funit-md;\n    }\n  }\n  .ff-radio-group--grid {\n    display: grid;\n    .ff-radio-btn {\n      display: block;\n      margin-bottom: $ff-funit-md;\n    }\n  }\n}\n\n.ff-radio-btn {\n  .checkbox {\n    position: absolute;\n    top: 0;\n    left: 0;\n    height: 16px;\n    width: 16px;\n    border-radius: 4px;\n    background-color: transparent;\n    border: 1px solid var(--ff-color-border-strong);\n    background-image: url(\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\")\n  }\n}\n\n.ff-tile-selection {\n  display: flex;\n  flex-wrap: wrap;\n  gap: $ff-unit-md;\n  .ff-tile-selection-option {\n    --ff-tile-selection-color: var(--ff-color-link-hover);\n    display: flex;\n    flex-direction: column;\n    background-color: var(--ff-color-bg-app);\n    font-size: 0.875rem;\n    border: 2px solid var(--ff-color-border-strong);\n    border-radius: $ff-unit-sm;\n    padding: 12px $ff-unit-lg;\n    width: 275px;\n    ul {\n      list-style: disc;\n      margin-top: 3px;\n      padding-left: 18px;\n      li {\n        line-height: 1.5rem;\n      }\n    }\n    &:last-child {\n      margin-right: 0;\n    }\n    &--header {\n      display: flex;\n      justify-content: space-between;\n      align-items: center;\n      h2 {\n        font-size: 14px;\n      }\n      > h2 {\n        display: flex;\n        align-items: center;\n        gap: $ff-unit-md;\n        padding-right: $ff-unit-xl;\n        margin: 0;\n        svg {\n          width: 20px;\n          height: 20px;\n          fill: var(--ff-color-text-subtle);\n          &.ff-tile-selection-option--edit {\n            cursor: pointer;\n            fill: var(--ff-color-link-hover);\n            &:hover {\n              fill: var(--ff-color-accent);\n            }\n          }\n        }\n      }\n    }\n    &--price {\n      text-align: center;\n      h2 {\n        margin: 0;\n        line-height: 1rem;\n      }\n      label {\n        font-size: $ff-funit-sm;\n      }\n    }\n    &--description {\n      flex-grow: 1;\n      margin-top: $ff-unit-sm;\n      padding-top: $ff-unit-sm;\n      border-top: 1px solid var(--ff-color-border-strong);\n    }\n    &--meta {\n      margin-top: $ff-unit-md;\n      padding-top: $ff-unit-md;\n      border-top: 1px solid var(--ff-color-border-strong);\n      >div {\n        display: flex;\n        justify-content: space-between;\n        width: 100%;\n        margin-bottom: $ff-unit-sm;\n        &:last-child {\n          margin-bottom: 0;\n        }\n      }\n    }\n    &:not(.editable):not(.disabled):hover {\n      cursor: pointer;\n      border: 2px solid var(--ff-tile-selection-color);\n    }\n    &.active {\n      border: 2px solid var(--ff-tile-selection-color);\n      .ff-tile-selection-option--header svg {\n        fill: var(--ff-tile-selection-color);\n      }\n    }\n    &.disabled {\n      opacity: 0.5;\n    }\n  }\n}\n\n/*\n  FF Data Table\n*/\n.ff-data-table {\n  width: 100%;\n  font-size: 0.875rem;\n  line-height: 1.25rem;\n  &--options {\n    margin-bottom: 6px;\n    display: flex;\n    gap: 6px;\n    justify-content: flex-end;\n  }\n  &--search.ff-text-input {\n    flex-grow: 1;\n    width: auto;\n    height: 34px;\n    border-radius: 6px;\n    background-color: var(--ff-color-table-search-bg);\n  }\n  &--actions {\n    display: flex;\n    gap: 6px;\n  }\n  &--data {\n    border-collapse: separate;\n    border-spacing: 0;\n    width: 100%;\n    .ff-data-table--cell {\n      .ff-icon {\n        margin: -1px 0;\n      }\n      .ff-icon-lg {\n        margin: -3px 0;\n      }\n      .ff-btn .ff-icon,\n      .ff-btn .ff-icon-lg {\n        margin: 0;\n      }\n      &:first-child {\n        padding-left: 16px;\n      }\n      &:last-child {\n        padding-right: 16px;\n      }\n    }\n    thead {\n      background: var(--ff-color-bg-app); // hides td borders when header is sticky\n      .ff-data-table--row .ff-data-table--cell {\n        &:first-child {\n          border-top-left-radius: 6px;\n        }\n        &:last-child {\n          border-top-right-radius: 6px;\n        }\n      }\n      .ff-data-table--cell {\n        padding: 9px 12px;\n        background-color: var(--ff-color-table-header-bg);\n        font-weight: 600;\n        transition: 0.3s background-color, 0.3s color;\n        -webkit-transition: 0.3s background-color, 0.3s color;\n        &.sortable {\n          >div {\n            display: flex;\n            justify-content: space-between;\n            gap: $ff-unit-md;\n          }\n          .ff-icon {\n            opacity: 0.2;\n          }\n          &:hover {\n            background-color: var(--ff-color-table-header-bg-hover);\n            cursor: pointer;\n            .ff-icon {\n              opacity: 0.5;\n            }\n          }\n        }\n        &.sorted {\n          background-color: var(--ff-color-table-header-bg-hover);\n          .ff-icon.icon-sorted {\n            opacity: 1;\n          }\n        }\n      }\n    }\n    tbody {\n      .ff-data-table--row {\n        &.collapsible {\n          td {\n            border-top: none;\n            border-bottom: none;\n            padding: 0;\n          }\n        }\n\n        &:last-of-type {\n          td {\n            border-bottom: 1px solid var(--ff-color-border-strong);\n          }\n        }\n\n        &:last-child {\n          .ff-data-table--cell {\n            border-bottom-width: 1px;\n            border-top-color: var(--ff-color-border);\n            &:first-child {\n              border-bottom-left-radius: 6px;\n            }\n            &:last-child {\n              border-bottom-right-radius: 6px;\n            }\n          }\n        }\n      }\n      .ff-data-table--cell {\n        padding: 12px 12px;\n        background-color: var(--ff-color-table-row-bg);\n        &.highlight {\n          background-color: var(--ff-color-table-row-highlight-bg);\n        }\n        &.status-message {\n          text-align: center;\n          color: var(--ff-color-text-subtle);\n        }\n      }\n      .selectable:hover .ff-data-table--cell,\n      .selectable:hover .ff-data-table--cell span svg.ff-icon {\n        cursor: pointer;\n        color: var(--ff-color-link);\n        background-color: var(--ff-color-table-row-bg-hover);\n      }\n      .selectable:hover .ff-data-table--cell button svg.ff-icon {\n        background-color: transparent;\n        color: inherit;\n      }\n    }\n  }\n  &--row {\n    td {\n      border-width: 1px 0px 0px;\n      border-style: solid;\n      border-color: var(--ff-color-border-strong);\n      &:first-child {\n        border-left-width: 1px;\n      }\n      &:last-child {\n        border-right-width: 1px;\n      }\n    }\n    &-actions {\n      display: flex;\n      gap: 12px;\n      justify-content: flex-end;\n    }\n  }\n\n  // Flatten last-row corners only when the pagination footer actually renders.\n  &:has(.ff-pagination) .ff-data-table--data tbody .ff-data-table--row:last-child {\n    .ff-data-table--cell {\n      &:first-child {\n        border-bottom-left-radius: 0;\n      }\n      &:last-child {\n        border-bottom-right-radius: 0;\n      }\n    }\n  }\n}\n\n.ff-data-table thead .ff-checkbox,\n.ff-data-table tbody .ff-checkbox,\n.ff-data-table tbody .ff-radio-btn {\n    display: inline;\n}\n\n.ff-loadmore {\n  width: 100%;\n  text-align: center;\n  span {\n    display: inline-block;\n    margin: auto;\n    color: var(--ff-color-link);\n    background-color: var(--ff-color-bg-app);\n    padding: $ff-unit-xs $ff-unit-md 4px;\n    border: 1px solid var(--ff-color-border-strong);\n    border-top: 0;\n    border-radius: 0 0 6px 6px;\n    &:hover {\n      cursor: pointer;\n      color: var(--ff-color-link-hover);\n    }\n  }\n}\n\n.ff-pagination {\n  display: flex;\n  align-items: center;\n  gap: $ff-unit-md;\n  flex-wrap: wrap;\n  padding: $ff-unit-sm $ff-unit-md;\n  border: 1px solid var(--ff-color-border-strong);\n  border-top: 0;\n  border-radius: 0 0 6px 6px;\n  background-color: var(--ff-color-bg-app);\n  font-size: 14px;\n  color: var(--ff-color-text-muted);\n\n  &--page-size {\n    display: flex;\n    align-items: center;\n    gap: $ff-unit-sm;\n    label { white-space: nowrap; }\n  }\n\n  .ff-listbox .ff-button {\n    min-height: 28px;\n    padding: 2px 8px;\n  }\n\n  &--summary {\n    margin-left: auto;\n  }\n\n  &--pages {\n    display: flex;\n    align-items: center;\n    gap: 2px;\n\n    .ff-btn {\n      min-width: 28px;\n    }\n  }\n\n  &--ellipsis {\n    display: inline-flex;\n    align-items: center;\n    justify-content: center;\n    min-width: 20px;\n    color: var(--ff-color-text-subtle);\n  }\n}\n\n/*\n  FF Dialog Box\n*/\n.ff-dialog-container {\n  position: fixed;\n  z-index: 110;\n  top: 0;\n  left: 0;\n  width: 100%;\n  height: 100%;\n  justify-content: center;\n  align-items: flex-start;\n  overflow-y: hidden;\n  background-color: var(--ff-color-overlay-backdrop);\n  &--open {\n    display: flex;\n  }\n  &--closed {\n    display: none;\n  }\n}\n\n.ff-dialog-box {\n  position: relative;\n  z-index: 2;\n  width: 100%;\n  max-width: 42rem;\n  margin: 90px auto;\n  display: flex;\n  flex-direction: column;\n  background-color: var(--ff-color-bg-app);\n  max-height: 85vh;\n  overflow: auto;\n  .ff-dialog {\n    &-header {\n      height: 48px;\n      line-height: 48px;\n      background-color: var(--ff-color-surface-dark);\n      border-bottom: 2px solid var(--ff-color-status-error-border);\n      padding: 0 $ff-unit-lg;\n      color: var(--ff-color-text-on-brand);\n      font-weight: 600;\n      display: flex;\n      justify-content: space-between;\n      gap: 12px;\n      &--light {\n        height: auto;\n        line-height: normal;\n        background-color: var(--ff-color-bg-app);\n        border-bottom: 1px solid var(--ff-color-border);\n        color: var(--ff-color-text);\n        padding: $ff-unit-md $ff-unit-lg;\n        align-items: center;\n      }\n    }\n    &-subheader {\n      opacity: 0.65;\n      display: block;\n    }\n    &-content {\n      padding: $ff-funit-lg;\n      overflow: auto;\n      max-height: 75vh;\n    }\n    &-actions {\n      display: flex;\n      justify-content: flex-end;\n      padding: $ff-unit-md $ff-unit-lg $ff-unit-lg $ff-unit-lg;\n      .ff-btn {\n        margin-left: $ff-funit-md;\n      }\n    }\n  }\n  &--wide {\n    max-width: 52rem;\n  }\n}\n\n/*\n  Help Tooltip\n*/\n\n.ff-help-tooltip {\n  &:hover {\n    path {\n      fill: var(--ff-color-link-hover);\n    }\n  }\n}\n\n/*\n  Notifications\n*/\n\n.ff-notification-pill {\n  background-color: var(--ff-color-danger-strong);\n  color: var(--ff-color-text-on-brand);\n  padding: $ff-unit-xs $ff-unit-md;\n  font-weight: 600;\n  border-radius: $ff-unit-sm;\n  font-size: $ff-funit-sm;\n}\n\n.ff-notification-toast {\n  position: relative;\n  background-color: var(--ff-color-bg-app);\n  border: 1px solid var(--ff-color-border-strong);\n  padding: $ff-unit-md $ff-unit-md $ff-unit-md $ff-unit-lg;\n  box-shadow: -$ff-unit-sm $ff-unit-sm $ff-unit-sm rgba(0, 0, 0, 0.55);\n  border-radius: 0 $ff-unit-sm $ff-unit-sm 0;\n  max-width: 475px;\n\n  &--bar {\n    height: 100%;\n    width: $ff-unit-md;\n    background-color: var(--ff-color-surface-dark);\n    display: block;\n    position: absolute;\n    top: 0;\n    left: 0;\n  }\n\n  &--info {\n    border-color: var(--ff-color-border-strong);\n    .ff-notification-toast--bar {\n      background-color: var(--ff-color-progress-track-neutral);\n    }\n  }\n  &--warning {\n    border-color: var(--ff-color-status-error-border);\n    .ff-notification-toast--bar {\n      background-color: var(--ff-color-status-error-border);\n    }\n  }\n  &--confirmation {\n    border-color: var(--ff-color-status-success-border);\n    .ff-notification-toast--bar {\n      background-color: var(--ff-color-status-success-border);\n    }\n  }\n\n  &--message {\n    display: grid;\n    grid-template-columns: 1fr 20px;\n    gap: $ff-unit-lg;\n    >div {\n      padding-top: 2px;\n    }\n  }\n\n  &--close {\n    cursor: pointer;\n    position: relative;\n    display: flex;\n    max-height: 20px;\n    svg {\n      position: relative;\n      z-index: 2;\n      padding: 4px;\n    }\n    .countdown-wrapper {\n      z-index: 1;\n    }\n    &:hover {\n      color: var(--ff-color-accent);\n    }\n  }\n\n  &--actions {\n    margin-top: $ff-unit-md;\n    // margin-right: $ff-unit-xl;\n    display: flex;\n    justify-content: flex-end;\n  }\n}\n\n/* Countdown Pie */\n$countdown_size: 20px;\n\n.countdown-wrapper {\n  width: $countdown_size;\n  height: $countdown_size;\n  position: absolute;\n  top: 0;\n  left: 0;\n  background: var(--ff-color-bg-app);\n}\n\n.countdown-pie {\n  width: 50%;\n  height: 100%;\n  position: absolute;\n  background: var(--ff-color-bg-app);\n  border: 2px solid var(--ff-color-border-strong);\n}\n\n.countdown-spinner {\n  transform-origin: 100% 50%;\n  border-radius: ($countdown_size*0.5) 0 0 ($countdown_size*0.5);\n  z-index: 200;\n  border-right: none;\n}\n\n.countdown-filler {\n  border-radius: 0 ($countdown_size*0.5) ($countdown_size*0.5) 0;\n  z-index: 100;\n  border-left: none;\n  left: 50%;\n  opacity: 0;\n}\n\n.countdown-mask {\n  width: 50%;\n  height: 100%;\n  position: absolute;\n  z-index: 300;\n  opacity: 1;\n  background: inherit;\n}\n\n@keyframes rota {\n  0%   { transform: rotate(0deg); }\n  100% { transform: rotate(360deg); }\n}\n\n@keyframes fill {\n  0%        { opacity: 0; }\n  50%, 100% { opacity: 1; }\n}\n\n@keyframes mask {\n  0%        { opacity: 1; }\n  50%, 100% { opacity: 0; }\n}\n\n\n/*\n  FF Tabs\n*/\n.ff-tabs {\n  display: flex;\n  color: var(--ff-color-text);\n  .ff-tab-option {\n    display: flex;\n    align-items: center;\n    gap: 6px;\n    padding: $ff-unit-md;\n    &:hover {\n      color: var(--ff-color-link-hover);\n      cursor: pointer;\n    }\n    .ff-tab-icon {\n      height: 14px;\n      width: 14px;\n      flex-shrink: 0;\n      display: block;\n    }\n    .ff-tab-label {\n      white-space: nowrap;\n    }\n  }\n  &.ff-tabs--horizontal {\n    flex-direction: row;\n    .ff-tab-option {\n      margin-right: $ff-unit-md;\n      margin-bottom: $ff-unit-xs;\n      &.router-link-active,\n      &.ff-tab-option--active {\n        border-bottom: $ff-unit-xs solid var(--ff-color-tab-active);\n        margin-bottom: 0;\n      }\n    }\n  }\n  &.ff-tabs--vertical {\n    flex-direction: column;\n    .ff-tab-option {\n      border-left-width: $ff-unit-xs;\n      border-color: transparent;\n      margin-bottom: $ff-unit-md;\n      &.router-link-active,\n      &.ff-tab-option--active {\n        border-left: $ff-unit-xs solid var(--ff-color-tab-active);\n      }\n    }\n  }\n  .router-link-active,\n  .ff-tab-option--active {\n    color: var(--ff-color-link);\n  }\n}\n\n/*\n  FF Tabs - Overflow Handling\n*/\n.ff-tabs-wrapper {\n  position: relative;\n  display: flex;\n  align-items: center;\n\n  // When overflow is NOT enabled, apply ellipsis to tab labels\n  &:not(.ff-tabs-wrapper--overflow-enabled) {\n    .ff-tab-label {\n      overflow: hidden;\n      text-overflow: ellipsis;\n      min-width: 0;\n    }\n  }\n\n  &.ff-tabs-wrapper--overflow-enabled {\n    .ff-tab-option {\n      flex-shrink: 0; // Prevent tabs from shrinking, allow them to take full width\n    }\n\n    .ff-tabs__scroll-container {\n      overflow-x: auto;\n      overflow-y: hidden;\n      scroll-behavior: smooth;\n      scrollbar-width: none; // Hide scrollbar for Firefox\n      -ms-overflow-style: none; // Hide scrollbar for IE/Edge\n\n      // Hide scrollbar for Chrome, Safari, and Opera\n      &::-webkit-scrollbar {\n        display: none;\n      }\n    }\n  }\n\n  .ff-tabs__scroll-container {\n    flex: 1;\n    min-width: 0;\n  }\n\n  .ff-tabs__overflow-button {\n    position: absolute;\n    top: 0;\n    bottom: 0;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    padding: $ff-unit-sm;\n    background: var(--ff-color-bg-app);\n    border: none;\n    border-right: 1px solid var(--ff-color-border-strong);\n    color: var(--ff-color-text-subtle);\n    cursor: pointer;\n    z-index: 10;\n    transition: all 0.2s ease;\n\n    .ff-icon {\n      width: 16px;\n      height: 16px;\n\n      &.ff-icon-second {\n        margin-left: -10px;\n      }\n    }\n\n    &:hover {\n      background: var(--ff-color-bg-surface-raised);\n      color: var(--ff-color-text-muted);\n      border-color: var(--ff-color-border-strong);\n    }\n\n    &:active {\n      background: var(--ff-color-bg-emphasis);\n    }\n\n    &--left {\n      left: 0;\n      border-right: 1px solid var(--ff-color-border-strong);\n      border-left: none;\n    }\n\n    &--right {\n      right: 0;\n      border-left: 1px solid var(--ff-color-border-strong);\n      border-right: none;\n    }\n  }\n\n  .ff-tabs__menu-wrapper {\n    position: relative;\n    display: inline-block;\n\n    &--left {\n      position: absolute;\n      left: 0;\n      top: 0;\n      bottom: 0;\n    }\n\n    &--right {\n      position: absolute;\n      right: 0;\n      top: 0;\n      bottom: 0;\n    }\n  }\n\n  .ff-tabs__dropdown {\n    position: absolute;\n    top: calc(100% + 4px);\n    background: var(--ff-color-bg-app);\n    border: 1px solid var(--ff-color-border-strong);\n    border-radius: 4px;\n    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);\n    z-index: 100;\n    min-width: 150px;\n    max-width: 250px;\n\n    &--left {\n      left: 0;\n    }\n\n    &--right {\n      right: 0;\n    }\n  }\n\n  .ff-tabs__dropdown-item {\n    display: flex;\n    align-items: center;\n    gap: 6px;\n    padding: $ff-unit-sm $ff-unit-md;\n    color: var(--ff-color-text);\n    transition: background-color 0.2s ease;\n\n    .ff-tab-icon {\n      height: 14px;\n      width: 14px;\n      flex-shrink: 0;\n      display: block;\n    }\n\n    .ff-tab-label {\n      white-space: nowrap;\n      overflow: hidden;\n      text-overflow: ellipsis;\n      min-width: 0;\n    }\n\n    &:hover {\n      background: var(--ff-color-bg-surface-raised);\n      color: var(--ff-color-link-hover);\n      cursor: pointer;\n    }\n\n    &--active {\n      background: var(--ff-color-bg-surface-raised);\n      color: var(--ff-color-link-hover);\n      cursor: pointer;\n    }\n\n    &.router-link-active {\n      color: var(--ff-color-link);\n      background: var(--ff-color-status-info-surface);\n    }\n\n    &:first-child {\n      border-radius: 4px 4px 0 0;\n    }\n\n    &:last-child {\n      border-radius: 0 0 4px 4px;\n    }\n\n    &:only-child {\n      border-radius: 4px;\n    }\n  }\n}\n\n/*\n  FF Tooltip\n*/\n.ff-tooltip {\n  position: absolute;\n  z-index: 100;\n  font-weight: normal; // prevent parent overriding if embedded in hX\n  white-space: preserve-breaks;\n  height: fit-content;\n  background-color: var(--ff-color-surface-dark);\n  color: var(--ff-color-text-on-brand);\n  padding: 3px 12px;\n  border-radius: 3px;\n  opacity: 0;\n  pointer-events: none;\n  transition: 0.3s opacity;\n  -webkit-transition: 0.3s opacity;\n  &.ff-tooltip-right {\n    &::after {\n      content: \" \";\n      position: absolute;\n      top: 50%;\n      right: 100%; /* To the left of the tooltip */\n      margin-top: -5px;\n      border-width: 5px;\n      border-style: solid;\n      border-color: transparent var(--ff-color-tooltip-arrow) transparent transparent;\n    }\n  }\n  &.ff-tooltip-left {\n    &::after {\n      content: \" \";\n      position: absolute;\n      top: 50%;\n      left: 100%; /* To the right of the tooltip */\n      margin-top: -5px;\n      border-width: 5px;\n      border-style: solid;\n      border-color: transparent transparent transparent var(--ff-color-tooltip-arrow);\n    }\n  }\n  &.ff-tooltip-top {\n    transform: translateX(-50%);\n    &::after {\n      content: \" \";\n      position: absolute;\n      top: 100%; /* At the bottom of the tooltip */\n      left: 50%;\n      margin-left: -5px;\n      border-width: 5px;\n      border-style: solid;\n      border-color: var(--ff-color-tooltip-arrow) transparent transparent transparent;\n    }\n  }\n  &.ff-tooltip-bottom {\n    transform: translateX(-50%);\n    &::after {\n      content: \" \";\n      position: absolute;\n      bottom: 100%;  /* At the top of the tooltip */\n      left: 50%;\n      margin-left: -5px;\n      border-width: 5px;\n      border-style: solid;\n      border-color: transparent transparent var(--ff-color-tooltip-arrow) transparent;\n    }\n  }\n  &--visible {\n    opacity: 1;\n  }\n}\n.ff-tooltip-container {\n  position: relative;\n  vertical-align: bottom;\n  &:hover .ff-tooltip {\n    opacity: 1;\n  }\n}\n\n.ff-spinner {\n  display: inline-block;\n  width: 20px;\n  height: 20px;\n  color: var(--ff-color-text-subtle);\n  circle {\n    stroke: transparent;\n  }\n  animation: spin 1s ease-in-out infinite;\n  -webkit-animation: spin 1s ease-in-out infinite;\n  @keyframes spin {\n    to {\n      -webkit-transform: rotate(360deg);\n    }\n  }\n  @-webkit-keyframes spin {\n    to {\n      -webkit-transform: rotate(360deg);\n    }\n  }\n}\n",":root {\n    --ff-palette-black: black;\n    --ff-palette-white: white;\n\n    --ff-palette-grey-50:  #F9FAFB;\n    --ff-palette-grey-100: #F3F4F6;\n    --ff-palette-grey-200: #E5E7EB;\n    --ff-palette-grey-300: #D1D5DB;\n    --ff-palette-grey-400: #9CA3AF;\n    --ff-palette-grey-500: #6B7280;\n    --ff-palette-grey-600: #4B5563;\n    --ff-palette-grey-700: #374151;\n    --ff-palette-grey-800: #1F2937;\n    --ff-palette-grey-900: #111827;\n\n    --ff-palette-red-50:   #FFEBEB;\n    --ff-palette-red-100:  #FFC6C6;\n    --ff-palette-red-200:  #FF8D8D;\n    --ff-palette-red-300:  #F16F6F;\n    --ff-palette-red-400:  #ED4E4E;\n    --ff-palette-red-500:  #D12B2B;\n    --ff-palette-red-500B: #D82525;\n    --ff-palette-red-600:  #BC3838;\n    --ff-palette-red-700:  #AB1818;\n    --ff-palette-red-800:  #8F0001;\n    --ff-palette-red-900:  #760000;\n\n    --ff-palette-teal-50:  #E4FBFC;\n    --ff-palette-teal-100: #C4F3F5;\n    --ff-palette-teal-200: #B2EBEE;\n    --ff-palette-teal-300: #8CE2E7;\n    --ff-palette-teal-400: #74D4D9;\n    --ff-palette-teal-500: #50C3C9;\n    --ff-palette-teal-600: #35AAB0;\n    --ff-palette-teal-700: #31959A;\n    --ff-palette-teal-800: #397B7E;\n    --ff-palette-teal-900: #406466;\n\n    --ff-palette-blue-50:  #EFF6FF;\n    --ff-palette-blue-100: #DBEAFE;\n    --ff-palette-blue-200: #BFDBFE;\n    --ff-palette-blue-300: #93C5FD;\n    --ff-palette-blue-400: #60A5FA;\n    --ff-palette-blue-500: #3B82F6;\n    --ff-palette-blue-600: #2563EB;\n    --ff-palette-blue-700: #1D4ED8;\n    --ff-palette-blue-800: #1E40AF;\n    --ff-palette-blue-900: #1E3A8A;\n\n    --ff-palette-indigo-50:  #EEF2FF;\n    --ff-palette-indigo-100: #E0E7FF;\n    --ff-palette-indigo-200: #C7D2FE;\n    --ff-palette-indigo-300: #A5B4FC;\n    --ff-palette-indigo-400: #818CF8;\n    --ff-palette-indigo-500: #6366F1;\n    --ff-palette-indigo-600: #4F46E5;\n    --ff-palette-indigo-700: #4338CA;\n    --ff-palette-indigo-800: #3730A3;\n    --ff-palette-indigo-900: #312E81;\n\n    --ff-palette-green-50:  #ECFDF5;\n    --ff-palette-green-100: #D1FAE5;\n    --ff-palette-green-200: #A7F3D0;\n    --ff-palette-green-300: #6EE7B7;\n    --ff-palette-green-400: #34D399;\n    --ff-palette-green-500: #10B981;\n    --ff-palette-green-600: #059669;\n    --ff-palette-green-700: #047857;\n    --ff-palette-green-800: #065F46;\n    --ff-palette-green-900: #064E3B;\n\n    --ff-palette-yellow-10:  #FFFCF5;\n    --ff-palette-yellow-50:  #FFFBEB;\n    --ff-palette-yellow-100: #FEF3C7;\n    --ff-palette-yellow-200: #FDE68A;\n    --ff-palette-yellow-300: #FCD34D;\n    --ff-palette-yellow-400: #FBBF24;\n    --ff-palette-yellow-500: #F59E0B;\n    --ff-palette-yellow-600: #D97706;\n    --ff-palette-yellow-700: #B45309;\n    --ff-palette-yellow-800: #92400E;\n    --ff-palette-yellow-900: #78350F;\n\n    --ff-palette-purple-50:  #FAF5FF;\n    --ff-palette-purple-100: #F3E8FF;\n    --ff-palette-purple-200: #E9D5FF;\n    --ff-palette-purple-300: #D8B4FE;\n    --ff-palette-purple-400: #C084FC;\n    --ff-palette-purple-500: #A855F7;\n    --ff-palette-purple-600: #9333EA;\n    --ff-palette-purple-700: #7E22CE;\n    --ff-palette-purple-800: #6B21A8;\n    --ff-palette-purple-900: #581C87;\n\n    --ff-palette-bevel-top:    #363636;\n    --ff-palette-bevel-bottom: #202020;\n\n    --ff-palette-git-orange: #e46133;\n\n    --ff-palette-slate-1-dark:   #15161a;\n    --ff-palette-slate-3-dark:   #24262b;\n    --ff-palette-slate-4-dark:   #2b2d32;\n    --ff-palette-slate-6-dark:   #363a3f;\n    --ff-palette-slate-7-dark:   #43484e;\n    --ff-palette-slate-8-dark:   #5a6169;\n    --ff-palette-slate-10-dark:        #777b84;\n    --ff-palette-slate-10-strong-dark: #8a8d94;\n    --ff-palette-slate-11-soft-dark:   #9da1a8;\n    --ff-palette-slate-11-dark:        #b0b4ba;\n    --ff-palette-slate-12-dark:  #edeef0;\n\n    --ff-palette-indigo-3-dark:        #182449;\n    --ff-palette-indigo-6-dark:        #304384;\n    --ff-palette-indigo-7-dark:        #3a4f97;\n    --ff-palette-indigo-8-dark:        #435db1;\n    --ff-palette-indigo-9-dark:        #3e63dd;\n    --ff-palette-indigo-9-strong-dark: #4b6ce1;\n    --ff-palette-indigo-10-dark:       #5472e4;\n    --ff-palette-indigo-11-soft-dark:  #7a92f0;\n    --ff-palette-indigo-11-dark:       #9eb1ff;\n\n    --ff-palette-red-9-dark:    #e5484d;\n    --ff-palette-red-10-dark:   #ec5d5e;\n    --ff-palette-red-11-dark:   #f06f6f;\n    --ff-palette-blue-11-dark:  #70b8ff;\n    --ff-palette-blue-12-dark:  #c2e6ff;\n    --ff-palette-amber-11-dark: #ffb224;\n    --ff-palette-green-9-dark:  #4cc38a;\n\n}\n","@use \"./ff-colors.scss\" as *;\n\n:root,\n[data-theme=\"light\"] {\n    color-scheme: light;\n\n    --ff-color-bg-app:            var(--ff-palette-white);\n    --ff-color-bg-surface:        var(--ff-palette-grey-50);\n    --ff-color-bg-surface-raised: var(--ff-palette-grey-100);\n    --ff-color-bg-emphasis:       var(--ff-palette-grey-200);\n\n    --ff-color-table-header-bg:        var(--ff-color-bg-surface-raised);\n    --ff-color-table-header-bg-hover:  var(--ff-color-bg-emphasis);\n    --ff-color-table-row-bg:           var(--ff-color-bg-app);\n    --ff-color-table-row-bg-hover:     var(--ff-color-bg-surface);\n    --ff-color-table-row-highlight-bg: var(--ff-color-bg-surface);\n    --ff-color-table-search-bg:        var(--ff-color-bg-app);\n\n    --ff-color-text:              var(--ff-palette-grey-800);\n    --ff-color-text-muted:        var(--ff-palette-grey-700);\n    --ff-color-text-subtle:       var(--ff-palette-grey-500);\n    --ff-color-text-disabled:     var(--ff-palette-grey-400);\n    --ff-color-text-strong:       var(--ff-palette-grey-900);\n    --ff-color-text-deep:         var(--ff-palette-grey-600);\n    --ff-color-text-on-brand:     var(--ff-palette-white);\n\n    --ff-color-border-subtle:     var(--ff-palette-grey-100);\n    --ff-color-border:            var(--ff-palette-grey-200);\n    --ff-color-border-strong:     var(--ff-palette-grey-300);\n    --ff-color-border-accent:     var(--ff-palette-indigo-800);\n\n    --ff-color-accent-surface:    var(--ff-palette-indigo-50);\n    --ff-color-accent-light:      var(--ff-palette-indigo-300);\n    --ff-color-accent:            var(--ff-palette-indigo-600);\n    --ff-color-accent-hover:      var(--ff-palette-indigo-700);\n    --ff-color-accent-hover-bg:   var(--ff-palette-indigo-700);\n    --ff-color-accent-strong:     var(--ff-palette-indigo-800);\n    --ff-color-accent-text:       var(--ff-palette-indigo-800);\n    --ff-color-focus:             var(--ff-palette-indigo-500);\n\n    --ff-color-danger:            var(--ff-palette-red-500);\n    --ff-color-danger-text:       var(--ff-palette-red-500);\n    --ff-color-danger-strong:     var(--ff-palette-red-600);\n    --ff-color-danger-darker:     var(--ff-palette-red-700);\n    --ff-color-success:           var(--ff-palette-green-500);\n\n    --ff-color-link:              var(--ff-palette-blue-700);\n    --ff-color-link-hover:        var(--ff-palette-blue-900);\n\n    --ff-color-overlay-backdrop:    rgba(31, 41, 55, 0.3);\n    --ff-color-overlay-faint:       rgba(107, 114, 128, 0.2);\n    --ff-color-overlay-on-accent:   rgba(255, 255, 255, 0.3);\n    --ff-color-overlay-loading:     rgba(255, 255, 255, 0.5);\n\n    --ff-color-status-error-bg:        var(--ff-palette-red-100);\n    --ff-color-status-error-border:    var(--ff-palette-red-400);\n    --ff-color-status-error-text:      var(--ff-palette-red-700);\n    --ff-color-status-error-dot:       var(--ff-palette-red-600);\n\n    --ff-color-status-success-bg:      var(--ff-palette-green-200);\n    --ff-color-status-success-border:  var(--ff-palette-green-400);\n    --ff-color-status-success-text:    var(--ff-palette-green-700);\n    --ff-color-status-success-dot:     var(--ff-palette-green-400);\n\n    --ff-color-status-progress-bg:     var(--ff-palette-green-100);\n    --ff-color-status-progress-border: var(--ff-palette-green-300);\n\n    --ff-color-status-safe-bg:         var(--ff-palette-yellow-200);\n    --ff-color-status-safe-border:     var(--ff-palette-yellow-400);\n    --ff-color-status-safe-text:       var(--ff-palette-yellow-600);\n\n    --ff-color-status-warning-bg:      var(--ff-palette-yellow-400);\n    --ff-color-status-warning-border:  var(--ff-palette-yellow-700);\n    --ff-color-status-warning-text:    var(--ff-palette-yellow-900);\n\n    --ff-color-status-neutral-bg:      var(--ff-palette-white);\n    --ff-color-status-neutral-border:  var(--ff-palette-grey-300);\n    --ff-color-status-neutral-text:    var(--ff-palette-grey-600);\n    --ff-color-status-neutral-dot:     var(--ff-palette-grey-300);\n\n    --ff-color-status-info-bg:         var(--ff-palette-grey-100);\n    --ff-color-status-info-border:     var(--ff-palette-grey-300);\n    --ff-color-status-info-text:       var(--ff-palette-grey-700);\n\n    --ff-color-status-devmode-bg:      var(--ff-palette-purple-100);\n    --ff-color-status-devmode-border:  var(--ff-palette-purple-600);\n    --ff-color-status-devmode-text:    var(--ff-palette-purple-700);\n\n    --ff-color-status-info-surface:        var(--ff-palette-blue-100);\n    --ff-color-status-info-surface-border: var(--ff-palette-blue-300);\n\n    --ff-color-status-fleetmode-bg:      var(--ff-palette-teal-100);\n    --ff-color-status-fleetmode-border:  var(--ff-palette-teal-600);\n    --ff-color-status-fleetmode-text:    var(--ff-palette-teal-700);\n\n    --ff-color-surface-dark:               var(--ff-palette-grey-800);\n    --ff-color-surface-dark-text:          var(--ff-palette-grey-300);\n\n    --ff-color-code-surface:               var(--ff-palette-grey-800);\n    --ff-color-code-text:                  var(--ff-palette-grey-200);\n\n    --ff-color-log-system:                 var(--ff-palette-blue-400);\n    --ff-color-log-info:                   var(--ff-palette-grey-200);\n    --ff-color-log-warn:                   var(--ff-palette-yellow-300);\n    --ff-color-log-error:                  var(--ff-palette-red-300);\n\n    --ff-color-nav-divider:                var(--ff-palette-grey-600);\n    --ff-color-nav-divider-strong:         var(--ff-palette-grey-900);\n    --ff-color-nav-item-hover:             var(--ff-palette-grey-700);\n    --ff-color-nav-item-active:            var(--ff-palette-grey-600);\n    --ff-color-nav-item-active-text:       var(--ff-palette-teal-300);\n    --ff-color-nav-item-border:            var(--ff-palette-grey-800);\n\n    --ff-color-icon-git:                   var(--ff-palette-git-orange);\n    --ff-color-icon-flow-bg:               var(--ff-palette-grey-500);\n    --ff-color-icon-flow-fg:               var(--ff-palette-white);\n\n    --ff-color-banner-accent:              var(--ff-palette-red-500);\n    --ff-color-banner-warning-accent:      var(--ff-palette-red-800);\n\n    --ff-color-pill-ring:                  var(--ff-palette-red-700);\n    --ff-color-tab-active:                 var(--ff-palette-blue-700);\n\n    --ff-color-timeline-marker-border:     var(--ff-palette-blue-800);\n    --ff-color-timeline-marker-bg:         var(--ff-palette-white);\n\n    --ff-color-toggle-group-active-border: var(--ff-palette-blue-800);\n\n    --ff-color-chip-default-bg:            var(--ff-palette-indigo-300);\n    --ff-color-expert-drawer-bg:           var(--ff-palette-indigo-900);\n    --ff-color-blueprint-tile-bg:          var(--ff-palette-teal-100);\n    --ff-color-diff-highlight-bg:          var(--ff-palette-blue-300);\n\n    --ff-color-splash-brand-bg:            var(--ff-palette-teal-600);\n    --ff-color-splash-brand-bg-hover:      var(--ff-palette-teal-700);\n\n    --ff-color-progress-track:             var(--ff-palette-indigo-200);\n    --ff-color-progress-fill:              var(--ff-palette-indigo-400);\n    --ff-color-progress-track-neutral:     var(--ff-palette-grey-400);\n\n    --ff-color-tile-ribbon-shadow-red:     var(--ff-palette-red-900);\n    --ff-color-tile-ribbon-shadow-indigo:  var(--ff-palette-indigo-900);\n    --ff-color-tile-bevel-top:             var(--ff-palette-bevel-top);\n    --ff-color-tile-bevel-bottom:          var(--ff-palette-bevel-bottom);\n\n    --ff-color-checkmark-stroke:           var(--ff-palette-white);\n    --ff-color-checkbox-checked-bg:        var(--ff-color-accent);\n    --ff-color-checkbox-checked-border:    var(--ff-color-accent);\n    --ff-color-toggle-track-on:            var(--ff-palette-blue-900);\n}\n","@use \"./ff-colors.scss\" as *;\n\n[data-theme=\"dark\"] {\n    color-scheme: dark;\n\n    --ff-color-bg-app:            var(--ff-palette-slate-1-dark);\n    --ff-color-bg-surface:        var(--ff-palette-slate-1-dark);\n    --ff-color-bg-surface-raised: var(--ff-palette-slate-3-dark);\n    --ff-color-bg-emphasis:       var(--ff-palette-slate-4-dark);\n\n    --ff-color-table-header-bg:        var(--ff-color-bg-surface-raised);\n    --ff-color-table-header-bg-hover:  var(--ff-color-bg-emphasis);\n    --ff-color-table-row-bg:           var(--ff-color-bg-app);\n    --ff-color-table-row-bg-hover:     var(--ff-color-bg-surface);\n    --ff-color-table-row-highlight-bg: var(--ff-color-bg-surface);\n    --ff-color-table-search-bg:        var(--ff-color-bg-app);\n\n    --ff-color-text:              var(--ff-palette-slate-11-dark);\n    --ff-color-text-muted:        var(--ff-palette-slate-11-soft-dark);\n    --ff-color-text-subtle:       var(--ff-palette-slate-10-dark);\n    --ff-color-text-disabled:     var(--ff-palette-slate-8-dark);\n    --ff-color-text-strong:       var(--ff-palette-slate-12-dark);\n    --ff-color-text-deep:         var(--ff-palette-slate-10-strong-dark);\n    --ff-color-text-on-brand:     var(--ff-palette-slate-12-dark);\n\n    --ff-color-border-subtle:     var(--ff-palette-slate-4-dark);\n    --ff-color-border:            var(--ff-palette-slate-6-dark);\n    --ff-color-border-strong:     var(--ff-palette-slate-7-dark);\n    --ff-color-border-accent:     var(--ff-palette-indigo-8-dark);\n\n    --ff-color-accent-surface:    var(--ff-palette-indigo-3-dark);\n    --ff-color-accent-light:      var(--ff-palette-indigo-7-dark);\n    --ff-color-accent:            var(--ff-palette-indigo-8-dark);\n    --ff-color-accent-hover:      var(--ff-palette-indigo-11-dark);\n    --ff-color-accent-hover-bg:   var(--ff-palette-indigo-8-dark);\n    --ff-color-accent-strong:     var(--ff-palette-indigo-7-dark);\n    --ff-color-accent-text:       var(--ff-palette-indigo-11-soft-dark);\n    --ff-color-focus:             var(--ff-palette-indigo-8-dark);\n\n    --ff-color-danger:            var(--ff-palette-red-9-dark);\n    --ff-color-danger-text:       var(--ff-palette-red-11-dark);\n    --ff-color-danger-strong:     var(--ff-palette-red-10-dark);\n    --ff-color-danger-darker:     var(--ff-palette-red-10-dark);\n    --ff-color-success:           var(--ff-palette-green-9-dark);\n\n    --ff-color-link:              var(--ff-palette-blue-11-dark);\n    --ff-color-link-hover:        var(--ff-palette-blue-12-dark);\n\n    --ff-color-overlay-backdrop:    rgba(0, 0, 0, 0.6);\n    --ff-color-overlay-faint:       rgba(255, 255, 255, 0.06);\n    --ff-color-overlay-on-accent:   rgba(255, 255, 255, 0.3);\n    --ff-color-overlay-loading:     rgba(17, 17, 19, 0.5);\n\n    --ff-color-progress-track:         var(--ff-palette-slate-4-dark);\n    --ff-color-progress-fill:          var(--ff-palette-indigo-8-dark);\n    --ff-color-progress-track-neutral: var(--ff-palette-slate-7-dark);\n\n    --ff-color-status-error-bg:        rgba(237, 78, 78, 0.15);\n    --ff-color-status-error-border:    rgba(237, 78, 78, 0.4);\n    --ff-color-status-error-text:      var(--ff-palette-red-200);\n    --ff-color-status-error-dot:       var(--ff-palette-red-200);\n\n    --ff-color-status-success-bg:      rgba(76, 195, 138, 0.18);\n    --ff-color-status-success-border:  rgba(76, 195, 138, 0.45);\n    --ff-color-status-success-text:    var(--ff-palette-green-400);\n    --ff-color-status-success-dot:     var(--ff-palette-green-400);\n\n    --ff-color-status-progress-bg:     rgba(76, 195, 138, 0.12);\n    --ff-color-status-progress-border: rgba(76, 195, 138, 0.35);\n\n    --ff-color-status-safe-bg:         rgba(251, 191, 36, 0.15);\n    --ff-color-status-safe-border:     rgba(251, 191, 36, 0.4);\n    --ff-color-status-safe-text:       var(--ff-palette-yellow-400);\n\n    --ff-color-status-warning-bg:      rgba(251, 191, 36, 0.25);\n    --ff-color-status-warning-border:  rgba(251, 191, 36, 0.55);\n    --ff-color-status-warning-text:    var(--ff-palette-yellow-400);\n\n    --ff-color-status-neutral-bg:      var(--ff-color-bg-surface-raised);\n    --ff-color-status-neutral-border:  var(--ff-color-border);\n    --ff-color-status-neutral-text:    var(--ff-color-text-subtle);\n    --ff-color-status-neutral-dot:     var(--ff-color-text-subtle);\n\n    --ff-color-status-info-bg:         var(--ff-color-bg-surface-raised);\n    --ff-color-status-info-border:     var(--ff-color-border);\n    --ff-color-status-info-text:       var(--ff-color-text-muted);\n\n    --ff-color-status-devmode-bg:      rgba(168, 85, 247, 0.18);\n    --ff-color-status-devmode-border:  rgba(168, 85, 247, 0.45);\n    --ff-color-status-devmode-text:    var(--ff-palette-purple-400);\n\n    --ff-color-status-info-surface:        rgba(112, 184, 255, 0.12);\n    --ff-color-status-info-surface-border: rgba(112, 184, 255, 0.35);\n\n    --ff-color-status-fleetmode-bg:      rgba(80, 195, 201, 0.18);\n    --ff-color-status-fleetmode-border:  rgba(80, 195, 201, 0.45);\n    --ff-color-status-fleetmode-text:    var(--ff-palette-teal-500);\n\n    --ff-color-timeline-marker-border:     var(--ff-color-accent-light);\n    --ff-color-timeline-marker-bg:         var(--ff-color-bg-surface-raised);\n\n    --ff-color-toggle-track-on:            var(--ff-color-accent);\n\n    --ff-color-banner-accent:              var(--ff-color-danger);\n    --ff-color-banner-warning-accent:      var(--ff-color-danger);\n\n    --ff-color-pill-ring:                  var(--ff-color-danger);\n    --ff-color-tab-active:                 var(--ff-color-accent);\n    --ff-color-toggle-group-active-border: var(--ff-color-accent);\n\n    --ff-color-chip-default-bg:            var(--ff-color-bg-surface-raised);\n    --ff-color-blueprint-tile-bg:          var(--ff-color-bg-surface-raised);\n    --ff-color-diff-highlight-bg:          var(--ff-color-accent-surface);\n\n    --ff-color-splash-brand-bg:            var(--ff-palette-teal-600);\n    --ff-color-splash-brand-bg-hover:      var(--ff-palette-teal-700);\n\n    --ff-color-checkbox-checked-bg:        var(--ff-color-accent);\n    --ff-color-checkbox-checked-border:    var(--ff-color-accent);\n    --ff-color-checkmark-stroke:           var(--ff-palette-white);\n\n    --ff-color-code-surface:               var(--ff-palette-grey-800);\n    --ff-color-code-text:                  var(--ff-palette-grey-200);\n    --ff-color-log-system:                 var(--ff-palette-blue-400);\n    --ff-color-log-info:                   var(--ff-palette-grey-200);\n    --ff-color-log-warn:                   var(--ff-palette-yellow-300);\n    --ff-color-log-error:                  var(--ff-palette-red-300);\n    --ff-color-surface-dark:               var(--ff-palette-grey-800);\n    --ff-color-surface-dark-text:          var(--ff-palette-grey-300);\n\n    --ff-color-nav-divider:                var(--ff-palette-grey-600);\n    --ff-color-nav-divider-strong:         var(--ff-palette-grey-900);\n    --ff-color-nav-item-active:            var(--ff-palette-grey-600);\n    --ff-color-nav-item-active-text:       var(--ff-palette-teal-400);\n    --ff-color-nav-item-border:            var(--ff-palette-grey-800);\n    --ff-color-nav-item-hover:             var(--ff-palette-grey-700);\n\n    --ff-color-icon-flow-bg:               var(--ff-palette-grey-500);\n    --ff-color-icon-flow-fg:               var(--ff-palette-white);\n    --ff-color-icon-git:                   var(--ff-palette-git-orange);\n    --ff-color-expert-drawer-bg:           var(--ff-palette-indigo-900);\n    --ff-color-tile-bevel-bottom:          var(--ff-palette-bevel-bottom);\n    --ff-color-tile-bevel-top:             var(--ff-palette-bevel-top);\n    --ff-color-tile-ribbon-shadow-indigo:  var(--ff-palette-indigo-900);\n    --ff-color-tile-ribbon-shadow-red:     var(--ff-palette-red-900);\n}\n","$icon-view-source:   \"data:image/svg+xml;utf8,<svg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg' fill='none'><path stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M9.5 5H9a2 2 0 0 0-2 2v2c0 1-.6 3-3 3 1 0 3 .6 3 3v2a2 2 0 0 0 2 2h.5m5-14h.5a2 2 0 0 1 2 2v2c0 1 .6 3 3 3-1 0-3 .6-3 3v2a2 2 0 0 1-2 2h-.5'/></svg>\";\n$icon-download-flow: \"data:image/svg+xml;utf8,<svg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path fill='black' d='M12 2a1 1 0 0 1 1 1v10.586l2.293-2.293a1 1 0 0 1 1.414 1.414l-4 4a1 1 0 0 1-1.414 0l-4-4a1 1 0 1 1 1.414-1.414L11 13.586V3a1 1 0 0 1 1-1zM5 17a1 1 0 0 1 1 1v2h12v-2a1 1 0 1 1 2 0v2a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-2a1 1 0 0 1 1-1z'/></svg>\";\n$icon-copy-flow:     \"data:image/svg+xml;utf8,<svg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path fill='black' d='M8 3a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1h2a2 2 0 0 1 2 2v15a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h2zm0 2H6v15h12V5h-2v1a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1V5zm6-1h-4v1h4V4z'/></svg>\";\n$icon-zoom-reset:    \"data:image/svg+xml;utf8,<svg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path fill='black' d='M10 4a6 6 0 1 0 0 12 6 6 0 0 0 0-12zm-8 6a8 8 0 1 1 14.32 4.906l5.387 5.387a1 1 0 0 1-1.414 1.414l-5.387-5.387A8 8 0 0 1 2 10z'/></svg>\";\n\n$toolbar-icons: (\n    'view-source':   $icon-view-source,\n    'download-flow': $icon-download-flow,\n    'copy-flow':     $icon-copy-flow,\n    'zoom-reset':    $icon-zoom-reset,\n);\n\n@each $scope in (ff-flow-viewer, ff-flow-compare-view, viewer) {\n    [data-theme=\"dark\"] .#{$scope} {\n        --red-ui-view-grid-color:                  var(--ff-color-border-subtle);\n        --red-ui-view-border:                      1px solid var(--ff-color-border);\n        --red-ui-node-border:                      var(--ff-color-border-strong);\n        --red-ui-node-port-background:             var(--ff-color-bg-emphasis);\n        --red-ui-workspace-button-color:           var(--ff-color-text);\n        --red-ui-workspace-button-background:      var(--ff-color-bg-surface-raised);\n        --red-ui-primary-background:               var(--ff-color-bg-app);\n\n        --red-ui-form-background:                  var(--ff-color-bg-surface);\n        --red-ui-form-placeholder-color:           var(--ff-color-text-subtle);\n        --red-ui-form-text-color:                  var(--ff-color-text);\n        --red-ui-form-text-color-disabled:         var(--ff-color-text-disabled);\n        --red-ui-form-input-border-color:          var(--ff-color-border);\n        --red-ui-form-input-border-selected-color: var(--ff-color-border-strong);\n        --red-ui-form-input-background:            var(--ff-color-bg-surface);\n        --red-ui-form-input-background-disabled:   var(--ff-color-bg-emphasis);\n        --red-ui-form-button-background:           var(--ff-color-bg-surface-raised);\n\n        --red-ui-diff-state-color:                 var(--ff-color-text-muted);\n        --red-ui-diff-state-prefix-color:          var(--ff-color-text-subtle);\n    }\n\n    [data-theme=\"dark\"] .#{$scope} .red-ui-tab {\n        background-color: var(--ff-color-bg-surface);\n        border-color: var(--ff-color-border);\n        color: var(--ff-color-text-muted);\n    }\n\n    [data-theme=\"dark\"] .#{$scope} .red-ui-tab:last-child {\n        border-right-color: var(--ff-color-border);\n    }\n\n    [data-theme=\"dark\"] .#{$scope} .red-ui-tab.active,\n    [data-theme=\"dark\"] .#{$scope} .red-ui-tab:hover {\n        background-color: var(--ff-color-bg-app);\n        border-bottom-color: var(--ff-color-bg-app);\n        color: var(--ff-color-text);\n    }\n\n    [data-theme=\"dark\"] .#{$scope} .diff-table thead tr {\n        border-bottom-color: var(--ff-color-border);\n    }\n\n    [data-theme=\"dark\"] .#{$scope} .diff-table td {\n        border-bottom-color: var(--ff-color-border-subtle);\n    }\n\n    [data-theme=\"dark\"] .#{$scope} code {\n        background-color: var(--ff-color-bg-surface-raised);\n        color: var(--ff-color-text);\n    }\n\n    @each $name, $svg in $toolbar-icons {\n        [data-theme=\"dark\"] .#{$scope} .toolbar .icon-button-bg.#{$name} {\n            background-image: none;\n            position: relative;\n        }\n        [data-theme=\"dark\"] .#{$scope} .toolbar .icon-button-bg.#{$name}::before {\n            content: '';\n            position: absolute;\n            inset: 0;\n            background-color: var(--ff-color-text-muted);\n            -webkit-mask: url(\"#{$svg}\") no-repeat center / 16px 16px;\n            mask: url(\"#{$svg}\") no-repeat center / 16px 16px;\n        }\n    }\n\n    [data-theme=\"dark\"] .#{$scope} .toolbar .icon-button-bg:hover {\n        background-color: var(--ff-color-bg-surface-raised);\n    }\n}\n","// Dark-mode overrides for @vuepic/vue-datepicker.\n\n[data-theme=\"dark\"] .dp__theme_light {\n    --dp-background-color:        var(--ff-color-bg-surface);\n    --dp-text-color:              var(--ff-color-text);\n    --dp-hover-color:             var(--ff-color-bg-surface-raised);\n    --dp-hover-text-color:        var(--ff-color-text);\n    --dp-hover-icon-color:        var(--ff-color-text);\n\n    --dp-primary-color:           var(--ff-color-accent);\n    --dp-primary-disabled-color:  var(--ff-color-border-strong);\n    --dp-primary-text-color:      var(--ff-color-text-on-brand);\n\n    --dp-secondary-color:         var(--ff-color-text-subtle);\n\n    --dp-border-color:            var(--ff-color-border);\n    --dp-menu-border-color:       var(--ff-color-border);\n    --dp-border-color-hover:      var(--ff-color-border-strong);\n    --dp-border-color-focus:      var(--ff-color-focus);\n\n    --dp-disabled-color:          var(--ff-color-bg-emphasis);\n    --dp-disabled-color-text:     var(--ff-color-text-disabled);\n\n    --dp-scroll-bar-background:   var(--ff-color-bg-surface-raised);\n    --dp-scroll-bar-color:        var(--ff-color-border-strong);\n\n    --dp-icon-color:              var(--ff-color-text-muted);\n    --dp-marker-color:            var(--ff-color-accent);\n\n    --dp-success-color:           var(--ff-color-success);\n    --dp-danger-color:            var(--ff-color-danger);\n\n    --dp-tooltip-color:           var(--ff-color-bg-emphasis);\n}\n","// Dark-mode highlight.js — GitHub Dark syntax palette verbatim; kept as hex (not FF tokens) because syntax themes are curated opaque palettes.\n\n[data-theme=\"dark\"] {\n    pre code.hljs {\n        display: block;\n        overflow-x: auto;\n        padding: 1em;\n    }\n    code.hljs {\n        padding: 3px 5px;\n    }\n    .hljs {\n        color: #c9d1d9;\n        background: #0d1117;\n    }\n    .hljs-doctag,\n    .hljs-keyword,\n    .hljs-meta .hljs-keyword,\n    .hljs-template-tag,\n    .hljs-template-variable,\n    .hljs-type,\n    .hljs-variable.language_ {\n        color: #ff7b72;\n    }\n    .hljs-title,\n    .hljs-title.class_,\n    .hljs-title.class_.inherited__,\n    .hljs-title.function_ {\n        color: #d2a8ff;\n    }\n    .hljs-attr,\n    .hljs-attribute,\n    .hljs-literal,\n    .hljs-meta,\n    .hljs-number,\n    .hljs-operator,\n    .hljs-variable,\n    .hljs-selector-attr,\n    .hljs-selector-class,\n    .hljs-selector-id {\n        color: #79c0ff;\n    }\n    .hljs-regexp,\n    .hljs-string,\n    .hljs-meta .hljs-string {\n        color: #a5d6ff;\n    }\n    .hljs-built_in,\n    .hljs-symbol {\n        color: #ffa657;\n    }\n    .hljs-comment,\n    .hljs-code,\n    .hljs-formula {\n        color: #8b949e;\n    }\n    .hljs-name,\n    .hljs-quote,\n    .hljs-selector-tag,\n    .hljs-selector-pseudo {\n        color: #7ee787;\n    }\n    .hljs-subst {\n        color: #c9d1d9;\n    }\n    .hljs-section {\n        color: #1f6feb;\n        font-weight: bold;\n    }\n    .hljs-bullet {\n        color: #f2cc60;\n    }\n    .hljs-emphasis {\n        color: #c9d1d9;\n        font-style: italic;\n    }\n    .hljs-strong {\n        color: #c9d1d9;\n        font-weight: bold;\n    }\n    .hljs-addition {\n        color: #aff5b4;\n        background-color: #033a16;\n    }\n    .hljs-deletion {\n        color: #ffdcd7;\n        background-color: #67060c;\n    }\n}\n","@use \"../../ui-components/stylesheets/ff-colors.scss\" as *;\n\n.ff--immersive-editor-wrapper {\n  position: relative;\n  height: 100%;\n  display: flex;\n  flex: 1;\n\n  .ff-layout--immersive--content {\n    flex: 1;\n    position: relative;\n    min-width: 0;\n    height: 100%;\n  }\n\n  .editor-wrapper {\n    height: 100%;\n    width: 100%;\n    position: absolute;\n    display: flex;\n    flex-direction: column;\n    align-content: center;\n    justify-content: center;\n  }\n  .editor-wrapper .status-wrapper {\n    margin-top: -64px;\n  }\n\n  .tabs-wrapper {\n    position: fixed;\n    left: 0;\n    top: 60px;\n    width: 0;\n    height: calc(100% - 60px);\n    background: var(--ff-color-bg-app);\n    transform: translateX(-100%);\n    transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;\n    display: flex;\n    flex-direction: column;\n    overflow: hidden;\n    container-type: inline-size;\n    container-name: drawer;\n    z-index: 1;\n\n    > .drawer-content {\n      display: flex;\n      flex-direction: column;\n      flex: 1;\n      overflow: hidden;\n      opacity: 0;\n      pointer-events: none;\n      transition: opacity 0.2s;\n    }\n\n    main {\n      overflow-y: auto;\n      overflow-x: hidden;\n    }\n\n    > .drawer-content > .header {\n      padding: 0;\n      display: flex;\n      line-height: 1.5;\n      border-bottom: 1px solid var(--ff-color-border);\n      background: var(--ff-color-bg-app);\n      z-index: 10;\n\n      .logo {\n        display: flex;\n\n        a {\n          display: flex;\n          align-items: center;\n          color: var(--ff-color-text-subtle);\n          gap: 4px;\n          padding: 0 15px;\n          transition: all 0.2s ease;\n\n          .ff-btn--icon {\n            width: 16px;\n            height: 16px;\n          }\n\n          img {\n            height: 20px;\n          }\n\n          &:hover {\n            background: var(--ff-color-bg-surface-raised);\n            color: var(--ff-color-text-muted);\n          }\n\n          &:active {\n            background: var(--ff-color-bg-emphasis);\n          }\n        }\n      }\n\n      .tabs {\n        flex: 1;\n        padding: 0 15px 0 0;\n        min-width: 0;\n\n        .ff-tab-option {\n          white-space: nowrap;\n          overflow: hidden;\n          text-overflow: ellipsis;\n        }\n      }\n\n      .side-actions {\n        display: flex;\n        justify-content: flex-end;\n        align-items: center;\n        color: var(--ff-color-text-subtle);\n        flex-shrink: 0;\n        gap: 5px;\n      }\n    }\n\n    &.open {\n      transform: translateX(0);\n      box-shadow: 5px 0 8px rgba(0, 0, 0, 0.10);\n\n      > .drawer-content {\n        opacity: 1;\n        pointer-events: auto;\n      }\n    }\n  }\n\n  .resize-bar.resizing {\n    background-color: var(--ff-color-link);\n  }\n\n  &.resizing {\n    cursor: ew-resize;\n    -moz-user-select: none;\n    -webkit-user-select: none;\n    -ms-user-select: none;\n    user-select: none;\n\n    .tabs-wrapper {\n      transition: none;\n    }\n  }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-cookie-consent {\n    position: fixed;\n    bottom: 1rem;\n    left: 1rem;\n    z-index: 1000;\n    max-width: 28rem;\n    display: flex;\n    flex-direction: column;\n    gap: 0.75rem;\n    padding: 1rem 1.25rem;\n    background-color: var(--ff-color-bg-surface-raised);\n    color: var(--ff-color-text);\n    border: 1px solid var(--ff-color-border);\n    border-radius: 6px;\n    box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.25);\n\n    &--title {\n        font-size: 1rem;\n        font-weight: 600;\n        margin: 0;\n    }\n\n    &--text {\n        font-size: 0.875rem;\n        line-height: 1.4;\n        margin: 0;\n\n        a {\n            color: var(--ff-color-link);\n            text-decoration: underline;\n        }\n    }\n\n    &--actions {\n        display: flex;\n        justify-content: flex-end;\n        gap: 0.5rem;\n    }\n}\n","@use \"../../ui-components/stylesheets/ff-colors.scss\" as *;\n\n.ff-empty-state {\n    text-align: center;\n    padding-top: 64px;\n    padding-bottom: 64px;\n    background-color: var(--ff-color-bg-app);\n    border: 1px solid var(--ff-color-border);\n    border-radius: 3px;\n    >div {\n        margin: auto;\n    }\n    img {\n        margin: auto;\n    }\n    h1 {\n        font-size: 1.5rem;\n        line-height: 1.75rem;\n        margin: auto;\n        margin-top: 1.5rem;\n        margin-bottom: 1rem;\n        font-weight: 500;\n        max-width: 450px;\n    }\n    &--message {\n        max-width: 500px;\n        font-size: 1.1rem;\n        margin: auto;\n        margin-top: 1.25rem;\n        margin-bottom: 1.25rem;\n        p {\n            margin-bottom: 0.75rem;\n            line-height: 1.5rem;\n            color: var(--ff-color-text);\n        }\n    }\n    &--actions {\n        display: flex;\n        justify-content: center;\n        gap: 6px;\n    }\n    &--note {\n        display: flex;\n        justify-content: center;\n        margin-top: 1.75rem;\n        color: var(--ff-color-text-subtle);\n    }\n\n    &.ff-empty-state-feature-unavailable {\n        background-color: inherit;\n        border: none; \n    }\n}","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-team-type-tile {\n    position: relative;\n    border-radius: 6px;\n    border: 2px solid var(--ff-color-border-strong);\n    background: var(--ff-color-bg-app);\n    box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.25);\n    padding: 24px;\n    width: 100%;\n    max-width: 300px;\n    display: flex;\n    flex-direction: column;\n    justify-content: space-between;\n    ul {\n        list-style: disc;\n        padding-left: 16px;\n        li {\n            margin-bottom: 6px;\n        }\n    }\n}\n.trial-ribbon {\n    --ribbon-overlap: 8px;\n    display: flex;\n    justify-content: center;\n    align-items: center;\n    height: 30px;\n    left: calc(-1 * var(--ribbon-overlap));\n    line-height: 1.3;\n    width: calc(100% + 2 * var(--ribbon-overlap));\n    margin: 0;\n    position: absolute;\n    top: 8px;\n    color: var(--ff-color-text-on-brand);\n    // text-shadow: 0 1px 1px #111;\n    border-top: 1px solid var(--ff-color-tile-bevel-top);\n    border-bottom: 1px solid var(--ff-color-tile-bevel-bottom);\n    background: var(--ff-color-danger);\n    border-radius: 2px 2px 0 0;\n    box-shadow: 0 1px 2px rgba(0,0,0,0.3);\n}\n.trial-ribbon::before,\n.trial-ribbon::after {\n    content: '';\n    display: block;\n    width: 0;\n    height: 0;\n    position: absolute;\n    bottom: calc((-2 * var(--ribbon-overlap)) - 1px);\n    z-index: -10;\n    border: var(--ribbon-overlap) solid;\n    border-color: var(--ff-color-tile-ribbon-shadow-red) transparent transparent transparent;\n}\n.trial-ribbon::before {left: 0;}\n.trial-ribbon::after {right: 0;}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.not-found-wrapper {\n    background: none;\n    height: 100%;\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    justify-content: flex-start;\n\n    .not-found-container {\n        background: var(--ff-color-bg-app);\n        padding: 30px 150px;\n        margin: 50px;\n        border-radius: 20px;\n        box-shadow: 0 0 50px rgba(0, 0, 0, 0.2);\n\n        .image-wrapper {\n            display: flex;\n            justify-content: center;\n            margin: 30px 0;\n        }\n\n        .title {\n            margin: 30px 0;\n        }\n\n        .actions {\n            display: flex;\n            justify-content: center;\n            gap: 15px;\n            margin: 30px 0 15px;\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.wrapper {\n    flex: 1;\n\n    .info {\n        text-overflow: ellipsis;\n        overflow: hidden;\n        white-space: nowrap;\n        align-self:center;\n    }\n\n    .actions {\n        display: flex;\n        justify-content: flex-end;\n    }\n}\n\n// Hide info icon on small viewports (below 640px)\n@media (max-width: 639px) {\n    .ff-info-icon {\n        display: none;\n    }\n}\n\n// Also hide info icon when drawer is narrow (below 640px)\n@container drawer (max-width: 639px) {\n    .ff-info-icon {\n        display: none;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-listbox {\n  display: inline-block;\n  min-width: 200px;\n\n  &:focus-visible {\n    border: none;\n    outline: none;\n\n  }\n\n  .ff-button {\n    border: 1px solid var(--ff-color-border-strong);\n    padding: 5px 5px 5px 10px;\n    background: var(--ff-color-bg-app);\n\n    &:focus-visible {\n        outline: none;\n    }\n\n    &:focus {\n        border-color: var(--ff-color-link);\n    }\n\n    .icon {\n      svg {\n        width: 1.5rem;\n        height: 1.5rem;\n      }\n    }\n  }\n\n  &[data-headlessui-state=\"open\"] {\n    button {\n      border-bottom-left-radius: 0;\n      border-bottom-right-radius: 0;\n    }\n  }\n}\n\n.ff-options {\n    background: var(--ff-color-bg-surface);\n    box-shadow: 0 6px 9px 0 rgba(0, 0, 0, 0.22);\n    max-height: 28rem;\n    z-index: 200;\n    overflow-y: auto;\n    padding: 0;\n    border-left: 1px solid var(--ff-color-border);\n    border-right: 1px solid var(--ff-color-border);\n    border-bottom: 1px solid var(--ff-color-border);\n    &:focus-visible, &:focus {\n        outline: none;\n    }\n\n    .ff-option {\n        border-bottom: 1px solid var(--ff-color-border);\n        background-color: var(--ff-color-bg-surface);\n        cursor: pointer;\n\n        &:last-of-type {\n            border-bottom: none;\n        }\n\n        .ff-option-content {\n            padding: $ff-unit-sm $ff-unit-md;\n            border: 1px solid transparent;\n\n            &.selected {\n                background-color: var(--ff-color-bg-emphasis);\n            }\n            &.active {\n                border: 1px solid var(--ff-color-accent-light);\n            }\n            &.selected.active {\n                border-color: transparent;\n            }\n        }\n\n        &:hover {\n            background-color: var(--ff-color-bg-emphasis);\n            .ff-option-content.active {\n                border-color: transparent\n            }\n        }\n    }\n}\n","@use \"../../ui-components/stylesheets/ff-colors.scss\" as *;\n\n.ff-accordion {\n    margin-bottom: 24px;\n    &--button {\n        width: 100%;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        background-color: var(--ff-color-bg-surface-raised);\n        border: 1px solid var(--ff-color-border-strong);\n        padding: 6px 9px;\n        cursor: default;\n        label {\n            font-weight: 500;\n        }\n        span {\n            color: var(--ff-color-text-subtle);\n            font-size: 0.875rem;\n        }\n        .ff-icon {\n            margin-left: 12px;\n            transition: 0.3s transform;\n            -webkit-transition: 0.3s transform;\n        }\n        &:not([disabled]):hover{\n            background-color: var(--ff-color-bg-emphasis);\n            cursor: pointer;\n        }\n    }\n    &--content {\n        transition: max-height 0.6s ease-out;\n        .ff-audit-entry {\n            padding: 12px;\n            border: 1px solid var(--ff-color-border-strong);\n            border-top-width: 0;\n        }\n    }\n    &.open {\n        .ff-accordion--button .ff-icon.chevron {\n            transform: rotate(-90deg);\n        }\n    }\n}\n","@use \"../../ui-components/stylesheets/ff-colors.scss\" as *;\n@use \"../../ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-audit-entry {\n    display: grid;\n    grid-template-areas:\n        'time       author'\n        'entry       entry';\n    grid-gap: 0.25rem;\n    align-items: center;\n    label {\n        font-weight: 500;\n    }\n    span {\n        color: var(--ff-color-text-subtle);\n        font-weight: 400;\n        font-size: 0.875rem;\n        line-height: 1rem;\n        display: block;\n        width:100%;\n    }\n\n    svg path {\n        stroke-width: 2px;\n    }\n    &--error {\n        position: relative;\n        summary {\n            display: flex;\n            align-items: center;\n            list-style: none;\n            cursor: pointer;\n            font-size: 0.875rem;\n            color: var(--ff-color-text-subtle);\n            &::-webkit-details-marker {\n                display: none;\n            }\n        }\n        // the chevron down will only show when detail is opened\n        span .ff-icon {\n            position: absolute;\n            top: 3px;\n            left: 0;\n            background-color: var(--ff-color-bg-surface);\n            fill: var(--ff-color-text-subtle);\n        }\n        &:hover {\n            summary {\n                color: var(--ff-color-text);\n            }\n            span .ff-icon {\n                fill: var(--ff-color-text);\n            }\n        }\n    }\n}\n\n.ff-audit-entry-info {\n    grid-area: entry;\n}\n\n.ff-audit-entry-trigger, .ff-audit-entry-time {\n    color: var(--ff-color-text-subtle);\n    overflow-x: hidden;\n    white-space: nowrap;\n    text-overflow: ellipsis;\n}\n\n.ff-audit-entry-trigger {\n    grid-area: author;\n    text-align: right;\n}\n\n\n@media screen and (min-width: $ff-screen-lg) {\n    .ff-audit-entry {\n        grid-template-areas: 'time entry author';\n        grid-template-columns: min-content 1fr min-content;\n    }\n}\n","\n.ff-flow-viewer[data-v-bfea974c] {\n    height: 100%;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-blueprint-tile {\n    background-color: var(--ff-color-bg-app);\n    width: 250px;\n    border-width: 2px;\n\n    &.active {\n        border-width: 2px;\n        border-color: var(--ff-color-link);\n        transition: border-color .3s;\n    }\n\n    .ff-blueprint-tile--header {\n        position: relative;\n        height: 115px;\n\n        .ff-icon {\n            transform: scale(8);\n            position: absolute;\n            top: 70px;\n            transition: transform .3s;\n            &.alt-preview {\n                position: absolute;\n                height: 30px;\n                width: 30px;\n                transform: scale(1) !important;\n                top: 5px !important;\n                right: 5px !important;\n                stroke: none;\n                opacity: .7;\n                &:hover {\n                    cursor: zoom-in;\n                    color: var(--ff-color-link);\n                }\n            }\n        }\n\n        .ff-more-info {\n            position: absolute;\n            top: 5px;\n            left: 5px;\n        }\n    }\n\n    &.no-icon {\n        .ff-blueprint-tile--header {\n            .ff-icon:not(.alt-preview) {\n                transform: scale(4);\n                position: initial;\n            }\n        }\n    }\n\n    .ff-dialog-container {\n        .ff-dialog-box {\n            max-width: 75rem;\n\n            .ff-dialog-content {\n                padding: 0;\n            }\n\n            .ff-dialog-actions {\n                padding: 5px 15px;\n            }\n        }\n    }\n    &.interactive:hover {\n        border-width: 2px;\n        border-color: var(--ff-color-link);\n        .ff-blueprint-tile--header {\n            .ff-icon:not(.alt-preview) {\n                transform: scale(10);\n            }\n        }\n\n        &.no-icon {\n            .ff-blueprint-tile--header {\n                .ff-icon:not(.alt-preview) {\n                    transform: scale(6);\n                }\n            }\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-dialog-container {\n  .ff-dialog-content {\n    display: flex;\n    flex-direction: column;\n    gap: 10px;\n\n    .file-upload-section {\n      .file-row > div {\n        flex-direction: column;\n        align-items: baseline;\n      }\n\n      .ff-btn {\n        width: 100%;\n      }\n\n      .file-input {\n        display: flex;\n        gap: 5px;\n      }\n\n      .loaded-file {\n        display: flex;\n        gap: 5px;\n        align-items: center;\n        margin-top: 10px;\n\n        .clear {\n          cursor: pointer;\n          padding: 5px;\n\n          .ff-btn--icon {\n            width: 15px;\n            height: 15px;\n          }\n        }\n      }\n    }\n\n    .textarea-section {\n      .textarea-wrapper {\n        display: flex;\n        justify-content: space-between;\n\n        .clear {\n          font-weight: normal;\n          cursor: pointer;\n        }\n      }\n    }\n\n    .divider {\n      position: relative;\n      .line {\n        height: 1px;\n        width: 100%;\n        background: var(--ff-color-progress-track-neutral);\n        position: absolute;\n        top: 50%;\n        display: block;\n      }\n      .text {\n        background: var(--ff-color-bg-app);\n        padding: 5px;\n        position: relative;\n        z-index: 10;\n      }\n    }\n  }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.tools {\n  display: flex;\n  gap: 5px;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.inactive-team {\n    color: var(--ff-color-text-subtle);\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\ninput:disabled {\n  background-color: var(--ff-color-bg-app) !important;\n  opacity: .9;\n  -webkit-appearance: none;\n  -moz-appearance: none;\n  appearance: none;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\ntextarea:disabled {\n  background-color: var(--ff-color-bg-app);\n  opacity: .9;\n  -webkit-appearance: none;\n  -moz-appearance: none;\n  appearance: none;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-text-copier {\n  display: inline-flex;\n  align-items: center;\n  gap: 3px;\n  position: relative;\n  &:hover {\n    cursor: pointer;\n  }\n  .ff-icon-button {\n    display: inline-flex;\n    align-items: center;\n    justify-content: center;\n    padding: 4px;\n    border: none;\n    background: transparent;\n    border-radius: 4px;\n    cursor: pointer;\n    transition: all 0.2s ease;\n    color: var(--ff-color-accent-text);\n\n    &:hover {\n      color: var(--ff-color-text-on-brand);\n      background-color: var(--ff-color-accent);\n    }\n\n    &:active {\n      background-color: var(--ff-color-accent);\n    }\n\n    .ff-icon {\n      pointer-events: none;\n    }\n\n    .ff-icon-check {\n      color: var(--ff-color-success);\n    }\n  }\n  .ff-copied {\n    background-color: var(--ff-color-surface-dark);\n    color: var(--ff-color-text-on-brand);\n    padding: 3px;\n    border-radius: 3px;\n    position: absolute;\n    margin-top: -3px;\n    margin-left: 3px;\n    display: none;\n    z-index: 100;\n    left: 100%;\n  }\n  .ff-copied-left {\n    left: inherit;\n    right: 100%;\n  }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-data-table--cell textarea {\n    resize: vertical;\n    max-height: 10rem; /* 160px approx ~8 lines, after which user will need to scroll */\n    /* Below styles emulate the text control in a form row */\n    border: 1px solid var(--ff-color-border-strong);\n    border-radius: 6px;\n    /* height: 32px; */\n    padding: 6px;\n    min-height: 32px; /* align with item in cell-1*/\n    width: 100%;\n    display: flex;\n    gap: 0px;\n    align-items: center;\n    background-color: var(--ff-color-bg-app);\n    border-color: var(--ff-color-border-strong);\n}\n.ff-data-table--cell .env-cell-uneditable {\n    max-height: 10rem; /* 160px approx ~8 lines, after which user will need to scroll */\n    overflow: auto;\n    white-space: pre;\n    cursor: default;\n}\n.ff-data-table--cell .env-cell-uneditable input {\n    cursor: default;\n}\n.ff-data-table--cell div.uneditable {\n    cursor: default;\n}\n",".ff-admin-audit {\n    display: grid;\n    grid-template-columns: 2fr minmax(min-content, 240px);\n    gap: 24px;\n    \n    &.full-width {\n        display: flex;\n        grid-template-columns: none;\n        gap: 0;\n        \n        \n    }\n}\n","@use \"../../ui-components/stylesheets/ff-colors.scss\" as *;\n\n.ff-info-card h3 {\n    display: flex;\n    gap: 9px;\n    margin-bottom: 12px;\n    align-items: center;\n}\n\n.ff-info-card h3 svg {\n    width: 1.5rem;\n    height: 1.5rem;\n}\n\n.ff-info-card-content {\n    padding: 6px 12px;\n    background-color: var(--ff-color-bg-app);\n    border: 1px solid var(--ff-color-border-strong);\n}\n\n.ff-info-card-row {\n    min-height: 36px;\n}\n\n.ff-info-card .ff-info-card-row:not(:last-child) {\n    margin-bottom: 6px;\n    padding-bottom: 6px;\n    border-bottom: 1px solid var(--ff-color-border);\n}","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.popover-item {\n    display: flex;\n    align-items: center;\n    gap: 15px;\n    padding: 10px 20px;\n    cursor: pointer;\n\n    .icon {\n        padding: 5px;\n    }\n\n    .content {\n        display: flex;\n        flex-direction: column;\n\n        .description {\n            color: var(--ff-color-text-subtle);\n        }\n    }\n\n    &:hover {\n        background: var(--ff-color-bg-surface-raised);\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n\n.ff-icon-anim {\n    display: flex;\n    justify-content: center;\n    align-items: center;\n}\n\n.ff-icon-installing {\n    overflow: hidden;\n}\n\n.ff-icon-installing svg {\n    --anim-time: 0.75s;\n    position: relative;\n    color: currentColor;\n    animation: ff-icon-installing var(--anim-time) infinite linear;\n    animation-delay: calc(var(--anim-time) / 2);\n}\n\n@keyframes ff-icon-installing {\n  0% {\n    opacity: 0;\n    transform: translate(0, -100%);\n  }\n  50% {\n    opacity: 1;\n    transform: translate(0, 0);\n  }\n  100% {\n    opacity: 0;\n    transform: translate(0, 100%);\n  }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n\n.ff-icon-anim {\n    display: flex;\n    justify-content: center;\n    align-items: center;\n}\n\n.ff-icon-pulling {\n    overflow: hidden;\n}\n\n.ff-icon-pulling svg {\n    --anim-time: 0.75s;\n    position: relative;\n    color: currentColor;\n    animation: ff-icon-pulling var(--anim-time) infinite linear;\n    animation-delay: calc(var(--anim-time) / 2);\n}\n\n@keyframes ff-icon-pulling {\n  0% {\n    opacity: 0;\n    transform: translate(0, -100%);\n  }\n  50% {\n    opacity: 1;\n    transform: translate(0, 0);\n  }\n  100% {\n    opacity: 0;\n    transform: translate(0, 100%);\n  }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n\n.ff-icon-anim {\n    display: flex;\n    justify-content: center;\n    align-items: center;\n}\n\n.ff-icon-pushing {\n    overflow: hidden;\n}\n\n.ff-icon-pushing svg {\n    --anim-time: 0.75s;\n    position: relative;\n    color: currentColor;\n    animation: ff-icon-pushing var(--anim-time) infinite linear;\n    animation-delay: calc(var(--anim-time) / 2);\n}\n\n@keyframes ff-icon-pushing {\n  0% {\n    opacity: 0;\n    transform: translate(0, 100%);\n  }\n  50% {\n    opacity: 1;\n    transform: translate(0, 0);\n  }\n  100% {\n    opacity: 0;\n    transform: translate(0, -100%);\n  }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n\n.ff-icon-restarting svg {\n    --anim-time: 1s;\n    position: relative;\n    color: currentColor;\n    animation: ff-icon-restarting var(--anim-time) infinite linear;\n}\n\n@keyframes ff-icon-restarting {\n  0% {\n    opacity: 0.2;\n    transform: rotate(360deg);\n  }\n  33% {\n    opacity: 1;\n  }\n  66% {\n    opacity: 1;\n  }\n  100% {\n    opacity: 0.2;\n    transform: rotate(0deg);\n  }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-icon-anim {\n    display: flex;\n    justify-content: center;\n    align-items: center;\n}\n\n.ff-icon-starting {\n    --cell-width: 2px;\n    --cell-offset: calc(var(--cell-width) * 1.5);\n    --anim-time: 0.5s;\n    position: relative;\n    width: var(--cell-width);\n    height: var(--cell-width);\n    border-radius: 5px;\n    background-color: currentColor;\n    color: currentColor;\n    animation: ff-icon-starting var(--anim-time) infinite linear alternate;\n    animation-delay: calc(var(--anim-time) / 2);\n}\n\n.ff-icon-starting::before, .ff-icon-starting::after {\n    content: \"\";\n    display: inline-block;\n    position: absolute;\n    top: 0;\n}\n.ff-icon-starting::before {\n    left: calc(-1 * var(--cell-offset));\n    width: var(--cell-width);\n    height: var(--cell-width);\n    border-radius: 5px;\n    background-color: currentColor;\n    color: currentColor;\n    animation: ff-icon-starting var(--anim-time) infinite alternate;\n    animation-delay: 0s;\n}\n.ff-icon-starting::after {\n    left: var(--cell-offset);\n    width: var(--cell-width);\n    height: var(--cell-width);\n    border-radius: 5px;\n    background-color: currentColor;\n    color: currentColor;\n    animation: ff-icon-starting var(--anim-time) infinite alternate;\n    animation-delay: var(--anim-time);\n}\n\n@keyframes ff-icon-starting {\n  0% {\n    background-color: currentColor;\n  }\n  50%, 100% {\n    background-color: var(--ff-color-overlay-faint);\n  }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-device-overview {\n    h1 {\n        border-bottom: none;\n        margin-bottom: 12px;\n    }\n}\n.ff-device-overview-audit {\n    .ff-accordion {\n        margin-bottom: 12px;\n    }\n    .ff-accordion:last-child {\n        margin-bottom: 0;\n    }\n    .ff-accordion--content {\n        background-color: var(--ff-color-bg-app);\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.chart-wrapper {\n    flex: 1;\n    display: flex;\n\n    .chart {\n        flex: 1;\n        height: 100%;\n        width: 100%;\n        min-height: 250px;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.chart-wrapper {\n    flex: 1;\n    display: flex;\n\n    .chart {\n        flex: 1;\n        height: 100%;\n        width: 100%;\n        min-height: 250px;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-tab-selector {\n    display: flex;\n    align-items: flex-end;\n    margin-bottom: 15px;\n\n    .ff-tab-option {\n        flex: 1;\n        text-align: center;\n        border-bottom: 2px solid var(--ff-color-border);\n        padding-bottom: 5px;\n        cursor: pointer;\n        transition: border-color ease-in-out .3s;\n\n        &.active {\n            border-color: var(--ff-color-focus);\n        }\n    }\n\n    .ff-tab-separator {\n        flex-shrink: 0;\n        font-style: italic;\n        font-size: $ff-funit-sm;\n        color: var(--ff-color-text-subtle);\n        padding: 0 12px 5px;\n        border-bottom: 2px solid transparent; // keeps height aligned with tabs\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-option-tile-selector {\n    .ff-option-tile {\n        transition: border-color ease-in-out .3s;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.notice {\n    border: 1px solid var(--ff-color-status-warning-border);\n    background-color: var(--ff-color-status-warning-bg);\n    border-radius: $ff-unit-sm;\n    padding: $ff-unit-md;\n\n    .icon-wrapper {\n        min-width: 40px;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.device-list-accordion {\n    &.ff-accordion {\n        margin-bottom: 0;\n\n        button {\n            border-top: none;\n            border-left: none;\n            border-right: none;\n            background: transparent;\n            transition: background-color ease-in-out .3s;\n            padding-left: 0;\n            padding-right: 0;\n\n            label {\n                font-weight: normal;\n            }\n\n            &:hover {\n                background-color: transparent;\n            }\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-toggle-group {\n    display: flex;\n    gap: 15px;\n    align-items: center;\n\n    .title {\n        color: var(--ff-color-text);\n        font-weight: 400;\n    }\n\n    .toggle {\n        border: 1px solid var(--ff-color-toggle-group-active-border);\n        display: flex;\n        border-radius: 5px;\n\n        .inner-wrapper {\n            display: grid;\n            grid-template-columns: repeat(var(--button-count), 1fr);\n            border-radius: 4px;\n            border: 1px solid transparent;\n            position: relative;\n\n            .indicator {\n                position: absolute;\n                top: 0;\n                left: 0;\n                height: 100%;\n                background: var(--ff-color-accent-hover-bg);\n                border-radius: 4px;\n                transition: transform 0.2s ease;\n                z-index: 0;\n            }\n\n            a {\n                padding: 5px 10px;\n                border-radius: 4px;\n                transition: color 0.2s ease;\n                position: relative;\n                z-index: 1;\n                text-align: center;\n\n                &.router-link-active {\n                    color: var(--ff-color-text-on-brand);\n                }\n            }\n\n            .ff-btn {\n                background: transparent;\n                color: var(--ff-color-text-subtle);\n                border-color: transparent;\n                position: relative;\n                z-index: 1;\n                border-radius: 4px;\n                white-space: nowrap;\n\n                &:focus-visible {\n                    outline: 2px solid var(--ff-color-accent-hover);\n                    outline-offset: 1px;\n                }\n\n                &.active {\n                    color: var(--ff-color-text-on-brand);\n                }\n            }\n        }\n    }\n}\n\n// Show the label in full; ff-button clamps it by default.\n.ff-toggle-group .toggle .ff-btn .clipped-overflow {\n    display: block;\n    overflow: visible;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.page-fade-enter-active, .page-fade-leave-active {\n    transition: opacity .2s ease-in-out;\n}\n\n.page-fade-enter, .page-fade-leave-to {\n    opacity: 0;\n}\n\n// Viewport-based responsive behavior (matches Tailwind sm: breakpoint)\n// Hide button text on narrow viewports (< 640px)\n@media (max-width: 639px) {\n    .upload-snapshot-text,\n    .create-snapshot-text {\n        display: none;\n    }\n}\n\n// Show button text on wider viewports (>= 640px)\n@media (min-width: 640px) {\n    .upload-snapshot-text,\n    .create-snapshot-text {\n        display: inline;\n    }\n}\n\n// Container query for drawer context - responsive button behavior\n// Breakpoint matches DRAWER_MOBILE_BREAKPOINT constant in Editor/index.vue\n// These override viewport-based rules when inside the drawer\n@container drawer (max-width: 639px) {\n    // Hide text when drawer is narrow - icon-only mode\n    .upload-snapshot-text,\n    .create-snapshot-text {\n        display: none;\n    }\n}\n\n@container drawer (min-width: 640px) {\n    // Show text when drawer is wide enough\n    .upload-snapshot-text,\n    .create-snapshot-text {\n        display: inline;\n    }\n}\n\n","\n.line-num[data-v-e8e7296c] {\n    display: inline-block;\n    width: 3rem;\n    min-width: 3rem;\n    text-align: right;\n    padding: 0 0.4rem;\n    -webkit-user-select: none;\n       -moz-user-select: none;\n            user-select: none;\n}\n.diff-scroll-container[data-v-e8e7296c] {\n    overflow-x: auto;\n    padding-bottom: 0.5rem;\n}\n.diff-scroll-container:not(.diff-wrap) .diff-content[data-v-e8e7296c] {\n    width: -moz-max-content;\n    width: max-content;\n    min-width: 100%;\n}\n.diff-scroll-container:not(.diff-wrap) .diff-content > div[data-v-e8e7296c] {\n    min-width: 100%;\n}\n","\n/* The renderer applies -webkit-appearance:none but leaves the input box\n   with a white user-agent background. Make it transparent so only the\n   styled track is visible. */\n.ff-flow-compare-view[data-v-8dadb79a] input[type='range'].flow-compare-slider {\n    background: transparent;\n}\n\n/* Smooth opacity transitions for SVG flow layers and tab labels.\n   The renderer normally steps opacity via a slow JS loop; we bypass that\n   loop and let CSS handle the fade (see highlightCurrent). */\n.ff-flow-compare-view[data-v-8dadb79a] .flow-layer-0,\n.ff-flow-compare-view[data-v-8dadb79a] .flow-layer-1 {\n    transition: opacity 250ms ease;\n}\n.ff-flow-compare-view[data-v-8dadb79a] .red-ui-tab-label {\n    transition: opacity 250ms ease;\n}\n.ff-compare-main[data-v-8dadb79a] {\n    height: calc(100% - 2.5rem);\n}\n.ff-compare-main--with-nav[data-v-8dadb79a] {\n    height: calc(100% - 5rem);\n}\n.ff-resize-handle[data-v-8dadb79a] {\n    width: 4px;\n    cursor: col-resize;\n    background: transparent;\n    transition: background 0.15s;\n}\n.ff-resize-handle[data-v-8dadb79a]:hover {\n    background: var(--ff-color-diff-highlight-bg); /* blue-300 */\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.flow-viewer-wrapper {\n    display: flex;\n    flex: 1 1 auto;\n    min-height: 0;\n    flex-direction: column;\n    position: relative;\n\n    .overlay {\n        position: absolute;\n        top: 0;\n        left: 0;\n        right: 0;\n        bottom: 0;\n        background-color: var(--ff-color-overlay-loading);\n        display: flex;\n        justify-content: center;\n        align-items: center;\n        z-index: 1000;\n    }\n\n    .ff-flow-viewer {\n        display: flex;\n        flex-direction: column;\n        flex: 1 1 auto;\n        min-height: 0;\n        overflow: auto;\n        opacity: 1;\n        transition: ease-in-out .3s;\n\n        &.loading {\n            opacity: 0.5;\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n#snapshot-details-drawer {\n    flex: 1;\n\n    &, .container {\n        flex: 1;\n        display: flex;\n        flex-direction: column;\n        gap: 15px;\n        overflow: auto;\n    }\n\n    .description {\n        p {\n            white-space: break-spaces;\n        }\n    }\n\n    .flow-viewer {\n        .wrapper {\n            max-height: 250px;\n            overflow: auto;\n        }\n    }\n}\n","\ntbody .ff-data-table--row > .ff-data-table--cell > .deploy-this-snapshot-button {\n    display: none;\n}\ntbody tr.ff-data-table--row:hover .ff-data-table--cell .deploy-this-snapshot-button {\n    display: flex;\n}\n\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.graph {\n    min-width: 64px;\n    padding: 15px;\n    position: relative;\n    overflow: hidden;\n\n    .icon-wrapper {\n        min-width: 34px;\n        min-height: 35px;\n        border: 2px solid var(--ff-color-timeline-marker-border);\n        border-radius: 50%;\n        padding: 5px;\n        background: var(--ff-color-timeline-marker-bg);\n        position: relative;\n        z-index: 10;\n        color: var(--ff-color-link-hover);\n    }\n\n    .connector {\n        border: 1px solid var(--ff-color-toggle-group-active-border);\n        position: absolute;\n        left: 47%;  // compensates for border width\n        z-index: 5;\n\n        &.top {\n            top: -230px;\n            height: 250px;\n\n            &.snapshot {\n                transform: rotate(45deg);\n                top: -25%;\n                left: 80%;\n                height: 50px;\n                border-style: dashed;\n                border-color: var(--ff-color-border-strong);\n            }\n        }\n\n        &.bottom {\n            bottom: -200px;\n            height: 230px;\n            &.snapshot {\n                transform: rotate(-45deg);\n                top: 50%;\n                left: 83%;\n                height: 50px;\n                border-style: dashed;\n                border-color: var(--ff-color-border-strong);\n            }\n        }\n\n        &.through {\n            bottom: -100px;\n            height: 230px;\n            left: 30px;\n        }\n    }\n\n    &.is-snapshot {\n        padding-left: 45px;\n        min-width: 94px;\n\n        .connector {\n            &.top, &.bottom {\n                left: 65%;\n                border-color: var(--ff-color-border-strong);\n                border-style: dashed;\n            }\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.event {\n\n    .body {\n        padding: 15px 0;\n        overflow: hidden;\n\n        .content {\n            white-space: nowrap;\n            overflow: hidden;\n            text-overflow: ellipsis;\n\n            .title {\n                overflow: hidden;\n                text-overflow: ellipsis;\n\n                i {\n                    opacity: .5;\n                }\n\n                a {\n                    color: var(--ff-color-link);\n                }\n            }\n\n            .details {\n                font-size: 70%;\n                opacity: 0.8;\n            }\n        }\n\n        .username {\n            color: var(--ff-color-text-deep);\n        }\n    }\n\n    .actions {\n        padding: 15px 10px;\n        min-width: 40px;\n    }\n\n    &.is-snapshot {\n        background: var(--ff-color-bg-surface-raised);\n        color: var(--ff-color-text-subtle);\n    }\n\n    &.load-more {\n        background: var(--ff-color-bg-emphasis);\n        color: var(--ff-color-link);\n        cursor: pointer;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n#visual-timeline {\n    .timeline {\n        border: 1px solid var(--ff-color-border-strong);\n        border-radius: 3px;\n        overflow: auto;\n        li:last-child {\n            .connector.bottom {\n                display: none;\n            }\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n#assign-device-dialog {\n    .ff-tile-selection {\n        margin-top: 1rem;\n        display: grid;\n        grid-template-columns: repeat(2, 1fr);\n        gap: 1rem;\n    }\n    .ff-tile-selection-option {\n        width: auto;\n        margin: 0;\n    }\n}\n","\n.progress[data-v-72a37963] {\n    animation: progress-72a37963 1s infinite linear;\n}\n.left-right[data-v-72a37963] {\n    transform-origin: 0% 50%;\n}\n@keyframes progress-72a37963 {\n0% {\n        transform:  translateX(0) scaleX(0);\n}\n40% {\n        transform:  translateX(0) scaleX(0.4);\n}\n100% {\n        transform:  translateX(100%) scaleX(0.5);\n}\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.drawer-trigger {\n    display: flex;\n    align-items: center;\n    gap: 1px;\n    position: fixed;\n    top: 70px;\n\n    .ff-layout--immersive--fullscreen & {\n        top: 10px;\n    }\n\n    &.nr5-plus {\n        top: 63px;\n        padding: 8px;\n\n        .ff-btn--icon {\n            display: none;\n        }\n\n        .ff-layout--immersive--fullscreen & {\n            top: 4px;\n        }\n    }\n\n    left: 0;\n    z-index: 100;\n    padding: 8px 2px 8px 8px;\n\n    /* Colors - matching original drawer trigger */\n    color: var(--ff-color-text-subtle);\n    background: var(--ff-color-bg-app);\n    border: 1px solid var(--ff-color-border-strong);\n    border-left: none;\n\n    /* Reset button styles */\n    font: inherit;\n\n    /* Visual effects */\n    box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.10);\n    border-radius: 0 10px 10px 0;\n\n    /* Animation */\n    transform: translateX(0);\n    transition: transform ease-in-out 0.3s;\n\n    img {\n        height: 20px;\n    }\n\n    .ff-btn--icon {\n        color: var(--ff-color-text-subtle);\n        width: 20px;\n        height: 20px;\n    }\n\n    &.hidden {\n        // Move completely off-screen: own width (100%) + extra margin (20px)\n        transform: translateX(calc(-100% - 20px));\n    }\n\n    &:hover {\n        cursor: pointer;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.resize-bar {\n    position: absolute;\n    right: 0;\n    top: 0;\n    width: 6px;\n    height: 100%;\n    border-right: 1px solid var(--ff-color-border-strong);\n    background: transparent;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    z-index: 15;\n\n    &::before {\n        content: '...';\n        position: relative;\n        left: 3px;\n        writing-mode: vertical-rl;\n        line-height: 0.5;\n        letter-spacing: 4px;\n        color: var(--ff-color-text-subtle);\n    }\n\n    &:hover {\n        cursor: ew-resize;\n\n        &::before {\n            color: var(--ff-color-text-muted);\n        }\n    }\n\n    &.horizontal {\n        width: 100%;\n        height: 6px;\n\n        &::before {\n            writing-mode: horizontal-tb;\n        }\n\n        &:hover {\n            cursor: ns-resize;\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff--immersive-editor-wrapper .tabs-wrapper.drawer {\n    &.pinned {\n        position: relative;\n        left: auto;\n        top: auto;\n        height: 100%;\n        transform: none;\n        box-shadow: none;\n\n        &.open {\n            border-right: 1px solid var(--ff-color-border);\n\n            &.side-right {\n                border-right: none;\n                border-left: 1px solid var(--ff-color-border);\n            }\n        }\n    }\n\n    &:not(.pinned).side-right {\n        left: auto;\n        right: 0;\n        transform: translateX(100%);\n\n        &.open {\n            transform: translateX(0);\n            box-shadow: -5px 0 8px rgba(0, 0, 0, 0.10);\n        }\n    }\n\n    .ff-layout--immersive--fullscreen &:not(.pinned) {\n        top: 0;\n        height: 100%;\n    }\n\n    &.side-right .resize-bar {\n        left: 0;\n        right: auto;\n        border-right: none;\n        border-left: 1px solid var(--ff-color-border-strong);\n\n        &::before {\n            left: -3px;\n        }\n    }\n\n    .header,\n    .header--stacked {\n        min-height: 46px;\n    }\n\n    .drawer-header-btn {\n        align-self: stretch;\n        background: none;\n        border: none;\n        padding: 0 15px;\n        color: var(--ff-color-text-subtle);\n        font: inherit;\n        display: flex;\n        align-items: center;\n        cursor: pointer;\n        transition: all 0.2s ease;\n\n        .ff-btn--icon {\n            width: 18px;\n            height: 18px;\n        }\n\n        &:hover {\n            background: var(--ff-color-bg-surface-raised);\n            color: var(--ff-color-text-muted);\n        }\n\n        &:active {\n            background: var(--ff-color-bg-emphasis);\n        }\n    }\n\n    .editor-drawer-stack-title {\n        flex: 1;\n        font-weight: 600;\n        font-size: 14px;\n        color: var(--ff-color-text);\n        padding: 0 10px;\n        display: flex;\n        align-items: center;\n        min-width: 0;\n        overflow: hidden;\n        text-overflow: ellipsis;\n        white-space: nowrap;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.status-wrapper {\n  display: flex;\n  justify-content: center;\n}\n.status-wrapper .status-text {\n    font-size: 1.5rem;\n    font-weight: bold;\n    display: block;\n    text-align: center;\n    padding: 24px;\n    text-transform: capitalize;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff--immersive-editor-wrapper {\n    &.remote-instance {\n        .device-actions-dropdown {\n            padding: 6px 9px;\n\n            svg {\n                margin: 0;\n            }\n        }\n    }\n}\n","@use \"../../ui-components/stylesheets/ff-colors.scss\" as *;\n@use \"../../ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-blueprint-groups {\n    h4 {\n        border-bottom: 1px solid var(--ff-color-border);\n    }\n}\n\n.ff-blueprint-tile {\n    border: 2px solid var(--ff-color-border-strong);\n    border-radius: $ff-unit-sm;\n    display: flex;\n    flex-direction: column;\n    --tile-background: var(--ff-color-status-info-surface);\n    --tile-foreground: var(--ff-palette-blue-300);\n}\n\n.ff-blueprint-tile-sm {\n    display: inline-flex;\n    flex-direction: row;\n    border: 1px solid var(--ff-color-border-strong);\n    border-radius: $ff-unit-sm;\n    --tile-background: var(--ff-color-status-info-surface);\n    --tile-foreground: var(--ff-palette-blue-300);\n}\n\n.ff-blueprint-tile--header {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    background-color: var(--tile-background);\n    border-top-left-radius: 6px;\n    border-top-right-radius: 6px;\n    svg {\n        stroke: var(--tile-foreground);\n        path {\n            stroke-width: 1px;\n        }\n    }\n}\n\n.ff-blueprint-tile .ff-blueprint-tile--header {\n    overflow-y: hidden;\n    svg {\n        transform: scale(4);\n    }\n}\n\n.ff-blueprint-tile-sm .ff-blueprint-tile--header {\n    width: 32px;\n    border-radius: 0px;\n    border-top-left-radius: 6px;\n    border-bottom-left-radius: 6px;\n    svg {\n        transform: scale(1.5);\n    }\n}\n\n.ff-blueprint-tile--info {\n    padding: $ff-unit-md $ff-unit-xl $ff-unit-md $ff-unit-md;\n    label {\n        font-weight: 500;\n    }\n}\n\n.ff-blueprint-tile .ff-blueprint-tile--info {\n    padding: $ff-unit-md $ff-unit-sm;\n    display: flex;\n    flex-direction: column;\n    gap: $ff-unit-sm;\n    flex-grow: 1;\n    label {\n        font-size: 1.2rem;\n        font-weight: 600;\n    }\n}\n\n.ff-blueprint-tile--actions {\n    width: 100%;\n    display: flex;\n    gap: 5px;\n    padding: 0 $ff-unit-sm $ff-unit-md;\n    align-items: center;\n}\n\n.ff-blueprint-group--general {\n    --tile-background: var(--ff-color-status-info-surface);\n    --tile-foreground: var(--ff-palette-blue-300);\n}\n\n.ff-blueprint-group--manufacturing {\n    --tile-background: var(--ff-color-blueprint-tile-bg);\n    --tile-foreground: var(--ff-palette-teal-400);\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n@use '../../../stylesheets/components/blueprint-selection.scss' as *;\n.blueprint-group {\n  display: flex;\n  flex-wrap: wrap;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.blueprints-selector-dialog {\n    margin: 0 !important;\n    display: block;\n\n    .ff-dialog-box {\n      max-width: 90vw;\n      max-height: 80vh;\n      overflow: auto;\n\n      .ff-dialog-content {\n        display: flex;\n        flex-direction: row;\n        padding: 0;\n        overflow: auto;\n\n        .blueprints-container {\n          padding: 10px 10px 0;\n          overflow: auto;\n\n          .header {\n            padding: 0 0 10px;\n\n            h3 {\n              font-size: 30px;\n            }\n\n            p {\n              line-height: 20px;\n              padding-top: 10px;\n              color : var(--ff-color-text-subtle);\n            }\n          }\n\n          .blueprint-selection-wrapper {\n            overflow: auto;\n            padding: 10px 0;\n          }\n\n          .ff-blueprint-groups {\n            h4 {\n              font-size: 25px;\n              line-height: 1.5;\n              margin-top: 10px;\n            }\n\n            .blueprint-group {\n              display: flex;\n              flex-direction: row;\n              flex-wrap: wrap;\n\n              .ff-blueprint-tile {\n                width: auto;\n                max-width: 250px;\n                flex: 1 1 200px;\n              }\n            }\n          }\n        }\n\n        .flow-viewer-container {\n          overflow: hidden;\n\n          .viewer {\n            height: 100%;\n            width: 100%;\n          }\n        }\n\n      }\n\n      .ff-dialog-actions {\n        border-top: 1px solid var(--ff-color-border-strong);\n      }\n    }\n}\n\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.instance-name-confirmation {\n  margin: 5px 0;\n  display: flex;\n  gap: 5px;\n  color: var(--ff-color-success);\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-date-picker {\n    &.disabled {\n        input {\n            cursor: not-allowed !important;\n        }\n    }\n\n    .dp__action_button {\n        &.dp__action_select {\n            background: var(--ff-color-accent-hover-bg);\n\n            &[disabled] {\n                background: var(--ff-color-border-strong);\n            }\n        }\n    }\n}\n\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.maintenance {\n    .scheduled-upgrade {\n        .days-selector {\n            .day-selector {\n                border: 1px solid var(--ff-color-accent-light);\n                background: var(--ff-color-accent-surface);\n                padding: 5px 15px;\n                border-radius: 4px;\n                cursor: pointer;\n                transition: ease-in-out .3s;\n                flex: 1;\n                position: relative;\n                text-align: center;\n\n                &:hover {\n                    background: var(--ff-color-progress-track);\n                }\n\n                &.selected {\n                    background: var(--ff-color-progress-fill);\n                    color: var(--ff-color-text-on-brand);\n\n                    span {\n                        font-weight: 600;\n                    }\n                }\n\n                &.disabled {\n                    opacity: 0.5;\n                    cursor: not-allowed;\n                }\n            }\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.page-fade-enter-active, .page-fade-leave-active {\n    transition: opacity .2s ease-in-out;\n}\n\n.page-fade-enter, .page-fade-leave-to {\n    opacity: 0;\n}\n\n// Viewport-based responsive behavior (matches Tailwind sm: breakpoint)\n// Hide button text on narrow viewports (< 640px)\n@media (max-width: 639px) {\n  .upload-snapshot-text,\n  .create-snapshot-text {\n    display: none;\n  }\n}\n\n// Show button text on wider viewports (>= 640px)\n@media (min-width: 640px) {\n  .upload-snapshot-text,\n  .create-snapshot-text {\n    display: inline;\n  }\n}\n\n// Container query for drawer context - responsive button behavior\n// Breakpoint matches DRAWER_MOBILE_BREAKPOINT constant in Editor/index.vue\n// These override viewport-based rules when inside the drawer\n@container drawer (max-width: 639px) {\n  // Hide text when drawer is narrow - icon-only mode\n  .upload-snapshot-text,\n  .create-snapshot-text {\n    display: none;\n  }\n}\n\n@container drawer (min-width: 640px) {\n  // Show text when drawer is wide enough\n  .upload-snapshot-text,\n  .create-snapshot-text {\n    display: inline;\n  }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n#visual-timeline {\n    .timeline {\n        border: 1px solid var(--ff-color-border-strong);\n        border-radius: 3px;\n        overflow: auto;\n\n        li {\n\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.flex-break {\n    flex-basis: 100%;\n    height: 0;\n}\n.ff-file-upload {\n    width: 100%;\n    display: flex;\n    gap: $ff-unit-sm;\n    .ff-btn {\n        flex-shrink: 0;\n    }\n}\n.ff-file-upload--empty,\n.ff-file-upload--file {\n    flex-grow: 1;\n    border: 1px solid var(--ff-color-border-strong);\n    padding: $ff-unit-sm $ff-unit-md;\n    border-radius: $ff-unit-sm;\n    display: flex;\n    align-items: center;\n    gap: $ff-unit-sm;\n    white-space: nowrap;\n    text-overflow: ellipsis;\n    overflow-x: hidden;\n}\n.ff-file-upload--empty {\n    color: var(--ff-color-text-subtle);\n}\n.ff-file-upload--clear {\n    cursor: pointer;\n    &:hover {\n        color: var(--ff-color-link);\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-row-file {\n    position: relative;\n    &:hover {\n        color: var(--ff-color-link);\n    }\n}\n\n.not-available {\n  opacity: .4;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-dropdown.visibility-selector {\n  min-width: 130px;\n\n  .ff-button {\n    padding-left: 0;\n    padding-right: 0;\n    border: none;\n    background: none !important;\n  }\n\n  .ff-options {\n    border: 1px solid var(--ff-color-border) !important;\n\n    .ff-option {\n      background: var(--ff-color-bg-app) !important;\n      border: none !important;\n\n      &[disabled=\"true\"] {\n        color: var(--ff-color-text-deep);\n        cursor: not-allowed;\n      }\n\n      &:hover {\n        background-color: var(--ff-color-bg-emphasis) !important;\n      }\n    }\n  }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.banner-wrapper > div {\n  margin-top: 0;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-dialog-content .ff-devices-ul {\n    list-style-type: disc;\n    list-style-position: inside;\n    columns: 2;\n}\n.ff-dialog-content .ff-devices-ul li {\n    overflow: hidden;\n    text-overflow: ellipsis;\n    white-space: nowrap;\n}\n\n// Viewport-based responsive behavior (matches Tailwind sm: breakpoint)\n// Hide button text on narrow viewports (< 640px)\n@media (max-width: 639px) {\n  .target-snapshot-text,\n  .add-remote-instance-text,\n  .bulk-actions-text {\n    display: none;\n  }\n}\n\n// Show button text on wider viewports (>= 640px)\n@media (min-width: 640px) {\n  .target-snapshot-text,\n  .add-remote-instance-text,\n  .bulk-actions-text {\n    display: inline;\n  }\n}\n\n// Container query for drawer context - responsive button behavior\n// Breakpoint matches DRAWER_MOBILE_BREAKPOINT constant in Editor/index.vue\n// These override viewport-based rules when inside the drawer\n@container drawer (max-width: 639px) {\n  // Hide text when drawer is narrow - icon-only mode\n  .target-snapshot-text,\n  .add-remote-instance-text,\n  .bulk-actions-text {\n    display: none;\n  }\n\n  // Adjust button padding for icon-only mode to prevent excessive spacing\n  .ff-btn[data-action=\"change-target-snapshot\"],\n  .ff-btn[data-action=\"register-device\"] {\n    padding-left: 0.5rem;\n    padding-right: 0.5rem;\n  }\n}\n\n@container drawer (min-width: 640px) {\n  // Show text when drawer is wide enough\n  .target-snapshot-text,\n  .add-remote-instance-text,\n  .bulk-actions-text {\n    display: inline;\n  }\n}\n\n// Status bars layout - responsive to both viewport and container\n.devices-status-bars-container {\n  display: flex;\n  flex-direction: column;\n  gap: 0.5rem;\n}\n\n// On wider viewports (>= 640px), show side-by-side\n@media (min-width: 640px) {\n  .devices-status-bars-container {\n    flex-direction: row;\n\n    > * {\n      flex: 1;\n    }\n  }\n}\n\n// Container query for drawer context\n// Breakpoint matches DRAWER_MOBILE_BREAKPOINT constant in Editor/index.vue\n@container drawer (max-width: 639px) {\n  .devices-status-bars-container {\n    flex-direction: column;\n\n    > * {\n      flex: none;\n    }\n  }\n}\n\n@container drawer (min-width: 640px) {\n  .devices-status-bars-container {\n    flex-direction: row;\n\n    > * {\n      flex: 1;\n    }\n  }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.step-slider {\n    width: 100%;\n\n    .wrapper {\n        display: flex;\n        flex-direction: column;\n        align-items: center;\n        justify-content: space-between;\n        position: relative;\n        max-width: 600px;\n        margin: auto;\n        min-height: 50px;\n\n        .progress {\n            position: absolute;\n            left: 0;\n            top: 15px;\n            height: 4px;\n            background: var(--ff-color-border-strong);\n            transform: translateY(-50%);\n            z-index: 1;\n            display: flex;\n            justify-content: space-between;\n            overflow: hidden;\n\n            &.multi-step {\n                width: 99%;\n            }\n            &.single-step {\n                width: 0;\n            }\n\n            .st {\n                position: relative;\n\n                span {\n                    width: 1000px;\n                    height: 4px;\n                    background: var(--ff-color-accent);\n                    z-index: 3;\n                    display: block;\n                    right: 0;\n                    position: absolute;\n                    transform: translateX(-1000%);\n                    transition: transform .3s ease-in-out;\n                }\n\n                &.completed {\n                    span {\n                        transform: translateX(0);\n                    }\n                }\n            }\n        }\n\n        .steps {\n            width: 100%;\n            position: absolute;\n            left: 0;\n            top: 5px;\n            display: flex;\n\n            .step {\n                position: relative;\n                width: 20px;\n                height: 20px;\n                background-color: var(--ff-color-progress-track-neutral);\n                border-radius: 50%;\n                z-index: 2;\n                transition: ease-in-out .3s;\n\n                &.completed {\n                    background-color: var(--ff-color-accent);\n                }\n\n                &.active {\n                    transform: scale(1.1);\n                    background-color: var(--ff-color-accent);\n\n                    .label {\n                        color: var(--ff-color-accent-hover);\n                    }\n                }\n\n                &.disabled {\n                    cursor: default;\n                }\n\n                .label {\n                    position: absolute;\n                    left: 50%;\n                    transform: translate(-50%, 150%);\n                    font-weight: bold;\n                    color: var(--ff-color-text-disabled);\n                    transition: ease-in-out .3s;\n                }\n            }\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-multi-step-form {\n    position: relative;\n    max-height: 100%;\n    height: 100%;\n    overflow: auto;\n    display: flex;\n    flex-direction: column;\n\n    .loading-overlay {\n        position: absolute;\n        top: 0;\n        left:0;\n        width: 100%;\n        height: 100%;\n        background: var(--ff-color-overlay-loading);\n        z-index: 100;\n    }\n\n    .content {\n        flex: 1;\n        max-height: 100%;\n        display: flex;\n        flex-direction: column;\n        overflow: auto;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-select-application-step {\n    .app-tile {\n        padding: 12px;\n        border: 2px solid var(--ff-color-border-strong);\n        width: 100%;\n        border-radius: 6px;\n        cursor: pointer;\n        transition: ease-in-out .3s;\n\n        &:hover {\n            border-color: var(--ff-color-accent);\n        }\n\n        &.selected {\n            border-color: var(--ff-color-accent);\n        }\n\n        .header {\n            .title {\n\n            }\n\n            .counters {\n                color: var(--ff-color-text-subtle);\n                font-size: $ff-funit-xs;\n            }\n        }\n\n        .description {\n            color: var(--ff-color-text-subtle);\n            font-size: $ff-funit-sm;\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-duplication-step {\n    .form-group {\n        .title {\n            margin-bottom: 5px;\n            padding-bottom: 5px;\n            border-bottom: 1px solid var(--ff-color-border);\n            display: flex;\n            justify-content: space-between;\n\n            label {\n\n                font-weight: 500;\n            }\n\n            .actions {\n                display: flex;\n                gap: 5px;\n            }\n        }\n\n        p {\n            margin-top: 5px;\n\n            &:nth-of-type(2) {\n                color: var(--ff-color-text-subtle);\n                font-style: italic;\n            }\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-instance-step {\n    form {\n        .ff-instance-name {\n            .ff-input-wrapper {\n                button {\n                    padding: 5px 10px;\n                }\n            }\n        }\n    }\n}\n","\n.forge-log-offline-background[data-v-793e327d] {\n  background: repeating-linear-gradient(\n      -45deg,\n      var(--ff-color-border-strong),\n      var(--ff-color-border-strong) 10px,\n      var(--ff-color-code-surface) 10px,\n      var(--ff-color-code-surface) 20px\n  );\n}\n","@use \"../../ui-components/stylesheets/ff-colors.scss\" as *;\n@use \"../../ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-project-overview {\n    .ff-accordion--content {\n        transition: none;\n    }\n}\n\n.ff-instance-info {\n    margin-bottom: 12px;\n    h1 {\n        > div {\n            display: flex;\n            gap: 6px;\n        }\n        border-bottom: 0;\n        svg {\n            width: 20px;\n        }\n    }\n    table {\n        padding: 9px 12px;\n        background-color: var(--ff-color-bg-app);\n        border-radius: 0.25rem;\n        border-collapse: separate;\n        border-width: 1px;\n        border-color: var(--ff-color-border-strong);\n        td {\n            height: 36px;\n        }\n        tr:not(:last-child) {\n            td {\n                border-bottom: 1px solid var(--ff-color-border-subtle);\n            }\n        }\n    }\n    .ff-accordion {\n        margin-bottom: -1px;\n    }\n    .ff-accordion--content {\n        background-color: var(--ff-color-bg-app);\n    }\n    &:last-child {\n        margin-bottom: 0;\n    }\n}","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n@use \"../../stylesheets/pages/project.scss\" as *;\n\n// Container query for drawer context\n// Breakpoint matches DRAWER_MOBILE_BREAKPOINT constant in Editor/index.vue\n@container drawer (min-width: 640px) {\n  .ff-project-overview .grid {\n    grid-template-columns: repeat(2, minmax(0, 1fr));\n  }\n}\n\n// Ensure single column layout when container is smaller\n@container drawer (max-width: 639px) {\n  .ff-project-overview .grid {\n    grid-template-columns: repeat(1, minmax(0, 1fr));\n  }\n}\n\n// Info row: content left, action button(s) pushed right\n.info-row {\n  display: flex;\n  align-items: center;\n\n  &__content {\n    flex: 1;\n    min-width: 0;\n    overflow: hidden;\n    text-overflow: ellipsis;\n    white-space: nowrap;\n  }\n\n  &__action {\n    flex-shrink: 0;\n    display: inline-flex;\n    align-items: center;\n    justify-content: center;\n    padding: 4px;\n    border: none;\n    background: transparent;\n    border-radius: 4px;\n    cursor: pointer;\n    color: var(--ff-color-accent-text);\n    transition: color 0.15s ease, background-color 0.15s ease;\n\n    .ff-icon {\n      width: 20px;\n      height: 20px;\n\n      &.ff-icon-sm {\n        width: 16px;\n        height: 16px;\n      }\n    }\n\n    &:hover {\n      background-color: var(--ff-color-accent);\n      color: var(--ff-color-text-on-brand);\n    }\n\n    &:disabled {\n      cursor: not-allowed;\n      color: var(--ff-color-text-disabled);\n\n      &:hover {\n        background-color: transparent;\n        color: var(--ff-color-text-disabled);\n      }\n    }\n  }\n\n  .url-copier {\n    min-width: 0;\n\n    .text {\n      overflow: hidden;\n      text-overflow: ellipsis;\n      white-space: nowrap;\n    }\n\n  }\n}\n\n// Type field - ellipse from LEFT to show stack name\n.ff-instance-info table tr td.flex .grow {\n  direction: rtl;\n  text-align: left;\n  overflow: hidden;\n  text-overflow: ellipsis;\n  white-space: nowrap;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-socket-status {\n    display: flex;\n    align-items: center;\n    gap: 4px;\n}\n\n.ff-socket-status-icon {\n    width: 12px;\n    height: 12px;\n    border-radius: 50%;\n    background-color: var(--ff-color-progress-track-neutral);\n}\n\n.ff-socket-status-icon-connected {\n    background-color: var(--ff-color-success);\n}\n\n.ff-socket-status-icon-disconnected {\n    background-color: var(--ff-color-danger);\n}\n\n.ff-chart-section {\n    flex: 1;\n    display: flex;\n    flex-direction: column;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.action-button {\n  cursor: default;\n}\n\n// Container query for drawer context - responsive button behavior\n// Breakpoint matches DRAWER_MOBILE_BREAKPOINT constant in Editor/index.vue\n// When inside drawer, respond to drawer width instead of viewport\n@container drawer (min-width: 640px) {\n  .actions-text-container {\n    display: inline;\n  }\n}\n\n@container drawer (max-width: 639px) {\n  .actions-text-container {\n    display: none;\n  }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n// Container query for drawer context - responsive button behavior\n// Breakpoint matches DRAWER_MOBILE_BREAKPOINT constant in Editor/index.vue\n// When inside drawer, respond to drawer width instead of viewport\n@container drawer (min-width: 640px) {\n  .dashboard-link-text {\n    display: inline;\n  }\n}\n\n@container drawer (max-width: 639px) {\n  .dashboard-link-text {\n    display: none;\n  }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n// Split dropdown button: two halves styled as one cohesive element\n.editor-link-split {\n    display: inline-flex;\n    position: relative;\n}\n\n// Shared base styles for both halves (mirrors .ff-btn .ff-btn--secondary)\n.editor-link-split__action,\n.editor-link-split__toggle {\n    display: flex;\n    align-items: center;\n    gap: $ff-unit-xs;\n    font-size: $ff-funit-sm;\n    font-weight: 600;\n    line-height: 20px;\n    background-color: var(--ff-color-bg-app);\n    color: var(--ff-color-accent-text);\n    border: 1px solid var(--ff-color-accent-strong);\n    cursor: pointer;\n    transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;\n\n    &:hover:not(:disabled) {\n        background-color: var(--ff-color-accent);\n        border-color: var(--ff-color-accent);\n        color: var(--ff-color-text-on-brand);\n    }\n\n    &:disabled,\n    &.editor-link-split--disabled {\n        cursor: not-allowed;\n        border-color: var(--ff-color-border-strong);\n        color: var(--ff-color-text-subtle);\n        background-color: var(--ff-color-bg-surface);\n    }\n\n    .ff-btn--icon {\n        width: 20px;\n        height: 20px;\n    }\n}\n\n// Left half: main action button\n.editor-link-split__action {\n    padding: $ff-unit-sm 12px $ff-unit-sm $ff-unit-sm;\n    border-radius: $ff-unit-sm 0 0 $ff-unit-sm;\n    border-right: none;\n    white-space: nowrap;\n}\n\n// DropdownMenu wrapper: make all wrapper divs invisible to flex layout\n// so the MenuButton becomes a direct flex child of .editor-link-split\n.editor-link-split__dropdown,\n.editor-link-split__dropdown > div,\n.editor-link-split__dropdown > div > div {\n    display: contents;\n}\n\n// Right half: chevron dropdown trigger (square)\n.editor-link-split__toggle {\n    justify-content: center;\n    padding: $ff-unit-sm;\n    border-radius: 0 $ff-unit-sm $ff-unit-sm 0;\n    border-left: 1px solid var(--ff-color-accent-strong);\n\n    .ff-btn--icon {\n        width: 20px;\n        height: 20px;\n    }\n\n    &:hover:not(:disabled) {\n        border-left-color: var(--ff-color-accent);\n    }\n\n    &:disabled,\n    &.editor-link-split--disabled {\n        border-left-color: var(--ff-color-border-strong);\n    }\n}\n\n// Primary variant: filled indigo background with white text\n.editor-link-split--primary {\n    .editor-link-split__action,\n    .editor-link-split__toggle {\n        background-color: var(--ff-color-accent-strong);\n        border-color: var(--ff-color-accent-strong);\n        color: var(--ff-color-text-on-brand);\n\n        &:hover:not(:disabled) {\n            background-color: var(--ff-color-accent);\n            border-color: var(--ff-color-accent);\n        }\n    }\n\n    .editor-link-split__toggle {\n        border-left-color: var(--ff-color-overlay-on-accent);\n\n        &:hover:not(:disabled) {\n            border-left-color: var(--ff-color-overlay-on-accent);\n        }\n    }\n}\n\n// Icon-only minimal button: remove icon margins added by .ff-btn--icon-left\n.editor-link-minimal .ff-btn--icon-left {\n    margin-left: 0;\n    margin-right: 0;\n}\n\n// Override icon-right margin from DropdownMenu's ChevronDownIcon\n.editor-link-split__toggle .ff-btn--icon-right {\n    margin-left: 0;\n    margin-right: 0;\n}\n\n// Container query for drawer context - responsive button behavior\n// Breakpoint matches DRAWER_MOBILE_BREAKPOINT constant in Editor/index.vue\n// When inside drawer, respond to drawer width instead of viewport\n@container drawer (min-width: 640px) {\n  .editor-link-text {\n    display: inline;\n  }\n}\n\n@container drawer (max-width: 639px) {\n  .editor-link-text {\n    display: none;\n  }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.blueprints-section {\n    display: flex;\n    flex-direction: column;\n    overflow: auto;\n    flex: 1;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.import-flows {\n    overflow: auto;\n\n    & > .wrapper {\n        display: flex;\n        flex-direction: row;\n        flex-wrap: wrap;\n        flex: 1;\n        overflow: auto;\n        min-height: 400px;\n\n        @media (max-width: 768px) {\n            flex-direction: column;\n            gap: 15px;\n        }\n\n        .preview {\n            flex: 1;\n            min-width: 0;\n            display: flex;\n            flex-direction: column;\n            max-height: 100%;\n\n            @media (max-width: 768px) {\n                max-width: 100%;\n                max-height: 400px;\n                order: 2;\n            }\n        }\n\n        .add-flows {\n            overflow: auto;\n            min-width: 350px;\n            max-width: 600px;\n            height: 100%;\n            flex: 1;\n\n            .content {\n                overflow: auto;\n                flex: 1;\n\n                .flow-input-wrapper {\n                    height: 100%;\n                    display: flex;\n\n                    textarea {\n                        background: none;\n                        border-color: var(--ff-color-border);\n                        resize: none;\n                        min-height: 200px;\n                        transition: background-color ease-out .3s, border-color ease-out .3s;\n                        flex: 1;\n\n                        &:hover, &:focus {\n                            background: var(--ff-color-bg-app);\n                            border-color: var(--ff-color-border-strong);\n                            resize: vertical;\n                        }\n\n                        &.has-content {\n                            border-color: var(--ff-color-border-strong);\n                        }\n\n                        @media (max-width: 768px) {\n                            max-height: 100%;\n                            min-height: 100px;\n                            background: var(--ff-color-bg-app);\n                            border-color: var(--ff-color-border-strong);\n                            resize: none;\n                        }\n                    }\n                }\n\n                @media (max-width: 768px) {\n                    overflow: initial;\n                    gap: 0;\n                }\n            }\n\n            @media (max-width: 768px) {\n                width: 100%;\n                min-width: 100%;\n                max-width: fit-content;\n                height: auto;\n                flex: 0 0 auto;\n            }\n        }\n    }\n\n    .notice {\n        display: flex;\n        gap: 15px;\n        align-items: baseline;\n        font-size: 0.8rem;\n\n        .notice-element {\n\n            h3 {\n                font-weight: bold\n            }\n\n            p {\n                font-style: italic;\n                margin-bottom: 5px;\n            }\n        }\n\n        @media (max-width: 768px) {\n            flex: 0 0 auto;\n            align-items: flex-start;\n            justify-content: initial;\n            padding: 10px;\n            flex-direction: column;\n            overflow: auto;\n            height: fit-content;\n            max-height: 10vh;\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-flows-step {\n    height: 100%;\n\n    .ff-blueprints {\n        overflow: auto;\n        min-width: 400px;\n        padding-right: 15px;\n\n        .ff-blueprint-tiles {\n            .ff-blueprint-tile {\n                max-width: 280px;\n                width: 100%;\n                height: 100%;\n            }\n        }\n    }\n\n    .ff-blueprint-categories {\n        min-width: 300px;\n        height: 100%;\n        overflow: auto;\n        display: flex;\n        flex-direction: column;\n\n        ul {\n            flex: 1;\n            height: 100%;\n            overflow: auto;\n\n            li:hover {\n                cursor: pointer;\n                color: var(--ff-color-link);\n            }\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.instance-item {\n    display: grid;\n    grid-template-columns: repeat(6, 1fr);\n    gap: 15px;\n    background: var(--ff-color-bg-surface);\n    border-bottom: 1px solid var(--ff-color-border-strong);\n    justify-content: space-between;\n    padding: 6px;\n    align-items: center;\n\n    .title {\n        grid-column-start: 2;\n        grid-column-end: 6;\n        display: flex;\n        gap: 15px;\n        justify-content: space-between;\n\n        h6 {\n            display: flex;\n            gap: 6px;\n        }\n    }\n\n    .actions {\n        grid-column-start: 6;\n        display: flex;\n        justify-content: flex-end;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.versions-list.ff-accordion {\n    margin: 0;\n\n    button {\n        display: grid;\n        grid-template-columns: repeat(12, 1fr);\n        background: var(--ff-color-bg-app);\n        gap: 15px;\n        border: none;\n        border-bottom: 1px solid var(--ff-color-border-strong);\n\n        .version {\n            grid-column-start: 2;\n            display: flex;\n            justify-content: flex-start;\n            span {\n                color: var(--ff-color-text);\n                font-weight: 500;\n            }\n        }\n\n        .counter {\n            grid-column-start: 3;\n            grid-column-end: 6;\n            display: flex;\n            justify-content: flex-start;\n            gap: 2px;\n        }\n\n        .toggle {\n            grid-column-start: 12;\n            display: flex;\n            justify-content: flex-end;\n        }\n    }\n\n    &:last-child button {\n        border-bottom: none;\n    }\n\n    .instances-list {\n        .ff-show-more {\n            display: flex;\n            gap: 15px;\n            align-items: center;\n            justify-content: center;\n            color: var(--ff-color-text-subtle);\n            line-height: 30px;\n            cursor: pointer;\n            transition: ease-in-out .3s;\n\n            &:hover {\n                    color: var(--ff-color-accent-text)\n            }\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.dependency-item {\n    border: 1px solid var(--ff-color-border-strong);\n    margin-bottom: 12px;\n\n    .dependency-header {\n        cursor: pointer;\n        background: var(--ff-color-bg-surface-raised);\n        display: flex;\n        padding: 6px 9px;\n        align-items: center;\n        gap: 15px;\n\n        .title {\n            flex: 1;\n            display: flex;\n            align-items: center;\n            gap: 15px;\n\n            h3, p {\n                margin: 0;\n                line-height: 1;\n            }\n\n            p {\n                color: var(--ff-color-text-subtle);\n                font-weight: 400;\n                font-size: 80%;\n            }\n        }\n\n        .details {\n            display: flex;\n            flex-direction: column;\n            text-align: right;\n            font-size: 0.875rem;\n            font-weight: 500;\n        }\n\n        .ff-toggle {\n            transition: ease-in-out .3s;\n        }\n\n        &.open {\n            border-bottom: 1px solid var(--ff-color-border-strong);\n\n            .ff-toggle {\n                transform: rotate(90deg);\n            }\n        }\n    }\n\n    &:last-of-type {\n        .ff-accordion {\n            button {\n                border-bottom: none;\n            }\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.device-group {\n    .ff-target-snapshot-info{\n        border: 1px solid var(--ff-color-border-strong);\n        padding: 10px 15px;\n        display: flex;\n        gap: 20px;\n\n        .ff-title {\n            font-weight: 500;\n        }\n    }\n\n}\n","@use \"../../ui-components/stylesheets/ff-colors.scss\" as *;\n@use \"../../ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-pipeline {\n    width: 100%;\n    border: 1px solid var(--ff-color-border-strong);\n    border-radius: 6px;\n    .ff-pipeline-banner {\n        height: 46px;\n    }\n    .ff-pipeline-banner,\n    .ff-pipeline-stage-banner {\n        padding: 0px 18px;\n        display: flex;\n        justify-content: space-between;\n        align-items: center;\n        border-bottom: 1px solid var(--ff-color-border-strong);\n        background-color: var(--ff-color-bg-surface-raised);\n        border-top-left-radius: 6px;\n        border-top-right-radius: 6px;\n        gap: 48px;\n    }\n    .ff-pipeline-stage-banner {\n        height: 54px;\n        background-color: var(--ff-color-bg-surface);\n        label {\n            font-weight: 500;\n        }\n    }\n    .ff-pipelines-stage-banner-error {\n        color: var(--ff-color-danger-strong);\n        font-size: 0.725rem;\n        font-weight: 500;\n        display: flex;\n        align-items: center;\n        gap: 2px;\n    }\n    .ff-pipeline-actions {\n        display: flex;\n        gap: 6px;\n    }\n    .ff-pipeline-stages {\n        padding: 24px;\n        border-bottom-left-radius: 6px;\n        border-bottom-right-radius: 6px;\n        display: flex;\n        align-items: stretch;\n        gap: 16px;\n        overflow-x: auto;\n    }\n}\n\n.ff-pipeline-stage {\n    border-radius: 6px;\n    border: 1px solid var(--ff-color-border-strong);\n    min-width: 275px;\n    background-color: var(--ff-color-bg-app);\n    a:hover,\n    a:hover .ff-icon {\n        color: var(--ff-color-link);\n    }\n    &.ff-pipeline-stage-ghost {\n        border-style: dashed;\n        padding: 48px 64px;\n        gap: 6px;\n        display: flex;\n        flex-direction: column;\n        justify-content: center;\n        align-items: center;\n        color: var(--ff-color-text-subtle);\n        &:hover {\n            border-style: solid;\n            cursor: pointer;\n            color: var(--ff-color-link);\n            border-color: var(--ff-color-link);\n        }\n    }\n    .ff-pipeline-stage-row {\n        padding: 9px 18px;\n        display: flex;\n        justify-content: space-between;\n        gap: 24px;\n        font-size: 0.9rem;    \n        label {\n            color: var(--ff-color-text-subtle);\n        }\n        a.ff-link {\n            text-overflow: ellipsis;\n            overflow-x: hidden;\n        }\n    }\n    .ff-pipeline-stage-type {\n        padding: 9px 0px 0.75rem;\n        margin: 0 18px 0.75rem;\n        border-bottom: 1px solid var(--ff-color-border-strong);\n        display: flex;\n        align-items: flex-start;\n        gap: 6px;\n        font-size: 0.9rem;    \n        label {\n            color: var(--ff-color-text-subtle);\n            font-size: 0.75em;\n            line-height: 0.825em;\n        }\n    }\n}\n\n.ff-pipeline-stage--error {\n    border-color: var(--ff-color-danger-strong);\n    .ff-pipeline-stage-banner {\n        background-color: var(--ff-color-status-error-bg);\n        border-bottom: 1px solid var(--ff-color-status-error-border);\n    }\n}\n\n.animate-deploying {\n    animation-name: left-to-right;\n    animation-duration: 1s;\n    animation-iteration-count: infinite;\n    color: var(--ff-color-link);\n}\n\n@keyframes left-to-right {\n    0% {\n        transform: translate(-24px, 0);\n        opacity: 0;\n    }\n    40% {\n        opacity: 1;\n    }\n    75% {\n        opacity: 0;\n    }\n    100% {\n        transform: translate(24px, 0);\n        opacity: 0;\n    }\n}","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.deployment-name__url {\n    :deep(.ff-icon) {\n        width: 14px;\n        height: 14px;\n    }\n    :deep(.ff-icon-button) {\n        background: transparent;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n\n    .error-banner {\n        padding: 9px;\n        background-color: var(--ff-color-status-error-bg);\n        border: 1px solid var(--ff-color-status-error-border);\n        border-radius: 3px;\n        color: var(--ff-color-danger-strong);\n    }\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.role-row-cell {\n    display: flex;\n    flex-direction: column;\n    min-height: 40px;\n\n    .actual-role {\n        flex: 1;\n        display: flex;\n        justify-content: center;\n        flex-direction: column;\n    }\n\n    .team-role {\n        flex: 1;\n    }\n    .role {\n        font-weight: bold;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-icon-link {\ndisplay: flex;\njustify-content: space-between;\nalign-items: center;\nposition: relative;\n\nborder-radius: $ff-unit-sm;\nborder: 1px solid var(--ff-color-border-strong);\n\nheight: 28px;\npadding: $ff-unit-sm 5px;\n\nfont-size: $ff-funit-sm;\nline-height: 20px;\n\nsvg {\n  margin-right: 5px;\n}\n\n&:hover {\n  cursor: pointer;\n  border-color: var(--ff-color-link);\n\n  color: var(--ff-color-link);;\n  background-color: var(--ff-color-bg-surface);\n\n  .ff-icon {\n      color: var(--ff-color-link);\n  }\n}\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-icon-link {\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  position: relative;\n\n  border-radius: $ff-unit-sm;\n  border: 1px solid var(--ff-color-border-strong);\n\n  height: 28px;\n  padding: $ff-unit-sm 5px;\n\n  font-size: $ff-funit-sm;\n  line-height: 20px;\n\n  svg {\n    margin-right: 5px;\n  }\n\n  &:hover {\n    cursor: pointer;\n    border-color: var(--ff-color-link);\n\n    color: var(--ff-color-link);;\n    background-color: var(--ff-color-bg-surface);\n\n    .ff-icon {\n        color: var(--ff-color-link);\n    }\n  }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-counter {\n    border: 1px solid transparent;\n    transition: ease-in-out .15s;\n    will-change: border-color;\n\n    &.red label   { color: var(--ff-color-status-error-text); }\n    &.green label { color: var(--ff-color-status-success-text); }\n\n    &.empty {\n        opacity: .3;\n    }\n\n    &:hover {\n        opacity: 1;\n\n        &.green {\n            border-color: var(--ff-color-success);\n        }\n        &.red {\n            border-color: var(--ff-color-danger);\n        }\n        &.gray {\n            border-color: var(--ff-color-border-strong);\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.application-wrapper {\n    position: relative;\n\n    .overlay {\n        position: absolute;\n        top:0;\n        left: 0;\n        width: 100%;\n        height: 100%;\n        background: var(--ff-color-overlay-loading) !important;\n        border: none !important;\n    }\n}\n","@use \"../../ui-components/stylesheets/ff-colors.scss\" as *;\n@use \"../../ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-applications-list {\n    display: flex;\n    flex-direction: column;\n    gap: 18px;\n    > li {\n        > *:not(.ff-dialog-container) {\n            border-left: 1px solid var(--ff-color-border-strong);\n            border-right: 1px solid var(--ff-color-border-strong);\n            background-color: var(--ff-color-bg-surface);\n        }\n\n        > section:last-of-type {\n            border-bottom-left-radius: 6px;\n            border-bottom-right-radius: 6px;\n            border-bottom: 1px solid var(--ff-color-border-strong);\n        }\n\n        > :first-child {\n            border-top-left-radius: 6px;\n            border-top-right-radius: 6px;\n            border-top: 1px solid var(--ff-color-border-strong);\n        }\n\n        > :last-child {\n            border-bottom-left-radius: 6px;\n            border-bottom-right-radius: 6px;\n            border-bottom: 1px solid var(--ff-color-border-strong);\n        }\n    }\n    .ff-application-list--app {\n        background-color: var(--ff-color-bg-app) !important;\n        display: flex;\n        justify-content: space-between;\n        padding: 12px;\n        border: 1px solid var(--ff-color-border-strong);\n        >span {\n            display: flex;\n            align-items: center;\n            gap: 1rem;\n        }\n        &:hover {\n            cursor: pointer;\n            border-color: var(--ff-color-link);\n\n            .ff-application-list--icon,\n            .ff-application-list--icon .ff-icon {\n                color: var(--ff-color-link);\n            }\n        }\n    }\n    .ff-applications-list--instance {\n        display: flex;\n        flex-direction: column;\n        span {\n            color: var(--ff-color-text-subtle);\n            font-size: 0.75rem;;\n        }\n    }\n    .delimiter {\n        font-size: 0.875rem;\n        color: var(--ff-color-text-subtle);\n        display: flex;\n        align-items: center;\n        gap: 6px;\n\n        &::after {\n            content: '';\n            height: 1px;\n            flex-grow: 1;\n            margin-left: 9px;\n            background-color: var(--ff-color-border-strong);\n        }\n    }\n}\n\n.ff-applications-list-instances {\n    padding: 12px;\n    padding-top: 6px;\n    display: flex;\n    flex-direction: column;\n    >label {\n        font-size: 0.875rem;\n        color: var(--ff-color-text-subtle);\n        display: flex;\n        align-items: center;\n        gap: 12px;\n        &::after {\n            content: '';\n            height: 1px;\n            flex-grow: 1;\n            background-color: var(--ff-color-border-strong);\n        }\n    }\n    > .items-wrapper {\n        background-color: var(--ff-color-bg-app);\n        border-color: var(--ff-color-border-strong);\n        border-width: 1px;\n        border-style: solid;\n        border-radius: 6px;\n        padding: 12px;\n        display: grid;\n        align-items: center;\n        grid-template-columns: 40px 1fr 100px minmax(auto, 220px) 350px;\n        &:hover {\n            cursor: pointer;\n            border-color: var(--ff-color-link);\n            .ff-application-list--instance {\n                color: var(--ff-color-link);\n            }\n            .ff-icon {\n                color: var(--ff-color-link);\n            }\n        }\n    }\n\n    .actions {\n        display: flex;\n        justify-content: flex-end;\n        gap: 9px;\n    }\n}\n\n.ff-applications-list-instances {\n    flex: 1;\n    padding: 12px;\n    padding-top: 6px;\n\n    .items-wrapper {\n        display: flex;\n        flex: 1;\n        background: none;\n        border: none;\n        padding: 0;\n        gap: 5px;\n        margin-top: 10px;\n\n        .ff-counter {\n            min-width: 125px;\n        }\n    }\n\n    .empty-message {\n        min-height: 75px;\n        display: flex;\n        text-align: center;\n        align-items: center;\n        justify-content: center;\n        gap: 2px;\n        color: var(--ff-color-text-subtle);\n    }\n}\n\n.ff-applications-list--details {\n    color: var(--ff-color-text-subtle);\n    font-size: 0.875rem;\n    padding-bottom: 12px;\n    text-align: center;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n@use \"../../../stylesheets/components/applications-list\" as *;\n\n.no-results {\n  text-align: center;\n  color: var(--ff-color-text-subtle);\n}\n\n.fade-slide-enter-active,\n.fade-slide-leave-active,\n.fade-slide-move {\n    transition: all 0.3s ease;\n}\n\n.fade-slide-enter-from {\n    opacity: 0;\n    transform: translateX(30px);\n}\n\n.fade-slide-enter-to {\n    opacity: 1;\n    transform: translateX(0);\n}\n\n.fade-slide-leave-from {\n    opacity: 1;\n    transform: translateX(0);\n}\n\n.fade-slide-leave-to {\n    opacity: 0;\n    transform: translateX(30px);\n}\n\n.fade-slide-move {\n    transition: transform 0.3s ease;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-admin-audit .ff-accordion {\n    margin-bottom: 12px;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.hosted-instances-usage {\n    tr:last-of-type {\n        td {\n            border-bottom: none;\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-medium-tile {\n    position: relative;\n    border-radius: 6px;\n    border: 2px solid var(--ff-color-border-strong);\n    background: var(--ff-color-bg-app);\n    box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.25);\n    padding: 49px 24px 24px 24px;\n    width: 100%;\n    max-width: 300px;\n    display: flex;\n    flex-direction: column;\n    justify-content: space-between;\n\n    .ff-ribbon {\n        --ribbon-overlap: 8px;\n        display: flex;\n        justify-content: center;\n        align-items: center;\n        height: 30px;\n        left: calc(-1 * var(--ribbon-overlap));\n        line-height: 1.3;\n        width: calc(100% + 2 * var(--ribbon-overlap));\n        margin: 0;\n        position: absolute;\n        top: 8px;\n        color: var(--ff-color-text-on-brand);\n        border-top: 1px solid var(--ff-color-tile-bevel-top);\n        border-bottom: 1px solid var(--ff-color-tile-bevel-bottom);\n        border-radius: 2px 2px 0 0;\n        box-shadow: 0 1px 2px rgba(0,0,0,0.3);\n\n        &.red {\n            background: var(--ff-color-danger);\n            &::before,\n            &::after {\n                border-color: var(--ff-color-tile-ribbon-shadow-red) transparent transparent transparent;\n            }\n        }\n\n        &.blue {\n            background: var(--ff-color-accent-hover-bg);\n            &::before,\n            &::after {\n                border-color: var(--ff-color-tile-ribbon-shadow-indigo) transparent transparent transparent;\n            }\n        }\n\n        &::before,\n        &::after {\n            content: '';\n            display: block;\n            width: 0;\n            height: 0;\n            position: absolute;\n            bottom: calc((-2 * var(--ribbon-overlap)) - 1px);\n            z-index: -10;\n            border: var(--ribbon-overlap) solid;\n        }\n\n        &::before {left: 0}\n        &::after {right: 0}\n    }\n\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-accordion.broker-client {\n    margin-bottom: 0;\n\n    button {\n        border: none;\n        background: none;\n        display: grid;\n        grid-template-columns: repeat(6, 1fr);\n        gap: 15px;\n        padding: 0;\n\n        .username {\n            padding: 15px 10px;\n            grid-column: span 2;\n            overflow: hidden;\n\n            .ff-text-copier {\n                @include truncate;\n                & > span {\n                    @include truncate;\n                }\n                .title-wrapper {\n                    @include truncate;\n                }\n\n            }\n\n            .ff-icon {\n                margin-left: 0;\n                min-width: 20px;\n            }\n        }\n\n        .rules {\n            padding: 15px 10px;\n\n        }\n\n        .toggle {\n            grid-column: span 3;\n            text-align: right;\n            padding-right: 10px;\n            display: flex;\n            align-items: center;\n            justify-content: flex-end;\n\n            .edit, .delete {\n                padding: 24px 15px;\n                display: inline-block;\n                position: relative;\n                align-self: stretch;\n\n                .ff-icon-sm {\n                    position: absolute;\n                    top: 50%;\n                    left: 50%;\n                    transform: translate(-50%, -50%);\n                    transition: ease-in-out .3s;\n                }\n\n                &:hover {\n                    .ff-icon-sm {\n                        width: 20px;\n                        height: 20px;\n                    }\n                }\n            }\n\n            .edit:hover {\n                color: var(--ff-color-text-muted);\n            }\n            .delete:hover {\n                color: var(--ff-color-danger-darker);\n            }\n        }\n    }\n\n    .ff-accordion--content {\n        background: var(--ff-color-bg-surface-raised);\n        .acl-list {\n            .acl-wrapper {\n                border-bottom: 1px solid var(--ff-color-border);\n                padding: 15px 10px;\n                gap: 10px;\n                font-size: 80%;\n\n                &:last-of-type {\n                    border: none;\n                }\n            }\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n#client-dialog {\n\n    .headers {\n        label:first-of-type {\n            max-width: 200px;\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n\n    .clients-wrapper {\n        border: 1px solid var(--ff-color-border-strong);\n        border-radius: 5px;\n        overflow: hidden;\n\n        .header {\n            background: var(--ff-color-bg-surface-raised);\n            padding: 10px;\n            border-bottom: 1px solid var(--ff-color-border-strong);\n\n            span {\n                &.username {\n                    grid-column: span 2;\n                }\n            }\n        }\n\n        .clients-list {\n            background: var(--ff-color-bg-app);\n\n            .client {\n                border-bottom: 1px solid var(--ff-color-border-strong);\n\n                &:last-of-type {\n                    border-bottom: none;\n                }\n            }\n        }\n    }\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-topic-docs {\n    .ff-accordion {\n        margin: 0;\n\n        .ff-accordion--button{\n            font-weight: bold;\n            border: 1px solid var(--ff-color-status-info-surface-border);\n            background-color: var(--ff-color-status-info-surface);\n            border-radius: 6px;\n            padding: 12px;\n            font-weight: bold;\n            display: flex;\n            justify-content: space-between;\n            align-items: center;\n\n            &:hover {\n                cursor: pointer;\n                background-color: var(--ff-color-status-info-surface);\n            }\n        }\n\n        .ff-accordion--content {\n            border: 1px solid var(--ff-color-status-info-surface-border);\n            border-top: none;\n            border-radius: 0 0 6px 6px;\n            padding: 12px;\n\n            .ff-topic-docs-row-meta {\n                section {\n                    margin-bottom: 15px;\n\n                    label {\n                        display: block;\n                        font-weight: bold;\n                        margin-bottom: 3px;\n                    }\n                    .ff-empty-state {\n                        color: var(--ff-color-text-subtle);\n                        background-color: var(--ff-color-bg-surface);\n                        padding: 12px;\n                        margin-top: 6px;\n                    }\n                }\n            }\n        }\n\n        &.open {\n            .ff-accordion--button {\n                border-radius: 6px 6px 0 0;\n            }\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-return-link {\n    padding: 9px 12px;\n    border-radius: 6px;\n    border: 1px solid var(--ff-color-border);\n    transition: border-color 0.3s;\n    display: inline-flex;\n    align-items: center;\n    gap: 9px;\n    &:hover {\n        border-color: var(--ff-color-focus);\n        color: var(--ff-color-focus);\n        cursor: pointer;\n    }\n}\n.ff-schema-docs-hierarchy {\n    margin: 24px 0;\n    display: flex;\n    gap: 12px;\n    flex-direction: column;\n}\nh1 {\n    display: flex;\n    justify-content: space-between;\n    align-items: center;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.segment-wrapper {\n    .segment {\n        position: relative;\n        margin: 5px 0 0;\n        transition: ease .15s;\n        &:hover {\n            color: var(--ff-color-accent-hover);\n\n            cursor: pointer;\n        }\n\n        .diagram {\n            .connector-elbow {\n                border-left: 2px solid var(--ff-color-accent-light);\n                border-bottom: 2px solid var(--ff-color-accent-light);\n                border-bottom-left-radius: 7px;\n                display: inline-block;\n                position: absolute;\n                height: 50px;\n                width: 25px;\n                left: -23px;\n                top: -35px;\n            }\n            .connector-trunk {\n                width: 1px;\n                border-left: 2px solid var(--ff-color-accent-light);\n                display: inline-block;\n                position: absolute;\n                height: 5000px;\n                left: -23px;\n                top: -5000px;\n            }\n        }\n\n        .content {\n            padding: 5px;\n            position: relative;\n\n            .chevron {\n                transition: ease .15s;\n            }\n\n            .title {\n                align-items: center;\n                display: flex;\n                gap: 3px;\n\n                .highlight {\n                    background-color: var(--ff-color-accent-surface);\n                }\n            }\n\n            .ff-text-copier {\n                display: none;\n                height: 17px;\n            }\n\n            &:hover {\n                .ff-text-copier {\n                    display: inline-block;\n                    color: var(--ff-color-text-subtle);\n                }\n            }\n        }\n    }\n\n    .children {\n        overflow: hidden;\n    }\n    &.selected > {\n        .segment {\n            background: var(--ff-color-accent-surface);\n        }\n    }\n    &.open > {\n        .segment {\n            .content {\n                .title {\n                    color: var(--ff-color-accent-hover);\n                }\n\n                .chevron {\n                    transform: rotate(90deg)\n                }\n            }\n        }\n    }\n\n    &.empty > {\n        .segment {\n            .content {\n                .title {\n                    color: var(--ff-color-text-deep);\n                    font-size: 90%;\n                    font-weight: 300;\n\n                    .separator {\n                        color: var(--ff-color-text);\n                        font-weight: bold;\n                    }\n                }\n            }\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.unified-namespace-hierarchy {\n    display: flex;\n    flex-direction: column;\n    flex: 1;\n    min-width: 0;\n    overflow: auto;\n\n    .topics {\n        background: var(--ff-color-bg-app);\n        padding: 10px;\n        border-radius: 6px;\n        border: 1px solid var(--ff-color-border);\n        overflow: auto;\n        height: 100%;\n    }\n}\n@media screen and (max-width: $ff-screen-md) {\n    .unified-namespace-hierarchy {\n        min-width: 100%;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-topic-inspecting {\n    background: var(--ff-color-bg-app);\n    padding: 10px;\n    border-radius: 6px;\n    border: 1px solid var(--ff-color-border);\n}\n\n.ff-topic-path {\n    display: flex;\n    background-color: var(--ff-color-accent-surface);\n    color: var(--ff-color-accent);\n    border-radius: 6px;\n    border: 1px solid var(--ff-color-accent-surface);\n    padding: 6px;\n    font-weight: 600;\n    & > span:first-child {\n        flex-grow: 1\n    }\n    & > span:last-child {\n        flex-grow: 0\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.topic-schema {\n    background-color: var(--ff-color-accent-surface);\n    color: var(--ff-color-accent);\n    border-radius: 6px;\n    border: 1px solid var(--ff-color-accent-surface);\n    padding: 10px 6px;\n    font-size: 0.875rem;\n    line-height: 1.25rem;\n    overflow: auto;\n    position: relative;\n\n    .topic-schema-unknown {\n        color: var(--ff-color-text-subtle);\n        text-align: center;\n        font-style: italic;\n    }\n\n    .schema-container {\n        .show-more {\n            position: absolute;\n            bottom: 0;\n            left: 45%;\n        }\n\n    }\n\n    &.collapsed {\n        overflow: hidden;\n        box-shadow: inset 0 -30px 20px -20px rgba(49, 46, 129, 0.2);\n        padding-bottom: 35px;\n\n        .schema-container {\n            max-height: 400px;\n        }\n\n        .show-more {\n            padding: 10px;\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.suggestion {\n    .content {\n        .format {\n            color: var(--ff-color-focus);\n        }\n    }\n\n    .actions {\n        .preview {\n            color: var(--ff-color-text-subtle)\n        }\n        .accept {\n            color: var(--ff-color-success)\n        }\n        .reject {\n            color: var(--ff-color-danger)\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-topic-inspecting {\n    display: flex;\n    flex-direction: column;\n    gap: 15px;\n    background: var(--ff-color-bg-app);\n    padding: 10px;\n    border-radius: 6px;\n    border: 1px solid var(--ff-color-border);\n    overflow: auto;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-topic-inspector {\n    display: flex;\n    flex-direction: column;\n    flex: 1;\n    min-width: 0;\n    transition: width 0.3s;\n    overflow: auto;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-broker-hierarchy {\n    display: flex;\n    flex-direction: row;\n    gap: 12px;\n    overflow: auto;\n    //height: 100%;\n}\n\n@media screen and (max-width: $ff-screen-md) {\n    .ff-broker-hierarchy {\n        flex-wrap: wrap;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.broker-form {\n    .server, .credentials {\n        .title {\n            border-bottom: 1px solid var(--ff-color-border);\n        }\n    }\n\n    .server {\n        &::after {\n            content: ' ';\n            width: 1px;\n            height: 10px;\n            background: red;\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-box {\n    border: 1px solid var(--ff-color-border);\n    background: var(--ff-color-bg-app);\n    padding: 10px;\n    display: flex;\n    flex-direction: column;\n    flex: 1;\n\n    .ff-box-header {\n        display: flex;\n        justify-content: space-between;\n        align-items: center;\n        margin-bottom: 10px;\n\n        .ff-box-title {\n            margin: 0;\n            padding: 0;\n            font-size: 1.3rem;\n        }\n    }\n}\n","\n.ff-kebab-menu__trigger[data-v-13b0d670] {\n    border: 1px solid transparent;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.minimal-status {\n    display: block;\n    height: 10px;\n    width: 10px;\n    border-radius: 50%;\n    transition: ease-in-out .3s;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.recently-modified {\n    & > p {\n        border-bottom: 1px solid var(--ff-color-border-subtle);\n        margin-bottom: 10px;\n        line-height: 2rem;\n    }\n\n    .device-wrapper {\n        .device-tile {\n            border: 1px solid var(--ff-color-border-subtle);\n            padding: 2px 10px;\n            border-radius: 5px;\n            display: flex;\n            width: 100%;\n            height: fit-content;\n            min-height: 55px;\n            justify-content: space-between;\n            align-items: center;\n            gap: 10px;\n            will-change: border-color;\n            transition: ease-in-out .3s;\n\n            &.has-more {\n                padding: 10px;\n            }\n\n            &:hover {\n                border-color: var(--ff-color-border);\n            }\n\n            .details {\n                flex: 1;\n\n                .detail-wrapper {\n                    &:last-of-type {\n                        font-size: $ff-funit-sm;\n                        color: var(--ff-color-text-subtle);\n                    }\n                }\n\n                .name {\n                    &:hover {\n                        color: var(--ff-color-accent-hover);\n                    }\n                }\n            }\n\n            .actions {\n                display: flex;\n                justify-content: space-between;\n                align-items: center;\n            }\n        }\n    }\n\n    .no-devices {\n        min-height: 130px;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.recently-modified {\n    display: flex;\n    flex: 1;\n    flex-direction: column;\n\n    & > p {\n        border-bottom: 1px solid var(--ff-color-border-subtle);\n        margin-bottom: 10px;\n        line-height: 2rem;\n    }\n\n    .instance-wrapper {\n        height: fit-content;\n\n        .instance-tile {\n            border: 1px solid var(--ff-color-border-subtle);\n            padding: 2px 4px 2px 10px;\n            border-radius: 5px;\n            display: flex;\n            width: 100%;\n            height: fit-content;\n            min-height: 55px;\n            justify-content: space-between;\n            align-items: center;\n            gap: 10px;\n            will-change: border-color, background-color;\n            transition: ease-in-out 0.3s;\n            cursor: pointer;\n\n            &.has-more {\n                padding: 10px;\n            }\n\n            &:hover {\n                border-color: var(--ff-color-border-strong);\n                background-color: var(--ff-color-accent-surface);\n            }\n\n            .details {\n                flex: 1;\n\n                .detail-wrapper {\n                    .name {\n                        font-weight: 500;\n                    }\n\n                    &.detail {\n                        font-size: $ff-funit-sm;\n                        color: var(--ff-color-text-subtle);\n                    }\n                }\n            }\n\n            .actions {\n                display: flex;\n                justify-content: space-between;\n                align-items: center;\n                gap: 4px;\n\n                .ff-kebab-menu .ff-btn {\n                    color: var(--ff-color-accent-text);\n\n                    .ff-icon {\n                        width: 20px;\n                        height: 20px;\n                    }\n\n                    &:hover {\n                        background-color: var(--ff-color-accent);\n                        color: var(--ff-color-text-on-brand);\n                    }\n                }\n            }\n        }\n    }\n\n    .no-instances {\n        min-height: 130px;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-team-dashboard {\n    height: 100%;\n    display: flex;\n    flex: 1;\n    flex-direction: column;\n    overflow: auto;\n    container-type: inline-size;\n    container-name: team-dashboard;\n}\n\n.instances-section {\n    // Default: stacked (flex-wrap)\n    // When container is 640px+ wide, display side-by-side\n    @container team-dashboard (min-width: 640px) {\n        flex-wrap: nowrap;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.flow-categories-wrapper {\n    display: flex;\n    flex-direction: column;\n    flex-wrap: wrap;\n    gap: 20px;\n\n  .category {\n    margin-bottom: 20px;\n\n    .blueprint-tile {\n      max-width: 250px;\n      min-width: 200px;\n    }\n\n    .tiles-wrapper {\n      display: flex;\n      flex-wrap: wrap;\n      gap: 15px;\n    }\n  }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-registry-entry {\n    background-color: var(--ff-color-bg-app);\n    padding: 12px;\n    border: 1px solid var(--ff-color-border);\n    display: flex;\n    justify-content: space-between;\n    align-items: center;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-registry-list {\n    display: grid;\n    gap: 6px;\n}\n","@use \"../../ui-components/stylesheets/ff-colors.scss\" as *;\n\n.ff-code-previewer {\n    background-color: var(--ff-color-bg-app);\n    border: 1px solid var(--ff-color-border-strong);\n    border-radius: 6px;\n    padding: 12px;\n    code {\n        border: none;\n        padding: unset;\n    }\n}","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-team-library .ff-breadcrumbs {\n    margin-top: 12px;\n    margin-bottom: 12px;\n}\n.breadcrumbs-wrapper {\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\ntd {\n    .content {\n        overflow: hidden;\n        display: flex;\n        flex-direction: column;\n        transition: max-height 0.3s ease-in-out;\n        height: fit-content;\n        box-shadow: inset 0 2px 15px 0 rgba(0,0,0,0.1);\n        overflow-y: auto;\n\n        .application {\n            line-height: 29px;\n            display: grid;\n            grid-template-columns: 55px repeat(10, 1fr) 56px;\n            border-bottom: 1px solid var(--ff-color-border);\n            transition: ease-in-out .3s;\n\n            .name {\n                grid-column: span 8;\n            }\n            .role {\n                padding-left: 15px;\n            }\n\n            .action {\n                .ff-icon {\n                    transition: ease-in-out .2s;\n                    opacity: 0;\n                }\n            }\n\n            &:hover {\n                background: var(--ff-color-bg-surface-raised);\n                .action {\n                    .ff-icon {\n                        opacity: 1;\n                    }\n                }\n            }\n\n            &:last-of-type {\n                border-bottom: none;\n            }\n        }\n\n    }\n\n    &.collapsed {\n        .content {\n            max-height: 0\n        }\n    }\n\n    &.expanded {\n        .content {\n            max-height: 200px;\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-cpu-bar {\n    width: 100%;\n    height: 100%;\n    border-radius: 3px;\n    padding: 3px;\n    border: 1px solid;\n    border-color: var(--ff-color-border-strong);\n}\n\n.ff-cpu-bar--fill {\n    border-radius: 3px;\n    height: 12px;\n}\n\n.ff-cpu-bar--fill.high {\n    background-color: var(--ff-color-status-error-bg);\n}\n\n.ff-cpu-bar--fill.medium {\n    background-color: var(--ff-color-status-warning-bg);\n}\n\n.ff-cpu-bar--fill.low {\n    background-color: var(--ff-color-status-success-bg);\n}\n\n.ff-cpu-bar--label {\n    width: 48px;\n    text-align: right;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-pipeline-stage {\n    border: 1px solid var(--ff-color-border-strong);\n    border-radius: 6px;\n    overflow: hidden;\n    background: var(--ff-color-bg-app);\n    padding: 12px;\n    display: flex;\n    flex-direction: column;\n    gap: 12px;\n    min-width: 225px;\n\n    .ff-pipeline-target {\n        display: flex;\n        flex-direction: row;\n        gap: 6px;\n        font-size: 11px;\n        align-items: center;\n        border: 1px solid var(--ff-color-border-strong);\n        padding: 6px;\n        border-radius: 6px;\n        transition: ease-in-out .3s;\n\n        &:hover {\n            color: var(--ff-color-accent-hover);\n            border-color: var(--ff-color-accent-hover);\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-pipeline {\n    border: 1px solid var(--ff-color-border-strong);\n    border-radius: 5px;\n    overflow: hidden;\n\n    & > .ff-pipeline-header {\n        background: var(--ff-color-bg-app);\n        padding: 15px;\n        border-bottom: 1px solid var(--ff-color-border-strong);\n        transition: ease-in-out .3s;\n\n        &:hover {\n            color: var(--ff-color-text-on-brand);\n            background: var(--ff-color-accent-hover-bg);\n            .ff-pipeline-application-name {\n                transition: ease-in-out .3s;\n                color:  var(--ff-color-text-subtle);\n            }\n        }\n\n        &:has(.ff-pipeline-application-name:hover) {\n            color: var(--ff-color-text-subtle);\n\n            .ff-pipeline-application-name:hover {\n                color: var(--ff-color-text-on-brand);\n            }\n        }\n\n        .ff-application-name {\n            transition: ease-in-out .3s;\n            color: var(--ff-color-text-subtle);\n\n            &:hover {\n                color: var(--ff-color-accent-hover);\n            }\n        }\n\n        .to {\n            display: flex;\n            flex: 1;\n            justify-content: end;\n        }\n    }\n\n    & > .ff-pipeline-content {\n        padding: 15px;\n        overflow: auto;\n\n        .ff-pipeline-stages-list {\n            display: flex;\n            flex-direction: row;\n            gap: 15px;\n\n            li {\n                display: flex;\n                gap: 15px;\n                align-items: center;\n\n                &:last-child > .ff-icon {\n                    display: none;\n                }\n            }\n        }\n\n        .ff-empty-stages-message {\n            text-align: center;\n            color: var(--ff-color-text-subtle);\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n#team-pipelines {\n\n    .pipelines {\n        .pipelines-list {\n            display: flex;\n            flex-direction: column;\n            gap: 15px;\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-team-properties-table {\n    padding: 9px 12px;\n    border-radius: 0.25rem;\n    background-color: var(--ff-color-bg-app);\n    border-collapse: separate;\n    border-width: 1px;\n    border-color: var(--ff-color-border-strong);\n    min-width: 400px;\n    td {\n        height: 36px;\n    }\n    tr:not(:last-child) {\n        td,th {\n            border-bottom: 1px solid var(--ff-color-border-subtle);\n        }\n    }\n    th {\n        font-weight: 600;\n        padding-right: 12px;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.rows-header {\n    margin-bottom: 15px;\n    padding-bottom: 15px;\n    border-bottom: 1px solid var(--ff-color-border);\n\n    .toggle-collapse, .refresh-table {\n        border: 1px solid transparent;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.text-cell {\n    overflow: auto;\n    max-height: 3rem;\n\n    .value {\n        background: none;\n        border: none;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n#rows-list {\n    height: 100%;\n    width: 100%;\n    overflow: auto;\n\n    .header {\n        border-bottom: 1px solid var(--ff-color-border);\n        padding-bottom: 15px;\n        margin-bottom: 15px;\n        display: flex;\n        align-items: center;\n        height: 50px;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.column {\n    .col-section {\n\n        .ff-combobox, .ff-listbox {\n            min-width: 10px; // resetting min-width\n            max-width: 100%;\n            width: 100%;\n        }\n\n        .ff-input {\n            min-width: 10px;\n        }\n\n        .ff-checkbox {\n            span {\n                top: 8px;\n            }\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n\n#create-table {\n    height: 100%;\n    width: 100%;\n    display: flex;\n    flex-direction: column;\n    background: var(--ff-color-bg-surface);\n\n    > .header {\n        border-bottom: 1px solid var(--ff-color-border-strong);\n        padding: 10px 0;\n        width: 100%;\n        background: var(--ff-color-bg-app);\n\n        .content {\n            padding: 0 12px;\n            display: flex;\n            align-items: baseline;\n\n            .title {\n                margin: 0;\n                color: var(--ff-color-text);\n                font-weight: bold;\n                font-size: 1.25rem;\n                line-height: 1.75rem;\n            }\n        }\n    }\n\n    .content-wrapper {\n        flex: 1;\n        width: 100%;\n        background-color: var(--ff-color-bg-surface);\n        overflow: auto;\n\n       .section {\n           padding-bottom: 15px;\n           margin-bottom: 15px;\n           border-bottom: 1px solid var(--ff-color-border);\n\n           .header {\n               .title {\n                   color: var(--ff-color-text-deep);\n                   font-size: 10px;\n               }\n           }\n\n           .columns {\n               margin-bottom: 20px;\n           }\n       }\n    }\n\n    .footer {\n        padding: 10px 12px;\n        border-top: 1px solid var(--ff-color-border-strong);\n        background: var(--ff-color-bg-app);\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n#table-schema {\n    height: 100%;\n    width: 100%;\n    display: flex;\n    flex-direction: column;\n    background: var(--ff-color-bg-surface);\n\n    > .header {\n        border-bottom: 1px solid var(--ff-color-border-strong);\n        padding: 10px 0;\n        width: 100%;\n        background: var(--ff-color-bg-app);\n\n        .content {\n            padding: 0 12px;\n            display: flex;\n            align-items: baseline;\n\n            .title {\n                margin: 0;\n                color: var(--ff-color-text);\n                font-weight: bold;\n                font-size: 1.25rem;\n                line-height: 1.75rem;\n            }\n        }\n    }\n\n    .content-wrapper {\n        flex: 1;\n        width: 100%;\n        background-color: var(--ff-color-bg-surface);\n        overflow: auto;\n\n        .header {\n            .title {\n                color: var(--ff-color-text-deep);\n                font-size: 10px;\n            }\n        }\n    }\n\n    .footer {\n        background: var(--ff-color-bg-app);\n        padding: 10px 12px;\n        border-top: 1px solid var(--ff-color-border-strong);\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n#tables-list {\n    display: flex;\n    flex-direction: column;\n    max-width: 20%;\n    min-width: 250px;\n\n    .header {\n        border-bottom: 1px solid var(--ff-color-border);\n        padding-bottom: 15px;\n        margin-bottom: 15px;\n\n        .ff-data-table--search {\n            min-width: 10px;\n        }\n    }\n\n    .list {\n        .item {\n            display: flex;\n            gap: 5px;\n            line-height: 2;\n            align-items: center;\n            transition: ease-in-out .3s;\n            cursor: pointer;\n\n            &:hover, &.active {\n                color: var(--ff-color-focus);\n                background-color: var(--ff-color-bg-surface-raised);\n            }\n\n            &:hover {\n                .icon-toggle {\n                    .ff-icon:first-child {\n                        display: none;\n                    }\n                    .ff-icon:last-child {\n                        display: inline-block;\n                    }\n                }\n            }\n\n            .icon-toggle {\n                width: 24px;\n                .ff-icon:first-child {\n                    display: inline-block;\n                }\n                .ff-icon:last-child {\n                    display: none;\n                }\n\n                .edit {\n                    &:hover {\n                        transform: scale(1.4);\n                    }\n                }\n            }\n        }\n    }\n\n    .empty-state {\n        flex: 1;\n        display: flex;\n        flex-direction: column;\n        text-align: center;\n        justify-content: center;\n        color: var(--ff-color-text-subtle);\n        line-height: 1.6;\n\n        .cta {\n            cursor: pointer;\n            color: var(--ff-color-focus);\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n#table-explorer {\n    display: flex;\n    gap: 15px;\n    height: 100%;\n    width: 100%;\n    overflow: auto;\n\n    &.collapsed {\n        gap: 0;\n        #tables-list {\n            max-width: 0;\n            min-width: 0;\n            overflow: hidden;\n            padding: 0;\n            border-right-color: transparent;\n        }\n    }\n\n    #tables-list {\n        border-right: 1px solid var(--ff-color-border);\n        padding-right: 10px;\n        transition: ease-in-out .3s, border-right-color ease-out .3s;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n#table-credentials {\n    .title {\n        display: flex;\n        gap: 5px;\n        align-items: center;\n        margin-bottom: 10px;\n\n        h3 {\n            margin: 0;\n            padding: 0;\n        }\n    }\n\n    .client-details,\n    .database-details {\n        padding: 10px;\n        background: var(--ff-color-bg-app);\n        border: 1px solid var(--ff-color-border);\n        border-radius: 5px;\n\n        .item {\n            display: flex;\n            margin-bottom: 10px;\n\n            dt {\n                font-weight: 500;\n                max-width: 30%;\n                flex: 1\n            }\n\n            dd {\n                flex: 1;\n            }\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n#add-database {\n    height: 100%;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.database-form {\n    .database, .credentials {\n        .title {\n            border-bottom: 1px solid var(--ff-color-border);\n        }\n    }\n    dl {\n        padding: 10px;\n        max-width: 600px;\n\n        dt, dd {\n            margin: 0;\n        }\n\n        dt {\n            font-weight: 600;\n        }\n        dd {\n            text-indent: 10px;\n            margin-bottom: 10px;\n        }\n    }\n\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-select-team-step {\n    .team-tile {\n        padding: 12px;\n        border: 2px solid var(--ff-color-border-strong);\n        width: 100%;\n        border-radius: 6px;\n        cursor: pointer;\n        transition: ease-in-out .3s;\n\n        &:hover {\n            border-color: var(--ff-color-accent);\n        }\n\n        &.selected {\n            border-color: var(--ff-color-accent);\n        }\n\n        .header {\n            .title {\n\n            }\n\n            .counters {\n                color: var(--ff-color-text-subtle);\n                font-size: $ff-funit-xs;\n            }\n        }\n\n        .description {\n            color: var(--ff-color-text-subtle);\n            font-size: $ff-funit-sm;\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.education-modal {\n  position: absolute;\n  top: 65px;\n  right: 5px;\n  width: 350px;\n  background: var(--ff-color-bg-app);\n  border: 1px solid var(--ff-color-border-strong);\n  box-shadow: -6px 6px 10px rgba(0, 0, 0, .2);\n  margin: 0;\n\n  .ff-dialog-content {\n    padding: 10px 10px 5px 10px;\n\n    p {\n      line-height: 1.5;\n    }\n  }\n\n  .ff-dialog-actions {\n    padding: 5px 10px 10px 10px;\n  }\n\n  .title {\n    margin-bottom: 20px;\n    text-align: center;\n    border-bottom: 1px solid var(--ff-color-border);\n    padding-bottom: 15px;\n  }\n\n  .options {\n    li {\n      margin-bottom: 5px;\n\n      a {\n        transition: ease-in-out .3s;\n        position: relative;\n        line-height: 2;\n        display: flex;\n        justify-content: space-between;\n        width: 100%;\n        border: 1px solid var(--ff-color-border);\n        align-items: center;\n        padding: 5px;\n        color: var(--ff-color-text);\n\n        &:hover {\n          text-decoration: none;\n          border: 1px solid var(--ff-color-link-hover);\n          color: var(--ff-color-link-hover);\n        }\n      }\n    }\n  }\n\n  .actions {\n    display: flex;\n    justify-content: flex-end;\n  }\n\n  .loader-wrapper {\n    position: relative;\n\n    .loader {\n      position: absolute;\n      z-index: 1000;\n      right: 0;\n      bottom: -7px;\n      height: 10px;\n      width: 100%;\n    }\n\n  }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-layout--docs {\n    background-color: var(--ff-color-bg-app);\n    &-contents {\n        max-width: 1012px;\n        margin: auto;\n        padding: 16px;\n    }\n    h1 {\n        margin: 16px 0;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n/* Hide the ::after divider that the header navigation adds to all children */\n.expert-button-wrapper::after {\n    display: none !important;\n}\n\n/* Dual-background gradient border technique from flowfuse.com */\n.expert-button {\n    background: linear-gradient(var(--ff-color-bg-app), var(--ff-color-bg-app)) padding-box,\n                linear-gradient(135deg, var(--ff-palette-red-600), var(--ff-palette-indigo-600), var(--ff-palette-red-600)) border-box;\n    border: 1px solid transparent;\n    animation: gradient-border-rotate 4s linear infinite;\n\n    &:hover {\n        border: 2px solid transparent;\n        margin: -1px;\n    }\n}\n\n@keyframes gradient-border-rotate {\n    0% {\n        background: linear-gradient(var(--ff-color-bg-app), var(--ff-color-bg-app)) padding-box,\n                    linear-gradient(0deg, var(--ff-palette-red-600), var(--ff-palette-indigo-600), var(--ff-palette-red-600)) border-box;\n    }\n    10% {\n        background: linear-gradient(var(--ff-color-bg-app), var(--ff-color-bg-app)) padding-box,\n                    linear-gradient(36deg, var(--ff-palette-red-600), var(--ff-palette-indigo-600), var(--ff-palette-red-600)) border-box;\n    }\n    20% {\n        background: linear-gradient(var(--ff-color-bg-app), var(--ff-color-bg-app)) padding-box,\n                    linear-gradient(72deg, var(--ff-palette-red-600), var(--ff-palette-indigo-600), var(--ff-palette-red-600)) border-box;\n    }\n    30% {\n        background: linear-gradient(var(--ff-color-bg-app), var(--ff-color-bg-app)) padding-box,\n                    linear-gradient(108deg, var(--ff-palette-red-600), var(--ff-palette-indigo-600), var(--ff-palette-red-600)) border-box;\n    }\n    40% {\n        background: linear-gradient(var(--ff-color-bg-app), var(--ff-color-bg-app)) padding-box,\n                    linear-gradient(144deg, var(--ff-palette-red-600), var(--ff-palette-indigo-600), var(--ff-palette-red-600)) border-box;\n    }\n    50% {\n        background: linear-gradient(var(--ff-color-bg-app), var(--ff-color-bg-app)) padding-box,\n                    linear-gradient(180deg, var(--ff-palette-red-600), var(--ff-palette-indigo-600), var(--ff-palette-red-600)) border-box;\n    }\n    60% {\n        background: linear-gradient(var(--ff-color-bg-app), var(--ff-color-bg-app)) padding-box,\n                    linear-gradient(216deg, var(--ff-palette-red-600), var(--ff-palette-indigo-600), var(--ff-palette-red-600)) border-box;\n    }\n    70% {\n        background: linear-gradient(var(--ff-color-bg-app), var(--ff-color-bg-app)) padding-box,\n                    linear-gradient(252deg, var(--ff-palette-red-600), var(--ff-palette-indigo-600), var(--ff-palette-red-600)) border-box;\n    }\n    80% {\n        background: linear-gradient(var(--ff-color-bg-app), var(--ff-color-bg-app)) padding-box,\n                    linear-gradient(288deg, var(--ff-palette-red-600), var(--ff-palette-indigo-600), var(--ff-palette-red-600)) border-box;\n    }\n    90% {\n        background: linear-gradient(var(--ff-color-bg-app), var(--ff-color-bg-app)) padding-box,\n                    linear-gradient(324deg, var(--ff-palette-red-600), var(--ff-palette-indigo-600), var(--ff-palette-red-600)) border-box;\n    }\n    100% {\n        background: linear-gradient(var(--ff-color-bg-app), var(--ff-color-bg-app)) padding-box,\n                    linear-gradient(360deg, var(--ff-palette-red-600), var(--ff-palette-indigo-600), var(--ff-palette-red-600)) border-box;\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.notifications-button-wrapper {\n\n  .notifications-button {\n    color: var(--ff-color-text);\n    display: flex;\n    align-items: center;\n    flex: 1;\n    justify-content: center;\n    width: 100%;\n    height: 100%;\n    padding: 18px;\n    position: relative;\n\n    > * {\n      pointer-events: none;\n    }\n\n    svg {\n      flex: 1;\n      width: 24px;\n      height: 24px;\n      transition: ease-in-out .1s;\n      object-fit: contain;\n    }\n\n    &:hover {\n      svg {\n        will-change: transform ;\n        color: var(--ff-color-accent);\n        transform: scale(1.25) translateZ(0); /* Using slight adjustments to whole values */\n        backface-visibility: hidden;\n        perspective: 1000px;\n        stroke-width: 1.5px;\n        shape-rendering: geometricPrecision;\n        text-rendering: geometricPrecision;\n      }\n    }\n\n    .ff-notification-pill {\n      bottom: 10px;\n      right: 5px;\n      position: absolute;\n      font-size: 0.65rem;\n      padding: 0 7px;\n      background-color: var(--ff-color-danger);\n    }\n  }\n}\n",".ff-dropdown-option-list {\n  max-height: 200px;\n  overflow-y: auto;\n}\n\n.ff-dropdown-option-list::-webkit-scrollbar {\n  width: 8px;\n  background-color: var(--ff-color-bg-surface);\n}\n\n.ff-dropdown-option-list::-webkit-scrollbar-thumb {\n  background-color: var(--ff-color-border-strong);\n  border-radius: 4px;\n}\n\n.ff-dropdown-option-list::-webkit-scrollbar-thumb:hover {\n  background-color: var(--ff-color-progress-track-neutral);\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n@use \"../stylesheets/components/team-list.scss\" as *;\n\n.ff-team-selection {\n    &.ff-listbox {\n        button {\n            border-radius: 0;\n            border: none;\n            background: none;\n\n            button {\n                padding: 0;\n\n            }\n            .icon {\n                svg {\n                    color: var(--ff-color-text);\n                    width: 80%;\n                    padding-left: 10px;\n                }\n            }\n        }\n    }\n}\n.ff-options .ff-team-selection-option {\n    border-color: var(--ff-color-border);\n    color: var(--ff-color-text);\n    border-bottom: 1px solid var(--ff-color-border);\n    display: flex;\n    align-items: center;\n\n    .ff-option-content {\n        padding: 12px 12px 12px 18px;\n        display: flex;\n        align-items: center;\n        gap: 15px;\n        width: 100%;\n\n        &.selected {\n            background: var(--ff-color-bg-emphasis);\n        }\n\n        .ff-icon {\n            width: 1.25rem;\n            height: 1.25rem;\n        }\n    }\n}\n\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.section {\n    margin-bottom: 15px;\n\n    & > .title {\n        position: relative;\n        margin-bottom: 5px;\n        display: flex;\n        align-items: self-end;\n        gap: 5px;\n\n        .icon {\n            color: var(--ff-color-accent-hover);\n        }\n\n        .counter {\n            opacity: .6;\n            font-size: 90%;\n        }\n\n        &:after {\n            height: 2px;\n            background: var(--ff-color-bg-emphasis);\n            content: '';\n            flex: 1;\n            align-self: center;\n        }\n\n        .text {\n            &:focus {\n                outline: 2px solid var(--ff-color-accent-hover);\n                outline-offset: 2px;\n            }\n        }\n    }\n\n    .results {\n        .result-wrapper {\n            transition: ease-in-out .3s;\n            padding: 2px 10px;\n            border-radius: 5px;\n            max-height: 90vh;\n            overflow: auto;\n\n            .result {\n                display: flex;\n                gap: 10px;\n                align-items: center;\n                line-height: 25px;\n\n                .icon {}\n                .title {}\n                .details {\n                    flex: 1;\n                    opacity: .4;\n                    font-size: 90%;\n                }\n                .actions {\n                    display: flex;\n                    gap: 5px;\n                }\n\n                &:focus {\n                    background: var(--ff-color-accent-surface);\n                    border: none;\n                    outline: none;\n                }\n            }\n\n            &:hover {\n                background: var(--ff-color-accent-surface);\n            }\n\n            &.show-more {\n                text-align: center;\n                margin: 3px 0;\n\n                a {\n                    padding: 5px 0;\n                    width: 100%;\n                    display: block;\n                    opacity: .6;\n\n                    &:focus {\n                        background: var(--ff-color-accent-surface);\n                        border: none;\n                        outline: none;\n                    }\n                }\n            }\n        }\n    }\n\n    &:last-of-type {\n        margin-bottom: 0;\n    }\n}\n\n@media screen and (max-width: 480px) {\n    .section {\n        .results {\n            .result-wrapper {\n                .result {\n                    .actions {\n                        display: none;\n                        background: red;\n                    }\n                }\n            }\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n#global-search {\n    .input-trigger {\n        display: block;\n        height: 34px;\n    }\n    .icon-trigger {\n        display: none;\n        cursor: pointer;\n        padding: 5px;\n        transition: ease-in-out .1s;\n        object-fit: contain;\n    }\n    .ff-icon-sm.search {\n        display: none;\n    }\n\n    &.focused {\n        .input-trigger, .icon-trigger {\n            display: none;\n        }\n\n        .ff-icon-sm.search {\n            display: inline;\n        }\n    }\n\n}\n@media screen and (max-width: 1023px) {\n    #global-search {\n        .input-trigger {\n            display: none;\n        }\n        .icon-trigger {\n            display: inline-block;\n            align-self: flex-end;\n\n            &:hover {\n                will-change: transform ;\n                transform: scale(1.25) translateZ(0); /* Using slight adjustments to whole values */\n                backface-visibility: hidden;\n                perspective: 1000px;\n                stroke-width: 1.5px;\n                shape-rendering: geometricPrecision;\n                text-rendering: geometricPrecision;\n                color: var(--ff-color-focus);\n            }\n        }\n    }\n}\n\n//@media screen and (max-width: 639px) {\n//    #global-search {\n//        .content-wrapper {\n//            .search-wrapper {\n//                .input-wrapper {\n//                    flex-direction: row\n//                }\n//            }\n//        }\n//    }\n//}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n#global-search {\n    padding: 0;\n    display: flex;\n    flex: 1;\n    justify-content: flex-end;\n    max-width: 100%;\n\n    .content-wrapper {\n        position: relative;\n        justify-content: flex-end;\n        display: flex;\n        flex-direction: column;\n        gap: 10px;\n        width: 100%;\n\n        .search-wrapper {\n            display: flex;\n            gap: 5px;\n            align-items: center;\n            width: 100%;\n\n            .mobile-search {\n                display: none;\n                cursor: pointer;\n                color: var(--ff-color-text-on-brand);\n                min-width: 20px;\n                min-height: 20px;\n            }\n\n            .close-button {\n                display: none;\n            }\n\n            .input-wrapper {\n                flex: 1;\n                display: flex;\n                flex-direction: column;\n                position: relative;\n                width: 100%;\n\n                .ff-icon-sm.close,\n                .ff-icon-sm.search {\n                    color: var(--ff-color-text-subtle);\n                    position: absolute;\n                    z-index: 1;\n                    top: 8px;\n\n                    &.search {\n                        left: 7px;\n                    }\n\n                    &.close {\n                        right: 7px;\n                    }\n                }\n\n                input {\n                    color: transparent;\n                    padding: 6px 27px;\n                    background: var(--ff-color-bg-surface);\n                    border-color: var(--ff-color-border);\n                    width: 100%;\n                    line-height: 20px;\n                    height: 34px;\n                    box-sizing: border-box;\n\n                    &.overlay-input {\n                        display: none;\n                    }\n                }\n            }\n        }\n\n        .results-wrapper {\n            background: var(--ff-color-bg-app);\n            min-width: 100%;\n            z-index: 120;\n            padding: 5px 5px 15px 5px;\n\n            .result-badge {\n                padding: 0 5px;\n                width: 50px;\n                max-height: 25px;\n                display: flex;\n                justify-content: center;\n                align-items: center;\n                gap: 5px;\n                border: 1px solid var(--ff-color-accent-hover);\n                color: var(--ff-color-accent-hover);\n                border-radius: 5px;\n                background: var(--ff-color-bg-app);\n            }\n        }\n    }\n\n    &.focused {\n        .content-wrapper {\n            position: fixed;\n            width: 60vw;\n            background: var(--ff-color-bg-app);\n            top: 15px;\n            left: 20vw;\n            z-index: 120;\n            border: none;\n            border-radius: 5px;\n\n            .search-wrapper {\n                .input-wrapper {\n                    .ff-icon-sm.search,\n                    .ff-icon-sm.close {\n                        color: var(--ff-color-text-subtle);\n                    }\n\n                    input {\n                        color: var(--ff-color-text-subtle);\n                        flex: 1;\n                        background: var(--ff-color-bg-app);\n                        display: none;\n                        width: 100%;\n\n                        &.overlay-input {\n                            display: block;\n                            transition: ease-in-out .3s;\n                            height: 34px;\n                            line-height: 20px;\n                            padding: 6px 27px;\n                            box-sizing: border-box;\n\n                            &.has-results {\n                                border-bottom-left-radius: 0;\n                                border-bottom-right-radius: 0;\n                            }\n                        }\n                    }\n                }\n            }\n\n            .results-wrapper {\n                overflow: auto;\n                max-height: 90vh;\n\n                .ff-icon-sm {\n                    min-width: 16px;\n                }\n            }\n        }\n\n        .overlay {\n            position: absolute;\n            width: 100vw;\n            height: 100vh;\n            background: rgba(0, 0, 0, .3);\n            left: 0;\n            top: 0;\n            z-index: 110;\n        }\n    }\n\n}\n\n@media screen and (max-width: 1023px) {\n    #global-search {\n        padding: 0px;\n        input.qwe {\n            background: red !important;\n        }\n        &.focused {\n            .content-wrapper {\n                width: 100%;\n                top: 0;\n                left: 0;\n                border-top-left-radius: 0;\n                border-top-right-radius: 0;\n\n                .search-wrapper {\n                    margin: 5px;\n                    padding-right: 10px;\n                    .close-button {\n                        display: block;\n                    }\n\n                }\n            }\n        }\n    }\n}\n@media screen and (max-width: 639px) {\n    #global-search {\n        .content-wrapper {\n            padding: 5px 0;\n\n            .search-wrapper {\n                .mobile-search {\n                    display: block;\n                }\n\n                .close,\n                .search,\n                input {\n                    display: none;\n                }\n\n                input {\n                    &.has-results {\n                        border-bottom-left-radius: 5px !important;\n                        border-bottom-right-radius: 5px !important;\n                    }\n                }\n\n            }\n        }\n\n        &.focused {\n            .content-wrapper {\n                padding: 10px;\n                .mobile-search {\n                    display: none;\n                }\n\n                .search-wrapper {\n                    .close,\n                    .search,\n                    input {\n                        display: block;\n                    }\n                }\n            }\n        }\n    }\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-layout--immersive {\n    height: 100vh;\n    display: flex;\n    flex-direction: column;\n\n    &--wrapper {\n        display: flex;\n        flex-direction: row;\n        flex: 1;\n        height: calc(100vh - 60px);\n        margin-top: 60px;\n    }\n\n    &--fullscreen &--wrapper {\n        height: 100vh;\n        margin-top: 0;\n    }\n\n    @media screen and (max-width: 1023px) {\n        .ff-header {\n            padding-left: 16px;\n        }\n    }\n}\n","@use \"../../ui-components/stylesheets/ff-colors.scss\" as *;\n\n.ff-notification-interview {\n  max-width: 450px;\n  background-color: var(--ff-color-bg-app);\n  box-shadow: -6px 6px 6px rgba(0, 0, 0, 0.25);\n  border-radius: 0 6px 6px 0;\n  padding: 12px 9px 12px 18px;\n  border: 1px solid var(--ff-color-link);\n  border-left: 8px solid var(--ff-color-link);\n\n  h3 {\n    font-size: 1.1rem;\n    margin-bottom: 12px;\n  }\n\n  p {\n    font-size: 1.1rem;\n  }\n\n  &--actions {\n    margin-top: 24px;\n    gap: 12px;\n    display: flex;\n    flex-direction: row-reverse;\n    justify-content: space-between;\n    font-size: 1rem;\n\n    .ff-btn.ff-btn--primary {\n      background-color: var(--ff-color-link-hover);\n      border-color: var(--ff-color-link-hover);\n\n      &:hover {\n        background-color: var(--ff-color-link-hover);\n      }\n    }\n  }\n}\n\n$ff-notifications-drawer-side-padding: 6px;\n\n.ff-notifications-drawer {\n  display: flex;\n  flex-direction: column;\n  height: 100%;\n  width: 100%;\n  padding: 0 !important;\n\n  > .header {\n    width: 100%;\n    padding: 1rem 1.5rem;\n    border-bottom: 1px solid var(--ff-color-border);\n    background: var(--ff-color-bg-app);\n    flex-shrink: 0;\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    box-sizing: border-box;\n\n    .title {\n      font-size: 1rem;\n      font-weight: 600;\n      color: var(--ff-color-text-muted);\n      margin: 0;\n      line-height: 1.5rem;\n      flex: 1;\n    }\n\n    .header-actions {\n      display: flex;\n      align-items: center;\n      gap: 0.75rem;\n\n      .ff-checkbox {\n        margin: 0;\n      }\n\n      .header-button {\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        width: 30px;\n        height: 30px;\n        padding: 0;\n        background: none;\n        border: none;\n        border-radius: 5px;\n        cursor: pointer;\n        color: inherit;\n        font: inherit;\n        transition: background-color 0.15s ease;\n\n        &:hover {\n          cursor: pointer;\n          background: var(--ff-color-bg-surface-raised);\n        }\n      }\n    }\n  }\n\n  > .controls {\n    width: 100%;\n    border-bottom: 1px solid var(--ff-color-border-strong);\n    background: var(--ff-color-bg-app);\n    display: flex;\n    flex-direction: column;\n    box-sizing: border-box;\n\n    .actions {\n      display: flex;\n      gap: 5px;\n      padding: 10px 12px;\n\n      .forge-badge {\n        background-color: var(--ff-color-bg-surface-raised);\n        border-radius: 5px;\n\n        &:hover {\n          cursor: pointer;\n          background-color: var(--ff-color-border-strong)\n        }\n\n        &.disabled {\n          color: var(--ff-color-text-subtle);\n\n          &:hover {\n            cursor: not-allowed;\n          }\n        }\n      }\n    }\n  }\n\n  .messages-wrapper {\n    flex: 1;\n    width: 100%;\n    background-color: var(--ff-color-bg-surface-raised);\n    overflow: auto;\n    $read: var(--ff-palette-grey-400);\n    $info: blue;\n    $warning: var(--ff-palette-yellow-600);\n    $error: var(--ff-palette-red-500);\n\n    .message-wrapper {\n      display: flex;\n      flex-direction: row;\n      color: var(--ff-color-text-subtle);\n      background-color: var(--ff-color-bg-app);\n      border-bottom: 1px solid var(--ff-color-border-strong);\n      border-left: 3px solid rgba(0, 0, 0, 0);\n      transition: ease-in-out .3s;\n      cursor: pointer;\n\n      .counter {\n        margin-top: 0.2rem;\n\n        .ff-notification-pill {\n          background-color: $read;\n          color: var(--ff-color-text-on-brand);\n          padding: 2px 7px;\n          border-radius: 6px;\n          font-size: 0.65rem;\n        }\n      }\n\n      .action {\n        display: flex;\n        justify-content: center;\n        align-items: center;\n        width: 40px;\n        cursor: default;\n\n        .ff-checkbox {\n          height: 13px;\n          width: 13px;\n          padding: 0;\n\n          span {\n            margin: 0;\n            padding: 0;\n          }\n        }\n      }\n\n      &:hover .title {\n        color: var(--ff-color-link);\n      }\n\n      &.unread {\n        border-left: 3px solid $info;\n        border-left-color: var(--ff-color-link);\n        color: var(--ff-color-text);\n\n        &.warning {\n          border-left: 3px solid $warning;\n\n          .counter .ff-notification-pill {\n            background-color: $warning;\n          }\n        }\n\n        &.error {\n          border-left: 3px solid $error;\n\n          .counter .ff-notification-pill {\n            background-color: $error;\n          }\n        }\n\n        .counter .ff-notification-pill {\n          background-color: $info;\n        }\n      }\n\n      .body {\n        flex: 1;\n        display: flex;\n        flex-direction: column;\n        padding: 9px $ff-notifications-drawer-side-padding*2 9px $ff-notifications-drawer-side-padding;\n\n        .header {\n          gap: 5px;\n          display: flex;\n          justify-content: space-between;\n          align-items: center;\n\n          .ff-icon {\n            height: 20px;\n            min-width: 20px;\n            min-height: 20px;\n            max-width: fit-content;\n            max-height: fit-content;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n          }\n\n          .title {\n            flex: 1;\n            transition: ease-in-out .3s;\n            margin: 0;\n          }\n\n          input {\n            &:hover {\n              cursor: pointer;\n            }\n          }\n        }\n\n        .text {\n          display: flex;\n          margin: 10px 0;\n          align-items: center;\n          line-height: 1.5rem;\n        }\n\n        .footer {\n          display: flex;\n          text-align: right;\n          color: var(--ff-color-text-subtle);\n          font-size: 80%;\n          padding: 0 $ff-notifications-drawer-side-padding;\n          justify-content: flex-end;\n        }\n      }\n\n      &:hover {\n        background-color: var(--ff-color-bg-surface-raised);\n      }\n    }\n  }\n\n  .empty {\n    flex: 1;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    text-align: center;\n    color: var(--ff-color-text-subtle);\n    width: 100%;\n    background-color: var(--ff-color-bg-surface-raised);\n  }\n\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.fade-enter-active,\n.fade-leave-active {\n    transition: opacity .1s ease-in;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n#right-drawer {\n    position: fixed;\n    border-left: 1px solid var(--ff-color-border-strong);\n    background: var(--ff-color-bg-surface);\n    height: calc(100% - 60px);\n    top: 60px;\n    right: -1000px;\n    z-index: 110;\n    width: 100%;\n    max-width: 0;\n    min-width: 0;\n    transition: right .3s ease-in-out, width .3s ease-in-out, max-width .3s ease-in-out, min-width .3s ease-in-out, box-shadow .3s ease-in-out, border-color .3s ease-in-out;\n    box-shadow: -5px 4px 8px -4px rgba(0, 0, 0, 0.1);\n    display: flex;\n    flex-direction: column;\n    overflow: hidden; // Changed from auto to hidden - let child components handle their own scrolling\n\n    // Hide border when closed to prevent visible grey line\n    &:not(.open) {\n        border-left-color: transparent;\n    }\n\n    // Hide border on small viewports where drawer is full-width\n    @media (max-width: 479px) {\n        border-left: none;\n    }\n\n    .resize-bar {\n        position: absolute;\n        left: -4px; // Center on border (50% of 8px width)\n        top: 0;\n        bottom: 0;\n        width: 8px;\n        cursor: ew-resize;\n        background: transparent;\n        z-index: 1001;\n\n        // Hide resize bar on small viewports where drawer is full-width\n        @media (max-width: 479px) {\n            display: none;\n        }\n    }\n\n    .header {\n        background: var(--ff-color-bg-app);\n        flex-shrink: 0;\n    }\n\n    &.open {\n        right: 0;\n        width: 100%;\n\n        // On small viewports: use 100% width (no minimum)\n        max-width: 100vw;\n        min-width: 0;\n\n        // On viewports 480-767px: use 480px minimum but no max-width constraint\n        // (pinning is disabled, so let JS control the width)\n        @media (min-width: 480px) and (max-width: 767px) {\n            min-width: 480px;\n            max-width: none;\n        }\n\n        // On viewports >= 768px: apply max-width constraints (pinning is enabled)\n        @media (min-width: 768px) {\n            max-width: 90vw;\n            min-width: 480px;\n\n            &.wider {\n                max-width: 90vw;\n            }\n        }\n    }\n\n    &.fixed {\n        position: relative; // Changed from initial to relative for resize bar positioning\n        height: 100%;\n        top: 0; // Reset top offset to prevent gap at top\n        box-shadow: none; // Remove shadow when pinned\n        flex-shrink: 0; // Prevent flex from shrinking the drawer below its set width\n        min-width: unset; // Remove responsive min-width constraint\n        max-width: none; // Remove responsive max-width constraint\n\n        // Hide drawer when pinned but closed to prevent grey block\n        &:not(.open) {\n            width: 0 !important;\n            min-width: 0 !important;\n            max-width: 0 !important;\n            overflow: hidden;\n            opacity: 0;\n            pointer-events: none;\n        }\n    }\n\n    &.resizing {\n        transition: none; // Disable transition while actively resizing for smooth dragging\n        max-width: none !important; // Remove max-width constraint to allow free resizing\n        min-width: unset !important; // Remove min-width constraint to allow free resizing\n    }\n\n    &.manually-resized {\n        max-width: none !important; // Keep custom width after manual resize\n        min-width: unset !important; // Keep custom width after manual resize\n    }\n\n    &.pinning {\n        transition: none !important; // Disable all transitions while pinning to prevent visual jump\n    }\n\n    &.opening {\n        // Only animate position during open, not width changes\n        transition: right .3s ease-in-out, box-shadow .3s ease-in-out, border-color .3s ease-in-out !important;\n    }\n\n    &.closing {\n        // Only animate position during close, not width changes\n        transition: right .3s ease-in-out, box-shadow .3s ease-in-out, border-color .3s ease-in-out !important;\n\n        // Maintain current width/max-width/min-width during slide-out to prevent shrinking animation\n        // These will be overridden by inline styles from drawerStyle\n        max-width: none !important;\n        min-width: unset !important;\n    }\n}\n",".ff-layout--box.ff-login {\n    flex-direction: column;\n    min-height: 660px;\n    overflow: auto;\n\n    .ff-layout--box--wrapper {\n        max-width: 1048px;\n        min-height: 660px;\n        min-width: 400px;\n\n        .ff-layout--box--right {\n            padding: 0;\n            display: flex;\n            justify-content: center;\n            align-items: center;\n\n        }\n        .ff-layout--box--content {\n            max-width: 380px;\n        }\n    }\n}\n","@use '../ui-components/stylesheets/ff-colors.scss' as *;\n@use '../ui-components/stylesheets/ff-utility.scss' as *;\n\n@tailwind base;\n@tailwind components;\n@tailwind utilities;\n\n$sidenav_width: 250px;\n$transition_time: .15s;\n\n/*\n    Layout - Box\n        used in login/setup/signup screens\n*/\n\n$nav_height: 60px;\n\n.ff-layout--box {\n    font-family: 'Heebo', system-ui, sans-serif;\n    background-color: var(--ff-color-bg-app);\n    display: flex;\n    justify-content: center;\n    align-items: center;\n    height: 100%;\n    min-height: inherit;\n    background-image: url(\"./images/ff-bg-flow.jpg\");\n    background-size: cover;\n    background-repeat: no-repeat;\n    background-position-y: 0%;\n    color: var(--ff-color-text-muted);\n\n    .ff-logo--dark { display: none; }\n    [data-theme=\"dark\"] & {\n        background-image: none;\n        .ff-logo--light { display: none; }\n        .ff-logo--dark { display: block; }\n    }\n    .ff-error-inline {\n        font-size: 0.875rem;;\n        display: block;\n        margin-top: 0.25rem;\n        color: var(--ff-color-danger-text);\n    }\n\n    &.ff--center-box {\n        flex-direction: column;\n        min-height: fit-content;\n        overflow: auto;\n\n        .ff-layout--box--wrapper {\n            display: flex;\n            width: 100%;\n            max-height: fit-content;\n            height: fit-content;\n\n            .ff-layout--box--left,\n            .ff-layout--box--right {\n                width: 100%;\n            }\n        }\n    }\n}\n\n.ff-layout--box--wrapper {\n    width: calc(100% - 48px);\n    height: 60%;\n    display: grid;\n}\n.ff-layout--box--left {\n    .ff-logo {\n        max-width: 150px;\n        margin-bottom: 16px;\n    }\n}\n.ff-layout--box--right {\n    .ff-logo {\n        max-width: 200px;\n        margin: auto;\n        margin-bottom: 48px;\n    }\n}\n\n.ff-layout--box--left,\n.ff-layout--box--right {\n    height: 100%;\n    justify-content: center;\n    align-items: center;\n}\n\n.ff-layout--box--left {\n    h1 {\n        max-width: 420px;\n    }\n    h3 {\n        font-size: 1.25rem;\n    }\n    p {\n        font-weight: 300;\n        line-height: 1.5rem;\n    }\n}\n\n.ff-layout--box--content {\n    width: 100%;\n}\n\n.ff-layout--box--right .ff-layout--box--content {\n    min-height: 400px;\n    padding: 64px 24px;\n    @apply rounded-xl;\n    color: var(--ff-color-text-muted);\n    h2 {\n        margin-top: -12px;\n        margin-bottom: 24px;\n    }\n    h5 {\n        font-weight: bold;\n        margin-bottom: 0.75rem;\n    }\n    label {\n        display: block;\n        color: var(--ff-color-text-muted);\n        margin-bottom: 4px;\n    }\n    .ff-radio-btn label {\n        font-weight: normal;\n    }\n    p {\n        margin-bottom: 1rem;\n    }\n    a {\n        color: var(--ff-color-link);\n    }\n    .ff-input:not(.ff-input--error) {\n        border-color: var(--ff-color-border-strong);\n    }\n    .ff-input {\n        border-width: 2px;\n        &:focus-within {\n            border-color: var(--ff-color-accent);\n        }\n    }\n    .ff-radio-btn {\n        .checkbox {\n          border: 1px solid var(--ff-color-border-strong);\n        }\n    }\n\n    .ff-error-inline {\n        margin-bottom: 12px;\n    }\n\n    .ff-actions {\n        margin-top: 18px;\n    }\n    .ff-btn {\n        text-transform: uppercase;\n        width: 100%;\n        margin-bottom: 6px;\n    }\n    .ff-btn.ff-btn--primary {\n        background-color: var(--ff-color-accent);\n        color: var(--ff-color-text-on-brand);\n        &:hover {\n            background-color: var(--ff-color-accent-hover-bg);\n        }\n        &:disabled {\n            background-color: var(--ff-color-border-strong);\n            color: var(--ff-color-text-subtle);\n        }\n    }\n    .ff-btn.ff-btn--tertiary {\n        color: var(--ff-color-focus);\n        font-weight: normal;\n        border: 1px solid transparent;\n        &:hover {\n            background-color: transparent;\n            border-color: var(--ff-color-accent);\n        }\n    }\n}\n\n/*\n    Layout - Platform / Plain\n        used in all other pages\n*/\n\n.ff-layout--platform,\n.ff-layout--plain {\n    min-height: inherit;\n    flex: 1;\n    display: flex;\n    flex-direction: column;\n}\n\n.ff-layout--platform--wrapper{\n    padding-top: $nav_height;\n    position: absolute;\n    width: 100%;\n    height: 100%;\n    overflow: hidden;\n    display: flex;\n    flex-direction: row;\n\n    .ff-view {\n        display: flex;\n        flex-direction: column;\n        position: relative;\n        overflow-y: auto;\n        overflow-x: hidden;\n        width: 100%;\n        height: 100%;\n        transition: ease-in-out margin-left .3s;\n    }\n    main {\n        background-color: var(--ff-color-bg-surface);\n    }\n    .ff-page-header {\n        background-color: var(--ff-color-bg-app);\n        border-color: var(--ff-color-border);\n    }\n}\n\n.ff-layout--plain--wrapper {\n    height: 100%;\n    display: flex;\n    flex-direction: column;\n    flex: 1;\n\n    main {\n        background-color: var(--ff-color-bg-surface);\n        flex: 1;\n    }\n}\n\n.ff-notifications {\n    position: absolute;\n    right: 12px;\n    top: $nav_height + 12px;\n    z-index: 130;\n    min-width: 350px;\n}\n\n.ff-notification-toast {\n    min-height: $nav_height;\n    margin-bottom: $ff-unit-md;\n}\n\n.notifications-list-move,\n.notifications-list-enter-active,\n.notifications-list-leave-active {\n    transition: all 0.3s ease;\n}\n\n.notifications-list-enter-from,\n.notifications-list-leave-to {\n    opacity: 0;\n    transform: translateX(200px);\n}\n\n.notifications-list-leave-active {\n    position: absolute;\n}\n\n.ff-team-selection {\n    position: relative;\n    display: flex;\n    justify-content: space-between;\n    min-width: $sidenav_width;\n    .ff-dropdown-options {\n        position: absolute;\n        min-width: $sidenav_width;\n        display: block;\n        z-index: 10;\n        border-bottom: 0;\n        max-height: initial;\n        &.active {\n            display: block;\n        }\n        .ff-dropdown-option {\n            padding: 0;\n            border-bottom: none;\n        }\n    }\n}\n.ff-team-selection-name {\n    margin-left: 10px;\n    display: flex;\n    flex-direction: column;\n    justify-content: center;\n    align-items: flex-start;\n    label {\n        font-size: 0.7rem;\n        line-height: 0.7rem;\n        color: var(--ff-color-text-subtle);\n        margin-left: 0;\n    }\n    h5 {\n        color: var(--ff-color-text);\n        white-space: nowrap;\n    }\n}\n.ff-team-selection > div {\n    flex-grow: 1;\n    display: flex;\n    align-items: center;\n    cursor: pointer;\n}\n.ff-banner {\n    background-color: var(--ff-color-surface-dark);\n    color: var(--ff-color-surface-dark-text);\n    padding: 8px;\n    text-align: center;\n    border-bottom: 2px solid var(--ff-color-banner-accent);\n\n    &.ff-banner-info {\n        background-color: var(--ff-color-status-info-surface);\n        color: var(--ff-color-text-muted);\n        text-align: left;\n        border-bottom: none;\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        padding-left: 16px;\n        padding-right: 16px;\n    }\n\n    &.ff-banner-warning {\n        background-color: var(--ff-color-danger-darker);\n        color: var(--ff-color-text-on-brand);\n        text-align: left;\n        border-bottom: 2px solid var(--ff-color-banner-warning-accent);\n        display: flex;\n        align-items: center;\n        justify-content: space-between;\n        padding-left: 16px;\n        padding-right: 16px;\n    }\n}\n.ff-header {\n    z-index: 120;\n    background-color: var(--ff-color-bg-app);\n    height: $nav_height;\n    border-bottom: 1px solid var(--ff-color-border);\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    position: fixed;\n    width: 100%;\n    .ff-logo-wrapper {\n        display: flex;\n        align-items: center;\n        min-width: min-content;\n    }\n    img.ff-logo {\n        padding-top: 18px;\n        padding-bottom: 18px;\n        height: $nav_height;\n        width: auto;\n        &:hover {\n            cursor: pointer;\n        }\n    }\n    .ff-header--mobile-toggle {\n        padding: 16px;\n        svg {\n            fill: var(--ff-color-text);\n            min-width: 24px;\n        }\n        &.active {\n            cursor: pointer;\n            background-color: var(--ff-color-nav-item-hover);\n        }\n    }\n    .ff-header--mobile-usertoggle {\n        padding: 16px;\n        display: flex;\n        align-items: center;\n        img {\n            padding: 0;\n            min-width: 24px;\n        }\n        &.active {\n            cursor: pointer;\n            background-color: var(--ff-color-bg-surface-raised);\n        }\n    }\n    .ff-navigation {\n        position: absolute;\n        display: flex;\n        flex-direction: column;\n        top: 100%;\n        //margin-top: 2px;\n        img {\n            padding: 0;\n            margin-right: 9px;\n        }\n        .ff-user {\n            display: flex;\n            align-items: center;\n            margin-left: -2px;\n            position: relative;\n            transition: ease-in-out .1s;\n            object-fit: contain;\n            will-change: transform;\n            .ff-notification-pill {\n                font-size: 0.65rem;\n                padding: 0px 6px;\n                background-color: var(--ff-color-danger-strong);\n                border: 1px solid var(--ff-color-nav-item-border);\n                position: absolute;\n                bottom: -9px;\n                line-height: 0.85rem;\n                right: 0;\n            }\n            &:hover {\n                transform: scale(1.25) translateZ(0); /* Using slight adjustments to whole values */\n                backface-visibility: hidden;\n                perspective: 1000px;\n                stroke-width: 1.5px;\n                shape-rendering: geometricPrecision;\n                text-rendering: geometricPrecision;\n            }\n        }\n    }\n    .ff-border-left {\n        border-width: 0 0 0 1px;\n        border-color: var(--ff-color-border-strong);\n    }\n    .ff-navigation-right {\n        height: 100%;\n        ul {\n            background: var(--ff-color-bg-app);\n            border: 1px solid var(--ff-color-border);\n\n            .ff-nav-item {\n                transition: ease-in-out .3s;\n                &:hover {\n                    background: var(--ff-color-bg-surface-raised);\n                    label, svg {\n                        color: var(--ff-color-accent-hover);\n                        fill: var(--ff-color-accent-hover);\n                    }\n                }\n            }\n        }\n    }\n    .ff-desktop-navigation-right {\n        & > * {\n            position: relative;\n            &:after {\n                position: absolute;\n                content: '';\n                width: 1px;\n                height: 15px;\n                background: var(--ff-color-border);\n                top: 40%;\n            }\n        }\n    }\n    .ff-mobile-navigation-right {\n        img,\n        button {\n            cursor: pointer;\n        }\n    }\n\n@media screen and (max-width: 1023px) {\n    .ff-mobile-navigation-right {\n        .ff-header--mobile-teamtoggle {\n            display: flex;\n            align-items: center;\n            .ff-avatar {\n                border: 2px solid var(--ff-color-nav-item-border);\n                transition: ease-in-out .1s;\n            }\n            &:hover {\n                .ff-avatar {\n                    will-change: transform;\n                    transform: scale(1.25) translateZ(0);\n                    backface-visibility: hidden;\n                    perspective: 1000px;\n                    border-color: var(--ff-color-accent);\n                }\n            }\n        }\n    }\n}\n    .ff-dropdown {\n        color: var(--ff-color-text-on-brand);\n        min-width: $sidenav_width;\n        position: relative;\n        top: 0;\n        margin-top: 0;\n        .ff-dropdown-selected {\n            background: none;\n            padding: 16px 16px 16px 24px;\n            display: flex;\n            flex: 1;\n            justify-content: space-between;\n            align-items: center;\n            border: none;\n            border-radius: 0;\n        }\n        .ff-dropdown-options {\n            width: 100%;\n            border-color: var(--ff-color-border);\n            border-right: 0;\n\n            .ff-dropdown-option {\n                &:hover {\n                    label, svg {\n                        color: var(--ff-color-accent-hover);\n                        fill: var(--ff-color-accent-hover);\n                    }\n                }\n            }\n        }\n    }\n    .ff-user-options {\n        width: auto;\n        min-width: $nav_height;\n\n        &.ff-navigation {\n            left: auto;\n        }\n        .ff-dropdown-options {\n            width: $sidenav_width;\n        }\n    }\n}\n\n.ff-user-options {\n    .ff-dropdown-options {\n        max-height: initial;\n        .ff-dropdown-option {\n            border-bottom: none;\n\n            &.danger {\n                label, svg {\n                    color: var(--ff-color-danger-darker);\n                    fill: var(--ff-color-danger-darker);\n                }\n            }\n        }\n    }\n}\n\n\n.ff-navigation,\n.ff-team-selection ul {\n    .ff-nav-item {\n        &:hover {\n            cursor: pointer;\n        }\n    }\n}\n\n.ff-navigation .ff-nav-item {\n    border-bottom: 1px solid var(--ff-color-nav-divider);\n    padding: 16px 16px 16px 24px;\n    display: grid;\n    grid-template-columns: 20px 1fr;\n    svg {\n        fill: var(--ff-color-text-subtle);\n        width: 20px;\n    }\n    svg.hollow {\n        fill: none;\n        stroke: var(--ff-color-text-on-brand);\n    }\n    label {\n        margin-left: 12px;\n        color: var(--ff-color-text);\n        white-space: nowrap;\n        pointer-events: none;\n    }\n}\n\n.ff-team-selection ul .ff-nav-item {\n    border-bottom: 1px solid var(--ff-color-nav-divider);\n    padding: 16px 16px 16px 22px;\n    display: grid;\n    align-items: center;\n    grid-template-columns: 24px 1fr;\n    height: $nav_height;\n    svg {\n        fill: var(--ff-color-text-on-brand);\n        width: 20px;\n    }\n    label {\n        margin-left: 12px;\n        color: var(--ff-color-text-on-brand);\n        white-space: nowrap;\n        pointer-events: none;\n    }\n}\n\n.ff-navigation {\n    position: fixed;\n    left: -$sidenav_width;\n    z-index: 10;\n    transition: 0.3s left, 0.3s right;\n    -webkit-transition: 0.3s left, 0.3s right;\n    width: $sidenav_width;\n    // handle router-link active styling for primary options\n    .ff-side-navigation--primary {\n        width: 100%;\n        transition: $transition_time width;\n        -webkit-transition: $transition_time width;\n        .router-link-active {\n            li {\n                label {\n                    color: var(--ff-color-nav-item-active-text);\n                }\n                svg {\n                    fill: var(--ff-color-nav-item-active-text);\n                    &.hollow {\n                        fill: none;\n                        stroke: var(--ff-color-nav-item-active-text);\n                    }\n                }\n            }\n        }\n    }\n    // nested menu options, including router-link highlighting\n    .ff-side-navigation--nested {\n        width: 0;\n        overflow: hidden;\n        .ff-nested-title {\n            color: var(--ff-color-nav-item-active-text);\n            font-weight: bold;\n            font-size: 1.1rem;\n            padding: 12px 16px;\n            white-space: nowrap;\n            overflow: hidden;\n            text-overflow: ellipsis;\n        }\n        .ff-nav-item {\n            padding: 12px 16px;\n        }\n        .router-link-active {\n            li {\n                background-color: var(--ff-color-nav-item-active);\n            }\n            label {\n                color: var(--ff-color-nav-item-active-text);\n            }\n            svg {\n                fill: var(--ff-color-nav-item-active-text);\n                &.hollow {\n                    fill: none;\n                    stroke: var(--ff-color-nav-item-active-text);\n                }\n            }\n        }\n    }\n    // navigation-right = the admin/user settings\n    &.ff-navigation-right {\n        left: initial;\n        right: -$sidenav_width;\n        .ff-nav-item {\n            &.danger {\n                label, svg {\n                    color: var(--ff-color-danger-darker);\n                    fill: var(--ff-color-danger-darker);\n                }\n            }\n            &.create {\n                background: var(--ff-color-bg-surface-raised);\n                border-bottom: none;\n            }\n        }\n\n        &.without-divider {\n            .ff-nav-item:last-child {\n                border-top: unset;\n            }\n        }\n    }\n    &.open {\n        left: 0;\n    }\n    &.closed {\n        left: -$sidenav_width;\n    }\n    &.ff-navigation-right.open {\n        left: initial;\n        right: 0;\n    }\n    .ff-navigation-divider {\n        background-color: var(--ff-color-nav-divider-strong);\n        color: var(--ff-color-text-on-brand);\n        padding: 6px 12px;\n        height: 32px;\n        display: block;\n        font-size: 0.85rem;\n        border-bottom: 1px solid var(--ff-color-nav-divider);\n        text-overflow: ellipsis;\n        white-space: nowrap;\n        overflow: hidden;\n    }\n    .ff-dropdown-options .ff-dropdown-option {\n        padding: 0;\n    }\n    .ff-nav-item {\n        display: flex;\n        justify-content: space-between;\n        border-bottom: 1px solid var(--ff-color-border);\n    }\n    .disabled {\n        pointer-events: none;\n        opacity: 0.5;\n    }\n    .ff-notification-pill {\n        padding: 2px 12px;\n        background-color: var(--ff-color-danger-strong);\n        border: 1px solid var(--ff-color-pill-ring);\n    }\n    .ff-side-navigation--options-back {\n        li {\n            border-top: 1px solid var(--ff-color-nav-divider);\n        }\n    }\n}\n\n/* MOBILE LAYOUT */\n@media screen and (min-width: $ff-screen-lg) {\n    /* Box */\n    .ff-layout--box--wrapper {\n        width: 85%;\n    }\n    .ff-navigation {\n        left: 0;\n        position: relative;\n    }\n    .ff-header {\n        .ff-header--mobile-toggle {\n            display: none;\n        }\n        .ff-header--mobile-usertoggle,\n        .ff-header--mobile-teamtoggle,\n        .ff-header--mobile-notificationstoggle,\n        .ff-header--mobile-experttoggle {\n            display: none;\n        }\n        .ff-logo-wrapper {\n            width: 250px;\n        }\n        img.ff-logo {\n            padding: 18px;\n        }\n    }\n}\n\n#ff-app {\n    #left-drawer {\n        min-width: $sidenav_width;\n        position: relative;\n        transition: ease-in-out left .3s;\n        height: 100%;\n        z-index: 100;\n        left: 0;\n        background: var(--ff-color-bg-app);\n        border-right: 1px solid var(--ff-color-border);\n        overflow: auto;\n\n        .ff-main-navigation {\n            .ff-menu-groups {\n                padding-top: 10px;\n\n                .ff-menu-group {\n                    padding: 5px;\n\n                    .ff-group-title {\n                        margin: 10px 0 15px;\n                        padding: 0 10px;\n                        text-transform: uppercase;\n                        color: var(--ff-color-text-subtle);\n                        font-size: 11px;\n                    }\n\n                    .ff-menu-entries {\n\n                        .ff-menu-entry {\n                            margin: 0 10px 5px 10px;\n\n                            &:last-of-type {\n                                margin-bottom: 0;\n                            }\n\n                            .ff-nav-item {\n                                padding: 5px 10px;\n                                border-radius: 5px;\n                                .ff-tooltip-container {\n                                    max-height: 20px;\n                                }\n\n                                & > div {\n                                    gap: 5px;\n                                }\n\n                                &:hover {\n                                    background: var(--ff-color-bg-surface-raised);\n                                }\n                            }\n\n                            .router-link-active {\n                                .ff-nav-item {\n                                    background: var(--ff-color-accent-strong);\n                                    color: var(--ff-color-text-on-brand);\n                                }\n                            }\n\n                            .disabled {\n                                .ff-nav-item {\n                                    color: var(--ff-color-text-disabled);\n                                    cursor: not-allowed;\n                                }\n                            }\n                        }\n                    }\n                }\n            }\n        }\n    }\n\n    &.hidden-left-drawer {\n        #left-drawer {\n            left: -$sidenav_width;\n\n            &.active {\n                left: -$sidenav_width;\n            }\n        }\n        .ff-view {\n            margin-left:  -$sidenav_width;\n        }\n    }\n}\n\n\n/* CSS Media Query for Mobile */\n@media screen and (max-width: 1023px) {\n    #ff-app {\n        #left-drawer {\n            left: -$sidenav_width;\n            transition: ease-in-out .3s;\n            will-change: box-shadow;\n\n            &.active {\n                box-shadow: 6px 0 12px rgba(0, 0, 0, 0.2);\n                left: 0;\n            }\n        }\n\n        .ff-view {\n            margin-left:  -$sidenav_width;\n        }\n    }\n}\n",".fade-enter-active,\n.fade-leave-active {\n  transition: opacity 0.3s ease;\n}\n\n.fade-enter-from,\n.fade-leave-to {\n  opacity: 0;\n}\n\n\n.mobile-menu-fade-enter-active,\n.mobile-menu-fade-leave-active {\n  transition: opacity 0.1s ease-in;\n}\n\n.mobile-menu-fade-enter-from,\n.mobile-menu-fade-leave-to {\n  opacity: 0;\n}\n\n\n.primary-fade-enter-active,\n.primary-fade-leave-active {\n  transition: opacity 0.1s ease-in;\n}\n.primary-fade-enter-from,\n.primary-fade-leave-to {\n  opacity: 0;\n}\n\n.page-fade-enter-active, .page-fade-leave-active {\n  transition: opacity .2s ease-in-out;\n}\n\n.page-fade-enter, .page-fade-leave-to {\n  opacity: 0;\n}\n",".jiggle {\n  animation: jiggle 0.3s infinite;\n}\n@keyframes jiggle {\n  0%, 100% {\n    transform: rotate(0deg);\n  }\n  25% {\n    transform: rotate(3deg);\n  }\n  50% {\n    transform: rotate(-3deg);\n  }\n  75% {\n    transform: rotate(3deg);\n  }\n}\n\n.pulse-scale {\n  animation: pulse-scale 1.5s infinite ease-in-out;\n}\n\n@keyframes pulse-scale {\n  0% {\n    transform: scale(1);\n  }\n  50% {\n    transform: scale(1.5);\n  }\n  100% {\n    transform: scale(1);\n  }\n}\n\n.pulse {\n  animation: pulse-animation 2s infinite;\n}\n@keyframes pulse-animation {\n  0% {\n    box-shadow: 0 0 0 0px rgba(0, 0, 0, 0.2);\n  }\n  100% {\n    box-shadow: 0 0 0 20px rgba(0, 0, 0, 0);\n  }\n}\n","@use \"../../ui-components/stylesheets/ff-colors.scss\" as *;\n\n.ff-chart {\n    padding: 8px 18px;\n    border: 1px solid var(--ff-color-border-strong);\n    border-radius: 6px;\n    background-color: var(--ff-color-bg-app);\n    h3 {\n        margin: 0;\n    }\n}\n\n.ff-chart-device-status {\n    display: flex;\n    gap: 4px;\n    label {\n        display: block;\n    }\n    .ff-chart-bar {\n        text-align: right;\n        border-right: 1px solid;\n        border-color: var(--bar-border);\n        color: var(--text-color);\n        transition: 0.3s opacity;\n        >div, >label {\n            padding: 3px 6px;\n            font-size: 0.875rem;\n            font-weight: 600;\n        }\n        > div {\n            border-width: 1px 0px 1px 1px;\n            border-style: solid;\n            background-color: var(--bar-bg);\n            border-color: var(--bar-border);\n            transition: 0.3s background-color, 0.3s color, 0.3s opacity;\n        }\n        &:hover {\n            >div {\n                background-color: var(--bar-border);\n            }\n        }\n        label {\n            text-transform: capitalize;\n        }\n        &:hover {\n            cursor: pointer;\n        }\n        &--error {\n            --bar-bg: var(--ff-color-status-error-bg);\n            --bar-border: var(--ff-color-status-error-border);\n            --text-color: var(--ff-color-status-error-text);\n        }\n        &--never,\n        &--stopped {\n            --bar-bg: var(--ff-color-bg-emphasis);\n            --bar-border: var(--ff-color-border-strong);\n            --text-color: var(--ff-color-text-deep);\n        }\n        &--offline {\n            --bar-bg: var(--ff-color-bg-surface-raised);\n            --bar-border: var(--ff-color-border-strong);\n            --text-color: var(--ff-color-text-deep);\n        }\n        &--safe {\n            --bar-bg: var(--ff-color-status-safe-bg);\n            --bar-border: var(--ff-color-status-safe-border);\n            --text-color: var(--ff-color-status-safe-text);\n        }\n        &--running {\n            --bar-bg: var(--ff-color-status-success-bg);\n            --bar-border: var(--ff-color-status-success-border);\n            --text-color: var(--ff-color-status-success-text);\n        }\n        &.ghost {\n            opacity: 0.15;\n        }\n    }\n}\n","@use '../ui-components/stylesheets/ff-colors.scss' as *;\n\n@use \"./layouts.scss\" as *;\n@use \"./transitions.scss\" as *;\n@use \"./animations.scss\" as *;\n@use \"./components/charts.scss\" as *;\n\n/* Define Font Family */\n/* latin */\n@font-face {\n    font-family: 'Heebo';\n    font-style: normal;\n    font-weight: 400;\n    src: url('./assets/fonts/Heebo-Regular.ttf') format('ttf');\n    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n/* Define Global Styles */\n\nhtml, body, #app {\n    height: 100%;\n    display: flex;\n    flex-direction: column;\n    flex: 1;\n}\n\n@layer base {\n    h1, h2, h3 {\n        font-weight: 500;\n    }\n}\n\n#ff-app {\n    flex: 1;\n    background-color: var(--ff-color-border-strong);\n}\n\n.ff-link {\n    color: var(--ff-color-link);\n    &:hover {\n        cursor: pointer;\n        color: var(--ff-color-link-hover);\n        text-decoration: underline;\n    }\n}\n\n.ff-avatar {\n    width: 24px;\n    height: 24px;\n    border-radius: 4px;\n}\n.ff-avatar-large {\n    width: 48px;\n    height: 48px;\n    border-radius: 8px;\n}\n.ff-bg-dark {\n    background-color: var(--ff-color-surface-dark);\n    .ff-btn.ff-btn--primary {\n        background-color: var(--ff-color-splash-brand-bg);\n        &:hover {\n            background-color: var(--ff-color-splash-brand-bg-hover);\n        }\n    }\n}\n\n.ff-loading {\n    width: 100%;\n    height: 100%;\n    h4 {\n        font-size: 1.5rem;\n        margin-top: 1rem;\n        font-weight: 600;\n    }\n    &.theme-light {\n        color: var(--ff-color-text-strong);\n    }\n    &.theme-dark {\n        color: var(--ff-color-text-on-brand);\n    }\n}\n\n.ff-icon.ff-clickable {\n    cursor: pointer;\n    path, circle, rect {\n        transition: 0.3s color, 0.3s stroke, 0.3s fill;\n        -webkit-transition: 0.3s color, 0.3s stroke, 0.3s fill;\n    }\n    &:hover {\n        color: var(--ff-color-link);\n    }\n}\n\n.ff-icon-xl {\n    width: 48px;\n    height: 48px;\n    stroke-width: 1px;\n}\n\n.ff-dialog-box a {\n    color: var(--ff-color-link);\n    &:hover {\n        color: var(--ff-color-link-hover);\n    }\n}\n\n.ff-dialog-box--info {\n    p {\n        margin-bottom: 12px;\n    }\n    img {\n        width: 150px;\n        height: 150px;\n    }\n}\n\n.ff-no-data {\n    background-color: var(--ff-color-bg-surface-raised);\n    color: var(--ff-color-text-subtle);\n    font-size: 0.875rem;\n    border: var(--ff-color-border) solid 1px;\n    padding: 12px;\n    text-align: center;\n\n    &.ff-no-data-large {\n        padding: 64px 12px;\n    }\n\n    &--boxed {\n        @extend .ff-no-data;\n\n       .message {\n           display: block;\n           text-align: center;\n           margin: 10px 0 10px;\n           padding: 10px 0 10px;\n           border: 1px solid var(--ff-color-border-strong);\n       }\n    }\n}\n\nlabel {\n    cursor: inherit;\n}\n\n::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */\n    color: var(--ff-color-text-subtle) !important;\n    opacity: 1; /* Firefox */\n}\n\n/* Ensure headlessui MenuItem pointer for active `menuitem` anchors */\n[role=\"menu\"] a[role=\"menuitem\"] {\n    cursor: pointer\n}\n\n.ff-dialog-fixed-height .ff-dialog-content {\n    overflow-y: visible;\n}\n\n.ff-breadcrumbs {\n    display: flex;\n    align-items: center;\n    label {\n        color: var(--ff-color-link);\n        cursor: pointer;\n        &:hover {\n            text-decoration: underline;\n        }\n    }\n    span:last-child label {\n        pointer-events: none;\n        color: var(--ff-color-text);\n    }\n}\n\n// Handle nested buttons in a data table\n\n.ff-data-table--cell a:not(.ff-btn):hover,\n.ff-data-table--cell a:hover svg.ff-icon {\n    color: var(--ff-color-link);\n}\n\n.ff-data-table--data .ff-data-table--row--nested .ff-data-table--cell {\n    background-color: var(--ff-color-bg-surface);\n    &:first-child {\n        padding-left: 36px;\n    }\n}\n\n.ff-data-table--data .ff-data-table--row--nested.selectable:hover .ff-data-table--cell {\n    background-color: var(--ff-color-bg-surface-raised);\n}\n\n.ff-page-banner {\n    border-radius: 5px;\n    background-color: var(--ff-color-status-info-surface);\n    color: var(--ff-color-text-deep);\n    text-align: left;\n    border: 1px solid var(--ff-color-status-info-surface-border);\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    padding: 8px 16px;\n\n    &.minimal {\n        background: none;\n        border: none;\n        border-radius: 0;\n    }\n}\n\n.clipped-overflow {\n  display: -webkit-box;\n  -webkit-box-orient: vertical;\n  -webkit-line-clamp: 1;\n  overflow: hidden;\n  text-overflow: ellipsis;\n\n  // number of lines to clip to\n  &--two-lines {\n    -webkit-line-clamp: 2;\n  }\n  &--three-lines {\n    -webkit-line-clamp: 3;\n  }\n  &--four-lines {\n    -webkit-line-clamp: 4;\n  }\n}\n",null,"@layer theme, base, components, utilities;\n\n@layer theme {\n  @theme default {\n    --font-sans:\n      ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\",\n      \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n    --font-serif: ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif;\n    --font-mono:\n      ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\",\n      \"Courier New\", monospace;\n\n    --color-red-50: oklch(97.1% 0.013 17.38);\n    --color-red-100: oklch(93.6% 0.032 17.717);\n    --color-red-200: oklch(88.5% 0.062 18.334);\n    --color-red-300: oklch(80.8% 0.114 19.571);\n    --color-red-400: oklch(70.4% 0.191 22.216);\n    --color-red-500: oklch(63.7% 0.237 25.331);\n    --color-red-600: oklch(57.7% 0.245 27.325);\n    --color-red-700: oklch(50.5% 0.213 27.518);\n    --color-red-800: oklch(44.4% 0.177 26.899);\n    --color-red-900: oklch(39.6% 0.141 25.723);\n    --color-red-950: oklch(25.8% 0.092 26.042);\n\n    --color-orange-50: oklch(98% 0.016 73.684);\n    --color-orange-100: oklch(95.4% 0.038 75.164);\n    --color-orange-200: oklch(90.1% 0.076 70.697);\n    --color-orange-300: oklch(83.7% 0.128 66.29);\n    --color-orange-400: oklch(75% 0.183 55.934);\n    --color-orange-500: oklch(70.5% 0.213 47.604);\n    --color-orange-600: oklch(64.6% 0.222 41.116);\n    --color-orange-700: oklch(55.3% 0.195 38.402);\n    --color-orange-800: oklch(47% 0.157 37.304);\n    --color-orange-900: oklch(40.8% 0.123 38.172);\n    --color-orange-950: oklch(26.6% 0.079 36.259);\n\n    --color-amber-50: oklch(98.7% 0.022 95.277);\n    --color-amber-100: oklch(96.2% 0.059 95.617);\n    --color-amber-200: oklch(92.4% 0.12 95.746);\n    --color-amber-300: oklch(87.9% 0.169 91.605);\n    --color-amber-400: oklch(82.8% 0.189 84.429);\n    --color-amber-500: oklch(76.9% 0.188 70.08);\n    --color-amber-600: oklch(66.6% 0.179 58.318);\n    --color-amber-700: oklch(55.5% 0.163 48.998);\n    --color-amber-800: oklch(47.3% 0.137 46.201);\n    --color-amber-900: oklch(41.4% 0.112 45.904);\n    --color-amber-950: oklch(27.9% 0.077 45.635);\n\n    --color-yellow-50: oklch(98.7% 0.026 102.212);\n    --color-yellow-100: oklch(97.3% 0.071 103.193);\n    --color-yellow-200: oklch(94.5% 0.129 101.54);\n    --color-yellow-300: oklch(90.5% 0.182 98.111);\n    --color-yellow-400: oklch(85.2% 0.199 91.936);\n    --color-yellow-500: oklch(79.5% 0.184 86.047);\n    --color-yellow-600: oklch(68.1% 0.162 75.834);\n    --color-yellow-700: oklch(55.4% 0.135 66.442);\n    --color-yellow-800: oklch(47.6% 0.114 61.907);\n    --color-yellow-900: oklch(42.1% 0.095 57.708);\n    --color-yellow-950: oklch(28.6% 0.066 53.813);\n\n    --color-lime-50: oklch(98.6% 0.031 120.757);\n    --color-lime-100: oklch(96.7% 0.067 122.328);\n    --color-lime-200: oklch(93.8% 0.127 124.321);\n    --color-lime-300: oklch(89.7% 0.196 126.665);\n    --color-lime-400: oklch(84.1% 0.238 128.85);\n    --color-lime-500: oklch(76.8% 0.233 130.85);\n    --color-lime-600: oklch(64.8% 0.2 131.684);\n    --color-lime-700: oklch(53.2% 0.157 131.589);\n    --color-lime-800: oklch(45.3% 0.124 130.933);\n    --color-lime-900: oklch(40.5% 0.101 131.063);\n    --color-lime-950: oklch(27.4% 0.072 132.109);\n\n    --color-green-50: oklch(98.2% 0.018 155.826);\n    --color-green-100: oklch(96.2% 0.044 156.743);\n    --color-green-200: oklch(92.5% 0.084 155.995);\n    --color-green-300: oklch(87.1% 0.15 154.449);\n    --color-green-400: oklch(79.2% 0.209 151.711);\n    --color-green-500: oklch(72.3% 0.219 149.579);\n    --color-green-600: oklch(62.7% 0.194 149.214);\n    --color-green-700: oklch(52.7% 0.154 150.069);\n    --color-green-800: oklch(44.8% 0.119 151.328);\n    --color-green-900: oklch(39.3% 0.095 152.535);\n    --color-green-950: oklch(26.6% 0.065 152.934);\n\n    --color-emerald-50: oklch(97.9% 0.021 166.113);\n    --color-emerald-100: oklch(95% 0.052 163.051);\n    --color-emerald-200: oklch(90.5% 0.093 164.15);\n    --color-emerald-300: oklch(84.5% 0.143 164.978);\n    --color-emerald-400: oklch(76.5% 0.177 163.223);\n    --color-emerald-500: oklch(69.6% 0.17 162.48);\n    --color-emerald-600: oklch(59.6% 0.145 163.225);\n    --color-emerald-700: oklch(50.8% 0.118 165.612);\n    --color-emerald-800: oklch(43.2% 0.095 166.913);\n    --color-emerald-900: oklch(37.8% 0.077 168.94);\n    --color-emerald-950: oklch(26.2% 0.051 172.552);\n\n    --color-teal-50: oklch(98.4% 0.014 180.72);\n    --color-teal-100: oklch(95.3% 0.051 180.801);\n    --color-teal-200: oklch(91% 0.096 180.426);\n    --color-teal-300: oklch(85.5% 0.138 181.071);\n    --color-teal-400: oklch(77.7% 0.152 181.912);\n    --color-teal-500: oklch(70.4% 0.14 182.503);\n    --color-teal-600: oklch(60% 0.118 184.704);\n    --color-teal-700: oklch(51.1% 0.096 186.391);\n    --color-teal-800: oklch(43.7% 0.078 188.216);\n    --color-teal-900: oklch(38.6% 0.063 188.416);\n    --color-teal-950: oklch(27.7% 0.046 192.524);\n\n    --color-cyan-50: oklch(98.4% 0.019 200.873);\n    --color-cyan-100: oklch(95.6% 0.045 203.388);\n    --color-cyan-200: oklch(91.7% 0.08 205.041);\n    --color-cyan-300: oklch(86.5% 0.127 207.078);\n    --color-cyan-400: oklch(78.9% 0.154 211.53);\n    --color-cyan-500: oklch(71.5% 0.143 215.221);\n    --color-cyan-600: oklch(60.9% 0.126 221.723);\n    --color-cyan-700: oklch(52% 0.105 223.128);\n    --color-cyan-800: oklch(45% 0.085 224.283);\n    --color-cyan-900: oklch(39.8% 0.07 227.392);\n    --color-cyan-950: oklch(30.2% 0.056 229.695);\n\n    --color-sky-50: oklch(97.7% 0.013 236.62);\n    --color-sky-100: oklch(95.1% 0.026 236.824);\n    --color-sky-200: oklch(90.1% 0.058 230.902);\n    --color-sky-300: oklch(82.8% 0.111 230.318);\n    --color-sky-400: oklch(74.6% 0.16 232.661);\n    --color-sky-500: oklch(68.5% 0.169 237.323);\n    --color-sky-600: oklch(58.8% 0.158 241.966);\n    --color-sky-700: oklch(50% 0.134 242.749);\n    --color-sky-800: oklch(44.3% 0.11 240.79);\n    --color-sky-900: oklch(39.1% 0.09 240.876);\n    --color-sky-950: oklch(29.3% 0.066 243.157);\n\n    --color-blue-50: oklch(97% 0.014 254.604);\n    --color-blue-100: oklch(93.2% 0.032 255.585);\n    --color-blue-200: oklch(88.2% 0.059 254.128);\n    --color-blue-300: oklch(80.9% 0.105 251.813);\n    --color-blue-400: oklch(70.7% 0.165 254.624);\n    --color-blue-500: oklch(62.3% 0.214 259.815);\n    --color-blue-600: oklch(54.6% 0.245 262.881);\n    --color-blue-700: oklch(48.8% 0.243 264.376);\n    --color-blue-800: oklch(42.4% 0.199 265.638);\n    --color-blue-900: oklch(37.9% 0.146 265.522);\n    --color-blue-950: oklch(28.2% 0.091 267.935);\n\n    --color-indigo-50: oklch(96.2% 0.018 272.314);\n    --color-indigo-100: oklch(93% 0.034 272.788);\n    --color-indigo-200: oklch(87% 0.065 274.039);\n    --color-indigo-300: oklch(78.5% 0.115 274.713);\n    --color-indigo-400: oklch(67.3% 0.182 276.935);\n    --color-indigo-500: oklch(58.5% 0.233 277.117);\n    --color-indigo-600: oklch(51.1% 0.262 276.966);\n    --color-indigo-700: oklch(45.7% 0.24 277.023);\n    --color-indigo-800: oklch(39.8% 0.195 277.366);\n    --color-indigo-900: oklch(35.9% 0.144 278.697);\n    --color-indigo-950: oklch(25.7% 0.09 281.288);\n\n    --color-violet-50: oklch(96.9% 0.016 293.756);\n    --color-violet-100: oklch(94.3% 0.029 294.588);\n    --color-violet-200: oklch(89.4% 0.057 293.283);\n    --color-violet-300: oklch(81.1% 0.111 293.571);\n    --color-violet-400: oklch(70.2% 0.183 293.541);\n    --color-violet-500: oklch(60.6% 0.25 292.717);\n    --color-violet-600: oklch(54.1% 0.281 293.009);\n    --color-violet-700: oklch(49.1% 0.27 292.581);\n    --color-violet-800: oklch(43.2% 0.232 292.759);\n    --color-violet-900: oklch(38% 0.189 293.745);\n    --color-violet-950: oklch(28.3% 0.141 291.089);\n\n    --color-purple-50: oklch(97.7% 0.014 308.299);\n    --color-purple-100: oklch(94.6% 0.033 307.174);\n    --color-purple-200: oklch(90.2% 0.063 306.703);\n    --color-purple-300: oklch(82.7% 0.119 306.383);\n    --color-purple-400: oklch(71.4% 0.203 305.504);\n    --color-purple-500: oklch(62.7% 0.265 303.9);\n    --color-purple-600: oklch(55.8% 0.288 302.321);\n    --color-purple-700: oklch(49.6% 0.265 301.924);\n    --color-purple-800: oklch(43.8% 0.218 303.724);\n    --color-purple-900: oklch(38.1% 0.176 304.987);\n    --color-purple-950: oklch(29.1% 0.149 302.717);\n\n    --color-fuchsia-50: oklch(97.7% 0.017 320.058);\n    --color-fuchsia-100: oklch(95.2% 0.037 318.852);\n    --color-fuchsia-200: oklch(90.3% 0.076 319.62);\n    --color-fuchsia-300: oklch(83.3% 0.145 321.434);\n    --color-fuchsia-400: oklch(74% 0.238 322.16);\n    --color-fuchsia-500: oklch(66.7% 0.295 322.15);\n    --color-fuchsia-600: oklch(59.1% 0.293 322.896);\n    --color-fuchsia-700: oklch(51.8% 0.253 323.949);\n    --color-fuchsia-800: oklch(45.2% 0.211 324.591);\n    --color-fuchsia-900: oklch(40.1% 0.17 325.612);\n    --color-fuchsia-950: oklch(29.3% 0.136 325.661);\n\n    --color-pink-50: oklch(97.1% 0.014 343.198);\n    --color-pink-100: oklch(94.8% 0.028 342.258);\n    --color-pink-200: oklch(89.9% 0.061 343.231);\n    --color-pink-300: oklch(82.3% 0.12 346.018);\n    --color-pink-400: oklch(71.8% 0.202 349.761);\n    --color-pink-500: oklch(65.6% 0.241 354.308);\n    --color-pink-600: oklch(59.2% 0.249 0.584);\n    --color-pink-700: oklch(52.5% 0.223 3.958);\n    --color-pink-800: oklch(45.9% 0.187 3.815);\n    --color-pink-900: oklch(40.8% 0.153 2.432);\n    --color-pink-950: oklch(28.4% 0.109 3.907);\n\n    --color-rose-50: oklch(96.9% 0.015 12.422);\n    --color-rose-100: oklch(94.1% 0.03 12.58);\n    --color-rose-200: oklch(89.2% 0.058 10.001);\n    --color-rose-300: oklch(81% 0.117 11.638);\n    --color-rose-400: oklch(71.2% 0.194 13.428);\n    --color-rose-500: oklch(64.5% 0.246 16.439);\n    --color-rose-600: oklch(58.6% 0.253 17.585);\n    --color-rose-700: oklch(51.4% 0.222 16.935);\n    --color-rose-800: oklch(45.5% 0.188 13.697);\n    --color-rose-900: oklch(41% 0.159 10.272);\n    --color-rose-950: oklch(27.1% 0.105 12.094);\n\n    --color-slate-50: oklch(98.4% 0.003 247.858);\n    --color-slate-100: oklch(96.8% 0.007 247.896);\n    --color-slate-200: oklch(92.9% 0.013 255.508);\n    --color-slate-300: oklch(86.9% 0.022 252.894);\n    --color-slate-400: oklch(70.4% 0.04 256.788);\n    --color-slate-500: oklch(55.4% 0.046 257.417);\n    --color-slate-600: oklch(44.6% 0.043 257.281);\n    --color-slate-700: oklch(37.2% 0.044 257.287);\n    --color-slate-800: oklch(27.9% 0.041 260.031);\n    --color-slate-900: oklch(20.8% 0.042 265.755);\n    --color-slate-950: oklch(12.9% 0.042 264.695);\n\n    --color-gray-50: oklch(98.5% 0.002 247.839);\n    --color-gray-100: oklch(96.7% 0.003 264.542);\n    --color-gray-200: oklch(92.8% 0.006 264.531);\n    --color-gray-300: oklch(87.2% 0.01 258.338);\n    --color-gray-400: oklch(70.7% 0.022 261.325);\n    --color-gray-500: oklch(55.1% 0.027 264.364);\n    --color-gray-600: oklch(44.6% 0.03 256.802);\n    --color-gray-700: oklch(37.3% 0.034 259.733);\n    --color-gray-800: oklch(27.8% 0.033 256.848);\n    --color-gray-900: oklch(21% 0.034 264.665);\n    --color-gray-950: oklch(13% 0.028 261.692);\n\n    --color-zinc-50: oklch(98.5% 0 0);\n    --color-zinc-100: oklch(96.7% 0.001 286.375);\n    --color-zinc-200: oklch(92% 0.004 286.32);\n    --color-zinc-300: oklch(87.1% 0.006 286.286);\n    --color-zinc-400: oklch(70.5% 0.015 286.067);\n    --color-zinc-500: oklch(55.2% 0.016 285.938);\n    --color-zinc-600: oklch(44.2% 0.017 285.786);\n    --color-zinc-700: oklch(37% 0.013 285.805);\n    --color-zinc-800: oklch(27.4% 0.006 286.033);\n    --color-zinc-900: oklch(21% 0.006 285.885);\n    --color-zinc-950: oklch(14.1% 0.005 285.823);\n\n    --color-neutral-50: oklch(98.5% 0 0);\n    --color-neutral-100: oklch(97% 0 0);\n    --color-neutral-200: oklch(92.2% 0 0);\n    --color-neutral-300: oklch(87% 0 0);\n    --color-neutral-400: oklch(70.8% 0 0);\n    --color-neutral-500: oklch(55.6% 0 0);\n    --color-neutral-600: oklch(43.9% 0 0);\n    --color-neutral-700: oklch(37.1% 0 0);\n    --color-neutral-800: oklch(26.9% 0 0);\n    --color-neutral-900: oklch(20.5% 0 0);\n    --color-neutral-950: oklch(14.5% 0 0);\n\n    --color-stone-50: oklch(98.5% 0.001 106.423);\n    --color-stone-100: oklch(97% 0.001 106.424);\n    --color-stone-200: oklch(92.3% 0.003 48.717);\n    --color-stone-300: oklch(86.9% 0.005 56.366);\n    --color-stone-400: oklch(70.9% 0.01 56.259);\n    --color-stone-500: oklch(55.3% 0.013 58.071);\n    --color-stone-600: oklch(44.4% 0.011 73.639);\n    --color-stone-700: oklch(37.4% 0.01 67.558);\n    --color-stone-800: oklch(26.8% 0.007 34.298);\n    --color-stone-900: oklch(21.6% 0.006 56.043);\n    --color-stone-950: oklch(14.7% 0.004 49.25);\n\n    --color-mauve-50: oklch(98.5% 0 0);\n    --color-mauve-100: oklch(96% 0.003 325.6);\n    --color-mauve-200: oklch(92.2% 0.005 325.62);\n    --color-mauve-300: oklch(86.5% 0.012 325.68);\n    --color-mauve-400: oklch(71.1% 0.019 323.02);\n    --color-mauve-500: oklch(54.2% 0.034 322.5);\n    --color-mauve-600: oklch(43.5% 0.029 321.78);\n    --color-mauve-700: oklch(36.4% 0.029 323.89);\n    --color-mauve-800: oklch(26.3% 0.024 320.12);\n    --color-mauve-900: oklch(21.2% 0.019 322.12);\n    --color-mauve-950: oklch(14.5% 0.008 326);\n\n    --color-olive-50: oklch(98.8% 0.003 106.5);\n    --color-olive-100: oklch(96.6% 0.005 106.5);\n    --color-olive-200: oklch(93% 0.007 106.5);\n    --color-olive-300: oklch(88% 0.011 106.6);\n    --color-olive-400: oklch(73.7% 0.021 106.9);\n    --color-olive-500: oklch(58% 0.031 107.3);\n    --color-olive-600: oklch(46.6% 0.025 107.3);\n    --color-olive-700: oklch(39.4% 0.023 107.4);\n    --color-olive-800: oklch(28.6% 0.016 107.4);\n    --color-olive-900: oklch(22.8% 0.013 107.4);\n    --color-olive-950: oklch(15.3% 0.006 107.1);\n\n    --color-mist-50: oklch(98.7% 0.002 197.1);\n    --color-mist-100: oklch(96.3% 0.002 197.1);\n    --color-mist-200: oklch(92.5% 0.005 214.3);\n    --color-mist-300: oklch(87.2% 0.007 219.6);\n    --color-mist-400: oklch(72.3% 0.014 214.4);\n    --color-mist-500: oklch(56% 0.021 213.5);\n    --color-mist-600: oklch(45% 0.017 213.2);\n    --color-mist-700: oklch(37.8% 0.015 216);\n    --color-mist-800: oklch(27.5% 0.011 216.9);\n    --color-mist-900: oklch(21.8% 0.008 223.9);\n    --color-mist-950: oklch(14.8% 0.004 228.8);\n\n    --color-taupe-50: oklch(98.6% 0.002 67.8);\n    --color-taupe-100: oklch(96% 0.002 17.2);\n    --color-taupe-200: oklch(92.2% 0.005 34.3);\n    --color-taupe-300: oklch(86.8% 0.007 39.5);\n    --color-taupe-400: oklch(71.4% 0.014 41.2);\n    --color-taupe-500: oklch(54.7% 0.021 43.1);\n    --color-taupe-600: oklch(43.8% 0.017 39.3);\n    --color-taupe-700: oklch(36.7% 0.016 35.7);\n    --color-taupe-800: oklch(26.8% 0.011 36.5);\n    --color-taupe-900: oklch(21.4% 0.009 43.1);\n    --color-taupe-950: oklch(14.7% 0.004 49.3);\n\n    --color-black: #000;\n    --color-white: #fff;\n\n    --spacing: 0.25rem;\n\n    --breakpoint-sm: 40rem;\n    --breakpoint-md: 48rem;\n    --breakpoint-lg: 64rem;\n    --breakpoint-xl: 80rem;\n    --breakpoint-2xl: 96rem;\n\n    --container-3xs: 16rem;\n    --container-2xs: 18rem;\n    --container-xs: 20rem;\n    --container-sm: 24rem;\n    --container-md: 28rem;\n    --container-lg: 32rem;\n    --container-xl: 36rem;\n    --container-2xl: 42rem;\n    --container-3xl: 48rem;\n    --container-4xl: 56rem;\n    --container-5xl: 64rem;\n    --container-6xl: 72rem;\n    --container-7xl: 80rem;\n\n    --text-xs: 0.75rem;\n    --text-xs--line-height: calc(1 / 0.75);\n    --text-sm: 0.875rem;\n    --text-sm--line-height: calc(1.25 / 0.875);\n    --text-base: 1rem;\n    --text-base--line-height: calc(1.5 / 1);\n    --text-lg: 1.125rem;\n    --text-lg--line-height: calc(1.75 / 1.125);\n    --text-xl: 1.25rem;\n    --text-xl--line-height: calc(1.75 / 1.25);\n    --text-2xl: 1.5rem;\n    --text-2xl--line-height: calc(2 / 1.5);\n    --text-3xl: 1.875rem;\n    --text-3xl--line-height: calc(2.25 / 1.875);\n    --text-4xl: 2.25rem;\n    --text-4xl--line-height: calc(2.5 / 2.25);\n    --text-5xl: 3rem;\n    --text-5xl--line-height: 1;\n    --text-6xl: 3.75rem;\n    --text-6xl--line-height: 1;\n    --text-7xl: 4.5rem;\n    --text-7xl--line-height: 1;\n    --text-8xl: 6rem;\n    --text-8xl--line-height: 1;\n    --text-9xl: 8rem;\n    --text-9xl--line-height: 1;\n\n    --font-weight-thin: 100;\n    --font-weight-extralight: 200;\n    --font-weight-light: 300;\n    --font-weight-normal: 400;\n    --font-weight-medium: 500;\n    --font-weight-semibold: 600;\n    --font-weight-bold: 700;\n    --font-weight-extrabold: 800;\n    --font-weight-black: 900;\n\n    --tracking-tighter: -0.05em;\n    --tracking-tight: -0.025em;\n    --tracking-normal: 0em;\n    --tracking-wide: 0.025em;\n    --tracking-wider: 0.05em;\n    --tracking-widest: 0.1em;\n\n    --leading-tight: 1.25;\n    --leading-snug: 1.375;\n    --leading-normal: 1.5;\n    --leading-relaxed: 1.625;\n    --leading-loose: 2;\n\n    --radius-xs: 0.125rem;\n    --radius-sm: 0.25rem;\n    --radius-md: 0.375rem;\n    --radius-lg: 0.5rem;\n    --radius-xl: 0.75rem;\n    --radius-2xl: 1rem;\n    --radius-3xl: 1.5rem;\n    --radius-4xl: 2rem;\n\n    --shadow-2xs: 0 1px rgb(0 0 0 / 0.05);\n    --shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n    --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n    --shadow-md:\n      0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);\n    --shadow-lg:\n      0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n    --shadow-xl:\n      0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);\n    --shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.25);\n\n    --inset-shadow-2xs: inset 0 1px rgb(0 0 0 / 0.05);\n    --inset-shadow-xs: inset 0 1px 1px rgb(0 0 0 / 0.05);\n    --inset-shadow-sm: inset 0 2px 4px rgb(0 0 0 / 0.05);\n\n    --drop-shadow-xs: 0 1px 1px rgb(0 0 0 / 0.05);\n    --drop-shadow-sm: 0 1px 2px rgb(0 0 0 / 0.15);\n    --drop-shadow-md: 0 3px 3px rgb(0 0 0 / 0.12);\n    --drop-shadow-lg: 0 4px 4px rgb(0 0 0 / 0.15);\n    --drop-shadow-xl: 0 9px 7px rgb(0 0 0 / 0.1);\n    --drop-shadow-2xl: 0 25px 25px rgb(0 0 0 / 0.15);\n\n    --text-shadow-2xs: 0px 1px 0px rgb(0 0 0 / 0.15);\n    --text-shadow-xs: 0px 1px 1px rgb(0 0 0 / 0.2);\n    --text-shadow-sm:\n      0px 1px 0px rgb(0 0 0 / 0.075), 0px 1px 1px rgb(0 0 0 / 0.075),\n      0px 2px 2px rgb(0 0 0 / 0.075);\n    --text-shadow-md:\n      0px 1px 1px rgb(0 0 0 / 0.1), 0px 1px 2px rgb(0 0 0 / 0.1),\n      0px 2px 4px rgb(0 0 0 / 0.1);\n    --text-shadow-lg:\n      0px 1px 2px rgb(0 0 0 / 0.1), 0px 3px 2px rgb(0 0 0 / 0.1),\n      0px 4px 8px rgb(0 0 0 / 0.1);\n\n    --ease-in: cubic-bezier(0.4, 0, 1, 1);\n    --ease-out: cubic-bezier(0, 0, 0.2, 1);\n    --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);\n\n    --animate-spin: spin 1s linear infinite;\n    --animate-ping: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;\n    --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n    --animate-bounce: bounce 1s infinite;\n\n    @keyframes spin {\n      to {\n        transform: rotate(360deg);\n      }\n    }\n\n    @keyframes ping {\n      75%,\n      100% {\n        transform: scale(2);\n        opacity: 0;\n      }\n    }\n\n    @keyframes pulse {\n      50% {\n        opacity: 0.5;\n      }\n    }\n\n    @keyframes bounce {\n      0%,\n      100% {\n        transform: translateY(-25%);\n        animation-timing-function: cubic-bezier(0.8, 0, 1, 1);\n      }\n\n      50% {\n        transform: none;\n        animation-timing-function: cubic-bezier(0, 0, 0.2, 1);\n      }\n    }\n\n    --blur-xs: 4px;\n    --blur-sm: 8px;\n    --blur-md: 12px;\n    --blur-lg: 16px;\n    --blur-xl: 24px;\n    --blur-2xl: 40px;\n    --blur-3xl: 64px;\n\n    --perspective-dramatic: 100px;\n    --perspective-near: 300px;\n    --perspective-normal: 500px;\n    --perspective-midrange: 800px;\n    --perspective-distant: 1200px;\n\n    --aspect-video: 16 / 9;\n\n    --default-transition-duration: 150ms;\n    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n    --default-font-family: --theme(--font-sans, initial);\n    --default-font-feature-settings: --theme(\n      --font-sans--font-feature-settings,\n      initial\n    );\n    --default-font-variation-settings: --theme(\n      --font-sans--font-variation-settings,\n      initial\n    );\n    --default-mono-font-family: --theme(--font-mono, initial);\n    --default-mono-font-feature-settings: --theme(\n      --font-mono--font-feature-settings,\n      initial\n    );\n    --default-mono-font-variation-settings: --theme(\n      --font-mono--font-variation-settings,\n      initial\n    );\n  }\n\n  /* Deprecated */\n  @theme default inline reference {\n    --blur: 8px;\n    --shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n    --shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);\n    --drop-shadow: 0 1px 2px rgb(0 0 0 / 0.1), 0 1px 1px rgb(0 0 0 / 0.06);\n    --radius: 0.25rem;\n    --max-width-prose: 65ch;\n  }\n}\n\n@layer base {\n  /*\n  1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)\n  2. Remove default margins and padding\n  3. Reset all borders.\n*/\n\n  *,\n  ::after,\n  ::before,\n  ::backdrop,\n  ::file-selector-button {\n    box-sizing: border-box; /* 1 */\n    margin: 0; /* 2 */\n    padding: 0; /* 2 */\n    border: 0 solid; /* 3 */\n  }\n\n  /*\n  1. Use a consistent sensible line-height in all browsers.\n  2. Prevent adjustments of font size after orientation changes in iOS.\n  3. Use a more readable tab size.\n  4. Use the user's configured `sans` font-family by default.\n  5. Use the user's configured `sans` font-feature-settings by default.\n  6. Use the user's configured `sans` font-variation-settings by default.\n  7. Disable tap highlights on iOS.\n*/\n\n  html,\n  :host {\n    line-height: 1.5; /* 1 */\n    -webkit-text-size-adjust: 100%; /* 2 */\n    tab-size: 4; /* 3 */\n    font-family: --theme(\n      --default-font-family,\n      ui-sans-serif,\n      system-ui,\n      sans-serif,\n      \"Apple Color Emoji\",\n      \"Segoe UI Emoji\",\n      \"Segoe UI Symbol\",\n      \"Noto Color Emoji\"\n    ); /* 4 */\n    font-feature-settings: --theme(\n      --default-font-feature-settings,\n      normal\n    ); /* 5 */\n    font-variation-settings: --theme(\n      --default-font-variation-settings,\n      normal\n    ); /* 6 */\n    -webkit-tap-highlight-color: transparent; /* 7 */\n  }\n\n  /*\n  1. Add the correct height in Firefox.\n  2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n  3. Reset the default border style to a 1px solid border.\n*/\n\n  hr {\n    height: 0; /* 1 */\n    color: inherit; /* 2 */\n    border-top-width: 1px; /* 3 */\n  }\n\n  /*\n  Add the correct text decoration in Chrome, Edge, and Safari.\n*/\n\n  abbr:where([title]) {\n    -webkit-text-decoration: underline dotted;\n    text-decoration: underline dotted;\n  }\n\n  /*\n  Remove the default font size and weight for headings.\n*/\n\n  h1,\n  h2,\n  h3,\n  h4,\n  h5,\n  h6 {\n    font-size: inherit;\n    font-weight: inherit;\n  }\n\n  /*\n  Reset links to optimize for opt-in styling instead of opt-out.\n*/\n\n  a {\n    color: inherit;\n    -webkit-text-decoration: inherit;\n    text-decoration: inherit;\n  }\n\n  /*\n  Add the correct font weight in Edge and Safari.\n*/\n\n  b,\n  strong {\n    font-weight: bolder;\n  }\n\n  /*\n  1. Use the user's configured `mono` font-family by default.\n  2. Use the user's configured `mono` font-feature-settings by default.\n  3. Use the user's configured `mono` font-variation-settings by default.\n  4. Correct the odd `em` font sizing in all browsers.\n*/\n\n  code,\n  kbd,\n  samp,\n  pre {\n    font-family: --theme(\n      --default-mono-font-family,\n      ui-monospace,\n      SFMono-Regular,\n      Menlo,\n      Monaco,\n      Consolas,\n      \"Liberation Mono\",\n      \"Courier New\",\n      monospace\n    ); /* 1 */\n    font-feature-settings: --theme(\n      --default-mono-font-feature-settings,\n      normal\n    ); /* 2 */\n    font-variation-settings: --theme(\n      --default-mono-font-variation-settings,\n      normal\n    ); /* 3 */\n    font-size: 1em; /* 4 */\n  }\n\n  /*\n  Add the correct font size in all browsers.\n*/\n\n  small {\n    font-size: 80%;\n  }\n\n  /*\n  Prevent `sub` and `sup` elements from affecting the line height in all browsers.\n*/\n\n  sub,\n  sup {\n    font-size: 75%;\n    line-height: 0;\n    position: relative;\n    vertical-align: baseline;\n  }\n\n  sub {\n    bottom: -0.25em;\n  }\n\n  sup {\n    top: -0.5em;\n  }\n\n  /*\n  1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n  2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n  3. Remove gaps between table borders by default.\n*/\n\n  table {\n    text-indent: 0; /* 1 */\n    border-color: inherit; /* 2 */\n    border-collapse: collapse; /* 3 */\n  }\n\n  /*\n  Use the modern Firefox focus style for all focusable elements.\n*/\n\n  :-moz-focusring {\n    outline: auto;\n  }\n\n  /*\n  Add the correct vertical alignment in Chrome and Firefox.\n*/\n\n  progress {\n    vertical-align: baseline;\n  }\n\n  /*\n  Add the correct display in Chrome and Safari.\n*/\n\n  summary {\n    display: list-item;\n  }\n\n  /*\n  Make lists unstyled by default.\n*/\n\n  ol,\n  ul,\n  menu {\n    list-style: none;\n  }\n\n  /*\n  1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)\n  2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)\n      This can trigger a poorly considered lint error in some tools but is included by design.\n*/\n\n  img,\n  svg,\n  video,\n  canvas,\n  audio,\n  iframe,\n  embed,\n  object {\n    display: block; /* 1 */\n    vertical-align: middle; /* 2 */\n  }\n\n  /*\n  Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)\n*/\n\n  img,\n  video {\n    max-width: 100%;\n    height: auto;\n  }\n\n  /*\n  1. Inherit font styles in all browsers.\n  2. Remove border radius in all browsers.\n  3. Remove background color in all browsers.\n  4. Ensure consistent opacity for disabled states in all browsers.\n*/\n\n  button,\n  input,\n  select,\n  optgroup,\n  textarea,\n  ::file-selector-button {\n    font: inherit; /* 1 */\n    font-feature-settings: inherit; /* 1 */\n    font-variation-settings: inherit; /* 1 */\n    letter-spacing: inherit; /* 1 */\n    color: inherit; /* 1 */\n    border-radius: 0; /* 2 */\n    background-color: transparent; /* 3 */\n    opacity: 1; /* 4 */\n  }\n\n  /*\n  Restore default font weight.\n*/\n\n  :where(select:is([multiple], [size])) optgroup {\n    font-weight: bolder;\n  }\n\n  /*\n  Restore indentation.\n*/\n\n  :where(select:is([multiple], [size])) optgroup option {\n    padding-inline-start: 20px;\n  }\n\n  /*\n  Restore space after button.\n*/\n\n  ::file-selector-button {\n    margin-inline-end: 4px;\n  }\n\n  /*\n  Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)\n*/\n\n  ::placeholder {\n    opacity: 1;\n  }\n\n  /*\n  Set the default placeholder color to a semi-transparent version of the current text color in browsers that do not\n  crash when using `color-mix(…)` with `currentcolor`. (https://github.com/tailwindlabs/tailwindcss/issues/17194)\n*/\n\n  @supports (not (-webkit-appearance: -apple-pay-button)) /* Not Safari */ or\n    (contain-intrinsic-size: 1px) /* Safari 17+ */ {\n    ::placeholder {\n      color: color-mix(in oklab, currentcolor 50%, transparent);\n    }\n  }\n\n  /*\n  Prevent resizing textareas horizontally by default.\n*/\n\n  textarea {\n    resize: vertical;\n  }\n\n  /*\n  Remove the inner padding in Chrome and Safari on macOS.\n*/\n\n  ::-webkit-search-decoration {\n    -webkit-appearance: none;\n  }\n\n  /*\n  1. Ensure date/time inputs have the same height when empty in iOS Safari.\n  2. Ensure text alignment can be changed on date/time inputs in iOS Safari.\n*/\n\n  ::-webkit-date-and-time-value {\n    min-height: 1lh; /* 1 */\n    text-align: inherit; /* 2 */\n  }\n\n  /*\n  Prevent height from changing on date/time inputs in macOS Safari when the input is set to `display: block`.\n*/\n\n  ::-webkit-datetime-edit {\n    display: inline-flex;\n  }\n\n  /*\n  Remove excess padding from pseudo-elements in date/time inputs to ensure consistent height across browsers.\n*/\n\n  ::-webkit-datetime-edit-fields-wrapper {\n    padding: 0;\n  }\n\n  ::-webkit-datetime-edit,\n  ::-webkit-datetime-edit-year-field,\n  ::-webkit-datetime-edit-month-field,\n  ::-webkit-datetime-edit-day-field,\n  ::-webkit-datetime-edit-hour-field,\n  ::-webkit-datetime-edit-minute-field,\n  ::-webkit-datetime-edit-second-field,\n  ::-webkit-datetime-edit-millisecond-field,\n  ::-webkit-datetime-edit-meridiem-field {\n    padding-block: 0;\n  }\n\n  /*\n  Center dropdown marker shown on inputs with paired `<datalist>`s in Chrome. (https://github.com/tailwindlabs/tailwindcss/issues/18499)\n*/\n\n  ::-webkit-calendar-picker-indicator {\n    line-height: 1;\n  }\n\n  /*\n  Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)\n*/\n\n  :-moz-ui-invalid {\n    box-shadow: none;\n  }\n\n  /*\n  Correct the inability to style the border radius in iOS Safari.\n*/\n\n  button,\n  input:where([type=\"button\"], [type=\"reset\"], [type=\"submit\"]),\n  ::file-selector-button {\n    appearance: button;\n  }\n\n  /*\n  Correct the cursor style of increment and decrement buttons in Safari.\n*/\n\n  ::-webkit-inner-spin-button,\n  ::-webkit-outer-spin-button {\n    height: auto;\n  }\n\n  /*\n  Make elements with the HTML hidden attribute stay hidden by default.\n*/\n\n  [hidden]:where(:not([hidden=\"until-found\"])) {\n    display: none !important;\n  }\n}\n\n@layer utilities {\n  @tailwind utilities;\n}\n","@import \"tailwindcss\";\n@config \"../../config/tailwind.config.js\";\n\n@layer base {\n    *,\n    ::after,\n    ::before,\n    ::backdrop,\n    ::file-selector-button {\n        border-color: var(--color-gray-200, currentColor);\n    }\n\n    body {\n        background-color: var(--ff-color-bg-app);\n        color: var(--ff-color-text);\n    }\n\n    /* WebKit fallback — modern browsers use color-scheme. */\n    * {\n        scrollbar-color: var(--ff-color-border-strong) transparent;\n    }\n    *::-webkit-scrollbar {\n        width: 10px;\n        height: 10px;\n    }\n    *::-webkit-scrollbar-track {\n        background: transparent;\n    }\n    *::-webkit-scrollbar-thumb {\n        background-color: var(--ff-color-border-strong);\n        border-radius: 5px;\n        border: 2px solid transparent;\n        background-clip: padding-box;\n    }\n    *::-webkit-scrollbar-thumb:hover {\n        background-color: var(--ff-color-text-subtle);\n        background-clip: padding-box;\n    }\n\n    /* .forge-block {\n        @apply bg-white;\n        @apply shadow-sm;\n        @apply rounded-sm;\n        @apply mx-2;\n        @apply sm:mx-4;\n        @apply py-6;\n        @apply px-2;\n        @apply sm:px-6;\n        @apply lg:px-8;\n        @apply mb-1;\n    } */\n\n    .forge-inner-block {\n        @apply py-6;\n    }\n\n    .forge-link {\n        @apply underline;\n        @apply hover:cursor-pointer;\n        @apply hover:text-blue-600;\n    }\n\n    .forge-button {\n        @apply px-3;\n        @apply py-1;\n        @apply bg-blue-900;\n        @apply border;\n        @apply border-blue-900;\n        @apply hover:bg-indigo-700;\n        @apply text-white;\n        @apply hover:text-gray-100;\n        @apply focus:text-gray-300;\n        @apply rounded-md;\n        @apply inline-flex;\n        @apply items-center;\n        @apply text-sm;\n        @apply focus:outline-hidden;\n        @apply focus:ring-2;\n        @apply focus:ring-offset-2;\n        @apply focus:ring-offset-gray-600;\n        @apply focus:ring-gray-400;\n\n        @apply disabled:opacity-30;\n        @apply disabled:cursor-not-allowed;\n    }\n\n    .forge-button-secondary {\n        @apply px-3;\n        @apply py-1;\n        @apply bg-gray-100;\n        @apply border;\n        @apply border-gray-300;\n        @apply hover:bg-gray-300;\n        @apply hover:border-gray-300;\n        @apply text-gray-500;\n        @apply hover:text-gray-600;\n        @apply focus:text-gray-700;\n        @apply rounded-md;\n        @apply inline-flex;\n        @apply items-center;\n        @apply text-sm;\n        @apply focus:outline-hidden;\n        @apply focus:ring-2;\n        @apply focus:ring-offset-2;\n        @apply focus:ring-offset-gray-600;\n        @apply focus:ring-gray-400;\n        @apply disabled:opacity-30;\n        @apply disabled:cursor-not-allowed;\n    }\n\n    .forge-button-tertiary {\n        background-color: var(--ff-color-bg-app);\n        @apply px-3;\n        @apply py-1;\n        @apply border;\n        @apply border-gray-300;\n        @apply hover:bg-gray-100;\n        @apply hover:border-gray-300;\n        @apply text-gray-500;\n        @apply hover:text-gray-600;\n        @apply focus:text-gray-700;\n        @apply rounded-md;\n        @apply inline-flex;\n        @apply items-center;\n        @apply text-sm;\n        @apply focus:outline-hidden;\n        @apply focus:ring-2;\n        @apply focus:ring-offset-2;\n        @apply focus:ring-offset-gray-600;\n        @apply focus:ring-gray-400;\n        @apply disabled:opacity-30;\n        @apply disabled:cursor-not-allowed;\n    }\n\n    .forge-button-inline {\n        background-color: var(--ff-color-bg-app);\n        @apply px-3;\n        @apply py-1;\n        @apply border;\n        @apply border-transparent;\n        @apply hover:bg-gray-100;\n        @apply hover:border-gray-300;\n        @apply text-gray-500;\n        @apply hover:text-gray-600;\n        @apply focus:text-gray-700;\n        @apply rounded-md;\n        @apply inline-flex;\n        @apply items-center;\n        @apply text-sm;\n        @apply focus:outline-hidden;\n        @apply focus:ring-2;\n        @apply focus:ring-offset-2;\n        @apply focus:ring-offset-gray-600;\n        @apply focus:ring-gray-400;\n        @apply disabled:opacity-30;\n        @apply disabled:cursor-not-allowed;\n    }\n\n    .forge-button-inline-inactive {\n        background-color: var(--ff-color-bg-app);\n        @apply px-3;\n        @apply py-1;\n        @apply border;\n        @apply border-transparent;\n        @apply hover:bg-gray-100;\n        @apply hover:border-gray-300;\n        @apply text-gray-500;\n        @apply hover:text-gray-600;\n        @apply focus:text-gray-700;\n        @apply rounded-md;\n        @apply inline-flex;\n        @apply items-center;\n        @apply text-sm;\n        @apply focus:outline-hidden;\n        @apply focus:ring-2;\n        @apply focus:ring-offset-2;\n        @apply focus:ring-offset-gray-600;\n        @apply focus:ring-gray-400;\n        @apply disabled:opacity-30;\n        @apply disabled:cursor-not-allowed;\n        pointer-events: none;\n    }\n\n    .forge-button-danger {\n        background-color: var(--ff-color-bg-app);\n        @apply px-3;\n        @apply py-1;\n        @apply border;\n        @apply border-red-700;\n        @apply hover:bg-red-700;\n        @apply text-red-700;\n        @apply hover:text-white;\n        @apply focus:text-white;\n        @apply focus:bg-red-700;\n        @apply rounded-md;\n        @apply inline-flex;\n        @apply items-center;\n        @apply text-sm;\n        @apply focus:outline-hidden;\n        @apply focus:ring-2;\n        @apply focus:ring-offset-2;\n        @apply focus:ring-offset-gray-600;\n        @apply focus:ring-gray-400;\n        @apply disabled:opacity-30;\n        @apply disabled:cursor-not-allowed;\n        @apply disabled:border-gray-500;\n        @apply disabled:text-gray-600;\n        &:disabled { background-color: var(--ff-color-bg-app); }\n    }\n\n    .forge-button-small {\n        @apply px-2;\n        @apply py-1;\n        @apply text-xs;\n    }\n\n\n    .forge-button-set > :first-child {\n        border-top-right-radius: 0;\n        border-bottom-right-radius: 0;\n        border-right: none;\n    }\n    .forge-button-set > :last-child button {\n        border-top-left-radius: 0;\n        border-bottom-left-radius: 0;\n        border-left: none;\n    }\n\n    .forge-nav-item {\n        @apply flex items-center;\n        @apply pb-3;\n        @apply border-b-4 border-b-transparent;\n    }\n    .forge-nav-item:not(.forge-nav-item-active) {\n        @apply text-sm;\n    }\n    .forge-nav-item:not(.forge-nav-item-active):hover {\n        @apply text-blue-700;\n        @apply border-b-4;\n        @apply border-gray-400;\n    }\n\n    .forge-nav-item-active {\n        @apply text-sm;\n        @apply text-blue-700;\n        @apply border-b-4;\n        @apply border-blue-700;\n    }\n    .forge-badge {\n        @apply border;\n        @apply rounded-full;\n        @apply text-xs;\n        @apply px-2;\n        @apply py-1;\n        @apply inline-flex;\n        @apply items-center;\n    }\n    .forge-status-error,\n    .forge-status-crashed {\n        background-color: var(--ff-color-status-error-bg);\n        border-color: var(--ff-color-status-error-border);\n        color: var(--ff-color-status-error-text);\n    }\n    .forge-status-suspended {\n        background-color: var(--ff-color-status-neutral-bg);\n        border-color: var(--ff-color-status-neutral-border);\n        color: var(--ff-color-status-neutral-text);\n    }\n    .forge-status-stopped {\n        background-color: var(--ff-color-status-info-bg);\n        border-color: var(--ff-color-status-info-border);\n        color: var(--ff-color-status-info-text);\n        @apply border-dashed;\n    }\n    .forge-status-info {\n        background-color: var(--ff-color-status-info-bg);\n        border-color: var(--ff-color-status-info-border);\n        color: var(--ff-color-status-info-text);\n        @apply border-dashed;\n    }\n    .forge-status-starting,\n    .forge-status-importing {\n        background-color: var(--ff-color-status-progress-bg);\n        border-color: var(--ff-color-status-progress-border);\n        color: var(--ff-color-status-success-text);\n        @apply border-dashed;\n    }\n    .forge-status-safe {\n        background-color: var(--ff-color-status-safe-bg);\n        border-color: var(--ff-color-status-safe-border);\n        color: var(--ff-color-status-safe-text);\n    }\n    .forge-status-warning {\n        background-color: var(--ff-color-status-warning-bg);\n        border-color: var(--ff-color-status-warning-border);\n        color: var(--ff-color-status-warning-text);\n    }\n    .forge-status-success,\n    .forge-status-connected,\n    .forge-status-running {\n        background-color: var(--ff-color-status-success-bg);\n        border-color: var(--ff-color-status-success-border);\n        color: var(--ff-color-status-success-text);\n    }\n\n    .forge-minimal-status-error,\n    .forge-minimal-status-crashed {\n        background-color: var(--ff-color-status-error-dot);\n    }\n    .forge-minimal-status-stopped,\n    .forge-minimal-status-suspended,\n    .forge-minimal-status-suspending,\n    .forge-minimal-status-info,\n    .forge-minimal-status-offline {\n        background-color: var(--ff-color-status-neutral-dot);\n    }\n    .forge-minimal-status-success,\n    .forge-minimal-status-connected,\n    .forge-minimal-status-protected,\n    .forge-minimal-status-running,\n    .forge-minimal-status-importing,\n    .forge-minimal-status-safe,\n    .forge-minimal-status-warning,\n    .forge-minimal-status-starting,\n    .forge-minimal-status-pushing,\n    .forge-minimal-status-pulling,\n    .forge-minimal-status-loading,\n    .forge-minimal-status-rollback,\n    .forge-minimal-status-installing,\n    .forge-minimal-status-updating,\n    .forge-minimal-status-restarting {\n        background-color: var(--ff-color-status-success-dot);\n    }\n\n    .forge-badge-devmode {\n        background-color: var(--ff-color-status-devmode-bg);\n        border-color: var(--ff-color-status-devmode-border);\n        color: var(--ff-color-status-devmode-text);\n    }\n    .forge-badge-fleetmode {\n        background-color: var(--ff-color-status-fleetmode-bg);\n        border-color: var(--ff-color-status-fleetmode-border);\n        color: var(--ff-color-status-fleetmode-text);\n    }\n\n    th {\n        @apply text-left;\n        @apply font-medium;\n    }\n\n    input[type=\"text\"],\n    input[type=\"password\"],\n    input[type=\"radio\"],\n    input[type=\"checkbox\"],\n    select,\n    textarea,\n    .uneditable {\n        @apply text-sm;\n        @apply appearance-none;\n        @apply rounded-sm;\n        @apply relative;\n        @apply font-normal;\n        @apply px-2;\n        @apply py-1;\n        @apply border;\n        @apply border-gray-300;\n        @apply placeholder:text-gray-500;\n        @apply text-gray-600;\n    }\n    input[type=\"radio\"],\n    input[type=\"checkbox\"] {\n        @apply mr-2;\n        @apply p-2;\n    }\n    .uneditable {\n        @apply border-transparent;\n    }\n\n    input[type=\"text\"]:focus,\n    input[type=\"password\"]:focus,\n    input[type=\"radio\"]:focus,\n    input[type=\"checkbox\"]:focus,\n    select:focus,\n    textarea:focus {\n        @apply outline-hidden;\n        @apply ring-0;\n        @apply border-indigo-500;\n    }\n    input[type=\"text\"]:disabled,\n    input[type=\"password\"]:disabled,\n    input[type=\"radio\"]:disabled,\n    input[type=\"checkbox\"]:disabled,\n    select:disabled,\n    textarea:disabled {\n        @apply cursor-not-allowed;\n        @apply opacity-60;\n    }\n\n    /* Direct vars — low-shade text-* utilities resolve to surface tokens via the\n       Tailwind remap and would invert against the always-dark code-surface. */\n    .forge-log-entry-level-system {\n        color: var(--ff-color-log-system);\n    }\n    .forge-log-entry-level-info {\n        color: var(--ff-color-log-info);\n    }\n    .forge-log-entry-level-warn {\n        color: var(--ff-color-log-warn);\n    }\n    .forge-log-entry-level-error {\n        color: var(--ff-color-log-error);\n    }\n}\n\n@layer components {\n    .ff-layout--box--left,\n    .ff-layout--box--right {\n        @apply p-0 md:p-12;\n    }\n    .ff-layout--box--right .ff-layout--box--content {\n        @apply rounded-none md:rounded-xl m-auto;\n    }\n}\n\n/* Code / terminal surfaces — always-dark by design (both themes). */\n.ff-code-surface {\n    background-color: var(--ff-color-code-surface);\n    color: var(--ff-color-code-text);\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-divider {\n    width: 100%;\n    height: 1px;\n    background-color: var(--ff-color-bg-emphasis);\n    margin-top: 12px;\n    margin-bottom: 12px;\n}\n","@use \"@/ui-components/stylesheets/ff-colors.scss\" as *;@use \"@/ui-components/stylesheets/ff-utility.scss\" as *;\n\n.ff-combobox {\n    min-width: 200px;\n\n    &[data-headlessui-state=\"open\"] {\n        input {\n            border-bottom-left-radius: 0;\n            border-bottom-right-radius: 0;\n        }\n    }\n\n    .ff-combobox-input {\n        padding: 5px 2.5rem 5px 10px;\n        border: 1px solid var(--ff-color-border-strong);\n        font-size: $ff-funit-md;\n        line-height: 1.5;\n        &:focus {\n            border-color: var(--ff-color-border-strong);\n            outline: none;\n        }\n    }\n\n    .ff-options {\n        background: var(--ff-color-bg-surface);\n        box-shadow: 0 6px 9px 0 rgba(0, 0, 0, 0.22);\n        max-height: 14rem;\n        z-index: 100;\n        overflow-y: auto;\n        padding: 0;\n        border-left: 1px solid var(--ff-color-border);\n        border-right: 1px solid var(--ff-color-border);\n        border-bottom: 1px solid var(--ff-color-border);\n    }\n\n    .ff-option {\n        cursor: pointer;\n        border-bottom: 1px solid var(--ff-color-border);\n\n        &:last-of-type {\n            border-bottom: none;\n        }\n\n        .ff-option-content {\n            padding: $ff-unit-sm $ff-unit-md;\n            border: 1px solid transparent;\n\n            &.selected {\n                background-color: var(--ff-color-bg-emphasis);\n            }\n\n            &.active {\n                border: 1px solid var(--ff-color-accent-light);\n            }\n\n            &.selected.active {\n                border-color: transparent;\n            }\n        }\n\n        &:hover {\n            background-color: var(--ff-color-bg-emphasis);\n            .ff-option-content.active {\n                border-color: transparent;\n            }\n        }\n    }\n}\n"],"names":[],"sourceRoot":""}