html,body,#root{width:100%;max-width:100%;min-height:100%;margin:0;padding:0;overflow-x:hidden}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;transition:background .3s,color .3s}img,svg{max-width:100%;height:auto}*,:before,:after{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;transition:background .3s,color .3s}.app-sider{-webkit-backdrop-filter:blur(20px)saturate(1.2);flex-direction:column;height:100vh;max-height:100vh;display:flex;top:0;box-shadow:2px 0 16px #00000008;border-right:none!important;position:sticky!important;overflow:hidden!important}.app-sider::-webkit-scrollbar{display:none}.app-sider .ant-layout-sider-children{flex-direction:column;height:100%;display:flex;overflow:hidden!important}.app-sider .ant-layout-sider-children::-webkit-scrollbar{display:none}.app-sider .ant-menu{max-height:none!important;overflow:hidden!important}.app-sider .sider__menu{scrollbar-width:thin;flex:1;overflow:hidden auto}.app-sider .sider__menu::-webkit-scrollbar{width:4px;display:block}.app-sider .sider__menu::-webkit-scrollbar-thumb{background:#0000001a;border-radius:4px}[data-theme=dark] .app-sider{box-shadow:2px 0 16px #00000026}[data-theme=dark] .app-sider .sider__menu::-webkit-scrollbar-thumb{background:#ffffff1a}.sider__brand{border-bottom:1px solid #0000000a;align-items:center;height:56px;padding:0 16px;display:flex}.brand{align-items:center;gap:10px;display:flex;overflow:hidden}.brand__mark{color:#fff;border-radius:10px;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:15px;font-weight:700;display:grid}.brand__logo-img{object-fit:cover;border-radius:10px;width:32px;height:32px}.brand__name{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:650;overflow:hidden}.app-header{z-index:20;-webkit-backdrop-filter:saturate(180%)blur(20px);border-bottom:1px solid #0000000a;justify-content:space-between;align-items:center;height:56px;padding:0 20px;transition:background .3s;display:flex;position:sticky;top:0}.app-header__left,.app-header__right{align-items:center;gap:12px;display:flex}.app-header__title{font-size:14px;font-weight:600}.user-chip{cursor:pointer;border:1px solid #0000000f;border-radius:999px;align-items:center;gap:8px;padding:3px 12px 3px 3px;transition:all .2s;display:inline-flex}.user-chip:hover{box-shadow:0 2px 8px #00000014}.user-chip__name{font-size:13px;font-weight:500}.app-content{min-height:calc(100vh - 56px);padding:24px}.app-content__inner{max-width:1400px;margin:0 auto}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.page-header__main{align-items:center;gap:14px;display:flex}.page-header__icon{border-radius:12px;place-items:center;width:42px;height:42px;font-size:20px;display:grid}.page-header__title{letter-spacing:-.015em;margin:0;font-size:22px;font-weight:700}.page-header__subtitle{opacity:.65;margin-top:2px;font-size:13px}.page-header__extra{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.stat-card{-webkit-backdrop-filter:blur(16px);border:1px solid #0000000a;border-radius:16px;height:100%;padding:20px;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .3s}.stat-card:hover{transform:translateY(-4px)scale(1.01)}.stat-card__top{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.stat-card__icon{border-radius:12px;place-items:center;width:40px;height:40px;font-size:18px;display:grid}.stat-card__value{letter-spacing:-.02em;font-size:28px;font-weight:750;line-height:1.1}.stat-card__title{text-transform:uppercase;letter-spacing:.04em;opacity:.6;font-size:12px;font-weight:500}.ant-table-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}.table-row-disabled{opacity:.55}.page-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.login{min-height:100vh;display:flex}.login__aside{color:#fff;background:linear-gradient(145deg,#1a1f3a 0%,#3b2d6e 45%,#7c3aed 100%);flex-direction:column;flex:1.05;justify-content:space-between;padding:48px;display:flex;position:relative;overflow:hidden}.login__brand{z-index:1;align-items:center;gap:12px;font-size:18px;font-weight:700;display:flex}.login__mark{background:#ffffff29;border-radius:12px;place-items:center;width:40px;height:40px;font-size:18px;font-weight:800;display:grid}.login__pitch{z-index:1;max-width:460px}.login__pitch h1{letter-spacing:-.02em;margin:0 0 16px;font-size:34px;font-weight:730;line-height:1.15}.login__pitch p{opacity:.82;margin:0 0 24px;font-size:15px;line-height:1.6}.login__features{gap:14px;margin:0;padding:0;list-style:none;display:grid}.login__features li{align-items:center;gap:14px;font-size:14px;display:flex}.login__features .anticon{background:#ffffff1a;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.login__glow{filter:blur(150px);opacity:.35;background:radial-gradient(circle,#a78bfa,#0000);border-radius:50%;width:500px;height:500px;position:absolute;bottom:-150px;right:-150px}.login__panel{flex-direction:column;flex:1;justify-content:center;align-items:center;padding:32px;display:flex}.login__card{-webkit-backdrop-filter:blur(24px);border:1px solid #0000000a;border-radius:24px;width:100%;max-width:400px;padding:36px;box-shadow:0 24px 80px -24px #0003}.login__footer{text-align:center;opacity:.5;margin-top:24px;font-size:12px}@media (width<=768px){.app-content{padding:16px}.app-content__inner{max-width:100%}.page-header__title{font-size:19px}.page-header__icon{width:36px;height:36px;font-size:16px}.stat-card{padding:16px}.stat-card__value{font-size:22px}.ant-modal{top:8px;max-width:calc(100vw - 16px)!important;margin:8px auto!important}.ant-modal-body{max-height:calc(100vh - 180px);overflow-y:auto}.login{flex-direction:column}.login__aside{display:none}.login__panel{padding:16px}.login__card{border:none;padding:8px}}@media (width<=480px){.app-content{padding:12px}.ant-card-body{padding:14px}.page-header__extra{width:100%}.page-header__extra .ant-btn{flex:1}}
