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}:root{--gradient-brand: linear-gradient(135deg, #4f46e5 0%, #8b5cf6 100%);--gradient-brand-soft-90: linear-gradient( 90deg, rgba(99, 102, 241, .14) 0%, rgba(139, 92, 246, .1) 100% );--gradient-brand-soft: linear-gradient( 135deg, rgba(99, 102, 241, .14) 0%, rgba(139, 92, 246, .1) 100% );--gradient-login-bg: linear-gradient(135deg, #312e81 0%, #4f46e5 38%, #7c3aed 72%, #a855f7 100%);--n50: #f8fafc;--n100: #f1f5f9;--n200: #e2e8f0;--n300: #cbd5e1;--n400: #94a3b8;--n500: #64748b;--n600: #475569;--n700: #334155;--n800: #1e293b;--n900: #0f172a;--success: #10b981;--success-soft: #ecfdf5;--success-text: #047857;--warning: #f59e0b;--warning-soft: #fffbeb;--warning-text: #b45309;--danger: #ef4444;--danger-soft: #fef2f2;--danger-text: #b91c1c;--info: #3b82f6;--info-soft: #eff6ff;--info-text: #1d4ed8;--shadow-sm: 0 1px 2px 0 rgba(15, 23, 42, .06);--shadow-md: 0 4px 12px 0 rgba(15, 23, 42, .08);--shadow-lg: 0 8px 24px 0 rgba(15, 23, 42, .12);--shadow-brand: 0 8px 20px 0 rgba(99, 102, 241, .35);--shadow-glass: 0 24px 64px 0 rgba(15, 23, 42, .35);--ease-standard: cubic-bezier(.4, 0, .2, 1);--dur-fast: .15s;--dur-mid: .2s;--dur-slow: .3s;--font-stack: "Inter", "PingFang SC", "Microsoft YaHei", system-ui, -apple-system, sans-serif;--mono-stack: ui-monospace, "SFMono-Regular", Consolas, monospace}:root[data-theme=dark]{--n50: #0b1120;--n100: #131c2e;--n200: #22304a;--n300: #33465f;--n400: #64748b;--n500: #94a3b8;--n600: #b6c2d4;--n700: #cbd5e1;--n800: #e2e8f0;--n900: #f1f5f9;--success-soft: rgba(16, 185, 129, .14);--success-text: #34d399;--warning-soft: rgba(245, 158, 11, .14);--warning-text: #fbbf24;--danger-soft: rgba(239, 68, 68, .14);--danger-text: #f87171;--info-soft: rgba(59, 130, 246, .14);--info-text: #60a5fa;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .4);--shadow-md: 0 4px 12px 0 rgba(0, 0, 0, .5);--shadow-lg: 0 8px 24px 0 rgba(0, 0, 0, .55);--shadow-glass: 0 24px 64px 0 rgba(0, 0, 0, .55)}html,body{margin:0;padding:0}body{font-family:var(--font-stack);font-size:14px;line-height:22px;color:var(--n700);background:var(--n100);-webkit-font-smoothing:antialiased;transition:background .2s ease,color .2s ease}:root[data-theme=dark] body{color:var(--n700);background:var(--n50)}:root[data-theme=dark] .jxc-card,:root[data-theme=dark] .jxc-kpi,:root[data-theme=dark] .jxc-order-table,:root[data-theme=dark] .jxc-detail-total{background:var(--n100)}:root[data-theme=dark] .jxc-kpi{border:1px solid var(--n200)}:root[data-theme=dark] .jxc-topbar{background:var(--n100);border-bottom-color:var(--n200)}:root[data-theme=dark] .jxc-user-menu{background:var(--n100);border-color:var(--n200)}:root[data-theme=dark] .jxc-user-menu-sep{background:var(--n200)}:root[data-theme=dark] .jxc-search input{border-color:var(--n200);background:var(--n50);color:var(--n700)}:root[data-theme=dark] .jxc-order-head{background:var(--n50)}:root[data-theme=dark] .jxc-table-skel-head{background:var(--n100)}:root[data-theme=dark] .jxc-sidebar{background:#0a0f1e;border-right:1px solid var(--n200)}:root[data-theme=dark] .jxc-menu-item{color:var(--n500)}:root[data-theme=dark] .jxc-menu-item:hover{background:#94a3b824;color:var(--n700)}:root[data-theme=dark] .jxc-skel{background:var(--n200)}:root[data-theme=dark] .jxc-skel:after{background:linear-gradient(90deg,transparent,rgba(148,163,184,.25),transparent);background-size:200% 100%;animation:jxc-shimmer 1.2s linear infinite}:root[data-theme=dark] .ant-table-thead>tr>th{background:var(--n100);border-bottom-color:var(--n200)}:root[data-theme=dark] .ant-table-tbody>tr>td{border-bottom-color:var(--n200)}:root[data-theme=dark] .ant-modal .ant-modal-mask{background:#02061799}:root[data-theme=dark] .ant-select-dropdown,:root[data-theme=dark] .ant-table,:root[data-theme=dark] .ant-drawer-content,:root[data-theme=dark] .ant-modal-content{background:var(--n100)}:root[data-theme=dark] .ant-input,:root[data-theme=dark] .ant-input-number,:root[data-theme=dark] .ant-select-selector{background:var(--n50)!important;border-color:var(--n200)!important;color:var(--n700)!important}:root[data-theme=dark] .ant-input:hover,:root[data-theme=dark] .ant-input-number:hover,:root[data-theme=dark] .ant-select-selector:hover{border-color:var(--n300)!important}:root[data-theme=dark] .ant-input:focus,:root[data-theme=dark] .ant-input-number:focus-within,:root[data-theme=dark] .ant-select-focused .ant-select-selector{border-color:#6366f1!important;box-shadow:0 0 0 3px #6366f12e!important}:root[data-theme=dark] .ant-table-placeholder{background:transparent!important}#root{min-height:100vh}.jxc-nums{font-variant-numeric:tabular-nums}.jxc-mono{font-family:var(--mono-stack)}.jxc-order-no{color:#6366f1;font-size:13px}:focus-visible{outline:2px solid #4f46e5;outline-offset:2px}.jxc-sidebar :focus-visible{outline-color:#a5b4fc}.jxc-cell-money{font-variant-numeric:tabular-nums}.jxc-cell-time{font-size:13px;color:var(--n500)}.jxc-sub-text{font-size:12px;color:var(--n400)}@keyframes jxc-shake{0%{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-6px)}80%{transform:translate(6px)}to{transform:translate(0)}}@keyframes kpi-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes page-in{0%{opacity:0}to{opacity:1}}@keyframes banner-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes jxc-shimmer{0%{background-position:100% 0}to{background-position:0 0}}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-out{to{opacity:0}}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes menu-out{0%{opacity:1}to{opacity:0}}@keyframes row-flash{0%{background-color:#eef2ff}to{background-color:transparent}}@keyframes spin{to{transform:rotate(360deg)}}.jxc-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}.jxc-page-header h1{font-size:18px;line-height:26px;font-weight:600;color:var(--n800);margin:0}.jxc-page-header p{font-size:13px;color:var(--n500);margin:4px 0 0}.jxc-page-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.jxc-card{background:#fff;border-radius:12px;box-shadow:var(--shadow-sm);overflow:hidden}.jxc-btn-primary.ant-btn:hover:not(:disabled){box-shadow:var(--shadow-brand)}.jxc-danger-btn{background:#dc2626!important;border-color:#dc2626!important;color:#fff!important}.jxc-danger-btn:hover:not(:disabled){background:#b91c1c!important;border-color:#b91c1c!important}.jxc-search{position:relative;height:36px;display:flex;align-items:center}.jxc-search svg{position:absolute;left:12px;color:var(--n400);pointer-events:none}.jxc-search input{width:100%;height:36px;padding:0 12px 0 36px;border:1px solid var(--n200);border-radius:8px;font-size:14px;color:var(--n700);background:#fff;outline:none;transition:border-color var(--dur-fast) ease,box-shadow var(--dur-fast) ease}.jxc-search input:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51f}.jxc-row-ops{display:flex;gap:8px;justify-content:flex-end}.jxc-row-ops .ant-btn{width:28px;height:28px;min-width:28px;padding:0;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;color:var(--n500);transition:all .1s ease}.jxc-op-edit:hover,.jxc-op-edit:hover svg{color:#4f46e5}.jxc-op-edit:hover{background:#eef2ff}.jxc-op-del:hover,.jxc-op-del:hover svg{color:#dc2626}.jxc-op-del:hover{background:var(--danger-soft)}.jxc-view-link{background:none;border:none;color:#4f46e5;font-size:14px;cursor:pointer;padding:2px 4px;border-radius:4px;display:inline-flex;align-items:center;gap:2px}.jxc-view-link:hover{background:#eef2ff}.ant-btn-link.jxc-view-link{padding:0 4px}.jxc-tag{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:4px;font-size:12px;line-height:1;white-space:nowrap}.tag-success{background:var(--success-soft);color:var(--success-text)}.tag-warning{background:var(--warning-soft);color:var(--warning-text)}.tag-danger{background:var(--danger-soft);color:var(--danger-text)}.tag-info{background:var(--info-soft);color:var(--info-text)}.ant-table-tbody>tr>td{transition:background .1s ease}.jxc-skel{position:relative;overflow:hidden;background:var(--n200);border-radius:4px}.jxc-skel:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent);background-size:200% 100%;animation:jxc-shimmer 1.2s linear infinite}.jxc-table-skel{width:100%}.jxc-table-skel-head{display:flex;gap:16px;align-items:center;height:40px;padding:0 16px;background:var(--n50);font-size:12px;font-weight:600;color:var(--n50)}.jxc-table-skel-head span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jxc-table-skel-row{display:flex;gap:16px;align-items:center;height:48px;padding:0 16px;border-bottom:1px solid var(--n100)}.jxc-table-skel-row span{flex:1;min-width:0}.jxc-error,.jxc-error-wrap{padding:48px 0;display:flex;flex-direction:column;align-items:center;gap:12px}.jxc-error-text{font-size:14px;color:var(--n500)}.jxc-error-retry{background:none;border:none;color:#4f46e5;font-size:14px;cursor:pointer;padding:4px 8px;border-radius:4px}.jxc-error-retry:hover{background:#eef2ff}.jxc-empty{padding:48px 0;display:flex;flex-direction:column;align-items:center;text-align:center}.jxc-empty-icon{width:64px;height:64px;border-radius:50%;background:var(--n100);color:var(--n400);display:grid;place-items:center}.jxc-empty-title{margin-top:16px;font-size:14px;font-weight:500;color:var(--n700)}.jxc-empty-desc{margin-top:4px;font-size:13px;color:var(--n400)}.jxc-empty-clear{margin-top:8px;background:none;border:none;color:#4f46e5;font-size:13px;cursor:pointer}.jxc-empty-clear:hover{text-decoration:underline}.jxc-empty .ant-btn{margin-top:16px}.jxc-toast-wrap{position:fixed;top:24px;left:50%;transform:translate(-50%);z-index:1100;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none;width:max-content;max-width:calc(100vw - 32px)}.jxc-toast{pointer-events:auto;display:flex;align-items:center;gap:8px;height:40px;padding:0 16px;background:var(--n900);border-radius:8px;color:#fff;font-size:14px;box-shadow:var(--shadow-lg);animation:toast-in var(--dur-mid) var(--ease-standard);max-width:min(480px,calc(100vw - 32px))}.jxc-toast.is-leaving{animation:toast-out var(--dur-mid) ease-in forwards}.jxc-toast span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.jxc-toast-close{width:24px;height:24px;display:grid;place-items:center;background:none;border:none;color:#ffffffa6;cursor:pointer;border-radius:4px;flex:none}.jxc-toast-close:hover{color:#fff;background:#ffffff1a}.jxc-login{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;background:var(--gradient-login-bg);background-size:cover}.jxc-login-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:inherit;transition:transform var(--dur-slow) var(--ease-standard);pointer-events:none}.jxc-login.is-leaving .jxc-login-bg{transform:scale(1.05)}.jxc-login-deco{position:absolute;width:480px;height:480px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.1),transparent 70%);pointer-events:none}.jxc-login-deco-tl{right:-120px;top:-120px}.jxc-login-deco-br{left:-120px;bottom:-120px}.jxc-login-card{position:relative;z-index:1;width:420px;max-width:calc(100% - 32px);padding:40px 36px;border-radius:16px;background:#ffffff1a;backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);border:1px solid rgba(255,255,255,.18);box-shadow:var(--shadow-glass);transition:opacity var(--dur-slow) var(--ease-standard),transform var(--dur-slow) var(--ease-standard)}.jxc-login-card.is-leaving{opacity:0;transform:scale(.98)}.jxc-login-card.is-shaking{animation:jxc-shake .4s cubic-bezier(.36,.06,.16,1)}.jxc-login-logo{position:relative;width:48px;height:48px;display:grid;place-items:center;margin-bottom:16px;font-size:24px;font-weight:700;z-index:1;background:linear-gradient(135deg,#4f46e5,#8b5cf6);-webkit-background-clip:text;background-clip:text;color:transparent}.jxc-login-logo:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:#fff;border-radius:12px;box-shadow:var(--shadow-md)}.jxc-login-card h1{font-size:20px;line-height:28px;font-weight:600;color:#fff;margin:0 0 8px}.jxc-login-subtitle{font-size:14px;color:#ffffffb3;margin:0 0 32px}.jxc-login-fields{display:flex;flex-direction:column;gap:16px}.jxc-float{position:relative;height:48px;border-radius:8px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);transition:border-color var(--dur-fast) ease,box-shadow var(--dur-fast) ease}.jxc-float input{position:relative;z-index:1;width:100%;height:100%;background:transparent;border:none;outline:none;padding:0 44px 0 14px;font-size:15px;color:#fff;caret-color:#fff;border-radius:8px}.jxc-float input::placeholder{color:transparent}.jxc-float input:disabled{opacity:.7}.jxc-float label{position:absolute;z-index:1;left:14px;top:50%;transform:translateY(-50%);padding:0 4px;font-size:15px;color:#ffffff8c;pointer-events:none;transition:all var(--dur-fast) var(--ease-standard)}.jxc-float input:focus~label,.jxc-float input:not(:placeholder-shown)~label{top:0;font-size:11px;color:#ffffffbf;left:10px;background:#ffffff1a}.jxc-float:focus-within{border-color:#a5b4fc;box-shadow:0 0 0 3px #818cf84d}.jxc-float:has(input.has-error){border-color:#f87171;box-shadow:0 0 0 3px #f8717140}.jxc-float:has(input.has-error) label{color:#f87171e6}.jxc-eye{position:absolute;right:10px;top:50%;transform:translateY(-50%);z-index:2;width:32px;height:32px;display:grid;place-items:center;background:none;border:none;color:#ffffffb3;cursor:pointer}.jxc-eye:hover{color:#fff}.jxc-login-error{display:flex;align-items:center;gap:8px;height:40px;padding:0 12px;margin:12px 0;border-radius:8px;background:#f8717126;border:1px solid rgba(248,113,113,.4);color:#fecaca;font-size:13px;animation:error-in var(--dur-mid) ease-out}@keyframes error-in{0%{opacity:0;height:0;margin:0}to{opacity:1;height:40px;margin:12px 0}}.jxc-login-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px}.jxc-remember{display:flex;align-items:center;gap:8px;font-size:13px;color:#fffc;cursor:pointer;-webkit-user-select:none;user-select:none}.jxc-remember-box{width:16px;height:16px;accent-color:#6366f1;cursor:pointer}.jxc-forgot{background:none;border:none;font-size:13px;color:#ffffffb3;cursor:pointer;padding:0}.jxc-forgot:hover{color:#fff;text-decoration:underline}.jxc-login-btn{margin-top:24px;width:100%;height:48px;border:none;border-radius:8px;background:linear-gradient(135deg,#818cf8,#a78bfa);color:#fff;font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:box-shadow var(--dur-fast) ease,filter var(--dur-fast) ease,transform .1s ease}.jxc-login-btn:hover:not(:disabled){box-shadow:var(--shadow-brand);filter:brightness(1.05)}.jxc-login-btn:active:not(:disabled){transform:translateY(1px)}.jxc-login-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.jxc-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .4s linear infinite}.jxc-login-footer{position:relative;z-index:1;margin-top:24px;font-size:12px;color:#fff6}@media(max-width:479px){.jxc-login-card{margin:16px;padding:32px 24px}}.jxc-shell{display:flex;min-height:100vh}.jxc-page-enter{animation:page-in var(--dur-mid) ease-out}.jxc-sidebar{position:sticky;top:0;flex:none;width:240px;height:100vh;display:flex;flex-direction:column;background:var(--n900);transition:width var(--dur-mid) var(--ease-standard);overflow:hidden}.is-collapsed .jxc-sidebar{width:64px}.jxc-sidebar-logo{flex:none;height:56px;display:flex;align-items:center;gap:8px;padding:0 12px}.is-collapsed .jxc-sidebar-logo{justify-content:center;padding:0}.jxc-logo-mark{flex:none;width:24px;height:24px;border-radius:6px;background:var(--gradient-brand);color:#fff;font-size:13px;font-weight:600;display:grid;place-items:center}.jxc-logo-name{font-size:16px;font-weight:600;color:#fff;white-space:nowrap}.jxc-sidebar-indicator{position:absolute;left:8px;width:3px;height:16px;border-radius:2px;background:linear-gradient(180deg,#818cf8,#a78bfa);transition:top var(--dur-mid) var(--ease-standard);z-index:1}.jxc-menu{flex:1;list-style:none;margin:0;padding:8px 0}.jxc-menu-item{display:flex;align-items:center;gap:12px;height:40px;margin:2px 8px;border-radius:8px;padding:0 12px;font-size:14px;color:var(--n400);text-decoration:none;position:relative;transition:background var(--dur-fast) ease,color var(--dur-fast) ease}.jxc-menu-item svg{color:var(--n500);flex:none;transition:color var(--dur-fast) ease}.jxc-menu-item:hover{background:#94a3b81a;color:#e2e8f0}.jxc-menu-item.is-active{background:var(--gradient-brand-soft-90);color:#c7d2fe}.jxc-menu-item.is-active svg{color:#a5b4fc}.jxc-menu-item-collapsed{justify-content:center;padding:0}.jxc-sidebar-footer{flex:none;height:44px;display:flex;align-items:center;padding:0 12px;border-top:1px solid rgba(148,163,184,.12)}.is-collapsed .jxc-sidebar-footer{justify-content:center}.jxc-sidebar-footer button{width:100%;height:44px;display:grid;place-items:center;background:none;border:none;color:var(--n500);cursor:pointer}.jxc-sidebar-footer button:hover{color:#e2e8f0}.jxc-side-tooltip .ant-tooltip-inner{background:var(--n800);color:#e2e8f0;font-size:13px;padding:4px 8px;border-radius:4px}.jxc-main{flex:1;min-width:0;display:flex;flex-direction:column}.jxc-topbar{flex:none;position:sticky;top:0;z-index:10;height:56px;background:#fff;border-bottom:1px solid var(--n200);display:flex;align-items:center;justify-content:space-between;padding:0 24px}.jxc-topbar-left{display:flex;align-items:center;gap:12px;min-width:0}.jxc-icon-btn{width:32px;height:32px;display:grid;place-items:center;background:none;border:none;border-radius:8px;color:var(--n500);cursor:pointer}.jxc-icon-btn:hover{background:var(--n50);color:var(--n700)}.jxc-theme-toggle svg{transition:transform .2s var(--ease-standard),color .15s ease}.jxc-theme-toggle:hover svg{transform:rotate(18deg) scale(1.08);color:#6366f1}.jxc-breadcrumb{display:flex;align-items:center;min-width:0;overflow:hidden}.jxc-crumb{font-size:14px;color:var(--n400);white-space:nowrap}.jxc-crumb-current{font-size:14px;font-weight:600;color:var(--n700);white-space:nowrap}.jxc-crumb-sep{color:var(--n400);margin:0 8px}.jxc-topbar-right{display:flex;align-items:center;gap:8px}.jxc-user{position:relative}.jxc-user-trigger{display:flex;align-items:center;gap:8px;height:44px;padding:0 8px;background:none;border:none;cursor:pointer;border-radius:8px}.jxc-user-trigger:hover{background:var(--n50)}.jxc-avatar{width:32px;height:32px;border-radius:50%;background:var(--gradient-brand);color:#fff;font-size:14px;font-weight:600;display:grid;place-items:center;flex:none}.jxc-user-name{font-size:14px;color:var(--n700)}.jxc-user-trigger svg{color:var(--n400);transition:transform var(--dur-fast) ease}.jxc-user-trigger svg.is-up{transform:rotate(180deg)}.jxc-user-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:30;width:200px;background:#fff;border:1px solid var(--n200);border-radius:8px;box-shadow:var(--shadow-md);animation:menu-in .15s ease-out}.jxc-user-menu.is-closing{animation:menu-out .15s ease-in forwards}.jxc-user-menu button{display:flex;align-items:center;gap:8px;width:100%;height:36px;padding:0 12px;background:none;border:none;font-size:14px;color:var(--n700);cursor:pointer;text-align:left}.jxc-user-menu button:hover{background:var(--n50)}.jxc-user-menu-sep{height:1px;background:var(--n200);margin:4px 0}.jxc-user-logout{color:#dc2626!important}.jxc-user-logout svg{color:#dc2626}.jxc-content{flex:1;padding:24px}.jxc-sidebar-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:#0f172a66}@media(max-width:1023px){.jxc-shell:not(.is-collapsed) .jxc-sidebar{position:fixed;left:0;top:0;height:100vh;z-index:100;box-shadow:var(--shadow-lg)}}.jxc-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:16px}.jxc-kpi{position:relative;background:#fff;border-radius:12px;padding:20px;box-shadow:var(--shadow-sm);transition:transform var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard);cursor:default}.jxc-kpi:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.jxc-kpi-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.jxc-kpi-name{font-size:13px;color:var(--n500);padding-top:4px}.jxc-kpi-badge{flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center}.jxc-kpi-badge-primary{background:#e0e7ff;color:#4f46e5}.jxc-kpi-badge-success{background:var(--success-soft);color:var(--success)}.jxc-kpi-badge-info{background:var(--info-soft);color:var(--info)}.jxc-kpi-badge-warning{background:var(--warning-soft);color:var(--warning)}.jxc-kpi-value{font-size:28px;line-height:36px;font-weight:700;color:var(--n900);font-variant-numeric:tabular-nums;margin-top:12px}.jxc-kpi-sub{font-size:12px;color:var(--n400);margin-top:4px}.jxc-dash-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.jxc-card-chart,.jxc-card-top{padding:20px}.jxc-card-chart{grid-column:span 8}.jxc-card-top{grid-column:span 4}.jxc-card-recent{grid-column:1 / -1;padding:20px 20px 8px}.jxc-card-title{font-size:16px;font-weight:600;color:var(--n800);margin:0 0 16px}.jxc-card-more{display:flex;justify-content:flex-end;padding:8px 0}.jxc-top{list-style:none;margin:0;padding:0;max-height:320px;overflow-y:auto}.jxc-top-row{display:flex;align-items:center;gap:8px;height:40px;padding:0 8px;border-radius:6px;transition:background .1s ease}.jxc-top-row:hover{background:var(--n50)}.jxc-top-rank{flex:none;width:16px;height:16px;border-radius:4px;background:var(--n100);color:var(--n500);font-size:11px;font-weight:600;display:grid;place-items:center}.jxc-top-rank.is-top{background:var(--gradient-brand);color:#fff}.jxc-top-name{flex:1;min-width:0;font-size:14px;color:var(--n700);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.jxc-top-qty{font-size:14px;font-weight:600;color:var(--n900);font-variant-numeric:tabular-nums}.jxc-top-qty em{font-style:normal;font-size:12px;font-weight:400;color:var(--n400);margin-left:2px}.jxc-top-empty{padding:48px 0;text-align:center;font-size:13px;color:var(--n400)}.jxc-top-skel{display:flex;flex-direction:column;gap:8px}@media(max-width:1279px){.jxc-kpi-grid{grid-template-columns:repeat(2,1fr)}.jxc-card-chart,.jxc-card-top{grid-column:1 / -1}}@media(max-width:1023px){.jxc-kpi-grid{grid-template-columns:repeat(2,1fr)}.jxc-content{padding:16px}}@media(max-width:639px){.jxc-kpi-grid{grid-template-columns:1fr}}.jxc-product-drawer .ant-drawer-content,.jxc-order-drawer .ant-drawer-content,.jxc-order-detail-drawer .ant-drawer-content,.jxc-mov-drawer .ant-drawer-content{border-radius:12px 0 0 12px}.jxc-product-drawer .ant-drawer-header,.jxc-order-drawer .ant-drawer-header,.jxc-order-detail-drawer .ant-drawer-header,.jxc-mov-drawer .ant-drawer-header{min-height:56px;padding:0 24px;border-bottom:1px solid var(--n100)}.jxc-drawer-title{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:600;color:var(--n800)}.jxc-drawer-close{margin-left:auto;width:32px;height:32px;display:grid;place-items:center;background:none;border:none;border-radius:8px;color:var(--n400);cursor:pointer}.jxc-drawer-close:hover{color:var(--n700);background:var(--n50)}.jxc-product-drawer .ant-drawer-footer,.jxc-order-drawer .ant-drawer-footer,.jxc-mov-drawer .ant-drawer-footer{border-top:1px solid var(--n100);padding:16px 24px}.jxc-drawer-footer{display:flex;justify-content:flex-end;gap:12px}.jxc-form-section{margin-bottom:20px}.jxc-section-label{font-size:13px;font-weight:600;color:var(--n600);margin-bottom:12px}.jxc-form-2col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.jxc-form-2col .ant-form-item{margin-bottom:0}.jxc-field{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.jxc-field>label{font-size:14px;color:var(--n700)}.jxc-required{color:#dc2626;margin-left:2px}.jxc-field .ant-select-selector,.jxc-field .ant-input{min-height:40px}.jxc-field .ant-select-single .ant-select-selector,.jxc-field .ant-input-number{height:40px}.ant-form-item-margin-bottom{margin-bottom:16px}.jxc-order-table{border:1px solid var(--n100);border-radius:8px;overflow:hidden;background:#fff}.jxc-order-head,.jxc-order-row{display:grid;grid-template-columns:minmax(0,1fr) 84px 104px 96px 36px;gap:8px;padding:0 12px}.jxc-order-head{height:40px;align-items:center;background:var(--n50);font-size:12px;font-weight:600;color:var(--n500)}.jxc-order-head span:last-child{text-align:center}.jxc-order-row{min-height:44px;align-items:start;padding-top:10px;padding-bottom:10px;border-top:1px solid var(--n100);position:relative}.jxc-order-row.is-shortage{background:var(--danger-soft);box-shadow:inset 3px 0 #dc2626}.jxc-cell{min-width:0}.jxc-cell-qty .ant-input-number,.jxc-cell-price .ant-input-number{width:100%}.jxc-cell-sub{text-align:right;font-size:14px;font-variant-numeric:tabular-nums;padding-top:4px}.jxc-cell-sub.is-error-text{color:#dc2626}.jxc-cell-del{display:flex;justify-content:center;padding-top:2px}.jxc-row-del{width:28px;height:28px;display:grid;place-items:center;background:none;border:none;border-radius:6px;color:var(--n400);cursor:pointer;transition:all .1s ease}.jxc-row-del:hover{color:#dc2626;background:var(--danger-soft)}.jxc-cell-error{font-size:12px;color:#dc2626;margin-top:4px;line-height:18px}.jxc-cell-sub .jxc-cell-error{text-align:left}.jxc-cell-subtext{font-size:12px;color:var(--n400);margin-top:4px}.jxc-inline-error{display:flex;align-items:center;gap:6px;margin:0 0 8px;font-size:13px;color:#dc2626}.jxc-add-row{margin-top:12px;display:inline-flex;align-items:center;gap:4px;background:none;border:none;color:#4f46e5;font-size:13px;cursor:pointer;padding:4px 0}.jxc-add-row:hover{text-decoration:underline}.jxc-order-footer{justify-content:space-between}.jxc-order-total{font-size:14px;font-weight:600;color:var(--n900);align-self:center}.jxc-order-total .jxc-nums{font-size:16px}.jxc-drawer-actions{display:flex;gap:12px}.jxc-detail-head{justify-content:flex-start;gap:12px}.jxc-detail-no{font-size:18px}.jxc-detail-body{display:flex;flex-direction:column;gap:20px}.jxc-detail-meta{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0}.jxc-detail-meta dt{font-size:12px;color:var(--n400);margin-bottom:4px}.jxc-detail-meta dd{font-size:14px;color:var(--n700);margin:0;word-break:break-all}.jxc-detail-items{border:1px solid var(--n100);border-radius:8px;overflow:hidden}.jxc-detail-row{display:grid;grid-template-columns:minmax(0,1fr) 56px 96px 96px;gap:8px;align-items:center;padding:10px 12px;border-top:1px solid var(--n100);font-size:14px;color:var(--n700);transition:background .1s ease}.jxc-detail-row:hover{background:var(--n50)}.jxc-detail-product{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jxc-detail-total{display:flex;justify-content:flex-end;gap:8px;padding:12px;border-top:1px solid var(--n200);font-size:14px;font-weight:600;color:var(--n700);background:#fff}.jxc-detail-total .jxc-nums{font-size:16px;color:var(--n900)}.jxc-detail-skel{display:flex;flex-direction:column;gap:16px;padding:4px 0}.jxc-mov-drawer .ant-drawer-body{padding:16px 24px}.jxc-dir{display:inline-flex;align-items:center;gap:4px;font-size:13px}.jxc-dir-in{color:var(--success-text)}.jxc-dir-out{color:var(--danger-text)}.jxc-banner{position:relative;display:flex;align-items:center;gap:12px;height:48px;padding:0 16px 0 20px;margin-bottom:16px;background:var(--warning-soft);border:1px solid #fde68a;border-radius:8px;color:#92400e;font-size:14px;overflow:hidden;animation:banner-in var(--dur-mid) var(--ease-standard)}.jxc-banner:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--warning)}.jxc-banner svg{flex:none;color:var(--warning-text)}.jxc-banner strong{font-weight:600}.jxc-banner-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.jxc-banner-btn{background:var(--warning-text)!important;border-color:var(--warning-text)!important;color:#fff!important;height:32px!important;font-size:13px;box-shadow:none}.jxc-banner-close{width:32px;height:32px;display:grid;place-items:center;background:none;border:none;color:var(--warning-text);cursor:pointer;border-radius:8px}.jxc-banner-close:hover{background:#b4530914}tr.inv-row-low>td{background:var(--warning-soft)!important;box-shadow:inset 3px 0 0 var(--warning)}tr.inv-row-low:hover>td{background:#fef3c7!important}tr.inv-row-out>td{background:var(--danger-soft)!important;box-shadow:inset 3px 0 #dc2626}tr.inv-row-out:hover>td{background:#fee2e2!important}.jxc-inv-qty{font-size:15px;font-weight:600;color:var(--n900)}.jxc-inv-qty.is-low{color:var(--warning-text)}.jxc-inv-qty.is-out{color:#dc2626}.jxc-lowonly{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--n600)}tr.row-flash>td{animation:row-flash .6s ease-out}.jxc-blocked-list{margin:8px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.jxc-blocked-list li{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--n600)}.jxc-kind-tag{font-size:12px;color:var(--n500);background:var(--n100);padding:2px 6px;border-radius:4px}.jxc-confirm .ant-modal-content{border-radius:12px;box-shadow:var(--shadow-lg)}.jxc-confirm-title{font-size:16px;font-weight:600;color:var(--n900)}.jxc-confirm-body{font-size:14px;color:var(--n600)}.jxc-confirm-footer{display:flex;justify-content:flex-end;gap:12px}.ant-modal .ant-modal-mask{background:#0f172a73}.jxc-field-error{font-size:13px;color:#dc2626;animation:field-in .15s ease-out}@keyframes field-in{0%{opacity:0}to{opacity:1}}.ant-table-thead>tr>th{height:40px;font-size:12px;font-weight:600;color:var(--n500);background:var(--n50)}.ant-table-tbody>tr>td{font-size:14px;color:var(--n700)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.jxc-kpi:hover{transform:none}.jxc-login-card{transition:opacity var(--dur-slow) ease}}
