:root{--primary-color: #5E6AD2;--primary-hover: #7B82E0;--primary-active: #4A55C4;--success-color: #3FB950;--warning-color: #D29922;--error-color: #F85149;--info-color: #58A6FF;--text-color: #1A1A1A;--text-secondary: #5C5E66;--text-tertiary: #9197A5;--text-disabled: #C3C7D0;--border-color: #EBECF0;--border-strong: #D8DAE1;--bg-color: #FAFBFC;--bg-white: #FFFFFF;--bg-subtle: #F6F7F9;--header-height: 64px;--sider-width: 220px;--sider-collapsed-width: 80px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 24px;--spacing-2xl: 32px;--spacing-3xl: 48px;--border-radius-sm: 6px;--border-radius: 8px;--border-radius-lg: 12px;--shadow-sm: 0 1px 2px rgba(16, 24, 40, .04);--shadow: 0 1px 2px rgba(16, 24, 40, .04), 0 0 0 1px rgba(16, 24, 40, .06);--shadow-md: 0 4px 12px rgba(16, 24, 40, .06), 0 0 0 1px rgba(16, 24, 40, .06)}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;color:var(--text-color);background-color:var(--bg-color)}#root{width:100%;height:100%}a{color:var(--primary-color);text-decoration:none}ul,ol{list-style:none}img{max-width:100%;vertical-align:middle}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}::-webkit-scrollbar-track{background:transparent}.ant-table-wrapper .ant-pagination{padding-inline:16px}@keyframes pulse-glow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes slide-up-fade{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes float-orb{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-20px) scale(1.1)}66%{transform:translate(-20px,15px) scale(.95)}}@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes route-reveal{0%{opacity:0;transform:perspective(1200px) translateY(16px) scale(.985) rotateX(2deg);filter:blur(6px)}60%{filter:blur(0)}to{opacity:1;transform:perspective(1200px) translateY(0) scale(1) rotateX(0);filter:blur(0)}}@keyframes route-beam{0%{left:-30%;opacity:0}20%{opacity:1}80%{opacity:1}to{left:100%;opacity:0}}@keyframes route-child-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.route-transition{position:relative;overflow:hidden;animation:route-reveal .55s cubic-bezier(.22,1,.36,1);transform-origin:50% 0;will-change:opacity,transform,filter}.route-transition:before{content:"";position:absolute;top:0;left:-30%;width:30%;height:2px;background:linear-gradient(90deg,transparent,rgba(99,102,241,.85) 45%,rgba(168,85,247,.7) 60%,transparent);border-radius:2px;box-shadow:0 0 8px #6366f180;pointer-events:none;z-index:10;animation:route-beam .9s cubic-bezier(.4,0,.2,1)}.route-transition>*>*{animation:route-child-rise .5s cubic-bezier(.22,1,.36,1) both}.route-transition>*>*:nth-child(1){animation-delay:.08s}.route-transition>*>*:nth-child(2){animation-delay:.16s}.route-transition>*>*:nth-child(3){animation-delay:.24s}.route-transition>*>*:nth-child(4){animation-delay:.32s}.route-transition>*>*:nth-child(5){animation-delay:.4s}.route-transition>*>*:nth-child(n+6){animation-delay:.46s}@keyframes route-progress-grow{0%{width:0;opacity:1}60%{width:78%;opacity:1}85%{width:100%;opacity:1}to{width:100%;opacity:0}}@keyframes route-progress-head{0%{left:-60px;opacity:0}15%{opacity:1}60%{left:calc(78% - 30px);opacity:1}85%{left:calc(100% - 30px);opacity:1}to{left:100%;opacity:0}}.route-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:99999;pointer-events:none;overflow:hidden}.route-progress-bar{position:absolute;top:0;left:0;height:100%;width:0;background:linear-gradient(90deg,#06b6d4,#6366f1 35%,#a855f7 65%,#ec4899 90%,#fbbf24);box-shadow:0 0 8px #6366f1e6,0 0 16px #a855f799,0 0 24px #ec489966;animation:route-progress-grow .9s cubic-bezier(.4,0,.2,1) forwards}.route-progress-head{position:absolute;top:-2px;height:7px;width:60px;background:radial-gradient(ellipse at center,rgba(255,255,255,1) 0%,rgba(255,255,255,.8) 20%,rgba(168,85,247,.6) 50%,transparent 80%);filter:blur(1.5px);animation:route-progress-head .9s cubic-bezier(.4,0,.2,1) forwards}.solo-sider{background:linear-gradient(180deg,#1a1f36,#0d1025)!important}.solo-sider .ant-layout-sider-children{background:transparent}.solo-sider .ant-menu{background:transparent!important}.solo-sider .ant-menu-item-selected{background:linear-gradient(90deg,#6366f140,#6366f114)!important;border-right:3px solid #6366f1}.solo-sider .ant-menu-item:hover,.solo-sider .ant-menu-submenu-title:hover{background:#ffffff0d!important}.solo-sider .ant-menu-submenu-selected>.ant-menu-submenu-title{color:#a5b4fc!important;background:#6366f114!important}.solo-sider .ant-menu-submenu-selected>.ant-menu-submenu-title .ant-menu-item-icon,.solo-sider .ant-menu-submenu-selected>.ant-menu-submenu-title .anticon{color:#818cf8!important}.solo-sider .ant-menu-submenu-selected:not(.ant-menu-submenu-open)>.ant-menu-submenu-title:after{content:"";position:absolute;right:16px;top:50%;width:6px;height:6px;border-radius:50%;background:#6366f1;box-shadow:0 0 6px #6366f1cc;transform:translateY(-50%)}.solo-sider .ant-menu-submenu-selected:not(.ant-menu-submenu-open)>.ant-menu-submenu-title .ant-menu-submenu-arrow{opacity:0}.solo-sider::-webkit-scrollbar{width:4px}.solo-sider::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:2px}.solo-sider::-webkit-scrollbar-thumb:hover{background:#ffffff38}.solo-sider::-webkit-scrollbar-track{background:transparent}.solo-header{-webkit-backdrop-filter:blur(12px) saturate(180%);backdrop-filter:blur(12px) saturate(180%);background:#ffffffd9!important;border-bottom:1px solid rgba(0,0,0,.06)}.login-bg{background:linear-gradient(-45deg,#0f0c29,#302b63,#24243e,#1a1f36);background-size:400% 400%;animation:gradient-shift 15s ease infinite}.login-card{-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:24px;box-shadow:0 8px 32px #0000004d;animation:slide-up-fade .6s ease-out}.floating-orb{position:absolute;border-radius:50%;filter:blur(60px);opacity:.4;animation:float-orb 8s ease-in-out infinite}.floating-orb-1{width:300px;height:300px;background:#6366f1;top:-100px;left:-100px}.floating-orb-2{width:250px;height:250px;background:#a855f7;bottom:-80px;right:-80px;animation-delay:-3s}.floating-orb-3{width:200px;height:200px;background:#06b6d4;top:50%;right:20%;animation-delay:-5s}.login-card input:-webkit-autofill,.login-card input:-webkit-autofill:hover,.login-card input:-webkit-autofill:focus,.login-card input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px rgba(58,50,99,.95) inset!important;-webkit-text-fill-color:#fff!important;transition:background-color 5000s ease-in-out 0s;caret-color:#fff;border-radius:0!important}.login-card .ant-input,.login-card .ant-input-password .ant-input{background:transparent!important;color:#fff!important}.login-card .ant-input-affix-wrapper,.login-card .ant-input-affix-wrapper:hover,.login-card .ant-input-affix-wrapper-focused{border-color:#ffffff2e!important;box-shadow:none!important}.login-card .ant-input::placeholder,.login-card .ant-input-affix-wrapper input::placeholder{color:#ffffff59!important}.login-card .ant-input-password .ant-input-suffix .anticon{color:#ffffff73!important}@keyframes loading-ring-spin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes loading-letter{0%,to{opacity:.4;transform:translateY(0)}50%{opacity:1;transform:translateY(-4px)}}@keyframes loading-breathe{0%,to{transform:translate(-50%,-50%) scale(1);opacity:1}50%{transform:translate(-50%,-50%) scale(1.08);opacity:.85}}@keyframes loading-orb-float{0%,to{transform:translate(0) scale(1);opacity:.5}33%{transform:translate(40px,-30px) scale(1.15);opacity:.7}66%{transform:translate(-30px,20px) scale(.9);opacity:.4}}.loading-page{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center;align-items:center;background:linear-gradient(160deg,#0f0c29,#1a1f36 40%,#0d1025);z-index:9999;overflow:hidden}.loading-orb{position:absolute;border-radius:50%;filter:blur(80px);animation:loading-orb-float 10s ease-in-out infinite}.loading-orb-1{width:320px;height:320px;background:radial-gradient(circle,rgba(99,102,241,.6),transparent 70%);top:10%;left:15%}.loading-orb-2{width:260px;height:260px;background:radial-gradient(circle,rgba(168,85,247,.5),transparent 70%);bottom:15%;right:10%;animation-delay:-4s}.loading-orb-3{width:200px;height:200px;background:radial-gradient(circle,rgba(6,182,212,.4),transparent 70%);top:50%;left:60%;animation-delay:-7s}.loading-content{position:relative;width:100px;height:100px;margin-bottom:32px}.loading-ring{position:absolute;top:50%;left:50%;width:100px;height:100px;border-radius:50%;border:3px solid transparent;border-top-color:#6366f1;border-right-color:#a855f780;animation:loading-ring-spin 1.5s cubic-bezier(.68,-.15,.27,1.15) infinite;box-shadow:0 0 20px #6366f14d,inset 0 0 20px #6366f11a}.loading-logo{position:absolute;top:50%;left:50%;width:52px;height:52px;border-radius:14px;box-shadow:0 4px 20px #6366f180;animation:loading-breathe 2.5s ease-in-out infinite}.loading-text{display:flex;gap:2px;font-size:20px;font-weight:700;color:#fff;letter-spacing:1px;margin-bottom:8px}.loading-text span{animation:loading-letter 1.8s ease-in-out infinite}.loading-text span:nth-child(1){animation-delay:0s}.loading-text span:nth-child(2){animation-delay:.1s}.loading-text span:nth-child(3){animation-delay:.2s}.loading-text span:nth-child(4){animation-delay:.3s}.loading-text span:nth-child(5){animation-delay:.5s}.loading-text span:nth-child(6){animation-delay:.6s}.loading-text span:nth-child(7){animation-delay:.7s}.loading-text span:nth-child(8){animation-delay:.8s}.loading-text span:nth-child(9){animation-delay:.9s}.loading-subtitle{color:#fff6;font-size:13px;letter-spacing:.5px}@media (max-width: 767.98px){::-webkit-scrollbar{width:4px;height:4px}.ant-table-thead>tr>th{padding:10px 8px!important;font-size:12px!important;white-space:nowrap}.ant-table-tbody>tr>td{padding:10px 8px!important;font-size:12px!important}.ant-pagination{justify-content:center!important;flex-wrap:wrap;gap:4px}.ant-pagination .ant-pagination-item,.ant-pagination .ant-pagination-prev,.ant-pagination .ant-pagination-next{min-width:28px!important;height:28px!important;line-height:26px!important;margin:0!important}.ant-modal{max-width:calc(100vw - 16px)!important;margin:8px auto!important;top:0!important;padding-bottom:0!important}.ant-modal-body{max-height:calc(100vh - 200px);overflow-y:auto}.ant-modal-content{padding:16px!important}.ant-drawer:not(.solo-sider-drawer) .ant-drawer-content-wrapper{width:100vw!important;max-width:100vw!important}.ant-drawer-body{padding:16px!important}.ant-drawer-header{padding:12px 16px!important}.ant-form-vertical .ant-form-item-label>label{font-size:13px;color:var(--text-secondary)}.ant-tabs-nav{margin-bottom:12px!important}.ant-tabs-tab{padding:8px 12px!important;font-size:13px!important}.ant-card-head{padding:0 12px!important;min-height:44px!important}.ant-card-head-title{padding:12px 0!important;font-size:14px!important}.ant-card-body{padding:12px!important}.route-transition{animation:route-reveal .35s cubic-bezier(.22,1,.36,1)}.solo-sider-drawer .ant-menu-item,.solo-sider-drawer .ant-menu-submenu-title{padding-inline:20px!important}.mobile-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media (min-width: 768px) and (max-width: 991.98px){.ant-table-thead>tr>th{padding:12px 10px!important}.ant-table-tbody>tr>td{padding:12px 10px!important}}
