@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");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}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");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}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");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}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");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}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");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}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");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}*,*:before,*:after{box-sizing:border-box}html,body{height:100%;margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:#f1f5f9;color:#1e293b;font-size:14px;line-height:1.6}body::-webkit-scrollbar{width:6px;height:6px}body::-webkit-scrollbar-track{background:transparent}body::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}body::-webkit-scrollbar-thumb:hover{background:#00000040}a{color:#00b4d8;text-decoration:none;transition:color .15s ease}a:hover{color:#0891b2}.page{padding:24px;max-width:1600px;margin:0 auto;width:100%;box-sizing:border-box}@media(max-width:768px){.page{padding:16px}}.page-header{margin-bottom:24px}.page-header h1{font-size:24px;font-weight:700;color:#1e293b;margin:0;letter-spacing:-.3px}.page-header p{color:#64748b;margin:4px 0 0;font-size:14px}.grid{display:grid;gap:24px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media(max-width:1024px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}}.card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 2px #0000000d;border:1px solid #e2e8f0;transition:box-shadow .25s ease}.card:hover{box-shadow:0 4px 6px -1px #00000012,0 2px 4px -2px #0000000d}.card-static{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 2px #0000000d;border:1px solid #e2e8f0}.mat-mdc-tab-group .mat-mdc-tab-header{border-bottom:1px solid #e2e8f0}.mat-mdc-table{background:transparent!important;width:100%}.mat-mdc-table .mat-mdc-header-row{background:#f8fafc}.mat-mdc-table .mat-mdc-header-cell{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#64748b;border-bottom-color:#e2e8f0}.mat-mdc-table .mat-mdc-cell{font-size:14px;color:#1e293b;border-bottom-color:#e2e8f0}.mat-mdc-table .mat-mdc-row{transition:background .15s ease}.mat-mdc-table .mat-mdc-row:hover{background:#f8fafc}.mat-mdc-form-field{width:100%}.mat-mdc-dialog-container{border-radius:12px!important;overflow:hidden}.mat-mdc-dialog-container .mdc-dialog__surface{border-radius:12px!important;box-shadow:0 24px 48px -12px #0f172a2e,0 0 0 1px #e2e8f0b3!important}.tp-modal{display:flex;flex-direction:column;background:#fff;border-radius:12px;overflow:hidden;min-width:320px}.tp-modal-head{display:flex;align-items:flex-start;gap:14px;padding:20px 24px 16px;border-bottom:1px solid #f1f5f9;background:#fafbfd;flex:0 0 auto}.tp-modal-head-icon{flex:0 0 auto;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:#eef2ff;color:#4338ca}.tp-modal-head-icon mat-icon{font-size:22px;width:22px;height:22px}.tp-modal-head-icon.is-warn{background:#fef3c7;color:#b45309}.tp-modal-head-icon.is-danger{background:#fee2e2;color:#b91c1c}.tp-modal-head-icon.is-success{background:#dcfce7;color:#166534}.tp-modal-head-icon.is-info{background:#dbeafe;color:#1e40af}.tp-modal-head-icon.is-neutral{background:#f1f5f9;color:#475569}.tp-modal-head-text{flex:1;min-width:0}.tp-modal-head-text h2{margin:0;font-size:17px;font-weight:600;color:#0f172a;letter-spacing:-.01em;line-height:1.3}.tp-modal-head-text p{margin:4px 0 0;font-size:13px;color:#64748b;line-height:1.5}.tp-modal-close{flex:0 0 auto;color:#94a3b8;margin-top:-4px}.tp-modal-close:hover{color:#334155}.tp-modal-body{padding:20px 24px;overflow-y:auto;flex:1 1 auto;min-height:0}.mat-mdc-dialog-container .mdc-dialog__surface>*{display:flex;flex-direction:column;max-height:100%}.tp-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px}.tp-modal-grid>.span-2{grid-column:span 2}.tp-modal-grid .mat-mdc-form-field{width:100%}.tp-modal-text{margin:0;color:#475569;font-size:14px;line-height:1.55}.tp-modal-alert{display:flex;gap:10px;align-items:flex-start;padding:10px 14px;border-radius:10px;font-size:13px;line-height:1.45;margin-top:14px}.tp-modal-alert mat-icon{font-size:18px;width:18px;height:18px;flex:0 0 auto}.tp-modal-alert.tp-modal-alert-error{background:#fef2f2;color:#991b1b}.tp-modal-alert.tp-modal-alert-error mat-icon{color:#dc2626}.tp-modal-alert.tp-modal-alert-warn{background:#fefce8;color:#854d0e}.tp-modal-alert.tp-modal-alert-warn mat-icon{color:#ca8a04}.tp-modal-alert.tp-modal-alert-info{background:#eff6ff;color:#1e40af}.tp-modal-alert.tp-modal-alert-info mat-icon{color:#2563eb}.tp-modal-foot{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:14px 24px 16px;border-top:1px solid #f1f5f9;background:#fafbfd;flex:0 0 auto}.tp-modal-foot .tp-modal-foot-meta{margin-right:auto;font-size:12px;color:#94a3b8}.tp-modal-foot button.mat-mdc-button,.tp-modal-foot button.mat-mdc-outlined-button,.tp-modal-foot button.mat-mdc-unelevated-button{min-width:96px}@media(max-width:640px){.tp-modal-grid{grid-template-columns:1fr}.tp-modal-grid>.span-2{grid-column:span 1}.tp-modal-head,.tp-modal-body,.tp-modal-foot{padding-left:18px;padding-right:18px}}.mat-mdc-snack-bar-container{border-radius:8px!important}.mat-mdc-chip{font-size:12px!important;font-weight:600!important}.mat-mdc-button,.mat-mdc-raised-button,.mat-mdc-flat-button{border-radius:8px!important;font-weight:600!important;letter-spacing:.2px!important}.custom-scroll::-webkit-scrollbar{width:6px;height:6px}.custom-scroll::-webkit-scrollbar-track{background:transparent}.custom-scroll::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}.custom-scroll::-webkit-scrollbar-thumb:hover{background:#00000040}.custom-scroll{overflow-y:auto}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(16px) scale(.995)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pulseDot{0%{box-shadow:0 0 0 0 var(--pulse-color, rgba(34, 197, 94, .55));transform:scale(1)}60%{box-shadow:0 0 0 10px #0000;transform:scale(1.12)}to{box-shadow:0 0 #0000;transform:scale(1)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 0 0 var(--glow, rgba(0, 180, 216, .35))}50%{box-shadow:0 0 0 8px #0000}}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes liveStripe{0%{background-position:0 0}to{background-position:48px 0}}@keyframes numberTick{0%{transform:scale(1);color:inherit}30%{transform:scale(1.12);color:#0891b2}to{transform:scale(1);color:inherit}}@keyframes statusPing{0%{transform:scale(1);opacity:.55}80%{transform:scale(2.4);opacity:0}to{transform:scale(2.4);opacity:0}}@keyframes spinSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.fade-in{animation:fadeIn .3s ease forwards}.slide-in{animation:slideInLeft .3s ease forwards}.page{animation:fadeSlideIn .45s cubic-bezier(.22,.61,.36,1) both}.pulse-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--pulse-color, #22c55e);animation:pulseDot 1.6s ease-out infinite;flex-shrink:0}.pulse-dot--fast{animation-duration:.9s}.pulse-dot--slow{animation-duration:2.4s}.live-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:#ef444414;border:1px solid rgba(239,68,68,.25);color:#dc2626;font-size:10.5px;font-weight:700;letter-spacing:.8px;text-transform:uppercase}.live-chip:before{content:"";width:7px;height:7px;border-radius:50%;background:#dc2626;--pulse-color: rgba(239, 68, 68, .6);animation:pulseDot 1.3s ease-out infinite}.live-stripe{background:repeating-linear-gradient(-45deg,#00b4d82e 0 12px,#00b4d80d 12px 24px);background-size:48px 48px;animation:liveStripe 1.8s linear infinite}.shimmer{background:linear-gradient(90deg,#e2e8f099,#e2e8f0,#e2e8f099);background-size:200% 100%;animation:shimmer 1.6s linear infinite}.tick{animation:numberTick .7s ease-out}.breathe{animation:breathe 4s ease-in-out infinite}.float{animation:float 3s ease-in-out infinite}.spin-slow{animation:spinSlow 14s linear infinite}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600;color:#1e293b;letter-spacing:-.2px}h1{font-size:28px;font-weight:700}h2{font-size:22px}h3{font-size:18px}h4{font-size:16px}.page-header{flex-wrap:wrap;gap:16px}.page-header h1{word-break:break-word}@media(max-width:768px){.page-header h1{font-size:20px}.page-header p{font-size:13px}}.filters{flex-wrap:wrap}@media(max-width:768px){.filters{gap:8px;padding:16px}.filters .filter-field,.filters .mat-mdc-form-field{width:100%!important;min-width:0!important;flex:1 1 100%!important}.filters .reset-btn{width:100%}}@media(max-width:768px){.mat-mdc-form-field{width:100%}}.table-card .mat-mdc-table,.table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}@media(max-width:768px){.mat-mdc-table{min-width:640px}}@media(max-width:768px){.chart-card,.alerts-card,.risky-card,.detail-card,.table-card{padding:16px!important}.chart-wrapper{height:220px}.doughnut-wrapper{height:200px}}@media(max-width:768px){.page,app-dashboard>*,app-machines>*,app-machine-detail>*,app-alerts>*,app-factories>*,app-sections>*,app-users>*,app-audit-log>*,app-maintenance>*,app-feedback>*,app-agents>*,app-data-import>*,app-data-sources>*,app-cost-profiles>*,app-roi>*,app-mcp-sources>*,app-value-proof>*,app-simulation>*,app-live-monitoring>*,app-reports>*,app-settings>*,app-ai-comments>*{padding-left:16px!important;padding-right:16px!important}.stats-grid,.summary-grid,.kpi-grid{grid-template-columns:1fr 1fr!important}}@media(max-width:768px){.mat-mdc-dialog-container,.mat-mdc-dialog-container .mdc-dialog__surface{max-width:100vw!important;border-radius:0!important}.cdk-overlay-pane.mat-mdc-dialog-panel{max-width:100vw!important;width:100vw!important;margin:0!important}}@media(max-width:768px){.mat-mdc-tab-header .mat-mdc-tab-label-container{overflow-x:auto}}canvas{max-width:100%}.synced-badge{display:inline-flex;align-items:center;gap:5px;margin-left:8px;padding:3px 10px;border-radius:999px;background:linear-gradient(135deg,#dce9fb,#bfd6f5);color:#1a4178;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;vertical-align:middle;border:1px solid #a9c5ea;box-shadow:0 1px 2px #1e3c7814}.synced-badge mat-icon{font-size:14px;width:14px;height:14px;line-height:14px;color:#2a5ca8}tr.is-synced{background-color:#f2f7fe!important;border-left:3px solid #6ea4e5}tr.is-synced td{opacity:.95}.factory-card.is-synced{background-color:#f5f9ff;border-left:4px solid #6ea4e5}.factory-card.is-synced .factory-name,.factory-card.is-synced .factory-location,.factory-card.is-synced .factory-desc{opacity:.95}.synced-banner{display:flex;align-items:center;gap:12px;padding:12px 18px;margin-bottom:20px;background:linear-gradient(135deg,#eaf3fe,#d9e8fb);border-left:4px solid #2a5ca8;border-radius:8px;color:#1a3d6e;font-size:13px}.synced-banner mat-icon{font-size:22px;width:22px;height:22px;color:#2a5ca8;flex-shrink:0}.synced-banner .synced-banner-title{font-weight:600;margin-bottom:2px}.synced-banner .synced-banner-sub{font-size:12px;opacity:.85}.tp-select-field .mat-mdc-text-field-wrapper{display:flex!important;align-items:center;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:10px;padding:0!important;height:38px;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.tp-select-field .mat-mdc-form-field-flex{display:flex!important;align-items:center!important;height:100%;padding:0 14px!important;margin:0!important}.tp-select-field .mat-mdc-form-field-infix{display:flex!important;align-items:center!important;padding:0!important;min-height:38px!important;border-top:none;width:auto}.tp-select-field .mdc-notched-outline,.tp-select-field .mat-mdc-form-field-subscript-wrapper{display:none}.tp-select-field .mat-mdc-form-field-icon-prefix{display:inline-flex!important;align-items:center!important;align-self:stretch;padding:0 8px 0 0!important}.tp-select-field .mat-mdc-form-field-icon-prefix>.mat-icon{display:block;padding:0!important;margin:0!important;font-size:16px;width:16px;height:16px;line-height:1;color:#94a3b8;flex-shrink:0}.tp-select-field .mat-mdc-select{display:flex;align-items:center;height:100%;font-size:13px}.tp-select-field .mat-mdc-select-trigger{display:flex!important;align-items:center!important;height:100%}.tp-select-field .mat-mdc-select-value{display:flex;align-items:center;color:#1e293b;line-height:1}.tp-select-field .mat-mdc-select-placeholder{color:#94a3b8;line-height:1}.tp-select-field .mat-mdc-select-arrow-wrapper{display:inline-flex;align-items:center;padding-left:4px;transform:none!important;height:auto}.tp-select-field .mat-mdc-select-arrow-wrapper .mat-mdc-select-arrow{color:#94a3b8}.tp-select-field.mat-focused .mat-mdc-text-field-wrapper{border-color:#00b4d8;box-shadow:0 0 0 3px #00b4d81f;background:#fff}.tp-date-field{width:158px}.tp-date-field .mat-mdc-text-field-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:0!important;height:38px;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.tp-date-field .mdc-notched-outline{display:none}.tp-date-field .mat-mdc-form-field-flex{display:flex!important;align-items:center!important;height:100%;padding:0 12px!important;margin:0!important}.tp-date-field .mat-mdc-form-field-infix{display:flex;align-items:center;padding:0!important;min-height:36px!important;border-top:none;width:auto}.tp-date-field .mat-mdc-form-field-subscript-wrapper{display:none}.tp-date-field input.mat-mdc-input-element{font-size:12.5px;cursor:pointer;font-variant-numeric:tabular-nums;color:#1e293b;line-height:1}.tp-date-field .mat-mdc-form-field-icon-suffix{display:inline-flex;align-items:center;padding:0!important}.tp-date-field .mat-mdc-icon-button.mat-mdc-button-base{width:32px;height:32px;padding:4px}.tp-date-field.mat-focused .mat-mdc-text-field-wrapper{border-color:#00b4d8;box-shadow:0 0 0 3px #00b4d81f;background:#fff}.tp-filter-select-panel.mat-mdc-select-panel{min-width:240px!important;max-width:min(420px,92vw)!important;padding:0!important;border-radius:10px!important;box-shadow:0 8px 24px #0f172a1f,0 2px 6px #0f172a14!important;background:#fff}.tp-filter-select-panel.mat-mdc-select-panel .mat-mdc-option{min-height:38px;padding:6px 14px;margin:0;font-size:13px;line-height:1.35;border-top:1px solid rgba(226,232,240,.6)}.tp-filter-select-panel.mat-mdc-select-panel .mat-mdc-option:first-child{border-top:none}.tp-filter-select-panel.mat-mdc-select-panel .mat-mdc-option:hover:not(.mdc-list-item--disabled){background:#00b4d80f}.tp-filter-select-panel.mat-mdc-select-panel .mat-mdc-option.mdc-list-item--selected{background:#00b4d81a!important}.tp-filter-select-panel.mat-mdc-select-panel .mat-mdc-option.mdc-list-item--selected .mdc-list-item__primary-text{color:#0891b2;font-weight:600}.tp-filter-select-panel.mat-mdc-select-panel .mat-mdc-option .mdc-list-item__primary-text{width:100%;white-space:normal;overflow-wrap:anywhere;font-size:13px;letter-spacing:0}.tp-filter-select-panel.mat-mdc-select-panel .mat-mdc-option .mat-pseudo-checkbox{display:none}html{height:100%;--mat-sys-background: light-dark(#f7faf9, #101414);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#eff1f0, #2d3131);--mat-sys-inverse-primary: light-dark(#00dddd, #006a6a);--mat-sys-inverse-surface: light-dark(#2d3131, #e0e3e2);--mat-sys-on-background: light-dark(#191c1c, #e0e3e2);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #003737);--mat-sys-on-primary-container: light-dark(#004f4f, #00fbfb);--mat-sys-on-primary-fixed: light-dark(#002020, #002020);--mat-sys-on-primary-fixed-variant: light-dark(#004f4f, #004f4f);--mat-sys-on-secondary: light-dark(#ffffff, #1b3534);--mat-sys-on-secondary-container: light-dark(#324b4b, #cce8e7);--mat-sys-on-secondary-fixed: light-dark(#051f1f, #051f1f);--mat-sys-on-secondary-fixed-variant: light-dark(#324b4b, #324b4b);--mat-sys-on-surface: light-dark(#191c1c, #e0e3e2);--mat-sys-on-surface-variant: light-dark(#3f4948, #dae5e4);--mat-sys-on-tertiary: light-dark(#ffffff, #0001ac);--mat-sys-on-tertiary-container: light-dark(#0000ef, #e0e0ff);--mat-sys-on-tertiary-fixed: light-dark(#00006e, #00006e);--mat-sys-on-tertiary-fixed-variant: light-dark(#0000ef, #0000ef);--mat-sys-outline: light-dark(#6f7979, #889392);--mat-sys-outline-variant: light-dark(#bec9c8, #3f4948);--mat-sys-primary: light-dark(#006a6a, #00dddd);--mat-sys-primary-container: light-dark(#00fbfb, #004f4f);--mat-sys-primary-fixed: light-dark(#00fbfb, #00fbfb);--mat-sys-primary-fixed-dim: light-dark(#00dddd, #00dddd);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#4a6363, #b0cccb);--mat-sys-secondary-container: light-dark(#cce8e7, #324b4b);--mat-sys-secondary-fixed: light-dark(#cce8e7, #cce8e7);--mat-sys-secondary-fixed-dim: light-dark(#b0cccb, #b0cccb);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#f7faf9, #101414);--mat-sys-surface-bright: light-dark(#f7faf9, #363a39);--mat-sys-surface-container: light-dark(#ebefed, #1c2020);--mat-sys-surface-container-high: light-dark(#e6e9e7, #272b2a);--mat-sys-surface-container-highest: light-dark(#e0e3e2, #313635);--mat-sys-surface-container-low: light-dark(#f1f4f3, #191c1c);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0b0f0e);--mat-sys-surface-dim: light-dark(#d7dbd9, #101414);--mat-sys-surface-tint: light-dark(#006a6a, #00dddd);--mat-sys-surface-variant: light-dark(#dae5e4, #3f4948);--mat-sys-tertiary: light-dark(#343dff, #bec2ff);--mat-sys-tertiary-container: light-dark(#e0e0ff, #0000ef);--mat-sys-tertiary-fixed: light-dark(#e0e0ff, #e0e0ff);--mat-sys-tertiary-fixed-dim: light-dark(#bec2ff, #bec2ff);--mat-sys-neutral-variant20: #293232;--mat-sys-neutral10: #191c1c;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Inter;--mat-sys-body-large-font: Inter;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Inter;--mat-sys-body-medium-font: Inter;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Inter;--mat-sys-body-small-font: Inter;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Inter;--mat-sys-display-large-font: Inter;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Inter;--mat-sys-display-medium-font: Inter;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Inter;--mat-sys-display-small-font: Inter;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Inter;--mat-sys-headline-large-font: Inter;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Inter;--mat-sys-headline-medium-font: Inter;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Inter;--mat-sys-headline-small-font: Inter;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Inter;--mat-sys-label-large-font: Inter;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Inter;--mat-sys-label-medium-font: Inter;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Inter;--mat-sys-label-small-font: Inter;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Inter;--mat-sys-title-large-font: Inter;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Inter;--mat-sys-title-medium-font: Inter;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Inter;--mat-sys-title-small-font: Inter;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}
