*{box-sizing:border-box}.login-page{display:flex;min-height:100vh;background:#0F0B1F;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}.login-brand{flex:1.1;display:flex;flex-direction:column;padding:0;background:linear-gradient(150deg,#130E2B 0%,#1A1240 35%,#201660 65%,#160E38 100%);position:relative;overflow:hidden}.login-brand:before{content:"";position:absolute;width:560px;height:560px;background:radial-gradient(circle,rgba(140,124,240,.2) 0%,transparent 65%);border-radius:50%;top:-180px;right:-120px;pointer-events:none}.login-brand:after{content:"";position:absolute;width:400px;height:400px;background:radial-gradient(circle,rgba(108,83,230,.16) 0%,transparent 65%);border-radius:50%;bottom:-140px;left:-80px;pointer-events:none}.login-brand-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(140,124,240,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(140,124,240,.05) 1px,transparent 1px);background-size:52px 52px;pointer-events:none;z-index:0}.brand-logo-area{position:absolute;top:36px;left:48px;z-index:2}.brand-logo-navbar{height:38px;width:auto;display:block;filter:brightness(1.15) drop-shadow(0 0 8px rgba(140,124,240,.3))}.brand-content{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:100px 64px 60px}.brand-center-block{width:100%;max-width:460px}.brand-headline{font-size:38px;font-weight:800;color:#fff;margin:0 0 14px;line-height:1.25;letter-spacing:-.5px}.brand-headline-highlight{background:linear-gradient(90deg,#A99DF5 0%,#C084FC 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.brand-subline{font-size:16px;color:#ffffff80;margin:0 0 40px;line-height:1.7;font-weight:400}.brand-features{display:grid;grid-template-columns:1fr 1fr;gap:14px}.feature-item{display:flex;flex-direction:column;gap:10px;padding:20px 18px;background:rgba(255,255,255,.06);border-radius:14px;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:all .25s ease;cursor:default}.feature-item:hover{background:rgba(140,124,240,.14);border-color:#8c7cf052;transform:translateY(-2px);box-shadow:0 8px 24px #00000040}.feature-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;font-size:18px;color:#a99df5;background:rgba(140,124,240,.18);border-radius:10px;border:1px solid rgba(140,124,240,.22)}.feature-text h4{margin:0 0 4px;font-size:14px;font-weight:600;color:#ffffffeb;letter-spacing:.2px}.feature-text p{margin:0;font-size:12.5px;color:#ffffff75;line-height:1.5}.login-form-section{flex:0 0 520px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:48px 60px;background:#FFFFFF;position:relative;box-shadow:-4px 0 40px #0000002e;min-height:100vh}.login-lang-switcher{position:absolute;top:28px;right:28px}.login-form-card{width:100%;max-width:360px}.login-form-header{margin-bottom:28px}.login-form-header h2{font-size:24px;font-weight:700;color:#1a1a2e;margin:0 0 8px;letter-spacing:-.2px}.login-form-header p{font-size:14px;color:#9ca3af;margin:0}.login-method-switcher{display:flex;gap:4px;background:#F3F4F6;border-radius:10px;padding:4px;margin-bottom:28px}.login-method-btn{flex:1;padding:8px 0;font-size:13px;font-weight:500;color:#9ca3af;background:transparent;border:none;border-radius:7px;cursor:pointer;transition:all .2s ease;outline:none;white-space:nowrap;letter-spacing:.1px}.login-method-btn:hover{color:#6b7280}.login-method-btn.active{background:#FFFFFF;color:#1a1a2e;font-weight:600;box-shadow:0 1px 4px #0000001a,0 0 0 .5px #0000000a}.login-form .ant-form-item-label>label{font-size:13px!important;font-weight:500!important;color:#374151!important}.login-form .ant-input-affix-wrapper{padding:10px 14px!important;border-radius:8px!important;border:1.5px solid #E8E8EE!important;background:#F7F8FC!important;transition:all .2s ease!important;box-shadow:none!important}.login-form .ant-input-affix-wrapper:hover{border-color:#c6b9ff!important;background:#F7F8FC!important}.login-form .ant-input-affix-wrapper-focused,.login-form .ant-input-affix-wrapper:focus-within{border-color:#8c7cf0!important;background:#FFFFFF!important;box-shadow:0 0 0 3px #8c7cf01f!important}.login-form .ant-input{font-size:14px!important;color:#1a1a2e!important;background:transparent!important}.login-form .ant-input::placeholder{color:#c4c9d4!important}.login-form .ant-input-affix-wrapper .anticon{color:#c4c9d4!important;font-size:15px;transition:color .2s}.login-form .ant-input-affix-wrapper-focused .anticon,.login-form .ant-input-affix-wrapper:focus-within .anticon{color:#8c7cf0!important}.login-form .ant-input:not(.ant-input-affix-wrapper .ant-input){padding:10px 14px!important;border-radius:8px!important;border:1.5px solid #E8E8EE!important;background:#F7F8FC!important;font-size:14px!important;color:#1a1a2e!important;transition:all .2s ease!important}.login-submit-btn{font-size:15px!important;font-weight:600!important;height:44px!important;border-radius:8px!important;background:linear-gradient(135deg,#8C7CF0 0%,#6B5CE7 100%)!important;border:none!important;box-shadow:0 4px 16px #8c7cf061!important;transition:all .22s ease!important;letter-spacing:.5px}.login-submit-btn:hover{background:linear-gradient(135deg,#9D8FF5 0%,#7C6DF0 100%)!important;box-shadow:0 6px 22px #8c7cf080!important;transform:translateY(-1px)}.login-submit-btn:active{transform:translateY(0)!important;box-shadow:0 2px 8px #8c7cf047!important}.login-options{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.login-options .ant-checkbox-wrapper{font-size:13px!important;color:#6b7280!important}.login-options .forgot-link{color:#8c7cf0;font-size:13px;font-weight:500;cursor:pointer;transition:color .2s;text-decoration:none}.login-options .forgot-link:hover{color:#6b5ce7}.login-register{text-align:center;padding-top:20px;border-top:1px solid #F3F4F6;margin-top:12px}.login-register span{font-size:13px;color:#9ca3af}.login-register .ant-btn-link,.login-register a{font-size:13px!important;color:#8c7cf0!important;font-weight:600!important;padding:0 4px!important;transition:color .2s}.login-register .ant-btn-link:hover,.login-register a:hover{color:#6b5ce7!important}.login-form .sms-code-row{display:flex;gap:10px;align-items:flex-start}.login-form .sms-code-input{flex:1}.login-form .sms-code-btn{flex-shrink:0!important;width:112px!important;height:42px!important;border-radius:8px!important;font-size:13px!important;font-weight:500!important;border:1.5px solid #C6B9FF!important;color:#8c7cf0!important;background:transparent!important;transition:all .2s!important}.login-form .sms-code-btn:hover:not(:disabled){background:linear-gradient(135deg,#8C7CF0,#6B5CE7)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 4px 12px #8c7cf04d!important}.login-form .sms-code-btn:disabled{color:#c6b9ff!important;border-color:#ede9ff!important;background:#FAFAFF!important}.wechat-login-section{display:flex;flex-direction:column;align-items:center;padding:8px 0 16px}.wechat-qr-title{font-size:14px;font-weight:500;margin-bottom:16px;color:#6b7280}.wechat-qr-container{width:200px;height:200px;display:flex;align-items:center;justify-content:center;border:1.5px solid #E8E8EE;border-radius:14px;padding:8px;background:#fff;box-shadow:0 2px 12px #0000000f}.wechat-loading{display:flex;flex-direction:column;align-items:center;gap:10px;color:#c4c9d4}.wechat-qr-expired{display:flex;flex-direction:column;align-items:center;color:#c4c9d4}.wechat-qr-expired p{margin-bottom:8px}.wechat-qr-tip{margin-top:12px;color:#9ca3af;font-size:12px}.login-footer{margin-top:32px;text-align:center;color:#d1d5db;font-size:12px;line-height:1.6}@media (max-width: 1100px){.login-brand{display:none}.login-form-section{flex:1;background:linear-gradient(150deg,#130E2B 0%,#1A1240 100%);padding:40px 24px;box-shadow:none}.login-form-header h2{color:#fff!important}.login-form-header p{color:#ffffff80!important}.login-tabs .ant-tabs-tab-active .ant-tabs-tab-btn{color:#fff!important}.login-tabs .ant-tabs-nav:before{border-bottom-color:#ffffff1a!important}.login-register{border-top-color:#ffffff14}.login-register span{color:#ffffff73}.login-footer{color:#ffffff40}.login-form .ant-form-item-label>label{color:#ffffffb3!important}}@media (max-width: 480px){.login-form-section{padding:32px 20px}.login-form-card{max-width:none}.login-form-header h2{font-size:22px}.login-options{flex-direction:column;gap:10px;align-items:flex-start}.login-options .forgot-link{align-self:flex-end}.login-lang-switcher{top:16px;right:16px}}@media (min-width: 1440px){.brand-logo-area{top:44px;left:56px}.brand-content{padding:100px 72px 60px}.brand-center-block{max-width:500px}.brand-headline{font-size:42px}.brand-subline{font-size:17px}.login-form-section{flex:0 0 540px;padding:48px 64px}.login-form-card{max-width:380px}}.captcha-modal .ant-modal-body{padding:16px 20px 20px}.captcha-container{display:flex;flex-direction:column;gap:12px}.captcha-canvas-wrap{position:relative;width:300px;height:150px;border-radius:10px;overflow:hidden;box-shadow:0 2px 12px #8c7cf026}.captcha-bg-canvas{display:block;width:300px;height:150px}.captcha-piece-canvas{position:absolute;top:0;left:0;width:300px;height:150px;pointer-events:none;will-change:transform}.captcha-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;border-radius:10px;animation:overlay-fade-in .25s ease-out}.captcha-overlay-success{background:rgba(82,196,26,.88);color:#fff}.captcha-overlay-fail{background:rgba(255,77,79,.82);color:#fff}@keyframes overlay-fade-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.captcha-hint{text-align:center;font-size:13px;color:#8c8c8c;margin:-4px 0 0}.captcha-track{position:relative;height:44px;background:#f0f0f0;border-radius:22px;border:1px solid #e0e0e0;overflow:hidden;cursor:pointer;-webkit-user-select:none;user-select:none}.captcha-track-fill{position:absolute;left:0;top:0;height:100%;background:linear-gradient(90deg,rgba(140,124,240,.2),rgba(140,124,240,.4));border-radius:22px;transition:width .05s linear}.captcha-slider{position:absolute;top:2px;width:40px;height:40px;background:#fff;border-radius:50%;box-shadow:0 2px 8px #0000002e;display:flex;align-items:center;justify-content:center;font-size:18px;color:#8c7cf0;cursor:grab;transition:background .15s,color .15s,box-shadow .15s;will-change:left;z-index:2}.captcha-slider:hover{box-shadow:0 4px 16px #8c7cf059}.captcha-slider:active{cursor:grabbing}.captcha-slider-success{background:#52c41a;color:#fff;box-shadow:0 4px 16px #52c41a66}.captcha-slider-fail{background:#ff4d4f;color:#fff;animation:slider-shake .5s ease}@keyframes slider-shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-6px)}80%{transform:translate(6px)}}.captcha-refresh{text-align:right;font-size:13px;color:#8c8c8c;cursor:pointer;transition:color .2s;-webkit-user-select:none;user-select:none}.captcha-refresh:hover{color:#8c7cf0}.captcha-refresh .anticon{margin-right:4px}.register-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#7B8EE8 0%,#8B68B8 50%,#9C8EF2 100%);padding:40px 20px;position:relative;overflow:hidden}.register-page:before{content:"";position:absolute;width:560px;height:560px;background:radial-gradient(circle,rgba(255,255,255,.08) 0%,transparent 70%);border-radius:50%;top:-180px;left:-180px;animation:float-bg 16s ease-in-out infinite}.register-page:after{content:"";position:absolute;width:400px;height:400px;background:radial-gradient(circle,rgba(198,185,255,.1) 0%,transparent 70%);border-radius:50%;bottom:-120px;right:-80px;animation:float-bg 14s ease-in-out infinite reverse}@keyframes float-bg{0%,to{transform:translateY(0) scale(1);opacity:.7}50%{transform:translateY(-12px) scale(1.03);opacity:.9}}.register-decoration{position:absolute;border-radius:50%;pointer-events:none}.register-decoration-1{width:90px;height:90px;background:linear-gradient(135deg,rgba(198,185,255,.18) 0%,rgba(255,255,255,.08) 100%);top:15%;left:10%;animation:float-decoration 14s ease-in-out infinite}.register-decoration-2{width:60px;height:60px;background:linear-gradient(135deg,rgba(192,132,252,.15) 0%,rgba(255,255,255,.08) 100%);top:70%;left:8%;animation:float-decoration 12s ease-in-out infinite 1.5s}.register-decoration-3,.register-decoration-4{display:none}@keyframes float-decoration{0%,to{transform:translateY(0) translate(0) scale(1);opacity:.5}33%{transform:translateY(-10px) translate(5px) scale(1.03);opacity:.75}66%{transform:translateY(7px) translate(-4px) scale(.98);opacity:.6}}.register-card-container{position:relative;z-index:1;width:100%;max-width:480px}.register-card{background:#FFFFFF;border-radius:24px;padding:48px 40px;box-shadow:0 12px 40px #6b5ce72e,0 2px 10px #0000000a;position:relative}.register-lang-switcher{position:absolute;top:20px;right:20px}.register-header{text-align:center;margin-bottom:32px}.register-logo{width:64px;height:64px;background:linear-gradient(135deg,#8C7CF0 0%,#6B5CE7 100%);border-radius:16px;display:flex;align-items:center;justify-content:center;margin:0 auto 18px;box-shadow:0 6px 18px #8c7cf052,0 2px 6px #6b5ce729;transition:all .3s cubic-bezier(.4,0,.2,1)}.register-logo:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 10px 28px #8c7cf06b}.register-logo .anticon{font-size:32px;color:#fff}.register-title{font-size:26px;font-weight:700;color:#1a1a2e;margin:0 0 10px!important;letter-spacing:1px}.register-subtitle{font-size:14px;color:#6b7280;margin:0;line-height:1.6}.register-tabs{margin-bottom:4px}.register-tabs .ant-tabs-nav{margin-bottom:16px}.register-tabs .ant-tabs-tab{font-size:14px;font-weight:500;color:#9ca3af;padding:8px 16px;transition:all .25s}.register-tabs .ant-tabs-tab:hover .ant-tabs-tab-btn{color:#a99df5}.register-tabs .ant-tabs-tab-active .ant-tabs-tab-btn{color:#8c7cf0!important;font-weight:600}.register-tabs .ant-tabs-ink-bar{background:linear-gradient(90deg,#8C7CF0,#C084FC);height:3px;border-radius:2px}.register-form .ant-form-item-label>label{font-size:14px;font-weight:500;color:#1a1a2e}.register-form .ant-input-affix-wrapper{padding:12px 16px;border-radius:8px;border:1px solid #DDD8FF;background:#FFFFFF;transition:all .2s ease}.register-form .ant-input-affix-wrapper .ant-input{background:transparent;border:none;box-shadow:none;padding:0;font-size:15px;color:#1a1a2e}.register-form .ant-input-affix-wrapper:hover{border-color:#a99df5;background:#FFFFFF;box-shadow:0 1px 6px #8c7cf00f}.register-form .ant-input-affix-wrapper-focused{border-color:#8c7cf0!important;background:#FFFFFF!important;box-shadow:0 0 0 3px #8c7cf01a!important}.register-form .ant-input-affix-wrapper .anticon{color:#a99df5;font-size:16px;transition:color .25s}.register-form .ant-input-affix-wrapper:hover .anticon,.register-form .ant-input-affix-wrapper-focused .anticon{color:#8c7cf0}.sms-code-row{display:flex;gap:12px}.sms-code-input{flex:1}.sms-code-btn{min-width:110px;height:48px!important;border-radius:8px!important;font-weight:500!important;border:1px solid #C6B9FF!important;color:#8c7cf0!important;background:transparent!important;transition:all .2s ease!important}.sms-code-btn:hover:not(:disabled){background:linear-gradient(135deg,#8C7CF0,#6B5CE7)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 4px 12px #8c7cf047!important}.sms-code-btn:disabled{border-color:#ede9ff!important;color:#c6b9ff!important;background:#FAFAFF!important}.register-submit-btn{font-size:15px!important;font-weight:600!important;height:48px!important;border-radius:8px!important;background:linear-gradient(135deg,#8C7CF0,#6B5CE7)!important;border:none!important;box-shadow:0 2px 8px #8c7cf033!important;transition:all .22s ease!important;letter-spacing:1px}.register-submit-btn:hover{background:linear-gradient(135deg,#9D8FF5,#7C6DF0)!important;box-shadow:0 4px 16px #8c7cf05c!important;transform:translateY(-1px)}.register-submit-btn:active{background:linear-gradient(135deg,#6B5CE7,#5647D4)!important;box-shadow:0 2px 6px #8c7cf03d!important;transform:translateY(0)}.register-card .wechat-login-placeholder{display:flex;flex-direction:column;align-items:center;text-align:center}.register-card .wechat-qrcode-area{width:140px;height:140px;border:2px dashed #C6B9FF;border-radius:16px;display:flex;align-items:center;justify-content:center;background:rgba(140,124,240,.04);margin-bottom:16px;transition:all .25s}.register-card .wechat-qrcode-area:hover{border-color:#8c7cf0;background:rgba(140,124,240,.08)}.register-card .wechat-qrcode-icon{font-size:64px;color:#c6b9ff}.register-card .wechat-coming-soon-badge{display:inline-block;background:linear-gradient(135deg,#8C7CF0,#C084FC);color:#fff;font-size:11px;font-weight:600;padding:3px 12px;border-radius:20px;margin-bottom:12px;letter-spacing:.5px;box-shadow:0 2px 8px #8c7cf04d}.register-card .wechat-login-title{font-size:16px;font-weight:600;color:#1a1a2e;margin:0 0 8px}.register-card .wechat-login-desc{font-size:13px;color:#6b7280;line-height:1.7;margin:0 0 20px}.register-card .wechat-login-btn{border-radius:10px!important;border-color:#e8e6ff!important;color:#a99df5!important;font-size:14px}.wechat-user-info{display:flex;flex-direction:column;align-items:center;margin-bottom:24px;padding:20px;background:linear-gradient(135deg,rgba(140,124,240,.08) 0%,rgba(169,157,245,.04) 100%);border-radius:16px;border:1px solid rgba(140,124,240,.15)}.wechat-user-info .ant-avatar{margin-bottom:12px;border:3px solid rgba(140,124,240,.3);box-shadow:0 4px 12px #8c7cf033}.wechat-nickname{font-size:16px;font-weight:500;color:#1a1a2e}.wechat-bind-tip{display:flex;flex-direction:column;align-items:center;padding:40px 20px;text-align:center}.wechat-bind-icon{font-size:64px;color:#c6b9ff;margin-bottom:20px}.wechat-bind-tip p{color:#6b7280;font-size:14px;margin-bottom:20px;line-height:1.6}.register-footer{text-align:center;padding-top:18px;border-top:1px solid rgba(140,124,240,.1);margin-top:20px}.register-footer .ant-typography{color:#6b7280;font-size:14px}.register-footer .ant-typography-link{color:#8c7cf0!important;font-weight:600;margin-left:8px;transition:all .25s}.register-footer .ant-typography-link:hover{color:#6b5ce7!important;text-decoration:underline}.register-copyright{text-align:center;margin-top:20px;color:#ffffffa6;font-size:12px}.register-form .ant-form-item-tooltip{color:#a99df5}@media (max-width: 1024px){.register-page{padding:30px 16px}.register-card{padding:40px 32px;border-radius:20px}.register-decoration-1,.register-decoration-2{display:none}}@media (max-width: 480px){.register-page{padding:40px 12px 20px;align-items:flex-start}.register-card{padding:32px 24px;border-radius:20px}.register-header{margin-bottom:24px}.register-logo{width:60px;height:60px;border-radius:16px}.register-logo .anticon{font-size:26px}.register-title{font-size:22px}.register-subtitle{font-size:13px}.register-form .ant-input-affix-wrapper,.register-form .ant-input{padding:10px 14px;border-radius:8px}.sms-code-row{flex-direction:column;gap:8px}.sms-code-btn{width:100%}.register-submit-btn{border-radius:8px!important}.register-lang-switcher{top:16px;right:16px}.register-decoration-3,.register-decoration-4{display:none}}@media (max-width: 360px){.register-card{padding:28px 20px}.register-title{font-size:20px}}.page-loading-container{display:flex;justify-content:center;align-items:center;width:100%;height:100%;min-height:400px;position:relative;background:linear-gradient(135deg,#f5f7fa 0%,#ffffff 100%)}.page-loading-container.fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;min-height:100vh;z-index:9999;background:linear-gradient(135deg,#f0f5ff 0%,#ffffff 50%,#f6f8fc 100%)}.page-loading-content{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;z-index:1}.loading-spinner-wrapper{margin-bottom:24px;position:relative}.loading-spinner-wrapper .ant-spin{color:#8c7cf0}.loading-spinner-wrapper .ant-spin-dot-item{background-color:#8c7cf0}.loading-text{display:flex;align-items:center;gap:8px}.loading-tip{font-size:16px;font-weight:500;color:#000000a6;letter-spacing:.5px}.loading-dots{display:flex;align-items:center;gap:4px}.loading-dots .dot{width:6px;height:6px;border-radius:50%;background-color:#8c7cf0;animation:dotPulse 1.4s infinite ease-in-out}.loading-dots .dot:nth-child(1){animation-delay:0s}.loading-dots .dot:nth-child(2){animation-delay:.2s}.loading-dots .dot:nth-child(3){animation-delay:.4s}@keyframes dotPulse{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1.2)}}.loading-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:200px;height:200px;background:radial-gradient(circle,rgba(140,124,240,.1) 0%,rgba(140,124,240,.05) 40%,transparent 70%);border-radius:50%;animation:glowPulse 3s infinite ease-in-out;pointer-events:none}@keyframes glowPulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.5}50%{transform:translate(-50%,-50%) scale(1.3);opacity:.8}}@media (max-width: 768px){.loading-tip{font-size:14px}.loading-spinner-wrapper{margin-bottom:20px}.loading-glow{width:150px;height:150px}}.loading-spinner-wrapper .anticon-loading{animation:customRotate 1s linear infinite}@keyframes customRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.base-tree-search-bar{margin-bottom:12px;display:flex;align-items:center;gap:8px}.base-tree-search-bar .ant-input-search{border-radius:8px;flex:1}.base-tree-search-bar .ant-input-search .ant-input{border-radius:8px;transition:all .3s ease}.base-tree-search-bar .ant-input-search .ant-input:hover,.base-tree-search-bar .ant-input-search .ant-input:focus{border-color:var(--primary-color, #8C7CF0);box-shadow:0 0 0 2px #8c7cf01a}.base-tree-search-count{font-size:12px;color:#8c8c8c;white-space:nowrap;background:#f5f5f5;padding:2px 8px;border-radius:10px;line-height:1.5}.base-tree-node-title{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:28px}.base-tree-node-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;color:#000000d9;line-height:1.6}.base-tree-node-actions{display:flex;align-items:center;gap:2px;opacity:0;transition:opacity .2s ease;margin-left:8px;flex-shrink:0}.base-tree-node-title:hover .base-tree-node-actions{opacity:1}.base-tree-action-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;cursor:pointer;color:#8c8c8c;font-size:12px;transition:all .2s ease;border:none;background:transparent;padding:0;line-height:1}.base-tree-action-btn:hover{background-color:#8c7cf014;color:var(--primary-color, #8C7CF0)}.base-tree-action-btn.action-add:hover{background-color:#8c7cf014;color:#8c7cf0}.base-tree-action-btn.action-edit:hover{background-color:#faad1414;color:#faad14}.base-tree-action-btn.action-delete:hover{background-color:#ff4d4f14;color:#ff4d4f}.base-tree-more-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;cursor:pointer;color:#8c8c8c;font-size:14px;transition:all .2s ease;border:none;background:transparent;padding:0}.base-tree-more-btn:hover{background-color:#8c7cf014;color:var(--primary-color, #8C7CF0)}.base-tree-dropdown .ant-dropdown-menu{padding:4px;border-radius:8px;box-shadow:0 6px 16px #00000014,0 3px 6px -4px #0000001f,0 9px 28px 8px #0000000d}.base-tree-dropdown .ant-dropdown-menu-item{border-radius:6px;padding:6px 12px;font-size:13px;transition:all .2s ease;margin:2px 0}.base-tree-dropdown .ant-dropdown-menu-item:hover{background-color:#f5f3ff}.base-tree-dropdown .ant-dropdown-menu-item .anticon{font-size:13px;margin-right:8px}.base-tree-dropdown .ant-dropdown-menu-item:last-child:hover{background-color:#fff2f0;color:#ff4d4f}.base-tree-highlight{background-color:#fff3b0;font-weight:600;padding:0 1px;border-radius:2px}.base-tree-action-divider{width:1px;height:14px;background:#e8e8e8;margin:0 2px;flex-shrink:0}@media (max-width: 768px){.base-tree-action-btn{width:22px;height:22px;font-size:11px}.base-tree-node-text{font-size:13px}}.data-form-container{display:flex;flex-direction:column;height:100%}.data-form-scroll-area{flex:1;overflow:auto;padding:0 4px}.data-form-scroll-area::-webkit-scrollbar{width:6px}.data-form-scroll-area::-webkit-scrollbar-track{background:transparent}.data-form-scroll-area::-webkit-scrollbar-thumb{background:#d9d9d9;border-radius:3px}.data-form-scroll-area::-webkit-scrollbar-thumb:hover{background:#bfbfbf}.data-form{padding:4px 8px 8px}.data-form-group{margin-bottom:4px}.form-section-header{display:flex;align-items:center;margin-bottom:16px;margin-top:4px}.form-section-indicator{width:3px;height:18px;background:var(--primary-color, #8C7CF0);border-radius:2px;margin-right:10px;flex-shrink:0}.form-section-title{font-size:15px!important;font-weight:600!important;color:var(--text-primary, rgba(0, 0, 0, .85))!important;margin-bottom:0!important;margin-top:0!important;line-height:1.4!important}.form-group-divider{margin:8px 0 16px!important;border-color:var(--border-light, #f0f0f0)!important}.data-form .ant-form-item{margin-bottom:16px}.data-form .ant-form-item-label>label{color:var(--text-primary, rgba(0, 0, 0, .85));font-size:14px;font-weight:500}.data-form .ant-form-item-optional{color:var(--text-tertiary, rgba(0, 0, 0, .45))!important;font-size:12px!important;font-weight:400!important}.data-form .ant-input:hover,.data-form .ant-input-number:hover,.data-form .ant-select:not(.ant-select-disabled):hover .ant-select-selector,.data-form .ant-cascader:hover .ant-select-selector,.data-form .ant-picker:hover{border-color:var(--primary-light, #A99DF5)}.data-form .ant-input:focus,.data-form .ant-input-focused,.data-form .ant-input-number-focused,.data-form .ant-select-focused .ant-select-selector,.data-form .ant-cascader-focused .ant-select-selector,.data-form .ant-picker-focused{border-color:var(--primary-color, #8C7CF0);box-shadow:0 0 0 2px #8c7cf01a}.data-form .ant-input-textarea textarea{min-height:80px;resize:vertical}.data-form .ant-input-textarea-show-count:after{font-size:12px;color:var(--text-tertiary, rgba(0, 0, 0, .45))}.data-form .ant-input-number{width:100%}.data-form .ant-radio-group{display:flex;gap:16px}.data-form .ant-radio-wrapper{font-size:14px}.data-form .form-item-switch .ant-form-item-control{flex-direction:row;align-items:center}.data-form .form-item-switch .ant-switch{margin-top:4px}.data-form .ant-cascader{width:100%}.data-form .ant-cascader .ant-select-selector{border-radius:var(--radius-md, 6px)}.data-form .ant-input-number-group-addon{background:var(--bg-secondary, #fafafa);border-color:var(--border-color, #d9d9d9);color:var(--text-secondary, rgba(0, 0, 0, .65));font-weight:500;min-width:36px;text-align:center}.data-form-group{animation:fadeInUp .3s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.form-footer{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-secondary, #fafafa);border-top:1px solid var(--border-light, #f0f0f0);border-radius:0 0 8px 8px;margin:0 -4px -4px}.form-footer .ant-btn{min-width:80px;border-radius:var(--radius-md, 6px);font-weight:500;transition:all .2s ease}.form-footer .ant-btn-primary{box-shadow:0 2px 4px #8c7cf033}.form-footer .ant-btn-primary:hover{box-shadow:0 4px 8px #8c7cf04d}.data-form .ant-form-item-has-error .ant-input,.data-form .ant-form-item-has-error .ant-input-number,.data-form .ant-form-item-has-error .ant-select-selector{border-color:var(--accent-red, #ff4d4f)!important}.data-form .ant-form-item-has-error .ant-input:focus,.data-form .ant-form-item-has-error .ant-input-number-focused,.data-form .ant-form-item-has-error .ant-select-focused .ant-select-selector{box-shadow:0 0 0 2px #ff4d4f1a!important}.data-form .ant-form-item-explain-error{font-size:12px;margin-top:4px}.data-form .ant-form-item-has-success .ant-input,.data-form .ant-form-item-has-success .ant-input-number,.data-form .ant-form-item-has-success .ant-select-selector{border-color:var(--accent-green, #52c41a)}@media (max-width: 576px){.data-form{padding:4px}.data-form .ant-form-item{margin-bottom:12px}.form-footer{padding:10px 12px;gap:8px}}@media (min-width: 577px) and (max-width: 768px){.data-form{padding:4px 6px}}.hp-table-container{width:100%;position:relative}.hp-table-scroll-container{width:100%;border-radius:2px;position:relative;overflow-x:auto}.hp-table{min-width:100%;border-collapse:separate;border-spacing:0;font-size:14px;line-height:1.5715;color:#000000d9;background:#fff;table-layout:auto}.hp-table-bordered{border:1px solid #f0f0f0}.hp-table-bordered .ant-table-cell{border-right:1px solid #f0f0f0}.hp-table-bordered .ant-table-thead>tr>th{border-bottom:1px solid #f0f0f0}.hp-table-bordered .ant-table-tbody>tr>td{border-bottom:1px solid #f0f0f0}.hp-table thead{position:sticky;top:0;z-index:10;background:#fafafa}.hp-table .ant-table-thead>tr>th{position:relative;background:#fafafa;font-weight:500;color:#000000d9;text-align:left;border-bottom:1px solid #f0f0f0;transition:background .3s ease}.hp-table-header-cell{padding:16px;overflow-wrap:break-word;position:relative}.hp-table-header-content{display:flex;align-items:center;-webkit-user-select:none;user-select:none;gap:4px;overflow:hidden;min-width:0}.hp-table-column-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hp-table-header-content.sortable{cursor:pointer}.hp-table-header-content.sortable:hover{color:#8c7cf0}.hp-table-sort-indicator{display:inline-flex;flex-direction:column;align-items:center;flex-shrink:0;margin-left:2px;font-size:12px;line-height:1;color:#0000004a}.hp-table-sort-icon-group{display:inline-flex;flex-direction:column;line-height:1}.hp-table-sort-icon-up,.hp-table-sort-icon-down{color:#00000040;font-size:10px;line-height:.5}.hp-table-sort-icon-up{margin-bottom:-2px}.hp-table-header-content.sortable:hover .hp-table-sort-icon-up,.hp-table-header-content.sortable:hover .hp-table-sort-icon-down{color:#00000073}.hp-table .ant-table-cell{padding:16px;border-bottom:1px solid #f0f0f0;transition:background .3s;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hp-table tbody .ant-table-row{transition:background .3s ease}.hp-table tbody .ant-table-row:hover{background:#fafafa;cursor:pointer}.hp-table tbody .hp-table-row-even{background:#ffffff}.hp-table tbody .hp-table-row-odd{background:#fafafa}.hp-table tbody .hp-table-row-even:hover,.hp-table tbody .hp-table-row-odd:hover{background:#f5f5f5}.hp-table-resizer{position:absolute;right:-5px;top:0;bottom:0;width:10px;cursor:col-resize;-webkit-user-select:none;user-select:none;touch-action:none;z-index:2;background:transparent}.hp-table-resizer:before{content:"";position:absolute;top:50%;left:50%;width:1px;height:50%;background-color:transparent;transform:translate(-50%,-50%);transition:background-color .2s cubic-bezier(.4,0,.2,1)}.hp-table-resizer:hover:before{background-color:#8c7cf0}.hp-table-resizer.isResizing:before{background-color:#8c7cf0;height:100%}.hp-table-resizer.isResizing{background-color:#8c7cf014}.hp-table-header-cell:has(.hp-table-resizer:hover){background-color:#f7f8fc!important}.hp-table-header-cell:has(.hp-table-resizer.isResizing){background-color:#8c7cf00f!important}.hp-table-empty{text-align:center;padding:48px 16px!important}.hp-table-empty .ant-empty{margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center}.hp-table-empty .ant-empty-image{display:flex;align-items:center;justify-content:center;margin-bottom:8px}.ant-empty-img-simple{height:40px;display:block;margin:0 auto}.ant-empty-img-simple-ellipse{fill:#f5f5f5}.ant-empty-img-simple-g{fill:#d9d9d9}.ant-empty-img-simple-path{fill:#fafafa}.ant-empty-description{margin-top:8px;color:#00000040;font-size:14px}.hp-table-container .ant-spin-container{position:relative}.hp-table-container .ant-spin-spinning{position:relative;opacity:.5;pointer-events:none}.hp-table{contain:layout style paint;will-change:scroll-position}.hp-table tbody{will-change:transform}.hp-table-resizer{will-change:background}.hp-table-scroll-container::-webkit-scrollbar{width:8px;height:8px}.hp-table-scroll-container::-webkit-scrollbar-thumb{background:rgba(0,0,0,.2);border-radius:4px}.hp-table-scroll-container::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.3)}.hp-table-scroll-container::-webkit-scrollbar-track{background:#f0f0f0;border-radius:4px}@media screen and (max-width: 768px){.hp-table .ant-table-cell{padding:12px 8px;font-size:12px}.hp-table-header-cell{padding:12px 8px}}.hp-table .ant-table-cell .ant-input-number{width:100%}.hp-table .ant-table-cell .ant-btn{padding:4px 8px}.hp-table th,.hp-table td{min-width:50px;box-sizing:border-box}.hp-table-scroll-container.resizing{-webkit-user-select:none;user-select:none}.hp-table-scroll-container.resizing *{cursor:col-resize!important;pointer-events:none}.hp-table-scroll-container.resizing .hp-table-resizer,.hp-table-scroll-container.resizing .hp-table-resizer *{pointer-events:auto}.hp-table-resizer:active{cursor:col-resize}.hp-table-resizer:hover{background-color:#8c7cf00a}.hp-table-header-cell{overflow:visible}.hp-table .ant-table-thead>tr>th:has(.hp-table-resizer:hover){border-right:2px solid #8C7CF0}.hp-table .ant-table-thead>tr>th:has(.hp-table-resizer.isResizing){border-right:2px solid #8C7CF0;box-shadow:2px 0 #8c7cf026}.hp-table-drag-handle{position:absolute;left:8px;top:50%;transform:translateY(-50%);color:#00000040;cursor:move;font-size:14px;padding:4px;z-index:3;transition:color .2s ease;-webkit-user-select:none;user-select:none}.hp-table-drag-handle:hover{color:#8c7cf0}.hp-table-header-cell[draggable=true] .hp-table-header-content{padding-left:28px}.hp-table-header-cell.dragging{opacity:.5;background-color:#8c7cf014!important;border:2px dashed #8C7CF0!important;cursor:move}.hp-table-header-cell.drag-over{background-color:#8c7cf01a!important;border-left:3px solid #8C7CF0!important;box-shadow:inset 3px 0 #8c7cf0;transition:all .15s ease-out}.hp-table-header-cell[draggable=true]{cursor:move}.hp-table-header-cell[draggable=true]:active{-webkit-user-select:none;user-select:none}.hp-table-header-cell.dragging~.hp-table-header-cell{pointer-events:auto}@media screen and (max-width: 768px){.hp-table-drag-handle{left:4px;font-size:12px}.hp-table-header-cell[draggable=true] .hp-table-header-content{padding-left:24px}}.hp-table-cell-pinned{position:sticky!important;z-index:3}.hp-table-cell-pinned-left{left:0;box-shadow:2px 0 4px #00000014}.hp-table-cell-pinned-right{right:0;box-shadow:-2px 0 4px #00000014}.hp-table thead .hp-table-cell-pinned{background-color:#fafafa}.hp-table tbody .hp-table-cell-pinned{background-color:#fff}.hp-table tbody .ant-table-row:hover .hp-table-cell-pinned{background-color:#fafafa}.hp-table tbody .hp-table-row-even .hp-table-cell-pinned{background-color:#fff}.hp-table tbody .hp-table-row-odd .hp-table-cell-pinned{background-color:#fafafa}.hp-table tbody .hp-table-row-even:hover .hp-table-cell-pinned,.hp-table tbody .hp-table-row-odd:hover .hp-table-cell-pinned{background-color:#f5f5f5}.hp-row-drag-icon{color:#00000040;font-size:14px;cursor:grab;transition:color .2s ease}.hp-row-drag-handle-cell:hover .hp-row-drag-icon{color:#8c7cf0}.hp-table tbody tr.hp-row-dragging{opacity:.4;background-color:#ede9ff!important}.hp-table tbody tr.hp-row-dragging td{background-color:#ede9ff!important}.hp-table tbody tr.hp-row-drop-above{position:relative}.hp-table tbody tr.hp-row-drop-above:before{content:"";position:absolute;top:-1px;left:0;right:0;height:2px;background-color:#8c7cf0;z-index:10;box-shadow:0 -2px 4px #8c7cf04d}.hp-table tbody tr.hp-row-drop-below{position:relative}.hp-table tbody tr.hp-row-drop-below:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background-color:#8c7cf0;z-index:10;box-shadow:0 2px 4px #8c7cf04d}.hp-table tbody tr.hp-row-drop-above td,.hp-table tbody tr.hp-row-drop-below td{background-color:#ede9ff!important}.hp-table tbody tr[draggable=true]{user-select:none;-webkit-user-select:none}.hp-row-drag-handle-cell:hover{background-color:#f7f0ff!important}.hp-table-action-cell{white-space:nowrap;padding:8px 16px!important}.hp-table-action-cell .ant-btn{padding:0!important;margin:0!important;border:none!important;background:transparent!important;box-shadow:none!important;color:#8c7cf0!important;font-size:14px;height:auto!important;line-height:1.5715!important;font-weight:400;display:inline-flex;align-items:center;gap:4px;cursor:pointer;transition:color .15s ease-out}.hp-table-action-cell .ant-btn:hover,.hp-table-action-cell .ant-btn:focus{color:#a99df5!important;background:transparent!important;border:none!important;box-shadow:none!important}.hp-table-action-cell .ant-btn:active{color:#6b5ce7!important;background:transparent!important}.hp-table-action-cell .ant-btn-dangerous,.hp-table-action-cell .ant-btn[danger]{color:#ff4d4f!important}.hp-table-action-cell .ant-btn-dangerous:hover,.hp-table-action-cell .ant-btn[danger]:hover{color:#ff7875!important}.hp-table-action-cell .ant-btn-dangerous:active,.hp-table-action-cell .ant-btn[danger]:active{color:#d9363e!important}.hp-table-action-cell .ant-btn[disabled],.hp-table-action-cell .ant-btn.ant-btn-disabled{color:#00000040!important;cursor:not-allowed;pointer-events:none}.hp-table-action-cell .ant-space{display:inline-flex;align-items:center;flex-wrap:nowrap}.hp-table-action-cell .ant-btn~.ant-btn{margin-left:8px;position:relative}.hp-table-action-cell .ant-btn~.ant-btn:before{content:"";position:absolute;left:-5px;top:50%;transform:translateY(-50%);width:1px;height:1em;background-color:#0000000f}@media screen and (max-width: 992px){.hp-table-action-cell{padding:8px 10px!important}.hp-table-action-cell .ant-btn{font-size:13px}.hp-table-action-cell .ant-space{gap:6px!important}.hp-table-action-cell .ant-btn~.ant-btn{margin-left:6px}}@media screen and (max-width: 768px){.hp-table-action-cell{padding:6px 8px!important}.hp-table-action-cell .ant-btn>span:not(.anticon){display:none}.hp-table-action-cell .ant-btn .anticon{font-size:16px!important}.hp-table-action-cell .ant-btn:not(:has(.anticon))>span{display:inline-block;max-width:2em;overflow:hidden;white-space:nowrap;text-overflow:clip;vertical-align:middle}.hp-table-action-cell .ant-btn{min-width:32px;min-height:32px;justify-content:center;padding:4px!important}.hp-table-action-cell .ant-space{gap:4px!important}.hp-table-action-cell .ant-btn~.ant-btn{margin-left:4px}.hp-table-action-cell .ant-btn~.ant-btn:before{display:none}}.base-data-manager-layout{background:#f0f2f5;height:calc(100vh - 120px)}.base-data-manager-sider{background:#fff;border-right:1px solid #e8e8e8;box-shadow:2px 0 8px #00000008;overflow:auto;height:100%;padding:12px;transition:width .3s cubic-bezier(.4,0,.2,1)}.resize-handle{position:absolute;right:0;top:0;bottom:0;width:8px;cursor:col-resize;background:transparent;transition:background-color .2s;z-index:10}.resize-handle:hover,.resize-handle.resizing{background:linear-gradient(90deg,transparent,#8C7CF0,transparent)}.collapse-trigger{position:absolute;top:50%;margin-left:-1px;transform:translateY(-50%);z-index:100;width:18px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:0 6px 6px 0;background:#8C7CF0;color:#fff;font-size:11px;border:none;box-shadow:2px 0 8px #8c7cf04d;transition:all .15s ease-out}.collapse-trigger:hover{width:22px;background:#6B5CE7;box-shadow:2px 0 14px #8c7cf073}.collapse-trigger:active{transform:translateY(-50%) scale(.96);box-shadow:1px 0 4px #8c7cf059}.data-manager-card{border-radius:8px;box-shadow:0 2px 8px #0000000f;border:1px solid #e8e8e8;height:100%;transition:box-shadow .3s}.data-manager-card:hover{box-shadow:0 4px 12px #00000014}.toolbar-container{margin-bottom:10px;padding:10px 12px;background:linear-gradient(135deg,#fafafa 0%,#ffffff 100%);border-radius:8px;border:1px solid #f0f0f0}.action-buttons .ant-btn{border-radius:6px;font-weight:500;transition:all .2s ease}.action-buttons .ant-btn-primary{background:var(--primary-color, #8C7CF0);border:none;box-shadow:0 2px 4px #8c7cf04d}.action-buttons .ant-btn-primary:hover{background:var(--primary-light, #A99DF5);box-shadow:0 4px 8px #8c7cf066}.action-buttons .ant-btn-default{border-color:var(--border-color, #E5E7EB)}.action-buttons .ant-btn-default:hover{border-color:var(--primary-color, #8C7CF0);color:var(--primary-color, #8C7CF0);box-shadow:0 2px 4px #8c7cf033}.toolbar-container .ant-btn{transition:all .2s ease;border-radius:var(--radius-md, 6px)}.toolbar-container .ant-btn-default:hover{border-color:var(--primary-color, #8C7CF0);color:var(--primary-color, #8C7CF0);box-shadow:0 2px 4px #8c7cf026}.search-input{width:240px;border-radius:6px;transition:all .3s}.search-input:hover,.search-input:focus-within{box-shadow:0 2px 8px #8c7cf026}.search-input .ant-input-clear-icon{color:var(--text-tertiary, rgba(0, 0, 0, .45));transition:color .2s}.search-input .ant-input-clear-icon:hover{color:var(--text-secondary, rgba(0, 0, 0, .65))}.table-container{flex:1;overflow:hidden;background:#fff;border-radius:8px;padding:12px}.pagination-container{display:flex;justify-content:flex-end;align-items:center;padding:12px 0 0;border-top:1px solid var(--border-light, #f0f0f0);margin-top:12px}.pagination-container .ant-pagination-item{border-radius:var(--radius-md, 6px)}.pagination-container .ant-pagination-item-active{border-color:var(--primary-color, #8C7CF0);font-weight:600}.ant-tag{border-radius:4px;padding:2px 10px;font-weight:500;border:1px solid currentColor;background:transparent;transition:all .3s}.ant-tag:hover{transform:scale(1.05);box-shadow:0 2px 4px #0000001a}.ant-badge-status-dot{width:8px;height:8px}.ant-badge-status-success{background:linear-gradient(135deg,#52c41a 0%,#389e0d 100%);box-shadow:0 0 0 2px #52c41a33}.ant-badge-status-default{background:linear-gradient(135deg,#d9d9d9 0%,#bfbfbf 100%)}.empty-state{text-align:center;padding:80px 0;display:flex;flex-direction:column;align-items:center;justify-content:center}.empty-state-icon{width:80px;height:80px;margin-bottom:20px;background:var(--primary-lightest, #EDE9FF);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:36px;color:var(--primary-color, #8C7CF0)}.empty-state-text{font-size:15px;color:var(--text-secondary, rgba(0, 0, 0, .65));padding:8px 0}.ant-spin-container{transition:opacity .3s}.ant-spin-blur{opacity:.5;-webkit-user-select:none;user-select:none;pointer-events:none}@media (max-width: 768px){.base-data-manager-sider{padding:8px}.toolbar-container{padding:8px 10px;margin-bottom:8px}.search-input{width:160px}.table-container{padding:8px}}@media (max-width: 576px){.base-data-manager-sider{padding:6px}.toolbar-container{padding:6px 8px;margin-bottom:6px}.table-container{padding:6px}.action-buttons .ant-btn{padding:4px 12px;font-size:13px;height:28px}.search-input{width:130px}}.base-data-manager-layout ::-webkit-scrollbar{width:8px;height:8px}.base-data-manager-layout ::-webkit-scrollbar-track{background:#f0f0f0;border-radius:4px}.base-data-manager-layout ::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#bfbfbf 0%,#8c8c8c 100%);border-radius:4px;transition:background .3s}.base-data-manager-layout ::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#8c8c8c 0%,#595959 100%)}@media print{.base-data-manager-sider,.collapse-trigger,.toolbar-container{display:none!important}.ant-table{font-size:12px}.ant-table-thead>tr>th,.ant-table-tbody>tr>td{padding:8px 12px}}.modal-title-bar{display:flex;align-items:center;gap:10px}.modal-title-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md, 6px);background:var(--primary-lightest, #EDE9FF);color:var(--primary-color, #8C7CF0);font-size:16px}.modal-title-text{font-size:16px;font-weight:600;color:var(--text-primary, rgba(0, 0, 0, .85))}.modal-footer-bar{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:4px 0}.data-edit-modal .ant-modal-content{border-radius:var(--radius-lg, 8px);overflow:hidden}.data-edit-modal .ant-modal-header{padding:16px 24px;border-bottom:1px solid var(--border-light, #f0f0f0);margin-bottom:0}.data-edit-modal .ant-modal-footer{padding:12px 24px;border-top:1px solid var(--border-light, #f0f0f0);margin-top:0}.data-edit-modal .ant-modal-close{top:16px;right:16px}.modal-footer-bar .ant-btn{min-width:80px;border-radius:var(--radius-md, 6px);font-weight:500;transition:all .2s ease}.modal-footer-bar .ant-btn-primary{box-shadow:0 2px 4px #8c7cf033}.modal-footer-bar .ant-btn-primary:hover{box-shadow:0 4px 8px #8c7cf04d}.data-detail-modal .ant-modal-content{border-radius:var(--radius-lg, 8px);overflow:hidden}.data-detail-modal .ant-modal-header{padding:16px 24px;border-bottom:1px solid var(--border-light, #f0f0f0);margin-bottom:0}.data-detail-modal .ant-descriptions{margin-top:8px}.data-detail-modal .ant-descriptions-bordered .ant-descriptions-item-label{background:var(--bg-secondary, #fafafa);font-weight:500;color:var(--text-secondary, rgba(0, 0, 0, .65));width:120px}.data-detail-modal .ant-descriptions-bordered .ant-descriptions-item-content{color:var(--text-primary, rgba(0, 0, 0, .85))}.doc-page-container{padding:16px 20px;min-height:100%;position:relative;background:var(--ant-color-bg-layout, #f5f5f5)}.doc-page-scroll{padding:0 0 12px}.doc-main-card{border-radius:10px!important;box-shadow:0 2px 12px #00000014!important;border:none!important}.doc-main-card-compact.ant-card>.ant-card-head{display:none}.doc-main-card-compact.ant-card>.ant-card-body{padding:20px 24px;border-radius:10px}.doc-main-card .ant-card-head{border-bottom:1px solid #f0f0f0;background:linear-gradient(135deg,#fafbfc 0%,#f0f5ff 100%);border-radius:10px 10px 0 0!important;padding:0 24px;min-height:56px}.doc-main-card .ant-card-head-title{padding:16px 0}.doc-main-card .ant-card-body{padding:24px}.doc-card-title{display:flex;align-items:center;gap:10px}.doc-card-title-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:16px}.doc-card-title-icon.sales{background:rgba(140,124,240,.1);color:#8c7cf0}.doc-card-title-icon.purchase{background:linear-gradient(135deg,#52c41a22 0%,#52c41a11 100%);color:#52c41a}.doc-card-title-icon.return{background:linear-gradient(135deg,#fa8c1622 0%,#fa8c1611 100%);color:#fa8c16}.doc-card-title-text{font-size:16px;font-weight:600;color:#262626;letter-spacing:.3px}.doc-card-title-badge{margin-left:4px}.doc-section{margin-bottom:20px}.doc-section-header{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid #f0f0f0}.doc-section-header-right{margin-left:auto;display:flex;align-items:center;gap:8px}.doc-status-badge,.doc-readonly-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:10px;font-size:12px;font-weight:500;border:1px solid}.doc-readonly-badge{background:#fff7e6;border-color:#ffd591;color:#d48806}.doc-section-header-bar{width:3px;height:16px;border-radius:2px;background:#8C7CF0;flex-shrink:0}.doc-section-header-text{font-size:14px;font-weight:600;color:#262626;letter-spacing:.2px}.doc-items-section{margin-bottom:20px}.doc-items-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.doc-items-header-left{display:flex;align-items:center;gap:8px}.doc-items-header-bar{width:3px;height:16px;border-radius:2px;background:linear-gradient(180deg,#722ed1 0%,#531dab 100%);flex-shrink:0}.doc-items-header-text{font-size:14px;font-weight:600;color:#262626}.doc-items-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;background:#722ed1;color:#fff;border-radius:11px;font-size:12px;font-weight:600}.doc-product-selector-wrap{margin-bottom:12px}.doc-summary-card{border-radius:8px!important;background:#F7F8FC!important;border:1px solid #F3F4F6!important;box-shadow:0 1px 3px #0000000a!important}.doc-summary-card .ant-card-body{padding:16px 20px}.doc-summary-row{display:flex;align-items:center;justify-content:space-between;padding:6px 0}.doc-summary-row+.doc-summary-row{border-top:1px solid #f0f0f0}.doc-summary-label{font-size:13px;color:#595959;display:flex;align-items:center;gap:6px}.doc-summary-value{font-size:15px;font-weight:700;color:#262626}.doc-summary-value.amount{font-size:18px;color:#cf1322;font-variant-numeric:tabular-nums}.doc-summary-value.quantity{color:#8c7cf0}.doc-payment-card{border-radius:8px!important;border:1px solid #e8ecf4!important;box-shadow:0 1px 4px #0000000d!important}.doc-payment-card .ant-card-head{min-height:44px;padding:0 16px;border-bottom:1px solid #f0f0f0;background:#fafcff;border-radius:8px 8px 0 0!important}.doc-payment-card .ant-card-head-title{padding:10px 0;font-size:13px;font-weight:600;color:#262626}.doc-payment-card .ant-card-body{padding:16px}.doc-remark-section{margin-top:16px}.doc-action-bar{background:#fafafa;padding:16px 24px;border-top:1px solid #f0f0f0;margin:24px -24px -24px;border-radius:0 0 10px 10px}.doc-action-bar-inner{max-width:100%;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:16px}.doc-save-hint{display:flex;align-items:center;gap:6px;color:#52c41a;font-size:12px}.doc-save-hint-icon{width:16px;height:16px;border-radius:50%;background:#52c41a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:10px;flex-shrink:0}.doc-action-buttons{display:flex;gap:8px;align-items:center}.doc-btn-draft{border-color:#e5e7eb!important}.doc-btn-draft:hover{border-color:#8c7cf0!important;color:#8c7cf0!important}.doc-btn-submit{background:#8C7CF0!important;border:none!important;box-shadow:0 2px 8px #8c7cf059!important}.doc-btn-submit:hover{background:#A99DF5!important;box-shadow:0 4px 12px #8c7cf073!important}.doc-readonly-banner{display:flex;align-items:center;gap:8px;padding:10px 16px;background:linear-gradient(135deg,#fffbe6 0%,#fff7d6 100%);border:1px solid #ffe58f;border-radius:8px;margin-bottom:16px;color:#d48806;font-size:13px;font-weight:500}.doc-divider{margin:20px 0!important;border-color:#f0f0f0!important}.doc-detail-table-wrap{border-radius:8px;overflow:hidden;border:1px solid #f0f0f0}.doc-totals-row{display:flex;align-items:center;padding:9px 16px;background:#f8f9fb;border-top:1px solid #e8e8e8;font-size:13px}.doc-totals-row.receivable{background:#f5f8ff}.doc-totals-row.payable{background:#f7f8fa}.doc-totals-label{flex:0 0 auto;font-weight:600;color:#262626;letter-spacing:2px;padding-right:20px;border-right:1px solid #e0e0e0;margin-right:20px;font-size:13px}.doc-totals-items{display:flex;align-items:center;gap:6px;flex:1}.doc-totals-item{display:flex;align-items:center;gap:6px}.doc-totals-item-label{color:#8c8c8c;font-size:13px}.doc-totals-item-value{font-weight:600;font-size:15px;font-variant-numeric:tabular-nums}.doc-totals-item-value.quantity{color:#8c7cf0}.doc-totals-item-value.amount{font-size:16px}.doc-totals-item-value.amount.green{color:#1d39c4}.doc-totals-item-value.amount.red{color:#531dab}.doc-totals-divider{width:1px;height:16px;background:#e0e0e0;margin:0 12px}.product-selector-modal .ant-modal-content{border-radius:var(--radius-lg, 8px);overflow:hidden}.product-selector-modal .ant-modal-header{padding:16px 24px;border-bottom:1px solid var(--border-light, #f0f0f0);margin-bottom:0;background:linear-gradient(135deg,#fafafa 0%,#ffffff 100%)}.product-selector-modal .ant-modal-body{padding:16px!important;max-height:calc(100vh - 200px);overflow:hidden}.product-selector-modal .ant-modal-footer{padding:12px 24px;border-top:1px solid var(--border-light, #f0f0f0);margin-top:0;background:#fafafa}.product-selector-title{display:flex;justify-content:space-between;align-items:center}.product-selector-title-text{font-size:16px;font-weight:600;color:var(--text-primary, rgba(0, 0, 0, .85));display:flex;align-items:center;gap:8px}.product-selector-title-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-md, 6px);background:var(--primary-lightest, #EDE9FF);color:var(--primary-color, #8C7CF0);font-size:14px}.product-selector-selected-count{font-size:13px;color:var(--primary-color, #8C7CF0);font-weight:500;background:var(--primary-lightest, #EDE9FF);padding:2px 12px;border-radius:var(--radius-full, 9999px);border:1px solid rgba(140,124,240,.2)}.product-selector-category-panel{height:calc(100vh - 280px);display:flex;flex-direction:column;border-radius:var(--radius-lg, 8px);border:1px solid var(--border-light, #f0f0f0);overflow:hidden}.product-selector-category-panel .ant-card-head{min-height:auto;padding:10px 14px;background:linear-gradient(135deg,#fafafa 0%,#ffffff 100%);border-bottom:1px solid var(--border-light, #f0f0f0);font-size:13px;font-weight:600;color:var(--text-secondary, rgba(0, 0, 0, .65))}.product-selector-category-panel .ant-card-body{flex:1;overflow:hidden;padding:8px!important}.product-selector-tree-wrapper{height:100%;overflow-y:auto;padding-right:4px}.product-selector-tree-wrapper .ant-tree-treenode{border-radius:var(--radius-sm, 4px);transition:all .2s ease;padding:2px 0}.product-selector-tree-wrapper .ant-tree-treenode:hover{background:var(--primary-lightest, #EDE9FF)}.product-selector-tree-wrapper .ant-tree-treenode-selected{background:rgba(140,124,240,.1)!important}.product-selector-tree-wrapper .ant-tree-node-selected .ant-tree-title{color:var(--primary-color, #8C7CF0);font-weight:600}.product-selector-list-panel{height:calc(100vh - 280px);display:flex;flex-direction:column}.product-selector-search-bar{margin-bottom:12px;border-radius:var(--radius-lg, 8px);border:1px solid var(--border-light, #f0f0f0)}.product-selector-search-bar .ant-card-body{padding:12px 16px!important}.product-selector-search-input{border-radius:var(--radius-md, 6px);transition:all .3s}.product-selector-search-input:hover,.product-selector-search-input:focus-within{box-shadow:0 2px 8px #8c7cf01f}.product-selector-search-input .ant-input-prefix{color:var(--text-tertiary, rgba(0, 0, 0, .45))}.product-selector-table-wrapper{flex:1;overflow:hidden;display:flex;flex-direction:column;border-radius:var(--radius-lg, 8px);border:1px solid var(--border-light, #f0f0f0);background:#fff}.product-selector-table-wrapper .ant-table{border-radius:var(--radius-lg, 8px) var(--radius-lg, 8px) 0 0}.product-selector-table-wrapper .ant-table-thead>tr>th{background:linear-gradient(180deg,#fafafa 0%,#f5f5f5 100%);font-weight:600;font-size:13px;color:var(--text-secondary, rgba(0, 0, 0, .65));padding:10px 12px;border-bottom:1px solid #e8e8e8}.product-selector-table-wrapper .ant-table-tbody>tr>td{padding:8px 12px;font-size:13px;transition:background .2s}.product-selector-table-wrapper .ant-table-tbody>tr:hover>td{background:var(--primary-lightest, #EDE9FF)!important}.product-selector-table-wrapper .ant-table-tbody>tr.ant-table-row-selected>td{background:rgba(140,124,240,.06)}.product-selector-table-wrapper .ant-table-tbody>tr.ant-table-row-selected:hover>td{background:rgba(140,124,240,.12)!important}.product-empty-cell{color:#00000040;font-style:italic}.product-code-cell{color:var(--primary-color, #8C7CF0);font-weight:600;font-size:13px;font-family:SF Mono,Monaco,Menlo,Consolas,monospace;letter-spacing:.5px}.product-name-cell{font-weight:600;color:var(--text-primary, rgba(0, 0, 0, .85));font-size:13px}.product-category-cell{display:inline-flex;align-items:center;gap:4px;color:var(--accent-green, #52c41a);font-size:12px;background:rgba(82,196,26,.08);padding:1px 8px;border-radius:var(--radius-full, 9999px);border:1px solid rgba(82,196,26,.2)}.product-price-cell{color:var(--accent-orange, #fa8c16);font-weight:600;font-size:13px;font-family:SF Mono,Monaco,Menlo,Consolas,monospace}.product-stock-cell{font-weight:600;font-size:13px}.product-stock-cell.in-stock{color:var(--accent-green, #52c41a)}.product-stock-cell.out-of-stock{color:var(--accent-red, #ff4d4f)}.product-select-btn{border-radius:var(--radius-md, 6px)!important;font-weight:500;transition:all .2s ease!important;box-shadow:0 2px 4px #8c7cf033}.product-select-btn:hover{box-shadow:0 4px 8px #8c7cf04d!important;transform:translateY(-1px)}.product-selector-pagination{padding:10px 16px;border-top:1px solid var(--border-light, #f0f0f0);display:flex;justify-content:space-between;align-items:center;background:linear-gradient(180deg,#fafafa 0%,#f5f5f5 100%);border-radius:0 0 var(--radius-lg, 8px) var(--radius-lg, 8px)}.product-selector-pagination-total{color:var(--text-secondary, rgba(0, 0, 0, .65));font-size:13px;font-weight:500}.product-selector-pagination .ant-pagination-item{border-radius:var(--radius-md, 6px)}.product-selector-pagination .ant-pagination-item-active{border-color:var(--primary-color, #8C7CF0);font-weight:600}.product-selector-footer-btn{min-width:88px;border-radius:var(--radius-md, 6px);font-weight:500;transition:all .2s ease}.product-selector-footer-btn.ant-btn-primary{box-shadow:0 2px 4px #8c7cf033}.product-selector-footer-btn.ant-btn-primary:hover{box-shadow:0 4px 8px #8c7cf04d}.product-selector-dropdown .ant-select-selection-search-input{font-size:13px}.product-selector-dropdown-item{padding:6px 0}.product-selector-dropdown-item-name{font-weight:500;color:var(--text-primary, rgba(0, 0, 0, .85));font-size:13px}.product-selector-dropdown-item-detail{font-size:12px;color:var(--text-tertiary, rgba(0, 0, 0, .45));margin-top:2px}.product-selector-trigger-btn{border-radius:var(--radius-md, 6px);transition:all .2s ease;border:1px dashed var(--border-color, #d9d9d9);color:var(--text-secondary, rgba(0, 0, 0, .65));display:flex;align-items:center;gap:6px}.product-selector-trigger-btn:hover{border-color:var(--primary-color, #8C7CF0);color:var(--primary-color, #8C7CF0);box-shadow:0 2px 4px #8c7cf01a}.product-selector-trigger-btn.has-value{border-style:solid;border-color:var(--primary-color, #8C7CF0);color:var(--text-primary, rgba(0, 0, 0, .85));background:var(--primary-lightest, #EDE9FF)}.product-selector-tree-wrapper::-webkit-scrollbar,.product-selector-table-wrapper ::-webkit-scrollbar{width:6px;height:6px}.product-selector-tree-wrapper::-webkit-scrollbar-track,.product-selector-table-wrapper ::-webkit-scrollbar-track{background:transparent;border-radius:3px}.product-selector-tree-wrapper::-webkit-scrollbar-thumb,.product-selector-table-wrapper ::-webkit-scrollbar-thumb{background:#d9d9d9;border-radius:3px;transition:background .3s}.product-selector-tree-wrapper::-webkit-scrollbar-thumb:hover,.product-selector-table-wrapper ::-webkit-scrollbar-thumb:hover{background:#bfbfbf}.product-selector-add-modal .ant-modal-content{border-radius:var(--radius-lg, 8px);overflow:hidden}.product-selector-add-modal .ant-modal-header{padding:16px 24px;border-bottom:1px solid var(--border-light, #f0f0f0);margin-bottom:0}.product-selector-add-modal .ant-modal-body{padding:20px 24px!important}.product-selector-add-modal .ant-form-item-label>label{font-weight:500;color:var(--text-secondary, rgba(0, 0, 0, .65))}.product-form-modal .ant-modal-content{border-radius:var(--radius-lg, 8px);overflow:hidden;box-shadow:0 12px 48px #00000026}.product-form-modal .ant-modal-header{padding:16px 24px;border-bottom:1px solid var(--border-light, #f0f0f0);margin-bottom:0;background:linear-gradient(135deg,#fafafa 0%,#ffffff 100%)}.product-form-modal-title{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:600;color:var(--text-primary, rgba(0, 0, 0, .85))}.product-form-modal-title-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-md, 6px);background:var(--primary-lightest, #EDE9FF);color:var(--primary-color, #8C7CF0);font-size:14px;flex-shrink:0}.product-form-modal .ant-modal-body{padding:16px 24px 8px!important}.product-form-modal .ant-modal-footer{padding:12px 24px;border-top:1px solid var(--border-light, #f0f0f0);background:#fafafa}.product-form-divider{margin:8px 0 16px!important;font-size:13px!important;color:var(--text-tertiary, rgba(0, 0, 0, .45))!important;font-weight:500!important}.product-form-divider:before,.product-form-divider:after{border-color:var(--border-light, #f0f0f0)!important}.product-form .ant-form-item{margin-bottom:16px}.product-form .ant-form-item-label>label{font-size:13px;font-weight:500;color:var(--text-secondary, rgba(0, 0, 0, .65))}.product-form .ant-input,.product-form .ant-input-number,.product-form .ant-select-selector{border-radius:var(--radius-md, 6px)!important;transition:all .3s}.product-selector-tree-col{flex-shrink:0;transition:flex .25s cubic-bezier(.4,0,.2,1);overflow:hidden}.product-selector-tree-toggle{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:var(--radius-sm, 4px);border:none;background:transparent;cursor:pointer;color:var(--text-tertiary, rgba(0, 0, 0, .45));transition:color .2s,background .2s;flex-shrink:0;outline:none;padding:0}.product-selector-tree-toggle:hover{color:var(--primary-color, #8C7CF0);background:var(--primary-lightest, #EDE9FF)}.product-selector-tree-strip{width:32px;height:calc(100vh - 280px);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:10px;gap:12px;background:linear-gradient(180deg,#f5f8ff 0%,#eef3ff 100%);border:1px solid var(--border-light, #e8ecf7);border-radius:var(--radius-lg, 8px);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s,box-shadow .2s,border-color .2s;overflow:hidden}.product-selector-tree-strip:hover{background:linear-gradient(180deg,#e6f0ff 0%,#d6e6ff 100%);border-color:var(--primary-color, #8C7CF0);box-shadow:0 2px 8px #8c7cf024}.product-selector-tree-strip-icon{font-size:14px;color:var(--primary-color, #8C7CF0);flex-shrink:0;transition:color .2s}.product-selector-tree-strip:hover .product-selector-tree-strip-icon{color:#0958d9}.product-selector-tree-strip-label{writing-mode:vertical-lr;font-size:11px;font-weight:600;color:var(--text-secondary, rgba(0, 0, 0, .55));letter-spacing:3px;line-height:1;opacity:.75;transition:opacity .2s}.product-selector-tree-strip:hover .product-selector-tree-strip-label{opacity:1;color:var(--primary-color, #8C7CF0)}@media (max-width: 1200px){.product-selector-modal .ant-modal{max-width:calc(100vw - 48px)!important}}@media (max-width: 768px){.product-selector-category-panel{height:200px}.product-selector-list-panel{height:auto}.product-selector-pagination{flex-direction:column;gap:8px;align-items:flex-end}}.doc-field-label-with-refresh{display:inline-flex;align-items:center;gap:4px;line-height:1}.doc-label-refresh-btn{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;margin:0;border:none;border-radius:3px;background:transparent;color:#bfbfbf;cursor:pointer;font-size:11px;transition:color .2s,background .2s;vertical-align:middle;line-height:1;outline:none}.doc-label-refresh-btn:hover:not(:disabled){color:#8c7cf0;background:#EDE9FF}.doc-label-refresh-btn:disabled{cursor:not-allowed;opacity:.5}.doc-label-refresh-btn .anticon{font-size:11px}.react-resizable{position:relative;background-clip:padding-box}.react-resizable-handle{position:absolute;width:10px;height:100%;bottom:0;right:-5px;cursor:col-resize;z-index:1}.react-resizable-handle:hover{background-color:#8c7cf033}.ant-table-thead>tr>th.react-resizable{position:relative}.react-resizable-handle-dragging{background-color:#8c7cf080}.category-tree-select{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.category-tree-select .ant-tree-treenode{padding:2px 0;transition:all .2s ease}.category-tree-select .ant-tree-node-content-wrapper{border-radius:6px;transition:all .2s ease;padding:0;display:flex;align-items:center}.category-tree-select .ant-tree-node-content-wrapper:hover{background-color:#f5f3ff}.category-tree-select .ant-tree-node-content-wrapper.ant-tree-node-selected{background-color:#ede9ff}.category-tree-select .ant-tree-switcher{width:20px;height:20px;line-height:20px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.category-tree-select .ant-tree-switcher:hover{background-color:#f0f0f0}.category-tree-select .ant-tree-switcher.ant-tree-switcher_close .ant-tree-switcher-icon svg{transform:rotate(-90deg);transition:transform .2s ease}.category-tree-select .ant-tree-switcher.ant-tree-switcher_open .ant-tree-switcher-icon svg{transform:rotate(0);transition:transform .2s ease}.category-tree-node-title-container{display:flex;align-items:center;width:100%;min-width:0}.category-tree-node-title{font-size:14px;color:#000000d9;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.category-tree-node-title-selected{color:#8c7cf0;font-weight:500}.category-tree-node-actions{opacity:0;transition:opacity .2s ease;margin-left:8px;flex-shrink:0}.category-tree-node-title-container:hover .category-tree-node-actions{opacity:1}.category-tree-select-with-actions .ant-tree-treenode{padding:4px 0}.category-tree-select-with-actions .ant-tree-node-content-wrapper{border-radius:8px;transition:all .2s ease}.category-tree-select-with-actions .ant-tree-node-content-wrapper:hover{background-color:#f5f5f5;box-shadow:0 2px 4px #0000000d}.category-tree-select-with-actions .ant-tree-node-content-wrapper.ant-tree-node-selected{background-color:#ede9ff;box-shadow:0 2px 8px #0000001a}.category-tree-node-title-container-with-actions{padding:6px 10px;border-radius:6px;transition:all .2s ease}.category-tree-node-title-container-with-actions:hover{background-color:#00000005}.category-tree-select .ant-tree-draggable-icon{opacity:0;transition:opacity .2s ease;margin-left:4px}.category-tree-select .ant-tree-treenode:hover .ant-tree-draggable-icon{opacity:.5}.category-tree-select .ant-tree-treenode.dragging{background-color:#ede9ff;opacity:.8}.category-tree-select .ant-tree-show-line .ant-tree-indent-unit:before{border-right:1px solid #d9d9d9}.category-tree-select .ant-tree-show-line .ant-tree-switcher{background:#fff}@media (max-width: 768px){.category-tree-select .ant-tree-node-content-wrapper,.category-tree-node-title-container-with-actions{padding:4px 8px}}.action-btn{padding:4px 15px;transition:all .2s ease;border-radius:6px;font-weight:500;font-size:14px;display:inline-flex;align-items:center;justify-content:center;position:relative;overflow:hidden;border:1px solid transparent}.action-btn-sm{padding:2px 7px;font-size:12px}.action-btn-lg{padding:6px 24px;font-size:16px}.action-btn:hover,.view-btn:hover,.edit-btn:hover,.delete-btn:hover{box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .06))}.view-btn{padding:4px 15px;transition:all .15s ease-out;border-radius:6px;font-weight:500;font-size:14px;display:inline-flex;align-items:center;justify-content:center;position:relative;overflow:hidden;border:1px solid transparent;color:var(--primary-color, #8C7CF0);background:rgba(140,124,240,.08);border-color:#8c7cf04d}.view-btn:hover{background:rgba(140,124,240,.15);border-color:var(--primary-color, #8C7CF0);box-shadow:0 2px 8px #8c7cf033;color:var(--primary-dark, #6B5CE7)}.view-btn:active{box-shadow:0 1px 4px #8c7cf04d}.edit-btn{padding:4px 15px;transition:all .2s ease;border-radius:6px;font-weight:500;font-size:14px;display:inline-flex;align-items:center;justify-content:center;position:relative;overflow:hidden;border:1px solid transparent;color:var(--accent-green, #52c41a);background:rgba(82,196,26,.08);border-color:#52c41a4d}.edit-btn:hover{background:rgba(82,196,26,.15);border-color:var(--accent-green, #52c41a);box-shadow:0 2px 8px #52c41a33;color:#389e0d}.edit-btn:active{box-shadow:0 1px 4px #52c41a4d}.delete-btn{padding:4px 15px;transition:all .2s ease;border-radius:6px;font-weight:500;font-size:14px;display:inline-flex;align-items:center;justify-content:center;position:relative;overflow:hidden;border:1px solid transparent;color:var(--accent-red, #ff4d4f);background:rgba(255,77,79,.08);border-color:#ff4d4f4d}.delete-btn:hover{background:rgba(255,77,79,.15);border-color:var(--accent-red, #ff4d4f);box-shadow:0 2px 8px #ff4d4f33;color:#f5222d}.delete-btn:active{box-shadow:0 1px 4px #ff4d4f4d}.action-btn .anticon,.view-btn .anticon,.edit-btn .anticon,.delete-btn .anticon{font-size:14px;margin-right:4px;transition:transform .3s}.action-btn:hover .anticon,.view-btn:hover .anticon,.edit-btn:hover .anticon,.delete-btn:hover .anticon{transform:scale(1.1)}.action-btn-group{display:flex;gap:8px;align-items:center;justify-content:center}@media (max-width: 768px){.action-btn,.view-btn,.edit-btn,.delete-btn{padding:6px 10px;font-size:13px}.action-btn .anticon,.view-btn .anticon,.edit-btn .anticon,.delete-btn .anticon{font-size:13px;margin-right:3px}}@media (max-width: 576px){.action-btn,.view-btn,.edit-btn,.delete-btn{padding:4px 8px;font-size:12px}.action-btn .anticon,.view-btn .anticon,.edit-btn .anticon,.delete-btn .anticon{font-size:12px}.action-btn span,.view-btn span,.edit-btn span,.delete-btn span{display:none}.action-btn .anticon,.view-btn .anticon,.edit-btn .anticon,.delete-btn .anticon{margin-right:0}}.action-btn-loading{opacity:.6;cursor:not-allowed;pointer-events:none}.action-btn:disabled,.view-btn:disabled,.edit-btn:disabled,.delete-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.action-btn:disabled:hover,.view-btn:disabled:hover,.edit-btn:disabled:hover,.delete-btn:disabled:hover{transform:none;box-shadow:none}@keyframes pulse{0%{box-shadow:0 0 #8c7cf066}70%{box-shadow:0 0 0 6px #8c7cf000}to{box-shadow:0 0 #8c7cf000}}.view-btn:focus-visible{animation:pulse 1.5s infinite;outline:none}@media (prefers-color-scheme: dark){.view-btn{background:rgba(140,124,240,.15);border-color:#8c7cf080}.edit-btn{background:rgba(82,196,26,.15);border-color:#52c41a80}.delete-btn{background:rgba(255,77,79,.15);border-color:#ff4d4f80}}.key-metric-card{box-shadow:0 1px 3px #0000000a,0 1px 8px #8c7cf00f;border-radius:12px!important;border:1px solid #F3F4F6!important;background:#FFFFFF;overflow:hidden}.key-metric-card .ant-card-body{padding:28px;position:relative}.key-metric-card .ant-card-body:before{content:"";position:absolute;right:-30px;top:-30px;width:100px;height:100px;background:rgba(140,124,240,.06);border-radius:50%;z-index:0}.key-metric-card .ant-typography{margin-bottom:0;position:relative;z-index:1}.key-metric-card .icon-container{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:26px;background:#8C7CF0;color:#fff;box-shadow:0 4px 12px #8c7cf04d}.key-metric-card .ant-statistic-content{font-size:32px;font-weight:700;color:#1a1a2e;line-height:1.2}.key-metric-card .ant-statistic-title{color:#6b7280;font-size:14px;font-weight:500}.quick-actions-panel{height:100%;border-radius:12px;box-shadow:0 2px 8px #0000000f;transition:all .3s ease}.quick-actions-panel:hover{box-shadow:0 4px 12px #0000001a}.quick-actions-panel .ant-card-head{border-bottom:1px solid #f0f0f0;padding:16px 20px}.quick-actions-panel .ant-card-body{padding:20px}.panel-title-icon{font-size:20px;line-height:1;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.quick-action-item{position:relative;display:flex;align-items:center;gap:12px;padding:16px;background:linear-gradient(135deg,#ffffff 0%,#f8f9fa 100%);border:1px solid #e8e8e8;border-radius:10px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.quick-action-item:before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:var(--action-color);transform:scaleY(0);transition:transform .3s ease}.quick-action-item:hover:before{transform:scaleY(1)}.quick-action-item:hover{transform:translateY(-2px);border-color:var(--action-color);box-shadow:0 4px 12px #00000014,0 0 0 1px var(--action-color);background:linear-gradient(135deg,#ffffff 0%,#fafafa 100%)}.quick-action-item:active{transform:translateY(0);box-shadow:0 2px 6px #0000000f}.action-icon{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:20px;background:linear-gradient(135deg,rgba(255,255,255,.9) 0%,rgba(255,255,255,.5) 100%);border-radius:8px;border:1px solid rgba(0,0,0,.06);transition:all .3s ease}.quick-action-item:hover .action-icon{transform:scale(1.1) rotate(5deg);box-shadow:0 4px 12px #0000001a;border-color:var(--action-color);background:linear-gradient(135deg,rgba(255,255,255,1) 0%,rgba(255,255,255,.8) 100%)}.action-content{flex:1;min-width:0}.action-title{font-size:14px;font-weight:600;color:#000000d9;line-height:1.4;margin-bottom:2px;transition:color .3s ease}.quick-action-item:hover .action-title{color:var(--action-color)}.action-subtitle{font-size:12px;color:#00000073;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.action-arrow{flex-shrink:0;font-size:16px;color:#00000040;transition:all .3s ease;opacity:0}.quick-action-item:hover .action-arrow{opacity:1;color:var(--action-color);transform:translate(4px)}@media (max-width: 1199px){.quick-action-item{padding:14px}.action-icon{font-size:18px}.action-title{font-size:13px}.action-subtitle{font-size:11px}}@media (max-width: 767px){.quick-action-item{padding:12px;gap:10px}.action-icon{width:32px;height:32px;font-size:16px}.action-title{font-size:12px}.action-subtitle{font-size:10px}.action-arrow{font-size:14px}}.announcement-panel{box-shadow:0 1px 3px #0000000a,0 1px 8px #8c7cf00f;height:100%;display:flex;flex-direction:column;border-radius:12px!important;border:1px solid #F3F4F6!important;background:#FFFFFF;overflow:hidden}.announcement-panel .ant-card-head{border-bottom:1px solid #F3F4F6;padding:16px 24px;background:#FFFFFF}.announcement-panel .ant-card-head-title{font-weight:600;color:#1a1a2e;font-size:16px}.announcement-panel .ant-card-body{padding:20px 24px;display:flex;flex-direction:column;height:100%}.announcement-list-container{max-height:260px;overflow-y:auto;padding-right:4px}.announcement-list-container::-webkit-scrollbar{width:5px}.announcement-list-container::-webkit-scrollbar-track{background:#F3F4F6;border-radius:4px}.announcement-list-container::-webkit-scrollbar-thumb{background:#C6B9FF;border-radius:4px;transition:background .15s}.announcement-list-container::-webkit-scrollbar-thumb:hover{background:#8C7CF0}.announcement-item{padding:14px 12px;margin:4px 0;border-radius:8px;border-bottom:1px solid #F3F4F6!important}.announcement-item:last-child{border-bottom:none!important}.announcement-item .announcement-title{font-size:14px;font-weight:500;color:#1a1a2e;line-height:1.5}.announcement-item .announcement-date{font-size:12px;color:#9ca3af;margin-top:6px}.announcement-item .announcement-tag{padding:2px 10px;border-radius:20px;font-size:11px;font-weight:500}.announcement-item .announcement-tag-notice{background:#EDE9FF;color:#8c7cf0}.announcement-item .announcement-tag-update{background:#DCFCE7;color:#16a34a}.announcement-item .announcement-tag-important{background:#FEE2E2;color:#dc2626}.announcement-empty{text-align:center;padding:40px 20px;color:#9ca3af}.announcement-empty .empty-icon{font-size:48px;color:#c6b9ff;margin-bottom:16px}.qrcode-panel{box-shadow:0 1px 3px #0000000a,0 1px 8px #8c7cf00f;border-radius:12px!important;border:1px solid #F3F4F6!important;background:#FFFFFF;overflow:hidden}.qrcode-panel .ant-card-body{padding:16px 20px;display:flex;flex-direction:column;gap:12px}.qrcode-panel-title{display:flex;align-items:center;justify-content:center;gap:8px;padding-bottom:12px;border-bottom:1px solid #F3F4F6}.qrcode-list{display:flex;flex-direction:column}.qrcode-row{display:flex;align-items:center;gap:14px;padding:4px 0}.qrcode-img-wrap{flex-shrink:0;background:#fff;padding:6px;border-radius:10px;box-shadow:0 1px 4px #0000000f}.qrcode-img-wrap .ant-image{display:block}.qrcode-text{display:flex;flex-direction:column;gap:4px;min-width:0}.qrcode-footer{text-align:center;padding-top:10px;border-top:1px solid rgba(0,0,0,.06)}.dashboard-page{padding:24px;background:var(--bg-primary, #F7F8FC);min-height:100%}.dashboard-refresh-btn{transition:all var(--transition-normal, .15s ease-out);background:var(--bg-card, #FFFFFF);border-color:var(--border-color, #E5E7EB);border-radius:6px}.dashboard-refresh-btn:hover{border-color:var(--primary-color, #8C7CF0)!important;color:var(--primary-color, #8C7CF0)!important;box-shadow:0 1px 4px #8c7cf02e!important}.dashboard-refresh-btn:active{border-color:var(--primary-dark, #6B5CE7)!important}.dashboard-refresh-btn .anticon{transition:transform .5s ease-out}.dashboard-refresh-btn:hover .anticon{transform:rotate(360deg)}.chart-section *{transition:none!important;animation-duration:0s!important}.sales-trend-chart-container{height:560px;min-height:560px;max-height:560px;box-shadow:var(--shadow-card, 0 1px 3px rgba(0,0,0,.04));border-radius:12px;overflow:hidden;transition:box-shadow var(--transition-normal, .15s ease-out),transform var(--transition-normal, .15s ease-out);border:1px solid var(--border-light, #F3F4F6);background:var(--bg-card, #FFFFFF)}.sales-trend-chart-container:hover{box-shadow:var(--shadow-hover, 0 4px 16px rgba(140,124,240,.14));transform:translateY(-2px)}.sales-trend-chart-container .ant-card-body{padding:20px;height:503px;min-height:503px;max-height:503px;overflow:hidden}.sales-trend-chart-container .ant-card-head{padding:0 20px;border-bottom:1px solid var(--border-light, #F3F4F6);height:57px;min-height:57px;background:var(--bg-card, #FFFFFF)}.chart-loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.85);z-index:10;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.summary-section{margin-bottom:20px;padding:16px;background:var(--bg-card, #FFFFFF);border-radius:10px;border:1px solid var(--border-light, #F3F4F6);height:96px;min-height:96px;max-height:96px;overflow:hidden;box-sizing:border-box;box-shadow:var(--shadow-sm, 0 1px 2px rgba(0,0,0,.04))}.chart-section{position:relative;width:100%;height:350px;min-height:350px;max-height:350px;overflow:hidden}.stock-status-chart-container{height:560px;min-height:560px;max-height:560px;box-shadow:var(--shadow-card, 0 1px 3px rgba(0,0,0,.04));border-radius:12px;overflow:hidden;transition:box-shadow var(--transition-normal, .15s ease-out),transform var(--transition-normal, .15s ease-out);border:1px solid var(--border-light, #F3F4F6);background:var(--bg-card, #FFFFFF)}.stock-status-chart-container:hover{box-shadow:var(--shadow-hover, 0 4px 16px rgba(140,124,240,.14));transform:translateY(-2px)}.stock-status-chart-container .ant-card-body{padding:20px;height:503px;min-height:503px;max-height:503px;overflow-y:auto;overflow-x:hidden}.stock-status-chart-container .ant-card-head{padding:0 20px;border-bottom:1px solid var(--border-light, #F3F4F6);height:57px;min-height:57px;background:var(--bg-card, #FFFFFF)}.stock-status-card:hover{transform:translateY(-1px);box-shadow:0 2px 8px #8c7cf01f}.quick-action-btn{height:40px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:14px;transition:all var(--transition-normal, .15s ease-out);border-radius:6px}.quick-action-btn:hover{box-shadow:0 1px 4px #8c7cf02e}.quick-action-btn .anticon{font-size:24px;margin-bottom:8px}@media (max-width: 768px){.dashboard-page{padding:16px}.quick-action-btn{font-size:12px}.quick-action-btn .anticon{font-size:18px;margin-bottom:4px}}.reconciliation-tabs .ant-tabs-nav{margin-bottom:16px!important;padding:0!important;background:transparent!important;box-shadow:none!important;border:none!important}.reconciliation-tabs .ant-tabs-nav-list{gap:0!important;padding:0!important}.reconciliation-tabs .ant-tabs-tab{padding:12px 0!important;margin:0 32px 0 0!important;border-radius:0!important;background:transparent!important;border:none!important;border-bottom:2px solid transparent!important;font-weight:400;font-size:14px;color:#000000a6;transition:all .3s cubic-bezier(.645,.045,.355,1);position:relative;line-height:22px;box-shadow:none!important;z-index:auto}.reconciliation-tabs .ant-tabs-tab:before,.reconciliation-tabs .ant-tabs-tab:after{display:none!important}.reconciliation-tabs .ant-tabs-tab:hover{background:transparent!important;border-color:transparent!important;border-bottom-color:#a99df5!important;color:#a99df5!important;box-shadow:none!important;transform:none!important}.reconciliation-tabs .ant-tabs-tab-active{background:transparent!important;border-color:transparent!important;border-bottom-color:#8c7cf0!important;color:#8c7cf0!important;box-shadow:none!important;transform:none!important;font-weight:500;height:auto!important}.reconciliation-tabs .ant-tabs-tab-active:hover{background:transparent!important;border-color:transparent!important;border-bottom-color:#8c7cf0!important;color:#8c7cf0!important;box-shadow:none!important;transform:none!important}.reconciliation-tabs .ant-tabs-ink-bar{display:block!important;background:#8C7CF0;height:2px}.reconciliation-tabs .ant-tabs-tab-btn{color:inherit!important;font-weight:inherit!important;text-shadow:none!important}.reconciliation-tabs .ant-tabs-tab-active .ant-tabs-tab-btn{color:#8c7cf0!important;font-weight:500!important;text-shadow:none!important}.reconciliation-tabs:before,.reconciliation-tabs:after{display:none!important}.reconciliation-tabs .ant-tabs-content{background:transparent;padding:0}.ptd-page{display:flex;flex-direction:column;height:100%;overflow:hidden;background:#f0f2f5}.ptd-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#999}.ptd-toolbar{flex-shrink:0;display:flex;align-items:center;padding:0 12px;height:48px;background:#fff;border-bottom:1px solid #f0f0f0;gap:6px}.ptd-meta-form{display:flex;align-items:center;flex-shrink:0}.ptd-meta-form .ant-form-item{margin-bottom:0!important}.ptd-page-settings{flex-shrink:0}.ptd-back-btn{color:#595959!important;padding:0 6px!important}.ptd-back-btn:hover{color:#8c7cf0!important;background:#EDE9FF!important}.ptd-divider-v{width:1px;height:20px;background:#f0f0f0;flex-shrink:0}.ptd-name-input{width:190px!important}.ptd-name-input .ant-input{font-size:12px!important}.ptd-name-input:not(.ant-input-affix-wrapper-disabled) .ant-input{font-weight:500}.ptd-type-select{width:106px!important}.ptd-sharing-select{width:98px!important}.ptd-page-select{width:66px!important}.ptd-margin-btn{font-size:12px!important;color:#595959!important;padding:0 8px!important}.ptd-save-btn{background:linear-gradient(135deg,#8C7CF0 0%,#6B5CE7 100%)!important;border:none!important;box-shadow:0 2px 6px #8c7cf059!important}.ptd-save-btn:hover{background:linear-gradient(135deg,#A99DF5 0%,#8C7CF0 100%)!important}.ptd-designer-wrap{flex:1;overflow:hidden;min-height:0}.subscription-page{padding:20px 24px;max-width:1000px;margin:0 auto}.subscription-page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.subscription-page-title-icon{font-size:22px;color:#8c7cf0}.subscription-status-card{border-radius:12px;margin-bottom:20px;background:linear-gradient(135deg,#f5f3ff 0%,#ede9fe 50%,#faf5ff 100%);box-shadow:0 2px 12px #722ed114}.subscription-status-body{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.subscription-status-info{display:flex;gap:32px;flex-wrap:wrap}.subscription-status-row{display:flex;align-items:flex-start;gap:10px}.status-icon{font-size:18px;color:#8c7cf0;margin-top:2px;flex-shrink:0}.status-label{font-size:12px;color:#888;margin-bottom:2px}.status-value{font-size:14px;font-weight:600;color:#333;display:flex;align-items:center}.subscription-status-action{flex-shrink:0}.renew-btn{background:linear-gradient(135deg,#8C7CF0 0%,#6B5CE7 100%);border:none;padding:0 28px;height:40px;border-radius:8px;font-weight:600;box-shadow:0 4px 12px #8c7cf04d}.renew-btn:hover{background:linear-gradient(135deg,#6B5CE7 0%,#5548c8 100%)!important;box-shadow:0 6px 16px #8c7cf066!important}.subscription-plans-card{border-radius:12px;margin-bottom:20px;box-shadow:0 2px 8px #0000000f}.subscription-plans-card .ant-card-head{border-bottom:1px solid #f5f0ff;padding:16px 24px}.subscription-plans-card .ant-row{align-items:stretch}.subscription-plans-card .ant-col{display:flex;flex-direction:column}.plan-card{border-radius:12px!important;text-align:center;border:2px solid #f0f0f0!important;transition:all .25s ease;position:relative;overflow:visible;height:100%;display:flex;flex-direction:column}.plan-card .ant-card-body{display:flex;flex-direction:column;flex:1;height:100%}.plan-card .plan-select-btn{margin-top:auto}.plan-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:#e8e8e8;transition:background .25s}.plan-card:hover{border-color:#c6b9ff!important;box-shadow:0 8px 24px #8c7cf01f!important;transform:translateY(-3px)}.plan-card:hover:before{background:linear-gradient(90deg,#8C7CF0,#C6B9FF)}.plan-card.recommended{border-color:#c6b9ff!important;background:linear-gradient(180deg,#F3F0FF 0%,#fff 100%)!important}.plan-card.recommended:before{background:linear-gradient(90deg,#8C7CF0,#6B5CE7)!important}.recommended-tag{position:absolute;top:-12px;left:50%;transform:translate(-50%);border:none!important;border-radius:12px;padding:2px 14px;font-size:13px;font-weight:600;white-space:nowrap;background:linear-gradient(135deg,#8C7CF0,#6B5CE7)!important;color:#fff!important;z-index:1;letter-spacing:.5px;line-height:22px}.plan-icon-wrap{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:#F3F0FF;color:#8c7cf0;margin-bottom:12px}.plan-icon-recommended{background:linear-gradient(135deg,#8C7CF0,#6B5CE7);color:#fff}.plan-name{font-size:16px;font-weight:700;color:#333;margin-bottom:8px}.plan-discount-tag{margin-bottom:10px;font-size:12px}.plan-price-section{margin-bottom:20px}.plan-price-main{display:flex;align-items:baseline;justify-content:center;gap:2px;margin-bottom:4px}.plan-currency{font-size:18px;font-weight:600;color:#8c7cf0}.plan-price-value{font-size:40px;font-weight:800;color:#8c7cf0;line-height:1}.plan-price-original{margin-bottom:4px}.plan-price-monthly{margin-bottom:8px}.plan-saving-tag{font-size:12px}.plan-select-btn{border-radius:8px!important;font-weight:600}.plan-card.recommended .plan-select-btn{background:linear-gradient(135deg,#8C7CF0 0%,#6B5CE7 100%)!important;border:none!important;box-shadow:0 4px 12px #8c7cf040}.subscription-orders-card{border-radius:12px;box-shadow:0 2px 8px #0000000f}.subscription-orders-card .ant-card-head{border-bottom:1px solid #f0f5ff;padding:16px 24px}.subscription-orders-table .ant-table-thead>tr>th{background:#fafafa;font-weight:600}.subscription-loading-wrap{display:flex;align-items:center;justify-content:center;padding:40px 0}@media (max-width: 768px){.subscription-page{padding:12px 16px}.subscription-status-body{flex-direction:column;align-items:flex-start}.subscription-status-info{flex-direction:column;gap:16px}.subscription-status-action,.renew-btn{width:100%}.plan-price-value{font-size:32px}}.hover-menu-container{width:100%;background:transparent;position:relative;animation:menuFadeIn .2s ease-out}@keyframes menuFadeIn{0%{opacity:.6}to{opacity:1}}.menu-item{padding:0 14px;height:48px;display:flex;align-items:center;cursor:pointer;position:relative;border-radius:10px;margin:3px 8px;transition:background .15s ease-out,color .15s ease-out,box-shadow .15s ease-out;overflow:hidden;color:#ffffffb8;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.menu-item:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%) scaleY(0);width:3px;height:60%;background:#8C7CF0;border-radius:0 3px 3px 0;transition:transform .15s ease-out,opacity .15s ease-out;opacity:0}.menu-item:hover{background:rgba(168,148,255,.13);color:#fffffff2;box-shadow:none}.menu-item:hover:before{transform:translateY(-50%) scaleY(.6);opacity:.5}.menu-item.active{background:rgba(168,148,255,.28);color:#e8e0ff;font-weight:600}.menu-item.active:before{transform:translateY(-50%) scaleY(1);opacity:1;background:linear-gradient(180deg,#C4B5FD 0%,#8C7CF0 100%)}.menu-item.has-active-child{background:rgba(168,148,255,.16);color:#d4caff}.menu-item.has-active-child:before{transform:translateY(-50%) scaleY(.75);opacity:.7;background:linear-gradient(180deg,#A99DF5 0%,#7C6EE8 100%)}.menu-item:active{background:rgba(168,148,255,.35);transition-duration:.08s}.menu-item-icon{display:flex;align-items:center;justify-content:center;width:22px;height:22px;font-size:17px;flex-shrink:0;transition:color .15s ease-out,transform .15s ease-out;color:#ffffff8c;z-index:1}.menu-item:hover .menu-item-icon{color:#ffffffe6;transform:scale(1.06)}.menu-item.active .menu-item-icon{color:#ddd6fe;transform:scale(1.04)}.menu-item.has-active-child .menu-item-icon{color:#c4b5fd}.menu-item-text{margin-left:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:14px;font-weight:600;letter-spacing:.02em;line-height:1.4;transition:color .15s ease-out;z-index:1}.menu-item:hover .menu-item-text{color:#fffffff2}.menu-item.active .menu-item-text{color:#fff}.menu-item-arrow{margin-left:auto;font-size:12px;color:#ffffff59;transition:transform .15s ease-out,color .15s ease-out;z-index:1;flex-shrink:0}.menu-item:hover .menu-item-arrow{color:#ffffffb3}.menu-item.collapsed{justify-content:center;padding:0;height:44px;border-radius:10px;margin:3px 10px;width:calc(100% - 20px)}.menu-item.collapsed .menu-item-icon{font-size:19px;width:24px;height:24px}.menu-item.collapsed:hover{transform:scale(1.04);background:rgba(168,148,255,.13)}.menu-item.collapsed.active{background:rgba(168,148,255,.28)}.menu-item.collapsed.active .menu-item-icon{color:#ddd6fe}.menu-item.collapsed.has-active-child{background:rgba(168,148,255,.16)}.menu-item.collapsed.has-active-child .menu-item-icon{color:#c4b5fd}.ant-popover-inner{padding:0!important;border-radius:12px!important;overflow:hidden!important}.ant-popover-arrow{display:none!important}.popover-content{display:flex;padding:6px;background:#ffffff;border-radius:12px;border:1px solid rgba(140,124,240,.1);box-shadow:0 4px 6px -1px #00000012,0 10px 24px -4px #0000001a,0 0 0 1px #8c7cf00a;animation:popoverSlideIn .15s ease-out;overflow:hidden;min-width:140px}@keyframes popoverSlideIn{0%{opacity:0;transform:translate(-6px) scale(.97)}to{opacity:1;transform:translate(0) scale(1)}}.popover-content.multi-column{max-width:820px;gap:0}.menu-group{flex:1;min-width:120px;padding:6px 4px;position:relative}.menu-group:not(:last-child):after{content:"";position:absolute;right:0;top:12px;bottom:12px;width:1px;background:linear-gradient(to bottom,transparent 0%,#E5E7EB 20%,#E5E7EB 80%,transparent 100%)}.menu-group-title{padding:8px 10px;font-size:12.5px;font-weight:700;color:#7c6ee8;line-height:1.2;margin-bottom:4px;text-transform:none;letter-spacing:.02em;display:flex;align-items:center;gap:7px}.menu-group-title:before{content:"";display:inline-block;width:3px;height:13px;background:linear-gradient(180deg,#8C7CF0 0%,#C6B9FF 100%);border-radius:2px;flex-shrink:0}.submenu-item{padding:9px 12px;cursor:pointer;border-radius:8px;transition:background .12s ease-out,color .12s ease-out,box-shadow .12s ease-out;display:flex;align-items:center;gap:9px;margin:1px 0;min-width:110px;position:relative;color:#374151;-webkit-user-select:none;user-select:none}.submenu-item:hover{background:#F5F3FF;color:#6b5ce7}.submenu-item.active{background:#7C6EE8;color:#fff;font-weight:600;box-shadow:0 2px 8px #7c6ee838}.submenu-item:active{background:#EDE9FF;transition-duration:.06s}.submenu-item.active:active{background:#6B5CE7}.submenu-item.active:after{content:"";position:absolute;right:10px;top:50%;transform:translateY(-50%);width:5px;height:5px;background:rgba(255,255,255,.85);border-radius:50%}.submenu-item-text{font-size:13.5px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;line-height:1.4;letter-spacing:.01em;transition:color .12s ease-out}.submenu-item:hover .submenu-item-text{color:#6b5ce7}.submenu-item.active .submenu-item-text{color:#fff}.menu-item-tooltip{padding:7px 14px;font-size:13px;font-weight:600;color:#1a1a2e;white-space:nowrap;background:#ffffff;border-radius:8px}@media (min-width: 1600px){.menu-group{min-width:130px}.submenu-item{min-width:120px}}@media (min-width: 1200px) and (max-width: 1599px){.menu-group{min-width:110px}}@media (max-width: 1199px){.popover-content{min-width:auto}.popover-content.multi-column{flex-direction:column;max-width:240px}.menu-group:not(:last-child):after{display:none}.menu-group:not(:last-child){border-bottom:1px solid #F3F4F6;padding-bottom:8px;margin-bottom:6px}.menu-item{height:44px;margin:2px 6px}}@media (max-width: 767px){.menu-item{height:42px;padding:0 10px;margin:2px 4px;border-radius:8px}.menu-item-text{font-size:13px}.submenu-item{padding:8px 10px}.submenu-item-text{font-size:13px}.menu-group-title{font-size:12px;padding:6px 8px}}.menu-item:focus-visible{outline:2px solid rgba(140,124,240,.7);outline-offset:2px}.submenu-item:focus-visible{outline:2px solid #8C7CF0;outline-offset:1px}@media (prefers-reduced-motion: reduce){.menu-item,.menu-item:before,.menu-item-icon,.menu-item-text,.submenu-item,.submenu-item-icon,.submenu-item-text,.popover-content{transition:none!important;animation:none!important}}@media (prefers-contrast: high){.menu-item{border:1px solid rgba(255,255,255,.3)}.menu-item.active{border:2px solid rgba(255,255,255,.8)}.submenu-item{border:1px solid transparent}.submenu-item:hover{border-color:#8c7cf0}.submenu-item.active{border-color:transparent;outline:2px solid #8C7CF0;outline-offset:-2px}}@media print{.popover-content{box-shadow:none;border:1px solid #E5E7EB}.menu-item:hover,.submenu-item:hover{background:transparent;transform:none;box-shadow:none}}.renewal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:9999;display:flex;align-items:center;justify-content:center;overflow-y:auto;padding:20px 0}.renewal-overlay-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.7);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:-1}.renewal-logout-btn{position:absolute;top:20px;right:20px;z-index:10;color:#ffffffd9;font-size:14px;padding:8px 16px;height:auto;background:rgba(255,255,255,.1);border-radius:6px;transition:all .3s}.renewal-logout-btn:hover{color:#fff;background:rgba(255,255,255,.2)}.renewal-close-btn{position:absolute;top:20px;right:20px;z-index:10;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:rgba(255,255,255,.15);color:#ffffffb3;font-size:16px;cursor:pointer;transition:background .2s,color .2s,transform .2s;outline:none}.renewal-close-btn:hover{background:rgba(255,255,255,.3);color:#fff;transform:rotate(90deg)}.renewal-close-btn:active{background:rgba(255,255,255,.4);transform:rotate(90deg) scale(.92)}.renewal-content{position:relative;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:800px;width:90%;max-height:90vh;overflow-y:auto;padding:40px;margin:auto 0}.renewal-header{text-align:center;margin-bottom:32px}.renewal-icon{width:64px;height:64px;margin:0 auto 16px;background:linear-gradient(135deg,#ff6b6b,#ff8e53);border-radius:50%;display:flex;align-items:center;justify-content:center}.renewal-icon .anticon{font-size:32px;color:#fff}.renewal-title{font-size:24px;font-weight:600;color:#1f1f1f;margin:0 0 8px}.renewal-expire-block{display:inline-flex;flex-direction:column;align-items:center;margin:10px auto 4px;padding:10px 20px;background:#f7f5ff;border:1px solid #e6e0ff;border-radius:10px;gap:0}.renewal-expire-block.expired{background:#fff2f2;border-color:#ffd6d6}.renewal-expire-block.trial{background:#f0f7ff;border-color:#c8e0ff}.expire-info-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center}.expire-label{font-size:13px;color:#999;white-space:nowrap}.expire-date{font-size:16px;font-weight:700;color:#3d3d3d;letter-spacing:.5px}.renewal-expire-block.expired .expire-date{color:#e84040}.renewal-expire-block.trial .expire-date{color:#2575e8}.expire-days-tag{display:inline-flex;align-items:center;padding:2px 10px;border-radius:20px;font-size:12px;font-weight:600;background:linear-gradient(135deg,#8C7CF0,#a394f5);color:#fff;letter-spacing:.3px;line-height:20px;white-space:nowrap}.renewal-subtitle{font-size:12px;color:#bbb;margin:4px 0 0}.renewal-body{min-height:200px}.renewal-loading{display:flex;align-items:center;justify-content:center;min-height:200px}.plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px;min-width:0}@media (max-width: 768px){.plans-grid{grid-template-columns:1fr}}.plan-card{position:relative;border:1px solid #e8e8e8;border-radius:12px;text-align:center;padding:24px 16px 20px;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;background:#fff;min-width:0;overflow:visible}.plan-card.ant-card,.plan-card .ant-card-body{overflow:visible}.plan-card:hover{border-color:#c6b9ff;box-shadow:0 6px 16px #8c7cf01f}.plan-card.selected{border:2px solid #8C7CF0;background:rgba(140,124,240,.04);box-shadow:0 8px 24px #8c7cf02e;transform:translateY(-2px)}.plan-card.selected:hover{box-shadow:0 10px 28px #8c7cf038}.plan-card.recommended{border-color:#c6b9ff;background:linear-gradient(180deg,#F3F0FF 0%,#fff 100%)}.plan-card.recommended.selected{border-color:#8c7cf0;background:linear-gradient(180deg,#EDE9FF 0%,rgba(140,124,240,.04) 100%);box-shadow:0 8px 28px #8c7cf038}.recommended-tag{position:absolute;top:-12px;left:50%;transform:translate(-50%);border:none!important;border-radius:12px;padding:2px 14px;font-size:13px;font-weight:600;white-space:nowrap;overflow:visible;z-index:1;background:linear-gradient(135deg,#8C7CF0,#6B5CE7)!important;color:#fff!important;letter-spacing:.5px;line-height:22px}.plan-name{font-size:18px;font-weight:600;color:#1a1a2e;margin:12px 0}.plan-price{margin-bottom:8px;display:flex;align-items:baseline;justify-content:center;gap:2px}.price-current{font-size:34px;font-weight:700;color:#8c7cf0;letter-spacing:-.5px}.plan-card.selected .price-current{color:#6b5ce7}.price-unit{font-size:14px;color:#9ca3af}.plan-original{margin-bottom:4px;display:flex;align-items:center;justify-content:center;gap:6px}.price-original{font-size:14px;color:silver;text-decoration:line-through}.discount-tag{font-size:11px;font-weight:600;padding:0 8px;border-radius:10px;line-height:20px;border:none!important;background:linear-gradient(135deg,#F97316,#FB923C)!important;color:#fff!important}.plan-saving{font-size:13px;color:#f97316;margin-top:8px;font-weight:500}.plan-select-indicator{position:absolute;top:-1px;right:-1px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s}.plan-card.selected .plan-select-indicator{opacity:1;background:linear-gradient(135deg,#8C7CF0,#6B5CE7);border-radius:0 12px}.check-icon{font-size:14px;color:#fff}.renewal-action{text-align:center;padding-top:8px}.renewal-action .ant-btn{min-width:200px;height:48px;font-size:16px;border-radius:8px}.payment-section{text-align:center;padding:8px 0}.payment-title{font-size:18px;font-weight:500;color:#1f1f1f;margin-bottom:24px}.qrcode-container{display:inline-block;padding:16px;background:#fff;border:1px solid #e8e8e8;border-radius:8px;margin-bottom:20px}.payment-info{margin-bottom:20px}.payment-info p{margin:8px 0;font-size:14px;color:#666}.payment-info .amount-value{font-size:24px;font-weight:600;color:#ff4d4f}.payment-countdown{font-size:14px;color:#999}.mock-payment{margin:16px 0;padding:16px;background:#fff7e6;border-radius:8px}.payment-success{text-align:center;padding:40px 0}.payment-success .success-icon{font-size:64px;color:#52c41a;margin-bottom:16px}.payment-success h3{font-size:24px;color:#1f1f1f;margin-bottom:8px}.payment-success p{font-size:14px;color:#666}.main-sider{background:linear-gradient(180deg,#1E1535 0%,#16102A 100%)!important;box-shadow:1px 0 #a894ff14;border-right:none;overflow:auto;height:100vh;position:fixed;left:0;top:0;bottom:0;z-index:10}.sider-logo{height:52px;display:flex;align-items:center;justify-content:center;padding:0 12px;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0;overflow:hidden}.sider-logo.collapsed{padding:0}.logo-full{display:flex;align-items:center;justify-content:flex-start;width:100%;height:100%;cursor:pointer;-webkit-user-select:none;user-select:none;overflow:hidden}.logo-full img{height:26px;width:auto;max-width:100%;object-fit:contain;object-position:left center;transition:opacity .2s ease;flex-shrink:0}.logo-full:hover img{opacity:.85}.logo-icon-only{width:36px;height:36px;display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;transition:opacity .2s ease}.logo-icon-only:hover{opacity:.8}.logo-icon-only img{width:34px;height:34px;object-fit:contain}.logo-badge{width:32px;height:32px;min-width:32px;background:linear-gradient(135deg,#8C7CF0 0%,#7B6BD8 100%);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:700;box-shadow:0 2px 8px #8c7cf04d,0 0 0 1px #ffffff1a;flex-shrink:0}.logo-info{display:flex;flex-direction:column;justify-content:center;margin-left:10px;overflow:hidden;min-width:0}.logo-company{font-size:13.5px;font-weight:700;color:#fffffff2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3;letter-spacing:.01em}.logo-subtitle{font-size:11px;font-weight:400;color:#a894ffbf;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3;letter-spacing:.02em}.logo-title{font-size:16px;font-weight:600;color:#ffffffeb;margin-left:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.main-header{padding:0!important;background:linear-gradient(180deg,#ffffff 0%,#f5f3ff 100%)!important;display:flex;justify-content:space-between;align-items:center;height:56px;box-shadow:none;border-bottom:none;position:sticky;top:0;z-index:5}.header-left{display:flex;align-items:center;padding-left:4px;gap:4px}.header-collapse-btn{width:36px!important;height:36px!important;border-radius:8px!important;color:#9ca3af!important;transition:background .15s ease-out,color .15s ease-out;flex-shrink:0}.header-collapse-btn:hover{background:rgba(140,124,240,.08)!important;color:#8c7cf0!important}.header-left-divider{width:1px;height:18px;background:#E5E7EB;margin:0 6px;flex-shrink:0}.header-brand{display:flex;align-items:center;gap:7px;padding:0 10px 0 8px;height:34px;border-radius:8px;background:transparent;border:none;box-shadow:none;cursor:default;transition:background .15s ease-out}.header-brand:hover{background:rgba(140,124,240,.05)}.header-brand-icon{width:26px;height:26px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:transparent}.header-brand-text{font-size:13.5px;font-weight:600;color:#374151;white-space:nowrap;max-width:180px;overflow:hidden;text-overflow:ellipsis;letter-spacing:.01em;line-height:1}.header-actions{display:flex;align-items:center;padding-right:20px;gap:12px}.header-divider{width:1px;height:20px;background:#F3F4F6;margin:0 4px}.header-tenant-btn{display:flex!important;align-items:center!important;padding:4px 8px!important;border-radius:6px!important;max-width:160px;overflow:hidden}.header-tenant-btn:hover{background:rgba(140,124,240,.06)!important}.header-account-btn{border-radius:999px!important;padding:0 12px!important;display:flex;align-items:center;gap:8px;color:#1a1a2e!important;background:transparent;border:none!important;box-shadow:none!important;transition:all .15s ease-out}.header-account-btn:hover{background:rgba(140,124,240,.06)!important;color:#8c7cf0!important;border:none!important}.header-account-avatar{background:#8C7CF0;color:#fff;border:none!important;box-shadow:none!important;transition:opacity .15s ease-out}.header-account-btn:hover .header-account-avatar{opacity:.9}.header-username{font-size:14px;font-weight:600;color:#1a1a2e}.header-account-btn:hover .header-username{color:#8c7cf0}.header-logout-btn{border-radius:6px!important}.header-logout-btn:hover{background:rgba(239,68,68,.06)!important;color:#ef4444!important}.main-content-area{margin:0;padding:0;height:calc(100vh - 56px);overflow:hidden;background:var(--bg-primary, #F7F8FC)}.sider-loading{padding:24px;text-align:center}html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}@-ms-viewport{width:device-width}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}mark{padding:.2em;background-color:#feffe6}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fafbfd}html,body,#root{height:100%}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#C6B9FF 0%,#8C7CF0 100%);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#A99DF5 0%,#6B5CE7 100%)}::-webkit-scrollbar-track{background-color:#8c7cf00d;border-radius:4px}:root{--primary-color: #8C7CF0;--primary-light: #A99DF5;--primary-lighter: #C6B9FF;--primary-lightest: #EDE9FF;--primary-dark: #6B5CE7;--color-primary: #8C7CF0;--color-primary-light: #A99DF5;--color-primary-pale: #C6B9FF;--color-primary-dark: #6B5CE7;--cta-color: #F97316;--cta-light: #FB923C;--cta-dark: #EA580C;--cta-bg: #FFF7ED;--accent-green: #22C55E;--accent-green-light: #86EFAC;--accent-yellow: #EAB308;--accent-yellow-light: #FDE047;--accent-orange: #F97316;--accent-orange-light: #FED7AA;--accent-red: #EF4444;--accent-red-light: #FCA5A5;--color-success: #22C55E;--color-warning: #EAB308;--color-error: #EF4444;--color-info: #8C7CF0;--bg-primary: #F7F8FC;--bg-secondary: #FAFAFA;--bg-card: #FFFFFF;--bg-hover: rgba(140,124,240,.06);--bg-page: #F7F8FC;--bg-sidebar: #1E1535;--text-primary: #1A1A2E;--text-secondary: #6B7280;--text-tertiary: #9CA3AF;--text-muted: #9CA3AF;--text-placeholder: rgba(0, 0, 0, .25);--border-color: #E5E7EB;--border-light: #F3F4F6;--shadow-sm: 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 12px rgba(0,0,0,.06);--shadow-lg: 0 8px 24px rgba(0,0,0,.08);--shadow-card: 0 1px 3px rgba(0,0,0,.04), 0 1px 8px rgba(140,124,240,.06);--shadow-hover: 0 4px 16px rgba(140,124,240,.14);--shadow-card-hover: 0 6px 20px rgba(140,124,240,.16);--gradient-primary: linear-gradient(135deg, #8C7CF0 0%, #A99DF5 100%);--gradient-brand: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-button: linear-gradient(135deg, #8C7CF0, #A99DF5);--gradient-soft: linear-gradient(180deg, #ffffff 0%, #F7F8FC 100%);--gradient-card: #FFFFFF;--radius-xs: 2px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--btn-height-lg: 40px;--btn-height: 32px;--btn-height-sm: 24px;--btn-padding-lg: 15px;--btn-padding: 15px;--btn-padding-sm: 7px;--control-height: 32px;--control-height-sm: 24px;--control-height-lg: 40px;--transition-fast: .1s ease-out;--transition-normal: .15s ease-out;--transition-slow: .2s ease-out}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,-apple-system,BlinkMacSystemFont,sans-serif}.rounded-container{border-radius:8px;background:#fff;padding:24px}.ant-popconfirm .ant-popconfirm-inner-content{padding:16px 20px}.ant-popconfirm .ant-popconfirm-message{margin-bottom:12px}.ant-popconfirm .ant-popconfirm-buttons{margin-top:4px}.tabs-container{background:linear-gradient(180deg,#f5f3ff 0%,#edeaff 60%,#e8e4fa 100%);padding:0 16px;position:relative;overflow:visible;box-shadow:0 4px 16px #8c7cf01a,0 1px #8c7cf01f}.tabs-container:before{display:none}.tabs-container:after{display:none}.ant-tabs-nav{margin-bottom:0!important;padding:0 2px!important;background:transparent;position:relative;z-index:1}.ant-tabs-nav:before{display:none!important}.ant-tabs-nav-list{gap:4px!important;padding:4px 0 0!important;align-items:flex-end!important}.ant-tabs-tab{padding:6px 14px!important;margin:0!important;border-radius:10px 10px 0 0!important;background:rgba(255,255,255,.55)!important;border:1px solid rgba(140,124,240,.12)!important;border-bottom:1px solid rgba(140,124,240,.08)!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;font-size:13px;font-weight:500;color:var(--text-secondary);transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .15s ease,color .18s ease;position:relative;line-height:20px;box-shadow:0 1px 4px #8c7cf00f,inset 0 1px #ffffffb3;cursor:pointer;min-height:34px;z-index:2}.ant-tabs-tab:before{content:"";position:absolute;top:1px;left:8%;right:8%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.9) 50%,transparent);border-radius:99px;pointer-events:none}.ant-tabs-tab:hover{background:rgba(237,233,255,.75)!important;border-color:#8c7cf047!important;border-bottom-color:#8c7cf026!important;color:var(--primary-color)!important;box-shadow:0 -1px 8px #8c7cf024,0 2px 6px #8c7cf01a,inset 0 1px #ffffffd9!important;transform:translateY(-1px);z-index:3}.ant-tabs-tab:hover:before{background:linear-gradient(90deg,transparent,rgba(140,124,240,.25) 50%,transparent)}.ant-tabs-tab-active{background:rgba(255,255,255,.96)!important;border:1px solid rgba(140,124,240,.2)!important;border-bottom:1px solid transparent!important;backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important;color:var(--primary-color)!important;box-shadow:0 -2px 12px #8c7cf024,0 2px 8px #8c7cf014,inset 0 1px #fff,inset 0 0 0 .5px #fff9!important;transform:none;z-index:10;font-weight:600;min-height:34px}.ant-tabs-tab-active:before{content:"";position:absolute;top:0;left:20%;right:20%;height:1.5px;background:linear-gradient(90deg,transparent 0%,rgba(169,157,245,.5) 30%,rgba(140,124,240,.75) 50%,rgba(169,157,245,.5) 70%,transparent 100%);border-radius:0 0 99px 99px;box-shadow:0 0 6px #8c7cf040;pointer-events:none}.ant-tabs-tab-active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--bg-page, #F7F8FC);z-index:11;pointer-events:none}.ant-tabs-tab-active:hover{background:rgba(255,255,255,.98)!important;border-color:#8c7cf040!important;border-bottom-color:transparent!important;transform:none!important;color:var(--primary-color)!important;box-shadow:0 -2px 14px #8c7cf029,0 2px 10px #8c7cf01a,inset 0 1px #fff!important}.ant-tabs-tab-active .ant-tabs-tab-btn{color:var(--primary-color)!important;font-weight:600}.ant-tabs-tab-active:hover .ant-tabs-tab-btn{color:var(--primary-color)!important}.ant-tabs-tab .ant-tabs-tab-remove{margin-left:6px;color:#0000004d;font-size:11px;width:17px;height:17px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.4,0,.2,1);opacity:0;background:transparent;flex-shrink:0}.ant-tabs-tab:hover .ant-tabs-tab-remove{opacity:1;background:rgba(140,124,240,.1);color:var(--primary-color)}.ant-tabs-tab .ant-tabs-tab-remove:hover{background:var(--gradient-primary)!important;color:#fff!important;transform:scale(1.2) rotate(90deg);box-shadow:0 2px 8px #8c7cf066;opacity:1!important}.ant-tabs-tab-active .ant-tabs-tab-remove{opacity:1;background:rgba(140,124,240,.1);color:var(--primary-color)}.ant-tabs-tab-active .ant-tabs-tab-remove:hover{background:linear-gradient(135deg,#ff4d4f,#ff7875)!important;color:#fff!important;transform:scale(1.2) rotate(90deg);box-shadow:0 2px 8px #ff4d4f66}.ant-tabs-ink-bar{display:none!important}.ant-tabs-nav-operations .ant-tabs-nav-more{background:rgba(255,255,255,.6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(140,124,240,.15);border-radius:8px;color:var(--text-secondary);transition:all .2s ease}.ant-tabs-nav-operations .ant-tabs-nav-more:hover{background:rgba(237,233,255,.8);color:var(--primary-color);border-color:#8c7cf04d}.tab-refresh-icon{transition:color .2s ease,background .2s ease,box-shadow .2s ease;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;color:var(--primary-color);opacity:.6;flex-shrink:0}.tab-refresh-icon:hover{opacity:1;background:rgba(140,124,240,.12);color:var(--primary-color)!important;box-shadow:0 0 0 3px #8c7cf01a}.tab-refresh-icon:active{background:rgba(140,124,240,.18)}@keyframes refresh-spin-continuous{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tab-refresh-icon.refreshing{animation:refresh-spin-continuous .5s linear infinite!important;color:var(--primary-color)!important;opacity:1!important}.ant-tabs-extra-content{display:flex;align-items:center;gap:6px;padding:0 4px}.tabs-extra-btn{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);background:rgba(255,255,255,.6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(140,124,240,.12);transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 4px #0000000d}.tabs-extra-btn:hover{background:rgba(237,233,255,.85);color:var(--primary-color);border-color:#8c7cf04d;box-shadow:0 2px 10px #8c7cf02e;transform:translateY(-1px)}.tabs-extra-btn:active{transform:translateY(0);box-shadow:0 1px 4px #8c7cf033}.tabs-dropdown{border-radius:12px;box-shadow:0 8px 30px #0000001f,0 2px 8px #0000000f,0 0 0 1px #8c7cf014;padding:6px;background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(140,124,240,.1)}.tabs-dropdown .ant-dropdown-menu-item{border-radius:8px;padding:9px 14px;margin:2px 0;transition:all .2s cubic-bezier(.4,0,.2,1);font-size:13px;font-weight:500}.tabs-dropdown .ant-dropdown-menu-item:hover{background:rgba(140,124,240,.08);color:var(--primary-color);transform:translate(2px)}.tabs-dropdown .ant-dropdown-menu-item-danger:hover{background:rgba(255,77,79,.08);color:#ff4d4f;transform:translate(2px)}.ant-tabs-content-holder{background:var(--bg-page);border-top:1px solid rgba(140,124,240,.1);box-shadow:inset 0 2px 8px #8c7cf00a}.tab-refresh-progress-bar{position:absolute;top:0;left:0;right:0;height:2px;z-index:200;overflow:hidden;pointer-events:none;border-radius:0 0 2px 2px}.tab-refresh-progress-bar:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(140,124,240,.08)}.tab-refresh-progress-bar:after{content:"";position:absolute;top:0;height:100%;width:45%;background:linear-gradient(90deg,transparent 0%,rgba(169,157,245,.5) 20%,var(--primary-color) 50%,rgba(169,157,245,.5) 80%,transparent 100%);animation:tab-progress-sweep .85s cubic-bezier(.4,0,.6,1) infinite;border-radius:2px;box-shadow:0 0 8px #8c7cf08c}@keyframes tab-progress-sweep{0%{left:-45%;opacity:.8}70%{opacity:1}to{left:100%;opacity:.2}}.tab-content-fade-in{animation:tab-fade-in .2s ease-out}@keyframes tab-fade-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.tabs-bar{display:flex;align-items:center;gap:4px;padding:0}.tab-item{display:flex;align-items:center;gap:6px;padding:5px 12px;border-radius:8px;cursor:pointer;background:rgba(255,255,255,.6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(140,124,240,.1);font-size:13px;font-weight:500;color:var(--text-secondary);position:relative;overflow:hidden;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease;height:30px;line-height:20px}.tab-item:hover{background:rgba(237,233,255,.75);border-color:#8c7cf040;color:var(--primary-color);box-shadow:0 2px 10px #8c7cf026}.tab-item.active{background:var(--gradient-primary);border-color:transparent;color:#fff;box-shadow:0 4px 14px #8c7cf059,inset 0 1px #ffffff40}.tab-item.active:hover{background:var(--gradient-primary);border-color:transparent;color:#fff;box-shadow:0 6px 18px #8c7cf06b;transform:translateY(-1px)}.tab-item.active:before{content:"";position:absolute;top:1px;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5) 50%,transparent);border-radius:99px;pointer-events:none}.tab-item .tab-icon{font-size:14px}.tab-item:hover .tab-icon{color:var(--primary-color)}.tab-item.active .tab-icon{color:#fff}.tab-item .tab-close{width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;opacity:0;background:transparent;margin-left:2px;transition:all .2s cubic-bezier(.4,0,.2,1);flex-shrink:0}.tab-item:hover .tab-close{opacity:1;background:rgba(140,124,240,.12);color:var(--primary-color)}.tab-item .tab-close:hover{background:var(--primary-color)!important;color:#fff!important;transform:scale(1.15);box-shadow:0 2px 6px #8c7cf059}.tab-item.active .tab-close{opacity:1;background:rgba(255,255,255,.2);color:#ffffffd9}.tab-item.active .tab-close:hover{background:rgba(255,255,255,.95)!important;color:var(--primary-color)!important;transform:scale(1.15);box-shadow:0 2px 6px #00000026}.global-loading{position:fixed;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#FAFBFD 0%,#EDE9FF 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9999}.loading-spinner{position:relative;width:80px;height:80px}.loading-ring{position:absolute;width:100%;height:100%;border-radius:50%;border:4px solid transparent;border-top-color:#8c7cf0;border-right-color:#c6b9ff;animation:spin 1.2s cubic-bezier(.5,0,.5,1) infinite}.loading-ring:nth-child(1){animation-delay:-.45s}.loading-ring:nth-child(2){animation-delay:-.3s;width:90%;height:90%;top:5%;left:5%;border-top-color:#a99df5;border-right-color:#ede9ff}.loading-ring:nth-child(3){animation-delay:-.15s;width:80%;height:80%;top:10%;left:10%;border-top-color:#c6b9ff;border-right-color:#f5f3ff}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-text{margin-top:24px;font-size:14px;color:#6b6b80;font-weight:500;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.skeleton-wrapper{padding:24px;background:var(--bg-card);border-radius:var(--radius-lg)}.skeleton{background:linear-gradient(90deg,#F5F6FA 0%,#EDE9FF 50%,#F5F6FA 100%);background-size:200% 100%;border-radius:var(--radius-sm);animation:shimmer 1.5s ease-in-out infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-title{height:24px;width:40%;margin-bottom:16px}.skeleton-paragraph{height:16px;margin-bottom:12px}.skeleton-paragraph:last-child{width:60%}.skeleton-card{padding:20px;background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);margin-bottom:16px}.skeleton-card-header{display:flex;align-items:center;margin-bottom:16px}.skeleton-avatar{width:48px;height:48px;border-radius:50%;margin-right:16px}.skeleton-card-content{flex:1}.skeleton-button{height:40px;width:120px;border-radius:var(--radius-sm)}.skeleton-input{height:40px;width:100%;margin-bottom:16px;border-radius:var(--radius-sm)}.skeleton-table{width:100%}.skeleton-table-row{display:flex;gap:16px;margin-bottom:12px}.skeleton-table-cell{height:20px;flex:1;border-radius:var(--radius-xs)}.loading-dots{display:inline-flex;align-items:center;gap:6px}.loading-dot{width:8px;height:8px;border-radius:50%;background:var(--primary-color);animation:bounce 1.4s ease-in-out infinite}.loading-dot:nth-child(1){animation-delay:-.32s}.loading-dot:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1.2);opacity:1}}.progress-bar{width:100%;height:3px;background:rgba(140,124,240,.1);border-radius:var(--radius-full);overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#8C7CF0 0%,#C6B9FF 100%);border-radius:var(--radius-full);animation:progress 2s ease-in-out infinite}@keyframes progress{0%{width:0%;margin-left:0%}50%{width:50%;margin-left:25%}to{width:0%;margin-left:100%}}.inline-loader{display:inline-block;width:16px;height:16px;border:2px solid rgba(140,124,240,.2);border-top-color:var(--primary-color);border-radius:50%;animation:spin .8s linear infinite}.ant-spin-dot-item{background-color:var(--primary-color)!important}.ant-spin-text{color:var(--text-secondary);font-size:14px;margin-top:8px}.ant-skeleton-content .ant-skeleton-title,.ant-skeleton-content .ant-skeleton-paragraph>li{background:linear-gradient(90deg,#F5F6FA 0%,#EDE9FF 50%,#F5F6FA 100%)!important;background-size:200% 100%!important;animation:shimmer 1.5s ease-in-out infinite!important;border-radius:var(--radius-sm)!important}.ant-skeleton-avatar{background:linear-gradient(90deg,#F5F6FA 0%,#EDE9FF 50%,#F5F6FA 100%)!important;background-size:200% 100%!important;animation:shimmer 1.5s ease-in-out infinite!important}.ant-skeleton-button,.ant-skeleton-input{background:linear-gradient(90deg,#F5F6FA 0%,#EDE9FF 50%,#F5F6FA 100%)!important;background-size:200% 100%!important;animation:shimmer 1.5s ease-in-out infinite!important;border-radius:var(--radius-sm)!important}@media (max-width: 768px){.loading-spinner{width:60px;height:60px}.loading-text{font-size:13px}.skeleton-card{padding:16px}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;text-align:center}.empty-state-compact{padding:40px 20px}.empty-state-icon{width:120px;height:120px;margin-bottom:24px;background:linear-gradient(135deg,#EDE9FF 0%,#C6B9FF 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:56px;color:#a99df5;animation:float-gentle 3s ease-in-out infinite}@keyframes float-gentle{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.empty-state-title{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:12px;line-height:1.5}.empty-state-description{font-size:14px;color:var(--text-secondary);margin-bottom:24px;line-height:1.6;max-width:400px}.empty-state-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.empty-state-no-data .empty-state-icon{background:linear-gradient(135deg,#F5F3FF 0%,#EDE9FF 100%);color:#a99df5}.empty-state-no-results .empty-state-icon{background:linear-gradient(135deg,#FFF8F0 0%,#FFEBB3 100%);color:#ffd97d}.empty-state-no-permission .empty-state-icon{background:linear-gradient(135deg,#FFE8E8 0%,#FFD4D4 100%);color:#ffab76}.empty-state-404 .empty-state-icon{width:160px;height:160px;font-size:72px;font-weight:700;background:linear-gradient(135deg,#EDE9FF 0%,#C6B9FF 100%);color:#8c7cf0}.empty-state-network-error .empty-state-icon{background:linear-gradient(135deg,#FFE8E8 0%,#FFD4D4 100%);color:#ff6b6b}.empty-state:before{content:"";position:absolute;width:200px;height:200px;background:radial-gradient(circle,rgba(140,124,240,.05) 0%,transparent 70%);border-radius:50%;z-index:-1;animation:pulse-subtle 4s ease-in-out infinite}@keyframes pulse-subtle{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.1);opacity:.8}}.ant-empty{margin:40px 0}.ant-empty-image{height:100px;margin-bottom:16px}.ant-empty-image svg{width:100px;height:100px}.ant-empty-description{color:var(--text-secondary);font-size:14px}.illustrated-empty{position:relative;padding:80px 40px}.illustrated-empty-image{width:240px;height:200px;margin:0 auto 32px;background:linear-gradient(135deg,#EDE9FF 0%,#C6B9FF 100%);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.illustrated-empty-image:before{content:"";position:absolute;width:120px;height:120px;background:rgba(140,124,240,.1);border-radius:50%;top:-30px;right:-30px}.illustrated-empty-image:after{content:"";position:absolute;width:80px;height:80px;background:rgba(198,185,255,.1);border-radius:50%;bottom:-20px;left:-20px}.illustrated-empty-icon{font-size:80px;color:#a99df5;position:relative;z-index:1}@media (max-width: 768px){.empty-state{padding:40px 16px}.empty-state-icon{width:100px;height:100px;font-size:48px}.empty-state-404 .empty-state-icon{width:140px;height:140px;font-size:64px}.empty-state-title{font-size:16px}.empty-state-description{font-size:13px}.illustrated-empty-image{width:200px;height:160px}.illustrated-empty-icon{font-size:64px}}.text-center{text-align:center}.empty-margin-lg{margin:60px 0}.empty-margin-md{margin:40px 0}.empty-margin-sm{margin:24px 0}.react-resizable{position:relative}.react-resizable-handle{position:absolute;width:20px;height:20px;background-repeat:no-repeat;background-origin:content-box;box-sizing:border-box;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2IDYiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYwMCIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iNnB4Ij48ZyBvcGFjaXR5PSIwLjMwMiI+PHBhdGggZD0iTSA2IDYgTCAwIDYgTCAwIDQuMiBMIDQgNC4yIEwgNC4yIDQuMiBMIDQuMiAwIEwgNiAwIEwgNiA2IEwgNiA2IFoiIGZpbGw9IiMwMDAwMDAiLz48L2c+PC9zdmc+);background-position:bottom right;padding:0 3px 3px 0}.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-resizable-handle-w,.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-resizable-handle-n,.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}
