:root{--bg-0:#eef3f0;--bg-1:#f7faf8;--glow-1:#dff5e9;--glow-2:#e6f0fb;--ink:#1f2d28;--ink-2:#5b6d66;--ink-3:#8b9c94;--brand:#16c784;--brand-2:#0fae72;--brand-3:#5be0a8;--brand-soft:#16c7841a;--on-brand:#fff;--headline-grad:linear-gradient(100deg, var(--brand-2) 5%, var(--brand) 85%);--glass:#ffffffb8;--glass-blur:24px;--panel-border:#ffffffe6;--panel-hi:#ffffffe6;--panel-line:#14281e0f;--panel-shadow:#103c2c47;--stroke:#14281e14;--stroke-2:#14281e29;--field:#fff;--field-border:#e2e8e4;--field-border-hover:#cfdad4;--control-border:#cbd6d0;--hover-bg:#1f2d280f;--form-side-bg:linear-gradient(180deg, #ffffff8c, #ffffff40);--form-side-line:#16c78473;--autofill:#fff;--grid-line:#143c2d0b;--noise-op:.035;--orb-blend:normal;--orb-a:#5be0a8;--orb-b:#3ddc97;--orb-c:#a7f3d0;--orb-op-a:.28;--orb-op-b:.22;--orb-op-c:.34;--cap-bg-1:#ffffffe6;--cap-bg-2:#f2f7f4e6;--cap-line:22, 199, 132;--cap-ink:#1f2d28;--cap-c1:#0fae72;--cap-c2:#16c784;--cap-c3:#5b6d66;--danger:#e04a4a;--toggle-bg:#ffffffbf;--toggle-border:#14281e1a;--toggle-shadow:0 10px 26px -12px #103c2c59;--surface:#ffffffc7;--surface-hi:#ffffffed;--surface-solid:#fff;--surface-soft:#f7faf8e6;--chat-bg:#f5f9f7a8;--bubble-in-bg:#fff;--bubble-in-color:var(--ink);--bubble-out-bg:var(--brand);--bubble-out-color:var(--on-brand);--r-lg:24px;--r-md:14px;--r-sm:10px;--ease:cubic-bezier(.22, .68, 0, 1.01)}[data-theme=dark]{--bg-0:#050b09;--bg-1:#0a1512;--glow-1:#103029;--glow-2:#0d2b31;--ink:#e6efec;--ink-2:#e6efeca3;--ink-3:#e6efec61;--brand:#16c784;--brand-2:#0fae72;--brand-3:#5be0a8;--brand-soft:#16c7841f;--on-brand:#05231a;--headline-grad:linear-gradient(100deg, var(--brand-3) 10%, var(--brand) 90%);--glass:#ffffff0e;--glass-blur:26px;--panel-border:#ffffff1f;--panel-hi:#ffffff0f;--panel-line:#ffffff0a;--panel-shadow:#000000c7;--stroke:#ffffff1f;--stroke-2:#ffffff3d;--field:#ffffff0b;--field-border:#ffffff1f;--field-border-hover:#ffffff3d;--control-border:#ffffff3d;--hover-bg:#ffffff16;--form-side-bg:linear-gradient(180deg, #04141057, #04141024);--form-side-line:#16c78480;--autofill:#0d231c;--grid-line:#ffffff0a;--noise-op:.05;--orb-blend:screen;--orb-a:#3fbf96;--orb-b:#2f9e78;--orb-c:#7fe0b4;--orb-op-a:.3;--orb-op-b:.24;--orb-op-c:.2;--cap-bg-1:#ffffff0d;--cap-bg-2:#ffffff05;--cap-line:22, 199, 132;--cap-ink:#e6efec;--cap-c1:#5be0a8;--cap-c2:#16c784;--cap-c3:#8b9c94;--danger:#ff8080;--toggle-bg:#ffffff0f;--toggle-border:#ffffff24;--toggle-shadow:0 10px 26px -12px #0009;--surface:#ffffff0d;--surface-hi:#ffffff14;--surface-solid:#0e1b17;--surface-soft:#ffffff0b;--chat-bg:#08120fa8;--bubble-in-bg:#ffffff17;--bubble-in-color:var(--ink);--bubble-out-bg:var(--brand);--bubble-out-color:var(--on-brand)}*,:before,:after{box-sizing:border-box}html,body{height:100%}body{min-width:320px;color:var(--ink);background:radial-gradient(1200px 760px at 10% 0%, var(--glow-1) 0%, transparent 58%), radial-gradient(900px 620px at 92% 100%, var(--glow-2) 0%, transparent 60%), linear-gradient(160deg, var(--bg-1), var(--bg-0) 72%);-webkit-font-smoothing:antialiased;margin:0;font-family:PingFang SC,Microsoft YaHei,-apple-system,BlinkMacSystemFont,Segoe UI,Inter,Roboto,Helvetica Neue,Arial,sans-serif;transition:background .45s,color .3s;overflow-x:hidden}#root{min-height:100vh}.scene{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.orb{filter:blur(120px);will-change:transform;mix-blend-mode:var(--orb-blend);border-radius:50%;transition:background .45s,opacity .45s;position:absolute}.orb.a{background:radial-gradient(circle at 35% 35%, var(--orb-a), transparent 68%);width:46vw;height:46vw;opacity:var(--orb-op-a);animation:float1 28s var(--ease) infinite alternate;top:-16vw;left:-12vw}.orb.b{background:radial-gradient(circle at 60% 40%, var(--orb-b), transparent 70%);width:40vw;height:40vw;opacity:var(--orb-op-b);animation:float2 34s var(--ease) infinite alternate;top:2vh;right:-10vw}.orb.c{background:radial-gradient(circle at 50% 50%, var(--orb-c), transparent 66%);width:38vw;height:38vw;opacity:var(--orb-op-c);animation:float3 40s var(--ease) infinite alternate;bottom:-20vw;left:22vw}@keyframes float1{to{transform:translate(6vw,7vh)scale(1.15)}}@keyframes float2{to{transform:translate(-7vw,10vh)scale(1.1)}}@keyframes float3{to{transform:translate(4vw,-8vh)scale(1.2)}}.grid{background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);background-size:46px 46px;position:absolute;inset:-1px;-webkit-mask-image:radial-gradient(70% 60% at 50% 42%,#000 20%,#0000 78%);mask-image:radial-gradient(70% 60% at 50% 42%,#000 20%,#0000 78%)}.noise{opacity:var(--noise-op);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E");transition:opacity .45s;position:absolute;inset:0}.wrap{z-index:1;place-items:center;min-height:100%;padding:40px 24px;display:grid;position:relative}.panel{border-radius:var(--r-lg);background:var(--glass);border:1px solid var(--panel-border);width:100%;max-width:1040px;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(180%);backdrop-filter:blur(var(--glass-blur)) saturate(180%);box-shadow:0 30px 70px -24px var(--panel-shadow), 0 2px 0 var(--panel-hi) inset, 0 0 0 1px var(--panel-line);animation:rise .7s var(--ease) both;grid-template-columns:1.05fr .95fr;gap:0;transition:background .45s,border-color .45s,box-shadow .45s;display:grid;overflow:hidden}@keyframes rise{0%{opacity:0;transform:translateY(22px)scale(.985)}}.login-brand{flex-direction:column;justify-content:space-between;min-height:560px;padding:46px 44px;display:flex;position:relative;overflow:hidden}.login-brand:after{content:"";background:radial-gradient(420px 320px at 8% 100%, var(--brand-soft), transparent 72%);pointer-events:none;position:absolute;inset:0}.brand-inner{z-index:1;position:relative}.logo{align-items:center;gap:12px;margin-bottom:44px;display:flex}.logo-mark{flex:none;place-items:center;width:42px;height:42px;display:grid}.logo-mark img{width:42px;height:42px;display:block}.logo-text{letter-spacing:.4px;color:var(--ink);font-size:17px;font-weight:700}.logo-sub{color:var(--ink-3);letter-spacing:2.4px;text-transform:uppercase;margin-top:2px;font-size:11.5px}.headline{letter-spacing:-.4px;color:var(--ink);margin:0 0 14px;font-size:34px;font-weight:700;line-height:1.32}.headline em{background-image:var(--headline-grad);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:normal}.desc{color:var(--ink-2);max-width:26em;margin:0;font-size:14.5px;line-height:1.85}.features{z-index:1;gap:14px;display:grid;position:relative}.feature{align-items:flex-start;gap:12px;display:flex}.f-ico{background:var(--brand-soft);width:30px;height:30px;color:var(--brand);border:1px solid #16c78438;border-radius:9px;flex:none;place-items:center;display:grid}.f-ico svg{width:16px;height:16px}.f-t{color:var(--ink);margin-bottom:2px;font-size:13.5px;font-weight:600}.f-d{color:var(--ink-3);font-size:12.5px;line-height:1.6}.stats{border-top:1px solid var(--stroke);z-index:1;gap:26px;margin-top:22px;padding-top:20px;display:flex;position:relative}.stat b{letter-spacing:-.3px;color:var(--ink);font-size:20px;font-weight:700;display:block}.stat span{color:var(--ink-3);font-size:11.5px}.form-side{background:var(--form-side-bg);border-left:1px solid var(--stroke);flex-direction:column;justify-content:center;padding:52px 48px;transition:background .45s,border-color .45s;display:flex;position:relative}.form-side:before{content:"";background:linear-gradient(90deg, transparent, var(--form-side-line), transparent);height:1px;position:absolute;top:0;left:0;right:0}.title{letter-spacing:-.2px;color:var(--ink);margin:0 0 8px;font-size:24px;font-weight:700}.subtitle{color:var(--ink-3);margin:0 0 34px;font-size:13.5px}.field{margin-bottom:18px;position:relative}.field .ico{width:18px;height:18px;color:var(--ink-3);pointer-events:none;transition:color .2s;position:absolute;top:50%;left:15px;transform:translateY(-50%)}.field input{width:100%;height:54px;color:var(--ink);background:var(--field);border:1px solid var(--field-border);border-radius:var(--r-md);outline:none;padding:24px 46px 8px 44px;font-family:inherit;font-size:14.5px;transition:border-color .22s,box-shadow .22s,background .22s,color .3s}.field input::placeholder{color:#0000}.field input:hover{border-color:var(--field-border-hover)}.field input:focus{border-color:var(--brand);box-shadow:0 0 0 4px #16c78424}.field label{color:var(--ink-3);pointer-events:none;transition:transform .2s var(--ease), font-size .2s var(--ease), color .2s;transform-origin:0 0;font-size:14px;position:absolute;top:17px;left:44px}.field input:focus+label,.field input.filled+label{color:var(--brand-2);transform:translateY(-10px)scale(.79)}.field:focus-within .ico{color:var(--brand-2)}.field input:-webkit-autofill{-webkit-text-fill-color:var(--ink);-webkit-box-shadow:0 0 0 1000px var(--autofill) inset;transition:background-color 9999s}.field input:-webkit-autofill:focus{-webkit-text-fill-color:var(--ink);-webkit-box-shadow:0 0 0 1000px var(--autofill) inset;transition:background-color 9999s}.peek{width:34px;height:34px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;transition:all .18s;display:grid;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.peek:hover{color:var(--ink);background:var(--hover-bg)}.peek svg{width:17px;height:17px}.captcha-row{align-items:stretch;gap:10px;display:flex}.captcha-row .field{flex:1;margin-bottom:0}.captcha-canvas{border-radius:var(--r-md);cursor:pointer;border:1px solid var(--field-border);background:var(--field);flex:none;width:124px;height:54px;transition:border-color .2s,transform .15s}.captcha-canvas:hover{border-color:var(--field-border-hover)}.captcha-canvas:active{transform:scale(.97)}.row{justify-content:space-between;align-items:center;margin:22px 0 26px;font-size:13px;display:flex}.remember{cursor:pointer;color:var(--ink-2);-webkit-user-select:none;user-select:none;align-items:center;gap:9px;display:flex}.remember input{appearance:none;cursor:pointer;border:1px solid var(--control-border);background:var(--field);border-radius:6px;flex:none;place-items:center;width:18px;height:18px;margin:0;transition:all .18s;display:grid}.remember input:checked{background:linear-gradient(135deg, var(--brand), var(--brand-2));border-color:#0000}.remember input:checked:after{content:"";border-left:2px solid var(--on-brand);border-bottom:2px solid var(--on-brand);width:9px;height:5px;transform:rotate(-45deg)translate(1px,-1px)}.link{color:var(--brand-2);font-weight:500;text-decoration:none;transition:opacity .2s}.link:hover{opacity:.78}.submit{border-radius:var(--r-md);cursor:pointer;letter-spacing:.5px;width:100%;height:50px;color:var(--on-brand);background:linear-gradient(135deg, var(--brand-3) 0%, var(--brand) 45%, var(--brand-2) 100%);transition:transform .18s var(--ease), box-shadow .25s, filter .2s;border:0;font-family:inherit;font-size:15px;font-weight:700;position:relative;overflow:hidden;box-shadow:0 14px 30px -12px #16c784a6,inset 0 1px #ffffff59}.submit:after{content:"";background:linear-gradient(100deg,#0000 20%,#ffffff80,#0000 80%);position:absolute;inset:0;transform:translate(-120%)}.submit:hover{transform:translateY(-2px);box-shadow:0 20px 38px -14px #16c784cc,inset 0 1px #fff6}.submit:hover:after{transition:transform .8s;transform:translate(120%)}.submit:active{transform:translateY(0)scale(.99)}.submit[disabled]{cursor:progress;filter:saturate(.7)}.submit .spinner{border:2px solid #80808059;border-top-color:var(--on-brand);border-radius:50%;width:17px;height:17px;animation:.7s linear infinite spin;display:none}.submit.loading .spinner{display:block}.submit.loading .txt{visibility:hidden}@keyframes spin{to{transform:rotate(360deg)}}.alert{color:var(--danger);border-radius:var(--r-sm);background:#e04a4a1a;border:1px solid #e04a4a47;align-items:center;gap:8px;margin-bottom:14px;padding:10px 13px;font-size:13px;display:none}.alert.show{animation:.45s shake;display:flex}.alert svg{flex:none;width:15px;height:15px}@keyframes shake{10%,90%{transform:translate(-2px)}30%,70%{transform:translate(4px)}50%{transform:translate(-4px)}}.theme-toggle{z-index:20;cursor:pointer;height:40px;color:var(--ink-2);background:var(--toggle-bg);border:1px solid var(--toggle-border);box-shadow:var(--toggle-shadow);-webkit-backdrop-filter:blur(16px)saturate(160%);backdrop-filter:blur(16px)saturate(160%);transition:color .2s, background .45s ease, border-color .45s ease, transform .18s var(--ease), box-shadow .25s;border-radius:999px;align-items:center;gap:8px;padding:0 15px 0 13px;font-family:inherit;font-size:13px;font-weight:600;display:flex;position:fixed;top:22px;right:26px}.theme-toggle:hover{color:var(--ink);transform:translateY(-1px)}.theme-toggle:active{transform:scale(.96)}.theme-toggle .ico{width:18px;height:18px;transition:transform .5s var(--ease);flex:none}.theme-toggle:hover .ico{transform:rotate(18deg)}.theme-toggle .ico.sun,.theme-toggle .ico.moon{grid-area:1/1}.theme-toggle .ico.moon,[data-theme=dark] .theme-toggle .ico.sun{display:none}[data-theme=dark] .theme-toggle .ico.moon{display:block}.theme-toggle .label{white-space:nowrap}.theme-anim *{transition:background-color .45s,border-color .45s,color .3s,box-shadow .45s,fill .3s,stroke .3s}@media (width<=520px){.theme-toggle .label{display:none}.theme-toggle{padding:0 13px}}@media (width<=900px){.wrap{padding:20px 14px}.theme-toggle{top:14px;right:14px}.panel{grid-template-columns:1fr;max-width:460px}.login-brand{min-height:auto;padding:32px 28px 26px}.login-brand .features,.login-brand .stats{display:none}.login-brand:before{content:"";background:var(--stroke);height:1px;position:absolute;bottom:0;left:28px;right:28px}.logo{margin-bottom:26px}.headline{font-size:25px}.desc{margin-bottom:0;font-size:13.5px}.form-side{border-left:0;border-top:1px solid var(--stroke);padding:30px 28px 34px}}@media (width<=420px){.captcha-row{flex-direction:column}.captcha-canvas{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-shell{z-index:1;min-height:100vh;position:relative}.app-shell,.console-header,.ant-layout{background:0 0}.console-header{background:var(--glass);border-bottom:1px solid var(--panel-line);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(160%);backdrop-filter:blur(var(--glass-blur)) saturate(160%);z-index:5;justify-content:space-between;align-items:center;gap:12px;padding:0 18px 0 24px;display:flex;position:sticky;top:0;height:56px!important;line-height:56px!important}.console-header .header-title{letter-spacing:.2px;color:var(--ink);white-space:nowrap;font-size:16px;font-weight:700}.console-header .header-right{color:var(--ink-2);white-space:nowrap;line-height:normal}.console-header .user-chip{background:var(--surface-soft);border:1px solid var(--stroke);color:var(--ink);border-radius:999px;align-items:center;gap:6px;padding:3px 12px 3px 9px;font-size:13px;display:inline-flex}.console-header .theme-toggle{height:34px;box-shadow:none;border-radius:10px;padding:0 13px 0 11px;position:static;top:auto;right:auto}.main-sider{border-right:1px solid var(--panel-line);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(160%);backdrop-filter:blur(var(--glass-blur)) saturate(160%);box-shadow:1px 0 22px -16px var(--panel-shadow);background:var(--glass)!important}.main-sider .ant-layout-sider-children{flex-direction:column;display:flex}.main-sider.ant-layout-sider-collapsed .brand{justify-content:center;padding:0}.main-sider.ant-layout-sider-collapsed .brand-text{display:none}.main-sider .ant-menu{background:0 0;flex:1;overflow-y:auto;border-inline-end:none!important}.main-sider.ant-layout-sider-collapsed .sider-status{align-items:center;padding:10px 0}.main-sider .ant-menu-item{border-radius:10px;width:auto;margin-inline:10px}.main-sider .ant-menu-item-selected{font-weight:600;background:var(--brand-soft)!important;color:var(--ink)!important}.main-sider .ant-menu-item-selected .anticon{color:var(--brand)}.main-sider .ant-menu-item:hover{background:var(--hover-bg)}.sider-status{border-top:1px solid var(--panel-line);color:var(--ink-3);flex-direction:column;align-items:flex-start;gap:6px;padding:10px 18px;display:flex}.sider-status .ant-badge{white-space:nowrap}.brand{height:64px;color:var(--ink);letter-spacing:.2px;align-items:center;gap:10px;padding:0 10px 0 16px;font-size:16px;font-weight:700;display:flex}.brand .logo-mark{flex:none;place-items:center;width:34px;height:34px;display:grid}.brand .logo-mark img{width:34px;height:34px;display:block}.brand .ant-btn{color:var(--ink-2);flex-shrink:0;margin-left:auto}.main-sider.ant-layout-sider-collapsed .brand .logo-mark{display:none}.main-sider.ant-layout-sider-collapsed .brand .ant-btn{margin-left:0}.main-content{padding:20px 24px}.main-content.fullscreen{padding:0}.main-content.fullscreen .workbench{height:100vh;box-shadow:none;border:none;border-radius:0}.api-error{margin-bottom:16px}.manage-card{background:var(--surface);border:1px solid var(--panel-line);box-shadow:0 20px 44px -30px var(--panel-shadow), 0 1px 0 var(--panel-hi) inset;-webkit-backdrop-filter:blur(18px)saturate(150%);backdrop-filter:blur(18px)saturate(150%);border-radius:16px}.manage-card .ant-card-head{border-bottom:1px solid var(--panel-line);min-height:46px}.manage-card .ant-card-head-title{color:var(--ink);font-size:15px;font-weight:600}.group-item{border-bottom:1px solid var(--panel-line);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.group-item:last-child{border-bottom:none}.group-item-main{align-items:center;gap:12px;min-width:0;display:flex}.group-item-title{color:var(--ink);font-weight:600}.group-item-desc{color:var(--ink-3);margin-top:2px;font-size:12px}.workbench{--list-col:320px;--chat-col:minmax(0, 1fr);--side-panel-width:380px;grid-template-columns:var(--list-col) var(--chat-col);background:var(--glass);border:1px solid var(--panel-border);height:calc(100vh - 96px);min-height:560px;box-shadow:0 26px 60px -30px var(--panel-shadow), 0 2px 0 var(--panel-hi) inset, 0 0 0 1px var(--panel-line);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(160%);backdrop-filter:blur(var(--glass-blur)) saturate(160%);border-radius:18px;display:grid;position:relative;overflow:hidden}.workbench.with-side-panel{grid-template-columns:var(--list-col) var(--chat-col) var(--side-panel-width)}@media (width>=1440px){.workbench{--list-col:15%;--chat-col:minmax(0, 85%)}.workbench.with-side-panel{grid-template-columns:15% 55% 30%}}.conversation-list{border-right:1px solid var(--panel-line);background:var(--surface-soft);flex-direction:column;gap:12px;padding:14px 0 0;display:flex;overflow-y:hidden}.conversation-list .search-row{align-items:center;gap:8px;padding:0 14px;display:flex}.conversation-list .ant-input-affix-wrapper{background:var(--surface-hi);box-shadow:none;border:none;border-radius:10px;flex:1;padding-inline:10px}.conversation-list .ant-input-affix-wrapper:hover,.conversation-list .ant-input-affix-wrapper-focused{box-shadow:none;border:none}.conversation-list .ant-input-affix-wrapper-focused{background:var(--surface-solid);outline:1px solid var(--stroke-2)}.conversation-scroll{flex:1;min-height:0;overflow-y:auto}.conversation-list .ant-listy-item{position:relative}.conversation-list .conv-item{cursor:pointer;background:0 0;align-items:center;gap:10px;padding:9px 12px 9px 14px;transition:background .15s;display:flex;position:relative}.conversation-list .conv-avatar{background:var(--brand-soft);color:var(--brand-2);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:15px;font-weight:600;display:flex}.conversation-list .conv-main{flex:1;min-width:0;margin:0}.conversation-list .conv-preview{white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--ink-3);margin-top:3px;padding-right:0;font-size:12px;line-height:17px;overflow:hidden}.conversation-list .title-row{flex:1;justify-content:space-between;align-items:baseline;gap:8px;min-width:0;margin-bottom:2px;line-height:18px;display:flex}.conversation-list .title-row .customer-name{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;line-height:18px;overflow:hidden}.conversation-list .title-row .message-time{color:var(--ink-3);white-space:nowrap;flex-shrink:0;font-size:11px;line-height:18px}.conversation-list .conv-item:hover,.conversation-list .conv-item.selected{background:var(--hover-bg)}.conversation-list .unread-badge{z-index:1;line-height:0;position:absolute;top:4px;left:44px}.chat-panel{background:var(--chat-bg);flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.chat-header{background:var(--surface-soft);border-bottom:1px solid var(--panel-line);justify-content:space-between;align-items:center;gap:12px;min-height:64px;padding:0 20px 0 26px;display:flex}.chat-header .chat-title-row{align-items:center;gap:14px;min-width:0;display:flex}.chat-header .chat-head-lines{flex-direction:column;gap:2px;min-width:0;display:flex}.chat-header .chat-title-line,.chat-header .chat-meta-line{min-width:0;color:var(--ink-3);align-items:baseline;gap:14px;font-size:12px;line-height:17px;display:flex}.chat-header .chat-title{min-width:0;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;flex:0 auto;font-size:16px;font-weight:600;line-height:20px;overflow:hidden}.chat-header .chat-no{white-space:nowrap;flex:none}.chat-header .chat-meta-item{min-width:0;color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.chat-header .chat-meta-label{color:var(--ink-3)}.chat-header .chat-actions .ant-btn{color:var(--ink-2);background:0 0;border:none;border-radius:8px;padding-inline:8px}.chat-header .chat-actions .ant-btn:hover{color:var(--brand);background:var(--hover-bg)}.chat-header .chat-actions .ant-btn .anticon{margin-right:4px}.message-area{overscroll-behavior:contain;background:0 0;flex-direction:column;flex:1;gap:2px;min-height:0;padding:22px 26px;display:flex;overflow-y:auto}.message-content{flex-direction:column;flex:none;gap:2px;min-width:0;display:flex}.history-hint{color:var(--ink-3);flex-shrink:0;align-self:center;align-items:center;gap:6px;margin-bottom:12px;font-size:12px;display:flex}.history-load-more{color:var(--ink-3);background:var(--surface-soft);cursor:pointer;border:0;border-radius:999px;flex-shrink:0;align-self:center;margin-bottom:12px;padding:3px 10px;font-size:12px}.history-load-more:hover{color:var(--brand);background:var(--brand-soft)}.newer-messages{border:1px solid var(--stroke);background:var(--bubble-in-bg);color:var(--brand,#16c784);cursor:pointer;border-radius:999px;flex-shrink:0;align-self:center;margin-top:14px;padding:6px 14px;font-size:12px;position:sticky;bottom:0;box-shadow:0 4px 14px #00000024}.setting-label{font-size:14px}.chat-message{align-items:flex-start;gap:10px;max-width:78%;margin-top:2px;display:flex}.chat-message.first-in-group{margin-top:16px}.chat-message.outbound{flex-direction:row-reverse;align-self:flex-end}.message-avatar{background:var(--brand-soft);width:32px;height:32px;color:var(--brand-2);-webkit-user-select:none;user-select:none;border-radius:8px;flex:none;justify-content:center;align-items:center;font-size:15px;font-weight:600;display:flex}.chat-message.outbound .message-avatar{background:var(--brand);color:var(--on-brand)}.message-main{flex-direction:column;min-width:0;display:flex}.chat-message.outbound .message-main{align-items:flex-end}.message-sender,.message-meta{color:var(--ink-3);font-size:11px}.message-sender{align-items:baseline;gap:6px;margin-bottom:5px;display:flex}.chat-message.outbound .message-sender{justify-content:flex-end}.message-meta{align-items:center;gap:6px;margin-top:2px;display:flex}.chat-message.outbound .message-meta{justify-content:flex-end}.bubble{color:var(--bubble-in-color);white-space:pre-wrap;word-break:break-word;background:var(--bubble-in-bg);border-radius:10px;padding:9px 13px;font-size:14px;line-height:1.45;position:relative;box-shadow:0 1px 1px #0000000a}.bubble a{color:var(--brand-2)}.bubble:before{content:"";background:var(--bubble-in-bg);z-index:0;width:8px;height:8px;position:absolute;top:12px;left:-5px;transform:rotate(45deg);box-shadow:-1px 1px 1px -1px #0000001f}.bubble>*{z-index:1;position:relative}.chat-message.outbound .bubble{color:var(--bubble-out-color);background:var(--bubble-out-bg);border-radius:10px;box-shadow:0 6px 16px -10px #16c7848c}.chat-message.outbound .bubble:before{background:var(--bubble-out-bg);left:auto;right:-5px;box-shadow:1px -1px 1px -1px #0000001f}.chat-message.outbound .bubble a{color:inherit}.message-meta .ant-tag{border-radius:4px;margin-inline-end:0;padding-inline:6px;font-size:11px;line-height:18px}.composer{background:var(--surface-solid);border:1px solid var(--stroke-2);border-radius:12px;flex:none;margin:8px 20px 16px;transition:border-color .15s,box-shadow .15s}.composer:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px #16c78426}.composer-tools{align-items:center;gap:2px;display:flex}.composer .composer-tool{width:28px;height:28px;color:var(--ink-3);border-radius:8px;justify-content:center;align-items:center;padding:0;display:inline-flex}.composer .composer-tool:hover:not(:disabled){color:var(--ink);background:var(--hover-bg)}.composer-tool-wrap{display:inline-flex}.composer-tool-wrap .ant-btn:disabled{pointer-events:none}.composer-tool-sep{background:var(--stroke-2);width:1px;height:14px;margin:0 4px}.composer-body{padding:10px 12px 0}.composer .ant-input{color:var(--ink);box-shadow:none;resize:none;background:0 0;border:none;padding:4px 2px;font-size:14px}.composer .ant-input:focus,.composer .ant-input-focused{box-shadow:none;background:0 0;border-color:#0000}.composer .ant-input::placeholder{color:var(--ink-3)}.composer-footer{align-items:center;gap:10px;padding:2px 8px 8px;display:flex}.composer-footer-left{align-items:center;gap:8px;min-width:0;display:flex}.composer-keys{color:var(--ink-3);white-space:nowrap;align-items:center;gap:4px;font-size:12px;display:inline-flex}.composer-keys kbd{color:var(--ink-2);background:var(--hover-bg);border:1px solid var(--panel-line);border-radius:4px;padding:1px 5px;font-family:inherit;font-size:11px;line-height:1.5}.composer-keys-sep{margin:0 1px}.composer-draft-chip{color:var(--brand);background:var(--brand-soft);white-space:nowrap;border-radius:4px;padding:1px 6px;font-size:12px}.composer-count{color:var(--ink-3);white-space:nowrap;margin-left:auto;font-size:12px}.composer-count.danger{color:var(--danger)}.composer-footer .ant-btn{border-radius:8px}.emoji-grid{grid-template-columns:repeat(6,1fr);gap:2px;width:210px;display:grid}.emoji-item{cursor:pointer;background:0 0;border:none;border-radius:6px;width:32px;height:32px;font-size:18px;line-height:1}.emoji-item:hover{background:var(--hover-bg)}.ant-table-wrapper .ant-table{border-radius:10px}@media (width<=1100px){.workbench.with-side-panel{grid-template-columns:280px minmax(0,1fr);position:relative}.workbench.with-side-panel .side-panel{z-index:2;width:min(var(--side-panel-width), 100%);box-shadow:-12px 0 30px -18px var(--panel-shadow);position:absolute;inset:0 0 0 auto}}@media (width<=900px){.main-sider{display:none}.console-header{padding:0 12px 0 16px}.console-header .user-chip .ant-tag,.console-header .ant-badge{display:none}.main-content{padding:12px}.workbench{grid-template-columns:280px minmax(0,1fr);height:calc(100vh - 80px)}.composer{margin:8px 12px 12px}.composer-keys{display:none}}@media (width<=640px){.workbench,.workbench.with-side-panel{grid-template-columns:1fr}.conversation-list{display:none}}.bubble.image-bubble{padding:4px}.message-image{cursor:zoom-in;object-fit:contain;background:var(--bubble-in-bg);border-radius:8px;width:auto;max-width:220px;height:auto;max-height:320px;display:block}.message-image-loading{min-width:96px;min-height:64px;color:var(--ink-3);justify-content:center;align-items:center;gap:6px;font-size:12px;display:inline-flex}.message-image-fallback{min-width:120px;min-height:64px;color:var(--ink-3);border:1px dashed var(--ink-3);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:8px 10px;font-size:12px;display:inline-flex}.message-image-fallback:hover{color:var(--brand-2);border-color:var(--brand-2)}.message-image-preview{object-fit:contain;width:auto;max-width:min(80vw,720px);height:auto;max-height:76vh;display:block}.side-panel{border-left:1px solid var(--panel-line);background:var(--surface-soft);flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.side-panel-head{border-bottom:1px solid var(--panel-line);justify-content:space-between;align-items:center;gap:8px;padding:0 12px;display:flex}.side-panel-head .ant-tabs{flex:1;min-width:0}.side-panel-head .ant-tabs-nav{margin:0}.side-panel-head .ant-tabs-nav:before{border-bottom:none}.side-panel-body{flex:1;min-height:0;padding:12px;overflow-y:auto}.side-panel-status{color:var(--ink-2);justify-content:center;align-items:center;gap:10px;padding:48px 0;font-size:13px;display:flex}.side-panel-toggle{border:1px solid var(--panel-line);background:var(--surface-hi);width:18px;height:44px;color:var(--ink-2);cursor:pointer;z-index:3;border-radius:8px;justify-content:center;align-items:center;padding:0;font-size:10px;line-height:1;transition:color .2s,background .2s,box-shadow .2s;display:flex;position:absolute;top:50%;right:0;transform:translateY(-50%)}.workbench.with-side-panel .side-panel-toggle{right:min(var(--side-panel-width), 100%);box-shadow:0 1px 6px -2px var(--panel-shadow);transform:translate(50%,-50%)}@media (width>=1440px){.workbench.with-side-panel .side-panel-toggle{right:30%}}.side-panel-toggle:hover{color:var(--brand);background:var(--brand-soft);box-shadow:0 1px 10px -2px var(--panel-shadow)}.side-panel-toggle:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.order-list{flex-direction:column;gap:12px;display:flex}.order-card{background:var(--surface-hi);border:1px solid var(--panel-line);border-radius:8px;font-size:12px;line-height:1.4;transition:box-shadow .2s;overflow:hidden}.order-card:hover{box-shadow:0 2px 8px #0000001a}.order-header{background:var(--surface-soft);border-bottom:1px solid var(--panel-line);justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.order-header-left{flex:1;align-items:center;min-width:0;display:flex}.order-number{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.order-card .copy-btn,.order-card .copy-btn-inline{height:auto;min-height:0;color:var(--brand-2);padding:0 4px;font-size:10px;line-height:1}.order-card .copy-btn:hover,.order-card .copy-btn-inline:hover{color:var(--brand);background:0 0}.order-status{white-space:nowrap;flex-shrink:0;margin-left:8px;font-size:13px;font-weight:500}.status-orange{color:#e6a23c;font-weight:600}.status-success{color:#67c23a;font-weight:600}.status-fail{color:#f56c6c;font-weight:600}.status-unknown{color:var(--ink-3);font-weight:500}.order-content{padding:12px}.product-info{gap:12px;margin-bottom:12px;display:flex}.product-image{border:1px solid var(--panel-line);border-radius:4px;flex-shrink:0;width:60px;height:60px;overflow:hidden}.product-image img{object-fit:cover;width:100%;height:100%;display:block}.product-details{flex:1;min-width:0}.product-name{color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:6px;font-size:14px;font-weight:500;line-height:1.3;display:-webkit-box;overflow:hidden}.product-subtitle{color:var(--ink-2);margin-bottom:6px;font-size:12px;line-height:1.4}.product-sku{align-items:center;gap:4px;font-size:12px;display:flex}.product-sku .label{color:var(--ink-3);flex-shrink:0}.product-sku .value{min-width:0;color:var(--ink-2);word-break:break-all;font-family:monospace}.product-sku{flex-wrap:wrap}.product-unavailable{color:var(--ink-3);text-align:center;background:var(--surface-soft);border-radius:4px;margin-bottom:12px;padding:20px;font-size:14px}.order-info{border:1px solid var(--panel-line);border-radius:4px;margin-top:8px;overflow:hidden}.info-tabs{background:var(--surface-soft);border-bottom:1px solid var(--panel-line);display:flex}.tab-item{color:var(--ink-2);text-align:center;border-bottom:2px solid #0000;flex:1;padding:8px 12px;font-size:12px}.tab-item.active{color:var(--brand-2);background:var(--surface-hi);border-bottom-color:var(--brand);font-weight:500}.tab-content{padding:12px}.info-row{font-size:12px;display:flex}.info-row .label{width:80px;color:var(--ink-3);flex-shrink:0;font-weight:500}.order-card .ant-tag{height:20px;padding:0 6px;font-size:10px;line-height:18px}.pagination-container{justify-content:center;margin-top:20px;display:flex}.side-panel-head .ant-tabs-tab{padding:8px 6px;font-size:12px}.side-panel-head .ant-tabs-tab+.ant-tabs-tab{margin-left:10px}.side-panel-head .ant-tabs-nav-list{flex-wrap:nowrap}.side-panel-head .ant-tabs-nav-more{display:none}.side-panel-head .ant-btn-sm{padding-inline:4px;font-size:12px}.side-panel .info-tabs .tab-item{cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;font-family:inherit;transition:color .2s,background .2s}.side-panel .info-tabs .tab-item:hover{color:var(--brand-2);background:var(--brand-soft)}.side-panel .info-tabs .tab-item.active{color:var(--brand-2);background:var(--surface-hi);border-bottom-color:var(--brand)}.side-panel .info-row{align-items:flex-start;margin-bottom:8px;line-height:1.5}.side-panel .info-row:last-child{margin-bottom:0}.side-panel .info-row .value-wrap{flex:1;align-items:flex-start;gap:2px;min-width:0;display:flex}.side-panel .info-row .value{min-width:0;color:var(--ink-2);word-break:break-all;flex:1}.side-panel .info-row .value.muted{color:var(--ink-3)}.order-inline-status,.order-inline-error{color:var(--ink-2);align-items:center;gap:8px;font-size:12px;display:flex}.order-inline-error{color:var(--danger);flex-wrap:wrap}.order-inline-error .ant-btn-link{height:auto;padding:0;font-size:12px}.preorder-card .order-header .order-number{font-weight:600}.preorder-info{background:var(--surface-soft);border-radius:6px;margin-top:8px;padding:8px 10px}.preorder-actions{justify-content:flex-end;margin-top:10px;display:flex}.preorder-goods-placeholder{width:100%;height:100%;color:var(--ink-3);background:var(--surface-soft);justify-content:center;align-items:center;font-size:11px;display:flex}.customer-panel{flex-direction:column;gap:12px;display:flex}.customer-actions{gap:8px;display:flex}.customer-actions .ant-btn{flex:1;min-width:0;padding-inline:6px;font-size:12px}.customer-card{background:var(--surface-hi);border:1px solid var(--panel-line);border-radius:8px;padding:12px}.customer-card-title{color:var(--ink);align-items:center;gap:8px;margin-bottom:10px;font-size:13px;font-weight:600;display:flex}.customer-detail-inline .detail-item{align-items:flex-start;margin-bottom:6px;font-size:12px;display:flex}.customer-detail-inline .detail-item:last-child{margin-bottom:0}.customer-detail-inline .detail-label{min-width:70px;color:var(--ink-3);flex-shrink:0}.customer-detail-inline .detail-value{min-width:0;color:var(--ink-2);word-break:break-all}.customer-detail-inline .tag-list{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.customer-detail-inline .tag-empty{color:var(--ink-3);margin-right:4px}.address-list{flex-direction:column;gap:8px;display:flex}.address-block{background:var(--surface-soft);border:1px solid var(--panel-line);border-radius:6px;padding:8px 10px}.address-block.is-default{border-color:var(--brand)}.address-block-head{align-items:center;gap:6px;margin-bottom:4px;display:flex}.address-name{min-width:0;color:var(--ink);word-break:break-all;font-size:13px;font-weight:600}.address-block-head .copy-btn-inline{height:auto;min-height:0;color:var(--brand-2);margin-left:auto;padding:0 4px;font-size:10px;line-height:1}.address-block-head .copy-btn-inline:hover{color:var(--brand);background:0 0}.address-line{color:var(--ink-2);word-break:break-all;align-items:flex-start;gap:6px;font-size:12px;line-height:1.5;display:flex}.address-line .anticon{color:var(--ink-3);flex-shrink:0;margin-top:3px}.address-empty{color:var(--ink-3);text-align:center;padding:12px 0;font-size:12px}.binding-panel .ant-form-item,.side-panel .ant-form-item,.ant-modal .ant-form-item{margin-bottom:14px}.goods-detail{background:var(--surface-soft);border-radius:6px;flex-direction:column;gap:4px;margin-bottom:14px;padding:10px;display:flex}.goods-detail-row{align-items:flex-start;font-size:12px;display:flex}.goods-detail-row .detail-label{min-width:110px;color:var(--ink-3);flex-shrink:0}.goods-detail-row .detail-value{min-width:0;color:var(--ink-2);word-break:break-all}.id-image-upload{flex-direction:column;gap:4px;display:flex}.id-upload-trigger{color:var(--ink-3);font-size:12px}.id-upload-text{margin-top:4px}.id-upload-tip{color:var(--ink-3);font-size:11px;line-height:1.5}.id-upload-error{color:var(--danger);font-size:11px}.id-image-upload .ant-upload-list-item-thumbnail img{object-fit:cover}.tag-dialog-customer{color:var(--ink);word-break:break-all;margin-bottom:10px;font-size:13px}.tag-dialog-hint{color:var(--ink-3);margin-top:8px;font-size:12px}@media (width<=1100px){.workbench.with-side-panel .side-panel{padding-bottom:8px}}@media (width<=640px){.side-panel-head{flex-wrap:wrap;gap:4px;padding:0 8px 6px}.side-panel-head .ant-tabs{flex:100%;order:2}.side-panel-head .ant-tabs-nav-list{scrollbar-width:none;overflow-x:auto}.side-panel-head .ant-tabs-tab{padding:6px 4px;font-size:11px}.side-panel-head .ant-tabs-tab+.ant-tabs-tab{margin-left:6px}.side-panel-body{padding:8px}.customer-actions{flex-wrap:wrap}.customer-actions .ant-btn{flex:calc(50% - 4px)}.address-block-head{flex-wrap:wrap}.ant-modal{max-width:calc(100vw - 16px);margin:8px auto}.ant-modal .ant-modal-body{max-height:70vh;overflow-y:auto}}.device-summary{flex-wrap:wrap;gap:12px;display:flex}.device-stat{border:1px solid var(--panel-line);background:var(--surface-soft);border-radius:14px;flex:120px;min-width:120px;padding:12px 14px}.device-stat b{color:var(--ink);font-size:24px;line-height:1.2;display:block}.device-stat span{color:var(--ink-3);margin-top:2px;font-size:12px;display:block}.device-stat.ok b{color:var(--brand-2)}.device-stat.off b{color:var(--ink-3)}.device-stat.danger b{color:var(--danger)}.device-loading{justify-content:center;align-items:center;padding:40px 0;display:flex}.device-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}.device-card{border:1px solid var(--panel-line);background:var(--surface);box-shadow:0 20px 44px -34px var(--panel-shadow), 0 1px 0 var(--panel-hi) inset;-webkit-backdrop-filter:blur(18px)saturate(150%);backdrop-filter:blur(18px)saturate(150%);border-radius:16px;flex-direction:column;gap:12px;min-width:0;padding:16px;display:flex}.device-card-offline{opacity:.78}.device-card-revoked{opacity:.66;border-color:var(--danger)}.device-card-head{align-items:flex-start;gap:10px;display:flex}.device-status-dot{background:var(--ink-3);border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:6px}.device-status-dot.online{background:var(--brand);box-shadow:0 0 0 4px var(--brand-soft)}.device-status-dot.revoked{background:var(--danger)}.device-card-heading{flex:1;min-width:0}.device-card-title{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;overflow:hidden}.device-id{color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-family:monospace;font-size:12px;display:block;overflow:hidden}.device-tags{flex-wrap:wrap;gap:4px;display:flex}.device-tags .ant-tag{margin-inline-end:0}.device-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin:0;display:grid}.device-meta div{min-width:0}.device-meta dt{color:var(--ink-3);font-size:12px}.device-meta dd{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:13px;overflow:hidden}.device-bindings{border-top:1px solid var(--panel-line);padding-top:10px}.device-bindings-title{color:var(--ink-3);margin-bottom:6px;font-size:12px}.device-binding{align-items:center;gap:6px;min-width:0;padding:4px 0;display:flex}.device-binding+.device-binding{border-top:1px dashed var(--panel-line)}.device-binding-id{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-family:monospace;font-size:13px;overflow:hidden}.device-binding-corp{min-width:0;color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;overflow:hidden}.device-binding .ant-tag{flex-shrink:0;margin-inline-end:0}.device-binding-empty{color:var(--ink-3);font-size:12px}@media (width<=640px){.device-grid,.device-meta{grid-template-columns:1fr}}
